您的位置:首页 > 移动开发 > Android开发

Android开发实战学习第一章(程序安装OpenCV环境)

2019-04-11 12:58 288 查看

OpenCV Android开发实战学习第一章笔记 入门(程序安装OpenCV环境)

  • 二、OpenCVSDK下载以及搭建环境

  • 计算机视觉这两年貌似很受欢迎,总会看见很多博客都有在写计算机视觉啥的,特别是学习编程这一块看见就特别多,所以就找到了贾志刚老师这本《OpenCV Android开发实战》学习。然后去了解了一下还挺好玩。对图像的处理,哈哈,然后昨天还恶搞了舍友的图片。

    一、OpenCV简介

    OpenCV的全称是Open Source Computer Vision Library(源代码开放的计算机视觉库),它是基于C/C++编写的,是BSD开源许可的计算机视觉开发框架。(都说了是源代码开放,那它使用肯定是免费的,不管是自己玩还是商业开发,所以就可以放心用啦)
    (至于OpenCV的历史还有它的发展史就自己去查一下)
    OpenCV的AndroidSDK是在2010年才有的,现在也才几年时间,所以在网上能找到的学习资料少之又少,大多数都是C语言的,再来就是Python的,连Java的都很少。

    1、OpenCV能用来干什么?

    例如:卫星地图与电子地图拼接,医学中的图像噪声处理、对象检测、安防监控领域的安全、自动监视报警、制造业和工业的产品质量检测。摄像机标定、军事领域的无人机飞行、无人驾驶还有水下机器人等等。

    2、OpenCV的模块:

    (1)二维与三维特征工具箱;
    (2)运动估算;
    (3)人脸识别;
    (4)姿势识别;
    (5)人机交互;
    (6)运动理解;
    (7)对象检测;
    (8)移动机器人;
    (9)分割与识别;
    (10)视频分析;
    (11)运动跟踪;
    (12)图像处理;
    (13)机器学习;
    (14)深度神经网络;

    二、OpenCVSDK下载以及搭建环境

    1、下载

    OpenCV的官网:https://opencv.org/ ,下载SDK的话就点击RELEASES( https://opencv.org/releases.html ),现在的最高版本是4.0.1 ,分别有IOS,Android,Win(Java)的。

    2、搭建OpenCV环境

    刚开始搭环境先起一个新项目练手
    (关于搭建OpenCV的环境这一块,个人感觉有一些版本不一样,所以搭建起来的方法好像也有点不一样)
    这个导入OpenCV的库的版本是4.0.1

    ①新建项目,选择一个Empty Activity,

    有些博文里面说要在C++前面勾选(说是这样支持调OpenCV的代码,OpenCV的底层是用C/C++实现的),可是我的AS版本是3.3.1的我建新项目的界面压根没有看见,所以就不管它了。

    ②导入OpenCV库

    过程一:File —> New —> Import Module —> 找到下载好并且已解压的OpenCV的SDK的路径的java文件夹导入 —> Finish

    过程二:File —> Project Structure —> Dependencies —> + —> Module dependency —> 选择刚刚导进来的OpenCV的库 —> OK —> OK
    (注意:打开Project Structure也可以先点击项目目录,然后在按F4)

    过程三:将AS的项目栏切换成Project的目录 —> 目录名称 —> app —> src —> main —> 新建jniLibs文件夹 —> 去OpenCV的SDK文件夹目录下 —> native —> libs —> 全选复制 —> 粘贴到jniLibs文件夹

    过程四:修改build.gradle文件(app),app的targetSdkVersion要与OpenCVLibrary的一致,以及复制粘贴下面代码进去

    ndk {
    moduleName "serial_port"
    ldLibs "log", "z", "m"
    abiFilters "armeabi-v7a"// "x86", "x86_64', "arm64-v8a"
    }

    点击Sync Now

    然后点击Rebuild Project,这个时候回发现居然有bug

    关于这个bug有几种方法解决,然后我选择了最简单的方法:就是修改OpenCVLibrary的build.gradle文件里面的res.srcDirs = [‘res’],然后再Sync Now和再Rebuild Project。
    完成了OpenCV4.0.1版本库的导入。
    接下来就测试了
    在主界面代码中添加

    private void initOpenCV(){
    boolean success = OpenCVLoader.initDebug();
    if (success){
    Toast.makeText(getApplication(), "OpenCV库加载成功!", Toast.LENGTH_SHORT).show();
    } else {
    Toast.makeText(getApplication(), "OpenCV库加载失败!!!", Toast.LENGTH_SHORT).show();
    }
    }


    接下来就编译项目,运行如下图所示:

    导入成功就可以使用OpenCV对图像进行处理啦!!!!
    对于其他的一些版本可能有一些不一样的地方,例如学习资料OpenCV Android开发实战中导入的OpenCV库的版本是3.3.0的就有一点差异。

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: 
    相关文章推荐