本文将会介绍openCV在Android Studio中的配置方法,以及提供一个demo供参考。之前在网上看过很多openCV在Android Studio中配置的文章,都特别复杂。有些需要额外安装一个openCV manager.apk,有些需要用ndk编译成so文件。笔者在实践时发现并没有这么复杂,实际上简单几步就可以完成配置。
笔者所用的版本:Android Studio3.3.1、openCV 3.4.5
1.下载
在openCV官网下载最新的SDK包,我下载的版本为3.4.5。将其解压放置合适的目录备用。
2.导入新模块
(1) 新建一个Android项目TestOpenCV,点击File->New->Import Module,选择导入新模块。
(2)在Source directory中填写内容:找到步骤1中解压opencv-3.4.5-android-sdk的位置,选择OpenCV-android-sdk\sdk\java文件夹,点击确定。此时会出现module name:openCVLibrary345。
点击Next->Finish。完成openCV模块的导入。
(3)在app模块的build.gradle文件中加上项目依赖,同步一下gradle。如无意外,此时会提示错误,那是因为openCV与项目的build.gradle信息不一致导致。
(4)修改openCVLibary345模块下的build.gradle文件中的3个版本信息,使其与app模块下的build.gradle文件一致。
然后删掉openCVLibrary345模块下AndroidManifest.xml文件的一条语句(若有错误提示)。
(5)打开Android项目中的TestOpenCV\app\src\main文件夹,创建一个jniLibs的文件夹,并把opencv-3.4.5-android-sdk\OpenCV-android-sdk\sdk\native\libs目录下的全部文件夹拷贝到刚才的jinLibs文件夹中。此时,openCV已经配置完成。
3.测试
我们可以写一个Demo,使用openCV对Lena女神照片灰度化处理。
在合适的地方,对openCV进行初始化。点击图片时,将图片灰度化处理并显示。
效果如下: