Spaces:
Runtime error
Runtime error
from mmcv import TransformBroadcaster, LoadImageFromFile, RandomResize | |
from mmdet.datasets.transforms import Resize, RandomFlip, RandomCrop | |
from mmengine.dataset import DefaultSampler | |
from seg.datasets.pipeliens.loading import LoadVideoSegAnnotations, ResizeOri | |
from seg.datasets.pipeliens.formatting import PackVidSegInputs | |
from seg.datasets.pipeliens.frame_sampling import VideoClipSample | |
from seg.datasets.samplers.batch_sampler import VideoSegAspectRatioBatchSampler | |
from seg.datasets.vipseg import VIPSegDataset | |
from seg.evaluation.metrics.vip_seg_metric import VIPSegMetric | |
dataset_type = VIPSegDataset | |
data_root = 'data/VIPSeg' | |
backend_args = None | |
image_size = (1280, 736) | |
# dataset settings | |
train_pipeline = [ | |
dict( | |
type=VideoClipSample, | |
num_selected=2, | |
interval=2), | |
dict( | |
type=TransformBroadcaster, | |
share_random_params=True, | |
transforms=[ | |
dict(type=LoadImageFromFile, backend_args=backend_args), | |
dict(type=LoadVideoSegAnnotations, with_bbox=True, with_label=True, with_mask=True, with_seg=True), | |
dict( | |
type=RandomResize, | |
resize_type=Resize, | |
scale=image_size, | |
ratio_range=(.8, 2.), | |
keep_ratio=True, | |
), | |
dict( | |
type=RandomCrop, | |
crop_size=image_size, | |
crop_type='absolute', | |
recompute_bbox=True, | |
allow_negative_crop=True), | |
dict(type=RandomFlip, prob=0.5), | |
]), | |
dict(type=PackVidSegInputs) | |
] | |
test_pipeline = [ | |
dict( | |
type=TransformBroadcaster, | |
transforms=[ | |
dict(type=LoadImageFromFile, backend_args=backend_args), | |
dict(type=LoadVideoSegAnnotations, with_bbox=True, with_label=True, with_mask=True, with_seg=True), | |
dict(type=Resize, scale=image_size, keep_ratio=True), | |
dict(type=ResizeOri), | |
]), | |
dict(type=PackVidSegInputs) | |
] | |
# dataloader | |
train_dataloader = dict( | |
batch_size=2, | |
num_workers=2, | |
persistent_workers=True, | |
sampler=dict(type=DefaultSampler, shuffle=True), | |
batch_sampler=dict(type=VideoSegAspectRatioBatchSampler), | |
dataset=dict( | |
type=dataset_type, | |
data_root=data_root, | |
ann_file='train.txt', | |
data_prefix=dict(img='imgs/', seg='panomasks/'), | |
# check whether it is necessary. | |
filter_cfg=dict(filter_empty_gt=True, min_size=32), | |
pipeline=train_pipeline)) | |
val_dataloader = dict( | |
batch_size=1, | |
num_workers=2, | |
persistent_workers=True, | |
drop_last=False, | |
sampler=dict(type=DefaultSampler, shuffle=False, round_up=False), | |
dataset=dict( | |
type=dataset_type, | |
data_root=data_root, | |
ann_file='val.txt', | |
data_prefix=dict(img='imgs/', seg='panomasks/'), | |
test_mode=True, | |
pipeline=test_pipeline)) | |
test_dataloader = val_dataloader | |
val_evaluator = dict( | |
type=VIPSegMetric, | |
metric=['VPQ@1', 'VPQ@2', 'VPQ@4', 'VPQ@6'], | |
) | |
test_evaluator = val_evaluator | |