Привет, Хабр! Меня зовут Татьяна Земскова, я аспирантка МФТИ и младший научный сотрудник команды Embodied Agents лаборатории Cognitive AI Systems AIRI. Областью моих научных интересов является компьютерное зрение для робототехники. Я изучаю, в частности, то, каким образом робот может использовать различные модальности (текст, 3D‑облака точек) для лучшего понимания 3D‑сцены.

Сегодня мы поговорим о понимании 3D‑сцены в контексте задач, где требуется одновременно и трёхмерное компьютерное зрение, и обработка естественного языка, а также о том, как представление 3D‑сцены в виде графа с рёбрами помогает в их решении. Главной особенностью графового представления 3D‑сцены является его компактность, поэтому граф можно использовать для сжатого описания 3D‑сцены, подающегося на вход в LLM. Это позволяет получать качественные ответы на вопросы о 3D‑сцене до 5 раз быстрее по сравнению с методами, использующими последовательности изображений для LVLM. Это мы показали вместе с моим научным руководителем Дмитрием Юдиным в недавней работе 3DGraphLLM: Сombining Semantic Graphs and Large Language Models for 3D Scene Understanding, принятой на ведущую конференцию по компьютерному зрению ICCV 2025.

Мы предоставляем открытый исходный код метода 3DGraphLLM с инструкциями по запуску, а также публикуем предварительно обученные веса модели на Hugging Face. Это позволяет каждому желающему легко воспроизвести результаты и опробовать все описанные методы на собственных данных. Здесь же хочется подробнее рассказать о новом методе и пути, по которому мы к нему пришли.

Что такое 3D-граф сцены и зачем он нужен?

Использование роботов неизбежно связано с их способностью взаимодействовать с трёхмерными объектами нашего мира, будь то детали на конвейере или мебель в квартире. Для этой цели их нужно оснастить надёжными инструментами компьютерного зрения, а также системами обработки изображений и принятия решений.

Для последнего могут быть полезны различные архитектуры машинного и, в частности, глубокого обучения, например, трансформеры, которые способны обеспечить понимание того, что видит робот. Не менее важным является и модальность, в которой кодируется сцена и подаётся на вход модели.

Традиционным способом задания трёхмерных сцен являются облака точек. Можно также описывать сцену текстом и подавать её на вход большой языковой модели (LLM). Есть и другой популярный подход, в котором 3D‑сцена представляется в виде графа с рёбрами.

Рисунок 1. Пример графа 3D-сцены. Источник: Wald, J. et al, Learning 3d semantic scene graphs from 3d indoor reconstructions. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 3961-3970).
Рисунок 1. Пример графа 3D‑сцены. Источник: Wald, J. et al, Learning 3d semantic scene graphs from 3d indoor reconstructions. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (pp. 3961–3970).

Граф позволяет создавать 3D‑модель сцены, центральным элементом которой являются объекты. Как уже было сказано выше, достоинством такой модели является её компактность, так как нам не нужно хранить лишнюю информацию о пустом пространстве, как в случае воксельных карт.

Кроме того, граф позволяет хранить информацию о структуре сцены. Структура может состоять из связей между объектам («стул стоит на полу и находится рядом с другим столом»), а может отражать иерархию сцены: объединение объектов в комнаты, комнат в этажи и так далее. Графовое представление сцены активно используется для задач одновременного картирования и локализации (SLAM), а также в качестве входных данных для LLM в задачах планирования для робототехники.

Графы и последовательности токенов

Существуют разные подходы к моделированию отношений между объектами в графах 3D‑сцене. Распространенным является учёт только иерархических связей, где объекты имеют связь лишь с вершиной‑комнатой, в которой они находятся. Мы же в своей работе ставили целью показать, что наличие семантических связей между объектами в графе сцены позволяет более эффективно отличать их друг от друга по текстовому описанию, и, следовательно, повышает качество пространственного восприятия 3D‑сцены LLM.

В первую очередь мы решили задачу о том, каким образом можно представить граф сцены в виде последовательности токенов.

Эмбеддинги вершин и рёбер

Вход LLM, как известно, состоит из последовательности эмбеддингов токенов, на которые разбивается текст. В задаче понимания 3D‑сцены входными данными для языковой модели является её граф, поэтому мы предлагаем способ для токенизации и извлечения эмбеддингов токенов его вершин и рёбер.

При извлечении эмбеддингов вершин и рёбер графа мы используем предобученные энкодеры. Каждая вершина графа содержит в себе информацию о 3D‑облаке точек определенного объекта и его 2D‑изображениях с разных ракурсов. 3D‑облако точек объекта кодируется с помощью энкодера Uni3D — универсального классификатора облаков точек, аналога CLIP для 3D‑данных, в результате работы которого получается один вектор‑признак облака точек.

Далее из каждого изображения, содержащего объект, извлекается 2D‑признак с помощью фундаментальной модели DINOv2. Признаки DINOv2 усредняются по изображениям с учётом размера маски объекта, наложенной на них, так, чтобы для каждого объекта получился один вектор — его 2D‑эмбеддинг.

Наконец, мы используем модель VL‑SAT для извлечения эмбеддингов семантических отношений между объектами. На вход она принимает два облака точек объектов и возвращает признак их пространственного отношения, который соответствует одному классу из фиксированного набора (например, справа, сверху, рядом и тому подобное). Так как эти признаки являются не взаимоисключающими, мы используем скрытое представление из последних слоёв модели — таким образом, распределение пространственных отношений между объектами оказывается непрерывным.

Рисунок 2. Схема извлечения признаков вершин-объектов и рёбер графа - семантических отношений между объектами.
Рисунок 2. Схема извлечения признаков вершин‑объектов и рёбер графа — семантических отношений между объектами.

После того, как мы извлекли эмбеддинги рёбер и вершин графа, нам необходимо собрать их в последовательность для того, чтобы подать на вход в LLM. Мы остановили свой выбор на цепочках подграфов объектов.

Подграф объекта состоит из самого объекта и двух его ближайших соседей. Для каждого подграфа первый эмбеддинг — это обучаемый эмбеддинг токена‑идентификатора объекта, затем идёт 2D‑эмбеддинг самого объекта. За ними идёт последовательность из шести эмбеддингов, описывающих две связи объекта с его двумя ближайшими соседями в формате (3D Obj1 emb., Obj1-Obj2 edge emb., 3D Obj2 edge emb.). Подробная схема приведена на Рисунке 3.

Рисунок 3. Схема токенизации графа 3D-сцены и подачи графового представления в качестве входных данных LLM для ответов на вопросы по 3D-сцене.
Рисунок 3. Схема токенизации графа 3D‑сцены и подачи графового представления в качестве входных данных LLM для ответов на вопросы по 3D‑сцене.

Для того чтобы адаптировать LLM к новым эмбеддингам, мы дообучаем слои‑адаптеры и саму LLM с помощью LoRa‑дообучения на открытых данных 3D‑сцен и соответствующих им текстовых запросах.

Хочется особо подчеркнуть, что подобная схема токенизации позволяет описать сцену, состоящую из 100 объектов, используя всего 800 токенов. Методы‑конкуренты нашего подхода, например, GPT4Scene используют 32 изображения высокого разрешения, чтобы добиваться такого же качества, что соответствует примерно 10 000 токенов. Таким образом, скорость инференса в графовом представлении 3DGraphLLM может быть до 5 раз быстрее по сравнению с GPT4Scene.

Весь пайплайн работы 3DGraphLLM представлен на Рисунке 4.

Рисунок 4. Предложенный подход 3DGraphLLM использует обучаемое представление семантического графа 3D‑сцены в качестве входных данных для большой языковой модели с целью выполнения различных задач на стыке 3D‑компьютерного зрения и обработки языка.
Рисунок 4. Предложенный подход 3DGraphLLM использует обучаемое представление семантического графа 3D‑сцены в качестве входных данных для большой языковой модели с целью выполнения различных задач на стыке 3D‑компьютерного зрения и обработки языка.

Для каких задач полезны семантические рёбра?

Чтобы оценить преимущество 3DGraphLLM, мы экспериментировали с тремя типами задач.

Первый из них — задачи 3D‑детекции по текстовому запросу — заключается в определении области в 3D‑сцене, соответствующей сложному запросу на естественном языке. Такой запрос может описывать свойства объекта (например, цвет, размер) и пространственные отношения (например, «кружка на столе»). Распространённый подход к решению этой задачи — предположить, что дана трёхмерная реконструкция сцены (в нашем случае это облако точек, но также рассматривают меш или NeRF), и свести проблему к предсказанию ограничивающих рамок области, соответствующей запросу.

Также мы рассматривали противоположную задачу — предсказание текста, описывающего объект, который находится в заданной пространственной области. Третьим типом задач, который нас заинтересовал, стала генерация ответов на вопросы о свойствах сцены.

Стоит отметить также, что мы тестировали работу 3DGraphLLM с различными предобученными моделями для инстанс‑сегментации 3D‑сцены, в частности, с моделью OneFormer3D — SOTA‑методом для универсальной сегментации 3D‑сцены. Он был разработан нашими коллегами из AIRI — группой Spatial AI под руководством Антона Конушина.

Рисунок 5. Эффект от использования графового представления 3D-сцены для решения задачи 3D-детекции по текстовому запросу.
Рисунок 5. Эффект от использования графового представления 3D‑сцены для решения задачи 3D‑детекции по текстовому запросу.

Эффект от использования семантических рёбер в графовом представлении сцены был наиболее заметен при решении задачи 3D‑детекции по текстовому запросу. Положительный эффект от использования графового представления сцены сохраняется как при использовании ground‑truth инстанс‑сегментации 3D‑сцены, так и при использовании предобученных моделей для инстанс‑сегментации облака точек сцены. Однако в случае использования предсказанной инстанс‑сегментации необходимо использовать дополнительные фильтры, чтобы в качестве ближайших соседей не были выбраны дубликаты объектов.

Рисунок 6. Пример работы 3DGraphLLM для решения задачи ответов на вопросы по сцене.
Рисунок 6. Пример работы 3DGraphLLM для решения задачи ответов на вопросы по сцене.

Помимо 3D‑детекции по текстовому запросу графовое представление эффективно для задач описания объектов и ответов на вопросы о свойстве сцены, однако их влияние сложнее оценить из‑за особенностей метрик, используемых для оценки качества в существующих бенчмарках. Поговорим подробнее об этих особенностях.

Рисунок 7. Пример работы 3DGraphLLM для решения задачи 3D-детекции объектов по текстовому запросу.
Рисунок 7. Пример работы 3DGraphLLM для решения задачи 3D‑детекции объектов по текстовому запросу.

Где правда в пространственных отношениях?

Дело в том, что большинство популярных бенчмарков в данной области появилось в эпоху «до LLM». Поэтому там используются статистические метрики сравнения сгенерированных ответов с референсными, такие как BLEU-1, BLEU-2, BLEU-3, BLEU-4, CIDEr, ROUGE‑L, METEOR.

Недостаток данных метрик заключается в том, что, если описание объекта или ответ на вопрос содержит в себе упоминание пространственных связей, которых не было в референсных описаниях, это приводит к снижению метрик. Также данные метрики не способны адекватно оценить ответы LLM с учётом богатства формулировок и свободы выбора визуальных и пространственных свойств объекта, которые могут быть упомянуты моделью.

Такие ответы могут показаться бенчмаркам ошибочными, хотя таковыми они не являются. Несколько примеров приведено на Рисунке 8.

Рисунок 8. Пример сложных для оценки запросов на понимание 3D-сцены.
Рисунок 8. Пример сложных для оценки запросов на понимание 3D‑сцены.

Другими словами, в этом случае описание объекта или ответ на вопрос являются корректными с качественной точки зрения, но с точки зрения метрик показывают низкие значения. Это нужно учитывать при оценке методов.

Заключение 

Наш подход 3DGraphLLM доказывает, что 3D‑семантический граф сцены способен помочь LLM успешно решать задачи на стыке 3D‑визуального и текстового анализа. Наибольшую эффективность новый метод показывает при решении задачи 3D‑детекции по текстовому запросу, но генерация описания объектов на сцене и ответы на вопросы о её свойствах также ему по плечу.

Мы показали, что, если оставить всего по две связи на объект в графе сцены, то получается хороший баланс между скоростью и качеством решения задач. Граф сцены обладает более компактным представлением, чем представление в виде последовательности кадров с высоким разрешением для LVLM.

Что дальше? Во‑первых, стоит подумать, как сократить количество токенов, которые тратятся на кодирование связей между объектами. А, во‑вторых, важно научиться автоматически находить такие связи даже тогда, когда сегментация объектов в сцене далека от идеала. Наконец, перспективным является расширение типов решаемых задач и учёт динамических изменений в графе сцены.

Если вам понравилось то, о чём мы здесь написали, приглашаем узнать еще больше о проектах нашей команды здесь и здесь.

Комментарии (0)