文档智能 · 阅读约 9 分钟
每个 PDF 都需要 OCR 才能提取数据吗?
扫描文档需要 OCR,但并非所有 PDF 都需要。了解何时使用原生文本提取、OCR、文档智能或人工审核。
并非每个 PDF 都需要 OCR
PDF 已包含可靠文本时,使用原生文本提取;页面只有文字图像时,使用 OCR。若流程需要表格、字段、阅读顺序或特定文档含义,而非纯文本转录,则加入版面或文档智能模型。
PDF 是一种容器,并不保证其内容的存储方式。屏幕上看起来相同的两个文件,可能一个包含字符与字体指令,另一个只有扫描页图像;第三个还可能混合原生文本、图像、批注及不完善的 OCR 层。提取方式应根据页面内容与业务成果选择。
不要因为扩展名是 PDF 就选择 OCR。先判断所需资料是否已以可用文本存在。
先识别 PDF 类型
| PDF 类型 | 包含内容 | 实用起点 |
|---|---|---|
| 原生数字文档 | 由报表系统、浏览器或办公工具等应用生成的文本 | 原生文本提取,再验证阅读顺序与字符 |
| 纯图像扫描件 | 只有页面图像,没有可搜索文本层 | OCR 后进行质量检查与字段验证 |
| 可搜索扫描件 | 页面图像加隐藏 OCR 文本层 | 先测试现有文本层,再决定是否重新 OCR |
| 混合文档 | 包含部分原生文本,以及扫描页、图表、印章或插入的图像 | 逐页分流或处理,避免整份文件只用一种规则 |
| 结构化业务文档 | 文本加表格、标签、键值对、复选框或重复字段 | 如果纯文本无法保留所需结构,使用版面分析或文档智能 |
快速选取测试有帮助,但不足够。尝试选择并复制文本,检查提取字符是否有意义,并比较数个代表性页面。PDF 即使能提供文本,仍可能阅读顺序错误、词语断裂、符号缺失,或无法保留有效表格结构。
已有可用文本时,采用原生提取
原生数字 PDF 通常提供最简单的提取路径。原生提取读取编码文本,无需从像素猜测字符,因此避免识别错误。源文本与字符映射正确时,通常速度更快,也更能保留准确数值。
但视觉位置不会自动决定逻辑阅读顺序。PDF 存储绘制指令,文本可能逐片段放置,因此多栏、定位标签、页眉页脚、连字、特殊字体及表格都可能使输出混乱。pypdf 文档也区分原生数字、扫描及 OCR 处理过的 PDF,并解释为何文本提取无法从纯图像页面恢复文字。
当需求是可搜索文本、索引、文档比较,或从一致的数字报表获取数据时,原生提取很合适。将输出用作生产数据前,应验证准确标识、日期、小数、负号及页面边界。
文字只以像素存在时,使用 OCR
纸质文件扫描成 PDF 后,除非经过 OCR 建立文本层,否则只包含图像而非可搜索文字。Adobe 将 OCR 描述为把文字图像转换为可选择、可搜索文本的过程。扫描表格、拍照文件、纸质档案、带标签的签名区域,以及大型 PDF 中的纯图像页,都适合从 OCR 开始。
OCR 质量取决于图像证据。分辨率、模糊、倾斜、阴影、压缩、小字、手写、语言、页面旋转、印章、背景纹理及原件损坏都会影响识别。工具支持时配置预期语言与方向,保留原文件及坐标或页码,方便审核人员追溯提取值。
运行 OCR 不代表结果正确。Adobe 提供已识别文本审核流程,因为不确定词语可能需要纠正。业务提取通常应以字段或交易为审核单位,而非逐字符。错误的发票总额或保单号,比描述文字中无害的错字更重要。
OCR 与数据提取不是同一任务
OCR 回答“这里有哪些字符?”,数据提取还必须回答“哪个值是发票号码、哪些行属于表格、该字段属于哪一页或哪份文档?”。纯 OCR 可能返回所有可见词语,却丢失业务流程所需关系。
当阅读顺序、段落、表格、选择标记或坐标重要时,使用版面模型。发票或收据等受支持类型符合需求时,使用预构建文档模型;字段属于稳定文档类别的特定内容时,可考虑定制提取模型。Microsoft 按返回的结构与字段区分读取、版面、预构建及定制模型;能提供所需证据的最简单模型通常更易测试和支持。
不要仅为弥补输入质量差而加入生成式模型。它可能有助于多样、非结构化文档或推断字段,但当提取数据驱动付款、合规、访问或报表时,基于明确规则的验证与可追溯性仍必不可少。
按文档分流,不要强行统一方法
- 检查: 判断每页包含可用原生文本、现有 OCR 层,还是纯图像内容。
- 提取: 可靠文本使用原生提取,仅对需要识别的页面使用 OCR。
- 理解: 字段与关系重要时,应用版面、预构建或定制模型。
- 验证: 检查格式、总额、参考数据、跨字段规则、重复及必填值。
- 审核: 将低置信度或高影响个案连同源图像及审核原因交给人员处理。
- 记录: 保留文档版本、提取方式、模型版本、页码、验证结果、纠正及最终状态。
这种分流方式比逐页全部 OCR 更有效地处理混合 PDF,也让异常清晰可见:受保护文件、损坏 PDF、缺页、不支持字体、手写、低分辨率扫描及非预期文档类型,都有明确处理路径,不会悄悄输出不完整数据。
以业务字段的准确性评估效果,而不只看演示
建立有代表性的测试集,涵盖原生数字文件、扫描件、可搜索扫描件、混合页面、旋转页面、低质量图像、不同供应商或模板,以及已知的边界情况。比较不同方法前,先确定预期值。
- 对流程实际使用的值,衡量字段级精确率与召回率。
- 追踪全自动完成、辅助完成、拒绝及静默错误率。
- 区分识别错误与字段映射、验证及流程错误。
- 衡量审核量及纠正时间,而不只看模型置信度。
- 比较每份合格文档的延迟与成本,包含重试及人工工作。
- 对金额、标识、日期、合规字段及其他影响重大的数据设置更严格检查。
即使系统能正确提取大多数文字,只要遗漏一个必要总额,或将正确值放入错误字段,流程仍可能失败。发布标准应反映各类错误的危害及安全纠正路径是否可用。
实用决策规则
- 可靠原生文本已包含所需内容时,直接提取。
- 所需文字只在图像中时,对这些页面使用 OCR。
- 结构或命名字段重要时,加入最小且合适的文档智能模型。
- 文档类型多样时,先分类与分流,而非强用一个提取器。
- 错误可能造成重大损害时,执行基于明确规则的验证,并在证据不确定时要求审核。