Transcript kepstri on
Matemaattinen Levinson-Durbin kikka algoritmi Rekursiivinen laskenta LPC PLP Kepstrianalyysi LP-analyysi Käänteinen Fourier-muunnos Kuulonmukainen spektrin muokkaus 1 Fourieranalyysi Puhesignaali LSP/LSF LPCC Kertaus: PLP – Perceptual Linear Prediction • PLP –menetelmässä signaalin spektriä muokataan ensin siten, että ihmiskuulon ominaisuudet tulevat huomioon otetuiksi. Sitten muokatulle signaalille tehdään tavallinen lineaariprediktioanalyysi. • PLP – parametrejä/featureita käytetään ainakin puheentunnistuksessa ja puhujantunnistuksessa. Niiden on havaittu olevan luotettavampia kuin puhtaat LP-parametrit. Kertaus: Ihmiskuulon ominaisuuksia 1) Epälineaarinen äänenkorkeusaistimus 1) 2) Mel-taajuuswarppaus Bark-taajuuswarppaus 2) Kriittinen kaista 1) Kriittisen kaistan summasuodin 3) Herkkyys riippuu taajuudesta 1) 2) Akustisissa mittauksissa A-painotussuodin PLPssä oma funktio 4) Epälineaarinen äänenvoimakkuusaistimus 1) 2) Subjektiivinen äänenvoimakkuus = 10𝑙𝑜𝑔10 (𝐼) 3 Subjektiivinen äänenvoimakkuus = 𝐼 Kertaus: Spektrin kuulonmukainen käsittely PLP:ssä 3 Pperceptual (k ) 3 () f kH P( f ) H f f kL k ( f )H eql ( f ) Spektristä kepstriin • Kepstriä laskettaessa ajatellaan spektri ikään kuin aikatason signaaliksi. • Kun spektri on taajuusesitys aikatason signaalista, niin kepstri on ’taajuusesitys’ spektristä. Tästä nimi: spektri->kepstri • Kun spektrin yksikkö on (englanniksi) frequency, kepstrin yksiköksi on määrätty: ’quefrency’ joka tosiasiassa on (pseudo)aika: t -> 1/t=f -> 1/f=t . Kepstrin määritelmä 1 cx [k ] N N 1 log S (n) e j 2k n N n 0 • Reaalinen signaalikepstri määritellään logaritmisen tehospektrin käänteisenä Fourier-muunnoksena, koska logaritmisen spektrin komponentteja voidaan käsitellä summautuneina ominaisuuksina. 𝑙𝑜𝑔 𝑆(𝑛) = 𝑙𝑜𝑔 𝐻 𝑛 𝐺(𝑛) = 𝑙𝑜𝑔 𝐻(𝑛) + 𝑙𝑜𝑔 𝐺(𝑛) • Koska reaalisen signaalin magnitudispektri |𝑆 𝑛 | (niin kuin myös tehospektri 𝑆(𝑛)2 ) on aina symmetrinen funktio, voidaan Fouriermuunnos korvata kosinimuunnoksella. Puheen spektri- ja kepstrikomponentit • Puhesignaalin tapauksessa oletetaan, että ääntöväylä aiheuttaa spektriin laajoja resonanssialueita ja kurkunpää-ääni aiheuttaa harmonisen kampaspektrin. • Jos siis spektrille tehdään taajuusanalyysi … • …voidaan ajatella, että kepstrin pienen ajan quefrenssit (matalat taajuudet) vastaavat ääntöväylän spektriominaisuuksia • ja pitkän ajan quefrenssit (korkeat taajuudet) vastaavat kurkunpää-ääntä. LP-kepstri • Lineaariprediktioparametrien määrittämä spektri, eli systeemi 𝐻 𝑧 = 1 , voidaan vaihtoehtoisesti esittää kepstrikerrointen avulla. 𝐴(𝑧) Kepstrikerrointen määrittämiseksi LP-kerrointen avulla lähdetään liikkeelle kompleksisen kepstrin määritelmästä: kun tähän sijoitetaan all-pole systeemin siirtofunktion logaritmi: ln H ( ) cn e jn n 0 ln H ( ) ln 1 ln A( ) A( ) saadaan: ln A( ) cn e jn n 0 Tämä ilmaistuna z:n avulla on: Ja kun vielä muistetaan, että A( z ) p a z n 0 n n , saadaan: ln A( z ) cn z n n 0 p n 0 n 0 ln an z n cn z n LP-kepstri (2) Tehdään edellisen kalvon yhtälölle temppuja – p d d n ln( an z ) ck z k dz n 0 dz k 0 1) Otetaan molemmista puolista derivaatta: p nan z n 1 n 0 p m a z m kck z k 1 k 0 m 0 p 2) Kerrotaan molemmat puolet z am z m m 0 3) Ja vaihdetaan summausjärjestystä: p :lla: na z n 0 p n n kck z k 0 p k p a m 0 m n k m na z ka c z n m k n 0 k 0 m 0 z m LP-kepstri (3) p p n ( k m ) na z ka c z n m k n 0 k 0 m 0 𝑚 Verrataan lausekkeen termejä 𝑙𝑒𝑓𝑡 𝑧 −𝑛 = 𝑟𝑖𝑔ℎ𝑡 𝑧 −(𝑘+𝑚) 𝑛= 𝑘+𝑚 Kun 𝑛 = 𝑘 + 𝑚 , on oltava 𝑙𝑒𝑓𝑡 = 𝑟𝑖𝑔ℎ𝑡 . Siispä, kun 𝒏 = (𝑘 + 𝑚) = 𝟎…𝒑 saadaan: n nan lan l cl l 0 => n 1 na0 cn nan lan l cl l 0 => 1 n 1 cn an kan l cl n l 0 𝑘 0 1 2 3 4 0 1 0 1 1 2 2 3 3 4 4 5 2 3 2 3 3 4 4 5 5 6 6 7 4 5 6 7 4 5 6 7 5 6 7 8 6 7 8 9 7 8 8 9 9 10 10 11 8 9 8 9 10 11 12 9 10 11 12 13 LP-kepstri (4) p p n ( k m ) na z ka c z n m k n 0 k 0 m 0 Kun 𝒏 = (𝑘 + 𝑚) = 𝒑 + 𝟏 … ∞ saadaan: 0 n ka k n p => => na0 cn c nk k n 1 kank ck k n p 1 n 1 cn kan k ck n k n p 𝑛= 0 1 2 3 4 𝑘+𝑚 0 1 2 3 4 5 6 7 8 9 0 1 1 2 2 3 3 4 4 5 2 3 3 4 4 5 5 6 6 7 4 5 6 5 6 7 6 7 8 7 8 9 8 9 10 7 8 9 10 11 8 9 10 11 12 9 10 11 12 13 LP-kepstri Lineaariprediktioparametrit voidaan muuttaa kepstrikertoimiksi rekursiivisen yhtälöryhmän avulla: c 0 ln( g ) kun n=0, 1 n 1 cn an kan k ck n k 0 kun n = 1 …p 1 n 1 cn kan k ck n k 0 kun n = p+1 …∞