ST-GCN训练自己的数据集代码实践问题记录
文章目录
1. 下载代码和安装相应的环境
【文末提供论文下载地址】
首先从open-mmalb/mmskeleton下载代码,然后在mmskeleton/doc/GETTING_STARTED.md
中可以找到环境的安装步骤,主要是pytorch,python和cuda的版本一定要对上,可以参考我的另外一篇文章torch- torchvision- python版本对应关系和pytorch官网
2. 构建数据集
在这里我是自己构建的数据集,我将会就自己的过程进行总结。
首先官方文档mmskeleton/doc/CUSTOM_DATASET.md
中给出了大概步骤,主要是对configs/utils/build_dataset_badminton.yaml
,resource/category_annotation_example.json
,mmskeleton/processor/skeleton_dataset.py
进行了修改
2.1 configs/utils/build_dataset_example.yaml
video_dir 是指需要处理的动过识别片段
out_dir是指经过检测和姿态识别之后的输出路径
category_annotation是指视频和动作的关系对照
2.2 resource/category_annotation_example.json
在这里需要把需要识别的动作准备好,并且每个视频对应的标签都弄好
2.3 mmskeleton/processor/skeleton_dataset.py
在这个文件中,主要是build函数,主要实现了对原视频的处理以及骨架数据的保存过程
上图是build函数的内部处理最关键的部分,这个for循环是主要修改的部分,因为我们自己创建数据集的时候,原始图片路径,目标数据路径,视频的标签关系和保存格式等等
都可以在这个for循环里面进行修改。
3. 训练数据集
执行语句:mmskl configs/recognition/st_gcn/dataset_example/train.yaml
修改通道是数目(2D为3,3D为4),动作类别的数目,数据的目录,选取的最大置信度人的个数,关键点个数和训练过程中的日志文件、最后训练好的模型保存地址
(文件位置configs/recognition/st_gcn/dataset_example/train.yaml
)
3.1
我是用的是2D数据,所以in_channels是3,同时类别数是13
3.2
data_dir是第二步准备数据集的时候,最好保存号的数据集目录,num_track是一帧中选取置信度最高的两个人的意思,num_keypoints是骨架的关键点数目,这个根据具体情况而定,我是按论文中的算法来的,所以还是17个关键点(要改两处地方,下面两张图)
3.3
最后日志文件和训练号的模型文件保存地址(可以自己更改),total_epochs是全部的训练批次
4. 测试数据集
执行语句:mmskl configs/recognition/st_gcn/dataset_example/test.yaml --checkpoint work_dir/recognition/st_gcn/[path of pth]/latest.pth
上面语句的最后[path of pth]是在3.3中设置的模型文件保存地址,下面是要修改的地方(文件位置configs/recognition/st_gcn/dataset_example/test.yaml
)
data_dir是指要测试的数据集位置,其实之前都已经提过,就不再介绍了。
5. 相关文章
- https://zhoef.com/2019/08/24/14_ST-Gcn/
- https://zhoef.com/2019/08/11/8_Pytorch_BatchNorm/
- https://www.zhihu.com/question/276101856/answer/638672980
- https://www.zhihu.com/question/54504471/answer/611222866
- https://mp.weixin.qq.com/s/sg9O761F0KHAmCPOfMW_kQ
- https://blog.csdn.net/moxibingdao/article/details/118005606
- https://blog.csdn.net/moxibingdao/article/details/107329002
- https://www.sohu.com/a/256622345_715754
- https://www.zhihu.com/question/54504471
- https://blog.csdn.net/weixin_51450749/article/details/111768242
- https://www.sohu.com/a/359058988_129720
- https://blog.csdn.net/Cheungleilei/article/details/106732746
- https://blog.csdn.net/qq_43019451/article/details/118787580
以上是我在学习ST_GCN看的一些文章,非常感谢他们的帮助,如果现在阅读的您有需要也可以看看。
论文地址:Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action.pdf
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix