Download - Algorithm Speech Enhancement

Transcript
Page 1: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Speech Enhancement

Edited by: Ashkan masomi

Azad university of bushehr

Page 2: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Iterative Wiener FilteringIterative Wiener Filtering

white noise

generator

pulse train……

pitch period

voiced

unvoiced

x

M

m

mjme

1

1

1

sg

speech

signal

frequency domain:

time domain:

= linear prediction parameters

all-pole filter

u[k]

)(1

)(

1

Ue

gS M

m

mjm

s

M

msm kugmksks

1

][][][

TM 1α

Page 3: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

OverviewOverviewSingle-microphone noise reductionSingle-microphone noise reduction

Problem descriptionProblem descriptionSpectral subtraction methods (=Spectral subtraction methods (=spectral filteringspectral filtering))Iterative Wiener filtering based on speech Iterative Wiener filtering based on speech

modelingmodeling

Multi-microphone noise reductionMulti-microphone noise reduction

Problem descriptionProblem descriptionMulti-channel Wiener filtering (=Multi-channel Wiener filtering (=spectral+spatialspectral+spatial

filtering)filtering)Iterative Kalman filtering based Iterative Kalman filtering based on speech on speech

modelingmodeling

Page 4: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Multi-Microphone Noise Multi-Microphone Noise Reduction ProblemReduction Problem

(some) speech estimate

speech source

noise source(s)

microphone signals

4..1],[][][ iknkskm iii

][kn

][ks

? ][ks

speech part noise part

(`4’=arbitrary)

will use m instead of y now!!

Page 5: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Multi-Microphone Noise Multi-Microphone Noise Reduction ProblemReduction Problem

4

1

].[][

][...]1[][][

ii

Ti

iiiTi

kks

Lkmkmkmk

wm

m

will use time-domain linear filteringlinear filtering :

][kn

][ks

][ks

][1 km

filter

coefficients

][][][ kkk iii nsm

Page 6: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Multi-Microphone Noise Multi-Microphone Noise Reduction ProblemReduction Problem

][kn

][ks

?iw

A cool design criterion for the w’s would be (MSE)A cool design criterion for the w’s would be (MSE)

}][][{min2

ksksEi

w

..but s[k]=unknown! (of course) ..but s[k]=unknown! (of course)

ps: this would also include dereverberation (see Topic-5)

4

1

].[][i

iTi kks wm

Page 7: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Multi-Microphone Noise Multi-Microphone Noise Reduction ProblemReduction Problem

4

1

].[][i

iTi kks wm

][kn

][ks

?iw

Will use an MSE-criterion (mean-squared error)

}][][{min2

kdksEi

w

…with d[k] (`desired response’) yet to be defined

This is `This is `Wiener filtering’ Wiener filtering’ (see DSP-II) (see DSP-II)

Page 8: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

MMSE criterionMMSE criterion

wherewhere……

Solution isSolution is……

}][][{min2

kdksE w

wmwm .][].[][4

1

kkks T

ii

Ti

]}[.][{.}][.][{1

kdkEkkE T mmmw

TTTTT

TTTTT

kkkkk ][][][][][ 4321

4321

mmmmm

wwwww

auto-correlation matrix cross-correlation vector

Wiener Filtering (review)Wiener Filtering (review)

Page 9: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

MWF :MWF : Multi-Channel Multi-Channel Wiener FilteringWiener Filtering

][kn

][ks

?iw

}][][{min2

kdksEi

w

choice for d[k]: ][][ 1 kskd = signal part in microphone-1 (`1’=arbitrary)

= unknown signal ! (difference with `standard’ Wiener filtering)

][][][ 111 knkskm

wm .][][ kks T

Page 10: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Interludium : Kalman Interludium : Kalman FilterFilter

DefinitionDefinition:: = MMSE-estimate of= MMSE-estimate of xx[[kk] using all] using all

available data up until available data up until timetime l l

`̀FILTERING’FILTERING’ = estimate = estimate

`̀PREDICTION’PREDICTION’ = estimate = estimate

`̀SMOOTHING’SMOOTHING’ = estimate = estimate

]|[ˆ kkx

0],|[ˆ nnkkx

]|[ˆ lkx

0],|[ˆ nnkkx

Page 11: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Kalman filter for Speech Kalman filter for Speech EnhancementEnhancement

Assume AR model of speech and noiseAssume AR model of speech and noise

Equivalent state-space model is… Equivalent state-space model is… (see p. 34)(see p. 34)

y=microphone signaly=microphone signal

N

mnm

M

msm

kwgmknkn

kugmksks

1

1

][][][

][][][

u[k], w[k] = zero mean, unit

variance,white noise

][][

][][]1[

kky

kkkT xc

vAxx

Page 12: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Kalman filter for Speech Kalman filter for Speech EnhancementEnhancement

withwith:: ][]1[][]1[][ knNknksMkskT x

n

s

NM

T

n

s

g0

0gGC

A0

0AA ;100100;

1111

100

00

010

;100

00

010

NN

n

MM

s AA

Tkwkuk ][][.][ Gv

;00;00 nTns

Ts gg gg

TGGQ .

Page 13: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Kalman filter for Speech Kalman filter for Speech EnhancementEnhancement

PS: PS: This was single-microphone caseThis was single-microphone case . .

How can this be extended to How can this be extended to multi-microphone casemulti-microphone case? ?

Same A, x, vSame A, x, v

CC ?= ?=

][][

][][]1[

kk

kkkT xCy

vAxx

Page 14: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

Kalman filter for Speech Kalman filter for Speech EnhancementEnhancement

Disadvantages iterative approach:• complexity• delay

split signal

in frames

estimate

parameters

Kalman Smoother

or Kalman Filter

reconstruct

signal

imisg ,, ˆ;ˆ iming ,,

ˆ;ˆ

iterations

y[k]

][̂ks

],[ˆ mis][ˆ min

Iterative algorithm

Page 15: Algorithm Speech Enhancement

EE493Q: Digital Speech Processing

CONCLUSIONSCONCLUSIONSSingle-channel noise reductionSingle-channel noise reduction

Basic system is `spectral subtractionBasic system is `spectral subtraction ’ ’Only Only spectral filteringspectral filtering, not easily extended to multi-channel case for , not easily extended to multi-channel case for

additional spatial filteringadditional spatial filteringHence can only exploit differences in spectra between noise and speech Hence can only exploit differences in spectra between noise and speech

signalsignal::

noise reduction at expense of speech distortionnoise reduction at expense of speech distortionachievable noise reduction may be limitedachievable noise reduction may be limited

Multi-channel noise reductionMulti-channel noise reductionBasic system is MWF, possibly extended with speech distortion Basic system is MWF, possibly extended with speech distortion

regularization and spatial preprocessingregularization and spatial preprocessingProvides Provides spectralspectral + + spatial filteringspatial filtering (links with beamforming!) (links with beamforming!)Kalman filtering based alternative approach (not easily applied in practice)Kalman filtering based alternative approach (not easily applied in practice)