linux环境安装tesseract OCR识别

参考文档地址:https://www.pianshen.com/article/9026369424/
https://www.lizenghai.com/archives/43148.html
https://www.cnblogs.com/dongyangblog/archive/2019/07/12/11177233.html

1 安装centos7系统依赖
命令如下:
yum install -y libpng-devel libjpeg-devel libtiff-devel
yum install -y libpng-devel libjpeg-devel libtiff-devel

2 安装leptonica
下载leptonica-1.78,下载地址:
http://www.leptonica.org/source/leptonica-1.78.0.tar.gz
解压,使用命令:tar -xzvf leptonica-1.78.0.tar.gz
进入解压后的目录,使用命令:cd leptonica-1.78.0

配置编译,采用默认配置,使用命令:./configure
编译,使用命令:make
安装,使用命令:make install

3 安装tesseract-ocr
下载tesseract-ocr4.0,下载地址:
https://codeload.github.com/tesseract-ocr/tesseract/tar.gz/4.0.0
解压,使用命令:tar -xzvf tesseract-4.0.0.tar.gz
进入解压后的目录,使用命令:cd tesseract-4.0.0

从上面图片中,我们注意到解压文件里只有一个可执行文件autogen.sh
因此我们执行这个shell脚本文件,使用命令:./autogen.sh
执行完后,在当前目录就生成了其它一些可执行文件

使用配置,命令:./configure
发现如下错误

提示这个错误是因为在上面的步骤中虽然我们安装了leptonica-1.78,但是却没有将leptonica设置为环境变量。
由于上面我们都是采用默认的配置,因此第三方库是安装在/usr/local这个目录下

进入lib目录可以看到新安装的liblept
在这里插入图片描述
在这个目录输入命令:pkg-config --version查看pkg-config是否安装
如果没有安装,就先安装,使用命令:yum install pkgconfig

3.1 将leptonica-1.78添加到环境变量里
使用命令:vim /etc/profile
在打开的文件结尾添加:
export LD_LIBRARY_PATH=/usr/local/lib
export LIBLEPT_HEADERSDIR=/usr/local/include
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

有的时候新建环境变量也这样写:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH/usr/local/lib


保存退出
使环境变量生效,命令:source /etc/profile

然后我们在重新配置tesseract,使用命令: ./configure
这次配置就没有错误了。
编译,使用命令:make
安装,使用命令:make install
动态链接,使用命令:ldconfig

最后安装完成,使用命令:tesseract --version
显示如下:
tesseract 4.0.0
leptonica-1.78.0
libjpeg 6b (libjpeg-turbo 1.2.90) : libpng 1.5.13 : libtiff 4.0.3 : zlib 1.2.7

切换到项目发布的目录再进入x64 (64位系统选择此目录)目录然后做映射。


映射哪些文件主要是看我们发布后X64里面的dll文件叫什么,比如我们发现是libtesseract400.dll 和libtesseract400.dll 。不同版本可能后面的数字不一样。


然后我们找到刚刚安装Tesseract的目录然后搜索libtesseract和libtesseract开头的so文件即可。最后我们会找到libtesseract.so.4.0.1.so、liblept.so.5.0.3.so文件。然后将这两个文件做映射,映射到我们项目目录中的名称需要和本身项目中dll文件一致,只是后缀为so,不再是dll了。

映射命令如下


ln -s /usr/lib64/libtesseract.so.4.0.1 libtesseract400.so


ln -s /usr/lib64/liblept.so.5.0.3 liblept1760.so


注意这些dll或者so后面的版本号即数字不同版本不同时期可能都不一样,以自己安装的为准。

原文地址:https://www.cnblogs.com/zwbsoft/p/13451718.html