Algorithm Speech Enhancement
Embed Size (px)
Transcript of Algorithm Speech Enhancement
EE493Q: Digital Speech ProcessingSpeech Enhancement:Edited by Ashkan masomiAzad university of bushehr EE493Q: Digital Speech ProcessingIterative Wiener FilteringIterative Wiener Filteringwhite noise generatorpulse train pitch periodvoicedunvoicedxMmm jme111sgspeechsignal frequency domain: time domain: = linear prediction parameters all-pole filteru[k]) (1) (1UegSMmm jms+ Mms mk u g m k s k s1] [ ] [ ] [ [ ]TM 1 EE493Q: Digital Speech ProcessingOverviewOverviewSingle-microphone noise reduction Single-microphone noise reductionProblem description Problem descriptionSpectral subtraction methods (= Spectral subtraction methods (= spectral spectralfiltering filtering ( (Iterative Wiener filtering based on speech Iterative Wiener filtering based on speechmodeling modeling Multi-microphone noise reductionMulti-microphone noise reductionProblem descriptionProblem descriptionMulti-channel Wiener filteringMulti-channel Wiener filtering(=(=spectral+spatialspectral+spatial( filtering( filteringIterative Kalman filtering basedIterative Kalman filtering based on speechon speechmodelingmodeling EE493Q: Digital Speech Processing Multi-Microphone NoiseMulti-Microphone NoiseReduction ProblemReduction Problem(some) speech estimate speech source noise source(s) microphone signals 4 .. 1 ], [ ] [ ] [ + i k n k s k mi i i] [k n] [k s?] [k sspeech part noise part(`4=arbitrary)will use m instead of y now!! EE493Q: Digital Speech Processing Multi-Microphone NoiseMulti-Microphone NoiseReduction ProblemReduction Problem[ ] 41]. [ ] [] [ ... ] 1 [ ] [ ] [iiTii i iTik k sL k m k m k m kw mmwill use time-domain linear filtering linear filtering : ] [k n] [k s] [k s] [1k mfilter coefficients] [ ] [ ] [ k k ki i in s m + EE493Q: Digital Speech Processing Multi-Microphone NoiseMulti-Microphone NoiseReduction ProblemReduction Problem] [k n] [k s? iwA cool design criterion for the ws would be (MSE) A cool design criterion for the ws would be (MSE)} ] [ ] [ { min2k s k s Ei w..but s[k]=unknown! (of course) ..but s[k]=unknown! (of course) ps: this would also include dereverberation (see Topic-5)41]. [ ] [iiTik k s w m EE493Q: Digital Speech Processing Multi-Microphone NoiseMulti-Microphone NoiseReduction ProblemReduction Problem41]. [ ] [iiTik k s w m] [k n] [k s? iwWill use an MSE-criterion (mean-squared error)} ] [ ] [ { min2k d k s Ei wwith d[k] (`desired response) yet to be defined This is ` This is `Wiener filtering Wiener filtering (see DSP-II) (see DSP-II) EE493Q: Digital Speech ProcessingMMSE criterionMMSE criterion where where Solution is Solution is} ] [ ] [ { min2k d k s E ww m w m . ] [ ]. [ ] [41k k k sTiiTi [ ] ]} [ . ] [ { . } ] [ . ] [ {1k d k E k k ETm m m w [ ][ ]TT T T TTT T T Tk k k k k ] [ ] [ ] [ ] [ ] [4 3 2 14 3 2 1m m m m mw w w w wauto-correlation matrix cross-correlation vector)Wiener Filtering )review)Wiener Filtering )review EE493Q: Digital Speech ProcessingMWF :MWF : Multi-ChannelMulti-ChannelWiener FilteringWiener Filtering] [k n] [k s? iw} ] [ ] [ { min2k d k s Ei wchoice for d[k]: ] [ ] [1k s k d = signal part in microphone-1 (`1=arbitrary) = unknown signal ! (difference with `standard Wiener filtering) ] [ ] [ ] [1 1 1k n k s k m + w m . ] [ ] [ k k sT EE493Q: Digital Speech Processing Interludium : KalmanInterludium : KalmanFilterFilter DefinitionDefinition:: = MMSE-estimate= MMSE-estimateofof xx[[kk ] using all ] using all availableavailabledata up until timedata up until time llFILTERING`FILTERING` = estimate = estimatePREDICTION`PREDICTION` = estimate = estimateSMOOTHING`SMOOTHING` = estimate = estimate ] | [k k x0 ], | [ > + n n k k x] | [l k x0 ], | [ > n n k k x EE493Q: Digital Speech Processing Kalman filter for SpeechKalman filter for SpeechEnhancementEnhancementAssume AR model of speech andAssume AR model of speech andnoisenoise Equivalent state-space model Equivalent state-space model is is))see p. 34 ))see p. 34 y=microphone signal y=microphone signal+ + Nmn mMms mk w g m k n k nk u g m k s k s11] [ ] [ ] [] [ ] [ ] [u[k], w[k] = zero mean, unit variance,white noise'+ +] [ ] [] [ ] [ ] 1 [k k yk k kTx cv Ax x EE493Q: Digital Speech Processing Kalman filter for SpeechKalman filter for SpeechEnhancementEnhancement:with:with[ ] ] [ ] 1 [ ] [ ] 1 [ ] [ k n N k n k s M k s kT + + x]]]
]]]]
]]]
nsN MTnsg 00 gG CA 00 AA ; 1 0 0 1 0 0 ; ]]]]]]
]]]]]]
1 1 1 11 0 00 00 1 0;1 0 00 00 1 0 N NnM MsA A[ ]Tk w k u k ] [ ] [ . ] [ G v [ ] [ ] ; 0 0 ; 0 0nTn sTsg g g gTG G Q . EE493Q: Digital Speech Processing Kalman filter for SpeechKalman filter for SpeechEnhancementEnhancementPS:PS: This was single-microphoneThis was single-microphone .case.case How can this be extendedHow can this be extended? to multi-microphone case? to multi-microphone case Same A, x, vSame A, x, v ?=C?=C'+ +] [ ] [] [ ] [ ] 1 [k kk k kTx C yv Ax x EE493Q: Digital Speech Processing Kalman filter for SpeechKalman filter for SpeechEnhancementEnhancementDisadvantages iterative approach: complexity delaysplit signalin frames estimateparametersKalman Smootheror Kalman Filter reconstruct signali m i sg, , ; i m i ng, ,; iterationsy[k]] [ k s], [mis] [minIterative algorithm EE493Q: Digital Speech ProcessingCONCLUSIONSCONCLUSIONSSingle-channel noise reduction Single-channel noise reductionBasic system is `spectral subtraction Basic system is `spectral subtractionOnly Onlyspectral filtering spectral filtering , not easily extended to multi-channel case for , not easily extended to multi-channel case foradditional spatial filtering additional spatial filteringHence can only exploit differences in spectra between noise and speech Hence can only exploit differences in spectra between noise and speech:signal :signalnoise reduction at expense of speech distortion noise reduction at expense of speech distortionachievable noise reduction may be limited achievable noise reduction may be limitedMulti-channel noise reduction Multi-channel noise reductionBasic system is MWF, possibly extended with speech distortion Basic system is MWF, possibly extended with speech distortionregularization and spatial preprocessing regularization and spatial preprocessingProvides Providesspectral spectral + +spatial filtering spatial filtering(! (links with beamforming (! (links with beamformingKalman filtering based alternative approach (not easily applied in Kalman filtering based alternative approach (not easily applied in(practice (practice