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

相关推荐
曼岛_7 分钟前
[Java实战]Spring Boot + Netty 实现 TCP 长连接客户端及 RESTful 请求转发(二十六)
java·spring boot·tcp/ip
老友@13 分钟前
Spring Data Elasticsearch 中 ElasticsearchOperations 构建查询条件的详解
java·后端·spring·elasticsearch·operations
NaclarbCSDN14 分钟前
Java集合框架
java·开发语言·前端
蟹至之24 分钟前
万字解析:Java字符串
java·字符串·stringbuilder·string·stringbuffer
CircleMouse1 小时前
springboot如何通过提供的注解方式来操作Redis
java·spring boot·redis·spring·mybatis
阿海打酱油1 小时前
idea经常卡顿解决办法
java·ide·intellij-idea
bing_1581 小时前
Spring Boot 项目中什么时候会抛出 FeignException?
java·spring boot·后端
Java&Develop2 小时前
springboot + mysql8降低版本到 mysql5.7
java·spring boot·后端
sg_knight2 小时前
从单体架构到微服务:架构演进之路
java·spring boot·spring·spring cloud·微服务·云原生·架构
静心问道2 小时前
Donut:无OCR文档理解Transformer
深度学习·ocr·transformer