环境:
java:jdk1.8
os:windows10
tesseract:4.1.0
step1:安装配置tesseract
a.下载地址:https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-w64-setup-v4.1.0.20190314.exe
可以在同目录下载最新的版本
b.双击下载后的文件开始安装
下载后将其安装到C:\Program Files\Tesseract-OCR,注意在安装过程中下载中文语言包
c.将C:\Program Files\Tesseract-OCR加到系统PATH变量中
d.新建一个值为C:\Program Files\Tesseract-OCR\tessdata的系统变量TESSDATA_PREFIX
e.打开一个命令窗口输入以下命令 >tesseract --list-langs
List of available languages (11):
chi_sim
...
出现上面chi_sim说明tesseract安装成功!
step2:java调用tesseract
编写如下测试类:TesseractUtil.java
package com.bry.tesseract; import java.io.File; import java.util.ArrayList; import java.util.List; public class TesseractUtil { public static String identifyTextFromPicture(String tessPath, String sourceFileName, String savePath, String language) { ProcessBuilder pb = new ProcessBuilder(); pb.directory(new File(tessPath)); pb.environment().put("TESSDATA_PREFIX", tessPath + File.separatorChar + "tessdata"); pb.redirectErrorStream(true); File sourceFile = new File(sourceFileName); List<String> cmd = new ArrayList<String>(); String ocr_result_filename = sourceFile.getName().substring(0, sourceFile.getName().lastIndexOf(".")); cmd.add(pb.directory().getAbsolutePath() + File.separatorChar + "tesseract"); cmd.add(sourceFile.getAbsolutePath()); cmd.add(savePath + File.separatorChar + ocr_result_filename); cmd.add("-l"); cmd.add(language); pb.command(cmd); try { Process process = pb.start(); if (process.waitFor() == 0) { return savePath + File.separatorChar + ocr_result_filename + ".txt"; } } catch (Exception e) { e.printStackTrace(); } return null; } public static void main(String[] arags) { String resultFile = TesseractUtil.identifyTextFromPicture("C:/Program Files/Tesseract-OCR", "D:/temp/test.png", "d:/temp", "chi_sim"); System.out.println(resultFile); } }
运行后在D:/temp/test.txt中看识别结果
相关推荐
java文件使用:使用Tesseract方法可通过pom方式和jar包方式; 注意:使用前先查看“训练步骤”的那个文档,里面有详细说明,一定要查看;重要!!! 注意:使用前先查看“训练步骤”的那个文档,里面有详细说明,...
一个Google支持的开源的OCR图文识别开源项目。去持多语言(当前3.02 版本支持包括英文,简体中文,繁体中文),支持...可以参考网上的相关资料进行对Tesseract字符识别进行样本训练,通过使用训练后的语言库会提高识别精度。
总结来说,这个Java实现Tesseract-OCR的示例展示了如何通过Tess4J库在Java项目中集成Tesseract OCR引擎,进行中文文字识别。通过这个过程,你可以了解到环境配置、库的使用、API调用以及如何优化识别效果等关键步骤...
首先,让我们了解一下Java调用Tesseract-OCR的基本步骤: 1. **环境准备**:在进行Java项目之前,你需要确保在你的计算机上安装了Tesseract-OCR的可执行文件`tesseract.exe`。这个文件通常可以从Tesseract的官方...
使用Tesseract-OCR需要将图片文件转换为tif格式,然后使用Tesseract-OCR进行识别。 九、Java调用Tesseract-OCR的优点 Java调用Tesseract-OCR具有多种优点,包括高效、准确、灵活等。Tesseract-OCR可以识别多种语言...
本资源包提供了一种解决方案:使用Java调用OCR(Optical Character Recognition,光学字符识别)技术来识别验证码。这里主要涉及的知识点是Tesseract OCR引擎及其在Java环境中的应用。 Tesseract OCR是一个开源的...
在JAVA中使用Tesseract,开发者需要引入Tesseract的JAVA绑定库,例如tess4j,它可以提供一个简单的API来调用OCR引擎。 JavaCV则是一个JAVA的计算机视觉库,它集成了多个开源计算机视觉框架,如OpenCV。OpenCV提供了...
在使用Tesseract OCR Java版时,你需要首先了解以下几个关键概念: 1. **光学字符识别(OCR)**:OCR是一种技术,能够将扫描的文档、图片或屏幕截图中的文本转换为机器编辑的格式。Tesseract OCR是其中的一种工具,...
在Java环境中,我们可以使用Tesseract的Java绑定库,如`tess4j`,来调用这个OCR引擎。 1. **安装Tesseract OCR**:在开始Java编程前,你需要先下载并安装Tesseract OCR。这里提到的是3.02.02版本,但通常建议使用...
4. **使用Tesseract Java API**: 要调用Tesseract,你可以使用`tess4j`库,这是一个Java绑定的Tesseract API。在`src`目录下创建对应的Java类,导入必要的库,然后编写代码来初始化Tesseract对象,指定语言并执行OCR...
在 Java 中调用 OCR 进行图片识别需要使用到 Tesseract-OCR 库,Tesseract-OCR 是一个开源的 OCR 库,由 Google 开发和维护。Tesseract-OCR 支持多种语言的文字识别,包括中文、英文、法语、德语等。 要使用 Java ...
本篇文章将重点探讨如何使用Tesseract识别中文,并结合`jai_imageio-1.1-alpha.jar`和`swingx-1.0.jar`这两个Java库来增强其功能。 首先,让我们了解Tesseract的基本工作原理。Tesseract采用了一种基于深度学习的...
在Java项目中使用Tesseract,我们需要通过JTessBoxEditor或类似的工具预处理图片,创建训练数据以提高识别准确性。此外,还需要引入Tesseract的Java绑定库,如`tesseract-ocr-for-java`,这样我们就可以在Java代码中...
高度可定制:用户可以训练Tesseract来识别新的字体或优化特定语言的识别。 多种输出格式:Tesseract 可以输出普通文本、hOCR(带有布局信息的HTML)、PDF等格式。 集成易用:可以通过命令行使用,也可通过其API集成...
3. **Tesseract集成**:通过JNI(Java Native Interface)或Java的`ProcessBuilder`调用Tesseract命令行接口,处理图像并获取识别结果。可能还需要配置Tesseract的语言参数,以及预处理图像(如灰度化、二值化)以...
java ocr图片文字识别,使用谷歌 tesseract3.02 OCR引擎以及Leptonica库光学字符识别。使用Java包装程序tes4j和Java应用程序,内有英文库,如果需要其他tesseract3.02字体文件,可以访问...
Java调用Office的MODI(Microsoft Office Document Imaging)识别中文是一项技术挑战,主要涉及Java、MODI组件、Jacob库以及OCR(Optical Character Recognition,光学字符识别)技术。以下是关于这些知识点的详细...
总的来说,Tesseract的识别能力依赖于`tessdata`中的语言库文件,而Tess4J作为Java的接口,让开发者能够在各种应用场景下方便地调用Tesseract的功能。通过深入理解和灵活应用这些工具,我们可以构建高效、准确的文本...
3. **tesseract识别中文的jar-jai_imageio-1.1-alpha.jar**:Java Advanced Imaging Image I/O (JAI Image I/O) 是一个用于读写多种图像格式的Java库。在这个场景中,它可能用于帮助Tesseract处理和读取图像,特别是...
3. **Tesseract API**:Tesseract提供了一套API,可以用于程序化调用。在Python中,可以使用`pytesseract`库来封装这些API。通过API,我们可以设置识别参数,如语言、字典、配置文件等,并获取识别结果。 4. **并发...