关于tesseract识别工具有Google提供的版本有tesseract-android-tools,不过还有一个tesseract-two也是非常好用的,这里我们使用的是tesseract-two。tesseract是用c++实现的,需要封装Java API用于Android平台的调用。所以在使用tesseract-two之前得下载Android-NDK,下载NDK之后,解压到自己电脑的一个文件夹下,配置eclipse引用下载来的NDK。

解压下载来的NDK,因为要使用ndk-build该命令又为了方便起见,不用CD来CD去的~配置一下环境变量,在path中追加ndk所解压的目录。

tesseract-two其实是Tesseract Tools for Android的一个git分支,选择它是由于操作简单,并且集成了leptonica,一个图形处理工具。所以可以在gitbub上下载来

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

也可以通过git来获取想要的资源。

http://git-scm.com/download/win

资源都准备好了,然后我们使用NDK编译(Windows下的cmd进入),敲入如下的命令(编译的时间会有点久)

cd tess-two
ndk-build
android update project -t 1 --path .
ant release cd ..
cd eyes-two
ndk-build
android update project -t 1 --path .
ant release

eclipse里面的Android项目中导入编译好的类库,共三个项目,tess-two,tess-two-test 以及eyes-two。其中tess-two和eyes-two为android lib项目,供其它项目引用。

然后编写Java代码,但是发现会出错。主要由于在/mnt/sdcard/目录下缺少语言包,将tessdata下面的两个语言包放到sd卡的根目录下面就可以了~

import com.googlecode.tesseract.android.TessBaseAPI;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.util.Log; public class MainActivity extends Activity { private static final String TESSBASE_PATH = "/mnt/sdcard/";
private static final String DEFAULT_LANGUAGE = "eng";
private static final String CHINESE_LANGUAGE = "chi_sim";
private static final String TAG = "tesseract"; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); TessBaseAPI baseApi=new TessBaseAPI();
baseApi.init(TESSBASE_PATH, DEFAULT_LANGUAGE);
baseApi.setPageSegMode(TessBaseAPI.PSM_AUTO); //从资源里获取一张图片
Bitmap bitmap = BitmapFactory.decodeResource(MainActivity.this.getResources(), R.drawable.ocr);
baseApi.setImage(bitmap); final String outputText = baseApi.getUTF8Text();
Log.i(TAG, "识别结果:" + outputText);
baseApi.end();
} }

原图:

识别结果:

Android文字识别之tesseract的使用的更多相关文章

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

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

  2. 开源文字识别软件tesseract

    1.下载4.0软件,下一步下一步到成功: 2.安装之后配置环境变量,Path中添加安装路径(默认:C:\Program Files (x86)\Tesseract-OCR) 3.新增语言库的环境变量, ...

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

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

  4. Android ORC文字识别之识别身份证号等(附源码)

    项目地址https://github.com/979451341/OrcTest 我们说说实现这个项目已实现的功能,能够截图手机界面的某一块,将这个某一块图片的Bitmap传给tess-two的代码来 ...

  5. Android OCR文字识别 实时扫描手机号(极速扫描单行文本方案)

    身份证识别:https://github.com/wenchaosong/OCR_identify 遇到一个需求,要用手机扫描纸质面单,获取面单上的手机号,最后决定用tesseract这个开源OCR库 ...

  6. Android tess_two Android图片文字识别

    文字识别一般都用的tesseract-ocr. GitHub:https://github.com/tesseract-ocr/tesseract 而Android对应的比较推荐的有个tess-two ...

  7. Android应用开发进阶篇-场景文字识别

    因为研究生毕业项目须要完毕一个基于移动终端的场景文字识别系统.尽管离毕业尚早,但出于兴趣的缘故,近一段抽时间完毕了这样一套系统. 主要的架构例如以下: client:Android应用实现拍摄场景图片 ...

  8. 百度OCR 文字识别 Android安全校验

    百度OCR接口使用总结: 之前总结一下关于百度OCR文字识别接口的使用步骤(Android版本 不带包名配置 安全性弱).这边博客主要介绍,百度OCR文字识别接口,官方推荐使用方式,授权文件(安全模式 ...

  9. 百度OCR文字识别-Android安全校验

    本文转载自好基友upuptop:https://blog.csdn.net/pyfysf/article/details/86438769 效果图: 如下为文章正文: 百度OCR接口使用总结:之前总结 ...

随机推荐

  1. pagecontrol

    PageControl组件位于组件板的Win32页中,该组件用于 实现窗体上多页面技术,每个页面上均能添加若干控件.程序运行时,单击页面标签就可以在多页之间切换.1.建立多页 用鼠标右键单击PageC ...

  2. shiro中移除jsessionid的解决方案

    在web.xml配置文件中设置 <session-config> <!-- Disables URL-based sessions (no more 'jsessionid' in ...

  3. ASP.NET Core入门(一)

    大家好,很荣幸您点了开此篇文章,和我一起来学习ASP.NET Core,此篇文字为<ASP.NET Core入门>系列中的第一篇,本系列将以一个博客系统为例,从第一行代码,到系统发布上线( ...

  4. Windows上编译OpenShadingLanguage

    将OSL 1.3.0解压到[工作目录]/osl/OpenShadingLanguage 对Debug使用如下bat生成项目文件: @Echo off cd OpenShadingLanguage se ...

  5. 达梦数据库(DaMeng)如何删除IDENTITY自增属性字段

    今天工作中使用到达梦数据库,要求删除具有IDENTITY自增属性的字段. 直接执行删除:ALTER TABLE <表名> DROP COLUMN <列名> CASCADE; 删 ...

  6. nowcoder(牛客网)OI测试赛2 解题报告

    qwq听说是一场普及组难度的比赛,所以我就兴高采烈地过来了qwq 然后发现题目确实不难qwq.....但是因为蒟蒻我太蒻了,考的还是很差啦qwq orz那些AK的dalao们qwq 赛后闲来无事,弄一 ...

  7. Winfrom 桌面弹窗拦截 关闭进程简易程序 源代码下载

    ***********************2019 2.7更新 v 2.0*************************************************** 程序 源代码 交互 ...

  8. 本地Windows环境下安装MySql

    Windows 上安装 MySQL Windows 上安装 MySQL 相对来说会较为简单,你需要在 MySQL 下载中下载 Windows 版本的 MySQL 安装包. Download Link: ...

  9. 判断AVL树是否平衡

    AVL树是高度的平衡二插搜索树,其左子树和右子树的高度之差不超过1(树中的左子树和右子树都是AVL树),维持这个高度之差就要控制它的平衡因子.那么判断一颗AVL树是否平衡就需要判断它的左子树和右子树高 ...

  10. 如何实现 Python 中 selnium 模块的换行

    如何实现 Python 中 selnium 模块的换行 三种方法: 直接调用 .submit() 方法,常使用在用户密码登录中 # driver.find_element_by_xpath('//*[ ...