这是2s-AGCN的Paddle非官方实现,基于CVPR2019论文,改进自ST-GCN,采用双流自适应卷积网络融合骨架节点与骨骼信息。复现了NTU-RGBD数据集上的精度,包含XSub、XView的训练、测试及双流融合,还涉及静态模型导出、推理及TIPC测试等内容。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

This is the unofficial code based on PaddlePaddle of CVPR 2019 paper:
Two-Stream Adaptive Graph Convolutional Networks for Skeleton-Based Action Recognition
2s-AGCN是发表在CVPR2019上的一篇针对ST-GCN进行改进的文章,文章提出双流自适应卷积网络,针对原始ST-GCN的缺点进行了改进。在现有的基于GCN的方法中,图的拓扑是手动设置的,并且固定在所有图层和输入样本上。另外,骨骼数据的二阶信息(骨骼的长度和方向)对于动作识别自然是更有益和更具区分性的,在当时方法中很少进行研究。因此,文章主要提出一个基于骨架节点和骨骼两种信息融合的双流网络,并在图卷积中的邻接矩阵加入自适应矩阵,大幅提升骨骼动作识别的准确率,也为后续的工作奠定了基础(后续的骨骼动作识别基本都是基于多流的网络框架)。
论文地址:2s-AGCN Paper
原论文代码地址:2s-AGCN Code
在NTU-RGBD数据集上的测试效果如下
| CS | CV | |
|---|---|---|
| Js-AGCN(joint) | 85.8% | 94.13% |
| Bs-AGCN(bone) | 86.7% | 93.9% |
| 2s-AGCN | 88.5% | 95.4% |
在NTU-RGBD上达到验收标准:X-Sub=88.5%, X-View=95.1%
训练日志:日志
VisualDL可视化日志:VDL
模型权重:model_weights
# 解压xsub!unzip data/data139161/xsub.zip
# 解压xview!unzip data/data139161/xview.zip
# 生成xsub骨头数据!python work/2s_AGCN/data_gen/gen_bone_data.py
# xsub joint训练(时间较长,可跳过,训练好的模型已经放在Stdio中,可直接运行后面的测试)!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-subject/train_joint.yaml
# xsub bone训练(时间较长,可跳过,训练好的模型已经放在Stdio中,可直接运行后面的测试)!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-subject/train_bone.yaml
# xsub joint测试!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-subject/test_joint.yaml
# xsub bone测试!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-subject/test_bone.yaml
# xsub双流融合!python work/2s_AGCN/ensemble.py --datasets xsub
# xview joint训练(时间较长,可跳过,训练好的模型已经放在Stdio中,可直接运行后面的测试)!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-view/train_joint.yaml
# xview bone训练(时间较长,可跳过,训练好的模型已经放在Stdio中,可直接运行后面的测试)!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-view/train_bone.yaml
# xview joint测试!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-view/test_joint.yaml
# xview bone测试!python work/2s_AGCN/main.py --config work/2s_AGCN/config/nturgbd-cross-view/test_bone.yaml
# xview双流融合!python work/2s_AGCN/ensemble.py --datasets xview
# 静态模型导出!python work/2s_AGCN/export_model.py --save_dir ./output --model_path runs/ntu_cv_agcn_joint-38-22932.pdparams --batch 10
# 生成小数据集!python work/2s_AGCN/data_gen/gen_infer_sample_data.py --dataset 'xview' --mode 'joint' --data-num 50
Successfully generate tiny dataset
# 模型静态推理# 这里需要安装autolog# 终端运行下列命令# git clone https://github.com/LDOUBLEV/AutoLog# cd AutoLog/# pip3 install -r requirements.txt# python3 setup.py bdist_wheel# pip3 install ./dist/auto_log-1.2.0-py3-none-any.whl!python work/2s_AGCN/infer.py --data_file xview/tiny_infer_data.npy --label_file xview/tiny_infer_label.pkl --model_file ./output/model.pdmodel --params_file ./output/model.pdiparams
# 准备小数据集!bash work/2s_AGCN/test_tipc/prepare.sh work/2s_AGCN/test_tipc/configs/2s-AGCN/train_infer_python.txt 'lite_train_lite_infer'
Successfully generate tiny dataset
# 进行tipc # 生成日志见output文件夹!bash work/2s_AGCN/test_tipc/test_train_inference_python.sh work/2s_AGCN/test_tipc/configs/2s-AGCN/train_infer_python.txt 'lite_train_lite_infer'
以上就是百度论文复现赛第六期第75题 2s-AGCN的paddle实现的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号