VLM 驱动 AI OCR

手写发票转Excel
纸质手写票据AI识别提取,批量导出汇总表

通用OCR对手写文字的平均识别率仅60-70%,字迹一潦草就输出乱码。简录AI基于视觉大模型,像人一样理解手写文字的含义——发票号码、日期、货物名称、大小写金额一并提取,直接生成结构化Excel。

文件不用于模型训练 · TLS 1.3 传输加密 · 处理后自动删除

手写体识别
手写发票/收据
XLSX/CSV

手写发票上能提取哪些字段

输入你需要的列名——"发票号码""开票日期""货物名称""金额(大写)"——简录AI根据列名的语义在手写票据中定位对应数据,理解手写内容后填入正确的单元格。你输入的列名就是最终Excel的表头。

发票号码/收据编号
开票日期
开票单位名称
购买方名称
货物或服务名称
数量 & 单价
金额(小写)
金额(大写)
税额
价税合计
经办人/开票人
备注

以上为手写发票常见提取字段。你还可以输入票据上任意手写信息——印章内容、手写签名、特殊备注——AI均可按需提取。需要票据上没有的信息?详见推断列

手写发票的提取难点不在"扫描",而在理解"每个人字不一样"

如果你用的是传统OCR工具,你很快会发现:印刷体发票识别准确率可能98%以上,但换成手写发票,同一套系统就完全不行了。原因很简单——传统OCR是为印刷字体(统一、规范、可预测的字形)设计的,而手写字字迹千差万别:有人写得工整,有人龙飞凤舞,有人数字7中间加一横,有人连笔把"元"写成一条波浪线。这就是为什么通用OCR对手写文字的平均准确率只有60-70%。简录AI的视觉大模型不逐字"看"字形——它像人一样读整行、读整段,靠上下文推断出正确含义。

传统方案的问题

01

通用OCR压根不认识手写——同一张手写发票换了人就识别不出

传统OCR引擎是基于标准印刷字体训练的——方正、规范、每个字长得一样。手写字完全打破了这些假设:每个人笔迹不同、同一人不同时间写的字也不同。在知乎上, 有财务人员问"人工录入发票信息真的好烦,有什么软件可以快速解决这个问题吗?"——问题底下大量回复提到,OCR对手写票据几乎等同于无效,手写发票还是得靠人工逐张打字录入。

02

字迹潦草、连笔、划改——每一个都是OCR的噩梦

手写发票的常见场景恰恰是字迹最差的情况:小商户老板忙里偷闲随手填、农贸市场摊主连笔速写、出租车司机在颠簸中手写发票。国家标准GB/T 18789-2013的专利文献中明确指出:"OCR对其他的手写潦草等字体无法识别,手写潦草等字体还需要人工打字录入,造成发票录入效率较低"。更不用说手写票据常见的涂改痕迹——金额被划掉重写、品名旁加备注、数字被圈出纠正——传统OCR遇到这些直接输出乱码。

03

多联复写纸的第二三联——字还没看清就已经糊了

手写发票通常为多联复写纸——存根联(第一联,字迹最清晰)、发票联(第二联或第三联,复写痕迹已经开始模糊)、记账联(最后一联,往往只剩隐约的压痕)。传统OCR对图像清晰度有硬性要求——字迹对比度不够、笔划断裂或粘连,识别结果直接不可用。到了月底报销时,你手上的往往是二三联的复写纸,字迹已经淡到肉眼都要凑近了才能辨认。

简录AI的解法

01

视觉大模型像人一样"读懂"手写——不依赖字形,用理解替代识别

简录AI的底层引擎是多模态视觉大模型(VLM),它的训练数据中包含了数百万份真实手写样本——工整书写、潦草连笔、大小混合、倾斜歪扭,全都有。VLM不逐字拆分笔画去"猜"是什么字,而是像人眼阅读一样:先读整行,理解上下文,再确定每个位置该是什么内容。工整手写的文字提取准确率可达95%以上,轻度连笔约90%左右——远高于通用OCR的60-70%。

02

自定义列名——你定义提取什么,AI从手写票据中找到对应的内容

不依赖固定模板。你在输入框中写:"发票号码""开票日期""货物名称""金额(小写)""金额(大写)""经办人"——AI根据列名的语义,在每张手写票据中找对应的手写内容。不管这张发票的格式是横排还是竖排、右下角写了什么还是左上角写了什么——AI通过理解语义来定位,而非死记位置。你还可以定义推断列——如输入 费用类别(选项:采购/餐饮/交通/其他),AI根据货物名称自动判断归属类别,即使票据上没有这个字段。

03

大小写金额自动对照验证 + 计算列精准稽核

手写发票最容易出错的地方就是金额——大写和小写不一致、涂改后未盖章、计算合计有误。你可以在列名中定义 金额一致性(大写转换 - 小写)——AI提取时将大写金额转换为数字,与小写金额对比,输出差值。任何非零行就是异常数据,需要人工核实。还可以定义 合计验证(金额合计 - 税额) 来验证手写票据的计算正确性。一次提取完成"录入+核验"两步。

月底报销:20张手写收据、15张手写发票、还有几张复写纸第二联——怎么一次处理完

这不是假设。个体户供应、农贸市场采购、出租车报销、餐饮发票——手写票据在今天依然大量存在于实体经济中。下面是一次典型的处理流程。

1

拍照或上传所有手写票据

把20张手写收据和15张手写发票一次性拖入上传区——手机拍的照片、扫描件PDF、甚至夹了张机打发票混进去也没关系,格式任意、类型混合。如果手写票据分散在不同同事或供应商手里,也可以发送收集链接,对方用手机打开后拍照上传,无需对方注册账号。

2

输入列名,让AI提取手写内容

在列名框中输入你需要汇总的字段:发票号码 开票日期 商户名称 货物名称 金额(小写) 金额(大写)再加一个计算列 金额稽核(大写转换-小写)。AI每读一张手写票据就自动做大小写对照,需要人工核实的行直接标出。

3

导出Excel汇总表,一分钟完成报销底稿

全部处理完成后,导出一个XLSX文件:35张手写票据的数据整齐排列在同一张表中——每张票据一行,所有字段统一对齐。金额稽核列自动标出异常行,你只需核对那几行即可。这张表就是月底报销的完整底稿——不再是35张票据×逐张辨认潦草字迹×逐项手工录入。

适用场景与注意事项

不写"什么都能识"。以下是真实的能力边界——知道什么条件下效果好、什么时候需要人工复核,比一份夸大功能的清单更有用。

效果最佳的场景

✓ 字迹工整、对比度良好的手写票据

书写规范、笔画清晰的手写发票,视觉大模型的识别准确率可达95%以上,接近印刷体的识别水平。拍照时保证光线充足、手机与纸面平行,避免强阴影和反光。

✓ 格式相对规范的手写发票和收据

有固定版式的手写发票(如国税监制的通用手工发票)因为有明确字段位置——发票号码在右上角、日期和金额各占独立栏——AI定位更精准,提取效果优于完全手写的白条收据。

✓ 手写票据和机打票据混合批量处理

你不需要把手写和机打分开两次处理。所有类型的票据——手写发票、机打专票、电子发票PDF、手机拍照截图——全部上传到同一批次,AI自动识别每张文档的特征并分别提取,输出到同一张Excel。

需要留意的场景

⚠ 重度连笔、极度潦草的手写字迹

字迹严重潦草、无法分辨单个笔画时,准确率会降至85%左右。特别是数字(0和6、1和7容易被误读)和易混淆字(如"元"和"无")。关键字段——金额、发票号码——建议提取后逐项抽查。如果你业务中海量票据都存在严重潦草问题,可以先小批量试用以评估适用性。

⚠ 复写纸最后一联——字迹接近消失时效果有限

多联复写纸的第三联或记账联,若复写痕迹几乎消失、仅剩隐约的纸张压痕,即使视觉大模型也难以准确读取。建议尽可能使用第一联(存根联),或拍照时尝试提高对比度(用手机相机的文档模式)。如果字迹已完全不可辨认,AI无法创造不存在的文字。

⚠ 发黄、破损、污渍严重的老旧票据

保存多年、纸张严重发黄、有水渍或霉斑、部分文字被污渍遮盖的票据,识别准确率会受影响。AI对背景干扰有一定容忍度,但如果污渍直接覆盖在关键文字上,建议对这些票据单独拍照后人工录入。

常见问题

手写发票的识别准确率到底有多高?和印刷发票比差多少?

工整手写文字:识别准确率可达95%以上,接近印刷体的水平。轻度连笔字:约90%左右。重度潦草或连笔严重:85-92%之间。

印刷发票的印刷体文字识别准确率最高可达99%。差距主要来自手写的天然不确定性——同一人写同一个字两次,可能完全不同。视觉大模型通过上下文推断来弥补这个差距——比如看到金额栏前面是"合计人民币",后面手写的数字即使部分模糊,AI也可以通过位置和语境准确判断这是一个金额值。

作为对比:通用OCR(如百度OCR的通用版、Google Lens等)对手写文字的平均识别率仅为60-70%。在NoteOCR官方公开的测试数据中,宣称其专用手写模型的准确率为95-99%。简录AI的视觉大模型手写识别能力处于同一水平线。

金额大写(壹贰叁肆伍陆柒捌玖零)和小写能同时提取吗?不一致怎么办?

可以同时提取。在列名中分别定义"金额(小写)"和"金额(大写)"两个列,AI会从手写票据中分别读取两处金额。

如果大小写不一致——这在手写票据中并不罕见(开票人写错大写、涂改后未改另一边等)——你可以用计算列做自动核对:输入列名 金额一致性(大写转数字 - 小写),AI提取时自动将大写金额(如"壹仟贰佰叁拾元整")转换为数值(1230),与小写金额做差。任何输出非零的行就是大小写不匹配的票据,需要人工核实原始凭证。

复写纸的第二联、第三联已经模糊了,还能识别出来吗?

取决于模糊程度。手写发票通常为三联或四联复写纸:

  • 第一联(存根联):笔迹最清晰,有原笔压痕——识别效果最好。
  • 第二联(发票/客户联):复写颜色较浓,字迹可辨——通常可以正常识别。
  • 第三联或第四联(记账联):复写颜色最淡,可能出现笔画断裂——识别准确率会下降。

如果第三联的字迹仍然肉眼可辨认(即使颜色很淡),视觉大模型通常可以通过上下文推断。但如果字迹已褪成几乎看不出的浅灰压痕,建议尽可能使用第一联拍照。也可以尝试在手机拍照时开启文档模式或提高对比度滤镜来增强残留字迹。

手写发票和机打发票能混合上传、输出到同一张表吗?

完全可以。手写发票、机打发票、电子发票PDF、手机拍照——全部拖入同一次上传。AI不依赖文档是印刷的还是手写的来判断它是什么,而是直接读取页面上的内容。

你只需要统一输入一套列名(如"发票号码""日期""金额""供应商"),AI会从每张文档中——无论手写还是机打——找到对应的内容填入对应的列。最终输出的Excel表头统一,所有类型的票据数据整齐排列,不需要分开两次处理、再手动合并两张表。

手写票据提取出的日期和金额格式不统一怎么处理?

简录AI内置智能数据后处理功能,导出前自动完成格式标准化:

  • 日期自动统一为YYYY-MM-DD格式(无论手写日期是"2024年1月5日""24.1.5""1/5"哪种写法)
  • 金额自动去除千分位逗号和多余空格,统一为两位小数的数字格式
  • 金额大写(如"壹仟贰佰叁拾元整")可自动转换为数字格式
  • 发票号码去除前缀和后缀空格

你导出的Excel直接就是标准化格式,无需打开后再逐列调整。

了解更多:手写文本识别详解 —— 视觉大模型如何理解每个人不同的笔迹 · AI手写识别提取到Excel —— 从手写文档到结构化表格的完整链路 · AI如何识别手写表单和勾选框 —— 手写票据中的复选框、画圈标记识别原理