DSO: опубликованный Оксфордом фреймворк оптимизации 3D-моделей с учётом физики 160

小编 ·

DSO: опубликованный Оксфордом фреймворк оптимизации 3D-моделей с учётом физики

DSO (Direct Simulation Optimization) — метод, опубликованный Оксфордом для улучшения генераторов изображений в 3D, таких как TRELLIS. Благодаря прямой симуляционной оптимизации повышается устойчивость сгенерированных 3D-объектов в физических симуляциях и реальном мире. Не требует дополнительных затрат при тестировании и за короткое время создаёт устойчивые 3D-объекты.

DSO: опубликованный Оксфордом фреймворк оптимизации 3D-моделей с учётом физики

Что такое DSO?

DSO (Direct Simulation Optimization) — это метод, опубликованный Оксфордским университетом, предназначенный для улучшения генераторов моделей «изображение в 3D» (таких как TRELLIS). Он использует прямую симуляционную оптимизацию для повышения стабильности сгенерированных 3D-объектов при физическом моделировании и в реальных условиях. Метод не требует дополнительных затрат во время тестирования и способен за короткое время генерировать устойчивые 3D-объекты.

Что такое DSO?.webp

Функциональные особенности DSO

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

  • Высокая эффективность: не увеличивает дополнительные затраты во время тестирования; генерация устойчивых 3D-объектов занимает считаные секунды.

  • Совместимость: оптимизация выполняется на основе существующих генераторов «изображение в 3D» (например, TRELLIS), что обеспечивает бесшовную интеграцию и полное использование их исходных функций и преимуществ.

  • Предоставление предобученных моделей: доступны две контрольные точки предобученных моделей, обученные с помощью прямой оптимизации предпочтений (DPO) и прямой оптимизации вознаграждения (DRO), что позволяет пользователям быстро приступить к работе.

Сценарии применения DSO

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

  • Виртуальная и дополненная реальность: создание более реалистичных и стабильных 3D-объектов в виртуальной среде для улучшения пользовательского опыта — например, объекты, размещённые в виртуальной сцене, остаются устойчивыми в соответствии с законами физики.

  • Разработка игр: предоставляет решения для генерации 3D-моделей в играх, которые лучше соответствуют физическим законам, благодаря чему объекты в игре ведут себя естественнее под воздействием гравитации и других физических факторов, усиливая реалистичность и погружение.

  • Архитектурное и промышленное проектирование: помогает дизайнерам быстро создавать прототипы 3D-моделей, отвечающие требованиям физической стабильности, для предварительной оценки и проверки проектов, сокращая количество доработок и итераций, вызванных проблемами со стабильностью.

Сценарии применения DSO.webp

Руководство по использованию DSO

1. Установка зависимостей:

  • Установите зависимости TRELLIS: создайте окружение Python и установите указанную версию PyTorch и связанные библиотеки, запустите скрипт для установки остальных необходимых библиотек, а затем установите библиотеку Kaolin.

  • Установите оставшиеся зависимости с помощью команды pip install -r requirements.txt.

2. Загрузка предобученных моделей: используйте команды git lfs install и git clone для загрузки предобученных моделей, обученных с помощью DPO и DRO.

3. Быстрый старт генерации: используйте скрипт example.py — загрузите предобученную модель и входное изображение, выполните предобработку и генерацию через TrellisImageTo3DPipeline, а затем экспортируйте полученную модель в формат GLB.

4. Оценка:

  • Загрузите набор данных для оценки.

  • Сгенерируйте 3D-модели с помощью обученных контрольных точек.

  • Рассчитайте метрики стабильности и геометрии.

5. Обучение:

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

  • Запустите задачу обучения: укажите каталог данных и выполните скрипт finetune.py.

Адрес на Github:https://github.com/RuiningLi/dso