zoukankan      html  css  js  c++  java
  • maplab运行之ROS+Rviz

    首先,我们要尊重原作者的劳动成果,给出原作者网页

    下载数据集 MH_01_easy.bag,原作者网页提供了链接,这里直接给出入口

    上篇随笔创建了工程 maplab_ws,并编译了maplab源码。把下载好的数据集拷到 maplab_ws 下备用。

    打开命令行运行ros:

    roscore

    新开一个命令行窗口并进入到 maplab_ws,执行:

    source devel/setup.bash

    rosrun rovioli tutorial_euroc save_folder MH_01_easy.bag

    可以看到输出视频,同时在 maplab_ws 下生成 save_folder 文件夹,里面的文件结构详见原作者网页。

    视频大概是这样纸的:

    1、从生成的地图数据中生成图

    刚才的程序运行完后,在 save_folder/vi_map  文件夹下会有10个 vertices 包。

    maplab 控制台的基本操作见这里,对地图的操作在这里(不得不说原作者们提供全套服务这点实在满满的人道主义精神啊,再看看国内。。。哎,不说了。当然这也是我写这篇随笔的原因之一咯)。

    打开 maplab 控制台:

    rosrun maplab_console maplab_console

    它是这样的:

    加载地图(就是生成的 save_folder 下的东西):

    load --map_folder ~/maplab_ws/save_folder

    然后就成了这样:

    然后我们要在Rviz中显示出来 so ~~~

    新开命令行窗口,输入:

    rosrun rviz rviz

    它大概长酱紫:

    接着在 maplab 控制台中输入显示命令:

    visualize

     咦?没反应诶!Rviz里什么也没有是不是?

    别担心,这是因为Rviz里面还要设置一下,你可以先看一下Rviz的官方教程

    先添加一个maker:

    topic选择 /vi_map_edges/viwls,这里的 topic 就是运行ROS时的topic,可以通过指令 rostopic list 查看,建议还是看一下ROS的关于topic的官方教程

    然后,是不是出来东西了呢

    再添加一个点云 pointcloud2,是不是很漂亮,莫名想起了小时候躺房顶上看星星,,,,,:

    2、运行数据集时生成图

    前面生成的图是我们利用运行完程序之后的地图数据生成的,现在我们要边加载下载的数据集边生成图。

    2.1 rosbag 形式运行

    把前面打开的 maplab 控制台关掉,把 Rviz 关掉,提示你是否保存,这个随意,如果保存的话,下次打开会自动加载上次的东西。

    运行数据集(当然是在 /maplab_ws/ 下运行),如果刚才不小心关掉了窗口,重新进入/maplab_ws/要记得先source一下setup脚本,忘了的看一哈上篇的喵:

    rosrun rovioli tutorial_euroc save_folder MH_01_easy.bag

    另开窗口运行 Rviz:

    rosrun rviz rviz

    在 Rviz 中添加 mark,topic 选择  /vi_map_edges/viwls,可以看到实时增长的轨迹,动态的噢!

    添加 T_G_I 和 T_G_M pose(在 by topic 下):

    然后可以在轨迹上看到箭头:

    2.2 rostopic 形式运行

    跟rosbag的区别是,运行rovioli时的脚本变了,至于二者到底有什么本质区别,我也不是太清楚,我觉得rosbag使用数据集实现的“伪实时”,但假如你有一个真的机器人,应该就需要rostopic形式运行了,当然这里的rostopic也是用的数据集,不过不同于rosbag直接运行数据集,而是先运行程序,再加载数据集来代替真实机器人的输入..........没看懂得话就算了,毕竟我也不知所云了。。。。。。

    运行:

    rosrun rovioli tutorial_euroc_live save_folder

    新开窗口进入 /maplab_ws,先 source setup脚本,然后执行:

    rosbag play MH_01_easy.bag

    新开窗口,打开Rviz:

    rosrun rviz rviz

    添加mark和T_G_I、T_G_M pose(同上),这里图就不贴了撒~

  • 相关阅读:
    NABC的特点分析
    梦断代码读后感(三)
    大道至简-“(我) 能不能学会写程序”
    课堂练习-找水王续
    找1
    课堂练习-找水王
    课堂练习-电梯调度
    课堂练习——计算法能够计算出读者购买一批书的最低价格。
    团队项目—二手书店特色
    梦断代码阅读笔记三
  • 原文地址:https://www.cnblogs.com/hxzkh/p/8320248.html
Copyright © 2011-2022 走看看