PDF、扫描件还是拍照:
AI 能从这三种格式提取相同的字段吗?
大多数 OCR 工具把"格式不同"当成一个技术问题来卖解决方案——但真正的问题在架构层。基于坐标位置的模板抽取,换一家供应商的发票格式就要重新配置;而用列名提取的方式(你告诉 AI 你想要"供应商名称、发票号、税额"这几列,AI 根据语义在文档里定位对应的值,而不是按坐标框选位置),PDF、扫描件、拍照这三种格式的底层差异对你的操作指令毫无影响。变的是 AI 的预处理任务,不是你的提取逻辑。
短答案:可以——这里解释为什么
AI 可以从原生 PDF、扫描件、手机拍照这三种格式中提取同样的字段。你在简录AI里输入的列名——比如"供应商"、"单号"、"金额"——对三种格式完全通用,不需要为不同来源的文件分开配置或分类上传。
原生 PDF(由财务软件、ERP 系统直接生成的)里嵌有文字层,AI 直接读取。扫描件是图像,需要先经过 OCR 识别才能提取。手机拍照则在 OCR 之前还多了一步:矫正倾斜、去除阴影、增强对比度。每多一步预处理,就多一个可能影响结果质量的变量——但这些变量影响的是识别的准确程度,不影响你想提取的字段是什么。
传统模板工具(比如基于区域坐标的 OCR 方案)在这里吃亏:它们要求你预先标注每个字段在页面上的位置,一旦供应商换了格式,或者照片拍得有点斜,模板就废了。列名提取不按位置,按语义定位,格式变了操作不用变。
三种格式的本质区别
| 格式 | 文字来源 | 预处理步骤 | 质量变量 | 结构化数据典型准确率 |
|---|---|---|---|---|
| 原生 PDF | 内嵌文字层,直接读取 | 解析 → 提取 | 文件编码、压缩方式 | 97–99% |
| 扫描件 | 图像 → OCR → 文字 | OCR 识别 → 提取 | 分辨率(DPI)、扫描对齐、原件状况 | 95–98%(300 DPI 时) |
| 手机拍照 | 图像 → 预处理 → OCR → 文字 | 矫正倾斜、增强 → OCR → 提取 | 光线、拍摄角度、对焦、阴影、反光 | 85–97%(差异较大) |
有一点容易被忽视:扫描生成的 PDF 不是原生 PDF。文件扩展名是 .pdf,但内容是压缩图像而非文字层。它的处理方式和扫描件一样,而不是原生 PDF。如果你有来自多个渠道的 PDF 文件,混入了扫描 PDF,可以上传一个样本测试——提取质量会直接告诉你它属于哪类。
关于 AI 视觉大模型与传统 OCR 在底层机制上的区别,可以参考这篇 OCR 对比分析,里面有更详细的原理说明。
真正影响提取质量的五个因素
格式类型决定了基准区间,以下五个因素决定你在那个区间内落在哪里:
1. 分辨率(DPI) — 扫描件最可控的变量。300 DPI 扫描的 OCR 准确率比低分辨率扫描最高可提升 50%。低于 150 DPI 时,字符级错误会连锁影响字段识别。如果你在建立文档数字化的扫描流程,DPI 设置是优先标准化的一个参数。
2. 光线与阴影(拍照特有) — 不均匀的光线会产生假边缘,干扰字符分割。一道阴影穿过一行数字,整行就可能识别错误。解决方法直接:把文件平放在对比度高的桌面上,用散射的自然光或侧面灯光,避免正上方强光源和闪光灯。
3. 文件倾斜 — 拍摄或扫描时偏斜超过几度,行分割准确率会明显下降。现代视觉大模型会自动矫正,但角度过大(30° 以上)在密集表格里仍会出错。手机拍照时让文件大致与画面边缘平行,不需要追求完美对齐。
4. 印刷体 vs. 手写字 — 正常字号的印刷文字(8pt 以上)在三种格式下表现都好。手写字是另一类挑战:识别结果取决于个人字迹风格,而不是工具能力,差异很大。手写字段(手工单据、填写表格)需要在用于下游流程前人工核对。
5. 水印和叠加元素 — 视觉大模型能理解上下文,"已付款"印章压在供应商名称上,AI 不会把"已付款"当作供应商名字的一部分。但大面积水印直接覆盖在密集数字区域时,该区域的字段识别率会下降。
分格式看:实际能期待什么
原生 PDF(由开票软件、ERP、财务 SaaS 直接导出的)在三种格式里表现最稳定,准确率区间上限最高。偶发的例外:某些 PDF 把文字渲染成路径而非字符,这类文件没有文字层,行为等同于扫描件。
扫描件在 300 DPI、原件状况良好的条件下,与原生 PDF 的差距通常可以忽略不计。质量会随原件老化(字迹褪色、纸张泛黄)和物理损伤(折痕穿过文字)而下降。对于陈旧档案的数字化,400–600 DPI 可以弥补部分细节损失。
手机拍照的准确率区间最宽,完全取决于拍摄条件。文件平放、光线均匀、正对拍摄,质量接近扫描件。同一份文件在倾斜 30° 加半边阴影的条件下拍,被遮挡字段的识别结果会明显变差。识别失败的方式也比较好判断——通常是该字段空白或明显错误,而不是看起来合理但实际上错了。
三种格式都可以直接在下方试用,列名填写方式相同:
文件仅用于本次识别,不留存,不用于模型训练。
混合格式批量处理:实际怎么操作
这是大多数业务场景的真实状态:供应商发来电子 PDF 发票,历史档案是扫描件,外勤或客户提交的是手机拍照单据。为三种格式各维护一套流程,或者上传前手动分类,是一种隐性的操作负担。
列名提取处理混合批次不需要分流:你填一次列名,把不同格式的文件一起上传,最终得到一张合并的 Excel 表,每行对应一份原始文件,无论它是 PDF、扫描件还是拍照。系统自动判断每个文件适合哪种处理路径,不需要你提前标注。
实操中唯一需要考虑的是准确率预期:一批全是电子 PDF 的发票和一批混入了低光条件拍照单据的批次,整体结果的稳定性不同。如果某些字段的识别结果存疑,通常能直接看出来(空值或明显异常),而不会是悄悄错误。
关于批量单据的汇总处理流程,运单批量录入 Excel 的案例里有更完整的操作步骤示例,同样的逻辑适用于发票、收据等任意单据类型。
常见问题
手写发票或手写收据能提取吗?
可以,但准确率低于印刷体。视觉大模型能识别手写字,但结果取决于字迹风格,工整的印刷体手写比连笔行书好很多。手写字段(尤其是金额、日期、编号)建议在流入下游系统前人工核对。字形相近的字符(1 和 l、0 和 O)是最常见的错误来源。
扫描生成的 PDF 和电子 PDF 处理方式一样吗?
不一样。扫描生成的 PDF 内部是压缩图像,没有文字层,会按扫描件的方式处理,而不是原生 PDF。文件扩展名是 .pdf 不代表有文字层。如果你的批次里有来自不同来源的 PDF,不需要提前分类——系统会自动检测有没有文字层,然后选择对应的处理方式。
扫描单据时分辨率设多少比较合适?
300 DPI 是推荐的基准,在这个分辨率下大多数业务单据的识别质量已经稳定。调高到 600 DPI 对完好的原件通常没有显著提升,但文件体积会大幅增加。如果原件字迹较淡、字号偏小,400–600 DPI 可以帮助还原一些细节。
PDF、扫描件、拍照可以混合在一个批次里上传吗?
可以。混合格式批量上传完全支持。你填一次列名,所有文件一起上传,系统对每个文件独立判断处理方式,最终合并输出一张 Excel 表。不需要提前按格式分类。
拍照时有阴影覆盖部分内容,会怎么处理?
阴影降低了局部对比度,使字符分割变难。阴影在空白边距上影响不大,但穿过数字行或字段标签时问题较明显——对应字段的识别结果通常会留空或出现明显异常,而不是产生看起来合理但实际错误的值,便于核对时发现。条件允许的话,把文件平铺在桌面上、用侧面均匀光源重新拍一张,是最简单的解决方法。
拍照时文件方向(竖拍 / 横拍)影响识别结果吗?
方向本身不影响准确率,竖拍和横拍都能正常处理。影响结果的是偏转角度:文件在画面里偏斜 20–30° 以上,在密集表格区域会出现识别错误。拍摄时让文件大致平行于手机边缘就够了,不需要追求精确对齐。
用你自己的文件试一下
上方的 demo 支持 PDF、扫描件和拍照。如果手边有同一类文档的不同格式版本,可以分别上传,列名填法完全一样。关于如何针对不同类型的单据设计列名、提高跨文件的提取一致性,可以参考批量录入的操作案例,里面有更具体的列名策略说明。
无需信用卡。支持 PDF、JPG、PNG、WebP。