开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高


开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
最近和朋友聊天 , 聊到一个充满使命感但又略显心酸的话题——下班回家在网上给小朋友抄题 。。。 那么问题来了 , 除了大家所知的QQ文字识别功能之外 , 还有哪些方式可以做到文字识别呢 。
作为一名热心的Python小工 , 我想这个问题可以尝试着使用Python解决一下 , 解放双手 , 搞起……
Google一下 , 我们发现很多大厂(百度、阿里、腾讯等)都已有相关的API开放使用 。 那么我们今天就以百度为例 , 分享下如何使用百度文字识别(OCR)服务实现文字提取 , 其实三者都尝试过 , 感觉百度的效果比较好(非评测) , 所以本文就以百度为例喽 。
百度大脑AI开发平台先简单介绍下百度大脑AI开发平台 , 首先我们需要注册下AI开发平台用户 , 非常简单 , 手机号码注册即可 , 官网地址如下 。
【开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高】登录后我们可以在控制台看到 , 开发平台提供的众多服务 , 其中有文字识别服务 。
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
接下来 , 我们创建一个文字识别服务应用 , 如下
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
简单操作后 , 我们就可以成功创建一个服务应用 , 如下 , 其中AppID、API Key、Secret Key是我们后面调用OCR服务时需要用到的 。
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
接下来 , 我们看下如何使用Python调用百度OCR服务实现文字提取 。
Python实现安装百度ai接口的Python第三方库
pip install baidu-aip代码设计中的几个核心步骤

  • 图片压缩:由于OCR服务对图片大小有限制 , 因此在使用时若图片大小超过最大限制 , 要进行压缩处理 。
  • OCR调用:实现利用百度OCR服务提取单张图片文字 , 返回文字内容 。
  • 批量处理:实现N张图片的文字提取 , 并且保存提取结果到文本文件中 。
图片压缩
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
OCR服务调用
该函数中使用到在上面章节 , 提到的AppID、API Key、Secret Key信息 。
在代码中 , 我们使用了basicGeneral(通用文字识别) , 每天免费使用50000次 , 还有basicAccurate通用文字识别(高精度版) , 每天免费使用500次 。 基本满足我们日常使用 , 若不够 , 可以再使用其他文字识别服务 。
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
批量处理
通过传入单张图片或多张图片 , 调用OCR服务实现批量图片文字提取 。
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
效果如何呢测试图片A
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
识别结果
我们可以看到 , 再有背景干扰下 , 文字识别提取准确率仍可以达到100% 。
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
测试图片B
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
识别结果
我们可以看到 , 大量文字中 , 文字识别提取准确率几乎为100% , 且格式仍旧保留 。
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
批量处理结果
我们对测试图片A/B进行批量处理 , 结果格式如下
开发平台|Python利用百度文字识别(OCR)服务实现图片文字提取,准确率超高文章插图
若对您有所帮助 , 欢迎大家评论、留言 , 私下可获取源码 。