OV-DEIM
OV-DEIM è un rilevatore di oggetti a vocabolario aperto in stile DETR, che abbina le query del decoder agli embedding testuali di un text tower MobileCLIP incluso. LibreYOLO lo porta nativamente come famiglia di sola predizione nel suo livello di rilevatori a vocabolario aperto.
- Task
- detection
- Dimensioni
- s, m, l at 640 px
- Installa
pip install libreyolo- Livello di supporto
- Livello parallelo, dalla v. Un'interfaccia di prodotto separata, con una propria factory e un proprio contratto.
- Licenze
- Codice Apache-2.0, pesi CC BY-NC 4.0. Uso commerciale
Installazione
OV-DEIM si carica attraverso il livello dei rilevatori a vocabolario aperto di
LibreYOLO, che richiede l'extra openvocab:
pip install "libreyolo[openvocab]"A differenza del resto di questo livello, OV-DEIM è un port nativo di LibreYOLO
e non un wrapper di transformers, non esiste una classe di modello
transformers per questa famiglia, ma lo stesso extra copre i pacchetti
huggingface_hub, safetensors, regex e ftfy che le servono al momento
della predizione.
Predizione
OV-DEIM non è un checkpoint che LibreYOLO carica con LibreYOLO(). Si carica
con la factory gemella LibreOpenVocab, che al primo utilizzo scarica uno
snapshot di Hugging Face e lo mette in cache sotto weights/.
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)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) # Una seconda chiamata a set_classes() sostituisce del tutto il# vocabolario e ne ricalcola gli embedding con il text tower; un# risultato vuoto è un esito valido e non un errore.model.set_classes(["giraffe"])second = model.predict(SAMPLE_IMAGE, conf=0.5)print(second.names, len(second))set_classes() imposta un vocabolario testuale persistente: chiamalo di nuovo
per sostituire del tutto la lista, oppure saltalo per tenere le etichette
COCO-80 predefinite, e un risultato vuoto è un esito valido e non un errore.
Ogni query del decoder viene valutata per similarità coseno rispetto agli
embedding testuali di un text tower MobileCLIP-B(LT) incluso, calcolati al
momento per qualunque vocabolario sia impostato e tenuti in cache finché non
cambia, così qualsiasi prompt funziona senza nessun file di embedding
precalcolato.
OV-DEIM non ha una soglia sui token di testo: solo conf filtra i rilevamenti,
e passare text_threshold solleva un errore. Il matching è una selezione top-K
uno a uno, quindi qui non gira nessuna non-maximum suppression, e iou viene
accettato per compatibilità di API ma emette un avviso e non fa nulla. imgsz e
augment=True vengono rifiutati del tutto: il modello ha un suo input
letterboxed fisso, e la test-time augmentation è fuori dallo scopo di questo
livello. predict() su una singola immagine restituisce un solo Results, non
una lista; passa una cartella, una lista di immagini o stream=True per una
sorgente video per averne diversi. Non esiste una strada da CLI per questa
famiglia, libreyolo predict carica solo checkpoint .pt attraverso
LibreYOLO(), quindi le famiglie LibreOpenVocab si eseguono da Python. Vedi
predizione per i tipi di sorgente e lo streaming.
Ogni chiamata a predict() esegue anche il text tower MobileCLIP-B(LT) incluso
per calcolare gli embedding del vocabolario corrente; vedi Licenze per cosa
aggiunge ai termini d'uso.
Varianti
Tre checkpoint, s, m e l. s è la dimensione predefinita di questo
livello quando non se ne indica nessuna. A differenza del resto di questo
livello, OV-DEIM è un port nativo e non un wrapper di transformers: LibreYOLO
incorpora i moduli del rilevatore sotto la stessa licenza Apache-2.0 del codice
upstream e riusa l'adattatore di backbone DINOv3 già costruito per la famiglia
DEIMv2. Il backbone del checkpoint l è un fine-tune di DINOv3-S, con licenza a
parte sotto la DINOv3 License di Meta. Per questa famiglia non sono ancora
pubblicati numeri di accuratezza o di latenza.
L'addestramento, la validazione su dataset e l'esportazione sono tutti fuori
dallo scopo di questo livello: train(), val() ed export() sollevano tutti
NotImplementedError senza condizioni. Questo è un wrapper di sola predizione
attorno a un checkpoint pubblicato.
Checkpoint
Tutti i file di pesi pubblicati per questa famiglia.
| File | Ingresso (px) | Licenza dei pesi |
|---|---|---|
| Detection | ||
| LibreOVDEIMs.pt | 640 | cc-by-nc-4.0 |
| LibreOVDEIMm.pt | 640 | cc-by-nc-4.0 |
| LibreOVDEIMl.pt | 640 | cc-by-nc-4.0 |
Oggi tutti i file elencati sopra sono presenti nell<link>organizzazione LibreYOLO</link> e vengono scaricati al primo utilizzo.
Licenze
Controlla la licenza nel repository Hugging Face degli specifici pesi che scarichi. Ogni checkpoint nell<link>organizzazione LibreYOLO</link> ne include una e non è sempre la stessa per tutta la famiglia. Quel repository è la fonte autorevole; il riepilogo seguente descrive le condizioni applicabili al momento dellultima verifica di questa pagina.
Questa è una descrizione delle licenze coinvolte, non una consulenza legale. Se la risposta è importante a fini commerciali, leggi personalmente le licenze e chiedi una consulenza indipendente.
- Lavoro originale
- OV-DEIM, Leilei Wang et al.
- Licenza upstream
- CC BY-NC 4.0
- Sorgente upstream
- github.com/wleilei/OV-DEIM
- Codice LibreYOLO
- MIT
- Pesi
- CC BY-NC 4.0, ripubblicati su huggingface.co/LibreYOLO
- Interpretazione
- 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 sovrappone tre licenze upstream a ogni chiamata di predizione: i pesi
del rilevatore sotto la CC BY-NC 4.0 di OV-DEIM stesso, il text tower eseguito
al momento sotto la Machine Learning Research Model license di Apple (solo per
uso di ricerca) e, per il checkpoint l, un fine-tune del backbone DINOv3-S
sotto la DINOv3 License di Meta. I testi di tutte e tre le licenze sono
distribuiti dentro il repository dei pesi di LibreYOLO.
Citazione
@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},
}Copiato dal blocco di citazione degli autori disponibile su github.com/wleilei/OV-DEIM#4-citation.