java代码,创建Test.java,下载 .traineddata 文件
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
public class Test {
public static void main(String[] args) throws TesseractException {
long start = System.currentTimeMillis();
System.out.println("开始OCR文字识图,请稍后...");
//加载要识别的图片
File image = new File("D:\\ocr.png");
//设置配置文件夹位置、识别语言、识别模式
Tesseract tesseract = new Tesseract();
tesseract.setDatapath("/resources/tessdata");
//设置识别语言为中文简体,(如果要设置为英文可改为"eng")
tesseract.setLanguage("eng");
// tesseract.setLanguage("chi_sim");
//使用 OSD 进行自动页面分割以进行图像处理
tesseract.setPageSegMode(1);
//设置引擎模式是神经网络LSTM引擎
tesseract.setOcrEngineMode(1);
//开始识别整张图片中的文字
String result = tesseract.doOCR(image);
//如果只想识别图片中特定部分的文字,可以像下面这样选定长宽范围识别:
//String result = tesseract.doOCR(image, new Rectangle(300, 200));
long time = System.currentTimeMillis() - start;
System.out.println("识别结束,耗时:" + time + " 毫秒,识别结果如下:");
System.out.println(result);
}
}
maven引入
<!-- TesseractOCR-->
<dependency>
<groupId>net.sourceforge.tess4j</groupId>
<artifactId>tess4j</artifactId>
<version>5.8.0</version>
</dependency>