Spaces:
Runtime error
Runtime error
_base_ = [ | |
'../_base_/models/fpn_poolformer_s12.py', '../_base_/default_runtime.py', | |
'../_base_/schedules/schedule_40k.py' | |
] | |
# dataset settings | |
dataset_type = 'ADE20KDataset' | |
data_root = 'data/ade/ADEChallengeData2016' | |
img_norm_cfg = dict( | |
mean=[123.675, 116.28, 103.53], std=[58.395, 57.12, 57.375], to_rgb=True) | |
crop_size = (512, 512) | |
data_preprocessor = dict(size=crop_size) | |
train_pipeline = [ | |
dict(type='LoadImageFromFile'), | |
dict(type='LoadAnnotations', reduce_zero_label=True), | |
dict( | |
type='RandomResize', | |
scale=(2048, 512), | |
ratio_range=(0.5, 2.0), | |
keep_ratio=True), | |
dict(type='RandomCrop', crop_size=crop_size, cat_max_ratio=0.75), | |
dict(type='RandomFlip', prob=0.5), | |
dict(type='PhotoMetricDistortion'), | |
dict(type='PackSegInputs') | |
] | |
test_pipeline = [ | |
dict(type='LoadImageFromFile'), | |
dict(type='Resize', scale=(2048, 512), keep_ratio=True), | |
dict(type='ResizeToMultiple', size_divisor=32), | |
# add loading annotation after ``Resize`` because ground truth | |
# does not need to do resize data transform | |
dict(type='LoadAnnotations', reduce_zero_label=True), | |
dict(type='PackSegInputs') | |
] | |
train_dataloader = dict( | |
batch_size=4, | |
num_workers=4, | |
persistent_workers=True, | |
sampler=dict(type='InfiniteSampler', shuffle=True), | |
dataset=dict( | |
type='RepeatDataset', | |
times=50, | |
dataset=dict( | |
type=dataset_type, | |
data_root=data_root, | |
data_prefix=dict( | |
img_path='images/training', | |
seg_map_path='annotations/training'), | |
pipeline=train_pipeline))) | |
val_dataloader = dict( | |
batch_size=1, | |
num_workers=4, | |
persistent_workers=True, | |
sampler=dict(type='DefaultSampler', shuffle=False), | |
dataset=dict( | |
type=dataset_type, | |
data_root=data_root, | |
data_prefix=dict( | |
img_path='images/validation', | |
seg_map_path='annotations/validation'), | |
pipeline=test_pipeline)) | |
test_dataloader = val_dataloader | |
val_evaluator = dict(type='IoUMetric', iou_metrics=['mIoU']) | |
test_evaluator = val_evaluator | |
# model settings | |
model = dict( | |
data_preprocessor=data_preprocessor, | |
neck=dict(in_channels=[64, 128, 320, 512]), | |
decode_head=dict(num_classes=150)) | |
# optimizer | |
# optimizer = dict(_delete_=True, type='AdamW', lr=0.0002, weight_decay=0.0001) | |
# optimizer_config = dict() | |
# # learning policy | |
# lr_config = dict(policy='poly', power=0.9, min_lr=0.0, by_epoch=False) | |
optim_wrapper = dict( | |
_delete_=True, | |
type='AmpOptimWrapper', | |
optimizer=dict(type='AdamW', lr=0.0002, weight_decay=0.0001)) | |
param_scheduler = [ | |
dict( | |
type='PolyLR', | |
power=0.9, | |
begin=0, | |
end=40000, | |
eta_min=0.0, | |
by_epoch=False, | |
) | |
] | |