我使用的系统是: 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