Contrast Prior and Fluid Pyramid Integration for RGBD Salient Object Detection
1 简介
这是一篇程明明团队在2019年cvpr上发表的RGB-D显著性检测文章。超越了此前的9个SOTA方法。
1.1 github:
https://github.com/JXingZhao/ContrastPrior
1.2 动机和贡献
文章认为RGBD显著性检测面临两大挑战:1.缺乏高质量的深度图。并且深度图的噪声更大,且没有纹理。也没有像ImageNet这样的大规模深度图数据集,缺乏训练良好的BACKBONE
2.多尺度交叉模型融合是次优的。depth和RGB有非常不同的属性,例如绿色和草有很大的相关性,但是深度图没有。因此做出一个有效的多尺度融合模型是困难的。
贡献:
1.设计了一种对比度损失来应用于对比度先验,该先验已被广泛用于基于非深度学习的方法中,用于增强深度图。 基于RGBD的SOD模型成功利用了传统对比技术和深层CNN功能的优势。
2.提出了一种流体金字塔集成策略,以更好地利用多尺度交叉模式特征,其有效性已通过实验验证。
2 提出的模型
框架的整体模型如下图:
Feature-enhanced module(FEM)和fluid pyramid integration 被应用在VGG-16中。
2.1 Feature-enhanced module(FEM)
为了调制深度信息,文章提出了一种新颖的FEM模型。FEM由一个ContrastEnhanceNet 和一个 Cross-Modal Fusion strategy 组成。FEM独立于RGB主干网络,FEM模块穿插在每一个卷积块的输出后面去获得增强特征。
2.1.1 Contrast-enhancedNet(CEN)
首先,增强的图应与前景和背景对象的原始深度图保持一致。因此,对于生成的增强图,前景对象分布损失 lf 和背景分布损失 lb 可以表示为Eqn.1:
l
f
=
−
log
(
1
−
4
∗
∑
(
i
,
j
)
∈
F
(
p
i
,
j
−
p
^
f
)
2
N
f
)
l
b
=
−
log
(
1
−
4
∗
∑
(
i
,
j
)
∈
B
(
p
i
,
j
−
p
^
b
)
2
N
b
)
\begin{array}{l}{l_{f}=-\log \left(1-4 * \sum_{(i, j) \in F} \frac{\left(p_{i, j}-\hat{p}_{f}\right)^{2}}{N_{f}}\right)} \\ {l_{b}=-\log \left(1-4 * \sum_{(i, j) \in B} \frac{\left(p_{i, j}-\hat{p}_{b}\right)^{2}}{N_{b}}\right)}\end{array}
lf=−log(1−4∗∑(i,j)∈FNf(pi,j−p^f)2)lb=−log(1−4∗∑(i,j)∈BNb(pi,j−p^b)2)
F 和 B 是真值图的显着目标区域和背景。 Nf 和 Nb 分别表示显着物体和背景中的像素数。类似地,
p
^
f
\hat{p}_{f}
p^f 和
p
^
b
\hat{p}_{b}
p^b分别表示增强图的前景和背景中的值的平均值Eqn.2:
p
^
f
=
∑
(
i
,
j
)
∈
F
p
i
,
j
N
f
,
p
^
b
=
∑
(
i
,
j
)
∈
B
p
i
,
j
N
b
\hat{p}_{f}=\sum_{(i, j) \in F} \frac{p_{i, j}}{N_{f}}, \hat{p}_{b}=\sum_{(i, j) \in B} \frac{p_{i, j}}{N_{b}}
p^f=(i,j)∈F∑Nfpi,j,p^b=(i,j)∈B∑Nbpi,j
Eqn.1 对显著目标和背景的方差进行建模以提升和原depth图的一致性。一个sigmoid层用来把CEN的输出压缩到[0,1]。因此,内部的最大方差为0.25,所以在Eqn.1中将方差 × 4 是为了确保 log 函数的范围在0~1之间。
接着, 应增强前景物体与背景物体之间的对比。 因此,我们将整个深度图像分布损失 lw 定义为Eqn.3:
l
w
=
−
log
(
p
^
f
−
p
^
b
)
2
l_{w}=-\log \left(\hat{p}_{f}-\hat{p}_{b}\right)^{2}
lw=−log(p^f−p^b)2
通过对均差进行建模,可以确保前景目标和背景的对比度尽可能大。
p
^
f
\hat{p}_{f}
p^f和
p
^
b
\hat{p}_{b}
p^b在0到1之间,因此log函数中的参数值范围从0到1。
最后,对比度损失lc可以表示为 Eqn.4 :
l
c
=
α
1
l
f
+
α
2
l
b
+
α
3
l
w
l_{c}=\alpha_{1} l_{f}+\alpha_{2} l_{b}+\alpha_{3} l_{w}
lc=α1lf+α2lb+α3lw其中,α1 ,α2 和α3是预定义参数,文章说建议分别定位5,5,1。
增强后的图片,相比于原来的深度图对比度更高,前、后景分布更为均匀。
2.1.2 Cross-modal Fusion
Cross-modal Fusion 是增强模块的一个子模块,用于通过增强的depth图来调制RGB特征。单通道增强图的作用类似于注意图,具体来说,我们将每个块的RGB特征图乘以增强的深度图,以增强显着区域和非显着区域之间的特征对比度。用残差链接来保留原始RGB的特征。 这些特征图为增强特征
F
~
\tilde{F}
F~,其计算公式为 Eqn.5:
F
~
=
F
+
F
⊗
D
E
\tilde{F}=F+F \otimes D_{E}
F~=F+F⊗DE
其中,
F
F
F 是原始RGB特征,
D
E
D_{E}
DE是增强后的深度图
⊗
\otimes
⊗ 表示逐像素相乘。通过将增强功能的模块插入每个块的末端,分别获得五个不同尺度的增强功能,分别为
F
1
~
\tilde{F_1}
F1~~
F
5
~
\tilde{F_5}
F5~
Fluid Pyramid Integration(FPI)
feature compatibility(特征兼容)是处理跨模式信息的关键,而Fluid Pyramid Integration(FPI) 可以很好的确保这一点。
具体来说,金字塔有5层。第一层由5个节点组成,并且每个节点都是一系列不同尺度的增强特征。然后,通过把
F
2
~
\tilde{F_2}
F2~~
F
5
~
\tilde{F_5}
F5~上采样到和
F
1
~
\tilde{F_1}
F1~相同尺寸并且把这些上采样特征累加在一起,构造第二层的第一个节点。类似的,把
F
3
~
\tilde{F_3}
F3~~
F
5
~
\tilde{F_5}
F5~上采样到和
F
2
~
\tilde{F_2}
F2~ 一样的尺寸,并且把这些特征累加在一起,来构造第二层的第二个节点。
Fluid Pyramid Integration(FPI)在多尺度级别和跨模式级别都集成了信息。
总的loss
L
L
L为,Eqn.6:
L
=
l
s
+
∑
i
=
1
5
l
c
i
L=l_{s}+\sum_{i=1}^{5} l_{c_{i}}
L=ls+i=1∑5lci
其中
l
s
l_s~
ls 是预测图和真值图之间的 cross-entropy loss 。
l
c
i
l_{c_{i}}
lci是第
i
i
i个特征增强模块的对比度损失contrast loss,contrast loss 在之前已经写过,cross-entropy loss定义为Eqn.7:
l
f
=
Y
log
P
+
(
1
−
Y
)
log
(
1
−
P
)
l_{f}=Y \log P+(1-Y) \log (1-P)
lf=YlogP+(1−Y)log(1−P)
其中
P
P
P和
Y
Y
Y分别代表预测图和真值图。
消融试验
不同的融合模型:
试验对比:
总结
这篇文章的关键在于FEM,通过不断的增强每一个VGG模块输出的特征,增强深度图的对比度,并且不断的叠加每一个level的特征,从而引导RGB图生成salient image。这个增强模块可以拿去用用试试。至于Fluid Pyramid Integration,是融合不同level的好的策略,对于既需要空间信息,又需要语义特征的情况应该很好用。