目录
基于骨架的动作识别的时空图卷积网络-学习
一、项目介绍
1.1相关论文
1.2项目代码
1.3数据集
二、环境搭建
2.1.conda虚拟环境
2.导入库
3.配置PyCharm
三,运行项目
总结
论文标题:Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition
论文主要内容:提出了一种新的动态骨架模型,称为时空图卷积网络(ST-GCN),它通过自动从数据中学习空间和时间模式,超越了以前方法的限制。这种提法不仅具有更强的表达能力,而且具有更强的泛化能力。在两个大型数据集,Kinetics和NTU-RGBD上,它比主流方法取得了实质性的改进。
论文链接:https://arxiv.org/abs/1801.07455
项目标题:Human Action Recognition
项目内容:对ST -GCN进行复现
项目链接:https://github.com/yongqyu/st-gcn-pytorch
数据集名:Florence 3D actions dataset
数据集内容:215 个视频, 10 表演者,8个用于训练 1个用于验证 1个用于测试,每个视频大约有1s的时间,有9个动作:挥手,喝水,接电话,鼓掌,系紧鞋带,坐下,站起来,看表,鞠躬。分为15个 部位: 头部、颈部、脊柱、左肩、左肘、左腕、右肩、右肘、右腕、左髋、左膝、左踝、右髋、右膝、右踝。现在的数据集人体的点位更多比如说mediapipe就有32个点位。
数据集链接:https://www.micc.unifi.it/resources/datasets/florence-3d-actions-dataset/
安装任意本版的miniconda并启动
输入以下命令创建conda虚拟环境,基础命令如下,conda create -n name python=version,name可以任意取
conda create -n pytorch1.0 python=3.6
输入以下命令进入pytorch1.0的环境
activate pytorch1.0
代码如下:
conda install pytorch-cpu==1.0.0 torchvision-cpu==0.2.1 cpuonly -c pytorch
pip install numpy
pip install scikit-learn
如果下载太慢可以通过以下方式换源:
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple/
按如下方式配置PyCharm,使用conda虚拟环境
PyCharm 中点击 设置->项目->Python 解释器->添加解释器->conda 环境->解释器选择 pytorch1.0
由于前面配置环境的时候采用的CUDA一直报错,故采用的CPU版本的pytorch
如遇代码报错:
报错位置main.py里的这部分
target = test_label[i] test_loss += criterion(logit, target.view(1)).item()
请将代码改为这种形式
target_view1 = target.view(1)
target_view1 = target_view1.to(torch.int64)
test_loss += criterion(logit, target_view1).item()
参数数量:69667
模型大小: 3.21 MB
训练时间: 19.649268 s for 30 epochs
Test acc为测试集精确度
第一次尝试写博客,这个项目仅支持Florence 3D actions dataset这一个数据集,并且不是论文中给出的代码,学起来感觉收获不大,可以看看项目中给出的ppt:gcn_ar.pptx,这个ppt里英文韩文都有,需要翻译一下。后面学习的项目找了一个21年的论文给的项目,尝试复现一下。