460-4120/01 – Vizualizace dat (VD)
Garantující katedra | Katedra informatiky | Kredity | 4 |
Garant předmětu | Ing. Tomáš Fabián, Ph.D. | Garant verze předmětu | Ing. Tomáš Fabián, Ph.D. |
Úroveň studia | pregraduální nebo graduální | Povinnost | povinně volitelný |
Ročník | 2 | Semestr | zimní |
| | Jazyk výuky | čeština |
Rok zavedení | 2015/2016 | Rok zrušení | |
Určeno pro fakulty | FEI | Určeno pro typy studia | navazující magisterské |
Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi
Cílem předmětu je rozšířit znalosti posluchačů o oblast vizualizace široké škály multioborových dat. Studenti budou mít po absolvování kurzu základní teoretické a praktické znalosti z oblasti vizualizace netriviálních vědeckotechnických a abstraktních dat. Ze zpracovávaných dat budou schopni vytvářet grafické výstupy pro účely jejich další analýzy, tvorby odborných publikací i prezentací pro širší veřejnost.
Po absolvování kurzu budou studenti schopni:
- vyjmenovat a charakterizovat způsoby a prostředky pro vizualizaci vědeckotechnických a abstraktních dat,
- nalézt optimální formu vizuální prezentace pro konkrétní typ dat,
- definovat potřebné softwarové prostředky pro implementaci navržené vizualizace,
- realizovat interaktivní vizualizace např. v prostředí webového prohlížeče,
- graficky analyzovat vícerozměrná data a provádět jejich projekce do prostorů s nižší dimenzí,
- navrhovat barevnou paletu dle charakteru dat a s ohledem na jejich korektní intepretaci.
Vyučovací metody
Přednášky
Cvičení (v učebně)
Anotace
Cílem předmětu je seznámit posluchače s problematikou vizualizace a interpretace nejrůznějších typů vědeckotechnických a abstraktních dat. Popisovány jsou základní principy a postupy zobrazování mezioborových dat a získané znalosti jsou využity při realizaci praktických úloh z oblasti vizualizace. Důraz je kladen na výstižnost a vhodnost zvolených vizualizačních prostředků a na praktické využití získaných znalostí při realizaci vlastních grafických výstupů podávajících co možná nejucelenější a nezkreslený obraz o zpracovávaných datech. Teoretické poznatky získané během rozboru dílčích úloh slouží jako základ pro praktickou implementaci konkrétních příkladů na cvičeních. Cvičení tedy úzce korespondují s přednáškami a předpokládá se praktická realizace zmíněných témat zejména v prostředích jazyků C++, Python a JavaScript.
Povinná literatura:
Doporučená literatura:
Forma způsobu ověření studijních výsledků a další požadavky na studenta
V průběhu semestru studenti vypracovávají zadané úlohy, na kterých si ověřují své znalosti. Podmínkou pro udělení zápočtu je zvládnutí těchto úloh s bodovým ziskem minimálně 20 bodů ze 45 možných. Hodnotí se zejména míra pochopení daného problému, správnost implementace zvoleného algoritmu, jeho funkčnost a vizuální úroveň prezentovaných výsledků.
V závěru předmětu studenti absolvují písemnou zkoušku.
E-learning
Další požadavky na studenta
U studentů se předpokládá znalost matematiky a programování na úrovni probrané během bakalářského studia.
Prerekvizity
Předmět nemá žádné prerekvizity.
Korekvizity
Předmět nemá žádné korekvizity.
Osnova předmětu
Přednášky:
1. Historie vizualizace vs. moderní nástroje a knihovny, základní způsoby reprezentace dat (prezentační, exploratorní), charakteristika datasetů (spojitá, vzorkovaná a diskrétní data, topologická a geometrická dimenze dat, dimenze atributů).
2. Metody rekonstrukce vzorkovaných dat, typy buněk, pravidelná mřížka, rozptýlená data (mračna bodů), možnosti jejich interpolace, aproximace a extrapolace.
3. Mapování dat na barevnou škálu, návrh efektivních barevných i šedotónových přechodů, jejich interpretace, přehled osvědčených a bezpečných barevných škál.
4. Typy grafů a jejich význam pro vizualizaci množství, hustoty, distribuce, vztahů, korelace, struktur, času a dalších statistických veličin; estetika a rozložení grafu, tzv. lie factor, data-ink poměr, rámec trifecta, koncept chartjunk a další kognitivní aspekty grafu.
5. Vizualizace skalárních veličin v rovině i prostoru, zachycení vlastností atributů a jejich vztahů; sloupcové, čárové, výsečové, plošné, bodové, polární a radarové grafy, mikrografy, teplotní mapy, výškové mapy a izočáry.
6. Vizualizace statických a dynamických vektorových polí, výpočet integrálních křivek, jejich konvoluce, proudnice (např. streamlines, streaklines, pathlines a timelines).
7. Tenzorová data, jejich význam, možnosti interpretace a vizualizace (sledování vláken, hyperstreamlines).
8. Vizualizace volumetrických dat, metody přímého a nepřímého zobrazení, převodní funkce, klasifikace.
9. Vizualizace strukturovaných dat a grafů, algoritmizace rozložení grafů, zobrazení toků a vazeb mezi mnoha uzly (chord diagram), interaktivita (např. detaily na vyžádání).
10. Metody vizualizace vícedimenzionálních dat, redukce dimenze (selekce, extrakce, analýza hlavních komponent, projekce, multidimenzionální škálování), grafy rovnoběžných souřadnic, shluková analýza hierarchická (dendrogramy) a nehierarchické přístupy (k-means apod.)
11. Ilustrativní vizualizace, webové prezentace, možnosti přehledného formátování tabulkových dat, aspekty výběru konkrétního vizualizačního nástroje.
12. Nástroje z oblasti zpracování obrazu a jejich využití ve vizualizaci (bodové operace, histogramy, segmentace, klasifikace, matematická morfologie).
13. Vizualizace pomocí nástrojů virtuální a rozšířené reality, grafické enginy a API.
14. Technické aspekty finální prezentace a sazby výstupů vizualizace, uspořádání a rozložení jednotlivých částí, výměnné formáty.
Cvičení na počítačové učebně:
1. Rozbor struktury a vlastností ukázkových datasetů, určení dimenzí a jejich zpracování pomocí skriptů (např. vizualizace teplotních časových řad v gnuplotu a knihovně matplotlib pomocí jazyka Python).
2. Příklady proložení dat zatížených chybou měření zvolenou aproximační funkcí, interpolace skalárních hodnot nad různými typy buněk mřížky.
3. Převody skalárních hodnot do barevné reprezentace (binární, divergentní, kvalitativní, kvantitativní a sekvenční schémata), návrh vlastních barevných schémat (např. ColorBrewer), příklad na interpolaci dat bez využití mřížky pomocí radiálních bázových funkcí.
4. Práce s různými typy grafů z přednášky, úprava jejich rozložení a zhodnocení jejich přínosu z pohledu interpretace obsahu zobrazených dat.
5. Praktické příklady na vizualizaci vlastností jednoho i více atributů.
6. Vizualizace vektorových polí aplikovaná na výstupy z řešení proudění tekutin, výpočet integrálních křivek a vykreslování proudnic.
7. Ukázky tenzorových dat a možností jejich zobrazení (např. křivost plochy, proces difuze částic jedné látky do druhé).
8. Vizualizace lékařských dat (CT a MRI snímky) přímými metodami (DVR) a vizualizace simulace dynamiky kapaliny pomocí nepřímých metod (Marching Cubes).
9. Praktická realizace algoritmu pro rozložení grafů a jeho modifikace dle potřeb vizualizace, použití nástroje d3.js pro dosažení interaktivity výsledných stromových struktur a obecných grafů.
10. Zpracování vícerozměrných datasetů, redukce dimenze, projekce, vizualizace (např. FastMap, PCA, PCP).
11. Nástroje pro tvorbu interaktivních grafů v prostředí webu (d3.js, Vega-Lite, Tableau, Plotly, Google Charts, RAWGraphs a další).
12. Úprava obrazových dat (např. medicínské snímky) prostředky digitálního zpracování a analýzy obrazu pro účely jejich předzpracování i finální úpravy (např. redukce šumu, zvýraznění klíčových partií, klasifikace).
13. Použití standardních grafických API (např. OpenGL) pro vykreslování 3D vizualizací (např. mapa terénu) v prostředí VR/AR.
14. Předvedení dosažených výsledků při realizaci zadaných úloh.
Na cvičeních se řeší konkrétní úlohy z probrané oblasti. Implementačním jazykem je C++, Python a JavaScript.
Podmínky absolvování předmětu
Výskyt ve studijních plánech
Výskyt ve speciálních blocích
Hodnocení Výuky