A: 1) HSB, HSL Vyznačují se orientací na uživatele. Definují barvy pro člověka přirozeným způsobem. Nejvíce se přibližují míchání barev malíři. Nové barvy vznikají přidáváním bílé (nádechy) a černé (odstíny) k základním spektrálním barvám. Barva je defin. trojicí složek, které však nepředstavují základní barvy. Model HSB: barevný tón (H – Hue základní spektrální (čistá) barva) sytost (S – Saturation (poměr čisté barvy a bílé (0-1)), jas (B – Brightness (poměr bílé barvy a černé (hodnoty 0-1)). Hodnoty, kt. je schop. zobrazit tento model tvoří šestiboký jehlan. Použití: Nevýhody: nesymetričnost jasu, jehlovitý tvar Model HSL: Hue(barevny ton), Saturation (sytost), Lightness (světlost). Hodnoty barvy, které jsme schopni zobrazit tvoří dvojici kuželů. Nejvíce barev vnímáme při průměrné světlosti (oblast podstav). Schopnost rozlišit zaniká při velkém ztmavení či přisvětlení. Světlost se mění od 0 (černá) do 1 (bílá). Sytost klesá od 1 (povrch kuželů) k 0 (osy). Jasné a čisté barvy leží na obvodu podstav.
2) Stínovaní Pomocí stínování lze odlišit případné křivosti a zaoblení ploch a docílit tak přirozeného vzhledu prostorových objektů přesto, že řada výpočtů týkajících se zpracování světla byla zjednodušena či vynechána. Konstantní stínování: Tato metoda je velmi rychlá, jednoduchá a používá se pro zobrazování rovinných ploch (hranaté plochy). Předpokládá, že každá plocha má jen jedinou normálu, Machovy proužky Spojité barevné stínování 1. Gouraudovo spojité stínování tzv. metoda interpolace barvy Tato metoda je vhodná pro stínování matných povrchů. Byla navržena zejména pro tělesa, jejichž povrch je aproximován množinou rovinných plošek. Pro činnost algoritmu je důležitá znalost barev všech vrcholů zpracovávané plochy. 2. Bilineární interpolace barvy Pro každý rozkladový řádek plochy stanovíme barvy v koncových bodech úseku (VA a VB) interpolací z barev vrcholů. Potom celý vodorovný úsek vybarvíme odstíny získanými lineární interpolací barev mezi krajními body VA a VB.
1
3. Phongovo spojité stínování tzv. metoda interpolace normály Stínování těles, jejichž povrch je tvořen množinou rovinných ploch. Metoda vychází ze znalosti normálových vektorů ve vrcholech stínované plochy. Z nich však nejsou pouze vypočítány barevné odstíny ve vrcholech, nýbrž jsou použity k určení normálových vektorů ve vnitřních bodech plochy bilineární interpolací. V každém vnitřním bodu plochy počítám osvětlení (barvu). Phongovo stínování je založeno na interpolaci normálových vektorů.
3) Optimální barevná paleta pro web Webová - adaptovaná paleta. Použije se paleta 216 barev, kterou používají prohlížeče webu bez ohledu na platformu pro zobrazování obrazů na monitorech s omezením na 256 barev. Dále sem patří 16 odstínu šedi a 24 základních barev. Anglicky „Safe colors“. Jedná se o barvy, které jsou obsazeny v základu každého hardware i software zobrazovací techniky, není nutno barvy míchat apod.
4) Řádkové semínkové vyplňovaní Semínkové vyplňování - Při semínkovém vyplňování postupujeme od zadaného semínka a zkoumáme, zda jeho sousední body patří k vnitřku oblasti. • 2 základní varianty: • hraniční vyplňování: testovaný bod je vnitřní, má-li jinou barvu, než je zadaná barva hranice • záplavové vyplňování (lavinové): testovaný bod je vnitřní, má-li stejnou barvu jako zadané semínko – tzv. přebarvování Semínkové hraniční vyplňování - vyplnění až k hranici dané barvy Semínkové záplavové vyplňování - přebarvení pixelů dané barvy Řádkové semínkové vyplňování - metoda, která snižuje počet přístupů do obrazové paměti, používá zásobník, ve kterém jsou uchovány souřadnice jen několika vnitřních bodů vyplňované oblasti
5) Povrchová reprezentace těles - Hranová reprezentace tzv. drátový model pseudo-povrchová reprezentace, Pouze vrcholy a hrany těles (nelze použít pro výpočet viditelnosti). - Plošková reprezentace VEF(S) model Kompletní topologická informace: seznamy vrcholů (vertex), hran (edge), stěn (face) a těles (solid) - Hraniční reprezentace tzv. okřídlená hrana Obsahuje cyklické seznamy vrcholů, hran a stěn a redundantní informace pro rychlé vyhledávání sousedících objektů.
2
B: 1) Diagram chromatičnosti • • • • •
Je základem všech věd zabývajících se barvami. Křivka spektrálních světel (barev) s vyznačenými vlnovými délkami v nm. Je matematickou transformací kolorimetrického prostoru. Vytváří užitečnou mapu světa námi vnímaných barev. Zobrazuje aditivní vztahy mezi barvami.
2) Algoritmy pro rasterizaci Rasterizace Určování souřadnic a barvy pixelů, které reprezentují tvar a polohu grafického prvku. Při rasterizaci vzniká chyba (body s neceločíselnými souřadnicemi se musí zaokrouhlit!). DDA - Digital Differential Analyzer Jednoduchý přírůstkový algoritmus založený na vzorkování s konstantním krokem podle osy x nebo y. Interpolovanou křivku rozdělujeme na jednotlivé spojité úseky popsané jednoduchými funkčními vztahy. Při výpočtu souřadnic pixelů se užívá hodnot z předchozího kroku. Bresenhamův algoritmus Využívá pouze celočíselné operace. Spočívá v hledání nejblíže ležících bodů ke skutečné úsečce pomocí celočíselné aritmetiky. Rozhodování pomocí chybového členu, kt. je upravován v každém kroku. Pro každý krok se stanoví chyba, volí se krok s menší chybou. Běžné geometrické podmínky pro křivky: 2 body + 2 tečné vektory (Hermite/Fergusson), 2 koncové body + 2 řídicí body (Beziérovy křivky), 4 řídicí body (Spline křivky)
3
3) Řádkové vyplňovaní Řádkové paritní vyplňování • tzv. vyplňování rozkladovými řádky • Každým řádkem rastru je vedena pomyslná vodorovná čára a jsou hledány její průsečíky s hranicemi oblasti. • Nalezené průsečíky na jedné čáře se seřadí dle souřadnic x. • Dvojice těchto průsečíků definují úsečky ležící uvnitř oblasti. Řádkové semínkové vyplňování • Snižuje počet přístupů do obrazové paměti. • Používá zásobník, ve kterém jsou uchovány souřadnice jen několika vnitřních bodů vyplňované oblasti.
4) Povrchová reprezentace těles • přímé informace o povrchu těles – hrany, stěny • poměrně snadné zobrazování - Hranová reprezentace tzv. drátový model, pseudo-povrchová reprezentace, pouze vrcholy a hrany těles (nelze použít pro výpočet viditelnosti) - Plošková reprezentace tzv. VEF(S) model, kompletní topologická informace: seznamy vrcholů (vertex), hran (edge), stěn (face) a těles (solid) - Hraniční reprezentace tzv. okřídlená hrana, obsahuje cyklické seznamy vrcholů, hran a stěn a redundantní informace pro rychlé vyhledávání sousedících objektů
5) Phongův osvětlovací model • empirický osvětlovací model pro výpočet intenzity odraženého světla • světelný paprsek dopadá do bodu P a po odrazu je část rozptýleného světla zachycena pozorovatelem • můžeme zjistit intenzitu dopadajícího světla a intenzitu odraženého světla Odražená intenzita světla je složením: • zrcadlový odraz (Is) - závisí na směru pohledu pozorovatele (na úhlu mezi R a V) - je příčinou odlesků na povrchu těles • difúzní odraz (Id) - nezávisí na směru pohledu pozorovatele - intenzita závisí pouze na úhlu dopadu (mezi L a N) • ambientní odraz (Ia) - všesměrové konstantní osvětlení (tzv. světelný šum) - vzniká mnohonásobnými odrazy a rozptyly od ostatních těles
4
C: 1) Kompresní metody a formáty Komprese = efektivní zastoupení původních dat, které vede ke zmenšení velikosti souboru. Za použití řady mezinárodně definovaných algoritmů TYPY KOMPRESE: bezztrátová (lossless) – neztrácí žádné informace – dekomprimací schopni rekonstruovat do původní podoby RLE - Run Length Enconding (PCX, TGA) Jednoduchý a rychlý bezztrátový kompresní algoritmus. Princip: Dlouhé řetězce opakujících se symbolů se zakódují jen jedním symbolem, včetně udání délky řetězce. Huffmanovo kódování (TIFF) (Huffmanuv strom) Bezztrátová neadaptivní slovníková komprese použitelná na jakákoliv data. Princip: Data se podrobí statistické analýze, hledají se určité charakteristické posloupnosti a jejich četnosti. Z nalezených posloupností se sestaví substituční tabulka (slovník), podle ní se pak tyto posloupnosti zaměňují za jiné. Slovníku se nemusí vytvářet ani přenášet s daty, protože je pevné daný. Lempel-Ziw-Welch (GIF, PNG, ZIP) bezztrátová adaptivní slovníková komprese vhodná pro jakákoliv data. Princip: Funguje rovněž na substitučním principu. Slovník se vytváří dynamicky během průchodu dat kompresním programem. Slovník není třeba přenášet s komprimovanými daty. ztrátová (lossy) – vypuštění části informace – dekomprimací nezískáme zpět původní obraz DCT – Diskrétní kosinová transformace (JPG), FIF – Fraktální komprese DCT - Discrete Cosine Transformation Transformační ztrátová kompresní metoda. Pro kódování fotografií (snížení kvality = potlačování rozdílů v blízkých barvách). Fraktální komprese Algoritmus se snaží v obraze vyhledávat různé opakující se vzory (ty se zaznamenávají spolu s transformacemi). Snahou je poskládat obraz z co nejmenšího množství vzorů
5
2) Interpolační a aproximační křivky, rozdíl
1. aproximační křivka
2. interpolační křivka
Interpolační křivka Nejvhodnější cesta (pixely) procházející všemi zadanými body. Aproximační křivka Aproximací bodů rozumíme vytvoření takové křivky, která je těmito body vhodně řízena. Není kladen požadavek na procházení opěrnými body (ani prvním a posledním bodem). Způsob řízení odpovídá vytváření této křivky. Křivka řízena body(řídící polygon) anebo body a vektory.
3)Ořezávání úsečky Cohen-Sutherland, popsat Metoda ořezávání úsečky obdélníkovým oknem. Algoritmus označuje krajní body úseček pomocí hraničních kódů. Každý z bodů úsečky získá své ohodnocení v závislosti jeho polohy vůči ořezávacímu oknu. Ohodnocení bodu je možné reprezentovat různě (bitové pole, objektem obsahující vlastnosti jako boolean hodnoty,...), podstatné je to, aby bylo pro každý bod určeno, zda se nachází vlevo, vpravo, dole či nahoře od ořezávacího okna. Nechť je dále ohodnocení definováno jako čtveřice 0/1,0/1,0/1,0/1 (LEVO, PRAVO, DOLE, NAHOŘE -- kde 0 není splněno a 1 je splněno), tj. například 0101 označuje polohu bodu vpravo nahoře od ořezávacího okna. • kód(P) ∪ kód(Q) = ∅ celá úsečka leží uvnitř • kód(P) ∩ kód(Q) ≠ ∅ celá úsečka leží mimo okno • kód(P) ∩ kód(Q) = ∅ úsečku je třeba oříznout
Ohodnocení bodu hraničními kódy
6
4)Objemové reprezentace těles Výčtové reprezentace přímé vyčíslení obsazeného prostoru použití zejména jako pomocné dat. struktury pro rychlé vyhledávání například: buněčný model, oktalový strom CSG reprezentace velice silná a přesná metoda (elementární tělesa, geometrické a množinové operace) obtížnější zobrazování buněčný model Reprezentuje prostor krychlí, kterou lze dále dělit na menší útvary. Nejmenší element buněčného modelu se ozn. jako voxel. Buněčný model je náročný na paměť Lze jednoduše vyhodnocovat a modifikovat. oktalový strom Je sjednocením prostorových buněk různých velikostí. Základním objemových prvkem je opět krychle. Při dekompozici krychle prostoru dostává každá prostorová buňka určitý příznak: E - buňka je prázdná a není vyplněna tělesem, F - buňka je plná a je vyplněna tělesem, P - buňka je vyplněna tělesem pouze částečně. Pokud je krychle jen částečně vyplněna tělesem, pak je rozdělena na 8 dalších krychlí s poloviční hranou, které jsou pak dále zpracovávány stejným způsobem. Model lze popsat také grafem se stromovou strukturou. Nevýhody: pouze aproximují těleso, nejsou vhodné jako primární modely těles CSG (Constructive Solid Geometry) modely • Založeny na teorii množin a jsou nejvhodnější pro interaktivní modelování těles. CSG strom zachycuje postup konstrukce tělesa.
5) Z-buffer a jeho použití Základem metody je použití paměti hloubky (z-buffer), která tvoří dvojrozměrné pole, jehož rozměry jsou totožné s rozměry zobrazovacího okna. Každá položka paměti obsahuje souřadnici z daného bodu, který leží nejblíže pozorovateli a jehož průmět leží v odpovídajícím pixelu v rastru. ALGORITMUS Z- bufferu 1. inicializace - Vyplň obrazovou paměť barvou pozadí. - Vyplň paměť hloubky hodnotou (- ). 2. zápis všech objektů do Z-bufferu - Každou plochu rozlož na pixely a pro každý její pixel [xi,yi] stan. hloubku zi - Má-li zi větší hodnotu než položka [xi,yi] v z-bufferu pak #obarvi pixel [xi,yi] v obrazové paměti barvou této plochy #u položky [xi,yi] v z-bufferu aktualizuj hodnotu zi Výhody: jednoduchost výpočtu, správné vykreslení nestandardních situací není třeba třídit, každá plocha zpracována pouze jednou 7
D: 1) Rozdíl mezi sRGB a Adobe RGB sRGB Odpovídá reálným možnostem zobrazení většiny monitorů Vylepšuje RGB (v počtech odstínů) Řeší problém zachování a autentičnosti barev AdobeRGB Větší rozsah barev než sRGB Většina běžných monitorů nedokáže zobrazit.
2) Rozptylovací technika Slouží k redukci počtu barev (třeba pro zobrazení odstínů šedi na dvouúrovňovém zařízení). Barevné rozptylování o je speciálním případem rozptylování obrazu ve stupních šedi Prahovaní o zobrazení bodů s intenzitou větší než hodnota prahu Náhodné rozptýleni o zachování původní velikosti obrazu, o větším plochám dodává vzhled drsného povrchu, o funkce RANDOM Maticové o generování různých odstínů šedi podle pravidelných, předem daných vzorků složených z bílých a černých bodů. Distribuce chyby (Floyd-Steinberg) o rozdíl skutečné intenzity a intenzity zobrazovaného bodu (ztráta) je distribuován na okolní pixely chyba se započítá sousedům a je „tlačena“ vpřed efekt vlnovek
3) Křivky - co je segment, kubika, parametricky spojitá Segmenty: Nechť Q1(t) a Q2(t) jsou dvě části (segmenty) jediné křivky Q(t) spojené v bodě Q1(1) = Q2(0). Spojovací bod nazveme uzel. Důležitou vlastností segmentů je způsob jejich napojení, tzv. spojitost v uzlu.
Kubika je křivka zadaná polynomem stupně tři. Parametrická spojitost: Říkáme, že křivka Q(t) je třídy Cn, má-li ve všech bodech spojité derivace až do řádu n. 8
Spojení třídy C0: Dva segmenty jsou spojitě navázány, pokud je koncový bod prvního segmentu počátečním bodem druhého segmentu. Spojení třídy C1: Dva segmenty mají spojení C1, pokud je tečný vektor v koncovém bodě segmentu Q1 roven tečnému vektoru segmentu Q2 v jeho počátečním bodě. Spojení třídy C2: Analogicky je požadována rovnost první a druhé derivace.
4) Ray tracing, ray casting Ray casting (vržení paprsku) primární paprsek vyšleme z místa pozorovatele do scény a vyhodnotíme osvětlení pouze v bodě na povrchu nejbližšího tělesa zasaženého paprskem Ray tracing (sledování paprsku vyš. řádu) sledování paprsku nekončí po nalezení nejbližšího tělesa, ale pokračuje sledováním dalších paprsků, odvozených podle odrazivosti a průhlednosti nalezeného tělesa. metoda sledování paprsku provádí pro každý pixel obrazovky dva kroky: 1. nalezení stromu průsečíků paprsků s tělesy 2. vyhodnocení světelného modelu v uzlech stromu a složení výsledných barevných odstínů od listů ke kořeni stromu Nedostatky: Zpětným sledováním paprsku nelze nalézt všechny paprsky přispívající k osvětlení určitého bodu. Pomocí stínových paprsků nalezneme vržené stíny. Pomocí sekundárních paprsků vykreslíme odražené obrazy na povrchu těles.
5) Rozdíl mezi ploškovým a CSG modelem CSG modely Jsou nejvhodnější pro interaktivní modelování těles, protože CSG strom zachycuje postup konstrukce tělesa. Jsou založeny na teorii množin, která zaručuje platnost modelů vytvořených CSG operacemi. Jsou tvořeny: elementárními geometric. tělesy (koule, válec, kužel,...), množinové operace (sjednocení, průnik, rozdíl), geometrické transformace (různé maticové transformace) Ploškové U ploškových reprezentací dochází k rozšíření modelů vrcholů a hran o plochy (stěny), které tvoří povrch tělesa. Povrch tělesa je tvořen množinou nepřekrývajících se stěn, které jsou vymezené hranami a vrcholy. CSG modely lze vyhodnocovat až při zobrazování, např. během sledování paprsku. S ohledem na rychlost zobrazení bývá CSG model často převeden na hraniční model, který lze přímo použít při zobrazování. Z hraničního modelu je možné dále vytvořit jednodušší ploškový model, který obsahuje minimální topologickou informaci a mohou v něm např. chybět zadní stěny těles. Pro zobrazovací a vybarvovací algoritmy je výhodné omezit vstupní data na trojúhelníkové plošky, které jsou snadno řešitelné pomocí několika málo interpolátorů. Z tohoto pohledu tvoří triangulační síť nejjednodušší data pro tvorbu 3D obrazu. 9
E: 1) HSL a LAB - rozdíl, popsat LAB Je velice zajímavý barevný prostor, který nejvíce napodobuje vnímání lidského oka. Jeho L (jasová) složka se podle pramenů téměř shoduje s lidským vnímáním jasu. Právě tato jasová složka může být použita jako černobílá fotografie. Téměř ve všech případech však budeme muset sáhnout ještě k nějakým úpravám (přes úrovně či lépe křivky) HSL L vyjadřuje: světlost (L – Lightness) Nejvíce barev vnímáme při průměrné světlosti (oblast podstav). Schopnost rozlišit barvy zaniká při velkém ztmavení či přesvětlení. Zvýšená světlost, neměnná sytost (přidání bílé, ubrání stejného množství černé). Zvýšená sytost(odebrání stejného množství bílých a černých pigmentů). HSL stojí na odstínu, saturaci, světlosti. V HSL, komponenta saturace jde vždy od plně plné barvy k ekvivalentu šedé. Světlost v HSL vždy měří celé rozmezí od černé přes zvolený odstín až k bílé. HSL popisuje barvy jako body ve válci, jehož centrální osa sahá od černé až dolů k bílé a nahoru k neutrální barvě mezi nimi, kde úhel kolem osy odpovídá „odstínu“, vzdálenost od osy odpovídá „saturaci“, a vzdálenost podél osy odpovídá „světlosti“, „hodnotě“ nebo „jasu“.
2) Typy fraktálu Dynamické systémy s fraktální strukturou: - Lorenzův atraktor - Hénonův atraktor - Orbity 2D a 3D dynamických systémů - L-systémy - Cantorova množina - Helge von Kochova vločka - Sierpinského trojúhelník - Systémy iterovaných funkcí IFS
Dynamické systémy v komplexní rovině: - Mandelbrotova množina - Newtonovy polynomy - Stochastické (nepravidelné) fraktály - Čtyřrozměrné fraktály - Kvaterniony
3) Typy rastrového hraničního vyplňováni 1. Hraniční vyplňování Testovaný bod je vnitřní. Má-li testovanou vlastnost odlišnou od vlastnosti hranice, např. jinou barvou. 2. Záplavové vyplňování Textovaný bod je vnitřní, má-li shodnou vlastnost jako zadané semínko. Této metodě se také říká lavinové vyplňování či přebarvování.
10
4) Barevné palety a barevná hloubka Barevna paleta Je pole hodnot barev, které slouží k redukci počtu barev v obrázku. Grafický soubor s paletou obsahuje popis palety a vlastní data. Barvy tedy nejsou určeny přímo, ale indexem v paletě. Typy palet: Převod na odstíny šedi Přednastavené univerzální (RGB:3-3-2 bitu, 5-6-5- bitu: hight color) o rovnoměrný výběr barev z krychle Nevýhody: odstíny, které nevyskytují v obrazu, nerespektovaní obrazové struktury Adaptivní o optimalizované pro jeden konkrétní obraz, o odpovídá rozložení barevných odstínů v obraze, o např. formát GIF- výpočet palety bývá časově i paměťově náročný
Barevna hloubka počet bitů nutných pro reprezentaci jeho barvy (bohatost barev. škály) 2 byty – hight color, 3 byty – True color
5) Vykreslovaní scény, typy Malířův algoritmus Metoda je založena na myšlence vykreslování všech ploch postupně odzadu dopředu podobně, jako kdyby malíř nanášel na obraz nejprve barvy pozadí a přes ně kreslil objekty v popředí. Plochy bližší k pozorovateli jsou vykreslovány později, takže překryjí zadní plochy. Řešení viditelnosti je tedy převedeno na úlohu seřazení ploch podle vzdálenosti od pozorovatele. Předpokládáme, že zpracováváme rovinné plochy, které se navzájem neprotínají (neprosekávají). • fáze: třídění podle hloubky odstranění nejasností v pořadí řádkový rozklad a zobrazení
11