【视频异常检测】Unsupervised Video Anomaly Detection with Diffusion Models Conditioned on Compact ... 论文阅读

  1. List item

文章信息:
在这里插入图片描述
发表于:iciap2023
原文链接:https://link.springer.com/chapter/10.1007/978-3-031-43153-1_5
源码:https://github.com/AnilOsmanTur/conditioned_video_anomaly_diffusion

Abstract

这篇论文旨在解决无监督视频异常检测(VAD)问题,该问题涉及对视频中的每一帧进行分类,判断其是否正常或异常,而无需任何标签信息。为实现这一目标,所提出的方法采用条件扩散模型,其中输入数据是从预训练网络中提取的时空特征,而条件则是从紧凑的运动表示中提取的特征,该表示以运动和外观的形式总结了给定视频段的信息。我们的方法利用数据驱动的阈值,并将高重建误差视为异常事件的指标。这项研究是首次利用紧凑的运动表示进行VAD,实验证明它们为扩散模型提供了相关信息,从而改善了相对于先前技术的VAD性能。值得注意的是,我们的方法在不同数据集上表现出更好的泛化性能,明显优于现有技术和基准方法。

1 Introduction

自动检测视频中的异常事件是计算机视觉中的一个关键任务,与众多应用密切相关,包括但不限于智能监控和活动识别[2,6,11,14,18,27]。视频异常检测(VAD)可能特别困难,因为现实世界中的异常事件很少发生,而且可以属于无限多的类别。因此,传统的监督方法可能不适用于此任务,因为通常在训练中无法获得平衡的正常和异常样本。此外,尽管异常事件往往稀疏且多样化,但其上下文和模糊性使VAD模型面临挑战[23]。因此,通常使用一类学习方法进行VAD,即在训练期间仅提供正常数据[9,13,22,26,34]。然而,考虑到实际应用的动态性和正常类别的广泛范围,实际上无法访问每一类型的正常训练数据。因此,在使用一类分类器时,存在将未见的正常事件错误分类为异常的高风险,因为其表示可能与从正常训练数据中学到的表示显著不同[6]。为了解决数据可用性的挑战,一些研究人员实施了弱监督VAD,不需要每帧注释,而是利用视频级标签[15,28]。在弱监督VAD中,与其一类学习对应,如果视频中的任何一帧被标记为异常,则视为异常。相反,只有在其中所有帧都被标记为正常时,视频才被标记为正常。然而,这种方法缺乏定位视频中异常部分的能力,在处理长视频时可能不切实际。而且,值得注意的是,将视频标记为正常仍需要检查整个帧[32]。对VAD的一种较新方法是无监督学习,其中使用未标记的视频作为输入,模型学习将每一帧分类为正常或异常,从而能够定位异常帧。与一类分类器不同,无监督VAD不对训练数据的分布做任何假设,并在模型训练期间不使用任何标签。然而,毫无疑问,与使用标记的训练数据的其他VAD方法相比,达到其性能更具挑战性[32]。

该研究专注于在复杂的监控场景中执行无监督视频异常检测(VAD),仅依赖被称为扩散模型的概率生成模型的重构能力[12]。使用生成模型(例如自动编码器)进行一类VAD是常见的[8,19,23]。然而,正如[32]中对无监督VAD的展示,自动编码器可能需要额外的鉴别器协同训练,以达到期望的性能水平。相反,我们的研究揭示了扩散模型构成一类更有效的无监督VAD生成模型,与自动编码器相比,显示出更卓越的结果,甚至在某些情况下超过协同生成和鉴别模型的性能。此外,我们探讨了在条件扩散模型中应用紧凑的运动表示,即星形表示[7]和动态图像[4]。这项研究是首次尝试利用这些运动表示来解决VAD任务。在两个大规模数据集上进行的实验证明,将上述紧凑的运动表示用作扩散模型的条件对VAD更有益。我们还通过评估在一个数据集上训练并在另一个数据集上测试时的泛化性能,探索了无监督VAD方法的可转移性。在进行跨数据集分析时,明显看出将紧凑的运动表示作为扩散模型条件引入可大大提升性能。与最先进技术(SOTA)和基准模型相比,这代表了所提方法的一个关键特性,使其在实际应用中具有极高的价值。

主要贡献可以总结为三个方面:
(1)我们提出了一种有效的无监督视频异常检测(VAD)方法,该方法将紧凑的运动表示用作扩散模型的条件。我们展示了紧凑的运动表示提供了相关信息,并进一步改善了VAD的性能。
(2)我们的方法在数据集间展现出增强的泛化性能。其可转移性明显优于基准方法和最先进技术(SOTA)。
(3)我们对扩散模型进行了超参数分析,为在VAD中使用这些模型提供了洞见。

2 RelatedWork

Anomaly Detection.
异常指的是一种罕见且明显偏离正常的实体。由于其稀疏性、多样性、模糊性和上下文性质,自动化异常检测模型在从图像或视频中检测异常事件时面临挑战[6,23,33]。自动化异常检测是一个经过深入研究的主题,涵盖了各种任务,例如医学诊断、缺陷检测、动物行为理解和欺诈检测[2,29,31]。有关不同领域中异常检测应用的综述,感兴趣的读者可以参考调查论文[6]。VAD(视频异常检测),即当前任务,涉及复杂的监控场景。Zaheer等人[32]将相关方法分类为四组:
(a)完全监督方法需要对训练数据中的每个视频帧进行正常/异常注释,
(b)一类分类方法仅需要对正常类别的注释训练数据,
(c)弱监督方法需要视频级的正常/异常注释,以及
(d)无监督方法不需要任何注释。

标注数据是一项昂贵且耗时的任务,由于异常事件的罕见性,无法收集所有可能的异常样本用于完全监督学习是不切实际的。。因此,解决VAD最常见的方法是训练一个一类分类器,从正常数据中学习[9,13,22,26,34]。其中一些方法利用手工设计的特征[16,21],而其他方法依赖于使用预训练模型提取的深度特征[22,26]。生成模型,例如自动编码器和生成对抗网络(GAN),也已经被改编用于VAD[8,19,23]。一类分类器通常无法阻止对异常测试输入的良好重建,导致将异常实例错误分类为正常。此外,由于其表示可能与从正常训练数据中学到的表示显著不同,未见过的正常实例也可能被错误分类为异常。正如显而易见的那样,对于一类方法来说,数据收集仍然是一个问题,因为无法实际访问每一种正常训练数据的各种可能性[6,18]。因此,一些研究人员[15,28]转向弱监督VAD,它不依赖于细粒度的每帧注释,而是使用视频级标签。因此,即使一个帧是异常的,视频也被标记为异常,并且如果所有帧都正常,则被标记为正常。此设置不是最佳设置,因为将视频标记为正常需要检查所有帧,并且无法定位异常部分。

另一方面,在文献中使用未标记的训练数据的VAD方法相当罕见。值得注意的是,尽管一些一类分类器[9,13,34]使用标记的正常数据,它们被称为无监督方法。无监督VAD方法分析未标记的视频,不事先了解正常或异常事件,以将每一帧分类为正常或异常。唯一解决这一定义的已发表方法是[32],该方法提出了一个生成协同学习,其中包括一个生成器(自动编码器)和一个鉴别器(多层感知器),采用负学习范式。自动编码器重建正常和异常实例,而鉴别器估计异常的概率。通过负学习,自动编码器受到了不使用鉴别器产生的伪标签学习异常的重建的约束。该方法[32]遵循这样的思想,即异常事件发生的频率比正常事件低,因此生成器应该能够重建丰富可用的正常表示。此外,它在提取相关的时空特征时促进了时间一致性。我们的方法与[32]不同之处在于,它仅依赖于一个生成架构,具体而言是一个条件扩散模型。在某些情况下,基线的无条件扩散模型超过了[32]的完整模型,而在所有情况下,它的性能均优于[32]的自动编码器。另一方面,所提出的方法通过使用紧凑的运动表示提高了无条件扩散模型的性能,并且重要的是,它在不同数据集上呈现出最佳的泛化结果。

Diffusion Models.
它们是一系列概率生成模型,通过注入噪声来逐步破坏数据,然后学习逆转这一过程以生成样本。[10,12]。扩散模型已经成为一个强大的新的深度生成模型家族,在许多应用中具有SOTA性能,包括图像合成,视频生成以及对象检测和语义分割等区分任务[5,24]。鉴于扩散模型已成为SOTA生成模型的各种任务,我们有动力通过我们提出的方法来探索它们在VAD中的潜力。

Star Representation [7].
它的目标是以一种方式表示视频中存在的时间信息,使输出的单个RGB图像的通道通过将颜色通道与视频剪辑的简化连续时刻关联,传达总结的时间信息。这样的表示适合作为任何CNN模型的输入,在文献中迄今已被用于动态手势识别[1,7],而这是它首次被用于VAD。

Dynamic Image [4].
它指的是输入视频序列的表示,其通过对逐帧的像素的时间排序进行编码来概括对象的外观及其随时间的对应运动。这可以被视为早期融合技术,因为帧在进一步处理它们之前被组合成单个表示,例如。它已被用于动作和手势识别[4,30]和视觉活动建模[3,25],然而,它从未被用于VAD。

3 ProposedMethod

我们设计了一种方法,利用扩散模型来处理无监督的视频异常检测(VAD),即在不使用标签的情况下对视频中的每一帧进行正常或异常的分类。为了提供基于帧的预测,我们对连续的N帧视频片段进行分类,然后沿着视频滑动这个窗口。我们的模型建立在扩散模型之上,特别是k-扩散[12],相对于DDPM [10]表现更好。为了克服处理视频片段的巨大计算负担,我们在一个预训练网络提取片段级特征的潜在空间中操作。然后,我们利用扩散模型的生成能力来重构带有噪声的片段特征,并基于重构误差决定该片段是否正常或异常,采用数据驱动的阈值。虽然这种表述导致了最先进的性能,但我们进一步通过来自视频片段的紧凑运动信息(参见第3.2节)对扩散过程进行条件设定,以更好地引导反向过程并实现更好的性能。我们的方法的概述如图1所示。
在这里插入图片描述

3.1 Diffusion Model

扩散模型对输入数据点 x T x_T xT应用了一个标准差为 σ t σ_t σt的逐步增加的高斯噪声,其中 x T x_T xT是从分布 p d a t a ( x ) p_{data(x)} pdata(x)中采样得到的。加噪声的分布 p ( x , σ ) p(x, σ) p(x,σ)变成了各向同性的高斯分布,从而可以有效地采样新的数据点 x 0 ∼ N ( 0 , σ m a x 2 I ) x_0 ∼ N(0,σ^2_{max}I) x0N(0,σmax2I)。这些数据逐渐被去噪,噪声水平从 σ 0 = σ m a x > σ 1 > ⋅ ⋅ ⋅ > σ T − 1 > σ T = 0 σ_0 = σ_{max} > σ_1 > ··· > σ_{T-1} > σ_T = 0 σ0=σmax>σ1>⋅⋅⋅>σT1>σT=0渐变到新的样本。扩散模型通过最小化预测和地面真实添加噪声之间的期望L2误差[10]进行训练,即: L s i m p l e = ∣ ∣ ϵ − ϵ ^ ∣ ∣ 2 L_{simple} = ||\epsilon - \widehat{\epsilon} ||_2 Lsimple=∣∣ϵϵ 2。在这项工作中,我们使用了[12]中的扩散公式,该公式允许网络根据噪声尺度 σ t σ_t σt执行 x 0 x_0 x0的预测,或者介于两者之间,从而消除了在DDPM [12]中发生的错误放大。去噪网络 D θ D_θ Dθ的公式如下:
在这里插入图片描述
在这里, G θ G_θ Gθ成为要训练的有效网络, c s k i p c_{skip} cskip调制跳过连接, c i n ( ⋅ ) cin(·) cin() c o u t ( ⋅ ) cout(·) cout()调整输入和输出的幅度,而 c n o i s e ( ⋅ ) cnoise(·) cnoise() σ σ σ缩放为适合作为 F θ F_θ Fθ输入的尺度。形式上,给定一个包含N帧的视频片段C,即 C ∈ R N × 3 × H × W C ∈ R^{N×3×H×W} CRN×3×H×W,我们首先从预训练的3D-CNN F F F中提取特征,得到一个特征向量 f e a ∈ R f fea ∈ R^f feaRf,其中f是网络的潜在维度。然后,我们在扩散过程中使用这个潜在表示来重建它们,而无需使用任何标签。

我们利用去噪不一定非要从方差为 σ m a x 2 σ^2_{max} σmax2的噪声开始,而是可以选择在任意时间步 t ∈ ( 0 , T ] t ∈ (0, T] t(0,T],正如[17]中所示。因此,我们可以采样 f e a t ∼ N ( f e a , σ t 2 ) fea_t ∼ N(fea, σ^2_t) featN(fea,σt2),并对其运行扩散反向过程以重建 f e a T fea_T feaT。选择t的方式允许平衡在正向过程中破坏的信息量,并且我们利用这一事实来去除与异常相关的频率成分。然后,我们以MSE的形式测量重建的好坏,更高的重建误差可能表明视频片段是异常的。在决定一个视频帧是否异常时,我们采用[32]的数据驱动阈值机制。对于单个视频帧的决策是通过保持每个批次中每个剪辑的重建损失(MSE)分布来做出的。导致更高重建误差的特征向量指的是异常剪辑,反之亦然。这个决策是通过数据驱动的阈值 L t h L_{th} Lth来做出的,其定义为 L t h = μ p + k σ p L_{th} = μ_p + k σ_p Lth=μp+kσp,其中k是一个常数, μ p μ_p μp σ p σ_p σp是每个批次的重建误差的均值和标准差。

3.2 Compact Motion Representations

我们进一步扩展了所描述的扩散模型,以在过程中引入紧凑的运动表示,以提供丰富的运动信息。我们使用两种不同的方法计算这个表示:星形表示法[7]或动态图像[4]。这两种表示法的视觉示例见图2,完整的描述如下。
在这里插入图片描述

Star RGB Images.
使用星形表示法的目标是描绘输入的RGB视频中的基于时间的数据[1,7]。星形表示矩阵 M 的计算如公式2所示,其中 I k ( i , j ) I_k(i, j) Ik(i,j)表示第k帧中在给定位置 ( i , j ) (i, j) (i,j)处的像素的RGB向量,λ是RGB向量的余弦相似度。通过使用这样的余弦相似度,星形表示还包括色调和饱和度的信息变化。
在这里插入图片描述
其中N是视频片段的长度。为了创建一个RGB图像作为输出,将每个视频段均匀地分成三个子视频,使得每个子视频用于生成RGB通道中的一个。因此,生成的图像通道传达了连续时刻的总结信息。

Dynamic Image Computation.
动态图像通过对像素的顺序编码,从一个帧到另一个帧,呈现了输入视频序列中物体外观及其运动的摘要。动态图像的计算直接使用RGB图像,通过将视频帧乘以 α t α_t αt系数并将它们相加,生成输出图像的公式为 d ∗ d^∗ d= ∑ k = 1 N α k I k \sum_{k=1}^N α_kI_k k=1NαkIk ,其中 α k = 2 k − N − 1 α_k = 2k−N−1 αk=2kN1,其中 I k I_k Ik是视频片段的第 k k k个图像, N N N是视频片段中的帧数。

Conditioning on Compact Motion Representation.
在提取了剪辑C的紧凑运动表示之后,我们通过预训练的2D-CNN F c o n d F_{cond} Fcond获得了条件特征向量cond。我们通过与输入特征相加,将这个特征向量同时注入我们网络 G G G的编码器和解码器部分。为了处理这两个块的不同维度,我们使用了两个线性投影来获得与输入相同大小的向量。

4 Experimental Analysis and Results

本研究采用的评估指标是接收者操作特征曲线(ROC曲线)下面积(AUC),使用数据集中测试视频的帧级注释来确定,与已建立的VAD方法一致。为了评估和比较所提方法的有效性,实验在两个主流的大规模非约束数据集上进行:UCF-Crime [27] 和 ShanghaiTech [14]。UCF-Crime数据集 [27] 包含来自具有不同视野的多样CCTV摄像头的视频。它包括总共128小时的视频,其中有13种不同的异常事件的注释,例如道路事故、盗窃和爆炸。为了与最先进的方法进行公平比较,我们使用了该数据集的标准化的训练和测试划分,其中包括810个异常和800个正常视频用于训练,以及130个异常和150个正常视频用于测试,但没有使用标签。另一方面,ShanghaiTech数据集 [14] 在具有挑战性的光照条件下,使用了13个不同的摄像头角度录制。对于我们的研究,我们使用了训练集划分,其中包括63个异常和174个正常视频,以及测试集划分,包括44个异常和154个正常视频,符合最先进的方法的惯例。

4.1 Implementation Details

Architecture.
与[32]一致,我们使用16个不重叠的帧来定义一个视频片段,并使用预训练的3D-ResNext101或3D-ResNet18作为特征提取器F [6,32]。在计算了紧凑的运动表示之后,我们使用预训练的ResNet50或ResNet18通过 F c o n d F_{cond} Fcond提取一个单一的条件向量,由于它们与这种运动表示一起被广泛使用[3,25]。我们使用具有编码器-解码器结构的MLP作为去噪网络G,编码器由三层组成,大小分别为{1024,512,256},而解码器的隐藏维度为{256,512,1024}。时间步信息 σ t σ_t σt通过傅立叶嵌入进行转换,并通过FiLM层[20]集成到网络中,而在时间步骤集成后通过对输入进行求和应用对紧凑运动表示的条件。

Training and Sampling.
模型的学习率调度器和EMA设置为k-diffusion的默认值,包括初始学习率为 2 × 1 0 − 4 2×10^{−4} 2×104和InverseLR调度。权重衰减设置为 1 × 1 0 − 4 1×10^{−4} 1×104。训练进行了30个时期,批量大小为256,而测试则在8192个样本上进行,与先前的文献[32]一致。在k-diffusion中,有一些超参数会影响扩散过程,鉴于当前任务的新颖性,我们不依赖于先前文献中的参数。因此,我们进行了对训练和测试噪声影响的广泛探索。训练噪声按照log-normal分布进行分布,其参数为 ( P m e a n , P s t d ) (Pmean,Pstd) PmeanPstd,而采样噪声由 σ m i n σ_{min} σmin σ m a x σ_{max} σmax控制,在下文中我们将研究它们的作用。对于扩散反向过程,我们使用LMS采样器,步数T设置为10。

4.2 Results

我们首先比较我们的方法的结果与SOTA和基线方法。然后,我们报告交叉数据集评估的结果,其中训练和验证集来自与测试分割不同的域。最后,我们分析了扩散模型的超参数如何影响VAD性能。

Performance Comparisons.

所提出的方法与SOTA和基线方法的性能(即,表1和表2分别给出了ShanghaiTech [14]和UCFCrime [27]数据集的无条件扩散模型)结果。这些表格还包括消融研究,以便在星星表示、动态图像和时空特征之间改变扩散模型的条件,此外还改变3D-ResNext 101和3D-ResNet 18之间的特征主干以及ResNet 50和ResNet 18之间的运动表示主干。

如表1所示,所提出的方法在ShanghaiTech [14]数据集上优于所有其他方法,通过超过SOTA自动编码器[32] 14.45%,SOTA协作生成和判别模型[32] 4.77%和SOTA [13] 20.71%实现了最佳结果。所提出的方法还改进了无条件扩散模型(即,基线)1.08%。值得注意的是,其他条件扩散模型,即,使用时空特征作为条件和紧凑的运动表示作为输入,偶尔不如我们的方法有效,所提出的方法超过它们10.52%。通过使用3D-ResNet 18作为特征主干,星星表示作为条件,ResNet 50作为相应的主干,可以实现最佳性能。
在这里插入图片描述
另一方面,对于UCFC数据集[27](表2),所提出的方法在[32]的更复杂的模型之后获得了第二高的分数,该模型采用了生成器,递归和负学习。尽管如此,我们的方法优于SOTA自动编码器[32] 10.53%和SOTA [13] 14.85%。与基线和其他条件扩散模型相比,它还表现出上级性能,分别为1.63%和1.79%。此外,该数据集的所提出的方法的最佳性能是通过利用3D-ResNet 18作为特征骨干,星星表示作为条件,ResNet 50作为条件骨干。
在这里插入图片描述
Cross-dataset Analysis.
在进行这项分析时,我们考虑到表1和表2中的结果,以便选择产生最佳结果的输入特征和条件骨干的组合。
在这里插入图片描述

表3显示,与所有其他基线和SOTA方法相比,我们的方法在跨数据集分析中取得了显著更好的结果,无论使用哪种紧凑的运动表示作为条件。值得注意的是,与[32]提出的生成模型和全模型相比,所提出的方法在性能上表现出色(改善了8.6%到17.06%)。另一方面,基线的无条件扩散模型利用时空特征胜过利用紧凑运动表示的无条件扩散模型。所提出方法的相对有效性在实际应用中具有重要意义,因为在大多数情况下,部署领域与模型训练的领域不同。

Hyperparameter Analysis.
我们研究了训练噪声对学习过程的影响,发现基线扩散和我们的方法在噪声较小(即较低的 P m e a n P_{mean} Pmean)的情况下均取得了更高的结果。值得注意的是,相对于相同的参数,我们的方法在更广泛的训练噪声参数选择范围内通常表现更好,表明其对此选择不太敏感。我们探索了 P m e a n ∈ [ − 5 , − 0.5 ] P_{mean} ∈ [−5, −0.5] Pmean[5,0.5] P s t d ∈ [ 0.5 , 2. ] P_{std} ∈ [0.5, 2.] Pstd[0.5,2.] 的影响。另一方面,回顾一下,t接近零表示接近各向同性高斯分布的点,我们探讨了不同t作为反向过程起始点的影响。尽管基线的无条件扩散在t = 4 和 t = 6时取得最佳性能,我们发现我们的方法在高噪声区域(t = 1,t = 2)取得了更好的性能,有效地允许从剪辑向量中去除更多信息,证明了在当前任务中对运动表示进行条件处理的有效性。

5 Conclusions

我们提出了一种新颖的无监督视频异常检测(VAD)方法,仅利用扩散模型的重建能力,能够准确识别和定位异常帧。我们的条件扩散模型使用从紧凑运动表示中提取的特征作为条件,同时将从预训练网络中提取的时空特征作为输入。通过这样做,我们展示了紧凑运动表示的贡献,即,我们的方法成功地改善了最先进的VAD结果,同时还展示了在不同领域之间显著的可转移性。值得注意的是,我们方法的无监督性质使得异常检测系统能够仅基于观察到的数据开始识别异常,而无需任何人为干预。如果没有异常事件发生,系统可能会错误地将罕见的正常事件识别为异常。然而,预计这种异常系统将运行更长的时间,因此,没有异常事件的可能性显著降低。未来,我们的目标是修改我们的方法,使其能够在具有近实时能力的边缘设备上运行。

阅读总结

  • 利用扩散模型进行视频片段重构
  • 将运动表示加入到了编码器和解码器中(两种方式,一种是Star RGB Images,另一种是Dynamic Image Computation)
  • 充分的实验

有时间跑跑源码看看

  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值