论文地址:link
代码地址:link
这篇论文是22年的CVPR收录的一篇关于伪装目标检测的文章,作者主要是用了一些通道注意力和Atrous卷积来实现边缘引导的伪装目标检测,模型并不复杂,看了两天的论文和代码,为了加深印象在这里总结一下。
摘要
伪装物体检测(COD)是一项有价值但具有挑战性的任务,它可以分割与周围环境完美融合的物体。现有的深度学习方法往往难以准确识别具有完整精细对象结构的伪装对象。为此,在本文中,我们提出了一种用于伪装目标检测的新型边界引导网络(BGNet)。我们的方法探索了有价值的和额外的对象相关的边缘语义,以指导COD的表示学习,这迫使模型生成突出对象结构的特征,从而促进精确边界定位的伪装对象检测。在三个具有挑战性的基准数据集上进行的大量实验表明,在四个广泛使用的评估指标下,我们的BGNet显著优于现有的18种最先进的方法。
1.介绍
伪装是自然界中的一种重要防御机制,它帮助某些物种隐藏在周围环境中,通过材料、着色或照明的方式进行隐藏,或伪装成其他东西,如模仿环境的外观、颜色或图案和破坏性着色,来保护自己免受捕食者的伤害[Price等人,2019]。这种机制也影响人类生活,如艺术、文化和设计(如伪装制服)[Stevens等人,2009]。近年来,从背景中识别伪装物体,即伪装物体检测(COD),引起了计算机视觉界越来越多的研究兴趣。它在促进不同领域的各种有价值的应用方面有着广阔的前景,从动物保护,例如物种发现[Rardo et al,2012]和动物监测,以及与视觉相关的领域,包括图像合成[Fan et al,2020a]、医学图像分析[Fan et al.,2020b]以及搜救。然而,由于伪装的性质,即候选对象与混沌背景之间的高度内在相似性,使得人类和机器很难发现伪装对象,因此COD是一项极具挑战性的任务。
伪装目标检测方法大致可分为三个类型:
1.设计有针对性的网络模块,以有效地探索COD的有区别的伪装对象特征,如C2FNet、UGTR。
2.将一些辅助任务纳入联合学习/多任务学习框架,如分类任务、边缘提取、显著对象检测和伪装对象排序等。这种方法可以从共享特征中挖掘出有价值的额外线索,从而显著增强COD的特征表示。
3.采用仿生方法,模仿出自然界中捕食者的行为过程或者人类的视觉心理模式来设计网络,如SINet、MirrorNet、PFNet。
上述方法的弊端:边缘干扰或者身体轮廓伪装,难以有效和完整地识别对象的结构和细节,使检测出来的对象具有粗略/不完整的边界。
MGL:Mutual graph learning model是第一个显式地利用边缘信息来提高COD性能的模型,但是MGL将边缘特征和对象特征一起编码到图卷积网络中,并通过图交互模块来增强特征表示。由此可见,MGL是一个复杂的模型,不可避免地增加了模型的复杂性,并承受着沉重的计算负担。
为此,本文提出了一种新的边界引导网络(BGNet),该网络明确地利用边缘语义来提高伪装目标检测的性能。首先,我们设计了一个简单而有效的边缘感知模块(EAM),该模块集成了低级的局部边缘信息和高级的全局位置信息,在明确的边界监督下探索与目标边界相关的边缘语义。然后,引入边缘引导特征模块(EFM),将边缘特征与各层伪装对象特征结合起来,指导COD的表示学习;EFM模块可以使网络更加关注对象的结构和细节。然后,从上到下逐步聚合多层融合特征,预测伪装目标。为了增强特征表示,我们构建了一个上下文聚合模块(CAM),该模块通过一系列的属性卷积来挖掘和聚合多尺度上下文语义,以产生具有更强和更有效表示的特征。利用设计良好的模块,BGNet能够预测具有精细目标结构和边界的伪装目标。值得注意的是,与MGL相比,我们设计了一个更简单但更有效的边缘提取模块来挖掘准确的对象边界语义,然后利用所提出的EFM和CAM来指导伪装对象的特征表示学习。此外,该方法实现了更精确的目标定位和更强的目标结构保留。
综上所述,我们的主要贡献如下:
• 对于COD任务,我们提出了一种新的边界引导网络,即BGNet,它挖掘和集成了与边界相关的边缘语义,以提高伪装目标检测的性能。
• 我们精心设计了边缘引导特征模块(EFM)和上下文聚合模块(CAM),以增强边界语义,探索有价值和强大的COD特征表示。
2.方法
2.1 整体结构
作为我们的骨干网络,从输入图像中提取多层次特征,即
f
i
(
i
=
1
,
2
,
.
.
.
.
,
5
)
{f_i}\left( {i = 1,2,....,5} \right)
fi(i=1,2,....,5)然后,应用边缘感知模块(EAM)在目标边界监督下,从包含局部边缘细节的低级特征
f
2
{f_2}
f2和包含全局位置信息
f
5
{f_5}
f5的高级特征中挖掘出与对象相关的边缘语义。利用以下多个边缘引导特征模块(EFM)将EAM的边缘线索与每一级的多级骨干特征)
f
2
{f_2}
f2-
f
5
{f_5}
f5相结合,指导特征学习,增强了边界表示。最后,采用多个上下文聚合模块(CAM),自上而下逐步聚合多层次融合特征,发现伪装对象。在测试中,我们选择最后一个CAM的预测作为最终结果。请注意,我们没有采用主干特征
f
1
{f_1}
f1,因为它太接近输入,有很多冗余信息和一个小的接受域。
2.2 Edge-aware Module-EAM
良好的边缘先验有利于分割和定位的目标检测。虽然低级特征包含了丰富的边缘细节,但它们也引入了许多非目标边缘。因此,需要高级语义或位置信息来促进对伪装对象相关边缘特征的探索。在本模块中,我们结合低级特征
f
2
{f_2}
f2和高级特征
f
5
{f_5}
f5来建模与对象相关的边缘信息,如图8所示。具体来说,首先使用两个1×1卷积层将
f
2
{f_2}
f2和
f
5
{f_5}
f5的通道分别更改为64(
f
2
′
f_2^{'}
f2′) 和256 (
f
5
′
f_5^{'}
f5′)。然后通过串联运算对特征
f
2
′
f_2^{'}
f2′和上采样的
f
5
′
f_5^{'}
f5′进行积分。最后,通过两个3×3卷积层和一个1×1卷积层,再加上Sigmoid函数,得到边缘特征
f
e
{f_e}
fe。EAM是一种简单而有效的提取特定边缘特征的模块。如图7所示,EAM很好地学习了与对象边界相关的边缘语义。
2.3 Edge-guidance Feature Module-EFM
边缘引导特征模块(EFM)旨在将与边界相关的边缘线索注入到表征学习中,以增强具有对象结构语义的特征表征。众所周知,不同的特征通道往往包含不同的语义。因此,为了实现良好的集成并获得强大的表征,我们引入了本地通道注意机制来探索跨通道交互并挖掘通道之间的关键线索。
如图4所示,给定输入特征
f
i
(
i
∈
{
2
,
3
,
.
.
.
.
.
,
5
}
)
{f_i}\left( {i \in \left\{ {2,3,.....,5} \right\}} \right)
fi(i∈{2,3,.....,5})和边缘特征
f
e
{f_e}
fe,我们首先在它们之间进行逐元素乘法,并进行额外的跳过连接和3×3卷积,得到初始融合特征
f
i
e
f_i^e
fie,可以表示为:
f
i
e
=
F
c
o
n
v
(
(
f
i
⊗
D
(
f
e
)
)
⊕
f
i
)
f_i^e = {F_{conv}}\left( {\left( {{f_i} \otimes D\left( {{f_e}} \right)} \right) \oplus {f_i}} \right)
fie=Fconv((fi⊗D(fe))⊕fi)
式中D为下采样,Fconv为3×3卷积。⊗是元素明智的乘法,⊕是元素明智的加法。为了增强特征表征,受[Wang et al .2020]的启发,我们引入局部关注来探索关键特征通道。具体来说,我们使用通道全球平均池化(GAP)聚合卷积特征
f
i
e
f_i^e
fie。然后通过1D卷积和Sigmoid函数得到相应的通道关注(权值)。不像完全连接的操作,捕获所有通道的依赖关系,但显示出很高的复杂性,我们探索本地跨通道交互,并以本地方式学习每个注意,例如,只考虑每个通道的k个邻居。之后,我们将通道注意力与输入特征
f
i
e
f_i^e
fie相乘,通过1×1卷积层减少通道,得到最终输出
f
i
a
f_i^a
fia,即
f
i
a
=
F
c
o
n
v
1
(
σ
(
F
1
D
k
(
G
A
P
(
f
i
e
)
)
)
⊕
f
i
e
)
f_i^a = {F_{conv1}}\left( {\sigma \left( {F_{1D}^k\left( {GAP\left( {f_i^e} \right)} \right)} \right) \oplus f_i^e} \right)
fia=Fconv1(σ(F1Dk(GAP(fie)))⊕fie)
式中
F
c
o
n
v
1
F_{conv1}
Fconv1为1×1卷积,
f
1
D
k
f_{1D}^{k}
f1Dk为核大小为k的1D卷积,σ为Sigmoid函数。核大小
k
=
∣
(
1
+
l
o
g
2
(
C
)
)
/
2
∣
o
d
d
k = {\left| {\left( {1 + lo{g_2}\left( C \right)} \right)/2} \right|_{odd}}
k=∣(1+log2(C))/2∣odd可以自适应地设置为奇数,其中
∣
∗
∣
o
d
d
{\left| * \right|_{odd}}
∣∗∣odd表示最近的奇数,C是
f
i
e
f_i^e
fie的通道。内核大小与通道尺寸成正比。显然,所提出的注意策略可以突出关键通道,抑制冗余通道或噪声,从而增强语义表征。
2.4 Context Aggregation Module
为了整合多层融合特征进行伪装目标预测,我们设计了一个上下文聚合模块(CAM)来挖掘上下文语义以增强目标检测,如图5所示。BBSNet中的全局上下文模块[Fan et al . 2020c]只利用多个独立的并行分支分别提取不同尺度的特征,而不考虑各个分支之间的语义相关性[Wu et al ., 2020],而CAM则考虑了跨尺度交互来增强特征表征。以
f
4
a
f_4^a
f4a和
f
5
a
f_5^a
f5a样,并将它们连接起来,然后进行1×1卷积层,得到初始聚合特征
f
m
f_m
fm。接下来,我们将fm平均分成四个特征图
(
f
m
1
,
f
m
2
,
f
m
3
,
f
m
4
)
(f_m^1,f_m^2,f_m^3,f_m^4)
(fm1,fm2,fm3,fm4)沿通道维,然后进行跨尺度交互学习,即通过一系列亚元卷积对相邻分支的特征进行积分提取多尺度上下文特征。可表述为:
f
m
j
′
=
F
c
o
n
v
n
j
(
f
m
j
−
1
′
⊕
f
m
j
⊕
f
m
j
+
1
)
,
j
=
{
1
,
2
,
3
,
4
}
^{f_m^{{j^{'}}} = F_{conv}^{{n_j}}\left( {f{{_m^{j - 1}}^{'}} \oplus f_m^j \oplus f_m^{j + 1}} \right),j = \left\{ {1,2,3,4} \right\}}
fmj′=Fconvnj(fmj−1′⊕fmj⊕fmj+1),j={1,2,3,4}
其中
F
c
o
n
v
n
j
F_{conv}^{{n}_{j}}
Fconvnj表示一个3 × 3的卷积,膨胀率为
n
j
n_j
nj。在我们的实验中,设
n
j
n_j
nj={1,2,3,4}.另外,当i = 1时,只有
f
m
1
f_m^1
fm1和
f
m
2
f_m^2
fm2;当i = 4时,只有
f
m
4
f_m^4
fm4和
f
m
3
′
f_m^{{3^{'}}}
fm3′。然后,我们将这四个多尺度特征在
f
m
j
′
f_m^{j^{'}}
fmj′中进行连接,然后进行1×1卷积、残差连接和3×3卷积,可以表示为:
f
i
c
=
F
c
o
n
v
(
F
c
o
n
v
1
(
[
f
m
j
′
]
)
⊕
f
m
)
f_i^c = {F_{conv}}\left( {{F_{conv1}}\left( {\left[ {f_m^{{j^{'}}}} \right]} \right) \oplus {f_m}} \right)
fic=Fconv(Fconv1([fmj′])⊕fm)
其中[*]为级联运算,
f
i
c
f_i^c
fic为CAM的输出。注意,对于i={2,3}时,前一个CAM的输出
f
i
+
1
c
f_{i+1}^c
fi+1c将与fci一起作为下一个CAM的输入,得到
f
i
c
f_i^c
fic。通过另一个1×1卷积来改变特征的通道数,我们可以得到预测
P
i
(
i
∈
{
2
,
3
,
4
}
)
{P_i}\left( {i \in \{ 2,3,4\} } \right)
Pi(i∈{2,3,4})的伪装物体。
2.5 Loss Function 损失函数
我们的模型有两种监督:伪装对象蒙版(Go)和伪装对象边缘(Ge)。对于掩码监督,我们采用加权二元交叉熵损失( L B C E w L_{BCE}^w LBCEw)和加权IOU损失( L I O U w L_{IOU}^w LIOUw) [Wei等,2020],它们更关注硬像素,而不是为所有像素分配相同的权重。对于边缘监督,我们采用骰子损失( L d i c e L_{dice} Ldice) [Xie et al ., 2020]来处理正负样本之间的强烈不平衡。注意到面具监督是在来自CAM的三个伪装对象预测( P i ( i ∈ { 2 , 3 , 4 } ) {P_i}\left( {i \in \{ 2,3,4\} } \right) Pi(i∈{2,3,4})上进行的。因此,总损耗定义为: L t o t a l = ∑ i = 2 4 ( L B C E w ( P i , G o ) + L I O U w ( P i , G o ) ) + λ L d i c e ( P e , G e ) {L_{total}} = \sum\nolimits_{i = 2}^4 {\left( {L_{BCE}^w\left( {{P_i},{G_o}} \right) + L_{IOU}^w\left( {{P_i},{G_o}} \right)} \right)} + \lambda {L_{dice}}\left( {{P_e},{G_e}} \right) Ltotal=∑i=24(LBCEw(Pi,Go)+LIOUw(Pi,Go))+λLdice(Pe,Ge),其中λ是权衡参数,在我们的实验中设置λ = 3, P e P_e Pe是对伪装对象边缘的预测。
3.实验
4.结论
在本文中,我们利用边缘先验来帮助恢复目标结构,提高伪装目标检测的性能。我们提出了一个简单而有效的边界引导网络(BGNet),该网络包含边缘感知模块、边缘引导特征模块和上下文聚合模块,用于探索与对象相关的边缘语义,以指导和增强COD的表示学习。通过采用边缘线索,我们的BGNet提供了精确的伪装对象预测,具有完整和精细的对象结构和边界。大量的实验表明,我们的方法在三个基准上优于现有的最先进的方法。