3D点云地图与栅格地图同时显示

在这里插入图片描述同时,适用于kinetic melodic
octomap_server的安装:
Octomap安装
sudo apt-get install ros-melodic-octomap-ros
sudo apt-get install ros-melodic-octomap-msgs
sudo apt-get install ros-melodic-octomap-server
sudo apt-get install ros-melodic-octomap-rviz-plugins
1.2 map_server安装
sudo apt-get install ros-melodic-map-server

二、制作launch文件
2.1 在默认目录下,创建launch文件
cd /opt/ros/melodic/share/octomap_server/launch

手动进入该目录也可以。

然后:

sudo gedit octomap_server.launch

编写launch文件
在新建的launch文件中填写以下内容:

<launch>
  <!--启动的节点-->
  <node pkg="octomap_server" type="octomap_server_node" name="octomap_server"> 
 
     <!--栅格分辨率-->
    <param name="resolution" value="0.1" />
    
    <!--世界坐标系话题,一般为map-->
    <param name="frame_id" type="string" value="/map" />
 
    <param name="sensor_model/max_range" value="1000.0" />
    <param name="latch" value="true" />
 
     <!--截取的三维点云范围--> 
    <param name="pointcloud_max_z" value="0.8" />
    <param name="pointcloud_min_z" value="-0.5" />
 
    <param name="graound_filter_angle" value="3.14" />
    
     <!--订阅的点云消息名称 PointClout2,即上一步发布出来的点云topic--> 
     <!-- cloud_in是octomap默认的输入话题,做一下映射-->
    <remap from="cloud_in" to="your_map_topic" />
  </node>
 
</launch>

“your_map_topic”这里笔者选择填入三维点云地图话题
然后保存,关闭文件。
启动launch文件
打开终端,进入.launch文件所在目录,启动launch文件

cd /opt/ros/melodic/share/octomap_server/launch
roslaunch octomap_server.launch

### 将点云地图转换为二维栅格地图 #### 工具准备 为了实现三维点云地图二维栅格地图的转变,需配备特定软件包。具体而言,此过程依赖于`octomap`用于地图转换[^1],以及`map_server`负责存储最终生成的栅格地图文件。 #### 安装必要组件 对于`octomap`的部署,可以通过官方文档获取详细的安装指南。此外,在操作过程中可能还需要配置并运行一个专门设计用来发布转换点云数据的`.launch`文件。 #### 数据预处理投影变换 在实际执行转换之前,先要对原始采集得到的3D点云实施必要的前处理工作。这一步骤涉及去除噪声、滤波平滑化等措施以提高后续映射质量。之后便是关键性的降维操作—即把空间中的离散点集投射至选定的目标平面上形成对应的2D表示形式[^3]。这一阶段可借助开源计算机视觉库如Point Cloud Library (PCL),或是Robot Operating System(ROS)内建的功能模块来进行高效能计算。 #### 实现流程概述 通过上述准备工作完成后,整个转化流程大致如下: - **加载输入源**:读取由传感器收集而来的原始点云资料; - **应用过滤器**:清理异常值并对剩余有效样本做适当调整优化; - **执行投影算法**:依据设定参数将三维坐标系下的各点位置信息重新定位到指定平面之上; - **构建网格结构**:按照一定分辨率划分区域单元格,并统计落入各个区间内的点数密度情况; - **输出结果图像**:最后利用像`map_server`这样的实用程序导出可供导航规划使用的二值位图或灰度级矩阵格式的地图文件。 ```bash # 示例命令行指令展示如何启动相关节点服务 roslaunch octomap_mapping demo.launch rosrun map_server map_saver -f my_2d_map ```
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值