配置数据集
# mmaction2表示项目的根目录
cd mmaction2
# 创建软连接。注意/root/action/dataset-action需要替换成你本人Dataset路径
ln -s /root/action/dataset-action data
cd tools/data/
python build_rawframes.py ../../dataset-action/ucf101/videos/ ../../dataset-action/ucf101/rawframes/ --task rgb --level 2 --ext avi --use-opencv --new-short 0 --new-width 320 --new-height 240
cd ucf101
bash generate_rawframes_filelist.sh
bash generate_videos_filelist.sh
模型训练
执行如下指令:(在mmation2目录下)
cp configs/recognition/slowfast/slowfast_r50_4x16x1_256e_kinetics400_rgb.py configs/recognition/slowfast/my_slowfast_r50_4x16x1_256e_ucf101_rgb.py
然后修改configs/recognition/slowfast/my_slowfast_r50_4x16x1_256e_ucf101_rgb.py文件如下(灰色字体表示本人注释的源码):
test_cfg = dict(average_clips=None)
#dataset_type = 'RawframeDataset'
#data_root = 'data/kinetics400/rawframes_train'
#data_root_val = 'data/kinetics400/rawframes_val'
#ann_file_train = 'data/kinetics400/kinetics400_train_list_rawframes.txt'
#ann_file_val = 'data/kinetics400/kinetics400_val_list_rawframes.txt'
#ann_file_test = 'data/kinetics400/kinetics400_val_list_rawframes.txt'
dataset_type = 'RawframeDataset'
data_root = 'data/ucf101/rawframes'
data_root_val = 'data/ucf101/rawframes'
ann_file_train = 'data/ucf101/ucf101_train_split_1_rawframes.txt'
ann_file_val = 'data/ucf101/ucf101_train_split_1_rawframes.txt'
ann_file_test = 'data/ucf101/ucf101_train_split_1_rawframes.txt'
开始训练
python tools/train.py configs/recognition/slowfast/my_slowfast_r50_4x16x1_256e_ucf101_rgb.py --work-dir work_dirs/my_slowfast_r50_4x16x1_256e_ucf101_rgb --validate --seed 0 --deterministic --gpu-ids 0 1