Android Studio集成OpenCV
SDK关键别用4.0.0版的用老版
-
创建新项目或者使用老项目
使用向导创建一个新项目(Menu:/File/New Project)。 -
编译运行
这时候可以试试运行新建的项目(Menu:/Run/Run ‘app’)。可以试试修改文件app/res/layout/content_main.xml,修改一下字符串“Hello world!”,然后看看运行效果。 -
下载OpenCV for Android
从opencv网站下载OpenCV for Android,解压到本地目录,例如/opt/OpenCV-android-sdk。
确定sdk/native/libs目录下有arm…,mips…和等开头的子目录,这些是针对不同平台的编译好的库文件。稍后我们需要把libs目录复制到项目中。 -
在项目中导入OpenCV
把OpenCV导入到项目中(Menu:/File/New/import_Module):
Source-directory:{unzip-dir}/adk/java
Module name: Android Studio能自动填充这个信息openCVLibrary310,这个我们不用修改,默认就行
点击“next”,接下来有3个复选框,我们需要全部选中,点击“Finish”
接下来,Android Studio开始导入module,完成后,能够看到import-summary.txt,如下图:
同时,你还会看到一个错误信息,说找不到android-14,这是因为我们下载的OpenCV中的build.gradle里配置的是用android API version 14编译,默认情况下,我们的Android SDK里已经不包含android-14这个版本了。后面我们需要解决这个错误。
- *设置Module依赖
因为我们的app里要使用opencv库里提供的方法,我们需要在app的依赖里增加刚导入进来的opencv module。
打开project structure(Menu:/File/Project_Structure)
选择“app”module
切换到Dependenciestab页
点“+”,选择Module,能看到openCVLibrary310,选择之
6. 查看app build.gradle
项目中有很多个build.gradle文件,我们要看app的build.gradle文件,这个文件在目录cvtest1/app下面,在project视图里是这样的build.gradle(Module:app),重点看如下内容:
compileSDKVersion (mine says 23)
buildToolsVersion (mine says 23.0.2)
minSdkVersion (mine says 19)
targetSdkVersion (mine says 23)
7. *修改OpenCV build.gradle
我们需要按照上面的内容来修改OpenCV的build.gradle,默认情况下,在project view下看不到新导入的openCVLibrary310,如下图:
这时,我们可以切换左上角的Android视图到Project Files视图,如下图:
上图光标选中的build.gradle文件就是我们要修改的文件。
8. Rebuild Project
rebuild项目(Menu:/Build/Rebuild Project),这时应该没有错误信息了,如下图:
这时在project view的Android视图里,可以看到openCVLibrary310这个Module了,如下图:
-
*复制OpenCV Native lib到项目
复制{unzip-dir}/sdk/native/libs到项目cvtest1/openCVLibrary/src/main/目录下,重命名为jniLibs,如图所示: -
修改代码,加载OpenCV so
修改文件MainActivity.java,在函数onCreate最后增加如下代码,加载OpenCV动态链接库。
if (!OpenCVLoader.initDebug()) {
Log.e(this.getClass().getSimpleName(), " OpenCVLoader.initDebug(), not working.");
} else {
Log.d(this.getClass().getSimpleName(), " OpenCVLoader.initDebug(), working.");
}
运行一下
作者:menglj
链接:https://www.jianshu.com/p/e90da53c4bb5
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
本文地址:https://blog.csdn.net/weixin_40212700/article/details/107492273