| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> (CVPR-2021)具有深度通用线性嵌入的跨视角步态识别 -> 正文阅读 |
|
[人工智能](CVPR-2021)具有深度通用线性嵌入的跨视角步态识别 |
文章目录具有深度通用线性嵌入的跨视角步态识别
Abstract与指纹和虹膜等其他生物特征标识符相比,步态因其非侵入性和非合作特性而被认为是一种有吸引力的生物特征标识符。目前,跨视图步态识别方法总是从各种深度卷积网络中建立表示进行识别,而忽略了步态序列的潜在动态信息。如果假设行人具有不同的步行模式,则可以通过计算每个视角的动态特征来执行步态识别。本文将Koopman算子理论引入步态识别,可以为非线性动力系统的全局线性逼近找到嵌入空间。此外,提出了一种基于卷积变分自编码器和深度 Koopman 嵌入的新框架来逼近 Koopman 算子,将其用作来自线性化嵌入空间的动态特征,用于跨视角步态识别。它为步态识别系统提供了可靠的物理解释性。在大型公共数据集 OU-MVLP 上进行的实验证明了所提出方法的有效性。 1. Introduction步态识别旨在通过识别人的体型和行走方式来识别人。与指纹或虹膜等其他生物特征相比,步态不需要检测目标合作,并且可以在更远的距离上执行。此外,它也很难伪装。因此,步态识别可以应用于一些特殊的事务,例如刑事调查。 尽管进展令人鼓舞,但步态识别仍然受到许多外部因素的影响,例如携带条件、不同的步幅、服装和相机视角,这些因素会降低步态识别系统的性能。在所有这些挑战因素中,相机视角可能是最棘手的一个。现有技术证明,如果改变视角,单视图步态识别系统的性能将急剧下降。 为了解决这些问题,已经提出了许多用于跨视角步态识别的深度学习模型,并取得了很好的效果。一般来说,这些方法可以分为两类,分别是基于外观的方法和基于模型的方法。前者是过去几年步态识别的主流。这些方法从步态轮廓图像中提取特征,并通过度量学习损失函数优化特征空间中的个体内距离,而无需步态周期建模。此外,还提出了时间融合单元和部分分割单元来结合轮廓序列和局部部分的特征。 基于模型的步态识别专注于以数学方式从步态序列重建身体结构。三维模型比二维模型传达更多信息,并且可以构建来表示步态模式。因此,它可以在理论上针对视角变化实现可接受的性能。一些生物力学步态分析也支持这一点。然而,这些方法的性能容易受到姿态估计的准确性和轮廓序列质量的影响,这限制了它们的发展。 一般来说,基于外观的方法擅长特征表示,但存在数据不足的问题,而基于模型的方法更能观察差异,但难以构建。尽管深度卷积神经网络 (ConvNets) 可以提供强大的特征提取器并在受控场景中实现出色的性能,但现有模型仍然不能很好地处理较大的视角差异或服装和物品携带的变化。因为,本质上,ConvNet 还是一个二维模板,而人体是一个三维对象。毫不奇怪,即使有确切的人的数据,该模型仍然无法处理他/她未包含在训练集中的 2D 投影。这个问题也被称为计算机视觉的不适定问题。 受基于惯性传感器的步态分析、生物力学步态分析和人类步态动态分析工作的启发,作者意识到动态特征在步态识别中具有竞争力,因为它模拟了人类步态的本质,运动过程,而不是纯粹的人形。因此,与大多数现有的深度学习方法不同,本文从动态系统的角度探索跨视角步态识别。更具体地说,作者介绍了 Koopman 理论,它是流体力学文献中分析非线性系统的流行工具。事实上,Koopman 理论已经作为视频背景分离、图像欺诈和运动检测应用于计算机视觉。至于步态识别,最相关的工作是 Wang 等人的工作[39],其中应用窗口动态模式分解来生成步态能量图像。然而,在他们的工作中只研究了静态步态特征。 如图 1 所示,Koopman 理论侧重于非线性系统的系统线性表示,它提供了一种表示步态步行周期的新方法。通过近似 Koopman 算子提出了一种新的跨视角步态识别框架(见图 2)。首先,对齐的轮廓被输入卷积变分自动编码器 (VAE) 以进行图像级编码。然后,强制执行额外的约束和损失函数来识别动态线性演变的 Koopman 算子。最后,从 Koopman 矩阵中训练一个全连接的网络以获得最终的步态表示。
总而言之,作者做出以下三个主要贡献。
2. Related Work在本节中,将简要介绍最近在步态识别方面的工作。在深度学习时代之前,时间序列分析方法被应用于一些工作中,例如自回归建模和隐马尔可夫模式,用于动态建模。这些模型通常具有很强的假设,但它们也不能很好地拟合非线性系统。在深度学习时代,ConvNets已在众多计算机视觉任务中被证明是成功的,它也被用于步态识别并取得了令人钦佩的性能。一般来说,基于 ConvNet 的方法可以分为两类,基于外观的方法和基于模型的方法。同时,根据输入数据的类型,所提出的工作也可以分为基于模板的方法和基于序列的方法。 大多数基于模板的方法应用 ConvNets 从单个步态图像中提取步态特征,例如步态能量图像 (GEI)或其他类似 GEI 的模板图像。吴等人[43]提出了三个具有不同架构的 ConvNet,并进行了一系列实验,显着提高了跨视角步态识别性能。同时,还提出了一些生成模型来将步态图像从一个视图转换到另一个视角,例如自动编码器和生成对抗网络。 一些工作直接从步态轮廓序列建立模型。他们应用时间模型对信息进行跨时间编码,例如特征图池化、长短期记忆和三维ConvNet。一些关于大型步态数据库的最新作品呈现出具有竞争力的性能。GaitSet提出了一种将步态视为一组轮廓而不是连续序列的新颖观点。他们认为剪影的外观包含位置信息,这是对时间信息的替代。因此,他们应用一个简单的 ConvNet 从轮廓中提取帧级步态特征,然后使用池化操作将帧级特征聚合为单个集合级特征。张等人[50]提出了一种与 ConvNets 相结合的模型,用于单图像特征提取和 LSTM 注意力模型,用于帧级 ConvNet 上的注意力分数。GaitPart提出了一种带有微动作捕捉模块的新型基于部分的模型,该模型还提供了一种时间建模方法。 最近,一些工作专注于基于模型的步态识别方法。他们从步态图像序列中重建人体的数学结构。可以构建人体行走的三维数据,它比二维数据传达的信息更多。因此,它可以通过三维模型旋转来解决跨视角问题。然而,它收到过多的细节的影响,从而降低了crossview步态识别的性能。 3. The Koopman Operators本节将介绍 Koopman 算子和扩展动态模式分解的基础知识。 Koopman 算子是一种线性但无限维的算子,通过数据驱动的方法进行近似。对于非线性动力系统,Koopman 观察函数将原始状态空间映射到一个嵌入空间,在该嵌入空间中,动力学将普遍线性发展。扩展动态模态分解 (EDMD) 是一种逼近 Koopman 特征值、特征函数和模态元组的方法。 EDMD 过程需要两个先决条件:快照数据集和观察函数字典。 给定一个离散时间动态系统,
x
t
∈
M
x_{t} \in \mathcal{M}
xt?∈M在时间步
t
t
t,描述为: 4. Proposed Approach4.1. Problem Formulation给定一个步态轮廓序列,可以将其视为时间序列数据
{
x
t
}
\left\{x_{t}\right\}
{xt?},其中
t
∈
[
1
,
2
,
…
,
M
]
t \in[1,2, \ldots, M]
t∈[1,2,…,M],
M
M
M是该步态序列中的帧数。 Koopman 理论表明,通过在线性空间中用 Koopman 算子表示非线性动力学系统,可以将线性系统的预测用于系统状态分析。假设通过假设行人具有独特的步行模式,将人类步行视为动态系统。在这种情况下,可以根据受试者
i
i
i的步态轮廓序列
{
x
i
,
t
}
\left\{x_{i, t}\right\}
{xi,t?}计算不同的 Koopman 矩阵
K
i
K_{i}
Ki?: 此外,估计的 Koopman 矩阵
K
^
i
\hat{K}_{i}
K^i?也可用于预测未来,因为它包含原始系统的信息。在我们的模型中,行人
{
x
^
~
i
,
t
}
\left\{\tilde{\hat{x}}_{i, t}\right\}
{x^~i,t?}的未来图像可以预测为: 4.2. Model Architecture模型由三个关键组件组成,包括观察函数逼近模块 (OFA)、Koopman 矩阵记忆 (KMM) 和判别特征提取器模块 (DFE)。 在 OFA 模块中,应用具有卷积层的变分自动编码器 (VAE)来利用深度学习的能力来表示 Koopman 算子的特征函数。 KMM 模块包含训练集中每个人的可学习参数 Ki,可以通过反向传播进行训练。在 DFE 模块中,使用简单的全连接网络将估计的 Koopman 矩阵转换为用于跨视角识别的判别空间。该模型如图 2 所示。
Observation Functions Approximating在观察函数逼近模块中,输入数据是对齐的步态轮廓序列。在时间步长
t
t
t具有身份
i
i
i的图像
x
i
,
t
x_{i, t}
xi,t?被输入编码器
Φ
\Phi
Φ, 编码器 Φ \Phi Φ包含六个卷积层和两个全连接层,如表1所示。在全连接层之后,网络给出一个平均向量 μ \mu μ和一个标准差向量 σ \sigma σ。他们都是 D D D维的。然后得到从分布 N ( μ , σ 2 ) N\left(\mu, \sigma^{2}\right) N(μ,σ2)中采样的 x i , t x_{i, t} xi,t?的编码。编码器 Φ \Phi Φ旨在借助深度网络的非线性变换而不是原始观察函数将原始输入数据 x i , t ∈ R n x_{i, t} \in \mathbb{R}^{n} xi,t?∈Rn转换为 Koopman 空间 z i , t ∈ F z_{i, t} \in \mathcal{F} zi,t?∈F。 Φ \Phi Φ的输出大小为 D D D,这意味着在这项工作中,设置 F = R D \mathcal{F}=\mathbb{R}^{D} F=RD。 D D D是该模型的超参数,可以通过实验确定。在这项工作中,设置 D = 128 D=128 D=128。认为 128 维空间足以逼近 Koopman 矩阵进行识别,因为步态周期是一个相对简单的动力系统。 一个解码器
Φ
?
1
\Phi^{-1}
Φ?1用于确保 Koopman 空间中的代码
z
i
,
t
z_{i, t}
zi,t?保留原始图像中的大部分有用信息,而不是收敛于诸如零之类的异常值,而架构也显示在表 1 中, 该编码器-解码器模块通过将原始步态序列转换为 Koopman 空间来提取人类行走模式。代替手工设计的观察函数,编码器-解码器结构能够表示任意函数,包括所需的 Koopman 特征函数。因此,本文的模型可以准确地拟合人类步行动力学,而无需手动设计功能。
Koopman Matrix Memory假设个体具有独特的步行模式。因此,他们的 Koopman 矩阵在匀速行走时应该是相同的。为了在训练阶段实现这一假设,为训练数据集构建了一个 Koopman Matrix Memory
K
K
K。
K
=
[
K
i
]
K=\left[K_{i}\right]
K=[Ki?]是一个可学习的参数矩阵,通过反向传播从预测相同步态序列中的下一帧进行训练。训练集中的每个个体都有一个唯一的
K
i
K_{i}
Ki?,它是一个
D
×
D
D \times D
D×D矩阵,随机初始化。在输入步态序列
X
=
[
x
i
,
t
]
X=\left[x_{i, t}\right]
X=[xi,t?]被编码为
Z
=
[
z
i
,
t
]
Z=\left[z_{i, t}\right]
Z=[zi,t?]后,
K
i
K_{i}
Ki?用于预测 Koopman 空间中下一个快照的状态 K i K_{i} Ki?直接从Koopman Matrix Memory K K K加载。这样可以保证不同视角的输入步态序列可以编码到同一个空间中。需要注意的是,Koopman Matrix Memory K K K仅用于训练 OFA 模块。 OFA 模块中的参数被冻结后,该 KMM 模块将从模型中移除,不再使用。 Discriminative Feature Extractor最后,一个简单的全连接网络
Ψ
\Psi
Ψ将估计的 Koopman 矩阵
K
^
i
\hat{K}_{i}
K^i?转换为判别空间中的新特征: 4.3. Loss Functions实现了OFA模块中自编码器的重构精度,以减少空间信息丢失。
L
Φ
\mathcal{L}_{\Phi}
LΦ?是指原始步态轮廓序列与从线性空间恢复的步态轮廓序列之间的差异,如下: 同时,应用额外的损失
L
μ
,
σ
\mathcal{L}_{\mu, \sigma}
Lμ,σ?来增强模型生成能力,它试图将分布推向尽可能接近单位高斯, 根据 Koopman 理论,学习线性动力学
K
i
K_{i}
Ki?以确保线性动力学:
Φ
(
x
i
,
t
+
1
)
=
\Phi\left(x_{i, t+1}\right)=
Φ(xi,t+1?)=
K
i
Φ
(
x
i
,
t
)
K_{i} \Phi\left(x_{i, t}\right)
Ki?Φ(xi,t?)。更一般地说,在
S
S
S个时间步上执行线性预测,损失为: 至于 DFE 模块,带有硬挖掘的三元组损失 L triplet? \mathcal{L}_{\text {triplet }} Ltriplet??和 Softmax 损失 L softmax? \mathcal{L}_{\text {softmax }} Lsoftmax??都用于身份识别。在一个训练批次中,从训练集中随机选择 p × k p \times k p×k个步态轮廓序列,其中 p p p表示所选主题的数量, k k k表示不同视角的数量。对于一个训练batch中的每一个数据作为anchor,为 L triplet? \mathcal{L}_{\text {triplet }} Ltriplet??选择最难的正数据和最难的负数据。同时,对 L softmax? \mathcal{L}_{\text {softmax }} Lsoftmax??应用了一个额外的分类器,它以 y i y_{i} yi?作为输入,在图 2 中省略。 4.4. Implementation Details在训练过程中,整个模型分两步训练。一起训练 OFA 和 KMM 模块,在训练步骤一中没有 DFE 模块。然后冻结 OFA 模块的参数,在第二步训练中单独训练 DFE 模块而不使用 KMM 模块。原因是最小二乘解应用于计算的 Koopman 矩阵 K ^ i \hat{K}_{i} K^i?。如果完全训练这个模型,它需要通过最小二乘解中的特征分解步骤反向传播损失,这是不稳定的。此外,如果不能正确建立 Koopman 空间,则 Koopman 矩阵 K ^ i \hat{K}_{i} K^i?都是无理数。因此,采用了两步训练策略。 在训练步骤一中,OFA 和 KMM 模块与损失函数一起训练: Results参考文献[39] Jiawei Wang, Edel B Garcia, Shiqi Y u, and Dexin Zhang. Windowed dmd for gait recognition under clothing and carrying condition variations. In Chinese Conference on Biometric Recognition, pages 484–492. 2017. 2 [43] Zifeng Wu, Y ongzhen Huang, Liang Wang, Xiaogang Wang, and Tieniu Tan. A comprehensive study on cross-view gait based human identification with deep cnns. IEEE transactions on pattern analysis and machine intelligence, 39(2):209–226, 2016. 1, 2, 7 [50] Y uqi Zhang, Y ongzhen Huang, Shiqi Y u, and Liang Wang. Cross-view gait recognition by discriminative feature learning. IEEE Transactions on Image Processing, 29:1001– 1015, 2019. 1, 3, 7, 8 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 14:58:59- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |