OV-DEIM
OV-DEIM es un detector de objetos de vocabulario abierto al estilo DETR que empareja las queries del decoder con embeddings de texto de una torre de texto MobileCLIP incluida. LibreYOLO lo porta de forma nativa como una familia solo de predicción dentro de su tier de detectores de vocabulario abierto.
- Tareas
- detection
- Tamaños
- s, m, l at 640 px
- Instalación
pip install libreyolo- Nivel de compatibilidad
- Nivel hermano, desde v. Una superficie de producto independiente con su propia factoría y su propio contrato.
- Licencias
- Código Apache-2.0, pesos CC BY-NC 4.0. Uso comercial
Instalación
OV-DEIM se carga a través del tier de detectores de vocabulario abierto de
LibreYOLO, que necesita el extra openvocab:
pip install "libreyolo[openvocab]"A diferencia del resto de este tier, OV-DEIM es un port nativo de LibreYOLO en
lugar de un wrapper de transformers, no existe ninguna clase de modelo de
transformers para él, pero el mismo extra cubre los paquetes
huggingface_hub, safetensors, regex y ftfy que necesita en el momento
de la predicción.
Predicción
OV-DEIM no es un checkpoint que LibreYOLO cargue a través de LibreYOLO(). Se
carga a través de la factoría hermana LibreOpenVocab, que descarga un
snapshot de Hugging Face en el primer uso y lo cachea en 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 segunda llamada a set_classes() sustituye el vocabulario por# completo y lo vuelve a embeber a través de la torre de texto; un# resultado vacío es un desenlace válido, no un error.model.set_classes(["giraffe"])second = model.predict(SAMPLE_IMAGE, conf=0.5)print(second.names, len(second))set_classes() fija un vocabulario de texto persistente: vuelve a llamarla
para sustituir la lista por completo, u omítela para conservar las etiquetas
COCO-80 por defecto, y un resultado vacío es un desenlace válido, no un error.
Cada query del decoder se puntúa por similitud del coseno frente a los
embeddings de texto de una torre de texto MobileCLIP-B(LT) incluida,
calculados en línea para el vocabulario que esté fijado y cacheados hasta que
cambie, así que funcionan prompts arbitrarios sin ningún archivo de embeddings
precalculados.
OV-DEIM no tiene umbral de token de texto: solo conf filtra las detecciones,
y pasar text_threshold lanza un error. La coincidencia es una selección
top-K uno a uno, así que aquí nada ejecuta non-maximum suppression, e iou se
acepta por compatibilidad de la API, pero avisa y no hace nada. imgsz y
augment=True se rechazan directamente: el modelo tiene su propia entrada con
letterbox fijo, y el aumento de datos en tiempo de test queda fuera del
alcance de este tier. predict() sobre una única imagen devuelve un
Results, no una lista; pasa un directorio, una lista de imágenes o
stream=True con una fuente de vídeo para obtener varios. No hay ruta de CLI
para esta familia, libreyolo predict solo carga checkpoints .pt a través
de LibreYOLO(), así que las familias de LibreOpenVocab se ejecutan desde
Python. Consulta predicción para tipos de fuente y streaming.
Cada llamada a predict() ejecuta también la torre de texto MobileCLIP-B(LT)
incluida para embeber el vocabulario actual; consulta Licencia para ver qué
añade eso a los términos.
Variantes
Tres checkpoints, s, m y l. s es el tamaño por defecto de este tier
cuando no se indica ninguno. A diferencia del resto de este tier, OV-DEIM es
un port nativo en lugar de un wrapper de transformers: LibreYOLO incorpora
los módulos del detector bajo la misma licencia Apache-2.0 que el código
upstream y reutiliza el adaptador de backbone DINOv3 ya construido para la
familia DEIMv2. El backbone del checkpoint l es un fine-tune de DINOv3-S,
con licencia aparte bajo la DINOv3 License de Meta. Todavía no hay cifras
publicadas de precisión ni de latencia para esta familia.
El entrenamiento, la validación de datasets y la exportación quedan todos
fuera del alcance de este tier: train(), val() y export() lanzan
NotImplementedError de forma incondicional. Esto es un wrapper solo de
predicción alrededor de un checkpoint publicado.
Checkpoints
Todos los archivos de pesos publicados de esta familia.
| Archivo | Entrada (px) | Licencia de los pesos |
|---|---|---|
| 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 |
Todos los archivos anteriores existen hoy en la organización de LibreYOLO y se descargan la primera vez que se usan.
Licencia
Comprueba la licencia en el repositorio de Hugging Face de los pesos concretos que descargues. Cada checkpoint de la organización de LibreYOLO incluye una, y no siempre es la misma en toda una familia. Ese repositorio es la fuente autorizada; el resumen siguiente describe qué se aplicaba cuando se verificó esta página por última vez.
Esta es una descripción de las licencias implicadas, no asesoramiento legal. Si la respuesta es importante a nivel comercial, lee las licencias y busca tu propio asesoramiento.
- Trabajo original
- OV-DEIM, Leilei Wang et al.
- Licencia del proyecto original
- CC BY-NC 4.0
- Fuente del proyecto original
- github.com/wleilei/OV-DEIM
- Código de LibreYOLO
- MIT
- Pesos
- CC BY-NC 4.0, republicados en huggingface.co/LibreYOLO
- Interpretación
- 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 superpone tres licencias upstream a cada llamada de predicción: los
pesos del detector bajo la CC BY-NC 4.0 propia de OV-DEIM, la torre de texto
en línea bajo la Machine Learning Research Model license de Apple (solo para
uso de investigación) y, en el caso del checkpoint l, un fine-tune del
backbone DINOv3-S bajo la DINOv3 License de Meta. Los textos de las tres
licencias se incluyen dentro del repositorio de pesos de LibreYOLO.
Cita
@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},
}Copiado del bloque de cita de los autores en github.com/wleilei/OV-DEIM#4-citation.