您的位置:首页 > 其它

找到了一个利用tesseract做安卓OCR应用的过程讲解

2015-04-02 13:33 369 查看
今天开毕设例会,老师说本周需要在手机上实现识别功能,所以先不做界面设计了,而是转而做功能。

下文是一个利用tesseract做安卓OCR应用的文章

这个是链接里找到的,外国人写的,还有一些问答,很有借鉴意义。
http://www.codepool.biz/ocr/making-an-android-ocr-application-with-tesseract.html
ps.不知为什么打不开Google的code网页,求外网。
http://my.oschina.net/yushulx/blog/359468
目录[-]

Tesseract Android ToolsAndroid OCR Application在图库中选取一张图,选择发送或者分享,选择OCR应用启动OCR应用,从图库中选择一张图做OCR启动OCR应用,拍照之后做OCR源码

Tesseract是遵守 Apache
License 2.0协议的开源OCR引擎。这里介绍下如何在Android平台编译Tesseract,以及如何快速创建一个简单的OCR应用。







参考原文:Making an Android OCR Application with Tesseract

Tesseract Android Tools

要编译Android平台的Tesseract,需要使用Google提供的tesseract-android-tools

代码获取方式:

?
打开README,在命令行工具中执行下面的步骤:


注意:如果你在使用NDK r9,编译的时候会出现错误:

?
解决的方法就是在Application.mk中加入一行:

?
编译之后会生成class.jar和一些*.so。

Android OCR Application

创建一个Android应用,把生成的jar和so导入进来。

创建TessOCR

<
4000
div class="line number9 index8 alt2">9


构造函数中需要在存储卡上创建一个目录tessdata,如果不创建程序运行就会出错。因为源码中会检测这个目录,不存在就抛出异常:


就这么简单。现在通过三种方式获取图片做OCR:

在图库中选取一张图,选择发送或者分享,选择OCR应用

在AndroidManifest.xml中加入IntentFilter,让OCR应用出现在图库的分享列表中:

?
获得URI之后,对URI解码,获取bitmap:



启动OCR应用,从图库中选择一张图做OCR

发送Intent调用图库,在onActivityResult中获取返回的URI做OCR:



启动OCR应用,拍照之后做OCR

为了获取高质量的图片,在Intent中加入图片路径。返回之后就可以直接使用这个图片路径解码:


最后不要忘记下载语言包,并push到存储卡的tessdata目录下。

源码

https://github.com/DynamsoftRD/android-tesseract-ocr

?
分享到:



0赞
原文地址:http://www.codepool.biz/ocr/making-an-android-ocr-application-with-tesseract.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐