不到十行实现javaCV图片OCR文字识别

 更新时间:2021年05月19日 10:19:40   作者:洛阳泰山  
识别图片中的文字,会省很多时间,本文介绍了javaCV图片OCR文字识别,需要的朋友们下面随着小编来一起学习学习吧

spring boot项目pom文件中添加以下依赖 

		<!-- https://mvnrepository.com/artifact/org.bytedeco/javacv-platform -->
		<dependency>
			<groupId>org.bytedeco</groupId>
			<artifactId>javacv-platform</artifactId>
			<version>1.5.5</version>
		</dependency>

单类代码实现,复制到idea编辑器里,右键run运行即可。

OCR方法参数说明,

1.lng 语言类型 分为两种 1.eng 英语 2.chi_sim 中文简体

2.dataPath 语言数据集文件夹路径

3.imagePath 需要识别的图片文件路径

 
import org.bytedeco.javacpp.BytePointer;
import org.bytedeco.leptonica.PIX;
import org.bytedeco.leptonica.global.lept;
import org.bytedeco.tesseract.TessBaseAPI;
 
public class OcrTest {
 
    public static String OCR(String lng,String dataPath,String imagePath) {
        TessBaseAPI api=new TessBaseAPI();
        if (api.Init(dataPath, lng)!=0){
            System.out.println("error");
        }
        PIX image= lept.pixRead(imagePath);
        if (image==null){
            return "";
        }
        api.SetImage(image);
        BytePointer outText=api.GetUTF8Text();
        String result=outText.getString();
        api.End();
        outText.deallocate();
        lept.pixDestroy(image);
        return result;
    }
 
    public static void main(String[] args) {
       String text= OCR("chi_sim", "E:\\traineddata", "C:\\Users\\tarzan\\Desktop\\image\\test5.png");
        System.out.println(text);
    }
}

测试样例结果

test1.jpg

test2.jpg

test3.jpg

test4.jpg

test5.jpg

到此这篇关于不到十行实现javaCV图片OCR文字识别的文章就介绍到这了,更多相关javaCV OCR文字识别内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot用JdbcTemplates操作Mysql实例代码详解

    SpringBoot用JdbcTemplates操作Mysql实例代码详解

    JdbcTemplate是Spring框架自带的对JDBC操作的封装,目的是提供统一的模板方法使对数据库的操作更加方便、友好,效率也不错,这篇文章主要介绍了SpringBoot用JdbcTemplates操作Mysql
    2022-10-10
  • Java设计模块系列之书店管理系统单机版(三)

    Java设计模块系列之书店管理系统单机版(三)

    这篇文章主要为大家详细介绍了Java单机版的书店管理系统设计模块和思想第三章,感兴趣的小伙伴们可以参考一下
    2016-08-08
  • SpringBoot如何实现接口版本控制

    SpringBoot如何实现接口版本控制

    这篇文章主要介绍了SpringBoot如何实现接口版本控制,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • Java冒泡排序简单实现

    Java冒泡排序简单实现

    这篇文章主要介绍了Java冒泡排序简单实现,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Springboot中yml对于list列表配置方式详解

    Springboot中yml对于list列表配置方式详解

    这篇文章主要介绍了Springboot中yml对于list列表配置方式详解,使用@ConfigurationProperties读取yml配置文件过程中会遇到读取yml文件中列表,Config里面使用List集合接收,方法比较简单,需要的朋友可以参考下
    2023-11-11
  • Spring Boot thymeleaf模板引擎的使用详解

    Spring Boot thymeleaf模板引擎的使用详解

    这篇文章主要介绍了Spring Boot thymeleaf模板引擎的使用详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Java三种方法将List转换为Map的实例

    Java三种方法将List转换为Map的实例

    今天小编就为大家分享一篇关于Java三种方法将List转换为Map的实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-10-10
  • 详解Java如何关闭线程以及线程池

    详解Java如何关闭线程以及线程池

    java如何正确关闭线程以及线程池是一个高频的面试题,本文将为大家详细介绍实现的方法与代码,感兴趣的小伙伴快跟随小编一起学习一下
    2022-04-04
  • java的主要特性学习总结

    java的主要特性学习总结

    在本篇文章里小编给大家分享了一篇关于java的主要特性学习总结内容,有兴趣的朋友们可以参考下。
    2020-05-05
  • 剖析Java中线程编程的概念

    剖析Java中线程编程的概念

    这篇文章主要介绍了Java中线程编程的概念,是Java入门学习中的基础知识,需要的朋友可以参考下
    2015-09-09

最新评论