Digital Audio Signal Processing Lecture3 Noise Reduction Marc
- Slides: 32
Digital Audio Signal Processing Lecture-3 Noise Reduction Marc Moonen Dept. E. E. /ESAT-STADIUS, KU Leuven marc. moonen@esat. kuleuven. be homes. esat. kuleuven. be/~moonen/
Overview • Spectral subtraction for single-micr. noise reduction – – Single-microphone noise reduction problem Spectral subtraction basics (=spectral filtering) Features: gain functions, implementation, musical noise, … Iterative Wiener filter based on speech signal model • Multi-channel Wiener filter for multi-micr. noise red. – Multi-microphone noise reduction problem – Multi-channel Wiener filter (=spectral+spatial filtering) • Kalman filter based noise reduction – Kalman filters for noise reduction Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 2
Single-Microphone Noise Reduction Problem • Microphone signal is desired signal s[k] y[k] desired signal noise contribution ? desired signal estimate noise signal(s) • Goal: Estimate s[k] based on y[k] • Applications: Speech enhancement in conferencing, handsfree telephony, hearing aids, … Digital audio restoration • Will consider speech applications: s[k] = speech signal Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 3
Spectral Subtraction Methods: Basics • Signal chopped into `frames’ (e. g. 10. . 20 msec), for each frame a frequency domain representation is (i-th frame) • However, speech signal is an on/off signal, hence some frames have speech +noise, i. e. some frames have noise only, i. e. • A speech detection algorithm is needed to distinguish between these 2 types of frames (based on energy/dynamic range/statistical properties, …) Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 4
Spectral Subtraction Methods: Basics • Definition: ( ) = average amplitude of noise spectrum • Assumption: noise characteristics change slowly, hence estimate • Estimate clean speech spectrum Si( ) (for each frame), using corrupted speech spectrum Yi( ) (for each frame, i. e. short-time estimate) + estimated ( ): ( ) by (long-time) averaging over (M) noise-only frames based on `gain function’ Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 5
Spectral Subtraction: Gain Functions Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 6
s Spectral Subtraction: Gain Functions la r fo u m • Example 1: Ephraim-Malah Suppression Rule (EMSR) p i sk with: • • modified Bessel functions This corresponds to a MMSE (*) estimation of the speech spectral amplitude |Si( )| based on observation Yi( ) ( estimate equal to E{ |Si( )| | Yi( ) } ) assuming Gaussian a priori distributions for Si( ) and Ni( ) [Ephraim & Malah 1984]. Similar formula for MMSE log-spectral amplitude estimation [Ephraim & Malah 1985]. (*) minimum mean squared error Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 7
Spectral Subtraction: Gain Functions • Example 2: Magnitude Subtraction – Signal model: – Estimation of clean speech spectrum: – PS: half-wave rectification Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 8
Spectral Subtraction: Gain Functions • Example 3: Wiener Estimation – Linear MMSE estimation: find linear filter Gi( ) to minimize MSE – Solution: <- cross-correlation in i-th frame <- auto-correlation in i-th frame Assume speech s[k] and noise n[k] are uncorrelated, then. . . – PS: half-wave rectification Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 9
Spectral Subtraction: Implementation y[k] Y[n, i] Short-time analysis Gain functions Short-time synthesis Short-time Fourier Transform (=uniform DFT-modulated analysis filter bank) = estimate for Y( n ) at time i (i-th frame) N=number of frequency bins (channels) n=0. . N-1 D=downsampling factor K=frame length h[k] = length-K analysis window (=prototype filter) frames with 50%. . . 66% overlap (i. e. 2 -, 3 -fold oversampling, N=2 D. . 3 D) subband processing: synthesis bank: matched to analysis bank (see DSP-CIS) Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 10
Spectral Subtraction: Musical Noise • Audio demo: car noise magnitude subtraction • Artifact: musical noise What? Short-time estimates of |Yi( )| fluctuate randomly in noise-only frames, resulting in random gains Gi( ) statistical analysis shows that broadband noise is transformed into signal composed of short-lived tones with randomly distributed frequencies (=musical noise) Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 11
Spectral Subtraction: Musical Noise Solutions? - Magnitude averaging: replace Yi( ) in calculation of Gi( ) by a local average over frames average instantaneous - EMSR (p 7) - augment Gi( ) with soft-decision VAD: Gi( ) P(H 1 | Yi( )). Gi( ) … probability that speech is present, given observation Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 12
Spectral Subtraction: Iterative Wiener Filter Example of signal model-based spectral subtraction… • Basic: Wiener filtering based spectral subtraction (p. 9), with (improved) spectra estimation based on parametric models • Procedure: 1. Estimate parameters of a speech model from noisy signal y[k] 2. Using estimated speech parameters, perform noise reduction (e. g. Wiener estimation, p. 9) 3. Re-estimate parameters of speech model from the speech signal estimate 4. Iterate 2 & 3 Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 13
Spectral Subtraction: Iterative Wiener Filter pulse train voiced … … pitch period unvoiced all-pole filter u[k] speech signal x white noise generator frequency domain: time domain: = linear prediction parameters Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 14
Spectral Subtraction: Iterative Wiener Filter For each frame (vector) y[m] 1. Estimate (i=iteration nr. ) and 2. Construct Wiener Filter (p. 9) Repeat until some error criterion is satisfied with: • • estimated during noise-only periods 3. Filter speech frame y[m] Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 15
Overview • Spectral subtraction for single-micr. noise reduction – – Single-microphone noise reduction problem Spectral subtraction basics (=spectral filtering) Features: gain functions, implementation, musical noise, … Iterative Wiener filter based on speech signal model • Multi-channel Wiener filter for multi-micr. noise red. – Multi-microphone noise reduction problem – Multi-channel Wiener filter (=spectral+spatial filtering) • Kalman filter based noise reduction – Kalman filters for noise reduction Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 16
Multi-Microphone Noise Reduction Problem speech source (some) speech estimate microphone signals noise source(s) speech part Digital Audio Signal Processing Version 2015 -2016 noise part Lecture-3: Noise Reduction M= number of microphones ? p. 17
Multi-Microphone Noise Reduction Problem Will estimate speech part in microphone 1 (*) (**) ? (*) Estimating s[k] is more difficult, would include dereverberation. . . (**) This is similar to single-microphone model (p. 3), where additional microphones (m=2. . M) help to get a better estimate Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 18
Multi-Microphone Noise Reduction Problem • Data model: See Lecture-2 on multi-path propagation, with q left out for conciseness. Hm(ω) is complete transfer function from speech source position to mthe microphone Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 19
Multi-Channel Wiener Filter (MWF) • Data model: • Will use linear filters to obtain speech estimate (as in Lecture-2) • Wiener filter (=linear MMSE approach) Note that (unlike in DSP-CIS) `desired response’ signal S 1(w) is unknown here (!), hence solution will be `unusual’… Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 20
Multi-Channel Wiener Filter (MWF) • Wiener filter solution is (see DSP-CIS) compute during speech+noise periods compute during noise-only periods – All quantities can be computed ! – Special case of this is single-channel Wiener filter formula on p. 9 – In practice, use alternative to ‘subtraction’ operation (see literature) Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 21
Multi-Channel Wiener Filter (MWF) • Note that… MWF combines spatial filtering (as in Lecture-2) with single-channel spectral filtering (as in single-channel noise reduction) if then… Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 22
Multi-Channel Wiener Filter (MWF) …then it can be shown that represents a spatial filtering (*) ① Compare to superdirective & delay-and-sum beamforming (Lecture-2) – Delay-and-sum beamf. maximizes array gain in white noise field – Superdirective beamf. maximizes array gain in diffuse noise field – MWF maximizes array gain in unknown (!) noise field. MWF is operated without invoking any prior knowledge (steering vector/noise field) ! (the secret is in the voice activity detection… (explain)) (*) Note that spatial filtering can improve SNR, spectral filtering never improves SNR (at one frequency) Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 23
Multi-Channel Wiener Filter (MWF) …then it can be shown that represents a spatial filtering (*) ① ② represents an additional `spectral post-filter’ i. e. single-channel Wiener estimate (p. 9), applied to output signal of spatial filter (prove it!) Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 24
Multi-Channel Wiener Filter: Implementation • Implementation with short-time Fourier transform: see p. 10 • Implementation with time-domain linear filtering: filter coefficients Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 25
Multi-Channel Wiener Filter: Implementation • Implementation with time-domain linear filtering: Solution is… compute during speech+noise periods compute during noise-only periods Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 26
r e Overview 6 t f e a r y u l t n c • Spectral subtraction for single-micr. noise reduction o e L – Single-microphone noise reduction problem e u d – Spectral subtraction basics (=spectral filtering) n e i i t ud functions, implementation, musical noise, … –n Features: gain o t – Iterative s C g Wiener filter based on speech signal model n • Multi-channel Wiener filter for multi-micr. noise red. i v – Multi-microphone noise reduction problem a h – Multi-channel Wiener filter (=spectral+spatial filtering) • Kalman filter based noise reduction – Kalman filters : See Lecture-6 – Kalman filters for noise reduction Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 27
Kalman filter for Speech Enhancement • Assume AR model of speech and noise u[k], w[k] = zero mean, unit variance, white noise • Equivalent state-space model is… y=microphone signal Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 28
Kalman filter for Speech Enhancement Digital Audio Signal Processing s[k] and n[k] are included in state vector, hence can be estimated by Kalman Filter with: Version 2015 -2016 Lecture-3: Noise Reduction p. 29
Kalman filter for Speech Enhancement Iterative algorithm (details omitted) iterations y[k] split signal in frames estimate parameters Kalman Filter reconstruct signal Disadvantages iterative approach: • complexity • delay Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 30
Kalman filter for Speech Enhancement Sequential algorithm (details omitted) iteration index time index (no iterations) D State Estimator (Kalman Filter) Parameters Estimator (Kalman Filter) D Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 31
CONCLUSIONS • Single-channel noise reduction – Basic system is spectral subtraction – Only spectral filtering, hence can only exploit differences in spectra between noise and speech signal: • noise reduction at expense of speech distortion • achievable noise reduction may be limited • Multi-channel noise reduction – Basic system is MWF, – Provides spectral + spatial filtering (links with beamforming!) • Iterative Wiener filter & Kalman filtering – Signal model based approach Digital Audio Signal Processing Version 2015 -2016 Lecture-3: Noise Reduction p. 32
- Digital signal as a composite analog signal
- Signal processing filter
- Quantization error formula
- Digital signal processing
- Digital signal processing
- Digital signal processing
- Super audio cd
- Digital signal processing
- Image processing
- Digital signal processing
- Dsp
- What is dsp
- Common z transform pairs
- High-performance digital signal processing
- Digital signal processing
- Signal encoding schemes
- The noise that affects pcm
- Histogram processing in digital image processing
- Point processing operations
- Nonlinear image processing
- پردازش تصویر
- Image enhancement by point processing
- Gonzalez
- Instrumentation amplifier experiment
- Noise reduction
- Frankel signal to noise
- S/n ratio
- Noise is added to a signal in a communication system *
- Signal to noise ratio
- Kamran nishat
- Snr signal to noise ratio
- Snr signal to noise ratio
- Signal vs noise