一,tess4j 简单介绍 Tess4J是对tesseract -OCR API.的Java JNA 封装,使java能够通过调用Tess4J的API来使用tesseract -OCR

我有一篇博客也介绍了tesseract -OCR如何使用tesseract -OCR进行图片识别

java代码实现DOS命令使用tesseract -OCR开源引擎实现图片文字识别

二,tess4j环境准备 官网下载tess4j的jar包 https://sourceforge.net/projects/tess4j  解压之后目录结构如下,tess4j的iar包在dist目录里面

三,Eclipse IDE下的代码实现

新建一个java项目

2.导入tess4j的dist文件夹下的tess4j jar包和lib文件夹下的全部jar包,注意,lib下有一个后缀为.properties的文件别导进去了,把那个删除掉就行,你或许会问会用到那么多jar包吗,因为jar包可能依赖于其他iar包,所以最好全导入进去,我遇到过一个错误  java.lang.NoClassDefFoundError com/sun/jna/pointer  编译没出错,运行就出错,最后把所有包导进去就OK了

3.将tess4j解压目录下的tessdata 文件夹复制到已创建的java项目根目录下(便于项目发布和可移植性,并且等会要进行字库引用),并把中文字库放进这个文件夹(如果要进行中文字符识别)

4.新建Tess4jHelper类

package ocr;

import java.awt.image.BufferedImage; import java.io.File;

import javax.imageio.ImageIO;

import net.sourceforge.tess4j.Tesseract;

public class Tess4jHelper {

/**

* 图片识别(一张)

*

* [@param](https://my.oschina.net/u/2303379) imgPath

* [@param](https://my.oschina.net/u/2303379) ZH_CN

* 是否使用中文训练库,true-是

* [@return](https://my.oschina.net/u/556800) 识别结果

*/

public String recognizing(String imgPath, boolean ZH_CN) {

try {

File imageFile = new File(imgPath); // 创建一个图片文件

if (!imageFile.exists()) { // 如果图片不存在,给出提示并返回

return "图片不存在";

}

BufferedImage textImage = ImageIO.read(imageFile); // 将图片加载到内存

Tesseract instance = new Tesseract(); // 创建Tesseract对象

instance.setDatapath(System.getProperty("user.dir") + "tessdata");// 设置训练库路径

if (ZH_CN) //

instance.setLanguage("chi_sim");// 导入中文识别字库

String recognizeResult = null; // 定义变量,接收识别结果

recognizeResult = instance.doOCR(textImage);// 调用识别方法,得到识别结果

return recognizeResult; // 返回识别结果

} catch (Exception e) {

e.printStackTrace();

return "tess4j识别图片时出错!该图片路径为" + imgPath;

}

}

public static void main(String[] args) {

Tess4jHelper tess4jHelper = new Tess4jHelper();

String imgPath = "D:\\images\\test2.png";

String result = tess4jHelper.recognizing(imgPath, true);//中文识别用true 英文识别用false

System.out.println(result);

}

} 5.中文识别对比

英文识别对比

———————————————— 版权声明:本文为CSDN博主「赴前尘」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_36940806/article/details/86299606

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐