運行環境: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
--------------------------------------分割線 --------------------------------------