Tesseract OCR开源项目-转载

本文涉及的产品
个人证照识别,个人证照识别 200次/月
车辆物流识别,车辆物流识别 200次/月
票据凭证识别,票据凭证识别 200次/月
简介: 原文:http://hi.baidu.com/shirdrn/blog/item/8c775488889b5a9da4c27284.html    Tesseract OCR开源项目2009年08月28日 星期五 18:00 最近,项目中需要使用基于图像识别验证码的技术,初步探索尝试了一下开源的Tesseract OCR项目。

原文:http://hi.baidu.com/shirdrn/blog/item/8c775488889b5a9da4c27284.html

 

 

Tesseract OCR开源项目2009年08月28日 星期五 18:00

最近,项目中需要使用基于图像识别验证码的技术,初步探索尝试了一下开源的Tesseract OCR项目。该项目简介如下:

This package contains the Tesseract Open Source OCR Engine. Orignally developed at Hewlett Packard Laboratories Bristol and at Hewlett Packard Co, Greeley Colorado.

The Tesseract OCR engine was one of the top 3 engines in the 1995 UNLV Accuracy test. Between 1995 and 2006 it had little work done on it, but it is probably one of the most accurate open source OCR engines available. The source code will read a binary, grey or color image and output text. A tiff reader is built in that will read uncompressed TIFF images, or libtiff can be added to read compressed images.

Tesseract 是一款开源的光学字符串识别(OCR)项目,能够识别图像验证码。比如存在一个格式为TIF的文字图片,Tesseract能够识别出该图片中的文字,将识别到的文字写入到一个文本文件中,识别效果很不错。如果想要识别不同语言的文字图像,需要下载响应的支持包,才能让Tesseract识别更多格式的图像。

Tesseract项目地址为:http://code.google.com/p/tesseract-ocr/,可以通过下载开源发行包,或者到该项目网站了解更多信息。

下载当前较新的2.0.4版本,下载地址为http://tesseract-ocr.googlecode.com/files/tesseract-2.04.tar.gz。我不清楚,是否是我所在的网络有问题,下载过程中数据包丢失,还是其它原因,按照该项目网站上说明,没有成功安装好,经过仔细阅读文档及其项目网站上的FAQ,终于找到了问题的原因。现在把配置过程简单做个记录。

下载完成的压缩包为tesseract-2.04.tar.gz,我是直接在Fedora Core 7 Linux系统下,使用root权限在root目录下解压缩的,可以看到解压缩目录为tesseract-2.04,该目录下有很多文件,比较杂。下面开始执行安装过程:

1、编译Tesseract

估计下载下来的tesseract-2.04.tar.gz包解压以后,目录tesseract-2.04下的文件全是read-only的,需要修改一下文件操作权限:

[root@bogon tesseract-2.04]# chmod 777 -R *

然后,默认执行下面三个命令,配置、编译、安装:

[root@bogon tesseract-2.04]# ./configure
[root@bogon tesseract-2.04]# make
[root@bogon tesseract-2.04]# make install

可能需要花一点时间才能完成。

2、配置语言包

上面默认安装到了/usr/local/share/tessdata目录下,先到该目录下检查一下,如果里面的文件(不包含configs和tessconfigs目录)大小都是0字节,说明存在问题了,如果你执行启动Tesseract OCR引擎,就会出现如下异常:

Unable to load unicharset file /usr/local/share/tessdata/eng.unicharset

肯定会有问题,文件/usr/local/share/tessdata/eng.unicharset是空的,无法加载。再到/root/tesseract-2.04/tessdata目录中,检查一下如果里面的文件(不包含configs和tessconfigs目录)大小都是0字节,就需要单独下载,其实我感觉,之所以导致/usr/local/share/tessdata目录下文件为空,原因可能是,在上面执行安装过程中,/root/tesseract-2.04/tessdata目录中文件无效导致安装操作将一些空文件拷贝到了/usr/local/share/tessdata目录下,从而失败。

考虑单独下载语言包,下载http://tesseract-ocr.googlecode.com/files/tesseract-2.00.eng.tar.gz后得到解压缩文件目录tessdata,将目录中的8个非空文件拷贝到/usr/local/share/tessdata目录下覆盖掉原来的空文件,就可以了。

3、启动Tesseract OCR引擎,识别图像

现在,可以准备要进行识别的图像文件,我使用了Tesseract项目发行包中一个TIF图像文件:

执行识别图像的命令格式为:

tesseract <imagename>   <outputbase> [-l lang] [configfile [[+|-]varfile]...]

其中tesseract是命令;<imagename>是待识别的图片,例如图片eurotext.tif;<outputbasename>是输出文本文件的名称,默认生成的是你所给定的输出文件名称,加上.txt扩展名;[-l lang]可选的,指定识别图像中的语言。

例如,启动Tesseract OCR 引擎,识别文字图片eurotext.tif ,执行命令:

[root@bogon tesseract-2.04]# tesseract eurotext.tif eurotext
Tesseract Open Source OCR Engine
[root@bogon tesseract-2.04]#

可以在tesseract-2.04目录下看到识别图像文件eurotext.tif 得到对应的文本文件eurotext.txt,内容如下所示:

The (quick) [brown] {fox} jumps!
Over the $43,456.78 <lazy> #90 dog
& duck/goose, as 12.5% of E-mail
from aspammer@website.com is spam.
Der ,,schnelle" braune Fuchs springt
uber den faulen Hund. Le renard brun
<<rapide» saute par-dessus le chien
paresseux. La volpe marrone rapida
salta sopra il cane pigro. El zorro
marron répido salta sobre el perro
perezoso. A raposa marrom répida
salta sobre o cio preguicoso.


可见,识别正确率还是很高的,如果你使用发行包中自带的phototest.tif图像文件,识别正确率肯定是100%。但是,因为该图片中存在的干扰信息还是很弱的,不能妄言其识别正确率的高低,还有待于进一步测试它。

目录
相关文章
|
6月前
|
文字识别 异构计算 Python
关于Github中开源OCR项目的实验过程与思考
新手尝试Git clone Python OCR项目,遇到各种报错。测试了Paddle OCR、Tesseract OCR和EasyOCR。Paddle OCR因平台限制未能在Notebook部署,Tesseract OCR在Colab成功但无法复现。EasyOCR最终在阿里云天池和Colab部署成功,但天池GPU资源不足。建议使用魔搭社区的实例,阿里云提供免费OCR服务。寻求简单OCR项目推荐。附EasyOCR安装和使用代码。
237 2
|
16天前
|
存储 人工智能 文字识别
AI与OCR:数字档案馆图像扫描与文字识别技术实现与项目案例
本文介绍了纸质档案数字化的技术流程,包括高精度扫描、图像预处理、自动边界检测与切割、文字与图片分离抽取、档案识别与文本提取,以及识别结果的自动保存。通过去噪、增强对比度、校正倾斜等预处理技术,提高图像质量,确保OCR识别的准确性。平台还支持多字体识别、批量处理和结构化存储,实现了高效、准确的档案数字化。具体应用案例显示,该技术在江西省某地质资料档案馆中显著提升了档案管理的效率和质量。
|
2月前
|
编解码 人工智能 文字识别
阶跃星辰开源GOT-OCR2.0:统一端到端模型,魔搭一站式推理微调最佳实践来啦!
GOT来促进OCR-2.0的到来。该模型具有580百万参数,是一个统一、优雅和端到端的模型,由高压缩编码器和长上下文解码器组成。
阶跃星辰开源GOT-OCR2.0:统一端到端模型,魔搭一站式推理微调最佳实践来啦!
|
4月前
|
文字识别 Java Spring
文本,文字识别,SpringBoot服务开发,SpringBoot如何提供上传服务,接口的设计,它做了将Base64重新转为图片,SpringBoot的应用实例,项目基础搭建
文本,文字识别,SpringBoot服务开发,SpringBoot如何提供上传服务,接口的设计,它做了将Base64重新转为图片,SpringBoot的应用实例,项目基础搭建
|
5月前
|
文字识别 块存储 Python
Python 图片文字识别和 tesseract 问题解决
Python 图片文字识别和 tesseract 问题解决
188 1
|
5月前
|
文字识别 Android开发 C++
Tesseract OCR集成Android Studio实现OCR识别
Tesseract OCR集成Android Studio实现OCR识别
311 0
|
6月前
|
文字识别 C# 开发者
WPF开源的一款免费、开箱即用的翻译、OCR工具
WPF开源的一款免费、开箱即用的翻译、OCR工具
114 0
|
6月前
|
文字识别 算法 数据库
开源OCR模型DIY票证信息抽取
票证检测矫正模型在实际生活中有着广泛的需求,例如信息抽取、图像质量判断、证件扫描、票据审计等领等场景,可以大幅提高工作效率和准确性。
|
机器学习/深度学习 文字识别 算法
文本识别 (OCR)引擎之Tesseract的使用
esseract是一个开源文本识别 (OCR)引擎,用于识别图片中的文字并将其转换为可编辑的文本。
1570 0
|
存储 文字识别 算法
基于飞桨实现项目2 中文场景文字识别
基于飞桨实现项目2 中文场景文字识别
267 0
基于飞桨实现项目2 中文场景文字识别

热门文章

最新文章

  • 1
    【Python】已解决:Python正确安装文字识别库EasyOCR
    458
  • 2
    提升爬虫OCR识别率:解决嘈杂验证码问题
    132
  • 3
    文本,文字识别14,身份证和车牌识别接口
    29
  • 4
    文本,文字识别13,参数校验,实现参数校验,使用@Valid注解
    27
  • 5
    文本,文字识别12,接口返回值和异常封装,一个好的接口,应该包括,错误码,提示信息,返回的数据,应该知道出错,错在哪里,抛出业务异常应该怎样解决?出现业务异常的时候,抛出业务异常,全局异常处理
    37
  • 6
    文本,文识11,解析OCR结果,paddOCR返回的数据,接口返回的数据有code,data,OCR返回是JSON的数据,得到JSON数据先安装依赖,Base64转换工具网站在21.14
    101
  • 7
    文本,文识10,springBoot提供RestTemplate以调用Flask OCR接口,调用flask实现ocr接口,用paddleocr进行图片识别云服务技术,单个paddleocr接口有影响
    93
  • 8
    文本,文识08图片保存()上,最方便在于整体生成代码,serivce及实体类,base64编码保存图片文件,调用flask实现内部ocr接口,通过paddleocr识别,解析结果,base64转图片
    45
  • 9
    文本,文字识别07,SpringBoot服务开发-入参和返回值,编写接口的时候,要注意识别的文字返回的是多行,因此必须是List集合,Bean层,及实体类的搭建
    49
  • 10
    文本,文字识别,Flask实现内部接口开发,OCR外部接口的开发,如何开发一个识别接口,通过post调用,参数是图片的路径,内部调用,直接传图片路径就行
    64
  • 下一篇
    无影云桌面