百度AI功能还是很强大的,百度AI开放平台真的是测试接口的天堂,免费接口很多,当然有量的限制,但个人使用是完全够用的,什么人脸识别、MQTT服务器、语音识别等等,应有尽有。

看看OCR识别免费的量

快速安装:执行 pip install baidu-aip 即可

新建一个AipOcr:

from aip import AipOcr

""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key' client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

通用文字识别

""" 读取图片 """
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read() image = get_file_content('example.jpg') """ 调用通用文字识别, 图片参数为本地图片 """
client.basicGeneral(image); """ 如果有可选参数 """
options = {}
options["language_type"] = "CHN_ENG"
options["detect_direction"] = "true"
options["detect_language"] = "true"
options["probability"] = "true" """ 带参数调用通用文字识别, 图片参数为本地图片 """
client.basicGeneral(image, options) url = "http//www.x.com/sample.jpg" """ 调用通用文字识别, 图片参数为远程url图片 """
client.basicGeneralUrl(url); """ 如果有可选参数 """
options = {}
options["language_type"] = "CHN_ENG"
options["detect_direction"] = "true"
options["detect_language"] = "true"
options["probability"] = "true" """ 带参数调用通用文字识别, 图片参数为远程url图片 """
client.basicGeneralUrl(url, options)

通用文字识别 请求参数详情

通用文字识别 返回数据参数详情

通用文字识别

from aip import AipOcr

#更换为自己的注册信息
APP_ID = '---'
API_KEY = '---'
SECRET_KEY = '---' client = AipOcr(APP_ID, API_KEY, SECRET_KEY)#创建连接
fp=open("tu2.png","rb").read()#打开并读取文件内容
res=client.basicGeneral(fp)#普通
#print(res) #将所有的文字都合并到一起
strx=""
for tex in res["words_result"]:#遍历结果
strx+=tex["words"]#每一行
print(strx)#输出内容

最终代码

from aip import AipOcr

# 定义常量
APP_ID = ''
API_KEY = 'yRZGUXAlCd0c9vQj1kAjBEfY'
SECRET_KEY = 'sc0DKGy7wZ9MeWFGZnbscbRyoDB2IQlj' # 初始化AipFace对象
client = AipOcr(APP_ID, API_KEY, SECRET_KEY) # 读取图片
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read() image = get_file_content('binary_best.jpg')
# 调用通用文字识别, 图片为本地图片
res=client.general(image)
print(res) for item in res['words_result']:
print(item['words'])

例:

from aip import AipOcr
import re
APP_ID=''
API_KEY='X2MWCU1LG1PX5H6GAXgdlWD7'
SECRET_KEY='vz6GZ6TkhSFvY3quqcuC3EG8oEW3kThB'
client=AipOcr(APP_ID,API_KEY,SECRET_KEY) i=open(r'C:\Users\Administrator\Desktop\example.png','rb')
image = i.read() result=client.basicGeneral(image) #将所有的文字都合并到一起
for item in result['words_result']:
print(item['words'])

通用文字识别client.basicGeneral(image)

通用文字识别(高精度版)client.basicAccurate(image);

通用文字识别(含位置信息版)client.general(image);

通用文字识别(含位置高精度版)client.accurate(image);

通用文字识别(含生僻字版)client.enhancedGeneral(image);

网络图片文字识别client.webImage(image);

Python SDK文档 http://ai.baidu.com/docs#/OCR-Python-SDK/53932383

OCR文字识别笔记总结   https://www.cnblogs.com/wj-1314/p/9580387.html

小白学Python——用 百度AI 实现 OCR 文字识别的更多相关文章

  1. 用百度AI的OCR文字识别结合JAVA实现了图片的文字识别功能

    第一步可定要获取百度的三个东西 要到百度AI网站(http://ai.baidu.com/)去注册 然后获得 -const APP_ID = '请填写你的appid'; -const API_KEY ...

  2. 小白学Python——用 百度翻译API 实现 翻译功能

    本人英语不好,很多词组不认识,只能借助工具:百度翻译和谷歌翻译都不错,近期自学Python,就想能否自己设计一个百度翻译软件呢? 百度翻译开放平台: http://api.fanyi.baidu.co ...

  3. python基于百度AI开发文字识别

    很多场景都会用到文字识别,比如app或者网站里都会上传身份证等证件以及财务系统识别报销证件等等 第一步,你需要去百度AI里去注册一个账号,然后新建一个文字识别的应用 然后你将得到一个API Key 和 ...

  4. 小白学 Python(2):基础数据类型(上)

    人生苦短,我选Python 引言 前文传送门 小白学 Python(1):开篇 接触一门新的语言,肯定要先了解它的基础数据类型.啥?你问我为啥要先了解基础数据类型? 为了你的生命安全,还是乖乖听我 B ...

  5. 小白学 Python(6):基础运算符(下)

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  6. 小白学 Python(18):基础文件操作

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  7. 小白学 Python(22):time 和 calendar 模块简单使用

    人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变 ...

  8. 小白学 Python 爬虫(1):开篇

    人生苦短,我用 Python 引言 各位同学大家好,好久不见(可能只有一两天没见:囧)~~~ 先讲一件事情,昨天为啥没更新. emmmmmmmmm,当然是因为加班啦,快到年底了,公司项目比较忙,最近的 ...

  9. 小白学 Python 爬虫(2):前置准备(一)基本类库的安装

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 本篇内容较长,各位同学可以先收藏后再看~~ 在开始讲爬虫之前,还是先把环境搞搞好,工欲善其事必先利其器嘛~~~ 本篇 ...

随机推荐

  1. json 转xml

    var jStr = JsonConvert.SerializeObject(new { root = new { li = list } }); var xml = JsonConvert.Dese ...

  2. jquery empty选择器 语法

    jquery empty选择器 语法 作用::empty 选择器选取空的元素.空元素指的是不包含子元素或文本的元素.直线电机滑台 语法:$(":empty") jquery emp ...

  3. SpringBoot项目中,cookie的设置与销毁

    cookie的设置与销毁 1.设置cookie /** * 设置一个cookie * @param response HttpServletResponse * @param name cookie的 ...

  4. JPA学习(六、JPA_JPQL)

    框架学习之JPA(六) JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 ...

  5. SpringBoot2.2版本配置绑定

    具体可以查看这篇:https://www.cnblogs.com/dalianpai/p/11772382.html  原始的 /** * @author WGR * @create 2019/12/ ...

  6. java中的过滤器 --Filter

    package filter; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.Filter ...

  7. HashMap,ConcurrentHashMap相关知识整理

    1.HashMap的存储步骤: 1.传入key和value,判断key是否为null,如果为null,则调用putForNullKey,以null作为key存储到哈希表中: 2. 然后计算key的ha ...

  8. Python深度学习读书笔记-1.什么是深度学习

    人工智能 什么是人工智能.机器学习与深度学习(见图1-1)?这三者之间有什么关系?

  9. 写入mongodb

    https://blog.csdn.net/u013421629/article/details/78885079 https://www.jianshu.com/p/7d14c3ad810f  可视 ...

  10. kafka 通信报文格式

    1. 序列化一条消息 消息有 key 和 value kafka 提供了基础数据类型的序列化工具,对于业务的自定义类需要自行实现序列化 ProducerRecord 是对象,含 KV 和 header ...