20190509 打开多个终端,以及栅格地图的生成

一:

#!/bin/sh
#by yuphe 2019050
#参考1:https://blog.csdn.net/qianzongCui/article/details/77877322
#参考2:https://blog.csdn.net/weixin_39465823/article/details/83786685
#DEMO:
#gnome-terminal  --window -e 指令 --tag -e 指令(一个--Window 一个终端 一个tag 多加一个tag) -window -e 指令
#gnome-terminal  --window -e 'bash -c "bash data_start.sh ;exec bash"'  --tab -e 'bash -c "ssh -lczx 192.168.1.51;exec bash"  -window  -e 'bash -c "bash data_start.sh ;exec bash"'
gnome-terminal  --window -e 'bash -c "bash lego_loam_start_.sh ;exec bash"'  --window  -e 'bash -c "bash data_start.sh ;exec bash"'
#--tag -e 'bash -c "bash data_start.sh ;exec bash"'

可以在每个窗体中执行相应的程序,程序可以是循环,不停止的 最好是sh文件,不要是指令 因为指令的效果并不好

 

二:把ransic看一下:

 

怎么查看bag数据包的数据格式:https://blog.csdn.net/lanyuxuan100/article/details/69988779

就是rosbag info ***.bag

三:

先说一下怎么演示吧 运行一个bag 要有tf变换,有PointCloud2的数据,然后运行lego_loam包里面的 occupy.launch 里面的frame_id 和remap 要改一下. 参阅gridmap下面的occupy.launch 里面.

 

<launch>
  <node pkg="octomap_server" type="octomap_server_node" name="octomap_server">

    <!-- resolution in meters per pixel -->
    <param name="resolution" value="0.1" />

    <!-- name of the fixed frame, needs to be "/map" for SLAM -->
    <param name="frame_id" type="string" value="velodyne" /> 1.改这里

    <!-- max range / depth resolution of the kinect in meter -->
    <param name="sensor_model/max_range" value="50.0" />
    <param name="latch" value="true" />

    <!-- max/min height for occupancy map, should be in meters -->
    <param name="pointcloud_max_z" value="1000" />
    <param name="pointcloud_min_z" value="0" />

    <!-- topic from where pointcloud2 messages are subscribed -->
    <!--<remap from="cloud_in" to="/laser_cloud_surround" />-->
    <remap from="cloud_in" to="velodyne_points" />    2.改这里
  </node>
</launch>

有人遇见这个问题了:查找三维点云地图转化为二维地图的方法
由于之前一直在查找三维点云地图转化为二维地图的方法,所以之前试过这个包的三维转换功能后就没有在继续使用,由于之前使用其他方法将二维占据栅格地图生成了,然后准备回过头来再看一下octomap_server的三维概率地图,然后在不经意间就发现了它也有转化为二维地图的功能(https://blog.csdn.net/sru_alo/article/details/85083030)

常在别人论文的demo演示视频中看到能够实时显示Octomap:看来要多看人家的论文 多看人家的视频

sensor_msgs/PointCloud2 Message 已经订阅 并且这个是有数据的 但是输出/octomap_full没有数据

按照这个:https://blog.csdn.net/lingchen2348/article/details/81837305 到是整出来了栅格地图,
 

roslaunch turtlebot_gazebo turtlebot_world.launch

roslaunch lego_loam TEST.launch

最后 在rviz里面加入 OccupancyMap-->topic 为/octomap_binary 或者/octomap_binaryfull,可以显示栅格地图

加入OccupancyMap-->topic  为/octomap_binary 或者/octomap_binaryfull,可以显示八叉树

用rqt_graph看了一下活动的节点:

 

难道是因为没有TF变换吗?去查看一下输入的数据格式.

 

Octomap 在ROS环境下实时显示:https://blog.csdn.net/crp997576280/article/details/74605766

 

最后的地图生成?

注意,对于实现增量式的Octomap构建,你需要把每次发送给Octomap的点云都旋转到同一个坐标系下去。Octomap 本身具有维护地图的功能,这可以省去很多事情。

另外一种思路就是你使用点云库自带的地图维护工具,把Octomap只当做一个转换工具也是可以的。这种方法下你可以将ORB的关键帧生成点云然后一直发布更新后的点云,这个代码高博以及写过了,可在github找到. 最后你把这个地图发布到一个topic上.,也可以实现实时的Octomap 啦,在做导航什么的就方便了。
---------------------  
作者:熊猫飞天  
来源:CSDN  
原文:https://blog.csdn.net/crp997576280/article/details/74605766  
版权声明:本文为博主原创文章,转载请附上博文链接!

 

是因为没有TF变换吗?

跑了cartography的数据包 能够跑出来:

跑一下lego_loam给的源码:

 

四:

下面的问题 是,怎么生成栅格地图,并给规划用 (全局栅格地图,视觉slam 14讲中有对地图的介绍)

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值