Python + Baidu API 实现图片中文字的提取
Baidu API系统为开发者提供了许多实用的API,其中文字识别API服务功能较为成熟,如图所示已经可以满足生活中绝大多数文字识别的需求。我为大家演示一下较为基本的通用文字识别的功能。(文字识别API文档:https://ai.baidu.com/docs#/OCR-API/e1bd77f3)
首先,我们在调用任意一个API的时候,都需要提供专属的access_token,获取方式十分简单,只需要运行文档上的Python代码。(由于存在中文字符的注释,我已经手动添加了utf-8的编码方式)使用时需要将【官网获取的AK】和【官网获取的SK】替换为自己的AK和SK。
# coding:utf-8
import urllib, urllib2, sys
import ssl# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
request = urllib2.Request(host)
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib2.urlopen(request)
content = response.read()
if (content):print(content)
至于AK和SK的获取方式,则需要我们自己去Baidu API 的官网登陆并注册项目后,Baidu官方会予以分配。在上一个程序成功运行后会获得一个类似下面的长字段,将access_token的内容复制下来即可。
{"access_token":"########","session_key":"9mzdWEfZrXH+LPJjs2Jk+0M\/giCXigE9SYEsg59qOhC8Oo\/6+orj6PnMKffvzZpCBI5Ph4p0PoSwa835DUdiWmKe+PVmRA==","scope":"public vis-ocr_ocr brain_ocr_scope brain_ocr_general brain_ocr_general_basic brain_ocr_general_enhanced vis-ocr_business_license brain_ocr_webimage brain_all_scope brain_ocr_idcard brain_ocr_driving_license brain_ocr_vehicle_license vis-ocr_plate_number brain_solution brain_ocr_plate_number brain_ocr_accurate brain_ocr_accurate_basic brain_ocr_receipt brain_ocr_business_license wise_adapt lebo_resource_base lightservice_public hetu_basic lightcms_map_poi kaidian_kaidian ApsMisTest_Test\u6743\u9650 vis-classify_flower bnstest_fasf lpq_\u5f00\u653e cop_helloScope ApsMis_fangdi_permission","refresh_token":"25.dc75537152b2cc501ad6d76c1cbb0962.315360000.1831356957.282335-10693231","session_secret":"55eab565165de62c1e0ba0829763ea04","expires_in":2592000}
# coding:utf-8
import urllib, urllib2, base64access_token = '############################################'
url = 'https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic?access_token=' + access_token
# 二进制方式打开图文件
f = open(r'图片地址', 'rb')
# 参数image:图像base64编码
img = base64.b64encode(f.read())
params = {"image": img}
params = urllib.urlencode(params)
request = urllib2.Request(url, params)
request.add_header('Content-Type', 'application/x-www-form-urlencoded')
response = urllib2.urlopen(request)
content = response.read()
if (content):print content
上面是调用API实现的主要代码部分,“#####################”的部分用上面复制下来的access_token替代,而‘图片地址’中则写入需要识别的图片所在的地址。我对代码做了极少的修改,主要是直接从文档中复制下来的。
下面演示一下实际使用的效果。
我们从网页上直接截取了一张图片。
将其改名,并与实验代码放在同一个目录下,同时将其路径写入该脚本。
识别结果如图所示,实验证明,该API较为可靠。
Python + Baidu API 实现图片中文字的提取相关推荐
- 基于MATLAB的图片中文字的提取及识别
基于MATLAB的图片中文字的提取及识别 一.引言 随着计算机科学的飞速发展,以图像为主的多媒体信息迅速成为重要的信息传递媒介,在图像中,文字信息(如新闻标题等字幕) 包含了丰富的高层语义信息,提取出 ...
- python识别图片文字_使用百度文字识别API进行图片中文字的识别
今天,为了满足我女朋友作业的需求,我使用Python制作了一个图片转文字的小应用. (当然,下面导入模块的问题我就不多说了,是非常简单的) 一. 申请百度通用文字识别接口. 1.先在百度AI开放平台注 ...
- 使用百度文字识别API进行图片中文字的识别
今天,为了满足我女朋友作业的需求,我使用Python制作了一个图片转文字的小应用. (当然,下面导入模块的问题我就不多说了,是非常简单的) 一. 申请百度通用文字识别接口. 1.先在百度AI开放平台注 ...
- Python编程:通过百度文字识别提取表格数据
百度文字识别文档: https://ai.baidu.com/docs#/OCR-Python-SDK/top 安装sdk pip install baidu-aip 先创建应用,得到appid 要识 ...
- matlab获取图片上的字,基于MATLAB图片中文字提取及识别.pdf
基于MATLAB图片中文字提取及识别.pdf 数字图象处理 DigitalImageProgressing 基于MATLAB的图片中文字的提取及识别 邹浩,余龙,邹勇博,刘宇童,和振乔,李少梅 (西安 ...
- 人口普查分析:利用python+百度文字识别提取图片中的表格数据
今天发布了最新的人口普查结果,笔者拿到的文件是pdf格式(网上应该有).之前就一直想实现从pdf提取表格数据,输出为excel.正好这次有公开数据,因此打算用来练个手. 尝试了两种方法: 1.pyth ...
- python使用百度云的API识别图片中的文字
python使用百度云的API识别图片中的文字 # coding=utf-8import sys import json import base64IS_PY3 = sys.version_info. ...
- ubuntu+python+百度AI识别图片中的文字
获取百度AI调用的 ID 和 key 打开百度AI官网:https://ai.baidu.com/ 点击控制台-登录账号-产品服务-图像识别-创建应用,勾选需要的服务(图像服务已默认全都选上, 此时我 ...
- 单张、批量识别图片中文字(写入txt文件、窗口视图创建、打包.exe文件)(百度文字识别SDK+Python的GUI之tklinker+打包pyinstaller)
昨天我姐问我有没有软件可以批量识别图片上的文字,她在帮客户做资料整理,但是用的方法只能一张一张上传识别,不仅效率低还浪费时间. 我就找了找批量识别的软件,下载下来觉得:嗯?不错,界面也挺好,小东西做 ...
最新文章
- 《信息可视化:交互设计(原书第2版)》——第2章基本概念
- python数据包分析_packet_analysis: 数据包分析工具
- 使用码云中文乱码问题解决
- 嵩天-Python语言程序设计程序题--第八周:程序设计方法学
- python编程小学生学难吗_为什么小学生都要学Python
- 修改输入框placeholder的默认样式
- 看得懂的设计模式 享元模式python3 最基本(简单)实现
- 对照片进行边缘化处理,并将边缘化处理后的结果保存
- 分布式事务实践--Spring的全局事务JTA
- GateSvr的设计2
- Que2Search: Fast and Accurate Query and Document Understanding for Search at Facebook论文笔记
- 再谈内核模块加载(二)—模块加载流程(上)
- android fsck_msdos 分析(二)
- QT图形显示和处理7
- 【Python代码】情人节到了,表白代码肯定是少不了的啦
- android装windows bios,普通安卓平板刷win10图文教程
- 腾讯云服务器镜像部署 Java Web 环境
- 小学计算机教案六年级冀教版,清华大学出版社版小学六年级下册信息技术全册教案.doc...
- 烟台十四位拳师荣膺“十大拳师”称号
- 【SolidWorks免费模型下载】:3D打印机 免费模型下载