Algoritmy zpracování biosignálů v jazyce C
Kód | Zakončení | Kredity | Rozsah | Jazyk výuky |
---|---|---|---|---|
F7PBBAZC | KZ | 2 | 1P+1C | česky |
- Garant předmětu:
- Přednášející:
- Cvičící:
- Předmět zajišťuje:
- katedra informačních a komunikačních technologií v lékařství
- Anotace:
-
Formou prakticky orientovaného výkladu a demonstračních úloh vysvětlit princip a realizaci nejpoužívanějších algoritmů pro zpracování biosignálů a jejich konkrétní funkční (a časově i paměťově efektivní) implementace v jazyce C a C++. Absolventi budou obeznámeni s konkrétními řešeními základních algoritmických problémů při zpracování biosignálů: se segmentací, analýzou v časové a frekvenční oblasti, s návrhem lineárních číslicových filtrů (FIR a IIR) a s vizualizací výsledků. Vstupní požadavky předmětu: základní vědomosti o systémech a zpracování signálů, základy ISO C. Výstupní znalosti, dovednosti, schopnosti a kompetence: Student se orientuje v oblasti algoritmů předzpracování a inteligentní segmentace biologických časových řad v C a C++, např.: algoritmus FFT, SFFT a wavelet transformace, algoritmus výpočtu autokorelační a vzájemné korelační funkce, konvoluce apod. Zvládá v jazyce C implementovat metodu plovoucího časového okna pro extrakci příznaků a základní algoritmy návrhu a realizaci číslicových filtrů FIR a IIR. Chápe a umí realizovat v jazyce C základní způsoby vizualizace biologických dat a výsledků jejich zpracování.
- Požadavky:
-
Povinná účast na cvičeních, realizace průběžně bodovaných úloh na jednotlivých cvičeních.
- Osnova přednášek:
-
1. Reprezentace 1D signálů v jazyce C, užitečný signál a šum,
2. Alokace paměti pro 1D a 2D data (signály a obrázky), načítání dat do paměti počítače,
3. Algoritmy pro bodový odhad střední hodnoty, rozptylu a dalších statistických příznaků,
4. Nestacionární signály, algoritmus výpočtu příznaků metodou plovoucího časového okna.
5. Algoritmy pro výpočet histogramu, odhad rozložení pravděpodobnosti, generování šumu, centrální limitní věta.
Algoritmy výpočtu autokorelační a vzájemné korelační funkce, konvoluce, příklad konvolutorního stroje.
6. Základy 1D a 2D grafiky v ISO C pro vizualizaci biosignálů. Modularita kódu a tvorba přenositelných knihoven funkcí v ISO C.
7. Implementace vybraných numerických metod v C (iterační řešení nelin. rovnic, numerická integrace a derivace, aproximace experimentálních dat),
8. Implementace DFT, FFT a WFFT, Wavelet transformace - časově-frekvenční oblast, výpočet spektrogramu v ISO C.
9. Význam a použití impulzní, přechodové a frekvenční charakteristiky lineárního systému.
10. Návrh a implementace číslicových filtrů FIR v jazyce C I.: metoda fouriérových řad,
11. Návrh a implementace číslicových filtrů FIR v jazyce C II.: metoda frekvenčního vzorkování,
12. IIR filtry – Úvod, design a implementace v jazyce C.
13. Algoritmy pro HRV analýzu – implementace algoritmů v ISO C pro výpočet lineárních parametrů
14. Algoritmy pro HRV analýzu – implementace algoritmů v ISO C pro výpočet nelineárních parametrů.
- Osnova cvičení:
-
1. Využití a tvorba knihoven funkcí v jazyce C a C++, modularita kódu. Návrh aplikačního rozhraní knihoven pro zpracování biosignálů. Příklady dostupných knihoven.
2. Praktická ukázka implementace algoritmů pro sběr biomedicínských dat na platformách MS Windows a GNU/Linux včetně grafického zobrazení výsledků, dílčí samostatná úloha.
3. Algoritmy pro analýzu biosignálů v časové oblasti - praktické ukázky algoritmů pro výpočet základních statistických a dalších parametrů, dílčí samostatná úloha.
4. Algoritmy pro analýzu biosignálů ve frekvenční oblasti - ukázka implementace algoritmu rychlé Fourierovy transformace (FFT) a spojité vlnkové (wavelet) transformace, dílčí samostatná úloha.
7. Algoritmy pro analýzu biosignálů v časově-frekvenční oblasti - ukázka implementace Gaborovy transformace a metody zhuštěných spektrálních kulis (CSA), dílčí samostatná úloha.
8. Algoritmy pro výpočet charakteristik lineárních systémů: korelační funkce, spektrální hustoty, impulsní odezvy, konvolutorní sumy.
9. Lineární číslicové filtry FIR a IIR, praktické ukázky algoritmů pro návrh. Reálná aplikace filtrů na biologické signály, porovnání metod – dílčí samostatná úloha zahrnující syntézu i realizaci filtru.
10. Algoritmus pro implementaci fuzzy pravidlového systému. Algoritmus pro realizaci neuronové sítě (vícevrstvého perceptronu). Trénování neuronové sítě – dílčí samostatná úloha.
11. Zadání samostatných úloh, rozdělení studentů do týmů pro řešení jednotlivých úloh,
časový plán řešení.
12. Analýza a návrh řešení zadané úlohy. Programování zadané úlohy.
13. Programování zadané úlohy.
14. Prezentace a kontrola výsledků.
- Cíle studia:
-
Praktická implementace moderních algoritmů pro zpracování biosignálů v C a C ++. Absolventi se seznámí s vybranými praktickými řešeními běžných algoritmických problémů při zpracování biosignálu: segmentace, analýza v časové a frekvenční oblasti, návrh a implementace filtrů FIR a IIR a metody vizualizace biosignálu.
- Studijní materiály:
-
Povinná literatura:
[1] Wroblewski, S.: Algoritmy, ComputerPress, 4. přepracované vydání, Brno 2015 [2] Kernighan, Ritchie: Programovací jazyk C, ComputerPress, Praha 2014
Doporučená literatura:
[1] Virius: Programování v C++: od základů k profesionálnímu použití, Grada 2018
[2] Numerical Recipes: The Art of Scientific Computing, Cambridge University Press, Third Edition, 2007
- Poznámka:
- Další informace:
- Výukové materiály pro tento předmět jsou zveřejněny prostřednictvím e-learningového systému na adrese <a href="https://skolicka.fbmi.cvut.cz">https://skolicka.fbmi.cvut.cz</a>
- Rozvrh na zimní semestr 2024/2025:
- Rozvrh není připraven
- Rozvrh na letní semestr 2024/2025:
- Rozvrh není připraven
- Předmět je součástí následujících studijních plánů:
-
- Bakalářský studijní program Biomedicínská technika (povinně volitelný předmět)
- Bakalářský studijní program Biomedicínská technika (povinně volitelný předmět)