OV-DEIM
OV-DEIM — детектор объектов с открытым словарём в стиле DETR, который сопоставляет запросы декодера с текстовыми эмбеддингами из встроенной текстовой башни MobileCLIP. LibreYOLO портирует его нативно как семейство только для предсказания на своём уровне детекторов с открытым словарём.
- Задачи
- detection
- Размеры
- s, m, l at 640 px
- Установка
pip install libreyolo- Уровень поддержки
- Смежный уровень, начиная с v. Отдельная часть продукта со своей фабрикой и контрактом.
- Исходный проект
- OV-DEIM от Leilei Wang et al., CC BY-NC 4.0. Статья, исходный код
- Лицензии
- Код: Apache-2.0, веса: CC BY-NC 4.0. Коммерческое использование
Установка
OV-DEIM загружается через уровень детекторов с открытым словарём в LibreYOLO,
которому нужен extra openvocab:
pip install "libreyolo[openvocab]"В отличие от остальных моделей этого уровня, OV-DEIM — нативный порт в
LibreYOLO, а не обёртка над transformers, класса модели transformers для
него не существует, но тот же extra покрывает пакеты huggingface_hub,
safetensors, regex и ftfy, которые нужны ему на этапе предсказания.
Предсказание
OV-DEIM — не тот чекпойнт, который LibreYOLO загружает через LibreYOLO(). Он
загружается через соседнюю фабрику LibreOpenVocab: она скачивает снапшот с
Hugging Face при первом запуске и кэширует его в 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) # Повторный вызов set_classes() полностью заменяет словарь и заново# считает его эмбеддинги через текстовую башню; пустой результат —# это допустимый исход, а не ошибка.model.set_classes(["giraffe"])second = model.predict(SAMPLE_IMAGE, conf=0.5)print(second.names, len(second))set_classes() задаёт постоянный текстовый словарь: вызовите его ещё раз,
чтобы полностью заменить список, или не вызывайте вовсе, чтобы остались
стандартные метки COCO-80, причём пустой результат — это допустимый исход, а не
ошибка. Каждый запрос декодера оценивается по косинусной близости с текстовыми
эмбеддингами из встроенной текстовой башни MobileCLIP-B(LT), они считаются на
лету для того словаря, который задан, и кэшируются до его смены, поэтому
произвольные запросы работают без заранее посчитанного файла эмбеддингов.
У OV-DEIM нет порога по текстовым токенам: детекции фильтрует только conf, а
передача text_threshold вызывает ошибку. Сопоставление — это отбор top-K один
к одному, поэтому подавления немаксимумов здесь не происходит, а iou
принимается ради совместимости API, но выдаёт предупреждение и ничего не
делает. imgsz и augment=True отклоняются сразу: у модели собственный
фиксированный вход с letterbox, а аугментация на этапе предсказания выходит за
рамки этого уровня. predict() на одном изображении возвращает один Results,
а не список; чтобы получить несколько, передайте директорию, список изображений
или stream=True для видеоисточника. CLI-пути у этого семейства нет,
libreyolo predict загружает только чекпойнты .pt через LibreYOLO(),
поэтому семейства LibreOpenVocab запускаются из Python. Про типы источников и
стриминг см. предсказание.
Каждый вызов predict() дополнительно прогоняет встроенную текстовую башню
MobileCLIP-B(LT), чтобы посчитать эмбеддинги текущего словаря; что это
добавляет к условиям, см. в разделе «Лицензирование».
Варианты
Три чекпойнта: s, m и l. s — размер по умолчанию для этого уровня,
когда ничего не задано. В отличие от остальных моделей этого уровня, OV-DEIM —
нативный порт, а не обёртка над transformers: LibreYOLO поставляет модули
детектора под той же лицензией Apache-2.0, что и исходный код, и переиспользует
адаптер бэкбона DINOv3, уже сделанный для семейства DEIMv2. Бэкбон чекпойнта
l — это дообученный DINOv3-S, который лицензируется отдельно, по DINOv3
License от Meta. Ни точности, ни задержек для этого семейства пока не
опубликовано.
Обучение, валидация на датасете и экспорт выходят за рамки этого уровня:
train(), val() и export() безусловно вызывают NotImplementedError.
Это обёртка только для предсказания вокруг опубликованного чекпойнта.
Чекпойнты
Все опубликованные файлы весов этого семейства.
| Файл | Вход (пикс.) | Лицензия весов |
|---|---|---|
| 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 |
Все перечисленные выше файлы уже доступны в организации LibreYOLO и скачиваются при первом использовании.
Лицензирование
Проверяйте лицензию в репозитории конкретных весов на Hugging Face. Она указана для каждого чекпойнта в организации LibreYOLO и может различаться даже внутри одного семейства. Этот репозиторий считается авторитетным источником, а сводка ниже описывает условия на момент последней проверки страницы.
Это описание соответствующих лицензий, а не юридическая консультация. Если ответ важен для коммерческого использования, прочитайте лицензии самостоятельно и проконсультируйтесь с юристом.
- Оригинальная работа
- OV-DEIM, Leilei Wang et al.
- Лицензия исходного проекта
- CC BY-NC 4.0
- Исходный код проекта
- github.com/wleilei/OV-DEIM
- Код LibreYOLO
- MIT
- Веса
- CC BY-NC 4.0, повторно опубликованы на huggingface.co/LibreYOLO
- Толкование
- 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 накладывает на каждый вызов предсказания три исходные лицензии: веса
детектора — под собственной лицензией OV-DEIM, CC BY-NC 4.0, текстовая башня,
которая считается на лету, — под Machine Learning Research Model license от
Apple (только для исследований), а для чекпойнта l добавляется дообученный
бэкбон DINOv3-S под DINOv3 License от Meta. Тексты всех трёх лицензий
поставляются внутри репозитория весов LibreYOLO.
Цитирование
@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},
}Скопировано из блока цитирования авторов на странице github.com/wleilei/OV-DEIM#4-citation.