Generating Anomalies for Video Anomaly Detection with Prompt-based Feature Mapping

中文标题:基于提示的特征映射生成视频异常检测中的异常情况

类型:VAD

发布于:CVPR2023

论文地址:https://openaccess.thecvf.com/content/CVPR2023/papers/Liu_Generating_Anomalies_for_Video_Anomaly_Detection_With_Prompt-Based_Feature_Mapping_CVPR_2023_paper.pdf

源码地址:无

Abstract

        监控视频中的异常检测是一项具有挑战性的计算机视觉任务,在训练期间仅能获取正常视频。近期工作发布了首个虚拟异常检测数据集以辅助现实世界中的检测。然而,存在异常差距,因为虚拟数据集中的异常是有界的,而在现实世界中是无界的,这降低了虚拟数据集的泛化能力。虚拟与现实场景之间还存在场景差距,包括场景特定异常(在一个场景中异常但在另一个场景中正常的事件)以及场景特定属性,例如监控摄像机的视角。在本文中,我们旨在通过提出基于提示的特征映射框架(PFMF)来解决异常差距和场景差距问题PFMF 包含一个由异常提示引导的映射网络,以在真实场景中生成无界类型的未知异常,以及一个映射适应分支,通过应用域分类器和异常分类器来缩小场景差距。所提出的框架在三个基准数据集上超越了现有技术水平。大量的消融实验也表明了我们框架设计的有效性。

1. Introduction

        视频异常检测(VAD)旨在识别监控视频中的异常场景,在公共安全领域有着广泛应用。然而,由于异常事件发生概率小,在现实生活的监控中难以被观测到。因异常事件的无约束性,使得这一挑战愈发艰巨。在特定场景下,与正常事件不同的事件均可被视作异常,故而异常类型是无界的。

        大多数视频异常检测(VAD)方法通过在训练阶段学习正常事件的分布,并在测试阶段检测分布外事件来应对这一挑战。这些方法分为基于重建的方法[1, 14, 31](用于重建当前帧)和基于预测的方法[26, 27, 27, 30, 34](用于预测即将到来的帧)。显著的重建或预测误差被视为异常。然而,由于深度网络的强大泛化能力以及正常与异常事件之间的相似性,异常并不总是导致足以被检测到的误差。在没有异常分布先验知识的情况下,网络难以检测到未见过的异常。

        因此,一些方法[11, 12, 53, 54]试图生成伪异常来模拟异常行为的分布,而非依据正常行为的分布计算误差。例如,乔治斯库等人[12]从与检测场景无关的 Tiny ImageNet 收集大量图像作为伪异常样本。他们的另一项工作[11]试图通过颠倒动作顺序或提取间歇帧来产生运动不规则性从而生成时间异常。通过手动应用伪异常,网络能够瞥见不同于正常事件的特征分布。然而,这些方法的主要缺点是伪异常与自然异常之间不可避免的差距。

        为解决伪异常问题,阿斯琴托阿等人[2]利用 3D 动画和 2D 背景图像发布了名为 Ubnormal 的虚拟视频异常检测数据集。其中包含 22 种异常类型,诸如打架、偷窃、躺下等等。通过应用该虚拟数据集,能够很好地评估真实异常的分布情况。然而,由于巨大的域差距,将虚拟异常应用于真实场景是一项艰巨挑战。阿斯琴托阿等人[2]训练一个 CycleGAN[60],以实现从虚拟域到真实域的视频级风格迁移,从而应对这一挑战。

        然而,现有方法未能解决两个关键挑战。首先,异常在虚拟数据集中是有界的,但在现实世界中是无界的,我们将这种差异定义为异常差距。其次,不同场景存在场景特定异常(在一个场景中异常但在另一个场景中正常的事件)和场景特定属性(例如监控摄像机的视角),我们将这种差异定义为场景差距

        我们的工作受到上述两个关键挑战的推动。为解决异常差距和场景差距问题,我们提出一个名为基于提示的特征映射框架(PFMF)的新颖框架,如图 1 所示。在缩小异常差距方面,PFMF 采用提示引导的映射网络,通过发散映射过程生成无界异常。提示是从变分自编码器(VAE)[17]学习到的分布中采样得到的。对于场景差距,我们引入一个映射适应分支来解决它。具体而言,该分支由一个异常分类器组成,以使生成的异常具有场景特异性,以及两个域分类器来减少由场景特定属性引起的不一致性。

图 1. 基于提示的特征映射框架(PFMF)概述。PFMF 总共包含三个部分,即特征提取器、基于提示的特征映射网络和映射适应分支。特征提取器用于将输入实例转换为相应特征,从而可在特征层面完成映射过程。基于提示的特征映射网络旨在在异常提示引导下将同一域内的正常特征映射到异常特征空间,以便从正常特征生成真实域中的未见异常。添加映射适应分支是为了使生成的异常具有场景特异性并解决场景特定属性问题。

总之,本文做出了以下贡献:

(1)提出一种新颖的基于提示的特征映射框架(PFMF)用于视频异常检测。该框架通过生成无界类型的未见异常,解决了将具有有限异常的虚拟视频异常检测数据集应用于真实场景的挑战。

(2)提出映射适应分支,以确保 PFMF 生成的异常具有场景特异性,并解决场景特定属性问题。

(3)在三个公共视频异常检测数据集(ShanghaiTech、Avenue 和 UCF - Crime)上展示了所提框架的有效性。大量实验表明,与最先进的技术相比,所提框架性能最佳。

2. Related Work

2.1. Video Anomaly Detection

        视频异常检测(VAD)任务的目标是检测视频中的异常事件。近年来,许多工作试图学习正常事件的分布,并在测试阶段检测分布外事件[1, 13, 14, 26, 27, 30, 31, 34]。这些方法分为基于重建的方法或基于预测的方法。一些基于重建的方法使用生成模型[14]、稀疏编码[31]或深度自编码器[1]基于若干相邻帧重建当前帧。基于预测的方法总是使用运动特征提取[27, 34]、深度自编码器[13, 30]或卷积长短期记忆网络(ConvLSTM)[26]等技术预测未来帧。异常的发生会导致显著的重建或预测误差。然而,由于深度网络强大的表征能力,这些方法陷入了“过度泛化”的困境,即正常帧和异常帧都能被很好地预测或重建[32]。最近,一些方法试图通过在训练过程中添加伪异常来解决这个问题[11, 12, 53, 54]。伪异常是从无关数据集收集的[12]或从正常事件生成的[11, 54]。然而,这些方法面临着伪异常与自然异常之间差距较大的问题。

2.2. Datasets under Virtual Environment

        由于收集真实世界数据集成本高昂且涉及隐私敏感问题,生成虚拟数据集在许多领域已成为一种可行的替代方案,包括行人重识别[47]、语义分割[40]、动作识别[37]等。由于真实世界数据集中缺乏异常情况,阿斯琴托阿等人[2]引入了首个名为 Ubnormal 的虚拟视频异常检测数据集,其中包含大量诸如跌倒、打架、偷窃等异常情况的视频,而非生成伪异常。

2.3. Feature Mapping

        我们提出的框架与域适应中的特征映射技术存在潜在相似性[6, 18, 41, 57, 61]。为解决不同域中异构特征空间的问题,特征映射用于将数据从一个域映射到另一个域。使用了两种映射范式,即公共空间映射[41, 61]和非对称映射[6, 18, 57]。然而,真实域与虚拟域之间的差距较大。因此,所提出的 PFMF 不是将特征从一个域映射到另一个域,而是在同一域内将正常特征映射到异常特征

2.4. Prompting Methods

        近年来,基于提示的学习在自然语言处理[4, 25, 36, 36, 49, 51]和计算机视觉[8, 16, 22, 58, 59]中都是一种流行的方法。通常,文本形式的提示用于使在大型数据集上预训练的语言模型适应下游任务[4, 25, 36, 36, 49, 51]。文本提示也用于视觉语言模型[8, 22, 58, 59]以完成计算机视觉任务。除了应用文本提示外,还提出了可学习向量形式的视觉提示来微调视觉Transformer(ViT)[7]。在这项工作中,不是将预训练模型应用于下游任务,而是使用提出的异常提示来引导映射网络实现发散映射

3. Method

        在本节中,我们详细阐述我们方法的框架和训练过程。第 3.1 节提供了所提出的 PFMP 的概述。然后,第 3.2 节解释训练数据的组织。在第 3.3 节中,通过分别描述特征映射过程(第 3.3.1 节)、异常提示(第 3.3.2 节)和映射适应分支(第 3.3.3 节)来详细说明所提出的 PFMP。最后,第 3.4 节阐述优化过程。

3.1. Overview

        我们所提方法的整体框架如图 1 所示。在此,我们将真实世界数据集(ShanghaiTech、Avenue 或 UCF - Crime)称为真实域,将 Ubnormal 数据集称为虚拟域。该框架接收三个输入,即真实域正常实例\(S_{nor }^{r}\)、虚拟域正常实例\(S_{nor }^{v}\)和虚拟域异常实例\(S_{a b n}^{v}\)。我们首先使用特征提取器获取三个输入的特征。为解决异常差距问题,采用由异常提示辅助的特征映射网络将正常特征映射为异常特征。异常提示是生成无界类型异常以缩小异常差距的关键因素。然后,我们可以通过特征映射网络和采样的异常提示在真实域中生成异常。我们还提出了一个映射适应分支,以使生成的异常具有场景特异性并解决场景特定属性的问题,这极大地缩小了场景差距。以下部分将详细说明所提出的 PFMF。

3.2. 训练数据组织Training Data Organization

        虚拟视频异常检测(VAD)数据集提供了丰富的实例级异常标注。该数据集会标注行为是否异常,并且还提供了每个人的轮廓信息。然而,现实世界中的视频异常检测数据集仅包含未经标注的原始视频,而且不存在异常行为的标注信息。因此,如图2左侧部分所示,我们的框架采用三种类型的输入,即真实域正常实例\(S_{nor }^{r}\)、虚拟域正常实例\(S_{nor }^{v}\)以及虚拟域异常实例\(S_{a b n}^{v}\)。\(S_{nor }^{v}\)和\(S_{a b n}^{v}\)都是基于每个人的轮廓标注从虚拟视频中裁剪出来的。考虑到真实域数据集中缺少边界框标注,我们应用了一个在MS COCO数据集[24]上预训练的YOLOv3目标检测器[38]来提取每个人的边界框。

图2. 训练数据组织和特征映射过程。对于虚拟域,映射网络\(\varepsilon\)将正常特征\(X_{nor }^{v}\)映射为异常特征\(X_{a b n}^{v}\)。然后,使用平均绝对误差(MAE)损失来最小化映射特征\(X_{map }^{v}\)与异常特征\(X_{a b n}^{v}\)之间的差距。对于真实域,利用在虚拟域中学习到的映射网络来生成未见异常\(X_{a b n}^{r}\)。

3.3. 基于提示的特征映射Prompt-based Feature Mapping

        在获取实例级输入之后,如图2所示,会使用一个特征提取器来提取高维特征。然后,应用一个特征映射网络,通过非对称映射在虚拟域中的正常特征与异常特征之间搭建桥梁。该映射过程由异常提示引导,以生成无界类型的异常。提示生成过程如图3所示。最后,如图4所示,所有特征都被输入到映射适应分支中,以进一步缩小场景差距。

3.3.1 特征映射网络Feature Mapping Network

        特征映射网络旨在将同一域内的正常特征映射到异常特征空间中。将特征提取器的输出表示为\(X \in \mathbb{R}^{C ×T ×H ×W}\),其中\(C\)、\(T\)、\(H\)、\(W\)分别代表通道数、时间长度、高度以及宽度。真实域中的正常特征表示为\(X_{nor }^{r}\),虚拟域中的正常特征和异常特征分别表示为\(X_{nor }^{v}\)和\(X_{abn}^{v}\)。标记为\(\varepsilon(.)\)的映射网络包含一个编码器\(\varepsilon_{e}(.)\)用于提取高层次信息,以及一个解码器\(\varepsilon_{d}(.)\)用于对编码后的特征进行上采样。

        由于我们想要生成无界类型的异常,所以我们设计了一个发散映射过程(一个正常特征可被映射到多种类型的异常特征上)。此外,我们应用一个异常提示\(P\)来指示映射方向。在虚拟域中,映射特征\(X_{map }^{v}\)按如下方式生成:

\(X_{map }^{v}=\varepsilon_{d}\left(\left[\varepsilon_{e}\left(X_{nor }^{v}\right), p_{v}\right]\right)\) (1),

其中\(p_{v}\)是针对虚拟域中特征的异常提示,而“\([ ]\)”表示沿着通道维度拼接特征图。

        通过对映射网络\(\varepsilon\)进行训练,我们的目标是最小化虚拟域中映射得到的异常特征与真实异常特征之间的平均绝对误差(MAE),如下式所示:

\(\underset{\varepsilon}{\min} MAE(X_{abn}^{v}, X_{map}^{v})\) (2)。

通过式2的优化过程,正常特征能够被转换到异常特征空间中。

        在真实域中,训练集里没有异常样本,因此网络对异常特征分布没有认知。为模拟真实域中的异常特征分布,我们利用在虚拟域中学到的映射网络来生成异常特征。其公式定义如下:

\(X_{abn}^{r}=\varepsilon_{d}\left(\left[\varepsilon_{e}\left(X_{nor}^{r}\right), p_{r}\right]\right)\) (3),

其中\(X_{abn}^{r}\)是生成的异常特征,\(p_{r}\)是通过从学习到的分布中采样生成的真实域提示。

3.3.2 异常提示Anomaly Prompt

        为了通过发散特征映射生成无界类型的异常,我们创建了一个异常提示,将其作为映射网络的额外输入。由于我们可以通过不同的异常提示来指定不同的生成方向,因此所产生的异常往往是无界的。异常向量是通过将场景向量和异常向量拼接而得到的,如图3所示,

异常向量包含有关异常类型的信息。 如图3(a)所示,虚拟域中的异常向量\(a_{v}\)是通过全局平均池化压缩异常特征的空间维度而获得的。然后,将\(a_{v}\)输入到一个变分自编码器(VAE)\(f\)中,以生成重构向量\(a_{v}^{*}\)。 该变分自编码器是通过最小化异常向量与重构向量之间的均方误差(MSE)来进行训练的,如下式所示:

\(\underset{f}{\min} MSE(f(a_{v}), a_{v})\) (4)。

图3. 用于特征映射网络的异常提示生成过程。它是通过将异常向量(\(a_{r}\)或\(a_{v}\))与场景向量(\(s_{r}\)或\(s_{v}\))拼接而得到的。场景向量是由在Places365数据集上预训练的ResNet18网络生成的。异常向量是从变分自编码器(VAE)中的高斯分布中采样得到的。该变分自编码器是通过重建虚拟域中的异常特征来进行训练的。

        在真实域中,我们从变分自编码器(VAE)的后验分布中采样一个潜在变量\(z\),并对\(z\)进行解码以获得异常向量\(a_{r}\),如图3(b)所示。由于变分自编码器是根据对齐的异常特征学习得到的,所以它能够模拟异常的分布情况。这种对齐是通过映射适应分支完成的,我们稍后会对此进行讨论。然后,通过对服从高斯分布的潜在变量进行采样,我们能够得到更多类型的异常向量。

场景向量。 我们的目标是使生成的异常特征不受场景限制(适用于任何输入场景),以缩小场景差距。因此,我们通过生成场景向量\(s_{r}\)来添加额外的场景信息。如图3(b)所示,我们将场景图像(未经YOLOv3检测的)输入到一个在Places365数据集[56]上预训练的ResNet - 18网络中,以识别场景信息。我们将ResNet - 18中softmax之前的特征用作场景向量。

异常提示。在获取异常向量和场景向量之后,通过将这两个向量进行拼接来生成异常提示,以此融合输入场景和异常类型信息。然后,如图1所示,我们将异常提示作为映射网络的额外输入,以实现发散特征映射。

3.3.3 映射适配分支Mapping Adaptation Branch 

        除了异常提示之外,在基于提示的特征映射框架(PFMF)中还应用了映射适配分支来缩小场景差距。如图4所示,我们的映射适配分支包含一个异常分类器和两个域分类器,它们分别旨在解决特定场景下的异常问题以及特定场景属性问题

图4. 我们的基于提示的特征映射框架(PFMF)中的映射适配分支包含一个异常分类器和两个域分类器。

        异常分类器用于区分每个输入场景中的正常特征和异常特征,以明确地使生成的异常具有特定场景属性,如图4所示。对于每个场景而言,所有非正常的事件都被视作异常情况。因此,最大化异常分类器的准确率能够使映射得到的异常特征与同一场景中的正常特征区分开来。这样一来,所生成的异常将具有与同一场景中正常事件不同的特征分布,所以它们被视为具有特定场景属性的。

        域分类器。此外,在将虚拟数据集应用于实际场景时,特定场景属性也是一项巨大挑战。先前工作[2]中所应用的循环生成对抗网络(CycleGAN)能够部分减少诸如着装和背景等一些特定场景属性。然而,特定场景属性仍然存在,比如监控摄像机的视角问题。我们通过对齐虚拟域和真实域之间的特征空间来解决这一问题。这种对齐能够提取两个域的共同属性,并减少由特定场景属性所导致的不一致性。

        受文献[10]的启发,我们应用了两个域分类器,并使用梯度反转层(GRL)来训练特征提取器。域分类器致力于识别输入特征所属的域。前面的特征提取器试图迷惑域分类器以缩小域间差距。在正向传播过程中,梯度反转层(GRL)起到恒等函数的作用,如下式所示:

\(R(X)=X\) (式5),

其中\(R(.)\)和\(X\)分别代表梯度反转层和输入特征。 在反向传播期间,梯度反转层(GRL)通过乘以\(-\lambda\)来反转前面特征提取器的梯度,如下式所示:

\(\frac{dR}{dX}=-\lambda I\),

其中\(I\)是单位矩阵,\(\lambda\)是适配因子,其取值设定为\(1\)。 我们的目标是提取真实域和虚拟域之间的共同属性,而非正常特征与异常特征之间的特性。因此,我们设计了两个独立的域分类器。这两个分类器分别作用于两个域中的正常特征或异常特征,这样一来,具有相同标签但处于不同域的特征将具有相似的分布。

3.4. Training and Inference

        损失函数。所提出的基于提示的特征映射框架(PFMF)采用统一的方式进行训练。总损失包含四项,即特征映射损失\(L_{m}\)、异常分类损失\(L_{a}\)、域分类损失\(L_{d}\)以及变分自编码器(VAE)重构损失\(L_{v}\)。对于\(L_{m}\),我们采用平均绝对误差(MAE)损失来最小化映射得到的异常特征与真实异常特征之间的误差。对于\(L_{v}\),我们也采用均方误差(MSE)损失来最小化输入的异常向量与变分自编码器的重构向量之间的误差。对于\(L_{a}\)和\(L_{d}\),应用交叉熵损失来实现异常分类或域分类。整个损失\(L_{all}\)是这三项的加权求和,如下式所示:

\(L_{all}=L_{m}+L_{a}+L_{v}+\lambda_{d} \cdot L_{d}\) (式7)。

我们通过实验发现,域损失权重\(\lambda_{d}\)的选择会对网络训练产生影响。

        推理。生成的异常情况使得网络能够以全监督的方式进行训练。给定一个未见过的实例\(S_{unseen}\),首先将其输入到特征提取器\(\theta\)中,然后再通过异常分类器\(\sigma\)。异常分类器中的分类结果被视作实例级别的异常分数,如下式所示:

\(分数 = softmax(\sigma(\theta(S_{unseen})))\) (式8)。

        按照文献[11]中的操作方式,实例级异常分数会被组合成一个与输入帧形状相同的异常图。帧级异常分数是通过获取该异常图中每一帧的最大值而得到的。

4. Experiments

表2. 我们提出的基于提示的特征映射框架(PFMF)与现有最佳方法在微平均和宏平均曲线下面积(AUC,以%表示)方面的定量对比。加粗字体表示最佳结果。 ▽ 这些方法应用虚拟数据集进行训练。这些方法将多任务模型([11]或[12])用作主干网络(基础模型)。

表3. UCF-Crime数据集中与人类相关异常情况的结果。

表4. 所提出的基于提示的特征映射框架(PFMF)的消融研究。在上海科技大学数据集上共进行了五组实验,以评估每个网络组件的效果。

图5. 通过t-SNE[45]可视化展示的由我们的基于提示的特征映射框架(PFMF)以及乔治斯库等人[11]的方法所生成特征的分布情况。蓝色点表示从上海科技大学[31]数据集和Avenue[29]数据集中正常视频提取出的特征。红色点表示由我们的基于提示的特征映射框架(PFMF)或[11]所生成的异常特征。就[11]而言,正常事件和异常事件的特征相互交织在一起,但我们所提出的基于提示的特征映射框架(PFMF)展现出了更好的性能,呈现出类似星云状的特征分布。正常特征集中、异常特征分散的这种模式与我们对异常情况的认知是相符的,即大多数正常行为是相似的,而异常行为则是一个高度多变的开放集合。该图表明所生成的特征与真实异常情况的分布较为接近。

图6. Avenue数据集中测试视频07的异常分数预测结果可视化展示。绿线表示所提出的基于提示的特征映射框架(PFMF)的异常预测情况。红色区域表示异常区间。

图7. 上海科技大学数据集中测试视频05_0018的异常分数预测结果可视化展示。绿线表示所提出的基于提示的特征映射框架(PFMF)的异常预测情况。红色区域表示异常区间。

5. Conclusion

        在本文中,我们通过提出一种新颖的基于提示的特征映射框架(PFMF)来解决虚拟场景与真实场景之间的异常差异和场景差异问题。所提出的框架包含一个提示引导的映射网络,用于生成类型不受限的未见过的异常情况,以及一个映射适配分支,通过应用异常分类器和域分类器来缩小场景差异。我们的方法为利用虚拟数据集提供了一种新范式,以避免在真实场景中繁琐的异常数据收集工作。所提出的基于提示的特征映射框架(PFMF)在三个基准数据集上达到了现有最佳性能,并且消融研究表明了我们模型设计中各个组件的有效性。未来,我们的目标是将所提出的利用虚拟数据集的范式扩展到更多领域。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值