上一期的多模板匹配任务中使用多模板匹配+金字塔结构,可以做到将图像缩放到一个合适的尺寸,最后得到一个较好的效率来检测目标图案。
但存在一个问题就是一个目标可能存在多个roi框重叠问题。
本期的目的就是解决这一问题,思路其实比较的简单,只要写个iou面积占比超过多少的检测目标删除即可。
其实控制iou的代码在函数中已经有表现了,不过是像素距离判断的形式。
//设置满足条件
if (matchValue >= thresh && (abs(j - tempW) > 5) && (abs(i - tempH) > 5))
{
count0++;
putText(src, matchRate, Point(j - 5, i - 5), FONT_HERSHEY_COMPLEX, 1, Scalar(0, 0, 255), 1);
rectangle(src, Point(j, i), Point(j + temp.cols, i + temp.rows), Scalar(0, 255, 0), 2);
pt.push_back(Point(j, i));
tempW = j;
tempH = i;
}
这里我们会把相距为5像素及之内的目标框给屏蔽掉,其实和iou很类似了,