1、下载tesseract5.0
https://github.com/UB-Mannheim/tesseract/wiki
下载后,安装时,要下载语言包,如果没下载中文就无法识别
2、安装pytesseract
pip install pytesseract
pytesseract实际上就是对C:\Program Files\Tesseract-OCR\tesseract.exe的调用的各种参数的python封装
3、测试代码
import pytesseract
from PIL import Image
# 法一:利用pytesseract模块
# 参数一:图片
# 参数二:简体中文
pytesseract.pytesseract.tesseract_cmd=r'C:\Program Files\Tesseract-OCR\tesseract.exe'
text = pytesseract.image_to_string(Image.open("./test_images/d4.png"), lang='chi_sim')
print(text)
如果没有添加pytesseract.pytesseract.tesseract_cmd=r'C:\Program Files\Tesseract-OCR\tesseract.exe'
会报错。
方法1: 将tesseract.exe添加到环境变量PATH中,
注意: 为了使环境变量生效,需要关闭cmd窗口或是关闭pycharm等ide重新启动
方法2: 修改pytesseract.py文件,指定tesseract.exe安装路径(亲测可用)
首先找到pytesseract.py文件,然后对其进行修改。 在第26行,改为,要看你具体的安装路径。
tesseract_cmd =r'C:\Program Files\Tesseract-OCR\tesseract.exe'
这样就可以测试代码了,但是有时会不太准,因为图像质量问题,建议做预处理。
centos下安装的步骤
https://blog.csdn.net/u010155229/article/details/104172853
字体包在/usr/share/tesseract/4/tessdata/文件夹下跟以前不一样了
1 yum install -y automake autoconf libtool gcc gcc-c++ pkg-config ImageMagick libjpeg-devel libpng-devel libtiff-devel
tesseract 在运行时报错linux 运行时 报错
错误1
Error in pixReadMemTiff: function not present
Error in pixReadMem: tiff: no pix returned
Error in pixaGenerateFontFromString: pix not made
Error in bmfCreate: font pixa not made
错误2
Error in pixWriteMemPng: function not present
主要是由于在编译leptonica时候未配置使用png和tiff库
重新编译leptonica 并使用png和tiff库 更新库后 重新运行程序 不在报错
在网上看了一下,有的人说是leptonica的问题,可以输入命令:
tesseratc -v查看,只会显示如下信息:
tesseract 4.1.1-rc2-20-g01fb
leptonica-1.79.0
(null)
Found AVX
Found FMA
Found SSE
就是缺少相关可以识别图片的依赖包,解决方法
1、yum install libjpeg-devel
2、yum install libpng-devel
3、进入leptonica的安装文件夹重新编译,我的路径是:
cd /home/Downloads/leptonica-1.72
4、./configure
5、make
6、make install
7、完成以后,再执行tesseratc -v,如果成功你看到的信息应该如下
tesseract 4.1.1-rc2-20-g01fb
leptonica-1.79.0
libjpeg 6b (libjpeg-turbo 1.2.90) : libpng 1.5.13 : zlib 1.2.7
Found AVX
Found FMA
Found SSE