ResAIKit
Research Integrity Toolkit
Back to the encyclopedia
I3Image forensicsGeneric ForensicsLayer 1 (Deterministic)

Noise Consistency

Checks whether the noise pattern is consistent across the entire image. Spliced or edited regions often have different noise characteristics from the rest of the image.

Technical description

Estimates the local noise level robustly in the wavelet domain and tests its consistency. The finest-scale Haar diagonal detail HH = (A - B - C + D)/2 is taken over each 2x2 cell, which cancels constant and linear content so the coefficients are dominated by noise. The HH map is tiled into an 8x8 grid and each block's noise standard deviation is estimated by the median absolute deviation rule sigma = median(|HH|) / 0.6745, robust to edges and texture. With per-block levels of mean sigma_bar and standard deviation s, the coefficient of variation CV = s / sigma_bar drives the score min(5.0, 4.0*CV); blocks whose level departs from the median by more than 2.5 robust standard deviations are reported. A uniform noise floor gives a low CV; a splice or generated region raises it.

How it works

Layer 1 (deterministic). Converts to grayscale, computes the Haar HH band, tiles it into an 8x8 grid, and estimates each block's noise sigma by the MAD rule. Takes the coefficient of variation of the per-block levels as the score, flags robust-outlier blocks, and reports the mean noise level, the CV, the anomalous-block count, and the total block count.

Why this matters

A sensor imprints a roughly constant noise floor over the whole frame, so a region spliced from another source, or synthesised without a sensor, carries a different noise level that survives even a seamless edit. The difficulty is that texture also lives in the high frequencies, so a plain variance conflates noise with content; the median-absolute-deviation estimate on the finest wavelet band measures the noise floor while ignoring the sparse large coefficients that edges produce. Reading the spread of the per-block noise level is a classical, model-free blind-forensics cue for splicing and composites.

Score thresholds

0-1
The noise level is uniform across the image, consistent with a single capture
2-3
The noise level varies between regions, a possible splice or composite
4-5
Strongly inconsistent noise levels, consistent with splicing or a generated region

Limitations

Estimating noise is hard. The wavelet-MAD estimate resists edges far better than a raw variance, but pervasively textured content still raises the apparent noise floor. Strong JPEG compression suppresses and equalises noise and can create block-grid artefacts that mimic an inconsistency, and denoising flattens the floor. The 8x8 grid bounds spatial resolution, so a small insert within one block is averaged away. Thresholds are directional. Compression-history, copy-move, frequency fingerprints, and learned camera-model residuals live in sibling indicators.

References

  1. Mahdian B, Saic S. (2009). Using noise inconsistencies for blind image forensics. Image and Vision Computing 27(10):1497-1503
  2. Donoho DL, Johnstone IM. (1994). Ideal spatial adaptation by wavelet shrinkage. Biometrika 81(3):425-455
  3. Cozzolino D, Verdoliva L. (2020). Noiseprint: A CNN-Based Camera Model Fingerprint. IEEE Transactions on Information Forensics and Security 15:144-159
  4. Gardella M, Musé P, Morel JM, Colom M. (2021). Forgery Detection in Digital Images by Multi-Scale Noise Estimation. Journal of Imaging 7(7):119