各常见OCR图片文字识别对比总结
什么是OCR?
OCR英文全称是Optical Character Recognition,中文叫做光学字符识别。它是利用光学技术和计算机技术把印在或写在纸上的文字读取出来,并转换成一种计算机能够接受、人又可以理解的格式。文字识别是计算机视觉研究领域的分支之一,而且这个课题已经是比较成熟了,并且在商业中已经有很多落地项目了。比如汉王OCR,百度OCR,阿里OCR、有道OCR、科大讯飞等等。其实我们自己也能感受到,OCR技术确实也在改变着我们的生活:比如一个手机APP就能帮忙扫描名片、身份证,并识别出里面的信息;汽车进入停车场、收费站都不需要人工登记了,都是用车牌识别技术;我们看书时看到不懂的题,拿个手机一扫,APP就能在网上帮你找到这题的答案。此次因某些需求需测试当前比较常见的各个OCR文字识别的识别率,所以总结该文档仅供参考!
具体测试图片的实例 由于都是网图,就不粘贴出来了,自己可以去网上找关于印刷体(印刷体中文、英文、中英文混合)、手写体(中文、英文、中英文混合)的图片以供测试。
测试日期为2021年4月。
一、腾讯云OCR文字识别
官方地址:https://cloud.tencent.com/product/ocr-catalog
需完成实名认证、开通文字处理。直接使用微信登录完成相关要求即可。
免费次数:首次申请有1000次免费次数。但只有当月有效,也就是说哪怕你3月29日开通,到4月份也就失效了。
具体API概览:https://cloud.tencent.com/document/product/866/33515
默认接口请求频率限制:10次/秒
需新建API密钥生成 SecretId和SecretKey。具体使用示例官网有介绍,可根据自己具体所用开发语言选择不同的示例。
本人测试示例:通用印刷体识别(高精度版)、通用手写体识别、英文识别
1、英文识别(对应接口类EnglishOCR) 只能识别到英文,无法识别中文(是一点都识别不了)
针对纯手写英文个人感觉在60%左右吧
2、通用印刷体识别(高精度版 对应接口类GeneralAccurateOCR) 能识别中英文
针对手写英文识别率估算65%左右 英文可识别空格标点符号等
针对手写中文识别率95%左右
针对印刷体中英文识别率90%以上
针对多题型(机打、手写、中英混合)识别率60%吧
3、通用手写体识别(对应接口类GeneralHandwritingOCR) 缺陷:英文识别不了空格标点符号等
针对手写英文识别率估算50%左右 英文识别不了空格标点符号等
针对手写中文识别率95%左右
针对印刷体中英文识别率90%吧
针对多题型(机打、手写、中英混合)识别率60%吧
返回json格式,DetectedText参数为具体识别内容。
具体返回参数说明:https://cloud.tencent.com/document/api/866/33527#TextGeneralHandwriting
返回示例如:
优点:文档较丰富
缺点:调用比较耗时、识别率一般
如果要使用腾讯云的话建议使用通用印刷体识别(高精度版)
二、百度云OCR文字识别
官网地址:https://cloud.baidu.com/product/ocr_general
API文档:https://cloud.baidu.com/doc/OCR/s/jk9m7mj1l
可使用百度账号登录然后创建应用并生成Access Token。AccessToken在API文档中有相关链接
具体免费政策:根据不同接口有不同限制,从50到500不等
具体示例在API文档中也有介绍具体返回json格式,读取的内容参数为word
返回示例如:
本人测试实例三种:试卷分析与识别、手写文字识别、通用文字识别(高精度版)
针对手写英文识别率 手写文字识别最好75%
针对手写中文识别率 都在90%左右
针对印刷体中英文数字混合识别率 都在90%以上
针对多类型(机打、手写、中英混合)识别 手写文字识别最好60%多吧
优点:文档丰富、使用不复杂
缺点:调用比较耗时、识别率一般
如果要用百度云Ocr建议使用 手写文字识别
三、有道云Ocr文字识别
官网地址:https://ai.youdao.com/product-ocr-hand.s
需创建应用和应用ID、应用密钥
具体费用政策:无免费体验次数,但注册时会返50元具体调用会从这50元中扣
本人测试示例:整题识别(含公式)、通用文字识别
针对手写英文识别率 都还可以80%是有的
针对手写中文识别率 都可以80%
针对印刷体中英文数字混合识别率 都还可以90%
针对多类型(机打、手写、中英混合)识别率 60%吧
返回json格式,text参数为具体读取内容
具体返回示例如:
优点:暂时想不出来
缺点:不是太友好,官方给的实例有的都是错的。调用返回错误消息比较模糊
四、阿里云OCR文字识别
官方地址:https://www.aliyun.com/activity/bigdata/ocrprodpromotionjuly
用支付宝扫码登录,需实名认证,购买后直接使用AppCode调用接口即可
单用户限制10QPS
免费政策:500次
本人测试实例:印刷文字识别-试卷识别/OCR文字识别、印刷文字识别-答题卡主观题识别
针对手写英文识别率 印刷文字识别-试卷识别/OCR文字识别没法用识别率非常低、印刷文字识别-答题卡主观题识别一样拉,跟腾讯云一样识别不了空格和标点符号
针对手写中文识别率 都还可以80-90%
针对印刷体中英文数字混合识别率 都还可以80%
针对多类型(机打、手写、中英混合)识别率 70%
返回json格式,word参数为返回的文本
返回示例如:
优点:针对多题型识别率还可以
缺点:太杂了,不友好。找个东西都需要好久。针对纯手写英文还是算了吧
五、汉王OCR文字识别
在阿里云里面可直接找到,用法跟纯阿里云差不多
免费政策:0元/20次
本人测试实例:汉王通用文本识别、汉王手写体识别
针对手写英文识别率 都还可以90%
针对手写中文识别率 都还可以80%是有的
针对印刷体中英文数字混合识别率 都还可以90%
针对多类型(机打、手写、中英混合)识别率 都还可以70%
返回示例如:
优点:两种方式识别都差不多,比较稳定
缺点:感觉调用时长是最长的
综上所述:
最普通、中庸的:有道云
比较稳定的:汉王
比较友好的:百度
免费次数最少的:汉王和阿里
针对手写英文识别率 阿里最差,汉王相比其他略好些(个人感觉)。其他的都还可以 70%是有的
针对手写中文识别率 腾讯云的英文识别外,其他识别率也都在90%
针对印刷体中英文数字混合识别率 都还可以基本都在90%左右
针对多类型(机打、手写、中英混合)的识别率 汉王=>阿里>百度>腾讯=有道
另:由于某些原因科大讯飞的OCR暂未测试,据朋友测试后反馈科大讯飞的识别率能好一些,略优于汉王。
以上为本人测试总结,仅供参考!
才疏学浅,相关文档等仅供自我总结,如有相关问题可留言交流谢谢。