Skip to content

AI-Medical-Vision/GUNETR_pplus_MSD_Whole

Repository files navigation

G-UNETR++: MSD Whole liver segmentation


model

🔥G-UNETR++: A gradient-enhanced network for accurate and robust liver segmentation from CT images
Paper: G-UNETR++


Requirements

Our code is based on UNETR++ code.
But, we modified the code for easy implementation. Our GPU is RTX 3090 GPU.

Environment

  1. Create and activate conda environment
conda create --name gunetr_pp python=3.9
conda activate gunetr_pp
  1. Install pytorch
# cuda 11.3
conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.3 -c pytorch

It is important that check your cuda version.
Please, see the pytorch document.

  1. Install other dependencies
pip install -r requirements.txt

Dataset

In paper, we teseted MSD.

Dataset format

GUNETR_pplus_LiTS
├── DATASET_Synapse                  
│   ├── unetr_pp_raw
│       ├── unetr_pp_raw_data           
│           ├── Task02_Synapse           
│               ├── Task002_Synapse         
│                   ├── seg_gt
│                       ├── test
│                           ├── hepaticvessel_001.nii.gz
│                           ├── hepaticvessel_004.nii.gz
│                           ├── ...
│                           └── hepaticvessel_455.nii.gz
│                   ├── unetr_pp_Data_plans_v2.1_stage1
│                       ├── test
│                           ├── hepaticvessel_001.nii.gz
│                           ├── hepaticvessel_004.nii.gz
│                           ├── ...
│                           └── hepaticvessel_455.nii.gz
│                   └── unetr_pp_Plansv2.1_plans_3D.pkl

MSD dataset: link.

Our MSD-testset(50) is 1, 4, 9, 10, 11, 13, 15, 21, 27, 44, 50, 52, 53, 62, 66, 69, 71, 75, 82, 89, 91, 92, 101, 116, 117, 124, 136, 140, 147, 171, 179, 183, 213, 215, 229, 245, 265, 269, 275, 287, 305, 307, 359, 375, 377, 399, 425, 441, 445, 455.

Model Checkpoint

GUNETR_pplus_LiTS
├── output_synapse                 
│   ├── 3d_fullres
│       ├── Task002_Synapse                   
│           ├── unetr_pp_trainer_synapse__unetr_pp_Plansv2.1        
│               ├── fold_4
│                   ├── validation_raw
│                   ├── model_best.model
│                   └── model_best.model.pkl

Whole-liver-best chekcpoint: link.


Implementation

  1. Make whole npy files
$> python MSD_npy_make.py

You select the options, whole.

  1. Evaluation script
$> cd ./evaluation_scripts
$> sh run_evaluation_synapse.sh

You select the options, whole.

  1. Calculation metrics Please see our jupyter notebook.
    We implemented all of metric classes.

You can control post-processing option through flag_post = True.


Result

MSD

Model DSC ASSD MSSD
Ours (w pp) 0.9752(±0.009) 0.7700 18.1107
Ours (w/o pp) 0.9753(±0.010) 1.5421 45.0481

References

UNETR++


Citation

@ARTICLE{
  title={G-UNETR++: A gradient-enhanced network for accurate and robust liver segmentation from CT images}, 
  author={Seungyoo Lee, Kyujin Han, Hangyeul Shin, Harin Park, Xiaopeng Yang, Jae Do Yang, Hee Chul Yu, Heecheon You},
  journal={}, 
  year={2024},
  doi={}}

About

GUNETR_pplus: Gradient enhanced UNETR_pplus with MSD liver segmentation

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published