重点关注第134行代码这里
val_dataloader = build_dataloader(val_dataset, **dataloader_setting)
dataloader_setting先暂时不需要关注,我们把重点先放在第一个参数val_dataset
如果有了val_dataset,也有了dataloader_setting,通过送进去build_dataloader函数,就会返回val_dataloader
问题来了,第一个参数val_dataset哪里来的?
重点关注第126行代码这里
val_dataset = build_dataset(cfg.data.val, dict(test_mode=True))
dict(test_mode=True)先暂时不需要关注,我们把重点先放在第一个参数cfg.data.val
如果有了cfg.data.val,也有了dict(test_mode=True),通过送进去build_dataset函数,就会返回val_dataset
到这里,我们就知道了最关键的重点是第一个参数cfg.data.val
于是我们看看第一个参数cfg.data.val是什么
val=dict(type=dataset_type, ann_file=ann_file, split='xsub_val', data_prefix=data_root, pipeline=val_pipeline),
到这里才是核心
到这里才算真正知道了代码的调用逻辑
接下来就是仔细看看这些字段分别代表的含义是什么
https://github.com/kennymckormick/pyskl/blob/main/configs/rgbpose_conv3d/rgbpose_conv3d.py