opencv in android - nonelittlesong/study-opencv GitHub Wiki
abstracts:
学习安卓调用opencv
references:
canvas.rotate(90, 0, 0);
float scale= canvas.getWidth() / (float)mCacheBitmap.getHeight();
float scale2= canvas.getHeight() / (float)mCacheBitmap.getWidth();
if(scale2> scale){
scale = scale2;
}
if (scale!= 0) {
canvas.scale(scale,scale,0,0);
}
canvas.drawBitmap(mCacheBitmap, 0, -mCacheBitmap.getHeight(), null);
set(CMAKE_VERBOSE_MAKEFILE on)
# OPENCV_LIB
set(OPENCV_LIB "/add/your/path/OpenCV-android-sdk/sdk/native/libs")
# 头文件
include_directories(/add/your/path/OpenCV-android-sdk/sdk/native/jni/include)
add_library(libopencv SHARED IMPORTED)
set_target_properties(libopencv
PROPERTIES IMPORTED_LOCATION
"${OPENCV_LIB}/${ANDROID_ABI}/libopencv_java.so")
add_library(native-lib
SHARED
src/main/cpp/native-lib.cpp)
find_library(log-lib
log)
target_link_libraries(native-lib
libopencv
android
${log-lib})
#include <jni.h>
#include <opencv2/core/core.hpp>
#include <android/log.h>
1. 在使用android studio编译opencv的静态库时,无法引用stl库
新版的android studio默认使用c++_static
而opencv使用的是gnustl_static
因此要build.gradle要配置如下参数
arguments "-DANDROID_STL=gnustl_static"
详情翻墙参考android ndk 指南