ICCV2023|SSD-Det:不精确的标注框同样可以实现目标检测SOTA!

 
 

点击上方“小白学视觉”,选择加"星标"或“置顶

 
 
重磅干货,第一时间送达

导读

 

本文提出了一种基于空间自蒸馏的对象检测器(SSD-Det)来挖掘空间信息,以自蒸馏的方式细化不准确的框。 

dfe9040f4ac7e6157a5ebf8d86ba430a.png

paper:https://arxiv.org/pdf/2307.12101.pdf

code:https://github.com/ucas-vg/PointTinyBenchmark/tree/SSD-Det

导读:

本文要解决的问题:

在目标检测任务中,当只有不精确的bounding box作为监督信号时,模型的检测性能会显著下降。而获取精确的bounding box标注又非常耗时费力。那么如何利用这些不精确的bounding box来训练更加鲁棒的目标检测模型?

具体而言:

  1. 获取精确的bounding box标注代价高昂且具有挑战性。

  2. 直接使用不精确的bounding box会导致目标漂移、组预测和局部关键区域预测等问题。

  3. 以往的方法通常依赖类别信息进行框的选择和调整,没有充分利用空间信息。

为了解决这些问题,本文提出基于空间自蒸馏的目标检测网络SSD-Det(Spatial Self-Distillation based Object Detector)。主要贡献是:

  1. 提出了SPSD( Spatial Position Self-Distillation)模块,利用空间信息生成更高质量的候选框。

  2. 提出了SISD( Spatial Identity Self-Distillation)模块,预测每个候选框与目标的空间IoU,辅助选择最佳框。

  3. SPSD和SISD模块相结合,有效利用了空间信息和类别信息,显著提升基于不精确box的目标检测性能。

  4. 在MS-COCO和VOC数据集上进行实验表明,该方法优于其它state-of-the-art方法。

565ec9db46dc12150e3426f320399d76.png

方法

本文目标是用不精确的边界框学习一个稳健的检测器。本文设计一个分支来细化不精确的边界框,然后用细化的框训练检测器头或检测器。最重要的部分是如何设计细化策略。本文首先设计了一个基本的两阶段框细化器(图3中的灰色区域),作为原始解决方案。然后,提出SPSD和SISD并添加到其中,以进一步利用空间线索进行框细化,产生SSD-Det。总体损失函数公式化为:

其中α1,α2和α3分别设定为0.25,0.25和4。表示检测器或检测头的损失。在推理时,仅使用检测器或检测头。

d12d472b40a2608e69a4b2b7f7cf1616.png 541926cbe35def21906f38904d3eb0df.png

主要创新模块

本文主要创新包含三大模块:Basic Box Refiner模块,SPSD模块以及SISD模块(见figure3)。这三者的作用、关系及联系如下:

Basic Box Refiner

(1) 作用:提供基础框架,依赖分类信息进行候选框精炼。

(2) 原理:

  • 对每个物体生成候选框组成bag

  • 使用分类分支预测每个框属于各类别的概率

  • 使用实例分支预测每个框被选中的概率

  • 计算分类概率和实例概率的乘积作为框的得分

  • 选择得分最高的前k个框,计算其加权平均作为精炼结果

(3) 问题:仅依赖分类信息容易导致目标漂移、组预测等问题

SPSD

(1) 作用:1、改进候选框的生成;2、使用空间信息提升框质量;3、为后续精炼提供更好的上限

(2) 原理:

  • 输入:Basic Box Refiner产生的候选框

  • 输出:更高质量的候选框

  • 预测更准确的框来优化候选框的生成

  • 使用回归网络学习候选框之间的空间对应关系

  • 监督信号是不精确的ground truth框

  • 预测框与ground truth框的空间偏差

  • 利用学习到的空间知识纠正基础框生成模块的误差

  • 迭代优化,产生更准确接近ground truth的候选框

SISD

(1) 作用:1、改进候选框的选择;2、引入空间信息,缓解目标漂移、组预测等问题;3、选择更准确的框进行精炼。

(2) 原理:

  • 对每个候选框预测其与目标的空间IoU

  • IoU与分类概率相结合作为新得分进行选择

(3) 效果:

  • 引入空间信息,缓解目标漂移、组预测等问题

  • 选择更准确框进行精炼

三者关系与联系

(1) Basic Box Refiner提供整体框架;(2) SPSD受Basic Box Refiner监督进行迭代训练;(3) SISD预测的IoU可指导Basic Box Refiner的选择;(4) 三者一起组成完整的端到端框精炼网络;(5) Basic Box Refiner依赖分类信息;(6) SPSD和SISD引入空间信息进行增强;(7) 三者相互配合达到更好的精炼效果。

总的来说Basic Box Refiner提供基础框架,SPSD和SISD是关键的创新点,引入空间信息增强鲁棒性,三者相互配合形成端到端的框精炼网络,但各自作用不同又相互补充,共同解决基于弱监督框的检测问题!

实验

实验设置

数据集和评估指标。MS-COCO和PASCAL VOC 2007。MS-COCO(2017版本)有118k训练和5k验证图像,包含80个常见对象类别。PASCAL VOC 2007是最流行的通用目标检测基准数据集之一,包含20个类别。

评估指标。COCO的平均精度(AP)和VOC的mAP@[0.5,0.95]及mAP@.5进行评估。报告{AP,AP50,AP75,AP小,AP中,AP大}指标。

合成嘈杂数据集。通过扰动原始标注中的干净框来模拟嘈杂的边界框。在VOC上模拟10%到40%的各种框噪声水平,在COCO上模拟{20%,40%}。

实现细节。本文基于MMDetection在FasterRCNN上用ResNet50-FPN backbone实现方法。所有设置与先前方法采用FPN以进行公平比较。与MS-COCO上的对象检测默认设置相似,本文在8个GPU上以每GPU2个图像的批量大小使用随机梯度下降算法进行1x训练计划进行优化。对于VOC数据集,批量大小为每GPU 2个图像,2个GPU。本文报告的是单尺度(COCO为1333 * 800,VOC为1000 * 600)的性能。

与SOTA的比较

在MS-COCO和VOC 2007数据集上与几种最新方法进行比较。Clean-FasterRCNN和Noisy-FasterRCNN分别表示在干净(原始标注)和嘈杂标注下默认设置训练的FasterRCNN模型。

MS-COCO数据集。表1显示了在MS-COCO上的比较结果。不精确的边界框标注明显降低了vanilla Faster R-CNN的检测性能。Co-teaching和SD-LocNet只轻微提高了检测性能,特别是在40%框噪声下。这表明小损失样本选择和样本权重分配无法很好地处理嘈杂的框标注。KL Loss略微改善了20%和40%框噪声下的性能。通过将对象视为实例包,OA-MIL在一定程度上对嘈杂的边界框具有鲁棒性,并优于其他方法。尽管如此,之前提到的标签分配包构建限制了其在重度噪声下的能力。本文的方法对嘈杂的边界框更具鲁棒性。它以大幅度优势击败其他方法,在高框噪声水平下显著提升了各项指标的性能。例如,在40%框噪声下,端到端的SSD-Det达到27.6 AP和53.9 AP50,相比最先进的方法OA-MIL分别提高9.0和11.3点。另外,通过在FasterRCNN上重新训练,性能进一步达到29.3 AP和54.8 AP50。使用ResNet-101作为backbone时,性能也获得一致的改进。在MS-COCO测试集上,本文的方法也取得了最先进的性能。

9e3608a460605156442f4f07d253578d.png

VOC 2007数据集。表2显示在VOC 2007测试集上的比较结果。Co-teaching、SD-LocNet和KL Loss无法很好地处理不精确的边界框标注。OA-MIL在不同的嘈杂数据集上改进了性能。本文的方法在10%、20%、30%和40%嘈杂框数据集上进一步改进,分别达到77.10、74.80、71.50和66.90 AP50。

bf6571e7d1ac23625ab53aeba29c767b.png

消融实验分析

为进一步分析SSD-Det的有效性和鲁棒性,本文在COCO验证集上进行了更多消融实验。

模块消融。表3给出了本文方法中每个组件的消融研究,包括:(i) 基本框细化器的不同阶段。即不带第二阶段(2-Ref)训练对象检测器,其中第一阶段预测的伪框用作并行检测器的监督。(ii) SPSD,即不带SPSD训练,其中对象包(object-bag)直接通过围绕嘈杂真值或第一阶段预测的伪框的邻域采样构建。(iii) SISD。(iv) 使用FasterRCNN重新训练(Re-Train)。

SPSD有效性。如表3所示,SPSD在MS-COCO上进一步改进了检测性能,特别是在高框噪声水平下,例如在40%框噪声水平下,SPSD将性能从24.6提升到27.2。在表4中,本文对SPSD进行了进一步的切割。仅在第二阶段采用SPSD包构建,性能提高了1.4 AP。当使用第一阶段的建议分数作为权重时,性能进一步改进。在所有阶段都采用SPSD时,AP达到27.2。图5显示了包质量。使用SPSD后,平均IoU从40.3增加到58.7,最大值和前10个IoU增加到78.3和75.1,这表明提案选择的上限更好。更多高质量建议带来更好的优化和更容易的建议选择。

892005651abacd8e27478c51947c39e6.png

SPSD模块数量。如表6所示,添加3个SPSD时,性能略有下降,可能是由于错误累积超过额外阶段带来的性能提升。因此,2个SPSD是本文的默认设置。

182695e7a133b6ed6d5f822854fd10c5.png

SISD的有效性。SISD旨在在框选择中选择与对象相关的建议。在40%和20%框噪声下,检测性能分别从27.2提高到27.6和从33.0提高到33.6,这验证了该模块的有效性,如表3所示。本文还研究了SISD中的ORE策略(表5)。对象特征F+j与建议特征Fj的减法或拼接都不起作用。使用加法策略时,性能为27.60。如果SISD共享两个fc层,则性能降至22.99,因为优化目标是相互矛盾的(身份区分同一类别中的对象)。如果直接使用RoI特征而没有ORE,性能下降到27.32 AP,验证了对象相关性策略的有效性。

重新训练的影响。与大多数WSOD方法一样,本文通过训练一个完全监督的检测器(例如Faster R-CNN或RetinaNet)来进行回归对象位置以获得更精确的结果。如表7所示,本文在40%和20%噪声数据集上获得了更好的结果,分别为20.29 AP和34.37 AP。本文还发现,如果SSD-Det仅训练细化器并使用伪标签训练FasterRCNN,结果很好但低于联合训练后重新训练给出的结果(表7第1行)。这是因为联合训练有利于框细化。

792698c4194f6f6047c810d2ae60e1da.png

在不同检测器上的实验。本文在本文方法细化的框上重新训练最近的检测器,例如SparseRCNN和Deformable DETR。表8验证了本文的方法实现了一致的改进。

156491c6d54c4276f3e8729565c5cf4a.png d5d8a362abf530bea481998b510a3e2b.png

可视化和讨论。图4显示OA-MIL面临小或重叠对象的缺失实例和部分预测问题,而本文的方法效果仍很好。为了更好地直观地理解SISD和SPSD,本文在图5中可视化了SSD-Det中包构建的质量。然后,本文对“漂移”、“组”和“局部支配”问题进行了分解。

4e63c8f92d880a737a48affef6905095.png

本文统计计算基线和本文的三种噪声类型的“坏”细化框(与真值IoU较小)的比例,如表9所示。漂移、组和局部问题从15.1%、6.7%、2.8%降低到1.5%、1.7%、1.0%,表明本文的改进。

2f1aa6f6e3932daac8120029e75d2201.png

真实生活嘈杂标注实验。真实生活嘈杂标注源自:低质量数据(例如遮挡、模糊)、人类标注错误和自动机器标注器局限性。来自人为错误的噪声相当主观,因为标注者之间的差异。为了更客观的分析,使用来自机器标注器的嘈杂标注进行实验。本文将好的训练过的Faster R-CNN应用于Objects365图像,生成Objects-F数据集,应用于COCO-val图像生成COCO-F数据集。使用P2BNet(基于点的标注器)用于COCO-val图像带点标注生成COCO-P数据集。SSD-Det有效改进了低质量框。如表10所示,使用SSD-Det的细化,Objects-F(从44.3提高到47.0)、COCO-F(从45.1提高到48.2)和COCO-P(从55.6提高到65.2)数据集的平均IoU均有所提高。此外,所有数据集的可靠标注比例增加,噪声类别的频率(局部、过大和位移)均有所降低。

结论

本文主要解决目标检测任务中,当只有不精确的bounding box作为监督信号时,模型的检测性能会显著下降的问题,在工程实际中,特别是标注资源较少时,将大模型进行预标注结果直接拿来训练,具有较大实用价值!

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。


下载2:Python视觉实战项目52讲
在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。


下载3:OpenCV实战项目20讲
在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。


交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值