README.md 2.9 KB
Newer Older
unknown's avatar
unknown committed
1
# Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition(STGCN)
unknown's avatar
unknown committed
2

unknown's avatar
unknown committed
3
4
5
6
## 模型介绍
人体骨骼的动力学为人类动作识别传递了重要信息。传统的骨架建模方法通常依赖于手工制作的部分或遍历规则,因此导致表达能力有限,难以泛化。在这项工作中,我们提出了一种新的动态骨架模型,称为时空图卷积网络(ST-GCN),它通过从数据中自动学习空间和时间模式,超越了以前方法的限制。该公式不仅具有更大的表达能力,而且具有更强的泛化能力。在Kinetics和NTU-RGBD这两个大型数据集上,它比主流方法有了实质性的改进。
## 模型结构
ST-GCN模型由九层时空图卷积组成。前三层输出64通道数,中间三层输出128通道,最后三层输出256层通道数。一共有9个时间卷积核,在每一个ST-GCN使用残差链接,使用dropout进行特征正则化处理,将一半的神经元进行dropout处理。第4、7层的时间卷积层设置为poling层。最后将输出的256个通道数的输出进行全局pooling,并由softmax进行分类。
unknown's avatar
unknown committed
7

unknown's avatar
unknown committed
8
![img](https://user-images.githubusercontent.com/34324155/142995893-d6618728-072c-46e1-b276-9b88cf21a01c.png)
unknown's avatar
unknown committed
9

unknown's avatar
unknown committed
10
11
## 数据集
有关数据集的基本信息,请参阅官方网站(https://www.deepmind.com/open-source/kinetics)。脚本可用于准备kinetics400, kinetics600, kinetics700.。要准备不同版本的动力学,您需要将以下示例中的${DATASET}替换为特定的数据集名称。数据集名称的选择是kinetics400、kinetics600和kinetics700。在开始之前,请确保目录位于$MMACTION2/tools/data/${DATASET}/。在本测试中使用的是kinetics400数据集。
unknown's avatar
unknown committed
12

unknown's avatar
unknown committed
13
数据集处理方法请参考tools/data/kinetics自行处理,也可通过下面链接下载使用。
unknown's avatar
unknown committed
14

unknown's avatar
unknown committed
15
链接:https://pan.baidu.com/s/1LWMCki18G15Pkvjl9-gwgw?pwd=xlpi 提取码:xlpi 
unknown's avatar
unknown committed
16

zwq330205812's avatar
zwq330205812 committed
17
18
[快速下载地址](http://113.200.138.88:18080/aidatasets/project-dependency/kinetics)

unknown's avatar
unknown committed
19
20
21
22
## STGCN训练
### 环境配置
提供[光源](https://www.sourcefind.cn/#/service-details)拉取的训练以及推理的docker镜像:
* 训练镜像:docker pull image.sourcefind.cn:5000/dcu/admin/base/pytorch:1.10.0-centos7.6-dtk-22.10.1-py37-latest
unknown's avatar
unknown committed
23

unknown's avatar
unknown committed
24
25
26
27
28
29
30
  ```
  mmaction2 安装:
  cd mmaction2-0.24.1
  pip3 install -e .
  ```
### 训练
训练命令:
unknown's avatar
unknown committed
31

unknown's avatar
unknown committed
32
33
34
35
    export HIP_VISIBLE_DEVICES=0
    export ROCBLAS_ATOMICS_MOD=1
    export MIOPEN_FIND_MODE=1
    python3 tools/train.py configs/skeleton/stgcn/stgcn_80e_ntu60_xsub_keypoint.py --seed 0 --deterministic --validate --gpu-ids 0
unknown's avatar
unknown committed
36

sunxx1's avatar
sunxx1 committed
37
## 准确率数据
unknown's avatar
unknown committed
38
测试数据使用的是[kinetics400](https://github.com/sirius-ai/LPRNet_Pytorch/tree/master/data/test),使用的加速卡是DCU Z100L。
unknown's avatar
unknown committed
39

sunxx1's avatar
sunxx1 committed
40
41
42
43
| 卡数 | Top5_acc |
| :------: |:------: |
| 1 | 1.0000 |

sunxx1's avatar
sunxx1 committed
44
### 源码仓库及问题反馈
sunxx1's avatar
sunxx1 committed
45
46

https://developer.hpccube.com/codes/modelzoo/stgcn
unknown's avatar
unknown committed
47

unknown's avatar
unknown committed
48
### 参考
unknown's avatar
unknown committed
49

unknown's avatar
unknown committed
50
https://github.com/open-mmlab/mmdetection