Java OCR tess4j 图片识别技术(三)

article/2025/6/26 4:51:34

先贴代码段

tess4j整个的代码调用到时是蛮简单的。

1.先去官网下载:http://tess4j.sourceforge.net/

我的是Tess4J-3.4.0版,目录如下:
这里写图片描述

2.新建项目,将lib,tessdata,src复制到新建的项目中

3.将lib下的jar包加到build path 中

项目目录如下:
这里写图片描述

接下来就可以写一写测试了:

import java.io.File;import net.sourceforge.tess4j.ITesseract;
import net.sourceforge.tess4j.Tesseract;
import net.sourceforge.tess4j.TesseractException;public class Tess4j {public static void main(String[] args) {//图片所在文件夹testTess4j("E:\\TestCode");}public static void testTess4j(String filePath){File root = new File(filePath);  ITesseract instance = new Tesseract();  try {  File[] files = root.listFiles();  for (File file : files) {  String result = instance.doOCR(file);  String fileName = file.toString().substring(file.toString().lastIndexOf("\\")+1);  System.out.println("图片名:" + file.toString() +" 识别结果:"+result);  }  } catch (TesseractException e) {  System.err.println(e.getMessage());  }  }
}

4.这时候可以运行了,但是会报错,如下:

Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'libtesseract304': Native library (win32-x86-64/libtesseract304.dll) not found in resource path ([file:/G:/Eclipse/Demo/bin/, file:/G:/Eclipse/Demo/lib/commons-beanutils-1.9.2.jar, file:/G:/Eclipse/Demo/lib/commons-io-2.4.jar, file:/G:/Eclipse/Demo/lib/commons-logging-1.2.jar, file:/G:/Eclipse/Demo/lib/ghost4j-1.0.1.jar, file:/G:/Eclipse/Demo/lib/hamcrest-core-1.3.jar, file:/G:/Eclipse/Demo/lib/itext-2.1.7.jar, file:/G:/Eclipse/Demo/lib/jai-imageio-core-1.3.1.jar, file:/G:/Eclipse/Demo/lib/jna-4.2.2.jar, file:/G:/Eclipse/Demo/lib/jul-to-slf4j-1.7.19.jar, file:/G:/Eclipse/Demo/lib/junit-4.12.jar, file:/G:/Eclipse/Demo/lib/lept4j-1.1.2.jar, file:/G:/Eclipse/Demo/lib/log4j-1.2.17.jar, file:/G:/Eclipse/Demo/lib/logback-classic-1.1.6.jar, file:/G:/Eclipse/Demo/lib/logback-core-1.1.6.jar, file:/G:/Eclipse/Demo/lib/rococoa-core-0.5.jar, file:/G:/Eclipse/Demo/lib/slf4j-api-1.7.19.jar, file:/G:/Eclipse/Demo/lib/xmlgraphics-commons-1.5.jar])

** 解决方法是:将lib下的win32-x86-64放到项目的bin文件夹下

5.执行结果

这里写图片描述

tess4j的数字+字母 识别效果比tesseract工具要好一些。

中文的话后期探索!


http://chatgpt.dhexx.cn/article/OGYdBwwt.shtml

相关文章

Java图像识别技术:Test4J

简介 做图像识别,可以使用TESSERACT-OCR来实现,但是该方式需要下载软件,在电脑上安装环境,移植性不高,使用Tess4J只需要下载相关Jar包,导入项目,再把项目封装好就可以处处运行了。 Test4J官网&…

计算机识别图像的原理,什么是图像识别技术?图像识别技术原理介绍

图像识别技术是人工智能的一个重要领域。它是指对图像进行对象识别,以识别各种不同模式的目标和对像的技术。 图像识别的发展经历了三个阶段:文字识别、数字图像处理与识别、物体识别。图像识别,顾名思义,就是对图像做出各种处理、分析,最终识别我们所要研究的目标。今天所…

图片识别——需求篇

最近由于工作的关系,学习了一些关于图片识别的知识,并成功用于解决实际问题当中,特此一一记录下来,以备后用,同时希望对大家有用。 场景 企业端用户在注册时,会上传一下公司的Logo。上传的步骤是:选择本地Logo图片,点上传,图片被上传至公司图片服务器(此时这张图片有…

Ubuntu重启黑屏——Intel微码更新兼容性问题

9月13日前后对Ubuntu 22.04进行软件更新,再开机后经过grub直接黑屏,没有任何报错信息。 对于默认不显示Grub菜单的机器,可以在闪过紫屏前长按Esc进入Grub菜单。由于此时仍能进入Grub菜单界面,此处优先选择使用自带的Recovery Mod…

华为-微码开发入门 - 环境搭建

搭建环境 安装 Node.js 前言: We码的整个开发依赖 Node.js 环境,我们需要对 Node.js 做一个简单的了解。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,类似Java的JRE,JRE有一个称为Java Virtual Machine&#xff08…

Brocade FC微码升级

一、组网图 无 二、问题描述 在实际生产环境下,不少项目都存在着 Brocade FC 交换机 Firmware 版本过旧的问题,需要将 Firmware 版本升级至新版本。 三、过程分析 具体升级流程: 四、解决方法 1.搭建FTP环境 搭建FTP环境可以下载3cdaemon-ftp的免安装版小工具…

IBM X3550 m4 微码升级

Ibm pc server升级顺序为IMM->UEFI->DSA(->FPGA) 微码下载 进入IBM官网->支持->fix central 选择升级设备对应的微码或补丁 PCserver 微码升级先升级IMM 选择IMM 选择最新版下载,升级测试本机IMM版本为1.50 最新6.60,时间相隔六年多&am…

微信小程序生成二微码(JAVA)

前段时间在项目中,写了一个生成微信二微码的功能,之所以会开发这个功能,是因为我们做的小程序要进行推广让用户扫我们做的小程序的二微码进行去体验,功能实现的场景大概是: 后台生成小程序二微码,返回到后台页面进行展…

联想SR850系列微码升级

1. 通过服务器管理口(X-clarity controller)收集日志.方法是使用直连线(此网口可自适应 连接方式)将此网口连接于一台终端机(笔记本或台式机). 2. .将笔记本的网卡 IP 设置为与“192.168.70.125”处于同网段的 IP(如: 192.168.70.…

IBM V7000存储升级微码

一、前期准备 目前使用的V7000型号为2076-124,没有扩展柜,当前版本为6.4.1.4,比较老旧,需要升级到相对新的版本。 1.确定当前机器可升级的最高版本 打开网页 http://www-01.ibm.com/support/docview.wss?rs=591&uid=ssg1S1003850 ,可以看到下表,可以看到2076-124这个…

hpux-hp superdome 9000 升级微码

新加入cell板,查看、升级CELL板微码。 一.查看主机微码 升级xyy主机,用Lan console连接到MP卡中,进入Command Menu菜单中,执行命令sysrev检查当前所插的CELL板微码 可以看出,当前5块CELL板安装在0、2、3、4、6槽位&am…

linux下查看硬盘微码,什么是固件或微码,以及如何更新我的硬件?

固件是一种运行在硬件设备上的软件,用于执行低级任务。 例如,从电视遥控器到电脑硬盘驱动器到空中Drone的所有内容都运行自己的固件。 微码基本上是你的CPU的固件。 什么是固件? 软件是指在设备上运行的程序,应用程序和其他计算机…

linux查看cpu微码命令,下载 Linux * 处理器微码数据文件

适用于 Linux * 的英特尔处理器微套件软件包 CPU 微码是一种更正现有系统中的特定勘误表的机制。 应用微代码更新的一般首选方法是使用系统 BIOS,但对于英特尔处理器的一部分,这可以在运行时完成 使用操作系统。此软件包包含的处理器 支持对微码更新进行操作系统加载。 此软件…

uni-app 开发华为 微码小程序

uni-app 开发华为 微码小程序 文章目录 uni-app 开发华为 微码小程序背景通过uni-app生成一个h5应用通过微码开发者工具新建一个微码应用进阶官方解决方案 背景 之前一直使用uni-app开发小程序、H5应用。近期公司有意向使用华为的welink产品作为移动OA。正好近期项目不是特别忙…

linux查看cpu微码命令,如何在Linux上安装/更新Intel微码固件

如果你是一个 Linux 系统管理方面的新手,如何在 Linux 上使用命令行方式去安装或者更新 Intel/AMD CPU 的微码固件呢? 微码microcode就是由 Intel/AMD 提供的 CPU 固件。Linux 的内核可以在引导时更新 CPU 固件,而无需 BIOS 更新。处理器的微码保存在内存中,在每次启动系统…

Brocade 交换机微码升级方法大全

1 通过Brocade交换机自带U盘升级 1.1准备微码 将交换机微码解压缩后放到U盘的firmware目录下,注意firmware目录下只能包含一层目录,例如:brocade/firmware/v6.4.2b。 1.2用单网线通过IE升级 将微码复制到U盘的firmware路径下,并…

CPU微码介绍

微码作用 微码是指令和实现电路之间的隔离。 指令对不同的CPU可以是相同的,但是微码确是对于特定的电路结构而言的,不同电路结构对应的微码不一样,是特定设计的CPU的一部分。 微码可以保存在ROM中,也可以保存在内存中。 微码的加…

固件和微码到底啥区别

固件和微码到底啥区别 话说微码这个词,真是高格调。冬瓜哥刚入行的时候,经常听到I系工程师们的口头禅“升级微码”。当时觉得真是牛啊,啥叫微码?微码和固件又是啥关系?别说,冬瓜哥当年还真请教过这些现在已…

微码micrcode/ucode

目录 1.微码和汇编语言的区别 2.汇编程序的编译过程 3.编译的过程 高级语言为什么不直接编译成机器码,而编译成汇编代码? Microcode是什么?它为什么能修正CPU硬件错误? Microcode如何打补丁 1.微码和汇编语言的区别 微码:micrcode/uc…

一般纳税人有限公司可以享受的税收优惠政策有哪些?

本文作者:财税小喇叭 《财税小喇叭》专注于园区招商,利用地方性税收优惠政策助力企业减税降费! 前言:一般纳税人有限公司主要涉及四大税种,增值税、企业所得税、附加税、分红税。增值税一般是3%、6%、9%、13%&#xff…