JAVA使用Tess4J进行ocr识别,并切换中文

JAVA使用Tess4J进行ocr识别,并切换中文JAVA使用Tess4J进行ocr识别,并切换中文

大家好,又见面了,我是你们的朋友全栈君。

一、电脑中安装 tesseract ;可以参考另一篇文章:

Mac上安装 tesseract_MR.骑士道-CSDN博客_mac tesseract

二、下载 tess4j

Download Tess4J from SourceForge.net

三、创建一个普通的maven项目

创建项目如果不会的话,可以看我的另一篇springboot 项目创建:mac idea 创建 springboot 项目_MR.骑士道-CSDN博客

四、项目中倒入 tess4j/lib 下的所有jar包 和 tess4j/dist/tess4j-3.4.8.jar

JAVA使用Tess4J进行ocr识别,并切换中文

JAVA使用Tess4J进行ocr识别,并切换中文

JAVA使用Tess4J进行ocr识别,并切换中文

五、编写测试代码

package com.tess4jdemo;


import java.io.File;
import java.io.IOException;

import net.sourceforge.tess4j.ITesseract;
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;



/**
 * @ClassName Test
 * @Description 测试类
 * @Author WangJing
 * @Date 2021/5/27 10:49 上午
 * @Version V1.1.0
 */
public class Test {

    public static void main(String[] args){
        long startTime = System.currentTimeMillis();

        String imgPath = "/Users/wangjing/Desktop/ocr/test.jpeg";//图片地址

        File file = new File(imgPath);
        ITesseract instance = new Tesseract();

        String tessData = "/Users/wangjing/Desktop/ocr/Tess4J";//tess4j 解压地址
        File directory = new File(tessData);
        String courseFile = null;
        try {
            courseFile = directory.getCanonicalPath();
        } catch (IOException e) {
            e.printStackTrace();
        }

        //设置训练库的位置
        instance.setDatapath(courseFile + "//tessdata");

        instance.setLanguage("eng");//chi_sim :简体中文, eng	根据需求选择语言库
        String result = null;
        try {
            result =  instance.doOCR(file);
        } catch (TesseractException e) {
            e.printStackTrace();
        }
        System.out.println("result: ");
        System.out.println(result);
        long endTime = System.currentTimeMillis();
        System.out.println("执行时间:" + (endTime - startTime));
    }

}

六、运行查看效果

6.1、原图片

JAVA使用Tess4J进行ocr识别,并切换中文

6.2、识别效果

JAVA使用Tess4J进行ocr识别,并切换中文

七、汉化

7.1、发现左上角仅有的几个汉字没有识别成功;接下来我们要下载汉化包:

https://raw.githubusercontent.com/tesseract-ocr/tessdata/master/chi_sim.traineddata

7.2、然后放到我们 Tess4j/tessdata 目录下;然后程序中语言改为中文:instance.setLanguage(“chi_sim”);  看下效果,非常完美

JAVA使用Tess4J进行ocr识别,并切换中文

注:以上内容仅提供参考和交流,请勿用于商业用途,如有侵权联系本人删除!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/136422.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号