Tess4j的使用(识别中文)

最近做了一个验证码识别的项目,需要用到OCR,来来回回整了几个小时,终于弄好了。

首先下载tess4j:http://tess4j.sourceforge.net/

根据官方教程,tess4j的包解压后,将以下.jar包复制到lib项目文件夹,然后再Build Path(如图)。

Tess4j的使用(识别中文)_第1张图片

再把tessdata文件夹拷贝到项目根目录下

Tess4j的使用(识别中文)_第2张图片

如要支持中文,请下载中文字库chi_sim.traineddata,放到tessdata目录下,然后在代码里面添加该字库

instance.setLanguage("chi_sim");

接着在src下建一个类,将一下官方的示例代码拷贝进去即可成功。(附源码)

package tess4j.clan; import java.io.File; import net.sourceforge.tess4j.*; public class TesseractExample { public static void main(String[] args) { File imageFile = new File("jietu.png"); ITesseract instance = new Tesseract(); // JNA Interface Mapping // ITesseract instance = new Tesseract1(); // JNA Direct Mapping instance.setLanguage("chi_sim");//添加中文字库 try { String result = instance.doOCR(imageFile); System.out.println(result); } catch (TesseractException e) { System.err.println(e.getMessage()); } } } 

运行结果:

Tess4j的使用(识别中文)_第3张图片

精度不是很高。有高需求的读者可以去训练字库。再导入即可

项目源码:https://github.com/Clinan/OCR2Java 如果觉得可以 请给颗star

你可能感兴趣的:(javaOCR)