【Java-TesseractOCR】通过Java实现OCR

通过Java实现OCR

一、TesseractOCR

本文使用的是TesseractOCR进行识别

二、引入pom

xml 复制代码
 <dependency>
    <groupId>net.sourceforge.tess4j</groupId>
    <artifactId>tess4j</artifactId>
    <version>5.8.0</version>
</dependency>

训练集下载地址

三、引入训练集

训练集下载地址

下载训练集 放入到 resources下的tessdata文件夹下

三、使用

java 复制代码
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
import java.io.File;

/**
 * @author Mr.NaCl
 * @since 2024/2/5
 */
public class OCRServer {

    public static void main(String[] args) throws TesseractException {
        long start = System.currentTimeMillis();
        System.out.println("开始OCR文字识图,请稍后...");
        //加载要识别的图片
        File image = new File("14-OCR/src/main/resources/test.jpg");
        //设置配置文件夹位置、识别语言、识别模式
        Tesseract tesseract = new Tesseract();
        tesseract.setDatapath("14-OCR/src/main/resources/tessdata");
        //设置识别语言为中文简体,(如果要设置为英文可改为"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);
    }
}
相关推荐
峥嵘life14 分钟前
Android16 系统 APEX 模块说明
android·大数据·开发语言
2601_9620715719 分钟前
数据库系统架构与DBMS功能探微:现代信息时代数据管理的关键
java·开发语言·数据库
————A20 分钟前
Agent 文件处理中间件
开发语言·javascript·ecmascript
梦想的旅途220 分钟前
如何高效调用企业微信通讯录API管理组织架构
java·开发语言·企业微信
whcyhhh37 分钟前
头歌实践教学平台:大数据存储2023(十三3)
大数据·开发语言·python
2601_962065251 小时前
2.启动mysql容器
java·数据库·mysql
2601_962065491 小时前
PHP For 循环
android·java·php
2601_962201721 小时前
Java进阶,集合,Colllection,常见数据结构
java·数据结构·windows
彷徨而立1 小时前
【C/C++】多线程读写普通 int 变量的一些问题
java·c语言·c++
卓怡学长1 小时前
w175基于springboot校园二手物品交易平台
java·spring boot·spring·maven·intellij-idea