签名、印章、划掉重写的部分,是手写识别里最容易被高估的三项。它们的共同点是:不是准确率高低的问题,而是内容本身不在能力的适用范围里。 三项的成因各不相同,得分开说。
手写签名:认不出来,但可以描出轮廓
签名是一个人刻意设计的独造字形,脱离了日常书写规范。模型训练分布里没有它,通用手写识别对签名通常返回空白或乱码。这是正常结果,不是设置问题。
签名真正需要的两件事,走的是完全不同的技术路线:
- 要留在文档上证明是谁签的 → 保留图像,作为图片插入。PDF 侧的做法见 贴一张签名图片算不算签字?图片式签名与数字签名的区别,电子签名与电子签章的法律效力区别见 电子签名和电子签章是一回事吗?概念、法律效力与区别讲清楚
- 要把签名变成 CAD 线条(雕刻、切割、印章制作) → 走描线路径。JPG 转 DXF 支持白底黑线的手写签名,它输出的是轮廓路径,不是文字 —— 换句话说,它能复刻形状,但文件里没有任何「字」
想从签名照片里读出姓名,这条路走不通。 姓名要人工填,或者由当事人自己写印刷体。
印章:压在字上的那一层,会同时毁掉两边
印章在识别里是一个覆盖层,问题有两面:
被红章压住的正文,笔画和章色叠在一起。深色油墨压到处,这一两个字通常识别不出来或识别成别的字,而且整行受影响。这一项在多个工具的说明里都写着「无法可靠识别」,属于能力边界。
印章本身的字(单位名称、编号)是环形或弧形排列的,横排是现代文本识别的基本假设,曲线排列的文字会直接打乱读取顺序。所以「把公章上的单位名识别出来」这件事,用通用入口做不成。
需要单位名时的正确做法:从正文里的落款、抬头、表头取,那里通常是印刷体;实在只能靠章,就人工录入。
涂改、划掉、覆盖:信息已经损坏
划掉的部分、涂改液覆盖处、后期重写的字压在旧字上 —— 这三类是图像上的信息损毁,不是识别难点。机器无法还原一层已经盖住的东西,人也看不清,这一项不要期待任何工具。
批量手写材料里如果涂改多,正确做法是:在识别前手工标记这些区域(裁剪时避开),让识别只跑干净部分,脏部分留人工补。混在一起跑的结果通常是整段被污染。
表格与批注混在一起怎么办
真实单据经常是「印好的表 + 手写填写 + 盖章 + 签名」。按内容拆开处理:
- 印刷表体 → 表格识别转Excel(拿到行列结构)
- 手写填写内容 → 手写文字识别 或 手写表格转Excel
- 签名、印章 → 保留原图,不识别
- 金额、编号、日期 → 对照原图逐字核
最后要说明的两件事
第一,本站没有证件与印章的专用识别。 不提供身份证、银行卡、营业执照、公章的字段化提取 —— 各家有专门 API,本站目前只做通用文字、表格、手写文字与手写表格四类。拿通用入口做证件提取,既不准确也不合适。
第二,涉及签名与印章的材料通常是正式材料。 合同、授权书、证明件的原件效力来自原件本身,识别出的文本只是便于检索和搬运的副本,不能代替原件提交。判断哪些材料不该上传在线服务,标准见 合同、内部文件转图片会被泄露吗?安全边界讲实话。