安装
git clone --branch 4.0.0-beta.1 https://github.com/tesseract-ocr/tesseract.git
#安装tesseract-ocr编译依赖
yum install autoconf automake autoconf-archive libtool -y
#安装图像解析包 可以自己搭配格式
yum install libjpeg-devel libpng-devel libtiff-devel zlib-devel -y
#安装图像处理与图像分析工具,tesseract依赖于它
wget http://www.leptonica.org/source/leptonica-1.71.tar.gz
./configure
make
make install
#准备安装tesseract-ocr
./autogen.sh
./configure
make
make install
ldconfig
使用
#tesseract简单使用
[root@VM_14_141_centos reignTools]# tesseract template.jpg a
上述标识在可以正常使用tesseract的前提下 在当前目录下有template.jpg文件一个,对改图像文件进行解析 结果响应到a文件内
tesseract imagename outputbase [-l lang] [-psm pagesegmode] [configfile...]
1.imagename是你要识别的图片的名字,不需要打引号,直接输入即可。
2.outputbase是输出结果文件的名字,不需要文件类型后缀,就是txt,这个参数就是txt的文件名。
3.lang是语言代码,默认英语,如果要识别中文,则:
tesseract template.jpg a -l chi_sim
若同时识别中英文,则使用+进行连接
tesseract template.jpg a -l chi_sim+eng
4.pagesegmode则用来匹配使用哪种识别模式
正常键入tesseract会打印
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.
0 定向脚本监测(OSD)
1 使用OSD自动分页
2 自动分页,但是不使用OSD或OCR(Optical Character Recognition,光学字符识别)
3 全自动分页,但是没有使用OSD(默认)
4 假设可变大小的一个文本列。
5 假设垂直对齐文本的单个统一块。
6 假设一个统一的文本块。
7 将图像视为单个文本行。
8 将图像视为单个词。
9 将图像视为圆中的单个词。
10 将图像视为单个字符。
问题
java使用tess4j时在win环境可能会出现
- java.lang.UnsatisfiedLinkError: 找不到指定的模块
的问题,主要原因是在Windows环境下,gsdll64.dll,liblept170.dll,libtesseract304.dll等三个文件是通过vc2013编译的。
点击此处进行安装。
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.UnsatisfiedLinkError: Unable to load library 'tesseract': Native library (linux-x86-64/libtesseract.so) not found in resource path ([jar:file:/project/reignTools/reign
原因:没有配置LD_LIBRARY_PATH=/usr/local/lib:$PATH,配置前要find下libtesseract.so是否存在(linux)
./configure: line 4193: syntax error near unexpected token
-mavx,' ./configure: line 4193:
AX_CHECK_COMPILE_FLAG(-mavx, avx=true, avx=false)'
原因:缺少autoconf-archive
若安装成功tesseract后,可以通过
locate xxx.so
查找是否存在动态链接库文件。