
tesseract ocr
开源的OCR引擎,适用于多种语言,准确度较高
版 本:4.0.0
软件大小:41.80 MB
授权类型:国产
收费类型:免费
软件语言:简体中文
应用平台:WinAll
更新时间:2023-10-31
tesseract ocr是一款强大的光学字符识别软件,它能够将图像中的文字转换成可编辑或可搜索的文本。无论是扫描文档、照片或者屏幕截图,tesseract ocr都能快速准确地识别出其中的文字内容。它支持多种语言,并且具备自动分页和列识别功能,使得处理大量文字变得更加高效。无论是个人用户需要数字化纸质文件,还是企业需要文字识别和数据提取,tesseract ocr都是一个非常实用的工具。
使用指南
下载完后进行安装,默认情况下安装程序会给你配置系统环境变量,以指向安装目录(之后可以通过DOS界面在任意目录运行tesseract)。安装完成后目录如下:
附录:
tessdata 目录存放的是语言字库文件,和在命令行界面中可能用到的参数所对应的文件. 这个安装程序默认包含了英文字库。
使用Tessract-OCR引擎识别验证码
打开DOS界面,输入tesseract:
如果出现如上输出,表示安装正常。
我准备了一张验证码放在D盘根目录下,上图:
结果为:
附录:
Usage:tesseract imagename outputbase [-l lang] [-psm pagesegmode] [configfile...]
pagesegmode values are:
0 = Orientation and script detection (OSD) only.
1 = Automatic page segmentation with OSD.
2 = Automatic page segmentation, but no OSD, or OCR
3 = Fully automatic page segmentation, but no OSD. (Default)
4 = Assume a single column of text of variable sizes.
5 = Assume a single uniform block of vertically aligned text.
6 = Assume a single uniform block of text.
7 = Treat the image as a single text line.
8 = Treat the image as a single word.
9 = Treat the image as a single word in a circle.
10 = Treat the image as a single character.
-l lang and/or -psm pagesegmode must occur before anyconfigfile.
tesseract imagename outputbase [-l lang] [-psm pagesegmode] [configfile...]
tesseract 图片名 输出文件名 -l 字库文件 -psm pagesegmode 配置文件
例如:
tesseract code.jpg result -l chi_sim -psm 7 nobatch
-l chi_sim 表示用简体中文字库(需要下载中文字库文件,解压后,存放到tessdata目录下去,字库文件扩展名为 .raineddata 简体中文字库文件名为: chi_sim.traineddata)
-psm 7 表示告诉tesseract code.jpg图片是一行文本 这个参数可以减少识别错误率. 默认为 3
configfile 参数值为tessdata\configs 和 tessdata\tessconfigs 目录下的文件名
软件性能
tesseract ocr官方版支持进行各类图片的ocr识别,可以读取各种格式的图像并将它们转换成超过60种语言的文本。可以读取各种格式的图像并将它们转换成超过60种语言的文本。2005年,Tesseract由美国内华达州信息技术研究所获得,并求诸于Google对Tesseract进行改进、消除Bug、优化工作。我们可以使用它制作拥有验证码识别、身份证识别、图像转文字等功能的软件。
软件特色
1、这里使用的版本为Tesseract3.02。直接点击上面的链接,下载windows下的安装文件tesseract-ocr-setup-3.02.02.exe。安装tesseract-ocr-setup-3.02.02.exe。安装成功后会在相应磁盘上生成一个Tesseract-OCR目录。如图我是安装到了如下位置安装完成打开命令行,输入tesseract,展现如下图说明已经安装成功
2、当前3.02 版本支持包括英文,简体中文,繁体中文,支持Windows,Linux,Mac OSX 多平台。使用中Tesseract 的识别率非常高
3、安装目录下的tessdata目录存放的是语言识别包,如果想增加中文识别功能,可以将中文的语言库放到此目录下,下载后将解压出的chi_sim.traineddata放到此目录下。然后调用的时候指明语言库即可,例如:tesseract xxx.jpg result -l chi_sim照样
4、可以看到,识别率并不是十分令人满意。而且这边使用的例子都是十分正规的字体。如果遇到验证码那种不规则的字体,识别率也会大打折扣的,当然可以参考网上的相关资料进行对Tesseract字符识别进行样本训练,通过使用训练后的语言库会提高识别精度。这里就不做演示了
问答解答
那如何使用java程序调用相应的tesseract进行操作呢?
这里介绍2种方式
一种是使用cmd方式,另外一种就是使用tess4j。tess4j的源码地址 http://sourceforge.jp/projects/sfnet_tess4j/ 中文首页
感兴趣的自己下载查看源代码。
由于范例代码较多就不一一贴出来了,会在文章结尾提供一个下载链接,大概讲下结构,
如上图,tess4j包下是使用tess4j调用tesseract,src下的dll文件是需要使用到的。加载的语言库文件也要放到tessdata目录下。而cmd 包下是使用cmd方式调用的范例,额外需要swingx-1.6.1.jar,调用时直接配置使用的安装的路径,并配置语言库即可。
代码下载地址,由于附带了data文件,jar包等,会比较大,接近50M。导入到工程即可。各个包下都有测试的Test类,直接右键就可以运行。前提是对应目录下有相应图片。
在cmd包下ClearImageHelper这个类是对图片进行处理的类,比如灰度转换,二值化,缩放等等,对于复杂图片可以先进行处理,来提高图片识别率。而tess4j下也封装了图片处理的工具类,基本都包含这些功能,例子中也给出了部分样例。
Bty,话说使用原生态识别调用,跟tess4j得到的结果还是有所差别的。
电脑下载地址
