I know that mAP (mean Average Precision) is the common evaluation metric for the object detection tasks. It uses IoU (Intersection over Union) threshold such as [email protected] to evaluate whether the predicted box is TP (True Positive), FP (False Positive), or FN (False Negative).
But I am confused about the role of classification score in this metric since the positive and negative is determined by the IoU, not the classification score. So, what is the role of classification scores in mAP evaluation?
Let's describe it by example, suppose there is a single object in an image with the ground-truth as follows:
- Bounding boxes: [[100, 100, 200, 200]]
- Class Index: [0]
Then the prediction of the object detection model resulting as follows:
- Bounding boxes: [[100, 100, 200, 200], [100, 100, 200, 200], [100, 100, 200, 200]]
- Class Indexes: [3, 2, 0]
- Class Scores: [0.9, 0.75, 0.25]
When I tried to calculate the mAP using this library: https://pypi.org/project/mapcalc/
The mAP score is 1.0. So I am confused in the mAP point of view, this prediction is calculated as the correct prediction? So what is the role of classification score in this case? Should we also define the classification score threshold when using mAP?