detectron2提供了VOC和COCO格式的API,可以方便实现注册,如果要注册vis视频格式的数据集,可利用detectron2的扩展库AdelaiDet进行注册
from detectron2.data.catalog import DatasetCatalog,MetadataCatalog
from adet.data.datasets.youtubevis import register_youtubevis_video,load_youtubevis_json
import os
if __name__ == '__main__':
root_file = r'F:/DeepLearning/CrossVIS-main/datasets'
json_file = os.path.join(root_file,'smoke/annotations/valid_in_viscoco.json')
image_root = os.path.join(root_file,'smoke/valid')
DatasetCatalog.register("smoke_train",
lambda: load_youtubevis_json(json_file,
image_root,"smoke_train"))
MetadataCatalog.get("smoke_train").set(thing_classes=["smoke"],
json_file=json_file,
image_root=image_root)
vis_data_dict = load_youtubevis_json(json_file,image_root,"smoke_train")
print("...")