Рабочий процесс TripoSplat: изображение в 3D Gaussian Splats для ComfyUI#
Преобразуйте одно референсное изображение в общий 3D Gaussian Splats актив с видео предварительного просмотра орбиты. Этот рабочий процесс TripoSplat: изображение в 3D Gaussian Splats является официальным шаблоном ComfyUI 3D, который упрощает удаление фона, кондиционирование видения, выборку TripoSplat, декодирование сплатов, рендеринг в реальном времени и экспорт в SPZ с опциональным путем сетки GLB. Он построен на основе открытого проекта и статьи TripoSplat, которые вводят трисплановые функции для реконструкции 3D Gaussian из одного изображения GitHub и arXiv, с готовыми к использованию весами на Hugging Face.
Художники, разработчики игр и создатели XR могут быстро прототипировать реквизиты или стилизованные объекты из одного изображения, просматривать их в виде вращающегося столика и экспортировать активы, готовые для RunComfy. Шаблон, описанный в этом README, соответствует примерному рабочему процессу ComfyUI для TripoSplat, доступному на GitHub.
Ключевые модели в рабочем процессе ComfyUI TripoSplat: изображение в 3D Gaussian Splats#
- Точка проверки модели диффузии TripoSplat (UNet). Основной генератор, который предсказывает 3D Gaussian поле из особенностей одного изображения. Источники: GitHub и Hugging Face.
- Декодер VAE TripoSplat. Декодирует выборочные латентные переменные в явные параметры 3D Gaussian Splats для рендеринга и экспорта. Веса упакованы в карточку модели TripoSplat на Hugging Face.
- FLUX.2 VAE. Обеспечивает пространство кодирования изображения, используемое во время кондиционирования и выравнивания с трубопроводом TripoSplat. Распространяется с весами TripoSplat на Hugging Face.
- DINO v3 ViT-H основа видения. Поставляет высокоуровневые, надежные особенности изображения для реконструкции 3D с одного вида; поставляется вместе с активами рабочего процесса на Hugging Face.
- BiRefNet для удаления фона. Сегментирует передний план субъекта для улучшения кондиционирования и уменьшения беспорядка перед генерацией 3D. Веса модели: Hugging Face.
Как использовать рабочий процесс ComfyUI TripoSplat: изображение в 3D Gaussian Splats#
Этот рабочий процесс переходит от подготовки изображения и маски к выборке и декодированию TripoSplat, затем разветвляется на два экспортных пути: видео с живым предварительным просмотром орбиты и файл SPZ 3D Gaussian Splats. Третий, опциональный путь конвертирует сплаты в сетку для экспорта GLB.
- Загрузите и подготовьте ваше изображение
- Импортируйте референсное изображение в
LoadImage(#99). Если ваше изображение уже имеет прозрачность или подобранную маску, его можно использовать напрямую. В противном случае, встроенный подграф "Remove Background (BiRefNet)" изолирует субъект и передает чистую маску вперед.Switch: Mask Source(#35) автоматически выбирает между вашей маской и маской BiRefNet на основе переключателяauto_remove_background. ПрепроцессорTripoSplatPreprocessImage(#2) стандартизирует размер и комбинирует изображение с выбранной маской, чтобы субъект был центрирован и чист.
- Импортируйте референсное изображение в
- Изображение в Gaussian Splat (TripoSplat) подграф
- Основной подграф
Image to Gaussian Splat (TripoSplat)(#88) вычисляет кондиционирование с помощьюTripoSplatConditioning(#24), используя DINO v3 ViT-H и FLUX.2 VAE.KSampler(#6) запускает TripoSplat UNet с этими кондиционированиями для получения латентных переменных.VAEDecodeTripoSplat(#55) затем декодирует латентные переменные в фактическую структуру 3D Gaussian Splats. Если вам нужен быстрый просмотр перед полным декодированием, активируйте встроенный путь предварительного просмотра, который направляет модель черезTripoSplatSamplingPreview(#97).
- Основной подграф
- Создание 3D модели
- Декодированные сплаты экспортируются с помощью
SplatToFile3D(#92) в файл SPZ, который сохраняет 3D Gaussian поле. Это рекомендованный формат для последующего использования и для загрузки обратно в RunComfy. Узел с меткойSaveGLB(#51) получает файл и записывает его на диск в виде пакета SPZ для переносимости и обмена.
- Декодированные сплаты экспортируются с помощью
- Создание видео
- Для предварительного просмотра в виде вращающегося столика
CreateCameraInfo(#79) определяет камеру орбиты, аRenderSplat(#75) растеризует сплаты в кадры.CreateVideo(#41) сшивает эти кадры в видео, аSaveVideo(#42) записывает результат на диск. Эта ветка дает вам мгновенную визуальную обратную связь по охвату, плотности и силуэту перед окончательной экспортом.
- Для предварительного просмотра в виде вращающегося столика
- Создание 3D модели (экспериментально)
- Если вам нужна сетка, экспериментальная ветка конвертирует сплаты с помощью
SplatToMesh(#76) и записывает GLB черезSaveGLB(#67). Конвертация в сетку лучше всего подходит для быстрой визуализации или базового импорта в DCC. Для точности и удобного для освещения предварительного просмотра, родные сплаты плюс видео орбиты обычно выглядят лучше, чем ранняя сетка.
- Если вам нужна сетка, экспериментальная ветка конвертирует сплаты с помощью
Ключевые узлы в рабочем процессе ComfyUI TripoSplat: изображение в 3D Gaussian Splats#
VAEDecodeTripoSplat(#55)- Декодирует диффузные латентные переменные в полное представление 3D Gaussian Splats. Управление
num_gaussiansрегулирует плотность и использование памяти. Более высокие значения создают более плотные сплаты и более гладкие силуэты, но требуют больше времени и VRAM; начните скромно и увеличивайте, пока покрытие и детализация не удовлетворят ваши потребности.
- Декодирует диффузные латентные переменные в полное представление 3D Gaussian Splats. Управление
KSampler(#6)- Управляет выводом TripoSplat, используя кондиционирование и начальную латентную переменную. Настройте
seedдля новых структурных вариаций из одного и того же изображения. Держите другие параметры семплера стабильными, пока вы оцениваете изменения в извлечении переднего плана и композиции субъекта.
- Управляет выводом TripoSplat, используя кондиционирование и начальную латентную переменную. Настройте
TripoSplatConditioning(#24)- Создает визуальное руководство, которое делает возможной реконструкцию 3D из одного изображения, комбинируя функции DINO с латентной переменной VAE. Хорошие результаты зависят от чистого, центрированного субъекта и маски, исключающей загруженные фоны.
RenderSplat(#75)- Рендерит полученные сплаты в изображения для предварительного просмотра в виде вращающегося столика. Настройте размер вывода для баланса между чёткостью и скоростью, и используйте входные данные камеры из
CreateCameraInfo(#79) для управления стилем орбиты.
- Рендерит полученные сплаты в изображения для предварительного просмотра в виде вращающегося столика. Настройте размер вывода для баланса между чёткостью и скоростью, и используйте входные данные камеры из
SplatToMesh(#76)- Преобразует Gaussian представление в полигональную сетку для экспорта GLB. Ожидайте меньшей детализации, чем у родных сплатов; рассматривайте это как удобный путь, когда ваша целевая цепочка инструментов требует сеток.
Дополнительные советы#
- Используйте изображения с ясными, центрированными субъектами и хорошим отделением от фона; виды объектов с минимальной окклюзией работают лучше всего.
- Если ваш источник уже имеет прозрачность, отключите автоматическое удаление фона, чтобы сохранить вашу ручную маску.
- Увеличивайте
num_gaussiansпостепенно, чтобы найти оптимум для вашего GPU и сложности объекта. - Включите путь предварительного просмотра TripoSplat, чтобы проверить изоляцию субъекта и силуэт перед полным декодированием и экспортом.
- Предпочитайте SPZ для качества и редактируемости; используйте ветку сетки только в случае, если GLB строго необходим.
Благодарности#
Этот рабочий процесс реализует и основывается на следующих работах и ресурсах. Мы благодарны Comfy-Org за поддержку 3D Gaussian Splatting в ComfyUI и шаблон рабочего процесса 3D TripoSplat: изображение в Gaussian Splat, VAST AI Research и VAST AI за модель TripoSplat и репозиторий, а также авторам статьи TripoSplat за исследовательскую статью за их вклад и поддержку. Для получения авторитетной информации, пожалуйста, обратитесь к оригинальной документации и репозиториям, приведённым ниже.
Ресурсы#
- Comfy-Org/Bringing native support for 3D Gaussian Splatting
- Документация / Примечания к выпуску: Bringing native support for 3D Gaussian Splatting
- Comfy-Org/3d_triposplat_image_to_gaussian_splat.json
- GitHub: Comfy-Org/workflow_templates
- VAST-AI/TripoSplat (карточка модели)
- GitHub: VAST-AI-Research/TripoSplat
- Hugging Face: VAST-AI/TripoSplat
- arXiv: arXiv:2605.16355
- VAST-AI-Research/TripoSplat (репозиторий)
- GitHub: VAST-AI-Research/TripoSplat
- Hugging Face: VAST-AI/TripoSplat
- arXiv: arXiv:2605.16355
- TripoSplat/arXiv:2605.16355
- GitHub: VAST-AI-Research/TripoSplat
- Hugging Face: VAST-AI/TripoSplat
- arXiv: arXiv:2605.16355
Примечание: Использование упомянутых моделей, наборов данных и кода подчиняется соответствующим лицензиям и условиям, предоставленным их авторами и поддерживающими организациями.


