【字符识别小程序】可以快速识别字符。是使用时再也离不开的宝物~(即巅峰永久免费)
前言 大家好!我是梨同学! 我希望你能支持我!哈哈 感谢所有关心我的人:💓每篇文章的项目源码免费分享💓👇👇👇👇 点击这里查看蓝色字体。你需要什么源代码?记得说标题和名字!我也可以写私信! 小编也一直在学习编程。如果代码小程序有错误,请在评论区留言! 最后——如果文章对你有帮助,记得“关注”“点赞”“评论”哦~ 文字 你在日常办公中是否经常遇到这些困难: 1百度图书馆VIP文章不能复制粘
前言
大家好!我是梨同学!
我希望你能支持我!哈哈
感谢所有关心我的人:💓每篇文章的项目源码免费分享💓👇👇👇👇
点击这里查看蓝色字体。你需要什么源代码?记得说标题和名字!我也可以写私信!
小编也一直在学习编程。如果代码小程序有错误,请在评论区留言!
最后——如果文章对你有帮助,记得“关注”“点赞”“评论”哦~
文字
你在日常办公中是否经常遇到这些困难:
1百度图书馆VIP文章不能复制粘贴?采购成本不低。这是禁止的
2 是否要将扫描的文档转换为可编辑的文档?
3 提取图片中的文字?拍照一时爽。一句一句,化作文字。我担心得要死
4 无法复制pdf文件。如何从PDF中提取文本?
说到图片转文字,很多人都需要用到它。今天小编就教大家制作自己的[图片字符识别]程序
前言~
环境安装——
1)准备相应的识别图片。以下是网上随机搜索的素材图片!
2)python 3.0环境准备安装,基本上所有python版本都可以编辑7.pycharm2021,界面
编程模块Pyqt5,然后自带的一些可以不用管直接导入。
安装模块的常用方法,也就是第三方模块的小编译,是:pip install + 模块名或者加速需要使用镜像源,
百度或者csdn搜索会出来很多安装模块的图源,这里就不一一介绍了!
程序原理介绍:
python使用百度字符识别功能,对上传的图片进行扫描,获取图片的文字信息。
导入模块——
导入请求,base64
从 PIL 导入图像
选择图片类型为 jpg ,。 .png
# 选择图片执行方式 def openfile(self):
启动选择文件对话框并找到jpg和png图片
self.download_path u003d QFileDialog.getOpenFileName(self, "选择要识别的图片", os.getcwd(), "图像文件(*.jpg *.png)")
图像识别:图像识别(API)''
请求_url u003d "https://aip.baidubce.com/rest/2.0/ocr/v1/webimage"
以二进制方式打开图片文件 f u003d open (self.Download_path [0],'rb') img u003d Base64 b64encode(f.read())params u003d {"image": img}
access_token u003d '[调用认证接口获取的token]' request_ url u003d request_ url + "?access_tokenu003d" + baiduToken headers u003d {'content-type': 'application /x-www-form-urlencoded'}
response u003d requests.post(request_url, datau003dparams, headersu003dheaders) if response: # print(response.json()) return response.json()
效果展示——
代码显示——
从 PyQt5.QtWidgets 导入 *
从 PyQt5.QtGui 导入 *
引入自定义模块
进口直流
内置模块介绍
导入系统
导入我们
第三方模块介绍
导入请求,base64
从 PIL 导入图像
类父窗口(QWidget,dc.Ui\Form):
初始化方法
定义__init__(自我):
查找父类主页
super(parentWindow, self).__init__()
初始化页面方法
self.setupUi(自我)
点击选择图片
self.selectImg.clicked.connect(self.openfile)
点击查看图片
self.viewIng.clicked.connect(self.view tn)
选择图片执行方式
def 打开文件(自我):
启动选择文件对话框并找到jpg和png图片
self.download_path u003d QFileDialog.getOpenFileName(self, "选择要识别的图片", os.getcwd(), "图像文件(*.jpg *.png)")
判断是否选择图片
如果不是 self.download_path[0].strip():
QMessageBox.information(self, '提示信息', '未选择名片图片')
通过
其他:
pixmap 解析图片
pixmap u003d QPixmap(self.download_path[0])
设置图片
self.imgLabel.setPixmap(像素图)
让图片适应标签大小
self.imgLabel.setScaledContents(True)
尝试:
识别名片图片并返回识别结果
内容 u003d self.recgImg()
除了:
QMessageBox.information(self, '提示信息', '识别错误,请重新选择图片')
识别图片的数据赋值
单词_result u003d 内容['单词_result']
打印(单词_结果)
文字 u003d ''
对于单词中的项目_结果:
对于 item.values() 中的 v:
文本 u003d 文本 + '\n' + v
self.discernText.setText(文本)
识别名片图片
def recgImg(自我):
获取百度token
apikey u003d '你的 apikey'
seckey u003d '你的 seckey'
tokenUrl u003d 'https://aip.baidubce.com/oauth/2.0/token?grant_typeu003dclient_credentials&client_idu003d' + apikey + '&client_secretu003d' + seckey
res u003d requests.get(urlu003dtokenUrl, headersu003d{'content-type': 'application/json; charsetu003dUTF-8'}).json()
baiduToken u003d res['access_token']
'''
图像识别(API)
'''
请求_url u003d "https://aip.baidubce.com/rest/2.0/ocr/v1/webimage"
以二进制方式打开图片文件
f u003d open(self.download_path[0], 'rb')
img u003d base64.b64encode(f.read())
参数 u003d {“图像”:img}
access_token u003d '[调用认证接口获取的token]'
请求_url u003d 请求_url + "?access_tokenu003d" + baiduToken
标头 u003d {'content-type': 'application/x-www-form-urlencoded'}
response u003d requests.post(request_url, datau003dparams, headersu003dheaders)
如果响应:
打印(response.json())
返回响应.json()
点击查看图片显示大图功能
def viewbtn(自我):
如果 self.download_path:
使用电脑中的图片查看工具打开图片
img u003d Image.open(self.download_path[0])
显示图片
img.show()
其他:
QMessageBox.information(self, '提示信息', '先选择名片图片')
如果 __name__ u003du003d '__main__':
每个 PyQt5 应用程序必须创建一个应用程序对象
应用程序 u003d QApplication(sys.argv)
初始化页面
窗口 u003d 父窗口()
显示主页
窗口.show()
sys.exit(app.exec_())
总结
这个宝物神器:字符识别和So easy,扫描就能实现!有兴趣的小伙伴2,来找我获取源码吧~
更多精彩内容关注小编!
做起来不容易。记得点三下!!如需打包源码+素材,免费分享!
更多推荐
所有评论(0)