摘要在监控应用中检测场景中的小目标和远距离目标是一项重大挑战。这类目标在图像中仅由少量像素表示缺乏足够的细节因此难以使用传统检测器进行检测。本文提出了一个名为切片辅助超推理SAHI的开源框架该框架为小目标检测提供了一种通用的切片辅助推理和微调流程。所提出的技术具有通用性因为它可以应用于任何现有的目标检测器之上无需进行任何微调。使用Visdrone和xView航空目标检测数据集上的目标检测基线进行的实验评估表明所提出的推理方法分别将FCOS、VFNet和TOOD检测器的目标检测AP平均精度提高了6.8%、5.1%和5.3%。此外通过切片辅助微调可以进一步提高检测精度对于上述检测器AP的累计提升分别达到了12.7%、13.4%和14.5%。该技术已集成到Detectron2、MMDetection和YOLOv5模型中并在https://github.com/obss/sahi.git 公开可用。索引词 小目标检测切片推理窗口推理VisdronexView1. 引言近年来目标检测已被广泛应用于不同领域包括人脸检测、视频目标检测、视频监控和自动驾驶汽车等。在该领域深度学习架构的采用催生了高精度的方法如Faster R-CNN [1]、RetinaNet [2]并进一步发展出Cascade R-CNN [3]、VarifocalNet [4]及其变体。所有这些最新的检测器都在知名数据集上进行训练和评估例如ImageNet [5]、Pascal VOC12 [6]、MS COCO [7]。这些数据集大多包含低分辨率图像640×480且目标尺寸较大像素覆盖面积大平均覆盖图像高度的60%。虽然在这些数据集上训练的模型对此类输入数据具有成功的检测性能但在处理由高端无人机和监控摄像机生成的高分辨率图像中的小目标检测任务时它们的精度显著降低。无人机、4K摄像头和深度学习研究的最新进展使得远程目标检测成为可能这符合检测、观察、识别和辨识DORI标准[8]。DORI标准为不同任务定义了目标的最小像素高度检测需要图像高度的10%识别需要20%在全高清视频中为108像素。相对较小的像素覆盖范围对基于CNN的目标检测方法提出了挑战此外高分辨率图像在内存需求方面也提出了更高的要求。在本文中我们提出了一种基于切片辅助推理和微调的通用解决方案用于在高分辨率图像上进行小目标检测同时保持较高的内存利用率。图1展示了在Visdrone测试集样本图像上小目标检测的改进情况。图 1使用 TOOD 检测器进行推理的结果左切片辅助超推理中切片辅助超推理切片辅助微调后的推理右。2. 相关工作近年来基于学习的目标检测技术可分为两大类。单阶段检测器如SSD [9]、YOLO [10]、RetinaNet [2]直接预测目标位置无需显式的提议阶段。两阶段区域提议方法如Fast R-CNN [11]、Faster R-CNN [1]、Cascade R-CNN [3]包含初始区域提议阶段随后对这些提议进行精炼以确定目标的位置和大小。通常单阶段方法速度更快而两阶段方法精度更高。近期无锚点检测器开始受到关注。它们取消了锚框的使用将特征金字塔[12]上的每个点分类为前景或背景并直接预测前景点到真实边界框四边的距离从而生成检测结果。FCOS [13]是首个无需预定义锚框集合且降低计算需求的检测器。VarifocalNetVFNet[4]学习预测IoU感知的分类分数将目标存在置信度和定位精度混合作为边界框的检测分数。其学习过程由所提出的Varifocal LossVFL监督基于一种新颖的星形边界框特征表示。TOOD [14]以学习方式显式对齐目标分类和定位两个任务利用新颖的任务对齐头部在任务交互特征和任务特定特征的学习之间实现更好平衡并通过设计的样本分配方案和任务对齐损失进行任务对齐学习。针对通用目标检测设计的算法在高分辨率、包含密集小目标的图像上表现不佳因此出现了专门的小目标检测方法。文献[15]采用基于粒子群优化PSO和细菌觅食优化BFO的学习策略PBLS来优化分类器和损失函数。然而这些对原始模型的重大修改阻碍了从预训练权重进行微调需要从头训练。此外由于不寻常的优化步骤它们难以适配现有检测器。文献[16]提出的方法对小目标图像进行过采样并通过复制多个小目标进行数据增强。但该增强需要分割标注因此与目标检测数据集不兼容。文献[17]的方法可从原始图像中裁剪出的放大区域学习更丰富的小目标特征额外特征对检测性能有积极贡献但选择需放大的区域带来计算负担。文献[18]提出一种用于小目标检测的全卷积网络包含早期视觉注意力机制用于选择最有潜力的小目标区域及其上下文。文献[19]提出基于切片的技术但实现不通用仅适用于特定目标检测器。文献[20]提出一种名为JCS-Net的新型网络用于小尺度行人检测将分类任务和超分辨率任务集成于统一框架。文献[21]提出一种算法通过生成对抗网络GAN直接从模糊小图像生成清晰高分辨率人脸。然而由于这些技术提出新的检测器架构需要从头在大数据集上预训练成本高昂。与上述技术不同我们提出一种通用的切片辅助微调和推理流程可应用于任何现有目标检测器之上。这样无需任何微调通过切片辅助推理即可提升任何现有目标检测器的小目标检测性能。此外通过对预训练模型进行微调还可获得额外的性能提升。3. 所提方法为处理小目标检测问题我们提出一个基于切片操作的通用框架应用于微调和推理阶段。将输入图像划分为重叠的图块使得小目标相对于送入网络的图像具有更大的像素面积。图2切片辅助微调上和切片辅助超推理下方法。在微调中通过从图像中提取图块并将其缩放至更大尺寸来增强数据集。推理时将图像划分为更小的图块并从这些图块的放大版本生成预测然后通过NMS将预测转换回原始图像坐标。可选地也可加入全图推理的预测。切片辅助微调SF 广泛使用的目标检测框架如Detectron2 [22]、MMDetection [23]和YOLOv5 [24]提供了在ImageNet [5]和MS COCO [7]等数据集上的预训练权重。这使得我们可以在较小数据集和较短训练周期内微调模型而无需从头在大型数据集上训练。这些常见数据集大多包含低分辨率图像640×480目标尺寸较大平均像素覆盖约占图像高度的60%。在这些数据集上预训练的模型对类似输入具有非常成功的检测性能。然而在高端无人机和监控摄像头生成的高分辨率图像上执行小目标检测任务时其精度显著下降。为解决这一问题我们通过从微调数据集的图像中提取图块来增强数据集如图2所示。每张图像, 被切片成重叠的图块其尺寸 和 在预定义范围和内选取这些范围作为超参数。然后在微调过程中图块按宽高比缩放使图像宽度介于800至1333像素得到增强图像′此时目标的相对尺寸较原始图像更大。这些增强图像 连同原始图像以利于大目标检测一起用于微调。需要注意的是随着图块尺寸减小大目标可能无法完全落入单个切片或交叉区域这可能导致大目标检测性能下降。切片辅助超推理SAHI推理阶段同样采用切片方法详见图2。首先将原始查询图像 切片成 个 × 重叠图块。然后每个图块按宽高比缩放。之后对每个重叠图块独立执行目标检测前向传播。可选择使用原始图像进行全图推理FI以检测大目标。最后重叠的预测结果以及如使用FI结果通过NMS合并回原始尺寸。在NMS过程中将交并比IoU大于预设匹配阈值 的框进行匹配对于每个匹配移除检测概率低于 的检测结果。4. 实验结果所提出的方法已集成到使用MMDetection [23]框架的FCOS [13]、VarifocalNet [4]和TOOD [14]目标检测器中以进行实验评估。相关的配置文件、转换和评估脚本以及评估结果文件已公开提供 1。所有与切片相关的操作也已公开提供以便集成到其他目标检测框架中 2。VisDrone2019-Detection [25] 是一个目标检测数据集包含由无人机平台在不同位置和不同高度拍摄的8599张图像。该数据集中大多数目标尺寸较小、分布密集且部分遮挡。不同场景中还包含光照和视角变化。超过54万个目标边界框被标注分为十个预定义类别行人、人、自行车、汽车、面包车、卡车、三轮车、带篷三轮车、公共汽车、摩托车。超类别定义为行人、摩托车、汽车和卡车。训练和验证子集分别包含6471张和548张图像这些图像采集于不同地点但环境相似。xView [26] 是用于卫星图像目标检测的最大公开数据集之一。它包含来自世界各地复杂场景的图像并使用边界框进行标注。它包含来自60个不同类别的超过100万个目标实例。在实验过程中随机选取了75%和25%的数据分别作为训练集和验证集。这两个数据集都包含小目标目标宽度 图像宽度的1%。表1: 在Visdrone19-Detection test-dev集上计算的平均精度值。SF、SAHI、FI和PO分别对应切片辅助微调、切片辅助推理、完整图像推理和重叠图块。表2: 在xView验证集上计算的平均精度值。SF、SAHI、FI和PO分别对应切片辅助微调、切片辅助推理、完整图像推理和重叠图块。图3: TOOD目标检测器在SFSAHI设置下在Visdrone19-Det test-dev集上计算的误差分析曲线。图4: TOOD目标检测器在SFSAHI设置下在xView验证集上计算的误差分析条形图。在实验期间使用了SGD优化器学习率为0.01动量为0.9权重衰减为0.0001并进行了500次迭代的线性预热。学习率调度在第16和第22个epoch时进行指数衰减。对于切片辅助微调通过切片图像和标注来创建图块然后使用这些图块增强Visdrone和xView训练集。对于Visdrone和xView数据集每个图块的宽度和高度分别在480到640和300到500像素范围内随机选择。输入图像被调整大小为宽度在800到1333像素之间保持宽高比。在推理过程中NMS匹配阈值 设置为0.5。评估采用了MS COCO [7]的评估协议包括总体和按尺寸划分的AP50分数。具体来说AP50是在单个IoU阈值0.5下对所有类别计算的最大检测数设置为500。在表1和表2中对原始图像的传统推理FI被作为基线。SF切片辅助微调是在增强数据集上微调的模型在表1和表2中图块大小范围分别为480到640和300到500。SAHI切片辅助超推理指的是在表1和表2中分别使用大小为640×640和400×400的图块进行推理。PO图块重叠表示在切片推理期间图块之间有25%的重叠。从表1可以看出SAHI将目标检测AP提高了6.8%、5.1%和5.3%。通过SF可以进一步提高检测精度对于FCOS、VFNet和TOOD检测器AP的累计提升分别达到了12.7%、13.4%和14.5%。在推理过程中对切片应用25%的重叠提高了小/中型目标的AP和总体AP但略微降低了大目标的AP。增加是由于从切片中预测出的额外小目标真阳性而减少是由于从切片中预测出的、与大型真实框匹配的假阳性。最佳的小目标检测AP是通过SF加SI实现的而最佳的大目标检测AP是通过SF加FI实现的这证实了FI对大目标检测的贡献。xView数据集的结果如表2所示。由于xView的目标非常小使用原始图像进行常规训练会产生较差的检测性能而SF显著改善了结果。集成FI使大目标AP提高了最多3.3%但导致小/中型目标AP略有下降这是预期的因为一些较大的目标可能无法从较小的切片中检测到。切片之间25%的重叠将检测AP提高了最多1.7%。xView包含高度不平衡的60个目标类别尽管FCOS是较早且据报道较弱的检测器但在此数据集上其性能与VFNet非常接近。这一观察证实了FCOS中Focal Loss [2]的有效性该损失函数旨在处理类别不平衡问题。TOOD在训练期间也受益于Focal Loss并在三个检测器中取得了最佳的检测结果。TOOD检测器在Visdrone和xView数据集上的误差分析结果分别如图3和图4所示。其中C75、C50、Loc、Sim、Oth、BG、FN分别对应于在IoU阈值为0.75和0.50时的结果、忽略定位错误后的结果、超类别假阳性、类别混淆、所有假阳性以及所有假阴性。如图3所示改进超类别假阳性、类别混淆和定位错误的空间较小而改进假阳性和假阴性的空间较大。类似地图4显示在修复类别混淆和假阳性之后有很大的改进空间。此处原文有重复段落已合并增加是由于从切片中预测出的额外小目标真阳性而减少是由于从切片中预测出的、与大型真实框匹配的假阳性。最佳的小目标检测AP是通过SF加SI实现的而最佳的大目标检测AP是通过SF加FI实现的这证实了FI对大目标检测的贡献。xView数据集的结果如表2所示。由于xView的目标非常小使用原始图像进行常规训练会产生较差的检测性能而SF显著改善了结果。集成FI使大目标AP提高了最多3.3%但导致小/中型目标AP略有下降这是预期的因为一些较大的目标可能无法从较小的切片中检测到。切片之间25%的重叠将检测AP提高了最多1.7%。xView包含高度不平衡的60个目标类别尽管FCOS是较早且据报道较弱的检测器但在此数据集上其性能与VFNet非常接近。这一观察证实了FCOS中Focal Loss [2]的有效性该损失函数旨在处理类别不平衡问题。TOOD在训练期间也受益于Focal Loss并在三个检测器中取得了最佳的检测结果。TOOD检测器在Visdrone和xView数据集上的误差分析结果分别如图3和图4所示。其中C75、C50、Loc、Sim、Oth、BG、FN分别对应于在IoU阈值为0.75和0.50时的结果、忽略定位错误后的结果、超类别假阳性、类别混淆、所有假阳性以及所有假阴性。如图3所示改进超类别假阳性、类别混淆和定位错误的空间较小而改进假阳性和假阴性的空间较大。类似地图4显示在修复类别混淆和假阳性之后有很大的改进空间。5. 结论所提出的切片辅助超推理方案可以直接集成到任何目标检测推理流程中并且不需要预训练。在Visdrone和xView数据集上使用FCOS、VFNet和TOOD检测器进行的实验表明它可以带来高达6.8%的AP提升。此外应用切片辅助微调可使小目标AP额外提高14.5%并且在切片之间应用25%的重叠可进一步提升2.9%的AP。通过更大的特征图以更高分辨率训练网络会导致更高的计算和内存需求。所提出的方法线性地增加了计算时间同时保持了固定的内存需求。计算和内存预算也可以通过调整图块大小来权衡并考虑目标平台。未来将利用所提出的切片方法对实例分割模型进行基准测试并评估不同的后处理技术。6. 参考文献[1] S. Ren, K. He, R. Girshick, and J. Sun, “Faster R-CNN: Towards real-time object detection with region proposal networks,” Advances in neural information processing systems, vol. 28, pp. 91-99, 2015.[2] T.-Y. Lin, P. Goyal, R. Girshick, K. He, and P. Dollar, “Focal loss for dense object detection,” in Proceedings of the IEEE ICCV, 2017, pp. 2980-2988.[3] Z. Cai and N. Vasconcelos, “Cascade R-CNN: Delving into high quality object detection,” in Proceedings of the IEEE conference on CVPR, 2018, pp. 6154-6162.[4] H. Zhang, Y. Wang, F. Dayoub, and N. Sunderhauf, “Varifocalnet: An iou-aware dense object detector,” in Proceedings of the IEEE/CVF Conference on CVPR, 2021, pp. 8514-8523.[5] J. Deng, W. Dong, R. Socher, L.-J. Li, K. Li, and L. Fei-Fei, “Imagenet: A large-scale hierarchical image database,” in 2009 IEEE conference on CVPR. Ieee, 2009, pp. 248-255.[6] M. Everingham, L. Van Gool, C. K. Williams, J. Winn, and A. Zisserman, “The pascal visual object classes (VOC) challenge,” ICCV, vol. 88, no. 2, pp. 303-338, 2010.[7] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick, “Microsoft COCO: Common objects in context,” in ECCV. Springer, 2014, pp. 740-755.[8] E. C. for Electro-technical Standardization, “Alarm systems - cctv surveillance systems for use in security applications,” August 2012.[9] W. Liu, D. Anguelov, D. Erhan, C. Szegedy, S. Reed, C.-Y. Fu, and A. C. Berg, “SSD: Single shot multibox detector,” in ECCV. Springer, 2016, pp. 21-37.[10] A. Bochkovskiy, C.-Y. Wang, and H.-Y. M. Liao, “Yolov4: Optimal speed and accuracy of object detection,” arXiv preprint arXiv:2004.10934, 2020.[11] R. Girshick, “Fast r-cnn,” in Proceedings of the IEEE ICCV, 2015, pp. 1440-1448.[12] T.-Y. Lin, P. Dollar, R. Girshick, K. He, B. Hariharan, and S. Belongie, “Feature pyramid networks for object detection,” in Proceedings of the IEEE CVPR, 2017, pp. 2117-2125.[13] Z. Tian, C. Shen, H. Chen, and T. He, “FCOS: Fully convolutional one-stage object detection,” in Proceedings of the IEEE/CVF ICCV, 2019, pp. 9627-9636.[14] C. Feng, Y. Zhong, Y. Gao, M. R. Scott, and W. Huang, “TOOD: Task-aligned one-stage object detection,” in Proceedings of the IEEE/CVF ICCV, 2021, pp. 3510-3519.[15] G. Wang, J. Guo, Y. Chen, Y. Li, and Q. Xu, “A PSO and BFO-based learning strategy applied to faster R-CNN for object detection in autonomous driving,” IEEE Access, vol. 7, pp. 18840-18859, 2019.[16] M. Kisantal, Z. Wojna, J. Murawski, J. Naruniec, and K. Cho, “Augmentation for small object detection,” arXiv preprint arXiv:1902.07296, 2019.[17] Z. Chen, K. Wu, Y. Li, M. Wang, and W. Li, “SSD-MSN: An improved multi-scale object detection network based on ssd,” IEEE Access, vol. 7, pp. 80622-80632, 2019.[18] B. Bosquet, M. Mucientes, and V. M. Brea, “STDnet: A convnet for small target detection,” in BMVC, 2018, p. 253.[19] A. Van Etten, “Satellite imagery multiscale rapid detection with windowed networks,” in 2019 IEEE WACV. IEEE, 2019, pp. 735-743.[20] Y. Pang, J. Cao, J. Wang, and J. Han, “JCS-Net: Joint classification and super-resolution network for small-scale pedestrian detection in surveillance images,” IEEE Trans. Inf. Forensics Security, vol. 14, no. 12, pp. 3322-3331, 2019.[21] Y. Bai, Y. Zhang, M. Ding, and B. Ghanem, “Finding tiny faces in the wild with generative adversarial network,” in Proceedings of the IEEE CVPR, 2018, pp. 21-30.[22] Y. Wu, A. Kirillov, F. Massa, W.-Y. Lo, and R. Girshick, “Detectron2,” https://github.com/facebookresearch/detectron2, 2019.[23] K. Chen, J. Wang, J. Pang, Y. Cao, Y. Xiong, X. Li, S. Sun, W. Feng, Z. Liu, J. Xu, et al., “MMDetection: Open mmlab detection toolbox and benchmark,” arXiv preprint arXiv:1906.07155, 2019.[24] G. Jocher, A. Stoken, J. Borovec, A. Chaurasia, L. Changyu, V. Laughing, A. Hogan, J. Hajek, L. Diaconu, Y. Kwon, et al., “ultralytics/yolov5: v5. 0-yolov5-p6 1280 models aws super- vise. ly and youtube integrations,” Zenodo, vol. 11, 2021.[25] D. Du, P. Zhu, L. Wen, X. Bian, H. Lin, Q. Hu, T. Peng, J. Zheng, X. Wang, Y. Zhang, et al., “Visdrone-det2019: The vision meets drone object detection in image challenge results,” in Proceedings of the IEEE/CVF ICCV Workshops, 2019, pp. 0-0.[26] D. Lam, R. Kuzma, K. McGee, S. Dooley, M. Laielli, M. Klaric, Y. Bulatov, and B. McCord, “xView: Objects in context in overhead imagery,” arXiv preprint arXiv:1802.07856, 2018.