Controle de Movimento de Objeto e Corpo SAM 3D ComfyUI
Este workflow oferece geração consciente de 3D, guiada por estrutura, a partir de uma única imagem usando mascaramento baseado em Segment Anything e raciocínio de profundidade. Inclui dois modos prontos para uso: Modo Objeto para extrair e reconstruir qualquer sujeito mascarado como uma malha 3D texturizada ou Gaussiana 3D, e Modo Corpo para construir uma malha humana com consciência de partes do corpo. O design SAM 3D ComfyUI enfatiza a consistência espacial, tornando-o ideal para controle de movimento de objetos, orientação de movimento corporal e criação de ativos controláveis para pipelines de vídeo ou 3D.
Construído sobre os projetos open source SAM3D, este workflow SAM 3D ComfyUI transforma uma imagem simples mais máscara em ativos GLB, STL e PLY exportáveis com alinhamento de pose e baking de textura. É bem adequado para criadores que desejam resultados rápidos e controláveis sem ajuste fino.
Nota:
Recomenda-se que este workflow de "Objeto" 3D seja executado em máquinas Médias, Grandes ou XLarge. Tipos de máquinas maiores podem levar a erros de execução ou resultados instáveis. O workflow de "Corpo" funciona bem para todos os tipos de máquinas.
Devido à complexidade da reconstrução e otimização 3D, o workflow "3D Object" pode levar ~40 minutos ou mais para ser concluído.
Modelos chave no workflow Comfyui SAM 3D ComfyUI
- Modelo Segment Anything (SAM). Usado para segmentação de alta qualidade e acionável que ancora restrições espaciais. Veja o artigo original para detalhes: Segment Anything.
- Componentes pré-treinados SAM3D Objects. Fornecem profundidade, estrutura esparsa, geração SLAT, decodificadores de malha e Gaussiana, e embutidores de textura para reconstrução de objetos. Fonte: PozzettiAndrea/ComfyUI-SAM3DObjects.
- Componentes pré-treinados SAM3D Body. Fornecem processamento consciente de partes do corpo para gerar malhas humanas e uma visão de depuração. Fonte: PozzettiAndrea/ComfyUI-SAM3DBody.
- Estimador de profundidade monocular incluído nos repositórios SAM3D. Fornece intrínsecos de câmera, um mapa de pontos e uma máscara informada por profundidade que melhoram a reconstrução e o alinhamento de pose. Veja os dois repositórios SAM3D acima.
- Formulação de Splatting Gaussiana 3D. Permite representações de cena rápidas e fotorrealistas baseadas em pontos que são úteis para pré-visualizações rápidas e certos renderizadores: 3D Gaussian Splatting for Real-Time Rendering.
Como usar o workflow Comfyui SAM 3D ComfyUI
Em um nível alto, você carrega uma única imagem e sua máscara, depois escolhe o grupo Objeto ou o grupo Corpo. O Modo Objeto reconstrói uma malha texturizada e uma representação Gaussiana 3D com refinamento de pose opcional. O Modo Corpo constrói uma malha consciente de partes do corpo e a exporta para inspeção rápida ou uso posterior.
Grupo SAM3DObjects
Este grupo transforma seu sujeito mascarado em um ativo 3D. Forneça uma imagem com uma máscara que isole o objeto que você deseja controlar; o workflow lida automaticamente com a inversão para tratar o sujeito como primeiro plano. A profundidade e os intrínsecos da câmera são estimados para produzir um mapa de pontos, depois uma estrutura esparsa e uma pose inicial são criadas. A partir daí, uma representação SLAT é gerada e decodificada em uma malha e uma Gaussiana 3D; um baking de textura transfere a aparência da imagem fonte para a malha. Finalmente, a otimização de pose refina o alinhamento antes de você pré-visualizar e exportar; veja SAM3D_DepthEstimate (#59), SAM3DSparseGen (#52), SAM3DSLATGen (#35), SAM3DMeshDecode (#45), SAM3DGaussianDecode (#37), SAM3DTextureBake (#47), e SAM3D_PoseOptimization (#57).
Grupo SAM3DBody
Este grupo foca em sujeitos humanos. Forneça uma imagem e uma máscara que cubram a pessoa. O processador de corpo produz uma malha consciente de partes do corpo e uma imagem de depuração para você verificar a qualidade da segmentação. Você pode exportar o resultado como uma malha para inspeção ou rigging, depois pré-visualizá-lo interativamente. As etapas essenciais passam por LoadSAM3DBodyModel (#62), SAM3DBodyProcess (#61), SAM3DBodyExportMesh (#64), e Preview3D (#65).
Nós chave no workflow Comfyui SAM 3D ComfyUI
LoadSAM3DModel (#44) Carrega todos os pesos do modo objeto em um só lugar, incluindo gerador de estrutura esparsa de profundidade, gerador e decodificadores SLAT, além de embutidores de textura. Se os pesos estiverem hospedados no Hugging Face, insira seu token e mantenha o provedor configurado adequadamente. Use precisão automática, a menos que você tenha uma razão para forçar um dtype específico. Uma vez carregados, os mesmos manipuladores alimentam todo o pipeline de objetos.
SAM3D_DepthEstimate (#59) Estima profundidade monocular, intrínsecos de câmera, um mapa de pontos e uma máscara informada por profundidade da sua imagem de entrada. Um bom enquadramento é importante: mantenha o sujeito razoavelmente centralizado e evite cortes extremos para intrínsecos mais estáveis. Use a pré-visualização de nuvem de pontos embutida para verificar a geometria antes de se comprometer com bakes longos. Os intrínsecos e o mapa de pontos produzidos aqui são reutilizados mais tarde para otimização de pose.
SAM3DSparseGen (#52) Constrói uma estrutura esparsa e uma pose inicial combinando a imagem, a máscara de primeiro plano e as saídas de profundidade. Se sua máscara for muito solta, espere por flutuadores e estrutura mais fraca; aperte as bordas para resultados mais nítidos. O nó também emite um objeto de pose que você pode pré-visualizar para garantir que a orientação pareça correta. Esta estrutura esparsa condiciona diretamente o gerador SLAT.
SAM3DSLATGen (#35) Converte a estrutura esparsa em uma representação SLAT que é compacta e ainda assim consciente da geometria. Um SLAT mais limpo geralmente segue de uma máscara precisa e boa profundidade. Se você planeja confiar na saída de malha sobre Gaussiana, favoreça configurações que preservem detalhes em vez de extrema escassez. O caminho SLAT emitido alimenta ambos os decodificadores.
SAM3DMeshDecode (#45) Decodifica SLAT em uma malha 3D à prova d'água adequada para texturização e exportação. Escolha malha quando você precisar de topologia que funcione em ferramentas DCC e motores de jogo. Se você vir suavização excessiva ou buracos, reveja a máscara e a densidade da estrutura esparsa a montante. Este caminho produz um GLB que será assado e opcionalmente alinhado de pose posteriormente.
SAM3DGaussianDecode (#37) Gera uma representação Gaussiana 3D a partir do mesmo SLAT para pré-visualizações rápidas e certos renderizadores. É útil quando você deseja validar rapidamente a geometria e a cobertura de ponto de vista. Se sua Gaussiana parecer ruidosa, melhore a máscara ou aumente a qualidade da estrutura em vez de ajustar demais este nó. O PLY resultante também auxilia no baking de textura.
SAM3DTextureBake (#47) Projeta a aparência da imagem fonte na malha decodificada. Use uma resolução de textura mais alta quando precisar de close-ups e um preset mais rápido para iteração rápida. A escolha do renderizador pode impactar a nitidez e a velocidade; escolha a opção mais rápida para pré-visualizações e a de maior qualidade para finais. Este nó gera o GLB texturizado para pré-visualização e refinamento de pose.
SAM3D_PoseOptimization (#57) Refina o alinhamento do GLB usando intrínsecos de câmera, o mapa de pontos, a máscara original e a pose inicial. Aumente o orçamento de otimização se observar desalinhamento em torno de estruturas finas como membros ou alças. Mantenha a máscara de primeiro plano limpa para evitar que o otimizador se desvie em direção à geometria de fundo. O GLB otimizado está então pronto para inspeção na pré-visualização 3D.
SAM3DBodyProcess (#61) Realiza processamento consciente de partes do corpo para produzir uma malha humana e uma sobreposição de depuração. Selecione o modo que se adapta ao seu caso de uso, como corpo inteiro vs uma região específica, para guiar a cobertura da malha. Se mãos ou cabelo cortarem, refine a máscara em torno dessas áreas para melhor fidelidade. Exporte para STL para verificações rápidas ou converta mais tarde conforme necessário.
Extras opcionais
- Use uma máscara limpa e de alto contraste. Desfie apenas ligeiramente; bordas duras geralmente se reconstróem melhor no modo de objeto SAM 3D ComfyUI.
- Para iteração rápida, confie primeiro no caminho Gaussiano, depois mude para decodificação de malha e bakes de textura de maior resolução.
- Se os pesos exigirem autenticação, cole um token válido do Hugging Face nos nós do carregador antes de enfileirar o gráfico.
- Inspecione a nuvem de pontos e pré-visualizações de pose antes de bakes longos para detectar problemas de enquadramento ou máscara cedo.
- Formatos de exportação: GLB é ideal para DCC e motores, PLY Gaussianas para renderizadores compatíveis, STL do modo corpo para verificações rápidas de escala de impressão.
- Mantenha a escala do sujeito consistente entre os disparos se você planeja usar saídas SAM 3D ComfyUI para conduzir movimento subsequente ou sequências de múltiplas vistas.
Agradecimentos
Este workflow implementa e constrói sobre os seguintes trabalhos e recursos. Agradecemos sinceramente a PozzettiAndrea por SAM 3D Objects e SAM 3D Body por suas contribuições e manutenção. Para detalhes autoritativos, consulte a documentação original e os repositórios vinculados abaixo.
Recursos
- PozzettiAndrea/SAM 3D Objects
- GitHub: PozzettiAndrea/ComfyUI-SAM3DObjects
- PozzettiAndrea/SAM 3D Body
- GitHub: PozzettiAndrea/ComfyUI-SAM3DBody
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.


