Linux安装tesseract教程
前言
因为之前做一个登陆获取Cookie来记录登陆状态的功能时。需要识别登陆时的验证码。原本是在本地测试,后来上线那么没办法也就需要在Linux环境下再安装一下Tesseract-OCR。仅以此来记录安装时的过程。希望可以对小伙伴们有所帮助!当然如果有更多可以改进,更便捷的方式也可以帮忙指出。
官方指南
从安装 =》使用手册 =》必须的依赖关系 已经讲述的非常明了,清楚了!如果感兴趣的的话可以在事后观摩一下。OK废话少说!
依赖关系
因为 Tesseract 必须使用 Leptonica 库 来打开输入图像(例如不是像 pdf 这样的文档)。所以我们需要下载,安装,使用内置支持zlib、 png和 tiff(用于多页 tiff)的 leptonica。
因为 我们需要对 下载的包进行 解压,编译,安装 所以我们需要 gcc gcc-c++ make (这个环境一般机器都具备,大部分可以忽略! 如果你不确定 :对应模块 --version 查看一下是否存在对应版本)
安装依赖包
依赖的包: autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel leptonica(1.67以上)(一下环境依赖,有则更新,无则安装)
yum install autoconf automake libtool
yum install libjpeg-devel libpng-devel libtiff-devel zlib-devel
Leptonica 库安装
最新版本:1.82.0 (9/22/21) leptonica -1.82.0.tar.gz
下载后丢到服务器,然后切到改文件目录下依次执行如下命令
# 解压 tar -zxvf 你版本的压缩文件名 # 进入包文件夹 cd 你解压后的文件名 # 依次执行以下命令,进行程序编译,安装 ./autogen.sh ./configure make make install
leptonica添加环境变量
# 修改profile vim /etc/profile # 添加信息 i export LD_LIBRARY_PATH=/usr/local/lib export LIBLEPT_HEADERSDIR=/usr/local/include export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig # 保存 Esc =》:wq! # 刷新配置 source /etc/profile
(不理解VIm文本编辑的可以去参考 https://www.bilibili.com/read/cv15851967)
其他更多依赖参见下图有些并不是必须的模块( AVX ,FMA ,SSE4.1... )需要你就装,不需要不必增加负担
安装Tesseract-OCR
安装tesseract
=》如果需要其他版本可以去 官方帖子 下扒一扒(有你需要的一切版本)
下载后丢到服务器,然后切到该文件目录下依次执行如下命令
tar -xzvf tesseract-5.2.0.tar.gz cd tesseract-5.2.0 ./autogen.sh ./configure make make install
tesseract 添加到环境变量
vim /etc/profile # 添加以下字段: PATH=$PATH:/usr/local/tesseract/bin export PATH export TESSDATA_PREFIX=/root/tessdata export PATH=$PATH:$TESSDATA_PREFIX # 刷新配置 source /etc/profile
查看tesseract基本信息
# 查看tesseract版本 tesseract --version # 查看可执行文件路径: which tesseract /usr/local/bin/tesseract # 当前语言包的路径(如果你下载了语言包,丢到这里): /usr/local/share/tessdata
添加语言包支持
你仅仅安装好 tesseract 其实还不能使用,因为其中 并没有你需要的语言包支持。所以我们还需要一些额外的设置
1 :拷贝软件tessdata目录到环境目录下
如果你不想每次都指定语言包加载路径的话...你需要: 将软件安装目录下的 tessdata目录 拷贝到 /usr/local/share/tessdata目录
2 :下载 tesseract 语言包
=》官方语言包地址
但是很多时候我们并不需要将所有的语言包下载下来,真正常用的只有 中、英文 两种。
将下载好的语言包 丢到 /usr/local/share/tessdata目录下
其他萌系问题
1:为什么我按照上述操作走下来后 通过 tesseract --version 查看我的版本。我将收到:没有共享目标文件或目录 libtesseract.so 的问题?
=》首先,你应该检查,你是否正确的配置了你的环境变量(没有问题!)。
=》其次你应该前往 /usr/local/lib 目录下查找这个文件。如果不存在(libtesseract.so),如果存在(执行命令 ldconfig 进行更新)
2:我如何尝试试用 tesseract ?
=》查看官方手册 里面有完整的教程:
如何进行最简单的调用,
如何单语言识别,
如何多语言识别,
如何抑制有关图像分辨率的消息,
如何配置文件来获取 HOCR 输出,
如何使用不同的页面分割模式......等
3:我如何在我的 Windows 设备上安装Tesseract-OCR?
=》参见此文章 Win + Tesseract-OCR 下载安装和使用
还有其他问题欢迎留言共同解决哦~