Reprezentácia dát

Portál: Moodle gymnázia, Bilíkova 24
Kurz: Informatika 2. ročník
Kniha: Reprezentácia dát
Vytlačil(a): Hosťovský používateľ
Dátum: štvrtok, 9 mája 2024, 11:47

Opis

študijný materiál

1. Kompresia

Kompresia dát je proces, pri ktorom sa vstupné dáta premieňajú na výstupné, pričom cieľom je znížiť množstvo výstupných dát na minimum, pri prijateľnej časovej náročnosti. Všetci sme sa asi s kompresiou stretli pri posielaní súborov cez internet, kedy sme pre úsporu miesta súbory "zazipovali".

zip file

Poznáme stratovú a bezstratovú kompresiu. V obidvoch variantách sa využívajú kompresné algoritmy:

  • bezstratová kompresia je trieda kompresných algoritmov, umožňujúca spätnú rekonštrukciu komprimovaných dát do pôvodnej podoby bez straty informácie,

  • stratová kompresia, kde nie je možné obnoviť dáta v pôvodnej kvalite. Kompresný pomer je väčší pri stratových algoritmoch, ale za cenu mierneho zhoršenia kvality.

2. Text

Textovú informáciu si počítač ukladá v binárnej podobe. Na rozdiel od čísel, znaky textu nevieme previesť do dvojkovej sústavy, preto bolo potrebné vymyslieť iný spôsob ako jednoznačne priradiť určitému znaku práve jednu kombináciu núl a jednotiek, ktorá tento znak v počítači bude reprezentovať. Keďže neexistuje žiadny univerzálny spôsob ako to urobiť, každý výrobca počítačov tento problém riešil iným spôsobom, preto existuje viacero znakových kódov. Poriadok do tohto chaosu sa snažil zaviesť americký úrad pre normalizáciu, ktorý vyhlásil jeden spôsob, ktorý by mali všetci používať. Tento spôsob kódovania sa volá ASCII (American Standard Code for Information Interchange).

ASCII kód

Znaky kódujeme pomocou tabuľky ASCII kódu, ktorá priraďuje každému znaku z klávesnice číselnú hodnotu. Klávesnica PC má 128 kláves, takže ASCII používa 7 bitov na každý znak.  Neskôr sa kódovanie rozšírilo na 8 bitov a 256 znakov. Pritom prvá polovica znakov je pre všetky krajiny rovnaká a zvyšných 128 znakov sa pre každú krajinu stanovil podľa ich potrieb. Nevýhoda takého postupu je zrejmá: opäť chýba univerzálna tabuľka všetkých znakov vo všetkých jazykoch.

Unicode

Na kódovanie diakritických symbolov, iných abecied a ďalších znakov sa používa Unicode, ktorý na každý znak používa až 32 bitov. To umožňuje kódovanie vyše milióna rôznych znakov. Tento počet znakov umožňuje zakódovať znaky všetkých relevantných abecied pomocou jednej medzinárodnej tabuľky. Toto kódovanie zabezpečuje, že ten istý znak má rovnaký kód v každej krajine i na každom type počítača.

Nevýhodou tohto kódovania je, že znaky, ktoré sme predtým vedeli zakódovať iba ôsmimi bitmi (jedným bajtom) v ACSII, v Unicode sú kódované 16 a 24 bitmi (dvomi a tromi bajtami), a teda zaberajú viac pamäte ako by zaberal text v kódovaní ASCII. Istým riešením tohto problému je formát UTF-8

Podrobnejšie kódovanie textu vysvetľuje video:


3. Grafika

Počítačová grafika sa zaoberá zobrazením, manipuláciou a ukladaním obrazu v digitálnej podobe. Stretávame sa s ňou denne pri používaní grafického rozhrania počítača/mobilu, v zábavnom priemysle (TV, počítačové hry, ...), vizualizácii pre vedecké a priemyselné účely, úprave fotografií apod.

Kľúčové pojmy
grafika: rastrová a vektorová, pixel, farebné modely: RGB, CMYK, grafický editor, alfakanál, vrstvy, renderovanie, rastrovanie

3.1. Farebné modely

Pre potreby reprezentácie farieb používame v počítačoch farebné modely, najmä RGB a CMYK. Používajú sa pre rastrovú i vektorovú grafiku.

Model RGB (red, green, blue) je aditívny model miešania farieb, ktorý napodobňuje miešanie farebného svetla. Používa sa hlavne pri zobrazovaní na displejoch.

 RGB

Model CMYK (cyan, magenta, yellow, black) je subtraktívny model, ktorý napodobňuje napr. miešanie pigmentov (napr. vodových farieb). Používa sa predovšetkým pri tlači.

CMYK
Hĺbka farebného modelu

Dôležitým parametrom je hĺbka farebného modelu, tj. koľko bitov používa na reprezentáciu jedného pixelu. Ak je napr. hĺbka 24 b (True Color), na každý farbu RGB modelu je 8 bitov, to je \(2^8 = 256 \) možných kombinácií, čiže celkový počet farieb vychádza:

\( 256^3 = 16,7 \times 10^6 \) farieb.

Príklad

Máme rastrový obrázok 600×400 px vo farebnej hĺbke 8 b. Koľko bitov zabere v pamäti?

Riešenie
Obrázok zaberá \( 8 \cdot 600 \cdot 400 =1 920 000 \) b. Umožňuje použitie \( 2^8 = 256\) farieb.

3.2. Vrstvy a priesvitnosť

Vrstvy

Formáty obrázkov, ktoré umožňujú prácu s vrstvami, obsahujú viac obrázkov uložených vo vrstvách nad sebou ako sendvič. Poradie vrstiev a ich viditeľnosť môžeme meniť. Vrstvy práve umožňujú naplno využiť výhod priesvitnosti alfakanálu.

Ak chceme výsledný obrázok uložiť vo formáte, ktorý vrstvy nepodporuje, zlúči sa výsledok do jednej vrstvy tak, ako je obrázok zobrazený v editore.

vrstvy obrázku

Priesvitnosť

Niektoré formáty obrázkov umožňujú mať priesvitné pozadie. U takých obrázkov je tzv. alfa kanál, ktorý sa ukazuje tam, kde nie sú žiadne farebné pixely. Alfakanál sa väčšinou ukazuje ako šachovnica. Obrázky bez priesvitnosti majú každý pixel ofarbený a pri vymazaní farby proste vyplnia pixel farbou pozadia.

obrázok s alfakanálom

Použitie alfa kanálu si vyžaduje viac pamäte. Napríklad pridaním alfa kanálu k obrázku True Color vznikne RGBA, kde sa pridáva každému pixelu 8 b priesvitnosti., teda celkovo sa používa 32b farebná hĺbka. Môžeme mať  \( 2^8 = 256\) úrovní sytosti farieb


3.3. Kvalita tlače

Vzťah medzi počtom bodov a reálnou veľkosťou obrázku označujeme ako rozlíšenie. Obecne je vyjadrené ako DPI (Dots Per Inch), tj. počet bodov obrazu, ktoré tvoria rad dlhý jeden palec (2,54 cm). Pokiaľ vytlačíme obrázok o rozmeroch 100×100 pixelov ako štvorec o veľkosti 2,54×2,54 cm, bude mať rozlíšenie 100 DPI. 

Príklad

Aké rozlíšenie je potrebné pre tlač fotografie 9×13 cm v rozlíšení aspoň 300 DPI?

Riešenie
\( \frac{9}{2,54} \cdot 300 \times \frac{13}{2,54} \cdot 300= 1063 \times 1536 \)
Potrebujeme obraz o rozmeroch aspoň 1063×1536 pixelov.

3.4. Rastrový obraz

Vizuálny vnem oka (analógový obraz) je spojitý, ale jeho digitálna reprezentácia je mriežka (raster) farebných bodov, tzv. pixelov. Čím väčší počet bodov, tým kvalitnejší obraz. Prevod hladkých kriviek na diskrétne body se nazýva rasterizácia a nesie so sebou riziko vzniku nežiaducich efektov: zubaté okraje, strata detailu a iné.

Chyby pri rasterizácii sa kompenzujú tak, že pixely sú ofarbené pomerne k ploche, ktorú zaujíma farba v štvorci pripadajúcom na jeden pixel. To sa nazýva antialiasing. Avšak v prípade písma môže mať antialiasing nežiaduci efekt, ktorý znižuje čitateľnosť. Porovnajme nasledujúce vzorky (prvá bez antialiasingu, druhá len antialiasing, tretia s antialiasingom a opravená pomocou hintingu):






Formáty rastrovej grafiky
Bezstratové
  • BMP (Microsoft Windows Bit Mapped Picture):
    • univerzálny, dobre zdokumentovaný formát,
    • väčšinou bez kompresie,
    • veľké súbory.
  • RAW (Microsoft Windows Bit Mapped Picture):
    • súbor neupravených dát z digitálneho fotoaparátu,
    • formát nie je nikde špecifikovaný – existujú rôzne typy,
    • pre vysokokvalitné spracovanie fotografií.
  • TIFF (Tagged Image File Format):
    • neoficiálny štandard na ukladanie obrázkov na tlač (DTP),
    • vysoká kvalita a veľké súbory,
    • umožňuje vrstvy, kombináciu s vektormi i viac stránkový dokument.
  • GIF (Graphic Interchange Format):
    • umožňuje tvorbu animovaných obrázkov a priesvitné pozadie,
    • má veľké obmedzenie v počte použitých farieb – maximálne 256 (8 bitov).
  • PNG (Portable Network Graphics):
    • zamerané na prenos obrázkov cez sieť,
    • umožňuje priesvitné pozadie,
    • veľká farebná hĺbka – až 48 bitov.
Stratové
  • JPG (Joint Photographic Experts Group):
    • najpoužívanejšia metóda ukladania digitálnych obrázkov,
    • hodí sa tam, kde nie sú potrebné všetky detaily,
    • nehodí sa pre obrázky s veľkými jednofarebnými plochami a ostrými hranami.

3.5. Vektorový obraz

Obraz je možné reprezentovať tiež pomocou matematických objektov: bodov, úsečiek, kriviek a polygónov. Takú voláme vektorová a od rastrovej sa líši v niekoľkých kľúčových vlastnostiach:

  • vektorovú grafiku možno ľubovolne zväčšovať a zmenšovať bez straty detailu, hladkosti čiar a podobne

  • vektorová grafika sa nehodí pre reprezentácii fotografií — prevod z rastrového snímača do kriviek je veľmi náročný

  • pamäťová a výpočtová náročnosť zobrazenia obrázku závisí od jeho komplexity, nie jeho rozlíšenia

  • vektorová reprezentácia je vhodná pre uchovávanie grafiky, ktorá sa bude opakovane používať v rôznom rozlíšení (loga, písma, atď.)

porovnanie vektorovej a rastrovej grafiky
Formáty vektorovej grafiky

Medzi najpoužívanejšie formáty, ktoré zároveň umožňujú používať vrstvy a kombinovať vektorovú a rastrovú grafiku, patria:

  • SVG (Scalable Vector Graphics):
    • značkovací jazyk a formát, ktorý opisuje dvojrozmernú vektorovú grafiku,
    • pri vytváraní definuje rozmiestnenie kriviek a kontrolných bodov,
    • v budúcnosti má byť základným otvoreným formátom pre vektorovú grafiku na internete.
  • EPS (Encapsulated PostScript):
    • PostScript je programovací jazyk na grafický popis tlačiteľných dokumentov,
    • výhodou je, že je nezávislý od zariadenia, na ktorom sa má dokument vytlačiť.


3.6. 3D grafika

Rozsiahlym odvetvím grafiky je tvorba a vykreslenie trojrozmerných objektov. 3D-objekty sú reprezentované ako duté telesá zložené z polygónov, ktorým sú potom priradené vlastnosti ako farba, rozptyl a odraz svetla a štruktúra, ktoré sa definujú pomocou textúr — obrázkov „natiahnutých“ na plochý povrch polygónov.

Proces vytvárania výsledného obrazu z modelu sa nazýva renderovanie. Tento proces môže byť výpočtovo veľmi náročný.

3.7. Aplikácie na prácu s grafikou

Rastrová grafika
Medzi obľúbené aplikácie, ktoré umožňujú upravovať a vytvárať rastrovú grafiku, patria:
  • Adobe Photoshop,
  • MS Paint,
  • GIMP,
  • Krita,
  • Pinta.

5 spôsobov ako odstrániť pozadie (po anglicky):

Vektorová grafika

Obľúbené aplikácie na úpravy a tvorbu vektorovej grafiky:
  • Adobe Illustrator,
  • Corel Draw,
  • Inkscape.
Krátke video ako úvod k InkScape:



4. Zvuk

Zvuk je pozdĺžne mechanické vlnenie v látke (napr. vzduchu). Sluchový vnem vzniká kmitaním membrány v uchu. Prevod analógového signálu sa robí pomocou prevodníka A/D (analog-to-digital) na zvukovej karte PC. Pri prehrávaní záznamu treba spätne digitálny signál previesť na analógový pomocou prevodníka D/A. Na kvalite prevodníka závisí kvalita výsledného zvuku. Najčastejšou metódou prevodu analógového signálu na digitálny je Pulzná kódová modulácia (PCM). Kvalita zvuku sa najčastejšie vyjadruje v kbit/s.

4.1. Digitalizácia zvuku

Digitalizácia analógového zvukového signálu sa robí prevodom signálu v pravidelných intervaloch. Čím kratšie sú intervaly, tým viac meraní (vzoriek) za sekundu urobíme a tým presnejšie zvuk zachytíme. Počet meraní za sekundu sa nazýva vzorkovacia frekvencia a udáva sa v kHz.

Bežne rozlišujeme zvuk jednokanálový – mono – a dvoukanálový – stereo. Stereo umožňuje záznam dvoch rôznych stôp, aby sme dosiahli priestorového dojmu. Samozrejme to znamená dvojnásobný priestor v pamäti počítača.

Ďalším parametrom digitálneho zvuku je veľkosť vzorky alebo bitová hĺbka. Čím väčší počet bitov, tým presnejší údaj získame a môžeme zachytiť väčšie rozdiely v hlasitosti. Napr. hudba na CD má vzorkovaciu frekvenciu 44,1 kHz (44100 vzoriek za sekundu) a rozlíšenie 16 bitov. 

Na obrázku dole je príklad vzorkovania zvuku v 4b hĺbke (pripomeňme si, že 4 bity kódujú \( 2^4 = 16 \) hodnôt).

Príklad

Koľko pamäte zaberá neskomprimovaná trojminútová nahrávka v CD kvalite (44,1 kHz) s hĺbkou 16 b? (Ide o stereo nahrávku.)

Riešenie
Každá sekunda nahrávky potrebuje \( 44100 \cdot16 \) bitov, a celkovo máme \( 3 \cdot60 \) sekúnd a dve stopy (stereo), takže potrebujeme asi 254 016 000 b, čo po prevode na bajty je 31,75 MB.



4.2. Zvukové súbory

Kodeky

Pre efektívnejšiu prácu so zvukovými súbormi sa používajú kodeky. Slovo kodek pochádza z angličtiny (codec) a je to skratka z dvoch slov COder a DECoder. Kodek slúži na zakódovanie a dekódovanie, inak povedané na kompresiu a dekompresiu zvuku. Je to ovládač, ktorý pridáva podporu pre nejaký konkrétny audio/video formát.

Zvukové formáty bez kompresie

  • Raw Audio (*.raw, *.pcm, *.sam) – formát na ukladanie zvuku v surovej podobe bez hlavičky s informáciami,
  • AIFF (*.aiff, *.aif) – formát používaný v počítačoch Apple,
  • WAVE (*.wav) – základný formát na počítačoch s OS Windows.

So stratovou kompresiou

  • MPEG (*.mp1, *.mp2, *.mp3, *.m2a, *.m4a, *.mpa, *.mpg, *.mpeg, *.sws) – stratová kompresia založená na psychoakustike:  zložky zvuku, ktoré by sme aj tak nepočuli, sa vymažú.
  • WMA (*.wma) – vyvinula spoločnosť Microsoft.
  • RealAudio (*.ra, *.rm, *.ram) – formát získal svoju popularitu vďaka streamovaniu zvuku na webe.

S bezstratovou kompresiou

  • FLAC (Free Lossless Audio Codec),
  • ALAC (Apple Lossless Audio Codec),
  • APE (Monkey Audio).
Formát MIDI

strihanie zvukuPre hudobné účely bol vyvinutý formát MIDI (Musical Instrument Digital Interface) je medzinárodný štandard, ktorý používajú rôzne hudobné nástroje a zariadenia. Predstavuje čisto digitálny zvuk, teda zvuk ktorý bol vytvorený priamo v počítači. MIDI súbory zaberajú na disku omnoho menej miesta ako zvukové vzorky a pritom ponúkajú vynikajúcu kvalitu zvuku.

Programy na nahrávanie a úpravu zvuku

Okrem veľa šikovných nástrojov on-line, patria medzi obľúbené aplikácie na strihanie zvuku programy: 

  • Cool Edit, 
  • Sound Forge, 
  • Audacity,
  • WaveEditor.


5. Zdroje

Základy IT gramotnosti na webu Masarykovej univerzity.

Wikipédia