在移动互联网大潮之后,自动驾驶、无人机、服务机器人等人工智能硬件会成为下一个产业爆发点,其中关键的技术之一就是动态定位和环境建模的SLAM技术。
在计算机视觉(Computer Vision)创立之初,人们就想象着有朝一日计算机能和我们一样,用眼睛去观察世界,理解周遭的物体,探索未知的领域。这样一个美妙而又浪漫的梦想,吸引了无数科研人员日夜为之奋斗。
但事情的进展远不如预想那么顺利。我们眼中的花草树木、虫鱼鸟兽,在计算机中只是由一个个数字自排列而成矩阵。让计算机理解图像的内容,就像让我们自己理解这些数字一样困难。更别提让计算机去探索这个世界了。
随着技术的发展,现在的我们终于有了一点点成功迹象:一方面是机器学习技术的发展,使计算机渐渐能够辨别出物体、人脸、声音、文字。另一方面,在SLAM(Simultaneous Localization and Mapping,同时定位与地图构建)发展了将近30年之后,我们的相机渐渐开始能够认识到自身的位置,发觉自己在运动并感受周围的环境,甚至可以进行实时的三维重建。
SLAM技术解决了机器人的一个基础性困难——定位和建图。当设备主体(机器人)来到一个完全陌生的环境时,它可以精准地在运动过程中建立环境模型,同时估计自己的运动。基于此,涌现出一大批与SLAM 相关的应用点:自动驾驶、无人机、服务机器人、虚拟现实和增强现实……
SLAM是计算机对世界的感知和理解,也一直是机器人和计算机视觉的研究热点。
虽然SLAM理论框架基本趋于稳定,但其编程实现仍然较为复杂,有着较高的技术门槛。加之,国内与SLAM 相关的论文、书籍非常匮乏,让许多对SLAM 技术感兴趣的初学者无从一窥门径。刚步入SLAM 领域的研究者,不得不花很长的时间,学习大量的知识,走许多弯路才得以接近SLAM 技术的核心。
幸运的是,2017年《视觉 SLAM 十四讲:从理论到实践》一书出版。作为SLAM第一本话语原创著作,这本书从基础理论到代码实例,系统性讲解SLAM,大大降低了国内学生和相关从业者的进入门槛。
两年来,《视觉SLAM十四讲》一书共经历了 13 次重印,在 GitHub 上拥有 2500 个星星,也在业界引起了广泛的关注和讨论。今天,《视觉SLAM十四讲:从理论到实践(第2版)》带着超40%的内容增补回来了!
本书全面系统地介绍了以视觉传感器为主体的视觉SLAM 技术,并极其重视实践。书中介绍的所有重要算法,都将给出可以运行的实际代码,以求加深读者的理解。在第2版中,我们会讨论大多数算法的内在原理,而非简单地从函数库中进行调用。
之所以这么做,主要是考虑到SLAM 是一项和实践紧密相关的技术。再漂亮的数学理论,如果不能转化为可以运行的代码,就仍是可望而不可及的空中楼阁,没有实际意义。我们相信,实践出真知,实践出真爱。只有实际地演算过各种算法,你才能真正认识SLAM,真正地喜欢上科研。
1. 更多的实例。增加了一些实验代码来介绍算法的原理。在第1版中,多数实践代码调用了各种库中的内置函数,现在作者认为更深入地介绍底层计算会更好。所以本书中的许多代码,除了调用库函数,还提供了底层的实现。
2. 更深入的内容。主要是从第7讲至第12讲的部分,同时删除了一些泛泛而谈的边角料(比如GTSAM 相关内容)。对第1版大部分数学公式进行了审查,重写了那些容易引起误解的内容。
3. 更完善的工程项目。将第1版的第9讲移至第13 讲。于是,我们可以在介绍了所有必要知识之后,向大家展现一个完整的SLAM 系统是如何工作的。相比于第1版,本书的项目中将追求以精简的代码实现完整的功能,你会得到一个由几百行代码实现的、有完整前后端的SLAM 系统。
4. 更通俗、简洁的表达。这是一本好书的标准,特别是当介绍一些看起来高深莫测的数学知识时。作者重新制作了部分插图,使它们即使在黑白印刷条件下也能看起来很清楚。
高 翔
清华大学自动化系博士,慕尼黑工业大学博士后。研究兴趣主要为计算机视觉、定位与建图、机器学习等,主要著、译作包括《视觉SLAM十四讲:从理论到实践》、《机器人学中的状态估计》,在RAS、Auto Robotics、IROS等期刊会议上发表论文,现从事自动驾驶车辆研发工作。
如果你完全看不懂上面再说什么,那么恭喜你!本书很适合你!只要你对这门新技术感兴趣,在学习本书的过程中肯定会有所收获!你会掌握与SLAM 相关的理论知识,你的编程能力也将有明显的进步。