
本文由同济大学和北京大学合作发表于CVPR2018,聚焦于loss层面,为遮挡情况下的行人检测问题提供了一种行之有效的解决方案。
论文:https://arxiv.org/abs/1711.07752
一、问题提出
1.行人遮挡会造成什么问题
当我们在做行人检测时,人与人之间会存在互相遮挡。遮挡会造成2个问题:
1.设红色框为目标框T(man)的预测框P,旁边也有个真实框B(woman),我们的P可能会被往B去移动(shift)。
2.检测器对NMS的阈值的选取更为敏感。如果NMS阈值选取过小,周围的目标框会被过滤掉;如果NMS阈值选取过大,会带更多的虚检。
2.非极大抑制选取更敏感
第二点的影响是不是不太直观?没关系,我们先详细回顾一下非极大抑制NMS的实现过程:
在检测器中,一张图片可能会有n个检测目标,每个检测目标都会有很多检测框(proposals/anchors/bbox)。
对于每个检测目标来讲,它的附近都会有一簇IoU很高的检测框(相较于其他的检测框来说),所以针对同一个检测目标,有必要只留下置信度(score)最高的那个检测框作为该物体的检测框,其他的都应该过滤掉。
实现步骤:
1、假定有6个带置信率的region proposals,并预设一个IOU的阈值如0.7。
2、按置信率大小对6个框排序: 0.95, 0.9, 0.9, 0.8, 0.7, 0.7。
3、设定置信率为0.95的region proposals为一个预测框;
4、在剩下5个region proposals中,去掉与0.95物体框IOU大于0.7的。
5、重复2~4的步骤,直到没有region proposals为止。
6、每次获取到的最大置信率的region proposals就是我们筛选出来的目标。
那么问题来了,对于有遮挡的行人数据集,这里过滤掉的检测框有没有对隔壁检测目标IoU最高却被我们这个检测目标的检测框给抑制掉的呢?看图。
NMS阈值选取过小:针对目标T(man),检测框P与T的IoU最大,P会视为T的预测框。如果NMS选取过小,旁边目标B的预测框(woman)假设为K,那么K会被选作T的检测框,然后被P抑制掉。
NMS阈值选取过大:与上面是同样的道理,会多出许多检测框,带来更多的假正例。
二、Repulsion loss
既然已经清楚影响是怎样造成的,来看看解决方案。Repulsion loss的作用在于,要求预测框P靠近(吸引)自己的真实目标T的同时,还要求P远离(排斥)T旁边的其他真实框(例如B)。
1.Replusion loss:

可以看到该损失函数中包含3个模块,下面来分别作解释。
2. L A t t r L_{Attr} LAttr
该模块的作用是使得预测框和它的目标框尽可能接近。
L A t t r L_{Attr} L

本文介绍了同济大学和北京大学在CVPR2018上发表的研究,针对行人检测中的遮挡挑战提出Repulsion Loss解决方案。该方法通过调整损失函数,使预测框不仅接近其对应的目标框,还避免与其他目标框重叠,从而减少非极大抑制(NMS)带来的误检和漏检。Repulsion Loss包含三个模块:LAttr用于吸引预测框向目标框,LRepGT用于排斥预测框与其它目标框,LRepBox则防止预测框间的相互覆盖。这一创新有助于提高遮挡情况下行人检测的准确性。

3962

被折叠的 条评论
为什么被折叠?



