Android Studioを使ってOpenCV 4.1.0プロジェクトを作成する手順
一、OpenCV
OpenCV(オープンソースコンピュータビジュアルライブラリ)は、オープンソースのコンピュータビジョンとマシン学習ソフトウェアライブラリであり、CとC+に基づくクロスプラットフォームコンピュータ視覚処理ライブラリである。
ダウンロード
Andoridに基づくコンピュータビジョンを開発するアプリケーションは、OpenCV 4.1.0-droid 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)OPECV 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)すでにopencv 41 Libsに名前を変えたjavaモジュール、すなわちopencv 41 Libsモジュールが対応するbuild.gradleファイルを修正する。
三つの注意事項があります。は、ファイル中の「appyplugin:'comp.android.aplication'」を「appyplugin:'comp.android.library'」に変更しました。 は、ファイル中の自動生成された「appication Id」「org.opencv」を削除します。Oopencv 41 Libsモジュールは、アプリケーションではなく在庫として存在しています。 は、compleSdk Version、buildTools Version、minSdk Version、target Sdk Versionの属性値の設定をapに対応するbuild.gradleファイルの構成と一致させる。
例えば、appに対応するbuild.gradleは、
プロジェクトアプリのsrc/mainディレクトリの下にjniLibsディレクトリを作成します。
opencv 4.1.0 android sdkのopencv-4.1.0-android-sdk\OpenCV-android-sdk\sdkative\libsライブラリのすべてのアーキテクチャファイルをjniLibsディレクトリにコピーします。
プロジェクトアプリモジュールに対応するbuild.gradleを配置し、jniLibs.srDirsパラメータを追加します。
プロジェクトアプリの依存項目を設定し、「ファイル」-「Project Structure」を選択して、アプリモジュールの依存モジュールを下図のように設定します。
「OK」を選択すると、アプリモジュールに対応するbuild.gradleのファイルは以下の通りです。
ここでは、Android Studioを使ってOpenCV 4.1.0プロジェクトを作成する手順についての記事を紹介します。これに関連して、Android StudioからOpenCVコンテンツを作成します。以前の記事を検索してください。または、下記の関連記事を引き続きご覧ください。これからもよろしくお願いします。
OpenCV(オープンソースコンピュータビジュアルライブラリ)は、オープンソースのコンピュータビジョンとマシン学習ソフトウェアライブラリであり、CとC+に基づくクロスプラットフォームコンピュータ視覚処理ライブラリである。
ダウンロード
Andoridに基づくコンピュータビジョンを開発するアプリケーションは、OpenCV 4.1.0-droid 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)OPECV 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)すでにopencv 41 Libsに名前を変えたjavaモジュール、すなわちopencv 41 Libsモジュールが対応する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"
}
}
}
opencv 41 Libsに対応する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ライブラリの設定プロジェクトアプリのsrc/mainディレクトリの下にjniLibsディレクトリを作成します。
opencv 4.1.0 android sdkのopencv-4.1.0-android-sdk\OpenCV-android-sdk\sdkative\libsライブラリのすべてのアーキテクチャファイルをjniLibsディレクトリにコピーします。
プロジェクトアプリモジュールに対応するbuild.gradleを配置し、jniLibs.srDirsパラメータを追加します。
sourceSets{
main{
jniLibs.srcDirs = ['src/main/jniLibs']
}
}
また、サポートされているndkタイプは、下図のように、既知のアーキテクチャパッケージをap対応のbuild.gradleに書き込みます。プロジェクトアプリの依存項目を設定し、「ファイル」-「Project Structure」を選択して、アプリモジュールの依存モジュールを下図のように設定します。
「OK」を選択すると、アプリモジュールに対応する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プロジェクトを作成することができます。ここでは、Android Studioを使ってOpenCV 4.1.0プロジェクトを作成する手順についての記事を紹介します。これに関連して、Android StudioからOpenCVコンテンツを作成します。以前の記事を検索してください。または、下記の関連記事を引き続きご覧ください。これからもよろしくお願いします。