Tess4J 简单使用入门[通俗易懂]

Tess4J 简单使用入门[通俗易懂]Tesseract-OCR支持中文识别,并且开源和提供全套的训练工具,是快速低成本开发的首选。而Tess4J则是Tesseract在JavaPC上的应用。在英文和数字识别中性能还是不错的,但是在中文识别中,无论速度还是识别率还是较弱,建议有条件的话,针对场景进行训练,会获得较好结果,本文仅对目前Tess4J的用法进行介绍。———————本文来自jian_cheng_90的CSDN博客,全文地址请点击:https://blog.csdn.net/risky

大家好,又见面了,我是你们的朋友全栈君。

一.简介

Tesseract-OCR支持中文识别,并且开源和提供全套的训练工具,是快速低成本开发的首选。而Tess4J则是Tesseract在Java PC上的应用。在英文和数字识别中性能还是不错的,但是在中文识别中,无论速度还是识别率还是较弱,建议有条件的话,针对场景进行训练,会获得较好结果,本文仅对目前Tess4J的用法进行介绍

二.入门教程

1.去Tess4J官网下载最新的源码包

Tess4J官网.

我们现在最新的是3.4.8

Tess4J-3.4.8-src下载地址.

2.创建Java项目并配置Tess4J

  • 下载下来的Tess4J目录一般都是如下

在这里插入图片描述

  • dist:综合jar,不需要配置dll
  • lib:所有相关的jar包
  • src:源码包
  • tessdata:训练好的字体模型
  • test:测试用例

这里要把dist下的jar包和lib下的jar包都要导入Java项目中

3.一个Demo

 		File file = new File("D:\\1.jpg");
        ITesseract instance = new Tesseract();
        instance.setDatapath("...");//设置你的Tess4J下的tessdata目录
        instance.setLanguage("eng");//指定需要识别的语种
        String result = instance.doOCR(file);
        System.out.println(result);
  • 其中语种就在tessdata目录下

在这里插入图片描述

  • 你如果要识别的是其他语种
  • 可以去其他语种.把对应的traineddata下载放这里
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132239.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Qmake VS Cmake

    Qmake VS Cmake用cmake构建Qt工程(对比qmake进行学习)cmakevsqmakeqmake是为Qt量身打造的,使用起来非常方便cmake使用上不如qmake简单直接,但复杂换来的是强大的功能内置的out-ofsource构建。(目前QtCreator为qmake也默认启用了该功能。参考:浅谈qmake之sha

    2022年5月20日
    58
  • java指定长度数组长度_Java声明数组时不能指定其长度[通俗易懂]

    java指定长度数组长度_Java声明数组时不能指定其长度[通俗易懂]声明数组平均折旧法包括长度TheFirstFoliowaspublishedafterthedeathofW.Shakespeare.声明数组W.Shakespearemightbeinfluencedby______inwritingHamlet.长度______areW.Shakespeare’sgreattragedies.声明数组Hamlet…

    2022年6月2日
    36
  • androidX_android targetSdkVersion

    androidX_android targetSdkVersionAndroidX简介:Android9.0(APIlevel28)发布时,AndroidX也作为一个新的支持库发布出来了。AndroidX时Jetpack的一部分,它包含了现有的支持库和最新的

    2022年8月6日
    3
  • django动态路由_路由器和转换器的区别

    django动态路由_路由器和转换器的区别自定义路径转换器有时候上面的内置的url转换器并不能满足我们的需求,因此django给我们提供了一个接口可以让我们自己定义自己的url转换器django内置的路径转换器源码解析在我们自定义路由转

    2022年7月29日
    6
  • string和stringbuffer的区别面试题_stringbuffer转为string

    string和stringbuffer的区别面试题_stringbuffer转为stringString和StringBuffer的区别String:是对象不是原始类型。为不可变对象,一旦被创建,就不能修改它的值。对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值保存进去。String是final类,即不能被继承。StringBuffer:是一个可变对象,当对它进行修改的时候不会像String那样重新建立对象。它只…

    2022年4月19日
    46
  • 一阶倒立摆分析_倒立摆受力分析

    一阶倒立摆分析_倒立摆受力分析摆的运动是两种运动的叠加:1.平动,包含x方向和y方向。2.转动,转轴为质心。尽管物理上的转轴是其端点,但这个端点同时也是摆的受力点。在端点(非中心)施加垂直于摆臂的力,摆将绕其质心转动。  因为摆的重力作用于其转轴(质心),因此摆自身的重力对摆不施加力矩。这可以算作将质心作为转轴来分析的一个优势。   …

    2022年8月18日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号