B2M31DSP - cvičení 1
LPC analýza, LPC spektrum a AR modelování
Poznámky pro práci ve všech cvičeních:
- Všechny níže odkazované funkce (m-fily) jsou v učebnách FEL dostupné v
adresáři K:\VYUKA\DSP\m. Tento adresář lze přímo zařadit do
cesty v MATLABu (v hlavním menu 'File -> Set Path'). Pro stejné
použití při další práci lze toto nastavení uložit pomocí tlačítka
'Save' v otevřeném dialogovém okénku.
- Podobně všechny níže odkazované signály jsou v učebnách FEL
dostupné v adresáři K:\VYUKA\DSP\signaly a lze je tedy přímo
načíst.
- Při práci mimo FEL je nutné si odkazované funkce a signály
stáhnout, uložit lokálně a nastavit cestu k lokálním adresářům!
Dílčí úkoly k vypracování:
- Výpočet spektra na bázi DFT
- Pro signál nc1.bin reprezentující NF barevný šum určete jeho krátkodobé výkonové spektrum, vyhlazený odhad spektrální výkonové hustoty a jeho spektrogram. Uvažujte vzorkovací kmitočet f_s = 8 kHz.
POZN. Pro načtení signálů uložených v raw formátu bez hlavičky do MATLABu
použijte funkci loadbin.m, tj. v tomto případě použijte příkaz s=loadbin('nc1.bin');
- Výsledek: Zobrazte
- celý signál a jeho první segmentu délky wlen = 512 vzorků,
- krátkodobé výkonové spektrum počítané na bázi DFT z prvního segmentu délky 512 vzorků včetně správného popisu os,
- vyhlazený odhad spektrální výkonové hustoty (PSD) počítaný Welchovou metodou, délku krátkodobého okna volte 512 vzorků,
- spektrogram s délkou krátkodobého okna 512 vzorků;
- srovnejte měřítka výše zmíněných odhadů spektra a do dalšího obrázku vykreslete společně krátkodobé výkonové spektrum a vyhlazený odhad PSD; výpočet upravte tak, aby si hodnoty napočítaných spektrálních odhadů odpovídaly.
- Ve volném čase opakujte pro následující signály:
- LPC analýza a LPC spektrum
- Na bázi autokorelační metody (Yuleových-Walkerových rovnic) určete autoregresní koeficienty a výkon chyby predikce signálu nc1.bin. K výpočtu uvedených parametrů použijte MATLABovskou funkci lpc. Řád LPC analýzy volte p = 1 a délku analyzovaného signálu zvolte wlen2 = 512 vzorků.
- Výsledek:
- Zobrazte frekvenční charakteristiku a rozložení nulových bodů a pólů analyzujícího filtru s přenosovou funkcí A(z) danou vypočtenými autoregresními koeficienty.
- Zobrazte také frekvenční charakteristiku a rozložení nulových bodů a pólů syntetizujícího filtru s přenosovou funkcí H(z) = 1 / A(z).
- Srovnejte modulovou frekvenční charakteristiku syntetizujícího filtru se spektrem analyzovaného signálu.
- Určete LPC spektrum, tj. odhad PSD na bázi LPC, na bázi modulové frekvenční charakteristiky syntetizujícího filtru s přenosovou funkcí H(z) = sqrt(E_p) / A(z).
- Výsledek:
- Vykreslete LPC spektrum do obrázku s krátkodobým výkonovým spektrem a vyhlazeným odhadem PSD Welchovou metodou a upravte výpočet tak, aby si měřítka napočítaných spekter odpovídala.
- Opakujte výše uvedené kroky a pozorujte dosažené výsledky pro různé řády LPC analýzy, tj. p = 2, 4, 8 a pro další signály uvedené výše.
- Opakujte výše uvedené kroky LPC analýzy pro optimální řád a různé délky analyzovaného signálu, tj. wlen2 = 1000, 10000, 100, 50, 20 vzorků.
- AR modelování signálu
- Získejte chybový signál en filtrací analyzovaného signálu nc1.bin analyzujícím filtem s přenosovou funkcí A(z) a pro získaný chybový signál určete jeho výkon, vyhlazené spektrum Welchovou metodou a autokorelační funkci (ACF).
- Výsledek :
- Zobrazené PSD a ACF chybového signálu - vysvětlete.
- Srovnejte vypočtený výkon chybového signálu s parametrem E_p získaným na výstupu MATLABovské funkce lpc.
- Vybuďte syntetizující filtr s přenosovou funkcí H(z) = 1 / A(z) (AR model) získaným chybovým signálem a pozorujte časový průběh a vyhlazený odhad PSD výstupního modelovaného signálu.
- Vybuďte syntetizující filtr s přenosovou funkcí H(z) = 1 / A(z) (AR model) gaussovským bílým šumem o výkonu Ep a pozorujte časový průběh a vyhlazený odhad PSD výstupního modelovaného signálu v tomto případě.
- Výsledek:
- Zobrazené časové průběhy:
- subplot(211) - původní signál a modelovaný signál při buzení skutečným chybpvým signálem.
- subplot(211) - původní signál a modelovaný signál při uměle generovaném buzení.
- Zobrazená spektra:
- první obrázek - PSD (Welch) původního signálu a modelovaného při buzení skutečným chybpvým signálem.
- druhý obrázek - PSD (Welch) původního signálu a modelovaného při uměle generovaném buzení.
Nepovinná část VE VOLNÉM ČASE nebo K DOMÁCÍMU ZPRACOVÁNÍ
Šířka pásma NF, VF resp. pásmového šumu: výpočet / generování různých barevných šumů na bázi AR modelu
- Určete šířku pásma signálů nc1.bin, nc2.bin,nc3.bin. Všechny 3 signály jsou vzorkované kmitočtem f_s = 8 kHz .
- Generujte následující barevné šumy délky N = 10000 vzorků na základě AR modelu a ověřte výsledek výpočtem vyhlazeného odhadu PSD Welchovou metodou.
- NF barevný šum AR modelem 1. řádu s šířkou pásma B = 300 Hz pro f_s = 8 kHz.
- VF barevný šum AR modelem 1. řádu s šířkou pásma B = 100 Hz pro f_s = 8 kHz.
- Pásmový barevný šum AR modelem 2. řádu s centrálním kmitočtem F1 = 1 kHz a šířkou pásma B = 500 pro f_s = 8 kHz
- Pásmový barevný šum AR modelem 2. řádu s póly p_1|2 = 0.9 * exp ( +/- j *
0.9 ). Určete centrální frekvenci a šířku pásma pro f_s = 8 kHz.