4. 感知层KPI - 目标跟踪:多目标跟踪准确度(MOTA)、多目标跟踪精度(MOTP)、ID切换次数、轨迹生命周期

好,我们进入感知层KPI的第二个核心模块——目标跟踪。

检测是“看见”,跟踪是“看懂”。

你想想看,如果一辆车只是每帧检测出障碍物,但不知道上一帧的这辆车和这一帧的这辆车是不是同一辆,那它根本没法做预测和规划。所以,跟踪的质量直接决定了整个ADAS系统的“智商”。

我个人习惯把跟踪KPI分成四个维度:准不准、稳不稳、乱不乱、久不久。正好对应我们今天要讲的四个指标:MOTA、MOTP、ID Switch、轨迹生命周期。

4.1 多目标跟踪准确度(MOTA)

MOTA,全称是Multiple Object Tracking Accuracy。说白了,它衡量的是你的跟踪系统有没有漏跟、有没有误跟、有没有跟错对象

公式长这样:

MOTA = 1 - (FN + FP + IDSW) / GT

其中:

  • FN:漏跟的目标数。该跟的没跟上。
  • FP:虚跟的目标数。不该跟的瞎跟。
  • IDSW:ID切换次数。跟到一半换人了。
  • GT:真实目标总数。

MOTA的取值范围是(-∞, 1]。嗯,你没看错,可以是负数。如果系统乱报一通,FP和IDSW爆表,MOTA直接变负。我在项目中就见过一次,某个算法在密集场景下MOTA跑出-0.3,那基本等于没干活。

实际工程经验

对于L2+级别的ADAS,MOTA一般要求大于0.7。L3以上,建议大于0.85。低于0.5的系统,基本没法用。

4.2 多目标跟踪精度(MOTP)

MOTA看的是“有没有跟到”,MOTP看的是“跟得有多准”。

MOTP衡量的是所有匹配上的目标,其预测位置和真实位置之间的平均重叠度距离误差

公式:

MOTP = (∑ d_i) / (∑ c_i)

d_i是第i个匹配目标的距离误差(比如IoU或中心点距离),c_i是匹配上的目标总数。

我举个例子你就明白了。假设前方有一辆静止的卡车,你的跟踪框一直跟着它。如果框的中心点偏移了2米,那MOTP就很差。如果框始终紧紧贴合车身,MOTP就高。

我记得有一次,客户反馈AEB系统在跟车时频繁误触发。查了半天,发现是MOTP太差——跟踪框抖动厉害,导致相对速度计算不准。后来把MOTP从0.65优化到0.85,问题就解决了。

避坑指南

我曾经踩过一个坑:只关注MOTA,忽略了MOTP。结果MOTA很高,但跟踪框飘忽不定,下游的预测模块根本没法用。记住,MOTA和MOTP要一起看,缺一不可。

4.3 ID切换次数(ID Switch)

ID Switch,也叫ID跳变。这是我最头疼的指标之一。

什么叫ID切换?就是系统给同一个目标分配了不同的ID。比如一辆白色轿车从你左边超车,系统一开始叫它ID_003,过了两帧突然变成了ID_017。这就是一次ID Switch。

为什么头疼?因为ID切换对下游模块的影响是灾难性的。

  • 预测模块:以为来了个新目标,重新初始化轨迹,导致预测延迟。
  • 规划模块:以为旁边突然冒出一辆车,急刹车或急转向。
  • 决策模块:无法判断目标的历史行为,比如“这辆车是不是一直在我的盲区”。

我个人的经验是:ID切换次数应该控制在每100帧不超过5次。对于高速公路场景,要求更严,最好每100帧不超过2次。

注意

ID切换和遮挡是“死对头”。目标被遮挡后重新出现,很容易发生ID切换。我曾经在隧道场景里,因为光线突变,ID切换率飙升到30%。后来加了外观特征匹配和运动预测,才压下来。

4.4 轨迹生命周期

轨迹生命周期,听起来有点玄乎,其实很简单——就是一条跟踪轨迹从出生到死亡的完整过程。

它包含几个关键阶段:

  1. 初始化:新目标出现,系统给它分配一个新ID。
  2. 确认:连续几帧都匹配成功,轨迹进入稳定状态。
  3. 维持:持续跟踪,不断更新状态。
  4. 遮挡/丢失:目标暂时消失,轨迹进入“挂起”状态。
  5. 终止:目标彻底离开视野,轨迹被删除。

这里有个关键参数——最大丢失帧数。也就是目标消失后,系统还“惦记”它多久。

我建议:

  • 高速公路场景:最大丢失帧数设为5-10帧(约0.2-0.4秒)。
  • 城市道路场景:可以放宽到15-20帧(约0.6-0.8秒)。
  • 行人场景:建议30帧以上,因为行人容易被遮挡。

为什么?你想想看,高速上如果丢失一帧就重新初始化,那ID切换会多到爆炸。但如果丢失太久还保留轨迹,又会导致轨迹“幽灵”一样飘在那里,影响决策。

实战建议

我习惯在日志里记录每条轨迹的“生命日志”——什么时候出生、什么时候被遮挡、什么时候死亡。这样一旦出问题,可以快速回放定位。比如,如果发现某条轨迹生命周期特别短(不到1秒),那大概率是检测不稳定或者匹配逻辑有问题。

4.5 四个指标的关系

这四个指标不是孤立的。我画个简单的逻辑链给你看:

MOTA低 → 可能是ID切换太多 → ID切换多 → 轨迹生命周期短 → 系统不稳定

MOTP低 → 跟踪框不准 → 影响下游预测 → 间接导致ID切换

所以,优化的时候要系统性地看。不能只盯着一个指标猛调。

指标 含义 典型阈值(L2+) 常见问题
MOTA 跟踪准确度 > 0.7 漏跟、虚跟、ID切换
MOTP 跟踪精度 > 0.75(IoU) 框抖动、位置偏移
ID Switch ID跳变次数 < 5次/100帧 遮挡、外观变化
轨迹生命周期 轨迹持续时间 > 2秒(平均) 频繁初始化、丢失

嗯,这一节的内容就到这。记住一句话:检测是基础,跟踪是灵魂。没有好的跟踪,你的ADAS系统就像个健忘症患者——刚看到的东西,下一秒就忘了。

下一节,我们会聊感知层的最后一个KPI——感知融合与鲁棒性。到时候见。