Model Zoo of U-Bench: A Comprehensive Understanding of U-Net through 100-Variant Benchmarking
We provide the training weights of 100 U-Net variants on 20 in-domain medical image segmentation datasets. π«‘
Abstract
Over the past decade, U-Net has been the dominant architecture in medical image segmentation, leading to the development of thousands of U-shaped variants. Despite its widespread adoption, a comprehensive benchmark to systematically assess the performance and utility of these models is lacking, primarily due to insufficient statistical validation and limited attention to efficiency and generalization across diverse datasets. To address this gap, we present U-Bench, the first large-scale, statistically rigorous benchmark that evaluates 100 U-Net variants across 28 datasets and 10 imaging modalities. Our contributions are threefold: (1) Comprehensive Evaluation: U-Bench evaluates models along three key dimensions: statistical robustness, zero-shot generalization, and computational efficiency. We introduce a novel metric, U-Score, which jointly captures the performance-efficiency trade-off, offering a deployment-oriented perspective on model progress. (2) Systematic Analysis and Model Selection Guidance: We summarize key findings from the large-scale evaluation and systematically analyze the impact of dataset characteristics and architectural paradigms on model performance. Based on these insights, we propose a model advisor agent to guide researchers in selecting the most suitable models for specific datasets and tasks. (3) Public Availability: We provide all code, models, protocols, and weights, enabling the community to reproduce our results and extend the benchmark with future methods. In summary, U-Bench not only exposes gaps in previous evaluations but also establishes a foundation for fair, reproducible, and practically relevant benchmarking in the next decade of U-Net-based segmentation models.
Quick Inference
Dataset Usage
Please put the Dataset Access or your own dataset as the following architecture:
βββ U-Bench
βββ data
βββ busi
βββ images
| βββ benign (10).png
β βββ malignant (17).png
β βββ ...
|
βββ masks
βββ 0
| βββ benign (10).png
| βββ malignant (17).png
| βββ ...
βββ your dataset
βββ images
| βββ 0a7e06.png
β βββ ...
|
βββ masks
βββ 0
| βββ 0a7e06.png
| βββ ...
βββ dataloader
βββ models
βββ utils
βββ script
βββ main.py
βββ main_multi3d.py
Inference:
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/busi --dataset_name busi --zero_shot_base_dir ./data/bus --zero_shot_dataset_name bus
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/BUSBRA --dataset_name BUSBRA --zero_shot_base_dir ./data/bus --zero_shot_dataset_name bus
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/tuscui --dataset_name tuscui --zero_shot_base_dir ./data/TUCC-test/malignant --zero_shot_dataset_name malignant
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/isic18 --dataset_name isic18 --zero_shot_base_dir ./data/PH2-test --zero_shot_dataset_name PH2-test
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/uwaterlooskincancer --dataset_name uwaterlooskincancer
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/Kvasir-SEG --dataset_name Kvasir-SEG --zero_shot_base_dir ./data/Kvasir-test --zero_shot_dataset_name cvc300 --val_file_dir CVC-300val.txt
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --dataset_name CHASEDB1 --base_dir ./data/CHASEDB1 --zero_shot_dataset_name DRIVE --zero_shot_base_dir ./data/DRIVE
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/DRIVE --dataset_name DRIVE --zero_shot_base_dir ./data/CHASEDB1 --zero_shot_dataset_name CHASEDB1
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/DSB2018 --dataset_name DSB2018 --zero_shot_base_dir ./data/MonuSeg2018-test --zero_shot_dataset_name MonuSeg2018-test
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/Glas --dataset_name Glas
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/monusac --dataset_name monusac
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/cellnuclei --dataset_name cellnuclei
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/covidquex --dataset_name covidquex --zero_shot_base_dir ./data/mosmedplus --zero_shot_dataset_name mosmedplus
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/Montgomery --dataset_name Montgomery --zero_shot_base_dir ./data/NIH-test --zero_shot_dataset_name NIH-test
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/dca1 --dataset_name dca1
python main.py --max_epochs 300 --gpu 0 --batch_size 8 --just_for_test True --model U_Net --base_dir ./data/cystoidfluid --dataset_name cystoidfluid
Citation
If using this work (dataset, weights, or benchmark results), please cite:
@article{tang2025u,
title={U-Bench: A Comprehensive Understanding of U-Net through 100-Variant Benchmarking},
author={Tang, Fenghe and Dong, Chengqi and Ma, Wenxin and Xu, Zikang and Zhu, Heqin and Jiang, Zihang and Wang, Rongsheng and Wang, Yuhao and Wu, Chenxu and Zhou, Shaohua Kevin},
journal={arXiv preprint arXiv:2510.07041},
year={2025}
}
Contact Information For any questions or removal requests, please contact us through the following channels:
Email: [email protected] GitHub Issues: Open Issue