Idol turns a single photo into a 3D Gaussian splat on a gaming GPU

Speridlabs has released Idol, a model that turns one image of an object into a 3D model of up to a million Gaussians in seconds, including the sides the image never shows. It runs on 7.2 GB of VRAM, so a regular gaming graphics card is enough.

Model releases Try it yourself Oct 29, 2026 6 min read Source: Reddit: lokale Modelle & Bild-KI
Illustrative image, AI-generated

What this is about

The team at Speridlabs has released the model Idol on Hugging Face. From a single image of an object, it produces a three-dimensional representation as a 3D Gaussian splat. This is a technique in which a scene or object is made up of a great many small, soft, colored 3D points ("Gaussians"), a bit like a cloud of tiny dabs of paint. Idol takes a photo, a render or an AI-generated image, removes the background, frames the object properly and generates up to 1,048,576 Gaussians. The model also invents the sides the image never showed.

The output is a regular 3DGS file in .ply format that opens in any common Gaussian splat viewer. According to the maker, Idol runs on consumer graphics cards, needs 7.2 GB of VRAM (video memory) and can finish in under two seconds.

How it works and how to get started

Idol reads its input image through two helper models that are available on Hugging Face only after you accept their terms ("gated"): DINOv3 (facebook/dinov3-vith16plus-pretrain-lvd1689m) and the VAE from black-forest-labs/FLUX.2-dev (only the VAE is loaded). A VAE is a building block that translates images into a compact internal representation. Once you have accepted the terms, you log in once with hf auth login or set HF_TOKEN.

Then you clone the speridlabs/idol-sdk repository and install it with pip install -e .. You need Python 3.10+, PyTorch 2.5+ and an NVIDIA GPU with CUDA. There is no separate download step: on the first run, the Idol weights (about 3 GB) and the two encoders are downloaded automatically into the Hugging Face cache. If the encoders haven't been unlocked yet, Idol stops before downloading and tells you what's missing.

Command-line call: python -m idol.sample --image photo.jpg --mode real. For each image, you get a .ply file, an _input.png (the image after background removal and cropping) and a _camera.json with the estimated camera. You can also pass a folder of images. The mode sets the margin around the object: synthetic (default) for renders and generated single-object images, real for photos with more space around the subject.

Key parameters:

Flag Default Effect
--seed 42 The same value gives the same object
--steps 50 Sampling steps; fewer is faster but less detailed
--cfg_strength 3.0 How closely the object follows the image
--rescale_t 3.0 Higher: more steps for the coarse shape; lower: more for fine detail
--num_gaussians 262144 32,768 to 1,048,576, a multiple of 32
--dinov3_dtype bf16 fp32 needs 1.7 GB more memory

By default, accelerated sampling is enabled on the GPU (about 1.7x faster at the same quality, according to the maker): the denoiser is compiled with torch.compile, and guided and unguided passes run as a single batch. The first image in each process is slower because of compilation.

Architecture and memory use

In total, a request involves about 1.8 billion parameters (roughly speaking, the knobs the model learned during training), spread across several components: a DiT denoiser with 370.6M, an octree decoder with 50.8M, a Gaussian decoder with 237.3M, BiRefNet for background removal with 220.7M, DINOv3 with 840.6M and the FLUX.2 VAE with 84.1M. The weights take up about 3.7–4.4 GB, and peak usage is 7.2 GB.

Benchmarks and speed

The maker compares Idol with TripoSplat, TRELLIS and LGM (each on an H100). The evaluation covers the input-image view (PSNR, SSIM, LPIPS, IoU) and seven novel views (DINOv2, CLIP, sharpness distance).

Model PSNR SSIM LPIPS (lower is better) IoU DINOv2 CLIP Time
Idol 12.25 0.726 0.213 0.862 0.781 0.885 6.8 s
TripoSplat 11.76 0.712 0.225 0.860 0.743 0.868 9.9 s
TRELLIS 11.89 0.716 0.235 0.845 0.754 0.868 7.1 s
LGM 12.46* 0.722 0.237 0.834 0.575 0.784 1.1 s

LGM has the highest PSNR even though its results are visibly blurry, because PSNR averages squared pixel errors. LGM is also the fastest at 1.1 s, but it uses only 65,536 Gaussians. These are the maker's figures; there are no independent tests.

At 50 steps and 262,144 Gaussians (median over 8 images), the timings look like this:

GPU VRAM Time
B300 269 GB 3.4 s
H100 80 GB 6.7 s
RTX 5090 32 GB 14.1 s
RTX 4090 24 GB 19.1 s
RTX 3080 10 GB 46.2 s
L4 22 GB 54.6 s

So the "under 2 seconds" claim only holds with fewer steps or on very fast hardware. On home GPUs with default settings, expect roughly 15 to 50 seconds.

What you need to try it

  • An NVIDIA GPU with CUDA and at least about 8–10 GB of VRAM (peak usage is 7.2 GB; the 10 GB RTX 3080 has been tested).
  • Around 3 GB for the Idol weights, plus space for the two encoders in the Hugging Face cache.
  • Python 3.10+, PyTorch 2.5+, and a Hugging Face account with access to DINOv3 and FLUX.2-dev.
  • According to the source, Mac or CPU-only operation isn't supported; an NVIDIA GPU is required. A cloud GPU (for example in Google Colab) is conceivable in principle, but the source doesn't mention it.

Related news: Gaussian splats in Nuke 17

In a related development, Foundry has released Nuke 17.0, its compositing software for VFX. According to Red Shark News, it now has native support for Gaussian splats: artists can import, view, edit, render and export them. That opens up possibilities for set extensions, matte paintings and element integration. In addition, a new USD-based 3D system leaves beta, a new BigCat node trains ML models across dozens to hundreds of shots, and "Field Nodes" non-destructively mask 3D data, including splats. Foundry cites up to 98x faster GPU upscaling. Nuke 17.0 is available to subscribers, with prices starting at £2,909 per year. The sources don't say whether Idol output works directly in Nuke, but the standard .ply format suggests it should.

Our take

Single-image splats are interesting for game assets, prototypes, product visualization or early VFX studies, and Idol lowers the barrier because it runs on consumer hardware. The quality leads in the table are fairly modest (for example, PSNR 12.25 versus 11.76 for TripoSplat) and come from the maker itself. The unseen sides are necessarily guesswork, so they won't be faithful to the real object. The restriction to single objects, the NVIDIA/CUDA requirement and the gated dependencies (FLUX.2-dev has its own license terms) are limitations. The source doesn't name a license for Idol itself.

Related videos

Nuke 17 | Features Overview Foundry · YouTube

Sources

#3d#gaussian-splatting#image-to-3d#open-weights#stable-diffusion
Read the original source

Try it yourself: Idol

Explained step by step, no prior knowledge needed – on your own computer or free in your browser.

What can I do with it?

Idol turns a single image of an object into a 3D model as a Gaussian splat. You feed it a photo, a render or an AI image, and the model cuts out the object, frames it and fills in the back and side views. The result is a .ply file that you can rotate and inspect in splat viewers. It runs on gaming graphics cards with about 8–10 GB of VRAM. According to the maker, it beats similar models such as TripoSplat, TRELLIS and LGM on most quality metrics. Limits: it's meant for single objects, not whole scenes, the hidden sides are estimated, and you need NVIDIA CUDA.

Who is it worth it for?

Interesting for 3D hobbyists, game developers, VFX fans and anyone who wants to quickly view image-AI results in 3D. Less suitable if you don't have an NVIDIA card or need an exact reconstruction of a real object.

Ideas: What you can do with it

Prototype game assets

An AI-generated concept image of a character or item becomes a 3D splat you can inspect. It's a quick way to check whether a design works in 3D.

Product photo in 3D

Photograph an object, run it with --mode real and get a rotatable model for a presentation.

VFX pre-studies

Splats can be used in compositing tools such as Nuke 17, which now supports Gaussian splats. That lets you test elements roughly.

Extend image-AI results

A single object generated with Stable Diffusion is converted to 3D and can be viewed from all sides.

Model-building inspiration

Turn sketches or renders of hobby objects into 3D to judge proportions from every angle.

Size1.8 B parameters
Download3.1 GB (about 4 min at 100 Mbit/s)
Licenseapache-2.0
TypeAI model
Hugging Facesperidlabs/idol

What your computer needs

Graphics card (NVIDIA) at least 7.5 GB VRAMThe 7.2 GB peak figure is a maker claim (Model Card). It covers a whole request, including the two image models. More memory mainly gives you headroom for many Gaussians; the 10 GB RTX 3080 works according to the source, just more slowly.
Mac (Apple Silicon M1–M5) not supportedAccording to the source, Idol needs an NVIDIA graphics card with CUDA. Macs don't have one. Use the online demo on Hugging Face (huggingface.co/spaces/speridlabs/idol) instead, where you can upload your own images.
Storage approx. 5.1 GB freeModel download plus programs
In the browser Online demo availabletry it on Hugging Face, no installation needed

There is one variant. You control quality and speed with --num_gaussians (32,768 to 1,048,576) and --steps. For weaker cards (for example 10 GB), start with the default of 262,144 Gaussians and reduce the steps if needed.

  • Peak requirement according to the maker: 7.2 GB of VRAM; the weights alone are about 3.7–4.4 GB.
  • An NVIDIA GPU with CUDA, Python 3.10+ and PyTorch 2.5+ are required.
  • Times at 50 steps: RTX 4090 about 19 s, RTX 5090 about 14 s, RTX 3080 (10 GB) about 46 s.
  • --dinov3_dtype fp32 needs about 1.7 GB more memory.
  • The first image in each process is slower because torch.compile is compiling.
How do I find out what my computer has?
  • Windows: Press Ctrl + Shift + Esc → Task Manager → Performance tab → click GPU on the left. At the bottom you'll see Dedicated GPU memory (that's your VRAM). You'll find system memory under Memory.
  • Mac: Apple menu at the top left → About This Mac. You'll see your chip (e.g. M2) and memory (e.g. 16 GB). On Apple chips, graphics and processor share this memory.
  • Linux: Type nvidia-smi in the terminal (shows your graphics card and its memory) and free -h for system memory.

Guide

This model runs with its developers' own program (speridlabs/idol-sdk on GitHub). The commands below come from the Model Card and the developers' instructions.

In the browser (no installation)

The developers have an online demo on Hugging Face. You can try the model right away there without installing anything. Sometimes you have to wait a moment for the demo to wake up.

Open online demo

Windows 10 / 11

Windows 10 / 11: not officially tested. The source only lists Linux requirements (NVIDIA graphics card with CUDA) and doesn't mention Windows. It should work with an NVIDIA card, but it's untested. If you don't have an NVIDIA card, use the online demo on Hugging Face (speridlabs/idol Space).

  1. Check the requirements. You need an NVIDIA graphics card with at least 8 GB of video memory and a current NVIDIA driver. You also need Python 3.10 or newer and Git. Check in PowerShell that everything is there. The nvidia-smi command shows your card.
    python --version
    git --version
    nvidia-smi
  2. Hugging Face account and access to the image models. Idol uses two helper models that are gated. Log in to Hugging Face and accept the terms on the pages facebook/dinov3-vith16plus-pretrain-lvd1689m and black-forest-labs/FLUX.2-dev. Then create an access token (read access) in your account under Settings. Approval can take a while.
  3. Download the program. The git clone command downloads the program code to your computer, and cd moves into the new folder.
    git clone https://github.com/speridlabs/idol-sdk.git
    cd idol-sdk
  4. Create a virtual environment. A virtual environment is a separate, clean Python folder just for this program. Once activated, (.venv) appears in front of your prompt. If PowerShell blocks the script, allow it with Set-ExecutionPolicy -Scope Process RemoteSigned.
    python -m venv .venv
    .venv\Scripts\Activate.ps1
  5. Install Idol. This installs Idol and its packages. Idol needs PyTorch 2.5 or newer with CUDA support. It can take a few minutes. Afterwards, check that PyTorch sees your card: True should appear.
    pip install -e .
    python -c "import torch; print(torch.__version__, torch.cuda.is_available())"
  6. Log in to Hugging Face. Use this command to enter your token once. You won't see the characters when you paste it, which is normal. Without the access from step 2, Idol aborts and tells you what's missing.
    hf auth login
  7. Prepare your own image. Put a photo of a single object into the idol-sdk folder as photo.jpg. The object should be clearly visible. Idol removes the background itself.
  8. Generate your first 3D object. On first launch, Idol automatically downloads about 3 GB of its own weights plus the two image models. This takes a while. The first run is also slower because PyTorch compiles code. Use --mode real for photos and --mode synthetic for computer-generated images.
    python -m idol.sample --image photo.jpg --mode real
  9. Result. The folder contains the files photo.ply (the 3D object), photo_input.png and photo_camera.json.

macOS

macOS: not supported. According to the source, Idol needs an NVIDIA graphics card with CUDA. Macs don't have one. Use the online demo on Hugging Face (huggingface.co/spaces/speridlabs/idol) instead, where you can upload your own images.

Linux

Linux: supported. Officially supported: Linux with an NVIDIA graphics card and CUDA. According to the source, tested cards include the RTX 3080 (10 GB), RTX 4090 and RTX 5090. If you don't have an NVIDIA card, use the online demo on Hugging Face.

  1. Check the requirements. You need an NVIDIA graphics card with at least 8 GB of video memory and the NVIDIA driver with CUDA. You also need Python 3.10 or newer and Git. The nvidia-smi command shows your card. If it isn't available, the driver is missing.
    python3 --version
    git --version
    nvidia-smi
  2. Hugging Face account and access to the image models. Idol uses two helper models that are gated. Log in to Hugging Face and accept the terms on the pages facebook/dinov3-vith16plus-pretrain-lvd1689m and black-forest-labs/FLUX.2-dev. Then create an access token (read access) in your account under Settings. Approval can take a while.
  3. Download the program. The git clone command downloads the program code to your computer, and cd moves into the new folder.
    git clone https://github.com/speridlabs/idol-sdk.git
    cd idol-sdk
  4. Create a virtual environment. A virtual environment is a separate, clean Python folder just for this program. Once activated, (.venv) appears in front of your prompt.
    python3 -m venv .venv
    source .venv/bin/activate
  5. Install Idol. This installs Idol and its packages. Idol needs PyTorch 2.5 or newer with CUDA. It can take a few minutes. Afterwards, check that PyTorch sees your card: True should appear.
    pip install -e .
    python -c "import torch; print(torch.__version__, torch.cuda.is_available())"
  6. Log in to Hugging Face. Use this command to enter your token once. You won't see the characters when you paste it, which is normal. Alternatively, set the HF_TOKEN environment variable. Without the access from step 2, Idol aborts and tells you what's missing.
    hf auth login
  7. Prepare your own image. Put a photo of a single object into the idol-sdk folder as photo.jpg. The object should be clearly visible. Idol removes the background itself.
  8. Generate your first 3D object. On first launch, Idol automatically downloads about 3 GB of its own weights plus the two image models. This takes a while. The first run is also slower because PyTorch compiles code. Use --mode real for photos and --mode synthetic for computer-generated images.
    python -m idol.sample --image photo.jpg --mode real
  9. Result. The folder contains the files photo.ply (the 3D object), photo_input.png and photo_camera.json.

What to do after your first result

  • Open the .ply file in any Gaussian splat viewer to rotate the object and view it from all sides.
  • With --seed, the same value gives you the same object; a different value gives a variant. With --steps (default 50) you can compute faster, but with slightly less detail.
  • With --num_gaussians (32768 to 1048576, a multiple of 32) you set the level of detail. With --out outputs you save to a folder, and with --image renders/ you process an entire folder of images.
  • For a web interface, install pip install -e ".[demo]" and start it with cd demo and then python app.py.

Try it

python -m idol.sample --image photo.jpg --mode real
python -m idol.sample --image renders/ --mode synthetic --out outputs
python -m idol.sample --image figur.png --mode synthetic --num_gaussians 1048576
python -m idol.sample --image tasse.jpg --mode real --steps 25 --seed 7
Python: IdolPipeline.from_pretrained("speridlabs/idol") and pipeline("photo.jpg", mode="real")

Tips for better results

  • Use --seed for reproducible results; try several seeds if the back doesn't look right.
  • More --steps gives more detail; fewer is faster.
  • Use --rescale_t to control whether the coarse shape or fine detail gets more attention.
  • Check the _input.png to see how the background removal worked.

If something goes wrong

Without access to DINOv3 and FLUX.2-dev on Hugging Face, Idol aborts before downloading: accept the terms and log in with hf auth login.

The wrong mode argument worsens the cropping: use --mode real for photos and synthetic for renders.

Multiple objects or busy scenes work poorly, since the model is designed for a single object.

The first generation takes longer because of torch.compile.

If you're short on VRAM, reduce the number of Gaussians or keep bf16 for DINOv3.

“out of memory,” a crash, or your computer freezes

The model is too big for your VRAM (video memory). Pick a smaller variant from the table above and close other programs, especially games and browsers with lots of tabs.

It runs, but extremely slowly

Your CPU is probably doing the work instead of your graphics card. In Ollama, the PROCESSOR column of ollama ps shows how much runs on the GPU. If it says "100% CPU", update your graphics driver or pick a smaller variant that fits entirely into VRAM (video memory).

“ollama” or “python” is not found

Close the terminal window and open it again so it recognizes the newly installed program. For Python on Windows: reinstall it and check Add python.exe to PATH.

Windows: "Running scripts is disabled on this system"

Run the script with exactly the command above: powershell -ExecutionPolicy Bypass -File try_windows.ps1. This allows execution for this one time only.

Error message when loading the model (version, "trust_remote_code", unknown architecture)

Brand-new models often need the latest software version. With Ollama: update Ollama. With Python: pip install -U transformers in the activated environment. The Model Card usually lists the exact version.

Tokenstrom generates the scripts and notebook automatically. Please take a quick look before running them – they're plain, readable text. Mind the model's license: apache-2.0.

Ask the AI assistant

Questions about this article, installation or background? Our assistant knows this page and runs on our own machine, not in someone else's cloud.

Connecting …

The Assistant is an AI (Gemma 4) and can make mistakes – please check important details against the source. Questions are used only to generate an answer and are deleted after one hour. Please don't enter any personal data.

Comments

What do you think? Already tried it? Write it here, no sign-up needed.

  1. Loading comments …

Comments are public. Links aren't allowed, and we delete abusive posts. You can delete your own comment at any time in this browser. Learn more in the Privacy Policy.