Tesseract OCR集成Android Studio实现OCR识别

简介: Tesseract OCR集成Android Studio实现OCR识别介绍Tesseract OCR谷歌开源的OCR识别引擎,支持多国文字包括中文简体与繁体。最新的版本是3.x。

Tesseract OCR集成Android Studio实现OCR识别

介绍

Tesseract OCR谷歌开源的OCR识别引擎,支持多国文字包括中文简体与繁体。最新的版本是3.x。可以通过安装程序安装在机器上然后通过命令行运行该程序识别各种图片中的文字、同时还提供二次开发包,支持二次开发包括C、C++语言。也可以被移植到Android平台实现移动应用领域的OCR识别APP。

下载

在Android平台上使用Tesseract OCR首先要下载Tess2工程,它是专门针对Android平台编译出来的,下载地址如下 - https://github.com/rmtheis/tess-two 。下载解压缩之后你就会看到如下目录结构:
这里写图片描述
然后打开Android Studio新建一个项目应用,选择导入Module之后选择导入红色圆圈中的tess-two文件夹,导入之后你就会看到如下:
这里写图片描述
项目必须是支持NDK的,所以要在Project Structure中指明NDK的路径。原因是tess-two是个NDK项目,没有NDK支持无法完成编译。
这里写图片描述
此外你可能还会遇到没有android-maven的错误,把下面的脚本加到build.gradle的最上面即可:

buildscript { 
repositories {
jcenter()
}
dependencies {
classpath ‘com.android.tools.build:gradle:2.1.2’
classpath ‘org.codehaus.groovy:groovy-backports-compat23:2.3.5’
classpath ‘com.jfrog.bintray.gradle:gradle-bintray-plugin:1.0’
classpath ‘com.github.dcendents:android-maven-gradle-plugin:1.5’
}
}
如果一切顺利,你就会完成导入与编译,看到导入成功的目录结构,上图第二张所示。下面就是在你的Activity中添加初始化代码如下:
    private void initTessBaseData() { 
mTess = new TessBaseAPI();
String datapath = Environment.getExternalStorageDirectory() + “/tesseract/”;
// String language = “num”;
String language = “eng”;
File dir = new File(datapath + “tessdata/”);
if (!dir.exists())
dir.mkdirs();
mTess.init(datapath, language);
}
然后通过监听【识别】按钮的Click事件响应识别动作如下:
    public void onClick(View v) { 
Bitmap bitmap = BitmapFactory.decodeResource(this.getResources(), R.drawable.textimage);
mTess.setImage(bitmap);
String result = mTess.getUTF8Text();
TextView txtView = (TextView)this.findViewById(R.id.idCard_textView);
txtView.setText(“结果为:” + result);
ImageView imgView = (ImageView)this.findViewById(R.id.imageView);
imgView.setImageBitmap(bitmap);
}
显示结果如下:
这里写图片描述
其中上部分为识别到文字显示,下面是对应加载的文字图片。
这里特别要注意的是必须在你对应目录有相关tessdata文件才可以,关于tessdata可以到如下地址下载:
https://github.com/tesseract-ocr/tessdata
手动或者通过程序Copy到你在初始化时候生成的目录下面即可。
此外,还不要忘记把tess-two作为依赖添加到app中去。

目录
相关文章
|
SQL 人工智能 Dart
Android Studio的插件生态非常丰富
Android Studio的插件生态非常丰富
1030 1
|
Ubuntu Linux Android开发
Android Studio支持多种操作系统
Android Studio支持多种操作系统
818 1
|
开发工具 Android开发 iOS开发
如何在Android Studio中配置Flutter环境?
如何在Android Studio中配置Flutter环境?
3001 160
|
12月前
|
存储 文字识别 自然语言处理
通义大模型在文档自动化处理中的高效部署指南(OCR集成与批量处理优化)
本文深入探讨了通义大模型在文档自动化处理中的应用,重点解决传统OCR识别精度低、效率瓶颈等问题。通过多模态编码与跨模态融合技术,通义大模型实现了高精度的文本检测与版面分析。文章详细介绍了OCR集成流程、批量处理优化策略及实战案例,展示了动态批处理和分布式架构带来的性能提升。实验结果表明,优化后系统处理速度可达210页/分钟,准确率达96.8%,单文档延迟降至0.3秒,为文档处理领域提供了高效解决方案。
1090 1
|
8月前
|
机器学习/深度学习 文字识别 Linux
Umi-OCR_文字识别工具 免安装使用教程(附下载安装包)!永久免费,开源离线OCR识别软件下载
Umi-OCR是一款开源免费、支持离线运行的高精度OCR文字识别工具,基于深度学习技术,可快速识别中文、英文、日文等多种语言。无需联网,保护隐私,适用于Windows和Linux系统,解压即用,操作简便,是处理图片转文本的理想选择。
5264 7
|
12月前
|
人工智能 文字识别 自然语言处理
熊猫 OCR 识别软件下载,支持截图 OCR、PDF 识别、多语言翻译的免费全能工具,熊猫OCR识别
本文介绍了几款实用的图文识别软件,包括熊猫OCR、Umi-OCR和天若OCR_本地版。熊猫OCR功能强大,支持多窗口操作、AI找图找色、OCR识别等;Umi-OCR免费且高效,具备截图OCR、批量处理等功能;天若OCR界面简洁,适合快速文字识别。文章还提供了下载链接及软件特点、界面展示等内容,便于用户根据需求选择合适的工具。
1437 36
|
Android开发 Windows
Android studio 报错Connect to 127.0.0.1:8888 [/127.0.0.1] failed: Connection refused: connect(已解决)
这是一篇关于解决Android Studio报错“Connect to 127.0.0.1:8888 failed: Connection refused”的文章。问题通常因系统代理设置被Android Studio自动保存导致。解决方法是找到系统中Android Studio使用的gradle.properties文件(位于Windows的C:\Users\你的电脑用户名\.gradle或Mac的/Users/.{你的用户目录}/.gradle),删除或注释掉多余的代理配置后保存并重新Sync项目。希望此经验能帮助快速解决同类问题!
2479 36
|
Java Android开发
Android studio中build.gradle文件简单介绍
本文解析了Android项目中build.gradle文件的作用,包括jcenter仓库配置、模块类型定义、包名设置及依赖管理,涵盖本地、库和远程依赖的区别。
1053 19
|
前端开发 Java 编译器
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
609 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
|
Dart 前端开发 Android开发
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
523 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex