android opencv JNI开发环境搭建

栏目: 编程工具 · 发布时间: 7年前

内容简介:千里之行,始于足下。网上很多opencv4android的教程都是通过导入opencv的java module进行开发的,因为之前一直在看opencv c++ 的开发流程,所以采用了JNI的方法直接编写c++代码来学习opencv。首先需要安装CMake以及NDK环境,没有安装的的可以直接百度。

千里之行,始于足下。

网上很多opencv4android的教程都是通过导入opencv的java module进行开发的,因为之前一直在看opencv c++ 的开发流程,所以采用了JNI的方法直接编写c++代码来学习opencv。

新建项目

首先需要安装CMake以及NDK环境,没有安装的的可以直接百度。

新建一个包含c++ support的项目,如下图所示,一路next就可以了。

android opencv JNI开发环境搭建

导入opencv

需要下载opencv4android的sdk

opencv 3.4.1下载地址

下载完成后将.so文件以及include导入项目的 src/main/jnilibs文件中。

.so文件在sdk的“\sdk\native\libs”目录下。

include文件在“\sdk\native\jni\include”目录下。

android opencv JNI开发环境搭建

为了手机的abi,我还加了armeabi-v7a,所以需要修改app的build.gradle,如果想在虚拟机上跑还需要加入x86的abi。

externalNativeBuild {
            cmake {
                cppFlags ""
                abiFilters "armeabi","armeabi-v7a"
            }
        }

修改CMakeLists.txt

但是现在还无法在我们的native.cpp文件中直接引用opencv的c++代码,还需要修改CMakeLists.txt。

根据自己的路径添加,libopencv_java3是你的so链接库的名字。

include_directories(src/main/jniLibs/include)

add_library(libopencv_java3 SHARED IMPORTED)
set_target_properties(libopencv_java3 PROPERTIES IMPORTED_LOCATION
            ${CMAKE_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java3.so)

在target_link_libraries中也加入libopencv_java3

target_link_libraries( # Specifies the target library.
                       native-lib libopencv_java3

                       # Links the target library to the log library
                       # included in the NDK.
                       ${log-lib} )

完成以上步骤sync 项目之后,我们就可以开始愉快的编码了。 如下图所示,可以使用opencv c++的api了。

android opencv JNI开发环境搭建

github地址


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Paradigms of Artificial Intelligence Programming

Paradigms of Artificial Intelligence Programming

Peter Norvig / Morgan Kaufmann / 1991-10-01 / USD 77.95

Paradigms of AI Programming is the first text to teach advanced Common Lisp techniques in the context of building major AI systems. By reconstructing authentic, complex AI programs using state-of-the-......一起来看看 《Paradigms of Artificial Intelligence Programming》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具