IDF1出处:Performance Measures and a Data Set for Multi-Target, Multi-Camera Tracking
看了很多博客,对IDF1的计算都语焉不详,计算例子很少,而且出奇地一致--IDFP居然与IDFN相同,怪哉。翻看IDF1的出处,虽然不理解,但大概会算了。
IDF1的计算公式:
单单看IDTP、IDFP、IDFN,名字直译过来也不知道是什么意思,更别说应该怎么算了。根据论文原文的定义:
光看式子看不懂,再往上翻翻文字描述:
好了,现在知道IDTP是ID正确的次数了,但、
…分别是什么呢?再往上翻翻:
看来是ground truth中轨迹包含的ID个数,也就是ground truth中轨迹持续的帧数;
则是跟踪结果中轨迹包含的ID个数,即跟踪结果中轨迹持续的帧数。其他的没咋看懂,但是计算好像够用了。 在跟踪结果中,
、
和IDTP比较容易得到,根据式(8)可以计算得到IDFN、IDFP,因此可进一步计算得到IDF1。
举个例子,实际跟踪的时候,边界框的个数可能大于、等于、小于ground truth的个数
GT 1 1 1 1 1 1 1 1 1
Track1 1 1 2 2 2 3 1 1 1 1
Track2 1 2 2 2 1 1 3 1 1
Track3 1 1 1 2 2 1 1 1
对于track1:
IDTP = 5
= 9
= 10
IDFN = - IDTP = 4
IDFP = - IDTP = 5
IDF1 = 2*5/(2*5+4+5) = 10/19
对于track2:
IDTP = 5
= 9
= 9
IDFN = - IDTP = 4
IDFP = - IDTP = 4
IDF1 = 2*5/(2*5+4+4) = 10/18
对于track3:
IDTP = 6
= 9
= 8
IDFN = - IDTP = 3
IDFP = - IDTP = 2
IDF1 = 2*6/(2*6+3+2) = 12/17
最后,可以将IDTP、IDFP、IDFN的关系用交集差集的方式表达出来:
计算机视觉小白一枚,欢迎大家批评指正,一起交流 ~