├── .gitignore ├── benchmarks ├── Segmentation │ ├── mmsegmentation │ │ ├── requirements │ │ │ ├── optional.txt │ │ │ ├── readthedocs.txt │ │ │ ├── runtime.txt │ │ │ ├── docs.txt │ │ │ └── tests.txt │ │ ├── mmseg │ │ │ ├── models │ │ │ │ ├── necks │ │ │ │ │ └── __init__.py │ │ │ │ ├── segmentors │ │ │ │ │ └── __init__.py │ │ │ │ ├── utils │ │ │ │ │ └── __init__.py │ │ │ │ ├── backbones │ │ │ │ │ └── __init__.py │ │ │ │ ├── __init__.py │ │ │ │ └── losses │ │ │ │ │ └── __init__.py │ │ │ ├── core │ │ │ │ ├── utils │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── misc.py │ │ │ │ ├── __init__.py │ │ │ │ ├── seg │ │ │ │ │ ├── sampler │ │ │ │ │ │ ├── __init__.py │ │ │ │ │ │ └── base_pixel_sampler.py │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── builder.py │ │ │ │ └── evaluation │ │ │ │ │ └── __init__.py │ │ │ ├── ops │ │ │ │ └── __init__.py │ │ │ ├── utils │ │ │ │ ├── __init__.py │ │ │ │ ├── collect_env.py │ │ │ │ └── logger.py │ │ │ ├── apis │ │ │ │ └── __init__.py │ │ │ ├── version.py │ │ │ ├── datasets │ │ │ │ ├── __init__.py │ │ │ │ ├── hrf.py │ │ │ │ ├── stare.py │ │ │ │ ├── drive.py │ │ │ │ ├── pipelines │ │ │ │ │ └── __init__.py │ │ │ │ └── chase_db1.py │ │ │ └── __init__.py │ │ ├── requirements.txt │ │ ├── demo │ │ │ └── demo.png │ │ ├── resources │ │ │ ├── seg_demo.gif │ │ │ └── mmseg-logo.png │ │ ├── configs │ │ │ ├── ann │ │ │ │ ├── ann_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── ann_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── ann_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── ann_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── ann_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── ann_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── ann_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── ann_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── ann_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── ann_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── ann_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── ann_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── ann_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── ann_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── ann_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── ann_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── fcn │ │ │ │ ├── fcn_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── fcn_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── fcn_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── fcn_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── fcn_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── fcn_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── fcn_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── fcn_r50b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_r50b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── fcn_r101-d8_480x480_40k_pascal_context.py │ │ │ │ ├── fcn_r101-d8_480x480_80k_pascal_context.py │ │ │ │ ├── fcn_r101b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_r101b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── fcn_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── fcn_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── fcn_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── fcn_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── fcn_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── fcn_r18-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_r18-d8_769x769_80k_cityscapes.py │ │ │ │ ├── fcn_r18b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_r18b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── fcn_r50-d8_769x769_40k_cityscapes.py │ │ │ │ ├── fcn_r50-d8_769x769_80k_cityscapes.py │ │ │ │ ├── fcn_r50-d8_480x480_40k_pascal_context.py │ │ │ │ └── fcn_r50-d8_480x480_80k_pascal_context.py │ │ │ ├── sem_fpn │ │ │ │ ├── fpn_r101_512x512_160k_ade20k.py │ │ │ │ ├── fpn_r101_512x1024_80k_cityscapes.py │ │ │ │ ├── fpn_r50_512x1024_80k_cityscapes.py │ │ │ │ └── fpn_r50_512x512_160k_ade20k.py │ │ │ ├── dnlnet │ │ │ │ ├── dnl_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── dnl_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── dnl_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── dnl_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── dnl_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── dnl_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── dnl_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── dnl_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── dnl_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── dnl_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── dnl_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── dnl_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── apcnet │ │ │ │ ├── apcnet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── apcnet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── apcnet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── apcnet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── apcnet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── apcnet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── apcnet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── apcnet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── apcnet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── apcnet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── apcnet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── apcnet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── ccnet │ │ │ │ ├── ccnet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── ccnet_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── ccnet_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── ccnet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── ccnet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── ccnet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── ccnet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── ccnet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── ccnet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── ccnet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── ccnet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── ccnet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── ccnet_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── ccnet_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── ccnet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── ccnet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── danet │ │ │ │ ├── danet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── danet_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── danet_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── danet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── danet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── danet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── danet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── danet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── danet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── danet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── danet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── danet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── danet_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── danet_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── danet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── danet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── dmnet │ │ │ │ ├── dmnet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── dmnet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── dmnet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── dmnet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── dmnet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── dmnet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── dmnet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── dmnet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── dmnet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── dmnet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── dmnet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── dmnet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── encnet │ │ │ │ ├── encnet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── encnet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── encnet_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── encnet_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── encnet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── encnet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── encnet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── encnet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── encnet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── encnet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── encnet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── encnet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── encnet_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── encnet_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── encnet_r50s-d8_512x512_80k_ade20k.py │ │ │ │ ├── encnet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── encnet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── gcnet │ │ │ │ ├── gcnet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── gcnet_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── gcnet_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── gcnet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── gcnet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── gcnet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── gcnet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── gcnet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── gcnet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── gcnet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── gcnet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── gcnet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── gcnet_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── gcnet_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── gcnet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── gcnet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── psanet │ │ │ │ ├── psanet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── psanet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── psanet_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── psanet_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── psanet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── psanet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── psanet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── psanet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── psanet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── psanet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── psanet_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── psanet_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── psanet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── psanet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── psanet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── psanet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── pspnet │ │ │ │ ├── pspnet_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── pspnet_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── pspnet_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── pspnet_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── pspnet_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── pspnet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── pspnet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── pspnet_r50b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_r50b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── pspnet_r101-d8_480x480_40k_pascal_context.py │ │ │ │ ├── pspnet_r101-d8_480x480_80k_pascal_context.py │ │ │ │ ├── pspnet_r101b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_r101b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── pspnet_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── pspnet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── pspnet_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── pspnet_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── pspnet_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── pspnet_r18-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_r18-d8_769x769_80k_cityscapes.py │ │ │ │ ├── pspnet_r18b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── pspnet_r18b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_r50-d8_769x769_40k_cityscapes.py │ │ │ │ ├── pspnet_r50-d8_769x769_80k_cityscapes.py │ │ │ │ ├── pspnet_r50-d8_480x480_40k_pascal_context.py │ │ │ │ └── pspnet_r50-d8_480x480_80k_pascal_context.py │ │ │ ├── upernet │ │ │ │ ├── upernet_r101_512x512_160k_ade20k.py │ │ │ │ ├── upernet_r101_512x512_20k_voc12aug.py │ │ │ │ ├── upernet_r101_512x512_40k_voc12aug.py │ │ │ │ ├── upernet_r101_512x512_80k_ade20k.py │ │ │ │ ├── upernet_r101_769x769_40k_cityscapes.py │ │ │ │ ├── upernet_r101_769x769_80k_cityscapes.py │ │ │ │ ├── upernet_r101_512x1024_40k_cityscapes.py │ │ │ │ ├── upernet_r101_512x1024_80k_cityscapes.py │ │ │ │ ├── upernet_r50_512x1024_40k_cityscapes.py │ │ │ │ ├── upernet_r50_512x1024_80k_cityscapes.py │ │ │ │ ├── upernet_r50_512x512_160k_ade20k.py │ │ │ │ ├── upernet_r50_512x512_80k_ade20k.py │ │ │ │ ├── upernet_r50_512x512_20k_voc12aug.py │ │ │ │ ├── upernet_r50_512x512_40k_voc12aug.py │ │ │ │ ├── upernet_r50_769x769_40k_cityscapes.py │ │ │ │ └── upernet_r50_769x769_80k_cityscapes.py │ │ │ ├── point_rend │ │ │ │ ├── pointrend_r101_512x512_160k_ade20k.py │ │ │ │ ├── pointrend_r101_512x1024_80k_cityscapes.py │ │ │ │ └── pointrend_r50_512x1024_80k_cityscapes.py │ │ │ ├── deeplabv3 │ │ │ │ ├── deeplabv3_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── deeplabv3_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── deeplabv3_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── deeplabv3_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── deeplabv3_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r50b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r50b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d8_480x480_40k_pascal_context.py │ │ │ │ ├── deeplabv3_r101-d8_480x480_80k_pascal_context.py │ │ │ │ ├── deeplabv3_r101b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r101b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── deeplabv3_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── deeplabv3_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── deeplabv3_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── deeplabv3_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── deeplabv3_r18-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r18-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r18b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r18b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r50-d8_769x769_40k_cityscapes.py │ │ │ │ ├── deeplabv3_r50-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d16-mg124_512x1024_40k_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d16-mg124_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_r50-d8_480x480_40k_pascal_context.py │ │ │ │ └── deeplabv3_r50-d8_480x480_80k_pascal_context.py │ │ │ ├── emanet │ │ │ │ ├── emanet_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── emanet_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── emanet_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ └── emanet_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── nonlocal_net │ │ │ │ ├── nonlocal_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── nonlocal_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── nonlocal_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── nonlocal_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── nonlocal_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── nonlocal_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── nonlocal_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── nonlocal_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── nonlocal_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── nonlocal_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── nonlocal_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── nonlocal_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── nonlocal_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── nonlocal_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── nonlocal_r50-d8_769x769_40k_cityscapes.py │ │ │ │ └── nonlocal_r50-d8_769x769_80k_cityscapes.py │ │ │ ├── deeplabv3plus │ │ │ │ ├── deeplabv3plus_r101-d8_512x512_80k_ade20k.py │ │ │ │ ├── deeplabv3plus_r101-d8_512x512_160k_ade20k.py │ │ │ │ ├── deeplabv3plus_r101-d8_512x512_20k_voc12aug.py │ │ │ │ ├── deeplabv3plus_r101-d8_512x512_40k_voc12aug.py │ │ │ │ ├── deeplabv3plus_r101-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101-d8_769x769_40k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101-d8_480x480_40k_pascal_context.py │ │ │ │ ├── deeplabv3plus_r101-d8_480x480_80k_pascal_context.py │ │ │ │ ├── deeplabv3plus_r101b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50-d8_512x1024_40k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50-d8_512x512_160k_ade20k.py │ │ │ │ ├── deeplabv3plus_r50-d8_512x512_80k_ade20k.py │ │ │ │ ├── deeplabv3plus_r50-d8_512x512_20k_voc12aug.py │ │ │ │ ├── deeplabv3plus_r50-d8_512x512_40k_voc12aug.py │ │ │ │ ├── deeplabv3plus_r18-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r18-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r18b-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r18b-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50-d8_769x769_40k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50-d8_769x769_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101-d16-mg124_512x1024_40k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r101-d16-mg124_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_r50-d8_480x480_40k_pascal_context.py │ │ │ │ └── deeplabv3plus_r50-d8_480x480_80k_pascal_context.py │ │ │ ├── fp16 │ │ │ │ ├── fcn_r101-d8_512x1024_80k_fp16_cityscapes.py │ │ │ │ ├── pspnet_r101-d8_512x1024_80k_fp16_cityscapes.py │ │ │ │ ├── deeplabv3_r101-d8_512x1024_80k_fp16_cityscapes.py │ │ │ │ └── deeplabv3plus_r101-d8_512x1024_80k_fp16_cityscapes.py │ │ │ ├── hrnet │ │ │ │ ├── fcn_hr18_512x1024_40k_cityscapes.py │ │ │ │ ├── fcn_hr18_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_hr18_512x1024_160k_cityscapes.py │ │ │ │ ├── fcn_hr18_512x512_160k_ade20k.py │ │ │ │ ├── fcn_hr18_512x512_80k_ade20k.py │ │ │ │ ├── fcn_hr18_512x512_20k_voc12aug.py │ │ │ │ ├── fcn_hr18_512x512_40k_voc12aug.py │ │ │ │ ├── fcn_hr18_480x480_40k_pascal_context.py │ │ │ │ ├── fcn_hr18_480x480_80k_pascal_context.py │ │ │ │ ├── fcn_hr18s_512x512_80k_ade20k.py │ │ │ │ ├── fcn_hr18s_512x512_160k_ade20k.py │ │ │ │ ├── fcn_hr18s_512x512_20k_voc12aug.py │ │ │ │ ├── fcn_hr18s_512x512_40k_voc12aug.py │ │ │ │ ├── fcn_hr18s_512x1024_40k_cityscapes.py │ │ │ │ ├── fcn_hr18s_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_hr18s_480x480_40k_pascal_context.py │ │ │ │ ├── fcn_hr18s_480x480_80k_pascal_context.py │ │ │ │ ├── fcn_hr18s_512x1024_160k_cityscapes.py │ │ │ │ ├── fcn_hr48_512x512_80k_ade20k.py │ │ │ │ ├── fcn_hr48_512x512_160k_ade20k.py │ │ │ │ ├── fcn_hr48_512x512_20k_voc12aug.py │ │ │ │ ├── fcn_hr48_512x512_40k_voc12aug.py │ │ │ │ ├── fcn_hr48_512x1024_40k_cityscapes.py │ │ │ │ ├── fcn_hr48_512x1024_80k_cityscapes.py │ │ │ │ ├── fcn_hr48_480x480_40k_pascal_context.py │ │ │ │ ├── fcn_hr48_480x480_80k_pascal_context.py │ │ │ │ └── fcn_hr48_512x1024_160k_cityscapes.py │ │ │ ├── ocrnet │ │ │ │ ├── ocrnet_hr18_512x1024_160k_cityscapes.py │ │ │ │ ├── ocrnet_hr18_512x1024_40k_cityscapes.py │ │ │ │ ├── ocrnet_hr18_512x1024_80k_cityscapes.py │ │ │ │ ├── ocrnet_r101-d8_512x1024_40k_b8_cityscapes.py │ │ │ │ ├── ocrnet_r101-d8_512x1024_40k_b16_cityscapes.py │ │ │ │ ├── ocrnet_r101-d8_512x1024_80k_b16_cityscapes.py │ │ │ │ ├── ocrnet_hr18s_512x512_160k_ade20k.py │ │ │ │ ├── ocrnet_hr18s_512x512_20k_voc12aug.py │ │ │ │ ├── ocrnet_hr18s_512x512_40k_voc12aug.py │ │ │ │ ├── ocrnet_hr18s_512x512_80k_ade20k.py │ │ │ │ ├── ocrnet_hr18s_512x1024_160k_cityscapes.py │ │ │ │ ├── ocrnet_hr18s_512x1024_40k_cityscapes.py │ │ │ │ └── ocrnet_hr18s_512x1024_80k_cityscapes.py │ │ │ ├── densecl │ │ │ │ ├── fcn_r50-d8_512x512_20k_voc12aug.py │ │ │ │ └── fcn_r50-d8_769x769_40k_cityscapes.py │ │ │ ├── unet │ │ │ │ ├── fcn_unet_s5-d16_256x256_40k_hrf.py │ │ │ │ ├── fcn_unet_s5-d16_64x64_40k_drive.py │ │ │ │ ├── fcn_unet_s5-d16_128x128_40k_stare.py │ │ │ │ ├── pspnet_unet_s5-d16_256x256_40k_hrf.py │ │ │ │ ├── pspnet_unet_s5-d16_64x64_40k_drive.py │ │ │ │ ├── deeplabv3_unet_s5-d16_64x64_40k_drive.py │ │ │ │ ├── fcn_unet_s5-d16_128x128_40k_chase_db1.py │ │ │ │ ├── pspnet_unet_s5-d16_128x128_40k_stare.py │ │ │ │ ├── deeplabv3_unet_s5-d16_128x128_40k_stare.py │ │ │ │ ├── deeplabv3_unet_s5-d16_256x256_40k_hrf.py │ │ │ │ ├── pspnet_unet_s5-d16_128x128_40k_chase_db1.py │ │ │ │ └── deeplabv3_unet_s5-d16_128x128_40k_chase_db1.py │ │ │ ├── _base_ │ │ │ │ ├── datasets │ │ │ │ │ └── pascal_voc12_aug.py │ │ │ │ ├── default_runtime.py │ │ │ │ ├── schedules │ │ │ │ │ ├── schedule_160k.py │ │ │ │ │ ├── schedule_20k.py │ │ │ │ │ ├── schedule_40k.py │ │ │ │ │ └── schedule_80k.py │ │ │ │ └── models │ │ │ │ │ └── lraspp_m-v3-d8.py │ │ │ ├── resnest │ │ │ │ ├── fcn_s101-d8_512x512_160k_ade20k.py │ │ │ │ ├── fcn_s101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_s101-d8_512x512_160k_ade20k.py │ │ │ │ ├── deeplabv3_s101-d8_512x512_160k_ade20k.py │ │ │ │ ├── pspnet_s101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_s101-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_s101-d8_512x512_160k_ade20k.py │ │ │ │ └── deeplabv3plus_s101-d8_512x1024_80k_cityscapes.py │ │ │ ├── mobilenet_v3 │ │ │ │ ├── lraspp_m-v3-d8_scratch_512x1024_320k_cityscapes.py │ │ │ │ ├── lraspp_m-v3-d8_512x1024_320k_cityscapes.py │ │ │ │ ├── lraspp_m-v3s-d8_scratch_512x1024_320k_cityscapes.py │ │ │ │ └── lraspp_m-v3s-d8_512x1024_320k_cityscapes.py │ │ │ ├── fastscnn │ │ │ │ └── fast_scnn_4x8_80k_lr0.12_cityscapes.py │ │ │ └── mobilenet_v2 │ │ │ │ ├── fcn_m-v2-d8_512x512_160k_ade20k.py │ │ │ │ ├── fcn_m-v2-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── pspnet_m-v2-d8_512x512_160k_ade20k.py │ │ │ │ ├── pspnet_m-v2-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3_m-v2-d8_512x512_160k_ade20k.py │ │ │ │ ├── deeplabv3_m-v2-d8_512x1024_80k_cityscapes.py │ │ │ │ ├── deeplabv3plus_m-v2-d8_512x512_160k_ade20k.py │ │ │ │ └── deeplabv3plus_m-v2-d8_512x1024_80k_cityscapes.py │ │ ├── .github │ │ │ ├── ISSUE_TEMPLATE │ │ │ │ ├── general_questions.md │ │ │ │ ├── config.yml │ │ │ │ └── feature_request.md │ │ │ └── workflows │ │ │ │ └── deploy.yml │ │ ├── .readthedocs.yml │ │ ├── docs │ │ │ ├── tutorials │ │ │ │ └── index.rst │ │ │ ├── Makefile │ │ │ ├── make.bat │ │ │ └── index.rst │ │ ├── tools │ │ │ ├── dist_train.sh │ │ │ ├── dist_test.sh │ │ │ ├── slurm_train.sh │ │ │ ├── slurm_test.sh │ │ │ └── print_config.py │ │ ├── pytest.ini │ │ ├── VOC_Concate.sh │ │ ├── tests │ │ │ ├── test_utils │ │ │ │ └── test_make_divisible.py │ │ │ ├── test_models │ │ │ │ └── test_necks.py │ │ │ └── test_inference.py │ │ ├── setup.cfg │ │ ├── Segmentation_train.sh │ │ └── docker │ │ │ └── Dockerfile │ ├── .gitignore │ └── get_VOC.sh ├── detection │ ├── run.sh │ └── configs │ │ └── R_50_FPN_1x.yaml └── classification │ ├── scripts │ ├── linear_voc.sh │ ├── linear_coco.sh │ └── semisup_coco.sh │ ├── metrics.py │ └── README.md ├── SS-PRL └── .gitignore ├── GIF └── Framework Gif.gif ├── get_VOC.sh ├── get_COCO.sh ├── get_ImageNet.sh └── create_ann.py /.gitignore: -------------------------------------------------------------------------------- 1 | data/ 2 | Imagenet/ 3 | *.pth 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/requirements/optional.txt: -------------------------------------------------------------------------------- 1 | cityscapesscripts 2 | -------------------------------------------------------------------------------- /SS-PRL/.gitignore: -------------------------------------------------------------------------------- 1 | */__pycache__/ 2 | experiments 3 | data 4 | Imagenet 5 | TEST 6 | logs 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/.gitignore: -------------------------------------------------------------------------------- 1 | data 2 | *.pth 3 | Data 4 | mmsegmentation 5 | logs 6 | -------------------------------------------------------------------------------- /GIF/Framework Gif.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WesleyHsieh0806/SS-PRL/HEAD/GIF/Framework Gif.gif -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/requirements/readthedocs.txt: -------------------------------------------------------------------------------- 1 | mmcv 2 | torch 3 | torchvision 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/requirements/runtime.txt: -------------------------------------------------------------------------------- 1 | matplotlib 2 | numpy 3 | terminaltables 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/models/necks/__init__.py: -------------------------------------------------------------------------------- 1 | from .fpn import FPN 2 | 3 | __all__ = ['FPN'] 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .misc import add_prefix 2 | 3 | __all__ = ['add_prefix'] 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/requirements/docs.txt: -------------------------------------------------------------------------------- 1 | recommonmark 2 | sphinx 3 | sphinx_markdown_tables 4 | sphinx_rtd_theme 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/requirements.txt: -------------------------------------------------------------------------------- 1 | -r requirements/optional.txt 2 | -r requirements/runtime.txt 3 | -r requirements/tests.txt 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/demo/demo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WesleyHsieh0806/SS-PRL/HEAD/benchmarks/Segmentation/mmsegmentation/demo/demo.png -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/requirements/tests.txt: -------------------------------------------------------------------------------- 1 | codecov 2 | flake8 3 | interrogate 4 | isort==4.3.21 5 | pytest 6 | xdoctest>=0.10.0 7 | yapf 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/resources/seg_demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WesleyHsieh0806/SS-PRL/HEAD/benchmarks/Segmentation/mmsegmentation/resources/seg_demo.gif -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/resources/mmseg-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WesleyHsieh0806/SS-PRL/HEAD/benchmarks/Segmentation/mmsegmentation/resources/mmseg-logo.png -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/ops/__init__.py: -------------------------------------------------------------------------------- 1 | from .encoding import Encoding 2 | from .wrappers import Upsample, resize 3 | 4 | __all__ = ['Upsample', 'resize', 'Encoding'] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .collect_env import collect_env 2 | from .logger import get_root_logger 3 | 4 | __all__ = ['get_root_logger', 'collect_env'] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/__init__.py: -------------------------------------------------------------------------------- 1 | from .evaluation import * # noqa: F401, F403 2 | from .seg import * # noqa: F401, F403 3 | from .utils import * # noqa: F401, F403 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/sem_fpn/fpn_r101_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fpn_r50_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/.github/ISSUE_TEMPLATE/general_questions.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: General questions 3 | about: Ask general questions to get help 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './dnl_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './dnl_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/.readthedocs.yml: -------------------------------------------------------------------------------- 1 | version: 2 2 | 3 | python: 4 | version: 3.7 5 | install: 6 | - requirements: requirements/docs.txt 7 | - requirements: requirements/readthedocs.txt 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ann_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './apcnet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './dmnet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './dmnet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/sem_fpn/fpn_r101_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fpn_r50_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './apcnet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dmnet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dmnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dnl_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dnl_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dnl_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dnl_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/point_rend/pointrend_r101_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './pointrend_r50_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './apcnet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './apcnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './apcnet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './apcnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ccnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './danet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dmnet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './dmnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/emanet/emanet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './emanet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/emanet/emanet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './emanet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './encnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_480x480_40k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_480x480_80k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './gcnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './psanet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r101_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './upernet_r50_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/point_rend/pointrend_r101_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pointrend_r50_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_480x480_40k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_480x480_80k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/seg/sampler/__init__.py: -------------------------------------------------------------------------------- 1 | from .base_pixel_sampler import BasePixelSampler 2 | from .ohem_pixel_sampler import OHEMPixelSampler 3 | 4 | __all__ = ['BasePixelSampler', 'OHEMPixelSampler'] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x512_80k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fp16/fcn_r101-d8_512x1024_80k_fp16_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../fcn/fcn_r101-d8_512x1024_80k_cityscapes.py' 2 | # fp16 settings 3 | optimizer_config = dict(type='Fp16OptimizerHook', loss_scale=512.) 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './nonlocal_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/models/segmentors/__init__.py: -------------------------------------------------------------------------------- 1 | from .cascade_encoder_decoder import CascadeEncoderDecoder 2 | from .encoder_decoder import EncoderDecoder 3 | 4 | __all__ = ['EncoderDecoder', 'CascadeEncoderDecoder'] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_480x480_40k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_480x480_80k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x512_160k_ade20k.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x512_20k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x512_40k_voc12aug.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/seg/__init__.py: -------------------------------------------------------------------------------- 1 | from .builder import build_pixel_sampler 2 | from .sampler import BasePixelSampler, OHEMPixelSampler 3 | 4 | __all__ = ['build_pixel_sampler', 'BasePixelSampler', 'OHEMPixelSampler'] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_769x769_40k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict(pretrained='torchvision://resnet50', backbone=dict(type='ResNet')) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r101b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fp16/pspnet_r101-d8_512x1024_80k_fp16_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../pspnet/pspnet_r101-d8_512x1024_80k_cityscapes.py' 2 | # fp16 settings 3 | optimizer_config = dict(type='Fp16OptimizerHook', loss_scale=512.) 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/sem_fpn/fpn_r50_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fpn_r50.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_480x480_40k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_480x480_80k_pascal_context.py' 2 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 3 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dnl_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dnl_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fp16/deeplabv3_r101-d8_512x1024_80k_fp16_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3/deeplabv3_r101-d8_512x1024_80k_cityscapes.py' 2 | # fp16 settings 3 | optimizer_config = dict(type='Fp16OptimizerHook', loss_scale=512.) 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x1024_160k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r101b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/docs/tutorials/index.rst: -------------------------------------------------------------------------------- 1 | .. toctree:: 2 | :maxdepth: 2 3 | 4 | config.md 5 | customize_datasets.md 6 | data_pipeline.md 7 | customize_models.md 8 | training_tricks.md 9 | customize_runtime.md 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dmnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dmnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18_512x1024_160k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ocrnet_hr18.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ocrnet_hr18.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ocrnet_hr18.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/apcnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/apcnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/emanet/emanet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/emanet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fp16/deeplabv3plus_r101-d8_512x1024_80k_fp16_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3plus/deeplabv3plus_r101-d8_512x1024_80k_cityscapes.py' 2 | # fp16 settings 3 | optimizer_config = dict(type='Fp16OptimizerHook', loss_scale=512.) 4 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet101', 4 | backbone=dict(type='ResNet', depth=101)) 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/cityscapes.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/cityscapes.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | 3 | contact_links: 4 | - name: MMSegmentation Documentation 5 | url: https://mmsegmentation.readthedocs.io 6 | about: Check the docs and FAQ to see if you question is already anwsered. 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict(decode_head=dict(num_classes=150)) 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict(decode_head=dict(num_classes=150)) 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/sem_fpn/fpn_r50_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fpn_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict(decode_head=dict(num_classes=150)) 6 | -------------------------------------------------------------------------------- /benchmarks/detection/run.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | WEIGHTS=$1 # path to the pre-trained weight (in detectron2's format) 3 | OUT=$2 # path to the output directory 4 | 5 | python ./train_net.py \ 6 | --config-file ./configs/R_50_FPN_1x.yaml \ 7 | --num-gpus 8 \ 8 | MODEL.WEIGHTS ${WEIGHTS} \ 9 | OUTPUT_DIR ${OUT} -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_20k.py' 4 | ] 5 | model = dict(decode_head=dict(num_classes=21)) 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(decode_head=dict(num_classes=21)) 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/point_rend/pointrend_r50_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pointrend_r50.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | lr_config = dict(warmup='linear', warmup_iters=200) 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/densecl/fcn_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './fcn_r50-d8.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_20k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/seg/builder.py: -------------------------------------------------------------------------------- 1 | from mmcv.utils import Registry, build_from_cfg 2 | 3 | PIXEL_SAMPLERS = Registry('pixel sampler') 4 | 5 | 6 | def build_pixel_sampler(cfg, **default_args): 7 | """Build pixel sampler for segmentation map.""" 8 | return build_from_cfg(cfg, PIXEL_SAMPLERS, default_args) 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tools/dist_train.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | GPUS=$2 5 | PORT=${PORT:-29500} 6 | 7 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 8 | python -m torch.distributed.launch --nproc_per_node=$GPUS --master_port=$PORT \ 9 | $(dirname "$0")/train.py $CONFIG --launcher pytorch ${@:3} 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dnl_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dmnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dmnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dnl_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_r101-d8_512x1024_40k_b8_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ocrnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 6 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_20k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/apcnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/apcnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_20k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/pascal_voc12_aug.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/fcn_unet_s5-d16_256x256_40k_hrf.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/hrf.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(256, 256), stride=(170, 170))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/fcn_unet_s5-d16_64x64_40k_drive.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/drive.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(64, 64), stride=(42, 42))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | addopts = --xdoctest --xdoctest-style=auto 3 | norecursedirs = .git ignore build __pycache__ data docker docs .eggs 4 | 5 | filterwarnings= default 6 | ignore:.*No cfgstr given in Cacher constructor or call.*:Warning 7 | ignore:.*Define the __nice__ method for.*:Warning 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/fcn_unet_s5-d16_128x128_40k_stare.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/stare.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(128, 128), stride=(85, 85))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/pspnet_unet_s5-d16_256x256_40k_hrf.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_unet_s5-d16.py', '../_base_/datasets/hrf.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(256, 256), stride=(170, 170))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/pspnet_unet_s5-d16_64x64_40k_drive.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_unet_s5-d16.py', '../_base_/datasets/drive.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(64, 64), stride=(42, 42))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/evaluation/__init__.py: -------------------------------------------------------------------------------- 1 | from .class_names import get_classes, get_palette 2 | from .eval_hooks import DistEvalHook, EvalHook 3 | from .metrics import eval_metrics, mean_dice, mean_iou 4 | 5 | __all__ = [ 6 | 'EvalHook', 'DistEvalHook', 'mean_dice', 'mean_iou', 'eval_metrics', 7 | 'get_classes', 'get_palette' 8 | ] 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tools/dist_test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | CONFIG=$1 4 | CHECKPOINT=$2 5 | GPUS=$3 6 | PORT=${PORT:-29500} 7 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 8 | python -m torch.distributed.launch --nproc_per_node=$GPUS --master_port=$PORT \ 9 | $(dirname "$0")/test.py $CONFIG $CHECKPOINT --launcher pytorch ${@:4} 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/deeplabv3_unet_s5-d16_64x64_40k_drive.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_unet_s5-d16.py', '../_base_/datasets/drive.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(64, 64), stride=(42, 42))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/fcn_unet_s5-d16_128x128_40k_chase_db1.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_unet_s5-d16.py', '../_base_/datasets/chase_db1.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(128, 128), stride=(85, 85))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/pspnet_unet_s5-d16_128x128_40k_stare.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_unet_s5-d16.py', '../_base_/datasets/stare.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(128, 128), stride=(85, 85))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=150), auxiliary_head=dict(num_classes=150)) 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_stare.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_unet_s5-d16.py', '../_base_/datasets/stare.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(128, 128), stride=(85, 85))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/deeplabv3_unet_s5-d16_256x256_40k_hrf.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_unet_s5-d16.py', '../_base_/datasets/hrf.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(test_cfg=dict(crop_size=(256, 256), stride=(170, 170))) 6 | evaluation = dict(metric='mDice') 7 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/datasets/pascal_voc12_aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './pascal_voc12.py' 2 | # dataset settings 3 | data = dict( 4 | train=dict( 5 | ann_dir=['SegmentationClass', 'SegmentationClassAug'], 6 | split=[ 7 | 'ImageSets/Segmentation/train.txt', 8 | 'ImageSets/Segmentation/aug.txt' 9 | ])) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(mask_size=(66, 66), num_classes=150), 7 | auxiliary_head=dict(num_classes=150)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/fcn_s101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../fcn/fcn_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(mask_size=(66, 66), num_classes=150), 7 | auxiliary_head=dict(num_classes=150)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/fcn_s101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../fcn/fcn_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/pspnet_unet_s5-d16_128x128_40k_chase_db1.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_unet_s5-d16.py', 3 | '../_base_/datasets/chase_db1.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict(test_cfg=dict(crop_size=(128, 128), stride=(85, 85))) 7 | evaluation = dict(metric='mDice') 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_20k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/pascal_voc12_aug.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=21), auxiliary_head=dict(num_classes=21)) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r18-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r18-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/pspnet_s101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../pspnet/pspnet_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/unet/deeplabv3_unet_s5-d16_128x128_40k_chase_db1.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_unet_s5-d16.py', 3 | '../_base_/datasets/chase_db1.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict(test_cfg=dict(crop_size=(128, 128), stride=(85, 85))) 7 | evaluation = dict(metric='mDice') 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/deeplabv3_s101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3/deeplabv3_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/pspnet_s101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../pspnet/pspnet_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r18-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r18-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50s-d8_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', '../_base_/datasets/ade20k.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | backbone=dict(stem_channels=128), 7 | decode_head=dict(num_classes=150), 8 | auxiliary_head=dict(num_classes=150)) 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r18b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r18b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/deeplabv3_s101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3/deeplabv3_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/classification/scripts/linear_voc.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DATA=$1 # path to the voc dataset 3 | PRETRAINED=$2 # path to the pre-trained weight 4 | 5 | python main.py \ 6 | --task linear \ 7 | --dump_path logs/linear_voc \ 8 | --dataset voc \ 9 | --data_path ${DATA} \ 10 | --pretrained ${PRETRAINED} \ 11 | --batch_size 32 \ 12 | --epochs 100 \ 13 | --lr 0.03 -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r18-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r18-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r18b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/deeplabv3plus_s101-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3plus/deeplabv3plus_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/classification/scripts/linear_coco.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DATA=$1 # path to the coco dataset 3 | PRETRAINED=$2 # path to the pre-trained weight 4 | 5 | python main.py \ 6 | --task linear \ 7 | --dump_path logs/linear_coco \ 8 | --dataset coco \ 9 | --data_path ${DATA} \ 10 | --pretrained ${PRETRAINED} \ 11 | --batch_size 128 \ 12 | --epochs 100 \ 13 | --lr 0.1 -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_r101-d8_512x1024_40k_b16_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ocrnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 6 | optimizer = dict(lr=0.02) 7 | lr_config = dict(min_lr=2e-4) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_r101-d8_512x1024_80k_b16_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ocrnet_r50-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict(pretrained='open-mmlab://resnet101_v1c', backbone=dict(depth=101)) 6 | optimizer = dict(lr=0.02) 7 | lr_config = dict(min_lr=2e-4) 8 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r18b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './pspnet_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/resnest/deeplabv3plus_s101-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3plus/deeplabv3plus_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnest101', 4 | backbone=dict( 5 | type='ResNeSt', 6 | stem_channels=128, 7 | radix=2, 8 | reduction_factor=4, 9 | avg_down_stride=True)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r18b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r18b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | in_channels=512, 7 | channels=128, 8 | ), 9 | auxiliary_head=dict(in_channels=256, channels=64)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/seg/sampler/base_pixel_sampler.py: -------------------------------------------------------------------------------- 1 | from abc import ABCMeta, abstractmethod 2 | 3 | 4 | class BasePixelSampler(metaclass=ABCMeta): 5 | """Base class of pixel sampler.""" 6 | 7 | def __init__(self, **kwargs): 8 | pass 9 | 10 | @abstractmethod 11 | def sample(self, seg_logit, seg_label): 12 | """Placeholder for sample function.""" 13 | pass 14 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/VOC_Concate.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #PBS -l select=1:ncpus=8:ngpus=1 3 | #PBS -q ee 4 | 5 | ############### 1. modify the name of vir-env 6 | source activate b06901053_mmseg 7 | cd $PBS_O_WORKDIR 8 | module load cuda/cuda-9.2/x86_64 9 | 10 | ###################### 11 | python tools/convert_datasets/voc_aug.py data/VOCdevkit data/VOCdevkit/VOCaug --nproc 8 12 | ### 13 | 14 | 15 | conda deactivate 16 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v3/lraspp_m-v3-d8_scratch_512x1024_320k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/lraspp_m-v3-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | 6 | # Re-config the data sampler. 7 | data = dict(samples_per_gpu=4, workers_per_gpu=4) 8 | 9 | runner = dict(type='IterBasedRunner', max_iters=320000) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/default_runtime.py: -------------------------------------------------------------------------------- 1 | # yapf:disable 2 | log_config = dict( 3 | interval=50, 4 | hooks=[ 5 | dict(type='TextLoggerHook', by_epoch=False), 6 | # dict(type='TensorboardLoggerHook') 7 | ]) 8 | # yapf:enable 9 | dist_params = dict(backend='nccl') 10 | log_level = 'INFO' 11 | load_from = None 12 | resume_from = None 13 | workflow = [('train', 1)] 14 | cudnn_benchmark = True 15 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/densecl/fcn_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | './fcn_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True)) 9 | test_cfg = dict(mode='slide', crop_size=(769, 769), stride=(513, 513)) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ann/ann_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ann_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ccnet/ccnet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/ccnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/danet/danet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/danet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dmnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dmnet/dmnet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dmnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dnl_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fastscnn/fast_scnn_4x8_80k_lr0.12_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fast_scnn.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | 6 | # Re-config the data sampler. 7 | data = dict(samples_per_gpu=2, workers_per_gpu=4) 8 | 9 | # Re-config the optimizer. 10 | optimizer = dict(type='SGD', lr=0.12, momentum=0.9, weight_decay=4e-5) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/pascal_context.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=60), 7 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 8 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/fcn/fcn_r50-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_r50-d8.py', '../_base_/datasets/pascal_context.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=60), 7 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 8 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/gcnet/gcnet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/gcnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/pascal_context.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_40k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=60), 7 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 8 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/fcn_hr18.py', '../_base_/datasets/pascal_context.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_80k.py' 4 | ] 5 | model = dict( 6 | decode_head=dict(num_classes=60), 7 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 8 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 9 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/upernet/upernet_r50_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/upernet_r50.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/apis/__init__.py: -------------------------------------------------------------------------------- 1 | from .inference import inference_segmentor, init_segmentor, show_result_pyplot 2 | from .test import multi_gpu_test, single_gpu_test 3 | from .train import get_root_logger, set_random_seed, train_segmentor 4 | 5 | __all__ = [ 6 | 'get_root_logger', 'set_random_seed', 'train_segmentor', 'init_segmentor', 7 | 'inference_segmentor', 'multi_gpu_test', 'single_gpu_test', 8 | 'show_result_pyplot' 9 | ] 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/models/utils/__init__.py: -------------------------------------------------------------------------------- 1 | from .inverted_residual import InvertedResidual, InvertedResidualV3 2 | from .make_divisible import make_divisible 3 | from .res_layer import ResLayer 4 | from .self_attention_block import SelfAttentionBlock 5 | from .up_conv_block import UpConvBlock 6 | 7 | __all__ = [ 8 | 'ResLayer', 'SelfAttentionBlock', 'make_divisible', 'InvertedResidual', 9 | 'UpConvBlock', 'InvertedResidualV3' 10 | ] 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/apcnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/apcnet/apcnet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/apcnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r18-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | c1_in_channels=64, 7 | c1_channels=12, 8 | in_channels=512, 9 | channels=128, 10 | ), 11 | auxiliary_head=dict(in_channels=256, channels=64)) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/emanet/emanet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/emanet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/encnet/encnet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/encnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/psanet/psanet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/psanet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r18-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet18_v1c', 4 | backbone=dict(depth=18), 5 | decode_head=dict( 6 | c1_in_channels=64, 7 | c1_channels=12, 8 | in_channels=512, 9 | channels=128, 10 | ), 11 | auxiliary_head=dict(in_channels=256, channels=64)) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_80k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_20k_voc12aug.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_40k_voc12aug.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/nonlocal_net/nonlocal_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/nonlocal_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/schedules/schedule_160k.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0005) 3 | optimizer_config = dict() 4 | # learning policy 5 | lr_config = dict(policy='poly', power=0.9, min_lr=1e-4, by_epoch=False) 6 | # runtime settings 7 | runner = dict(type='IterBasedRunner', max_iters=160000) 8 | checkpoint_config = dict(by_epoch=False, interval=16000) 9 | evaluation = dict(interval=16000, metric='mIoU') 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/schedules/schedule_20k.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optimizer = dict(type='SGD', lr=0.05, momentum=0.9, weight_decay=0.0005) 3 | optimizer_config = dict() 4 | # learning policy 5 | lr_config = dict(policy='poly', power=0.9, min_lr=1e-4, by_epoch=False) 6 | # runtime settings 7 | runner = dict(type='IterBasedRunner', max_iters=20000) 8 | checkpoint_config = dict(by_epoch=False, interval=2000) 9 | evaluation = dict(interval=2000, metric='mIoU') 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/schedules/schedule_40k.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0005) 3 | optimizer_config = dict() 4 | # learning policy 5 | lr_config = dict(policy='poly', power=0.9, min_lr=1e-4, by_epoch=False) 6 | # runtime settings 7 | runner = dict(type='IterBasedRunner', max_iters=40000) 8 | checkpoint_config = dict(by_epoch=False, interval=4000) 9 | evaluation = dict(interval=4000, metric='mIoU') 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/schedules/schedule_80k.py: -------------------------------------------------------------------------------- 1 | # optimizer 2 | optimizer = dict(type='SGD', lr=0.01, momentum=0.9, weight_decay=0.0005) 3 | optimizer_config = dict() 4 | # learning policy 5 | lr_config = dict(policy='poly', power=0.9, min_lr=1e-4, by_epoch=False) 6 | # runtime settings 7 | runner = dict(type='IterBasedRunner', max_iters=80000) 8 | checkpoint_config = dict(by_epoch=False, interval=8000) 9 | evaluation = dict(interval=8000, metric='mIoU') 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r18b-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | c1_in_channels=64, 7 | c1_channels=12, 8 | in_channels=512, 9 | channels=128, 10 | ), 11 | auxiliary_head=dict(in_channels=256, channels=64)) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r18b-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_769x769_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='torchvision://resnet18', 4 | backbone=dict(type='ResNet', depth=18), 5 | decode_head=dict( 6 | c1_in_channels=64, 7 | c1_channels=12, 8 | in_channels=512, 9 | channels=128, 10 | ), 11 | auxiliary_head=dict(in_channels=256, channels=64)) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x1024_40k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x512_20k_voc12aug.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x512_40k_voc12aug.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x512_80k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_769x769_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_480x480_40k_pascal_context.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_480x480_80k_pascal_context.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr18s_512x1024_160k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x1024_160k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x1024_160k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x1024_160k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x1024_40k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/ocrnet/ocrnet_hr18s_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './ocrnet_hr18_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w18_small', 4 | backbone=dict( 5 | extra=dict( 6 | stage1=dict(num_blocks=(2, )), 7 | stage2=dict(num_blocks=(2, 2)), 8 | stage3=dict(num_modules=3, num_blocks=(2, 2, 2)), 9 | stage4=dict(num_modules=2, num_blocks=(2, 2, 2, 2))))) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/core/utils/misc.py: -------------------------------------------------------------------------------- 1 | def add_prefix(inputs, prefix): 2 | """Add prefix for dict. 3 | 4 | Args: 5 | inputs (dict): The input dict with str keys. 6 | prefix (str): The prefix to add. 7 | 8 | Returns: 9 | 10 | dict: The dict with keys updated with ``prefix``. 11 | """ 12 | 13 | outputs = dict() 14 | for name, value in inputs.items(): 15 | outputs[f'{prefix}.{name}'] = value 16 | 17 | return outputs 18 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tests/test_utils/test_make_divisible.py: -------------------------------------------------------------------------------- 1 | from mmseg.models.utils import make_divisible 2 | 3 | 4 | def test_make_divisible(): 5 | # test with min_value = None 6 | assert make_divisible(10, 4) == 12 7 | assert make_divisible(9, 4) == 12 8 | assert make_divisible(1, 4) == 4 9 | 10 | # test with min_value = 8 11 | assert make_divisible(10, 4, 8) == 12 12 | assert make_divisible(9, 4, 8) == 12 13 | assert make_divisible(1, 4, 8) == 8 14 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d16-mg124_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet101_v1c', 4 | backbone=dict( 5 | depth=101, 6 | dilations=(1, 1, 1, 2), 7 | strides=(1, 2, 2, 1), 8 | multi_grid=(1, 2, 4)), 9 | decode_head=dict( 10 | dilations=(1, 6, 12, 18), 11 | sampler=dict(type='OHEMPixelSampler', min_kept=100000))) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r101-d16-mg124_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet101_v1c', 4 | backbone=dict( 5 | depth=101, 6 | dilations=(1, 1, 1, 2), 7 | strides=(1, 2, 2, 1), 8 | multi_grid=(1, 2, 4)), 9 | decode_head=dict( 10 | dilations=(1, 6, 12, 18), 11 | sampler=dict(type='OHEMPixelSampler', min_kept=100000))) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v3/lraspp_m-v3-d8_512x1024_320k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/lraspp_m-v3-d8.py', '../_base_/datasets/cityscapes.py', 3 | '../_base_/default_runtime.py', '../_base_/schedules/schedule_160k.py' 4 | ] 5 | 6 | model = dict(pretrained='open-mmlab://contrib/mobilenet_v3_large') 7 | 8 | # Re-config the data sampler. 9 | data = dict(samples_per_gpu=4, workers_per_gpu=4) 10 | 11 | runner = dict(type='IterBasedRunner', max_iters=320000) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x512_80k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_80k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/classification/metrics.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | from sklearn.metrics import average_precision_score 3 | 4 | def compute_AP(predictions, labels): 5 | predictions = predictions.T 6 | labels = labels.T 7 | num_class = predictions.shape[0] 8 | APs = [] 9 | for i in range(num_class): 10 | mask = labels[i] <= 1 11 | AP = average_precision_score(labels[i][mask], predictions[i][mask]-1e-5*labels[i][mask]) 12 | APs.append(AP) 13 | mAP = np.mean(APs) 14 | return APs, mAP -------------------------------------------------------------------------------- /benchmarks/Segmentation/get_VOC.sh: -------------------------------------------------------------------------------- 1 | # VOC12 2 | DATA="$1" 3 | if [ "$DATA" == "" ]; then 4 | echo "Usage: bash ./get_VOC.sh YOUR_DATA_ROOT" 5 | exit 6 | fi 7 | # -P DIR --> save files in DIR 8 | wget http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar -P $DATA 9 | wget http://www.eecs.berkeley.edu/Research/Projects/CS/vision/grouping/semantic_contours/benchmark.tgz -P $DATA --no-check-certificate 10 | tar -xf $DATA/VOCtrainval_11-May-2012.tar -C $DATA 11 | tar -zxvf $DATA/benchmark.tgz -C $DATA 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x512_20k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_20k_voc12aug.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x512_40k_voc12aug.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x512_40k_voc12aug.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/setup.cfg: -------------------------------------------------------------------------------- 1 | [yapf] 2 | based_on_style = pep8 3 | blank_line_before_nested_class_or_def = true 4 | split_before_expression_after_opening_paren = true 5 | 6 | [isort] 7 | line_length = 79 8 | multi_line_output = 0 9 | known_standard_library = setuptools 10 | known_first_party = mmseg 11 | known_third_party = PIL,cityscapesscripts,cv2,detail,matplotlib,mmcv,numpy,onnxruntime,oss2,pytest,scipy,terminaltables,torch 12 | no_lines_before = STDLIB,LOCALFOLDER 13 | default_section = THIRDPARTY 14 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d16-mg124_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_40k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet101_v1c', 4 | backbone=dict( 5 | depth=101, 6 | dilations=(1, 1, 1, 2), 7 | strides=(1, 2, 2, 1), 8 | multi_grid=(1, 2, 4)), 9 | decode_head=dict( 10 | dilations=(1, 6, 12, 18), 11 | sampler=dict(type='OHEMPixelSampler', min_kept=100000))) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r101-d16-mg124_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './deeplabv3plus_r50-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://resnet101_v1c', 4 | backbone=dict( 5 | depth=101, 6 | dilations=(1, 1, 1, 2), 7 | strides=(1, 2, 2, 1), 8 | multi_grid=(1, 2, 4)), 9 | decode_head=dict( 10 | dilations=(1, 6, 12, 18), 11 | sampler=dict(type='OHEMPixelSampler', min_kept=100000))) 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x1024_40k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x1024_40k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_480x480_40k_pascal_context.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_480x480_80k_pascal_context.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/hrnet/fcn_hr48_512x1024_160k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './fcn_hr18_512x1024_160k_cityscapes.py' 2 | model = dict( 3 | pretrained='open-mmlab://msra/hrnetv2_w48', 4 | backbone=dict( 5 | extra=dict( 6 | stage2=dict(num_channels=(48, 96)), 7 | stage3=dict(num_channels=(48, 96, 192)), 8 | stage4=dict(num_channels=(48, 96, 192, 384)))), 9 | decode_head=dict( 10 | in_channels=[48, 96, 192, 384], channels=sum([48, 96, 192, 384]))) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/fcn_m-v2-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../fcn/fcn_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', 3 | '../_base_/datasets/pascal_context.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=60), auxiliary_head=dict(num_classes=60)) 8 | test_cfg = dict(mode='slide', crop_size=(480, 480), stride=(320, 320)) 9 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/pspnet/pspnet_r50-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/pspnet_r50-d8.py', 3 | '../_base_/datasets/pascal_context.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=60), auxiliary_head=dict(num_classes=60)) 8 | test_cfg = dict(mode='slide', crop_size=(480, 480), stride=(320, 320)) 9 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 10 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/fcn_m-v2-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../fcn/fcn_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/pspnet_m-v2-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../pspnet/pspnet_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/pspnet_m-v2-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../pspnet/pspnet_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', 3 | '../_base_/datasets/pascal_context.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=60), 8 | auxiliary_head=dict(num_classes=60), 9 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 10 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3/deeplabv3_r50-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3_r50-d8.py', 3 | '../_base_/datasets/pascal_context.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=60), 8 | auxiliary_head=dict(num_classes=60), 9 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 10 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/deeplabv3_m-v2-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3/deeplabv3_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/deeplabv3_m-v2-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3/deeplabv3_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_480x480_40k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/pascal_context.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_40k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=60), 8 | auxiliary_head=dict(num_classes=60), 9 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 10 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/deeplabv3plus/deeplabv3plus_r50-d8_480x480_80k_pascal_context.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/deeplabv3plus_r50-d8.py', 3 | '../_base_/datasets/pascal_context.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(num_classes=60), 8 | auxiliary_head=dict(num_classes=60), 9 | test_cfg=dict(mode='slide', crop_size=(480, 480), stride=(320, 320))) 10 | optimizer = dict(type='SGD', lr=0.004, momentum=0.9, weight_decay=0.0001) 11 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/models/backbones/__init__.py: -------------------------------------------------------------------------------- 1 | from .cgnet import CGNet 2 | from .fast_scnn import FastSCNN 3 | from .hrnet import HRNet 4 | from .mobilenet_v2 import MobileNetV2 5 | from .mobilenet_v3 import MobileNetV3 6 | from .resnest import ResNeSt 7 | from .resnet import ResNet, ResNetV1c, ResNetV1d 8 | from .resnext import ResNeXt 9 | from .unet import UNet 10 | 11 | __all__ = [ 12 | 'ResNet', 'ResNetV1c', 'ResNetV1d', 'ResNeXt', 'HRNet', 'FastSCNN', 13 | 'ResNeSt', 'MobileNetV2', 'UNet', 'CGNet', 'MobileNetV3' 14 | ] 15 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/utils/collect_env.py: -------------------------------------------------------------------------------- 1 | from mmcv.utils import collect_env as collect_base_env 2 | from mmcv.utils import get_git_hash 3 | 4 | import mmseg 5 | 6 | 7 | def collect_env(): 8 | """Collect the information of the running environments.""" 9 | env_info = collect_base_env() 10 | env_info['MMSegmentation'] = f'{mmseg.__version__}+{get_git_hash()[:7]}' 11 | 12 | return env_info 13 | 14 | 15 | if __name__ == '__main__': 16 | for name, val in collect_env().items(): 17 | print('{}: {}'.format(name, val)) 18 | -------------------------------------------------------------------------------- /benchmarks/detection/configs/R_50_FPN_1x.yaml: -------------------------------------------------------------------------------- 1 | _BASE_: "Base-RCNN-FPN.yaml" 2 | MODEL: 3 | MASK_ON: True 4 | WEIGHTS: "detectron2://ImageNetPretrained/MSRA/R-50.pkl" 5 | BACKBONE: 6 | FREEZE_AT: 0 7 | RESNETS: 8 | DEPTH: 50 9 | NORM: "SyncBN" 10 | FPN: 11 | NORM: "SyncBN" 12 | ROI_BOX_HEAD: 13 | NAME: "FastRCNNConvFCHead" 14 | NUM_CONV: 4 15 | NUM_FC: 1 16 | NORM: "SyncBN" 17 | ROI_MASK_HEAD: 18 | NORM: "SyncBN" 19 | TEST: 20 | PRECISE_BN: 21 | ENABLED: True 22 | SOLVER: 23 | STEPS: (60000, 80000) 24 | MAX_ITER: 90000 -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/deeplabv3plus_m-v2-d8_512x512_160k_ade20k.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3plus/deeplabv3plus_r101-d8_512x512_160k_ade20k.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320, c1_in_channels=24), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v2/deeplabv3plus_m-v2-d8_512x1024_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = '../deeplabv3plus/deeplabv3plus_r101-d8_512x1024_80k_cityscapes.py' 2 | model = dict( 3 | pretrained='mmcls://mobilenet_v2', 4 | backbone=dict( 5 | _delete_=True, 6 | type='MobileNetV2', 7 | widen_factor=1., 8 | strides=(1, 2, 2, 1, 1, 1, 1), 9 | dilations=(1, 1, 1, 2, 2, 4, 4), 10 | out_indices=(1, 2, 4, 6)), 11 | decode_head=dict(in_channels=320, c1_in_channels=24), 12 | auxiliary_head=dict(in_channels=96)) 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/models/__init__.py: -------------------------------------------------------------------------------- 1 | from .backbones import * # noqa: F401,F403 2 | from .builder import (BACKBONES, HEADS, LOSSES, SEGMENTORS, build_backbone, 3 | build_head, build_loss, build_segmentor) 4 | from .decode_heads import * # noqa: F401,F403 5 | from .losses import * # noqa: F401,F403 6 | from .necks import * # noqa: F401,F403 7 | from .segmentors import * # noqa: F401,F403 8 | 9 | __all__ = [ 10 | 'BACKBONES', 'HEADS', 'LOSSES', 'SEGMENTORS', 'build_backbone', 11 | 'build_head', 'build_loss', 'build_segmentor' 12 | ] 13 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/models/losses/__init__.py: -------------------------------------------------------------------------------- 1 | from .accuracy import Accuracy, accuracy 2 | from .cross_entropy_loss import (CrossEntropyLoss, binary_cross_entropy, 3 | cross_entropy, mask_cross_entropy) 4 | from .lovasz_loss import LovaszLoss 5 | from .utils import reduce_loss, weight_reduce_loss, weighted_loss 6 | 7 | __all__ = [ 8 | 'accuracy', 'Accuracy', 'cross_entropy', 'binary_cross_entropy', 9 | 'mask_cross_entropy', 'CrossEntropyLoss', 'reduce_loss', 10 | 'weight_reduce_loss', 'weighted_loss', 'LovaszLoss' 11 | ] 12 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/dnlnet/dnl_r50-d8_769x769_80k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = [ 2 | '../_base_/models/dnl_r50-d8.py', 3 | '../_base_/datasets/cityscapes_769x769.py', '../_base_/default_runtime.py', 4 | '../_base_/schedules/schedule_80k.py' 5 | ] 6 | model = dict( 7 | decode_head=dict(align_corners=True), 8 | auxiliary_head=dict(align_corners=True), 9 | test_cfg=dict(mode='slide', crop_size=(769, 769), stride=(513, 513))) 10 | optimizer = dict( 11 | paramwise_cfg=dict( 12 | custom_keys=dict(theta=dict(wd_mult=0.), phi=dict(wd_mult=0.)))) 13 | -------------------------------------------------------------------------------- /get_VOC.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #PBS -l select=1:ncpus=8:ngpus=1 3 | #PBS -q ee 4 | #PBS -l walltime=24:00:00 5 | ########## VOC Dataset Generation ########## 6 | cd $PBS_O_WORKDIR 7 | 8 | # Feel free to modify the data directory 9 | DATA="./VOC2007" 10 | 11 | # Download VOC07 from the official website 12 | wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar 13 | 14 | # Untar the file 15 | tar -xvf VOCtrainval_06-Nov-2007.tar 16 | 17 | # Move the dataset to specified directory 18 | mv VOCdevkit/VOC2007 $DATA 19 | 20 | rm -r VOCdevkit 21 | rm VOCtrainval_06-Nov-2007.tar 22 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/version.py: -------------------------------------------------------------------------------- 1 | # Copyright (c) Open-MMLab. All rights reserved. 2 | 3 | __version__ = '0.11.0' 4 | 5 | 6 | def parse_version_info(version_str): 7 | version_info = [] 8 | for x in version_str.split('.'): 9 | if x.isdigit(): 10 | version_info.append(int(x)) 11 | elif x.find('rc') != -1: 12 | patch_version = x.split('rc') 13 | version_info.append(int(patch_version[0])) 14 | version_info.append(f'rc{patch_version[1]}') 15 | return tuple(version_info) 16 | 17 | 18 | version_info = parse_version_info(__version__) 19 | -------------------------------------------------------------------------------- /benchmarks/classification/scripts/semisup_coco.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | DATA=$1 # path to the coco dataset 3 | PRETRAINED=$2 # path to the pre-trained weight 4 | PERC=$3 # fine-tune with 1 or 10 percent of labels 5 | 6 | python main.py \ 7 | --task semisup \ 8 | --dump_path logs/semisup_coco_${PERC}perc \ 9 | --dataset coco \ 10 | --data_path ${DATA} \ 11 | --pretrained ${PRETRAINED} \ 12 | --batch_size 32 \ 13 | --epochs 20 \ 14 | --scheduler_type step \ 15 | --decay_epochs 12 16 \ 16 | --gamma 0.2 \ 17 | --lr 0.001 \ 18 | --lr_last_layer 0.1 \ 19 | --labels_perc ${PERC} -------------------------------------------------------------------------------- /get_COCO.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #PBS -l select=1:ncpus=8:ngpus=1 3 | #PBS -q ee 4 | #PBS -l walltime=24:00:00 5 | ########## COCO Dataset Generation ########## 6 | cd $PBS_O_WORKDIR 7 | 8 | # Feel free to modify the data directory 9 | DATA="./COCO2014" 10 | mkdir $DATA 11 | cd $DATA 12 | 13 | # Download COCO from the official website 14 | wget http://images.cocodataset.org/zips/train2014.zip 15 | wget http://images.cocodataset.org/zips/val2014.zip 16 | wget http://images.cocodataset.org/annotations/annotations_trainval2014.zip 17 | 18 | # Unzip the files 19 | unzip train2014.zip 20 | unzip val2014.zip 21 | unzip annotations_trainval2014.zip 22 | 23 | rm *.zip 24 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tests/test_models/test_necks.py: -------------------------------------------------------------------------------- 1 | import torch 2 | 3 | from mmseg.models import FPN 4 | 5 | 6 | def test_fpn(): 7 | in_channels = [256, 512, 1024, 2048] 8 | inputs = [ 9 | torch.randn(1, c, 56 // 2**i, 56 // 2**i) 10 | for i, c in enumerate(in_channels) 11 | ] 12 | 13 | fpn = FPN(in_channels, 256, len(in_channels)) 14 | outputs = fpn(inputs) 15 | assert outputs[0].shape == torch.Size([1, 256, 56, 56]) 16 | assert outputs[1].shape == torch.Size([1, 256, 28, 28]) 17 | assert outputs[2].shape == torch.Size([1, 256, 14, 14]) 18 | assert outputs[3].shape == torch.Size([1, 256, 7, 7]) 19 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tools/slurm_train.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -x 4 | 5 | PARTITION=$1 6 | JOB_NAME=$2 7 | CONFIG=$3 8 | GPUS=${GPUS:-4} 9 | GPUS_PER_NODE=${GPUS_PER_NODE:-4} 10 | CPUS_PER_TASK=${CPUS_PER_TASK:-5} 11 | SRUN_ARGS=${SRUN_ARGS:-""} 12 | PY_ARGS=${@:4} 13 | 14 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 15 | srun -p ${PARTITION} \ 16 | --job-name=${JOB_NAME} \ 17 | --gres=gpu:${GPUS_PER_NODE} \ 18 | --ntasks=${GPUS} \ 19 | --ntasks-per-node=${GPUS_PER_NODE} \ 20 | --cpus-per-task=${CPUS_PER_TASK} \ 21 | --kill-on-bad-exit=1 \ 22 | ${SRUN_ARGS} \ 23 | python -u tools/train.py ${CONFIG} --launcher="slurm" ${PY_ARGS} 24 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/.github/workflows/deploy.yml: -------------------------------------------------------------------------------- 1 | name: deploy 2 | 3 | on: push 4 | 5 | jobs: 6 | build-n-publish: 7 | runs-on: ubuntu-latest 8 | if: startsWith(github.event.ref, 'refs/tags') 9 | steps: 10 | - uses: actions/checkout@v2 11 | - name: Set up Python 3.7 12 | uses: actions/setup-python@v2 13 | with: 14 | python-version: 3.7 15 | - name: Build MMSegmentation 16 | run: | 17 | pip install wheel 18 | python setup.py sdist bdist_wheel 19 | - name: Publish distribution to PyPI 20 | run: | 21 | pip install twine 22 | twine upload dist/* -u __token__ -p ${{ secrets.pypi_password }} 23 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tools/slurm_test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -x 4 | 5 | PARTITION=$1 6 | JOB_NAME=$2 7 | CONFIG=$3 8 | CHECKPOINT=$4 9 | GPUS=${GPUS:-4} 10 | GPUS_PER_NODE=${GPUS_PER_NODE:-4} 11 | CPUS_PER_TASK=${CPUS_PER_TASK:-5} 12 | PY_ARGS=${@:5} 13 | SRUN_ARGS=${SRUN_ARGS:-""} 14 | 15 | PYTHONPATH="$(dirname $0)/..":$PYTHONPATH \ 16 | srun -p ${PARTITION} \ 17 | --job-name=${JOB_NAME} \ 18 | --gres=gpu:${GPUS_PER_NODE} \ 19 | --ntasks=${GPUS} \ 20 | --ntasks-per-node=${GPUS_PER_NODE} \ 21 | --cpus-per-task=${CPUS_PER_TASK} \ 22 | --kill-on-bad-exit=1 \ 23 | ${SRUN_ARGS} \ 24 | python -u tools/test.py ${CONFIG} ${CHECKPOINT} --launcher="slurm" ${PY_ARGS} 25 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/docs/Makefile: -------------------------------------------------------------------------------- 1 | # Minimal makefile for Sphinx documentation 2 | # 3 | 4 | # You can set these variables from the command line, and also 5 | # from the environment for the first two. 6 | SPHINXOPTS ?= 7 | SPHINXBUILD ?= sphinx-build 8 | SOURCEDIR = . 9 | BUILDDIR = _build 10 | 11 | # Put it first so that "make" without argument is like "make help". 12 | help: 13 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 14 | 15 | .PHONY: help Makefile 16 | 17 | # Catch-all target: route all unknown targets to Sphinx using the new 18 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS). 19 | %: Makefile 20 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O) 21 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/Segmentation_train.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #PBS -l select=1:ncpus=8:ngpus=1 3 | #PBS -q ee 4 | #PBS -l walltime=24:00:00 5 | 6 | ############### 1. modify the name of vir-env 7 | #source activate b06901053_mmseg 8 | #cd $PBS_O_WORKDIR 9 | #module load cuda/cuda-9.2/x86_64 10 | 11 | ###################### 12 | CONFIG_FILE=configs/densecl/fcn_r50-d8_512x512_20k_voc12aug.py 13 | GPUS=1 14 | # 2. Change the output dir 3. Change the path of pretrained model in fcn_r50-d8.py 15 | OUTPUT_DIR=logs/SSPRL_200ep128bs_COCO_lptype300150150_locsize11296 16 | CHECKPOINT_FILE=logs/SSPRL_200ep128bs_COCO_lptype300150150_locsize11296/iter_12000.pth 17 | ./tools/dist_train.sh ${CONFIG_FILE} ${GPUS} --work-dir ${OUTPUT_DIR} 18 | ### 19 | 20 | 21 | #conda deactivate 22 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tools/print_config.py: -------------------------------------------------------------------------------- 1 | import argparse 2 | 3 | from mmcv import Config, DictAction 4 | 5 | 6 | def parse_args(): 7 | parser = argparse.ArgumentParser(description='Print the whole config') 8 | parser.add_argument('config', help='config file path') 9 | parser.add_argument( 10 | '--options', nargs='+', action=DictAction, help='arguments in dict') 11 | args = parser.parse_args() 12 | 13 | return args 14 | 15 | 16 | def main(): 17 | args = parse_args() 18 | 19 | cfg = Config.fromfile(args.config) 20 | if args.options is not None: 21 | cfg.merge_from_dict(args.options) 22 | print(f'Config:\n{cfg.pretty_text}') 23 | # dump config 24 | cfg.dump('example.py') 25 | 26 | 27 | if __name__ == '__main__': 28 | main() 29 | -------------------------------------------------------------------------------- /get_ImageNet.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #PBS -l select=1:ncpus=8:ngpus=1 3 | #PBS -q ee 4 | #PBS -l walltime=24:00:00 5 | cd $PBS_O_WORKDIR 6 | ###################### 7 | # VOC12 8 | DATA="./data" 9 | if [ "$DATA" == "" ]; then 10 | echo "Usage: bash ./get_ImageNet.sh YOUR_DATA_ROOT" 11 | exit 12 | fi 13 | # -P DIR --> save files in DIR 14 | mkdir $DATA 15 | wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_img_train.tar -P $DATA 16 | wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_img_val.tar -P $DATA 17 | wget https://image-net.org/data/ILSVRC/2012/ILSVRC2012_devkit_t12.tar.gz -P $DATA 18 | 19 | mkdir $DATA/train 20 | tar -xf $DATA/ILSVRC2012_img_train.tar -C $DATA/train 21 | rm $DATA/ILSVRC2012_img_train.tar 22 | 23 | mkdir $DATA/val 24 | tar -xf $DATA/ILSVRC2012_img_val.tar -C $DATA/val 25 | rm $DATA/ILSVRC2012_img_val.tar -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Feature request 3 | about: Suggest an idea for this project 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | # Describe the feature 11 | 12 | **Motivation** 13 | A clear and concise description of the motivation of the feature. 14 | Ex1. It is inconvenient when [....]. 15 | Ex2. There is a recent paper [....], which is very helpful for [....]. 16 | 17 | **Related resources** 18 | If there is an official code release or third-party implementations, please also provide the information here, which would be very helpful. 19 | 20 | **Additional context** 21 | Add any other context or screenshots about the feature request here. 22 | If you would like to implement the feature and create a PR, please leave a comment here and that would be much appreciated. 23 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/datasets/__init__.py: -------------------------------------------------------------------------------- 1 | from .ade import ADE20KDataset 2 | from .builder import DATASETS, PIPELINES, build_dataloader, build_dataset 3 | from .chase_db1 import ChaseDB1Dataset 4 | from .cityscapes import CityscapesDataset 5 | from .custom import CustomDataset 6 | from .dataset_wrappers import ConcatDataset, RepeatDataset 7 | from .drive import DRIVEDataset 8 | from .hrf import HRFDataset 9 | from .pascal_context import PascalContextDataset 10 | from .stare import STAREDataset 11 | from .voc import PascalVOCDataset 12 | 13 | __all__ = [ 14 | 'CustomDataset', 'build_dataloader', 'ConcatDataset', 'RepeatDataset', 15 | 'DATASETS', 'build_dataset', 'PIPELINES', 'CityscapesDataset', 16 | 'PascalVOCDataset', 'ADE20KDataset', 'PascalContextDataset', 17 | 'ChaseDB1Dataset', 'DRIVEDataset', 'HRFDataset', 'STAREDataset' 18 | ] 19 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/docker/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG PYTORCH="1.6.0" 2 | ARG CUDA="10.1" 3 | ARG CUDNN="7" 4 | 5 | FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel 6 | 7 | ENV TORCH_CUDA_ARCH_LIST="6.0 6.1 7.0+PTX" 8 | ENV TORCH_NVCC_FLAGS="-Xfatbin -compress-all" 9 | ENV CMAKE_PREFIX_PATH="$(dirname $(which conda))/../" 10 | 11 | RUN apt-get update && apt-get install -y git ninja-build libglib2.0-0 libsm6 libxrender-dev libxext6 \ 12 | && apt-get clean \ 13 | && rm -rf /var/lib/apt/lists/* 14 | 15 | # Install mmsegmentation 16 | RUN conda clean --all 17 | 18 | RUN pip install mmcv-full==latest+torch1.6.0+cu101 -f https://download.openmmlab.com/mmcv/dist/index.html 19 | RUN git clone https://github.com/open-mmlab/mmsegmenation.git /mmsegmentation 20 | WORKDIR /mmsegmentation 21 | RUN pip install -r requirements/build.txt 22 | RUN pip install --no-cache-dir -e . 23 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v3/lraspp_m-v3s-d8_scratch_512x1024_320k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './lraspp_m-v3-d8_scratch_512x1024_320k_cityscapes.py' 2 | norm_cfg = dict(type='SyncBN', eps=0.001, requires_grad=True) 3 | model = dict( 4 | type='EncoderDecoder', 5 | backbone=dict( 6 | type='MobileNetV3', 7 | arch='small', 8 | out_indices=(0, 1, 12), 9 | norm_cfg=norm_cfg), 10 | decode_head=dict( 11 | type='LRASPPHead', 12 | in_channels=(16, 16, 576), 13 | in_index=(0, 1, 2), 14 | channels=128, 15 | input_transform='multiple_select', 16 | dropout_ratio=0.1, 17 | num_classes=19, 18 | norm_cfg=norm_cfg, 19 | act_cfg=dict(type='ReLU'), 20 | align_corners=False, 21 | loss_decode=dict( 22 | type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0))) 23 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/datasets/hrf.py: -------------------------------------------------------------------------------- 1 | import os.path as osp 2 | 3 | from .builder import DATASETS 4 | from .custom import CustomDataset 5 | 6 | 7 | @DATASETS.register_module() 8 | class HRFDataset(CustomDataset): 9 | """HRF dataset. 10 | 11 | In segmentation map annotation for HRF, 0 stands for background, which is 12 | included in 2 categories. ``reduce_zero_label`` is fixed to False. The 13 | ``img_suffix`` is fixed to '.png' and ``seg_map_suffix`` is fixed to 14 | '.png'. 15 | """ 16 | 17 | CLASSES = ('background', 'vessel') 18 | 19 | PALETTE = [[120, 120, 120], [6, 230, 230]] 20 | 21 | def __init__(self, **kwargs): 22 | super(HRFDataset, self).__init__( 23 | img_suffix='.png', 24 | seg_map_suffix='.png', 25 | reduce_zero_label=False, 26 | **kwargs) 27 | assert osp.exists(self.img_dir) 28 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/datasets/stare.py: -------------------------------------------------------------------------------- 1 | import os.path as osp 2 | 3 | from .builder import DATASETS 4 | from .custom import CustomDataset 5 | 6 | 7 | @DATASETS.register_module() 8 | class STAREDataset(CustomDataset): 9 | """STARE dataset. 10 | 11 | In segmentation map annotation for STARE, 0 stands for background, which is 12 | included in 2 categories. ``reduce_zero_label`` is fixed to False. The 13 | ``img_suffix`` is fixed to '.png' and ``seg_map_suffix`` is fixed to 14 | '.ah.png'. 15 | """ 16 | 17 | CLASSES = ('background', 'vessel') 18 | 19 | PALETTE = [[120, 120, 120], [6, 230, 230]] 20 | 21 | def __init__(self, **kwargs): 22 | super(STAREDataset, self).__init__( 23 | img_suffix='.png', 24 | seg_map_suffix='.ah.png', 25 | reduce_zero_label=False, 26 | **kwargs) 27 | assert osp.exists(self.img_dir) 28 | -------------------------------------------------------------------------------- /create_ann.py: -------------------------------------------------------------------------------- 1 | import os 2 | import argparse 3 | 4 | # the dataset format should be COCO/tmproot/label1/XXX.jpg 5 | # /label2/XXX.jpg 6 | parser = argparse.ArgumentParser() 7 | parser.add_argument("--data_path", type=str, default="/path/to/COCO/tmproot", 8 | help="path to dataset repository") 9 | parser.add_argument("--output_txt", type=str, default="/path/to/COCO/ann.txt", 10 | help="path to output annotation txt") 11 | 12 | args = parser.parse_args() 13 | 14 | with open(args.output_txt, encoding="utf-8", mode="w") as f: 15 | image_paths = [] 16 | for label in os.listdir(args.data_path): 17 | if os.path.isdir(os.path.join(args.data_path, label)): 18 | for image in os.listdir(os.path.join(args.data_path, label)): 19 | image_paths.append(os.path.join(label, image)) 20 | f.write("\n".join(image_paths)) 21 | 22 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/_base_/models/lraspp_m-v3-d8.py: -------------------------------------------------------------------------------- 1 | # model settings 2 | norm_cfg = dict(type='SyncBN', eps=0.001, requires_grad=True) 3 | model = dict( 4 | type='EncoderDecoder', 5 | backbone=dict( 6 | type='MobileNetV3', 7 | arch='large', 8 | out_indices=(1, 3, 16), 9 | norm_cfg=norm_cfg), 10 | decode_head=dict( 11 | type='LRASPPHead', 12 | in_channels=(16, 24, 960), 13 | in_index=(0, 1, 2), 14 | channels=128, 15 | input_transform='multiple_select', 16 | dropout_ratio=0.1, 17 | num_classes=19, 18 | norm_cfg=norm_cfg, 19 | act_cfg=dict(type='ReLU'), 20 | align_corners=False, 21 | loss_decode=dict( 22 | type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0)), 23 | # model training and testing settings 24 | train_cfg=dict(), 25 | test_cfg=dict(mode='whole')) 26 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/datasets/drive.py: -------------------------------------------------------------------------------- 1 | import os.path as osp 2 | 3 | from .builder import DATASETS 4 | from .custom import CustomDataset 5 | 6 | 7 | @DATASETS.register_module() 8 | class DRIVEDataset(CustomDataset): 9 | """DRIVE dataset. 10 | 11 | In segmentation map annotation for DRIVE, 0 stands for background, which is 12 | included in 2 categories. ``reduce_zero_label`` is fixed to False. The 13 | ``img_suffix`` is fixed to '.png' and ``seg_map_suffix`` is fixed to 14 | '_manual1.png'. 15 | """ 16 | 17 | CLASSES = ('background', 'vessel') 18 | 19 | PALETTE = [[120, 120, 120], [6, 230, 230]] 20 | 21 | def __init__(self, **kwargs): 22 | super(DRIVEDataset, self).__init__( 23 | img_suffix='.png', 24 | seg_map_suffix='_manual1.png', 25 | reduce_zero_label=False, 26 | **kwargs) 27 | assert osp.exists(self.img_dir) 28 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/datasets/pipelines/__init__.py: -------------------------------------------------------------------------------- 1 | from .compose import Compose 2 | from .formating import (Collect, ImageToTensor, ToDataContainer, ToTensor, 3 | Transpose, to_tensor) 4 | from .loading import LoadAnnotations, LoadImageFromFile 5 | from .test_time_aug import MultiScaleFlipAug 6 | from .transforms import (CLAHE, AdjustGamma, Normalize, Pad, 7 | PhotoMetricDistortion, RandomCrop, RandomFlip, 8 | RandomRotate, Rerange, Resize, RGB2Gray, SegRescale) 9 | 10 | __all__ = [ 11 | 'Compose', 'to_tensor', 'ToTensor', 'ImageToTensor', 'ToDataContainer', 12 | 'Transpose', 'Collect', 'LoadAnnotations', 'LoadImageFromFile', 13 | 'MultiScaleFlipAug', 'Resize', 'RandomFlip', 'Pad', 'RandomCrop', 14 | 'Normalize', 'SegRescale', 'PhotoMetricDistortion', 'RandomRotate', 15 | 'AdjustGamma', 'CLAHE', 'Rerange', 'RGB2Gray' 16 | ] 17 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/datasets/chase_db1.py: -------------------------------------------------------------------------------- 1 | import os.path as osp 2 | 3 | from .builder import DATASETS 4 | from .custom import CustomDataset 5 | 6 | 7 | @DATASETS.register_module() 8 | class ChaseDB1Dataset(CustomDataset): 9 | """Chase_db1 dataset. 10 | 11 | In segmentation map annotation for Chase_db1, 0 stands for background, 12 | which is included in 2 categories. ``reduce_zero_label`` is fixed to False. 13 | The ``img_suffix`` is fixed to '.png' and ``seg_map_suffix`` is fixed to 14 | '_1stHO.png'. 15 | """ 16 | 17 | CLASSES = ('background', 'vessel') 18 | 19 | PALETTE = [[120, 120, 120], [6, 230, 230]] 20 | 21 | def __init__(self, **kwargs): 22 | super(ChaseDB1Dataset, self).__init__( 23 | img_suffix='.png', 24 | seg_map_suffix='_1stHO.png', 25 | reduce_zero_label=False, 26 | **kwargs) 27 | assert osp.exists(self.img_dir) 28 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/configs/mobilenet_v3/lraspp_m-v3s-d8_512x1024_320k_cityscapes.py: -------------------------------------------------------------------------------- 1 | _base_ = './lraspp_m-v3-d8_512x1024_320k_cityscapes.py' 2 | norm_cfg = dict(type='SyncBN', eps=0.001, requires_grad=True) 3 | model = dict( 4 | type='EncoderDecoder', 5 | pretrained='open-mmlab://contrib/mobilenet_v3_small', 6 | backbone=dict( 7 | type='MobileNetV3', 8 | arch='small', 9 | out_indices=(0, 1, 12), 10 | norm_cfg=norm_cfg), 11 | decode_head=dict( 12 | type='LRASPPHead', 13 | in_channels=(16, 16, 576), 14 | in_index=(0, 1, 2), 15 | channels=128, 16 | input_transform='multiple_select', 17 | dropout_ratio=0.1, 18 | num_classes=19, 19 | norm_cfg=norm_cfg, 20 | act_cfg=dict(type='ReLU'), 21 | align_corners=False, 22 | loss_decode=dict( 23 | type='CrossEntropyLoss', use_sigmoid=False, loss_weight=1.0))) 24 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/docs/make.bat: -------------------------------------------------------------------------------- 1 | @ECHO OFF 2 | 3 | pushd %~dp0 4 | 5 | REM Command file for Sphinx documentation 6 | 7 | if "%SPHINXBUILD%" == "" ( 8 | set SPHINXBUILD=sphinx-build 9 | ) 10 | set SOURCEDIR=. 11 | set BUILDDIR=_build 12 | 13 | if "%1" == "" goto help 14 | 15 | %SPHINXBUILD% >NUL 2>NUL 16 | if errorlevel 9009 ( 17 | echo. 18 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx 19 | echo.installed, then set the SPHINXBUILD environment variable to point 20 | echo.to the full path of the 'sphinx-build' executable. Alternatively you 21 | echo.may add the Sphinx directory to PATH. 22 | echo. 23 | echo.If you don't have Sphinx installed, grab it from 24 | echo.http://sphinx-doc.org/ 25 | exit /b 1 26 | ) 27 | 28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 29 | goto end 30 | 31 | :help 32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O% 33 | 34 | :end 35 | popd 36 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/__init__.py: -------------------------------------------------------------------------------- 1 | import mmcv 2 | 3 | from .version import __version__, version_info 4 | 5 | MMCV_MIN = '1.1.4' 6 | MMCV_MAX = '1.3.0' 7 | 8 | 9 | def digit_version(version_str): 10 | digit_version = [] 11 | for x in version_str.split('.'): 12 | if x.isdigit(): 13 | digit_version.append(int(x)) 14 | elif x.find('rc') != -1: 15 | patch_version = x.split('rc') 16 | digit_version.append(int(patch_version[0]) - 1) 17 | digit_version.append(int(patch_version[1])) 18 | return digit_version 19 | 20 | 21 | mmcv_min_version = digit_version(MMCV_MIN) 22 | mmcv_max_version = digit_version(MMCV_MAX) 23 | mmcv_version = digit_version(mmcv.__version__) 24 | 25 | 26 | assert (mmcv_min_version <= mmcv_version <= mmcv_max_version), \ 27 | f'MMCV=={mmcv.__version__} is used but incompatible. ' \ 28 | f'Please install mmcv>={mmcv_min_version}, <={mmcv_max_version}.' 29 | 30 | __all__ = ['__version__', 'version_info'] 31 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/mmseg/utils/logger.py: -------------------------------------------------------------------------------- 1 | import logging 2 | 3 | from mmcv.utils import get_logger 4 | 5 | 6 | def get_root_logger(log_file=None, log_level=logging.INFO): 7 | """Get the root logger. 8 | 9 | The logger will be initialized if it has not been initialized. By default a 10 | StreamHandler will be added. If `log_file` is specified, a FileHandler will 11 | also be added. The name of the root logger is the top-level package name, 12 | e.g., "mmseg". 13 | 14 | Args: 15 | log_file (str | None): The log filename. If specified, a FileHandler 16 | will be added to the root logger. 17 | log_level (int): The root logger level. Note that only the process of 18 | rank 0 is affected, while other processes will set the level to 19 | "Error" and be silent most of the time. 20 | 21 | Returns: 22 | logging.Logger: The root logger. 23 | """ 24 | 25 | logger = get_logger(name='mmseg', log_file=log_file, log_level=log_level) 26 | 27 | return logger 28 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/docs/index.rst: -------------------------------------------------------------------------------- 1 | Welcome to MMSegmenation's documentation! 2 | ======================================= 3 | 4 | .. toctree:: 5 | :maxdepth: 2 6 | :caption: Get Started 7 | 8 | get_started.md 9 | 10 | .. toctree:: 11 | :maxdepth: 1 12 | :caption: Dataset Preparation 13 | 14 | dataset_prepare.md 15 | 16 | .. toctree:: 17 | :maxdepth: 1 18 | :caption: Model Zoo 19 | 20 | model_zoo.md 21 | modelzoo_statistics.md 22 | 23 | .. toctree:: 24 | :maxdepth: 2 25 | :caption: Quick Run 26 | 27 | train.md 28 | inference.md 29 | 30 | .. toctree:: 31 | :maxdepth: 2 32 | :caption: Tutorials 33 | 34 | tutorials/index.rst 35 | 36 | .. toctree:: 37 | :maxdepth: 2 38 | :caption: Useful Tools and Scripts 39 | 40 | useful_tools.md 41 | 42 | .. toctree:: 43 | :maxdepth: 2 44 | :caption: Notes 45 | 46 | changelog.md 47 | 48 | .. toctree:: 49 | :caption: API Reference 50 | 51 | api.rst 52 | 53 | Indices and tables 54 | ================== 55 | 56 | * :ref:`genindex` 57 | * :ref:`search` 58 | -------------------------------------------------------------------------------- /benchmarks/Segmentation/mmsegmentation/tests/test_inference.py: -------------------------------------------------------------------------------- 1 | import os.path as osp 2 | 3 | import mmcv 4 | 5 | from mmseg.apis import inference_segmentor, init_segmentor 6 | 7 | 8 | def test_test_time_augmentation_on_cpu(): 9 | config_file = 'configs/pspnet/pspnet_r50-d8_512x1024_40k_cityscapes.py' 10 | config = mmcv.Config.fromfile(config_file) 11 | 12 | # Remove pretrain model download for testing 13 | config.model.pretrained = None 14 | # Replace SyncBN with BN to inference on CPU 15 | norm_cfg = dict(type='BN', requires_grad=True) 16 | config.model.backbone.norm_cfg = norm_cfg 17 | config.model.decode_head.norm_cfg = norm_cfg 18 | config.model.auxiliary_head.norm_cfg = norm_cfg 19 | 20 | # Enable test time augmentation 21 | config.data.test.pipeline[1].flip = True 22 | 23 | checkpoint_file = None 24 | model = init_segmentor(config, checkpoint_file, device='cpu') 25 | 26 | img = mmcv.imread( 27 | osp.join(osp.dirname(__file__), 'data/color.jpg'), 'color') 28 | result = inference_segmentor(model, img) 29 | assert result[0].shape == (288, 512) 30 | -------------------------------------------------------------------------------- /benchmarks/classification/README.md: -------------------------------------------------------------------------------- 1 | # Downstream Multi-Label Classification Tasks 2 | 3 | ## Requirements 4 | 5 | In addition to the [requirements](https://github.com/WesleyHsieh0806/SS-PRL#requirements) for SS-PRL pre-training, the following packages are used: 6 | - scikit-learn 7 | 8 | ## Fine-Tuning Linear Classifiers 9 | 10 | - Fine-tuning on the COCO dataset: 11 | ``` 12 | DATA="./data/coco" # path to the coco dataset 13 | WEIGHT="ss-prl.pth.tar" # pre-trained weight 14 | 15 | bash scropts/linear_coco.sh ${DATA} ${WEIGHT} 16 | ``` 17 | - Fine-tuning on the VOC dataset: 18 | ``` 19 | DATA="./data/voc" # path to the voc dataset 20 | WEIGHT="ss-prl.pth.tar" # pre-trained weight 21 | 22 | bash scropts/linear_voc.sh ${DATA} ${WEIGHT} 23 | ``` 24 | 25 | ## Semi-Supervised Training 26 | 27 | - Semi-Supervised training on the COCO dataset: 28 | ``` 29 | DATA="./data/coco" # path to the coco dataset 30 | WEIGHT="ss-prl.pth.tar" # pre-trained weight 31 | PERC="1" # fine-tune with 1 or 10 percent of labels 32 | 33 | bash scropts/semisup_coco.sh ${DATA} ${WEIGHT} ${PERC} 34 | ``` --------------------------------------------------------------------------------