欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

java使用tesseract-ocr进行图片文字识别

程序员文章站 2022-03-02 13:49:06
...

1 加依赖

<dependency>
			    <groupId>net.sourceforge.tess4j</groupId>
			<artifactId>tess4j</artifactId>
			<version>3.4.8</version>
		</dependency>

2 在src同组目录新建tessdata文件夹(很重要)

3 下载chi_sim.traineddata文件并放到tessdata文件夹下

链接:https://pan.baidu.com/s/14c2KlfZw68iPdfpiMbZyDw 
提取码:7rkm

4 java代码示例

import java.io.File;
import net.sourceforge.tess4j.ITesseract;
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;

/**
 * java图像识别
 * likang 
 * 2018-7-13
 */
public class OCRDemo {

    public static void main(String[] args) throws TesseractException {

        ITesseract instance = new Tesseract();
        //如果未将tessdata放在根目录下需要指定绝对路径
        //设置训练库的位置
//        instance.setDatapath("the absolute path of tessdata");

        //如果需要识别英文之外的语种,需要指定识别语种,并且需要将对应的语言包放进项目中
        // chi_sim :简体中文, eng    根据需求选择语言库
        instance.setLanguage("chi_sim");

        // 指定识别图片
        File imgDir = new File("D:\\imageOCR\\test.jpg");
        long startTime = System.currentTimeMillis();
        String ocrResult = instance.doOCR(imgDir);

        // 输出识别结果
        System.out.println("识别结果: \n" + ocrResult + "\n 耗时:" + (System.currentTimeMillis() - startTime) + "ms");
    }

}

 

相关标签: 解决方案