Android studio 中基于c++的OpenCV 配置
最近在做文字识别的App,需要调用图像处理的c++代码,关于OpenCV的配置遇到很多坑,因此记录一下配置流程。
配置版本:Android studio:3.6.3(版本查看:Help–>About)
Opencv :4.1.2(Android版),下载后解压即可
若opencv版本不同也可以,但需要注意后续中配置进行相应更改。
1.新建Native C++工程
File–>New–>New Project,选择Native C++;
2.导入opencv
选择File --> New -->Import Module,导入刚刚解压的opencv-4.1.2-android-sdk,选择OpenCV-android-sdk\sdk\java.
3.修改build.gradle (opencv)
将文件中的 ‘application’ 改为‘library’ ,将defaultConfig中的“applicationId” org.opencv ”一行 删除;(如果是opencv3就不需要更改,自动生成library)
4.build.gradle (: app) 和build.gradle (: opencv)修改
两个文件中的 compileSdkVersion和build ToolsVersion 需要保持一致
5.将opencv作为dependencies加到app中
选择File --> Project Structure --> Dependencies,选择app后点+号,选择opencv
6.在src/main/下新建JNI Folder
文件名为jniLibs,并将D:\soft\opencv-4.1.2-android-sdk\OpenCV-android-sdk\sdk \ native \ libs下的四个文件复制过去(opencv3版本也是复制下图的四个文件)
结果如下图所示
7.修改gradle.properties文件
加入opencv的路径
opencvsdk=D\:/soft/opencv-4.2.1-android-sdk/OpenCV-android-sdk
8.修改 Settings.gradle文件
添加如下内容,project中的内容为导入opencv时的命名。
include ':opencv4'
project(':opencv4').projectDir = new File(opencvsdk + '/sdk')
9.修改Build.gradle(:app)文件
在externalNativeBuild中添加如下内容: