- Linux 下使用 QT 调用 opencv 读取摄像头视频 调试心得
- Android 开发 摄像头 SurfaceView 预览 背景带矩形框 实现
- Android 开发:安装 NDK,移植 OpenCV2.3.1,JNI 调用 OpenCV 全过程
- try to load OpenCV.mk from default install location
- Android 摄像头开发完美 demo
- 如何设置 ImageButton 按键按下去后的 特效
- Android 摄像头:只拍摄 SurfaceView 预览界面特定区域内容(矩形框)
- Android 开发:SurfaceView 上新建线程绘制旋转图片 及 刷新特定区域(脏矩形)
- Android 开发:ImageView 上绘制旋转圆环(透明度不同的旋转圆环,利用 canvas.drawArc 实现)
- Android 上掌纹识别第一步:基于 OpenCV 的 6 种肤色分割 源码和效果图
- Android 开发:实时处理摄像头预览帧视频 - 浅析
- Android 摄像头开发:拍照后添加相框,融合相框和图片为一副 图片
- Android(OpenCV) NDK 开发: 0xdeadbaad(code=1) 错误 及 关闭 armeabi 和 libnative_camera_r2.2.2.so 的生成
- Android 摄像头开发:实时摄像头视频预览帧的编码问题(二)
- setContentView 切换页面(无需每次都 findViewById) - 二
- Android 开发:setContentView 切换界面,自定义带 CheckBox 的 ListView 显示 SQlite 条目 - 实现
Android 开发:安装 NDK,移植 OpenCV2.3.1,JNI 调用 OpenCV 全过程
开发环境:Fedora14 , 操作中以 root 权限操作,这年头 Android 移植上 OpenCV 就强大了,可以做很多复杂的视频分析、图像处理工作了!如火灾、人脸、视频行为的分析等。欢迎 Android OpenCV 爱好者,加入 OpenCV4Android 联盟群:66320324。备注:yanzi
一:NDK 的安装
首先是安装 NDK,安装之前需要安装 CDT,具体的参照 http://blog.csdn.net/yanzi1225627/article/details/7736364 这里来完成。这里再详细记录下 NDK 的安装过程。google 下载 NDK,也可以点击这里下载: http://download.csdn.net/detail/yanzi1225627/5015893,下载后输入 tar -jxvf android-ndk-r8-linux-x86.tar.bz2 -C /usr/local/android/将其解压到/usr/local/android/ 目录。『注,我的 android 相关文件都安装在这里。这个目录不是死的。』然后 gedit /etc/profile,在里面添加:export PATH=$PATH:/usr/local/android/android-ndk-r8,从安装 JDK 到 eclipse, android, NDK,在/etc/profile 文件里,添加的命令一共有如下三条:
export JAVA_HOME=/usr/local/android/jdk1.7.0_04
export PATH=$PATH:$JAVA_HOME/bin
export PATH=$PATH:/usr/local/android/android-ndk-r8
只要这三条就行了。然后 source /etc/profile 使刚才的设置生效。
在终端里输入:ndk-build,可以测试出 ndk 安装成功了么有。
注:有的时候也可以通过在线安装方式,在 eclipse 里点 help-install new software,网址输入这个:ADT - https://dl-ssl.google.com/android/eclipse/ ,也会看到安装 NDK Plugins, 如果经过上面的步骤,NDK 不能用就把这个也装上。 但如果只装这个,好像不中,找不到 ndk 安装的目录,也无法配置路径。
二:OpenCV 的移植
这里的移植不是像在 qt 下那么麻烦,这是因为 OpenCV 退出来直接支持 Android 的版本,所以不需要自己编译。直接下下来,解压缩就可以了。我用的 OpenCV2.3.1,需要的可以直接到 csdn 资源里下载,链接: http://download.csdn.net/detail/yanzi1225627/5013701 ,也可以自己到 sourceforge 上下载,链接: http://sourceforge.net/projects/opencvlibrary/files/opencv-android/ ,从这里可以看出从 OpenCV2.3 开始就有编译好的 android 版本。最新的是 2.4.3 版本,在 2012 年 12 月 24 发布的。牛逼阿 !
接下来就是配置。事实上有两种方法在 Android 里调用 OpenCV,一种是使用 OpenCV java Api,一种是通过 JNI 的方式。这里是针对后者。将 OpenCV-2.3.1-android-bin.tar.bz2 解压缩,然后将里面的 OpenCV-2.3.1 拷贝到 Eclipse 工作空间的平级目录。图示:
为此,我们现先建一个工作空间。新建文件夹/home/yan/TestOpenCV,点 eclipse 里的 File---Switch workspace---other,选中这个目录。切换到这个工作空间后,点 Window---Preference--android,选中自己的 android-sdk 的安装目录,我的是:/usr/local/android/android-sdk-linux。然后就可以在这个工作空间里正常 android 开发了,如果不设置这个,新建的工程全是红叉叉。
新建一个项目 HaveImgFun,包名是 package com.testopencv.haveimgfun; 然后将刚才解压缩出来的 OpenCV-2.3.1-android-bin\samples"下的 includeOpenCV.mk 文件拷贝到和项目 HaveImgFun 同一级目录 中。图示:
在 eclipse 里选中那个项目,新建一个文件夹 jni,然后新建文件:Android.mk,里面的内容是:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
include ../includeOpenCV.mk
ifeq ("$(wildcard $(OPENCV_MK_PATH))","")
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论