A-LOAM構建3d點云地圖并實時轉存二維柵格地圖
A-loam算法。源代碼用的是velodyne雷達話題,但是現在用rslidar來處理。所以也會遇到另外一個包來轉換相關的數據。
git clone https://github.com/HKUST-Aerial-Robotics/A-LOAM.git
https://github.com/HViktorTsoi/rs_to_velodyne.git
一個是a-loam,一個是轉換數據。
下載了然后編譯。就可以啟動建圖了:
source /devel/setup.bash
roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
rosbag play <YOUR_DATASET_FOLDER>/nsh_indoor_outdoor.bag、
bag數據在:
https://drive.google.com/file/d/1s05tBQOLNEDDurlg48KiUWxCp-YqYyGH/view
所以,綜合一下所有的內容:
首先獲取到點云數據,然后轉換數據格式,然后啟動a-loam。
source /devel/setup.bash
roslaunch rslidar_pointcloud rs_lidar_16.launch
rosrun rs_to_velodyne rs_to_velodyne XYZIRT XYZIRT
roslaunch aloam_velodyne aloam_velodyne_VLP_16.launch
注意轉換數據時的坐標關系:在launch文件夾內新建XX.launch文件用來啟動節點,并在launch內寫入如下。其中args="XYZIRT XYZIRT"是Main函數的輸入參數:XYZIRT、XYZIRT,使用空格隔開參數。
<launch><node pkg="rs_to_velodyne" name="rs_to_velodyne" type="rs_to_velodyne" args="XYZIRT XYZIRT" output="screen"></node>
</launch>