Tesseract——OCR图像识别 入门篇

最近给了我一个任务,让我研究图像识别,从我们项目的screenshot中识别文字信息,so我开始了学习,与大家分享下。

我看到目前OCR技术有很多,最主要的是Asprise OCR,Tesseract OCR和Java OCR。

Asprise OCR速度很快,Java实现很简单,但是它是商业的,要收费的,免费版每次都要弹出对话框,是个很麻烦的事情。

Tesseract OCR是C++的,要使用cmd命令的,速度也很快,质量也很好。当然Java也是可以使用的。

Java OCR是纯Java的,效率也不错。

今天先记录下Tesseract吧,后续再补充

1. 首先从官网上下载压缩包,最新版本是Tesseract 3.03,之前的版本可以从这里下载.

2. 解压下载好的压缩包到本地目录。

3. 打开cmd窗口,进入到tesseract目录下,然后就可以开始我们的测试之旅啦

1)选择好你所要识别的图片,并确定你所要输出的文件,然后输入下列命令:

tesseract letter.png 1

"letter.png": 需要识别的图片

"1": 输出的文件 1.txt

2) 我们已经把图片中的信息解析出来啦。

来自:  http://blog.csdn.net/PanRuiFang/article/details/27191739

上面说道tesseract 是支持中文的,所以么,接下来看看如何使用tesseract 实现我们中文的识别,下面继续介绍其他参数

参数3:-l

参数4: 使用的语言库

参数3 -l应该是知道参数4所使用的语言库,默认英文,也就是为什么上面识别英文的例子,并没有输入参数3和参数4,也实现了识别。

下面继续我们的实验:

我们准备了一张图片,然后使用tesseract zhongwen.jpg  7  -l chi_sim 指明了中文语言,然后效果图上,还是很不错的,毕竟我们的中文是如此的博大精深,并且tesseract可以经过训练,然后识字的能力就会大幅度提升。

好了,由于一行代码没写,就不上传代码了,大家自己去官网下载。接下来我会使用Java带大家实现这样的小程序。

来自:  http://blog.csdn.net/lmj623565791/article/details/23955883

Tesseract——OCR图像识别 入门篇的更多相关文章

  1. Python 图像识别入门篇

    一.安装Python依赖 pip install pytesseract pyocr pillow Image pip安装:https://www.cnblogs.com/Javame/p/10918 ...

  2. C# 10分钟完成百度图片提取文字(文字识别)——入门篇

    现在图片文字识别已经很成熟了,比如qq长按图片,点击图片识别就可以识别图片的文字,将不认识的.文字数量大的.或者不能赋值的值进行二次可复制功能. 我们现在就基于百度Ai开放平台进行个人文字识别,dem ...

  3. Tesseract OCR使用介绍

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

  4. Membership三步曲之入门篇 - Membership基础示例

    Membership 三步曲之入门篇 - Membership基础示例 Membership三步曲之入门篇 -  Membership基础示例 Membership三步曲之进阶篇 -  深入剖析Pro ...

  5. spring boot(一):入门篇

    构建微服务:Spring boot 入门篇 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框 ...

  6. 1. web前端开发分享-css,js入门篇

    关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人与人的教育背景与成长环境心理活动都有差别,但就别人的心得再结合自己的特点,然后探索适合自己的学 ...

  7. 一个App完成入门篇(七)- 完成发现页面

    第七章是入门篇的倒数第二篇文章了,明天整个APP将进入收官. 本节教程主要要教会大家使用二维码扫描和用do_WebView组件加在html页面. 导入项目 do_WebView组件 扫描功能 自定义事 ...

  8. [原创]Linq to xml增删改查Linq 入门篇:分分钟带你遨游Linq to xml的世界

    本文原始作者博客 http://www.cnblogs.com/toutou Linq 入门篇(一):分分钟带你遨游linq to xml的世界 本文原创来自博客园 请叫我头头哥的博客, 请尊重版权, ...

  9. 转:OSGi 入门篇:模块层

    OSGi 入门篇:模块层 1 什么是模块化 模块层是OSGi框架中最基础的一部分,其中Java的模块化特性在这一层得到了很好的实现.但是这种实现与Java本身现有的一些模块化特性又有明显的不同. 本文 ...

随机推荐

  1. 关于SWT/JFace的事件模型的四种方式

    事件的4种写法 1.匿名内部类方式的写法 2.命名内部类的写法 3.外部类写法 4.实现监听接口的写法 第一种用匿名内部类的方法: public class HelloWorld { private ...

  2. 有关于Algorithm的基础介绍

    Niklaus Wirth:Algorithm + Data Structures = Programs 这句话呢,觉得很正确,算法和程序是不同的概念,算法的思想呢有递推,枚举,分治,贪婪,试探法,模 ...

  3. 简单的monkey使用

    先推荐大家看一篇http://www.cnblogs.com/wfh1988/archive/2010/11/16/1878224.html,里面有一些命令的使用 简单在说就是象猴子一样乱点,为了测试 ...

  4. li 水平排列并自动填满 ul

    找了li 如何水平排列并自动填满 ul,同时 li 宽度平均?资料,里面有提到"请用js动态计算保证兼容性", 因为我想实现的是,水平滚动条,ul的上级div是固定的宽度1000p ...

  5. 3.x vector的用法

    #include<vector> //struct struct GOLD_STRUCT {     Sprite  * goldspSprite;     int goldValue; ...

  6. 轻松学习Ionic (一) 搭建开发环境,并创建工程

    1.准备工作     下载 Node.js(下载包),WebStorm(IDE,编写代码,浏览器调试),JDK(webstorm 运行环境),Android SDK (Android编译)     不 ...

  7. NDIS小鱼防火墙之拦截指定QQ登录

    因为QQ窗口是自绘窗口,gif录制软件不能正常录制到窗口,我就截图功能把窗口显示出来. 下面我的演示,我登录2个QQ号,一个被我指定拦截,让他不能够登录.另一个却可以正常的工作..看我的COOL的演示 ...

  8. ios Swift 动手写

    Swift语言概览 基本概念 注:这一节的代码源自The Swift Programming Language中的A Swift Tour. Hello, world 类似于脚本语言,下面的代码即是一 ...

  9. Sencha Touch id 和 itemId

    通过id获得组件: var view=Ext.getCmp('id'); 通过itemId获得组件: var view = ComponentQuery.query('view_xtype'), // ...

  10. 第三篇、FMDB使用

    简介: FMDB是基于SQlite3的封装一个第三方的OC库,操作起来更加简单,性能比Coredata更加高. 1.创建sqlite文件 2.导入FMDB头文件 3.创建数据库表table 4.编写s ...