您好,欢迎来到游6网!

当前位置:首页 > AI > 2021 CCF BDCI基于飞桨实现花样滑冰选手骨骼点动作识别-B榜第3名方案

2021 CCF BDCI基于飞桨实现花样滑冰选手骨骼点动作识别-B榜第3名方案

发布时间:2025-07-22    编辑:游乐网

本文是2024 CCF BDCI花样滑冰选手骨骼点动作识别大赛B榜第三名方案。基于飞桨,采用ICCV2024论文CTRGCN和Focal loss、PaddleVideo套件,构建节点流、骨骼流等四流框架,结合模型集成,在FSD-30数据集上取得良好成绩,还介绍了环境配置、训练与预测流程。

2021 ccf bdci基于飞桨实现花样滑冰选手骨骼点动作识别-b榜第3名方案 - 游乐网

2024 CCF BDCI基于飞桨实现花样滑冰选手骨骼点动作识别-第3名方案

本项目是基于飞桨实现花样滑冰选手骨骼点动作识别大赛:花样滑冰选手的细粒度骨骼点动作识别大赛B榜第三名方案。本项目基于ICCV2024论文CTRGCN和Focal loss、PaddleVideo套件构建节点流、骨骼流、节点运动流、骨骼运动流四流框架进行动作识别,取得了B榜第三,A榜15的成绩。

2021 CCF BDCI基于飞桨实现花样滑冰选手骨骼点动作识别-B榜第3名方案 - 游乐网[](http://)

一、赛题介绍

人体运动分析是近几年许多领域研究的热点问题。在学科的交叉研究上,人体运动分析涉及到计算机科学、运动人体科学、环境行为学和材料科学等。随着研究的深入以及计算机视觉、5G通信的飞速发展,人体运动分析技术已应用于自动驾驶、影视创作、安防异常事件监测和体育竞技分析、康复等实际场景人体运动分析已成为人工智能领域研究的前沿课题。目前的研究数据普遍缺少细粒度语义信息,导致现存的分割或识别任务缺少时空细粒度动作语义模型。此类研究在竞技体育、运动康复、日常健身等方面有非常重大的意义。相比于图片的细粒度研究,时空细粒度语义的人体动作具有动作的类内方差大、类间方差小这一特点,这将导致由细粒度语义产生的一系列问题,利用粗粒度语义的识别模型进行学习难得获得理想的结果。

基于实际需求以及图深度学习模型的发展,本比赛旨在构建基于骨骼点的细粒度人体动作识别方法。通过本赛题建立精度高、细粒度意义明确的动作识别模型,希望大家探索时空细粒度模型的新方法。

二、竞赛数据集

数据集Figure Skating Dataset (FSD-30)旨在通过花样滑冰研究人体的运动。在花样滑冰运动中,人体姿态和运动轨迹相较于其他运动呈现复杂性强、类别多的特点,有助于细粒度图深度学习新模型、新任务的研究。

在本次比赛最新发布的数据集中,所有视频素材均从2017-2020 年的花样滑冰锦标赛中采集得到。源视频素材中视频的帧率被统一标准化至每秒30 帧,图像大小被统一标准化至1080 * 720 ,以保证数据集的相对一致性。之后通过2D姿态估计算法Open Pose,对视频进行逐帧骨骼点提取,最后以.npy格式保存数据集。

训练数据集与测试数据集的目录结构如下所示:

train_data.npytrain_label.npytest_A_data.npytest_B_data.npy  # B榜测试集后续公开
登录后复制        

本次比赛最新发布的数据集共包含30个类别,训练集共2922个样本,A榜测试集共628个样本,B榜测试集共634个样本;

train_label.npy文件通过np.load()读取后,会得到一个一维张量,张量中每一个元素为一个值在0-29之间的整形变量,代表动作的标签;

data.npy文件通过np.load()读取后,会得到一个形状为N×C×T×V×M的五维张量,每个维度的具体含义如下:

骨架示例图:

2021 CCF BDCI基于飞桨实现花样滑冰选手骨骼点动作识别-B榜第3名方案 - 游乐网        

数据集下载

数据集可以从比赛链接处下载,报名成功后,即可获取数据集下载链接。数据集下载完成后,可以将数据集上传到aistudio项目中,上传后的数据集路径在/home/aistudio/data目录下。

如果是直接fork的本项目,在/home/aistudio/data 目录下已经包含了下载好的训练数据和测试数据。注意:由于只能携带两个数据集,故A榜测试集是存放在/home/aistudio/work/PaddleVideo/data/fsd10目录下的。

In [ ]
# 检查数据集所在路径!tree -L 3 /home/aistudio/data !tree -L 3 /home/aistudio/work/PaddleVideo/data/fsd10
登录后复制        
/home/aistudio/data├── data104925│   ├── train_data.npy│   └── train_label.npy└── data117914    └── test_B_data_1118.zip2 directories, 3 files/home/aistudio/work/PaddleVideo/data/fsd10├── example_skeleton.npy└── test_A_data.zip0 directories, 2 files
登录后复制        

三、模型构建思路及调优过程

(一)做过的一些尝试(简述)

1、首先肯定是基于最新baseline的agcn模型调训练参数,为了尽可能的照顾到长时间序列的样本以及统计到有效帧长超于1000的样本训练集占有率不容忽视,控制变量,对比AutoPadding的window_size为500、1000的结果,选择了更优的window_size=1000的配置,至于更大的window_size,考虑到带来的训练代价我认为是不可取的。对比了epochs=100和epochs=200的结果,最终选取了结果更好的epochs=200,与之匹配的是Warmup epochs=20;比较了学习率0.05和0.1,最终选取了0.1;也对标签平滑的系数ls_eps进行了调整,最终选取了ls_eps=0.3。当然也对优化器、学习率策略修改过,但没起到好的作用;Mixup系数保持为最初的优值;CutMix不起作用等等。注意,这些的调整基本都是在设好相同随机数种子1024下进行的。

2、在大部分与1相同的配置(除了ls_eps=1)下,基于最新baseline的agcn模型,分别或同时增加特征注意力(如增加SEBlock)、节点(空间)注意力、时间注意力,全料数据训练在A榜最好取得了66.4的成绩。

3、将训练集划分为了训练集(90%)和验证集(10%),为了进行1的参数调整和对模型进行修改,之后所有训练(除特殊说明)都是仅在划分出来的训练集上进行训练,然后在验证集上验证取得最优(1个epoch验证1次)的验证模型。我们的划分代码中不涉及随机性,在数据集本身样本存放顺序没变下可以保证每次的划分是一致的,从而可以保证可复现性。

4、除注意力机制以外,对模型进行过的一些修改,为了扩大时域感受野,我增加了时域卷积的空洞参数为2、3、4等等,采取多分支级联形式,后来看论文发现这个方向的主流模型早都是这样做了,我加了之后提升不是很满意;由于易过拟合,然后对于改过的这些模型进行过增加模型深度并增加随机深度、增加dropout等等,没有大的提升。之后几乎看完了最近所有相关顶会论文,逐步更换著名的2s-Agcn、Ms-Agcn模型、Ms-G3D模型,发现跑的很慢,性能没怎么提升,比最初的agcn还容易过拟合,也进行过自适应图拓扑结构构建方法修改、模型结构修改等,发现训练速度严重影响了我验证想法,当然那些想法也没起到正的作用。

5、对数据进行处理,看到不少论文的数据,不是padding 0进行补全,而是replay进行补全,故也尝试了对训练、验证数据进行replay之后训练验证,发现更易过拟合了,性能更差了;发现数据集类别分布不均匀,我们对数据集进行label shuffle进行数据集类别均匀扩增,同时对dropout等参数进行调整,发现没有带来性能提升,估计是难识别、易混淆的类别不一定是数目少的类别等。

6、基于5,我无意中发现了Focal loss对于训练类别不均衡很有效,可以自适应地可以通过减少易分类样本的权重,使得模型在训练时更专注于难分类的样本。

7、构建节点流、骨骼流、节点运动流、骨骼运动流四流框架进行多模型融合。

热门合集

MORE

+

MORE

+

变态游戏推荐

MORE

+

热门游戏推荐

MORE

+

关于我们  |  游戏下载排行榜  |  专题合集  |  端游游戏  |  手机游戏  |  联系方式: youleyoucom@outlook.com

Copyright 2013-2019 www.youleyou.com    湘公网安备 43070202000716号

声明:游6网为非赢利性网站 不接受任何赞助和广告 湘ICP备2023003002号-9