如果您不想使用 JavaCV,这对我有用...
第 1 步 - 下载资源
从http://opencv.org/downloads.html下载 OpenCV Android SDK
第 2 步 - 将 OpenCV 二进制文件复制到您的 APK 中
复制 libopencv_info.so & libopencv_java.so 从
OpenCV-2.?.?-android-sdk -> sdk -> native -> libs -> armeabi-v7a
至
Project Root -> Your Project -> lib - > armeabi-v7a
压缩 lib 文件夹并将该压缩文件重命名为whatever-v7a.jar。
复制此 .jar 文件并将其放置在您的项目中
Project Root -> Your Project -> libs
将此行添加到您的项目 build.gradle 的依赖项部分
compile files('libs/whatever-v7a.jar')
当您现在编译时,您可能会看到您的 .apk 大约大 4mb。
(如果您也想支持 ARMv6,请重复“armeabi”,可能不再需要了。)
第 3 步 - 将 java sdk 添加到您的项目中
从这里复制java文件夹
OpenCV-2.?.?-android-sdk -> sdk
至
Project Root -> Your Project -> libs
(与您的 .jar 文件相同的位置);
(您可以将“java”文件夹名称重命名为“OpenCV”)
在这个新复制的文件夹中添加一个典型的 build.gradle 文件;我用这个:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
}
}
apply plugin: 'android-library'
repositories {
mavenCentral();
}
android {
compileSdkVersion 19
buildToolsVersion "19"
defaultConfig {
minSdkVersion 15
targetSdkVersion 19
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
}
}
在您的 Project Root settings.gradle 文件中更改它也看起来像这样:
include ':Project Name:libs:OpenCV', ':Project Name'
在您的项目根目录 -> 项目名称 -> 依赖项部分的 build.gradle 文件中添加以下行:
compile project(':Project Name:libs:OpenCV')
第 4 步 - 在您的项目中使用 OpenCV
重建,您应该能够在您的项目中导入并开始使用 OpenCV。
import org.opencv.android.OpenCVLoader;
...
if (!OpenCVLoader.initDebug()) {}
我知道这是否有点骇人听闻,但我想我还是会发布它。