01
课程导论与数据回放基础
什么是自动驾驶数据回放?为什么需要数据回放?ROS2 Bag基础概念。
概念入门
02
ROS2环境搭建与Bag工具安装
ROS2 Humble安装、rosbag2工具包安装、验证环境。
环境安装
03
录制你的第一个ROS2 Bag
使用ros2 bag record录制话题数据、录制指定话题、录制所有话题。
录制实操
04
Bag文件信息查看与解析
使用ros2 bag info查看元数据、解析Bag文件结构、YAML元数据解读。
解析元数据
05
Bag文件回放基础
使用ros2 bag play回放数据、回放速度控制、回放循环模式。
回放基础
06
回放中的话题重映射
使用--remap参数重映射话题名称、多Bag联合回放。
重映射进阶
07
回放中的时钟与时间管理
使用--clock发布模拟时钟、use_sim_time参数、时间同步机制。
时钟同步
08
Bag文件压缩与存储优化
使用--compression压缩Bag、存储格式选择(SQLite3 vs MCAP)、磁盘空间管理。
压缩存储
09
Bag文件分割与合并
使用--split参数分割大Bag、ros2 bag convert合并Bag、自定义分割策略。
分割合并
10
Bag文件过滤与提取
使用ros2 bag filter过滤话题、基于时间戳过滤、基于正则表达式过滤。
过滤提取
11
Python脚本操作Bag文件(上)
使用rosbags库读取Bag、遍历消息、获取话题列表。
Python读取
12
Python脚本操作Bag文件(中)
使用rosbags库写入Bag、创建新Bag、写入自定义消息。
Python写入
13
Python脚本操作Bag文件(下)
使用rosbags库修改Bag、删除话题、替换消息。
Python修改
14
Bag数据可视化基础
使用rqt_bag查看Bag数据、话题曲线绘制、消息内容查看。
可视化rqt
15
使用PlotJuggler进行数据可视化
PlotJuggler安装与配置、加载Bag数据、绘制时间序列图。
PlotJuggler时序
16
使用Foxglove Studio进行数据可视化
Foxglove Studio安装、加载Bag、3D场景可视化、面板布局。
Foxglove3D
17
传感器数据回放与同步
LiDAR点云回放、相机图像回放、IMU数据回放、多传感器时间戳对齐。
传感器同步
18
CAN总线数据回放
CAN消息在ROS2中的表示、录制CAN数据、回放CAN数据、与真实ECU交互。
CAN总线
19
定位与地图数据回放
GPS/INS数据回放、点云地图回放、TF变换回放、坐标系统一。
定位地图
20
感知数据回放
目标检测结果回放、跟踪结果回放、车道线检测回放、可视化感知结果。
感知检测
21
规划与控制数据回放
轨迹规划结果回放、控制指令回放、路径点回放、决策逻辑复盘。
规划控制
22
多Bag联合回放与时间对齐
多传感器Bag时间同步、多车数据联合回放、时间轴对齐技巧。
联合对齐
23
数据回放中的性能优化
回放速率控制、消息队列深度调整、CPU/内存优化、实时性保障。
性能优化
24
自动化回放测试框架
使用Python编写回放测试脚本、断言消息内容、自动化回归测试。
自动化测试
25
数据回放中的故障注入
模拟传感器故障、注入延迟/丢包、测试系统鲁棒性。
故障鲁棒性
26
复盘分析流程设计
定义复盘指标、设计复盘报告模板、自动化复盘流程。
复盘流程
27
复盘工具链搭建
搭建基于Jupyter Notebook的复盘环境、集成可视化工具、生成复盘报告。
工具链Jupyter
28
实战案例1:城区道路自动驾驶数据回放与复盘
场景描述、数据回放、问题定位、改进方案。
实战城区
29
实战案例2:高速公路自动驾驶数据回放与复盘
场景描述、数据回放、问题定位、改进方案。
实战高速
30
课程总结与进阶方向
核心知识点回顾、常见问题FAQ、进阶学习资源推荐、社区与生态。
总结进阶