博主由於有逐幀的點雲(.bag)需要累加成點雲地圖,環境:Ubuntu14.04 ROS:indigo,具體步驟如下:
-
將點雲通過逐幀的累加形成點雲地圖,即SLAM方法,我們采用loam_SLAM方法構建地圖,具體安裝方法為:loam_slam的詳細介紹見:http://blog.csdn.net/nksjc/article/details/76401092; https://zhuanlan.zhihu.com/p/29719106;
cd ~/ROS_WORKSPACE/src # ROS_WORKSPACE自己的ROS工作空間。
git clone https://github.com/laboshinl/loam_velodyne.git
cd ~/ ROS_WORKSPACE
catkin_make -DCMAKE_BUILD_TYPE=Release
source ~/ROS_WORKSPAC/devel/setup.bas
-
運行loam_SLAM package:
roslaunch loam_velodyne loam_velodyne.launch
打開另一個終端,運行本地的點雲數據,即:
rosbag play ~/velodyne.bag
-
記錄正在運行的點雲數據,
在運行上面的命令的同時,打開另一個終端,運行:
rosbag record -o out /velodyne_points #一邊SLAM,一邊記錄運行累加完成的點雲數據,生成一個.bag文件
-
解析生成的.bag文件,變成.pcd文件
rosrun pcl_ros bag_to_pcd input.bag /laser_cloud_surround pcd #將上一步生成的.bag文件轉換成逐幀的.pcd文件,最后一幀就是我們要的.pcd文件。
-
在Ubuntu 下用pcl_viewer查看
pcl_viewer last.pcd #顯示最后一幀.pcd文件
后記:
如果有激光雷達,可以記錄自己的點雲數據
記錄數據:rosbag record -O out(#點雲名稱) /velodyne_points(#rostopic)
查看rostopic: rostopic list -v