Fluxo de trabalho TripoSplat image para 3D Gaussian Splats para ComfyUI#
Transforme uma única imagem de referência em um ativo compartilhável de 3D Gaussian Splats com um vídeo de pré-visualização de órbita. Este fluxo de trabalho TripoSplat image para 3D Gaussian Splats é um modelo oficial de 3D do ComfyUI que simplifica a remoção de fundo, condicionamento de visão, amostragem TripoSplat, decodificação de splat, renderização em tempo real e exportação para SPZ com um caminho de malha GLB opcional. Ele é construído em torno do projeto e artigo abertos TripoSplat, que introduzem recursos de triplano para reconstrução 3D Gaussian de uma única imagem GitHub e arXiv, com pesos prontos para uso em Hugging Face.
Artistas, desenvolvedores de jogos e criadores de XR podem rapidamente prototipar adereços ou objetos estilizados a partir de uma única imagem, visualizá-los como um disco giratório e exportar ativos que estão prontos para RunComfy. O modelo que este README descreve está alinhado com o exemplo de fluxo de trabalho ComfyUI para TripoSplat disponível no GitHub.
Modelos principais no fluxo de trabalho TripoSplat image para 3D Gaussian Splats no ComfyUI#
- Checkpoint do modelo de difusão TripoSplat (UNet). Gerador principal que prevê um campo Gaussian 3D a partir dos recursos de uma única imagem. Fontes: GitHub e Hugging Face.
- Decodificador VAE TripoSplat. Decodifica latentes amostrados em parâmetros explícitos de 3D Gaussian Splats para renderização e exportação. Os pesos estão embalados no cartão do modelo TripoSplat em Hugging Face.
- FLUX.2 VAE. Fornece um espaço de codificação de imagem usado durante o condicionamento e alinhamento com o pipeline TripoSplat. Distribuído com os pesos TripoSplat em Hugging Face.
- Backbone de visão DINO v3 ViT-H. Fornece recursos de imagem de alto nível e robustos para reconstrução 3D de uma única vista; enviado junto com os ativos do fluxo de trabalho em Hugging Face.
- BiRefNet para remoção de fundo. Segmenta o sujeito de primeiro plano para melhorar o condicionamento e reduzir a desordem antes da geração 3D. Pesos do modelo: Hugging Face.
Como usar o fluxo de trabalho TripoSplat image para 3D Gaussian Splats no ComfyUI#
Este fluxo de trabalho vai desde a preparação de imagem e máscara até a amostragem e decodificação TripoSplat, depois se ramifica em dois ramos de exportação: um vídeo de pré-visualização de órbita ao vivo e um arquivo SPZ de 3D Gaussian Splats. Um terceiro ramo opcional converte splats em uma malha para exportação GLB.
- Carregue e prepare sua imagem
- Importe uma imagem de referência em
LoadImage(#99). Se sua imagem já tiver transparência ou uma máscara curada, ela pode ser usada diretamente. Caso contrário, o subgrafo incorporado "Remover Fundo (BiRefNet)" isola o sujeito e encaminha uma máscara limpa. OSwitch: Mask Source(#35) escolhe automaticamente entre sua máscara e a máscara BiRefNet com base no alternadorauto_remove_background. O pré-processadorTripoSplatPreprocessImage(#2) padroniza o tamanho e combina a imagem com a máscara escolhida para que o sujeito esteja centralizado e limpo.
- Importe uma imagem de referência em
- Subgrafo de Imagem para Gaussian Splat (TripoSplat)
- O subgrafo principal
Image to Gaussian Splat (TripoSplat)(#88) calcula o condicionamento comTripoSplatConditioning(#24) usando DINO v3 ViT-H e o FLUX.2 VAE. UmKSampler(#6) executa o TripoSplat UNet com esses condicionamentos para produzir latentes.VAEDecodeTripoSplat(#55) então decodifica os latentes em uma estrutura real de 3D Gaussian Splats. Se você quiser uma visualização rápida antes de uma decodificação completa, ative o caminho de pré-visualização embutido que direciona o modelo através deTripoSplatSamplingPreview(#97).
- O subgrafo principal
- Criar Modelo 3D
- Os splats decodificados são exportados com
SplatToFile3D(#92) para um arquivo SPZ que preserva o campo Gaussian 3D. Este é o formato recomendado para uso posterior e para carregar de volta no RunComfy. O nó rotuladoSaveGLB(#51) recebe o arquivo e o grava no disco como um pacote SPZ para portabilidade e compartilhamento.
- Os splats decodificados são exportados com
- Criar Vídeo
- Para uma pré-visualização em turntable,
CreateCameraInfo(#79) define uma câmera de órbita eRenderSplat(#75) rasteriza os splats em quadros.CreateVideo(#41) costura esses quadros em um vídeo, eSaveVideo(#42) grava o resultado no disco. Este ramo dá um feedback visual instantâneo sobre cobertura, densidade e silhueta antes de finalizar as exportações.
- Para uma pré-visualização em turntable,
- Criar Modelo 3D (experimental)
- Se você precisar de uma malha, o ramo experimental converte os splats com
SplatToMesh(#76) e grava um GLB viaSaveGLB(#67). A conversão de malha é melhor para visualização rápida ou importação básica para DCC. Para pré-visualizações amigáveis a iluminação e fidelidade, os splats nativos mais o vídeo de órbita geralmente têm uma aparência melhor do que uma malha inicial.
- Se você precisar de uma malha, o ramo experimental converte os splats com
Nós principais no fluxo de trabalho TripoSplat image para 3D Gaussian Splats no ComfyUI#
VAEDecodeTripoSplat(#55)- Decodifica latentes de difusão em uma representação completa de 3D Gaussian Splats. O controle
num_gaussiansgoverna a densidade e o uso de memória. Valores mais altos criam splats mais densos e silhuetas mais suaves, mas demoram mais e exigem mais VRAM; comece modestamente e escale até que a cobertura e o detalhe atendam às suas necessidades.
- Decodifica latentes de difusão em uma representação completa de 3D Gaussian Splats. O controle
KSampler(#6)- Conduz a inferência TripoSplat usando o condicionamento e o latente inicial. Ajuste
seedpara novas variações estruturais da mesma imagem. Mantenha outras escolhas de amostrador estáveis enquanto avalia mudanças na extração de primeiro plano e composição do sujeito.
- Conduz a inferência TripoSplat usando o condicionamento e o latente inicial. Ajuste
TripoSplatConditioning(#24)- Constrói a orientação de visão que torna viável o 3D de uma única imagem, combinando recursos DINO com um latente VAE. Bons resultados dependem de um sujeito limpo, centralizado e de uma máscara que exclua fundos ocupados.
RenderSplat(#75)- Renderiza os splats resultantes para imagens da pré-visualização em turntable. Ajuste o tamanho de saída para o equilíbrio entre nitidez e velocidade, e use a entrada de informações da câmera de
CreateCameraInfo(#79) para controlar o estilo de órbita.
- Renderiza os splats resultantes para imagens da pré-visualização em turntable. Ajuste o tamanho de saída para o equilíbrio entre nitidez e velocidade, e use a entrada de informações da câmera de
SplatToMesh(#76)- Converte a representação Gaussian em uma malha poligonal para exportação GLB. Espere menos detalhes finos do que splats nativos; trate isso como um caminho de conveniência quando sua cadeia de ferramentas de destino exigir malhas.
Extras opcionais#
- Use imagens com sujeitos claros, centralizados e boa separação do fundo; vistas de objetos com mínima oclusão funcionam melhor.
- Se sua fonte já tiver transparência, desative a remoção automática de fundo para preservar sua máscara feita à mão.
- Aumente
num_gaussiansgradualmente para encontrar o ponto ideal para sua GPU e complexidade do objeto. - Ative o caminho de pré-visualização do TripoSplat para validar a isolação do sujeito e a silhueta antes de executar uma decodificação completa e exportações.
- Prefira SPZ para qualidade e editabilidade; use o ramo de malha apenas quando um GLB for estritamente necessário.
Agradecimentos#
Este fluxo de trabalho implementa e se baseia nos seguintes trabalhos e recursos. Agradecemos sinceramente à Comfy-Org pelo suporte nativo de 3D Gaussian Splatting do ComfyUI e pelo modelo de fluxo de trabalho de imagem para gaussian-splat de 3D TripoSplat, à VAST AI Research e à VAST AI pelo modelo e repositório TripoSplat, e aos autores do artigo TripoSplat pelo artigo de pesquisa por suas contribuições e manutenção. Para detalhes autoritativos, consulte a documentação original e os repositórios vinculados abaixo.
Recursos#
- Comfy-Org/Bringing native support for 3D Gaussian Splatting
- Docs / Release Notes: Bringing native support for 3D Gaussian Splatting
- Comfy-Org/3d_triposplat_image_to_gaussian_splat.json
- GitHub: Comfy-Org/workflow_templates
- VAST-AI/TripoSplat (model card)
- GitHub: VAST-AI-Research/TripoSplat
- Hugging Face: VAST-AI/TripoSplat
- arXiv: arXiv:2605.16355
- VAST-AI-Research/TripoSplat (repository)
- 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
Nota: O uso dos modelos, conjuntos de dados e códigos referenciados está sujeito às respectivas licenças e termos fornecidos por seus autores e mantenedores.



