Chapter 8 Flat/Dark Calibration and Fixed-Pattern Noise (PRNU/DSNU)


One-Sentence Goal
Using a reproducible flat-field / dark-field calibration workflow, construct PRNU k(x,y) and DSNU b(x,y), form an in-operation non-uniformity correction (NUC), and ensure fixed-pattern noise is reduced below contractual thresholds in the radiometric linear domain—with full auditability and replay.


I. Scope & Targets

  1. Inputs
    • Linear-domain raw frame sets: flat sequence { I_flat^{(i)} }, dark sequence { I_dark^{(j)} }, and metadata { gain g, black B, exposure E, T_cam, ISO, CFA(pattern) }.
    • Illumination-field uniformity or optical shuttering info: LSF(x,y) (from Chapter 5), integrating-sphere or uniform-panel calibration conditions.
    • Linearization and unit mapping (Chapter 4): unit(I_lin), dim(I_lin), check_dim(expr).
  2. Outputs
    • Fixed-pattern parameters and correction artifacts: b(x,y), k(x,y), defect_mask, NUC = { B_map, G_map }, where B_map = b(x,y) and G_map = ( 1 + k(x,y) )^{-1}.
    • Temperature / exposure dependencies: d_rate(T), eta_T, plus stability and residual metrics RNU_pre, RNU_post.
    • Release artifacts & traceability: manifest.imaging.fpn, hash_sha256(blob), signature.
  3. Boundaries & Applicability
    • Default execution and application of NUC are in the RAW linear domain (Bayer or monochrome); RGB-domain use is for acceptance checks only.
    • Multi-gain / multi-conversion-gain (dual/quad CG) modes must be calibrated per mode and switched at runtime per operating condition.
    • Saturated, overflow, or clipped pixels are excluded from fitting (define Ω_valid).

II. Terms & Variables

  1. Fixed-pattern components
    • DSNU b(x,y): additive non-uniformity (dark-signal non-uniformity), with the same unit as I_lin.
    • PRNU k(x,y): multiplicative non-uniformity (pixel response non-uniformity), dimensionless with E[k]=0.
  2. Observation model & correction
    • Observation: I_obs = ( 1 + k(x,y) ) * I_true + b(x,y) + n_add.
    • Dark current: I_dark(E,T) = B + d_rate(T) * E + n_dark.
    • Runtime correction (NUC): I_corr = ( I_obs - b_T ) / ( 1 + k ), where b_T = b_0 + eta_T * ( T_cam - T_ref ) + d_rate(T) * E.
  3. Other
    • Optical/illumination field S(x,y) (includes vignetting / non-uniform illumination), approximated by low-pass: S(x,y) = LP( I_flat_corr ).
    • Residual non-uniformity: RNU = std( I / mean(I) ), evaluated over Ω_valid.

III. Axioms P208- (FPN Baseline)*


IV. Minimal Equations S208-*


V. Calibration Workflow M80-*


VI. Contracts & Assertions


VII. Implementation Bindings I80-*


VIII. Cross-References


IX. Quality Metrics & Risk Control

  1. Metrics
    • RNU_pre, RNU_post, std(k), std(b_0), eps_uniform, r2_dark.
    • Frequency domain: directional peaks and band integrals of NPS(f) for stripe/column noise auditing.
    • Stability: cross-temperature/exposure drift_k, drift_b, and u(metric).
  2. Risk playbooks
    • Illumination non-uniformity too large: upgrade the uniform-light source or substitute LSF for LP; reacquire.
    • Poor fit: when r2_dark is low, switch to grouped fitting or exclude unstable pixels.
    • Over-correction / texture residues: if RNU_post does not decrease and NPS shows side lobes, reduce filter radius or switch to frequency-domain separation.
    • Temperature drift: if eta_T exceeds threshold, raise thermal-control alerts or enable temperature-lookup for b_T.
    • Defect proliferation: when defect_mask grows, downgrade q_score and trigger sensor health audits.

Summary
This chapter presents unified modeling, calibration, and runtime NUC for PRNU/DSNU—from dark regression and flat-field illumination separation to contract checks and manifest publication—ensuring fixed-pattern noise is controlled, traceable, and rollback-ready under both metrological and visual criteria.