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 2k
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  jn
n 0
ln H ( )  ln
1
  ln A( )
A( )

saadaan:
 ln A( )   cn e  jn
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
nk k
n 1
 kank 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 …∞