Java调用tess4j完成 OCR 文字识别

1,新建 maven 工程

2,引入依赖

<dependency>

<groupId>net.sourceforge.tess4j</groupId>

<artifactId>tess4j</artifactId>

<version>5.11.0</version>

</dependency>

3,安装 tesseract-ocr

下载地址https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-5.3.3.20231005.exe

其他版本可以查看 https://digi.bib.uni-mannheim.de/tesseract/

安装过程中一直点下一步,建议取消语言包选项,后面手动下载

可能需要安装visual c++ 2015-2019 redistributable或最新版visual c++ 2015-2022 redistributable

4,下载语言包

https://digi.bib.uni-mannheim.de/tesseract/tessdata_fast/

下载enm.traineddata和chi_sim.traineddata,复制粘贴到C:\Program Files\Tesseract-OCR\tessdata

5,调用 Tesseract API 完成文本识别

import java.io.File;

import net.sourceforge.tess4j.Tesseract;

public class Tess4jDemo {

public static void main(String[] args) {

// 创建实例

Tesseract instance = new Tesseract();

// 设置语言包路径

instance.setDatapath("C:\\Program Files\\Tesseract-OCR\\tessdata");

// 设置语言

instance.setLanguage("chi_sim");

// 设置文本文件

File file = new File("C:\\Users\\user1\\Desktop\\截图.PNG");

try {

// 文本识别

String result = instance.doOCR(file);

System.out.println(result);

} catch (Exception e) {

e.printStackTrace();

}

}

}

示例代码见

https://download.csdn.net/download/daqinzl/89221358

相关推荐
不想写bug呀25 分钟前
多线程案例——单例模式
java·开发语言·单例模式
心平愈三千疾1 小时前
通俗理解JVM细节-面试篇
java·jvm·数据库·面试
我不会写代码njdjnssj1 小时前
网络编程 TCP UDP
java·开发语言·jvm
第1缕阳光1 小时前
Java垃圾回收机制和三色标记算法
java·jvm
funnyZpC1 小时前
好用的文档工具👉smart-doc
java
一只叫煤球的猫2 小时前
🔥 同事混用@Transactional和TransactionTemplate被我怼了,三种事务管理到底怎么选?
java·spring boot·后端
华子w9089258599 天前
基于 SpringBoot+JSP 的医疗预约与诊断系统设计与实现
java·spring boot·后端
feifeigo1239 天前
Java 正则表达式高级用法
java·mysql·正则表达式
empti_9 天前
Java中的List实现类详解
java
亲爱的非洲野猪9 天前
一次性理解Java垃圾回收--简单直接方便面试时使用
java·jvm·面试