Android 环境下OpenCV使用-- 环境搭建(一)

1、OpenCV SDK下载

openCv官网下载
在这里插入图片描述

2、Android Studio 创建 C++ 工程

在这里插入图片描述

3、openCV的so库 加载项目中

  1. src->main目录下新建 jniLibs
  2. 下载的openCv的sdk的 opencv-4.1.0-android-sdk\OpenCV-android-sdk\sdk\native\libs目录对应平台的so库复制进来

在这里插入图片描述

4、加载头文件

将sdk目录下边的头文件目录 include的头文件加载到项目中
在这里插入图片描述
在这里插入图片描述

5、配置 CmakeLists文件



cmake_minimum_required(VERSION 3.10.2)


project("open")


include_directories(include)

add_library(
        open


        SHARED


        native-lib.cpp)



find_library(
        log-lib

        log)


set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -L${CMAKE_SOURCE_DIR}/../jniLibs/${CMAKE_ANDROID_ARCH_ABI}")

target_link_libraries(
        open
        opencv_java4
        ${
    
    log-lib})

6、gradle 文件配置

 defaultConfig {
    
    
     
        externalNativeBuild {
    
    
            cmake {
    
    
                cppFlags ''
                abiFilters 'armeabi-v7a'
            }
        }

        ndk{
    
    
            abiFilters 'armeabi-v7a'
        }

    }

7、jni中验证 openCV

#include <jni.h>
#include <string>


#include "opencv2/opencv.hpp"

using namespace cv;

extern "C" JNIEXPORT jstring JNICALL
Java_com_xyx_open_MainActivity_stringFromJNI(
        JNIEnv* env,
        jobject /* this */) {
    
    
    std::string hello = "Hello from C++";

    Mat src=imread("sdcard/test_20220811161338.png");

    cvtColor(src,src,COLOR_BGR2GRAY);

    imwrite("/sdcard/test1.png",src);

    src.release();

    return env->NewStringUTF(hello.c_str());
}

8、项目编译

简单测试,将sdcard目录下的一张照片,通过opencv处理,输出成功,openCV在Android 上的使用环境已经没问题。

猜你喜欢

转载自blog.csdn.net/baidu_31956557/article/details/127481571