当前位置: 首页 > article >正文

DeepGaitV2:显式时间建模,CNN和Transformer在步态任务上的影响

Exploring Deep Models for Practical Gait Recognition

论文链接:http://arxiv.org/abs/2303.03301

代码链接:https://github.com/ShiqiYu/OpenGait

一、摘要

  文中提出了一个统一的视角,探讨如何构建用于最先进的户外步态识别的深度模型,包括经典的基于CNN的和新兴的基于Transformer的架构。具体而言,探究了浅层步态模型,并展示了显式时间建模深度Transformer结构对于区分性步态表示学习的优越性。因此,所提出的基于CNN的DeepGaitV2系列和基于Transformer的SwinGait系列在Gait3D和GREW上展现出显著的性能提升。至于受限的步态数据集,DeepGaitV2系列在大多数情况下也达到了新的最先进水平,有力地展示了其实用性和普适性。

二、创新点

  1) 强调普适性:为了确保结论的适用性,选择采用广泛接受的block和步态backbone,而非依赖特别设计的框架。这个决定可以增强所提模型的实用性和普遍性。

  2) 深刻的发现和实用的解决方案:本文通过关注深刻的发现和实用的解决方案,而不是花哨的网络设计而脱颖而出。通过直接解决关键挑战,DeepGaitV2 和SwinGait 在步态识别方面取得了显著进展。

在这里插入图片描述

三、原理

Deep Models for Practical Gait Recognition
作者进行了全面的研究,从系统的角度探索深度步态设计的新经验原则。

  图 3(a)所示,文中采用了由 OpenGait [6] 总结的通用步态框架。文中侧重于骨干网络的设计,同时保持其他部分不变。图3(b)展示了用于构建深度步态模型的2D、3D 和伪 3D 残差单元。伪3D 残差单元由一个1D 时间和两个2D 空间卷积层组成。此外,流行的Swin Transformer [12] 及其3D 变体如图3(c)所示也被引入,以构建深度步态变换器。
在这里插入图片描述

3.1. Breaking the Stereotype of Shallow Gait Models

在这里插入图片描述

  如表 1所示,通过堆叠五层,即初始卷积(Conv0)和接下来的四个阶段(Stage 1至4),构建了一个DeepGaitV2-3D系列1。每个阶段堆叠的残差块数量,记为B,决定了网络的深度。例如,如果将B设置为[1,1,1,1],则网络深度应为 2 × ( 1 + 1 + 1 + 1 ) + 2 = 10 2×(1+1+1+1)+2=10 2×(1+1+1+1)+2=10,其中最后的+2表示初始Conv0和最终头层。因此,表1呈现了深度从10到30不等的一系列DeepGaitV2-3D。请注意,DeepGaitV2-3D的第1阶段由2D残差单元组成,以提高计算效率。将所有3D块替换为它们的2D对应物以设计DeepGaitV2-2D。

(说明:将[6]中的GaitBase视为深度ResNet用于步态建模的开创性尝试,并将其称为DeepGaitV1。因此,基于CNN的步态模型被称为DeepGaitV2。)

在这里插入图片描述

  正如图 4所示,受限和真实世界的步态评估之间在性能趋势上存在显著差异。具体来说,应用于Gait3D和GREW的深度模型带来了显著的好处,而在CASIA-BOU-MVLP上观察到了截然不同的结果。

在这里插入图片描述

  图5中更进一步的分析显示了CASIA-BOU-MVLP上的过拟合现象,也就是22层的DeepGaitV2-3D收敛更好但性能不如其10层的对应网络。

  此外,在CVPR2023提出的最新受限步态数据集SUSTech1K和CCPG上也发现了类似的过拟合现象。尽管引入了新的人控挑战,如夜间照明、复杂遮挡和多样化的服装变化,深度模型在这些步态数据集上仍然表现出过拟合行为

  尽管在受限步态数据集上取得了上述成功,作者认为这种刻板印象严重阻碍了步态识别的实际应用。受限步态数据集通常由研究人员控制了有限数量的协变量,这不可避免地简化了步态识别任务。尽管这种数据收集策略在早期步态研究中发挥了重要作用,通过可控的注释和数据分发探索影响识别准确度的关键因素,但也带来了一个缺点。步态模型可能会忽略微妙的行走模式,而是专注于捕捉明显的、不变的与步态无关的特征。例如,CCPG [8]表明,当引入多样化的服装变化协变量时,深度网络往往会集中于脸部和鞋子。因此,过去认为步态识别是浅层模型可以轻松解决的任务

  对于真实世界步态数据集,其全面、多样化和有偏的分布显著增加了步态识别的挑战。正如图 4(c)和(d)所证实的,深度网络的需求变得明显。因此,本文建议未来的研究应该将深度模型作为真实世界步态应用的基础架构。为此,建议将10层和22层的DeepGaitV2模型作为受限和真实世界评估的基准参考

3.2. Superiority of Explicit Temporal Modeling

  捕捉步态过程中的身体变化对于步态描述至关重要。在最近的文献中,一种流行的方法是将步态视为一个无序的轮廓集合[2]。其核心思想源自观察到人们只需看外观就能轻松识别步态循环中某个时间位置的轮廓。这是因为步行过程通常具有周期性。因此,基于集合的方法认为顺序信息是不必要的,往往不会明确利用相邻帧之间的动特征。另一方面,基于序列的方法通常将重点放在设计时间模型上

  DeepGaitV2-2D和3D分别展示了纯粹基于集合和基于序列的DeepGaitV2,前者仅包含2D残差块,而后者主要由3D块组成。图 4 显示,基于序列的DeepGaitV2在各种主流步态数据集上明显超过了基于集合的对应网络结构。为了进一步确认显式时间建模的有效性,进行了以下实验:

  • 在对输入帧进行混洗后,破坏了相邻轮廓之间的依赖关系,明显出现了准确性下降。如图6中的阴影区所示,准确性下降明显:对于CASIA-B、OU-MVLP、Gait3D和GREW分别为-9.6%、-3.7%、-12.7%和-15.8%。这些结果有力地展示了序列特征对步态建模的重要性序列特征对步态建模很重要)。
    在这里插入图片描述

  • 排除3D块的增加参数和计算成本带来的潜在好处,开发了DeepGaitV2的一种轻量级对应称为P3D2。如图6所示,DeepGaitV2-P3D的性能竞争力甚至优于其3D对应网络。此外,在CASIA-B、OU-MVLP、Gait3D和GREW上,显然优于其2D对应网络,即分别为+0.8%、+1.9%、+6.2%、+9.1%

3.3. Superiority of Deep Gait Transformer

  深度Transformer模型通常将输入的RGB图像分成不重叠的块。每个块被视为“token”,其特征被表示为原始RGB像素值的串联。然后,在这些token的线性嵌入上执行自注意机制或其变体。然而,对于步态识别,通过直接分割二值轮廓生成的大量块包括全白或全黑区域。这些块不提供任何边缘或形状特征,因此被称为“无用”块。统计分析显示,在使用 64 × 64 64 ×64 64×64的图像大小和大小为 4 × 4 4 ×4 4×4的块时,GREW数据集中有84.1%的块是这种无用的块。由于无用块内的所有值只能是零或一,这些块使得对底层Transformer层的训练参数进行优化的反向梯度在计算上特征上毫无用处甚至无效。

在这里插入图片描述

  为了解决这个问题,已经考虑了三种直接的解决方案:

  • 通过使用较大的patch尺寸。通过将patch尺寸设置为16 ×16,GREW数据集中无用patch的比例降至46.2%。然而,这意味着轮廓将直接被输入层下采样1/16。这样,只有 64 16 × 64 16 = 16 \frac{64}{16} × \frac{64}{16} = 16 1664×1664=16个token将被馈送到后续的Transformer主干,使得难以层次化地捕获细粒度的步态特征。

  • 复制卷积机制,即通过小步长的滑动窗口对轮廓进行分区。这种策略可以线性地减少无用块的比例。然而,生成无用甚至无效梯度的风险仍会呈二次增长,因为只要查询-键对中的任何单个块属于无用块,则会发生这些冗余情况。

  • 采用图中显示的另一种应对策略,即将前两个阶段实例化为卷积块。得益于分层卷积层的滑动窗口机制和非线性建模能力,Conv0、阶段1和阶段2可以将二进制轮廓数据转换为浮点编码特征图,从而提供密集的低级结构特征。之后的Transformer层,即第3阶段和第4阶段,将利用先进的基于Transformer的模块学习高级识别特征。采用广泛接受的2D和3D Swin Transformer块 [12, 13],如图3 (c) 所示,分别构建SwinGait-2D及其3D对应物。主要原因有两个:(1)在局部时空窗口进行自注意力操作,能够探索局部外观和运动细节,以进行细粒度步态描述。(2)Swin Transformer 有出色的速度-准确度权衡。

在这里插入图片描述

  如图7所 示,SwinGait-2D/3D中Conv0、Stage 1和Stage 2的结构继承自DeepGaitV2-2D/3D,以便进行公平比较(在Gait3D数据集上,由于DeepGaitV2-P3D的性能优于其3D对应物,SwinGait-3D继承了DeepGaitV2-P3D)。在这些卷积块之后,特征图的大小为 T × 2 C × 32 × 22 T ×2C ×32 ×22 T×2C×32×22,其中T 是帧数,C是通道数。为了匹配下游Transformer块所需的大小限制,通过双线性插值层逐帧将这些特征图调整为 2 C × 30 × 20 2C ×30 ×20 2C×30×20。然后,将每个大小为 2 C × 2 × 2 2C ×2 ×2 2C×2×2的三维块视为一个token。因此,三维块分割层获得 T × 30 2 × 20 2 T × \frac{30}{2} × \frac{20}{2} T×230×220个三维token,每个块/token包含一个 8 C 8C 8C维特征。然后,应用线性嵌入层将每个token投影到一个 4 C 4C 4C维向量。

在这里插入图片描述

 SwinGait-2D/3D的第3和第4阶段由标准的2D/3D Swin Transformer块组成。具体来说,2D Swin Transformer [12]通过基于偏移窗口的模块替换了标准的多头自注意力模块构建而成。如图 8 (a)所示,2D偏移窗口连接了前一层的窗口,为它们提供了连接。图8 (b)显示的3D Swin Transformer将局部注意力计算的范围从仅空间域扩展到时空域。在实现中,2D和3D Swin Transformer块的3D窗口大小分别设置为(1, 3, 5)和(3, 3, 5)。此外,第3和第4阶段被另一线性嵌入层连接,负责将每个token的特征映射到一个 8 C 8C 8C维向量。

四、实验

Datasets. 使用了六个流行的步态数据集,它们分别是CASIA-B、OU-MVLP、CCPG、SUSTech1K、Gait3D和GREW。它 们分别在2006年、2018年、2023年、2023年、2022年和2021年进行了收集。前四个数据集是在完全受限制的实验室中收集的,后两个来自真实世界的场景。关键的统计指标如表 3 所示。文中的实验严格遵循官方评估协议。
在这里插入图片描述

在这里插入图片描述

Implementation details. 实现细节大多在表2 中呈现。除非另有说明,轮廓图是通过[21]中使用的归一化方法对齐并调整为 64 × 44 64×44 64×44。输入序列对于DeepGaitV2-2D和SwinGait-2D是无序的,对于其他模型是有序的。使用间距为0.2的三元组损失。采用 [6]中提出的空间增强策略。源代码可用。特别是对于SwinGait系列,底部卷积和头层是从相应的经过训练的DeepGaitV2模型初始化的,学习率为 3 × 1 0 − 5 3 ×10^{−5} 3×105。根据[12],采用了0.1的随机dropout

Comparisons with state-of-the-arts. 如表4、表 5和表 6 所示,DeepGaitV2系列在所使用的数据集上明显优于其他最新技术方法,除了CASIA-B。值得注意的是,在真实世界的步态数据集Gait3D和GREW上,DeepGaitV2系列取得了显著的性能提升。此外,DeepGaitV2系列还在一些受限制的步态数据集如OU-MVLP、SUSTech1K和CCPG上取得了新的最新技术,明确表明无论是步态数据的收集场景如何,探索强基线模型用于步态识别仍然有很大挑战。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

 表 4 显 示,相对 于CNN-based的DeepGaitV2模型,在大多数室外数据中,SwinGait系列超越了对应的DeepGaitV2模型,考虑到了速度和准确性的权衡。注意到SwinGait系列在受限制的步态数据集如SUSTech1K和CCPG上表现相对较差,如表5 和 6 所示。这一观察与其他视觉任务相一致,即,变换器对于大型有挑战性的数据集可能会取得显著的改善。总体而言,网络架构的演进始终值得密切关注,而Transformer则因其利用注意力来模拟空间-时间依赖关系而特别引人注目且流行。

在这里插入图片描述

Ablation study. 已考虑直接确定骨干容量的控制设置,即网络深度和宽度。在此,进一步扩展了DeepGaitV2系列,即将C从32扩大到128,如表7所示。结果显示,准确度稳步提高,但模型大小和计算成本大幅增加。为了提高效率,建议将 C = 64 C=64 C=64的DeepGaitV2-P3D作为DeepGaitV2系列的基准模型,以实现良好的平衡。至于SwinGait系列,表7显示,适当加深骨干也能带来性能提升。

五、总结

  这项研究除了在真实世界数据集上取得性能突破外,还通过简单直接的解决方案,基于广泛的实验分析和讨论,总结了深度步态模型构建的关键经验原则。考虑到实用性和普适性,打破了浅层步态模型的固有印象,展示了显式时间建模和深度步态Transformer的优越性。所提方法在GREW数据集上取得了令人瞩目的81.6%的Top-1准确率。


http://www.kler.cn/a/306714.html

相关文章:

  • 单例模式详解:如何优雅地实现线程安全的单例
  • 速盾:cdn和反向代理的关系是什么?
  • 客户手机号收集小程序有什么用
  • 计算机新手练级攻略——善用搜索引擎
  • 020_Servlet_Mysql学生选课系统(新版)_lwplus87
  • PyTorch:torchvision中的dataset的使用
  • 设计模式 23 访问者模式
  • Wophp靶场寻找漏洞练习
  • 从OracleCloudWorld和财报看Oracle的转变
  • 苏州科技大学、和数联合获得国家知识产权局颁发的3项发明专利证书
  • 计算机毕业设计 在线新闻聚合平台的设计与实现 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试
  • C++复习day12
  • Android桌面(Launcher)源码分析
  • 【LeetCode每日一题】2024年9月第二周(下)
  • 【C++】学完c语言后的c++基础知识补充!(命名空间、输入和输出、缺省函数、函数重载、引用、内联函数代替宏、nullptr代替NULL)
  • SpringBoot Kafka发送消息与接收消息实例
  • Nignx 增加权限(windows)
  • BrainSegFounder:迈向用于神经影像分割的3D基础模型|文献速递--Transformer架构在医学影像分析中的应用
  • 系统架构设计师 需求分析篇一
  • Oracle临时表
  • 类型转换等 面试真题
  • Vue常见面试题目
  • 横向移动-WMI
  • k8s--pod控制器--1
  • Qt:饿汉单例(附带单例使用和内存管理)
  • Redis 的数据持久化