Linux下安装tesseract教程

Linux下安装tesseract教程

一、依赖安装:
1、查看centos版本
#cat /etc/redhat-release
CentOS release 6.5 (Final)

2、检查yum的repo库
#yum repolist all
检查是否有如下的repo库:
centos-sclo-rh,centos-sclo-sclo
如果没有则安装:
#yum -y install centos-release-scl-rh centos-release-scl

3、检查gcc和g++版本
#gcc --version
#g++ --version
gcc的当前版本编译tesseract4.1会出错,需要gcc更高的版本,通过yum安装的6.3.1版本,通过yum安装gcc有如下好处:
1) 安装方便,特别是很多依赖的软件包自动安装;
2) gcc的版本可以灵活切换,老的版本得以保留。

4、安装gcc 6.3.1
#yum -y install devtoolset-6-gcc devtoolset-6-gcc-c++
执行如下命令使gcc6立即生效
#source /opt/rh/devtoolset-6/enable
再次查看gcc和g++版本
#gcc --version
#g++ --version

如需永久生效则需要把命令添加到/etc/profile文件
vim /etc/profile
在最后添加如下内容:
source /opt/rh/devtoolset-6/enable
执行如下命令使之立即生效
#source /etc/profile

5、安装依赖库(可以下面再装)
#yum install autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel

6、安装autoconf
查看本地的autoconf版本,如果过低则移除
#rpm -qa | grep autoconf
#rpm -e --nodeps autoconf-2.63

获得2.69版本autoconf
#wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
#tar xzvf autoconf-2.69.tar.gz
#cd autoconf-2.69

编译并安装
#./configure
#make
#make install

检查一下autoconf是否是2.69版本
#autoconf --version

7、安装autoconf-archive
现在安装的是2018.03.13版本,当然要选择高一些的版本啦
#wget http://mirrors.nju.edu.cn/gnu/autoconf-archive/autoconf-archive-2018.03.13.tar.xz
#xz -d autoconf-archive-2018.03.13.tar.xz
#tar xvf autoconf-archive-2018.03.13.tar
#cd autoconf-archive-2018.03.13

编译并安装
#./configure
#make
#make install

最后一步很关键,必须把m4目录下的文件复制到/usr/share/aclocal/目录下,这些命令后面编译tesseract用得到,否则后面编译tesseract的时候会报command not found错误
#cp ./m4/* /usr/share/aclocal/

也可以去下面的网址下载其他版本,至少应下载2016版本以上吧
http://mirrors.nju.edu.cn/gnu/autoconf-archive/

二、上面依赖安装完后可进行以下操作:
1.下载
wget https://github.com/tesseract-ocr/tesseract/archive/4.1.0.tar.gz
wget http://www.leptonica.org/source/leptonica-1.74.4.tar.gz

2.安装依赖
安装依赖:yum install autoconf automake libtool libjpeg-devel libpng-devel libtiff-devel zlib-devel

3.安装leptonica
tar -xzvf leptonica-1.74.4.tar.gz
cd leptonica-1.74.4.tar.gz
./configure --prefix=/usr/local/leptonica
make
sudo make install 或make install 

4.配置leptonica环境变量
vim /etc/profile
添加以下字段:
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/leptonica/lib/pkgconfig
export PKG_CONFIG_PATH
CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:/usr/local/leptonica/include/leptonica
export CPLUS_INCLUDE_PATH
C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/leptonica/include/leptonica
export C_INCLUDE_PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/leptonica/lib
export LD_LIBRARY_PATH
LIBRARY_PATH=$LIBRARY_PATH:/usr/local/leptonica/lib
export LIBRARY_PATH
LIBLEPT_HEADERSDIR=/usr/local/leptonica/include/leptonica
export LIBLEPT_HEADERSDIR
刷新配置:
source /etc/profile

5.安装tesseract
tar -xzvf 4.1.0.tar.gz
cd tesseract-4.1.0
./autogen.sh 
./configure --prefix=/usr/local/tesseract
make
sudo make install 或make install

6.配置 tesseract 环境变量
vim /etc/profile
添加以下字段:
PATH=$PATH:/usr/local/tesseract/bin
export PATH
刷新配置
source /etc/profile

7.安装完毕查看tesseract版本
tesseract --version

可执行文件路径:
#which tesseract 
/usr/local/bin/tesseract

语言包的路径(目前空空如也):
/usr/local/share/tessdata

10、下载tesseract语言包(已下载)
去下面网址下载一些训练好的语言包吧
https://github.com/tesseract-ocr/tessdata_best
我们体验的时候只要下载英文和简体中文语言包即可:eng.traineddata、chi_sim.traineddata、chi_sim_vert.traineddata,
看名称就很容易理解,前者为英文,后两个为简体中文,把这些语言包放到/usr/local/share/tessdata目录下

11、初体验tesseract识别
先体验英文识别,eng_test.jpg是我们准备的英文文字图片,eng_result.txt为输出结果:
#tesseract eng_test.jpg eng_result --psm 7
#vim eng_result.txt
英文的识别结果:18AX,不是很理想吧,但是要知道这个图片是个验证码,是不是可以破解一般的验证码了!

再体验一下中文识别,chi_sim_test.jpg是我们准备中文文字图片,chi_sim_result.txt为输出结果:
#tesseract chi_sim_test.jpg chi_sim_result -l chi_sim --psm 7
#vim chi_sim_result.txt
查看中文识别结果:益码通付平台,各位朋友也可以识别自己准备的中文图片,不理想的话也没关系,因为后续我们自己可以训练自己的语言包了。

下面简单介绍一下常用的参数
-l参数表示要用的语言包,chi_sim表示简体中文语言包,默认为英文;
--psm参数可以简单理解成图片中的文字的布局方式,默认为:3
0 = Orientation and script detection (OSD) only.
1 = Automatic page segmentation with OSD.
2 = Automatic page segmentation, but no OSD, or OCR.
3 = Fully automatic page segmentation, but no OSD. (Default)
4 = Assume a single column of text of variable sizes.
5 = Assume a single uniform block of vertically aligned text.
6 = Assume a single uniform block of text.
7 = Treat the image as a single text line.
8 = Treat the image as a single word.
9 = Treat the image as a single word in a circle.
10 = Treat the image as a single character.

测试图片:
测试图片

三、注意事项:
1.如果图片分辨率和gpi不符合要求会返回警告:
Tesseract Open Source OCR Engine v4.1.0 with Leptonica
Warning: Invalid resolution 0 dpi. Using 70 instead.
解决办法:修改图片gpi和分辨率,参照测试图片test_picture3.jpg

四、相关资源文件下载地址
https://download.csdn.net/download/Tomcat_wr8/13979558

五、参考资料

https://www.cnblogs.com/snakeskin/p/11296631.html

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值