Learning to Measure Changes: Fully Convolutional Siamese Metric Networks for Scene Change Detection

论文

论文题目:Learning to Measure Changes: Fully Convolutional Siamese Metric Networks for Scene Change Detection

收录于:IEEE TRANSACTIONS ON MULTIMEDIA(TMM 2018)

论文地址:https://arxiv.org/abs/1810.0911

项目地址:https://github.com/gmayday1997/ChangeDet

Abstract

  • 依据通过直接比较一对特征之间的不同来检测变化的直观想法,论文提出了一种全卷积孪生度量网络 (fully Convolutional siamese metric Network,CosimNet),能通过自定义隐式度量来度量变化。
  • 为学习更多判别指标,我们利用对比损失(contrastive loss )来减少不变特征对之间的距离,并扩大变化特征对之间的距离。
  • 提出了阈值对比损失(Thresholded Contrastive Loss,TCL),并采用了一种更宽容的策略来惩罚噪声变化。
  • 在CDnet,PCD2015和VL-CMU-CD三个数据集上进行实验。

Introduction

目前场景变化检测算法大多基于全卷积网络(FCN)。这些算法并不直观,因为基于FCN的模型是通过学习边际最大化的决策边界来检测变化,而不是直接测量异同或变化。

本文提出一种新的方法,直接比较测量不同时间的成对图像之间的不相似性或变化来检测变化,而不是简单的将变化检测当作分类。关键在于将变化视为不同,为实现这一点,需提出一个问题:如何定义测量变化的一同函数或度量?

从变化角度来看,它包括有语义变化和噪声变化。变化检测的目的是识别不同时间的语义变化。其关键挑战在于由各种因素(照明变化、阴影、相机视角差异等)造成的噪声变化,两者容易混淆在一起。直观看来,如果想要探究语义变化而抑制噪声变化,一种可行的方法是学习更具有判别性的度量指标来度量变化,并赋予语义变化较高的度量值,噪声变化或不变化较低的度量值。

解决方案是定制一个鉴别性的度量,以区分语义变化和噪声变化。然而,要明确地获得这样一个度量函数是很困难的。最近,深度度量学习已经成为计算机视觉任务中学习更多判别性特征的关键因素。其核心思想是鼓励减少类内差异,扩大类间差异。这种学习策略提供了一个可行的解决方案;也就是说,可以通过使用深度神经网络作为普遍的近似值来学习这样一个隐性指标。具体来说,我们将跨图像对同一位置的变化区域定义为变化对,在深度度量学习中称为正对,跨图像对同一位置的不变区域称为不变对,也被称为负对。从深度度量学习的角度来看,我们试图在不变对的距离尽可能小,而变化对的距离尽可能大的前提下,学习一个隐性度量

论文提出了一个新的变化检测框架,名为全卷积孪生度量网络(fully Convolutional siamese metric Network,CosimNet)。我们利用了直接比较一对图像的直观想法,而不是简单的分类,通过定制一个判别性的隐性指标。它包含两部分:从全卷积连体网络(FCSN)中提取的深度特征和预定义的距离度量。所有的程序都可以被看作是直接在原始图像上学习一个异同函数。我们的方法对许多具有挑战性的条件,如光照变化和视点差异,具有很强的稳定性。

Contribution

主要贡献如下:

  • (1)提出了一种基于深度度量学习的场景变化检测方法(CosimNet),该方法能够直接使用学习到的隐度量度量变化,将变化检测任务转化为隐度量学习问题。据我们所知,这是第一次提出一个统一的体系结构,使用端到端深度度量学习方法来解决许多具有挑战性的条件,特别是在大视点差异的情况下。
  • (2)开发了一种阈值对比损失(TCL)来克服摄像机大视点差异引起的噪声变化,这是一个显著的改进。
  • (3)与基线相比,所提出的方法在PCD2015和VL-CMU-CD数据集上都实现了最先进的性能,并在CDnet数据集上实现了竞争性能。
  • (4)遵循学习更有鉴别性特征的思想,基于FCN架构将距离度量集成到基线中,从而获得更好的性能。也从变化地图的可视化中找到了一个合理的解释。

Related Work

场景变化检测(SCD)的核心思想是检测同一场景在不同时间拍摄的多个图像的变化。

变化的定义可以分为语义变化和噪声变化。

  • 语义变化可以定义为场景中物体的消失或重建所引起的变化,如建筑物的重建和车辆的运动。
  • 噪声变化分为辐射变化(光照强度变化、阴影、季节变化)和几何变化(相机旋转、变焦引起的视点差异)。

显然,我们对语义变化比对噪声变化更感兴趣。然而,噪声的变化必然会影响图像的外观,从而导致“语义融合”,尤其是在视点差异较大的情况下。如何正确检测语义变化并抑制噪声变化仍然是该任务的挑战。

传统的场景变化检测方法是图像差法,它通过识别两幅图像之间“显著不同”的像素集来生成变化映射,然后通过阈值获取二值掩码。该方法的优点是计算量小,缺点是原始RGB特征无法有效区分语义变化和噪声变化。针对这一问题,提出了图像配给、变化向量分析、马尔可夫随机场、字典学习等方法来获取更有区别的特征。然而,受限于手工设计的特征的表示,传统方法对光照变化或视点差异等噪声变化仍然很敏感。

 目前的变化检测方法都是基于全卷积网络(FCN),因为它在密集的预测任务中具有很高的精度。基于FCN的SCD方法可以分为早期融合和晚期融合,两者都是通过学习决策边界检测到的变化。然而,学习决策边界仍然不能回答三个关键问题:(1)什么是变化?(2)我们如何衡量变化?(3)是否存在一种合适的度量方法来度量变化,这种度量方法对于变化的对具有较高的度量值,而对于不变的对具有较低的度量值?

为了解决这些问题,论文提出了一种新的检测变化的方法,通过直接用距离度量度量变化,将变化视为语义相似性,旨在学习有效的特征,将不变对和独立的变化对结合在一起。该想法来源于Change Detection from a Street Image Pair using CNN Features and Superpixel Segmentation ,它也利用距离度量来描述变化。它使用的是从VGG模型中提取的经过预处理的特征,没有经过精调学习,对描述变化没有足够的判别性。相反,本文提出了一种端到端可训练的方法来学习具有对比损失函数的区别性特征,它为SCD任务定制强大的特征。此外,还提出了一种统一的方法来解决更具有挑战性的条件,例如使用阈值对比损失来克服较大的观点差异。

Proposed Approach

Overview

 全卷积孪生度量网络(CosimNet),展示如何利用合适的度量来度量变化。流程

  • 首先,给定一对原始图像作为输入,通过一个完整的卷积孪生网络向前传播输入,以生成特征对
  • 然后,利用一个简单的预定义距离度量(l2或cos)来度量特征对的不相似性。将包含深度特征和预定义距离度量的统一处理称为隐式度量。为得到一个更好的隐式度量,使用对比损耗将不变对聚集、变化对分开。(将跨图像对同一位置上的变化区域定义为变化对,将跨图像对同一位置上的不变区域定义为不变对)
  • 最后,使用简单的双边上采样到原始空间大小。

Learning an Implicit Metric

根据将变化视为不相似的基本思想,通过直接比较和测量不同时间成对图像之间的不相似度来检测变化。关键因素在于如何定制一个合适的距离度量来度量工作中的不同或变化。

本文使用深度学习孪生网络,来学习更多的鉴别特征。具体来说,孪生网络包括两个分支,结构相同和权值共享。其主干网络可以是任何流行的架构(GoogleNet或DeepLab等)。孪生网络的基本功能是将成对的图像映射为成对的特征。

为度量特征对的不相似性,首先将这种embed嵌入约束到C维超球面上,即||feat||=1,然后,在归一化的特征上建立一个简单的预定义度量。

最流行的预定义距离度量是欧几里德距离(Euclidean distance)和余弦相似度(cosine similarity)。选择一个合适的预定义距离度量对模型的性能有很大影响,并取决于相应的任务。本文设计了一个对上述两个距离度量的比较实验,并使用对比敏感度量提供了定量分析,称为RMS对比度

Learning Discriminative Metric

Contastive Loss 对比损失

使用对比损失,监督CosimNet学习一个好的隐式度量,目的是在扩大类间差异的同时,减少类内差异。

Thresholded Contrastive Loss 阈值对比损失

在具有挑战性的户外条件下更好地测量变化,尤其是相机旋转或缩放引起的大视点差异情况下。原有的对比损失再过程中存在性能差、收敛速度慢等缺点。原因在于两个矛盾:

  • 1)巨大的视点差异容易激活过多的不相关信息,因为大量的未注册,不可避免地导致 "语义融合",因为未改变的一对特征和改变后的一对特征是纠缠在一起的;
  • 2)原始的对比损失旨在最小化从包含巨大视觉差异的区域提取的特征对到零的距离,这有助于零点预测有一个相对良好的性能。

导致这一问题的关键在于,让语义不相似的特征对的距离等于0是不合理的。

为解决这一局限性,本文采用一种更灵活的策略来优化噪声变化。

通过设置一个\Gamma _{k}的余量(边缘)来略微修改对比损失,该余量被称为TCL,表示没有必要将距离最小化为0。

Training Policy 训练策略

 为提高SCD任务的鉴别能力,采用了多层侧输出(MultiLayer Side-Output,MLSO)训练策略。MLSO的设计基于以下两点:

  • (1) 在训练阶段,单层损失的监督信息随着逐层向后传播而逐渐减少,导致监督信息丢失时中间层的鉴别特征较少。
  • (2) 在测试阶段,上层特征的表示严重依赖于中间层特征的判别能力。

我们引入了一个配套的损失函数,即,对比性损失,来监督中间层的特征学习,这可以看作是对上层隐藏层的一个额外约束。在训练过程中,为平衡不同层间的损失,引入了层平衡权重,\beta _{h}

loss_{h}表示距离图与GT间的损失。

在推理阶段,针对不同的层设置不同的置信阈值,最终的预测是所有输出的平均值。

Experiment and Discussions

在CDnet2014、VL-CMU-CD和PCD2015数据集实验。

Implementation Details

CosimNet的主干是基于DeeplabV2,去掉了最后的分类层。

Datasets and Results

VL-CMU-CD数据集&结果 

该数据集由5类标记mask,实验时将多标记mask转化为一个二进制变化图,本文只关注变化而不关注变化类别信息。 

 结果:

相较以前的方法,性能得到极大提升。

消融实验也表明,不同设置下,

  • MLSO训练策略确实改善了中间层的语义表示。
  • 欧几里得距离在测量变化方面总体上优于余弦相似度。

PCD2015数据集&结果

 结果:

CDnet2014数据集&结果

从31个视频中截取图像, 选取t0时刻的背景图像(没有前景)作为参考图reference image,其他图像作为t1时刻的查询图像query image。

前景检测可看作时基于多帧序列的变化检测。

 结果:

Discussion

为了进一步证明CosimNet的有效性,本节将讨论三个具有挑战性的问题。

  • (1) CosimNet模型对相机旋转和变焦引起的相机视点差异是否稳健?
  • (2) CosimNet框架可以被视为一种图像差分方法,其中需要一个固定的阈值来获得一个二进制掩码。因此,一个自然的问题是,模型的性能对阈值是否敏感?
  • (3) 由对比性损失强制执行的度量学习的想法能否真正有助于学习变化检测任务的更多判别性特征?

为了解决这些问题,论文在CDnet2014和VL-CMU-CD数据集上进行了实验。

Is It Robust to Viewpoint Difference?

区分语义变化和噪声变化是SCD任务的一个关键特性。本文提出的方法遵循图像差分的思想,对摄像机视点差异自然敏感,而摄像机视点差异主要是由相机旋转或变焦造成。通常使用预处理算法来对齐图像对,不仅计算量大且效果有限。

有没有一种策略可以直接从未注册的图像对中产生语义变化,抑制噪声变化,而不需要任何预处理或后处理方法?考虑到不同视点差异对模型性能的影响程度不同,论文进行实验,评估了小视点差异和大视点差异的方法。

  • 小视点差异,直接尝试原始的对比损耗,发现小的视点差异不足以降低CosimNet的性能。直观解释是,CNN的接受场很大,并且随着层深逐渐增大,一个小的视点差不足以影响图像的外观。如图6所示。
  • 大视点差异,嘈杂中最具挑战性的因素,严重降低了CosimNet的性能。论文提出阈值对比损失(TCL)来应对该问题。

为评估所提出的TCL损耗失的有效性,在CDnet2014数据集上设计了一组比较实验,特别是在PTZ类别上(continuous Pan、间歇性Pan、TwoPositionPTZCam和zoomInZoomOut)。对于不同的阈值,我们将[0,0.4]设为0.1的区间,其中TCL值相当于阈值为零时的原始对比损耗。将研究不同阈值设置下的性能。如图8所示。

可看出:

  • 针对大视点差异,TCL明显优于原始的对比损失;
  • 基于TCL的CosimNet在阈值为0.1时性能最佳。图7中,尽管图像对之间存在严重的未配准现象,但语义变化的区域响应最强,噪声变化区域则较低或为0。使用TCL的CosimNet克服了该问题。

Conrtrast Sensitivity

阈值的选择会严重影响性能,本文使用定量度量,称为阈值对比度,来测量对比灵敏度。它定义了自然图像中前景和背景之间的阈值。许多定义阈值对比度来测量对比度灵敏度,如迈克尔逊对比度和RMS对比度。其中,Michelson对比度CM适用于重复的图案,如正弦波,而RMS对比度用于复杂的图案,如随机点图案或自然图像。

 本文希望最大化背景和前景之间的对比,使模型的性能不会严重依赖于阈值的选择。论文分析了两种不同设计设置下的阈值对比,包括不同“层次”上的不同距离指标和特征,这也意味着从不同层次提取的特征。

  • 不同距离度量:不同的距离度量具有不同的度量特征对距离的能力。选择合适度量的关键原则是对变化的度量值取较高的距离值,对不变的度量值取较低的距离值。实验中l2距离的性能总是优于余弦相似度。图9对两种距离度量进行RMS对比分析,RMS指标明显增加,l2距离比cos相似度有更大的对比度,从背景区分变化的能力更强。如图10所示,l2距离产生的变化图比余弦相似度对每一层突出了更多的相关语义变化,抑制了更多的噪声变化,这表明l2距离在分离变化对和将不变对聚集在一起方面优于余弦相似度。
  • 不同层的语义特征:深层特征比浅层特征具有更丰富的语义信息。

Powerful Feature Representation in FCN Architecture

1)学习判别特征

如何提高特征的语义可辨别性是计算机视觉任务的核心问题。关键在于增加类间差异和减少类内变化。基于FCN的变化检测方法将不同时间捕获的特征对{featk0, featk1}的维数拼接起来,即featk = concat(feat0k, feat1k)。该框架本质上是学习不同特征类别之间的决策边界,从而通过特征与决策边界之间的距离来确定某一特征的类别。因此,识别特征的学习对于分类任务至关重要。

CosimNet引入度量变化的先验知识,对变化对给出较高的距离度量值,对不变化对给出较低的距离度量值。基于提高特征可分辨性的思想,将距离度量学习引入基于FCN的模型中,利用相似度学习对特征进行约束。

实验基于DeeplabV2模型,该模型具有多任务损失函数。loss由两部分组成,Loss_class是交叉熵损失,用于像素级分类;Loss_feat是对比损失,用于学习判别特征。设置一个常量\lambda来抵消两个损失之间的不平衡

 距离度量可以作为特征学习的附加约束,减少类内方差,有助于平滑边界

2)特征可视化

 采用t-SNE算法将FCN模型的fc7层特征与CosimNet的fc7层特征的分布可视化。

CosimNet保持了边界平滑,是目标保持一致。

其对应的二维特征分布可看出,从CosimNet中学到的特征更加分离,类内变化更小。融入深度度量学习确实在迫使类内紧凑性和类间可分离性,这有助于学习更多的鉴别性或分离性特征,导致更好的性能。

Conclusion

  • 提出了一个新的框架,命名为CosimNet的场景变化检测任务,并使用一个学习的隐式度量直接测量变化。
  • 为了减小不变图像对之间的距离,增加变化图像对之间的距离,本文利用连体网络提取图像对的特征,并利用对比损耗来学习更好的隐式度量。具体来说,论文发现阈值对比损失与一个更宽容的策略来惩罚这种嘈杂的变化,这可以解决大的观点差异的问题。
  • 在三个流行数据集上的实验表明,该方法对许多具有挑战性的条件都具有鲁棒性,如光照变化、季节变化、摄像机运动和缩放。
  • 低维空间的特征可视化阐明了CosimNet学习解纠缠嵌入,区分变化特征和不变特征。学习后的解纠缠嵌入被认为是一个非常有前途的特征,机器学习模型,是产生更好的性能的关键事实。本文的框架可能为重新思考如何度量SCD中的“变化”提供了一个新的视角。

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值