使用Android Studio创建OpenCV4.1.0 项目的步骤
一、OpenCV

OpenCV(开源计算机视觉库)是一个开源的计算机视觉和机器学习软件库,是一个基于C与C++的跨平台计算机视觉处理库。
二、下载
开发基于Andorid的计算机视觉的应用可以使用OpenCV 4.1.0-Android SDK:
从官方网站下载 OpenCV 4.1.0 For Android SDK
https://sourceforge.net/projects/opencvlibrary/files/4.1.0/opencv-4.1.0-android-sdk.zip/download
三、使用Android Studio 开发基于OpenCV 4.1.0的移动应用
(1)平台版本
Android Studio 3.2.1
(2)新建一个Android项目
(3)将OPENCV 4.1.0 Android SDK的java模块导入到项目中
a) 将下载的opencv-4.1.0-android-sdk.zip文件解压,解压后进入到“opencv-4.1.0-android-sdk\OpenCV-android-sdk\sdk”的目录下,有如下文件:
b)将java模块导入到已创建的项目中
c)将已经改名为opencv41Libs(命名自行定义)的java模块,即opencv41Libs模块修改对应的build.gradle文件
有三处需要注意:
- 将文件中的 "apply plugin: 'com.android.application'"修改为“apply plugin: 'com.android.library'”
- 将文件中的自动生成的“applicationId "org.opencv"”删除,因为opencv41Libs模块是作为库存在而不是应用存在
- 将compileSdkVersion 、buildToolsVersion、minSdkVersion 、targetSdkVersion 属性值的设置与app对应的build.gradle文件的配置一致。
例如app对应的build.gradle为:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "app.userhu2012.test"
minSdkVersion 27
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions"
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
则opencv41Libs对应的build.gradle文件配置如下:
apply plugin: 'com.android.library'
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
defaultConfig {
//applicationId "org.opencv"
minSdkVersion 27
targetSdkVersion 28
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
d)配置libs库
为项目app的src/main目录下创建一个jniLibs目录(如果没有的话)
将opencv 4.1.0 android sdk中的opencv-4.1.0-android-sdk\OpenCV-android-sdk\sdk\native\libs库的所有架构文件复制到jniLibs目录中
再到项目app模块对应的build.gradle进行配置,增加jniLibs.srcDirs参数
sourceSets{
main{
jniLibs.srcDirs = ['src/main/jniLibs']
}
}
以及配置支持的ndk类型,如下图所示,把已知的架构包写到app对应的build.gradle中
然后配置项目app的依赖项目,选择“文件”-》“Project Structure”,然后设置app模块的的依赖模块,如下图所示:
选择“OK",app模块对应的build.gradle的文件如下所示:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "app.userhu2012.test"
minSdkVersion 27
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions"
}
}
ndk{
abiFilters "arm64-v8a","armeabi-v7a","x86","x86_64"
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
sourceSets{
main{
jniLibs.srcDirs = ['src/main/jniLibs']
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:28.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation project(':opencv41Libs')
}
这样配置就可以使用Android Studio创建OpenCV 4.1.0 项目。
代码知识SEO上一篇 : 更新至Android Studio4.1后发现as打不开的解决方法(原因分析)
下一篇 : 如何Tkinter模块编写Python图形界面
-
SEO外包最佳选择国内专业的白帽SEO机构,熟知搜索算法,各行业企业站优化策略!
SEO公司
-
可定制SEO优化套餐基于整站优化与品牌搜索展现,定制个性化营销推广方案!
SEO套餐
-
SEO入门教程多年积累SEO实战案例,从新手到专家,从入门到精通,海量的SEO学习资料!
SEO教程
-
SEO项目资源高质量SEO项目资源,稀缺性外链,优质文案代写,老域名提权,云主机相关配置折扣!
SEO资源
-
SEO快速建站快速搭建符合搜索引擎友好的企业网站,协助备案,域名选择,服务器配置等相关服务!
SEO建站
-
快速搜索引擎优化建议没有任何SEO机构,可以承诺搜索引擎排名的具体位置,如果有,那么请您多注意!专业的SEO机构,一般情况下只能确保目标关键词进入到首页或者前几页,如果您有相关问题,欢迎咨询!