YOWOv3_lightweight

YOWOv3: A Lightweight Spatio-Temporal Joint Network for Video Action Detection[1]

作者是来自江南大学的Anlei Zhu, Yinghui Wang等人。论文引用[1]:Zhu, Anlei et al. “YOWOv3: A Lightweight Spatio-Temporal Joint Network for Video Action Detection.” IEEE Transactions on Circuits and Systems for Video Technology 34 (2024): 8148-8160.

Time

  • 2024.Sept

Key Words

  • Channel Fusion and Attention Convolution Mix(CFACM) module
  • spatio-temporal shift module
  • 一句话总结:借鉴了前人的 ACmix(Attention Channel mix)TSM(Temporal shift module) 模块,将它们拿过来缝合一下,完了。。。

总结

  1. 时空行为检测网络,需要同时提取和融合时间和空间特征,经常导致目前的模型变得膨胀和很难实时和部署在边缘设备上,文章引入了一个高效实时的时空检测网路模型,YOWOv3,这个模型用了3D 和2D backbone 来本别提取时间和时空特征,通过继承卷积和自注意力,来设计一个轻量的时空特征融合模块,进一步增强了时空特征的抽取。将这个模块称之为CFACM,这个方法不仅在lightness上超过了最新的高效的STAD模型,减小了24%的模型的大小,同时提高了mAP,保持了很好的速度。现有的模型用3D 卷积来提取时序信息,会受限于特定的设备上,为了减小3D卷积操作的潜在的不被支持在边缘部署的问题,用了一个时空shift module by 2D 卷积,使得模型能够获取时序信息,将得到的特征插入multi-level spatio-temporal feature extraction models.这样不仅将模型从3D 卷积操作中释放出来,同时也很好地balance了速度和精度。
  1. STAD相比于传统了视觉目标检测,不仅需要检测行为主体,也需要独立地分析行为主体的行为。那就是理解目标的行为,例如开和关。不同用单张图像信息完成,需要时序信息。然而,一旦时序提取网路引入之后,模型变得臃肿,很难部署和直接使用。因此设计一个高效、轻量的时空行为检测网络是一个深度学习追求的目标。基于2D 卷积的方法能保证网络的轻量,但是很难捕捉时序信息。导致进度的下降。例如C3D、I3D用3D 卷积来捕捉时序信息。尽管这种方法能够精确地捕捉时序信息,参数大小和计算成本比较大,使其很难部署和实时运行。基于Transformer的模型能够有效地捕捉时序信息。

  2. STAD不等同于图像目标检测,主要的区别在于action sequences的识别,不仅是单张图片的目标的识别这就要求模型能够检测到目标。基于3D CNN的方法,首先用I3D来产生action area suggestions,然后用Transformer-style架构来汇聚特征。

  3. 受YOWO的启发,进一步研究设计了一个更先进的STAD网络,利用主流的YOLOv8来提取空间特征。为了避免的3D CNN造成了网路臃肿的问题,用了一个仅有2D CNN的module来做spatio-temporal action recognition,通过Temporal Shift Module来得到时空特征信息。

  4. 采用了YOLOv8作为spatial feature extraction的backbone。用了一个高效的3D CNN来提取时序信息。

  5. Channel Fusion and Convolution Attention Mix Module:提取到的特征被压缩之后,仅用卷积来融合空间和时空特征是不能得到全局特征。为了融合时空和时序特征,首先将它们在channel维度上进行concatenate,抽取时序特征之后,在最后的特征层上进行upsampling。因此,由于自注意力会带来计算量和参数量,不直接执行自注意力的计算。受ACMix的启发,结合卷积和自注意力,首先,用两个标准的 \(3 \times 3\) 卷积从concatenated features中提取特征,然后用3个 \(1 \times 1\)卷积来映射features。然后将它们reshape成 \(N\) pieces。得到丰富的中间特征 \(3 \times N\) feature mappings。之后,中间特征分为两个branches,一个分支执行自注意力:其中,shift和aggregation操作用来实现从local receptive field。另一个分支进行卷积计算。最后将两个分支的结果进行concatenated。

  6. 在实际中,发现ACMix需要大量的时间开销,因为它的unfold的设计需要高的内存消耗。为了避免这个,将window进行划分,进行cross-sparse自注意力计算,来减小运行时间。如图所示,思路就是:先在窗口内进行注意力的计算,得到局部的信息,然后通过Permute method,执行window内的计算。

  7. 用3D卷积能实现捕捉时序特征,但是一些设备不支持卷积操作,很难部署。另一个问题是:轻量的3D 卷积提取时序特征确保了模型的高效,但是精度会下降。为了解决3D卷积的问题,不需要对整个网络做很多改变。放弃了3D backbone,在2D 卷积上加了一个Temporal Shift Module来提取时序信息。通过这个时空shift module,输入的视频帧序列are shifted forward or backward in time。增加了temporal information的diveristy,以2D的方式,获得了时序信息。这个过程如图所示。首先,输入的视频进行格式转换,Temporal Shift Module取代了2D backbone中的InvertedResidual结构,使得其能够提取时序信息。在head processing之后,得到了时序特征。下一步就是融合时空特征,得到最后的时空行为检测模型。

Structure \(Fig.1^{[1]}\) The Structure Diagram of the YOWOv3 Framework. The input video frames are separately processed through the spatial backbone network and the spatio-temporal backbone network to extract features. The spatial backbone network utilizes a feature pyramid to extract richer multi-level features. T represents the number of frames in the input video, which is 16 in this context. Upsampling is utilized to align the spatio-temporal features with the spatial features.

CFACM \(Fig.2^{[1]}\) The Structure Diagram of the CFACM Module. The Decoupled Feature Fusion Header inputs \(F_{Cls i}\) and \(F_{Reg i}\) are respectively fused with the extracted temporal features using the CFCAM module. When engaging with the advanced convolution and self-attention fusion module ACISA, 2D positional encoding is performed prior to the computation of the self-attention branch. The self-attention and convolution branches are then concatenated using adaptive weights \(\alpha\) and \(\beta\).

CFACM Attention $Fig.3^{[1]} Self-attention computing branch of CFACM Module. The calculation process of the two attention mechanisms is consistent, but their inputs Q, K, V come from different sources. In the first self-attention calculation, Q, K, V come from three different features. In the second self-attention calculation, Q, K, V come from the same feature that has been integrated

Temporal Shift Module \(Fig.4^{[1]}\) Spatio-temporal extraction branch based on temporal shift module with only 2D convolution.