bay

图片来自数据集WIDER FACE.


1. 难点

小目标的检测(一般认为,目标占整图面积的1%以下为小目标)的难点我认为可以主要从两个方面出发进行考虑,一方面是模型训练,一方面是特征前传。

  • 从模型训练的角度来说,1)数据。小目标的样本量在整体数据中偏少,其在训练和评测过程中的权重较低,模型的训练会被中、大目标主导。2)损失函数。一般的检测框回归损失,如L2,SmoothL1 loss,对小检测框的惩罚力度很小(如差半个身位,也只有几个像素的偏差),使小目标回归精度较低。3)正负样本采样。由于小目标较小,在正负样本采样时会产生大量的负样本,导致负样本远多于正样本。

  • 从特征前传的角度来说,由于小目标本身的信息量就少,通过CNN的池化、下采样等前传会进一步减少目标信息。如何能在输出层尽可能多保留小目标的信息,保证小目标在特征层的感受野,是小目标检测的一个关键问题。


2. 解决方案

2.1 数据增强——增加小目标样本数量

  • 通过复制-拷贝,将小样本进行跨图像拷贝,增加样本多样性;

  • 图像缩放后拼接,将大目标缩小,增加小目标数量;

  • GAN生成小目标样本;


2.2 训练策略

  • 专职专干。在特征金字塔中(FPN),不同尺度特征回归不同尺度检测框,避免不同尺寸目标互相影响。参考SNIP, SNIPER

  • 基于IoU回归检测框。如IoU LossIoU Net、DIoU loss、CIoU loss、GIoU loss、Repulsion Loss

  • 避免正样本损失被大量负样本淹没。参考Focal Loss对正负样本加权, 根据损失进行hard example mining OHEM,将分类损失换为排序损失 AP loss


2.3 特征网络


2.4 More Tricks

  • 对小目标进行区域抠图放大,能直接检出就是感受野的问题;

  • ResNet最后一层卷积stride设为1;

  • 增加anchor尺寸;


欢迎大家做进一步补充

参考资料

1: 目标检测——深度学习下的小目标检测
2: 高新波, 莫梦竟成, 汪海涛, & 冷佳旭. (2021). 小目标检测研究进展. 数据采集与处理, 36(3), 27.
3: Tong, K., Wu, Y., & Zhou, F. (2020). Recent advances in small object detection based on deep learning: A review. Image and Vision Computing, 97, 103910.
4: Muzammul, M., & Li, X. (2021). A Survey on Deep Domain Adaptation and Tiny Object Detection Challenges, Techniques and Datasets. arXiv preprint arXiv:2107.07927.