in the bipartite matching part, (find the most overlapped gt and cooresponding predictions),
where it looks like below:
if (it->second[j] > max_overlap) {
// If the prediction has not been matched to any ground truth,
// and the overlap is larger than maximum overlap, update.
max_idx = i;
max_gt_idx = j;
max_overlap = it->second[j];
}
should it be if(it->second[j] > overlap_threshold && it->second[j] > max_overlap)?
otherwise the max matching bboxes may have the overlap below overlap_threshlod.