GenSeg-Baselines / README.md
MaybeRichard's picture
README: code-only repo; unified-512 resolution-fair protocol (done)
55acc31 verified
|
Raw
History Blame Contribute Delete
2.08 kB
metadata
license: cc-by-nc-4.0
tags:
  - medical-imaging
  - segmentation
  - benchmark

GenSeg-Baselines

Reproducible code for a 2D medical-image segmentation benchmark: 8 methods × 10 datasets × 3 seeds/folds, 7 metrics, evaluated under a unified resolution-fair protocol. Companion to the GenSegDataset.

This is a code-only repository — trained checkpoints and the generated result tables are not hosted here.

Methods: UNet, UNet++, DeepLabV3+ (ResNet-50/ImageNet), Attention-UNet (from scratch), TransUNet (R50-ViT-B/16, input 256), Swin-UNet (Swin-Tiny, input 224), nnU-Net v2 (250 ep), U-Mamba (UMambaBot, 100 ep).

Datasets: cvc_clinicdb, kvasir_seg, fives, busi, refuge2, acdc, idridd, pannuke, isic2018, kits19.

Metrics (computed per image, then aggregated): Dice, IoU, HD95, ASSD, Sensitivity, Specificity, Precision — plus per-class Dice for the multi-class datasets and paired-Wilcoxon significance on per-image Dice.

Resolution-fair protocol

Convolutional nets are trained at 512; the fixed-input transformers (Swin-UNet 224, TransUNet 256) and nnU-Net / U-Mamba run at their native size; every prediction and ground truth is resized to a common 512×512 before scoring, so boundary metrics (HD95/ASSD, in pixels) are directly comparable across methods.

Layout (code only)

  • code/framework/ — training/evaluation framework: train.py, test.py, eval_at_res.py, nnunet_eval.py; metrics/ (the 7 metrics + boundary distances); models/ (SMP wrappers, Attention-UNet, Swin/TransUNet wrappers, model registry); report/aggregate.py builds the summary tables (per-dataset Dice/HD95/IoU, per-class Dice, Sensitivity/Precision, significance).
  • code/sota/{Swin-Unet,TransUNet}/ — upstream network definitions imported by the Swin-UNet / TransUNet wrappers.
  • code/scripts/ — reproduction scripts (unified-512 training & evaluation, nnU-Net / U-Mamba pipelines).
  • code/envs/ — conda environments (seggen.yml, nnunet.yml, umamba.yml).