Tianlong Ai ce09639a21
CodeCamp #151[Feature] Support HieraSeg on cityscapes (#2444)
## Support `HieraSeg` interface on `cityscapes`

## Motivation

Support `HieraSeg` interface on cityscapes dataset  
Paper link : https://ieeexplore.ieee.org/document/9878466/

```
@article{li2022deep,
  title={Deep Hierarchical Semantic Segmentation},
  author={Li, Liulei and Zhou, Tianfei and Wang, Wenguan and Li, Jianwu and Yang, Yi},
  journal={CVPR},
  year={2022}
}
```

## Modification

Add `HieraSeg_Projects` on `projects/`
Add `sep_aspp_contrast_head` decoder head.
Add `HieraSeg` config.
Add `hiera_loss`, `hiera_triplet_loss_cityscape`, `tree_triplet_loss`
2023-01-12 17:12:40 +08:00
..

HieraSeg

Support Deep Hierarchical Semantic Segmentation interface on cityscapes

Description

Author: AI-Tianlong

This project implements HieraSeg inference in the cityscapes dataset

Usage

Prerequisites

  • Python 3.8
  • PyTorch 1.6 or higher
  • MMSegmentation v1.0.0rc3
  • mmcv v2.0.0rc3
  • mmengine

Dataset preparing

preparing cityscapes dataset like this structure

Testing commands

please put hieraseg_deeplabv3plus_r101-d8_4xb2-80k_cityscapes-512x1024_20230112_125023-bc59a3d1.pth to mmsegmentation/checkpoints

Multi-GPUs Test

# --tta optional, multi-scale test, need mmengine >=0.4.0
bash tools/dist_test.sh [configs] [model weights] [number of gpu]  --tta

Example

bash tools/dist_test.sh projects/HieraSeg_project/configs/hieraseg/hieraseg_deeplabv3plus_r101-d8_4xb2-80l_cityscapes-512x1024.py checkpoints/hieraseg_deeplabv3plus_r101-d8_4xb2-80k_cityscapes-512x1024_20230112_125023-bc59a3d1.pth 2 --tta

Results

Cityscapes

Method Backbone Crop Size mIoU mIoU (ms+flip) config model
DeeplabV3+ R-101-D8 512x1024 81.61 82.71 config model

Citation

This project is modified from qhanghu/HSSN_pytorch

@article{li2022deep,
  title={Deep Hierarchical Semantic Segmentation},
  author={Li, Liulei and Zhou, Tianfei and Wang, Wenguan and Li, Jianwu and Yang, Yi},
  journal={CVPR},
  year={2022}
}

Checklist

  • Milestone 1: PR-ready, and acceptable to be one of the projects/.

    • Finish the code

    • Basic docstrings & proper citation

    • Test-time correctness

    • A full README

  • Milestone 2: Indicates a successful model implementation.

    • Training-time correctness
  • Milestone 3: Good to be a part of our core package!

    • Type hints and docstrings

    • Unit tests

    • Code polishing

    • Metafile.yml

  • Move your modules into the core package following the codebase's file hierarchy structure.

  • Refactor your modules into the core package following the codebase's file hierarchy structure.