已完成工作
1. 多传感器采集 pipeline 验证(scripts/data_collection_test.py)
- 打通 WSL2 → Windows CARLA Server(0.9.16)连接,Town10HD 同步模式 20 FPS。
- 场景:ego(Tesla Model,30 km/h 匀速)+ NPC A(前方 40 m,15 km/h)+ NPC B(对向车道,50 km/h)+ 行人(触发式横穿)。
- 六传感器同步采集 300 帧:RGB/语义分割/深度 PNG + LiDAR PLY + GNSS/IMU 入 GT CSV。
- 数据完整性校验全部 PASS(磁盘数 = 计数 = 300,GT 1200 行 = 300 帧 × 4 actors)。
2. 排掉的四个深坑(都是复用时一定会踩的)
- 相机预热期丢帧 → 预热循环 + 丢弃预热数据。
listen()回调内写盘阻塞数据流导致服务端丢帧 → 改为队列架构:回调只 put,主循环按帧号对齐取数保存。- GNSS/IMU 在 0.9.16 同步模式下不推流(探针验证异步正常)→ 自动回退:用
transform_to_geolocation+ 速度差分推算填充 GT,metadata 标注 source。 - Town10HD 单向多车道找不到对向车道 → 横向逐车道跳跃搜索。
3. 场景驱动的批量采集器(scripts/scenario_collector.py)
- JSON 配置驱动:地图/天气/时长/seed + ego + 任意 NPC/行人。
- 5 种 spawn 类型、4 种行为类型;transform 绝对位姿为事故数据注入预留。
- 批量:多配置 × 多 seed,失败自动记录跳过,
batch_report.json汇总,退出码可串联 CI。 - 确定性:同步模式 + TM/行人种子固定;输出自描述(metadata 内含完整配置)。
- 版本统一 0.9.16,schema 独立为
configs/scene_schema.json(示例配置已通过校验)。
未来 TodoList
阻塞在上游输入的(等别人)
- 拿到 L1~L5 五级场景的量化定义(参数范围、难度判据)→ 制作各级示例配置。
- 拿到位姿恢复组的输出格式 → 开发"轨迹数据 → 场景 JSON"坐标转换工具。
- 与评测组确认数据交付格式(目录结构、metadata 字段)。
可以开工的(不依赖别人)
- 跑确定性实验:同 seed 连跑 3 次,diff GT 量化重放偏差 → 定复核容差阈值。
- 实现 trajectory 行为类型(schema + 采集器):按时间戳轨迹点回放 NPC,含轨迹保真度误差统计。
- 扩展触发条件:时间触发、速度触发相对任意 actor(ref 泛化)。
- 自动复核脚本:从 GT 提取关键事件指标(碰撞时刻、最小 TTC、最小间距、速度分布),对照五级定级参数自动判定。
- 更多示例:变道切入、十字路口、遮挡行人"鬼探头"等典型长尾工况。
- 完善团队文档:采集器使用说明、踩坑记录(四个深坑值得写进团队 wiki)。
- 评估 scenario_runner / OpenSCENARIO 是否作为比赛标准接口,决定自研 schema 与之的映射关系。