网站申请怎么样推广自己的店铺和产品
目录
1 octomap的安装
2 二维导航节点的建立及栅格地图的构建
3 三维栅格地图的建立
1 octomap的安装
这里采用命令安装:
sudo apt install ros-melodic-octomap-msgs ros-melodic-octomap-ros ros-melodic-octomap-rviz-plugins ros-melodic-octomap-server
这样子就是安装好了。
2 二维导航节点的建立及栅格地图的构建
我们进入liosam的工作空间下的launch文件夹:
新建一个launch文件,就叫octomap2D.launch
将下面的内容粘贴其中:
<launch><node pkg="octomap_server" type="octomap_server_node" name="octomap_server"> <!--resolution in meters per pixel--><param name="resulution" value="0.6" /><!--name of the fixed frame,needs to be "/map" for SLAM--><param name="frame_id" type="string" value="/map" /><!--max range/depth resolution of the kinect meters--><param name="sensor_model/max_range" value="5.0" /><param name="latch" value="true" /><!--max/min height for occupancy map, should be in meters--><param name="pointcloud_max_z" value="5" /><param name="pointcloud_min_z" value="0" /><param name="graound_filter_angle" value="3.14" /><!--topic from where pointcloud2 messages are subscribed--><remap from="/cloud_in" to="/lio_sam/mapping/cloud_registered" /></node></launch>
我来解释下各个参数的含义:
resolution:分辨率或精度,越小精度越高计算需要资源越庞大
frame_id:世界坐标系的话题,即圆点坐标系
sensor_model/max_range:扫描的最大距离
cloud_in:点云话题
pointcloud_max_z:最大的Z扫描值
pointcloud_min_z:最小的Z扫描值(激光雷达和垂直平面有一定距离)
当然,还有其他可选参数:
1.剔除地面点的
加上的话类似这样:
<launch><node pkg="octomap_server" type="octomap_server_node" name="octomap_server"> <!--resolution in meters per pixel--><param name="resulution" value="0.6" /><!--name of the fixed frame,needs to be "/map" for SLAM--><param name="frame_id" type="string" value="/map" /><!--max range/depth resolution of the kinect meters--><param name="sensor_model/max_range" value="1000.0" /><param name="latch" value="true" /><!--max/min height for occupancy map, should be in meters--><param name="pointcloud_max_z" value="5" /><param name="pointcloud_min_z" value="-1.5" /><param name="filter_ground" value="true" /><param name="ground_filter/distance" value="0.05" /><param name="ground_filter/angle" value="0.2" /><!--topic from where pointcloud2 messages are subscribed--><remap from="/cloud_in" to="/lio_sam/mapping/cloud_registered" /></node></launch>
我们启动liosam主节点和本节点。
播放bag包:
发现地面有很多噪点。调参...
好点了,继续调参。。
不停的调参后.....
勉强可以用。。。因为我们手持的原因...
保存栅格地图:
rosrun map_server map_saver map:=/projected_map -f sbmap
3 三维栅格地图的建立
下载octomap_tutor并编译:
安装依赖:
sudo apt-get install liboctomap-dev octomap
生成可执行文件pcd2octomap,记得一定要设置可执行,可以打开这个文件的属性看一看。
执行:
pcd2octomap carto_demo.pcd carto.bt
执行成功,发现八叉树文件:
查看地图:
octovis carto.bt
OK