From d56f6823a2c3f945a1ac07fb7939065ebce94277 Mon Sep 17 00:00:00 2001
From: Junjun2016 <hejunjun@sjtu.edu.cn>
Date: Mon, 11 Jan 2021 16:07:59 +0800
Subject: [PATCH] Add more UNet-based medical segmentation benchmark  (#324)

* Add UNet as backbone and FCN PSPNet DeepLabV3 as decode_head benchmark on 4 retinal vessel segmentation datasets

* adjust README of UNet
---
 .../_base_/models/deeplabv3_unet_s5-d16.py    | 50 +++++++++++++++++++
 .../{unet_s5-d16.py => fcn_unet_s5-d16.py}    |  0
 configs/_base_/models/pspnet_unet_s5-d16.py   | 50 +++++++++++++++++++
 configs/unet/README.md                        | 37 +++++++++++---
 ...labv3_unet_s5-d16_128x128_40k_chase_db1.py |  7 +++
 ...deeplabv3_unet_s5-d16_128x128_40k_stare.py |  6 +++
 .../deeplabv3_unet_s5-d16_256x256_40k_hrf.py  |  6 +++
 .../deeplabv3_unet_s5-d16_64x64_40k_drive.py  |  6 +++
 .../fcn_unet_s5-d16_128x128_40k_chase_db1.py  |  6 +++
 ...y => fcn_unet_s5-d16_128x128_40k_stare.py} |  2 +-
 ....py => fcn_unet_s5-d16_256x256_40k_hrf.py} |  2 +-
 ....py => fcn_unet_s5-d16_64x64_40k_drive.py} |  2 +-
 ...spnet_unet_s5-d16_128x128_40k_chase_db1.py |  7 +++
 ...> pspnet_unet_s5-d16_128x128_40k_stare.py} |  2 +-
 .../pspnet_unet_s5-d16_256x256_40k_hrf.py     |  6 +++
 .../pspnet_unet_s5-d16_64x64_40k_drive.py     |  6 +++
 16 files changed, 185 insertions(+), 10 deletions(-)
 create mode 100644 configs/_base_/models/deeplabv3_unet_s5-d16.py
 rename configs/_base_/models/{unet_s5-d16.py => fcn_unet_s5-d16.py} (100%)
 create mode 100644 configs/_base_/models/pspnet_unet_s5-d16.py
 create mode 100644 configs/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1.py
 create mode 100644 configs/unet/deeplabv3_unet_s5-d16_128x128_40k_stare.py
 create mode 100644 configs/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf.py
 create mode 100644 configs/unet/deeplabv3_unet_s5-d16_64x64_40k_drive.py
 create mode 100644 configs/unet/fcn_unet_s5-d16_128x128_40k_chase_db1.py
 rename configs/unet/{unet_s5-d16_128x128_40k_chase_db1.py => fcn_unet_s5-d16_128x128_40k_stare.py} (70%)
 rename configs/unet/{unet_s5-d16_256x256_40k_hrf.py => fcn_unet_s5-d16_256x256_40k_hrf.py} (71%)
 rename configs/unet/{unet_s5-d16_64x64_40k_drive.py => fcn_unet_s5-d16_64x64_40k_drive.py} (70%)
 create mode 100644 configs/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1.py
 rename configs/unet/{unet_s5-d16_128x128_40k_stare.py => pspnet_unet_s5-d16_128x128_40k_stare.py} (69%)
 create mode 100644 configs/unet/pspnet_unet_s5-d16_256x256_40k_hrf.py
 create mode 100644 configs/unet/pspnet_unet_s5-d16_64x64_40k_drive.py

diff --git a/configs/_base_/models/deeplabv3_unet_s5-d16.py b/configs/_base_/models/deeplabv3_unet_s5-d16.py
new file mode 100644
index 00000000..9fce4751
--- /dev/null
+++ b/configs/_base_/models/deeplabv3_unet_s5-d16.py
@@ -0,0 +1,50 @@
+# model settings
+norm_cfg = dict(type='SyncBN', requires_grad=True)
+model = dict(
+    type='EncoderDecoder',
+    pretrained=None,
+    backbone=dict(
+        type='UNet',
+        in_channels=3,
+        base_channels=64,
+        num_stages=5,
+        strides=(1, 1, 1, 1, 1),
+        enc_num_convs=(2, 2, 2, 2, 2),
+        dec_num_convs=(2, 2, 2, 2),
+        downsamples=(True, True, True, True),
+        enc_dilations=(1, 1, 1, 1, 1),
+        dec_dilations=(1, 1, 1, 1),
+        with_cp=False,
+        conv_cfg=None,
+        norm_cfg=norm_cfg,
+        act_cfg=dict(type='ReLU'),
+        upsample_cfg=dict(type='InterpConv'),
+        norm_eval=False),
+    decode_head=dict(
+        type='ASPPHead',
+        in_channels=64,
+        in_index=4,
+        channels=16,
+        dilations=(1, 12, 24, 36),
+        dropout_ratio=0.1,
+        num_classes=2,
+        norm_cfg=norm_cfg,
+        align_corners=False,
+        loss_decode=dict(
+            type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0)),
+    auxiliary_head=dict(
+        type='FCNHead',
+        in_channels=128,
+        in_index=3,
+        channels=64,
+        num_convs=1,
+        concat_input=False,
+        dropout_ratio=0.1,
+        num_classes=2,
+        norm_cfg=norm_cfg,
+        align_corners=False,
+        loss_decode=dict(
+            type='CrossEntropyLoss', use_sigmoid=False, loss_weight=0.4)))
+# model training and testing settings
+train_cfg = dict()
+test_cfg = dict(mode='slide', crop_size=256, stride=170)
diff --git a/configs/_base_/models/unet_s5-d16.py b/configs/_base_/models/fcn_unet_s5-d16.py
similarity index 100%
rename from configs/_base_/models/unet_s5-d16.py
rename to configs/_base_/models/fcn_unet_s5-d16.py
diff --git a/configs/_base_/models/pspnet_unet_s5-d16.py b/configs/_base_/models/pspnet_unet_s5-d16.py
new file mode 100644
index 00000000..3be98685
--- /dev/null
+++ b/configs/_base_/models/pspnet_unet_s5-d16.py
@@ -0,0 +1,50 @@
+# model settings
+norm_cfg = dict(type='SyncBN', requires_grad=True)
+model = dict(
+    type='EncoderDecoder',
+    pretrained=None,
+    backbone=dict(
+        type='UNet',
+        in_channels=3,
+        base_channels=64,
+        num_stages=5,
+        strides=(1, 1, 1, 1, 1),
+        enc_num_convs=(2, 2, 2, 2, 2),
+        dec_num_convs=(2, 2, 2, 2),
+        downsamples=(True, True, True, True),
+        enc_dilations=(1, 1, 1, 1, 1),
+        dec_dilations=(1, 1, 1, 1),
+        with_cp=False,
+        conv_cfg=None,
+        norm_cfg=norm_cfg,
+        act_cfg=dict(type='ReLU'),
+        upsample_cfg=dict(type='InterpConv'),
+        norm_eval=False),
+    decode_head=dict(
+        type='PSPHead',
+        in_channels=64,
+        in_index=4,
+        channels=16,
+        pool_scales=(1, 2, 3, 6),
+        dropout_ratio=0.1,
+        num_classes=2,
+        norm_cfg=norm_cfg,
+        align_corners=False,
+        loss_decode=dict(
+            type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0)),
+    auxiliary_head=dict(
+        type='FCNHead',
+        in_channels=128,
+        in_index=3,
+        channels=64,
+        num_convs=1,
+        concat_input=False,
+        dropout_ratio=0.1,
+        num_classes=2,
+        norm_cfg=norm_cfg,
+        align_corners=False,
+        loss_decode=dict(
+            type='CrossEntropyLoss', use_sigmoid=False, loss_weight=0.4)))
+# model training and testing settings
+train_cfg = dict()
+test_cfg = dict(mode='slide', crop_size=256, stride=170)
diff --git a/configs/unet/README.md b/configs/unet/README.md
index 760e0912..d815510a 100644
--- a/configs/unet/README.md
+++ b/configs/unet/README.md
@@ -17,9 +17,34 @@
 
 ## Results and models
 
-| Backbone | Head | Dataset | Image Size | Crop Size | Stride | Lr schd | Mem (GB) | Inf time (fps) | Dice  |                                                                                                                                                                                         download                                                                                                                                                                                         |
-|--------|----------|----------|----------|-----------|--------:|----------|----------------|------:|--------------:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| UNet-S5-D16 | FCN  | DRIVE   |   584x565 |      64x64 |          42x42 | 40000 |         0.680 |  - | 78.67 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_64x64_40k_drive/unet_s5-d16_64x64_40k_drive_20201223_191051-9cd163b8.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_64x64_40k_drive/unet_s5-d16_64x64_40k_drive-20201223_191051.log.json)         |
-| UNet-S5-D16 | FCN  | STARE   |   605x700 |      128x128 |          85x85 | 40000 |         0.968 |  - | 81.02 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_128x128_40k_stare/unet_s5-d16_128x128_40k_stare_20201223_191051-e5439846.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_128x128_40k_stare/unet_s5-d16_128x128_40k_stare-20201223_191051.log.json)         |
-| UNet-S5-D16 | FCN  | CHASE_DB1   |   960x999 |      128x128 |          85x85 | 40000 |         0.968 |  - | 80.24 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_128x128_40k_chase_db1/unet_s5-d16_128x128_40k_chase_db1_20201223_191051-8b16ca0b.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_128x128_40k_chase_db1/unet_s5-d16_128x128_40k_chase_db1-20201223_191051.log.json)         |
-| UNet-S5-D16 | FCN  | HRF   |   2336x3504 |      256x256 |          170x170 | 40000 |         2.525 |  - | 79.45 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_256x256_40k_hrf/unet_s5-d16_256x256_40k_hrf_20201223_173724-d89cf1ed.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/unet_s5-d16_256x256_40k_hrf/unet_s5-d16_256x256_40k_hrf-20201223_173724.log.json)         |
+### DRIVE
+
+| Backbone | Head | Image Size | Crop Size | Stride | Lr schd | Mem (GB) | Inf time (fps) | Dice  |                                                                                                                                                                                         download                                                                                                                                                                                         |
+|--------|----------|----------|-----------|--------:|----------|----------------|------:|--------------:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| UNet-S5-D16 | FCN  |   584x565 |      64x64 |          42x42 | 40000 |         0.680 |  - | 78.67 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_64x64_40k_drive/fcn_unet_s5-d16_64x64_40k_drive_20201223_191051-26cee593.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_64x64_40k_drive/fcn_unet_s5-d16_64x64_40k_drive-20201223_191051.log.json)         |
+| UNet-S5-D16 | PSPNet  |   584x565 |      64x64 |          42x42 | 40000 |         0.599 |  - | 78.62 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_64x64_40k_drive/pspnet_unet_s5-d16_64x64_40k_drive_20201227_181818-aac73387.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_64x64_40k_drive/pspnet_unet_s5-d16_64x64_40k_drive-20201227_181818.log.json)         |
+| UNet-S5-D16 | DeepLabV3  |   584x565 |      64x64 |          42x42 | 40000 |         0.596 |  - | 78.69 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_64x64_40k_drive/deeplabv3_unet_s5-d16_64x64_40k_drive_20201226_094047-0671ff20.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_64x64_40k_drive/deeplabv3_unet_s5-d16_64x64_40k_drive-20201226_094047.log.json)         |
+
+### STARE
+
+| Backbone | Head | Image Size | Crop Size | Stride | Lr schd | Mem (GB) | Inf time (fps) | Dice  |                                                                                                                                                                                         download                                                                                                                                                                                         |
+|--------|----------|----------|-----------|--------:|----------|----------------|------:|--------------:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| UNet-S5-D16 | FCN  |   605x700 |      128x128 |          85x85 | 40000 |         0.968 |  - | 81.02 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_128x128_40k_stare/fcn_unet_s5-d16_128x128_40k_stare_20201223_191051-6ea7cfda.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_128x128_40k_stare/fcn_unet_s5-d16_128x128_40k_stare-20201223_191051.log.json)         |
+| UNet-S5-D16 | PSPNet  |   605x700 |      128x128 |          85x85 | 40000 |         0.982 |  - | 81.22 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_128x128_40k_stare/pspnet_unet_s5-d16_128x128_40k_stare_20201227_181818-3c2923c4.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_128x128_40k_stare/pspnet_unet_s5-d16_128x128_40k_stare-20201227_181818.log.json)         |
+| UNet-S5-D16 | DeepLabV3  |   605x700 |      128x128 |          85x85 | 40000 |         0.999 |  - | 80.93 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_128x128_40k_stare/deeplabv3_unet_s5-d16_128x128_40k_stare_20201226_094047-93dcb93c.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_128x128_40k_stare/deeplabv3_unet_s5-d16_128x128_40k_stare-20201226_094047.log.json)         |
+
+### CHASE_DB1
+
+| Backbone | Head | Image Size | Crop Size | Stride | Lr schd | Mem (GB) | Inf time (fps) | Dice  |                                                                                                                                                                                         download                                                                                                                                                                                         |
+|--------|----------|----------|-----------|--------:|----------|----------------|------:|--------------:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| UNet-S5-D16 | FCN  |   960x999 |      128x128 |          85x85 | 40000 |         0.968 |  - | 80.24 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_128x128_40k_chase_db1/fcn_unet_s5-d16_128x128_40k_chase_db1_20201223_191051-95852f45.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_128x128_40k_chase_db1/fcn_unet_s5-d16_128x128_40k_chase_db1-20201223_191051.log.json)         |
+| UNet-S5-D16 | PSPNet  |   960x999 |      128x128 |          85x85 | 40000 |         0.982 |  - | 80.36 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1/pspnet_unet_s5-d16_128x128_40k_chase_db1_20201227_181818-68d4e609.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1/pspnet_unet_s5-d16_128x128_40k_chase_db1-20201227_181818.log.json)         |
+| UNet-S5-D16 | DeepLabV3  |   960x999 |      128x128 |          85x85 | 40000 |         0.999 |  - | 80.47 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1/deeplabv3_unet_s5-d16_128x128_40k_chase_db1_20201226_094047-4c5aefa3.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1/deeplabv3_unet_s5-d16_128x128_40k_chase_db1-20201226_094047.log.json)         |
+
+### HRF
+
+| Backbone | Head | Image Size | Crop Size | Stride | Lr schd | Mem (GB) | Inf time (fps) | Dice  |                                                                                                                                                                                         download                                                                                                                                                                                         |
+|--------|----------|----------|-----------|--------:|----------|----------------|------:|--------------:|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| UNet-S5-D16 | FCN  |   2336x3504 |      256x256 |          170x170 | 40000 |         2.525 |  - | 79.45 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_256x256_40k_hrf/fcn_unet_s5-d16_256x256_40k_hrf_20201223_173724-df3ec8c4.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/fcn_unet_s5-d16_256x256_40k_hrf/fcn_unet_s5-d16_256x256_40k_hrf-20201223_173724.log.json)         |
+| UNet-S5-D16 | PSPNet  |   2336x3504 |      256x256 |          170x170 | 40000 |         2.588 |  - | 80.07 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_256x256_40k_hrf/pspnet_unet_s5-d16_256x256_40k_hrf_20201227_181818-fdb7e29b.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/pspnet_unet_s5-d16_256x256_40k_hrf/pspnet_unet_s5-d16_256x256_40k_hrf-20201227_181818.log.json)         |
+| UNet-S5-D16 | DeepLabV3  |   2336x3504 |      256x256 |          170x170 | 40000 |         2.604 |  - | 80.21 | [model](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf/deeplabv3_unet_s5-d16_256x256_40k_hrf_20201226_094047-3a1fdf85.pth) &#124; [log](https://download.openmmlab.com/mmsegmentation/v0.5/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf/deeplabv3_unet_s5-d16_256x256_40k_hrf-20201226_094047.log.json)         |
diff --git a/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1.py b/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1.py
new file mode 100644
index 00000000..615d241f
--- /dev/null
+++ b/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1.py
@@ -0,0 +1,7 @@
+_base_ = [
+    '../_base_/models/deeplabv3_unet_s5-d16.py',
+    '../_base_/datasets/chase_db1.py', '../_base_/default_runtime.py',
+    '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(128, 128), stride=(85, 85))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_stare.py b/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_stare.py
new file mode 100644
index 00000000..286eebf4
--- /dev/null
+++ b/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_stare.py
@@ -0,0 +1,6 @@
+_base_ = [
+    '../_base_/models/deeplabv3_unet_s5-d16.py', '../_base_/datasets/stare.py',
+    '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(128, 128), stride=(85, 85))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf.py b/configs/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf.py
new file mode 100644
index 00000000..40a20537
--- /dev/null
+++ b/configs/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf.py
@@ -0,0 +1,6 @@
+_base_ = [
+    '../_base_/models/deeplabv3_unet_s5-d16.py', '../_base_/datasets/hrf.py',
+    '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(256, 256), stride=(170, 170))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/deeplabv3_unet_s5-d16_64x64_40k_drive.py b/configs/unet/deeplabv3_unet_s5-d16_64x64_40k_drive.py
new file mode 100644
index 00000000..1ad6fd68
--- /dev/null
+++ b/configs/unet/deeplabv3_unet_s5-d16_64x64_40k_drive.py
@@ -0,0 +1,6 @@
+_base_ = [
+    '../_base_/models/deeplabv3_unet_s5-d16.py', '../_base_/datasets/drive.py',
+    '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(64, 64), stride=(42, 42))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/fcn_unet_s5-d16_128x128_40k_chase_db1.py b/configs/unet/fcn_unet_s5-d16_128x128_40k_chase_db1.py
new file mode 100644
index 00000000..ff5b7bbc
--- /dev/null
+++ b/configs/unet/fcn_unet_s5-d16_128x128_40k_chase_db1.py
@@ -0,0 +1,6 @@
+_base_ = [
+    '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/chase_db1.py',
+    '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(128, 128), stride=(85, 85))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/unet_s5-d16_128x128_40k_chase_db1.py b/configs/unet/fcn_unet_s5-d16_128x128_40k_stare.py
similarity index 70%
rename from configs/unet/unet_s5-d16_128x128_40k_chase_db1.py
rename to configs/unet/fcn_unet_s5-d16_128x128_40k_stare.py
index f67d5658..64070a32 100644
--- a/configs/unet/unet_s5-d16_128x128_40k_chase_db1.py
+++ b/configs/unet/fcn_unet_s5-d16_128x128_40k_stare.py
@@ -1,5 +1,5 @@
 _base_ = [
-    '../_base_/models/unet_s5-d16.py', '../_base_/datasets/chase_db1.py',
+    '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/stare.py',
     '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
 ]
 test_cfg = dict(crop_size=(128, 128), stride=(85, 85))
diff --git a/configs/unet/unet_s5-d16_256x256_40k_hrf.py b/configs/unet/fcn_unet_s5-d16_256x256_40k_hrf.py
similarity index 71%
rename from configs/unet/unet_s5-d16_256x256_40k_hrf.py
rename to configs/unet/fcn_unet_s5-d16_256x256_40k_hrf.py
index 29a80345..8d74c081 100644
--- a/configs/unet/unet_s5-d16_256x256_40k_hrf.py
+++ b/configs/unet/fcn_unet_s5-d16_256x256_40k_hrf.py
@@ -1,5 +1,5 @@
 _base_ = [
-    '../_base_/models/unet_s5-d16.py', '../_base_/datasets/hrf.py',
+    '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/hrf.py',
     '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
 ]
 test_cfg = dict(crop_size=(256, 256), stride=(170, 170))
diff --git a/configs/unet/unet_s5-d16_64x64_40k_drive.py b/configs/unet/fcn_unet_s5-d16_64x64_40k_drive.py
similarity index 70%
rename from configs/unet/unet_s5-d16_64x64_40k_drive.py
rename to configs/unet/fcn_unet_s5-d16_64x64_40k_drive.py
index 29e834a8..c59a408e 100644
--- a/configs/unet/unet_s5-d16_64x64_40k_drive.py
+++ b/configs/unet/fcn_unet_s5-d16_64x64_40k_drive.py
@@ -1,5 +1,5 @@
 _base_ = [
-    '../_base_/models/unet_s5-d16.py', '../_base_/datasets/drive.py',
+    '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/drive.py',
     '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
 ]
 test_cfg = dict(crop_size=(64, 64), stride=(42, 42))
diff --git a/configs/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1.py b/configs/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1.py
new file mode 100644
index 00000000..46500ae8
--- /dev/null
+++ b/configs/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1.py
@@ -0,0 +1,7 @@
+_base_ = [
+    '../_base_/models/pspnet_unet_s5-d16.py',
+    '../_base_/datasets/chase_db1.py', '../_base_/default_runtime.py',
+    '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(128, 128), stride=(85, 85))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/unet_s5-d16_128x128_40k_stare.py b/configs/unet/pspnet_unet_s5-d16_128x128_40k_stare.py
similarity index 69%
rename from configs/unet/unet_s5-d16_128x128_40k_stare.py
rename to configs/unet/pspnet_unet_s5-d16_128x128_40k_stare.py
index 756bbe73..4830b2fd 100644
--- a/configs/unet/unet_s5-d16_128x128_40k_stare.py
+++ b/configs/unet/pspnet_unet_s5-d16_128x128_40k_stare.py
@@ -1,5 +1,5 @@
 _base_ = [
-    '../_base_/models/unet_s5-d16.py', '../_base_/datasets/stare.py',
+    '../_base_/models/pspnet_unet_s5-d16.py', '../_base_/datasets/stare.py',
     '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
 ]
 test_cfg = dict(crop_size=(128, 128), stride=(85, 85))
diff --git a/configs/unet/pspnet_unet_s5-d16_256x256_40k_hrf.py b/configs/unet/pspnet_unet_s5-d16_256x256_40k_hrf.py
new file mode 100644
index 00000000..dcfb7ec1
--- /dev/null
+++ b/configs/unet/pspnet_unet_s5-d16_256x256_40k_hrf.py
@@ -0,0 +1,6 @@
+_base_ = [
+    '../_base_/models/pspnet_unet_s5-d16.py', '../_base_/datasets/hrf.py',
+    '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(256, 256), stride=(170, 170))
+evaluation = dict(metric='mDice')
diff --git a/configs/unet/pspnet_unet_s5-d16_64x64_40k_drive.py b/configs/unet/pspnet_unet_s5-d16_64x64_40k_drive.py
new file mode 100644
index 00000000..bf0b0b04
--- /dev/null
+++ b/configs/unet/pspnet_unet_s5-d16_64x64_40k_drive.py
@@ -0,0 +1,6 @@
+_base_ = [
+    '../_base_/models/pspnet_unet_s5-d16.py', '../_base_/datasets/drive.py',
+    '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py'
+]
+test_cfg = dict(crop_size=(64, 64), stride=(42, 42))
+evaluation = dict(metric='mDice')
-- 
GitLab