VFL

本文在 FCOS+ATSS 的基础上设计了 iou 感知分数分支,用于联合 iou 预测分支及框预测分支,并在此分支上应用设计的 VFL 损失函数,实现更加有效的目标检测

Abstract

(1)在密集检测中,准确地利用 “分数” 排序候选检测框对提高性能很重要,现有的工作主要是通过以下方式获得这个分数:(1) 利用分类分数;(2) 利用分类分数联合预测定位分数。然后,这两种方式还可以进一步改进,本文提出学习一个 iou 感知的分类分数 (Iou-aware Classification Score, IACS),该分数是存在置信度 + 定位精度的联合表示,实验表明,实验该分数能更有效获得候选框分数。

(2)针对 IACS 分支,本文提出实验 VFL 损失函数去优化

(3)针对 IACS 分支,本文提出一种星形边界框特征表示分支

在以上两个组件及边界框细化分支基础上,本文基于 FCOS+ATSS 提出一个 iou 感知的密集对象检测器,简称为 VarifocalNetor VFNet

Introduction

VFL-20250227112504

现代目标检测器无论是 one-satge,还是 two-stage,都是在获得大量候选框的基础上,应用 NMS + 预测分数提取最终检测结果,所以预测分数排序非常重要。本文提出 iou 感知分数(IACS)作为这个排序分数,并且提出 VFL 损失优化该分数以及用于 IACS 预测的星形包围盒特征表示。通过新表示:降初始回归框(红色)细化为更准确的框(蓝色)

现有的密集目标检测器预测一个额外的 IoU 分数或中心度分数作为定位精度估计,并将它们乘以分类分数来对 NMS 中的检测进行排名。这些方法可以缓解分类分数与目标定位精度之间的错位问题。然而,它们是次优的,因为将两个不完美的预测相乘可能会导致更差的排名基础。论文做了以下实验:

VFL-20250227112505

(1)FCOS 输出情况:如上图所示,FCOS 输出中心分数分类分数
(2)在 NMS 之前使用真实值替换 FCOS 输出的分类分数、位置偏差、中心分数,其中分类分数在 gt 位置使用 1.0 或者使用预测框与 gt 框的 iou 得分(也就是我假设你某些预测不经过模型,你都做对情况下,效果最好是多少)

VFL-20250227112505-1

  1. W/ctr:推理过程使用中心分数 (39.2),相比较不使用(38.5)有一定效果提升
  2. G_ctr:使用真实中心得分,替代预测中心得分,效果更好 (41.1)
  3. Gt_ctr_iou:使用 gt_IOU 替代中心得分,性能提升 (43.5)
  4. Gt_bbox:使用 gt 框修正位置偏差,性能得到很大提升 (56.1)
  5. Gt_cls:使用 gt 替代分类预测分数,性能下降 (43.1)
  6. Gt_cls_iou:使用 iou 替换分类分数,性能大幅度提升 (74.7)

总结:

  • 2 VS 3:即中心度分数 x 分类分数,IOU 分数 x 分类分数,这两个分数作为 NMS 排序分数,不能带来明显性能提升
  • 4:当预测框被修正时,是否使用中心分数,对模型性能提升不大
  • 5:当降分类分数都改为 1 时,使用中心分数和不使用中心分数差别很大(43.1 Vs 58.1),说明中心分数可以一定程度区分正确和不正确的 bbox

综合知道,目前检测器的候选框中已经存在大量定位准确的边界框,实现性能提升的关键是如何选中哪些高质量的检测,实验表明,用 gt IoU 替换 ground-truth 类的分类分数是最有前途的选择度量。我们将此分数向量的元素称为 IoU 感知分类分数(IACS)

Method

VFL-20250227112505-2

相比较原始的 FCOS+ATSS,VFL 对检测头做以下修改:

  1. 去掉中心预测分支
  2. 新增 IACS 分支
  3. 新增星形框特征表示分支
  4. 新增框重定位分支

IOU 感知分数(IACS – IoU-Aware Classification Score)

传统的分类分支输出是 HxWxC,表示为每个 grid 预测一个类别,其训练目的是:真实类别位置填 1,其他位置填 0,IOU 感知分支将这里的 1 替换为预测框和真实框的 iou 即可

VFL loss

借鉴 Focal loss 的思想,定义 VFL 损失如下:

VFL(p,q)={q(qlog(p)+(1q)log(1p))q>0αpγlog(1p)q=0,\mathrm{VFL(p,q)=\begin{cases}-q(qlog(p)+(1-q)log(1-p))&q>0\\-\alpha p^\gamma log(1-p)&q=0,\end{cases}}

其中 p 是预测概率,q 是真实标签,也就是对于哪些 IOU 大于 0 的位置,计算类似 BCE 损失,对于 IOU 等于 0 的位置,计算交叉熵损失。α\alpha 是负例子损失平衡超参

星形特征表示 (Star-Shaped Box Feature Representation)

原始 FCOS 关于边界框输出是中心点(x, y)+ 四角(x-l’, y-t’)(x+r’, y-t’)(x+r’, y+b’)(x-l’, y+b’),VFL 采样点新增四边 (x, y-t’)(x+r’, y)(x, y+b’)(x-l’, y),一共 9 个点,称为星形特征表示

Bounding Box Refinement

VFL 除了预测中心点到四边距离 (l‘,t’,r‘,b’),还预测了这些距离的偏差 (∆l,∆t,∆r,∆b),最终距离被定义为 (l,t,r,b)=(∆l×l‘,∆t×t’,∆r×r‘,∆b×b’)

参考:

  1. 【目标检测】24、VarifocalNet: An IoU-Aware Dense Object Detector-CSDN 博客