Lineární konvoluce - Line integral convolution
![](http://upload.wikimedia.org/wikipedia/commons/thumb/9/9a/Line_integral_convolution_visualisation.png/220px-Line_integral_convolution_visualisation.png)
v vědecká vizualizace, lineární konvoluce (LIC) je technika k vizualizaci vektorového pole, jako je pohyb tekutiny, jako je například pohyb větru v a tornádo. LIC navrhl Brian Cabral a Leith Leedom.[1] Ve srovnání s jinými technikami založenými na integraci, které počítají siločáry vstupního vektorového pole, má LIC tu výhodu, že jsou zobrazeny všechny strukturní vlastnosti vektorového pole, aniž by bylo nutné přizpůsobovat počáteční a koncový bod siločar konkrétního vektorového pole . LIC je metoda z advekce textury rodina.
Zásada
![](http://upload.wikimedia.org/wikipedia/commons/thumb/3/3e/Line_integral_convolution_visualisation_%28color%29.png/220px-Line_integral_convolution_visualisation_%28color%29.png)
Intuice
Intuitivně tok a vektorové pole v nějaké doméně je vizualizován přidáním statického náhodného vzoru zdrojů tmavé a světlé barvy. Jak tok prochází kolem zdrojů, každá část kapaliny zachytí část zdrojové barvy a zprůměruje ji barvou, kterou již získala, podobným způsobem jako házení barvy do řeky. Výsledkem je náhodná pruhovaná struktura, kde body podél stejného proudu mají tendenci mít podobnou barvu.
Algoritmus
Algoritmicky začíná technika generováním náhodného pole v oblasti vektorového pole obrázek úrovně šedé v požadovaném výstupním rozlišení. Pak pro každý pixel na tomto obrázku dopředu a dozadu usměrnit pevné délka oblouku se vypočítá. Hodnota přiřazená aktuálnímu pixelu je vypočítána pomocí a konvoluce vhodné konvoluční jádro s úrovněmi šedé všech pixelů ležících na segmentu této linie. Tím se vytvoří obrázek LIC úrovně šedé.
Matematický popis
Přestože je vstupní vektorové pole a výsledný obraz diskretizovány, vyplatí se na něj dívat z nepřetržitého hlediska.[2] Nechat být vektorové pole dané v nějaké doméně . I když je vstupní vektorové pole obvykle diskretizováno, pole považujeme jak je definováno v každém bodě , tj. předpokládáme interpolaci. Streamlines, nebo obecněji siločáry, jsou tečny k vektorovému poli v každém bodě. Končí buď na hranici nebo v kritických bodech, kde . Z důvodu jednoduchosti jsou následující kritické body a hranice ignorovány. Polní čára , parametrizováno délkou oblouku , je definován jako . Nechat být siločára, která prochází bodem pro . Poté hodnota šedé obrázku na je nastaven na
kde je konvoluční jádro, je obraz šumu a je délka segmentu polní čáry, která je následována.
musí být vypočítán pro každý pixel na obrázku LIC. Pokud je provedeno naivně, je to docela drahé. Nejprve je třeba vypočítat siločáry pomocí a numerická metoda řešení obyčejných diferenciálních rovnic, jako Metoda Runge – Kutta, a pak pro každý pixel musí být vypočítána konvoluce podél segmentu silové čáry. Výpočet lze výrazně urychlit opětovným použitím částí již vypočítaných siločar se specializací na funkci pole jako konvoluční jádro a vyhnout se nadbytečným výpočtům během konvoluce.[2] Výslednou rychlou metodu LIC lze zobecnit na konvoluční jádra, která jsou libovolnými polynomy.[3]
Všimněte si, že nemusí to být 2D doména: metoda je použitelná pro vícerozměrné domény pomocí vícerozměrných šumových polí. Vizualizace výškové textury LIC je však problematická; jedním ze způsobů je použití interaktivního průzkumu s 2D řezy, které jsou ručně umístěny a otočeny. Doména nemusí být ani plochý; texturu LIC lze vypočítat také pro libovolně tvarované 2D povrchy ve 3D prostoru.[4]
Výstupní obraz bude obvykle nějakým způsobem zbarven. Typicky nějaké skalární pole v se používá, stejně jako délka vektoru, k určení odstínu, zatímco obraz LIC v šedé stupnici určuje jas barvy.
Různé možnosti konvolučních jader a náhodný šum vytvářejí různé textury: například růžový šum vytváří zakalený vzor, kde oblasti s vyšším průtokem vynikají jako rozmazání, vhodné pro vizualizaci počasí. Další zdokonalení konvoluce mohou zlepšit kvalitu obrazu.[5]
Animovaná verze
![](http://upload.wikimedia.org/wikipedia/commons/thumb/3/34/Animated_LIC.svg/220px-Animated_LIC.svg.png)
Obrázky LIC lze animovat pomocí jádra, které se časem mění. Ukázky v konstantní době ze streamline by se stále používaly, ale namísto průměrování všech pixelů v streamline se statickým jádrem, zvlněné jádro vytvořené z periodické funkce vynásobené a Funkce Hann funguje jako okno (aby se zabránilo artefaktům). Periodická funkce se poté posune podél období, aby se vytvořila animace.
Časově proměnná vektorová pole
Pro časově závislá vektorová pole byla navržena varianta (UFLIC), která udržuje koherenci animace toku.[6]
Paralelní verze
Protože výpočet obrazu LIC je drahý, ale ze své podstaty paralelní, byl také paralelizován[7] a díky dostupnosti implementací založených na GPU se stala interaktivní na počítačích PC. Také pro UFLIC byla představena interaktivní implementace založená na GPU.[8]
Použitelnost
I když obraz LIC vyjadřuje orientaci vektorů pole, neznamená to jejich směr; u stacionárních polí to lze napravit animací. Základní obrázky LIC bez barev a animací neukazují délku vektorů (ani sílu pole). Pokud mají být tyto informace předány, jsou obvykle barevně kódovány; alternativně lze použít animaci.[1][2]
Při uživatelských testech bylo shledáno, že LIC je zvláště vhodný pro identifikaci kritických bodů.[9] S dostupností vysoce výkonných implementací založených na GPU již není k dispozici dřívější nevýhoda omezené interaktivity.
Reference
- ^ A b Cabral, Brian; Leedom, Leith Casey (2. – 6. Srpna 1993). "Zobrazování vektorových polí pomocí lineární integrální konvoluce". Sborník příspěvků z 20. výroční konference Počítačová grafika a interaktivní techniky. SIGGRAPH '93. Anaheim, Kalifornie. 263–270. CiteSeerX 10.1.1.115.1636. doi:10.1145/166117.166151. ISBN 0-89791-601-8.
- ^ A b C Zastavení, Detlev; Hege, Hans-Christian (6. – 11. Srpna 1995). „Rychlé a rozlišení nezávislá integrace linky“. Sborník z 22. výroční konference o počítačové grafice a interaktivních technikách. SIGGRAPH '95. Los Angeles, Kalifornie. str.249–256. CiteSeerX 10.1.1.45.5526. doi:10.1145/218380.218448. ISBN 0-89791-701-4.
- ^ Hege, Hans-Christian; Stalling, Detlev (1998), „Fast LIC with piecewise polynomial filter kernels“, Hege, Hans-Christian; Polthier, Konrad (eds.), Matematická vizualizace, Berlín, Heidelberg: Springer-Verlag, s. 295–314, CiteSeerX 10.1.1.31.504, doi:10.1007/978-3-662-03567-2_22, ISBN 978-3-642-08373-0
- ^ Battke, Henrik; Zastavení, Detlev; Hege, Hans-Christian (1997). "Rychlá integrální konverze pro libovolné povrchy ve 3D". In Hege, Hans-Christian; Polthier, Konrad (eds.). Vizualizace a matematika: experimenty, simulace a prostředí. Berlín, New York: Springer. str.181 –195. CiteSeerX 10.1.1.71.7228. doi:10.1007/978-3-642-59195-2_12. ISBN 3-540-61269-6.
- ^ Weiskopf, Daniel (2009). "Iterativní dvojitá linie integrální konvoluce pro vizualizaci vektorového pole na základě textury". In Möller, Torsten; Hamann, Bernd; Russell, Robert D. (eds.). Matematické základy vědecké vizualizace, počítačové grafiky a masivního průzkumu dat. Matematika a vizualizace. Berlín, New York: Springer. str.191 –211. CiteSeerX 10.1.1.66.3013. doi:10.1007 / b106657_10. ISBN 978-3-540-25076-0.
- ^ Shen, Han-Wei; Kam, David L. (1998). „New Line Integral Convolution Algorithm for Visualizing Time-Various Flow Fields“ (PDF). Výpočetní graf IEEE Trans Vis. Los Alamitos: IEEE. 4 (2): 98–108. doi:10.1109/2945.694952. ISSN 1077-2626.
- ^ Zöckler, Malte; Zastavení, Detlev; Hege, Hans-Christian (1997). „Paralelní lineární konvoluce“ (PDF). Parallel Computing. Amsterdam: Severní Holandsko. 23 (7): 975–989. doi:10.1016 / S0167-8191 (97) 00039-2. ISSN 0167-8191.
- ^ Ding, Zi'ang; Liu, Zhanping; Yu, Yang; Chen, Wei (2015). "Integrace konstantní lineární nestálé linie toku pro vysoce výkonnou hustou vizualizaci". 2015 IEEE Pacific Visualization Symposium, PacificVis 2015. Hangzhou, Čína. s. 25–30.
- ^ Laidlaw, David H .; Kirby, Robert M .; Davidson, J. Scott; Miller, Timothy S .; da Silva, Marco; Warren, William H .; Tarr, Michael J. (21. – 26. Října 2001). "Kvantitativní srovnávací hodnocení metod vizualizace 2D vektorového pole". Vizualizace IEEE 2001, VIS '01. Řízení. San Diego, CA, USA. 143–150.