Accelerated Light Probes for Free via Single-Pass Chrome Ball Inpainting

Worameth Chinchuthakun*1,2
Pakkapon Phongthawee*1
Amit Raj3
Varun Jampani4
Pramook Khungurn5
1 VISTEC
2 Siam Commercial Bank
3 Google Research
4 Stability AI
5 Pixiv
*Equal contributions
DiffusionLight-Turbo
(30 seconds)
DiffusionLight
(30 minutes)

Abstract

We introduce a simple yet effective technique for estimating lighting from a single low-dynamic-range (LDR) image by reframing the task as a chrome ball inpainting problem. This approach leverages a pre-trained diffusion model, Stable Diffusion XL, to overcome the generalization failures of existing methods that rely on limited HDR panorama datasets. While conceptually simple, the task remains challenging because diffusion models often insert incorrect or inconsistent content and cannot readily generate chrome balls in HDR format. Our analysis reveals that the inpainting process is highly sensitive to the initial noise in the diffusion process, occasionally resulting in unrealistic outputs. To address this, we first introduce DiffusionLight, which uses iterative inpainting to compute a median chrome ball from multiple outputs to serve as a stable, low-frequency lighting prior that guides the generation of a high-quality final result. To generate high-dynamic-range (HDR) light probes, an Exposure LoRA is fine-tuned to create LDR images at multiple exposure values, which are then merged. While effective, DiffusionLight is time-intensive, requiring approximately 30 minutes per estimation. To reduce this overhead, we introduce DiffusionLight-Turbo, which reduces the runtime to about 30 seconds with minimal quality loss. This 60x speedup is achieved by training a Turbo LoRA to directly predict the averaged chrome balls from the iterative process. Inference is further streamlined into a single denoising pass using a LoRA swapping technique. Experimental results that show our method produces convincing light estimates across diverse settings and demonstrates superior generalization to in-the-wild scenarios.

Approach

While DiffusionLight effectively leverages diffusion’s rich image priors for light estimation, it requires inpainting and averaging multiple chrome balls for each exposure value via SDEdit. Our new method, DiffusionLight-Turbo, accelerates this iterative inpainting algorithm by using Turbo LoRA to directly predict an average chrome ball that provides a reliable overall lighting estimate. To further speed up inference, we propose a simple yet effective LoRA swapping that applies different LoRAs at specific timesteps within the same denoising process. (a) We use Stable Diffusion XL with depth-conditioned ControlNet to inpaint a chrome ball. (b) Our iterative inpainting algorithm enhances generation quality and consistency by constraining the initial noise through sample averaging. (c) We train Exposure LoRA, which produces multiple LDR chrome balls with varying exposures for HDR merging. (d) We find a good initial noise map by denoising with Turbo LoRA until t=0.8T then swapping it with Exposure LoRA. (e) We train Turbo LoRA to mimic the output of iterative inpainting.

x60 Faster, Similar Quality

DiffusionLight-Turbo produces similar quality chrome balls as DiffusionLight, but is 60 times faster. Here, we show a comparison of both methods on a wide variety of images, such as indoor scenes, outdoor scenes, and close-up images. We show our predicted chrome balls in a normally exposed version (EV0) and an underexposed version (EV-5). These input images are from Unsplash.com.

Diffusion​Light-​Turbo

Diffusion​Light

Normally exposed

Under​exposed

Diffusion​Light-​Turbo

Diffusion​Light

Normally exposed

Under​exposed

Diffusion​Light-​Turbo

Diffusion​Light

Normally exposed

Under​exposed

Diffusion​Light-​Turbo

Diffusion​Light

Normally exposed

Under​exposed

Diffusion​Light-​Turbo

Diffusion​Light

Normally exposed

Under​exposed

Diffusion​Light-​Turbo

Diffusion​Light

Normally exposed

Under​exposed

  • Diffusion​Light-​Turbo

    Diffusion​Light

    Normally exposed

    Under​exposed

  • Diffusion​Light-​Turbo

    Diffusion​Light

    Normally exposed

    Under​exposed

  • Diffusion​Light-​Turbo

    Diffusion​Light

    Normally exposed

    Under​exposed

  • Diffusion​Light-​Turbo

    Diffusion​Light

    Normally exposed

    Under​exposed

  • Diffusion​Light-​Turbo

    Diffusion​Light

    Normally exposed

    Under​exposed

  • Diffusion​Light-​Turbo

    Diffusion​Light

    Normally exposed

    Under​exposed

Application: Virtual Object Insertion

Using our environmental light estimates, we can seamlessly insert 3D objects into an existing photograph. Hover over the video to stop time!

Input image

Without relighting

Relighting with DiffusionLight-Turbo

Relighting with DiffusionLight

Comparison with Prior Work

ComfyUI Supported!

DiffusionLight's Turbo LoRA and Exposure LoRA are now compatible with ComfyUI's Load LoRA node. We also introduce custom nodes, including Ball2Envmap, that unproject chromeballs back to an environment map and Exposure2HDR, which combines different exposure images to HDR. Visit Github/DiffusionLight-ComfyUI for more information

BibTex

@inproceedings{Chinchuthakun2025DiffusionLightTurbo,
  author = {Chinchuthakun, Worameth and Phongthawee, Pakkapon and Raj, Amit and Jampani, Varun and Khungurn, Pramook and Suwajanakorn, Supasorn},
  title = {DiffusionLight-Turbo: Accelerated Light Probes for Free via Single-Pass Chrome Ball Inpainting},
  booktitle = {ArXiv},
  year = {2025},
}