Tess4J简介

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

使用教程

1.去Tess4J官网下载源码包

前往:Tess4J 官网下载最新的Tess4J的源码包,其中包含Java代码,jar,dll等,大概结构如下:
image

2.创建Java项目并配置

网上不少文章会提到DLL,其实在最新的版本,如果源码包里面有dist路径,则只需要配置该jar包和lib中相关的jar即可。

注意点1:将dist/tess4j-3.4.0.jar 及 lib/*.jar加入项目

注意点2:tessdata一定要配置到根目录,否则需要在代码中指定dataPath

  ITesseract instance = new Tesseract();
instance.setDatapath("the absolute path of tessdata");

注意点3:无需将源码包拷贝到项目中,可能会出错

所以最终的目录结构如下:

3.尝试写一个Demo

可以按照官网的示例,直接编写一个Demo试一下效果:

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("test_chinese_07.PNG");long startTime = System.currentTimeMillis();String ocrResult = instance.doOCR(imgDir);// 输出识别结果System.out.println("OCR Result: \n" + ocrResult + "\n 耗时:" + (System.currentTimeMillis() - startTime) + "ms");}
}

其中注意三处:

    1. tessdata放在与src同级的根目录下,否则需要指定dataPath
    1. 如果需要识别英文之外的语种,需要指定识别语种;
    1. 其他语种下载地址:其他语种下载地址

转载于:https://www.cnblogs.com/dgwblog/p/8690906.html

Tess4J OCR简单使用教程相关推荐

  1. Paddle OCR Win 11下的安装和简单使用教程

    Paddle OCR Win 11下的安装和简单使用教程 对于中文的识别,可以考虑直接使用Paddle OCR,识别准确率和部署都相对比较方便. 环境搭建 目前PaddlePaddle 发布到v2.4 ...

  2. vim简单使用教程【转】

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

  3. java map set_java中Map、Set、List的简单使用教程(快速入门)

    Map.Set.List List的常用方法 1.创建 List list = new ArrayList<>(); List list = new LinkedList<>( ...

  4. 【转】正则表达式简介及在C++11中的简单使用教程

    [转]正则表达式简介及在C++11中的简单使用教程 正则表达式Regex(regular expression)是一种强大的描述字符序列的工具.在许多语言中都存在着正则表达式,C++11中也将正则表达 ...

  5. PHP在WPS中的应用,PHP+Laravel的简单应用教程【ajax的使用】,wps的使用教程

    PHP+Laravel的简单应用教程[ajax的使用]PHP·拉弗尔的简单应用教程[阿贾克斯的使用],下面由Laravel框架教程栏目给大家介绍PHP Laravel的简单应用教程[阿贾克斯的使用], ...

  6. 史上最简单MySQL教程详解(进阶篇)之存储过程(一)

    史上最简单MySQL教程详解(进阶篇)之存储过程(一) 史上最简单MySQL教程详解(进阶篇)之存储过程(一) 什么是存储过程 存储过程的作用 如何使用存储过程 创建存储过程 DELIMITER改变分 ...

  7. 史上最简单MySQL教程详解(进阶篇)之存储引擎介绍及默认引擎设置

    什么是存储引擎? MySQL存储引擎种类 MyISAM 引擎 InnoDB引擎 存储引擎操作 查看存储引擎 存储引擎的变更 修改默认引擎 什么是存储引擎? 与其他数据库例如Oracle 和SQL Se ...

  8. IDEA简单配置教程

    IDEA简单配置教程 --做好前期配置工作,后期少走弯路. 创建模块(Module) 设置(Settings) 设置主题 窗体及菜单字体及大小 设置编辑区主题 通过插件(plugins)更换主题 设置 ...

  9. kindle的xray怎么用_Xray简单使用教程

    Xray简单使用教程 0X00下载 xray 为单文件二进制文件,无依赖,也无需安装,下载后直接使用. 下载地址为: 注意: 不要直接 clone 仓库,xray 并不开源,仓库内不含源代码,直接下载 ...

  10. navicat fo mysql 教程_Navicat For MySQL的简单使用教程

    1.前提是必须先安装好MySQL数据库(Mac下安装MySQL数据库见前一篇) 2.安装Navicat 3.点击navicate左上角:连接->MySQL->先测链接下,如果提示连接成功, ...

最新文章

  1. Gentoo 安装日记 16(编译内核)
  2. python顺时针打印矩阵_python实现顺时针打印矩阵
  3. h5实现网页内容跟随窗口大小移动_HTML5 移动页面自适应手机屏幕四类方法
  4. Davinci DM6446开发攻略-UBOOT-2009.03移植2 nand flash的烧写
  5. linux如何用rz上传文件,Linux使用rz命令上传文件
  6. 1.EXTJS Row Editor Grid 点取消时插入的新行 的解决方法
  7. 动态规划算法入门---java版
  8. 关于layui下select下拉框不显示问题解决办法
  9. python支持向量机_支持向量机(SVM)Python实现
  10. aws java mysql_java - AWS EC2 / MySql - spring boot无法从datasource确定jdbc url - 堆栈内存溢出...
  11. opencv画线和文字
  12. Mp3原理及文件格式解析(from)
  13. 计算机会计学实验报告,计算机会计学实验报告5(UFO报表管理).docx
  14. 林轩田 《机器学习基石》学习笔记
  15. GG 。B的搜索技巧?
  16. 计算机病毒存于什么,计算机病毒防治体系存在的问题有什么
  17. YAPI,一个神奇的接口管理平台
  18. c语言 tls单向认证 验证证书,使用wireshark观察SSL/TLS握手过程--双向认证/单向认证...
  19. OSChina 周一乱弹 —— 大学老教授说你媳妇在幼儿园
  20. 胖客户端程序RCP与瘦客户端程序TCP

热门文章

  1. 光环PMP 串讲课--项目整合管理
  2. python读取cad元素_python3读取autocad图形文件.py实例
  3. (C#.net)CAD二次开发 polyline多段线/line直线/曲线 break打断的方法
  4. 轻松学习Linux之入门篇
  5. qmake,make,nmake
  6. 【OR】YALMIP 几何规划
  7. 3dmax:3dmax三维VR渲染设置(VR间接照明GI栏、【VR间接(全局)照明】发光贴图、光子贴图、BF算法、灯光贴图、灯光缓存)之详细攻略(切记收藏!)
  8. 网站生成EXE文件运行——PHP网站打包工具PHPWAMP
  9. Linux基础入门(详细版)
  10. 计算机房 噪声 标准,机房的噪音检测标准及治理方法