
导读:如上PR曲线,XY坐标中的Recall/Precision分别代表什么?Recall,翻译成“召回率”,能理解啥意思不?甚至在姿态检测任务中也用这个作为评估指标。对他们好熟悉但说不准意思?本文,试图从举例出发,理解更复杂的mAP、AR,不在话下。
举个栗子:盒子里有10个球,5个黑球,5个红球。你想用机器人去找黑球,抓取6次返回结果分别是:黑 | 红 | 黑 | 黑 | 红 | 黑
那么,黑球的准确率为:
P
r
e
c
i
s
i
o
n
(
黑
)
=
4
6
Precision(黑) = \frac{4}{6}
Precision(黑)=64
其Recall为:
R
e
c
a
l
l
(
黑
)
=
4
5
Recall(黑) = \frac{4}{5}
Recall(黑)=54
通过对比,不难发现Precision和Recall的区别在于分母,即:
Recall,翻译成“查全率”,似乎更合适。两者总结为:
| Precision | Recall |
|---|---|
| 查准率:检测到某种类的总数中的正确数量的百分比 | 查全率:实际检测出某种类的个数占该种类总数的百分比 |
还是上述栗子,假设有一个robot 1,它查10次的结果如下:

一共有5个黑球,即recall分母是5,那么对应1—>10次的Recall,计算如下:
1/5=0.2 1/5=0.2 2/5=0.4 2/5=0.4 2/5=0.4 3/5=0.6 3/5=0.6 3/5=0.6 4/5=0.8 5/5=1.0
precision:分母是会变化的,注意是实际检测的次数总数1—>10
1/1=1.0 1/2=0.5 2/3=0.67 2/4=0.5 2/5=0.4 3/6=0.5 3/7=0.43 3/8=0.375 4/9=0.44 5/10=0.5
Average precision of Robot 1,即机器人Robot1识别黑球的准确率,计算如下:
A
P
(
c
a
s
e
1
)
=
(
1.0
+
2
/
3
+
0.5
+
4
/
9
+
0.5
)
/
5
=
0.62
AP(case 1) = (1.0+2/3+0.5+4/9+0.5)/5=0.62
AP(case1)=(1.0+2/3+0.5+4/9+0.5)/5=0.62
假设换了一个盒子,里面有3个黑球,7个白球。10次结果如下:

Average precision of Robot 1在当前case下的平均识别率,计算如下:
A
P
(
c
a
s
e
2
)
=
(
0.5
+
0.4
+
0.43
)
/
3
=
0.44
AP(case 2) = (0.5+0.4+0.43)/3=0.44
AP(case2)=(0.5+0.4+0.43)/3=0.44
mean average precision,即计算在case1和case 2下的AP的均值,即
m
A
P
(
c
a
s
e
1
:
c
a
s
e
2
)
=
(
0.62
+
0.44
)
/
2
=
0.53
mAP(case1:case 2) = (0.62+0.44)/2=0.53
mAP(case1:case2)=(0.62+0.44)/2=0.53
这里,case1 和case 2可以理解成不同阈值的情况。

IoU,即Intersection over Union,字面意思即可理解。交叉面积与合并面积的比值。
扩展一点,IoU不能准确反应检测框的好坏,如
IoU相等,即重叠部分相等,但不重叠部分有多种情况

重叠部分相等,不重叠也相等,但中心点不一

针对IoU中存在的不同情况,多种IoU类型可以在检测中使用,概览如下:

OKS(Object Keypoint Similarity),这个指标启发于目标检测中的IoU指标,目的就是为了计算真值和预测人体关键点的相似度。对一个人物p,OKS分数定义如下其定义如下:

d
i
d_i
di表示编号为i的关键点欧式距离。
有关OKS的详细理解,可参考博客:
https://blog.csdn.net/m0_37163827/article/details/84887811