一、引言
智能驾驶感知模块可以根据目标的属性和环境信息,分为三类关键任务:动态感知任务、静态结构感知任务和可通行区域(Freespace)感知任务。本文将介绍三大任务中常见的精度评价指标。如果有不正确的地方,欢迎评论指正。
二、动态常见指标
在 BEV(Bird's Eye View)动态任务中,核心目标通常是检测和跟踪空间中动态的物体,比如汽车、行人、自行车等。为了全面评估这类算法的性能,研究者通常采用一组衡量检测质量与几何精度的指标。
以下是 BEV 动态任务中常用的指标详解,包括 F1-score、Recall、Precision、Angle Distance 等。
2.1 Precision(查准率)
定义为预测为正样本中,实际为正的比例:
- TP(True Positives):正确检测的目标
- FP(False Positives):误检为目标的非目标区域
3D/BEV 使用 IoU(交并比) 来判断预测框和 GT 框是否匹配(如 BEV IoU > 0.5):匹配成功为 TP,否则为 FP 或 FN
2.2 Recall(查全率)
定义为实际为正样本中,被正确预测出来的比例:
- FN(False Negatives):漏检的目标
2.3 F1-score(调和平均)
Precision 和 Recall 的综合指标:
F1-score、Recall、Precision 是检测任务中最基础也最核心的指标,它们之间互为补充:
- Precision 高:误检少
- Recall 高:漏检少
- F1-score 高:两者都兼顾
2.4 Angle Distance
Angle Distance(角度距离)是指检测的目标朝向与真实朝向之间的夹角误差,用于衡量模型对 3D 目标朝向(orientation)估计 的准确性。
假设:真实朝向角为 θ gt \theta_{\text{gt}} θgt,预测朝向角为 θ pred \theta_{\text{pred}} θpred,Angle Distance 通常定义为它们之间的最小夹角差值:

有时也会定义为:

有时还可以这么定义(角度是圆周值,要区分好,保证 179° 与 -179° 的差为 2° 而非 358°,-178% 360 = 182):

具体怎么定义大家还可以自行修改。
为什么 Angle Distance 重要呢?在 BEV 动态任务中,目标不仅要被正确检测出来,还要给出准确的 3D 方向,例如车辆前进方向。如果朝向估计错了:会导致运动轨迹预测偏差,会影响下游行为规划、避障决策,也会影响多车协同定位、车道保持等功能。
三、静态常见指标
在智能驾驶中的静态感知任务里,主要关注车道线、道路边界、停止线等静态目标。这类信息对地图构建、定位、行为规划等很重要。具体做法是输出 BEV 视角下的多类别 矢量图结构(如 divider 车道分隔线、boundary 道路边界、stopline 停止线、arrow 箭头),表示为多段 polyline(折线点序列)。在指标层面,通常会用 Recall / Precision / F1-score、angle distance 等一些指标来衡量结构、形状等多方面的准确性。
3.1 Recall / Precision / F1-score
- 对每类结构(如 divider, boundary, arrow, stopline)分别统计检测情况:
- Precision:预测中有多少是真的。
- Recall:GT 中被检测到的比例。
- F1-score:PR 的综合评价。
特别适用于不同语义结构的建图检测评估。
3.2 Angle Distance
在静态建图任务(如 MapTR)中,Angle Distance (角度距离)衡量的是预测的多段折线(Polyline)与真实标注之间的方向差异,其本质是对几何方向一致性的评估,而非仅仅是点的位置误差。
在地图感知中,不仅希望预测的 polyline 与 GT 在空间上贴合(即有小的距离误差),还希望其走向一致,比如一个车道线应该是向前延伸的,而不是偏向左或右。
一段折线由若干连续点组成,设真实折线为 P = p 1 , p 2 , ... , p n P = {p_1, p_2, ..., p_n} P=p1,p2,...,pn,预测折线为 P ^ = p ^ 1 , p ^ 2 , ... , p ^ n \hat{P} = {\hat{p}_1, \hat{p}_2, ..., \hat{p}_n} P^=p^1,p^2,...,p^n,我们通常选用首尾或任意两个相邻点构建向量:

Angle Distance θ \theta θ可以表示为

用角度(单位通常为度)来表示角度距离:
- θ = 0°:方向完全一致;
- θ → 180°:方向完全相反。
对于多段 polyline,由多个点段组成,角度距离可以有以下几种方式:
- 首尾向量法(常用):取 polyline 的首尾两点构建整体方向向量进行角度比较。
- 平均向量方向法:每段相邻点构建向量,计算所有角度误差的平均值。
- 加权平均方向法:考虑段长权重,对角度误差加权平均。
3.3 mAP
mAP(mean Average Precision)原本用于目标检测任务,用于衡量预测结果和真实目标之间的 精度和召回的综合性能。在 MapTR 中,它被适配到了 矢量化地图元素检测任务 中。
divider 车道分隔线、boundary 道路边界、stopline 停止线等元素是以 一系列二维点 的形式输出(如 [x1,y1,x2,y2,...]),预测和 GT 的匹配需要使用更复杂的匹配策略。正确匹配(True Positive, TP)条件:满足以下所有条件(可以更多 or 更少),才被认为是 TP:
- 与 GT 的 点间距离均方差(Chamfer 或 L1) 小于阈值;
- 平均角度误差(如 angle_distance)低于设定值;
- 同类(如 divider 对 divider);
- 长度差在一定范围内。
否则判为 FP(False Positive)。对于每一类元素(如 Lane、Divider、Boundary):
- 将预测结果和 GT 匹配;
- 计算每个 Recall 点下的 Precision;
- 画出 PR 曲线,计算曲线下的面积(AP);
对所有类别的 AP 求平均,得出 mAP。
举个例子:假设预测了如下 3 条 lane:
- Lane1:与 GT 完全重合 → TP
- Lane2:略微偏离但在阈值内 → TP
- Lane3:偏离太大 → FP
GT 有 4 条 lane → 有 1 个 FN(漏检),然后基于这些 TP、FP、FN,画出 Precision-Recall 曲线,计算 AP。
四、Freespace
Freespace 任务旨在预测环境中可通行区域与障碍物位置。通过对周围三维空间进行体素划分,输出每个 voxel(体素)的占用状态。
4.1 交并比(IoU)
定义:在 Freespace OCC 任务中,通常将预测的可行驶区域与真实的可行驶区域看作两个集合,交并比就是这两个集合交集的元素个数与并集的元素个数的比值。
计算方式:

其中 TP(True Positive)是指正确预测为可行驶区域的数量,FP(False Positive)是指错误预测为可行驶区域的数量,FN(False Negative)是指将实际可行驶区域错误预测为非可行驶区域的数量。
作用:用于衡量预测结果与真实情况的重叠程度,取值范围在 0 到 1 之间,值越接近 1,表示预测结果与真实情况越吻合,模型性能越好。
4.2 平均交并比(mIoU)
定义:如果数据集中存在多个类别(例如不同场景下的可行驶区域,或者区分了不同类型的障碍物等),则分别计算每个类别的 IoU,然后再求平均值,得到平均交并比。
计算方式:

其中 C 是类别数。
作用:能更全面地评估模型在多类别情况下对可行驶区域和各类障碍物的检测性能,避免只关注整体而忽略了不同类别之间的差异。
4.3 准确率(Accuracy)
定义:是指预测正确的样本数占总样本数的比例。
计算方式:正确预测为可行驶区域 与 正确预测为非可行驶区域的体素数量之和,除以总的体素数量。
作用:直观地反映了模型预测的准确程度,但当数据集中正负样本不均衡时,准确率可能会产生误导,不能很好地体现模型对少数类别的检测能力。
4.4 召回率(Recall)
定义:也叫查全率,是指实际为正例的样本中被正确预测为正例的比例。
计算方式:真实可行驶区域中被正确预测为可行驶区域的体素数量,除以真实可行驶区域的体素数量。
作用:用于衡量模型对可行驶区域的检测能力,召回率越高,说明模型能够检测出更多的真实可行驶区域,对避免遗漏可行驶区域非常重要,特别是在一些对安全性要求较高的自动驾驶场景中。
4.5 F1-score
定义:是准确率和召回率的调和平均数
计算方式:

作用:综合考虑了准确率和召回率,当 F1 值较高时,说明模型在检测可行驶区域时,既能保证较高的准确率,又能有较好的召回率,是一个比较全面的评价指标,常用于综合评估模型情况。