TripoSplat 圖像到 3D Gaussian Splats 工作流程在 ComfyUI 中#
將單一參考圖像轉換為可共享的 3D Gaussian Splats 資產,並附帶軌道預覽視頻。這個 TripoSplat 圖像到 3D Gaussian Splats 工作流程是官方的 ComfyUI 3D 模板,簡化了背景移除、視覺調節、TripoSplat 取樣、splat 解碼、實時渲染和導出到 SPZ,並可選 GLB 網格路徑。它圍繞開放的 TripoSplat 項目和論文構建,介紹了單一圖像 3D Gaussian 重建的三平面特徵 GitHub 和 arXiv,配備 Hugging Face 上的即用權重。
藝術家、遊戲開發者和 XR 創作者可以快速從單一圖像原型化道具或風格化對象,將其預覽為旋轉平台,並導出 RunComfy-ready 的資產。此 README 描述的模板與 GitHub 上的 TripoSplat 上游 ComfyUI 工作流程範例一致。
ComfyUI TripoSplat 圖像到 3D Gaussian Splats 工作流程中的關鍵模型#
- TripoSplat 擴散模型檢查點 (UNet)。核心生成器,從單一圖像的特徵預測 3D Gaussian 場。來源:GitHub 和 Hugging Face。
- TripoSplat VAE 解碼器。將取樣的潛在變量解碼為顯式 3D Gaussian Splats 參數以進行渲染和導出。權重包裝在 Hugging Face 的 TripoSplat 模型卡中。
- FLUX.2 VAE。提供在 TripoSplat 管道中使用的圖像編碼空間,用於調節和對齊。與 Hugging Face 上的 TripoSplat 權重一起分發。
- DINO v3 ViT-H 視覺骨幹。提供單視圖 3D 重建的高層次、穩健的圖像特徵;隨著工作流程的資產一起在 Hugging Face 中發送。
- BiRefNet 用於背景移除。分割前景主題以改善調節並在 3D 生成之前減少雜亂。模型權重:Hugging Face。
如何使用 ComfyUI TripoSplat 圖像到 3D Gaussian Splats 工作流程#
此工作流程從圖像和遮罩準備開始,然後進行 TripoSplat 取樣和解碼,然後分成兩個導出分支:實時軌道預覽視頻和 SPZ 3D Gaussian Splats 文件。第三個可選分支將 splats 轉換為網格以進行 GLB 導出。
- 加載並準備圖像
- 在
LoadImage(#99) 中導入參考圖像。如果您的圖像已經具有透明度或經過策劃的遮罩,可以直接使用。否則,嵌入的“Remove Background (BiRefNet)”子圖將隔離主題並向前傳遞乾淨的遮罩。Switch: Mask Source(#35) 根據auto_remove_background切換自動選擇您的遮罩和 BiRefNet 遮罩。預處理器TripoSplatPreprocessImage(#2) 標準化尺寸並將圖像與選定的遮罩結合,使主題居中且乾淨。
- 在
- 圖像到 Gaussian Splat (TripoSplat) 子圖
- 核心子圖
Image to Gaussian Splat (TripoSplat)(#88) 使用 DINO v3 ViT-H 和 FLUX.2 VAE 計算調節,通過TripoSplatConditioning(#24) 進行。KSampler(#6) 使用這些調節運行 TripoSplat UNet 以生成潛在變量。然後VAEDecodeTripoSplat(#55) 將潛在變量解碼為實際的 3D Gaussian Splats 結構。如果您想在完全解碼之前快速查看,啟用內置預覽路徑,將模型通過TripoSplatSamplingPreview(#97)。
- 核心子圖
- 創建 3D 模型
- 使用
SplatToFile3D(#92) 將解碼的 splats 導出為保留 3D Gaussian 場的 SPZ 文件。這是下游使用和加載回 RunComfy 的推薦格式。標記為SaveGLB(#51) 的節點接收文件並將其作為 SPZ 包寫入磁盤,以便攜和共享。
- 使用
- 創建視頻
- 對於旋轉平台預覽,
CreateCameraInfo(#79) 定義一個軌道相機,RenderSplat(#75) 將 splats 光柵化為幀。CreateVideo(#41) 將這些幀縫合成視頻,SaveVideo(#42) 將結果寫入磁盤。此分支為您提供即時的視覺反饋,以便在最終導出之前檢查覆蓋、密度和輪廓。
- 對於旋轉平台預覽,
- 創建 3D 模型(實驗性)
- 如果您需要網格,實驗性分支會使用
SplatToMesh(#76) 轉換 splats 並通過SaveGLB(#67) 寫入 GLB。網格轉換最適合快速可視化或基本 DCC 導入。對於保真度和適合照明的預覽,原生 splats 加上軌道視頻通常比早期網格更好看。
- 如果您需要網格,實驗性分支會使用
ComfyUI TripoSplat 圖像到 3D Gaussian Splats 工作流程中的關鍵節點#
VAEDecodeTripoSplat(#55)- 將擴散潛在變量解碼為完整的 3D Gaussian Splats 表示。
num_gaussians控制密度和內存使用。更高的值創建更密集的 splats 和更平滑的輪廓,但需要更長的時間和更多的 VRAM;從適度開始,然後擴展直到覆蓋和細節滿足您的需求。
- 將擴散潛在變量解碼為完整的 3D Gaussian Splats 表示。
KSampler(#6)- 使用調節和初始潛在變量驅動 TripoSplat 推論。調整
seed以從相同圖像中獲得新的結構變化。在評估前景提取和主題構圖的變化時,保持其他取樣器選擇穩定。
- 使用調節和初始潛在變量驅動 TripoSplat 推論。調整
TripoSplatConditioning(#24)- 通過將 DINO 特徵與 VAE 潛在變量結合,創建使單一圖像 3D 成為可能的視覺指導。良好的結果取決於乾淨、居中的主題和排除繁忙背景的遮罩。
RenderSplat(#75)- 將結果 splats 渲染為預覽旋轉台的圖像。調整輸出大小以在清晰度和速度之間取得平衡,並使用來自
CreateCameraInfo(#79) 的相機信息輸入來控制軌道風格。
- 將結果 splats 渲染為預覽旋轉台的圖像。調整輸出大小以在清晰度和速度之間取得平衡,並使用來自
SplatToMesh(#76)- 將 Gaussian 表示轉換為多邊形網格以進行 GLB 導出。預期比原生 splats 更低的細節;當您的目標工具鏈需要網格時,將其作為便捷路徑。
可選附加功能#
- 使用具有明確、居中主題且與背景有良好分離的圖像;物體視圖阻擋最少的效果最佳。
- 如果您的源已經具有透明度,禁用自動背景移除以保留您手工製作的遮罩。
- 逐漸增加
num_gaussians以找到適合您的 GPU 和物體複雜性的最佳點。 - 啟用 TripoSplat 預覽路徑以在運行完整解碼和導出之前驗證主題隔離和輪廓。
- 優先選擇 SPZ 以獲得質量和可編輯性;僅在嚴格需要 GLB 時使用網格分支。
鳴謝#
此工作流程實現並建立在以下工作和資源之上。我們誠摯感謝 Comfy-Org 提供的 ComfyUI 原生 3D Gaussian Splatting 支持和 3D TripoSplat 圖像到 gaussian splat 工作流程模板,VAST AI Research 和 VAST AI 的 TripoSplat 模型和資料庫,以及 TripoSplat 論文作者提供的研究論文的貢獻和維護。有關權威詳情,請參考下方鏈接的原始文檔和資料庫。
資源#
- Comfy-Org/引入原生支持 3D Gaussian Splatting
- 文檔 / 發布說明: 引入原生支持 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
注意:參考模型、數據集和代碼的使用受其作者和維護者提供的各自許可和條款約束。


