Fusion for OD

不同level、不同特征表示……的融合问题。

有一种把目标检测各种方法想要融合起来,使得有互补的作用。但是直接融合的话,由于特征之间是异构的,所以需要进行一顿操作,使得它们可以融合。

Fusion

多模态融合将不同模态的信息整合成一个稳定的多模态表征。如果过程专注于使用某种架构来整合单模态的表征,那么就被归类于fusion

而fusion方法根据fusion的位置分为早/晚fusion。但是由于这两种fusion会抑制模内或模间的交互作用,所以又有intermediate的融合方法。

方法:

  • 基于简单操作
    • concat
    • 代数法:加权求和
    • 卡尔曼滤波
    • 贝叶斯理论
    • 证据理论
  • 基于注意力
  • 基于张量

Level

Why

  • 低层特征分辨率更高,包含更多位置、细节信息,但是由于经过的卷积更少,其语义性更低,噪声更多
  • 高层特征具有更强的语义信息,但是分辨率很低,对细节的感知能力较差
  • 因此融合不同层的特征,可以弥补各自的问题

融合不同层的特征后再检测

what

先融合多层的特征,然后在融合后的特征上训练预测器(只在完全融合之后,才统一进行检测)。这类方法也被称为skip connection,即采用concat、add操作。这一思路的代表是Inside-Outside Net(ION)和HyperNet。两个经典的特征融合方法:

  • concat:系列特征融合,直接将两个特征进行连接。两个输入特征x和y的维数若为p和q,输出特征z的维数为p+q;

  • add并行策略,将这两个特征向量组合成复向量,对于输入特征x和y,z = x + iy,其中i是虚数单位。

Inside-Outside Net(ION)

2019CVPR Libra RCNN

针对的问题

  • 如何选择具有代表性的region proposal(可以认为是样本(proposal)的不平衡问题
  • 不同level的特征如何融合才能真正地充分利用?(特征融合问题)
  • 损失函数的设计能不能引导目标检测器更好地收敛?

结构

  • IoU Balanced sampling

    • 根据IoU来平均选择每个区间的sample;随机采样变成分层采样
  • Balanced feature pyramid

    • 用FPN得到四个level的特征
    • 对每层的特征rescale后为同一尺寸
    • integrate
      • 把所有level的特征eltwise相加,并除以level的数目
    • refine
    • 再和原特征相加,增强原特征
  • Balanced Loss

    • 作者发现outliers贡献了70%以上的梯度,而大量的inliers只有30%的贡献。

    • 因此损失函数增大了inliers的贡献,具体就是将原来的smooth L1 loss

      的梯度替换为:

      从而设计出损失函数为

融合不同层的检测结果

结合不同层的检测结果改进检测性能。这一类研究思路的代表有两种:

  • feature不融合,多尺度的feture分别进行预测,然后对预测结果进行综合
  • feature进行金字塔融合【特征并没有表示为一个张量,但是是一个整体】,融合后进行预测。

SSD

Object Detection

HyperNet

MS-CNN

FPN

Object Detection

PANet

Object Detection

M2Det

Object Detection

ASFF

Object Detection

Representation

转载请注明出处,谢谢。

愿 我是你的小太阳

买糖果去喽