Zpracování digitalizovaného signálu U vod do počítačového zpracování řeči Luděk Bártek Fakulta Informatiky Masarykova Univerzita podzim 2013 Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Q Zpracování digitalizovaného signálu • Metody krátkodobé analýzy • Váhová okénka • Zpracování signálu v časové oblasti • Zpracování signálu ve frekvenční oblasti Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti • Zvuk je periodický pouze na krátkém intervalu. • Zpracování signálu na krátkém časovém intervalu, kde se nepředpokládají výraznější dynamické změny (mikrosegmenť). • velikost od 10 do 40 ms • Metody krátkodobé analýzy: • v časové oblasti, • ve frekvenční oblasti. Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu • Nevýhoda použití mikrosegmentu: • Chyba způsobená předpokladem, že zvuk v okolí okénka zůstává periodický s periodou okénka. • Tuto chybu lze kompenzovat použitím okénka. • Okénko - posloupnost vah pro vzorky v mikrosegmentu. • Nejběžněji používané typy okének: • hammingovo, • pravoúhlé. Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu • Pro výpočet n. váhy se využívá vztah 2-ľrn íd(l)) 0,54 - 0,46cos(^) n = 0...N-l 0 n<0Vn>W N - počet vzorků v mikrosegmentu Hammingovo okénko pro mikrosegment délky 64 Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu • Přiřadí každému prvku mikrosegmentu váhu 1: u{n) = | N - délka mikrosegmentu 1 n = 0...N- 1 0 n <0V n> N Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Zpracování signálu ve frekvenční oblasti Analýza digitalizovaného signálu v časové oblasti 1. • Vychází se přímo z hodnot vzorků, nikoliv z hodnot spektra. • Používají se: • funkce krátkodobé energie • funkce krátkodobé intenzity • krátkodobá funkce středního počtu průchodů nulou • diference 1. řádu Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Funkce krátkodobé energie Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti • Výpočet podle vzorce: oo E(n) = £ (s(*Mn " k)f k——oo • s(k) - vzorek v čase k, uj(n — k) - váha odpovídajícího okénka pro čas k • Výstupem je průměrná energie v rámci segmentu. • Značně citlivá na velké změny úrovně signálu v rámci segmentu. • Druhá mocnina zvyšuje dynamiku zvukového signálu. • Ukázka výpočtu funkce krátkodobé energie v Octave. • Využití: • detekce ticha a promluvy • příznaky pro jednoduché klasifikátory slov • oddělení znělých a neznělých částí promluvy _a .. ._ Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Funkce krátkodobé intenzity Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti • Funkce krátkodobé intenzity: oo /(n)= £ |s(*Mn-*)| k——oo • Použití - shodné s funkcí krátkodobé energie. • Ukázka implementace pro systém Octave. Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti Ukázka průběhu funkce krátkodobé intenzity |20 Metody krátkodobé analýzy -, . . ,. .. .. .. Váhová okénka Zpracovaní digitalizovaného signálu -, ..... „ , , , Zpracovaní signálu v casove oblasti Zpracování signálu ve frekvenční oblasti Krátkodobá funkce středního počtu průchodů nulou • Krátkodobá funkce středního počtu průchodu nulou: • součet všech průchodů signálu nulou z(n)= J2 \sgn[s{k)]-sgn[s{k-l)]\ij{n-k) k——oo • varianta - počet lokálních extrémů • obě mohou být negativně ovlivněny šumem zvukového pozadí • Využití: • detekce začátku a konce slova (i zašuměného) • určení základního hlasivkového tónu • přibližné určení formantů Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti Ukázka průběhu funkce středního počtu průchodů nulou 70 60 50 4C 30 20 10 ,U-1-U-,-bJ-1-,-1 0 50 100 ISO 200 250 300 Zpracování digitalizovaného signálu • Diference prvního řádu oo Dn= \s{k) - s{k - l)\u{n - k) k——oo Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti Krátkodobá autokorelační funkce • Krátkodobá autokorelační funkce: oo R(m, n)= (s(/cM'J - k))(s(k + rn)uj{n - k + m)) k——oo • používá se při zjišfování periodicity signálu základního tónu řeči • je-li signál periodický s periodou P, R(m,n) nabývá maxima pro m=0, P, 2P, ... • předpokládá délku mikrosegmentu aspoň 2P Luděk Bártek Uvod do počítačového zpracování řeči • Transformují hodnoty vzorků na různé frekvenční charakteristiky. • Většinou je lze chápat jako spektrální charakteristiky. • Nejvíce používané: < krátkodobá Fourierova transformace • kepstrální analýza • lineární prediktivní analýza Luděk Bártek Uvod do počítačového zpracování řeči • f(x) - periodická spojitá funkce s periodou T oo f {x) = — + '^2(akcos(kx) + bksin(kx)) k=l • Způsob výpočtu koeficientu a, a b,: • a, a + T - interval periodicity funkce f rct+T 2 ra+1 ak = — f(x)cos(kx)dx ' Ja 2 ra+T bk = — f(x)sin(kx)dx ' Ja • Nelze přímo použít - digitalizovaný zvuk není spojitý a je periodický pouze na omezených úsecích. Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti Diskrétní Fourierova Transformace (DFT) • Používá se pro vyjádření spektrálních vlastností periodických posloupností s periodou N vzorků případně konečných posloupností délky N vzorků. • Výpočet koeficientů X(k) DFT: N-l N-l X(k) = 5>(n)e-'-fkn = 5>(n)W-*" • - intenzita k. spektrálního koeficientu; frekvence závisí na velikosti mikrosegmentu N a vzorkovací frekvence T • x(n) - n. vzorek daného mikrosegmentu. Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti Fourierova transformace Výpočet hodnoty vzorku na základě hodnot X(k) • Výpočet n. vzorku na základě hodnot X(k) - Inverzní diskrétní Fourierova transformace (IDFT): 1 N-i 1 N-l k=0 k=0 Luděk Bártek Uvod do počítačového zpracování řeči Zpracování digitalizovaného signálu Metody krátkodobé analýzy Váhová okénka Zpracování signálu v časové oblasti Zpracování signálu ve frekvenční oblasti Rychlá Fourierova transformace (FFT) • Časová složitost výpočtu spektrálních koeficientů pomocí DFT - n2 operací na komplexními čísly. • Pomocí FFT - A//o£2(f) operací násobení. • FFT požaduje, aby délka analyzovaného segmentu byla mocninou 2. • Algoritmus využívá: • periodicity členu w~nk ve výpočtu DFT • rekurzivní algoritmus metodou rozděl a panuj. Luděk Bártek Uvod do počítačového zpracování řeči » Vychází z modelu činnosti hlasového ústrojí: • Řečové kmity lze modelovat jako odezvu lineárního systému na buzení sestávající ze sledu pulzů pro znělou hlásku a šumu pro neznělou. • Kepstrum - X(k) = IFFT(log\FFT(x(k))\) » Kepstrální analýza umožňuje z řeči oddělit parametry buzení a parametry hlasového ústrojí. • Využití: • ocenění fonetické struktury řeči • znělost • F0, Fi, F2, ... • rozpoznávání slov • verifikace a identifikace mluvčího • ... Luděk Bártek Uvod do počítačového zpracování řeči • Jedna z nejefektivnějších metod analýzy akustického signálu. • Zajišťuje velmi přesné odhady parametru při relativně malé zátěži. • Vychází z předpokladu, že s(k) lze popsat jako lineární kombinaci N předchozích vzorků a buzení u(k) s koeficientem zesílení G: N s(k) = -^2aisik - o + Guik) i=l • Použití: • určování spektrálních charakteristik modelu hlasového ústrojí • z chyby predikce lze odvodit poznatky o znělosti a určit frekvenci základního tónu • koeficienty a,- nesou informaci o spektrálních vlastnostech • lze je použít jako příznaky pro rozpoznávání řeči. • HTK - Hidden Markov Model Toolkit (Engineering Department of Cambridge University) - toolkit pro tvorbu rozpoznávačů řeči založených na skrytých Markovových modelech. • ESPS toolkit • NICO toolkit - toolkit pro vytváření umělých neuronových sítí, využívá se např. pro rozpoznávání řeči. • Matlab - knihovny pro analýzu řeči • labrosa.ee.columbia.edu/matlab/ • Audio processing in Matlab • ... • Octave - opensource alternativa Matlabu • Měly by jít použít tytéž knihovny. • Viz též bakalářská práce L. Oroszlányho (Fl, jaro 2012) • SMP Tool Luděk Bártek Uvod do počítačového zpracování řeči