使用胶囊的多尺度部分表示变化的步态识别
paper题目:Gait Recognition using Multi-Scale Partial Representation Transformation with Capsules
paper是皇后大学发表的ICPR 2021的工作
论文地址:链接
Abstract
步态识别是指基于个人行走方式的个人识别,由于相机视角和个人外观的变化,可能非常具有挑战性。目前的步态识别方法主要以深度学习模型为主,尤其是基于某些特征的模型。在这种情况下,作者提出了一个新颖的深度网络,学习使用胶囊传输多尺度步态来获得更具辨别力的步态特征。本文的网络首先使用最先进的深度特征提取器来获得多尺度的表示。然后使用双向门控循环单元(BGRU)循环学习前后特征的相关性和共同模式。最后,利用胶囊网络学习更深层次的部分-整体关系,为更相关的特征分配更多的权重,忽略虚假维度。这样就获得了视角和外观变化更加稳定的最终特征。本文方法的性能在两个步态识别数据集 CASIA-B 和 OU-MVLP 采用了四种具有挑战性的测试协议,进行了广泛的测试。本文的结果与最先进的步态识别解决方案进行了比较,显示了模型的优势,特别是面对具有挑战性的视角和携带条件。
Index Terms-步态识别 卷积网络 门控循环单元 胶囊网络
I. INTRODUCTION
步态数据可以提供重要的身份信息,为生物特征识别提供广泛的可能性。可穿戴或非可穿戴传感器通常可以获得步态数据。基于可穿戴传感器的步态识别系统需要用户的合作才能将传感器连接到他们的身体上,而本文中考虑的非可穿戴步态识别系统可以在没有个人合作的情况下获取步态数据,特别是使用一个或多个成像传感器。有两个具有挑战性的因素会影响非穿戴式基于图像的步态识别系统的性能,即相机视角的变化和个体的外观变化。由于步态识别的不受约束的性质,步态数据可以从不同的角度捕获,从一个角度隐藏身体的某些部位。由于衣着不同,个人的外表也可能不同,比如穿外套或帽子,或者带手提包或背包。
近年来,深度学习的步态识别发展势头良好,提供了最先进的识别精度。然而,由于上述具有挑战性的因素,很难学习对视角和外观变化具有高度鲁棒性的步态特征。基于某些特征的深度学习方法已被证明对视角和外观的步态识别有效。这些方法将步态数据分为空间和/或时间段,可以在多个尺度上获得一些步态表示。部分表示通常连接在单个特征向量中进行步态识别。然而,这些表示可以进一步处理,以探索其层次的整体关系,并保留位置属性,如位置、旋转和比例。步态识别系统通过保留位置属性,可以更稳定地改变步态数据的视角和方向,这可能有助于设计改进的视角。也可以调查一些特征的重要性,因为它们可能代表不同数量的个人特定信息,对最终识别性能有不同的贡献;当一个特征代表一个外观变化因素时,这个问题就更明显了,比如背包。
为了解决这些问题,本文提出了一个新颖的深度网络,学习使用胶囊传输部分步态来获得更具辨别性的步态特征,具有鲁棒的视角和外观变化。图 1 抽象描述了学习表示如何在本文提出的解决方案中转换。深度网络首先使用最先进的深度特征提取器 Gaitset获得多尺度表示。然后,一些表示形成一个特征序列来馈送双向门控循环单元(BGRU),从而循环学习每个特定输入的前后特征之间的相关性和共现性。然后利用胶囊网络将反复学习的部分特征视为胶囊,通过动态路由学习底层与输出胶囊之间的耦合权重。它在部分表示之间建立了分层部分-整体关系,使本文的网络视角更加强大。此外,胶囊网络为更相关的特征分配更多的权重,忽略虚假维度,从而获得更强的外观变化步态表示。最终使用 softmax 步态识别分类器。尽管 BGRU 与胶囊网络的结合最近已应用于问题目标分类、情感分类和情感检测等其他领域,但从未用于生物特征识别的上下文系统。
图 1. 提出的方法概述。步态轮廓由 GitSet 处理方法,提取不同尺度的嵌入部分。然后使用 BGRU我学习了嵌入部分之间的关系。最后,通过胶囊进一步学习循环学习的特征,利用部分-整体关系,分配更多的权重,忽略虚假维度。
贡献可总结如下:
- 循环神经网络首次使用 (RNN) 学习多尺度步态表示之间的关系。然后利用胶囊网络学习更深层次的部分-整体关系,并充当注意机制,使模型从不同的角度和外观条件更加优秀;
- 统一流形首次接近和投影 (UMAP) 可视化应用于学习的步态胶囊表示,显示了本文提出的解决方案的判断能力;
- 该模型在两个步态数据集中获得了最先进的步态识别。提出的模型不仅具有视角变化,而且具有人类外观变化(包括不同的衣服和携带条件)。
II. RELATED WORK
步态识别解决方案可分为基于模型和外观的类别,分别处理身体的结构和外观。如今,基于模型和外观的步态识别提供了最先进的结果。表 I 它总结了步态识别的深度学习方法的主要特点,并根据发布日期进行排序,突出了它们的网络架构和将时间信息与视频聚合的模板。这些时间模板可以在深度网络的初始层采用步态能量图像 (GEI)、周期能量图像 (PEI)、Chrono Gait Image 的形式获得(CGI)等,或者在网络的中间层,如卷积步态能量图(Conv. GEM)的形式。
概述了最先进的深度步态识别方法。
步态识别方法步态识别方法可以有全局或部分表示。步态数据作为一个整体来处理基于全局表示的步态识别方法;一些例子包括 MGAN、GaitNet1、GaitNet-2和DiGGAN。步态识别方法基于部分表示,如Ensemble CNNs和 Gait-Set,将步态数据分为空间(和/或时间)bins。然后可以进一步处理拆分数据,如使用全连接 (FC) 从而提取一些对姿势和外观变化不敏感的特征。
在调查解决方案中,GaitSet目前有两个大规模 CASIA-B 和 OU-MVLP 跨视图步态识别优于其他识别解决方案。首先从帧级步态轮廓中提取卷积图,然后采用集合池化策略 Conv 的形式聚合卷积时空信息。GEM模板。模板分为不同尺度的模板 bin,然后映射到具有水平金字塔匹配方案的判断特征空间,形成最终的步态表示 bin 特征对最终目标同样重要。深度网络使用Gaitset第一block获得多尺度表示,然后用胶囊将其转移到更具辨别力的特征空间。
III. METHOD
A. Problem Definition
给定一个步态序列数据集 D \mathcal{D} D,每个序列 S i , j S_{i, j} Si,j是从身份 x i ∈ { x 1 , x 2 , … , x N } x_{i} \in\left\{x_{1}, x_{2}, \ldots, x_{N}\right\} xi∈{ x1,x2,…,xN}和记录视角 θ j ∈ { θ 1 , θ 2 , … , θ V } \theta_{j} \in\left\{\theta_{1}, \theta_{2}, \ldots, \theta_{V}\right\} θj∈{ θ1,θ2,…,θV},探测步态序列 S probe S_{\text {probe }} Sprobe 的步态识别任务可以定义为: x ^ = arg max x i Pr ( x i ∣ S probe , D ) , \hat{x}=\arg \max _{x_{i}} \operatorname{Pr}\left(x_{i} \mid S_{\text {probe }}, \mathcal{D}\right), x^=argximaxPr(xi∣Sprobe ,D), 其中 Pr ( x i ∣ S probe , D ) \operatorname{Pr}\left(x_{i} \mid S_{\text {probe }}, \mathcal{D}\right) Pr(xi∣Sprobe ,D)是序列 S probe S_{\text {probe }} Sprobe 属于身份 x i x_{i} xi的概率。每个序列样本 S = S= S= ( S i , j ( 1 ) , S i , j ( 2 ) , … , S i , j ( T ) ) \left(S_{i, j}(1), S_{i, j}(2), \ldots, S_{i, j}(T)\right) (Si,j(1),Si,j(2),…,Si,j(T))由一系列二进制步态轮廓 S i , j ( t ) S_{i, j}(t) Si,j(t)表示每一帧的步态外观。
B. Model Overview
模型由以下四个主要模块构成: f = f P F E ∘ f R N N ∘ f C A P ∘ f C L S , f=f_{P F E} \circ f_{R N N} \circ f_{C A P} \circ f_{C L S}, f=fPFE∘fRNN∘fCAP∘fCLS, 其中 F P F E F_{P F E} FPFE是由多个卷积、池化和全连接层构建的步态图的部分特征提取。 F R N N F_{R N N} FRNN是一个双向循环神经网络,它通过探索特征图中水平条带之间的空间相关性,将前一层提取的特征转换为更具辨别力的流形。 f C A P f_{C A P} fCAP是一个胶囊注意力层,它学习条带之间更深的部分-整体关系,然后有选择地为更具辨别力的特征分配更多权重,并解释误导因素。最后一层 F C L S F_{C L S} FCLS使用 softmax 激活函数进行分类。图 2 代表了模型的架构。
图 2. 步态识别网络架构。
C. Gait Partial Feature Extraction Block
第一个块 F P F E F_{P F E} FPFE旨在提取判别性的特征bin,其中每个bin对应于时空步态卷积能量图上的部分空间位置。在这种情况下,使用Gaitset作为最先进的深度部分特征提取器来获得多尺度部分表示。 Gaitset 首先使用八个 2D 卷积和池化层从步态序列中的单个轮廓 S i , j ( t ) S_{i, j}(t) Si,j(t)中提取卷积图。然后,它使用集合池化层通过时间累积卷积信息来总结步态的时间动态行为。该操作可以被认为是一种有效的时间压缩,应用于可变长度的特征图序列,从而使生成的单个图对每个序列的帧数保持不变。接下来,Gaitset 对步态图进行分区,并将每个部分空间位置表示为水平特征bin。这使模型能够了解显著和非显著的身体部位,从而使其对丢失的关键部位和局部外观变化不太敏感。最后,使用全连接层将不同尺度(即 1、2、4、8 和 16)的水平bin映射到判别特征空间,形成步态部分特征表示。
D. Recurrent Learning Block
由于不同体型和视角的存在,特征bins的显著性因序列而异。换句话说,模型的第一个块 Gaitset 对空间转换不是不变的。为此,应用了一个 BGRU网络,该网络已被证明对来自序列数据的许多学习任务有效。BGRU 网络循环学习每个特定输入表示的前向和后向特征bin之间模式的相关性和共现性。每一步的输出都表示为当前 bin 的函数,以及从上下特征 bin 中保留的信息。在全连接层上使用双向循环层的优势是双重的。首先,尽管具有足够容量的全连接层能够学习特征bin之间的相关性,但它可能会受到平移不变性的影响,这与对(在这种情况下)空间不变的循环神经网络相反。其次,一个足够大以捕获判别相关性的全连接层将需要大量可训练参数,使其容易过度拟合,特别是对于没有跨不同视角的大量训练样本的场景。
E. Capsule Learning Block
胶囊网络可以将输入特征分解为不同的层次子部分,然后在它们之间建立关系。与丢失位置属性(例如位置、旋转和比例)的标准池化层不同,胶囊网络可以保留这些属性。在这种情况下,建议将反复学习的部分特征视为胶囊,以学习底层胶囊和输出胶囊之间的耦合权重。它利用了输入部分特征表示之间的层次部分-整体关系,同时保留了位置属性,这有助于模型更好地泛化到新颖的视点,这是步态识别任务中的主要挑战之一。胶囊网络通常需要较少的特征检测器和较少的训练数据,因为它们能够处理视角变化。
胶囊网络还能够学习特征重要性以确定probe身份,因为它可以选择性地为更相关的特征分配更多权重,同时忽略虚假维度。与胶囊网络相比,一种流行的选择是使用传统的注意力层,其中双向循环隐藏状态由学习的权重加权。然而,为了捕捉bin之间更深的空间相关性,需要多层关注。这导致模型参数的高度扩展,使其容易过度拟合,尤其是在训练样本数量有限的情况下。为此,胶囊网络还在本文的网络中充当了注意力机制,从而使模型对不同的步行和外观条件更加鲁棒。
[21] 中提出的原始胶囊网络包含两个主要块,即初级胶囊和高级胶囊。初级胶囊块旨在使用卷积、重塑和挤压层对空间信息进行编码,而高级胶囊块则可以学习层次子部分之间更深层次的部分-整体关系。在这个块中,从主胶囊层中移除了卷积层,并且只对前一层的输出应用了整形和挤压功能。这种选择背后的原因是网络的第一个块,即部分特征提取,已经通过几个卷积层对空间信息进行了编码,因此在这个阶段不需要更多的卷积学习。
首先,将双向循环层生成的输出重新整形为 C × D 1 C \times D_{1} C×D1张量,其中 C C C是主胶囊的数量, D 1 D_{1} D1是它们的维度。接下来是一个非线性压缩函数,它将每个胶囊的长度映射到 0 到 1 之间的一个数字。本文使用了原始版本的压缩函数,如下所示: v j = ∥ s j ∥ 2 1 + ∥ s j ∥ 2 s j ∥ s j ∥ \mathbf{v}_{j}=\frac{\left\|\mathbf{s}_{j}\right\|^{2}}{1+\left\|\mathbf{s}_{j}\right\|^{2}} \frac{\mathbf{s}_{j}}{\left\|\mathbf{s}_{j}\right\|} vj=1+∥sj∥2∥sj∥2∥sj∥sj 其中 v j v_{j} vj是初级胶囊层的第 j t h j^{t h} jth个向量输出, s j s_{j} sj是通过重塑循环学习块的输出形成的第 j t h j^{t h} jth个胶囊输入。第二个胶囊层由 D 2 D_{2} D2维数字胶囊构成,其中每个胶囊通过类似于最初在 [21] 中提出的路由过程计算。每个未压缩的数字胶囊被确定为预测向量 u ^ j ∣ i \hat{\mathbf{u}}_{j \mid i} u^j∣i的加权和,如下所示: s j = ∑ i c i j u ^ j ∣ i \mathbf{s}_{j}=\sum_{i} c_{i j} \hat{\mathbf{u}}_{j \mid i} s