Počítače a grafika. Ing. Radek Poliščuk, Ph.D. Přednáška č.2 z předmětu

Podobné dokumenty
Rastrová grafika. Grafický objekt je zaznamenán jednotlivými souřadnicemi bodů v mřížce. pixel ( picture element ) s definovanou barvou

Téma: Vektorová grafika. Určete pravdivost následujícího tvrzení: "Grafická data jsou u 2D vektorové grafiky uložena ve voxelech."

DATOVÉ FORMÁTY GRAFIKY, JEJICH SPECIFIKA A MOŽNOSTI VYUŽITÍ

Text úlohy. Která barva nepatří do základních barev prostoru RGB? Vyberte jednu z nabízených možností: a. Černá b. Červená c. Modrá d.

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1

Digitální grafika. Digitální obraz je reprezentace dvojrozměrného obrazu, který používá binární soustavu (jedničky a nuly).

VY_32_INOVACE_INF.10. Grafika v IT

Reprodukce obrazových předloh

Číslo DUM: VY_32_INOVACE_04_01 Autor: Mgr. Ivana Matyášková Datum vytvoření: březen 2013 Ročník: prima Vzdělávací obor: informační technologie

Identifikátor materiálu: ICT-1-20

Datové formáty grafiky, jejich specifika a možnosti využití. L u b o š T o m e š e k U M T M a n a ž e r s k á i n f o r m a t i k a 2015/ 16

Rastrový obraz, grafické formáty

Kde se používá počítačová grafika

Multimediální systémy. 03 Počítačová 2d grafika

VYUŽITÍ POČÍTAČOVÉ GRAFIKY

IVT. Grafické formáty. 8. ročník

PRINCIPY POČÍTAČOVÉ GRAFIKY

Grafická data jsou u 2D vektorové grafiky uložena ve voxelech NEPRAVDA Grafická data jsou u rastrové grafiky uložena v pixelech PRAVDA Grafická data

PRINCIPY POČÍTAČOVÉ GRAFIKY metodický list č. 1

Počítačová grafika. (Computer Graphics) Úvod do tématu. Martina Mudrová únor 2007

Počítačová grafika. OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely

FORMÁTY UKLÁDÁNÍ OBRAZOVÝCH INFORMACÍ VÝMĚNA DAT MEZI CAD SYSTÉMY

Elektromagnetické záření. Zdroj:

Fergusnova kubika, která je definována pomocí bodu P1, vektoru P1P2, bodu P3 a vektoru P3P4

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Zobrazování barev Josef Pelikán CGG MFF UK Praha.

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Obsah. Úvod Barevná kompozice Světlo Chromatická teplota světla Vyvážení bílé barvy... 20

1. Formáty grafických dat

Ing. Jan Buriánek. Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jan Buriánek, 2010

Kreslíme do webu. Canvas

Metodické listy pro kombinované studium předmětu. B_PPG Principy počítačové grafiky

Webové stránky. 6. Grafické formáty pro web. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender

13 Barvy a úpravy rastrového

Text úlohy. Kolik je automaticky generovaných barev ve standardní paletě 3-3-2?

GRAFICKÉ FORMÁTY V BITMAPOVÉ GRAFICE

Základy informatiky. 10 Počítačová grafika

On-line škola mladých autorů , pořadatel: ČVUT FEL. Jak na obrázky? Martin Žáček

Počítače a grafika. Ing. Radek Poliščuk, Ph.D. Přednáška č.7. z předmětu

Práce s obrazovým materiálem CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků

Úloha 1. Text úlohy. Vyberte jednu z nabízených možností: NEPRAVDA. PRAVDA Úloha 2. Text úlohy

Fakulta elektrotechniky a informatiky Počítačová grafika. Zkouška ústní

ZPRACOVÁNÍ OBRAZU přednáška 4

Adobe Photoshop 18. Ukládání dokumentu formáty

Zdroj:

INFORMATIKA. Grafické studio ve škole

DUM 02 téma: Formáty souborů rastrové grafiky

Zobrazovací jednotky a monitory

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

Co je to DTP. Albrechtova střední škola, Český Těšín, p.o. Označení materiálu (přílohy):

Algoritmizace prostorových úloh

Téma: Práce se základními objekty, výplní a obrysem

Informatika Počítačová grafika Mgr. Jan Jílek (v.11/12) Počítačová grafika

Úvod do počítačové grafiky

POČÍTAČOVÁ GRAFIKA. Počítačová grafika 1

Reprezentace bodu, zobrazení

Jak namalovat obraz v programu Malování

InD PS PDF. Vytvoření korektního InD dokumentu

Vyplňování souvislé oblasti

CAD II přednáška č. 5. Grafické formáty PCX GIF TIFF BMP

Kde se používá počítačová grafika (PG)?

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Výukový materiál vytvořen v rámci projektu EU peníze školám "Inovace výuky" registrační číslo CZ.1.07/1.5.00/

Digitální učební materiál

Úvod do počítačové grafiky

Rastrová grafika. body uspořádané do pravidelné matice

Jak namalovat obraz v programu Malování

Rastrové grafické formáty. Václav Krajíček KSVI MFF UK, 2007

DTP1. (příprava textu pomocí počítače) Kapitola 3 / Obrázky a rastrování

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Základy práce v programovém balíku Corel

Výukový materiál zpracován v rámci projektu EU peníze školám

DTP1. (příprava textu pomocí počítače) Petr Lobaz,

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Pavel Roubal Výukový modul projektu: Nové formy výuky ve školách kraje Vysočina

Základy počítačové grafiky

Vstupní požadavky, doporučení a metodické pokyny

Využití programu GeoGebra v Matematické analýze

Konverze grafických rastrových formátů

Text úlohy. Vyberte jednu z nabízených možností:

Zásady prezentace CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků

CENÍK INZERCE V ČASOPISE MUZIKUS

IVT. Rastrová grafika. 8. ročník

Informační a komunikační technologie Inovace výuky prostřednictvím šablon pro SŠ

Vývoj počítačové grafiky

Úvod do Adobe Illustrator CS 5

Téma: Barevné modely, formáty souborů

Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/

Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou

Grafika a grafický design. Internetové publikování

SEZNAM ANOTACÍ. CZ.1.07/1.5.00/ III/2 Inovace a zkvalitnění výuky prostřednictvím ICT VY_32_INOVACE_MA4 Analytická geometrie

Algoritmy výpočetní geometrie

Využití ICT techniky především v uměleckém vzdělávání. Akademie - VOŠ, Gymn. a SOŠUP Světlá nad Sázavou

Úvod do počítačové grafiky

Digitální učební materiály ve škole, registrační číslo projektu CZ.1.07/1.5.00/

VY_32_INOVACE_INF4_12. Počítačová grafika. Úvod

Inovace výuky prostřednictvím šablon pro SŠ

Seznámení s programem 9

POČÍTAČOVÁ GRAFIKA. Lenka Bednaříková

Transkript:

Ústav automatizace a informatiky Fakulta strojního inženýrství Vysoké učení technické v Brně Přednáška č.2 z předmětu Počítače a grafika Ing. Radek Poliščuk, Ph.D. 1/15

Obsah přednášky Přednáška 2 2D grafika: základní rastrové operace, základní 2D objekty, bitmapové a vektorové fonty, základní souborové formáty pro bitmapovou a vektorovou grafiku 2/15

Základní rastrové operace Dvourozměrné grafické operace se provádějí nad určitou plochou, reprezentující matici zobrazitelných obrazových bodů (plátno, canvas...). Tyto body jsou ve framebufferu grafické karty (a nebo v kontextu virtuálního okna GUI) reprezentovány maticí Bytů: Planární uspořádání (EGA, VGA, 16-barevné režimy SVGA): Každý byte obsahoval data pro několik obrazových bodů; Historicky se toto uspořádání používalo jako bitmapa jednotlivých plánů pro monochromatické, 4-barevné, a nakonec i 16-barevné RGBI grafické režimy. Dnes jde spíš o přežitek (nízká rychlost, zbytečně komplikované určování konkrétního obrazového bodu). Kompozitní uspořádání (MCGA, SVGA v režimu 256+ barev): Každý obrazový bod je definován 1-4 (sousedícími) byty. Adresy jednotlivých bodů jsou jednoznačné, přístup k matici je rychlejší. Nad bitmapami je kromě zápisu a čtení možné provádět všechny běžné aritmetické (+...) i logické operace (AND, OR, XOR,...). 3/15

Základní 2D objekty Body Obdélníky Bitmapy Výplně Úsečky Kružnice, elipsy a oblouky Obecné křivky Bitmapové a vektorové fonty 4/15

2D entity - body Vykreslení obrazového bodu = zápis příslušných bitů/bajtů na příslušnou adresu obrazové matice (setpixel) a(x,y) = ofset + (w' y Bpp) + (x Bpp), kde Bpp bývá 1 (paleta 256barev), 2 (Hi-Color RGB), 3 a 4 (True-color RGB) Byty/pixel a w' označuje šířku obrazové řádky ( scanline ) v pixelech. Z výkonnostních důvodů se šířka scanline zaokrouhluje na celá slova (32bit). Inverzní operací k vykreslení bodu je načtení jeho hodnoty (getpixel) Obě tyto operace jsou dnes standardní součástí GDI knihoven OS, zápis se obvykle provádí ve virtuálním RGB režimu, bez ohledu na skutečně nastavenou bitovou hloubku. 5/15

2D entity - obdélníky Obdélníky (a čtverce) se v normální poloze akcelerovaně vykreslují výplní jednotlivých scanline framebufferu vzorkem odpovídajícím barvě. Základní operací je přitom BitBlt ( Bit Block Transfer, Xerox ALTO) transformace, dnes podporovaná prakticky všemi grafickými kartami. BitBlt je základem grafických operací založených na vyplňování ploch rastrem, v s daném zápisovém režimu (put, or, and, xor,..). Rozšířením funkcionality vykreslování je režim optimalizovaného kopírování a přesouvání sprajtů (obdélníkových oblastí), pomocí kterého jsou dnes prováděny i operace typu rolování v grafickém režimu (obdoba scrollingu v textovém módu). V Delphi: Canvas.Rectangle Canvas.CopyMode Canvas.CopyRect Canvas.Draw Canvas.StretchDraw B A 6/15

2D entity - bitmapy Bitmapa (v černobílé planární grafice šlo skutečně o mapu bitů v FB) = obrazová data sprajtu, se kterými můžeme manipulovat. S hlavičkou (dnes už jen vyjímečně Raw Data bez hlavičky): RIFF Identifikátor (BM, GIF87a, JFIF,...); Velikost hlavičky ( = offset na data) a vlastních dat; Rozměry obrazové plochy (šířka, výška, příp. délka scanline); Barevný režim (indexovaná barva, odstíny šedi, RGB, CMYK, Lab...); V případě indexované barvy délka a typ palety, v ostatních přímých režimech bitová hloubka (1,2,4,8,16 bitů/kanál) a počet kanálů (1,2,3,4). Typ použité komprese (žádná, RLE, PNG, více viz přednáška č.6) Rozlišení při tisku (72DPI, 300DPI,...); Barevná paleta (u indexovaných barev), obvykle v záznamech RGB, V některých DTP formátech odkaz a nebo přímo vložený barevný profil. Vlastní obrazová data (planární nebo kompozitní, s danou kompresí) Soubor/objekt bitmapy může obecně obsahovat obrazová data i více než jednoho obrázku (ICO), nebo i animační instrukce (anim. GIF). 7/15

2D entity - výplně Používá se několik algoritmů, s různou paměťovou náročností a rychlostí: Semínkové vyplňování spojité oblasti (Seed Fill) Předpokládejme že daný bod leží uvnitř platné oblasti, Otestujeme 4 směry šíření a všechny body splňující podmínky spojité výplně obarvíme a přidáme do fronty. Výchozí bod z fronty odstraníme a postup opakujeme, dokud fronta není prázdná (fronta typu FIFO). Scan-Line algoritmus: Canvas.FloodFill Z výchozího bodu nalezneme a spojíme krajní body platné oblasti ve vodorovném směru ( vyplnění scanline - dobrá akcelerovatelnost). Nad a pod vyplněnou linií se rekurentně provede vyhledání platných bodů, přičemž každý nalezený platný a neobarvený bod podél původní scanline se stává novým východiskem. Algoritmus končí, jsou-li vyplněny všechny úseky (a k nim rekurentně nalezené oblasti) podél výchozí linie. 8/15

2D entity - úsečky Úsečka je obecně zadaná souřadnicemi počátku (A) a konce (B) v kartézských souřadnicích, resp. souřadnicemi počátku, úhlem a délkou úsečky (polární souřadnice, želví grafika ). Pro vykreslení matematicky zadané úsečky je nutné provést tzv. rasterizaci: Klasický analytický vztah y x =a x b= y A x y B y A x B x A je pro kreslení bod po bodu prakticky nepoužitelný v okamžiku, kdy potřebujeme souvisle kreslit pod úhlem větším než 45 (nespojitost). Parametrická definice x = f X (t) a y = f Y (t), neboli B(t)=(1-t)P A +tp B, t 0,1 je neefektivní, některé neceločíselné výpočty a kreslení se opakují. 9/15

2D entity - úsečky Všeobecně užívaným řešením je Bresenhamův celočíselný algoritmus (Jack E. Bresenham, 1962): Jde o řešení založené na symetrii, kdy před začátkem vlastního kreslení určíme segment, ve kterém bude linie postupovat. Směr postupu (vpřed nebo šikmo?) je pak v každém bodě určen znaménkem rozhodovacího kritéria P. Výchozí hodnota P 0 := 2d Y d X, kde d X = abs(x B x A ) a d Y = abs(y B y A ) jsou celočíselné inkrementy. Pro P > 0 => Postup vpřed, P := P + 2d Y -2d X ; Pro P 0 => Postup šikmo, P := P + 2d Y. Veškeré výpočty jsou celočíselné, každý bod se kreslí jen jednou. Ostatní segmenty se řeší prohozením souřadnic, znamének, nebo A B. 10/15

2D entity - elipsy Rasterizace kružnic a elips (případně jejich oblouků) se provádí pomocí polygonů, složených z dostatečně krátkých úseček. Souřadnice vrcholů tohoto polygonu se počítají polárně, s určitým nastaveným krokem (např. v Autocadu): x(t) = x C +cos(t +j) r X, y(t) = y C +sin(t +j) r X ), a nebo s použitím definice elipsy jako kuželosečky: y x =r y 1 x c x r x 2 (normální poloha, j = 0) Řešení v normální poloze se optimalizuje Bresenhamovou metodou založenou na symetrii elipsy v 8 kvadrantech na celočíselném testovacím kritériu (standardní GDI procedury Ellipse a FillEllipse). Popis funkce viz např. http://en.wikipedia.org/wiki/midpoint_circle_algorithm Složením z dvojice zrcadlově symetrických Bézierových křivek 3.st. (grafické programy Illustrator, Corel, Xara...) 11/15

2D entity křivky Pro specifické úlohy (průchod křivky danými body) se používají kubické splajny (B-spline, H-spline...), kreslené pomocí polygonů s vrcholy v dané frekvenci. Pro ostatní 2D aplikace se dnes používají téměř výhradně tzv. Bézierovy křivky (Pierre Étienne Bézier, 1962): Kvadratická Bézierova křivka (True-type fonty) jsou definované trojicí bodů (koncové P 1, P 3, řídící bod P 2 ): B(t)=(1-t) 2 P 1 +2t(1-t) 2 P 2 + t 2 P 3, kde t 0,1. Kubická Bezierova křivka je parametrickou funkcí souřadnic dvou koncových bodů a dvou řídících bodů. Křivka spojuje oba koncové body, řídícími body procházet může, ale nemusí. Obecná forma Bézierovy rovnice popisuje souřadnice každého bodu jako funkci časovače (nastavení kroku záleží na konkrétní aplikaci): B(t)=(1-t) 3 P 1 +3t(1-t) 2 P 2 +3t 2 (1-t)P 3 + t 3 P 4, kde t 0,1, kde P 1,4 jsou koncové body, P 2,3 řídící body (vektorově). V Delphi: Canvas.PolyBezier Detaily viz http://en.wikipedia.org/wiki/bezier_curve, ukázky viz http://method.ac 12/15

2D entity fonty Font je obecným předpisem pro vykreslování znaků na grafickém zařízení. Pevné fonty: Odlitky znaků nasázené v novinových rotačkách, kladívka v psacích strojích a dálnopisech to co nelze měnit softwarem. Bitmapové fonty (znakový generátor v grafické kartě, soubory FON): Znaky jsou definovány jako (obvykle monochromatické) sprajty, Definice může popisovat buď jednu a nebo více velikostí znaku, změna rozměrů písma je omezena na základní velikosti, ostatní je nutné odvozovat (zvětšovat, zmenšovat) interpolací (StretchDraw) Vykreslení znaku je prováděno odkazem na příslušný sprajt v matici, indexované příslušnou znakovou sadou (ASCII, Unicode,...) Vektorové fonty (TrueType, ATM, PostScript...): Řeší omezení změn velikosti u bitmapových fontů, Font je definován jako skupina Bézierových křivek a výplní, odpovídajících příslušným znakům v dané znakové sadě. Rychlost vykreslování je optimalizována dočasnou rasterizací celé znakové sady pro uživatelem zvolenou velikost. Rasterizace s použitím odstínů šedi, RGB barev a průhlednosti je základem různých technik vyhlazování hran (antialiasing, ClearType). Více o vzhledu, funkci a určení fontů viz kapitola 10. 13/15

Základní souborové formáty Rastrové RAW: Planární nebo kompozitní data, dekódování řeší konkrétní aplikace. BMP/ICO/CUR: Základní GDI formáty Windows, žádná nebo RLE komprese. PCX: faxový formát, optimalizovaná bezeztrátová RLE komprese, až 24bit. TIFF: DTP formát, různé varianty zápisu bitmap v RIFF formátu (Apple, Amiga..) GIF(89a): až 256 barev, komprese LZW (Lempel-Ziv-Welch,'82), možnost animace PNG: Public-Domain alternativa a rozšíření možností statického GIF (24bit+alpha) JPEG/JFIF: formát pro ztrátový záznam fotografií: DCT, Downsampling, YUV......více viz kapitola 6. Vektorové WMF/EMF: Nativní Windows GDI stream s předpisem kreslení jednotlivých 2D entit PostScript, EPS, PDF: Obecný programovací jazyk pro vykreslování grafiky......více viz kapitola 10. 14/15

Závěr přednášky Byla probrána následující témata: základní rastrové operace (planární a kompozitní uspořádání), základní 2D entity (body, obdélníky+bitblt, bitmapy, výplně, čáry, křivky) bitmapové a vektorové fonty (organizace, vykreslování) základní souborové formáty pro bitmapovou a vektorovou grafiku. Úkol pro studenty na dnešní cvičení: Kontrola volby témat semestrální práce. Příští hodina začne 10-15 min. prezentací na téma 2D grafika. 15/15