那如何使用java程序调用相应的tesseract进行操作呢?
这里介绍2种方式
一种是使用cmd方式,另外一种就是使用tess4j。tess4j的源码地址 http://sourceforge.jp/projects/sfnet-tess4j/ 中文首页
感兴趣的自己下载查看源代码。
由于范例代码较多就不一一贴出来了,会在文章结尾提供一个下载链接,大概讲下结构,
如上图,tess4j包下是使用tess4j调用tesseract,src下的dll文件是需要使用到的。同时,加载的语言库文件也要放到tessdata目录下。而cmd 包下是使用cmd方式调用的范例,额外需要swingx-1.6.1.jar,调用时直接配置使用的安装的路径,并配置语言库即可。
代码下载地址,由于附带了data文件,jar包等,所以会比较大,接近50M。导入到工程即可。各个包下都有测试的Test类,直接右键就可以运行。前提是对应目录下有相应图片。
在cmd包下ClearImageHelper这个类是对图片进行处理的类,比如灰度转换,二值化,缩放等等,对于复杂图片可以先进行处理,来提高图片识别率。而tess4j下也封装了图片处理的工具类,基本都包含这些功能,例子中也给出了部分样例。
Bty,话说使用原生态识别调用,跟tess4j得到的结果还是有所差别的。