JAVA识别图片中的文字

最近在需求上有一个识别图片中的文字功能,查询了不少资料,发现可以使用tess4j识别图像文字:话不多说现在开始:

首先创建Spring Boot项目:导入以下依赖

  <groupId>net.sourceforge.tess4j

  <artifactId>tess4j

  <version>3.2.1

</dependency>

然后去下面的网址下载一个tess4j源码包:https://sourceforge.net/projects/tess4j/

在下载中文识别包:https://github.com/tesseract-ocr/tessdata/blob/master/chi_sim.traineddata

把下载好的中文识别包放入到tessdata包下

好了现在来编写测试类

=======================================================================

import net.sourceforge.tess4j.ITesseract;

import net.sourceforge.tess4j.Tesseract;

import net.sourceforge.tess4j.TesseractException;

import java.io.File;

/**

* 类说明 :图片转文字功能

*/

public class OCRDemo {

public static void main(String[] args)throws TesseractException {

ITesseract instance =new Tesseract();

        //如果未将tessdata放在根目录下需要指定绝对路径

        //instance.setDatapath("the absolute path of tessdata");

        //如果需要识别英文之外的语种,需要指定识别语种,并且需要将对应的语言包放进项目中

        instance.setLanguage("chi_sim");

        // 指定识别图片

        File imgDir =new File("src\\main\\resources\\jpg\\测试.png");

        long startTime = System.currentTimeMillis();

        String ocrResult = instance.doOCR(imgDir);

        // 输出识别结果

        System.out.println("OCR Result: \n" + ocrResult +"\n 耗时:" + (System.currentTimeMillis() - startTime) +"ms");

    }

}

====================================================================

效果如下


但是有个缺点是tess4j的中文识别效率相对低下,后续如果有新增的再次更新吧,如果对你有帮助的话,点个❤吧!!!

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,370评论 18 399
  • 使用之前需要获取对应的项目API_KEY,SECRET_KEY,这些参数在使用API的时候必须用到,用于生成acc...
    高级java架构师阅读 5,313评论 1 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,120评论 19 139
  • 文/海上伯爵 怀远望山岳, 高峁现石城。 烽烟鸣镝响, 大漠起雄英。 欢乐花为果, 平安血染成。 桑田沧海变, 神...
    健康延安阅读 3,214评论 2 3
  • 不知道从什么时候开始,贫富差距越来越大,且受教程度的差距也越来越大。我发现现在越是有钱的,特别是家族形的孩子,基本...
    渭流拥嘉木阅读 1,616评论 0 0

友情链接更多精彩内容