Solved – CorLoc which is used to evaluate object detection performance

machine learningself-study

I tried to understand this evaluatation method for object detection.

My understanding is, the neural networks will give a bounding box for a target object and CorLoc evaluates only positive images which contain the target class, and counts the percentage of images for IOU > 0.5:

CorLoc = (the boxes that IOU > 0.5) / (all boxes belong to the target class)

e.g. there are 100 bounding boxes for car, but just 60 bounding box's IOU > 0.5, so the corloc is 60/100 = 60%

I found this image where there are three bounding boxes:

red bbox means IOU < 0.5
green box means IOU > 0.5

CorLoc is therefore 2/3 = 66%

But I don't understand why ignore the rightmost motorbike
and why just evaluate CorLoc on traing dataset or something I need to know about corloc?

Best Answer

The Corloc is to compute the number of the right boxes you have been detected. The formulation is TP/TP+FP. The rightmost bounding box is neither TP or FP but FN. Thus there are only 3 detections(TP+FP) with 2 positive(TP). Corloc=2/3=66%