• Stars
    star
    368
  • Rank 115,958 (Top 3 %)
  • Language
    Python
  • Created over 4 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

[ECCV-2020-oral]-Semantic Flow for Fast and Accurate Scene Parsing

SFSegNets(ECCV-2020-oral) and SFNet-Lite (Extension)

Reproduced Implementation of Our ECCV-2020 oral paper: Semantic Flow for Fast and Accurate Scene Parsing.

Extension: SFNet-Lite achieve 78.8 mIoU while running 120 FPS, 80.1 mIoU while running at 50 FPS on TITAN-RTX.

avatar

Extension: SFNet-Lite achieve new state-of-the-art results (best speed and accuracy trade-off) on domain agnostic driving segmentation benchmark (Unified Driving Segmentation). avatar

SFNet is the first real time nework which achieves the 80 mIoU on Cityscape test set!!!! It also contains our another concurrent work: SRNet-IEEE-TIP:link.

avatar Our methods achieve the best speed and accuracy trade-off on multiple scene parsing datasets.

avatar Note that the original paper link is on TorchCV where you can train SFnet models. However, that repo is over-complex for further research and exploration.

Question and Dissussion

If you have any question and or dissussion on fast segmentation, just open an issue. I will reply asap if I have the spare time.

DataSet Setting

Please see the DATASETs.md for the details.

Requirements

pytorch >=1.4.0 apex opencv-python mmcv-cpu

Pretrained models and Trained CKPTs

Please download the pretrained models and put them into the pretrained_models dir on the root of this repo.

pretrained imagenet models

resnet101-deep-stem-pytorch:link

resnet50-deep-stem-pytorch:link

resnet18-deep-stem-pytorch:link

dfnetv1:link

dfnetv2:link

stdcv1/stdc2:link

trained ckpts:

SFNet ckpts:

Cityscape:

sf-resnet18-Mapillary:link

Please download the trained model, the mIoU is on Cityscape validation dataset.

resnet18(no-balanced-sample): 78.4 mIoU

resnet18: 79.0 mIoU link +dsn link

resnet18 + map: 79.9 mIoU link

resnet50: 80.4 mIoU link

dfnetv1: 72.2 mIoU link

dfnetv2: 75.8 mIoU link

SFNet-Lite ckpts:

Cityscape:

sfnet_lite_r18: link

sfnet_lite_r18_coarse_boost: link

sfnet_lite_stdcv2: link

sfnet_lite_stdcv1: link

Unified Driving Segmentation dataset ckpts:

sfnet_lite_r18: link

sfnet_lite_stdcv1: link

sfnet_lite_stdcv2: link

IDD dataset

sfnet_lite_r18: link

sfnet_lite_stdcv1: link

sfnet_lite_stdcv2: link

BDD dataset

sfnet_lite_r18: link

sfnet_r18: link

Mapillary dataset

to be release.

Demo

Visualization Results

python demo_folder.py --arch choosed_architecture --snapshot ckpt_path --demo_floder images_folder --save_dir save_dir_to_disk

Training

All the models are trained with 8 GPUs. The train settings require 8 GPU with at least 11GB memory. Please download the pretrained models before training.

Train ResNet18 model on Cityscapes

SFNet r18

sh ./scripts/cityscapes/train_cityscapes_sfnet_res18.sh

SFNet-Lite r18

sh ./scripts/cityscapes/train_cityscapes_sfnet_res18_v2_lite_1000e.sh

Train ResNet101 models

sh ./scripts/cityscapes/train_cityscapes_sfnet_res101.sh

Submission for test

sh ./scripts/submit_test_cityscapes/submit_cityscapes_sfnet_res101.sh

Train the Domain Agnostic SFNet for UDS dataset.

Please use the DATASETs.md to prepare the UDS dataset.

sh ./scripts/uds/train_merged_sfnet_res18_v2.sh

Citation

If you find this repo is useful for your research, Please consider citing our paper:

@article{Li2022SFNetFA,
  title={SFNet: Faster, Accurate, and Domain Agnostic Semantic Segmentation via Semantic Flow},
  author={Xiangtai Li and Jiangning Zhang and Yibo Yang and Guangliang Cheng and Kuiyuan Yang and Yu Tong and Dacheng Tao},
  journal={ArXiv},
  year={2022},
  volume={abs/2207.04415}
}
@inproceedings{sfnet,
  title={Semantic Flow for Fast and Accurate Scene Parsing},
  author={Li, Xiangtai and You, Ansheng and Zhu, Zhen and Zhao, Houlong and Yang, Maoke and Yang, Kuiyuan and Tong, Yunhai},
  booktitle={ECCV},
  year={2020}
}

@article{Li2020SRNet,
  title={Towards Efficient Scene Understanding via Squeeze Reasoning},
  author={Xiangtai Li and Xia Li and Ansheng You and Li Zhang and Guang-Liang Cheng and Kuiyuan Yang and Y. Tong and Zhouchen Lin},
  journal={IEEE-TIP},
  year={2021},
}

Acknowledgement

This repo is based on Semantic Segmentation from NVIDIA and DecoupleSegNets

Great Thanks to SenseTime Research for Reproducing All these model ckpts and pretrained model.

License

MIT

More Repositories

1

OMG-Seg

OMG-LLaVA and OMG-Seg codebase [CVPR-24 and NeurIPS-24]
Python
1,272
star
2

Awesome-Segmentation-With-Transformer

[T-PAMI-2024] Transformer-Based Visual Segmentation: A Survey
684
star
3

OctaveConv_pytorch

Pytorch implementation of newly added convolution
Python
582
star
4

DecoupleSegNets

[ECCV-2020]: Improving Semantic Segmentation via Decoupled Body and Edge Supervision
Python
370
star
5

GALD-DGCNet

Source code and model GALD net (BMVC-2019) and Dual-Seg Net (BMVC-2019)
Python
343
star
6

Fast_Seg

This repo provides ⚑ fast⚑ semantic segmentation models on CityScapes/Camvid DataSet by Pytorch
Python
208
star
7

CAE

This is a PyTorch implementation of β€œContext AutoEncoder for Self-Supervised Representation Learning"
Python
192
star
8

Video-K-Net

[CVPR-2022 (oral)]-Video K-Net: A Simple, Strong, and Unified Baseline for Video Segmentation
Python
149
star
9

PFSegNets

PointFlow (CVPR-2021)
Python
121
star
10

Tube-Link

[ICCV-2023]-Universal Video Segmentaion For VSS, VPS and VIS
Python
109
star
11

dfn_seg

Implementation of Paper Learning a Discriminative Feature Network for Semantic Segmentation (CVPR2018)(face++)
Python
70
star
12

BSSeg

BoundarySqueeze: Image Segmentation as Boundary Squeezing
Python
55
star
13

Panoptic-PartFormer

[ECCV-2022] The First Unified End-to-End System for Panoptic Part Segmentation
Python
53
star
14

fuse_seg_pytorch

Pytorch Implementation of Paper: Enhancing Feature Fusion for Semantic Segmentation (face++)
Python
43
star
15

AI_challenger_Chinese_Caption

Repository for image caption for Chinese
Jupyter Notebook
25
star
16

TemporalPyramidRouting

Temporal Pyramid Routing For Video Instance Segmentation-T-PAMI-2022
Python
25
star
17

QueryPanSeg

Query Learning of Both Thing and Stuff for Panoptic Segmentation-ICIP-2022
15
star
18

deepLearning.ai.solution

This repository contains the implementation of deep learning courses by Andrew ng on Coursera
Jupyter Notebook
13
star
19

netwarp_test

Semantic Video CNNs through Representation Warping. ICCV 2017
Python
5
star
20

CompactSecondOrderNet

3
star
21

BasicAlgorithm-PAT-LeetCode-LintCode-

This repository is used to record the study of algorithm.
C++
1
star
22

cinema_java_software_engineering

This repository contains a simple Cinema System. This is the project of 3rd Software Engineering
Java
1
star
23

Pytorch-Cifar-models

This repository contains some famous CNN models that can run on the cifar-10 dataset
Python
1
star
24

MobileNet2-pytorch

This repository contains mobile nets implemetation by pytorch
Python
1
star
25

Adaboost-byhand

This repository contains the basic, mulit_boosting and basic bagging implementation
Python
1
star