Tess4j是Tesseract文字识别引擎的基于Java的Wrapper.
用Gradle引入
调用Tess4j的Gradle:
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
}
简单使用
Tess4J的使用比较简单,创建Tesseract对象之后调用DoOCR即可。
注意需要设置一下训练数据的路径。如果你配置了环境变量TESSDATA_PREFIX=C:\Program Files (x86)\Tesseract-OCR\tessdata 的话,可以不需要在代码里面指定。
Tesseract instance = new Tesseract();
instance.setDatapath("C:\\Program Files (x86)\\Tesseract-OCR\\tessdata");
instance.setPageSegMode(PageSegMode);
instance.setLanguage(language);
String result = instance.DoOCR("test.jpg");
但是这种默认的识别,效果并不是特别好。为了提升识别效果,可以做一些优化
反转为白底黑字,提升效果显著
只识别特别的区域,提升效果显著
设置特定的分页模式,识别效果显著
灰度化,提升效果中等
提升识别效果
识别可以指定相应的DoOCR函数来识别指定的区域。
对于4.0版本