“SLAM 是 Simultaneous localization and mapping 缩写,意为“同步定位与建图”,主要用于解决机器人在未知环境运动时的定位与地图构建问题。
”SLAM 是 Simultaneous localization and mapping 缩写,意为“同步定位与建图”,主要用于解决机器人在未知环境运动时的定位与地图构建问题。
SLAM 的典型应用领域
主要应用于机器人定位导航领域:地图建模。
SLAM 可以辅助机器人执行路径规划、自主探索、导航等任务。国内的科沃斯、塔米以及最新面世的岚豹扫地机器人都可以通过用 SLAM 算法结合激光雷达或者摄像头的方法,让扫地机高效绘制室内地图,智能分析和规划扫地环境,从而成功让自己步入了智能导航的阵列。
VR/AR 方面:辅助增强视觉效果。SLAM 技术能够构建视觉效果更为真实的地图,从而针对当前视角渲染虚拟物体的叠加效果,使之更真实没有违和感。VR/AR 代表性产品中微软 Hololens、谷歌 ProjectTango 以及 MagicLeap 都应用了 SLAM 作为视觉增强手段。
无人机领域:地图建模。SLAM 可以快速构建局部 3D 地图,并与地理信息系统(GIS)、视觉对象识别技术相结合,可以辅助无人机识别路障并自动避障规划路径,曾经刷爆美国朋友圈的 Hovercamera 无人机,就应用到了 SLAM 技术。
无人驾驶领域:视觉里程计。SLAM 技术可以提供视觉里程计功能,并与 GPS 等其他定位方式相融合,从而满足无人驾驶精准定位的需求。例如,应用了基于激光雷达技术 Google 无人驾驶车以及牛津大学 MobileRoboticsGroup11 年改装的无人驾驶汽车野猫(Wildcat)均已成功路测。
SLAM 系统构成
SLAM 系统一般分为五个模块,包括传感器数据、视觉里程计、后端、建图及回环检测。
传感器数据:主要用于采集实际环境中的各类型原始数据。包括激光扫描数据、视频图像数据、点云数据等。
视觉里程计:主要用于不同时刻间移动目标相对位置的估算。包括特征匹配、直接配准等算法的应用。
后端:主要用于优化视觉里程计带来的累计误差。包括滤波器、图优化等算法应用。
建图:用于三维地图构建。
回环检测:主要用于空间累积误差消除
其工作流程大致为:
传感器读取数据后,视觉里程计估计两个时刻的相对运动(Ego-motion),后端处理视觉里程计估计结果的累积误差,建图则根据前端与后端得到的运动轨迹来建立地图,回环检测考虑了同一场景不同时刻的图像,提供了空间上约束来消除累积误差。
ALAM 回环检测
在视觉 SLAM 问题中,位姿的估计往往是一个递推的过程,即由上一帧位姿解算当前帧位姿,因此其中的误差便这样一帧一帧的传递下去,也就是我们所说的累计误差。
我们的位姿约束都是与上一帧建立的,第五帧的位姿误差中便已经积累了前面四个约束中的误差。但如果我们发现第五帧位姿不一定要由第四帧推出来,还可以由第二帧推算出来,显然这样计算误差会小很多,因为只存在两个约束的误差了。像这样与之前的某一帧建立位姿约束关系就叫做回环。回环通过减少约束数,起到了减小累计误差的作用。
那如何判断两帧图片的相似度?最直观的做法是特征匹配。由于特征匹配非常耗时,回环检测需要与过去所有关键帧匹配,这个运算量是绝对无法承受的,因此提出了词袋模型来加速特征匹配。
词袋模型就是把特征看成是一个个单词,通过比较两张图片中单词的一致性,来判断两张图片是否属于同一场景。为了能够把特征归类为单词,我们需要训练一个字典。字典包含了所有可能的单词的集合,为了提高通用性,需要使用海量的数据训练。
SLAM 分类
目前用在 SLAM 上的传感器主要分为这两类,一种是基于激光雷达的激光 SLAM(Lidar SLAM)和基于视觉的 VSLAM(Visual SLAM)。
1、激光 SLAM
激光 SLAM 采用 2D 或 3D 激光雷达(也叫单线或多线激光雷达),2D 激光雷达一般用于室内机器人上(如扫地机器人),而 3D 激光雷达一般使用于无人驾驶领域。激光雷达的出现和普及使得测量更快更准,信息更丰富。激光雷达采集到的物体信息呈现出一系列分散的、具有准确角度和距离信息的点,被称为点云。通常,激光 SLAM 系统通过对不同时刻两片点云的匹配与比对,计算激光雷达相对运动的距离和姿态的改变,也就完成了对机器人自身的定位。
激光雷达测距比较准确,误差模型简单,在强光直射以外的环境中运行稳定,点云的处理也比较容易。同时,点云信息本身包含直接的几何关系,使得机器人的路径规划和导航变得直观。激光 SLAM 理论研究也相对成熟,落地产品更丰富。
2、视觉 SLAM
视觉 SLAM 从环境中获取海量的、富于冗余的纹理信息,拥有超强的场景辨识能力。早期的视觉 SLAM 基于滤波理论,其非线性的误差模型和巨大的计算量成为了它实用落地的障碍。近年来,随着具有稀疏性的非线性优化理论(Bundle Adjustment)以及相机技术、计算性能的进步,实时运行的视觉 SLAM 已经不再是梦想。
视觉 SLAM 的优点是它所利用的丰富纹理信息。例如两块尺寸相同内容却不同的广告牌,基于点云的激光 SLAM 算法无法区别他们,而视觉则可以轻易分辨。这带来了重定位、场景分类上无可比拟的巨大优势。同时,视觉信息可以较为容易的被用来跟踪和预测场景中的动态目标,如行人、车辆等,对于在复杂动态场景中的应用这是至关重要的。
通过对比发现,激光 SLAM 和视觉 SLAM 各擅胜场,单独使用都有其局限性,而融合使用则可能具有巨大的取长补短的潜力。例如,视觉在纹理丰富的动态环境中稳定工作,并能为激光 SLAM 提供非常准确的点云匹配,而激光雷达提供的精确方向和距离信息在正确匹配的点云上会发挥更大的威力。而在光照严重不足或纹理缺失的环境中,激光 SLAM 的定位工作使得视觉可以借助不多的信息进行场景记录。
国内 SLAM 发展现状
激光 SLAM 比视觉 SLAM 起步早,在理论、技术和产品落地上都相对成熟。基于视觉的 SLAM 方案目前主要有两种实现路径,一种是基于 RGBD 的深度摄像机,比如 Kinect;还有一种就是基于单目、双目或者鱼眼摄像头的。VSLAM 目前尚处于进一步研发和应用场景拓展、产品逐渐落地阶段。
随着 SLAM 技术重要性的凸显以及应用市场的扩大 ,一些企业开始纷纷投入到 SLAM 技术研发中,这其中也可分为两大类,一是专门提供导航定位模块的企业,另一类则是移动机器人厂商,其开发 SLAM 多为自用。
随着 SLAM 技术重要性的凸显,国内越来越多企业纷纷投入 SLAM 技术的研发中,除了一些移动机器人厂商作为自用研发,也不乏一些企业专门提供定位导航模块。思岚科技就是其中一家,作为机器人定位导航技术的领先企业,思岚科技主要以激光 SLAM 取胜。它是我国最早将激光 SLAM 应用于服务机器人的企业,为了帮助机器人实现自主行走,国内思岚科技推出了模块化自主定位导航解决方案 SLAMWARE,这套定位导航方案以激光雷达作为核心传感器,搭配定位导航控制核心 SLAMWARE Core,可使机器人实现自主定位导航、自动建图、路径规划与自动避障等功能。据了解,该开发套装具有 12 米家用版及 25 米商用版之分,主要区别在于传感器测距范围的不同,思岚科技商用版除了 25 米测距外,还推出了首款 TOF 激光雷达,测距半径可达到 40 米,能满足更多更大场景的应用,且抗光干扰能力更胜一筹。在室外 60Klx 的强光下依旧能实现稳定测距及高精度地图建图。无论是室内还是室外场景,都能轻松完成任务。
除了思岚科技,国内速感科技、布科思、米克力美、高仙、斯坦德等企业也涌入其中,且大多企业以激光 SLAM 为主,毕竟激光 SLAM 是当下最稳定、可靠的定位导航方案,而视觉 SLAM 将是未来主流研究方向,不过未来两者融合也将成为一种趋势,采用多传感器融合能做到取长补短,为市场打造出更好用的定位导航解决方案,进一步实现机器人的智能化进程。
总体来说,目前国内 SLAM 技术无论是在技术层面还是应用层面仍处于发展阶段,未来,随着消费刺激及产业链不断发展,SLAM 技术将会有一片更为广阔的市场。
分享到:
猜你喜欢