stof

advertisement
Spraakverwerking
per computer
David Weenink
Wiskundige
opfrissing
Spraakverwerking per computer
De logaritme
Sinus en cosinus
Bemonsteren
David Weenink
Instituut voor Fonetische Wetenschapen
ACLC
Universiteit van Amsterdam
A MSTERDAM C E NTE R
FOR LANGUAGE AND
COMMUNICATION
Oversturing
Spraakverwerking
per computer
Getallenstelsels
David Weenink
Wiskundige
opfrissing
Decimaal naar binair
De logaritme
Waarde van een symbolenreeks sn sn−1 ....s2 s1 s0 ?
Bemonsteren
Positie in de reeks bepaalt waarde
de 1 in 12 en 1234 heeft waardes 10 en 1000
Decimale stelsel
1234 = 1 × 1000 +2 × 100 +3 × 10
1×
103
+2 ×
102
+3 ×
101
Sinus en cosinus
Oversturing
+4 =
+4 × 100
De waarde van de reeks sn sn−1 ....s2 s1 s0 met basis b
= sn b n + sn−1 b n−1 + ... + s2 b 2 + s1 b 1 + s0 b 0
Spraakverwerking
per computer
Voorbeelden 1
David Weenink
Wiskundige
opfrissing
Decimaal naar binair
De logaritme
1 Decimaal, basis b = 10
Symbolen 0 1 2 3 4 5 6 7 8 9
Optelling: 10 + 20 = 30
1 + 0 = 1, 1 + 1 = 2, . . . , 1 + 8 = 9, 1 + 9 = 10
2 Binair, b = 2
Symbolen 0 1
Optelling:
10102 + 101002 = 111102 (1010 + 2010 = 3010 )
1 + 0 = 1; 1 + 1 = (1)0 (tr 1)
Sinus en cosinus
Bemonsteren
Oversturing
tr 1
Spraakverwerking
per computer
Voorbeelden 2
David Weenink
Wiskundige
opfrissing
Decimaal naar binair
De logaritme
3 Octaal, b = 8
Symbolen 0 1 2 3 4 5 6 7
Optelling: 128 + 248 = 368
1 + 0 = 1, . . . , 1 + 6 = 7, 1 + 7 = (1)0
Sinus en cosinus
Bemonsteren
Oversturing
(tr 1)
4 Hexadecimaal, b = 16
Symbolen 0 1 2 3 4 5 6 7 8 9 A B C D E F
Optelling: A16 + 1416 = 1E16
1 + 0 = 1, 1 + 1 = 2, . . . , 8 + 1 = 9, 9 + 1 = A,
9 + 2 = B, . . . , 9 + 4 = E, 9 + 5 = F ,
9 + 7 = 1016 , 9 + 8 = 1116
Spraakverwerking
per computer
Decimaal naar binair (1)
David Weenink
Wiskundige
opfrissing
Decimaal naar binair
De logaritme
Staartdeling
2
213
Rest
106
53
26
13
6
3
1
0
1
0
1
0
1
0
1
1
Resultaat:
11010101
Controle:
1 × 27 + 1 × 26 +
0 × 25 + 1 × 24 +
0 × 23 + 1 × 22 +
0 × 21 + 1 × 20
128+64+16+4+1 = 213
Sinus en cosinus
Bemonsteren
Oversturing
Spraakverwerking
per computer
De logaritme
David Weenink
Definition
y
= log x
y
= ln x
⇐⇒ x = 10y
⇐⇒ x =
ey
Wiskundige
opfrissing
(de 10-log)
De logaritme
(de natuurlijke logaritme)
Sinus en cosinus
Bemonsteren
Oversturing
2
Monotoon stijgend
1
0
–1
0 10 20 30 40 50 60 70 80 90 100
Lage x
”gevoeliger” dan
hoge x:
(0.1 − 1) : 1
(1 − 10) : 1
(10 − 100) : 1
Spraakverwerking
per computer
De logaritme (2)
David Weenink
log 1 = 0
log 10 = 1
log 2 ≈ 0.3
Rekenregels
log(a × b) = log a + log b
Wiskundige
opfrissing
De logaritme
Sinus en cosinus
Bemonsteren
log(a/b) = log a − log b
log ax = x log a
Voorbeelden
log 100 = log(10 × 10) = log 10 + log 10 = 1 + 1 = 2
log 100 = log 102 = 2 log 10 = 2
log 20 = log(2 × 10) = log 2 + log 10 ≈ 1.3
log 0.1 = log(1/10) = log 1 − log 10 = 0 − 1 = −1
log 10.000.000.000.000 = log 1013 = 13
0.5 = log(1/2) = log 1 − log 2 ≈ −0.3
Oversturing
De decibel
Spraakverwerking
per computer
David Weenink
Wiskundige
opfrissing
De logaritme
Sinus en cosinus
Logaritme van een vermogensverhouding
Bemonsteren
Oversturing
10 log(P/Pref )
Vermogen P v (A)mplitude2
20 log(A/Aref )
Zie ook: RvH pp. 105, 198
Spraakverwerking
per computer
De sinus en cosinus
David Weenink
Wiskundige
opfrissing
De logaritme
1
Sinus en cosinus
0
Bemonsteren
Frequentie
Fase
Oversturing
–1
–3π
–2π
–π
sin(x) en cos(x)
Amplitudes: [−1, 1]
Periode: 2π
Zie ook wikipedia(nl)
0
π
2π
3π
Spraakverwerking
per computer
Frequenties
David Weenink
Wiskundige
opfrissing
1
De logaritme
Sinus en cosinus
Frequentie
Fase
Bemonsteren
–1
Oversturing
0
0.5
sin(2π1x)
sin(2π2x)
sin(2π3x)
sin(2π4x)
sin(2π5x)
Frequentie sin(2πf x)
Amplitudes in plaatje zijn aangepast!
1
Spraakverwerking
per computer
Fase
David Weenink
Wiskundige
opfrissing
De logaritme
1
Sinus en cosinus
Frequentie
Fase
0
Bemonsteren
Oversturing
–1
0
sin(2πx + 0)
sin(2πx + π/4)
sin(2πx + π/2)
sin(2πx + π)
sin(2πx−π)
Fase sin(2πx + φ)
0.5
1
Geluid en computer
Spraakverwerking
per computer
David Weenink
Wiskundige
opfrissing
De logaritme
Geluid: continu (analoog)
Computer: discrete eenheden (digitaal)
Vertaalslag ADC: Analoog naar Digitaal Conversie
Bemonsteren en kwantiseren
Bemonsteringstijd T
(eng: sampling time)
Bemonsteringsfrequentie Fs = 1/T
(eng: sample rate, sampling frequency )
Amplitudekwantisatie 1, 2, 8, 12, 16, 24, . . . bit
Sinus en cosinus
Bemonsteren
Aliasing
Kwantisatie
Oversturing
Spraakverwerking
per computer
Hoe vaak bemonsteren?
David Weenink
Wiskundige
opfrissing
De logaritme
1
Sinus en cosinus
Bemonsteren
0
0
Aliasing
Kwantisatie
Oversturing
–1
0
0.5
Time (s)
1
sin(2π5x + φ)
Fs = 2
Fs = 10
Fs = 20
Fs = 40
Fs = 100
Nyquist-Shannon theorema:
Reconstructie uit
monsterwaardes mogelijk als
Fs ≥ 2Fmax
0
Shannon-Nyquist sampling theorema
Spraakverwerking
per computer
David Weenink
Wiskundige
opfrissing
Omdat het zo geweldig is:
De logaritme
Sinus en cosinus
Als de bemonsteringsfrequentie (Fs ) hoger is dan twee maal
de bandbreedte van het signaal dan is reconstructie van het
analoge signaal uit de monsterwaardes mogelijk!
Bandbreedte = Hoogste frequentie − laagste frequentie
(B = Fmax − Fmin )
In de praktijk is Fmin ≈ 0 Hz
Praktisch: Fs > 2Fmax
Altijd filteren (laagdoorlaat)!
Bemonsteren
Aliasing
Kwantisatie
Oversturing
Spraakverwerking
per computer
Vouwvervorming (eng: aliasing)
David Weenink
Wiskundige
opfrissing
De logaritme
Sinus en cosinus
Bemonsteren
Aliasing
Kwantisatie
Oversturing
0
0
0.5
Als er niet voldaan is aan Shannon-Nyquist:
vouwvervorming (eng: aliasing )
1
Vouwvervorming hoorbaar
Spraakverwerking
per computer
David Weenink
Wiskundige
opfrissing
De logaritme
praat script
fs = 11025
f1 = 500
Create Sound from formula...
...0.5*sin(2*pi*f1*x)
Sinus en cosinus
Bemonsteren
Aliasing
Kwantisatie
s1 Mono 0 1 fs
Play
f2 = 4 * fs + 500
Create Sound from formula...
...0.5*sin(2*pi*f2*x)
Play
s2 Mono 0 1 fs
Oversturing
Spraakverwerking
per computer
Kwantisatie (eng: quantisation)
David Weenink
Wiskundige
opfrissing
De logaritme
Sinus en cosinus
Bemonsteren
0
Aliasing
Kwantisatie
Oversturing
0
0.5
1 bit (21 = 2 nivo’s)
2 bit (22 = 4 nivo’s)
3 bit (23 = 8 nivo’s)
4 bit (24 = 16 nivo’s)
8 bit (28 = 256 nivo’s)
16 bit (216 = 65536 nivo’s)
1
Soorten kwantisaties
Spraakverwerking
per computer
David Weenink
PCM (Puls Code Modulation)
Kwantiseert de grootte van de amplitude met N bits.
(lineair) 12 bit/16 kHz : delen van TIMIT spraakcorpus
(lineair) 16 bit/44.1 kHz : CD
(lineair) 16 bit/48 kHz : DAT
(logaritmisch) 8 bit/8 kHz : alaw en µlaw (telefonie)
ADPCM (Adaptive Differential Pulse Code Modulation)
Kwantiseert de verandering van de amplitude met n bits
Het aantal bits kan adaptief aangepast worden.
In het algemeen is het aantal bits n N
en de bemonsteringsfrequentie veel hoger
Extreem geval van ADPCM is DSD (Super Audio-CD)
1 bit kwantisatie
Bemonstering 64 x 44.100 Hz = 2.822.400 Hz
Wiskundige
opfrissing
De logaritme
Sinus en cosinus
Bemonsteren
Aliasing
Kwantisatie
Oversturing
Spraakverwerking
per computer
Super Audio CD en DVD parameters
David Weenink
Parameter
Codering
DVD-Audio
SACD
CD
Wiskundige
opfrissing
16,20,24 bit
1 bit DSD
16 bit LPCMDe logaritme
Sinus en cosinus
LPCM
Bem.freq.
44.1, 48, 88.2, 96, 2.822,4 kHz 44.1 kHz Bemonsteren
Aliasing
Kwantisatie
176.4, 192 kHz
Oversturing
Kanalen
1-6
2-6
2
Compressie
ja (MLP)
ja (DST)
nee
Foutcorrectie ja
ja
CIRC
Vercijfering
ja
ja
nee
Speeltijd
62-843 min
70-80 min
74 min
Bandbreedte 0-96 kHz
0-100 kHz
0-20kHz
Dynamiek
tot 144 dB
> 120 dB
96 dB
Uit: Konstantinides (2003), ”An introduction to Super
Audio CD and DVD-Audio”, IEEE Signal Processing, vol 20,
pag 71.
Oversturing
Spraakverwerking
per computer
David Weenink
Wiskundige
opfrissing
Een toontje van 500 Hz klinkt zo.
Overstuurd klinkt het zo.
De signalen en hun spectra:
De logaritme
Sinus en cosinus
Bemonsteren
Oversturing
Download