dbolya/tide

What is the difference between "Miss" in "Main Errors" and "FalseNeg" in "Special Errors"

Yuxin-CV opened this issue · 2 comments

As mentioned in the paper:

  • Missed GT Oracle: Reduce the number of GT in the mAP calculation by the number of missed ground truth.
  • False Negative Oracle: Set number of GT to the number of true positive detections.

I think these two errors are similar, but their dAP are different.
I wonder what is the difference between them.
Thanks! @dbolya

Hi Yuxin,

Missed detections don't include all false negatives, since a false negative could also be a classification or localization error.

Consider the situation where there's one detection and one ground truth in the image. Let's say that detection perfectly localizes the object, but predicts the wrong class. In this case, we have one false positive (the detection) and one false negative (the GT not properly classified). Since this is a Classification Error, of which that GT is a part, it is not a Missed Error (since the detector didn't miss it, it just classified it wrong). Thus, the Missed GT Oracle would not fix this error, only the Classification Oracle would (and it fixes both at once by changing the detection to the correct class).

On the other hand, the False Negative Oracle and False Positive Oracles would count this as 2 separate errors, one false negative (the GT), and one false positive (the detection). Under those two oracles, these two errors get fixed individually rather than together (like for classification and localization error).

TL;DR: The Missed GT Oracle doesn't cover all false negatives, while the False Negative Oracle does.

Everything fell into place~
Thanks for your TIDE & prompt response :)
@dbolya