Android Studio 上的 OpenCV
OpenCV on Android Studio
我正在尝试在 Android Studio 上使用 OpenCV,我一步一步跟着 this site 进行,当我到达 "Testing some Android code" 部分时,我将代码复制到我的 Android Studio 进行了我的 MainActivity 所需的更改,我正在尝试构建 apk 文件以在我的 phone 上安装应用程序。我不能这样做,因为我有很多错误。
这些是错误:
我是 Android 开发新手。
1. 确保您的 Android SDK 是最新的,并且安装了 NDK
2. 从 OpenCV.org 下载适用于 Android 的最新 OpenCV SDK 并解压缩 zip 文件。
3. 创建一个新的 Android Studio 项目
- 检查包括 C++ 支持
- 选空Activity
- 在 C++ 支持中,您可以检查 -fexceptions 和 -frtti
4.导入OpenCV库模块
- 新建 -> 导入模块
- 选择 YOUR_OPENCV_SDK/sdk/java 文件夹
- 取消替换 jar,取消替换 lib,取消创建 gradle-style
5. 设置 OpenCV 库模块以适合您的 SDK
编辑 openCVLibrary/build.gradle 以匹配您的 app/build.gradle 例如:
compileSdkVersion 27
defaultConfig {
minSdkVersion 19
targetSdkVersion 27
}
6. 在您的应用程序模块中添加 OpenCV 模块依赖项
文件 -> 项目结构 -> 模块应用程序 -> 依赖项选项卡 -> 新建模块依赖项 -> 选择 OpenCV 库模块
7. 右键单击 app/src/main 创建一个 jni 文件夹并在将文件夹从 jni 重命名为 jniLibs
之后单击 更改文件夹 框
8. 从你的 opencv 目录复制所有文件 YOUR_OPENCV_SDK/sdk/native/libs您已将它们下载并粘贴到 jniLibs 文件夹
9. 设置应用build.gradle
添加 abiFilters
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions"
abiFilters 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a'
}
}
10.配置CMakeLists.txt文件
在cmake_minimum_required后加上
include_directories(YOUR_OPENCV_SDK/sdk/native/jni/include)
add_library( lib_opencv SHARED IMPORTED )
set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java3.so)
万事俱备
我正在尝试在 Android Studio 上使用 OpenCV,我一步一步跟着 this site 进行,当我到达 "Testing some Android code" 部分时,我将代码复制到我的 Android Studio 进行了我的 MainActivity 所需的更改,我正在尝试构建 apk 文件以在我的 phone 上安装应用程序。我不能这样做,因为我有很多错误。
这些是错误:
我是 Android 开发新手。
1. 确保您的 Android SDK 是最新的,并且安装了 NDK
2. 从 OpenCV.org 下载适用于 Android 的最新 OpenCV SDK 并解压缩 zip 文件。
3. 创建一个新的 Android Studio 项目
- 检查包括 C++ 支持
- 选空Activity
- 在 C++ 支持中,您可以检查 -fexceptions 和 -frtti
4.导入OpenCV库模块
- 新建 -> 导入模块
- 选择 YOUR_OPENCV_SDK/sdk/java 文件夹
- 取消替换 jar,取消替换 lib,取消创建 gradle-style
5. 设置 OpenCV 库模块以适合您的 SDK
编辑 openCVLibrary/build.gradle 以匹配您的 app/build.gradle 例如:
compileSdkVersion 27
defaultConfig {
minSdkVersion 19
targetSdkVersion 27
}
6. 在您的应用程序模块中添加 OpenCV 模块依赖项
文件 -> 项目结构 -> 模块应用程序 -> 依赖项选项卡 -> 新建模块依赖项 -> 选择 OpenCV 库模块
7. 右键单击 app/src/main 创建一个 jni 文件夹并在将文件夹从 jni 重命名为 jniLibs
之后单击 更改文件夹 框8. 从你的 opencv 目录复制所有文件 YOUR_OPENCV_SDK/sdk/native/libs您已将它们下载并粘贴到 jniLibs 文件夹
9. 设置应用build.gradle
添加 abiFilters
externalNativeBuild { cmake { cppFlags "-frtti -fexceptions" abiFilters 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a' } }
10.配置CMakeLists.txt文件
在cmake_minimum_required后加上
include_directories(YOUR_OPENCV_SDK/sdk/native/jni/include) add_library( lib_opencv SHARED IMPORTED ) set_target_properties(lib_opencv PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libopencv_java3.so)
万事俱备