OOD:Holistic Representation Learning for Multitask Trajectory Anomaly Detection

摘要

papercode
https://arxiv.org/pdf/2311.01851v1.pdfhttps://github.com/alexandrosstergiou/TrajREC
  • 在 2023 年计算机视觉应用冬季会议 (WACV 2024) 上接受,作者来自比利时布鲁塞尔自由大学(Vrije Universiteit Brussel),荷兰语

  • Baseline : https://arxiv.org/pdf/1903.03295.pdf
    在这里插入图片描述

  • 本文提出了一种通过骨架序列来解决视频异常检测的问题。提出了一种方法,利用骨架轨迹的整体表示来学习不同时间跨度的预期运动。所提的方法采用多任务学习,以重建轨迹中任何连续的未观察到的时间段,从而可以推断过去或未来的段以及中间段之间的插值。模型采用了端到端的基于注意力的编码器和解码器模型。通过对时间遮挡轨迹进行编码,共同学习了遮挡段的潜在表示,并根据不同时间段的预期运动来重建轨迹。我们在三个基于轨迹的视频异常检测数据集上进行了大量实验,结果显示了我们方法的优势和有效性,并在骨架轨迹中获得了最先进的异常检测结果。

创新点总结:

  1. 整体骨架轨迹表示:提出了一种整体表示的骨架轨迹,能够有效学习视频中不同时间跨度的预期运动。

  2. 多任务学习与插值:利用多任务学习技术,重建轨迹中的未观察到的时间段,从而实现对过去或未来段的推断以及中间段的插值。

  3. 端到端注意力编码器-解码器模型:采用端到端的基于注意力的编码器-解码器模型,能够有效地处理轨迹数据,提高异常检测的准确性。

  4. 共同学习时间遮挡轨迹:通过编码时间遮挡轨迹,共同学习遮挡段的潜在表示,提高了模型对遮挡情况的处理能力。

  5. 实验验证:在多个基于轨迹的视频异常检测数据集上进行了实验,结果表明了方法的优势和有效性,并在骨架轨迹中获得了最先进的异常检测结果。

方法

定义

  • 文中介绍了用于学习轨迹正常模式的整体多任务方法。每个潜在空间轨迹段通过第 3.3 节中定义的正负对自监督对不同时间的正常轨迹的预期进展进行编码。潜在片段表示被解码到输入空间并与正常/异常轨迹进行比较,如第 3.4 节所述。

  • 我们将 T 帧上的完整连续轨迹表示为 v ∈ R T × N v ∈ R^{T\times N} vRT×N,其中 N 是每个点 x 的空间坐标个数, t = { 1 , . . . , T } t = \{1, ..., T \} t={1,...,T}。文章将子序列定义为超过 t ^ \hat t t^ 个时间位置的连续片段 s s s

  • 该研究将整个轨迹 v v v的运动信息从输入空间编码到潜在空间 R T × N R^{T\times N} RT×N内的表示 z z z。潜在空间中的每个点 z t i z_{t_i} zti对应于轨迹在时间 t i ∈ t t_i \in t tit的空间点。该研究的目标是在仅观察到轨迹的一部分 v ∖ s = { x : x ∈ v v \setminus s = \{x : x \in v vs={x:xv x ∉ s } x \notin s\} x/s}时,推断被遮挡的片段 s s s及其表示。使用编码器 B B B将每个点 x x x编码到潜在空间 B ( { x ; v ∖ s } ) B(\{x; v \setminus s\}) B({x;vs}),然后将潜在表示与学习的张量相结合以形成估计的潜在轨迹。使用解码器 D D D将时间点 t i t_i ti处的每个表示解码回输入空间并获得点 x ^ \hat{x} x^

多任务整体轨迹

  • 通常基于骨架的视频异常检测方法仅针对单个未来片段推断预期的运动模式。然而,本文认为联合学习多个轨迹对于区分可能发生在不同时间的异常以及学习全局轨迹的高级理解至关重要。例如,一个正在减速的人的未来轨迹不太可能包含异常,而过去轨迹可能会。
  • 因此,本文提出了轨迹的整体表示,涵盖过去、现在和未来的片段。给定部分轨迹 v ∖ s v \setminus s vs,本文预测了三个任务的被遮挡的段 s = { x t i : t i ∈ t ^ } s = \{x_{ti} : t_i \in \hat{t}\} s={xti:tit^}
  • 在多任务训练方案中共同探索这些任务。每个被遮挡的 Pst、Prs 和 Ftr 段的潜在表示由解码器联合学习并重建回输入空间。

根据过去预测未来

  • 由仅包含过去片段的部分轨迹 v \ s 组成,估计未来时间段 t ^ = { T F t r , . . . , T } \hat{t} = \{T_{F tr} , ..., T \} t^={TFtr,...,T}

根据未来预测过去

  • 从仅包含未来片段的部分轨迹 v \ s 中,估计过去时间段 t ^ = { T , . . . , T P s t } \hat{t} = \{T , ..., T_{Pst} \} t^={T,...,TPst}

给定过去和未来,预测当前

  • 在过去和未来之间的时间段 t ^ = { T P s t + 1 , . . . , T F t r − 1 } \hat{t} = \{T_{Pst+1} , ..., T_{Ftr-1} \} t^={TPst+1,...,TFtr1}被称为当前时间段,并从仅包含过去和未来片段的部分轨迹 v \ s 中估计。

在这里插入图片描述

潜在表示学习

  • 本文使用基于注意力的编码器 B,仅应用于轨迹 v \ s 的非遮挡部分。本文使用骨架关键点和相应的边界框角点的轨迹。本文定义一个可学习的张量 u = { z t i , t i ∈ t } u =\{z_{ti} , t_i ∈ t\} u={zti,tit},其大小与完整轨迹的表示相同,即 ∣ u ∣ = ∣ B ( v ) ∣ ∣u∣ = ∣B(v)∣ u∣=∣B(v)。对于每个任务,本文选择与轨迹 v 中的遮挡 s 对应的段 u s = z t i , t i ∈ t u_s = {z_{t_i} , t_i ∈ t} us=zti,tit与观察到的轨迹潜变量结合在一起:

在这里插入图片描述

  • 其中,Φ是一个函数,根据s在v中的时间位置重新排序 B ( x ; v ∖ s ) ∪ u s B({x; v \setminus s}) ∪ u_s B(x;vs)us。本文进行推理,同时获得整个序列 z = B ( v ) z = B(v) z=B(v)的表示。
  • 同时,本文希望每个学习到的向量 z ^ t i ∈ u s \hat{z}_{t_i} \in u_s z^tius 都能在时间点 t i t_i ti 处与对应的轨迹表示 z t i ∈ B ( v ) z_{t_i} \in B(v) ztiB(v) 更接近,同时远离其他轨迹点或其他随机点的表示。为了鼓励这一点,本文基于潜在空间中的正负对定义了一个目标。

正对

  • 本文希望最小化可学习的向量 z ^ t i \hat{z}_{t_i} z^ti 与时间点 t i t_i ti 处的轨迹表示 z t i z_{ti} zti 之间的距离。因此,本文将对 ( z ^ , z , i ) (\hat{z}, z, i) (z^,z,i) 定义为正对,表示为 P + ( z ^ , z , i ) = ∣ ∣ z ^ t i − z t i ∣ ∣ 2 P^{+}(\hat{z}, z, i) = ||\hat{z}_{t_i} - z_{t_i}||^2 P+(z^,z,i)=∣∣z^tizti2

软负对

  • 给定在时间位置 t j ≠ t i t_j \neq t_i tj=ti 处的其他表示 z t j z_{t_j} ztj,本文希望最大化它们与 z ^ t i \hat{z}_{t_i} z^ti 的距离。然而,由于 z t j z_{t_j} ztj 属于相同的轨迹,而 z ^ t i \hat{z}_{t_i} z^ti 是其估计,它们很可能包含一些相似之处。
  • 因此,本文将 ( z ^ t i , z t j ) (\hat{z}_{t_i}, z_{t_j}) (z^ti,ztj) 视为软负对,它们的差异受其时间距离的正则化约束。本文希望对时间上接近的点对的惩罚较小,相对于时间上较远的点对: R ( t i , t i + 1 ) < R ( t i , t i + 2 ) R(t_i, t_{i+1}) < R(t_i, t_{i+2}) R(ti,ti+1)<R(ti,ti+2)。软负对惩罚定义为(β是用于调整惩罚的超参数):

在这里插入图片描述

硬负对

  • 本文从其他轨迹中选择段 s ′ s' s 的潜变量作为硬负对。由于每个段 s s s 是唯一的轨迹 v v v 的一部分,因此,没有来自段 s ′ s' s 的任何表示 z ′ z' z 应该对应于 z ^ t i \hat{z}_{ti} z^ti。因此,本文还希望最大化它们之间的距离,表示为 H − ( z ^ , z ′ , i ) = ∣ ∣ z ^ t i − z t i ′ ∣ ∣ 2 H^-(\hat{z}, z', i) = ||\hat{z}_{ti} - z'_{ti}||^2 H(z^,z,i)=∣∣z^tizti2

最终的损失

在这里插入图片描述

轨迹段重建

  • 本文希望从潜在空间 R T × C R^T \times C RT×C 解码轨迹的空间点的表示,将其还原到输入空间 R T × N R^T \times N RT×N。解码器 D D D 利用公式(1)中的信息,并将轨迹 KaTeX parse error: Undefined control sequence: \s at position 2: v\̲s̲ 的未遮挡部分的表示 KaTeX parse error: Undefined control sequence: \s at position 9: B(\{x; v\̲s̲\}) 以及被遮挡的学习到的段 u s u_s us,重新投射回 R T × N R^T \times N RT×N。由于地面真实轨迹 v v v 和估计的 v ^ = D ( a ) \hat{v} = D(a) v^=D(a) 都是可用的,因此解码器明确地在重构方面进行训练,而不是进行额外的插值。

在这里插入图片描述

在这里插入图片描述

  • 其中 λ 是一个超参数,根据属于骨架关键点或边界框角的轨迹进行调整。在每个训练步骤中,我们在梯度更新之前为每个 Pst、Prs 和 Ftr 任务外推/内插相同数量的轨迹段。由于每个任务使用不同的段 u,因此会累积计算整个 u 的更新以稳定训练。

实验

数据集

  • 本研究报告了我们的框架在多个视频异常检测(VAD)数据集上的性能。这些数据集包括与人类相关的上海科技大学校园(HR-STC)、HR-Avenue、UBnormal和HR-UBnormal。HR-STC包含13个场景、303列火车和101个测试视频,共包含130个异常事件。HR-Avenue数据集包括一个单一场景,包含16个训练视频和21个测试视频。UBnormal数据集是由29个合成场景组成,使用了Cinema4D和自然背景合成,其中包含186个正常训练视频和211个测试视频。而HR-UBnormal是UBnormal数据集的子集,仅包含了测试集中的HR异常。我们在所有数据集上使用了提供的骨架关键点和通过AlphaPose检测到的边界框坐标。根据先前工作,我们使用了接收者操作特征曲线下面积(AUC)分数作为我们的性能指标。

设置

  • 在模型设置方面,我们在所有三项任务(Ftr、Pst 和 Prs)上进行了联合训练。我们直接与 Ftr 的最新技术进行比较,因为它主要用于视频异常检测(VAD),并提供了 Pst 和 Prs 的基线。总的来说,我们采用了两个STTFormers [43],一个作为编码器 B,用于将轨迹点投影到 R,第二个被反转并用作解码器,将点投影回 R。除非另有说明,我们使用 T = 18 个轨迹帧,其中包含分段∣̂ t ∣ = 6 的长度。这对应于 18 × (17 + 4 ) × 2 的输入序列,其中 17 是骨架关节的数量,4 是骨架边界框的角点,2 对应于它们的空间位置。学习到的潜在张量 u 的大小为 ∣u ∣ = 18 × 256。使用 1e^{-4} 学习率和批量大小 512 进行训练。我们使用 β = 0.001 和 γ = 0.1,其中 λ = 5 表示关节,λ = 3 表示边界框角轨迹。补充材料的§S1 中显示了不同超参数组合的 AUC 分数概述。

结果比较

在这里插入图片描述

  • *为对特定任务的重新训练

  • 在表1中,本文报告了三项任务的AUC分数;从过去的关键点外推到未来的关键点Ftr,从未来的关键点外推到过去的关键点Pst,以及从未来和过去的关键点中间预测当前关键点的插值任务Prs。当前模型无法同时进行关键点的外推和插值,而是仅限于未来的外推Ftr。本文选择MPED-RNN [36]作为以前未探索的过去外推Pst和当前插值Prs的基线,因为它作为VAD基线的常用并且有开源实现。由于MPED-RNN的设计不允许多任务学习,因此本文单独为Pst和Prs进行重新训练。

  • HR-STC。在Ftr任务中,本文展示了提出的方法优于所有其他单任务方法。本文在基线[36]上实现了+2.5的AUC分数改进,并且比最佳的单任务模型[16]实现了+0.3的改进。对于Pst,本文的模型实现了75.7的AUC分数,在[36]上的改进为+3.6。在Prs任务中也观察到了类似的分数增加,比基线高出+3.7。本文方法的灵活性使其能够学习和推断整个轨迹的整体表示,这显然有利于同时进行所有三项任务。

  • HR-Avenue。与基线相比,本文观察到Ftr、Pst和Prs任务的AUC分数分别提高了+3.2、+3.8和+4.9。本文的方法还在Ftr任务上超过了以前的最先进模型[16],AUC分数增加了+0.4。

  • HR-UBnormal。本文观察到性能相对提高的幅度也因数据集而异,Ftr的AUC分数增加了+7.0,Prs增加了+4.8,Pst增加了+5.7。本文认为这是由于数据集的场景多样性造成的。由于UBnormal使用合成数据,本文推测基于生成模型的方法,例如[16],可以更好地模拟合成轨迹中的运动。在完整的UBnormal数据集上的结果与HR-UBnormal子集的趋势相同。与基线相比,跨任务的最大改进观察到Ftr,AUC分数增加了+7.4,其次是Pst,增加了+6.3。对于Prs任务,本文注意到AUC分数增加了+5.1。

定性结果

  • 在图3中,我们展示了正常和异常序列的重构轨迹段的示例。正常轨迹的外推和插值段对于Ftr、Prs和Pst分别显示在图3a、3b和3c中。对于所有任务,模型能够学习连续序列,重建骨架中的运动平稳进行。在输入中不是所有关节都可见或被识别的情况下(图3c),预测关节的空间位置与相邻的观察到的关键点相对合理。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 在图3d、3e和3f中,我们展示了包含异常的段的重构。由于这些段的行为和动作不是训练集的一部分,基于高重构误差可以轻松检测到外推或插值段为异常。在外推任务中,重建的轨迹段类似于预期正常行为的运动。相比之下,插值需要根据给定的过去和未来关键点填充被遮挡的段。由于前后帧也可能是异常的(图3e),产生的重构表现出低置信度,表明当起始和结束帧异常时,不存在正常段。
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 图 3. HR-STC 的正常和异常骨骼轨迹重建。输入轨迹是来自 18 帧的关键点,其中 Ftr、Prs 和 Pst 任务的每个预测片段为 6 帧。无背景部分是对每个场景中所有骨骼的正常行为的合理预测。

消融

  • 研究在本节中,我们对轨迹长度进行消融,报告模型在持续时间增加的段上的性能。此外,我们还通过不同的学习方案和单任务设置来评估我们的方法。最后,我们展示了具有不同初始化的多次运行的 AUC 分数,并显示了每次运行的重建示例。

轨迹和段长度

  • 轨迹和段长度。轨迹及其相应段的长度可以不同。我们在多个轨迹长度∣T ∣上评估我们在 HR-STC 和 HR-Avenue 上的方法。同时保持被遮挡段的大小等于轨迹的三分之一。如表 2 所示,我们的模型在任务和轨迹长度方面始终优于基线 [36]。当增加 ∣T ∣ = 18 → ∣T ∣ = 36 时,观察到 HR-STC 和 HR-Avenue 的跨任务 AUC 分数平均下降 -2.0 和 -2.6。这种下降对于 -4.8 的基线更为普遍。 HR-STC 和 HR-Avenue 为 -3.9。因此,轨迹的整体表示和多任务学习是从持续时间较长的轨迹中重建片段的更好策略。

在这里插入图片描述

  • 遮挡长度。我们在表3中比较了我们的方法在不同遮挡长度下的重构性能。我们保持输入的时间分辨率∣T ∣ = 18,并逐渐增加遮挡段的长度;∣̂t∣ = {3, 6, 9, 12}。较大的遮挡对应于观察到的输入量较少。通过多任务学习训练的模型在遮挡段长度增加时仅表现出适度的AUC分数下降。我们注意到,单任务模型,包括基线和我们针对每个任务单独训练的模型us = u,在遮挡段长度增加时表现出明显的性能下降,因为它们没有学习到对全局轨迹的高级理解。

  • 软硬负对。我们还在表3中包括了对硬负对H−和软负对S−对AUC分数的影响的消融实验。如所示,删除H−和S−中的任何一个都会导致跨任务和遮挡段尺寸的AUC分数总体下降。当删除H−时观察到稍微更大的AUC分数下降,我们认为这是由于来自不同轨迹的点比来自当前轨迹的点更强的负对。
    在这里插入图片描述

  • 多重预测。与未来、过去或现在事件对应的正常行为的重构的一个重要方面是它们的可预测性。VAD模型需要稳健地外推(或插值)预期正常行为的遮挡轨迹段。在表4中,我们展示了在HR-STC和HR-Avenue上多次运行的AUC分数,没有观察到性能的明显变化。表4中每次运行的未来关键点预测示例如图4所示。尽管它们存在差异,但这三个重构的骨架确实对应于预期的正常运动。

  • 表 4. 多次运行中 HR-STC 和 HR-Avenue 的 AUC 分数。最佳运行用(最佳)表示。
    在这里插入图片描述
    图 4. HR-STC 上的多个 Ftr。给定相同的输入,我们为每次运行重建与表 4 中的模型相对应的未来骨架。预测的未来关节在不同运行中有所不同,但所有模型都会学习预期正常行为的稳健表示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值