DSLR Camera Noise
The pack's showpiece β camera sensor noise modeled on real sensor physics, not a grain filter
- image
- IMAGE
AI images are too clean. Real photographs have sensor noise - a fine, colored, non-uniform texture that your eye reads as "this was shot with a camera." Most "grain" nodes just overlay static. DSLR Camera Noise is different: it simulates the actual physics of a digital sensor - shot noise, read noise, thermal noise, and pixel-to-pixel variation - using published camera-noise models (Emil Martinec's writeup, Cambridge in Colour, ISO 15739). It's the most impressive node in Pirog's Nodes, and for the photorealism crowd it's the difference between a render and a photograph.
How it works
The node converts your image from sRGB to linear light, then models the sensor pipeline:
- Shot noise - Poisson photon-counting noise, stronger in brighter areas. This is the noise real images have.
- Read noise - electronic noise from the sensor's amplifier, scaled by ISO gain.
- Thermal noise - dark current, driven by your
temperaturesetting andexposure_time. - PRNU - fixed per-pixel response variation, the subtle pattern you can't see but your brain registers.
A profile picks the sensor's base characteristics: "Pro Full-Frame" (clean, low noise), "APS-C Enthusiast," "Smartphone" (noisy, 10-bit), or "Vintage DSLR" (dirtiest). Everything runs in linear light and gets quantized back through the profile's ADC bit depth, so the result behaves like real sensor data rather than a filter.
The inputs that matter
- iso - higher ISO, more noise. 800 is a sensible default.
- profile - the sensor character; this changes the noise texture, not just the amount.
- temperature / exposure_time - physically honest controls. Long exposures in dark scenes reduce shot noise while thermal and read noise become more prominent, exactly like a real camera.
- overall_strength - the artistic multiplier. 1.0 is physically accurate, which means subtle. Crank to 2β3 if you want visible filmic grit.
- noise_blur - softens the noise pattern slightly, simulating the sensor's demosaicing.
- seed - reproducible noise.
Output: IMAGE.
When to reach for it
As a finishing pass on renders you want to look photographic - especially night scenes, skin close-ups, or anything where "too clean" is the tell. It's the pack's answer to the photorealism insight that authenticity lives in the details, and it composes well with the other realism nodes (bloom, mask-based blending).
Installing it
Part of Pirog's Nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/Pirog17000/Pirogs-Nodes
pip install -r Pirogs-Nodes/requirements.txt
Or search "Pirog's Nodes" in ComfyUI Manager and restart. Needs numpy (pack requirement) - covered.
Gotchas
The honest one: at overall_strength: 1.0 you'll zoom in and wonder if anything happened. That's correct - physically accurate sensor noise on a clean AI image is genuinely subtle, and the visible texture appears when you push strength above 1. It runs on CPU via numpy, so on huge images it's not instant, but it's a one-shot pass, not a loop. And since it's deterministic per seed, you can lock in a noise pattern you like across a batch.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | The input image to apply noise to. | |
| iso | INT | 80050β12800 | Higher ISO increases noise, simulating higher light sensitivity. |
| profile | COMBO | Select a camera sensor profile. Each profile has distinct noise characteristics. | |
| temperature | FLOAT | 25-20β60 | Sensor temperature (Celsius). Higher temperatures increase thermal noise. |
| exposure_time | FLOAT | 0.0080β30 | Shutter speed (seconds). Longer exposures increase thermal noise and affect shot noise. |
| overall_strength | FLOAT | 1.000β5 | Artistic multiplier for the final calculated noise. 1.0 is physically accurate. |
| noise_blur | FLOAT | 0.000β1.5 | Applies a Gaussian blur to the final noise pattern to simulate softness. |
| seed | INT | 00β18446744073709550000 | The random seed for the noise generation, allowing for reproducible patterns. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | πΈ Image with scientifically accurate DSLR camera noise applied using real sensor physics. |