TAAD

Spatio-Temporal Action Detection Under Large Motion[1]

作者是来自ETHZ的Gurkirt Singh, Vasileios Choutas, Suman Saha, Fisher Yu和Luc Van Gool。论文引用[1]:Singh, Gurkirt et al. “Spatio-Temporal Action Detection Under Large Motion.” 2023 IEEE/CVF Winter Conference on Applications of Computer Vision (WACV) (2022): 5998-6007.

Time

  • 2022.Oct

Key Words

  • track information for feature aggregation rather than tube from proposals
  • 3 motion categories: large motion、medium motion、small motion

总结

  1. 当前的STAD的tube detection的方法经常将一个给定的keyframe上的bbox proposal扩展成一个3D temporal cuboid,然后从邻近帧进行pool features。如果actor的位置或者shape表现出了large 2D motion和variability through frames,这样的pooling不能够积累有意义的spaito-temporal features。在这个工作中,作者旨在研究cuboid-aware feature aggregation in action detection under large action。进一步,提出了在large motion的情况下,通过tracking actors和进行temporal feature aggregation along the respective tracks增强actor feature representation,定义了在不同的固定的time scales下的actor motion的IoU。有large motion的action会随着时间导致lower IoU,slower actions会随着时间维持higher IoU。作者发现track-aware feature aggregation持续地实现了很大的提升in action detection
  1. 目前的很多工作聚焦于通过复杂的上下文建模和更大的backbone,或者利用光流stream,来提升action detection的性能。上述方法用了cuboid-aware temporal pooling for feature aggregation。在这个工作中,旨在研究action instance的不同角度的情况下的cuboid-aware action detection。large object motion有不同的原因:例如fast camera motion,fast action,body shape deformation due to pose change, or mixed camera and action motions。所有的这些原因会造成sub-optimal feature aggregation,导致action classification的错误。

  2. 作者将actions分成了3类:large motion、medium-motion和small-motion。这个区分是基于同一个actor over time的boxes的IoU,可以用actors的ground truth tubes来计算。研究cuboid-aware的基线方法在不同motion categories上的表现,不用context features或者long-term features之类的。因为large-motion在很短的时间窗口中发生的很快。large-motion cases, IoU会比较小,因此一个3D cuboid-aware feature extractor不能获取actor location上的features throughtout action。为了解决large-motion,提出了随着时间来track the actor,用 Track-of-Interest Align(TOI-Align)来extract features,resulting in Track Aware Action Detector(TAAD)。Further,研究了TOI-Aligned features上的不同类型的 feature aggregation modules for TAAD网络。

    为了这个目的,有以下的contributions:

    • 是第一个用evaluaiton metrics for each type of motion,来研究large-motion action detection。
    • 提出了用 tube/track-aware feature aggregation modules来处理large motion,这种类型的module实现了很好的提升。
  3. Related work: Action recognition models提供了很强的video representation models;action detection是一个在large motion下的理解actions的问题。主要关注于STAD 问题,这里一个action instance被定义为随着时间的一系列的linked bboxes。最近的online action detection的方法的性能直追离线的STAD的方法。MultiSports数据集有更多的fine-grained action class;有多个actors在同一个视频里执行不同类型的action。另外,MultiSports是一个densely annotated。 很多的方法关注于keyframe,基于action detection on AVA,long-term feature banks起到了重要作用,获得了一些temporal context,但是没有actors之间的temporal associations;另外也有人研究了actors和object之间的interactions。这些以上的方法都是用cuboid-aware pooling for local feature aggregation,作者们发现,当motion is quick和large,这不是最理想的方法。作者这里用SlowFast作为基线方法。

    Weinzaepfel是首个用tracking for action detection的工作,用一个tracker来解决tube generation part的linking问题,给定tracks中的bboxes proposals,可以on a frame-by-frame basis做action classification。作者提出通过pooling features from within entire tracks来处理action detection。

  4. Methodology:提出了处理large motions的方法,称之为Track Aware Action Detector(TAAD),在视频中track actor,同时,用了一个神经网络designed for video recognition,来从每个clip中提取特征。用track boxes和video features,pool per-frame features with a RoI-Align operation,之后,Temporal Feature Aggregation module得到per-track features,计算单个feature vector,这里classifier预测最后的action label。

    • Baseline Action Detector:选择Slowfast作为video backbone,原因是它相对于大型的transformer模型仍然有竞争力 on the task of STAD;另外,Slowfast比其它的transformer的方法更高效。而且提供了不同temporal scales的features,有不同的temporal scales是重要的,特别是作者旨在处理fast/large motions,where a smaller scale是必须的;最后Slofast是MultiSports和UCF24 datasets默认的backbone。用基于Slowfast的架构的pySlowFast with a ResNet-50来执行baseline。首先,增加background frame,作为训练action detector的额外的negative samples。接下来,用一个multiclass classifier来代替multi-label,switching from a binary cross entropy per class to a cross entropy loss(CE-loss)。最后,加一个downward FPN block

    • Tracker:用YOLOv5-DeepSort的class agnostic版本作为tracker,这个是基于YOLOv5和TrochReID,fine-tune YOlOv5的medium size作为detection model for person classes。一个预训练的OsNet-x0-25被用作ReID模型。一个high recall、small number of association的tracker对于提高action tube detection的性能是重要的。微调detector也是重要的一步。Tracker可以被用作bboxes proposal filtering module,有时候detector产生多个high scoring detections,有些会导致false positives,这些detections不和任何的tracks相匹配,因为它们时序上不是一致的。tracks产生的proposals能够在测试的时候用上。

    • Temporal Feature Aggregation

    1. Track-of-Interest Align(TOI-Align):SlowFast video backbone处理输入的clip,产生 \(T \times H \times W\) feature tensor,然而trackers返回一个 \(N_t \times T \times 4\)的array,包含物体附近的boxes。RoI-Align将这两个arrays作为输入,得到一个feature array \(N_t \times T \times H \times W\),one feature tube per track,在track的length小于input clip的情况下,在时序上复制最后的available bbox。
    2. Feature aggregation:为了预测keyframe中的bbox的label,需要aggregate features across time and space。首先,在TOI-Align提取出来的features上,在空间维度上做一个average pooling,然后执行Temporal Feature Aggregation的一个变体。
      • Max-pooling over temporal axes(MaxPoo)
      • A sequence of temporal conv(TCN)
      • A temporal variant of Atrous Spatial Pyramid Pooling(ASPP),修改Detectron2中的ASPP,用1D conv代替2D 也尝试了ConvNeXt和VideoSwin的temporal version,然而,这些导致不稳定的训练,即使调整学习率和其它的超参数,实验中,仅用了temporal conv for TCN module的一个layer。
    • Tube ConstructionVideo-level tube detection要求从per-frame detections中构建action tubes。这个过程分为两步:首先将proposals连接起来形成tube hypotheses;然后trim这些proposals,得到有action的部分。可以将这两部视为tracking step加上一个temporal action detection step。大多数的 action tube detection method在第一步用一个贪心的proposal连接算法;由于TAAD已经有tracks,所以不需要linking step。action tracks的temporal trimming是通过label smoothing optimisation来做的,之前的很多工作都用到了,具体地,用了class-wise temporal trimming
  5. 实验:

  6. 讨论和结论:在实验中发现,TAAD用tracking information for feature aggregation,而不是从proposal boxes得到的tube,提高了性能,这不意味着没有了提高的空间,作者的方法对于tracker的性能比较敏感,因为这是pipeline的第一步。用更好的SOTA的tracker和person detector,可以进一步提高性能。通过在TAAD中加上spatial/actor context modelling, long-term temporal context 或者一个transformer head or backbone,也能提高性能。 关于motion 分类的定义可以说是不精确,不同于MS COCO中的object size类别,motion 类别不容易定义。除了普遍的复杂的相机运动和quick actor motion外,必须特别注意错误标记。

Pipleline of TAAD

\(Figure \ 1^{[1]}\): Proposed Track Aware Action Detector (TAAD): Given an input clip with T frames, we extract features using a video recognition network and Nt per-actor tracks from a tracker. The TOI-Align operation extracts per-track features from the entire video sequence, using an RoI-Align operation and the track boxes, returning a \(N_t × T × C\) feature array. Next, the Temporal Feature Aggregation (TFA) module aggregates the features along the temporal dimension and passes the resulting \(N_t × C\) array to the action classifier that predicts the action label.