linux环境下tesseract4.1的编译安装

由于公司新的产品需要深度集成tesseract,所以需要在linux下和windows下源码编译安装tesseract,tesseract当前最新稳定版本是4.1.0,所以就从这个版本入手,编译的过程中碰到了不少困难,踩到了不少坑,所以特意分享出来,避免各位朋友再走弯路~~。

1、查看centos版本
#cat /etc/redhat-release
CentOS release 6.5 (Final)
  
2、查看gcc和g++版本
#gcc --version
#g++ --version
gcc至少应需要4.9.0以上的版本,本人是通过yum安装的6.3.1版本,通过yum安装gcc有如下好处:
1) 安装方便,特别是很多依赖的软件包自动安装;
2) gcc的版本可以灵活切换,老的版本得以保留。

3、检查yum的repo库
#yum repolist all
检查是否有如下的repo库,如果没有则下载repo库:
CentOS-SCLo-scl-rh.repo
安装软件包:
#yum -y install centos-release-scl-rh centos-release-scl

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/

8、安装leptonica
我安装的是leptonica-1.78.0版本
#wget http://www.leptonica.org/source/leptonica-1.78.0.tar.gz
#tar xzvf leptonica-1.78.0.tar.gz
#cd leptonica-1.78.0

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

添加环境变量
#vim /etc/profile
最后添加如下内容
export LD_LIBRARY_PATH=$LD_LIBRARY_PAYT:/usr/local/lib
export LIBLEPT_HEADERSDIR=/usr/local/include
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
执行如下命令使之立即生效
#source /etc/profile

执行如下命令,确认有lept输出,如果没有,再检查上面的步骤吧。
#pkg-config --list-all | grep lept

也可以去下面的网址下载其他版本,至少应下载1.74版本以上吧。
http://www.leptonica.org/download.html

9、安装tesseract
最激动人心的来了,我们编译并安装tesseract当前最新的版本:4.1.0
#wget https://github.com/tesseract-ocr/tesseract/archive/4.1.0.tar.gz -O tesseract-4.1.0.tar.gz
#tar xzvf tesseract-4.1.0.tar.gz
#cd tesseract-4.1.0

编译并安装,如果有错误请检查以前的步骤
#./autogen.sh 
#./configure
#make
#make install

安装完毕查看tesseract版本
#tesseract --version
4.1.0

可执行文件路径:
#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.

原文地址:https://www.cnblogs.com/snakeskin/p/11296631.html

时间: 2024-10-06 23:03:50

linux环境下tesseract4.1的编译安装的相关文章

Linux环境下 RabbitMQ 的下载与安装

0 环境 CentOS7 RabbitMQ 3.6.5 erlang 18.3 socat rabbitmq是使用erlang语言编写的,所以需要先安装erlang,其次rabbitmq安装依赖于socat,所以三个安装包都需要下载.另外rabbitmq对于erlang的版本是有要求的,这个可以去官网查看. 0.1 Mac本地文件上传 通过ssh连接本地虚拟机中的CentOS 7 服务器,将所需安装文件上传至Linux服务器 0.2 Linux服务器下直接执行下载命令 wget www.rabb

Linux 环境下 gcc 链接库 编译、链接(概览) 以及 自动化工具Makefile的编写

个人博客首页(点击查看详情) -- https://blog.51cto.com/11495268 1.简介    程序编译一般需要经预处理.编译.汇编和链接,在实际应用中,有些公共代码需要反复使用,就把这些代码编译成为 "库" 文件,本文 主要 描述 Linux 平台下 库文件的 创建 和 链接 相关操作(既然都看 这么底层的内容了,相信 也有一定的基础,所以本文 对相关命令 也不会进行详细解释)    备注:    linux平台下,静态链接库是以 .a 的后缀文件,动态链接库是以

Linux环境下R和R包安装及其管理

前言 R对windows使用很友好,对Linux来说充满了敌意.小数据可以在windows下交互操作,效果很好很棒.可是当我们要处理大数据,或者要在集群上搭建pipeline时,不得不面对在Linux上装R及想要的R包这个难题,尤其是对非root用户而言更是艰难重重. 准备依赖库 依次安装:zlib/bzip/liblzma/pcre/curl,注意顺序和版本.目前3.4以上3.6以下R版本相对较为稳定和不过时,我自己安装的是3.5.2. cd zlib-1.2.11 ./configure -

从vmware下载到Linux环境下jdk和maven的安装

写在前面:个人总结,如有不对请指出 操作环境: 操作系统:window7 企业版 处理器:Intel Core i5-4200U CPU @ 1.6GHz 内存:8G 系统类型:64位操作系统 需要安装的文件: ubuntu系统:http://mirrors.yun-idc.com/ubuntu-releases/14.10/ubuntu-14.10-desktop-amd64.iso (版本:Ubuntu 14.10 jdk 工具包:www.oracle.com/technetwork/jav

linux环境下kettle部署(JDK安装配置,kettle安装配置,资源库配置,定时执行job)

一.部署准备 1.1 java安装(略) 1.2 JDK配置 1.     命令行键入“cd /etc”进入etc目录 2.     命令行键入“vi profile”打开profile文件 3.     敲击键盘ctrl+F到文件末尾 4.     在末尾处,即第一个~的地方,敲击键盘将以下内容输入到文件 export JAVA_HOME=/usr/java/jre1.6.0_45 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAV

在linux环境下利用mmm命令编译android项目错误记录

此篇文章建立在之前的三篇文章的基础之上(本次内容主要参考老罗的<android源码情景分析一书>): 源码编译 内核编译 adb连接模拟器 ------------------------------------------------------------------------------------ 之后,在android源码环境中编写了一个简单的android程序HelloAndroid. 文件结构如下: ~/android/packages/experimental/HelloAn

Linux环境下c程序的编译和执行

1 单个文件的编译和执行创建main.c文件,内容如下: #include <stdio.h> #include <stdlib.h> int main(void){ printf("Hello world!\n"); return 0; }; 编译: gcc -o main main.o 执行: [email protected]:/ybg/python# ./main Input an integer: 10 sum=55 2 多个文件的编译和执行创建sum

在linux环境下尝试使用gcc编译一个程序,并验证-E\-S\-c选项

首先,进入Linux平台: 2.双击Terminal,进入: 3.编入命令 vim test.c ,进入新建文件test.c中,并且自己编写一个简单的c语言程序: 4.分别输入命令: ESC   :  w   q   ! 这5个命令回到编译页面,如若想修改则可输入命令 vim test.c  进入,输入命令i或者A命令 5.输入命令gcc -S test.c  预处理 6.输入命令 gcc -c test.c     预编译处理完成 7.输入命令    ./test 8.程序运行截图:

【转】linux环境下python的源码安装

[转载: http://www.cnblogs.com/yuechaotian/archive/2013/06/03/3115482.html] [问题] 在编译Sequoiadb的Python驱动源码的过程中,出现:Python.h不存在的问题.经求证,Python.h文件只在python的源码安装中存在,而在一般的二进制安装中则不存在. 1. 下载python2.7.5,保存到 /data/qtongmon/software wget https://www.python.org/ftp/p