SLAM是什么?他并不是什么创新性的学问,它将各种技术的交叉,解决新的应用场境,室内定位,空间导航,空间建模。
SLAM的关键,一是传感器技术,一是算法。
传感器主要分两大类,激光雷达和摄像头。(部分素材摘自官网)。
这是一个demo ,宾大的教授kumar在无人机上利用二维激光雷达做的SLAM。
而VSLAM则主要用摄像头来实现,主要分为单目、双目、单目结构光、双目结构光、ToF几大类。他们的核心都是获取RGB和depth map(深度信息)。简单的单目和双目这里解释一下结构光和ToF。
▌TOF
结构光原理的深度摄像机通常具有激光投射器、光学衍射元件(DOE)、红外摄像头三大核心器件。
(下图)摘自primesense的专利。
、
这个是Sparse(稀疏)的
这个偏Dense(密集)
▌SLAM算法要素
SLAM算法在实现的时候主要要考虑以下4个方面吧:
1. 数据关联问题,不同的sensor的数据类型、时间戳、坐标系表达方式各有不同,需要统一处理
2. 定位与构图问题,位姿估计和建模,
3. 地图表示问题,
4. 信息感知问题, RGBD摄像头FOV通常比较小,但激光雷达比较大
另外还有回环检测问题,探索问题(exploration),以及绑架问题(kidnapping)。
Google 还有一门技术,叫project tango ,我觉得与slam非常类似,解决同样的问题,其实我对这两门独门武功并没有深入的了解,不过,我认为他们可使用了同样的开源算法库,只是推广名不一样。最近看到project tango有成型的android手机推出来(lenovo phab2 pro),感觉project tango要领先slam一步了,毕竟有软硬两大巨头的合力。
无意中,发现一个qq群,在讨论tango技术,聊的还挺有意思,免费推广下:
tango.unity虚拟现实技术 318423655
===========================
更多文章请房问 52debug。net 【我爱狄八哥,我爱debug】
更多程序员故事微信公众号:coding-art (编码之妙)
广告,请联系微信号:systemer
更多技术微信公众号:debug51(我爱debug)