【3DHPE实验】VideoPose3D:基于时间卷积和半监督训练的视频三维人体姿态估计

一、环境配置

-Python 3+发行版
-PyTorch >= 0.4.0
可选:
-Matplotlib:可视化预测
-ffmpeg:导出MP4视频(下载快到最后卡住了可以尝试切换网络)
-imagemagick:导出gif
-MATLAB:用HumanEva-I的实验中来转换数据集

二、数据集设置

1、安装依赖

pip install cdflib
pip install h5py
pip install numpy

2、下载H36M数据集

提取名为Poses_D3_Positions_S*.tgz的文件。(主题1、5、6、7、8、9、11)到一个公共目录。你的目录如下:

/path/to/dataset/S1/MyPoseFeatures/D3_Positions/Directions 1.cdf
/path/to/dataset/S1/MyPoseFeatures/D3_Positions/Directions.cdf
...

3、运行数据准备代码

cd data
python prepare_data_h36m.py --from-source-cdf /path/to/dataset
cd ..

生成的数据文件存放在data目录下:

4、下载Mask R-CNN and CPN detections

cd data
wget https://dl.fbaipublicfiles.com/video-pose-3d/data_2d_h36m_cpn_ft_h36m_dbb.npz
wget https://dl.fbaipublicfiles.com/video-pose-3d/data_2d_h36m_detectron_ft_h36m.npz
cd ..

 三、预训练模型

1、下载

mkdir checkpoint
cd checkpoint
wget https://dl.fbaipublicfiles.com/video-pose-3d/pretrained_h36m_cpn.bin
wget https://dl.fbaipublicfiles.com/video-pose-3d/pretrained_humaneva15_detectron.bin
cd ..

2、测试于Human3.6M,运行:

python run.py -k cpn_ft_h36m_dbb -arc 3,3,3,3,3 -c checkpoint --evaluate pretrained_h36m_cpn.bin

四、从零开始训练

1、训练指令

python run.py -e 80 -k cpn_ft_h36m_dbb -arc 3,3,3,3,3

2、Training from scratch 和预训练模型的区别: 

特性Training from scratchUsing pretrained models
初始状态随机初始化参数使用已有的预训练权重
训练时间较长,需要更多计算资源较短,因为预训练已学到特征
数据需求需要大量的数据才能收敛数据量需求较小
适用任务新任务或特定领域任务通用任务或相似领域任务
模型表现可能需要更多时间调优起点高,容易达到较好效果

3、时序数据的优化

  • 样本相关性问题:由于时间序列数据中相邻帧的相关性,作者通过选择来自不同视频片段的训练样本来减少相关性,以提高模型训练的稳定性和泛化能力。
  • 训练优化:通过替换扩张卷积为步幅卷积,以及利用批归一化动量调度等技术,优化了训练过程。
  • 推理优化:在推理阶段,通过不使用时间维度池化,并重用中间状态,提高了推理效率。
  • 数据增强:通过水平翻转等数据增强策略,增强了模型的鲁棒性。

五、半监督训练

python run.py -k gt --subjects-train S1 --subset 0.1 --subjects-unlabeled S5,S6,S7,S8 -e 200 -lrd 0.98 -arc 3,3,3 --warmup 5 -b 64

大约65.2毫米误差,如果只训练监督,大约80.7毫米。

六、评估指标

协议对齐方式衡量的误差类型应用场景
 MPJPE无对齐关节点的绝对位置误差通用评估,直接衡量模型输出的精度
P-MPJPE平移 + 旋转 + 尺度对齐关节点的相对位置误差对姿态形状的预测精度感兴趣
N-MPJPE尺度对齐关节点的相对位置误差(仅考虑比例一致性)半监督或弱监督场景,忽略平移和旋转的影响

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值