Python实现识别图片为文字的示例代码

 更新时间:2022年08月21日 08:02:40   作者:Sir 老王  
这篇文章主要为大家详细介绍了Python如何不调用三方收费接口,照样实现识别图片为文字的功能。文中的示例代码讲解详细,感兴趣的可以了解一下

本来想着做一个将图片识别为文字的小功能,本想到Google上面第一页全是各种收费平台的广告。

这些平台提供的基本都是让我们通过调用相关的三方接口实现的,本着坚决不想花一分钱的态度,在论坛找有没有可以免费解决的方案。

果然,有大佬早就做出开源框架pytesseract,差点让我损失了一笔巨款,哈哈~

这次只为实现将图片识别为文字的业务功能,就不使用PyQt5做页面应用了。后面若是需要做成UI应用朋友比较多,我有时间会将这个小工具封装开发成一个PyQ5界面应用的小工具。

1、环境准备

还是老规矩吧,像一些比较有歧义的环境准备工作,我都会将我使用到的python库的版本列出来,防止小伙伴们走一些弯路。

操作系统:windows7

python版本:3.8.10

pytesseract版本:0.3.9

首先需要安装两个三方模块,一个是PIL图片处理库,另一个是pytesseract识别文字用到的python库。

pip install PIL -i https://pypi.tuna.tsinghua.edu.cn/simple/

pip install pytesseract -i https://pypi.tuna.tsinghua.edu.cn/simple/

安装好这两个python非标准库以后,还有一个比较重要的操作就是需要额外的安装一个工具Tesseract-OCR,这个工具实际上是我们用来识别图片必须的一个工具。

为了防止丢失,我将Tesseract-OCR工具的安装包和其需要的中文语言包放在了百度网盘中,在公众号内回复'Tesseract-OCR'工具可以获取网盘下载链接感兴趣的小伙伴直接去下载就好了。

下载完成以后直接进行解压即可,解压完成后的文件目录是下面这样的。

解压完成后直接安装Tesseract-OCR工具,双击打开就可以进行安装了,傻瓜式安装即可。

下面这个是我在给大家测试的时候截图的一张安装过程中的图。

安装完成后,我们需要将上面下载的中文包加入到安装好的Tesseract-OCR工具主目录下面的\tessdata文件夹中。

下面是我已经将中文语言包放入到../Tesseract-OCR/tessdata文件中了。

中文语言包放好后,就可以直接进入下一步的操作了,那就是修改环境相关的配置,实际上只要需要一个相关的参数就OK了。

找到本地的python环境的安装位置,找到我们前面安装好的pytesseract的位置去修改参数一个叫做tesseract_cmd变量的值,具体操作是这样的。

上面是我的pytesseract库的安装位置,找到之后打开pytesseract.py文件将tesseract_cmd变量的值替换为我们安装的Tesseract-OCR工具的tesseract.exe应用程序的路径。

默认Tesseract-OCR工具的安装位置是下面这样这个路径,小伙伴们可以根据自己的位置设置。

C:/Program Files (x86)/Tesseract-OCR/tesseract.exe

这是我已经修改好的pytesseract.py文件中tesseract_cmd变量的值。

tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract.exe'

至此,准备工作终于做完了,接下来就是我们大显身手的时间了,来轻松实现一个图片到文字的转换吧!

2、业务实现

代码实现过程相当简单,比较上面的安装配置过程简直就是小菜一碟了,导入相关的python模块中实际上只需要一行代码就可以实现将图片内容识别为文字了。

# 导入python非标准模块
from PIL import Image
import pytesseract as pyt

# 读取图片中的文字内容
text = pyt.image_to_string(Image.open('chinese-image.jpg'), lang='chi_sim')

# 打印文字内容
print(text)

3、效果展示

为了测试一下效果,我用本地的画图软件画了一张图,图片上写上文字,文字内容是:

大家好,我是 Python 集中营!下面是我的测试图片。

下面执行上面的图片识别代码块产生的效果,直接一字不差的就将文字读取的出来,简直是满满的成就感,晚上可以好好睡个觉了,没有bug的梦估计很甜!

# 大家好 , 我是 Python 集中营 !

到此这篇关于Python实现识别图片为文字的示例代码的文章就介绍到这了,更多相关Python识别图片为文字内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python anaconda 安装 环境变量 升级 以及特殊库安装的方法

    python anaconda 安装 环境变量 升级 以及特殊库安装的方法

    下面小编就为大家带来一篇python anaconda 安装 环境变量 升级 以及特殊库安装的方法。
    2017-06-06
  • Pyqt5 关于流式布局和滚动条的综合使用示例代码

    Pyqt5 关于流式布局和滚动条的综合使用示例代码

    这篇文章主要介绍了Pyqt5 关于流式布局和滚动条的综合使用示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Python安装Imaging报错:The _imaging C module is not installed问题解决方法

    Python安装Imaging报错:The _imaging C module is not installed问题解决

    这篇文章主要介绍了Python安装Imaging报错:The _imaging C module is not installed问题解决方法,原来是PIL库的库文件没有加到系统中导致老是提示这个错误,需要的朋友可以参考下
    2014-08-08
  • Flask 的路由Route详情

    Flask 的路由Route详情

    在上一篇Flask 入门Web 微框架Hello Flask中,我们用 Flask 框架写了一个 Hello Flask 应用程序,我们了解到 Flask 框架简洁高效、可以快速上手,接下来将对 Flask 框架的各项功能详细的介绍一下,本篇文章介绍的是 Flask 的路由(Route),需要的朋友可以参考一下
    2021-11-11
  • Python按条件删除Excel表格数据的方法(示例详解)

    Python按条件删除Excel表格数据的方法(示例详解)

    本文介绍基于Python语言,读取Excel表格文件,基于我们给定的规则,对其中的数据加以筛选,将不在指定数据范围内的数据剔除,保留符合我们需要的数据的方法,感兴趣的朋友跟随小编一起看看吧
    2024-08-08
  • Python必考的5道面试题集合

    Python必考的5道面试题集合

    这篇文章介绍了Python必考的5道面试题,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Python字典底层实现原理详解

    Python字典底层实现原理详解

    今天小编就为大家分享一篇Python字典底层实现原理详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python中字典的相关操作介绍

    Python中字典的相关操作介绍

    大家好,本篇文章主要讲的是Python中字典的相关操作介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02
  • 浅谈插入排序算法在Python程序中的实现及简单改进

    浅谈插入排序算法在Python程序中的实现及简单改进

    这篇文章主要介绍了插入排序算法在Python程序中的实现及简单改进,插入排序算法的最差时间复杂度为O(n^2),最优时间复杂度为O(n),存在一定的优化空间,需要的朋友可以参考下
    2016-05-05
  • python八皇后问题的解决方法

    python八皇后问题的解决方法

    这篇文章主要为大家详细介绍了python八皇后问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09

最新评论