Tesseract Ocr引擎

1、Tesseract介绍

tesseract 是一个google支持的开源ocr项目,其项目地址:https://github.com/tesseract-ocr/tesseract,目前最新的源码可以在这里下载。

实际使用tesseract ocr也有两种方式:1- 动态库方式 libtesseract  2  - 执行程序方式 tesseract.exe

由于本人也是python菜鸟一个,所以方式1暂时不会,只好采取方式2。

2、Tesseract安装包下载

Tesseract的release版本下载地址:https://github.com/tesseract-ocr/tesseract/wiki/Downloads,这里需要注意这一段话:

Currently, there is no official Windows installer for newer versions.

意思就是官方不提供最新版windows平台安装包,只有相对略老的3.02.02版本,其下载地址:https://sourceforge.net/projects/tesseract-ocr-alt/files/

最新版3.03和3.05版本,都是三方维护和管理的安装包,有好几个发行机构,分别是:

3rd party Windows exe's/installer

总结一下:

1、官方发布的3.02版本下载地址:http://downloads.sourceforge.net/project/tesseract-ocr-alt/tesseract-ocr-setup-3.02.02.exe?r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Ftesseract-ocr-alt%2Ffiles%2F&ts=1464880498&use_mirror=jaist

2、德国曼海姆大学发行的3.05版本下载地址,http://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-3.05.00dev.exe

3、Simon Eigeldinger (@DomasoFan) 维护的另一个版本:http://3.onj.me/tesseract/,值得称道的是,这个网址里还有一个比较详细的说明。

以上版本如果在下载时发现无法下载,可以首先试试迅雷,其次,可能就需要FQ了。

本人使用的是官方发布的3.02版本,也就是链接1.

3、Tesseract ocr使用说明

安装之后,默认目录C:\Program Files (x86)\Tesseract-OCR,你需要把这个路径放到你操作系统的path搜索路径中,否则后面使用起来会不方便。

在安装目录C:\Program Files (x86)\Tesseract-OCR下可以看到 tesseract.exe这个命令行执行程序。

tesseract语法如下:

例如:tesseract 1.png output-l eng -psm 7 ,表示采取单行文本方式,使用英语字库识别1.png这个图片文件,识别结果输出到当前目录output.txt文件中。

 1 D:\python\lnypcg\test>tesseract
2 Usage:tesseract imagename outputbase [-l lang] [-psm pagesegmode] [configfile...]
3
4 pagesegmode values are:
5 0 = Orientation and script detection (OSD) only.
6 1 = Automatic page segmentation with OSD.
7 2 = Automatic page segmentation, but no OSD, or OCR
8 3 = Fully automatic page segmentation, but no OSD. (Default)
9 4 = Assume a single column of text of variable sizes.
10 5 = Assume a single uniform block of vertically aligned text.
11 6 = Assume a single uniform block of text.
12 7 = Treat the image as a single text line. #-psm 7 表示用单行文本识别
13 8 = Treat the image as a single word.
14 9 = Treat the image as a single word in a circle.
15 10 = Treat the image as a single character.
16 -l lang and/or -psm pagesegmode must occur before anyconfigfile. #-l eng 代表使用英语识别
17
18 Single options:
19 -v --version: version info
20 --list-langs: list available languages for tesseract engine

4、Tesseract ocr使用实例

现在有一个经过灰度处理之后的验证码文件,在命令行中调用tesseract.exe实现默认,并把识别出来的文本输出到output.txt文本文件中。

(如何灰度处理,在python里可以使用PIL库,先挖个坑,下次写。)

 1 D:\python\lnypcg\test>dir
2 驱动器 D 中的卷没有标签。
3 卷的序列号是 36D9-CDC7
4
5 D:\python\lnypcg\test 的目录
6
7 2016-06-02 23:28 <DIR> .
8 2016-06-02 23:28 <DIR> ..
9 2016-06-02 22:02 462 1.png
10 1 个文件 462 字节
11 2 个目录 25,733,357,568 可用字节
12
13 D:\python\lnypcg\test>tesseract 1.png output -l eng
14 Tesseract Open Source OCR Engine v3.02 with Leptonica
15
16 D:\python\lnypcg\test>type output.txt
17 7572
18
19
20 D:\python\lnypcg\test>

总结,tesseract是一个挺不错的OCR引擎,目前的问题是最新的中文资料相对较少,过时、不准确的信息偏多,把这几天的琢磨的结果分享给大家,希望对大家有所帮助。

Tesseract Ocr引擎的更多相关文章

  1. Python下Tesseract Ocr引擎及安装介绍

    1.Tesseract介绍 tesseract 是一个google支持的开源ocr项目,其项目地址:https://github.com/tesseract-ocr/tesseract,目前最新的源码 ...

  2. c/c++语言实现tesseract ocr引擎编程实例

    编译下面的程序操作系统必须在安装了tesseract库和leptonica库才可以 Basic example c++ code: #include <tesseract/baseapi.h&g ...

  3. 开源图片文字识别引擎——Tesseract OCR

    Tessseract为一款开源.免费的OCR引擎,能够支持中文十分难得.虽然其识别效果不是很理想,但是对于要求不高的中小型项目来说,已经足够用了. 文字识别可应用于许多领域,如阅读.翻译.文献资料的检 ...

  4. [转]Tesseract-OCR (Tesseract的OCR引擎最先由HP实验室于1985年开始研发)

    光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程.OCR技术非常专业,一般多是印刷.打印行 ...

  5. tesseract ocr文字识别Android实例程序和训练工具全部源代码

    tesseract ocr是一个开源的文字识别引擎,Android系统中也可以使用.可以识别50多种语言,通过自己训练识别库的方式,可以大大提高识别的准确率. 为了节省大家的学习时间,现将自己近期的学 ...

  6. Tesseract ocr 3.02学习记录一

    光学字符识别(OCR,Optical Character Recognition)是指对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程.OCR技术非常专业,一般多是印刷.打印行 ...

  7. Tesseract——OCR图像识别 入门篇

    Tesseract——OCR图像识别 入门篇 最近给了我一个任务,让我研究图像识别,从我们项目的screenshot中识别文字信息,so我开始了学习,与大家分享下. 我看到目前OCR技术有很多,最主要 ...

  8. Tesseract OCR使用介绍

    #Tesseract OCR使用介绍 ##目录[TOC] ##下载地址及介绍 官网介绍:http://code.google.com/p/tesseract-ocr/wiki/TrainingTess ...

  9. selenium使用笔记(二)——Tesseract OCR

    在自动化测试过程中我们经常会遇到需要输入验证码的情况,而现在一般以图片验证码居多.通常我们处理这种情况应该用最简单的方式,让开发给个万能验证码或者直接将验证码这个环节跳过.之前在技术交流群里也跟朋友讨 ...

随机推荐

  1. 王立平--android事件监听的3种方式

    第一种通常在activity组件的oncreate事件中直接定义,直接动作. 这样的方式每一个控件都定义一次.通常不方便. Button btn = (Button) findViewById(R.i ...

  2. HDU 1862 EXCEL次序 (排序水问题)

    Problem Description Excel对能够记录一组由任意列排序指定.现在,请把你编译的代码类似特征.   Input 測试输入包括若干測试用例. 每一个測试用例的第1行包括两个整数 N ...

  3. AFNetworking 3.0x版本最新特性

    AFNetworking是一款在OS X和iOS下都令人喜爱的网络库.为了迎合iOS新版本的升级, AFNetworking在3.0版本中删除了基于 NSURLConnection API的所有支持. ...

  4. HTML5新标签

    <article>标签定义外部的内容.比如来自一个外部的新闻提供者的一篇新的文章,或者来自 blog 的文本,或者是来自论坛的文本.亦或是来自其他外部源内容. HTML5:<arti ...

  5. 部署ASP.NET MVC项目

    目标:了解部署过程,掌握部署中出现问题该如何处理. 部署网站往往是一件麻烦事,因为在安装部署的过程中,经常有许多步骤要运行,对于许多不太熟悉IIS/SQL的新手来说,部署网站编程一件非常困难且危险的事 ...

  6. Android动态设定GridView的高度,固定column,实现高度自适应

    动态设定GridView的高度,固定column,根据gridview中的item个数设定高度: 调用以下方法: public static void setListViewHeightBasedOn ...

  7. 前序 中序 后序 遍历 递归 非递归算法 java实现

    前序遍历 非递归 public void preordernorec(TreeNode root){ //System.out.println("先序遍历(非递归):"); //用 ...

  8. linux下ip命令用法

    配置数据转发,可以通过 1.路由转发即用用路由器实现: 2.使用NAT转发: 简单的说: 路由表内的信息只是指定数据包在路由器内的下一个去处.并不能改变数据包本身的地址信息.即它只是“换条路而已,目的 ...

  9. C# 窗体在线2,8,16进制转换以及,在线更新时间

    class Program { static void Main(string[] args) { //十进制转二进制 Console.WriteLine(, )); //十进制转八进制 Consol ...

  10. 三种LVS负载均衡技术的优缺点----负载均衡调度算法

    三种LVS负载均衡技术的优缺点归纳以下表: VS/NATVS/TUNVS/DR 服务器操作系统任意支持隧道多数(支持Non-arp) 服务器网络私有网络局域网/广域网局域网 服务器数目(100M网络) ...