我使用的系統是: 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
轉載請注明:轉自http://blog.csdn.net/littlethunder/article/details/51920212