Distraction-Aware Shadow Detection

  • 基本信息
  • 值得学习的地方
  • Abstract
  • 1. Introduction
  • 2. Related Work
  • 3. Our Approach
    • 3.1. Distraction-aware Shadow (DS) Module
    • 3.2. Deriving Distraction Supervision
    • 3.3. Training
  • 4. Experiments
    • 4.1. Implementations Details
    • 4.2. Dataset and Evaluation Metrics
    • 4.3. Comparison with Shadow Detection Methods
    • 4.4. Comparison with Salient Object Detection Methods
    • 4.5. Effects of Distraction Semantics
    • 4.6. Ablation Study
    • 4.7. Distraction Supervision Generation Strategies
  • 5. Conclusion

基本信息

  • CVPR 2019
  • http://openaccess.thecvf.com/content_CVPR_2019/html/Zheng_Distraction-Aware_Shadow_Detection_CVPR_2019_paper.html
  • https://quanlzheng.github.io/projects/Distraction-aware-Shadow-Detection.html

值得学习的地方

  1. 针对以前方法检测错误的阴影,单独设置模块来监督,增强对容易检测错误的阴影的检测能力。
  2. 实验部分思路清晰完整,有对比其他先进方法的实验,证明本文方法有效性的实验,也有消融实验。
  3. 目标检测的最新成果在阴影检测任务上也有不错的效果,说不定可以借鉴到阴影检测中。
  4. 损失函数。

Abstract

阴影检测对于场景理解是一项重要且具有挑战性的任务。尽管最近基于深度学习的方法取得了可喜的成果。现有作品仍然难以解决阴影和非阴影区域的视觉外观相似(在我们的上下文中称为分散注意力)的模棱两可的情况。在本文中,我们通过在端到端框架中显式学习和集成视觉干扰区域的语义,提出了一种可感知干扰的阴影检测网络(DSDNet)。我们框架的核心是一个新颖的,独立的,可区分注意力分散的阴影(DS)模块,该模块使我们能够通过明确预测假阳性和假阴性来学习分散注意力的鉴别特征,以进行可靠的阴影检测。我们对三个公共阴影检测数据集SBU,UCF和ISTD进行了广泛的实验,以评估我们的方法。实验结果表明,我们的模型可以通过有效地抑制假阳性和假阴性的检测,从而提高阴影检测性能,从而获得最先进的结果

1. Introduction

阴影是一种常见的照明现象,是由于某些遮挡物将光遮挡而引起的,从而导致局部表面的颜色和强度发生变化。 因此,检测阴影可以使我们推断出例如光源位置[19、26],场景几何形状[16、25、15]和相机参数[37]。 另一方面,阴影会阻碍许多视觉任务,例如视觉跟踪[2],对象检测[23]和语义分割[6]。 因此,阴影检测已经被长期研究并且是重要的计算机视觉问题。

早期的阴影检测方法主要是基于颜色色度或照明不变假设的物理模型,并使用手工特征,例如照明提示[3,27,7],颜色[4,30]和其他[14,41]。 随着将深度学习应用于视觉任务的成功,最近的数据驱动模型[17、32、28、24、42]学会了使用CNN来检测阴影。 与传统方法相比,它们在性能上有显着提高。 主流方法主要采取两种策略,即扩大训练数据[21]或结合全局上下文信息[24、34、42]。

在自然图像中,图像中通常存在一些非阴影区域,它们看起来像阴影(例如,图1(a)的第一行),因此被错误地检测为阴影(例如,图1(bd)的上一行),并且 同样是阴影区域,它们看起来像非阴影图案(例如,图1(a)底行),因此被错误地视为非阴影(例如,图1(bd)底行)。 在本文中,我们将这些歧义区域称为干扰,并考虑两种类型的干扰:假阳性干扰(FPD)— 阴影状非阴影区域,以及假阴性干扰(FND)— 具有非阴影模式的阴影区域 。 最先进的方法[42,21]往往会错误地检测这些不明确的区域,部分原因是因为它们的模型平等地对待所有情况,因此需要大量数据来学习以解决此类具有挑战性的歧义。 因此,标记阴影检测数据的有限可用性[32]阻碍了这些模型的性能。

图1.注意力分散的阴影检测。 现有方法[42、21、12]错误地将输入图像中的非阴影区域检测为阴影((a)第一行中的红色箭头指向)为阴影((bd)第一行),并且 错误地将看起来像非阴影图案(由(a)底行中的绿色箭头指向)的阴影区域视为非阴影((bd)底行)。 在这两种情况下,我们的分散注意力模型都可以很好地检测阴影区域。 最好才彩色模式下查看。

我们注意到,人类通常可以非常准确地检测阴影,而不会受到干扰的影响。 我们的观察是,人类将首先认识到分散注意力的语义(例如形状,图案,物体),这是解决歧义的重要线索,然后将它们与自信的阴影区域进行比较以做出最终决定。 例如,人类将暗区域(图1(a)上一行中的红色箭头指向)视为非阴影,因为我们认识到该区域是纹理图案的一部分,并且与右上角的阴影异质。 另一方面,由于徽标的这一部分在强度,色度和方向上与阴影的其他部分相同,因此我们将较亮的区域(在图1(a)底行中由绿色箭头指向)标识为阴影 。 因此,我们假设对潜在的歧义区域的语义特征进行显式建模可以帮助提高阴影检测性能。

在本文中,我们提出以分散注意力的方式检测阴影。我们设计了一种分散注意力的阴影(DS)模块,以学习并将分散注意力明确地集成到阴影检测任务中。 DS模块将输入图像的视觉特征作为输入,并将它们与FND和FPD特征融合在一起,以输出可识别干扰的,具有区别性的特征以进行阴影检测。它首先学习提取图像中视觉歧义引起的FND和FPD特征,然后根据两种干扰类型的特征,使用两种不同的策略来整合干扰特征。具体而言,FND经常具有与一般阴影非常不同的可变视觉外观,因此很难被检测到。因此,我们使用一种关注机制来选择潜在FN区域周围的特征,并将其添加到输入图像特征中以获得FN增强特征,从而使模型能够更好地区分FN。另一方面,FPD通常在局部上类似于一般的阴影,并且需要更广泛的上下文才能捕获其特征。因此,我们应用一个Conv块来获得具有较大接收场的FP感知特征,然后从FN增强特征中减去这些特征,以使模型对FP的脆弱性降低。将DS模块插入多尺度框架,以提取不同尺度的可感知干扰的阴影特征,以预测阴影检测图。在三个公共阴影检测数据集(SBU,UCF和ISTD)上的实验结果表明,我们的方法优于现有方法并获得了最新技术成果。

本文的主要贡献如下。 首先,我们将注意力分散的概念引入阴影检测问题,从而可以更准确地检测阴影。 其次,我们提出了一种可分散注意力的阴影模块,以将分散注意力的语义集成到我们的端到端多尺度阴影检测框架中。 我们通过实验证明了我们的模型实现了最新的阴影检测性能。

2. Related Work

在本节中,我们将重点放在单一图像阴影检测方法上。

传统方法。早期的工作基于光照不变的假设[4,3]建立了物理模型。这样的假设仅适用于高质量且约束良好的图像,而对复杂的用户照片则表现不佳。后来,基于各种手工制作的特征,为用户的照片提出了更多作品[14、20、41]。首先研究了边缘和像素信息。例如,Zhu等[41]基于纹理,梯度和强度提示训练了一个分类器。黄等 [14]通过馈送SVM [9]中的边缘特征训练了阴影检测器。随后,代替单独使用像素级提示,而是探索区域级提示。例如,郭等 [7]计算了分割区域的照明特征,然后使用各个区域信息和成对关系建立了基于图的分类器。维森特等 [33]训练了阴影和非阴影区域的分类器,并应用MRF通过利用成对区域上下文来增强性能。以上所有方法都是基于手工制作的功能,这些功能在复杂场景中并不能充分区分。

基于深度学习的方法。 最近,由于深度学习在计算机视觉任务中的成功[8,29,22],基于深度学习的阴影检测方法变得非常流行。 最初,研究人员主要将CNN视为强大的特征提取器,并通过强大的深层功能显着提高了性能。 Khan等 [26]首先将CNN应用于阴影检测。 他们利用7层CNN从超像素中提取特征,然后将特征输入CRF模型以平滑检测结果。 沉等[31]首先通过结构化的CNN提取阴影边缘,然后解决阴影恢复作为优化问题。 后来,由于全卷积网络(FCN)的出现,提出了端到端CNN模型[22]。 例如,Vicente等 [32]提出了一种语义感知的堆叠CNN模型,用于先提取语义阴影,然后通过基于补丁的CNN细化输出。

最近,正在探索上下文信息。在[24,34]中,由于对抗训练策略使生成器能够模拟整个数据集的分布,因此采用了生成对抗网络(GAN)[5]来捕获上下文信息。特别是,Nguyen等[24]提出了一个scGAN模型,其中将灵敏度参数引入发生器以控制阴影检测器的灵敏度。 Wang等 [34]提出了一个堆叠的cGAN模型来共同学习阴影检测和去除。 Le等 [21]通过对抗训练策略通过减少阴影区域来生成具有挑战性的样本,并将生成的样本与原始图像一起用于训练检测器。与上述上下文获取方法不同,Hu等人 [12]提出以定向感知的方式探索空间环境,并采用了基于RNN的模块来学习四个方向的空间环境。朱等 [42]提出了一个双向递归模型,将全局上下文和局部上下文结合起来用于阴影检测。 Wang等 [36]提出用密集连接聚合多尺度上下文。但是,这些基于上下文的方法仍然会在背景复杂的图像上失败,因为它们使用上下文来帮助最小化地面真实情况和预测之间的差异,这些差异往往会满足最常见的情况,而忽略了具有挑战性的情况。在本文中,我们考虑了干扰因素的语义,并提出了一种干扰因素感知模型,该模型对于具有复杂背景的图像的阴影检测具有鲁棒性。

分心计算机视觉任务。 在一些视觉任务中,例如语义分割[13],显着性检测[1,38]和视觉跟踪[43]中已经探索了干扰的线索。 现有工作采用干扰线索来滤除干扰输入区域[38]或抑制负面的高级表示[13、1、43]。 与上述方法不同,我们将阴影干扰分为FND和FPD两种类型,并设计特定的体系结构以有效地整合两种干扰语义。 据我们所知,这是在阴影检测中引入干扰语义的第一项工作。

3. Our Approach

图2显示了提出的DSDNet的体系结构。网络建立在DSS上[11]。与[42]中一样,我们选择ResNeXt-101 [39]作为我们的骨干网络。 DSDNet将图像作为输入,并以端到端的方式预测阴影贴图。首先,将输入图像馈入骨干网络以提取不同比例的骨干特征。类似于[11,40],我们使用骨干网每个阶段的最后卷积层的输出,即conv1,res2c,res3b3,res4b2和res5c作为骨干网特征。在每个尺度上,编码器都将主干特征转换为图像特征。然后,每个DS模块都将图像特征作为输入并生成DS特征,这些特征捕获了干扰语义。之后,通过双线性插值对DS特征进行上采样,然后通过密集连接从上到下进行合并,最后发送到卷积层进行融合,如[11]。具体来说,让 F k F_k Fk​为比例 k k k的上采样特征。可以通过以下方式获得当前比例下的合并要素: F k m = C o n v ( C o n c a t ( F k , . . . , F 1 ) ) F_k^m = Conv(Concat(F_k,...,F_1)) Fkm​=Conv(Concat(Fk​,...,F1​))。最后,将所有阴影预测图与1x1卷积层融合,然后再通过Sigmoid激活函数输出软二进制阴影图作为最终输出。

图2.网络架构。 DSDNet将图像作为输入,并以端到端的方式输出阴影图。 首先,将主干应用于图像以获得不同比例的特征。 在每个尺度上,将骨干特征发送到编码器中以获取图像特征。 之后,将应用DS模块来生成DS功能。 在每个尺度中,我们将其DS特征与较小尺度流中的上采样DS特征连接并融合在一起,以预测一组阴影得分图。 最后,我们融合所有阴影得分图以生成最终的预测图。

3.1. Distraction-aware Shadow (DS) Module

如图3所示,DS模块的输入是通过任何CNN提取的图像特征 f i m ∈ R H × W × 32 f_{im}∈R^{H×W×32} fim​∈RH×W×32,输出是DS特征 f d s ∈ R H × W × 32 f_{ds}∈R^{H×W×32} fds​∈RH×W×32。 DS模块旨在显式地学习潜在干扰区域的语义特征,并将干扰特征与输入图像特征融合,以产生可用于阴影检测的干扰感知特征。 它主要由FN子模块和FP子模块以及一些组合不同功能的操作(红线)组成。 FN子模块和FP子模块将在下面详细讨论。

图3. DS模块的体系结构。 图像特征( f i m f_{im} fim​)通过FN子模块以生成FN掩模的图像特征( f f n d ‘ f_{fnd}^` ffnd‘​),将其与 f i m f_{im} fim​相加以生成FN增强特征 f i m ‘ f_{im}^` fim‘​。 FP子模块将 f i m f_{im} fim​和 f i m ‘ f_{im}^` fim‘​作为输入,并输出FP感知图像特征 f f p d ‘ f_{fpd}^` ffpd‘​,将其从 f i m ‘ f_{im}^` fim‘​中减去以获得干扰感知特征 f d s f_{ds} fds​

FN子模块。它旨在学习FN特征 f f n d ∈ R H × W × 32 f_{fnd} \in R^{H×W×32} ffnd​∈RH×W×32和FN-masked特征 f f n d ‘ ∈ R H × W × 32 f_{fnd}^` \in R^{H×W×32} ffnd‘​∈RH×W×32,这些特征用于增强输入图像特征 f i m f_{im} fim​。它首先在图像特征上使用特征提取器来提取FN特征。为了强制FN特征捕获识别潜在FN区域所必需的语义,我们通过估计指示输入图像上可能FN位置的软二进制映射,将FN特征用于FN预测。然后将FN特征与图像特征连接起来,并输入到Attention块中,以生成软蒙版 f m s k ∈ [ 0 , 1 ] H × W f_{msk}∈[0,1]^{H×W} fmsk​∈[0,1]H×W。然后,通过将 f i m f_{im} fim​与的 f m s k f_{msk} fmsk​(沿特征通道)逐元素相乘获得蒙版图像表示。为了增强FN区域上的特征激活,将 f f n d ‘ f_{fnd}^` ffnd‘​添加到 f i m f_{im} fim​中以生成FN增强的图像特征。注意机制旨在使网络能够快速关注并增强可能的FN区域周围的功能。这将有助于网络更好地区分FN区域,这些区域的视觉外观变化很大,并且与一般阴影大不相同。

FP子模块。与FN子模块类似,FP子模块用于学习FP特征 f f p d ∈ R H × W × 32 f_{fpd} \in R^{H×W×32} ffpd​∈RH×W×32特征和FP感知特征 f f p d ′ ∈ R H × W × 32 f_{fpd}^{'} \in R^{H×W×32} ffpd′​∈RH×W×32,以进一步增强FN特征。它还采用了与FN子模块具有相同架构的特征提取器来提取 f f p d f_{fpd} ffpd​。为了强制FP功能捕获潜在FP区域的有用语义,我们以与FN子模块相同的方式预测了假阳性的软二进制映射。然后,我们将 f f p d f_{fpd} ffpd​和 f i m ‘ f_{im}^` fim‘​堆叠,并将其馈入Conv块以生成FP感知图像特征,该特征捕获假阳性的特征。由于FP区域与真实阴影的局部相似性,我们使用由几个卷积层组成的Conv块捕获较大的上下文信息,这对于区分FP区域和真实阴影非常有用。最后,我们减去以消除FP特征对检测的负面影响。这将使网络不太可能受到FP干扰。

3.2. Deriving Distraction Supervision

要训​​练我们的网络,我们需要监督来自DS模块的FP和FN预测。不幸的是,注释错误肯定和错误否定既昂贵又主观。因此,我们建议根据现有阴影检测模型的预测与其地面实况之间的差异来获取近似FN和FP地面实况。由于单个模型很难产生所有代表性干扰,因此我们将多种现有方法的预测结合起来以达到目的。特别是,我们选择一个基线模型和几个最新模型([12、42、21])来生成预测。对于每个图像,我们首先计算每个模型的预测与对应的地面真实阴影图之间的差异图。然后,我们将所有差异图组合在一起以形成最终差异图,在该图中最终将错误肯定和错误否定视为基本事实。我们发现,这种近似假阳性和假阴性的方法在我们的模型中效果很好,这将在第4.5节中进行演示。

3.3. Training

我们训练我们的网络以共同优化所有比例下的阴影,FN和FP图的预测,以及最终的阴影图以及最终的FN和FP图(其中通过融合不同大小的FN/FP获得最终的FN/FP图) 通过最小化目标来对DS模块进行不同比例的掩模预测):

L = α ∑ i L s h a d o w i + β ∑ i L f n i + λ ∑ i L f p i + α L s h a d o w F + β L f n F + λ L f p F L = \alpha \sum_i L_{shadow}^i + \beta \sum_i L_{fn}^i + \lambda \sum_i L_{fp}^i + \alpha L_{shadow}^F + \beta L_{fn}^F + \lambda L_{fp}^F L=αi∑​Lshadowi​+βi∑​Lfni​+λi∑​Lfpi​+αLshadowF​+βLfnF​+λLfpF​

L s h a d o w i L_{shadow}^i Lshadowi​、 L f n i L_{fn}^i Lfni​、 L f p i L_{fp}^i Lfpi​分别为第 i i i个大小的阴影、FN和FP的预测。 L s h a d o w F L_{shadow}^F LshadowF​、 L f n F L_{fn}^F LfnF​、 L f p F L_{fp}^F LfpF​是最终的阴影、FN和FP的预测图。

我们将第 j j j个像素的阴影概率表示为 p j p_j pj​,将其地面真实性表示为 y j y_j yj​(对于阴影像素, y j y_j yj​ = 1,对于非阴影像素, y j y_j yj​ = 0)。 我们针对尺度 i i i的阴影损失公式为,即 L s h a d o w i = l 1 + l 2 L_{shadow}^i = l_1 + l_2 Lshadowi​=l1​+l2​。 l 1 l_1 l1​是加权的交叉熵损失,具有类别重新平衡权重,以解决以下事实:图像中的通常非阴影像素比阴影像素要多得多:

l 1 = ∑ j ( − N n N n + N p y j log ⁡ ( p j ) − N p N n + N p ( 1 − y j ) log ⁡ ( 1 − p j ) ) (2) l_1 = \sum_j (- \frac{N_n}{N_n+N_p} y_j \log(p_j) - \frac{N_p}{N_n+N_p}(1- y_j) \log(1 - p_j)) \tag 2 l1​=j∑​(−Nn​+Np​Nn​​yj​log(pj​)−Nn​+Np​Np​​(1−yj​)log(1−pj​))(2)

其中 j j j索引图像中的所有像素。 N n N_n Nn​和 N p N_p Np​分别表示FN和FP像素的数量。 l 2 l_2 l2​是可识别干扰的交叉熵损失(DS损失),它会给干扰像素带来更多损失,从而迫使网络将注意力更多地集中在易于误检测的区域上。

l 2 = ∑ j ( − N n N n + N p y j f n d y j log ⁡ ( p j ) − N p N n + N p y j f p d ( 1 − y j ) log ⁡ ( 1 − p j ) ) (3) l_2 = \sum_j (- \frac{N_n}{N_n+N_p} y_j^{fnd} y_j \log(p_j) - \frac{N_p}{N_n+N_p} y_j^{fpd} (1- y_j) \log(1 - p_j)) \tag 3 l2​=j∑​(−Nn​+Np​Nn​​yjfnd​yj​log(pj​)−Nn​+Np​Np​​yjfpd​(1−yj​)log(1−pj​))(3)

其中 y j f n d y_j^{fnd} yjfnd​是FN像素的基本事实,而 y j f p d y_j^{fpd} yjfpd​是FP像素的基本事实。 对于 L f n i L_{fn}^i Lfni​, L f p i L_{fp}^i Lfpi​, L f n F L_{fn}^F LfnF​和 L f p F L_{fp}^F LfpF​,我们使用与等式2中相同的加权交叉熵损失。 L s h a d o w F L_{shadow}^F LshadowF​与 L s h a d o w i L_{shadow}^i Lshadowi​相同。

4. Experiments

在本节中,我们首先介绍实现细节(第4.1节),评估数据集和评估指标(第4.2节)。 然后,我们将结果与现有的阴影检测方法(第4.3节)和显着物体检测方法(第4.4节)进行定量和定性比较。 我们进一步分析了引入干扰语义的影响(第4.5节),并进行了彻底的消融研究以分析所提出的模型(第4.6节)。 最后,我们分析了产生干扰监管的各种策略的效果(第4.7节)。

4.1. Implementations Details

网络详细信息。我们的模型是在PyTorch中实现的。如上所述,ResNext-101被选作骨干网络,以便与最新工作进行公平比较[42]。除非另有说明,否则在我们的网络中使用的卷积层都紧跟着批处理归一化层和ReLu激活函数。对于图2中的编码器,它由2个卷积层组成,每个卷积层具有32个大小为3×3的内核。对于FN子模块和FP子模块,特征提取器都有2个卷积层,有32个大小为3×3的核。FN子模块中的Attention块有一个卷积层,其中有64个大小为3×3的内核,接着是Sigmoid激活函数。对于FP子模块中的Conv块,它由1个残差块组成(其中3个卷积层各有64个卷积核,内核大小分别为1×1,3×3和1×1),然后是另一个3个卷积层(第一层有64个卷积核,其他两层有32个卷积核),内核大小分别为1×1,3×3和1×1。

训练和推理细节。 ResNext-101在ImageNet上进行了预训练,其他参数被随机初始化。 我们使用SGD优化器优化参数,瞬时矩 m o m e n t e n t u m = 0.9 momententum = 0.9 momententum=0.9,权重衰减 w e i g h t _ d e c a y = 5 × 1 0 − 4 weight\_decay= 5×10^{−4} weight_decay=5×10−4,批处理大小为10。我们将初始学习率设置为 5 × 1 0 − 3 5×10^{−3} 5×10−3,并通过参数为0.9多项式策略将其降低学习率。 通过随机水平翻转来增强训练数据,并将图像大小调整为320×320。我们对模型进行了5,000次迭代训练。 对于损耗权重,我们将α设置为1,将β和λ设置为4。为进行推断,我们将输入图像的大小调整为320×320,并将其输入模型以预测输出。 最后,我们将CRF [18]作为后期处理来平滑输出。

4.2. Dataset and Evaluation Metrics

数据集。 我们使用三个公共数据集UCF [41],SBU [32]和ISTD [32]来评估我们的方法。 UCF数据集包含245张图像,其中110张用于评估。 SBU数据集是涵盖一般场景的最大阴影数据集,包含4,089个训练图像和638个测试图像。 ISTD是最近提出的用于阴影检测和去除的数据集。 它包含1,870个阴影图像,阴影贴图和无阴影图像的三元组,其中有540个用于测试。 我们仅将其图像和阴影贴图用于阴影检测评估。 所有测试图像均提供逐像素注释。 请注意,对于SBU和UCF,我们在SBU训练数据集上训练模型,并在SBU和UCF上进行测试,分别为[42,12,21]。 ISTD仅包含投射阴影图像(投射阴影的对象不可见),与SBU中的图像不同。 因此,我们在ISTD训练数据集上重新训练所有模型,并在测试数据集上评估它们的性能。

评估指标。 我们采用平衡误差率(BER)[33]定量评估结果,如下所示:

B E R = 1 − 0.5 ∗ ( N t p N p + N t n N n ) (4) BER = 1 - 0.5*(\frac{N_{tp}}{N_p} + \frac{N_{tn}} {N_n}) \tag 4 BER=1−0.5∗(Np​Ntp​​+Nn​Ntn​​)(4)

其中 N t p N_{tp} Ntp​, N t n N_{tn} Ntn​, N n N_n Nn​和 N p N_p Np​分别表示真阳性,真阴性,阴影像素和非阴影像素的数量。 BER可有效评估类不平衡结果,因此被广泛用于阴影评估。 分数越低表示性能越好。

表1.阴影定量检测结果。 我们将我们的方法与最新的阴影检测方法,BDRAR [42],ADNet [21],DSC [12],ST-CGAN [34],scGAN [24]和Stacked-CNN [32]以及显着性进行比较 物体检测方法RAS [1]和SRM [35]。 较低的值表示较好的性能。 最佳结果以粗体突出显示

4.3. Comparison with Shadow Detection Methods

我们将我们的方法与最新的阴影检测方法进行比较:ADNet [21],BDRAR [42],DSC [12],ST-CGAN [34],scGAN [24]和stackedCNN [32]。为了公平地比较,我们使用作者在SBU和UCF上的结果(DSC和BDRAR除外,因为它们在与我们不同的测试划分上提供了他们的结果;因此我们在UCF上运行他们提供的模型来获得结果)。对于ISTD,我们使用提供的代码在ISTD训练数据集上对DSC和BDRAR进行重新训练。不幸的是,由于我们无法获得其他方法的结果或代码,因此我们采用了ST-CGAN [34]中报告的评估值。 (对于ADNet,由于我们无法获得培训代码或评估值。我们无法报告任何结果。)表1显示了定量比较结果。它表明我们的方法在所有三个测试数据集上均具有最佳的BER分数。与性能最佳的现有方法BDRAR相比,我们的方法在SBU和UCF上的BER得分分别降低了5.22%和2.82%。这表明我们的模型具有良好的泛化能力。此外,我们的模型在阴影和非阴影像素上的BER得分更接近。一个可能的原因是,当我们明确考虑两种类型的干扰时,它迫使网络在阴影区域和非阴影区域之间均匀地平衡其性能。

我们进一步显示了一些视觉结果,以定性比较我们的方法和现有方法,如图4所示。从前三行可以看到,与其他方法相比,我们的方法具有更好的区分真实阴影和阴影的能力。具有阴影外观的非阴影(潜在的误报)。例如,在第一行中,DSDNet可以准确地检测阴影区域,而某些现有方法(例如ADNet)往往会将网球运动员的黑色短裤误检测为阴影。在第三行中,现有方法(例如ADNet和BDRAR)将黑色铁制品误检测为阴影。最后三行显示在某些具有挑战性的情况下的阴影检测结果,其中真实阴影在视觉上与其上下文相似(潜在的假阴性)。我们可以看到我们的方法仍然可以成功消除这些情况的歧义,而其他方法则缺少一些真实的阴影区域。例如,在第四行中,除BDRAR之外,所有现有方法都将阴影区域下白色条带的某些部分检测为非阴影(假阴性),而BDRAR无法检测到阴影区域之间的非阴影区域。两条腿。相反,我们的方法可以正确预测它们。

最后,我们想研究由我们的DS模块产生的FP和FN预测,如图5所示。这些结果可以阐明如何明确整合干扰语义可以帮助阴影检测,尤其是在某些具有挑战性的情况下。例如,在第一行中,我们的FP预测器将道路上支柱的黑色部分估计为假阳性,这有助于我们的模型从阴影中正确地区分该区域。在第二行中,我们的FN预测值在与周围建筑物高度相似的阴影区域上激活。这可以帮助我们的模型解决阴影区域内可能存在的歧义。

图4.与其他阴影检测方法相比,我们的方法的定性结果。

4.4. Comparison with Salient Object Detection Methods

显着物体检测方法将图像作为输入,并输出密集的标签预测图。 这样的模型可以在阴影检测数据集上重新训练,并用于阴影检测。 为了进行比较,我们在与我们相同的数据集上重新训练和测试了两个最新的显着物体检测模型[1,35]。 我们使用作者提供的代码重新训练这些模型,并调整参数以获得最佳性能。 表1的最后两行报告结果。 我们看到,显着的物体检测模型可以在阴影检测方面给出令人鼓舞的结果,并且在某些情况下,它们的性能甚至比某些阴影检测方法还要好[34、32、24]。 但是,我们的方法仍然优于它们。

4.5. Effects of Distraction Semantics

为了探索在模型中明确考虑分散注意力语义的有效性,我们将完整模型与其几个变体进行了比较:(1)没有DS模块或DS损失:我们删除了公式3中的DS模块和DS损失。 这可以被视为简单的基准。(2)仅带DS模块。 (3)只有DS损失。 结果记录在表2中。没有DS模块或没有分散注意力的损失,我们的模型性能最差。 添加DS模块或增加DS损耗将大大提高性能。 当同时使用DS模块和DS损耗时,我们的模型(完整模型)可实现最佳性能。 这表明明确考虑干扰因素对我们的性能至关重要,并且DS模块和DS损耗在我们的模型中都是必要的。

表2。消融研究结果。 BER分数在三个数据集上报告。 最佳结果以粗体突出显示。

4.6. Ablation Study

为了评估拟议的分散注意力阴影模块的设计选择,我们将DS模块与其消融版本进行了比较:

  • 简单融合:我们用简单融合方法替换DS模块,在该方法中,我们将FN特征添加到图像特征中,并从生成的特征中减去FP特征,以获得DS特征。
  • 两个Attention:我们将FP子模块的架构设置为与FN子模块的架构相同。
  • 两个convs:我们将FN子模块的结构设置为与FP子模块的结构相同。
  • 不带FN子模块:我们卸下FN子模块,仅保留FP子模块。
  • 不带FP子模块:我们卸下FP子模块,仅保留FN子模块。

在表2(第4至第8行)中,我们可以看到简单融合方法的性能最差,这表明带有简单加法的直接融合在合并干扰语义方面并不有效。 当仅考虑一种干扰类型(第4-5行)时,其性能比我们的完整模型差,这表明必须同时考虑两种干扰类型。 当FN和FP子模块(第7-8行)使用相同的体系结构时,性能也比我们的完整模型差。 这意味着开发不同的融合策略以适应两种干扰类型的独特特征非常重要。

4.7. Distraction Supervision Generation Strategies

我们将进一步探讨产生分散注意力监督的不同策略的效果,在3.2节中讨论:

  • 无监督:我们取消了分散注意力的监督,仅使用阴影图作为监督(公式2和3)来学习我们的模型。
  • 单一模型:我们仅选择基线模型[10]来计算分散注意力。
  • 我们的模型:模型训练后,我们将训练后的模型产生的干扰作为监督来重新训练模型。
  • 多个模型:我们将完整模型中使用的多个现有模型的输出合并在一起。

表3显示了三个数据集SBU,UCF和ISTD的结果。 与不使用任何干扰监控或仅使用单个模型的情况相比,使用多个模型的性能更好。 如果不使用任何干扰监控信号,模型将很难学习有用的干扰感知功能。 我们组合多个模型的策略可以减轻单个模型的偏差,从而使我们能够为模型生成更可靠的注意力分散监督。 请注意,使用我们训练有素的模型来产生干扰力的监督效果最差。 由于训练有素的模型在处理FP和FN方面表现出色,因此由于训练有素的模型产生的干扰会变得非常少见,因此迫使我们的模型专注于少数几个罕见的案例会损害其在其他常见案例上的表现,从而导致整体性能的下降。

表3. 干扰监督的不同策略的结果。 BER分数在三个数据集上报告。 最佳结果以粗体突出显示。

5. Conclusion

在本文中,我们提出了一种可感知干扰的阴影检测网络(DSDNet)进行阴影检测。我们的网络通过提议的“可感知分心的阴影”(DS)模块明确考虑了分心语义。 DS模块通过精心设计的融合策略,通过明确学习的干扰特征来增强输入图像特征,以产生可感知干扰的特征,以进行可靠的阴影检测。实验结果表明,我们的模型可以很好地解决阴影检测中的难题和歧义情况,并在SBU,UCF和ISTD数据集上产生了最新的性能。
尽管我们的方法可以处理大多数具有挑战性的情况,但对于某些弱阴影图像(阴影的亮度与背景非常相似)或某些背景非常暗的图像(阴影几乎混入背景),它可能会失败。在图6中可以找到解决此问题的方法。可以用更多的弱阴影样本或深色背景样本来扩充数据集。作为未来的工作,我们计划研究各种类型的极端阴影问题。

图6.失败案例。 对于某些弱阴影图像(顶部)或某些背景非常暗的图像(底部),我们的方法可能会失败。

Distraction-Aware Shadow Detection相关推荐

  1. 快速去阴影--Fast Shadow Detection from a Single Image Using a Patched Convolutional Neural Network

    Fast Shadow Detection from a Single Image Using a Patched Convolutional Neural Network https://arxiv ...

  2. RSE2021/云检测:Automatic cloud and cloud shadow detection in tropical areas用于PlanetScope热带地区自动云和云阴影检测

    RSE2021/云检测:Automatic cloud and cloud shadow detection in tropical areas for PlanetScope satellite i ...

  3. Direction-aware Spatial Context Features for Shadow Detection and Removal

    Direction-aware Spatial Context Features for Shadow Detection and Removal 基本信息 值得借鉴的地方 摘要 1 INTRODUC ...

  4. ISPRS2018/云检测:Cloud/shadow detection based on spectral indices for multi/hyp基于光谱指数的多/高光谱光学遥感成像仪云/影检测

    Cloud/shadow detection based on spectral indices for multi/hyperspectral optical remote sensing imag ...

  5. Shadow Detection

    课题背景 阴影检测向来是计算机视觉中基础且富有挑战性的问题--对于一张输入图像,我们通过生成二进制图像来标记阴影区域,阴影区域的检测为进一步获取图像中的光照情况.物体的形状与位置,以及摄像机的参数提供 ...

  6. [论文解读 2021-TIP] Revisiting Shadow Detection: A New Benchmark Dataset for Complex World

    该论文聚焦于影子的分割(segmentation),创新点在于提出新的数据集和一种局部特征增强方法. 创新点1:自建的数据集CUHK-Shadow: 1. 数据集的特点 10500张带标签的图片:更复 ...

  7. CVPR 2018 paper ---object detection

    转载:https://blog.csdn.net/qq_34848537/article/details/82968217 参考链接 CVPR 2018 论文解读集锦(9月27日更新) CVPR 20 ...

  8. 背景建模与前景检测2(Background Generation And Foreground Detection Phase 2)

    背景建模与前景检测2(Background Generation And Foreground Detection Phase 2) 作者:王先荣 本文尝试对<学习OpenCV>中推荐的论 ...

  9. object detection

    原地址:https://handong1587.github.io/deep_learning/2015/10/09/object-detection.html Object Detection Pu ...

最新文章

  1. iOS scrollToItemAtIndexPath 无效的解决方案
  2. Xstudio+Bugzilla
  3. 013 Android锁机病毒分析
  4. springboot + rabbitmq 整合示例
  5. android 同步执行方法吗,Android异步方法以同步方式实现
  6. VMware虚拟机与宿主无法复制的解决办法
  7. java犯的小错误_[Java教程]十个JavaScript中易犯的小错误,你中了几枪?
  8. 相学java_从这两套题,重新认识JS的this、作用域、闭包、对象
  9. 信数金服:决策模型的迭代
  10. PAT L3-015 ---- 球队“食物链”(DFS)
  11. Linux IO 测试工具 fio命令
  12. Windows 2008 R2 安装 Windows phone 7 开发环境
  13. 剑指Offer的学习笔记(C#篇)-- 二叉树的下一个节点(好理解版本)
  14. 无人机未来有一大波创富平台
  15. Vue + Echarts 实现中国地图的绘制
  16. 网管服务器和网管终端,网管员须知:二、三、四、七层交换技术区别
  17. m115b linux 驱动下载,富士施乐m115b驱动
  18. [leetcode题解] 第995题Minimum Number of K Consecutive Bit Flips
  19. 隐含马尔可夫 隐含状态_隐含可读性
  20. 【软件测试之项目实战】

热门文章

  1. 解决在IDEA里Git特别慢的问题
  2. Selenium3 Python WebDriver API源码探析(10):动作链(ActionChains):鼠标事件和键盘事件
  3. 目标跟踪(7)使用 OpenCV 进行简单的对象跟踪
  4. 如何实现ADSL宽带用户开机自动拨号与定时拨号
  5. Window Media Player 播放器
  6. 数学与自然科学的关系
  7. Docker容器数据卷详解
  8. 计算机毕业设计ssm宠物领养平台16e63系统+程序+源码+lw+远程部署
  9. android如果手机屏锁忘记了怎么办,手机屏幕锁忘了怎么办
  10. WIN10+VS2015+PCL1.8.1的配置