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 2015 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 — 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 Metody krátkodobé anal ýzy • Zvuk je periodický pouze na krátkém intervalu. • Zpracování signálu na krátkém časovém intervalu (mikrosegmentu), kde se nepředpokládají výraznější dynamické změny. • velikost od 10 do 40 ms • Metody krátkodobé analýzy: • v časové oblasti, • ve frekvenční oblasti. 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 — Zpracování digitalizovaného signálu Pro výpočet n. váhy se využívá vztah 2-ľrn 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 — 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 — ' ' j- i- •! •! vanová UKeriKd Zpracovaní digitalizovaného signálu -, ..... „ , , , Zpracovaní signálu v casove oblasti Zpracování signálu ve frekvenční oblasti realizovaného signálu v časové oblasti 1. • Vychází se přímo z hodnot vzorku, 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 1 • Výpočet podle vzorce: oo E(n)= £ (s(kMn-k))2 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 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 l(n)= £ \s{kM"-k)\ k——oo • Použití - shodné s funkcí krátkodobé energie. • Ukázka implementace pro systém Octave. Luděk Bártek — 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 oo z(n)= Y, \sgn[s(k)]-sgn[s(k-l)]\u(n-k) • 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 — Zpracování digitaliz ováného signálu Ukázka průběhu funkce středního počtu průchodů nulou 60 50 40 30 20 10 n ,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)\iu{n - k) k——oo Luděk Bártek B 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í fw nkce • Krátkodobá autokorelační funkce: oo R(m, n)= (sCcMn - k))(s(k + m)uj{n - k + m)) k——oo • používá se při zjištování periodicity signálu základního tónu řeči • je-li signál periodický s periodou T, R(m,n) nabývá maxima pro m — 0, T, 2 ■ T,... • předpokládá délku mikrosegmentu aspoň 2 • T • 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 • f(x) - periodická funkce s periodou T, která má na intervalu T konečný počet extrémů a nespojitostí oo ŕ(x) = y + ^2{3kCos(kx) + bksin(kx)) • Způsob výpočtu koeficientů a-, a b-,\ • a, a + T - interval periodicity funkce f 2 ra+ T ai< = — f(x)cos(kx)dx ' Ja 2 ra+T bk = — I f(x)sin(kx)dx ' J a Nelze přímo použít - digitalizovaný zvuk není spojitý a je periodický pouze na omezených úsecích. 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-'-f *" = ^x(n)^" Í7=0 Í7=0 • |X(/r)| - intenzita k. spektrálního koeficientu; frekvence závisí na velikosti mikrosegmentu N a vzorkovací frekvence T • x(n) - n. vzorek daného mikrosegmentu. 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 w-i 1 A/-1 k=0 k=0 Luděk Bártek — 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 - N log2(^) 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. • 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 • Jedna z nejefektivnějších metod analýzy akustického signálu. » Zajištuje 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