公众号后台朋友们时常催更,非常感谢支持并感抱歉,前段时间由于工作关系,停更较久。 之前学习了一段时间SLAM算法,也利用一些开源库做了些集成开发。抽空写了篇 微信推文体,不涉及晦涩算法与运算,权当交流,也希望更多人能了解SLAM是什么。
1 SLAM定义 开发机器人、无人机及目前热门的自动驾驶的朋友一定会了解,SLAM(Simulataneouse Localization And Mapping),是「同步定位与建图」的简称,也有翻译为「同步定位与映射」。
定义是在机器人处在自身位置不确定且未知环境中,利用传感器采集信息来描述当前场景并创建出地图,并且利用该地图实现自主定位与导航。 具体到案例,即机器人能在移动过程中通过传感器数据以及所处位置来进行自身定位,并建造出增量式地图。
但 机器人的自定位与环境建模问题可考虑为闭环,环境模型的确定依赖于定位精度,而定位的实现又非常依靠与环境模型的准确。
因此在SLAM问题中,需要搞清楚: 1、 我在哪里?(定位localization) 2、 所处怎样的环境?(构建地图Mapping) 3、 我要去哪里?(路径规划Navigation) ![]()
2 两种实现形式 目前SLAM上用到的传感器主要分两种,也是目前主流的两种SLAM策略,第一种是激光雷达,第二种是摄像头,让人联系到了以谷歌为首的激光雷达无人驾驶阵营以及以mobileye为首的摄像头毫米波雷达的自动驾驶阵营。
激光雷达SLAM 目前激光雷达分单多线,如谷歌及百度等无人驾驶汽车所搭载的即为velodyne的64线束激光雷达。 ![]()
以谷歌汽车为例,移动机器人携带有GPS,通过GPS对位置进行判断,并以激光雷达SLAM云点图像与高精度地图进行坐标配准,Matching后确认自身位置。 ![]()
视觉vSLAM 第二类则是基于视觉的Vslam,主要由摄像头实现,目前主要分
- 单目摄像头(Monocular Camera)
- 双目摄像头(Binocular Camera)
- 深度摄像头(RGB-D Camera)
基于几何处理的视觉SLAM可实时构建出3D地图,完成了对深度学习的补充。SLAM领域一个常见的解释就是:
如果你想要一个能走到你的冰箱面前而不撞到墙壁的机器人,那就使用 SLAM。 如果你想要一个能识别冰箱中的物品的机器人,那就使用卷积神经网络。
SLAM是传统SFM(运动恢复结构:Structure from Motion)的实时版本。举个例子,以SFM方式构建一个体育馆的3D模型,则需要多个相机或摄像头,固定于不同位置,并拍摄大量照片,照片集合以离线方式进行模型重建,所需时间也较长。
双目摄像头通过三角方法计算出深度信息,但由于双目在目标较远时即会与单目等效,因而越来越多的企业开始直接采用单目作为主要研究形式。 以Mobileye为例,虽称以REM实现自动驾驶的路径规划,实则REM依然基于vSLAM(version SLAM),车辆通过采集包括信号灯,指示牌等标识,得到了一个简单的3D坐标数据,在通过视觉识别车道线等信息,获取一个一维数据。摄像头中的图像与此类REM地图中进行如谷歌所做的配准,即完成定位。
3 SLAM在自动驾驶中的应用 车辆实现无人驾驶,就需要明确车辆精确定位,并在此基础上进行二次路径规划,也就是说这是一个动态对外部驾驶环境建模并映射到以无人驾驶汽车为中心的坐标系中。
谷歌为首 对于提到的谷歌激光雷达SLAM,无人驾驶的实现需有高精度地图的支持,目前谷歌采取的是类似穷举法的方式用谷歌街景车来对所有环境进行3D建模,相对来说此方式成本太过高昂,对于一般公司而言就难以实现。
动态图为Cartograher Mapping 的整个过程:
mobileye为首
mobileye采用的以摄像头作为主要传感器的视觉SLAM方式,使得成本无疑得到了大幅下降,也有个前提,即应有大量安装有REM系统的车辆在全球范围内进行驾驶,并将所有驾驶路段的数据信息传回服务器,以供其他的车辆进行读取判断使用。但由于摄像头无法像激光雷达一样,实现全工况下的数据采集,也导致了在天气较为恶劣的环境下难以得到较高的准确率,这也就是前不久Tesla事故频出的原因之一。 4 结语 综上,就现阶段趋自动驾驶来看,未来趋势已然逐渐明显,目前自动驾驶技术已不再如当年那么依赖于高精度地图,而成本的逐级骤降也使得固态激光雷达的使用亦不再如当年那样难以承受,待其成本降低到所期待的250美金后,基于激光雷达的SLAM很快就会有大显身手的机会。
今年7月左右,于Tesla总部停车场,拍摄到一辆顶着64线束激光雷达的Model S测试车,也许Elon Musk也改变原有看法,采用了激光雷达SLAM。
目前诸如AR等领域开始应用SLAM技术,SLAM的发展将会在更多技术领域起到中流砥柱的作用。至于自动驾驶之路何去何从,则值得我们继续期待。文中若有不当之处,还望指出,后续也会陆续写些SLAM算法供大家参考。
![]()
赞赏
人赞赏
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.