MIDI-3D: инструмент с открытым исходным кодом для быстрой генерации многообъектных 3D-сцен из одного изображения
Общее введение
MIDI-3D - это проект с открытым исходным кодом, разработанный командой VAST-AI-Research, который позволяет разработчикам, исследователям и создателям быстро генерировать 3D-сцены, содержащие множество объектов, из одного изображения. Инструмент основан на методах многообъектного диффузионного моделирования, объединяющих искусственный интеллект и 3D-моделирование для одновременной генерации нескольких высококачественных 3D-объектов и сохранения их пространственных отношений. MIDI-3D был выпущен на CVPR 2025, а код, весовые коэффициенты моделей и онлайн-демонстрация являются открытыми. Он поддерживает ввод как реалистичных, так и мультяшных изображений, время генерации составляет всего 40 секунд, а размер выходных файлов .glb
Формат, который можно редактировать в других программах. Цель проекта - упростить создание 3D-сцен и сделать так, чтобы больше людей могли создавать цифровые объекты.

Список функций
- Создавайте 3D-сцены, содержащие множество объектов, из одного изображения, поддерживая как реалистичные, так и мультяшные стили.
- Функция сегментации изображений для автоматической идентификации и маркировки объектов на фотографиях.
- Одновременное создание нескольких разделяемых 3D-объектов, которые автоматически объединяются в целые сцены.
- Поддерживает как работу в командной строке, так и интерактивное веб-представление.
- Автоматическая загрузка весов предварительно обученной модели в локальную сеть для быстрого запуска.
- экспорт
.glb
Файлы 3D-моделей в формате, который можно использовать для последующего редактирования или импортировать в другие программы. - Процесс генерации эффективен и не требует моделирования каждого объекта или длительной оптимизации.
Использование помощи
Использование MIDI-3D разделено на две части: установка и работа. Ниже приведены подробные шаги, которые помогут вам начать работу с нуля.
Процесс установки
- Подготовка аппаратной и программной среды
Вам понадобится компьютер с поддержкой CUDA, так как MIDI-3D использует ускорение GPU. Рекомендуется использовать графический процессор NVIDIA с не менее чем 6 ГБ видеопамяти. Убедитесь, что установлен Python 3.10 или выше. - Создание виртуальной среды (необязательно)
Чтобы избежать конфликтов, вы можете создать новую среду Conda:
conda create -n midi python=3.10
conda activate midi
- Установка PyTorch
Установите PyTorch в соответствии с версией CUDA вашего GPU. Например, для CUDA 11.8 команда выглядит так:
pip install torch torchvision --index-url https://download.pytorch.org/whl/cu118
Если версия отличается, перейдите на сайт https://pytorch.org/get-started/locally/, чтобы выбрать соответствующую команду.
- Скачать код проекта
Клонируйте репозиторий MIDI-3D, выполнив в терминале следующую команду:
git clone https://github.com/VAST-AI-Research/MIDI-3D.git
cd MIDI-3D
- Установка зависимостей
Проектные предложенияrequirements.txt
выполните следующую команду для установки всех зависимостей:
pip install -r requirements.txt
- Получение весов моделей
При запуске скрипта MIDI-3D автоматически загружает предварительно обученную модель с сайта https://huggingface.co/VAST-AI/MIDI-3D, сохраняет ее в файлеpretrained_weights/MIDI-3D
папку. Если сеть нестабильна, вы также можете вручную загрузить и извлечь по этому пути.
рабочий процесс
MIDI-3D поддерживает два способа использования: командная строка и интерактивная демонстрация. Ниже приведены конкретные шаги.
работа в командной строке
- Создайте диаграмму разделения
Для работы MIDI-3D требуется изображение и соответствующая карта сегментации (маркировка областей объекта). Карта сегментации может быть создана с помощью прилагаемого скрипта Grounded SAM. Например, у вас есть картинка04_rgb.png
Бег:
python -m scripts.grounding_sam --image assets/example_data/Cartoon-Style/04_rgb.png --labels "lamp sofa table dog" --output ./segmentation.png
--image
Указывает путь к входному изображению.--labels
Введите названия объектов на картинке, разделяя их пробелами.--output
Указывает путь, по которому сохраняется диаграмма сегментации.
При запуске он генерируетsegmentation.png
Документация.
- Создание 3D-сцен
Чтобы сгенерировать 3D-сцену с изображениями и картами разбиения, выполните следующую команду:
python -m scripts.inference_midi --rgb assets/example_data/Cartoon-Style/00_rgb.png --seg assets/example_data/Cartoon-Style/00_seg.png --output-dir "./output"
--rgb
это исходный путь карты.--seg
это путь разбиения графа.--output-dir
путь к выходной папке.
Созданная 3D-сцена сохраняется в форматеoutput.glb
файл, что обычно занимает от 40 секунд до 1 минуты. Если объект находится у края изображения, рекомендуется добавить параметр--do-image-padding
В ролях:
python -m scripts.inference_midi --rgb 00_rgb.png --seg 00_seg.png --output-dir "./output" --do-image-padding
Интерактивная презентация
- Демонстрация стартапа
Выполните следующую команду, чтобы запустить интерфейс Gradio:
python gradio_demo.py
Система автоматически откроет браузер и отобразит страницу работы. Вы также можете посетить онлайн-демонстрацию на сайте https://huggingface.co/spaces/VAST-AI/MIDI-3D.
- Загрузите изображение и разделите его
Нажмите кнопку "Input Image" в интерфейсе, чтобы загрузить изображение. Затем с помощью мыши выделите область объекта, система автоматически сгенерирует карту сегментации, которая будет отображена в разделе "Результат сегментации". - Создание 3D-сцен
Нажмите "Run Segmentation", чтобы подтвердить карту сегментации, настроить параметры (например, случайные семена), а затем нажмите кнопку Generate. Через несколько секунд в интерфейсе появится 3D-модель, нажмите, чтобы загрузить ее..glb
Документация.
Функции
- сегментация изображения
Grounded SAM - это инструмент предварительной обработки для MIDI-3D, который автоматически распознает объекты на изображении и генерирует карту сегментации. Вы можете ввести название объекта (например, "лампа-диван") или выбрать его вручную в интерактивном интерфейсе. Программа поддерживает многообъектные сцены с высокой точностью сегментации. - Многообъектное 3D-генерирование
В MIDI-3D используется диффузионное моделирование с несколькими объектами для одновременного создания нескольких 3D-объектов и сохранения их пространственных связей. Например, на фотографии гостиной можно сгенерировать 3D-модель дивана, стола и лампы, которые непосредственно составляют всю сцену. Это быстрее, чем традиционный метод генерации объекта за объектом. - выход модели
созданный.glb
Файлы совместимы с Blender, Unity и другими программами. Вы можете импортировать файлы, настроить материалы, освещение или добавить анимацию, чтобы удовлетворить различные потребности.
Дополнительные ресурсы
- Обучающие видеоролики
Представлен официальный видеоролик (смотрите на сайте https://github.com/VAST-AI-Research/MIDI-3D), в котором подробно показан процесс от загрузки изображения до создания 3D-сцены. - библиография
Технические подробности вы можете прочитать в статье: https://arxiv.org/abs/2412.03558.
Часто задаваемые вопросы
- Если генерация не удается, проверьте, поддерживает ли ее графический процессор, или убедитесь, что карта сегментации корректна.
- Если детали объекта отсутствуют, попробуйте использовать изображение с более высоким разрешением.
сценарий применения
- разработка игр
Разработчики могут использовать MIDI-3D для создания 3D-сцен из эскизов. Например, рисунок леса можно быстро превратить в 3D-модель деревьев и местности для импорта в Unity. - научные исследования
Исследователи могут использовать ее для проверки эффективности многообъектных моделей диффузии. Хотя модель обучена только на синтетических данных, она также хорошо адаптируется к реальным и мультипликационным изображениям. - цифровое искусство
Художники могут генерировать 3D-анимационные сцены из мультяшных картинок, чтобы быстро создавать творческие работы и экономить время моделирования.
QA
- Какие типы изображений поддерживает MIDI-3D?
адъювант.png
ответить пением.jpg
Формат. Для получения лучших результатов рекомендуется использовать четкие изображения. - Какая конфигурация оборудования требуется?
Для работы в среде CUDA требуется графический процессор NVIDIA с видеопамятью не менее 6 ГБ; процессора недостаточно. - Имеется ли созданная модель в продаже?
Да, проект использует лицензию MIT, которая генерирует.glb
Документы могут свободно использоваться в коммерческих целях при условии соблюдения лицензионных требований.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...