Model Zoo

June 22, 2026 · View on GitHub

All three model families are vendored in animaloc/models/ and registered in the MODELS registry. They produce single-channel FIDT heatmaps and share the same evaluation/stitching/peak-detection infrastructure.

ModelBackboneSource fileRegistry name(s)Notes
OWL-CDLA-34animaloc/models/owl_c.pyOWLCHerdNet detection branch — the baseline.
OWL-TDLA-34 + Swin transformer multiscale residualanimaloc/models/owl_t.pyOWLTAdds windowed self-attention at multiple scales for sharper localization on cluttered backgrounds.
OWL-D-SDINOv3 ViT-S/16 + DPT decoderanimaloc/models/owl_d.pyOWLD_S~22M backbone params. Lightest; benefits most from full backbone fine-tuning.
OWL-D-BDINOv3 ViT-B/16 + DPT decoderanimaloc/models/owl_d.pyOWLD_B~86M backbone params. Quality/speed balance; partial fine-tuning recommended.
OWL-D-LDINOv3 ViT-L/16 + DPT decoderanimaloc/models/owl_d.pyOWLD_L~307M backbone params. Use with frozen backbone and feature caching. Two weight files available (LVD-1.6B default; SAT-493M for satellite imagery).
OWL-D-HDINOv3 ViT-H+/16 + DPT decoderanimaloc/models/owl_d.pyOWLD_H~840M backbone params. Highest quality; strongly recommended to use frozen backbone with feature caching.

The legacy HerdNet multi-class model is also registered (HerdNet).

Pretrained weights

All OWL benchmark checkpoints are now released on Zenodo (record 20802844) — nothing is pending.

FileModelRegistryNotes
Caribou-OWL-C.pthOWL-C (caribou)OWLCCaribou-specific; reproduces the paper headline (F1 = 0.965 on the caribou test split).
OWL-C.pthOWL-COWLCGeneral overhead benchmark (trained on public aerial datasets).
OWL-T.pthOWL-TOWLTGeneral overhead benchmark; Swin multi-scale residual.
OWL-D.pthOWL-DOWLD_HGeneral overhead benchmark; DINOv3 ViT-H+/16 + DPT decoder.

The general OWL-C / OWL-T / OWL-D checkpoints are trained on public overhead datasets, not on caribou — evaluating them on the caribou test set is a zero-shot, cross-domain check. See Datasets for downloads and the Caribou Demo to run and compare them.

!!! note OWL-D.pth is a full-model checkpoint that already contains its (frozen) DINOv3 backbone, so it loads with pretrained=False and does not require the separate Meta DINOv3 backbone download. The separate DINOv3 weights (see INSTALL.md) are only needed to train an OWL-D model from scratch.

Loading a model

from animaloc.models import MODELS

model = MODELS.get("OWLD_B")(
    down_ratio=2,
    freeze_backbone=True,
    unfreeze_last_n=0,
)

For training and evaluation via the bundled Hydra configs, see Training, Evaluation, and Inference.

Architecture references