常见问题
Q:什么是自定义模板文字识别?什么场景下我该使用这个产品?
A:自定义模板文字识别是一款您可以针对各种票据、卡证实现字段名和字段值对应提取的OCR产品;举例:当您需要识别某一种证件(比如房产证),但是百度官方还没有针对这种类型的证件推出具体的模板识别接口,而使用通用文字识别无法实现字段名和字段值对应化的提取,这种情况下您可以使用自定义模板文字识别产品,实现结构化的数据提取。
Q:产品实现的原理是什么?
A:基本原理:如果您要识别特定的一类具有固定格式的文档,首先上传一张票据、卡证的图片作为模板(用于制作模板的图片要求摆放端正、平整,拍摄时避免过曝,阴影等不良情况),然后在模板上框选一些固定的字段作为【参照字段】。后续调用识别接口时,会将新上传的图片以【参照字段】为锚点扭正到和模板图片一致。最后框选需要识别的区域作为【识别区】,框选后在右侧给该识别区命名,点击保存,这便完成了一个模板的制作。
Q:自定义模板文字识别支持哪些浏览器?
A:推荐使用Chrome(版本58及以上),暂时不支持Safari。
Q:上传的图片有大小限制吗?上传什么样的图片效果会比较好?
A:上传用于模板制作的图片,最大:小于等于4M,且分辨率小于等于4096像素乘4096像素,最小:大于等于15像素乘15像素且大于等于1KB,后期上传识别的图片最大:大小不超过4M,且分辨率小于等于4096像素乘4096像素,最小:大于等于15像素乘15像素且大于等于1KB。 为了保证更好的效果,建议模板图片:
- 模板图片清晰平整,摆放端正
- 模板图片格式以 .jpg 为最佳,png、bmp格式识别效果欠佳
- 模板图片尽量突出需要识别的部分,请先手动剪裁掉不需要的部分,提高识别率
- 模板图片大小建议为:转为base64编码后不超过1M,不宜过大或过小
- 模板图片中,大多数汉字的大小保持在 32*32像素 左右,不符合的整体缩放调整
Q:我该怎么使用自定义模板文字识别?
A:首先您需要制作您的模板,在Chrome中打开 ai.baidu.com/iocr 进入模板管理界面,此时需要您首先登录百度账号(和您的百度网盘、百度贴吧、百度文库等百度系产品通用),进入后点击创建模板,进入模板编辑界面,首先您需要给您的模板进行命名,然后点击左侧编辑框中的按钮上传模板图片(模板图片要求端正、清晰),然后框选字段值,框选后在右侧对应位置填写字段名,全部框选完后点击右侧“参照字段”标签,在图中框选参照字段(要求参见下一条Q&A),完成后点击保存,则您已经制作完您的模板,此时您可以点击“发布”按钮,把次模板发布到线上环境(保存只是保存修改记录,不会实时生效,发布后您的所有操作才会生效),然后您可以参照文档中的“请求说明”上传图片,并制定templateSign(模板标识),来指定上传的图片使用该模板。
视频教程请参见 iOCR通用版使用教程(视频版)
Q:模板制作过程中怎么进行图片的缩放?
A:可以使用工具栏中的放大缩小工具,或使用鼠标滚轮,或使用触摸板(如果您的设备具有触摸板)进行双指缩放。
Q:什么是参照字段,选取时有什么注意点?
A:为了将您后期上传的图片矫正成和您模板图片以在同样的位置区间寻找关键值,您需要在制作模板的时候在“参照字段”标签页下框选至少4个(推荐框选8个以上)的参照字段,参照字段的选取需要点击编辑模板界面右上角工具栏中的“设置参照字段”工具,然后在图上拖动选取固定文字。 框选时有一些注意点:
- 同一参照字段的文字必须在同一行;
- 参照字段必须是模板图片和后期上传的图片中共同拥有并且内容和位置都不变的文字;
- 参照字段尽量四散在图片的边缘,尤其是四角;
- 参照字段尽量在模板图片上唯一,在图片中多次出现的文字段效果较差;
- 参照字段尽量多,至少4个,强烈推荐标注8个以上的参照字段,参照字段越多越分散识别效果越好;
- 如果后期测试时显示“未匹配到模板”则是因为参照字段选取和识别的问题,请按照上述要求检查核对并重新选取参照字段。
Q:框选参照字段的时候发现识别错了,可以纠正吗?
A:可以的,您可以点击参照字段后面的编辑按钮,对参照字段进行人工纠正,输入正确的文字内容。修改正确参照字段的内容有助于提升后期模板匹配效果。纠正的规则是:
- 不能添加/删除超过两个字符,并且如果您框选的参照字段范围比较小,无法放下新增的两个字符,则您需要适当扩大该参照字段的框选范围
- 跨行的参照字段无法编辑,请先改为框选单行文字
- 不能将参照字段内容删除为空
Q:框选识别区时有什么办法可以提高准确率?
A:如果您选择的识别区内容正好为以下表格中的某一项,您可以选择对应的字段类型来提升识别效果:
字段属性 | 适用范围 | 输出结果 |
---|---|---|
常规 | 适用于全场景识别, 如果该切片属于下列属性中任意一个, 建议使用下面的切片属性来提高准确率 |
识别区所有内容 |
小写数字金额 | 各类票据中金额数字 | 结果只返回至少包含小数点后两位的数值(不满两位则默认补充为##.00)并且会忽略所有的非数字以外的文字和符号(也会丢弃¥、$) |
日期 | 单个日期如2018年7月19日 | 结果会做归一化处理统一以20180719格式返回 |
长串数字 | 如运单号、票号 | 结果只返回长串数字、英文组合 |
手写汉字 | 手写中文汉字 | 该识别区进行全量识别,但是对手写汉字有较高的准确率 |
手写数字 | 手写阿拉伯数字 | 该识别区进行全量识别,但是对手写数字有较高的准确率 |
数字/英文/符号混合 | 发票密码区 | 识别区所有内容,相比于“常规”识别率更高 |
我的字段类型 | 您可以在【字段类型管理】 中为字段值是有限集合的字段上传词典, 限定输出范围 |
智能匹配后的词典值 |
Q:在框选字段值/框选参照字段的时候不小心多点击增加了一个错误的选择框,应该怎么删除?
A:可以点击右侧的“识别区”/“参照字段”下面对应字段后的X按钮进行删除。
Q:有些识别区容易漏字、识别不准怎么办?
A:在对应识别区的“字段类型”中选择“数字/英文/符号混合”可以提高该字段的识别效果。
Q:保存和发布是什么关系/发布是用来干嘛的?
A:考虑到很多用户会把自己制作的模板使用到业务中去,所以为了尽可能的保证您业务的连续性,我们的模板编辑完后点击保存时只是把您的编辑操作保存到云端,此时,您线上使用的模板还是您之前的模板,直至您对刚才的模板进行发布操作。举例:您在2月1日生成了A模板,并点击发布,此时您调用这个接口时是使用的2月1日的A模板,然后您在3月1日对模板进行了修改,点击了保存,此时您在3月1日的所有编辑操作都已经保存在云端,但是您线上使用的模板仍然是2月1日的A模板,如果您需要使用3月1日的模板去替换2月1日的版本,您需要对3月1日编辑过的A模板进行发布操作,当您点击发布以后,您调用这个接口使用的将会是3月1日编辑的A模板。
Q:修改历史是什么?/我能回退到之前某个版本吗?
A:点击“修改历史”右侧的小箭头即可展开这个模板的版本记录,版本记录从新到旧列出了您针对这个模板修改的各个版本,您可以点击对应版本右侧的“退回到此刻”来将模板回退到当时那个版本,您框选的取值范围、参照字段都会回退到当时版本的设置,但是您的模板名字不会因此回退。
Q:制作完模板以后我可以给模板改名字吗?回退到其他版本的时候名字也会回退吗?
A:您可以在模板编辑页面随时修改您的名字,修改完名字以后需要您点击保存,此时会生成一个新的版本;在您回退到过去的某个版本的时候模板名字不会回退。
Q:分类时是否数据越多越好?
A:不一定,我们建议您每个模板提供30张同模板的训练集,如果您训练图片较丰富可以提供100张以下的图片,每张图片建议不超过500kb,选择的图片要尽量覆盖到使用的场景。同时更多的图片会导致训练时间加长。
Q:分类的细粒度大概是什么样的?
A:现在分类的细粒度为视觉元素层面有较明显的区分的图片,如身份证、银行卡、户口本这些人类能快速区分开的卡证、票据。但是无法做到需要根据文字内容来进行区分的地步,如:无法区分北京增值税专票和天津增值税专票。
Q:分类时训练数据不很是很多,能否用同一张照片PS处理成多张不同的图片来进行训练?
A:非常不建议您这么做。这样拟合出来的分类器模型没有很强的泛化能力,分类的准确性会大幅下降。我们还是建议您使用真实场景中需要分类的数据进行训练。
Q:为什么训练以后显示准确率100%,但是还会有分类错误的情况呢?
A:界面上显示的分类器的准确率预估是基于少量测试图片得出的结论,只代表在该测试集下的准确率。
Q:训练完的分类器预测的准确率不高是什么原因?
A:主要是训练数据的问题,包括: 1.某个模板的训练集中混杂了其他类型的图片; 2.训练集数据较少或过于单一没有很好覆盖全实际场景; 3.需要分类的不同模板区别不明显,如北京增值税专票和天津增值税专票 针对上述情况的解决方案如下:
- 1.检查每个模板的训练集,确保训练集中的图片属于同一个模板;
- 2.增加训练集中的图片数量,尽量覆盖实际使用时可能会遇到的场景;
- 3.只是文字内容级别的不同模板建议使用通用文字识别的结果作为参考进行分类。