关注微信号:javalearns 随时随地学Java

或扫一扫

随时随地学Java

一、Tesseract OCR引擎

Tesseract OCR是HP公司于1985~1995年间开发的商业级OCR(Optical Character Reader, 光学字符阅读器)引擎,并于2005年开放源代码。以下是它sourceforge上的网址:

http://sourceforge.net/projects/tesseract-ocr/?source=directory

现在已转移到谷歌的代码服务下:

https://code.google.com/p/tesseract-ocr/

源码和字库的下载列表:

https://code.google.com/p/tesseract-ocr/downloads/list

谷歌的服务器在国内不稳定,可以从http://pkgs.fedoraproject.org下载到所需的软件包和字库包:

c> 源码:http://pkgs.fedoraproject.org/repo/pkgs/tesseract/tesseract-ocr-3.02.02.tar.gz/

> 中文字库:http://pkgs.fedoraproject.org/repo/pkgs/tesseract-langpack/tesseract-ocr-3.02.chi_sim.tar.gz/

> 英文字库:http://pkgs.fedoraproject.org/repo/pkgs/tesseract/tesseract-ocr-3.02.eng.tar.gz/

二、面向Android的Tesseract工具

tess-two是Tesseract Tools for Android (tesseract-android-tools) 的一份拷贝,并添加了一些功能。Tesseract Tools for Android是Tesseract OCR和Leptonica图像处理库的Android API与构建文件的集合。github上的网址为:

https://github.com/rmtheis/tess-two

关于tess-two的编译过程,可以参考上述网址,根据我的编译经历,发现执行”android update project –path .”一步是,需要指定–target选项,其参数通过命令”android list targets”获取到id值,再指定,如下(记得连接好你的Android手机)。

root@Leon:/home/work/tess-two# android list targetsAvailable Android targets:----------id: 1 or "android-18"     Name: Android 4.3     Type: Platform     API level: 18     Revision: 1     Skins: WVGA854, WXGA800, WSVGA, WVGA800 (default), WQVGA400, WXGA720, QVGA, WQVGA432, WXGA800-7in, HVGA     ABIs : armeabi-v7aroot@Leon:/home/work/tess-two# android update project --path . --target 1

其中的”1″便是来自id后面的值。之后,便按照tess-two的github上的描述,添加到Eclispe即可。

三、基于tess-two的Android应用

有了面向Android的Tesseract库tess-two,接下来就是使用Android应用来测试和使用了。github上的android-ocr就是这样的应用:

https://github.com/rmtheis/android-ocr

我测试使用的是来自Mike_Wong的应用,参考了文章《浅析android OCR文字识别》,文章中包含了源码的下载地址。解压源码并导入到Eclipse之后,删除目录中的”gen”目录,并关闭工程再重新打开即可,为的是重新生成gen目录及其中的内容。源码中已包含tess-two编译会生成的libtess.so和liblept.so,并且包含了libjpeg.so。在编译并安装应用之前的唯一步骤是,在目标手机的SD目录下创建tessdata目录,将上面讲述的中英文字库添加到该目录,即“/sdcard/tessdata/”目录

经过测试,发现算法的运行时间还是比较慢的,一段话的中文,处理时间大约20秒。识别精度也比较有限,在一张照片中文字比较多时,识别精度有所下降,如果文字比较少且比较大,则精度较高。

关注微信号:javalearns 随时随地学Java

或扫一扫

随时随地学Java

更多相关文章

  1. Android(安卓)年月选择器,基于必酷公司的竖直滑动选择器WheelView
  2. [置顶] Android源码分享
  3. android 短信:电信运营商给你的号码可能是+86开头
  4. [Android]Fragment源码分析(二) 状态
  5. 序列化原理(二):从源码理解Parcelable
  6. Android(安卓)实现音乐播放器【源码+注释】— MediaPlayer
  7. Android(安卓)源码的建造者模式
  8. [置顶] Android中一些优秀的博文(看过的)
  9. Android(安卓)炫酷的自定义进度条ProgressBar集锦,优雅呈现

随机推荐

  1. Android(安卓)使用 Gradle 多渠道打包
  2. Android开发工程师已难找工作
  3. Android标题栏ToolBar详解
  4. Android:Toast的用法
  5. ANDROID解决屏幕旋转而导致重启ACTIVITY
  6. Android手机软件汉化教程---第一课 apk安
  7. Android(安卓)01:AutoCompleteTextView-简
  8. maven管理android项目 环境搭建
  9. afinal框架之Android视频下载,指定路径
  10. Android平台上长连接的实现