Grafický formát: Rozdiel medzi revíziami

z Wikipédie, slobodnej encyklopédie
Smazaný obsah Přidaný obsah
Etki (diskusia | príspevky)
Etki (diskusia | príspevky)
Riadok 7: Riadok 7:
Rastrové obrázky sú rozdelené na sieť myslených štvorčekov - pixelov. Rozmer každého obrázka je pre počítač počet pixelov na šírku x počet pixelov na výšku. Pre každý pixel (štvorček) je nutné okrem polohy (riadok a stĺpec) zakódovať aj farbu, resp. ďalšie parametre.
Rastrové obrázky sú rozdelené na sieť myslených štvorčekov - pixelov. Rozmer každého obrázka je pre počítač počet pixelov na šírku x počet pixelov na výšku. Pre každý pixel (štvorček) je nutné okrem polohy (riadok a stĺpec) zakódovať aj farbu, resp. ďalšie parametre.


=== Čirnobiely obraz ===
=== Čiernobiely obraz ===


Ak je obrázok monochromatický (čierna a biela farba), kódovanie je jednoduché (1 - rozsvietený (biely) bod, 0 - nerozsvietený (čierny) bod), napr.
Ak je obrázok monochromatický (čierna a biela farba), kódovanie je jednoduché (1 - rozsvietený (biely) bod, 0 - nerozsvietený (čierny) bod), napr.

Verzia z 15:50, 14. august 2006

Hovorí sa, že raz vidieť je lepšie ako sto krát počuť. Preto je grafická informácia niekedy dôležitejšia ako text. Čo sa týka spôsobu, akým uchovať obrazovú informáciu v počítači, opäť môžeme povedať, že neexistuje univerzálne riešenie tohto problému. Dá sa však povedať, že existujú dva rôzne pohľady na tento problém. Prvým z nich je pozeranie sa na obrázok ako na sieť (raster) veľmi malých štvorcov - pixelov. Uloženie grafickej informácie pomocou takéhoto prístupu voláme rastrová grafika. Druhý prístup je pozeranie sa na obrázok ako na zoskupenie objektov (alebo ich častí), ktoré sa dajú nakresliť pomocou matematických vzorcov a funkcií. Tieto objekty májú svoje vlastnosti ako polohu na obrázku, veľkosť, farbu, priehľadnosť povrchu, lesklosť povrchu... Tieto vlastnosti sú vstupnými parametrami (vektormi) matematických vzorcov a funkcií, pomocou ktorých sa objekty nakreslia. Uloženie grafickej informácie pomocou takéhoto prístupu sa nazýva vektorová grafika.


Rastrová grafika

Rastrové obrázky sú rozdelené na sieť myslených štvorčekov - pixelov. Rozmer každého obrázka je pre počítač počet pixelov na šírku x počet pixelov na výšku. Pre každý pixel (štvorček) je nutné okrem polohy (riadok a stĺpec) zakódovať aj farbu, resp. ďalšie parametre.

Čiernobiely obraz

Ak je obrázok monochromatický (čierna a biela farba), kódovanie je jednoduché (1 - rozsvietený (biely) bod, 0 - nerozsvietený (čierny) bod), napr.

	100111001
	011010110
	101101101
	110111011
	111010111
	111101111

A teda zápis v riadku vyzerá : 011000110 100101001 010010010 001000100 000101000 000010000, čo je 54 bitov. Po osemnásobnom zväčšení obrázok vyzerá takto:

Odtiene sivej

Pri niektorých obrázkoch je však potrebné zaznamenať i odtiene, preto dve farby - čierna a biela - nestačia. Výhodné je zakódovať odtiene sivej farby pomocou ôsmich bitov tak, aby informácia o každom bode zaberala 1 B, t.j. jedno pamäťové miesto počítača. Čím bude bod svetlejší, tým väčšia hodnota sa do pamäte uloží. Preto bod čiernej farby bude uložený ako 0 a bod bielej farby ako maximálna možná hodnota - 255. Obrázok teda bude kódovaný nasledovne:

	192  0   0  255 255 192  0   0  255
	 0  255 192  0  192  0  255 192  0
	192  0  255 192  0  255 192  0  255
	255 192  0  255 255 192  0  255 255
	255 255 192  0  192  0  255 255 255
	255 255 255 192  0  255 255 255 255

Obrázok bude v pamäti počítača zaberať 54 Bajtov (pamäťových miest) a po osemnásobnom zväčšení obrázok bude vyzerať takto:

Farebný obraz

Pri farebnom kódovaní obrázu všetky farebné modely kódujú farbu troma nezávislými hodnotami. Najvýhodnejšie je teda každý pixel obrazu zakódovať pomocou troch pamäťových miest počítača - 3 Bajtov. Obrázok s rozmermi 1024x768 pixelov tak v pamäti grafickej karty zaberie 2 359 296 Bajtov. V minulosti kvôli cene pamätí sa na grafické karty montovali pamäte menších rozmerov, teda na kódovanie farieb sa použil menší počet Bajtov. Najstaršie počítače používali iba 16 farieb, to znamená, že každý bod bol zakódovaný 4 bitmi, neskôr sa začali vyrábať 256-farebné grafické karty (VGA), ktoré mali každý bod kódované 8 bitmi. Po zlacnení počítačových pamätí už bolo možné vyrábať karty SVGA, ktoré kódovali farby pomocou 16 bitov (dve pamäťové miesta) v režime High Color (vysoká farebnosť). V súčasnosti už grafické karty majú toľko pamäte, že bez problémov môžu kódovať každý bod 24 bitmi (tri pamäťové miesta) v režime True Color (pravá farebnosť). Popísaný spôsob uloženia obrázka (keď je každý bod kódovaný pomocou niekoľkých bitov - 4, 8, 16 alebo 24) sa používa formát, ktorý sa volá bitová mapa (BitMaP). Obrázky v takomto formáte sú v počítači uložené v súboroch s príponou BMP. Pri plnej farebnosti je každý bod obrázka zakódovaný 24 bitmi, čo sú tri pamäťové miesta počítača. Pričom 255 0 0 je sýta červená farba, 0 255 0 je sýta zelená farba, 0 0 255 je sýta modrá farba, 0 0 0 je čierna farba a 255 255 255 je biela farba. Obrázok srdca môžeme týmto spôsobom zakódovať napríklad aj takto (kvôli kratšiemu zápisu použijeme šestnástkovú sústavu):

C0 C0 C0  FF 00 00  FF 00 00  FF FF FF  FF FF FF  C0 C0 C0  FF 00 00  FF 00 00  FF FF FF
FF 00 00  FF 00 00  FF 00 00  FF 00 00  C0 C0 C0  FF 00 00  FF 00 00  FF 00 00  FF 00 00
C0 C0 C0  FF 00 00  FF 00 00  FF 00 00  FF 00 00  FF 00 00  FF 00 00  FF 00 00  00 00 00
FF FF FF  C0 C0 C0  FF 00 00  FF 00 00  FF 00 00  FF 00 00  FF 00 00  00 00 00  00 00 FF
FF FF FF  FF FF FF  C0 C0 C0  FF 00 00  FF 00 00  FF 00 00  00 00 00  00 00 FF  00 FF 00
FF FF FF  FF FF FF  FF FF FF  C0 C0 C0  FF 00 00  00 00 00  00 00 FF  00 FF 00  00 FF 00 

Obrázok bude v pamäti počítača zaberať 162 Bajtov (pamäťových miest) a po osemnásobnom zväčšení obrázok bude vyzerať takto:

Veľká pamäťová náročnosť už teda nie je problém grafickej karty počítača, stále je však problém pri posielaní takýchto obrázkov prostredníctvom internetu, pretože obrázok s rozmermi 1024x768 pixelov v režime true color sa nezmestí ani na disketu. Preto sa na zníženie pamäťových nárokov používa paleta farieb a kompresia (stlačenie).

Paleta farieb

Paleta využíva skutočnosť, že na kreslených obrázkoch väčšinou nie je použitých viac ako 256 farieb. Zníženie pamäťových nárokov spočíva v tom, že očíslujeme všetky použité farby v obrázku číslami od 0 do 255, a potom kódujeme každý bod tak, že uvedieme poradové číslo farby v palete. Tým miesto troch pamäťových miest, každý bod zakódujeme len pomocou jedného pamäťového miesta. Naše "srdce" teda zakódujeme nasledovne:

Paleta:

00 00 00 00 , 01 C0 C0 C0, 02 FF 00 00, 03 00 FF 00, 04 00 00 FF, 05 FF FF FF 

Obrázok:

01  02  02  05  05  01  02  02  05
02  02  02  02  01  02  02  02  02
01  02  02  02  02  02  02  02  00
05  01  02  02  02  02  02  00  04
05  05  01  02  02  02  00  04  03
05  05  05  01  02  00  04  03  03 

Ak spočítame počet pamäťových miest, dostaneme 24 B použitých v palete a 54 B použitých na obrázok, čo je spolu 78 B (bez použitia palety to bolo 162 B).

Ďalší spôsob ako znížiť pamäťovú náročnosť obrázka, je použitie kompresie.


Vektorová grafika

Tie nie sú tvorené skupinou štvorčekov, ale základnými objektmi, ktorých algoritmy zostrojenia sú vopred známe, len treba zaznamenať (zakódovať) ich základné charakteristiky (napr. pre kružnicu súradnice stredu, polomer, príp. farba čiary napr. : K40Ž200150 - kružnica s polomerom 40 žltej farby a so súradnicami stredu 200 150).


Pozri aj


Zdroje

Etkiho stránka