pub struct HqParams {
pub auto_strength: bool,
pub noise_floor: bool,
pub sigma_override: Option<f32>,
pub temporal_confidence: bool,
pub thsad_scale: f32,
pub sigma_scale: f32,
}Expand description
Parameters for the quality-focused nlmeans-hq variant.
The measured noise level drives both the effective strength and the distance floor, so the weighting adapts to how noisy the source really is.
Fields§
§auto_strength: boolReads strength as a multiplier on the noise level, making the
effective FFmpeg-style strength strength * sigma_eff * 255.
Defaults to true.
noise_floor: boolSubtracts the expected noise floor from patch distances before weighting, so a match is not penalised for the noise it carries.
Defaults to true.
sigma_override: Option<f32>A fixed noise standard deviation in [0, 1] units, replacing the
automatic per-frame estimate.
None, the default, measures the noise in each pushed frame and
smooths it over time. Some applies one fixed value to every
frame instead.
The CLI takes this in 8-bit units through --hq-sigma and
divides by 255.
temporal_confidence: boolWeights each temporal neighbour by how well it block-matches the centre frame, so occlusion or a change of content collapses its contribution rather than blurring it in.
Only has an effect when temporal_radius is above 0. Defaults to
true.
thsad_scale: f32A multiplier on the per-pixel mismatch threshold, which sets how much extra SAD a block tolerates before its confidence starts to fall.
Higher values tolerate larger mismatches. Defaults to 1.0.
sigma_scale: f32A multiplier applied to each channel’s measured sigma before it folds into the running estimate.
1.0, the default, keeps the measurement as it is. This does
nothing when sigma_override is set, because the estimator never
runs in that case.
The CLI takes this as --hq-sigma-scale.