Speridlabs Idol 開源模型解析:單張圖片生成百萬級 3D Gaussian Splatting 物件
由空間智慧實驗室 Speridlabs 推出的開源模型 Idol (speridlabs/idol),能夠將單張物件照片、3D 渲染圖或 AI 生成圖像,直接轉換為可 360 度旋轉檢視的 3D Gaussian Splatting(3DGS)模型。該專案以 Apache 2.0 授權釋出模型權重與推論程式碼,在峰值顯示記憶體(VRAM)控制在 7.2 GB 的條件下,最高可輸出 1,048,576 個高斯點(Gaussians),讓消費級顯示卡也能在本地端執行單圖轉 3D 任務。
為什麼單張圖片轉 3D 需要 Idol?
傳統 3D 重建流程通常依賴多視角拍攝(Photogrammetry)或耗時的逐場景最佳化,若手上只有一張正面照片,往往難以直接還原出物件的側面與背面。
Speridlabs Idol 研究專案針對「單一視角輸入」進行設計。當使用者輸入一張圖片後,系統會依序執行自動去背、主體裁切對齊、視覺特徵編碼,並透過擴散轉換器(Diffusion Transformer, DiT)直接取樣出完整的 3D 高斯點雲。對於原始圖片未拍到的背面與死角,模型會根據訓練過程學到的三維幾何與外觀先驗知識進行推估補全,最終輸出標準 .ply 格式檔案,可直接載入各類支援 3D Gaussian Splatting 的檢視器中互動瀏覽。
根据 LHC Media 的技術報導,Idol 支援從 32,768 到 1,048,576 個高斯點的多段細節層級(須為 32 的倍數,預設為 262,144)。不同細節層級對應的 .ply 檔案大小差異如下:
- 32,768 Gaussians:檔案大小約 0.4 MB,適合輕量化快速預覽。
- 262,144 Gaussians(預設值):檔案大小約 3.2 MB,兼顧生成速度與幾何細節。
- 1,048,576 Gaussians(最高細節):檔案大小約 12.2 MB,保留更豐富的表面紋理與邊緣銳利度。
核心架構與硬體需求:0.66B 生成核心與 1.80B 完整管線
在官方說明中,Speridlabs Idol 模型卡將核心生成模型標示為約 6.6 億(0.66B)參數,而包含前置影像處理與視覺編碼器的完整推論管線則約為 18 億(1.80B)參數。
核心生成部分採用基於 Rectified-Flow 的擴散轉換器(DiT),搭配八叉樹解碼器(Octree Decoder)與高斯解碼器(Gaussian Decoder)將潛在表徵(Latent)轉換為 3D 高斯屬性。前置處理則整合了 BiRefNet 進行自動去背,並藉由 DINOv3 與 FLUX.2 VAE 擷取高維度語意與像素特徵。
以下為 Idol 官方 GitHub 儲存庫 (speridlabs/idol-sdk)公布的各組件參數規模與記憶體佔用明細:
| 模型組件 | 參數規模 | GPU 運算精度 | 權重 VRAM 佔用 | 功能角色 |
|---|---|---|---|---|
| DiT (Denoiser) | 370.6M | FP16 區塊 / FP32 嵌入與正規化 | ~0.8–1.0 GB | 核心 3D 擴散去噪生成 |
| Octree Decoder | 50.8M | FP16 區塊 / FP32 嵌入與正規化 | ~0.1–0.2 GB | 空間八叉樹結構解碼 |
| Gaussian Decoder | 237.3M | FP16 區塊 / FP32 嵌入與正規化 | ~0.5–0.9 GB | 輸出 3D 高斯點位置與外觀屬性 |
| BiRefNet | 220.7M | FP16 | ~0.44 GB | 自動移除輸入影像背景 |
| DINOv3 ViT-H+/16 | 840.6M | bf16(可切換 fp32) | ~1.68 GB | 擷取高階視覺語意特徵 |
| FLUX.2 VAE | 84.1M | bf16(由 FP32 權重載入轉換) | ~0.17 GB | 影像潛在空間編碼 |
| 完整推論管線總計 | ~1.80B | 混合 FP16 / bf16 / FP32 | 權重 ~3.7–4.4 GB(峰值 7.2 GB) | 單圖端到端轉 3DGS .ply |
由於完整推論的峰值 VRAM 僅需 7.2 GB,具備 8 GB 以上顯示記憶體的消費級 NVIDIA 顯示卡即可在本地執行,無須依賴雲端伺服器叢集。此外,SDK 預設開啟 GPU 加速取樣(透過 torch.compile 編譯去噪器、將有無條件引導合併為單一批次,以及在取樣時使用 cuDNN 與 TF32 矩陣運算),官方測試指出可在維持相同輸出品質的前提下帶來約 1.7 倍的速度提升。
官方基準測試與跨 GPU 推論速度
根據 Hugging Face 模型頁面公布的內部基準測試,研究團隊在單張 NVIDIA H100 GPU 上,將 Idol 與 TripoSplat、TRELLIS 及 LGM 三款同類模型進行對比,分別評估輸入視角重建品質(PSNR、SSIM、LPIPS、IoU)以及 7 個新視角的一致性指標(DINOv2、CLIP、銳利度距離 Sharpness distance):
| 模型名稱 | 測試設定 | PSNR ↑ | SSIM ↑ | LPIPS ↓ | IoU ↑ | DINOv2 ↑ | CLIP ↑ | 銳利度距離 ↓ | 單次耗時 ↓ |
|---|---|---|---|---|---|---|---|---|---|
| Idol | 50 步, 262,144 Gaussians | 12.25 | 0.726 | 0.213 | 0.862 | 0.781 | 0.885 | 0.81 | 6.8 s |
| TripoSplat | 50 步, 262,144 Gaussians | 11.76 | 0.712 | 0.225 | 0.860 | 0.743 | 0.868 | 1.03 | 9.9 s |
| TRELLIS | 論文預設, 50 + 50 步 | 11.89 | 0.716 | 0.235 | 0.845 | 0.754 | 0.868 | 0.97 | 7.1 s |
| LGM | 預設, 65,536 Gaussians | 12.46 | 0.722 | 0.237 | 0.834 | 0.575 | 0.784 | 1.22 | 1.1 s |
從官方資料來看,LGM 雖然在生成速度(1.1 秒)與 PSNR 指標最高,但官方備註指出 PSNR 計算的是像素平方誤差平均值,視覺上較模糊的結果反而容易獲得高分。而在感知相似度(LPIPS)、輪廓交集比(IoU)以及新視角的語意與結構一致性(DINOv2、CLIP、銳利度距離)上,Idol 均取得該測試表中的最佳成績。
針對不同硬體環境,Speridlabs 官方測試資料也列出了在相同設定下(50 步取樣、輸出 262,144 個高斯點、取 8 張測試影像之中位數)各款 NVIDIA GPU 的單次生成時間:
| GPU 型號 | 顯示記憶體 (VRAM) | 單次請求耗時(262,144 Gaussians, 50 步) |
|---|---|---|
| NVIDIA B300 | 269 GB | 3.4 秒 |
| NVIDIA B200 | 179 GB | 3.6 秒 |
| NVIDIA H200 | 140 GB | 6.6 秒 |
| NVIDIA H100 | 80 GB | 6.7 秒 |
| NVIDIA RTX 5090 | 32 GB | 14.1 秒 |
| NVIDIA A100 | 80 GB | 16.3 秒 |
| NVIDIA L40S | 45 GB | 16.6 秒 |
| NVIDIA RTX 4090 | 24 GB | 19.1 秒 |
| NVIDIA RTX 3080 | 10 GB | 46.2 秒 |
| NVIDIA L4 | 22 GB | 54.6 秒 |
線上體驗與本地部署教學
若想直接測試模型效果,使用者不一定要先配置本地環境,可以透過官方提供的雲端互動介面或下載 SDK 進行部署。
1. 透過 Hugging Face Spaces 線上試玩
官方在 Idol Hugging Face Space 架設了基於 ZeroGPU 的 Gradio 互動式網頁應用。頁面內建超過 90 組預先準備好的範例圖片,涵蓋家具、鞋子、機器人、食物與角色模型,使用者也可以直接上傳自己的圖片,調整高斯點數量(Detail)與隨機種子(Seed),並在瀏覽器內即時旋轉檢視生成的 3D 模型。
2. 本地端安裝 Idol SDK
若需整合至開發流程或進行批次處理,可從 GitHub (speridlabs/idol-sdk) 安裝推論工具包。系統環境需具備 Python 3.10 以上、PyTorch 2.5 以上,以及支援 CUDA 的 NVIDIA 顯示卡。
- 申請前置視覺編碼器權限:由於 Idol 依賴兩個受管控(Gated)的 Hugging Face 模型讀取影像特徵,安裝前需先登入 Hugging Face 帳號並同意 facebook/dinov3-vith16plus-pretrain-lvd1689m 與 black-forest-labs/FLUX.2-dev(僅下載其 VAE 組件)的使用條款,接著在終端機執行
hf auth login或設定HF_TOKEN環境變數。 - 下載並安裝套件:首次執行時,程式會自動將約 3 GB 的 Idol 模型權重與編碼器下載至 Hugging Face 快取目錄。
git clone https://github.com/speridlabs/idol-sdk.git cd idol-sdk pip install -e . # 若需在本地啟動 Gradio 網頁介面,可改用: pip install -e ".[demo]" - 執行指令列推論或 Python API:
針對輸入圖片類型,Idol 提供兩種裁切模式(
--mode):real適用於真實世界拍攝的照片(物件約佔畫面1/1.7),synthetic(預設)則適用於 3D 渲染圖或 AI 生成圖(物件約佔畫面1/1.2)。每次推論會同時輸出三個檔案:標準 3DGS 點雲檔# 處理真實照片 python -m idol.sample --image photo.jpg --mode real # 批次處理渲染圖或 AI 生成圖資料夾 python -m idol.sample --image renders/ --mode synthetic --out outputs<name>.ply、去背裁切後的模型實際輸入圖<name>_input.png,以及預測的相機參數檔<name>_camera.json。若在 Python 專案中呼叫,僅需數行程式碼即可完成:from idol import IdolPipeline pipeline = IdolPipeline.from_pretrained("speridlabs/idol") output = pipeline("photo.jpg", mode="real", seed=42, num_gaussians=1_048_576) output.gaussian.save_ply("photo.ply")
常見問題與應用限制(Q&A)
Idol 輸出的 .ply 檔案可以直接拿去 3D 列印或綁定骨架嗎?
不行直接使用。根據 Medium 技術評測與官方文件說明,Idol 生成的是 3D Gaussian Splatting(由大量半透明三維橢球體組成的輻射場表徵),而非傳統由頂點與多邊形面構成的網格(Polygon Mesh)。雖然檔案副檔名為 .ply,但內部並不包含拓撲網格、UV 貼圖座標或碰撞體結構。若要用於遊戲引擎碰撞偵測、角色骨架綁定(Rigging)或 3D 列印,必須另外透過高斯轉網格工具進行轉換與後製修整。
照片沒拍到的背面,Idol 是如何生成的?
單張照片無法提供物件背面的物理量測資料。Idol 的做法是結合影像前端特徵與訓練階段習得的 3D 先驗分布,推估出合理的背面形狀、厚度與色彩。這讓生成的物件非常適合用於電商產品 360 度環物展示、概念設計預覽或搭配 Speridlabs Iris-3B 等文生圖模型快速建立虛擬場景道具,但若應用場景要求背面具備精確的工業尺寸或特定背面文字細節,單圖推估仍存在物理上的限制。
社群是否已有 ComfyUI 整合支援?
根據 ComfyUI Wiki 的報導,隨著 Idol 以 Apache 2.0 授權開源釋出權重與 SDK,社群已同步推出對應的 ComfyUI 節點,方便創作者將「文生圖」與「單圖轉 3D 高斯點雲」串聯在同一個視覺化工作流中執行。
相關連結彙整
- Hugging Face 模型權重與說明卡:speridlabs/idol (Hugging Face Model Card)
- Hugging Face Spaces 線上互動體驗:Idol Demo Space (speridlabs/idol)
- GitHub 官方推論 SDK 與原始碼:speridlabs/idol-sdk (GitHub Repository)
- Speridlabs 官方研究專案主頁:Idol Research Page (speridlabs.com)
- 前置視覺編碼器依賴項(需申請存取權限):
- 延伸技術報導與評測: