新闻中心

创新、诚信、务实、高效

新闻中心
联系我们

上海嘉定区杭桂路1112号906室 中波大厦

英文
行业要闻
您的位置:主页 > 新闻中心 > 行业要闻 >
什么是视觉感知系统?
发布时间:2016-10-09 11:46 来源:欧姆龙 阅读:

1970年之后,随着数字成像技术的发展,相机作为一种传感器开始被广泛研究。因为人可以通过自己的视觉估计视野中物体的位置、距离,而相机的原理模拟了人的双眼,所以研究者们模仿人的特点,利用相机的二维图像反推图像中物体的三维信息。这种和二维图像推算三维信息相关的技术和数学理论发展成了一个独立的学科——计算机视觉,也被称作机器视觉。

视觉感知系统是目前世界上最热门的机器人学和机器视觉领域研究课题。其原理是利用一个或者多个相机构成的视觉传感器系统,采用复杂的算法,通过二维的相机图像推算出视野中物体相对与视觉传感器系统的几何中心的运动信息,如果假设这些物体都是静止的,那么相对运动其实代表了视觉传感器本身的运动。理论上,计算机视觉技术能够单凭一个相机就可以准确测量十五个状态量,但是与其他传感器类似,相机也有很多的缺陷,包括无法恢复尺度、成像质量有限、计算量消耗巨大等等。幸好,我们还可以把视觉感知系统和其他传感器结合起来,互相提高测量精度。

聪明的读者肯定能够想到,把视觉感知系统和之前说的所有组合导航中用到的传感器融合起来,GPS信号质量高的时候用GPS组合导航,没GPS的时候用视觉感知系统替代GPS,不就解决问题了吗。这确实正是目前工程师和科学家们正在努力解决的问题,也是精灵4上初步实现的技术。在介绍精灵4是如何结合视觉感知系统和组合导航技术之前,我们先简单介绍两种已经比较成熟的视觉感知系统:光流测速模块和视觉里程计。

光流测速模块顾名思义,只能测速度。通常一个光流测速模块由一个相机、一个惯性测量元件、一个超声波模块构成,它的主要原理是计算机视觉技术中于1981年被发展出来的“光流追踪”算法。

“光流”的概念最早在1950年代由心理学家和生物学家提出,指的是一个观察者和他在观察的事物发生相对运动时,这些事物在他眼前成的像会产生“运动的模式”,人脑利用这种“运动的模式”能够更灵敏地感知周围什么东西在动。比如下图中,读者一看就可以直观理解“光流”的意义。

后来计算机科学家布鲁斯-卢卡斯和金出武雄在1981年发明了Lucas-Kanade算法,通过算法计算出连续拍摄的图片上的光流,并证明了光流可以反解出相对运动的速度。虽然三十多年来,Lucas-Kanade算法始终被公认为最好的“光流追踪”算法,但是它有比较大的局限性,它包含很多假设,比如假设连续图片的平均亮度相同,比如假设图片中的物体只发生平面运动等等。另外,光流算法算出的速度是没有尺度的,因为相机图像的单位是像素,所以光流算法只能给出“你现在的速度是10个像素每秒”,但是没法算出10个像素是1厘米还是1米。恢复尺度的方式是增加一个超声波模块测量平面运动离相机的距离,这样就能够把像素运动转换成真实的运动。最后,如果要让光流测速模块在晃来晃去的多旋翼飞行器上也能使用,通过惯性测量元件找出图像所代表的平面也是必不可少的,这一点需要在算法上进行两种传感器很好的配合。

光流算法原理上只可以测三维速度,不能直接测量三维位置。我们同样可以通过把光流测速模块测出的三维速度积分获得三维位置,但是就像惯性测量元件积分会发散一样,光流测速模块积分得到的位置也会发散。好在它不会天马行空地失去控制,和组合导航技术中除了GPS之外的传感器妥善融合之后,它可以做到悬停时测量的位置不发散。因此可以说光流测速模块只在有限的条件下能够替代GPS。

 

光流测速模块已经形成了非常标准的解决方案。大疆悟以及精灵3上都装载了自主研发的光流测速模块,另外著名的开源飞控产品Pixhawk中包含了一个叫做PX4Flow的光流测速模块,并且开源了所有的代码和硬件方案。所以光流测速模块目前已经广泛出现在了各大厂商的多旋翼飞行器产品上。

视觉里程计相比光流测速模块,增加了直接测量位置的能力,所以才叫“里程计”。视觉里程计比光流测速模块能力更强,性能更好。

 

读者可能会问,为什么听起来视觉里程计和光流测速模块参与的传感器数量差不多(光流测速模块甚至还多一个超声波模块),但是视觉里程计能力反而更强呢。这里的原因不在于传感器硬件,而在软件算法上。前面已经说到光流追踪算法有很多简化的假设,只能测量平面运动,增加其他传感器硬件一定程度上是为了把那些为了计算方便而简化掉的因素重新弥补起来。

而视觉里程计算法则复杂得多,它不仅要通过图像反推出视野中物体的平面运动,还要反推出这些物体的三维位置,并且基于这些物体的三维位置做很多次的优化计算,算法复杂度成倍于光流测速模块。有些视觉里程计的算法甚至包含完整的光流追踪的算法,但是仅仅把计算光流作为预处理图像的步骤。

视觉里程计能够直接测量位置,测量值也比较准确,不会像光流测速模块那样发散。通常比较优秀的视觉里程计飞100米之后只会积累十几厘米到几十厘米的误差,这个测量水平比起导弹上几百万的惯性测量元件还是差了不少,但是考虑到视觉里程计的价格极其低廉,对比起来它的性价比非常高。

视觉里程计有几个不同层次的难度,最简单的是两个相机构成的双目立体视觉系统加惯性测量元件,最难的是一个相机构成的单目视觉系统加惯性测量元件。如果视觉里程计和光流测速模块硬件一致,那么这里的视觉里程计采用的是单目视觉系统。目前,双目立体视觉系统加惯性测量元件实现自身状态观测已经是比较完善的技术,而单目视觉系统则是活跃的研究方向,世界上做这个研究方向较好的大学有美国的宾西法尼亚大学、瑞士的苏黎世联邦理工学院、英国的牛津大学、我国的香港科技大学和其他一些欧美院校。

单目视觉系统和双目立体视觉系统两者对比起来,他们的算法难度差别很大。视觉里程计的算法关键点是前面说的“通过连续的图像反推出视野中物体的三维位置”。对于和人眼结构类似的双目立体视觉系统,这一点比较容易,因为一个物体同时出现在左右两个相机的视野中时左右视野有视差,视差可以帮助解算物体的位置,只需要用简单的几何关系就可以实现,这已经是非常成熟的技术。

但是对于单目视觉系统,只有一个相机就没有视差,没法做简单的几何关系的解算,所以算法必须能智能地在局部范围内同时估计很多个物体的位置,然后在自身移动过程中通过位置移动产生视差,然后进行多个物体的位置的最大似然估计,从而推算出这些物体比较准确的位置。这个过程包括很多个环节,大部分环节在学术界都没有公认最优的方案,因此还没有成熟的技术。

在经年累月的优化之后,2004年,NASA成功把视觉里程计和惯性测量元件构成的视觉定位系统装在“机遇号”和“勇气号”火星车主频仅有20MHz的特制芯片上,送上了火星,它可以帮助火星车通过一对双目相机非常准确地记录自己走过的路线。2007年,参与火星探测任务的计算机科学家和工程师们把这个激动人心的过程写成了一篇论文《计算机视觉在火星》(ComputerVision on Mars),这篇文章吸引了很多计算机视觉研究人员投身视觉里程计的研究,也极大推动了视觉里程计在机器人学中的应用。

 

乐利(中国)有限公司 ICP备案编号:沪ICP备12040820  

友情链接: 波形护栏 | 杭州装修网 | 太阳能路灯 | 蒸发器 | 空气能热水器 | 合肥装修网 | 电动葫芦 | 空包网 | 走刀式分板机 | 陆克文 |