版权声明:转载请注明出处 https://blog.csdn.net/qq_40162735/article/details/84976727
今天研究了一个Tess4J 技术,中文基本上完全可以识别,分享一下,可参考或直接使用
下载 Tess4J jar,网址:http://sourceforge.net/projects/tess4j/
项目整合:把相关的jar放入lib中
然后把tessdata 放入和src同级目录
测试:
package com.scanner.controller;
import net.sourceforge.tess4j.ITesseract;
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class OCR {
public static void main(String[] args) throws TesseractException {
ITesseract instance = new Tesseract();
//如果未将tessdata放在根目录下需要指定绝对路径(exe)
//instance.setDatapath("D://download//Tess4J//tessdata");
//如果需要识别英文之外的语种,需要指定识别语种,并且需要将对应的语言包放进项目中
instance.setLanguage("chi_sim");
// 指定识别图片
File imgDir = new File("E://scannerui//scanner//filedata//u1//001.png");
long startTime = System.currentTimeMillis();
String ocrResult = instance.doOCR(imgDir);
// 输出识别结果
System.out.println("OCR Result: \n" + ocrResult + "\n 耗时:" +
(System.currentTimeMillis() - startTime) + "ms");
}
}