本文主要是介绍激光雷达.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!
这篇关于激光雷达.pacp文件解析(使用ROS环境)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!