最近工作需要这样的功能 如下图 要在类似功能在android上实现

OpenCv for Android 环境搭建

然后实现成这样

OpenCv for Android 环境搭建

这两张图来自博客:图像校正—透视变换

可惜他用的是C/C++语言写的调用opencv,我参考了下他写的方案就想到了android 的jni方式加载opencv

所以就看到了这个:

   jni调用 [安卓开发笔记一]Android开发配置opencv环境超详细教程

首先如果你的对你的C/C++很有自信的话可以尝试这个方式

但对于很久没用过C和对OpenCV第一次了解的人来说,这种方式简直寸步难行。

所以我就用了使用Java的方式来进行导入.

 

那么我们就首先做个准备工作吧:

  1.安装android studio (会来看这个文章的,这个我觉得大家都会装了)

  2.下载opencv sdk 我这里的版本是3.2  下载地址:http://opencv.org/releases.html

 

做好了这个那么就开始吧

首先我们看下opencv SDk的文件目录

OpenCv for Android 环境搭建

这里的有个sdk文件夹点进去,会看到下图然后打开android studio

OpenCv for Android 环境搭建

导入moudule,找到上面的java文件夹导入

OpenCv for Android 环境搭建

OpenCv for Android 环境搭建

然后打开

OpenCv for Android 环境搭建

OpenCv for Android 环境搭建

OpenCv for Android 环境搭建

 

之后打开app 的 build.gradle 然后打开OpenCVLibrary320的build.gradle  有些地方需要一致

把app中的复制一下

OpenCv for Android 环境搭建

覆盖原来的openCVLibrary320中

OpenCv for Android 环境搭建

 接下来需要导入库了,找到复制里面的所有文件夹

 OpenCv for Android 环境搭建

粘贴到工程的这个地方

OpenCv for Android 环境搭建

然后别急,先去配置一些东西打开app的build.gradle,写入下列代码

OpenCv for Android 环境搭建

 然后构建下算是导入opencv4Java 了.

 为了方便复制:

compile fileTree(dir: "$buildDir/native-libs",include: 'native-libs.jar')

 

task nativeLibsToJar(type: Jar,description:'create a jar archive of the native libs'){
    destinationDir file("$buildDir/native-libs")
    baseName 'native-libs'
    from fileTree(dir: 'libs',include: '**/*.so')
    into 'lib/'
}
tasks.withType(JavaCompile){
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
}

 如果有问题这样操作下

OpenCv for Android 环境搭建

 

这边有个opencv加载到android中的视频教程地址需要挂个VPN : https://www.learn2crack.com/2016/03/setup-opencv-sdk-android-studio.html

有个开源项目可以使用看看:https://github.com/pqpo/SmartCropper

 

相关文章: