您的位置:首页 > 移动开发

android opencv配置及运行时不用opencv Manager即可运行APP

2016-10-28 16:31 369 查看
准备Android-ndk Android-sdk eclipse(ADT+CDT) Java-JDK opencv android SDK软件包并配置好Java环境

将opencv android SDK拷贝到Android工程目录下,将OpenCV-2.4.10-android-sdk\sdk\java导入到项目



 

配置NDK



新建一个调用opencv的Android项目,让此项目支持JNI(eclipse直接编译so,之前写错了,应该是加载native的support)



添加opencv依赖库



添加opencv头文件



将Android opencv SDK armeabi-v7a中的libopencv_java.so拷贝到JNI目录下并在Android.mk中添加

#OpenCV_INSTALL_MODULES:=on

#OPENCV_CAMERA_MODULES:=off

OPENCV_LIB_TYPE:=SHARE

ifeq ("$(wildcard $(OPENCV_MK_PATH))","") 

#try to load OpenCV.mk from default install location 

include D:/Ovationsoft/Android/lxctest/OpenCV-2.4.10-android-sdk/sdk/native/jni/OpenCV.mk 

else 

include $(OPENCV_MK_PATH) 

endif 

include $(CLEAR_VARS)

LOCAL_MODULE := opencv_java

LOCAL_SRC_FILES := libopencv_java.so

include $(PREBUILT_SHARED_LIBRARY)

创建Java调用JNI的类



在OnClickListener添加:  static {

     System.loadLibrary("TongueProcess"); 

  if (!OpenCVLoader.initDebug()) {

//   Log.i("test", "OpenCVLoader.initDebug() 失败");

  } else {

   System.loadLibrary("opencv_java");

  }

 }

 

进入到项目bin/classes目录,javah包名+类名生成头文件并将头文件拷贝到JNI目录

创建CPP文件,并在Android.mk中添加
LOCAL_MODULE   := ImgFun
LOCAL_SRC_FILES :=com_ovation_healthmirror_utils_TestOpencv.cpp

include$(BUILD_SHARED_LIBRARY)

直接Build Project即可生成so(build前要把引用的第三方so库拷贝到JNI目录下做备份并在Android.mk中配置
include$(CLEAR_VARS)

LOCAL_MODULE := BaiduMapSDK_base_v3_7_0

LOCAL_SRC_FILES :=libBaiduMapSDK_base_v3_7_0.so

include$(PREBUILT_SHARED_LIBRARY))




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: