基于谷歌Cartographer SLAM集成机器视觉

首发:今日头条号之机器人视觉

从工程的角度来看,Google开源的SLAM真是上乘之作,当然算法及实现也是大公司级手笔,鉴于当前中文介绍较少,就把近来看的源码分析介绍出来,也许能给某些人以方便。

这篇文章里,仅从ROS及Cartographer SLAM本身的调用流程讲起,关于算法等细节另开文章再详加说明。

首先,编译、安装,把代码跑起来,先一探究竟,如下图所示,2D环境下的SLAM示例,其中需要注意的地方:

1)安装方法,有个库ceres-solver从Google官网上是下载不下来的,需要修改配置文件的下载链接,GitHub上有这个库的替代链接下载地址。

2)ubuntu要准备好ROS环境,本人用的是16.04下的分支,系统配置高一些,运行过程会流畅不少。

3)示例中的数据,可以对家迅雷下载,2D的SLAM近500M数据量,3D的SLAM近8G数据量,还好能很快的下载完成。

从运行结果来看,Google不愧是大家,值得高度称赞!

基于谷歌Cartographer SLAM集成机器视觉

Cartograpther 2D SLAM示例

其次,我们来看一下Google Cartographer的源码结构,工程上真可谓是达到商业级,相对本人了解的其他几种开源的SLAM。层次清晰、结构完整、方便扩充,随后会有讲解如何在SLAM点云数据的基础之上把本人的三维机器视觉算法整体嵌入。

基于谷歌Cartographer SLAM集成机器视觉

Cartographer源码分析之调用流程

最后,在Google Cartographer SLAM基础之上,扩充2D/3D机器视觉方案,整体来看SLAM及视觉算法不复杂,但计算量不小,这里本人使用Nvidia Jetson TK1来实现,

基于谷歌Cartographer SLAM集成机器视觉

实时视觉方案


猜你喜欢

转载自blog.csdn.net/hjwang1/article/details/62235841