天天看點

SLAM之VeloyneLiDAR-VLP-16雷射雷達從安裝到地圖建立

我使用的系統是: Ubuntu 16.04 x64,ros-kinetic,Python2.7。(其它系統版本也相仿)

硬體是: VeloyneLiDAR VLP-16

安裝Point Cloud Library(PCL),Ubuntu下PCL官方提供安裝方式是:

sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl  
sudo apt-get update  
sudo apt-get install libpcl-all  
           

出現如下錯誤:

以下兩種方式解決:

sudo apt-get install libpcl1
#or 
sudo apt-get install libpcl*
           

安裝python2.7的warp:

git clone https://github.com/strawlab/python-pcl.git  
cd python-pcl  
make  
sudo python2 setup.py install 
           

我的提示找不到Cpython,于是運作

sudo apt-get install Cpython*
           

使用指令檢查是否安裝成功

python
import pcl
           

之後的部分假設已接通線路,ubuntu能夠連接配接到雷射雷達,并可以用VeloView顯示實景

安裝VLP-16的ROS驅動

安裝VeloView軟體,可以從VeloView官網下載下傳或者在附贈的U盤裡找到,使用如下指令把安裝檔案夾中的Velodyne XML檔案轉成ROS節點的YAML檔案,轉換後生成VLP-16.yaml

rosrun velodyne_pointcloud gen_calibration.py ~/Desktop/VLP-.xml 
roslaunch velodyne_pointcloud VLP16_points.launch calibration:=/home/lordjesus/Desktop/VLP-.yaml
           

在rviz中顯示

rosrun rviz rviz -f velodyne 
           

然後在rviz中點Add,增加PointCloud2,再在PointCloud2下點topic輸入/velodyne_points。這樣就可以實時顯示擷取的3D點雲圖

使用rosbag記錄資料

rosbag record -O bagname /velodyne_points 
#or 
rosbag record -a bagname
           

rosbag的其他指令複習

http://wiki.ros.org/cn/ROS/Tutorials/Recording%20and%20playing%20back%20data

rosbag record -a                                #錄制所有釋出的話題到目前目錄
rosbag record -O bagname /velodyne_points       #錄制指定的話題到目前目錄
rosbag info <your bagfile>                      #檢檢視bag檔案的内容
rosbag play data_file_name.bag                  #回放bag檔案以再現系統運作過程
rosbag play data_file_name.bag -r            #以0.5倍速播放.bag檔案的内容
           

試跑LOAM SLAM的算法

cd ~/catkin_ws/src  
git clone https://github.com/laboshinl/loam_velodyne.git  
cd ~/catkin_ws  
catkin_make -DCMAKE_BUILD_TYPE=Release  
source ~/catkin/devel/setup.bash  
roslaunch loam_velodyne loam_velodyne.launch 
           

然後在新的終端運作:

rosbag play ~/bagname.bag  
#or  
roslaunch velodyne_pointcloud VLP16_points.launch pcap:="/home/username/bagname.pcap"  
           

在rosbagplay運作結束後,rviz中應有一個map,如沒有,可以多試幾次或檢查節點:

rosrun rqt_graph rqt_graph
           
SLAM之VeloyneLiDAR-VLP-16雷射雷達從安裝到地圖建立
SLAM之VeloyneLiDAR-VLP-16雷射雷達從安裝到地圖建立
SLAM之VeloyneLiDAR-VLP-16雷射雷達從安裝到地圖建立

轉載請注明:轉自http://blog.csdn.net/littlethunder/article/details/51920212

繼續閱讀