签名、印章、划掉重写的部分,是手写识别里最容易被高估的三项。它们的共同点是:不是准确率高低的问题,而是内容本身不在能力的适用范围里。 三项的成因各不相同,得分开说。

手写签名:认不出来,但可以描出轮廓

签名是一个人刻意设计的独造字形,脱离了日常书写规范。模型训练分布里没有它,通用手写识别对签名通常返回空白或乱码。这是正常结果,不是设置问题。

签名真正需要的两件事,走的是完全不同的技术路线:

想从签名照片里读出姓名,这条路走不通。 姓名要人工填,或者由当事人自己写印刷体。

印章:压在字上的那一层,会同时毁掉两边

印章在识别里是一个覆盖层,问题有两面:

被红章压住的正文,笔画和章色叠在一起。深色油墨压到处,这一两个字通常识别不出来或识别成别的字,而且整行受影响。这一项在多个工具的说明里都写着「无法可靠识别」,属于能力边界。

印章本身的字(单位名称、编号)是环形或弧形排列的,横排是现代文本识别的基本假设,曲线排列的文字会直接打乱读取顺序。所以「把公章上的单位名识别出来」这件事,用通用入口做不成。

需要单位名时的正确做法:从正文里的落款、抬头、表头取,那里通常是印刷体;实在只能靠章,就人工录入。

涂改、划掉、覆盖:信息已经损坏

划掉的部分、涂改液覆盖处、后期重写的字压在旧字上 —— 这三类是图像上的信息损毁,不是识别难点。机器无法还原一层已经盖住的东西,人也看不清,这一项不要期待任何工具。

批量手写材料里如果涂改多,正确做法是:在识别前手工标记这些区域(裁剪时避开),让识别只跑干净部分,脏部分留人工补。混在一起跑的结果通常是整段被污染。

表格与批注混在一起怎么办

真实单据经常是「印好的表 + 手写填写 + 盖章 + 签名」。按内容拆开处理:

  1. 印刷表体 → 表格识别转Excel(拿到行列结构)
  2. 手写填写内容 → 手写文字识别 或 手写表格转Excel
  3. 签名、印章 → 保留原图,不识别
  4. 金额、编号、日期 → 对照原图逐字核

最后要说明的两件事

第一,本站没有证件与印章的专用识别。 不提供身份证、银行卡、营业执照、公章的字段化提取 —— 各家有专门 API,本站目前只做通用文字、表格、手写文字与手写表格四类。拿通用入口做证件提取,既不准确也不合适。

第二,涉及签名与印章的材料通常是正式材料。 合同、授权书、证明件的原件效力来自原件本身,识别出的文本只是便于检索和搬运的副本,不能代替原件提交。判断哪些材料不该上传在线服务,标准见 合同、内部文件转图片会被泄露吗?安全边界讲实话。