所有分类
主题 主题
平台 平台
我的工作台
userHead
注册时间 [[userInfo.create_time]]
创造力 [[userInfo.creativity]]
[[userInfo.remark]]
[[d.project_title]]
articleThumb
[[d.material_name]]
timelineThumb
进入工作台
折叠
所有分类 我的工作台
展开
掌控慧眼小MU系列教程六——宽高坐标参数
肥罗-阿勇 肥罗-阿勇 2019-08-06 16:31:18
3
1
简单
步骤1 步骤1
回顾上节课知识,展示作业

        上节课我们学习到了机器猫慧眼小MU交通卡片识别能力 

        要求大家制作一个无人驾驶小车进行闯关。 

        不知道大家完成得怎么样?我们来看看同学们的作品吧

步骤2 步骤2
学习新知识

        不知道大家在小MU的库里有没有注意到下面这个东西

projectImage

        不论是球体检测,还是卡片检测,我们都可以显示物体在小MU视觉里的横向坐标,纵向坐标,以及高度和宽度和标签 

        这里的横向坐标,纵向坐标跟我们平时的X轴Y轴有点不同,左上角是0,0,右下角是100,100 

        显示的横向坐标,纵向坐标是物体的中心点所在的位置 

        这里的宽度和高度也不是物体的真实宽度和高度,而是在小MU成像里的宽度和高度 

        就好比我们平时拍照,相机离我们远,拍出的照片人像就小,相反,人像就大一个道理 

        以圆形卡片为例

projectImage

         代码如下

projectImage

        这里显示的就是圆形卡片在小MU中的视觉图片

        x,y是指卡片的中心点所在小MU的坐标位置

        宽度是指两边红色边框的宽度,不包括白色部分。

        高度是指上面蓝色顶部到下面红色底部的高度,不包括白色部分

        而且宽度和高度都是卡片成像的宽度和高度,不是实际宽度和高度

        而最后的label是指固定的标签,每张卡片都有自己的固定标签

projectImage

        比如交通卡片,前进的标签是1,掉头的标签是4.

       每张卡片下面都有标准该卡片的标签值

步骤3 步骤3
应用新知识

        知道这些东西有什么用呢?

        用处可大了,我们可以利用这些数据来标注物体

        也就是我们常听说的图像识别技术

        图像识别技术是以图像的主要特征为基础的。每个图像都有它的特征,如字母A有个尖,P有个圈、而Y的中心有个锐角等。对图像识别时眼动的研究表明,视线总是集中在图像的主要特征上,也就是集中在图像轮廓曲度最大或轮廓方向突然改变的地方,这些地方的信息量最大。而且眼睛的扫描路线也总是依次从一个特征转到另一个特征上。由此可见,在图像识别过程中,知觉机制必须排除输入的多余信息,抽出关键的信息。同时,在大脑里必定有一个负责整合信息的机制,它能把分阶段获得的信息整理成一个完整的知觉映象。

       是不是很复杂?我们来简单说一下原理

       我们看一个人,认识了,以后看到了一眼就认出来了,不需要思考,好像很简单

       但是对于计算机就不同了,它认识一个人是把这个人数据化,比如身高多少,宽度多少,脸长多少,脸长宽比率多少,眼睛多宽,眼睛与眼睛之间距离多少……几百个是数据。只有这些数据99%以上符合,它就会认为这两个是一个人。

       所以图像识别就是一种大数据的比对

       我们利用小MU的这些数据可以来进行比对和校验

       比如一开始给一个网球,后面给一个乒乓球,我们可以根据数据来比对是不是同一个球。

       其实这就是简单的人工智能。

       我们今天先来学习如何利用这些数据测定物体离小MU的距离。

      我们先来看看相机成像原理

projectImage

        在固定焦距的情况下,物体离摄像头越近图像越大,反之越小。

        我们来实验一下,看看在固定焦距的情况下,物体离摄像头的距离、物体实际大小,成像大小有什么关系

       连接掌控板和小MU,编程代码如下

projectImage

        然后我们将几次测量结果记录如下

projectImage

        在焦距固定在等级1的情况下,我们得到几组测试数据,通过观测可以发现卡片成像宽度*距离得出的数据很接近

        于是我们大胆猜测小MU成像宽度*距离,在定焦的情况下是定值

        为了验证这个结果,我们可以反向验证。

        我们随意拉开一个距离,然后得出成像宽度为26,我们推测 800/26=30.7

        通过实际测量我们发现数值为30.4,

        相差结果不大,说明我们的猜测大体是准确的。

        这样我们就可以根据小MU成像数据来推测物体离小MU的距离了。

       (特别说明:我是在一种比较粗糙的环境下进行的数据测量,如果采用非常准确的测量环境,这个结果应该会更加准确)

       

projectImage
步骤4 步骤4
作业

        同学们自己动手进行数据测试,测试数据在10个以上,验证我们的结论是否正确。

Makelog作者原创文章,未经授权禁止转载。
3
1
评论
[[c.user_name]] [[c.create_time]]
[[c.parent_comment.count]]
[[c.comment_content]]
肥罗-阿勇
注册日期: 2019-04-30
来自佛山的一名普通信息技术老师,热爱计算机技术和创客,希望得到大家的指导。
创造力 4287
项目文章 16