ST-TR:基于骨骼的活动识别的空间时间变换器网络教程
ST-TR 项目地址: https://gitcode.com/gh_mirrors/st/ST-TR
1. 目录结构及介绍
ST-TR 是一个用于基于骨架的活动识别的空间时间变换器网络实现。以下是其主要的目录结构及其简介:
- additional_files: 可能包含了额外的数据或配置文件,对于运行项目不是必需的核心部分。
- checkpoint_ST-TR: 包含预训练模型,用户可以利用这些模型进行测试或者迁移学习。
- code: 主代码存放地,包括了核心模型的实现。
- st_gcn: 模型定义的子目录,里面进一步划分了网络组件,如空间变换器和时间变换器相关代码。
- LICENSE, LICENSE_1, LICENSE_2: 不同部分代码的许可协议,由于代码可能从不同来源合并而来,因此有多个许可文件。
- requirements.txt: 列出了项目运行所需的所有Python库依赖。
- README.md: 此文件提供了关于项目的基本信息,包括如何运行、论文引用等。
- ntu_gendata.py, preprocess.py, ntu_gen_bones.py, 等: 这些脚本用于数据处理和预处理,适用于特定的骨架数据集,如NTU-RGB+D 60。
2. 项目的启动文件介绍
主要的启动文件是 main.py
,它被设计成项目的入口点。通过运行此脚本,你可以开始训练模型或进行测试,具体行为取决于配置文件中的设置。使用方法通常如下:
python3 main.py
但是,在执行之前,你需要根据你的需求编辑配置文件来指定是训练还是测试模式,并且可以调整其他参数。
3. 项目的配置文件介绍
配置文件位于 /config/st_gcn/nturgbd/train.yaml
(以NTU-RGB+D数据集为例)。这个YAML文件详细设置了模型训练或测试的各种参数,关键包括:
- Training: 设置为
True
时,程序将进入训练模式;反之,则为测试模式。 - attention, tcn_attention, only_attention, 和 all_layers: 控制着空间时间变换器的启用状态以及它们应用的方式。比如,
attention=True
启用自我注意力机制,all_layers=True
表示变换器应用于所有层而不是仅从某层开始。 - agcn: 设置为
True
允许使用自适应图卷积网络配置。 - 其他参数可能包括数据路径、批大小、学习率等,根据实际研究或实验要求调整。
为了针对性地控制ST-TR的不同配置,如使用自我注意作为增强步骤、在所有层应用变换器或是结合空间与时间变换流,用户应仔细修改该配置文件。例如,要运行时空变换流并融合结果,需确保配置正确设置注意力机制及相关流的激活情况。
在操作前,确保已安装必要的Python环境和PyTorch框架,并通过pip安装配置文件中列出的其他依赖项,遵循requirements.txt
文件即可。此外,别忘了处理数据集,使用相应的脚本生成必要的输入数据。