1. 项目概述
在自动驾驶开发中,路径跟踪是一个基础但至关重要的环节。而实现精准路径跟踪的前提,是获取高质量的参考路径数据。Autoware作为开源的自动驾驶框架,提供了完整的航迹点录制功能,可以方便地采集车辆行驶轨迹作为后续路径跟踪的基准。
我最近在一个园区无人车项目中,就遇到了需要为车辆录制特定路线航迹点的需求。经过多次实践,总结出一套稳定可靠的航迹点录制方法。相比直接使用仿真环境生成的路径,通过实际传感器数据录制的航迹点更能反映真实场景中的各种扰动和噪声,对后续控制算法的鲁棒性测试非常有帮助。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 环境准备与数据采集
2.1 硬件与软件配置
在开始录制航迹点前,需要确保环境配置正确:
-
硬件要求:
- 配备Velodyne激光雷达的车辆或仿真环境
- IMU和GPS/RTK定位系统(可选,提高定位精度)
- 高性能计算单元(建议i7以上CPU,16GB以上内存)
-
软件依赖:
- Ubuntu 18.04/20.04 LTS
- ROS Melodic/Noetic
- Autoware 1.14或更高版本
- Gazebo仿真环境(如使用仿真数据)
提示:如果是真实车辆,建议先在仿真环境中测试整个流程,熟悉操作后再进行实车数据采集,可以避免很多不必要的麻烦。
2.2 数据采集流程
2.2.1 数据包(bag)录制
对于真实车辆,首先需要录制行驶过程中的传感器数据:
bash复制rosbag record -O path_recording.bag /points_raw /imu/data /gnss/fix /tf /tf_static
关键话题包括:
/points_raw:激光雷达点云数据/imu/data:惯性测量单元数据/gnss/fix:GPS定位数据/tf和/tf_static:坐标系变换数据
2.2.2 时间戳对齐
回放bag包时,时间戳对齐至关重要:
bash复制rosbag play --clock path_recording.bag
在RViz中观察各传感器数据的时间同步情况,必要时使用rqt_bag工具检查时间戳对齐。
