DDPS-all
/
segformer_b2_singlestep
/segformer_mit_b2_segformer_head_unet_fc_single_step_ade_pretrained_freeze_embed_80k_ade20k151.py
norm_cfg = dict(type='SyncBN', requires_grad=True) | |
checkpoint = 'pretrained/segformer_mit-b2_512x512_160k_ade20k_20220620_114047-64e4feca.pth' | |
model = dict( | |
type='EncoderDecoderFreeze', | |
freeze_parameters=['backbone', 'decode_head'], | |
pretrained= | |
'pretrained/segformer_mit-b2_512x512_160k_ade20k_20220620_114047-64e4feca.pth', | |
backbone=dict( | |
type='MixVisionTransformerCustomInitWeights', | |
in_channels=3, | |
embed_dims=64, | |
num_stages=4, | |
num_layers=[3, 4, 6, 3], | |
num_heads=[1, 2, 5, 8], | |
patch_sizes=[7, 3, 3, 3], | |
sr_ratios=[8, 4, 2, 1], | |
out_indices=(0, 1, 2, 3), | |
mlp_ratio=4, | |
qkv_bias=True, | |
drop_rate=0.0, | |
attn_drop_rate=0.0, | |
drop_path_rate=0.1), | |
decode_head=dict( | |
type='SegformerHeadUnetFCHeadSingleStep', | |
pretrained= | |
'pretrained/segformer_mit-b2_512x512_160k_ade20k_20220620_114047-64e4feca.pth', | |
dim=128, | |
out_dim=256, | |
unet_channels=272, | |
dim_mults=[1, 1, 1], | |
cat_embedding_dim=16, | |
in_channels=[64, 128, 320, 512], | |
in_index=[0, 1, 2, 3], | |
channels=256, | |
dropout_ratio=0.1, | |
num_classes=151, | |
norm_cfg=dict(type='SyncBN', requires_grad=True), | |
align_corners=False, | |
ignore_index=0, | |
loss_decode=dict( | |
type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0)), | |
train_cfg=dict(), | |
test_cfg=dict(mode='whole')) | |
dataset_type = 'ADE20K151Dataset' | |
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) | |
train_pipeline = [ | |
dict(type='LoadImageFromFile'), | |
dict(type='LoadAnnotations', reduce_zero_label=False), | |
dict(type='Resize', img_scale=(2048, 512), ratio_range=(0.5, 2.0)), | |
dict(type='RandomCrop', crop_size=(512, 512), cat_max_ratio=0.75), | |
dict(type='RandomFlip', prob=0.5), | |
dict(type='PhotoMetricDistortion'), | |
dict( | |
type='Normalize', | |
mean=[123.675, 116.28, 103.53], | |
std=[58.395, 57.12, 57.375], | |
to_rgb=True), | |
dict(type='Pad', size=(512, 512), pad_val=0, seg_pad_val=0), | |
dict(type='DefaultFormatBundle'), | |
dict(type='Collect', keys=['img', 'gt_semantic_seg']) | |
] | |
test_pipeline = [ | |
dict(type='LoadImageFromFile'), | |
dict( | |
type='MultiScaleFlipAug', | |
img_scale=(2048, 512), | |
flip=False, | |
transforms=[ | |
dict(type='Resize', keep_ratio=True), | |
dict(type='RandomFlip'), | |
dict( | |
type='Normalize', | |
mean=[123.675, 116.28, 103.53], | |
std=[58.395, 57.12, 57.375], | |
to_rgb=True), | |
dict(type='Pad', size_divisor=16, pad_val=0, seg_pad_val=0), | |
dict(type='ImageToTensor', keys=['img']), | |
dict(type='Collect', keys=['img']) | |
]) | |
] | |
data = dict( | |
samples_per_gpu=4, | |
workers_per_gpu=4, | |
train=dict( | |
type='ADE20K151Dataset', | |
data_root='data/ade/ADEChallengeData2016', | |
img_dir='images/training', | |
ann_dir='annotations/training', | |
pipeline=[ | |
dict(type='LoadImageFromFile'), | |
dict(type='LoadAnnotations', reduce_zero_label=False), | |
dict(type='Resize', img_scale=(2048, 512), ratio_range=(0.5, 2.0)), | |
dict(type='RandomCrop', crop_size=(512, 512), cat_max_ratio=0.75), | |
dict(type='RandomFlip', prob=0.5), | |
dict(type='PhotoMetricDistortion'), | |
dict( | |
type='Normalize', | |
mean=[123.675, 116.28, 103.53], | |
std=[58.395, 57.12, 57.375], | |
to_rgb=True), | |
dict(type='Pad', size=(512, 512), pad_val=0, seg_pad_val=0), | |
dict(type='DefaultFormatBundle'), | |
dict(type='Collect', keys=['img', 'gt_semantic_seg']) | |
]), | |
val=dict( | |
type='ADE20K151Dataset', | |
data_root='data/ade/ADEChallengeData2016', | |
img_dir='images/validation', | |
ann_dir='annotations/validation', | |
pipeline=[ | |
dict(type='LoadImageFromFile'), | |
dict( | |
type='MultiScaleFlipAug', | |
img_scale=(2048, 512), | |
flip=False, | |
transforms=[ | |
dict(type='Resize', keep_ratio=True), | |
dict(type='RandomFlip'), | |
dict( | |
type='Normalize', | |
mean=[123.675, 116.28, 103.53], | |
std=[58.395, 57.12, 57.375], | |
to_rgb=True), | |
dict( | |
type='Pad', size_divisor=16, pad_val=0, seg_pad_val=0), | |
dict(type='ImageToTensor', keys=['img']), | |
dict(type='Collect', keys=['img']) | |
]) | |
]), | |
test=dict( | |
type='ADE20K151Dataset', | |
data_root='data/ade/ADEChallengeData2016', | |
img_dir='images/validation', | |
ann_dir='annotations/validation', | |
pipeline=[ | |
dict(type='LoadImageFromFile'), | |
dict( | |
type='MultiScaleFlipAug', | |
img_scale=(2048, 512), | |
flip=False, | |
transforms=[ | |
dict(type='Resize', keep_ratio=True), | |
dict(type='RandomFlip'), | |
dict( | |
type='Normalize', | |
mean=[123.675, 116.28, 103.53], | |
std=[58.395, 57.12, 57.375], | |
to_rgb=True), | |
dict( | |
type='Pad', size_divisor=16, pad_val=0, seg_pad_val=0), | |
dict(type='ImageToTensor', keys=['img']), | |
dict(type='Collect', keys=['img']) | |
]) | |
])) | |
log_config = dict( | |
interval=50, hooks=[dict(type='TextLoggerHook', by_epoch=False)]) | |
dist_params = dict(backend='nccl') | |
log_level = 'INFO' | |
load_from = None | |
resume_from = None | |
workflow = [('train', 1)] | |
cudnn_benchmark = True | |
optimizer = dict( | |
type='AdamW', lr=0.00015, betas=[0.9, 0.96], weight_decay=0.045) | |
optimizer_config = dict() | |
lr_config = dict( | |
policy='step', | |
warmup='linear', | |
warmup_iters=1000, | |
warmup_ratio=1e-06, | |
step=10000, | |
gamma=0.5, | |
min_lr=1e-06, | |
by_epoch=False) | |
runner = dict(type='IterBasedRunner', max_iters=80000) | |
checkpoint_config = dict(by_epoch=False, interval=8000) | |
evaluation = dict( | |
interval=8000, metric='mIoU', pre_eval=True, save_best='mIoU') | |
work_dir = './work_dirs/segformer_mit_b2_segformer_head_unet_fc_single_step_ade_pretrained_freeze_embed_80k_ade20k151' | |
gpu_ids = range(0, 8) | |
auto_resume = True | |