1. 课程导入
自动驾驶系统每天产生海量道路数据,但原始传感器记录本身并不能直接教会模型“什么是安全变道”“什么算激进跟车”。要让算法理解驾驶行为,必须把连续、嘈杂、多源的轨迹数据加工成结构化、可学习、可评估的标签。这正是轨迹与行为标签工程要解决的核心问题:它位于数据采集与模型训练之间,是把“车怎么动”翻译成“车在做什么、做得怎么样”的关键生产环节。
一、核心概念:轨迹、行为与标签的关系
轨迹是对象在时间轴上的状态序列,通常包含位置、速度、加速度、航向角、朝向变化率等参数。它回答“在哪里、以什么状态运动”。行为是对轨迹片段的语义归纳,例如跟车、变道、超车、切入、让行、停车等待。它回答“这段运动意味着什么”。标签则是行为与场景属性的结构化编码,既可以是离散类别,也可以是连续风险值、交互关系或时序边界。
三者不是简单包含关系,而是逐层抽象:轨迹是证据,行为是解释,标签是可供训练和评估的监督信号。标签工程的质量,直接决定模型学到的是可泛化的驾驶常识,还是数据中的偶然噪声。
二、方法流程:从原始轨迹到可用标签
一条可落地的标签流水线通常包含六个步骤,每一步都有明确的输入输出和质量门槛。
- 数据接入与对齐:统一时间基准,完成多传感器时空同步,解决丢帧、延迟和坐标系差异。
- 轨迹清洗与重建:剔除异常跳点,对缺失段插值,平滑速度与加速度,保证运动学自洽。
- 目标关联与场景切片:将同一目标跨帧关联,按事件窗口切分出候选行为片段。
- 行为判定:用规则、聚类或序列模型识别变道、跟车、切入等行为,并给出起止时间。
- 标签编码:把行为、风险、交互关系编码为统一 schema,附带置信度和来源。
- 质检与回流:通过人工抽检、交叉验证和模型反馈发现错标、漏标,持续迭代规则。
标签记录示例(JSON 片段)
{
"scene_id": "city_0421_0037",
"object_id": "veh_18",
"behavior": "cut_in",
"start_ts": 12.480,
"end_ts": 15.920,
"risk_level": "high",
"interaction": {"target": "ego", "min_ttc": 1.8},
"confidence": 0.93,
"source": "rule+model"
}
三、案例场景:标签如何影响下游任务
以城市路口切入场景为例。原始轨迹只显示某车横向偏移逐渐增大,若不做行为标签,模型可能只学到“横向位移”这一浅层特征。加入切入标签后,模型能区分“邻车正常变道进入本车道”与“邻车压线试探后回退”,再叠加风险标签(如最小TTC、碰撞时间余量),规划模块就能针对高风险切入提前减速,而不是等到距离极近才反应。
在仿真回归中,标签同样关键。若测试集只按里程采样,大量简单跟车场景会淹没少量危险切入。通过行为标签检索长尾场景,可以构建更有针对性的回归集,让每次版本迭代都能验证高风险行为上的表现。
四、常见误区与复盘要点
| 误区 | 表现 | 改进方向 |
|---|---|---|
| 只标行为类别,不标边界 | 变道起止时间模糊,模型学到错误时序 | 明确行为触发与结束条件,记录时间戳 |
| 忽略交互关系 | 同一轨迹在不同车流下语义不同 | 增加目标车、交互对象与相对关系字段 |
| 标签口径不统一 | 不同标注员对“切入”理解不一致 | 建立标注规范、示例库与一致性抽检 |
| 只追求覆盖率,不控噪声 | 标签量大但错误率高,训练效果反而下降 | 引入置信度、复核机制与难例挖掘 |
五、行业应用概览
轨迹与行为标签工程已广泛应用于多个环节:在数据闭环中用于自动筛选高价值场景;在预测与规划中作为监督信号提升交互理解;在仿真测试中用于构建场景库和评价指标;在安全分析中用于统计危险行为暴露率;在法规与保险中用于事故还原和责任界定。随着端到端模型兴起,高质量行为标签不再是可选项,而是决定系统上限的基础设施。
本课程后续将围绕轨迹表达、行为定义、标签 schema、自动标注、质量评估和工程落地逐步展开。掌握这套方法,意味着你不仅能读懂数据,还能把数据变成模型真正需要的知识。