注:以下安装以ubuntu16.04为例,本例中用到的文件是1.71版的leptonica和3.04版的tesseract。不同的操作系统用到的文件不同,请勿乱用。
一、Tesseract概述
Tesseract的OCR引擎最先由HP实验室于1985年开始研发,至1995年时已经成为OCR业内最准确的三款识别引擎之一。然而,HP不久便决定放弃OCR业务,Tesseract也从此尘封。
数年以后,HP意识到,与其将Tesseract束之高阁,不如贡献给开源软件业,让其重焕新生--2005年,Tesseract由美国内华达州信息技术研究所获得,并求诸于Google对Tesseract进行改进、消除Bug、优化工作。
Tesseract目前已作为开源项目发布在Google Project,其最新版本3.0已经支持中文OCR,并提供了一个命令行工具。
二、安装并编译Tesseract
1.下载安装编译要用到的文件。
在安装tesseract时,需要下载很多文件,网上有的博客中给了下载链接,但是好多都需要翻墙才能下载,在这里我把所需要的文件下载到了网盘里供大家下载,https://pan.baidu.com/s/1mj6YTIw
提取码是:95p5
注:一定要先把这些文件下载到本地再进行后面的安装,因为后面会用到这些文件。
2.安装相应lib。
打开linux下的命令行,分别输入以下命令:
sudo apt-get install libpng12-dev
sudo apt-get install libjpeg62-dev
sudo apt-get install libtiff5-dev
sudo apt-get install libtool
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install automake
注:上面后三条指令所安装的文件一般电脑都自带,但是为了以防万一,还是安装一下,如果遇到已有的文件会跳过。
3.下载安装leptonica。
在linux命令行中输入:
wget http://www.leptonica.org/source/leptonica-1.71.tar.gz 执行完毕后就得到了leptonica-1.71.tar.gz压缩文件,解压:
tar -zxvf leptonica-1.71.tar.gz
解压后查看,发现我们已经得到了leptonica-1.71文件。
进入到leptonica-1.71目录下:
cd leptonica-1.71
再分别执行以下指令:
./configure
make
sudo make install
leptonica即安装编译成功。
4.下载安装tesseract。找到在百度云盘下载的那些文件中的tesseract-3.04.00.tar.gz,将其解压到根目录中(解压的命令就不再写出来了),查看:
我们已经得到了安装编译tesseract所需的tesseract-3.04.00文件。
进入到该文件目录下:
cd tesseract-3.04.00
分别执行以下指令:
sudo ./autogen.sh
./configure
make
sudo make install
sudo ldconfig
tesseract即安装编译成功。
5.安装中英文语言包。
找到在百度云盘下载的那些文件中的剩余文件,即chi_sim.traineddata、eng.traineddata、eng.traineddata.part三个文件,并把它们放到根目录中。
这个时候我们先来查看一下在/usr/local/share中是否有tessdata文件夹:
cd /usr/local/share
ls
发现确实已有tessdata文件夹,接着我们将刚刚的三个文件拷贝到tessdata文件夹下:
cp chi_sim.traineddata /usr/local/share/tessdata
cp eng.traineddata /usr/local/share/tessdata
cp eng.traineddata.part /usr/local/share/tessdata
到现在基本的安装编译工作已经完成。接着进行测试。
三、测试。
首先我们打开tesseract-3.04.00目录下的testing文件:
cd tesseract-3.04.00
cd testing
ls
发现一个名为phototest.tif的文件,这个文件其实就是一张图片:
这个图片中有几句英文语句,我们的测试就是基于这张图片,也就是识别出这张图片中的英文语句。
于是在testing目录下输入下面指令:
tesseract phototest.tif result -l eng
再查看testing目录下的文件,发现多了一个result.txt:
这个result.txt就是我们对刚刚的phototest.tif文件的识别结果,打开看一下:
跟刚刚图片中的内容完全一致,可以说识别率是很高的。