在本节中,我们将创建一个简单的应用程序,它除了加载 OpenCV 之外什么都不做。在下一节中,我们将扩展它以支持相机。
除了这个说明,你还可以使用一些视频指南,例如这个
- 打开 Android Studio 并选择Empty Views Activity创建空项目
- 设置项目:
- 选择Java语言
- 选择Groovy DSL构建配置语言
- 选择Minumum SDK,版本号不低于 OpenCV 4 Android 构建期间使用的版本
- 如果你不知道,你可以在
OpenCV-android-sdk/sdk/build.gradle
以下文件中找到它android -> defaultConfig -> minSdkVersion
- 如果你不知道,你可以在
- 点击文件->新建->导入模块…,选择OpenCV SDK路径
- 将模块名称设置为
OpenCV
并按Finish
OpenCV 还提供实验性的 Kotlin 支持。请将 Android Kotlin 插件添加到MyApplication/OpenCV/build.gradle
文件:
plugins {id 'org.jetbrains.kotlin.android' version '1.7.10' #version may differ for your setup
}
如果不这样做,您可能会收到错误:
Task failed with an exception.
-----------
* Where:
Build file '/home/alexander/AndroidStudioProjects/MyApplication/opencv/build.gradle' line: 4* What went wrong:
A problem occurred evaluating project ':opencv'.
> Plugin with id 'kotlin-android' not found.
-
修复已在这里找到
-
OpenCV 项目使用此功能。请在要阻止的文件
buildConfig
中启用它:MyApplication/OpenCV/build.gradle
android
像这样:
-
如果不这样做,您可能会收到错误:
JavaCameraView.java:15: error: cannot find symbol import org.opencv.BuildConfig; ^ symbol: class BuildConfig location: package org.opencv
修复程序已在此处和此处找到
- 将模块添加到项目:
- 单击文件 -> 项目结构... -> 依赖项 -> 所有模块 -> +(添加依赖项按钮)-> 模块依赖项
- 选择
app
- 选择
OpenCV
在使用任何 OpenCV 函数之前,您必须先加载库。如果您的应用程序包含其他依赖于 OpenCV 的本机库,则应在 OpenCV 初始化后加载它们。添加以下代码以在应用程序启动时加载库:
if (OpenCVLoader.initLocal()) {Log.i(TAG, "OpenCV loaded successfully");} else {Log.e(TAG, "OpenCV initialization failed!");(Toast.makeText(this, "OpenCV initialization failed!", Toast.LENGTH_LONG)).show();return;}
- 选择一个设备来检查样本,然后按下
run
按钮运行代码