🌃Offset Noise

Train models able to create very dark or very bright images

dreamlook.ai lets you finetune Stable Diffusion models in minutes (first SD1.5 run is free!). Follow the guide below to train models with Offset Noise enabled.

What is Offset Noise?

Using Offset Noise during training improves the contrast in images created by the model. The improvement is especially visible in images with very dark or very bright lighting conditions.

Output of models trained without Offset Noise (left) vs with Offset Noise (right):

Without Offset Noise, Stable Diffusion models struggle to create images that are very dark of very bright. The results always include bright areas even if the prompt describes dimly lit scenes. This is due to limitations in the training procedure that is normally used, which Offset Noise fixes.

The images showcased above come from models that were trained from the same base model (stable-diffusion-v1-5), using the same training parameters and images (1200 steps, LR 1e-6, 16 images) except for the Offset Noise scale. The images were generated using the exact same parameters including seed:

Prompt: dramatic photographic portrait of a techwear handsome ukj person, on the rooftop of a futuristic city at night, sigma 85mm f/1.4, 4k, depth of field, high resolution, 4k, 8k, hd, full color
Negative prompt: lowres, bad anatomy, bad hands, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, text, signature, watermark, username, blurry
Steps: 30, Sampler: Euler a, CFG scale: 10, Seed: 2650451456, Size: 600x1000, Model hash: 9714774f, Denoising strength: 0.7, First pass size: 0x0

A word of caution: while Offset Noise allows the trained model to produce better images in dark and bright conditions, it will also have a noticeable impact on model outputs in other situations. You may need to adjust your prompts to address this. This is why we don't enable it by default.

How to use Offset Noise on dreamlook.ai?

Using the dreamlook.ai website

Head to the Training page: https://dreamlook.ai/dreambooth

The parameter can be enabled by checking the "Offset Noise" checkbox under "Advanced settings"

🔗 How to train models using the website

Using the API

When using the API, Offset Noise can be enabled using the boolean parameter enable_offset_noise. This value is false by default, meaning that Offset Noise is not used if you don't specify it explicitly.

🔗 How to train models using the API

How does Offset Noise work?

The idea of Offset Noise was first introduced in a post by Nicholas Guttenberg from Cross Labs: https://www.crosslabs.org/blog/diffusion-with-offset-noise

The YouTube channel koiboi features a good explainer video:

Last updated