COD论文笔记 BiRefNet
本质还是一个 U 型编码器解码器结构的分割模型。
我可以考虑将©和(d)结合,即对解码器的输入不进行 patchify,同时在各个阶段引入梯度参考信息
最近的相关工作,中间监督、额外先验(频率,梯度,边缘等)取得不错效果
作者观察到,对原始图像进行导数运算获得梯度特征,可以很好地反映图像对象中的细微和非显著特征。
双边参考是在解码器中的两个辅助信息:
1.层次化的原始图像块
2.梯度监督信息(对于颜色和纹理上与背景高度相似时,梯度信息过于微弱,此时越引入真实GT特征作为侧向监督)
此外作者提出了一些实用的训练策略。
模型整体结构:
所谓的定位模块就是编码器,重建模块就是解码器。
对于COD任务,不需要 Cls 模块。
最下面的 ASPP 得到语义信息较强的粗略预测图,然后引导解码器进行细化分割。
不同阶段的patch块大小不同,所以是 multi-scale supervision。
定位模块
重建模块
大的感受野会丢失细节信息,小的感受野会难以定位大尺度目标。作者是如何平衡的呢?
作者使用了可变形卷积DCN来作为重建块(RB)取代普通的残差块( 1 × 1 , 3 × 3 , 7 × 7 1\times1,3\times3,7\times7 1×1,3×3,7×7)。我可以考虑使用最新的DCNv4来进行实验。
如图所示,所谓的内向参考,其中
F
i
d
+
F_i^{d+}
Fid+是上一个BirefBlock的输出特征和backbone对应层级特征进行(应该是element-wise addition)得到,然后作为当前BirefBlock的输入,然后作者将当前层级的原始图像进行自适应裁剪得到若干图像块,这两个进行拼接之后送入重构模块,重构模块利用不同感受野和平均池化进行进一步特征提取,然后重构模块输出的特征图副本再送到外向参考中利用梯度监督信息得到
A
i
G
A_i^G
AiG ,
A
i
G
A_i^G
AiG 和
F
i
d
′
F_i^{d'}
Fid′ 进行元素级相乘之后得到特征
F
i
−
1
d
F_{i-1}^d
Fi−1d
双边参考
内部参考和外部参考分别起到补充高分辨率信息和吸引注意力到细节密集区域的作用。
在内部参考中,原始高分辨率的图像 L L L 被裁剪为与相应解码器阶段的输出特征一致大小的补丁 { P k = 1 N } \{P_{k=1}^N\} {Pk=1N}, 这些补丁与原始特征 F i d + F_i^{d+} Fid+ 叠加后输入重建模块,现有类似技术的方法,要么仅仅在最后的解码阶段添加 L L L,要么将 L L L 调整尺寸,使其适用于低分辨率的原始特征。作者的内部参考通过自适应裁剪避免了这两个问题,并且在每个阶段提供必要的高分辨率信息。