Революция в Open-Vocabulary Scene Graph Generation
Команда Maelic представила RelateAnything — модель для генерации сценарных графов (Scene Graph Generation), которая решает сразу две критические проблемы: жесткую привязку к предопределенным классам объектов и медленную работу. В отличие от традиционных подходов, RelateAnything не требует меток классов объектов на входе. Модель принимает только пиксели и регионы (bounding boxes или маски), а словарь предикатов (отношений) задается динамически в момент инференса.
Ключевая особенность архитектуры — 20 мс на кадр на GPU NVIDIA A40 при батче 1. Это позволяет использовать модель в реальном времени, даже на CPU в браузере или на ноутбуках через ONNX. Модель весит всего 53.2 млн параметров (версия relsgg-vits16plus), что делает её легкой для развертывания, но при этом превосходящей более тяжелые аналоги.
Технические характеристики и бенчмарки
Модель обучена на комбинации датасетов RA-4M, Visual Genome и 5% данных HICO-DET. Она демонстрирует выдающиеся результаты на кросс-датасетных тестах, где оценивается способность к обобщению. Ниже приведено сравнение с сильным базовым решением OvSGTR (на базе MegaSG) и другими подходами.
| Метрика / Ось | RelateAnything (vits16plus) | OvSGTR (Baseline) | Примечание |
|---|---|---|---|
| OVS Composite (A6) | 40.1 | 11.8 | Гармоническое среднее с коррекцией на шанс |
| HICO-DET F1@50 (Zero-shot) | 18.7 | 7.9 | Нулевое обучение на HICO-DET |
| PSG F1@50 (mR@50) | 34.7 | 13.5 | Open-Vocabulary Scene Graph |
| Haystack Precision (A2) | 72.6 | 52.1 | Точность на редких отношениях |
| End-to-End Latency (A40) | 25.0 ms | 194.0 ms | Включая детектор YOLO-World |
| Параметры | 53.2 M | 177 M (Swin-T) | RelateAnything легче в 3.3 раза |
Гибкость словаря и отсутствие классов
Архитектура RelateAnything позволяет задавать любой предикат на лету. Вы можете передать список строк, например, ["about to collide with", "reflected in"], и модель вернет только эти отношения. Это достигается за счет того, что текстовый кодировщик используется только один раз для кодирования словаря, а дальнейший инференс — чистая компьютерная зрение (vision-only), без участия больших языковых моделей (LLM) в контуре.
Модель также поддерживает разделение графов на пространственные (layout) и семантические (interaction) отношения в одном проходе. Это важно, так как пара объектов может одновременно находиться в пространственном взаимодействии (например, «рядом») и семантическом (например, «держит»).
Деплоймент и производительность
RelateAnything показывает впечатляющую эффективность при развертывании. При использовании torch.compile скорость достигает 49 FPS на A40. В сравнении с end-to-end системой OvSGTR + Swin-T, RelateAnything + YOLO-World работает в 7.8 раз быстрее на GPU A40 (25 мс против 194 мс), несмотря на то, что общее количество параметров системы сопоставимо (231 M против 177 M).
Модель доступна на Hugging Face под именем maelic/relsgg-vits16plus. Она не требует gated-доступа, включает собственный бэкбон (DINOv3 ViT-S/16+) и текстовый кодировщик, а также поставляется с полным словарем из 19,103 строк для быстрого старта.
Как начать работу
Установка и использование занимают минимум времени благодаря интеграции с Hugging Face Hub:
- Установка:
pip install -e .[hub] - Запуск: Модель загружается одной строкой
RelateAnything.from_pretrained("maelic/relsgg-vits16plus"). - Вход: Изображение и массив коробок
[N, 4](xyxy) или маски. - Выход: Список триплетов (Subject, Predicate, Object) с вероятностями.
Проект открыт для сообщества, код доступен на GitHub, а также доступна браузерная демо-версия и видео-демонстрация работы с отслеживанием объектов через фильтр Калмана.
Источник: Github ↗