Colorist — DenseNet121 on BloodMNIST (seed 265017005)
One checkpoint from the model zoo accompanying "Simple, Safe, and Overlooked: Reclaiming Sustainable Domain Generalization with Statistical Color Matching" (MICCAI DEMI 2026, arXiv:2608.18915).
Colorist is a training-free augmentation: it matches each colour channel's first two moments to those of a randomly drawn style image. That is a per-pixel affine map, so it leaves the spatial anatomical layout untouched. The augmentation has no parameters, so there are no weights for it. This repository holds a downstream artefact: a DenseNet121 trained with it on BloodMNIST, using RGB mean-standard-deviation matching applied with probability 0.3.
Model Details
- Developed by: Sebastian Doerrich, xAILab Bamberg, University of Bamberg
- Model type: DenseNet121 image classifier (
timm), trained from scratch on BloodMNIST - License: MIT. The weights carry the code's license; training used no framework imposing stronger terms. The training data does not — BloodMNIST keeps its own license and is not redistributed here.
Sources
- Paper: https://arxiv.org/abs/2608.18915
- Code: https://github.com/sdoerrich97/colorist
- Package: https://pypi.org/project/colorist-aug/
- Collection: all 57 checkpoints are grouped in the Colorist collection
Usage
from colorist import load_pretrained_classifier
model, config = load_pretrained_classifier("bloodmnist", seed=265017005)
Needs the optional extra: pip install "colorist-aug[weights]". Preprocess with the
normalization in config.json; ImageNet statistics are not what this was trained on.
| Dataset | BloodMNIST (bloodmnist) |
| Classes | 8 (multi-class) |
| Input | 224 x 224 RGB |
| Seed | 265017005 |
Results
Test balanced accuracy on BloodMNIST, for every published seed:
| Seed | Test balanced accuracy |
|---|---|
71397589 |
0.9822 |
133560673 |
0.9855 |
265017005 |
0.9865 |
Mean over seeds 0.9848 (sd 0.0023).
Trained without any augmentation, the same architecture reaches 0.9793 on this dataset.
Read the three seeds together, not this one alone. Every number in the paper is a mean over all three, and on the small covariate-shift benchmarks the spread between them is large. The other two:
sdoerrich97/colorist_densenet121_bloodmnist_s71397589sdoerrich97/colorist_densenet121_bloodmnist_s133560673sdoerrich97/colorist_densenet121_bloodmnist_s265017005← this one
Do not average these checkpoints into one. They are trained from scratch with different initialisations, so they occupy different loss basins and averaging their weights cancels their features rather than combining them: measured on BloodMNIST, the three seeds score 0.9844 / 0.9886 / 0.9918 and their weight-average scores 0.1250, which is exactly chance for 8 classes.
Limitations
- Photometric shift only. The transform is affine per pixel and changes no geometry, so it does not address geometric or resolution shift.
- A research artefact. Not validated for clinical use; not for diagnosis.
Citation
@article{doerrich2026colorist,
title = {Simple, Safe, and Overlooked: Reclaiming Sustainable Domain
Generalization with Statistical Color Matching},
author = {Doerrich, Sebastian and Di Salvo, Francesco and
Rai, Shyam Nandan and Lents, Marco and Ledig, Christian},
year = {2026},
eprint = {2608.18915},
archivePrefix = {arXiv},
primaryClass = {cs.CV},
url = {https://arxiv.org/abs/2608.18915}
}
- Downloads last month
- 16