# Non-maximum Suppression
非极大值抑制(Non-maximum Suppression)简称NMS,顾名思义为抑制不是极大值的元素,搜索局部极大值。常用于目标检测中,以消除多余的bounding box,找到最佳目标检测box。
假设目前有多个bounding box,其score分别为A~F,则NMS的实现思路为:
①首先根据score对各个bounding box进行排序,得到score最大的bounding box;
②然后,分别计算其他bounding box与这个box的重叠度IoU,去除IoU大于阈值的bounding box;
然后重复上述过程,直至候选bounding box为空。这样就可以得到score较大且IoU比较小的bounding box了。
# Hard negative mining
在目标检测时,我们会事先标记好ground truth,然后通过算法生成一系列proposal,这些proposal有跟标记的ground truth重合的也有没重合的。若重合度(IOU)超过一定阈值(通常0.5)的,则认定其为是positive sample,否则为negative sample。
之后若将这些正负样本扔进网络中训练,可能遇到negative sample远远多于positive sample的情况,训练出来的分类器效果并不好,会出现许多false positive(比如:roi里有二分之一个目标时,虽然它仍是负样本,却容易被判断为正样本)。
我们按照confidence对FP进行排序,把其中confidence较高的这些FP当做所谓的Hard negative(难划分的负样本,相当于一个错题集),并将其扔进网络中反复进行训练,从而加强分类器判别FP的能力。
注:
①一般正负样本数可取1:3,效果较好。
②把正例正确分类为正例,表示为TP(true positive),把正例错误分类为负例,表示为FN(false negative);
把负例正确分类为负例,表示为TN(true negative), 把负例错误分类为正例,表示为FP(false positive)。
参考链接:
1.https://www.zhihu.com/question/46292829/answer/140003830
2.https://blog.csdn.net/u012285175/article/details/77866878
3.https://blog.csdn.net/qq_36570733/article/details/83444245