Digital Audio Signal Processing Lecture-4: Noise Reduction Marc Moonen/Alexander Bertrand Dept. E.E./ESAT-STADIUS, KU Leuven

Slides:



Advertisements
Similar presentations
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: The Linear Prediction Model The Autocorrelation Method Levinson and Durbin.
Advertisements

AGC DSP AGC DSP Professor A G Constantinides©1 Modern Spectral Estimation Modern Spectral Estimation is based on a priori assumptions on the manner, the.
Microphone Array Post-filter based on Spatially- Correlated Noise Measurements for Distant Speech Recognition Kenichi Kumatani, Disney Research, Pittsburgh.
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: The FIR Adaptive Filter The LMS Adaptive Filter Stability and Convergence.
ELE Adaptive Signal Processing
Communications & Multimedia Signal Processing Meeting 6 Esfandiar Zavarehei Department of Electronic and Computer Engineering Brunel University 6 July,
Communications & Multimedia Signal Processing Meeting 7 Esfandiar Zavarehei Department of Electronic and Computer Engineering Brunel University 23 November,
Single-Channel Speech Enhancement in Both White and Colored Noise Xin Lei Xiao Li Han Yan June 5, 2002.
Speech Enhancement Based on a Combination of Spectral Subtraction and MMSE Log-STSA Estimator in Wavelet Domain LATSI laboratory, Department of Electronic,
Goals of Adaptive Signal Processing Design algorithms that learn from training data Algorithms must have good properties: attain good solutions, simple.
Communications & Multimedia Signal Processing Formant Track Restoration in Train Noisy Speech Qin Yan Communication & Multimedia Signal Processing Group.
Matched Filters By: Andy Wang.
EE513 Audio Signals and Systems Wiener Inverse Filter Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
Adaptive Signal Processing
Normalised Least Mean-Square Adaptive Filtering
Dept. E.E./ESAT-STADIUS, KU Leuven homes.esat.kuleuven.be/~moonen/
Chapter 5ELE Adaptive Signal Processing 1 Least Mean-Square Adaptive Filtering.
Introduction to Spectral Estimation
EE513 Audio Signals and Systems Statistical Pattern Classification Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
Normalization of the Speech Modulation Spectra for Robust Speech Recognition Xiong Xiao, Eng Siong Chng, and Haizhou Li Wen-Yi Chu Department of Computer.
Equalization in a wideband TDMA system
A VOICE ACTIVITY DETECTOR USING THE CHI-SQUARE TEST
1 CS 551/651: Structure of Spoken Language Lecture 8: Mathematical Descriptions of the Speech Signal John-Paul Hosom Fall 2008.
By Asst.Prof.Dr.Thamer M.Jamel Department of Electrical Engineering University of Technology Baghdad – Iraq.
Eigenstructure Methods for Noise Covariance Estimation Olawoye Oyeyele AICIP Group Presentation April 29th, 2003.
1 Part 5 Response of Linear Systems 6.Linear Filtering of a Random Signals 7.Power Spectrum Analysis 8.Linear Estimation and Prediction Filters 9.Mean-Square.
Heart Sound Background Noise Removal Haim Appleboim Biomedical Seminar February 2007.
Speech Enhancement Using Spectral Subtraction
Image Restoration using Iterative Wiener Filter --- ECE533 Project Report Jing Liu, Yan Wu.
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: Deterministic vs. Random Maximum A Posteriori Maximum Likelihood Minimum.
1 Linear Prediction. 2 Linear Prediction (Introduction) : The object of linear prediction is to estimate the output sequence from a linear combination.
Digital Audio Signal Processing Lecture-2: Microphone Array Processing - Fixed Beamforming - Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven
1 Linear Prediction. Outline Windowing LPC Introduction to Vocoders Excitation modeling  Pitch Detection.
Nico De Clercq Pieter Gijsenbergh.  Problem  Solutions  Single-channel approach  Multichannel approach  Our assignment Overview.
ECE 8443 – Pattern Recognition ECE 8423 – Adaptive Signal Processing Objectives: Definitions Random Signal Analysis (Review) Discrete Random Signals Random.
Authors: Sriram Ganapathy, Samuel Thomas, and Hynek Hermansky Temporal envelope compensation for robust phoneme recognition using modulation spectrum.
Adv DSP Spring-2015 Lecture#9 Optimum Filters (Ch:7) Wiener Filters.
ECE 5525 Osama Saraireh Fall 2005 Dr. Veton Kepuska
EE513 Audio Signals and Systems
Speech Enhancement Using a Minimum Mean Square Error Short-Time Spectral Amplitude Estimation method.
CHAPTER 5 SIGNAL SPACE ANALYSIS
Robotics Research Laboratory 1 Chapter 7 Multivariable and Optimal Control.
Chapter 11 Filter Design 11.1 Introduction 11.2 Lowpass Filters
Lecture#10 Spectrum Estimation
Dept. E.E./ESAT-STADIUS, KU Leuven
DSP-CIS Part-IV : Filter Banks & Subband Systems Chapter-12 : Frequency Domain Filtering Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven
More On Linear Predictive Analysis
Digital Audio Signal Processing Lecture-3 Noise Reduction
Presentation Outline Introduction Principals
Autoregressive (AR) Spectral Estimation
Nonlinear State Estimation
Impulse Response Measurement and Equalization Digital Signal Processing LPP Erasmus Program Aveiro 2012 Digital Signal Processing LPP Erasmus Program Aveiro.
Yi Jiang MS Thesis 1 Yi Jiang Dept. Of Electrical and Computer Engineering University of Florida, Gainesville, FL 32611, USA Array Signal Processing in.
Geology 6600/7600 Signal Analysis 26 Oct 2015 © A.R. Lowry 2015 Last time: Wiener Filtering Digital Wiener Filtering seeks to design a filter h for a linear.
DSP-CIS Part-III : Optimal & Adaptive Filters Chapter-9 : Kalman Filters Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven
Environmental Data Analysis with MatLab 2 nd Edition Lecture 22: Linear Approximations and Non Linear Least Squares.
UNIT-IV. Introduction Speech signal is generated from a system. Generation is via excitation of system. Speech travels through various media. Nature of.
Adv DSP Spring-2015 Lecture#11 Spectrum Estimation Parametric Methods.
Speech Enhancement Summer 2009
STATISTICAL ORBIT DETERMINATION Coordinate Systems and Time Kalman Filtering ASEN 5070 LECTURE 21 10/16/09.
PSG College of Technology
Linear Prediction.
Modern Spectral Estimation
A Tutorial on Bayesian Speech Feature Enhancement
Linear Prediction.
Wiener Filtering: A linear estimation of clean signal from the noisy signal Using MMSE criterion.
Dealing with Acoustic Noise Part 1: Spectral Estimation
16. Mean Square Estimation
Combination of Feature and Channel Compensation (1/2)
Presentation transcript:

Digital Audio Signal Processing Lecture-4: Noise Reduction Marc Moonen/Alexander Bertrand Dept. E.E./ESAT-STADIUS, KU Leuven homes.esat.kuleuven.be/~moonen/

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 2 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 –Kalman filters for noise reduction

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 3 Single-Microphone Noise Reduction Problem Microphone signal is 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 desired signal estimate desired signal s[k] noise signal(s) ? y[k] desired signal contribution noise contribution

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 4 Spectral Subtraction Methods: Basics Signal chopped into `frames’ (e.g 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 Lecture-4: Noise Reduction p. 5 Spectral Subtraction Methods: Basics Definition:  (  ) = average amplitude of noise spectrum Assumption: noise characteristics change slowly, hence estimate  (  ) by (long-time) averaging over (M) noise-only frames Estimate clean speech spectrum Si(  ) (for each frame), using corrupted speech spectrum Yi(  ) (for each frame, i.e. short-time estimate) + estimated  (  ): based on `gain function’

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 6 Spectral Subtraction: Gain Functions Ephraim-Malah = most frequently used in practice Non-linear Estimation Maximum Likelihood Wiener Estimation Spectral Subtraction Magnitude Subtraction see next slide

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 7 Spectral Subtraction: Gain Functions Example 1: Ephraim-Malah Suppression Rule (EMSR) with: 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 modified Bessel functions skip formulas

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 8 Spectral Subtraction: Gain Functions Example 2: Magnitude Subtraction –Signal model: –Estimation of clean speech spectrum: –PS: half-wave rectification

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 9 Spectral Subtraction: Gain Functions Example 3: Wiener Estimation –Linear MMSE estimation: find linear filter Gi(  ) to minimize MSE –Solution: Assume speech s[k] and noise n[k] are uncorrelated, then... –PS: half-wave rectification <- cross-correlation in i-th frame <- auto-correlation in i-th frame

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 10 Spectral Subtraction: Implementation  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 M=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=2M..3M)  subband processing:  synthesis bank: matched to analysis bank (see DSP-CIS) y[k] Y[n,i] Short-time analysis Short-time synthesis Gain functions

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 11 Spectral Subtraction: Musical Noise Audio demo: car noise 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) magnitude subtraction

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 12 probability that speech is present, given observation instantaneousaverage Spectral Subtraction: Musical Noise Solutions? -Magnitude averaging: replace Yi(  ) in calculation of Gi(  ) by a local average over frames -EMSR (p7) -augment Gi(  ) with soft-decision VAD: Gi(  )  P(H 1 | Yi(  )). Gi(  ) …

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 13 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 Lecture-4: Noise Reduction p. 14 Spectral Subtraction: Iterative Wiener Filter white noise generator pulse train …… pitch period voiced unvoiced x speech signal frequency domain: time domain: = linear prediction parameters all-pole filter u[k]u[k]

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 15 Spectral Subtraction: Iterative Wiener Filter For each frame (vector) y[m] (i=iteration nr.) 1.Estimate and 2.Construct Wiener Filter (p.9) with: estimated during noise-only periods 3. Filter speech frame y[m] Repeat until some error criterion is satisfied

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 16 Overview

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 17 Multi-Microphone Noise Reduction Problem (some) speech estimate speech source noise source(s) microphone signals ? speech partnoise part

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 18 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 Lecture-4: Noise Reduction p. 19 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 m-the microphone

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 20 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 Lecture-4: Noise Reduction p. 21 Multi-Channel Wiener Filter (MWF) Wiener filter solution is (see DSP-CIS) –All quantities can be computed ! –Special case of this is single-channel Wiener filter formula on p.9 compute during speech+noise periods compute during noise-only periods

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 22 MWF combines spatial filtering (as in Lecture-2) with single-channel spectral filtering (as in single-channel noise reduction) if then… Multi-Channel Wiener Filter (MWF)

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 23 …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) Multi-Channel Wiener Filter (MWF)

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 24 …then it can be shown that (continued) represents an additional `spectral post-filter’ i.e. single-channel Wiener estimate (p.9), applied to output signal of spatial filter (prove it!) Multi-Channel Wiener Filter (MWF)

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 25 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 Lecture-4: Noise Reduction p. 26 Solution is… Solution is… compute during speech+noise periods compute during noise-only periods Implementation with time-domain linear filtering: Multi-Channel Wiener Filter: Implementation

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 27 Overview

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 28 State space model of a time-varying discrete-time system with v[k] and w[k]: mutually uncorrelated, zero mean, white noises Then: given A[k], B[k], C[k], D[k], V[k], W[k] and input/output-observations u[k],y[k], k=0,1,2,... then Kalman filter produces MMSE estimates of internal states x[k], k=0,1,... PS: will use shorthand notation here, i.e. x k, y k,.. instead of x[k], y[k],.. process noise measurement noise Kalman Filter 1/12

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 29 Kalman Filter 2/12 Definition: = MMSE-estimate of x k using all available data up until time l `FILTERING’ = estimate `PREDICTION’ = estimate `SMOOTHING’ = estimate

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 30 Initalization: ‘Conventional Kalman Filter’ time k (k=0,1,2,..) Given and corresponding error covariance matrix, Compute and using u k, y k : Step 1: Measurement Update (produces ‘filtered’ estimate) (compare to standard RLS!) Step 2: Time Update (produces ‘1-step prediction’) =error covariance matrix Kalman Filter 3/12

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 31 PS: ‘Standard RLS’ is a special case of ‘Conventional KF’ Kalman Filter 4/12  Internal state vector is FIR filter coefficients vector, which is assumed to be time-invariant

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 32 State time k corresponds to overdetermined set of linear equations, where vector of unknowns contains all previous state vectors : Kalman Filter 5/12

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 33 State time k corresponds to overdetermined set of linear equations, where vector of unknowns contains all previous state vectors : Kalman Filter 6/12 Technical detail…

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 34 State time k corresponds to overdetermined set of linear equations, where vector of unknowns contains all previous state vectors : Kalman Filter 7/12

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 35 ‘Square-Root’ Kalman Filter Kalman Filter 8/12  Propagated from time k-1 to time k ..hence requires only lower-right/lower part

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 36 ‘Square-Root’ Kalman Filter Kalman Filter 9/12  Propagated from time k-1 to time k 

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 37 ‘Square-Root’ Kalman Filter Kalman Filter 10/12  Propagated from time k-1 to time k   Propagated from time k to time k+1 

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 38 Kalman Filter 11/12 QRD- =QRD-

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 39 Kalman Filter 12/12 can be derived from square-root KF equations : can be worked into measurement update eq. : can be worked into state update eq. is. [details omitted]

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 40 Kalman filter for Speech Enhancement Assume AR model of speech and noise Equivalent state-space model is… y=microphone signal u[k], w[k] = zero mean, unit variance,white noise

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 41 Kalman filter for Speech Enhancement with:

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 42 Kalman filter for Speech Enhancement Disadvantages iterative approach: complexity delay split signal in frames estimate parameters Kalman Filter reconstruct signal iterations y[k]y[k] Iterative algorithm

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 43 Kalman filter for Speech Enhancement iteration index time index (no iterations) State Estimator: Kalman Filter Parameters Estimator (Kalman Filter) D D Sequential algorithm

Digital Audio Signal Processing Version Lecture-4: Noise Reduction p. 44 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