我这里使用的是Red Hat 6.2 版本
1. 安装依赖包
1.1 检查系统是否存在该依赖包
1.2 安装Group A (autoconf,automake,libtool)
1.3 安装Group B (libjpeg/libjpeg-devel,libpng/libpng-devel,libtiff/libtiff-devel,zlib/zlib-devel)
基本上Linux系统正常安装的话,libjpeg/libpng/libtiff/zlib都会安装,但也不排除奇葩系统没有安装的,所以第一步是检查系统是否安装这些包2. 安装Leptonica
根据Tesseract官网介绍,不同的Tesseract版本对应不同的Leptonica依赖包,不要装错版本了 Tesseract | Leptonica | Ubuntu |
4.00 | 1.73 | Must build from source |
3.04 | 1.71 | |
3.03 | 1.70 | |
3.02 | 1.69 | |
3.01 | 1.67 |
|
2.1 解压缩
tar-zxvf leptonica-1.73.tar.gz2.2 安装
请按照下面一步步执行,且每一步都有成功的反馈才可以进行下一步,后面会说到一些碰到的Error和处理方法./configure
make
make install
ldconfig
3. 安装Tesseract
可以在官网上下载,但在download页面上找到的是3.02及以前的版本,要装3.04怎么破?3.1 解压缩
tar-zxvf tesseract-3.04.tar.gz3.2 安装
和leptonica一样,进入解压缩文件tesseract-3.04后,按照下面的步骤输入command./autogen.sh
./configure
make
make install
ldconfig
4. 安装Tesseract-OCR
首先在页面 https://github.com/tesseract-ocr/tessdata 下载tesseract-ocr安装包,或者在release页面找到相应的版本下载4.1 解压缩
tar -zxvf tesseract-ocr-3.01.eng.tar.gz4.2 拷贝数据位置
5. 测试
测试是否安装成功,在../tesseract-3.04文件夹下可以找到图片phototest.tiff,(或存在于../tesseract-3.04/testing中)Tesseract OpenSource OCR Engine v3.01 with Leptonica
Page 0
6. 一些常见错误的解决方法
6.1 Error1 多出现在./configure阶段
/bin/sh../libtool --tag=CC --mode=linkgcc -g -O2 -no-undefined -o xtractprotos xtractprotos.o liblept.la
libtool:link: gcc -g -O2 -o .libs/xtractprotos xtractprotos.o ./.libs/liblept.so -Wl,-rpath-Wl,/usr/local/lib
./.libs/liblept.so:undefined reference to `sincos'
./.libs/liblept.so:undefined reference to `sqrt'
./.libs/liblept.so:undefined reference to `ceil'
./.libs/liblept.so:undefined reference to `tan'
./.libs/liblept.so:undefined reference to `powf'
./.libs/liblept.so:undefined reference to `sqrtf'
./.libs/liblept.so:undefined reference to `expf'
./.libs/liblept.so:undefined reference to `log'
./.libs/liblept.so:undefined reference to `sincosf'
./.libs/liblept.so:undefined reference to `atan'
./.libs/liblept.so:undefined reference to `logf'
./.libs/liblept.so:undefined reference to `floorf'
./.libs/liblept.so:undefined reference to `sin'
./.libs/liblept.so:undefined reference to `tanf'
./.libs/liblept.so:undefined reference to `atan2'
collect2:ld returned 1 exit status
make[2]:*** [xtractprotos] Error 1
make[2]:Leaving directory `/root/Downloads/leptonlib-1.67/src'
make[1]:*** [all-recursive] Error 1
make[1]:Leaving directory `/root/Downloads/leptonlib-1.67'
make: ***[all] Error 2
6.2 Error1 出现在ldconfig阶段
ldconfig:/usr/lib/libtesseract.so.3 is not a symbolic link
ldconfig:/usr/lib/liblept.so.2 is not a symbolic link
rm -rf liblept.so.2
ln -s liblept.so.2.0.0liblept.so.2
rm -rf libtesseract.so.3
ln -s libtesseract.so.3.0.1libtesseract.so.3