Android OpenCV 图像识别
最近打算写一个android 平台opencv 的小程序,着手查找了一下资料.网络上的资料参差不齐,有一些都比较老旧,我参考了前面的方法找到了一个简单的搭建方法,分享给大家.
0,环境的搭建:
java 虚拟机环境搭建,网络资料很多不再赘述.
android 开发环境的搭建参见我的上一篇博客 基于adt-bundle-windows-x86的android开发环境搭建.
下面说明如果搭建 android opencv 环境:
下载NDK http://developer.android.com/tools/sdk/ndk/index.html ,
下载Opencv-android-sdk OpenCV for Android
下载 CDT http://www.eclipse.org/cdt/downloads.php
Eclipse 安装CDT 有许多方法 ,我这里是在Eclipse 工具栏 ,help --> install new software --> add --> archive ,打开刚才下载的压缩及可.
安装完 CDT ,这里可以看到 c / c++ 这一项
把NDK 和 opencv-android-sdk 解压到你的程序目录.
导入官方的工程文件,过程如下图:


这里直接选择你的opencv-android-sdk目录即可,所有工程文件将自动导入.
此时导入的工程文件会提示有许多错误 ,不要紧,这里配置还未完成 .设置NDK环境变量, 在系统中添加
NDKROOT 环境变量,变量值为你NDK的路径.需要强调一点,如果你是window环境,路径要用短路径名,如我的图:

修改jni 目录中Android.mk 中的include 目录,如果是windows 环境 修改成像这样的 include D:\Progra~1\OpenCV-2.4.7.1-android-sdk\sdk\native\jni\OpenCV.mk
OpenCV library这个工程是所必需的库文件, 所以导入的时候要一起导入.
紧接如下图修改project build target 和 library 即可:

进行一下,project --> clean 导入的工程文件应该都可以编译了.
1,运行官方的例子
手机端需要首先安装 opencv manager ,这个在\OpenCV-2.4.7.1-android-sdk\apk 中 ,这几个包我在小米 2s 安装都可以.
运行OpenCV Sample - face-detection 例子.

2,anroid 基于opencv 数卡程序.
原想基于opencv 编写数卡的程序,后来下载和学习zxing 发,现在zxing 源码上进行修改更容易实现,所以便不在这里更新内容.感性趣的可以看下一篇zxing 一维码部分深入分析与实际应用.
参考及阅读推荐:
http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html
http://www.cnblogs.com/TseChiHoi/archive/2012/10/19/2726524.html
Android OpenCV 图像识别的更多相关文章
- WINDOWS系统Eclipse+NDK+Android + OpenCv
WINDOWS系统Eclipse+NDK+Android + OpenCv 参考文档博客 1 NDK环境搭建 http://jingyan.baidu.com/article/5d6edee22d90 ...
- Android OpenCV样例调试+报错处理
1.OpenCV样例调试:<OpenCV Sample - image-manipulations> blog+报错:E/CAMERA_ACTIVITY(17665): Cam ...
- Android+openCV 的坑
之前一直用IntelliJ IDEA 导入 opencv_android_sdk 的 java 包,在最后一步finish时,始终出错. 后来重新安装Android Studio 重复以上步骤,能顺利 ...
- android opencv
最近工作需求:用opencv来先做一个demo.扫描照片进行边缘检测和透视矫正. 之后会加入照片降噪等处理. 请教了一下搞图像的同事.他的提议: 1.绿盟的“黄色照片检测” 用的是动态的opencv库 ...
- 【感受】android + opencv + umat + opencl使用感受
近期编译了android下支持opencl的opencv,使用opencl能力的关键是用cv::UMat替换cv::Mat. 实际使用后发现坑很多,非常不成熟,不推荐使用这种方式来提升实际产品的性能. ...
- Android开发(51) 摄像头自动对焦。在OpenCV图像识别中连续拍照时自动对焦和拍照。
概述 对焦,这里所说的“焦”是指“焦距”.在拍照时,一定是需要调焦的.一般会在目标位置最清晰的时候会停止对焦.最近在处理OpenCV进行图像识别时,需要连续的调焦(对焦),并在对焦完成后进行拍照,获取 ...
- eclipse+android+opencv环境搭建的步骤
---恢复内容开始--- 2016年4月12日编写 一.第一步:搭建eclipse开发环境 1.在eclipse官网中下载eclipse.zip进行解压即可.没有版本要求,但要和电脑的位数相匹配.如: ...
- Android OpenCV实现图片叠加,水印
关于如何用纯OpenCV实现图片叠加的例子实在是太少,太多的是使用 C++,JNI实现的,如果要用C++的话,我们为啥不转行做C++ 下面的例子基于 Android JavaCV 实现了在im_bea ...
- Android+openCV人脸检测2(静态图片)
前几篇文章中有提到对openCV环境配置,这里再重新梳理导入和使用openCV进行简单的人脸检测(包括使用级联分类器) 一 首先导入openCVLibrary320 二 设置gradle的sdk版本号 ...
随机推荐
- 张艾迪(创始人):创始人故事无限N个
世界第一女孩+世界第一互联网女孩 创始人故事无限N个 全球第一互联网女孩EidyZhang艾迪.张 The World No.1 Girl :Eidyzhang The World No.1 Inte ...
- ASP.NET 成功执行Update 的 ExecuteNonQuery() 返回值大于0,但是查看数据库却没有改变
//真实姓名保存 $("#TrueNameSaveBtn").click(function () { if ($("#TrueNameSaveText").va ...
- eval解析非标准json
以前一直在用,但是不知道原理,惭愧啊,今天把自己想法加上. eval("{a:1}"); eval("{a:,b:1}"); 第一眼的感觉是都会得到一个对象,其 ...
- const 放在函数后
const 放在函数后表示这个函数是常成员函数, 常成员函数是不能改变成员变量值的函数.const 限定符,它把一个对象转换成一个常量.举例:为了使成员函数的意义更加清楚,我们可在不改变对象的成员函数 ...
- json体会
1.用json-lib的jar包,创建JsonObject的对象(其引用取名jo),JsonObject jo = new JsonObject(); 再创建一个jsonobject对象:JsonOb ...
- Cloudera-Manager修改集群的IP
1.业务需求说明:由于公司网络进行了整改,随之而来的就是对应的ip网段发生了变化,其中我的hadoop的集群各主机的ip也相应的发生了改变,因此需要对各主机进行修改ip. 2.具体操作: 首先停止cd ...
- FileWriter和FileReader简单使用
FileWriter和FileReader使用 package com.main.test; import java.io.FileNotFoundException; import java.io. ...
- How to implement updatable view with NHibernate
see : http://msdn.microsoft.com/en-us/library/ms187956.aspx(The constrains of creation updatable vie ...
- SCC(强连通分量)
1.定义: 在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(SC---strongly connected). 有向图中的极大强连通子图,成为强连通分量(SCC---strongly ...
- 回顾Spring框架
Spring框架: 传统JavaEE解决企业级应用问题时的"重量级"架构体系,使它的开发效率,开发难度和实际的性能都令人失望.Spring是以一个 救世主的身份降临在广大的程序员面 ...