java文字、图片识别之tess4j Tesseract-OCR

 

目录

Tess4j OCR图像识别框架集成

1.使用

2.下载源码包

3.引用语言包

4.代码示例

5.效果

 运行结果

英文 测试


 

Tess4j OCR图像识别框架集成

Tesseract,
一款由HP实验室开发由Google维护的开源
OCR(Optical Character Recognition , 光学字符识别)引擎,
与Microsoft Office Document Imaging(MODI)相比,
我们可以不断的训练的库,使图像转换文本的能力不断增强;
如果团队深度需要,还可以以它为模板,开发出符合自身需求的OCR引擎。
Tess4J 是Java (JNA) 对 Tesseract OCR API 的封装。

1.使用

创建java项目。引入maven依赖

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

2.下载源码包

中文库地址:tessdata/chi_sim.traineddata at main · tesseract-ocr/tessdata · GitHub

点击download 保存到E盘

 

 

 

其他语言包地址:https://github.com/tesseract-ocr/tessdata

3.引用语言包

在任意地方创建一个文件夹tessdata,
将下载的chi_sim.traineddata(中文) 和 eng.traineddata(英文)语言包存放在该目录下,
也可以直接存放到自己项目的resources/tessdata目录下。

这里我放到了e盘下。

4.代码示例


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

import java.io.File;

/**
 * @author :c
 **/

public class Tess4jDemo {

    public static void main(String[] args) throws TesseractException {
        final ITesseract instance = new Tesseract();
        instance.setDatapath("E:\\tessdata");
        instance.setLanguage("chi_sim");

        File imageLocation = new File("E:\\verifyImg");
        for(File image : imageLocation.listFiles()){
            System.out.println(image.getName()+" -->"+instance.doOCR(image));
        }
    }
}

5.效果

我们随便截一张图片保存到代码指定目录中:E:\verifyImg

 

 运行结果

英文 测试

 运行结果

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Tesseract-OCR是一个开源的OCR识别引擎,可以识别多种语言文字。在Java中使用Tesseract-OCR可以通过以下步骤实现: 1. 安装Tesseract-OCR引擎 可以从Tesseract-OCR官网下载安装包进行安装,也可以通过命令行安装。在Windows系统下,可以通过以下命令安装: ``` choco install tesseract ``` 在Linux系统下,可以通过以下命令安装: ``` apt-get install tesseract-ocr ``` 2. 导入Tesseract-OCRJava API 可以通过在pom.xml文件中添加以下依赖来导入Tesseract-OCRJava API: ``` <dependency> <groupId>com.github.tesseract-ocr</groupId> <artifactId>tess4j</artifactId> <version>4.5.4</version> </dependency> ``` 3. 使用Tesseract-OCR进行文字识别 可以通过以下代码段来实现使用Tesseract-OCR进行文字识别: ``` File imageFile = new File("image.png"); Tesseract tesseract = new Tesseract(); tesseract.setDatapath("/usr/share/tesseract-ocr/tessdata"); String result = tesseract.doOCR(imageFile); System.out.println(result); ``` 其中,第一行代码创建了一个File对象,表示待识别的图像文件。第二行代码创建了一个Tesseract对象,并设置了Tesseract-OCR的数据路径。第三行代码调用doOCR()方法进行文字识别,并将识别结果存储到result字符串中。最后一行代码将识别结果输出到控制台。 需要注意的是,Tesseract-OCR对图像的分辨率、亮度、对比度等要求较高,因此在进行文字识别前,需要对图像进行预处理,以提高识别准确率。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值