OV-DEIM

OV-DEIM is a DETR-style open-vocabulary object detector that matches decoder queries to text embeddings from a bundled MobileCLIP text tower. LibreYOLO ports it natively as a predict-only family in its open-vocabulary detector tier.

Tasks
detection
Sizes
s, m, l at 640 px
Install
pip install libreyolo
Support tier
Sibling tier, since v. A separate product surface with its own factory and contract.
Upstream
OV-DEIM by Leilei Wang et al., CC BY-NC 4.0. Paper, source
Licenses
Code Apache-2.0, weights CC BY-NC 4.0. Commercial use

Install

OV-DEIM loads through LibreYOLO's open-vocabulary detector tier, which needs the openvocab extra:

bash
pip install "libreyolo[openvocab]"

Unlike the rest of this tier, OV-DEIM is a native LibreYOLO port rather than a transformers wrapper, no transformers model class exists for it, but the same extra covers the huggingface_hub, safetensors, regex and ftfy packages it needs at predict time.

Predict

OV-DEIM is not a checkpoint LibreYOLO loads through LibreYOLO(). It loads through the sibling LibreOpenVocab factory, which downloads a Hugging Face snapshot on first use and caches it under weights/.

Python
from libreyolo import LibreOpenVocab, SAMPLE_IMAGE model = LibreOpenVocab("ov-deim-s")model.set_classes(["person", "dog", "skateboard"]) result = model.predict(SAMPLE_IMAGE, conf=0.25)for box in result.boxes:    print(box.cls, box.conf, box.xyxy)
Replace the vocabulary
from libreyolo import LibreOpenVocab, SAMPLE_IMAGE model = LibreOpenVocab("ov-deim-l")model.set_classes(["traffic light", "bicycle"])first = model.predict(SAMPLE_IMAGE, conf=0.3) # A second call to set_classes() replaces the vocabulary outright and# re-embeds it through the text tower; an empty result is a valid# outcome rather than an error.model.set_classes(["giraffe"])second = model.predict(SAMPLE_IMAGE, conf=0.5)print(second.names, len(second))

set_classes() sets a sticky text vocabulary: call it again to replace the list outright, or skip it to keep the default COCO-80 labels, and an empty result is a valid outcome rather than an error. Each decoder query is scored by cosine similarity against text embeddings from a bundled MobileCLIP-B(LT) text tower, computed online for whatever vocabulary is set and cached until it changes, so arbitrary prompts work without any precomputed embedding file.

OV-DEIM has no text-token threshold: only conf filters detections, and passing text_threshold raises. Matching is one-to-one top-K selection, so nothing here runs non-maximum suppression, and iou is accepted for API compatibility but warns and does nothing. imgsz and augment=True are rejected outright: the model owns a fixed letterboxed input, and test-time augmentation is out of scope for this tier. predict() on a single image returns one Results, not a list; pass a directory, a list of images, or stream=True for a video source to get several. There is no CLI path for this family, libreyolo predict only loads .pt checkpoints through LibreYOLO(), so LibreOpenVocab families run from Python. See prediction for source types and streaming.

Every call to predict() also runs the bundled MobileCLIP-B(LT) text tower to embed the current vocabulary; see Licensing for what that adds to the terms.

Variants

Three checkpoints, s, m and l. s is this tier's default size when none is given. Unlike the rest of this tier, OV-DEIM is a native port rather than a transformers wrapper: LibreYOLO vendors the detector modules under the same Apache-2.0 license as the upstream code and reuses the DINOv3 backbone adapter already built for the DEIMv2 family. The l checkpoint's backbone is a DINOv3-S fine-tune, licensed separately under Meta's DINOv3 License. No accuracy or latency numbers are published for this family yet.

Training, dataset validation and export are all out of scope for this tier: train(), val() and export() all raise NotImplementedError unconditionally. This is a predict-only wrapper around a published checkpoint.

Checkpoints

Every published weight file for this family.

FileInput (px)Weights license
Detection
LibreOVDEIMs.pt640cc-by-nc-4.0
LibreOVDEIMm.pt640cc-by-nc-4.0
LibreOVDEIMl.pt640cc-by-nc-4.0

Every file above exists in the LibreYOLO org today and downloads on first use.

Licensing

Check the license on the Hugging Face repository of the specific weights you download. Every checkpoint in the LibreYOLO org carries one, and they are not always the same across a family. That repository is the authoritative source; the summary below describes what applied when this page was last verified.

This is a description of the licenses involved, not legal advice. If the answer matters commercially, read the licenses yourself and take your own counsel.

Original work
OV-DEIM, Leilei Wang et al.
Upstream license
CC BY-NC 4.0
LibreYOLO code
MIT
Weights
CC BY-NC 4.0, republished at huggingface.co/LibreYOLO
Interpretation
OV-DEIM's code is Apache-2.0; LibreYOLO's port keeps that license and preserves the original RT-DETR and DEIMv2 attribution headers. The published S, M and L checkpoints carry a separate CC BY-NC 4.0 license: redistribution and format conversion are permitted with attribution, but only for non-commercial use, confirmed directly by the upstream author. Every prediction also runs a bundled MobileCLIP-B(LT) text tower, loaded unchanged from Apple's own release, to embed the vocabulary online; those weights carry the Apple Machine Learning Research Model license, which permits redistribution with the license text, an attribution notice and a record of modifications, but restricts use to research, a stricter term than CC BY-NC 4.0 that applies to every call this family makes. The `l` checkpoint's DINOv3-S backbone fine-tune is separately subject to Meta's DINOv3 License.

OV-DEIM layers three upstream licenses onto every prediction call: the detector weights under OV-DEIM's own CC BY-NC 4.0, the online text tower under Apple's Machine Learning Research Model license (research use only), and, for the l checkpoint, a DINOv3-S backbone fine-tune under Meta's DINOv3 License. All three license texts ship inside the LibreYOLO weight repository.

Citation

@misc{wang2026ovdeim,
      title={OV-DEIM: Real-time DETR-Style Open-Vocabulary Object Detection with GridSynthetic Augmentation}, 
      author={Leilei Wang and Longfei Liu and Xi Shen and Xuanlong Yu and Ying Tiffany He and Fei Richard Yu and Yingyi Chen},
      year={2026},
      eprint={2603.07022},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2603.07022}, 
}

Copied from the authors' citation block at github.com/wleilei/OV-DEIM#4-citation.

Verified against LibreYOLO v1.5.0. Support tables, checkpoints and benchmark numbers on this page are generated from the released library and the published weights, not written by hand.