在新的Android Studio 3.4中使用openCV吗?

Adh*_*nta 3 java android opencv

这是我第一次从事与OpenCv有关的android项目,我的目标是阅读车辆的车牌并从服务器获取详细信息。阅读了几篇文章后,我发现这些文章似乎已经过时了,因为我正在使用新的Android Studio 3.4,因此添加模块依赖项的过程似乎有些不同,因此如果有人遇到过这种情况,请您指导我摆脱了这个问题。

这是我提到的文章:

https://android.jlelse.eu/a-beginners-guide-to-setting-up-opencv-android-library-on-android-studio-19794e220f3c

https://medium.com/easyread/integrating-your-android-app-with-opencv-library-266b2ea913d3

提前致谢。

小智 8

我针对Android Studio 3.4和OpenCV 4.1的解决方案是从opencv / sdk目录导入模块,而不是像大多数教程中所述的那样从opencv / sdk / java导入模块。

IDE建议使用“:sdk”作为模块名称,但是您可以更改它。

现在可以在项目结构中添加opencv依赖项了。

在此处输入图片说明


小智 7

对于我来说,同样的问题,“添加模块依赖项”弹出窗口显示“无显示”,因此我手动编辑了文件。在本初学者指南https://android.jlelse.eu/a-beginners-guide-to-setting-up-opencv-android-library-on-android-studio-19794e220f3c(而不是第5步)中,按照以下步骤编辑这些文件:

settings.gradle:

include ':app'
include ':opencv'
Run Code Online (Sandbox Code Playgroud)

(其中,opencv是您在步骤3的屏幕快照4中提供的库的名称)

在文件gradle.properties中(模块:opencv)

更换线

apply plugin: 'com.android.application'
Run Code Online (Sandbox Code Playgroud)

通过:

apply plugin: 'com.android.library'
Run Code Online (Sandbox Code Playgroud)

删除行:

applicationId "org.opencv"
Run Code Online (Sandbox Code Playgroud)

最后,该文件如下所示:

apply plugin: 'com.android.library'
android {
    compileSdkVersion 28
    buildToolsVersion "28.0.3"

    defaultConfig {
        minSdkVersion 24
        targetSdkVersion 28

    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

dependencies {
}
Run Code Online (Sandbox Code Playgroud)

在文件gradle.properties中(模块:app)

在依赖性部分中添加以下行:

implementation project(':opencv')
Run Code Online (Sandbox Code Playgroud)

然后在初学者指南的第6步继续进行。