概述
一:首先搭建springboot 架构
这个就不展示了,大家自己搭建即可
二:引用 tess4j API
<!-- https://mvnrepository.com/artifact/net.sourceforge.tess4j/tess4j -->
<dependency>
<groupId>net.sourceforge.tess4j</groupId>
<artifactId>tess4j</artifactId>
<version>4.3.1</version>
</dependency>
三:直接上代码
package com.**.util.ocr;
import net.sourceforge.tess4j.Tesseract;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
/**
* @Class Tess4jOCRAPI
* @Author 作者姓名
* @Version 1.0
* @Date 创建时间:2020-06-16 22:31
* @Copyright Copyright by
* @Direction 类说明
*/
public class Tess4jOCRAPI {
public static Logger logger = LoggerFactory.getLogger( Tess4jOCRAPI.class );
/**
* TODO 图片识别-通过图片并指定语言,获取识别结果
* @param srImage 图片路径
* @param ZH_CN 是否使用中文训练字库,true-是
* @return 识别结果
*/
public static String FindOCR(String srImage, boolean ZH_CN) {
try {
double start=System.currentTimeMillis();
File imageFile = new File(srImage);
if (!imageFile.exists()) {
return "图片不存在";
}
BufferedImage textImage = ImageIO.read(imageFile);
Tesseract instance = new Tesseract();
//windows 需要配置环境变量有TESSDATA_PREFIX = C:Program FilesTesseract-Tess4jOCRAPItessdata 注意:配置完成后需要重启系统
//Linux同理
instance.setDatapath( System.getenv("TESSDATA_PREFIX") ); //设置训练字库的位置
if (ZH_CN)
instance.setLanguage("chi_sim");//中文识别
else
instance.setLanguage("eng"); //英文识别
String result = null;
result = instance.doOCR(textImage);
double end = System.currentTimeMillis();
logger.info("本次识别耗时:{} ms " , (end-start) );
return result;
} catch (Exception e) {
e.printStackTrace();
return "发生未知错误";
}
}
public static void main(String[] args) throws Exception {
//1.1 只需要安装完并做好基础配置即可 - 第一篇即可
String path = "G:\360MoveData\Users\Administrator\Desktop\OCR\样本\30621.png" ;
File remoteFile = new File(path);
String result=FindOCR( remoteFile.toString() ,false );
System.out.println(result);
//1.2 只需要安装完并做好基础配置即可 - 第一篇+第二篇 即可
path = "G:\360MoveData\Users\Administrator\Desktop\OCR\样本\books.jpg" ;
remoteFile = new File(path);
result=FindOCR( remoteFile.toString() ,true );
System.out.println(result);
}
}
四:运行看效果
标准的图片识别准确度不错的,但是这个效率很不好看。
最后
以上就是爱笑海燕为你收集整理的Tesseract5.0 图像识别本地服务 四 【Java服务API】的全部内容,希望文章能够帮你解决Tesseract5.0 图像识别本地服务 四 【Java服务API】所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复