Idol: Open Apache-2.0 Model Turns One Image Into a 3D Gaussian Splat Prop

Introduction
Speridlabs has released Idol, an open image-to-3D model that turns one picture of an object into a 3D Gaussian splat, including the sides the picture never showed. The code and weights are Apache 2.0, and you can run it today in a Hugging Face Space, from the idol-sdk repo, or straight from the model card, which went up on October 28.
For game work it's a fast way to get a turnable 3D prop out of a concept render, a generated image or a product photo. The output is a standard 3DGS .ply, not a mesh, so read the caveats before you plan a pipeline around it.
What shipped
- Model: Idol, single image to 3D Gaussian splat
- Vendor: Speridlabs (project lead Alejandro Cañada, with Chema Garabito)
- Modality: image-to-3D
- Open vs API: open weights and code under Apache 2.0. There's no hosted API, just the free Space and local inference.
- Where to run it today: the Hugging Face Space (ZeroGPU, with 93 ready examples or your own image), or locally on an NVIDIA GPU with CUDA
- Concrete fact: 7.2 GB peak VRAM per request, and up to 1,048,576 Gaussians per object
How it works
Idol removes the background, frames the object, and samples Gaussians with a diffusion transformer. An octree decoder and a Gaussian decoder then turn that into the splat. The generator itself is about 0.66B parameters (a 370.6M denoiser, a 50.8M octree decoder and a 237.3M Gaussian decoder).
It reads the input through two other models: Meta's DINOv3 ViT-H+/16 and the VAE from FLUX.2-dev, plus BiRefNet for background removal. Counting those, a full request is about 1.8B parameters, or roughly 3.7 to 4.4 GB of weights on the GPU.
You choose the level of detail per object, anywhere from 32,768 to 1,048,576 Gaussians in steps of 32. Speridlabs' project page puts a sample object at 0.4 MB with 32,768 Gaussians, 3.2 MB with 262,144, and 12.2 MB at the full million. That range is handy when you want light background props and a dense hero object from the same model.
Each run writes three files: the .ply splat, the cropped input image the model actually saw, and a JSON file with the predicted camera.
Speed and benchmarks
Speridlabs' own timings are for one image at 262,144 Gaussians and 50 steps. They're 19.1 s on an RTX 4090, 14.1 s on an RTX 5090, 46.2 s on an RTX 3080 and 3.4 s on a B300. The first image in a process takes longer while torch.compile warms up. The card's intro also says "under 2 seconds", which those 50-step numbers don't show, so expect the table's figures unless you cut steps or Gaussians.
In the vendor's benchmark against TripoSplat, TRELLIS and LGM, Idol leads on SSIM, LPIPS, IoU and on DINOv2 and CLIP scores at seven new views. LGM keeps the best input-view PSNR, and Speridlabs notes that its results look blurry anyway. These are Speridlabs' numbers on its own test set, not independent results.
Caveats
- It's a splat, not a mesh. You don't get topology, UVs, a rig or a collision shape. To use it as a game asset you need a renderer that draws Gaussian splats, or a separate splat-to-mesh step.
- Gated dependencies. The DINOv3 and FLUX.2-dev repos on Hugging Face are gated. You have to accept their terms and log in before Idol will download anything, and those two models have their own licenses, separate from Idol's Apache 2.0. Check them before commercial use.
- NVIDIA only for local runs. The SDK asks for Python 3.10+, PyTorch 2.5+ and a CUDA GPU.
- Single objects. It's built for one object per image, not whole scenes or characters ready to animate.
Try it
Accept the terms on DINOv3 ViT-H+/16 and FLUX.2-dev, then:
hf auth login
git clone https://github.com/speridlabs/idol-sdk.git
cd idol-sdk
pip install -e .
python -m idol.sample --image prop_concept.png --mode synthetic --num_gaussians 262144Use --mode synthetic for renders and generated images, and --mode real for photos (it leaves more room around the object). Weights, about 3 GB, download on the first run.
To feed it, generate a clean prop on a plain background. A prompt like this works well as a starting point:
A single fantasy treasure chest, iron-banded oak with brass corners, three-quarter view, centered, full object visible, soft even studio lighting, plain light gray background, no shadow clutter, game prop concept renderOpen the .ply in any Gaussian splat viewer and turn it around to see how well it guessed the back.
—Titus
