CentOS下编译安装tesseract-ocr

时间:2021-01-02 08:54:14

作为在最流行的免费linux发行版本来说,centos自带的yum真不给力啊,连tesseract-ocr都没有。

安装tesseract,首先安装一些依赖的库

1
2
3
4
wget http: //www.leptonica.com/source/leptonica-1.68.tar.gz
tar xvf leptonica-1.68.tar.gz
cd leptonica-1.68
./configure; make; make install

然后就是现在tesseract的源代码进行编译安装了,在写本篇博文时,最新的tesseract版本为3.01

1
2
3
4
5
6
wget http: //tesseract-ocr.googlecode.com/files/tesseract-3.01.tar.gz
tar xvf tesseract-3.01.tar.gz
cd tesseract-3.01
./autogen.sh
mkdir m4; ./configure
make; make install

tesseract的编译安装需要automake、libtool,这个可以直接通过yum来安装。非常感谢网友mk2011的提示,tesseract是需要安装ImageMagick的,这个可以通过yum来安装。

安装编译环境 

 

#yum install -y automake autoconf libtool gcc gcc-c++  


运行: tesseract 1422204634418.jpg aaa -l eng

报错:Error opening data file ./tessdata/eng.traineddata

解决方案:下载tesseract-ocr-3.01.eng.tar.gz解压到响应位置


tesseract是需要安装ImageMagick的,这个可以通过yum来安装

yum install ImageMagick

常见问题链接:https://code.google.com/p/tesseract-ocr/issues/detail?id=340


编译安装结束了之后,还需要安装相对应的语言包,安装语言包时,只要把语言包解压缩之后放到对应的目录就可以了。

1
2
3
wget http: //tesseract-ocr.googlecode.com/files/tesseract-ocr-3.01.eng.tar.gz
tar xvf tesseract-ocr-3.01.eng.tar.gz
mv tesseract-ocr/tessdata/* /usr/local/share/tessdata/

安装好以后在命令行使用结果报错:

 
  
  1. Tesseract Open Source OCR Engine with Leptonica  
  2. Error in findTiffCompression: function not present  
  3. Error in tiffGetCount: function not present  
  4. Error reading file ./test.png!  
原因是安装了 tesseract-orc所依赖的leptonica的时候在configure的时候没有加上pnglib的选项。
解决办法:重新configure和安装leptonica

./configure --with-libpng && make  
make; make install