Захват объектов в робототехнике — ключевая задача для автоматизации и управления. Она имеет решающее значение в различных областях: от промышленного сбора до сервисной и гуманоидной робототехники. Несмотря на десятилетия исследований, создание надёжной системы захвата с 6 степенями свободы (6-DOF) остаётся сложной нерешённой задачей.
Недавно компания NVIDIA представила GraspGen — новую систему генерации захвата на основе диффузии, которая обещает обеспечить высочайшую производительность с беспрецедентной гибкостью, масштабируемостью и надёжностью в реальных условиях.
Задача и мотивация захвата
Точная и надёжная генерация захвата в трёхмерном пространстве, где позы захвата должны быть выражены с точки зрения положения и ориентации, требует алгоритмов, которые могут обобщаться для неизвестных объектов, различных типов захватных устройств и сложных условий окружающей среды, включая частичные наблюдения и загромождение.
Классические планировщики захвата, основанные на моделях, сильно зависят от точной оценки позы объекта или мультивидовых сканов, что делает их непрактичными для использования в реальных условиях. Подходы, основанные на обучении на данных, показывают многообещающие результаты, но текущие методы, как правило, сталкиваются с проблемами обобщения и масштабируемости, особенно при переходе к новым захватным устройствам или загромождённым условиям реального мира.
Ещё одним ограничением многих существующих систем захвата является их зависимость от больших объёмов дорогостоящего сбора данных в реальных условиях или настройки для конкретной предметной области. Сбор и аннотирование реальных наборов данных о захвате — дорогостоящий процесс, который нелегко перенести между типами захватных устройств или сложностью сцены.
Основная идея: крупномасштабное моделирование и генеративный захват на основе диффузионной модели
NVIDIA использует GraspGen для перехода от дорогостоящего сбора данных в реальных условиях к использованию крупномасштабного синтеза данных в моделировании — особенно с использованием огромного разнообразия объектов из набора данных Objaverse (более 8 000 объектов) и смоделированных взаимодействий с захватными устройствами (более 53 миллионов захватов).
GraspGen формулирует генерацию захвата как вероятностную модель шумоподавления (DDPM), работающую в пространстве поз SE(3) (включая трёхмерные вращения и перемещения). Диффузионные модели, хорошо зарекомендовавшие себя в генерации изображений, итеративно уточняют случайные выборки шума, приближаясь к реалистичным позам захвата, обусловленным представлением облака точек, ориентированным на объект.
Этот подход к генеративному моделированию естественным образом улавливает мультимодальное распределение допустимых захватов сложных объектов, обеспечивая пространственное разнообразие, критически важное для работы с загромождением и ограничениями задач.
Архитектура GraspGen: диффузионный трансформер и обучение на генераторе
Диффузионный трансформер-энкодер: GraspGen использует новую архитектуру, сочетающую мощный бэкенд PointTransformerV3 (PTv3) для кодирования необработанных, неструктурированных входных данных облака точек в скрытые представления, за которыми следуют итеративные шаги диффузии, прогнозирующие остаточные шумы в пространстве поз захвата. Это отличается от предыдущих работ, которые полагаются на PointNet++ или представления захвата на основе контактов, обеспечивая улучшенное качество захвата и вычислительную эффективность.
Обучение дискриминатора на генераторе: GraspGen вводит новшества в парадигму обучения оценщика захвата или дискриминатора. Вместо обучения на статических автономных наборах данных об успешных/неудачных захватах дискриминатор обучается на «генераторных» выборках — позах захвата, генерируемых диффузионной генеративной моделью во время обучения. Эти «генераторные» захваты позволяют дискриминатору выявить типичные ошибки или предвзятость модели, такие как захваты, слегка сталкивающиеся с препятствиями, или выбросы, удалённые от поверхностей объектов, что позволяет лучше идентифицировать и отфильтровывать ложные срабатывания во время логического вывода.
Эффективное совместное использование весов: дискриминатор повторно использует замороженный объектный энкодер из диффузионного генератора, требуя лишь облегчённый многослойный перцептрон (MLP), обученный с нуля для классификации успеха захвата. Это приводит к сокращению потребления памяти в 21 раз по сравнению с предыдущими архитектурами дискриминатора.
Нормализация перевода и представления вращения: для оптимизации производительности сети компоненты перевода захватов нормализуются на основе статистики набора данных, а вращения кодируются с помощью алгебры Ли или 6D-представлений, обеспечивая стабильное и точное прогнозирование позы.
Многообразие воплощений и гибкость окружающей среды
GraspGen продемонстрирован для трёх типов захватных устройств:
* параллельные захватные устройства (Franka Panda, Robotiq-2F-140);
* вакуумные захваты (моделируются аналитически);
* многопальцевые захваты (планируемые будущие расширения).
Важно отметить, что фреймворк обобщается для:
* частичных и полных облаков точек: он работает надёжно как при наблюдениях с одной точки зрения с окклюзиями, так и при объединении мультивидовых облаков точек;
* одиночных объектов и загромождённых сцен: оценка на FetchBench, сложном бенчмарке по захвату в загромождённых условиях, показала, что GraspGen достигает высоких показателей успешности выполнения задач и захвата.
Бенчмаркинг и производительность
FetchBench Benchmark: при оценке в симуляции, охватывающей 100 разнообразных загромождённых сцен и более 6 000 попыток захвата, GraspGen превзошёл современные базовые модели, такие как Contact-GraspNet и M2T2, с большим отрывом (улучшение успешности выполнения задач почти на 17% по сравнению с Contact-GraspNet). Даже планировщик-оракул с достоверными позами захвата изо всех сил пытался довести успешность выполнения задач до уровня выше 49%, что подчёркивает сложность задачи.
Точность и охват: на стандартных тестах (набор данных ACRONYM) GraspGen существенно улучшил точность успеха захвата и пространственное покрытие по сравнению с предыдущими диффузионными моделями и моделями с контактными точками, продемонстрировав более высокое разнообразие и качество предложений по захвату.
Эксперименты с реальными роботами: используя робота UR10 с датчиком глубины RealSense, GraspGen достиг 81,3% общего успеха захвата в различных реальных условиях (включая загромождение, корзины, полки), превысив M2T2 на 28%. Он генерировал сфокусированные позы захвата исключительно на целевых объектах, избегая ложных захватов, наблюдаемых в сценарно-ориентированных моделях.
Набор данных и открытый исходный код
NVIDIA выпустила набор данных GraspGen для общественности, чтобы стимулировать прогресс сообщества. Он состоит примерно из 53 миллионов смоделированных захватов на 8 515 объектах, лицензированных на условиях разрешительной политики Creative Commons. Набор данных был создан с помощью NVIDIA Isaac Sim с подробными метками успешности захвата, основанными на физике, включая тесты на встряску для проверки стабильности.
Вместе с набором данных кодовая база GraspGen и предварительно обученные модели доступны под открытыми лицензиями на https://github.com/NVlabs/GraspGen, а дополнительные материалы проекта — на https://graspgen.github.io/.
Заключение
GraspGen представляет собой значительный прорыв в области роботизированного захвата с 6 степенями свободы, представляя генеративную систему на основе диффузии, которая превосходит предыдущие методы, масштабируясь для различных захватных устройств, сложности сцены и условий наблюдения. Его новый рецепт обучения на генераторе для оценки захвата решительно улучшает фильтрацию ошибок модели, что приводит к значительному увеличению успешности захвата и производительности на уровне задач как в симуляции, так и на реальных роботах.
Публично выпуская как код, так и массивный синтетический набор данных о захвате, NVIDIA даёт возможность сообществу робототехники и дальше развивать и применять эти инновации. Фреймворк GraspGen объединяет моделирование, обучение и модульные компоненты робототехники в готовое решение, продвигая концепцию надёжного роботизированного захвата в реальных условиях как широко применяемого фундаментального строительного блока в роботизированной манипуляции общего назначения.
1. Какие проблемы решает система GraspGen в робототехнике?
Система GraspGen решает проблему генерации надёжных захватов объектов в трёхмерном пространстве с 6 степенями свободы (6-DOF) в условиях неизвестных объектов, различных типов захватных устройств и сложных условий окружающей среды, включая частичные наблюдения и загромождение.
2. Какие преимущества предлагает GraspGen по сравнению с классическими планировщиками захвата и другими подходами, основанными на обучении на данных?
GraspGen предлагает преимущества в виде гибкости, масштабируемости и надёжности в реальных условиях. Он использует крупномасштабное моделирование и генеративный захват на основе диффузионной модели, что позволяет ему работать с разнообразными объектами и условиями.
3. Какие типы захватных устройств были продемонстрированы для GraspGen?
Для GraspGen были продемонстрированы параллельные захватные устройства (Franka Panda, Robotiq-2F-140), вакуумные захваты (моделируются аналитически) и многопальцевые захваты (планируемые будущие расширения).
4. Какие результаты показал GraspGen при оценке в симуляции и на реальных роботах?
При оценке в симуляции, охватывающей 100 разнообразных загромождённых сцен и более 6 000 попыток захвата, GraspGen превзошёл современные базовые модели, такие как Contact-GraspNet и M2T2, с большим отрывом (улучшение успешности выполнения задач почти на 17% по сравнению с Contact-GraspNet). Используя робота UR10 с датчиком глубины RealSense, GraspGen достиг 81,3% общего успеха захвата в различных реальных условиях, превысив M2T2 на 28%.
5. Какие возможности предоставляет NVIDIA для сообщества робототехники в связи с выпуском GraspGen?
NVIDIA выпустила набор данных GraspGen для общественности, чтобы стимулировать прогресс сообщества. Он состоит примерно из 53 миллионов смоделированных захватов на 8 515 объектах, лицензированных на условиях разрешительной политики Creative Commons. Кодовая база GraspGen и предварительно обученные модели доступны под открытыми лицензиями на GitHub, а дополнительные материалы проекта — на официальном сайте.