RedDino-small

RedDino is a self-supervised Vision Transformer foundation model specifically designed for red blood cell (RBC) image analysis.
This variant is the compact model in the family, delivering strong performance with lighter computational cost.

It leverages a tailored version of the DINOv2 framework, trained on a meticulously curated dataset of RBC images from diverse acquisition modalities and sources.
The model excels at extracting robust features for downstream hematology tasks such as shape classification, morphological subtype recognition, and batch-effectโ€“robust analysis.

๐Ÿง  Developed by Luca Zedda, Andrea Loddo, Cecilia Di Ruberto, and Carsten Marr
๐Ÿฅ University of Cagliari & Helmholtz Munich
๐Ÿ“„ Preprint: arXiv:2508.08180


Model Details

  • Architecture: ViT-small, patch size 14
  • SSL framework: DINOv2 (customized for RBC morphology)
  • Pretraining dataset: Curated RBC images from 18 datasets (multiple modalities and sources)
  • Embedding size: 384
  • Intended use: RBC morphology classification, feature extraction, batch-effectโ€“robust analysis

Notes:

  • Trained with RBC-specific augmentations and DINOv2 customizations (e.g., removal of KoLeo regularizer; Sinkhorn-Knopp centering).
  • Optimized using smear patches rather than only single-cell crops to improve generalization across sources.

Example Usage

from PIL import Image
from torchvision import transforms
import timm
import torch

# Load model from Hugging Face Hub
model = timm.create_model("hf_hub:Snarcy/RedDino-small", pretrained=True)
model.eval()
device = "cuda" if torch.cuda.is_available() else "cpu"
model.to(device)

# Load and preprocess image
image = Image.open("path/to/rbc_image.jpg").convert("RGB")
transform = transforms.Compose([
    transforms.Resize((224, 224)),
    transforms.ToTensor(),
    transforms.Normalize(mean=[0.485, 0.456, 0.406],
                         std=[0.229, 0.224, 0.225]),
])
input_tensor = transform(image).unsqueeze(0).to(device)

# Extract features
with torch.no_grad():
    embedding = model(input_tensor)

๐Ÿ“ Citation

If you use this model, please cite the following paper:

RedDino: A foundation model for red blood cell analysis
Luca Zedda, Andrea Loddo, Cecilia Di Ruberto, Carsten Marr โ€” 2025
Preprint: arXiv:2508.08180. https://arxiv.org/abs/2508.08180

@misc{zedda2025reddinofoundationmodelred,
      title={RedDino: A foundation model for red blood cell analysis}, 
      author={Luca Zedda and Andrea Loddo and Cecilia Di Ruberto and Carsten Marr},
      year={2025},
      eprint={2508.08180},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2508.08180}, 
}
Downloads last month
12
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Collection including Snarcy/RedDino-small

Evaluation results