激光雷达.pacp文件解析(使用ROS环境)

奈何编程能力有待提高,目前还直接编程实现不了这个问题,发现了另外一种现在可以操作也算是能解决的手头问题的方法。

本方法的主要思路是利用velodyne驱动,读进.pacp文件,然后使用ROS中的录制功能,讲刚才读入.pacp文件时ROS系统运行过程中的数据录制到一个.bag文件中。然后再利用pcl_ros包,将.bag文件转化成pcd文件,最终用pcl读出来每帧点云的数据。

录制与回放数据:http://wiki.ros.org/cn/ROS/Tutorials/Recording%20and%20playing%20back%20data

pcl_ros包:http://wiki.ros.org/pcl_ros#bag_to_pcd

(20190805还没有完全成功)

Open 6 terminal tabs (Ctrl + Shift + t):

1st tab:

$ roscore

2nd tab (run your .pcap file):

$ rosrun velodyne_driver velodyne_node _model:=VLP16 _pcap:=/path/to file.pcap

3rd tab: (create .bag file to visualize in Rviz)

$ rosrun rosbag record -O vlp_16.bag /velodyne_packets

4th. tab: (play your .bag file just created from 3rd. tab):

$ rosbag play vlp_16.bag

5th. tab: (to convert velodyne_msgs/VelodyneScan to /Pointcloud2 and /LaserScan topic to visualize in Rviz):

$ roslaunch velodyne_pointcloud VLP16_points.launch

6th. tab: (fixed frame MUST be assigned to "velodyne")

$ rosrun rviz rviz -f velodyne

In Rviz:

To visualize /scan topic:

Displays -> Add -> By topic -> LaserScan

To visualize velodyne_points topic:

Displays -> Add -> By topic -> PointCloud2

Enjoy!

你可能感兴趣的:(PCL,ROS)