论文地址:https://arxiv.org/abs/1904.08008v1
开源代码:https://github.com/fyangneil/Clustered-Object-Detection-in-Aerial-Image
论文作者及研究团队概述:
这篇论文被ICCV2019收录。主要作者是Fan Yang,该作者来自于天普大学,主要的研究方向是航拍图像下的目标检测。美国费城天普大学,美国空军研究实验室,美国石溪大学共同提出ClusDet用于航空图像的目标检测。
看到下面这张图片,可以发现图片的像素很高,像行人这样的目标在图片中所占像素又小,使其很难与周围的背景分开,并且目标比较分散、分布不均匀,这就是航拍图像的目标检测所面临的挑战。
对于高分辨率的航拍图像,通常的方法是将图像裁剪成均匀的小块,对这些小块进行目标检测,这种方法召回率比较高,漏检率比较低,存在的问题就是:由于航拍图像目标具有稀疏性,导致这种方法的检测效率低。因此,根据航拍图像的特点作者提出了将目标聚类和检测结合起来的端到端的聚类检测框架(ClusDet)。上图分析,根据航拍图像的特点,若将图像进行聚类裁剪后再进行目标检测,则对于一张图像的目标检测时间会减少,效率会提高。
ClusDet网络 如下所示:
ClusDet中的关键组成包含一个聚类候选框网络(CPNet),一个尺度估计网络(ScaleNet),和一个专用检测网络(DetecNet)。给一张输入图像,CPNet产生目标聚类区域,ScaleNet估计聚类区域的目标尺度,将每个尺度归一化的聚类区域输入到DectecNet中进行目标检测,得到聚类区域的检测结果。最后,将全局目标检测与聚类目标检测进行特征融合,得到最终检测结果。
根据航空图像的初始提取的特征图生成一组目标聚类候选框,将其裁剪出来用于后续的精细检测。聚类区域提取的核心是CPNet,具体方法是CPNet从主干网中提取高层特征图作为输入,使用两个分支进行预测聚类区域的位置回归和分类。这是受到了RPN的启发,将CPNet表示为全卷积网络。RPN与CPNet不同的是,RPN是提取目标的候选区域,而CPNet则提取聚类的候选区域。与单个目标相比,聚类的规模要更大一些,因此CPNet需要比RPN更大的感受野,因此CPNet被放在特征提取网络的顶部。
值得注意的是,CPNet是一种监督学习的过程,由人为框出聚类区域,以此来训练CPNet。
如上图所示,可以观察到CPNet产生的初始聚类候选框密集又杂乱,这些聚类区域重叠度高、规模大,难以直接用于目标精确的检测,在实际检测会造成很大的计算量。图a是最初获得的聚类候选框,图b是进行ICM后得到的结果。
为了解决这个问题,作者提出了一种简单而有效的迭代聚类合并模块来精简聚类区域。下面就是ICM的伪代码说明:
简单说明一下该模块,首先选取分数最高的,然后选取重叠度大于等于阈值的区域进行合并,将所有合并的区域从集合中删除。继续这个过程直到集合内为空。多次执行上面的算法,直到最后保留的聚类区域数量为B’。
为了使用聚类区域,利用专门的检测器对这些区域进行检测。与现有的直接调整聚类区域尺寸进行检测的方法不同,作者提出了一种尺度估计网络(ScaleNet),用于估计聚类区域中目标的尺度,避免了目标极端尺度造成检测性能差的问题。下面就介绍这个方法。
作者把尺度估计看成一个回归问题,并利用一组全连接网络来构成ScaleNet。
ScaleNet把主干网提取的特征映射、聚类候选框和全局图像的初始检测结果作为输入,输出是聚类中目标的相对尺寸偏移值si。该网络的损失函数如下所示:
用于回归出比较合适的候选框的位置,以便将候选框输入到DetecNet进行精确的目标检测。
通过上面的损失函数计算出聚类区域中目标的相对尺寸偏移值,将其带入下面的公式中:
该公式的作用在于使用分区和填充操作来确保目标的比例在合适的范围内,具体操作:给定聚类目标框Bi、对应目标的尺度Si以及检测器的输入尺度Sin,可以估计检测器在输入空间的目标尺度。作者把尺寸范围设置为[70,280],若尺寸小于70进行填充操作(即扩充聚类区域范围,直到区域为70*70);若尺寸大于280,则进行分区操作,分成两个相等的聚类区域。
需要注意的是,在最后整合结果时,填充部分会被忽略,上图显示了填充与分区的过程。
下面将进行特征融合操作,这是网络结构的最后一步。通过将聚类区域的局部检测结果与整个图像的全局检测结果,进行标准NMS后处理融合得到航空图像的最终检测。
需要说明的是,整个图像的全局检测与聚类区域的局部检测都采用Faster-RCNN进行检测。
下面介绍一下航拍数据集,常用的航拍数据集有:VisDrone、UAVDT、DOTA。
在本篇论文中,作者主要在VisDrone数据集上进行实验,DOTA数据选取的比较少,因此效果会比较差。
下面进行消融研究,主要在VisDrone数据集上进行检测。
由上面的实验中,可以得出结论:
(1)DetecNet+CPNet与经典FRCNN相比,提高了检测精度。
(2)DetecNet+CPNet+ScaleNet与均分切割的相比,提高检测精度,减少检测数量,提高效率。
PS:⭐表示在测试模型时使用多尺度设置。
从上面的表格中,观察得到:ClusDet对于VisDrone数据集的检测大幅度地超过了其他方法。
在UAVDT数据集中,ClusDet对于大中型物体的目标检测效果更好,与之前的方法相比较有明显的改善。
ClusDet方法目标检测效果并不是很好,其原因是:实验所选择的图像数量比较少,没有大量的数据来训练模型。
(1)提出了一种新的ClusDet网络,解决高分辨率图像的检测问题。
(2)提出CPNet,生成聚类候选框,大大降低了计算量。
(3)提出ScaleNet,通过评估的方法调整候选框的大小以适应DetecNet。
(4)与典型的目标检测算法相比,提高了检测精度,降低了运算时间。