Python 文字识别,有个OCR 库——Tesseract,看网上评论说识别出来不精准,准确率不行。还是用百度的文字识别API精准得多。使用也很简单。
一、在百度创建文字识别的应用
1.注册登录百度账号
没有账号的,就注册一下。
2.创建文字识别应用
网址:https://console.bce.baidu.com/ai/#/ai/ocr/overview/index
- 应用名称:自己取,比如:OCR识别;
- 接口选择:默认已经勾选文字识别了;
- 文字文字识别包名:不需要(默认)
- 应用归属:个人
- 应用描述:自己写
然后就得到了这个应用的:AppID,API Key,Secret Key。(后面需要用到)
二、Python代码实现
1.安装百度的OCR库
1 | pip install baidu-aip |
这上项目在Github上地址:https://github.com/Baidu-AIP/python-sdk
这个库的目录结构:
├── aip // SDK目录
│ ├── init.py // 导出类
│ ├── base.py // aip基类
│ ├── speech.py // 语音
│ ├── face.py // 人脸
│ ├── ocr.py // OCR
│ ├── nlp.py // NLP
│ ├── kg.py // 知识图谱
│ ├── imagecensor.py // 图像审核
│ ├── imageclassify.py // 图像识别
│ └── imagesearch.py // 图像搜索
└── setup.py //setuptools安装
文字识别OCR,就用到ocr.py
这个。
2.文字识别应用的文档
官网:https://ai.baidu.com/ai-doc/OCR/wkibizyjk
HTTP-SDK文档下面有分Java语言、Python语言、PHP语言、C++语言、C#语言、Node.js语言、Android SDK、IOS SDK。反正各种语言都有,这里用的是Python。
文档中 快速入门、接口说明 反正都写的很清楚了,看看就会用了。
3.代码实例
主要看一下调用识别方法后,返回的示例有些什么,可以自己print出来看一下。
返回示例:
1 | HTTP/1.1 200 OK |
我们需要的文字内容就在:words_result 中的 words 内容。
3-1.识别单张本地图片
1 | from aip import AipOcr |
最后结果直接print打印出来了,如果要写入文档就自己改成写入文档的方法就行。
3-2.识别网络图片
1 | # 网络图片文字识别 |
- 本文标题:Python 对图片进行文字识别
- 本文作者:HDUZN
- 创建时间:2021-03-13 17:04:00
- 本文链接:http://hduzn.cn/2021/03/13/Python对图片进行文字识别/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!