具有密集 3D 表示和基准的野外步态识别
paper题目:Gait Recognition in the Wild with Dense 3D Representations and A Benchmark
paper是杭电发表在CVPR 2022的工作
paper地址:链接
Abstract
现有的步态识别研究以二维表示为主,例如受限场景中的人体轮廓或骨架。然而,人类在不受约束的 3D 空间中生活和行走,因此将 3D 人体投影到 2D 平面上会丢弃很多关键信息,例如用于步态识别的视角、形状和动态信息。因此,本文旨在探索用于野外步态识别的密集 3D 表示,这是一个实际但被忽视的问题。特别的,我们提出了一个新的框架来探索用于步态识别的人体 3D Skinned Multi-Person Linear (SMPL) 模型,名为 SMPLGait。我们的框架有两个精心设计的分支,其中一个从轮廓中提取外观特征,另一个从 3D SMPL 模型中学习 3D 视角和形状的知识。此外,由于缺乏合适的数据集,我们构建了第一个基于 3D 表示的大规模步态识别数据集,命名为 Gait3D。它包含从不受约束的室内场景中的 39 个摄像机中提取的 4,000 个受试者和超过 25,000 个序列。更重要的是,它提供了从视频帧中恢复的 3D SMPL 模型,可以提供体形、视角和动态的密集 3D 信息。基于 Gait3D,我们将我们的方法与现有的步态识别方法进行了全面比较,这反映了我们框架的卓越性能以及 3D 表示在野外步态识别的潜力。代码和数据集位于:链接。
1. Introduction
视觉步态识别旨在使用视频中的她/他的步行模式来识别目标人,已经研究了二十多年 [29, 41]。现有的方法和数据集以 2D 步态表示为主,例如轮廓序列 [54]、步态能量图像 (GEI) [10]、2D 骨架 [61],如图 1 所示。然而,人体是 3D 非刚性物体,因此 3D 到 2D 投影丢弃了许多有用的形状、视角和动态信息,同时为步态识别呈现模糊性。因此,本文专注于有价值但被忽视的 3D 步态识别。
图1. 从两个视角看同一个人的不同步态表现。与剪影和骨架相比,三维网格保留了三维空间中人体的形状和视角。(最好以彩色观看)。
最近,基于深度学习的方法通过直接从剪影序列[5, 8, 55]或GEI[44]中学习判别性特征,在广泛采用的二维步态识别基准上占据了最先进的性能,如CASIA-B[36]和OU-MVLP[35]。尽管在实验室数据集上取得了优异的成绩,但这些方法在野外场景中不能很好地工作,因为野外场景有更多样的相机三维视角和更复杂的环境干扰因素,如闭塞[61]。尽管一些工作利用了三维圆柱体[3]或三维骨架[40],但这些稀疏的三维模型也失去了人体的有用信息,如视角和形状。幸运的是,参数化的人体模型的发展,如皮Skinned Multi-Person Linear(SMPL)模型[27]和三维人体网格恢复方法[17,19,33],使得估计视频帧中人体的精确三维网格和视角成为可能。三维网格在步态识别方面的优势有两个方面:1)三维网格不仅可以提供人体在三维空间中的姿势,还可以提供人体的形状,这对于学习步态的判别特征至关重要;2)在跨视角匹配过程中,可以利用三维视角对人体的方向进行归一。
为此,我们设计了一个新颖的基于SMPL模型的三维步态识别框架,即SMPLGait,以探索用于人类识别的三维步态表示。我们的SMPLGait框架有两个基于深度神经网络的分支。一个分支将人的剪影序列作为输入来学习外观特征,如服装、发型和物品。然而,由于野外视角的极端变化,人体的形状会被扭曲,这使得外观变得模糊不清,如图1所示。为了克服这一挑战,我们设计了一个三维空间变换网络(3D-STN)作为另一个分支,从三维人体网格中学习视角和形状的三维知识。三维空间变换网络将每一帧的三维SMPL模型作为输入来学习空间变换矩阵。通过将空间变换矩阵应用于外观特征,这些来自不同视角的特征在潜在空间中被归一化。通过这种方式,同一个人的步态序列在特征空间中会更加接近。
然而,没有合适的数据集提供野外人体的 3D 网格。因此,为了促进研究,我们从野外拍摄的高分辨率视频中构建了第一个基于网格的大规模 3D 步态识别数据集,名为 Gait3D。与表 1 中列出的现有数据集相比,Gait3D 数据集具有以下特点:1) Gait3D 包含 4,000 名受试者和超过 25,000 个序列,由 39 台摄像机在无约束的室内场景中捕获,使其可扩展用于研究和应用。 2)它提供从视频帧中恢复的精确3D人体网格,可以提供人体的3D姿势和形状以及准确的视角参数。 3) 它还提供了传统的 2D 轮廓和关键点,可用于探索多模态数据的步态识别。
表 1. 用于步态识别的公开可用数据集的比较。 Speed、Wild 和 3D-View 分别指示数据集是否包含不稳定的步行速度、是否在野外捕获以及在 3D 空间中是否具有视角变化。
综上所述,本文的贡献如下:
- 我们首次尝试在现实世界场景中进行 3D 步态识别,旨在探索人体的密集 3D 表示以进行步态识别。
- 我们提出了一种基于 SMPL 模型的新型 3D 步态识别框架,名为 SMPLGait,以探索用于步态识别的 3D 人体网格。
- 我们构建了第一个名为 Gait3D 的大规模 3D 步态识别数据集,它提供了从不受约束的场景中收集的 3D 人体步态网格。
通过全面的实验,我们不仅评估了现有的 2D 轮廓/基于骨架的方法,还证明了所提出的 SMPLGait 方法的有效性,该方法反映了 3D 表示在步态识别方面的潜力。此外,3D 和 2D 表示的组合进一步提高了性能,显示了多模态表示的互补性。
2. Related Work
步态识别。我们分别回顾了基于 2D 和 3D 表示的步态识别方法。
2D 步态识别方法可分为基于模型和无模型的方法 [41]。早期的方法主要属于基于模型的方法,它定义了一个结构人体模型。然后,步态模式由四肢长度、关节角度和身体部位的相对位置等参数建模 [3, 46]。无模型方法主要采用从视频帧[5、8、10、14、15、21、31、44、55、56]中减去背景得到的轮廓。特别的,Han等人。提出将一系列轮廓聚合成紧凑的步态能量图像(GEI)[10],该图像被以下方法广泛使用 [31, 44]。最近,由于深度学习在计算机视觉任务中的成功 [23-25, 48-52],深度卷积神经网络 (CNN) 也主导了步态识别的性能。例如,Shiraga 等人 [31]和Wu等人[44] 提出从 GEI 中学习有效特征,并显著优于以前的方法。最近的方法开始使用更大的 CNN 或多尺度结构直接从轮廓序列中学习判别特征,并取得了最先进的结果 [5, 8, 15, 21]。尽管在实验室数据集(例如 CASIA-B 和 OU-LP)上表现出色,但这些方法通常在野外失败,如 GREW [61] 和我们的 Gait3D。
自步态识别的早期以来,也已经研究了 3D 表示。例如,Urtasun 和 Fua [40] 提出了一种步态分析方法,该方法依赖于使用关节骨骼的 3D 时间运动模型。Zhao等人 [57] 应用局部优化算法来跟踪 3D 运动以进行步态识别。 Yamauchi 等人[47] 提出了第一种方法,使用从 RGB 帧估计的 3D 姿势来识别行走的人类。 Ariyanto 和 Nixon [3] 使用复杂的多摄像头系统构建了一个基于 3D 体素的数据集,并提出了一个在每个关节处具有 3D 自由度的铰接圆柱体的结构模型来模拟人体小腿。然而,这些方法要么丢弃丰富的 3D 信息,如视角和形状,要么受到实际应用设备的限制。总之,为了克服 2D 方法的问题并探索用于野外步态识别的 3D 表示,我们的目标是探索 3D 网格作为具有人体视角和形状的丰富表示。
步态识别数据集。目前公开的步态识别数据集主要属于两个系列,即 CASIA 系列 [36, 43, 54] 和 OU-ISIR 系列 [1, 13, 16, 28, 38, 39, 45],如表 1 所示. CASIA 系列是在步态识别的早期研究中建立的,它促进了对步态表示的 RGB 图像和轮廓的初步探索 [10, 36]。尽管受试者数量较少,但 CASIA-B [54] 仍然是评估基于剪影的方法最广泛使用的数据集。 OU-ISIR 系列最初是在十年前构建的,并开发了不同的步行速度 [38]、服装风格 [13] 和背包 [39]、不同年龄的受试者 [45] 和 2D 姿势注释等综合变体[1]。由于人口众多,OU-LP [16] 和 OU-MVLP [35] 也成为当前研究中最受欢迎的数据集。然而,上述数据集是在实验室 [16, 54] 或校园中的一个小定义区域 [30,43] 等受限场景中收集的。最近,研究人员开始缩小实验室研究与实际应用之间的差距。作为对我们工作的同期研究,Zhu等人[61] 从在开放区域收集的自然视频构建了 GREW 数据集。但是,没有数据集可以为野外步态识别提供丰富的 3D 表示。因此,我们需要构建一个从复杂场景中收集并具有密集 3D 网格的新数据集,以便在野外进行步态识别。
3D 人体网格恢复。 3D 表示在计算机视觉社区中引起了很多关注 [26, 59]。 3D人体可以用点云[22]、体素[40]、参数化混合形状[2]等来表示。其中,Skinned Multi-Person Linear(SMPL)模型[27]是基于skinned vertex-based的模型可以准确地表示自然人体姿势中的各种身体形状。使用 SMPL 模型,任意 3D 人体可以由一组形状、姿势、尺度和视角参数的线性组合来表示。基于 SMPL 模型,开发了一系列 3D 人体网格恢复方法,用于从自然图像中估计人体的准确 3D 形状、姿势和视角 [17、19、33、34]。这些方法为我们提供了从野外视频中获取 3D 人体网格以进行基于 3D 网格的步态识别的机会。
3. The 3D Gait Recognition Method
3.1. Overview
所提出的基于 3D SMPL 的步态识别框架 SMPLGait 的整体架构如图 2 所示。该框架有两个分支。对于第一个分支,我们将具有丰富外观知识的轮廓序列作为输入,并使用基于 CNN 的模型从每一帧中提取 2D 空间特征。对于第二个分支,将人体的 SMPL 输入 3D 空间变换网络 (3D-STN),该网络旨在从 3D 视角和形状学习潜在变换矩阵。然后 3D 空间变换模块使用学习的变换矩阵对齐潜在空间中的 2D 外观特征。最后,将每一帧的变换特征聚合成序列级特征,用于训练或推理中的序列到序列匹配。接下来,我们将详细介绍上述模块。
图 2. 用于野外 3D 步态识别的 SMPLGait 框架架构。
3.2. Network Structure
剪影学习网络(SLN)旨在从包含二维空间信息(如服装和发型)的剪影中学习人类的外观知识。SLN 有六个卷积层,类似于 GaitSet [5] 的主干。如图 2 所示,轮廓序列被输入 CNN。我们将作为输入序列,其中是第 个二进制帧,是序列的长度,和是轮廓图像的高度和宽度。对于框架,该过程可以表述为:
其中是基于 CNN 的主干,是帧的帧级特征图。
提出了 3D 空间变换网络 (3D-STN) 来解决真实 3D 场景中的视角变化。与 3D 视角、形状和姿势相关的 3D SMPL 参数是该模块的输入。假设 是输入的 SMPLs,其中是第帧的 SMPL 向量,是 SMPL 向量的维数,包含维的 3D 人体姿态,10 维3D 身体形状,以及 3 维相机比例和平移参数。 3D-STN 由三个全连接 (FC) 层组成,神经元数,其中和是来自剪影学习网络的特征图的高度和宽度。每个 FC 层之后是批归一化和 ReLU 激活函数。我们对最后两个 FC 层使用 dropout 来消除过拟合。3D-STN的前向过程可以表述为:
其中是 3D-STN,是帧的帧级变换向量。
3D空间变换模块被设计为使用特征空间中的变换向量gi对齐2D外观特征图,如图2所示。我们首先将变换向量重塑为矩阵.然后,为了计算方便,我们通过在短边上补零将和扩展为方阵。之后,我们将应用于
其中是单位矩阵,是矩阵乘法。最后,我们采用GaitSet [5]中的集合池化(SP)和水平金字塔池化(HPP)将聚合成最终的特征向量,用于序列到序列的匹配。有关 SMPLGait 框架的更多详细信息,请参阅补充材料。
3.3. Training and Inference
我们的双分支3D步态识别框架是以端到端方式进行训练的。我们框架的网络是由一个有两个组成部分的损失函数来优化的。
其中是三元组损失,是交叉熵损失。和是加权参数。
在推理过程中,我们将剪影序列和SMPLs分别作为两个分支的输入。余弦相似度被用来衡量query-gallery对之间的相似度。