XiongXiao's Blog

菜鸟要起飞

[ROS]Kinect 3D 环境建模的尝试与改造

今年团队参加了openHW 2014开源硬件与嵌入式大赛。计划用四旋翼飞行器搭载kinect实现室内环境的三维建模。期望的最终实现下过如下图: 3d_output

去年我们团队同样参加了这个比赛,题目是混合实时移动机器人平台,实现小型轮式移动机器人室内环境的2D地图构建和导航,采用ROS(Robot Operation System)分布式架构。演示视频在这里

虽说已经有了去年的基础,但从2D升级到3D还是面临着很多挑战。具体体现在以下几个方面:

  • 数据量的大幅增加,网络传输的带宽限制
  • 环境信息的特征识别、地图拼接的算法等都更加复杂
  • 飞行器的飞行状态的不稳定性

[ROS]fuerte版本的下解决rgbdslam包不兼容的问题

最近学习ROS的过程中入手了kinect,一些驱动部分已经装好,对人体的骨架识别在一番折腾之后也没有问题了,唯独在对环境进行地图建模的地方一直卡住很久,由于手上没有现成的机器人,本人也是ROS新手,所以只能按照官方的教程一步一步来,具体可以参考rgbdslam Wiki。下载完rgbdslam_freiburg包,也通过

rosdep update
rosdep install rgbdslam_freiburg

安装了libg2o,但在最终编译的时候出现错误,导致编译不能通过。上ROS ANWSERS 找解决办法,发现有很多和我类似的情况,最后我找到了这个

其中的回答大意就是删除libg2o包,下载旧版本的g2o包,然后更改rgbdslam_freiburg包编译过程中用到的依赖。

我的步骤如下

  1. http://openslam.org/g2o.html 通过svn获取源码,阅读trunk文件夹中的README.TXT安装一些依赖之后再编译。

  2. http://ros.org/wiki/g2o通过svn下载包,然后编译,在编译过程中会提示网址的svn证书不受信任,编译终止。通过在网上查资料 ...