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版本号 ...
随机推荐
- /proc/stat文件详解(翻译)
原文地址:http://www.linuxhowtos.org/System/procstat.htm 各种关于系统内核的活动信息都可以在/proc/stat文件中找到,该文件记录了自系统第一次启动以 ...
- 最短路径——Floyd算法
如何求一张图中任意两顶点之间的最短路径长度,这里写一种最简单的算法——Floyd算法: #include<stdio.h> #define inf 9999 int main() { ][ ...
- spring随手笔记1:constructor-arg
<bean id="Hello" class="com.ltf.captha.serviceImpl.HelloWorldServiceImpl"> ...
- 第十二章 非对称加密算法-RSA
注意:本节内容主要参考自<Java加密与解密的艺术(第2版)>第8章“高等加密算法--非对称加密算法” 12.1.RSA(最经典的非对称加密算法) 特点: 使用一套密钥即可完成加解密(与D ...
- 转:在支持ARC工程中编译不支持ARC的文件
转:http://blog.csdn.net/duxinfeng2010/article/details/8709697 实践总结:-fno-objc-arc 设置 解决了 旧代码中存在 releas ...
- terminator终端工具
terminator是个很好的终端程序,在Ubuntu Linux下安装如下: sudo apt-get install terminator 可在同一屏打开多个窗口:
- 排序小结(C++版)
一.快速排序 #include <iostream> using namespace std; int adjust(int a[],int start,int end) { int i, ...
- C# base64图片数据传送加号(+)变空格问题
今天遇到一个问题,将图片的base64数据转发,客户收到base64数据后生成图片失真. 通过日志监控,对比客户收到的数据和我发出的数据,最终发现客户base64数据中原本应该显示为加号(" ...
- UIkit框架之UISegmentedControl
1.继承链:UIcontrol:UIview:uiresponder:NSObject 2.初始化 (1)- (instancetype)initWithItems:(NSArray *)items ...
- MySQL字符集乱码
学数据库,最让人丧气的就是字符集的问题了,一旦出问题,就会有砸电脑的冲动,特别是在修改很多次字符集后依然不成功的时候! 我用的数据库软件是MySQL 5.1.28.最初出问题的时候,是这样的: 情景一 ...