本文主要向大家介绍了在linux系统运维下安装tesseract教程,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。
centos下安装:
centos7安装依赖库
安装centos系统依赖
yum install -y automake autoconf libtool gcc gcc-c++ yum install -y libpng-devel libjpeg-devel libtiff-develyum -y install python-develyum -y install openssl-devel yum -y install opencv
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel yum install -y libffi libffi-develyum install libmount -y123456789
以下是安装linux系统所需的软件
如果没有安openssl,会出现”command ‘gcc’ failed with exit status 1 错误提示
如果tesseract3.0安装leptonica 1.7.2
wget http://www.leptonica.org/source/leptonica-1.72.tar.gztar xvzf leptonica-1.72.tar.gzcd leptonica-1.72/
./configure
make && make install12345
如果需要tesseract4.0,则需要安装leptonica 1.74.4http://www.leptonica.org/download.htmlwget http://www.leptonica.org/source/leptonica-1.74.4.tar.gztar xvzf leptonica-1.74.4.tar.gzcd leptonica-1.74.4/
./configure
make && make install1234567
安装tesseract3.0-ocr
wget https://github.com/tesseract-ocr/tesseract/archive/3.04.zipunzip 3.04.zipcd tesseract-3.04/
autoreconf -I /usr/share/aclocal
./configure
make && make install
sudo ldconfig1234567
安装tesseract4 .0
wget https://codeload.github.com/tesseract-ocr/tesseract/zip/4.00.00dev
或者下面这个
wget http://linux-1251121573.cosgz.myqcloud.com/soft/tesseract/4.0.0-beta.1.tar.gzunzip tesseract-4.00.00dev.zipcd tesseract-4.00.00dev
autoreconf -I /usr/share/aclocal
./autogen.sh ./configure --prefix=$HOME/local/
make
make install
ldconfig123456789101112
运行会提示报错./autogen.sh,缺少autoconf之类的包,需要安装包
wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz tar -zxvf autoconf-2.69.tar.gz cd autoconf-2.69./configure
make && make install12345
wget http://ftp.gnu.org/gnu/automake/automake-1.14.tar.gztar -zxvf automake-1.14.tar.gz cd automake-1.14./bootstrap.sh./configure
make && make install123456
从这里下载一个autoconf-archive解压之后上传到服务器之后安装
http://mirrors.ustc.edu.cn/gnu/autoconf-archive/
wget http://mirrors.ustc.edu.cn/gnu/autoconf-archive/autoconf-archive-2018.03.13.tar.xzxz -d autoconf-archive-2018.03.13.tar.xztar xvf autoconf-archive-2018.03.13.tar cd autoconf-archive-2018.03.13./configure
make && make install1234567
安装glib需要安装如下
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gztar -zvxf pcre-8.40.tar.gz cd pcre-8.40./configure
make
make install
wget http://ftp.gnome.org/pub/gnome/sources/glib/2.56/glib-2.56.1.tar.xzxz -d glib-2.56.1.tar.xztar xvf glib-2.56.1.tarcd glib-2.56.1./configure --enable-libmount=no
make
make install
如果./configure 失败,则运行 ./configure --enable-libmount=no
wget http://pkgconfig.freedesktop.org/releases/pkg-config-0.29.2.tar.gztar -zvxf pkg-config-0.29.2.tar.gzcd pkg-config-0.29.2./configure --with-internal-glib
make
make install
如果./configure 失败,则运行 ./configure --with-internal-glib12345678910111213141516171819202122232425262728
参考如下文章
https://linux.cn/thread-16838-1-1.html
https://blog.csdn.net/windeal3203/article/details/76608248
部署模型
在https://github.com/tesseract-ocr/tessdata 下载对应语言的模型文件
由于目前只需要识别手机号码和英文,只下载一个eng.traineddata文件即可,
将模型文件移动到/usr/local/share/tessdata
然后即可进行识别12345
以下是安装python所需的库
pip install pytesseract
pip install tesseract
pip install tesseract-ocr
python -m pip install --upgrade pip setuptools
python -m pip install "django<2"pip install image123456
ubuntu 安装方式
sudo apt-get install tesseract-ocr
sudo apt-get install libpng12-dev
sudo apt-get install libjpeg62-dev
sudo apt-get install libtiff4-dev
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install automake
1.tesseract-ocr安装
sudo apt-get install tesseract-ocr
2.pytesseract安装
sudo pip install pytesseract
3.Pillow 安装
sudo pip install pillow
示例:
import pytesseractfrom PIL import Image
image = Image.open('bb.png')
code = pytesseract.image_to_string(image)print code1234567
在centos中,出现如下报错1:
pytesseract.pytesseract.TesseractError: (127, u’tesseract: error while loading shared libraries: libtesseract.so.3: cannot open shared object file: No such file or directory’)
是出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。
一般而言,有很多的so会存放在/usr/local/lib这个目录底下,去这个目录底下找,果然发现自己所需要的.so文件。
所以,在/etc/ld.so.conf中加入/usr/local/lib这一行,保存之后,再运行:/sbin/ldconfig –v更新一下配置即可。
sudo ldconfig
参考:http://www.eefocus.com/winter1988/blog/13-03/292209_03d5b.html
报错2:
Running automake --add-missing --copysrc/api/Makefile.am:17: error: Libtool library used but 'LIBTOOL' is undefined12
这个是因为没有配置正确aclocal的库LIBTOOL.m4的路径
解决方法:
—-查看aclocal的路径
aclocal --print-ac-dir12
先查看路径:
之后执行即可
autoreconf -I /usr/local/share/aclocal
12
参考解决https://blog.csdn.net/sky_qing/article/details/9707647
报错3:
在安装tesseract 执行./configure时:出现如下提示:
./configure: line 4193: syntax error near unexpected token `-mavx,'./configure: line 4193: `AX_CHECK_COMPILE_FLAG(-mavx, avx=true, avx=false)'123
在#647 中能找到:https://github.com/tesseract-ocr/tesseract/issues/647
回答:“You should install autoconf-archive .” 看来时autoconf-archive的原因。 已经装了???
这货在/local/share/aclocal里面。 一堆m4后缀的文件:m4 是一个宏处理器.将输入拷贝到输出,同时将宏展开. 宏可以是内嵌的也可以是用户定义的. 除了可以展开宏,m4还有一些内建的函数,用来引用文件,执行Unix命令,整数运算,文本操作,循环等. m4既可以作为编译器的前端也可以单独作为一个宏处理器.
现在的问题是怎么引用这些文件。 ./configure –help 没有。 许久找到了这篇讲自动编译的文章:https://jin-yang.github.io/post/linux-package.html
有这样一句话:”aclocal,将在 configure.ac 同一目录下生成 aclocal.m4,在扫描 configure.ac 的过程中,将第三方扩展和开发者自己编写的宏定义复制进去;这样,autoconf 在遇到不认识的宏时,就会从 aclocal.m4 中查找”. 的确编译是生成了aclocal.m4文件。 看来的想办法把/local/share/aclocal里的m4引用进去。
打开autogen.sh : 81行有echo “Running aclocal” aclocal -I config. 应该是这儿引用的宏。操作我看不懂 .所以怎么指定加入自己的宏?
aclocal –help 有: -I DIR add directory to search list for .m4 files –install copy third-party files to the first -I directory –system-acdir=DIR directory holding third-party system-wide files
感觉是这几个参数。。。试一试 .. aclocal -I m4 –install –system-acdir=HOME/local/share/aclocal
aclocal -I m4 –install –system-acdir=$HOME/local/share/aclocal 为aclocal的路径,但是一般为/usr/local/share/aclocal
本文由职坐标整理并发布,了解更多内容,请关注职坐标系统运维Linux频道!