基于骨骼的动作识别的行动结构图卷积网络

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 摘要
  • Abstract
  • 文献阅读:基于骨骼的动作识别的行动结构图卷积网络
    • 1、研究背景
    • 2、方法提出
    • 3、关键结构
      • 3.1、A-links inference module (AIM)
      • 3.2、Structural Links (S-links)
    • 4、方法优势
    • 5、试验
    • 6、结论
  • 二、U-net代码结构学习
  • 总结


摘要

本周主要阅读了CVPR文章,基于骨骼的动作识别的行动结构图卷积网络。文章提出了一种名为AS-GCN的新型网络结构,用于处理基于骨架数据的人体动作识别问题。AS-GCN通过引入编码器-解码结构的A-link推理模块,可以直接从动作中捕捉到动作特定的潜在依赖关系。AS-GCN还扩展了现有的骨架图,以表示更高阶的依赖关系,即结构链接。通过将这两种类型的链接合并到一个通用的骨架图中。除此之外,还学习学习了U-net代码的学习。

Abstract

This week, I mainly read CVPR articles on action structure graph convolutional networks for skeleton based action recognition. The article proposes a novel network structure called AS-GCN for handling human motion recognition problems based on skeleton data. AS-GCN can directly capture action specific potential dependencies from actions by introducing an A-link inference module with an encoder decoding structure. AS-GCN also extends the existing skeleton graph to represent higher-order dependencies, namely structural links. By merging these two types of links into a common skeleton diagram. In addition, I also learned how to learn U-net code.


文献阅读:基于骨骼的动作识别的行动结构图卷积网络

Title: Vision Transformer with Super Token Sampling
Author:Maosen Li1, Siheng Chen, Xu Chen, Ya Zhang, Yanfeng Wang, and Qi Tian
From:2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)

1、研究背景

基于骨骼数据的动作识别方法逐渐受到研究者的关注。与RGB图像相比,骨骼数据具有对光照、颜色等外部因素不敏感的特性,因此更加鲁棒。此外,骨骼数据能够直接描述人体的运动状态,包含了丰富的动作信息。因此,基于骨骼数据的动作识别方法具有更高的识别准确率和更强的适应性。然而,尽管基于骨骼数据的动作识别方法具有诸多优势,但仍然存在一些挑战。例如,如何有效地提取和利用骨骼数据中的空间和时间信息,以及如何捕捉不同关节点之间的依赖关系等。针对这些问题,研究者们提出了一系列基于图卷积网络(GCN)的骨骼动作识别方法。这些方法通过构建人体骨骼图,并利用图卷积操作来提取骨骼数据中的特征,取得了显著的效果。

2、方法提出

文章提出了一种名为AS-GCN的新型网络结构,用于处理基于骨架数据的人体动作识别问题。AS-GCN通过引入编码器-解码结构的A-link推理模块,可以直接从动作中捕捉到动作特定的潜在依赖关系,即动作链接。同时,AS-GCN还扩展了现有的骨架图,以表示更高阶的依赖关系,即结构链接。通过将这两种类型的链接合并到一个通用的骨架图中,AS-GCN进一步提出了动作结构图卷积网络(AS-GCN),该网络将动作结构图卷积和时序卷积作为基本构建块,以学习用于动作识别的空间和时间特征。此外,AS-GCN还添加了一个未来的姿态预测头,通过自我监督来捕捉更详细的动作模式。
在这里插入图片描述

3、关键结构

3.1、A-links inference module (AIM)

AIM由一个编码器和一个解码器构成,通过对两个节点之间的Action-link(即潜在的隐性依赖关系)进行推断,来预测未来节点的位置,即进行未来行为预测。具体来说,AIM的工作流程大致如下:首先将上一时刻节点的关系数据放入编码器进行编码,然后解码器对编码后的数据进行解码。通过这一编码-解码过程,AIM能够推断出节点之间的潜在依赖关系,即Action-link,从而预测未来节点的位置和行为。
在这里插入图片描述

3.2、Structural Links (S-links)

Structural Links(S-links)是一种关键的链接方式,主要用于提取骨骼数据中关节点之间的结构信息。S-links特别关注于物理上相邻的关节点之间的关系,这有助于模型捕捉人体骨架的局部结构特征。通过S-links,AS-GCN能够更精确地理解人体各个部分如何协同工作以完成各种动作。这对于动作识别和行为分析至关重要,因为人体动作通常是由多个关节的协同运动所构成的。

4、方法优势

过去的方法主要存在两点不足的地方:1、仅仅基于关节之间的固定骨架建模;2、仅捕获关节之间的局部物理依赖性。相比过去的方法AS-GCN 利用 actional links 去捕捉任何结点之间的潜在关系,利用 structural links 去捕捉一些 high order features。通过解决这些问题AS-GCN有着以下的有点:

  • 强大的表征能力:通过图卷积的方式,AS-GCN能够自动学习人体骨骼数据中的空间和时间模式,从而实现对复杂动作的准确识别。
  • 良好的泛化性能:由于AS-GCN是从数据中自动学习特征,因此它对于不同的动作类型和场景具有较强的适应性,能够较好地应对各种复杂情况。
  • 高鲁棒性:人体骨骼数据对光照、颜色等外部因素的变化不敏感,因此基于骨骼的动作识别方法通常具有更高的鲁棒性。

5、试验

首先,实验采用了多个公开的骨骼动作识别数据集,如NTU RGB+D、Kinetics等,用于训练和测试AS-GCN模型。这些数据集包含了丰富的动作类别和样本,有助于全面评估模型的性能。其次,实验对比了AS-GCN与其他先进的骨骼动作识别方法的性能。通过比较准确率、召回率、F1值等评估指标,实验证明了AS-GCN在动作识别任务上的优越性。特别是在处理复杂动作和捕捉细微动作差异方面,AS-GCN表现出了更高的识别精度。
在这里插入图片描述
此外,实验还探究了AS-GCN模型中各个组件(如A-links、S-links和Action-link inference module)对性能的影响。通过对比不同配置下的模型性能,实验分析了各个组件的作用和贡献,进一步验证了AS-GCN设计的合理性。
在这里插入图片描述

6、结论

文章提出了用于基于骨架的动作识别的动作结构图卷积网络(AS-GCN)。A-link推理模块捕获动作依赖关系,还扩展了骨架图来表示高阶关系。广义图被馈送到AS-GCN块以更好地表示动作。一个额外的未来姿势预测头通过自我监督捕捉更详细的模式。在实验步骤,使用两个数据集NTU-RGB+D和Kinetics验证了AS-GCN的行为识别。与以前的方法相比,AS-GCN实现了很大的改进。此外,AS-GCN在未来姿态预测方面也显示出了很有希望的结果。

二、U-net代码结构学习

class UNet(nn.Module):  
    def __init__(self, in_channels: int, out_channels: int):  
        super().__init__()  
  
        # 初始化下采样路径的卷积层  
        self.down_conv = nn.ModuleList([DoubleConvolution(i, o) for i, o in  
                                        [(in_channels, 64), (64, 128), (128, 256), (256, 512)]])  
        # 初始化下采样操作  
        self.down_sample = nn.ModuleList([DownSample() for _ in range(4)])  
  
        # 初始化最底层(桥接部分)的卷积层  
        self.middle_conv = DoubleConvolution(512, 1024)  
  
        # 初始化上采样路径的上采样操作  
        self.up_sample = nn.ModuleList([UpSample(i, o) for i, o in  
                                        [(1024, 512), (512, 256), (256, 128), (128, 64)]])  
        # 初始化上采样路径的卷积层  
        self.up_conv = nn.ModuleList([DoubleConvolution(i, o) for i, o in  
                                      [(1024, 512), (512, 256), (256, 128), (128, 64)]])  
        # 初始化拼接操作,用于将上采样后的特征图与下采样路径的特征图拼接  
        self.concat = nn.ModuleList([CropAndConcat() for _ in range(4)])  
        # 初始化最终的卷积层,用于输出  
        self.final_conv = nn.Conv2d(64, out_channels, kernel_size=1)  
  
    def forward(self, x: torch.Tensor):  
        # 用于存储下采样路径的特征图,以便在解码时拼接  
        pass_through = []  
  
        # 下采样路径  
        for i in range(len(self.down_conv)):  
            x = self.down_conv[i](x)  # 通过卷积层  
            pass_through.append(x)  # 保存特征图用于上采样时拼接  
            x = self.down_sample[i](x)  # 进行下采样  
  
        # 最底层卷积  
        x = self.middle_conv(x)  
  
        # 上采样路径  
        for i in range(len(self.up_conv)):  
            x = self.up_sample[i](x)  # 上采样  
            # 拼接下采样路径中保存的特征图  
            x = self.concat[i](x, pass_through.pop())  
            x = self.up_conv[i](x)  # 通过卷积层  
  
        x = self.final_conv(x)  
  
        return x

总结

本周主要阅读了CVPR文章,基于骨骼的动作识别的行动结构图卷积网络。文章提出了一种名为AS-GCN的新型网络结构,用于处理基于骨架数据的人体动作识别问题。AS-GCN通过引入编码器-解码结构的A-link推理模块,可以直接从动作中捕捉到动作特定的潜在依赖关系。AS-GCN还扩展了现有的骨架图,以表示更高阶的依赖关系,即结构链接。通过将这两种类型的链接合并到一个通用的骨架图中。除此之外,还学习学习了U-net代码的学习。下周再接再厉!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/481554.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MyBatis3源码深度解析(二十)动态SQL实现原理(一)动态SQL的核心组件

文章目录 前言第八章 动态SQL实现原理8.1 动态SQL的使用8.1.1 \<if>8.1.2 <where|trim>8.1.3 <choose|when|otherwise>8.1.4 \<foreach>8.1.5 \<set> 8.2 SqlSource组件&BoundSql组件8.3 LanguageDriver组件8.3.1 XMLLanguageDriver8.3.2 Ra…

leetcode 20.有效的括号 JAVA

题目 思路 括号的匹配&#xff0c;这是一道经典的栈的应用问题。 给我们一个字符串&#xff0c;当我们遍历到左括号时&#xff0c;让其入栈。当我们遍历到右括号时&#xff0c;让栈顶元素出栈&#xff0c;看看栈顶的元素是否和遍历到的右括号匹配。不匹配的话直接false,匹配的…

vue2 脚手架

安装 文档&#xff1a;https://cli.vuejs.org/zh/ 第一步&#xff1a;全局安装&#xff08;仅第一次执行&#xff09; npm install -g vue/cli 或 yarn global add vue/cli 备注&#xff1a;如果出现下载缓慢&#xff1a;请配置npm 淘宝镜像&#xff1a; npm config set regis…

java算法第32天 | ● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

122.买卖股票的最佳时机II 本题中理解利润拆分是关键点&#xff01; 不要整块的去看&#xff0c;而是把整体利润拆为每天的利润。假如第 0 天买入&#xff0c;第 3 天卖出&#xff0c;那么利润为&#xff1a;prices[3] - prices[0]。 相当于(prices[3] - prices[2]) (prices[…

XSS-labs详解

xss-labs下载地址https://github.com/do0dl3/xss-labs 进入靶场点击图片&#xff0c;开始我们的XSS之旅&#xff01; Less-1 查看源码 代码从 URL 的 GET 参数中取得 "name" 的值&#xff0c;然后输出一个居中的标题&#xff0c;内容是 "欢迎用户" 后面…

手撕算法-买卖股票的最佳时机 II(买卖多次)

描述 分析 使用动态规划。dp[i][0] 代表 第i天没有股票的最大利润dp[i][1] 代表 第i天持有股票的最大利润 状态转移方程为&#xff1a;dp[i][0] max(dp[i-1][0], dp[i-1][1] prices[i]); // 前一天没有股票&#xff0c;和前一天有股票今天卖掉的最大值dp[i][1] max(dp[i-1…

智能财务新选择!Zoho Books入选福布斯榜单,助力中小企业!

放眼全球&#xff0c;中小企业始终是经济发展的重要组成部分。然而&#xff0c;由于中小企业的规模、流程规范和资源等方面受限较多&#xff0c;从而导致其在管理及运营上存在着诸多问题。其中包括财务管理不规范、成本控制不到位、运营效率低下等&#xff0c;这些问题则直接影…

如何在CentOS安装SQL Server数据库并实现无公网IP远程连接内网数据库

文章目录 前言1. 安装sql server2. 局域网测试连接3. 安装cpolar内网穿透4. 将sqlserver映射到公网5. 公网远程连接6.固定连接公网地址7.使用固定公网地址连接 前言 简单几步实现在Linux centos环境下安装部署sql server数据库&#xff0c;并结合cpolar内网穿透工具&#xff0…

基于GD32E230C8T6的数字示波器

基于GD32E230C8T6的数字示波器 文章目录 基于GD32E230C8T6的数字示波器基于GD32E230C8T6的数字示波器实物演示电路原理**模拟前端处理电路**image.png**交直流耦合电路****输入信号衰减电路****信号调理电路****虚断:****虚短:****电压跟随器****反相比例放大器****同相比例放…

深度剖析GNSS高精度定位原理

一、背景 目前室外使用最广泛的定位手段是GNSS定位&#xff0c;常规的GNSS定位精度约5、10米左右&#xff0c;无法满足高精度场景的应用&#xff0c;如何提升GNSS定位性能是亟待解决的问题。本文由浅入深剖析GNSS定位原理并介绍如何实现厘米级高度定位。 二、GNSS定位原理 1、…

MySQL下载安装和本地连接

1、下载MySQL 从MySQL官网下载MySQL Community Server版本&#xff1a; 下载地址&#xff1a;MySQL官网 1、进入官网&#xff0c;点击DOWNLOADS 2、点击MySQL Community(GPL)Downloads 3、点击MySQL Installer for Windows 4、这个会直接跳转到最新的版本 如果想下载以往的…

面试算法-83-不同路径 II

题目 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中标记为 “Finish”&#xff09;。 现在考虑网格中有障碍物。那么从左上角到…

【进程概念】启动进程 | 查看进程 | 创建进程

目录 启动进程 查看进程 方法1&#xff1a;/proc 方法2&#xff1a;查看脚本 ​方法3&#xff1a;系统调用获取进程标示符❗❗ 终止进程 创建进程&#xff08;主fork) &#x1f642;查看父子进程的pid &#x1f642;进程创建/执行/终止 &#x1f642;多次重新启动进…

java的IO之NIO

NIO是一种同步非阻塞的I/O模型&#xff0c;在Java 1.4中引入了NIO框架&#xff0c;对应java.nio包&#xff0c;提供了channel、selector、buffer等。 NIO中的N可以理解为Non-blocking不在单纯是New&#xff0c;它支持面向缓冲的&#xff0c;基于通道的I/O操作方法。NIO提供了与…

论文阅读之LORA: LOW-RANK ADAPTATION OF LARGE LAN- GUAGE MODELS(2021)

文章目录 论文地址主要内容主要贡献模型图技术细节实验结果 论文地址 LORA: LOW-RANK ADAPTATION OF LARGE LAN- GUAGE MODELS 主要内容 这篇文章的主要内容是介绍了一种名为LoRA&#xff08;Low-Rank Adaptation&#xff09;的技术&#xff0c;这是一种针对大型语言模型进行…

阅读MySQL知识4

一、MySQL数据库主从同步延迟产生的原因 MySQL的主从复制都是单线程的操作&#xff0c;主库对所有DDL和DML产生的日志写进binlog&#xff0c;由于binlog是顺序写&#xff0c;所以效率很高。 Slave的SQL Thread线程将主库的DDL和DML操作事件在slave中重放。DML和DDL的IO操作…

【欧拉函数+快速幂】第十四届蓝桥杯省赛C++ C组 Java A组/研究生组 Python 研究生组《互质数的个数》(C++)

【题目描述】 给定 a,b&#xff0c;求 1≤x< 中有多少个 x 与 互质。 由于答案可能很大&#xff0c;你只需要输出答案对 998244353 取模的结果。 【输入格式】 输入一行包含两个整数分别表示 a,b&#xff0c;用一个空格分隔。 【输出格式】 输出一行包含一个整数表示…

8-深度学习

声明 本文章基于哔哩哔哩付费课程《小白也能听懂的人工智能原理》。仅供学习记录、分享&#xff0c;严禁他用&#xff01;&#xff01;如有侵权&#xff0c;请联系删除 目录 一、知识引入 &#xff08;一&#xff09;深度学习 &#xff08;二&#xff09;Tensorflo…

Java全栈课程之Linux———基本属性

一、看懂文件属性 Linux系统是一种典型的多用户系统&#xff0c;不同的用户处于不同的地位&#xff0c;拥有不同的权限。为了保护系统的安全性&#xff0c;Linux系统对不同的用户访问同一文件&#xff08;包括目录文件&#xff09;的权限做了不同的规定。 在Linux中我们可以使…

深入理解Ubuntu22:探索Linux操作系统的功能与应用

一、linux &#xff08;一&#xff09;、安装 1、电脑可以安装双系统&#xff0c;即在一套硬件上只能同时运行一个操作系统&#xff0c;例&#xff1a;C盘安装win&#xff0c;D盘安装linux。 2、虚拟机 虚拟机需要硬件支持&#xff0c;并需开启VT-x. 如&#xff1a;Virtual…