基于百度AI的图像文字提取应用程序

现如今,图像提取文字功能被越来越多人需要,尤其是办公与教学。但是目前app提供的都是有偿服务,其实,我们完全可以自己编写小程序来实现,下面是小编自己制作的一个实现图像文字提取的小程序。

实际上,代码中并没有任何图像识别的功能,这属于AI的范畴,不是小编能够做到的,这也是百度的技术核心,不可能开源,但是百度允许我们调用它的相关功能,并且包装好了接口供我们使用,实际上我们要做的就是用代码与百度提供的接口对接,返回结果。
使用百度接口需要在百度AI网站申请并得到id账号和密码,服务也不是完全无偿的,但是有相当一定量的每日免费额度,对于非企业的个人用户来说,免费额度已经相当充裕了(比如小编的程序对精度要求不高,调用的是标准版的接口,每日免费使用50000次)。

在做完程序后,小编也了解了一些应用的图像提取文字功能,这些应用主要分两大类,一类是腾讯QQ这样的大企业,他们有自己相关功能开发(亲测算法功能和精确度远不如百度AI);另外一些小的程序应用如一些扫描类的手机app,未必会专门开发这样的程序,小编猜测大多数此类应用也是付费调用百度平台的接口。因此,显然如果我们在这方面有大的使用需求的话,自己写一个程序将是更实惠的选择,至少个人使用是免费的。

最后,小编非常地感激百度AI提供的这样开放、共享的平台!
Talk is cheap,show the code!

# coding=utf-8OUTPUT_FILE_PATH='扫描文字.txt'
f=open('扫描文字.txt', "r+")
f.truncate()
#判断文件是否存在,path为文件路径
import os
import sys
import json
import base64# 保证兼容python2以及python3
IS_PY3 = sys.version_info.major == 3
if IS_PY3:from urllib.request import urlopenfrom urllib.request import Requestfrom urllib.error import URLErrorfrom urllib.parse import urlencodefrom urllib.parse import quote_plus
else:import urllib2from urllib import quote_plusfrom urllib2 import urlopenfrom urllib2 import Requestfrom urllib2 import URLErrorfrom urllib import urlencode# 防止https证书校验不正确
import ssl
ssl._create_default_https_context = ssl._create_unverified_contextAPI_KEY = "******"         #此处为在百度AI平台报备申请的账号和密码
SECRET_KEY =  "******"OCR_URL = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic""""  TOKEN start """
TOKEN_URL = 'https://aip.baidubce.com/oauth/2.0/token'"""获取token
"""
def fetch_token():params = {'grant_type': 'client_credentials','client_id':API_KEY,'client_secret':SECRET_KEY}post_data = urlencode(params)if (IS_PY3):post_data = post_data.encode('utf-8')req = Request(TOKEN_URL, post_data)try:f = urlopen(req, timeout=5)result_str = f.read()except URLError as err:print(err)if (IS_PY3):result_str = result_str.decode()result = json.loads(result_str)if ('access_token' in result.keys() and 'scope' in result.keys()):if not 'brain_all_scope' in result['scope'].split(' '):print ('please ensure has check the  ability')exit()return result['access_token']else:print ('please overwrite the correct API_KEY and SECRET_KEY')exit()
NUM=input("图片数目:")
NUM=int(NUM)
i=1while i<=NUM:i=i+1IMAGE=input("图片路径:")"""读取文件"""def read_file(image_path):f = Nonetry:f = open(image_path, 'rb')return f.read()except:print('read image file fail')return Nonefinally:if f:f.close()"""调用远程服务"""def request(url, data):req = Request(url, data.encode('utf-8'))has_error = Falsetry:f = urlopen(req)result_str = f.read()if (IS_PY3):result_str = result_str.decode()return result_strexcept  URLError as err:print(err)if __name__ == '__main__':# 获取access tokentoken = fetch_token()# 拼接通用文字识别高精度urlimage_url = OCR_URL + "?access_token=" + tokentext = ""# 读取书籍页面图片file_content = read_file(IMAGE)# 调用文字识别服务result = request(image_url, urlencode({'image': base64.b64encode(file_content)}))# 解析返回结果result_json = json.loads(result)for words_result in result_json["words_result"]:text = text + words_result["words"]# 打印文字print(text)f = open(OUTPUT_FILE_PATH, 'a',encoding='gb18030',errors='ignore')print(text,file = f)    f.close()input()

基于百度AI的图像文字提取应用程序相关推荐

  1. python 百度ocr安装_Python基于百度AI实现OCR文字识别

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

  2. 基于百度AI的内容审核平台+Jsoup网络爬虫开发的一个自动审核小说程序(以纵横中文网为例)

    这个程序是我的毕业设计所设计的一个程序,由于时间原因,可能有些地方或者细节没有考虑清楚,请各位多多包涵 最后的源代码工程我已经上传,有需要的可以自取,希望可以帮助到大家 程序简介 此程序使用Java语 ...

  3. python 百度ai批量识别_Python基于百度AI的文字识别的示例

    Python基于百度AI的文字识别的示例 使用百度AI的文字识别库,做出的调用示例,其中filePath是图片的路径,可以自行传入一张带有文字的图片,进行识别. 下载baidu-aip这个库,可以直接 ...

  4. python 百度云文字识别 proxy_Python基于百度AI的文字识别的示例

    Python基于百度AI的文字识别的示例 发布时间:2020-10-03 14:52:27 来源:脚本之家 阅读:66 使用百度AI的文字识别库,做出的调用示例,其中filePath是图片的路径,可以 ...

  5. 百度ai文字转语音并下载php源码,一种基于百度AI的网页版在线语音包转文字的方法与流程...

    本发明涉及语音识别技术领域,特别涉及一种基于百度AI的网页版在线语音包转文字的方法. 背景技术: 语音识别技术,也被称为自动语音识别Automatic Speech Recognit1n, (ASR) ...

  6. html识别文字转语音,万能君工具箱v1.8 - 基于百度AI实现语音转文字/文字转语音/文字识别OCR/翻译...

    一.需求分析 1.音频转文字:目前市面上的音频转文字大多收费.音频转文字的需求是:上传一段音频,直接识别成文字,对于会议记录的比较好使,注意不是实时的语音识别. 2.文字转语音:转的语音不要太生硬. ...

  7. 基于百度AI的文字识别(Python语言)

    简 介:百度大脑是百度 AI 核心技术引擎,包括视觉.语音.自然语言处理.知识图谱.深度学习等AI核心技术和AI开放平台.本文介绍百度 AI 核心技术中文字识别功能的使用方法. 关键词:百度AI.文字 ...

  8. Android apps 拍立知-基于百度Ai的图像识别与tts语音合成(介绍)

    一款基于百度Ai的图像识别与tts语音合成的Android apps-拍立知. 这款apps是拿来参加小比赛的,理工男没有ui!界面有点小丑. 原理是通过拍照/上传图片,调用百度Ai中的图像通用识别功 ...

  9. 【人工智能】基于百度AI+Python编程的简单应用:关于人像照片动漫化的分析实现(可进行批量化处理)——教你看到二次元中的自己

    前两天博主刚写过一篇文章:[人工智能]基于百度AI和Python编程的简单实现:通过QQ/Tim截图进行文本识别功能的分析实战详解--以获取百度文库付费内容为例.由于这两天博主摸鱼时又一次使用到了百度 ...

最新文章

  1. ​每日一皮:​你的Frozen Throne...
  2. 用ironpython驱动你的计算公式
  3. 《为自己工作——世界顶级设计师成功法则》—第1章1.7节平衡
  4. 三星note4安装linux,Leanote Ubuntu 源码安装
  5. 【机器学习算法】XGBoost
  6. 精品教程--Android实战系列源码与教程
  7. html的弹窗标签是什么意思,前端实现展示弹窗,为什么不同的标签弹出相同的内容?是不是js函数写错了,需要怎么改呢?...
  8. 合力叉车3d模型_文章分享:《种植体颈部壁厚度和基台螺钉尺寸的生物力学评估:3D非线性有限元分析》...
  9. linux 常用软件推荐
  10. C++编程第一步:判断一个数字是不是整数
  11. 干货:中国移动互联网行业深度报告
  12. 计算机蓝屏显示的英文是什么,电脑蓝屏出现一堆英文怎么解决?
  13. strtus1 html5,struts1.x的入门级学习教程
  14. 织梦html编辑器不见了,织梦CMS后台文章编辑内容框消失解决教程
  15. 高性能计算机与网格的研究开发态势
  16. 鱼类接连被查出问题 专家提出安全“吃鱼意见”
  17. web前端作业--响应式蛋糕店网页设计(HTML+CSS+JavaScript)
  18. OpenCV入门——色彩空间转换(2)
  19. 鸿蒙发布会在哪里看,华为新品发布会抢先看:Mate40+鸿蒙2.0系统齐亮相!
  20. 分分钟解决 MySQL 查询速度慢与性能差(中)

热门文章

  1. 鸡卵清白蛋白修饰黄素单核苷酸(FMN-OVA),Flavin Mononucleotide-Ovalbumin的保存条件
  2. 3D小人竞聘述职报告PPT模板
  3. 非靶代谢组学数据预处理XCMS+IPO
  4. python3内建的嵌入式数据库SQLite
  5. python中with open用法_在线玩转python中with用法
  6. “虽无彩凤双飞翼,确有巧处一线通”——明基PD2710QC显示器体验
  7. windwos11 更新 BIOS 覆盖了 endevaourOS linux 的启动引导 grub 重建修复
  8. 如何恢复断电造成的丢失文件
  9. python中文字体下载_python docx 中文字体设置的操作方法
  10. 电话录音设备市场现状及未来发展趋势