Python3一行代码实现图片文字识别的示例


Posted in Python onJanuary 15, 2018

自学Python3第5天,今天突发奇想,想用Python识别图片里的文字。没想到Python实现图片文字识别这么简单,只需要一行代码就能搞定

from PIL import Image
import pytesseract
#上面都是导包,只需要下面这一行就能实现图片文字识别
text=pytesseract.image_to_string(Image.open('denggao.jpeg'),lang='chi_sim')
print(text)

我们以识别诗词为例

下面是我们要识别的图片

Python3一行代码实现图片文字识别的示例

先看下效果图

Python3一行代码实现图片文字识别的示例 

我们运行代码后识别的结果,有几个字没有正确识别,但是大多数字都能识别出来。

风急天高猿啸哀 渚芸胄芳少白鸟飞凤
无边落木萧萧下, 不尽长量工盲衮宕衮来
万里悲秋常1乍窨, 百年多病独登氤
艰难苦恨擎霜量 漂倒新停澍酉帆

一行代码就能识别图片,我们背后要做些准备工作的

  1. 这里我们需要用到两个库:pytesseract和PIL
  2. 同时我们还需要安装识别引擎tesseract-ocr

下面就来讲讲这几个库的安装,因为只有这几个库安装好以后Python才能实现一行代码实现图片文字识别

一,pytesseract和PIL的安装

安装这两个包可以借助pip

- 1,命令行安装

pip install PIL 
pip install pytesseract

- 2,如果你用的pycharm编辑器,就可以直接借助pycharm实现快速安装。

在pycharm的Settings设置页按照下面步骤操作

Python3一行代码实现图片文字识别的示例 

这样就能成功安装pytesseract,安装PIL只需要在上面第三步里搜索PIL并点击安装即可

Python3一行代码实现图片文字识别的示例

这时我们安转好了库,运行下面代码

from PIL import Image
import pytesseract
text=pytesseract.image_to_string(Image.open('denggao.jpeg'),lang='chi_sim')
print(text)

会报下面错误,错误原因是:没有安装识别引擎tesseract-ocr

Python3一行代码实现图片文字识别的示例

二,安装识别引擎tesseract-ocr

1.下载下面的安装包,然后直接点击安装即可
tesseract-ocr安装包和中文语言包

解压安装tesseract-ocr后做如下操作,就可以支持中文识别了。因为tesseract-ocr默认不支持中文识别。

Python3一行代码实现图片文字识别的示例

2,安装完成tesseract-ocr后,我们还需要做一下配置

在C:\Users\huxiu\AppData\Local\Programs\Python\Python35\Lib\site-packages\pytesseract找到pytesseract.py打开后做如下操作

# CHANGE THIS IF TESSERACT IS NOT IN YOUR PATH, OR IS NAMED DIFFERENTLY
#tesseract_cmd = 'tesseract'
tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract.exe'

也可以通过pycharm快速打开pytesseract.py

Python3一行代码实现图片文字识别的示例

Python3一行代码实现图片文字识别的示例

Python3一行代码实现图片文字识别的示例

至此我们所有的配置就完成了,运行下面代码就可以把杜甫的登高这首图片诗解析成文字了

Python3一行代码实现图片文字识别的示例

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python判断端口是否打开的实现代码
Feb 10 Python
python创建线程示例
May 06 Python
Python中的并发编程实例
Jul 07 Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 Python
python编写分类决策树的代码
Dec 21 Python
django js实现部分页面刷新的示例代码
May 28 Python
浅析Python函数式编程
Oct 06 Python
python3实现多线程聊天室
Dec 12 Python
Python批量删除只保留最近几天table的代码实例
Apr 01 Python
对pytorch的函数中的group参数的作用介绍
Feb 18 Python
详解torch.Tensor的4种乘法
Sep 03 Python
python画条形图的具体代码
Apr 20 Python
Python编程二分法实现冒泡算法+快速排序代码示例
Jan 15 #Python
selenium python浏览器多窗口处理代码示例
Jan 15 #Python
100行python代码实现跳一跳辅助程序
Jan 15 #Python
tornado 多进程模式解析
Jan 15 #Python
200 行python 代码实现 2048 游戏
Jan 12 #Python
一篇文章快速了解Python的GIL
Jan 12 #Python
Python获取当前公网ip并自动断开宽带连接实例代码
Jan 12 #Python
You might like
获得Google PR值的PHP代码
2007/01/28 PHP
PHP冒泡排序算法代码详细解读
2011/07/17 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
2013/06/29 PHP
PHP之sprintf函数用法详解
2014/11/12 PHP
PHP实现mysqli批量执行多条语句的方法示例
2017/07/22 PHP
PHP获取HTTP body内容的方法
2018/12/31 PHP
33种Javascript 表格排序控件收集
2009/12/03 Javascript
关于锚点跳转及jQuery下相关操作与插件
2012/10/01 Javascript
javascript中动态加载js文件多种解决办法总结
2013/11/15 Javascript
用unescape反编码得出汉字示例
2014/04/24 Javascript
jQuery文件上传控件 Uploadify 详解
2016/06/20 Javascript
JS新包管理工具yarn和npm的对比与使用入门
2016/12/09 Javascript
详解Angular CLI + Electron 开发环境搭建
2017/07/20 Javascript
将 vue 生成的 js 上传到七牛的实例
2017/07/28 Javascript
深入理解JavaScript 中的执行上下文和执行栈
2018/10/23 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
解决vant-UI库修改样式无效的问题
2020/11/03 Javascript
利用Python破解验证码实例详解
2016/12/08 Python
python笔记:mysql、redis操作方法
2017/06/28 Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
2018/05/02 Python
Python 3.6 -win64环境安装PIL模块的教程
2019/06/20 Python
阿里云ECS服务器部署django的方法
2019/08/29 Python
python 解决flask 图片在线浏览或者直接下载的问题
2020/01/09 Python
在python下实现word2vec词向量训练与加载实例
2020/06/09 Python
详解Python利用configparser对配置文件进行读写操作
2020/11/03 Python
时尚的CSS3进度条效果
2012/02/22 HTML / CSS
html5 canvas绘制网络字体的常用方法
2019/08/26 HTML / CSS
美国第一香水网站:Perfume.com
2017/01/23 全球购物
日本民宿预约平台:STAY JAPAN
2017/07/01 全球购物
澳大利亚玩具剧场:Toy Playhouse
2019/03/03 全球购物
类的返射机制中的包及核心类
2016/09/12 面试题
处级干部考察材料
2014/12/24 职场文书
创业计划书之水果店
2019/07/18 职场文书
详解MySQL事务的隔离级别与MVCC
2021/04/22 MySQL
一劳永逸彻底解决pip install慢的办法
2021/05/24 Python
Spring Bean是如何初始化的详解
2022/03/22 Java/Android