RESPITE: The CASA Toolkit Page: Documentation: Block Library Index:AdaptiveNoiseEstimation


This block implements an adaptive noise estimation technique. The input should be spectral magnitude data and it technique assumes a normal distribution for the noise.

Initial noise mean, (mu), and variance, (var), estimates are produced from the first NFRAMES of data. After this the mean and variance estimates are subsequently updated with:

   mu(t) = memory_factor*mu(t-1) + (1-memory_factor)*noisy(t)
   s(t) = memory_factor*s(t-1) + (1-memory_factor)*noisy(t)^2
   var(t) = s(t) - mu(t)^2
Updates are independent in each individual frequency channel.

The estimates are updated only if P(estimated_SNR<noisy_threshold) > probability_threshold.

Inputs Meaning Sample 1-D frame $\ge$2-D frame
in1 noisy spectral data Yes Yes Yes

Outputs Meaning
out1 noise spectrum estimate
out2 signal spectrum estimate
out3 noise variance estimate

Parameters Type Default Meaning
NFRAMES Integer 10 Number of initial frames to use for forming noise estimate
NOISE_THRESHOLD Float -6.952 Noise level threshold in dB (See above)
PROBABILITY_THRESHOLD Float 0.600 Probability threshold (See above)
MEMORY_FACTOR Float 0.995 Used for means and variance tracking (See above)

Documentation for CTKv1.1.4 - Last modified: Thu Jun 28 16:09:23 BST 2001