Python实现OCR识别之pytesseract案例详解
作者:Holidaylovesam 发布时间:2021-03-02 02:14:35
标签:python,OCR,pytesseract
Python实现OCR识别:pytesseract
Python常用pytesseract进行图片上的文字识别,即OCR识别,完整的代码比较简单,只要下面一行即可,但是实际使用时环境配置上容易出错。
from PIL import Image
import pytesseract
text = pytesseract.image_to_string(Image.open('/Users/alice/Documents/Develop/PythonCode/textinphoto.PNG'))
print(text)
因此使用前,需要先安装pillow和pytesseract依赖包。
然而运行时仍然报错,raise TesseractNotFoundError()
pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your path
原因是因为未安装tesseract,然后使用pip3 install tesseract之后仍然提示错误,如图:
alicedembp:~ alice$ pip3 install tesseract
Requirement already satisfied: tesseract in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (0.1.3)
alicedembp:~ alice$ tesseract
-bash: tesseract: command not found
无法使用,往上找了很多教程,说是要使用brew安装,于是得以解决,步骤为:
先安 * rew
alicedembp:~ alice$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
再使用brew安装leptonica
alicedembp:~ alice$ brew install leptonica
使用brew安装tesseract
alicedembp:~ alice$ brew install tesseract
安装成功,通过命令行tesseract -v的方式查看是否成功,出现版本号则为安装成功
alicedembp:~ alice$ tesseract
Usage:
tesseract --help | --help-extra | --version
tesseract --list-langs
tesseract imagename outputbase [options...] [configfile...]
OCR options:
-l LANG[+LANG] Specify language(s) used for OCR.
NOTE: These options must occur before any configfile.
Single options:
--help Show this help message.
--help-extra Show extra help for advanced users.
--version Show version information.
--list-langs List available languages for tesseract engine.
alicedembp:~ alice$ tesseract -v
tesseract 4.0.0
leptonica-1.78.0
libgif 5.1.4 : libjpeg 9c : libpng 1.6.36 : libtiff 4.0.10 : zlib 1.2.11 : libwebp 1.0.2 : libopenjp2 2.3.1
Found AVX2
Found AVX
Found SSE
接下来就可以直接使用了,使用如下代码:
alicedembp:~ alice$ tesseract /Users/alice/Documents/Develop/PythonCode/textinphoto.png /Users/alice/Documents/Develop/PythonCode/output.txt
打开textinphoto.PNG的图片,将文字输出到output.txt,图片如下
运行成功,产生output.txt文档,里面的文本为图片中识别出的文字。
来源:https://blog.csdn.net/alice_tl/article/details/89299405


猜你喜欢
- # 建表CREATE TABLE `T_TEST` ( `Id` int(11) NOT NULL AUTO_INCREMENT
- import siximport timeit#查找任何特定代码执行的确切时间from ecdsa.curves import curves
- 本文实例讲述了Oracle例外用法。分享给大家供大家参考,具体如下:一、例外分类oracle将例外分为预定义例外、非预定义例外和自定义例外三
- 许多人在数据科学、机器学习、web开发、脚本编写和自动化等领域中都会使用Python,它是一种十分流行的语言。Python流行的部分原因在于
- 本文实例为大家分享了python实现固定尺寸图像拼接,供大家参考,具体内容如下讲解1、代码效果:固定尺寸图像拼接代码import osimp
- 前言我们前面对matplotlib模块底层结构学习,对其pyplot类(脚本层)类提供的绘制折线图、柱状图、饼图、直方图等统计图表的相关方法
- 什么是死锁,在Go的协程里面死锁通常就是永久阻塞了,你拿着我的东西,要我先给你然后再给我,我拿着你的东西又让你先给我,不然就不给你。我俩都这
- 你好,%用户名%!我叫Alex,我在机器学习和网络图分析(主要是理论)有所涉猎。我同时在为一家俄罗斯移动运营商开发大数据产品。这是我第一次在
- (1)、back_log:要求 MySQL 能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,然后主线程
- 下载资源hadoop3.0.0spark-2.4.4-bin-without-hadoopwinutils下载(对应hadoop3.0.1的
- 本文实例为大家分享了python合并同类型excel表格的具体代码,供大家参考,具体内容如下python脚本如下,验证有效。#!/usr/b
- 事务隔离级别设置set global transaction isolation level read committed; //全局的se
- 如何阻止别人非法链接你网站的图片,防盗链?getimage.asp<% Option ExplicitDim&nb
- 由于代码比较短,这里就不进行注释了代码如下:<% '当目标页面的包含文件即#include的页面里边存在respon
- 程序员的时间很宝贵,Python这门语言虽然足够简单、优雅,但并不是说你使用Python编程,效率就一定会高。要想节省时间、提高效率,还是需
- 不是说while就不用,比如前面所列举而得那个猜数字游戏,在业务逻辑上,用while就更容易理解(当然是限于那个游戏的业务需要而言)。另外,
- 开篇这段时间把主要精力都放在了K8S上,差点把Golang给忘了。那本篇就分享一下并发相关的内容(Goroutine和通道)。 本篇给出4个
- JavaScript 是Netscape公司与Sun公司合作开发的。在 JavaScript 1.0发布时,Netscape Navigat
- linux默认是安装了python,默认是安装python2.6.6,可能安装的版本是不能符合我们需要的python要求的。我们需要重新安装
- 1.启动H2数据库不打开浏览器窗口(默认是打开的) 2.数据库创建SQL增加了支持BigDecimal类型,h2数据库默认是不支持bigde