Chapter 14 Imaging Quality Metrics, SLOs, and Audit
One-Sentence Goal
Constrain the entire imaging pipeline—from linear radiometric measurement to release decisions—using a reproducible, auditable family of quality metrics SLI.img.* and service-level objectives SLO.*. Coverage spans optics, noise, color, geometry, time/path consistency, arrival time, and runtime performance.
I. Scope & Targets
- Inputs
- Data & references: raw or linearized images/sequences y, reference images y_ref, and calibration fixtures for geometry/color/noise.
- Metadata: unit(x), dim(x), ts, tau_mono, offset/skew/J, exposure and readout modes, optical/filter configurations.
- Path & arrival time: gamma(ell), n_eff, c_ref, and two-form arrival-time requirements.
- Outputs
- Metrics:
SLI.img.mtf50, SLI.img.mtf_area, SLI.img.psnr, SLI.img.snr, SLI.img.nps,
SLI.img.prnu, SLI.img.dsnu, SLI.img.deltaE00.P95, SLI.img.wb_error,
SLI.img.err_geo, SLI.img.dead_pixel_rate, SLI.img.sync_offset, SLI.img.tarr_delta. - Decisions: SLO compliance report, violation list with graded remedies; audit_report and manifest.imaging.qc.
- Metrics:
- Boundaries
- All measurements are taken in the linear radiometric domain; the rendering domain is for visualization only (see Chapter 4).
- Event cameras, HDR, ToF, and other modalities inherit linearization conventions from their dedicated chapters.
II. Terms & Variables
- Noise & radiometry
- sigma_read (read-noise std), k_shot (shot/photon factor), NPS(f) (noise power spectral density).
- SNR = mu / sigma or SNR_dB = 20 * log10( mu / sigma ), with unit(SNR_dB)="dB".
- Optics & resolution
MTF(f), MTF50 (frequency where MTF(f50)=0.5), MTF_area = ( ∫_0^{f_Nyq} MTF(f) df ). - Color
- DeltaE_00 (CIEDE2000), summary stats such as DeltaE_00.P95, DeltaE_00.mean.
- wb_error = || chroma(meas) - chroma(ref) || at a specified illumination.
- Geometry
err_geo = sqrt( ( 1 / N ) * ( ∑ || x_i' - H(x_i) ||^2 ) ), with H the calibration homography/distortion model. - Pixel health
dead_pixel_rate = ( count(bad) / N_pix ), where bad is defined via tol_hot, tol_dead, tol_fpn. - Time/path & arrival
offset, skew, J; arrival-time two forms and delta_form. - Error aggregation
Use high quantiles (Pxx, e.g., P99), sliding windows Delta_t, runtime latency T_proc, and throughput Qps.
III. Axioms P214- (Quality, SLO & Audit Baseline)*
- P214-1 (Linear-domain measurement): compute all quality metrics in the linear radiometric domain; never on gamma/curved renderings.
- P214-2 (Explicit windows & measures): each metric must declare its domain and measure, e.g., ( ∫_Omega • d r ), ( ∫_f • d f ).
- P214-3 (Two-form arrival): metrics involving propagation time must compute both T_arr forms and log delta_form.
- P214-4 (Unified time base): evaluate time-related metrics on tau_mono and publish on ts, carrying offset/skew/J.
- P214-5 (Reproducible & auditable): log algorithms, parameters, ROIs, seeds, and hash_sha256(blob); sign artifacts.
- P214-6 (Units/dimensions): run check_dim(expr) per metric before release and declare unit(x), dim(x).
- P214-7 (Quantile-first decisions): SLOs are judged by high quantiles (P95/P99), not by means.
- P214-8 (Cross-modality parity): for fused modalities, evaluate on a common FOV under a unified A_path(•) (see Chapter 13).
IV. Minimal Equations S214-*
- S214-1 (MSE and PSNR)
- MSE = ( 1 / |Omega| ) * ( ∑_{r ∈ Omega} ( y(r) - y_ref(r) )^2 )
- PSNR = 10 * log10( MAX^2 / MSE ),其中 MAX 为线性域满刻度。
- S214-2 (SNR and NPS)
SNR = mu / sigma;
NPS(f) = ( 1 / A ) * E( | F{ n(r) }(f) |^2 ), with F{•} the 2-D Fourier transform and A the area measure. - S214-3 (MTF and MTF50/area)
- MTF50 = f such that MTF(f) = 0.5
- MTF_area = ( ∫_0^{f_Nyq} MTF(f) d f )。
- S214-4 (PRNU/DSNU indices)
PRNU = std( flat / mean(flat) );DSNU = std( dark ) at unified exposure and temperature (see Chapter 8). - S214-5 (Color difference & white balance)
DeltaE_00.P95 = P95( { DE2000( Lab_i, Lab_ref_i ) } );wb_error = || u'v'(meas) - u'v'(ref) ||. - S214-6 (Geometric error)
err_geo = sqrt( ( 1 / N ) * ( ∑ || x_i' - H(x_i; k1,k2,...) ||^2 ) ) (H per Chapter 9). - S214-7 (Pixel health rate)
dead_pixel_rate = ( count( |gain-1| ≥ tol_gain ∨ |offset_dark| ≥ tol_dark ∨ stuck ) ) / N_pix. - S214-8 (Sync & arrival consistency)
S_sync = max( |offset|, |skew|, J );
delta_form = | ( 1 / c_ref ) * ( ∫ n_eff d ell ) - ( ∫ ( n_eff / c_ref ) d ell ) |. - S214-9 (Example composite score)
- Q_img = w_mtf * ( MTF50 / f_Nyq ) + w_psnr * ( PSNR / PSNR_ref )
- + w_color * ( 1 - DeltaE_00.P95 / tol_deltaE )
- + w_geo * ( 1 - err_geo / tol_geo )
- - w_noise * ( NPS_band / NPS_ref )。
Weights w_* are specified in the policy card.
V. Pipeline & Operational Flow M140-*
- Acquisition & linearization: under a fixed RefCond, acquire flat/dark/chart/slanted-edge/pattern; linearize to radiometric space and validate unit, dim.
- ROI & measure declaration: annotate Omega, frequency bandwidth, and windowing; persist roi.json and measure.json.
- Optical metrics: per Chapter 5 (slanted-edge or point-source), compute MTF(f), yielding MTF50, MTF_area.
- Noise metrics: estimate sigma_read, k_shot; compute NPS(f) and band-limited NPS_band.
- Fixed-pattern noise: per Chapter 8, export PRNU, DSNU, and pixel health maps.
- Color metrics: under specified illuminant and color space, compute DeltaE_00 quantiles and wb_error.
- Geometry metrics: with checkerboard/dot-grid, estimate H and err_geo; check extrinsic drift.
- Time/path consistency: evaluate offset/skew/J and both T_arr forms to obtain delta_form.
- SLI aggregation & decision: compose SLI.img.*; check against SLO.* via policy cards; output violation list.
- Audit & signature: produce audit_report; update manifest.imaging.qc; write hash_sha256 and signature.
VI. Contracts & Assertions
- assert mtf50_floor: MTF50 ≥ f_min (units declared as cyc/pixel or lp/mm).
- assert mtf_area_min: MTF_area ≥ A_min.
- assert psnr_min: PSNR ≥ tol_psnr.
- assert snr_min: SNR_dB ≥ tol_snr_db.
- assert nps_band_max: NPS_band ≤ tol_nps_band.
- assert prnu_max: PRNU ≤ tol_prnu; assert dsnu_max: DSNU ≤ tol_dsnu.
- assert color_fidelity: DeltaE_00.P95 ≤ tol_deltaE and wb_error ≤ tol_wb.
- assert geometry_acc: err_geo ≤ tol_geo.
- assert pixel_health: dead_pixel_rate ≤ tol_dead.
- assert sync_ok: |offset| ≤ tol_offset, |skew| ≤ tol_skew, J ≤ tol_jitter.
- assert arrival_consistency: delta_form ≤ tol_Tarr.
- assert audit_reproducible: metric re-measure deviation ≤ tol_repeatability and hashes match.
VII. Implementation Bindings I140-*
- measure_mtf_slanted_edge(img, roi) -> { MTF(f), f50, area }
- estimate_noise_psd(seq, roi) -> { NPS(f), sigma_read, k_shot, NPS_band }
- compute_prnu_dsnu(flats, darks) -> { PRNU, DSNU, map_prnu, map_dsnu, dead_pixel_rate }
- evaluate_color(chart_raw, illum, profile) -> { DeltaE00_stats, wb_error }
- calibrate_geometry(pattern_imgs) -> { H, err_geo, intrinsics, extrinsics }
- eval_sync(meta) -> { offset, skew, J }
- arrival_time_consistency(gamma, n_eff, c_ref) -> { T_arr_const, T_arr_general, delta_form }
- aggregate_sli(metrics) -> SLI_dict
- check_slo(sli, policy) -> { pass, violations[] }
- emit_qc_manifest(sli, policy, hashes) -> manifest.imaging.qc
- export_audit_report(sli, violations, artifacts) -> audit_report
VIII. Cross-References
- Linearization & metrology: Chapter 4; noise & FPN: Chapters 7 and 8; optical resolution: Chapter 5.
- Geometry & registration: Chapter 9; color & WB: Chapter 10; HDR & exposure: Chapter 11.
- Time/path & arrival: Chapter 13; two-form conventions and thresholds: Methods.Cleaning v1.0, Chapter 6.
- SLO & compliant release framework: Methods.Cleaning v1.0, Chapter 10; streaming KPIs: Methods.Cleaning v1.0, Chapter 11.
IX. Quality Metrics & Risk Control
- Runtime SLIs
- SLI.svc.proc.P99 = P99( T_proc ) ≤ SLO.svc.proc.P99; SLI.svc.drop ≤ SLO.svc.drop.
- SLI.img.mtf50.P95 ≥ SLO.img.mtf50.P95; SLI.img.deltaE00.P95 ≤ SLO.img.deltaE00.P95; SLI.img.tarr_delta.P99 ≤ SLO.img.tarr_delta.P99.
- Risks & playbooks
- Optical degradation: trigger self-check when MTF drops; suggest refocus or lens service; optionally downscale publication.
- Noise surge / hot pixels: re-estimate dynamic black; mask pixels; quarantine offending batches on violation.
- Color drift: switch to backup CCM or re-calibrate; if out-of-bounds, mark degraded color confidence.
- Sync/arrival anomalies: reset trigger chain and re-evaluate delta_form; hard failures block publication.
- Audit replay
Hash, parameters, and versions for all metrics and intermediates (ROIs, edge responses, spectra, etc.) are written to audit_report; paired with TraceID for replay.
Summary
This chapter closes the metrics → SLO → audit loop for the imaging domain, unifying measures, time bases, and path semantics. With contract-driven publication via SLI.img.* and SLO.*, and traceability through manifest.imaging.qc and signatures, imaging quality governance becomes reliable, reproducible, and auditable across modalities, devices, and scenes.