From cc74c5c3fee3f3331bc8f1b803c751138864de47 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B0=A2=E6=98=95=E8=BE=B0?= Date: Fri, 30 Jun 2023 16:40:13 +0800 Subject: [PATCH] [Enhancement] update segformer default pretrain to configs (#3153) --- .../segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py | 4 ++-- .../segformer_mit-b0_8xb2-160k_ade20k-512x512.py | 3 ++- .../segformer_mit-b1_8xb1-160k_cityscapes-1024x1024.py | 4 +++- .../segformer_mit-b1_8xb2-160k_ade20k-512x512.py | 8 ++++++-- .../segformer_mit-b2_8xb1-160k_cityscapes-1024x1024.py | 4 +++- .../segformer_mit-b2_8xb2-160k_ade20k-512x512.py | 8 ++++++-- .../segformer_mit-b3_8xb1-160k_cityscapes-1024x1024.py | 4 +++- .../segformer_mit-b3_8xb2-160k_ade20k-512x512.py | 8 ++++++-- .../segformer_mit-b4_8xb1-160k_cityscapes-1024x1024.py | 4 +++- .../segformer_mit-b4_8xb2-160k_ade20k-512x512.py | 8 ++++++-- .../segformer_mit-b5_8xb1-160k_cityscapes-1024x1024.py | 4 +++- .../segformer_mit-b5_8xb2-160k_ade20k-512x512.py | 8 ++++++-- .../segformer_mit-b5_8xb2-160k_ade20k-640x640.py | 8 ++++++-- 13 files changed, 55 insertions(+), 20 deletions(-) diff --git a/configs/segformer/segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py b/configs/segformer/segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py index 9f6bd1e81d..1280047c94 100644 --- a/configs/segformer/segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py +++ b/configs/segformer/segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py @@ -5,10 +5,10 @@ ] crop_size = (1024, 1024) data_preprocessor = dict(size=crop_size) +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b0_20220624-7e0fe6dd.pth' # noqa model = dict( data_preprocessor=data_preprocessor, - backbone=dict( - init_cfg=dict(type='Pretrained', checkpoint='pretrain/mit_b0.pth')), + backbone=dict(init_cfg=dict(type='Pretrained', checkpoint=checkpoint)), test_cfg=dict(mode='slide', crop_size=(1024, 1024), stride=(768, 768))) optim_wrapper = dict( diff --git a/configs/segformer/segformer_mit-b0_8xb2-160k_ade20k-512x512.py b/configs/segformer/segformer_mit-b0_8xb2-160k_ade20k-512x512.py index 607e2848ee..4a9476df68 100644 --- a/configs/segformer/segformer_mit-b0_8xb2-160k_ade20k-512x512.py +++ b/configs/segformer/segformer_mit-b0_8xb2-160k_ade20k-512x512.py @@ -4,9 +4,10 @@ ] crop_size = (512, 512) data_preprocessor = dict(size=crop_size) +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b0_20220624-7e0fe6dd.pth' # noqa model = dict( data_preprocessor=data_preprocessor, - pretrained='pretrain/mit_b0.pth', + backbone=dict(init_cfg=dict(type='Pretrained', checkpoint=checkpoint)), decode_head=dict(num_classes=150)) optim_wrapper = dict( diff --git a/configs/segformer/segformer_mit-b1_8xb1-160k_cityscapes-1024x1024.py b/configs/segformer/segformer_mit-b1_8xb1-160k_cityscapes-1024x1024.py index d6977d4678..85c126ead4 100644 --- a/configs/segformer/segformer_mit-b1_8xb1-160k_cityscapes-1024x1024.py +++ b/configs/segformer/segformer_mit-b1_8xb1-160k_cityscapes-1024x1024.py @@ -1,7 +1,9 @@ _base_ = ['./segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b1_20220624-02e5a6a1.pth' # noqa + model = dict( backbone=dict( - init_cfg=dict(type='Pretrained', checkpoint='pretrain/mit_b1.pth'), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), embed_dims=64), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b1_8xb2-160k_ade20k-512x512.py b/configs/segformer/segformer_mit-b1_8xb2-160k_ade20k-512x512.py index 3bedca9891..1ff21b8bec 100644 --- a/configs/segformer/segformer_mit-b1_8xb2-160k_ade20k-512x512.py +++ b/configs/segformer/segformer_mit-b1_8xb2-160k_ade20k-512x512.py @@ -1,8 +1,12 @@ _base_ = ['./segformer_mit-b0_8xb2-160k_ade20k-512x512.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b1_20220624-02e5a6a1.pth' # noqa + # model settings model = dict( - pretrained='pretrain/mit_b1.pth', backbone=dict( - embed_dims=64, num_heads=[1, 2, 5, 8], num_layers=[2, 2, 2, 2]), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), + embed_dims=64, + num_heads=[1, 2, 5, 8], + num_layers=[2, 2, 2, 2]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b2_8xb1-160k_cityscapes-1024x1024.py b/configs/segformer/segformer_mit-b2_8xb1-160k_cityscapes-1024x1024.py index 94f5ad33a5..c802f275b5 100644 --- a/configs/segformer/segformer_mit-b2_8xb1-160k_cityscapes-1024x1024.py +++ b/configs/segformer/segformer_mit-b2_8xb1-160k_cityscapes-1024x1024.py @@ -1,8 +1,10 @@ _base_ = ['./segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b2_20220624-66e8bf70.pth' # noqa + model = dict( backbone=dict( - init_cfg=dict(type='Pretrained', checkpoint='pretrain/mit_b2.pth'), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), embed_dims=64, num_layers=[3, 4, 6, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b2_8xb2-160k_ade20k-512x512.py b/configs/segformer/segformer_mit-b2_8xb2-160k_ade20k-512x512.py index 2c3bb101d3..0f4c1af061 100644 --- a/configs/segformer/segformer_mit-b2_8xb2-160k_ade20k-512x512.py +++ b/configs/segformer/segformer_mit-b2_8xb2-160k_ade20k-512x512.py @@ -1,8 +1,12 @@ _base_ = ['./segformer_mit-b0_8xb2-160k_ade20k-512x512.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b2_20220624-66e8bf70.pth' # noqa + # model settings model = dict( - pretrained='pretrain/mit_b2.pth', backbone=dict( - embed_dims=64, num_heads=[1, 2, 5, 8], num_layers=[3, 4, 6, 3]), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), + embed_dims=64, + num_heads=[1, 2, 5, 8], + num_layers=[3, 4, 6, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b3_8xb1-160k_cityscapes-1024x1024.py b/configs/segformer/segformer_mit-b3_8xb1-160k_cityscapes-1024x1024.py index 87ec0a599d..9b41ad0b39 100644 --- a/configs/segformer/segformer_mit-b3_8xb1-160k_cityscapes-1024x1024.py +++ b/configs/segformer/segformer_mit-b3_8xb1-160k_cityscapes-1024x1024.py @@ -1,8 +1,10 @@ _base_ = ['./segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b3_20220624-13b1141c.pth' # noqa + model = dict( backbone=dict( - init_cfg=dict(type='Pretrained', checkpoint='pretrain/mit_b3.pth'), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), embed_dims=64, num_layers=[3, 4, 18, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b3_8xb2-160k_ade20k-512x512.py b/configs/segformer/segformer_mit-b3_8xb2-160k_ade20k-512x512.py index 31f5fc1c12..a2cc13d847 100644 --- a/configs/segformer/segformer_mit-b3_8xb2-160k_ade20k-512x512.py +++ b/configs/segformer/segformer_mit-b3_8xb2-160k_ade20k-512x512.py @@ -1,8 +1,12 @@ _base_ = ['./segformer_mit-b0_8xb2-160k_ade20k-512x512.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b3_20220624-13b1141c.pth' # noqa + # model settings model = dict( - pretrained='pretrain/mit_b3.pth', backbone=dict( - embed_dims=64, num_heads=[1, 2, 5, 8], num_layers=[3, 4, 18, 3]), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), + embed_dims=64, + num_heads=[1, 2, 5, 8], + num_layers=[3, 4, 18, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b4_8xb1-160k_cityscapes-1024x1024.py b/configs/segformer/segformer_mit-b4_8xb1-160k_cityscapes-1024x1024.py index e4f436b264..5fb16080dd 100644 --- a/configs/segformer/segformer_mit-b4_8xb1-160k_cityscapes-1024x1024.py +++ b/configs/segformer/segformer_mit-b4_8xb1-160k_cityscapes-1024x1024.py @@ -1,8 +1,10 @@ _base_ = ['./segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b4_20220624-d588d980.pth' # noqa + model = dict( backbone=dict( - init_cfg=dict(type='Pretrained', checkpoint='pretrain/mit_b4.pth'), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), embed_dims=64, num_layers=[3, 8, 27, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b4_8xb2-160k_ade20k-512x512.py b/configs/segformer/segformer_mit-b4_8xb2-160k_ade20k-512x512.py index 0015e1623a..5f39c30108 100644 --- a/configs/segformer/segformer_mit-b4_8xb2-160k_ade20k-512x512.py +++ b/configs/segformer/segformer_mit-b4_8xb2-160k_ade20k-512x512.py @@ -1,8 +1,12 @@ _base_ = ['./segformer_mit-b0_8xb2-160k_ade20k-512x512.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b4_20220624-d588d980.pth' # noqa + # model settings model = dict( - pretrained='pretrain/mit_b4.pth', backbone=dict( - embed_dims=64, num_heads=[1, 2, 5, 8], num_layers=[3, 8, 27, 3]), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), + embed_dims=64, + num_heads=[1, 2, 5, 8], + num_layers=[3, 8, 27, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b5_8xb1-160k_cityscapes-1024x1024.py b/configs/segformer/segformer_mit-b5_8xb1-160k_cityscapes-1024x1024.py index 7fb2ea5b4e..18c3c16258 100644 --- a/configs/segformer/segformer_mit-b5_8xb1-160k_cityscapes-1024x1024.py +++ b/configs/segformer/segformer_mit-b5_8xb1-160k_cityscapes-1024x1024.py @@ -1,8 +1,10 @@ _base_ = ['./segformer_mit-b0_8xb1-160k_cityscapes-1024x1024.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b5_20220624-658746d9.pth' # noqa + model = dict( backbone=dict( - init_cfg=dict(type='Pretrained', checkpoint='pretrain/mit_b5.pth'), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), embed_dims=64, num_layers=[3, 6, 40, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-512x512.py b/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-512x512.py index 09bb260223..1e9a209ebe 100644 --- a/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-512x512.py +++ b/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-512x512.py @@ -1,8 +1,12 @@ _base_ = ['./segformer_mit-b0_8xb2-160k_ade20k-512x512.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b5_20220624-658746d9.pth' # noqa + # model settings model = dict( - pretrained='pretrain/mit_b5.pth', backbone=dict( - embed_dims=64, num_heads=[1, 2, 5, 8], num_layers=[3, 6, 40, 3]), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), + embed_dims=64, + num_heads=[1, 2, 5, 8], + num_layers=[3, 6, 40, 3]), decode_head=dict(in_channels=[64, 128, 320, 512])) diff --git a/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-640x640.py b/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-640x640.py index 3bba3716ef..a32eb7c1e1 100644 --- a/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-640x640.py +++ b/configs/segformer/segformer_mit-b5_8xb2-160k_ade20k-640x640.py @@ -1,5 +1,7 @@ _base_ = ['./segformer_mit-b0_8xb2-160k_ade20k-512x512.py'] +checkpoint = 'https://download.openmmlab.com/mmsegmentation/v0.5/pretrain/segformer/mit_b5_20220624-658746d9.pth' # noqa + # dataset settings crop_size = (640, 640) data_preprocessor = dict(size=crop_size) @@ -31,7 +33,9 @@ # model settings model = dict( data_preprocessor=data_preprocessor, - pretrained='pretrain/mit_b5.pth', backbone=dict( - embed_dims=64, num_heads=[1, 2, 5, 8], num_layers=[3, 6, 40, 3]), + init_cfg=dict(type='Pretrained', checkpoint=checkpoint), + embed_dims=64, + num_heads=[1, 2, 5, 8], + num_layers=[3, 6, 40, 3]), decode_head=dict(in_channels=[64, 128, 320, 512]))