ST-GCN原理总结

简介: ST-GCN原理总结

1 网络特色

1.传统的骨骼建模方法通常依赖于手工制作的部件或遍历规则,从而导致表达能力有限和泛化困难。这里提出了一种新的动态骨架模型,它通过自动从数据中学习空间和时间模式,超越了以前方法的限制。

2.骨架是以图形的形式,不是2D或3D坐标形式,这使得使用卷积网络等经过验证的模型变得困难。因此,将卷积神经网络(cnn)推广到任意结构的图的图神经网络(GCNs)。该模型将图神经网络扩展到时空模型,用于动作识别的骨架序列的通用表示,称为时空图卷积网络(ST-GCN)

2 整体流程

  1. 1.获取2D或3D坐标形式的身体关节序列
  2. 2.构建了一个时空图
  3. 3.多层时空图卷积运算将应用于输入数据并在图上生成更高级别的特征图。
  4. 4. 然后它将被标准的 SoftMax分类器分类到相应的动作类别。

整个模型通过反向传播以端到端的方式进行训练。

3 数据的获取

  1. 动作捕捉设备获得
  2. 从视频中获得姿势估计算法

通常数据是一组帧的序列,每一帧都会有一组关节坐标。

4 构建时空图

4.1 结果展示

4fdff33261d5459f80bf03cdd7d24e5a.png骨架序列通常由每个帧中每个人体关节的 2D 或 3D 坐标表示。我们在具有 N 个关节和 T 帧的骨架序列上构建了一个无向时空图 G = (V, E),同时具有体内和帧间连接,如上图所示。

4.2 如何做


2f02d7cd281344979d306463423f2fba.png

第三节我们获得了骨骼点坐标和置信度,组成节点F(v_ti)的特征向量由帧t上第i个关节的坐标向量和估计置信度组成,作为ST-GCN的输入。我们分两步在骨架序列上构建时空图:

  1. 1. 根据人体结构的连通性,将一帧内的关节与边连接起来,如图1所示。
  2. 2. 每个关节将连接到连续帧中的同一关节。

疑问1:无需手动分配零件即可自然定义此设置中的连接。这也使网络架构能够处理具有不同数量的关节或关节连接的数据集。

此时我们的边集由两个子集组成,如下:

  1. 1. 第一个子集描述了每一帧的骨架内连接,记为ES = {(v_ti, vt_j)|(i, j)∈H},其中H为自然连接的人体关节集合。
  2. 2. 第二个子集包含帧间边,它们连接连续帧中的相同关节,如EF = {v_ti, v_(t+1)i},因此,对于一个特定关节i,EF中的所有边将表示其随时间的轨迹。

4.3 计算

时空图是以邻接矩阵的方式创建的,我参考的https://www.bilibili.com/read/cv17038755/

5 时空卷积运算

5.1 时空卷积

这里作者与CNN进行了对比,先是给出了CNN卷积的公式

2ad9172908c74d04a120fcd87d9f79f6.png

这里,f(p(x,h,w))的意思就是取出p(x,h,w)这个位置的数据,CNN是按照卷积核的大小在原图中逐行逐列的获取。w是每一个通道的权重。这个公式由上述两方面组成,解决了两个问题:

  1. 1. 如何采样,即f(p(x,h,w))
  2. 如何确定权重w。
    作者类比了CNN,如图2:

采样过程如下,红色的区域就是一个st-gcn的卷积核,时间维度中以红点为中心,左右相邻的T/2帧作为卷积核的一个维度。文章st-gcn的卷积核取9个点,而蓝色、绿色、黄色对应了三个不同的权值(每种颜色的权重相同)。

那么全权重如何取值呢?作者将节点的1邻域划分为3个子集,第一个子集连接了空间位置上比根节点更远离整个骨架的邻居节点,第二个子集连接了更靠近中心的邻居节点,第三个子集为根节点本身,分别表示了离心运动、向心运动和静止的运动特征。注意,这里距离骨架远近按照距所有帧的所有骨架重心平均距离判断。

如图4(d),其余为其他取值方式,后面会简单总结

5fde9ca6293948778226d369feea2d43.png

5.2 可学习的边缘重要性权重

虽然人在做动作时关节是成组运动的,但一个关节可能出现在身体的多个部位。然而,这些外观在对这些部件的动力学建模时应该具有不同的重要性(比如退节点比眼睛等重要,可以判断是否蹲下)。

从这个意义上说,我们在时空图卷积的每一层上都添加了一个可学习的掩码M。掩码M将根据ES中每个空间图边的学习重要性权重来缩放节点特征对其相邻节点的贡献。(即对不同关节进行加权)

6 网络结构和训练

69dcc5937c75408eb9d936eaff5d5e13.png

网络结构如上图所示

相关文章
|
存储 Kubernetes Cloud Native
一文搞懂云原生架构
目前,每个 IT 资源或产品都作为服务提供。而且伴随云计算的滚滚浪潮,云原生(CloudNative)的概念应运而生,云原生很火,火得一塌糊涂,都0202年了,如果还不懂云原生,那真的out了。因此,云原生软件开发成为每个企业的关键要求,无论其规模和性质如何。在加入云计算潮流之前,了解什么是云原生架构以及如何为云原生应用程序需求设计正确的架构非常重要。
一文搞懂云原生架构
|
固态存储 计算机视觉 异构计算
一起来学MediaPipe(一)人脸及五官定位检测
一起来学MediaPipe(一)人脸及五官定位检测
4342 0
一起来学MediaPipe(一)人脸及五官定位检测
|
并行计算 Ubuntu 机器人
计算机视觉教程7-3:Openpose配置与实践
计算机视觉教程7-3:Openpose配置与实践
3324 0
计算机视觉教程7-3:Openpose配置与实践
|
并行计算 异构计算
卸载原有的cuda,更新cuda
本文提供了一个更新CUDA版本的详细指南,包括如何查看当前CUDA版本、检查可安装的CUDA版本、卸载旧版本CUDA以及安装新版本的CUDA。
13233 3
卸载原有的cuda,更新cuda
【科研技巧】Mac系统如何给Endnote 20安装GB/T中文文献格式以及利用Endnote在Word中插入参考文献
在Mac系统下给Endnote 20安装GB/T中文文献格式的步骤以及如何利用Endnote在Word中插入符合GB/T格式的参考文献。
1325 5
【科研技巧】Mac系统如何给Endnote 20安装GB/T中文文献格式以及利用Endnote在Word中插入参考文献
2022最新最详细必成功的在Vscode中设置背景图、同时解决不受支持的问题
这篇文章提供了在VScode中设置背景图的详细步骤,包括下载background插件、编辑setting.json文件、配置背景样式,并解决了设置后出现的不支持提示的问题。
2022最新最详细必成功的在Vscode中设置背景图、同时解决不受支持的问题
|
存储 人工智能 芯片
多GPU训练大型模型:资源分配与优化技巧 | 英伟达将推出面向中国的改良芯片HGX H20、L20 PCIe、L2 PCIe
在人工智能领域,大型模型因其强大的预测能力和泛化性能而备受瞩目。然而,随着模型规模的不断扩大,计算资源和训练时间成为制约其发展的重大挑战。特别是在英伟达禁令之后,中国AI计算行业面临前所未有的困境。为了解决这个问题,英伟达将针对中国市场推出新的AI芯片,以应对美国出口限制。本文将探讨如何在多个GPU上训练大型模型,并分析英伟达禁令对中国AI计算行业的影响。
3217 0
|
机器学习/深度学习 编解码 TensorFlow
MobileNetV3架构解析与代码复现
MobileNet模型基于深度可分离卷积,这是一种分解卷积的形式,将标准卷积分解为深度卷积和`1*1`的点卷积。对于MobileNet,深度卷积将单个滤波器应用于每个输入通道,然后,逐点卷积应用`1*1`卷积将输出与深度卷积相结合。
3118 0
MobileNetV3架构解析与代码复现
|
存储 并行计算 Ubuntu
Nvidia Jetson Orin系列配置教程
本文是Nvidia Jetson Orin系列的配置教程,介绍了两种安装方法:通过Nvidia SDK Manager进行安装和通过本地镜像烧录进行安装。第一种方法包括下载SDK Manager、安装和使用工具进行Jetson系列硬件的配置。第二种方法包括下载官方镜像、使用Etcher烧录镜像、安装镜像、安装开发环境以及检查开发环境是否配置成功。文中还提供了CUDA、cuDNN、TensorRT和OpenCV的检查命令和预期结果。
3831 0
Nvidia Jetson Orin系列配置教程
|
机器学习/深度学习 监控 算法
【传知代码】骨架行为识别-论文复现
骨架行为识别是计算机视觉中的关键技术,通过分析人体骨架轨迹和姿态来识别行为。它应用于人机交互、智能监控等领域,利用OpenPose等算法提取关键点信息。CTR-GCN是该领域的先进模型,优于2S-AGCN,通过通道拓扑优化和时间建模提高识别效果。模型包含通道细化、特征变换和维度增强三个部分。源码可在相关文章附件获取。骨架行为识别技术在视频理解、人机交互、运动分析等多个场景有广泛应用,并持续发展创新。
681 1
【传知代码】骨架行为识别-论文复现