使用Python Tkinter库编写一个图片文字提取工具,这是图片文字提取工具外观界面:
功能简介
图片文字提取是一个比较实用的功能,很多场合都会用到,如果不想一个个文字用手敲,最好找一个图片文字识别工具,来提升自己的工作效率。
我使用Tkinter制作一个图片文字提取实用小工具,接下来向大家介绍一番!
基本功能:
- 图片加载
- 矩形工具,用来框选识别对文字内容
- 选框移动实时移动
- 选框擦除
- 图片文字提取,以纯文本输出
- 基本设置功能
外观说明
简单说明:
- 打开按钮:加载图片
- 矩形工具:框选图片文字识别区
- 橡皮擦:擦除框选区域
- 设置按钮:设置应用 KEY
- 文本框:图片识别出来的文字,在文本框输出,文字可复制粘贴
图片加载
有两种加载方式:
- 双击显示区,加载图片
- 点击工具菜单中open,加载图片
框选文字提取区域
从指定图片区域提取文字内容
如何调整选框:
- 如果对选中区域不满意,可以选择橡皮擦工具,擦除选框,重新框选
- 在选框内,按住鼠标中间,可对选框进行实时移动
图片文字提取
- 从一般性图片提取文字:
- 从照片图片提取文字内容:
该图片内容来自《三体》一段人类振奋士气一段话!
- 对选中不完整字体内容进行有效识别:
设置应用KEY
图片文字识别采用的是百度文字识别接口,使用百度文字识别接口功能需要先设置应用KEY。
点击设置按钮,分别添加以下内容:
涉及Python知识点
编写图片文字提取工具涉及Python知识点总结如下:
- tkinter组件:
- 工具菜单
- 文件对话框、自定义对话框
- Text输入框
- 滚动条组件
- 按钮、标签
- Frame、LabelFrame等
- Canvas组件:
- 绘制矩形
- 添加图片
- 图像操作
- 事件绑定
- 鼠标中间事件
- 双击事件
- 鼠标左键按住拖动事件
- 鼠标释放事件
- Pillow图像处理库:区域截屏
- 图像文字识别技术,采用百度AI——文字识别接口
文字识别
关于文字识别这块再多说一下:
- 采用Tesseract库 + pytesseract模块
代码第一版就图片文字识别功能采用 Tesseract库 + pytesseract模块 方式,通过Tesseract库对图像文字识别,使用Python的pytesseract模块调用Tesseract库。
但是有什么问题呢?
Tesseract库对图像文字辨识度不是特别好,很容易出错,离不开人工校对,这就增加了新的工作任务!
Tesseract是开源的OCR库,OCR(全称Optical Character Recognition)即光学文字识别
需要不断训练,才能提升Tesseract文字识别度
- 百度文字识别
代码第二版采用百度文字识别,也就是当前演示使用的版本。
百度文字识别,功能确实很强大,辨识度高,完全满足日常需要
百度文字识别接口按调用次数收费
不超过500次/日,则免费,对于个人使用来说,足够了
提示:使用百度文字识别接口需要联网,也就是说目前图片文字提取工具需要在联网的情况下才能正常使用
最后
想要获得Python源码,快来私信我吧~
接下来会有更加精彩的内容,不想错过的话,可以关注我,第一时间获取更新!
最后,投币收藏转发来一波,我们下期不见不散~