什么是视觉Visual SLAM
什么是视觉Visual SLAM
What Is Visual SLAM?
What are the origins of visual SLAM? and what are some other applications for this technology beyond floor cleaning?
视觉Visual SLAM的起源是什么?除了吸尘器,这项技术还有哪些其他应用?
今年CES的获奖者之一是iRobot的众多Roombas(特别是s9+真空和清洁底座自动污垢处理)。所有Roomba真空吸尘器的一个独特的技术专长是它使用了vSLAM,即视觉同步定位和绘图。
据iRobot称,这项技术使用光学传感器每秒捕获230400个数据点。这使得流动真空能够绘制出它周围环境的地图,包括它自己在那个环境中的位置,并绘制出“它在哪里,曾经在哪里,以及它需要清洁的地方”
The Roomba s9+ uses iRobot's patented vSLAM technology. Image used courtesy of iRobot
但是视觉冲击的起源是什么呢?除了垃圾吸尘器机器人,这项技术还有哪些其他应用?
What Is Visual SLAM?
通常,SLAM是一种利用传感器绘制设备周围区域的地图,同时将自身定位在该区域内的技术。声纳和激光成像是这项技术如何发挥作用的两个例子。
但与激光雷达(LiDAR)等使用激光阵列绘制区域地图的技术不同,visual slam使用一台摄像机来收集数据点并创建地图。Makhubela等人对visual SLAM进行了一次回顾,他解释说单视觉传感器可以是单目、立体视觉、全向或红绿蓝深度(RGBD)相机。
没有单一的算法来执行视觉SLAM;此外,据世界最大的机器视觉行业协会AIA称,当传感器的位置及其更广阔的环境都未知时,这种技术使用3D视觉进行位置映射。
3D Face Reconstructions and Drone Vision
而Makhubela等人。相信这项技术还处于初级阶段,visualslam仍然在一些有趣的用例中取得了进展。
卡内基梅隆机器人研究所(Carnegie Mellon's robotics institute)的一个令人兴奋的进展是,该研究所发明了一种用智能手机视频创建3D人脸重建的两步方法。这个过程的第一步是使用视觉冲击来三角化人脸表面上的点,同时也使用这些信息来识别相机的位置。然后,研究人员使用深度学习算法来填补个人轮廓和面部标志(眼睛、耳朵和鼻子)的空白。
Researchers say this method could build avatars for gaming or create customized surgical masks or respirators. Image (modified) used courtesy of Carnegie Mellon University
另一个视觉冲击的应用是蜻蜓,一个由Accuware创建的软件。Accuware拥有自己的专利视觉SLAM方法,用于机器人和无人机的3D定位,号称定位地图的精确度为5厘米。然而,该软件的一个缺点是,该软件至少需要16gb的计算机RAM,其中大部分用于处理引擎将来自相机的数据转换为地图。
Accuware表示,他们看到了在自动车辆、自动机器人和无人驾驶飞机上进行视觉猛击的未来,这些机器人和无人驾驶飞机用于运载以及搜索和救援。
MonoSLAM and PTAM
关于两个最流行的视觉SLAM迭代(MonoSLAM和PTAM:MonoSLAM,一个实时单摄像机SLAM)的快速历史课是由Davison等人创建的vSLAM的第一个实现。2007年。
从那时起,研究人员Taketomi等人扩展了PTAM(并行跟踪和映射)技术。虽然单斯拉姆和PTAM的基本前提相似,但它们在一些重要方面有所不同。
How Does MonoSLAM and PTAM Work?
首先,MonoSLAM和PTAM都必须初始化映射。在MonoSLAM中,这是通过使用已知对象作为第一个数据点来实现的。此点允许设备根据对象的已知参数校准和缩放其测量值。另一方面,PTAM通过使用所谓的“五点算法”(一种基于摄像机相对运动估计位置的过程)来实现地图初始化。
接下来,两种视觉SLAM技术都执行跟踪和定位,这就是真正神奇的地方。在MonoSLAM中,该技术使用一种称为扩展Kalman滤波器的数学过程来估计相机的运动,并找到“特征点”的三维坐标,这些特征点是记录在地图上的三维结构和物体。
Map created by Accuware's Dragonfly. Image used courtesy of Accuware
PTAM匹配特征点,以估计当前地图点和来自相机的最新输入图像之间的相机位置。然后使用三角剖分创建三维位置,并使用捆绑算法优化这些数据点。AIA描述了捆绑算法如何利用montecarlo分析从多个数据点中找出一个平均位置。
如Taketomi等人。解释一下,PTAM,以及visualslam的许多后期实现,使用重定位和全局地图优化来优化摄像机位置和地图环境。
Challenges of Visual SLAM: Motion and Light
虽然视觉冲击显示出机器人技术的前景,但研究表明,这项技术有几个主要问题。
一个重要的原因是它在处理动态环境方面的局限性。视觉冲击必须实时操作。但是,由于只有一个摄像头,视觉SLAM无法提供360度的视野,Makhubela等人。解释一下。这意味着系统必须以极高的速度工作,以捕捉环境变化并在短时间内覆盖整个观察区域。
Makhubela等人。断言这些动态限制导致了协作SLAM(CoSLAM),它使用多个摄像机执行视觉SLAM。CoSLAM修复了限制观看区域的问题,但增加了处理负担。也就是说,需要一台更强大的计算机来保持系统的实时运行。
光变差是Makhubela等人的另一个问题。引用。也就是说,从室内到室外环境之间的反射面和光线变化会阻碍数据点。换言之,镜像屋不是一个视觉猛击可以轻松操控的地方。
What's Your Take on SLAM?
虽然视觉重击在许多领域显示出了希望,特别是在无人机和机器人设计中,但它仍然存在动态运动和光照的问题。但是我们想听听你对总体技术的经验。