SpringBoot+Tess4j实现牛逼的OCR识别工具

本文涉及的产品
自定义KV模板,自定义KV模板 500次/账号
个人证照识别,个人证照识别 200次/月
车辆物流识别,车辆物流识别 200次/月
简介: SpringBoot+Tess4j实现牛逼的OCR识别工具

前言

“等不到风中你的脸颊

眼泪都美到很融洽

等不到掩饰的雨落下

我的眼泪被你察觉”

听着循环的歌曲,写着久违的bug。好吧,还是一天。正好一个小伙伴说,要不要做个工具站玩一下。我就随意的找了个工具站,看了下,发现很多都有文字的OCR识别功能。因此,我想起来之前了解的非常流行的开源的OCR大神级别的项目,Tesseract OCR。

简单介绍

官网如下所示

image.png

https://tesseract-ocr.github.io/

简洁明了,挂在github上的网站。

image.png

详细的不再介绍,感兴趣的,可以进入同志网站:https://github.com/tesseract-ocr/tesseract ,观摩学习。

实操准备

要想在开发中使用,还是需要接入对应的API。image.png

对于开发者来说,提供了众多的Wrapper,来实现Api调用。

image.png

对于Java一名小开发,来讲,还是使用tess4j,作为Api来使用。官网如下:

http://tess4j.sourceforge.net/

可以直接下载jar包,或者采用Maven依赖下载。

<!-- https://mvnrepository.com/artifact/net.sourceforge.tess4j/tess4j -->
<dependency>
   <groupId>net.sourceforge.tess4j</groupId>
   <artifactId>tess4j</artifactId>
   <version>4.5.3</version>
</dependency>

开发实现

First 创建工程

image.png


Second 添加依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.example</groupId>
   <artifactId>test-textocr</artifactId>
   <version>1.0-SNAPSHOT</version>
   <dependencies>
       <!-- https://mvnrepository.com/artifact/net.sourceforge.tess4j/tess4j -->
       <dependency>
           <groupId>net.sourceforge.tess4j</groupId>
           <artifactId>tess4j</artifactId>
           <version>4.5.3</version>
       </dependency>
   </dependencies>
</project>

Third 填写类文件

package ocr;
import net.sourceforge.tess4j.ITesseract;
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.IOException;
/**
* ocr测试.
*
* @author huc_逆天
* @since 2020/8/30 17:42
*/
public class TestTextOcr {
   public static void main(String[] args) throws IOException {
        // 创建实例
       ITesseract instance = new Tesseract();
        // 设置识别语言
       instance.setLanguage("chi_sim");
        // 设置识别引擎
       instance.setOcrEngineMode(1);
        // 读取文件
       BufferedImage image = ImageIO.read(TestTextOcr.class.getResourceAsStream("/2.jpg"));
       try {
            // 识别
           String result = instance.doOCR(image);
           System.out.println(result);
      } catch (TesseractException e) {
           System.err.println(e.getMessage());
      }
  }
}

image.png

Fifth 添加训练语言环境配置

image.png

TESSDATA_PREFIX=F:\tessdata ,变量名,固定,值为官网下载文件  https://github.com/tesseract-ocr/tessdata

Sixth 运行

结果如下:

image.png

可能识别模式,不是很合适,切换下

instance.setOcrEngineMode(0);

image.png

是不是舒服多了,哈哈。识别率瞬间上涨。

大家可以自行测试。

总结

好了,今天就到这了。技术在于折腾。多学习,让自己武装起来,变强大。

目录
相关文章
|
2天前
|
人工智能 文字识别 自然语言处理
Vision Parse:开源的 PDF 转 Markdown 工具,结合视觉语言模型和 OCR,识别文本和表格并保持原格式
Vision Parse 是一款开源的 PDF 转 Markdown 工具,基于视觉语言模型,能够智能识别和提取 PDF 中的文本和表格,并保持原有格式和结构。
40 19
Vision Parse:开源的 PDF 转 Markdown 工具,结合视觉语言模型和 OCR,识别文本和表格并保持原格式
|
1月前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
58 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
2月前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
56 1
SpringBoot入门(7)- 配置热部署devtools工具
|
2月前
|
缓存 IDE Java
SpringBoot入门(7)- 配置热部署devtools工具
SpringBoot入门(7)- 配置热部署devtools工具
55 2
 SpringBoot入门(7)- 配置热部署devtools工具
|
3月前
|
文字识别 安全 Java
SpringBoot3.x和OCR构建车牌识别系统
本文介绍了一个基于Java SpringBoot3.x框架的车牌识别系统,详细阐述了系统的设计目标、需求分析及其实现过程。利用Tesseract OCR库和OpenCV库,实现了车牌图片的识别与处理,确保系统的高准确性和稳定性。文中还提供了具体的代码示例,展示了如何构建和优化车牌识别服务,以及如何处理特殊和异常车牌。通过实际应用案例,帮助读者理解和应用这一解决方案。
|
3月前
|
Java BI API
spring boot 整合 itextpdf 导出 PDF,写入大文本,写入HTML代码,分析当下导出PDF的几个工具
这篇文章介绍了如何在Spring Boot项目中整合iTextPDF库来导出PDF文件,包括写入大文本和HTML代码,并分析了几种常用的Java PDF导出工具。
704 0
spring boot 整合 itextpdf 导出 PDF,写入大文本,写入HTML代码,分析当下导出PDF的几个工具
|
4月前
|
Java 应用服务中间件 Spring
IDEA 工具 启动 spring boot 的 main 方法报错。已解决
IDEA 工具 启动 spring boot 的 main 方法报错。已解决
|
5月前
|
机器学习/深度学习 文字识别 前端开发
基于 Spring Boot 3.3 + OCR 实现图片转文字功能
【8月更文挑战第30天】在当今数字化信息时代,图像中的文字信息越来越重要。无论是文档扫描、名片识别,还是车辆牌照识别,OCR(Optical Character Recognition,光学字符识别)技术都发挥着关键作用。本文将围绕如何使用Spring Boot 3.3结合OCR技术,实现图片转文字的功能,分享工作学习中的技术干货。
263 2
|
5月前
|
文字识别 Java 计算机视觉
【神技解锁】Spring Boot + Tess4J:一图胜千言,瞬间变文字,颠覆你的视觉体验!
【8月更文挑战第29天】本文详细介绍了如何在 Spring Boot 项目中集成 Tess4J,实现高效本地与远程图片的光学字符识别(OCR)处理。通过具体步骤展示了如何添加依赖、配置 OCR 引擎、创建图片处理服务及控制器,并提供了测试方法。这不仅适用于文本识别场景,还可扩展至其他图像处理任务,为项目增添实用功能。
385 1
|
6月前
|
人工智能 文字识别 开发工具
印刷文字识别使用问题之是否支持识别并返回文字在图片中的位置信息
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。