我是 LiDAR 技术的新手。从文档中我发现我们可以使用 Veloview 软件可视化 LiDAR 数据。但我的目标是使用 .pcap 文件创建 3D 图像并进一步处理它以进行对象检测。整个工作在 Ubuntu 14.04 中。谁能给我一个好的解决方案?
3 回答
打开 6 个终端选项卡 ( Ctrl + Shift + t
):
第一个标签:
$ roscore
第二个选项卡(运行您的 .pcap 文件):
$ rosrun velodyne_driver velodyne_node _model:=VLP16 _pcap:=/path/to file.pcap
第三个选项卡:(创建 .bag 文件以在 Rviz 中可视化)
$ rosrun rosbag record -O vlp_16.bag /velodyne_packets
第四。选项卡:(播放刚刚从第三个选项卡创建的 .bag 文件):
$ rosbag play vlp_16.bag
第五。选项卡:(转换velodyne_msgs/VelodyneScan
为/Pointcloud2
和/LaserScan
主题以在 Rviz 中可视化):
$ roslaunch velodyne_pointcloud VLP16_points.launch
第六。选项卡:(固定框架必须分配给“velodyne”)
$ rosrun rviz rviz -f velodyne
在 Rviz:
可视化/scan
主题:
显示 -> 添加 -> 按主题 -> LaserScan
可视化velodyne_points
主题:
显示 -> 添加 -> 按主题 -> PointCloud2
享受!
我建议研究使用 ROS 和点云库。使用这些来进行这种处理有很多支持。要从 VLP-16 中提取数据,您可以使用此 ROS 包。
您可以使用点云库。
编译 PCL 有点棘手,但一旦你开始,你可以做很多点云分析。
按照此处关于LiDAR HDL Grabber的说明进行操作。出于您的目的,您需要将<pcl/io/vlp_grabber.h>
与<pcl/io/hdl_grabber.h>
. vlp_grabber 基本上使用相同的 hdl_grabber,但提供 vlp 校准参数。同样主要的是,您将希望实例化 apcl::VLPGrabber
而不是 a pcl::HDLGrabber
。
仅凭这些少量更改可能不足以获得功能齐全的抓取器和查看器,但这是一个开始。
PCL 上的示例适用于 ,hdl_viewer_simple.cpp
但也有一个vlp_viewer.cpp
位于visualization/tools/
. 检查出。
这不是完全解决您的问题的答案,但如果您想使用 PCL,请提供解决方案的途径。