十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章将为大家详细讲解有关OpenCV原理与Android SDK环境是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
成都创新互联公司科技有限公司专业互联网基础服务商,为您提供成都服务器托管,高防物理服务器租用,成都IDC机房托管,成都主机托管等互联网服务。
OpenCV简介
OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。其目标是构建一个简单易用的计算机视觉框架,以帮助开发人员更便捷地设计更复杂的计算机视觉相关应用程序。
Opencv包含的函数有500多个,覆盖了如工厂产品检测、医学成像、信息安全、用户界面、摄像机标定、立体视觉和机器人等,具体将在下面介绍。Opencv使用宽松的BSD开源协议,在遵守协议的情况下,允许生成商业产品,不必开发源代码。
下载地址
https://sourceforge.net/projects/opencvlibrary/files/?source=navbar
输入这个地址后我们来到的页面可以看到不同平台下的分支
因为Android用起来比较方便,对于手机APP的图像处理可能会用到的多一点,我们先来学习Android的opencv开发,等成熟后再学习windows下的,我们点击opencv_android文件夹进去
直抒妆选择3.3.1最新版本进行下载
下载完后
红框的是我们下载的sdk,蓝框是解压后的文件夹.
Android导入OpenCV
打开Android Studio新建一个项目起名为OpenCVDemo,创建时我用的最小API是18,然后选择空的Activity.创建完成后的界面如下:
开始导入OpenCV
点击左上角File-New-Import Module
然后点开选择路径,找到我们刚才下载解压完后的OpenCV-android-sdk\skd\java
点击下一步,默认全选的,再点击Finish
完成后界面,这里是导入的报告,可以看到你都导入了什么东西,我们可以不用看,直接关了.
我的左边OpenCV的Module,可以看到上图下面有报错,提示我没有安装Android -14 sdk
我们点开链接直接进行下载安装
完后成加载成功,左边也出一了OpenCVLibrary331的module
配置需要做的改动
点开build.gradle(Module:app)和build.gradle(Module:openCVLibrary331)我们可以看到两个的版本号是不一致的
build.gradle(Module:app)
build.gradle(Module:openCVLibrary331)
这两个差异,我们把build.gradle(Module:openCVLibrary331)改为和build.gradle(Module:app)一致,效果如下:
重新生成后,我们再选中左边的app,右键找到Open Module Setting或是按F4键
选择Dependencies
点右边的+号选Module dependency
点OK
然后我们在下载的OpenCV-android-sdk里找到sdk下native\Libs
这里面的全部都拷贝到程序目录下的app\libs里
然后在build.gradle(Module:app)里的dependencies加入compile fileTree(dir:"$buildDir/native-libs",include:'native-libs.jar')
我们把这个架弄成了native-libs的名字
然后在dependencies下面现加上这两段
task nativeLibsToJar(type: Jar, description:'Create a Jar of native Libs'){
destinationDir file("$buildDir/native-libs")
baseName 'native-libs'
from fileTree(dir:'libs',include: '**/*.so')
into 'lib/'
}
tasks.withType(JavaCompile){
compileTask -> compileTask.dependsOn(nativeLibsToJar)
然后我们在上面Build-Make Project生成一下
会在
生成文件夹,下在会存在
我们自己定义的jar
这样的生成jar是为了我们调用OpenCV后不需要在安装OpenCV_Manager这个apk这样的话很不友好
这样环境就完成了,不过编译出来的APK因为加载的东西太多,有82M,等研究好了后再把没必要的库重新编译压缩
关于OpenCV原理与Android SDK环境是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。