Android OpenCV例子Face-detection运行

运行环境:Ubuntu13.10 + adt-bundle-linux-x86_64-20130729 +ndk9 + OpenCV-2.4.7.1-Android-sdk;
 
关于Opencv在Android环境中的开发,网上介绍的教程很多,但实际上在Ubuntu环境中搭建开发环境是非常简单的。
 
只需要下载adt(其中已经包括Eclipse了,如果只开发Android/Java程序,已经够用了),NDK,设置环境的话编辑/etc/profile文件,添加环境变量,如下所示:
 
export JAVA_HOME=/usr/lib/jvm/java-6-Oracle
 export JRE_HOME=/usr/lib/jvm/java-6-oracle/jre

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:/home/jackie/software/adt-bundle-linux-x86_64-20130729/sdk/platforms/android-18/android.jar:home/jackie/WorkOpenAnd/OpenCV-2.4.7.1-android-sdk.zip

export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HOME/bin
 export ANDROID_HOME=/home/jackie/software/adt-bundle-linux-x86_64-20130729/sdk
 export NDKROOT=/home/jackie/software/android-ndk-r9
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$NDKROOT

其中Java环境变量是自动下载并进行设置的。
 
今天在运行OpenCV/Samples/face-detection程序时,编译NDK时提示,
 
Android NDK: WARNING:jni/Android.mk:detection_based_tracker: non-system libraries in linker flags: -lopencv_java   
 Android NDK:    This is likely to result in incorrect builds. Try using LOCAL_STATIC_LIBRARIES   
 Android NDK:    or LOCAL_SHARED_LIBRARIES instead to list the library dependencies of the   
 Android NDK:    current module   

然后运行的时候就提示cannot launcher, 大概是说 版本不匹配,后来发现在Application.mk文件中,APP_PLATFORM := android-8,而我当前用的版本是18,将其改为APP_PLATFORM := android-18就可以正常运行了。

开启Android Opencv之旅~~

————————————–分割线 ————————————–

Ubuntu Linux下安装OpenCV2.4.1所需包 http://www.linuxidc.com/Linux/2012-08/68184.htm

Ubuntu 12.04 安装 OpenCV2.4.2 http://www.linuxidc.com/Linux/2012-09/70158.htm

CentOS下OpenCV无法读取视频文件 http://www.linuxidc.com/Linux/2011-07/39295.htm

Ubuntu 12.04下安装OpenCV 2.4.5总结 http://www.linuxidc.com/Linux/2013-06/86704.htm

Ubuntu 10.04中安装OpenCv2.1九步曲 http://www.linuxidc.com/Linux/2010-09/28678.htm

基于QT和OpenCV的人脸识别系统 http://www.linuxidc.com/Linux/2011-11/47806.htm

————————————–分割线 ——————————-