【1】Cartographer建图后的原始图像处理(Rviz插件修图)

修图软件:kolourpaint

sudo apt install kolourpaint

Cartographer建的地图往往是不能直接用的,需要自己修图清除噪声点和干扰点。除此之外,还需要限定一些机器人不能到达的区域。这时候就需要修图,采用这种插件的形式的优势是,不改变Carto建立地原始图像,直接将修改的图以话题的形式发布出去给导航用。

当然,直接用修图软件也可以修改,但是这样会改变原始图,可能对定位有一定的影响。这种用插件的形式,不改变原始图,使用原始图像定位较准确。

插件修图的形式步骤如下:
1、新建一个catkin_ws工作空间
2、拷贝rviz_map_toolcatkin_ws/src/文件夹下。看一下rviz_map_tool下都有哪些文件?
在这里插入图片描述

map:手动存放cartographer建的地图及转化文件(floor_1.pbstream floor_1.pgm floor_1.yaml

data:csv文件,保存对原始图像做修改的坐标值。比如在地图中画了一个矩形框,会生成一个csv文件,保存矩形框的坐标值。
src:插件的源码
include:插件的头文件
launch:插件的启动文件

重点关注一下launch文件

<launch>
	<!--csv文件的保存路径,修改成自己的-->
	<param name="map_directory" value="/home/lyp/zhankun/SLAM/lp_robot_test/catkin_ws/src/rviz_map_tool/data/"/>
    
    <!--cartographer新建地图的原始文件,修改成自己的路径-->
	<node name="map_server" pkg="map_server" type="map_server" args="/home/lyp/zhankun/SLAM/lp_robot_test/catkin_ws/src/rviz_map_tool/map/floor_1.yaml" />
	
	<!--启动rviz,可以暂不修改,启动是默认的default.rviz-->
	<node name="rviz" pkg="rviz" type="rviz" required="true" args="-d /opt/ros/melodic/share/rviz/rviz_map.rviz" />
</launch>

3、启动rviz_map.launch文件
可能会报错,缺少配置文件,按要求下载就好。

sudo apt-get install ros-melodic-jsk-recognition-msgs 
sudo apt-get install ros-melodic-jsk-rviz-plugins

4、启动完之后,会打开Rviz
(1)依次选择Panels—>Add New Panel—>RvizMapTool
在这里插入图片描述
(2)选择Add,再添加Map
在这里插入图片描述
(3)选择Add—>SegmentArry,然后修改topic为``roadedge`,可以自己选择配置修图的线颜色和粗细。
在这里插入图片描述

(4)选择TopDownOrtho (rviz),调整地图,便于修图。选择2D Nav Goal点击地图,即可画线。(注意,第一次点击地图只是一个点,第二次点击地图时,会连接这两个点,形成一条直线;再次点击时,会与前一个点形成一条直线)如果有点击错误,或者画得不好的线,可以选择clear all 或者clear last清除画的线。最后点击save to file,即可保存坐标到./data/roadedge.csv文件中。
在这里插入图片描述源码下载链接:https://download.csdn.net/download/qq_41821678/21043271

下一步任务:Rviz插件修完图之后发布修图坐标值(读取CSV文件)

猜你喜欢

转载自blog.csdn.net/qq_41821678/article/details/119632675#comments_27321459
今日推荐