Jak funguje JPEG - princip pod lupou

Rozměr: px
Začít zobrazení ze stránky:

Download "Jak funguje JPEG - princip pod lupou"

Transkript

1 Jak funguje JPEG - princip pod lupou Zajímalo vás někdy, jak napsat kompresní program na obrázky založený na stejném principu jako JPEG? Rád vám vysvětlím, jak to vlastně funguje a jak jednoduše se dá základ takového kompresoru napsat. Na začátku 80. let se na scéně objevil standard JPEG (Joint Photographic Experts Group) pojmenovný podle skupiny, kterou byl vytvořen. Byl to zároveň první krok pro ztrátové kompresních metody v grafice, který však přetrvává dodnes. Formát.JPG už zná prakticky každý, kdo vlastní digitální fotoaparát nebo serfuje po webu. O JPEGu (vyslovuj jay-pegu) bylo napsáno tolik, že už snad ani nemá cenu omílat to všechno dokola. Je ale nutno dodat, že JPEG zůstal populární hlavně kvůli své velké flexibilitě. Diskrétní kosinová transformace Formát JPEG je založen na tzv. DCT - diskrétní kosinové transformaci, která je realizována ve dvou rozměrech. Aplikuje se na čtvercové matice o velikosti 8x8 pixelů, obrázek se tedy rozřeže na čtverečky, které se potom zpracovávají jeden po druhém. Je ale nutno podotknout, že DCT sama o sobě není kompresní metoda. Jde pouze o transformaci, která je popsána jednou rovnicí a má i svou inverzní variantu. Pokud na matici aplikujete dopřednou DCT a potom inverzní DCT, nic se na ní nezmění. Původní pixelová matice sestává pouze z hodnot pixelů (pro černobílé obrázky to je stupeň šedi, pro barevné hodnota jedné složky), kdežto DCT matice obsahuje tzv. DC koeficienty tvořící jakousi frekvenční mapu. Při kompresi se využívá toho, že lidské oko není citlivé na funkce vysokých kmitočtů. Amplitudy těchto funkcí jsou soustředěné v jednom rohu DCT matice a naopak v protějším rohu jsou nízké frekvence (pomalejší barevné přechody). Pro kompresi se potom používá tzv. kvantizační matice, která má největší hodnoty právě v místech, kde jsou vysoké frekvence. Pomocí jednoduchého dělení matic se odřežou vysoké frekvence a v DCT matici tak vznikne velké množství nul. To je redundantní obsah, který se pak zredukuje nějakou neztrátovou metodou (obvykle Huffmanovo kódování). Při dekompresi se zredukovaná DCT matice opět vynásobí kvantizační maticí a pak se aplikuje I-DCT. Tím dostaneme aproximaci původního čtverečku (bloku). Míra komprese a tím taky kvalita výstupu je dána faktorem kvality (nazývá se Q-Faktor), který v podstatě stupňuje hodnoty v kvantizační matici. Funkce vyšších frekvencí obvykle nejsou tak viditelné, ovšem ostré hrany jsou často výjimkou. Tady potom dochází k nepříjemnému zvlnění (Gibbsův jev) a vůbec lehkému rozostření celého obrázku. Proto není JPEG ani žádná jiná metoda založená na DCT vhodná pro kompresi technických výkresů a prezentačních materiálů, naopak je výborná pro zpracování digitálních fotografií a videa (DCT využívají všechny MPEG kodeky). Ve specifikaci JPEG se samozřejmě mluví o mnoha jiných technologiích vedle kosinové transformace samotné, o kterých se zmíním, nicméně teď přejdu k tomu, jak lze DCT realizovat. Abychom si moc nekomplikovali život, budeme pracovat s černobílým obrázek v 256 stupních šedi (já jsem použil ovladač SuperVGA, takže se ten obrázek bude tvářit, že má 256 odstínů, ve skutečnosti bude mít 64, ale i to bohatě stačí). Pro začátek trocha teorie. Nebudu se pouštět do matematických rozborů, od toho jsou příslušné publikace. Vězme, že naším prvotním cílem je získat z pixelové matice o velikosti 8x8 onu frekvenční mapu, čili stejně velkou matici DC koeficientů. Pozice v pixelové matici se bude udávat souřadnicemi x,y; v DCT matici potom i,j. Vztah pro výpočet DC koeficientu DCT matice na pozici [i,j] je dán vztahem:, kde pro u=0, jinak C(u)=1 pro u>0

2 Malé n je rozměr čtvercového blokuv pixelech. V programu tenhle vztah interpretujete až překvapivě jednoduše. Celý vztah bude fungovat pro n=8. Sumy se samozřejmě realizují pomocí vnořeného for cyklu. Já jsem to řešil tak, že jsem nejprve posečítal ty "šílené" výrazy napravo a teprve potom celek vynásobil. Ostatně se podívejte sami: { DCT } DCT[i,j]:=0; for x:=0 to 7 do DCT[i,j]:=DCT[i,j]+ ( A[x,y]*cos( ((2*x+1)*i*pi)/(2*8) )*cos( ((2*y+1)*j*pi)/(2*8) ) ); DCT[i,j]:=DCT[i,j]*C(j)*C(i)*( 1/sqrt(2*8) ); Takže jak vidíte, není třeba hledat žádné složitosti. Inverzní vztah, který v podstatě provádí operace v opačném pořadí, je I-DCT. Připomínám, že se bavíme jen o dvourozměrné variantě: pro C(u) platí totéž, co je uvedeno výše. Tímto vztahem dostanete z DCT matice zpátky hodnoty pixelů. První program Nyní už k realizaci komprese. První program provádí část JPEG komprese, přičemž vychází z výše uvedených vztahů. Komprese se totiž dá napsat tak, aby běžela mnohem rychleji. Jednak se to provádí vytvořením pomocné kosinové tabulky a potom také úpravou algoritmu tak, že procesor pracuje většinou v celých číslech. Komerční programy tak dosahují radikálně rychlejší (de)komprese za cenu triviální ztráty kvality. Následující kód používá černobílý ukázkový obrázek (níže) a ovladač svga256.bgi: program DCT256; { image compression using DCT by Libor Tinka } uses Crt,Graph; const kvalita = 15; { <1,+-25> } type Matice = array[0..7,0..7] of real; var d,m, xx,yy,x,y,i,j: integer; bmp: file of byte; b: byte; A,DCT,QM: Matice; procedure Pal(n,R,G,B: byte); Port[$3C8]:=n; Port[$3C9]:=R; Port[$3C9]:=G; Port[$3C9]:=B; function C(u: real): real; if u=0 then C:=1/sqrt(2) else C:=1;

3 { inicializace grafiky } d:=installuserdriver('svga256',nil);m:=0;initgraph(d,m,'svga256.bgi'); { inicializace palety } for x:=0 to 255 do Pal(x,Round(x*63/255),Round(x*63/255),Round(x*63/255)); { nacteni obrazku } assign(bmp,'exmpl256.bmp');reset(bmp);seek(bmp,1078); for y:=0 to 199 do for x:=0 to 319 do read(bmp,b); PutPixel(x,199-y,b); Close(bmp); { *** KOMPRESE *** } { sestaveni kvantizacni matice } for x:=0 to 7 do QM[x,y]:=1+((1+x+y)*kvalita); { prochazeni bloku } for yy:=0 to 24 do for xx:=0 to 39 do { nacteni bodu do pixelove matice } for x:=0 to 7 do A[x,y]:=GetPixel(xx*8+x,yy*8+y); { snizeni hodnot } for x:=0 to 7 do A[x,y]:=A[x,y]-128; { DCT } DCT[i,j]:=0; for x:=0 to 7 do DCT[i,j]:=DCT[i,j]+ ( A[x,y]*cos( ((2*x+1)*i*pi)/(2*8) )*cos( ((2*y+1)*j*pi)/(2*8) ) ); DCT[i,j]:=DCT[i,j]*C(j)*C(i)*( 1/sqrt(2*8) ); { kvantizace } DCT[i,j]:=Round(DCT[i,j]/QM[i,j]); { dekvantizace } DCT[i,j]:=DCT[i,j]*QM[i,j]; { idct } for x:=0 to 7 do A[x,y]:=0; A[x,y]:=A[x,y]+ ( C(i)*C(j)*DCT[i,j]*cos( (2*x+1)*i*pi/(2*8) )*cos( (2*y+1)*j*pi/(2*8) ) ); A[x,y]:=A[x,y]*( 1/sqrt(2*8) ); { zvyseni hodnot } for x:=0 to 7 do A[x,y]:=A[x,y]+128; if A[x,y]>255 then A[x,y]:=255; if A[x,y]<0 then A[x,y]:=0; { vykresleni } for x:=0 to 7 do PutPixel(xx*8+x,yy*8+y,Round(A[x,y])); if KeyPressed then CloseGraph;Halt; readkey; CloseGraph; end. Snažil jsem se to psát co možná nejpřehledněji. Jendotlivé kroky jsou odděleny komentáři, takže pěkně popořádku - po inicializaci grafiky, palety a načtení testovacího obrázku se připraví kvantizační matice. Ta bude později ovlivňovat poměr kvalita/komprese. Výslednou kvalitu si můžete sami regulovat tím, že nastavíte konstantu kvalita na nějakou hodnotu od 1 do 25 (můžete dát i víc, ale rozhodně ne míň - dělilo by se nulou). Aby jste viděli, jak taková kvantizační matice vypadá, takováto vznikne použitým vztahem při nastaveném faktoru kvality 2:

4 Kvantizace Při kompresi se budou dělit DC koeficienty odpovídajícími hodnotami v kvantizační matici. Největší ztrátu utrpí DC koeficienty v pravém spodním rohu matice, protože budou děleny největším číslem. Tam se také nacházejí vyšší frekvence. Uvedená kvantizační matice je ideální a nevychází tak úplně z charakteristiky lidského zraku. Skupina JPEG definovala jakousi optimální kvantizační matici, která je postavena na anatomii našeho oka a měla by znamenat rovnováhu mezi kvalitou a mírou komprese: Hodnota 50 tu vystupuje jako střední. Určitě jste si sami všimli, že v nastavení formátu JPEG volíte obvykle kvalitu na stupnici od Jestliže chcete využívat JPEG kvantizační matici, tak stačí vycházet z této, přičemž všechny ostatní z ní snadno odvodíte. Jestliže kvantizační faktor q nastavíte od 50 do 100, potom pro získání kvantizační matice upravte všechny hodnoty té vzorové takto: Q-faktor nad 50 značí vyšší kvalitu obrazu, ale nižší kompresní poměr. Naopak, posunete-li jezdec q-faktoru pod padesát, upraví se kvantizační matice tímto způsobem: Komprese a dekomprese Ale vraťme se k našemu programu. Kvantizační tabulka je sestavena a nyní jdeme vybírat jednotlivé bloky. Je nutno poznamenat, že tyto bloky, někdy označované jako makrobloky, mohou mít velikost i 16x16, 32x32... ale pixelové matice mohou být také obdélníkové. Údajně se při blocích 16x16 dosáhne trochu vyšší komprese, ale kosinová transformace je potom také zdlouhavější na výpočet. Asi proto

5 komise JPEG ustavila bloky 8x8 jako standard. Blok je načten pomocí funkce GetPixel do pole A, které představuje pixelovou matici. Jsou v ní hodnoty v rozmezí <0,255>, což se nehodí pro DCT. Hodnoty je nutno přesunout do intervalu <-128,127>, což se provede pouhým odečtením 128 od hodnoty pixelu. Tady samozřejmě k žádné ztrátě nedochází. Následuje vlastní DCT, prvními dvěma cykly pro hodnoty i a j se pohybujeme v DCT matici a počítáme její koeficienty na pozici [i,j] pomocí dalších dvou vnořených cyklů. To už je doslovná realizace vztahu pro výpočet DC koeficientů. Kdybychom nyní provedli inverzní DCT a získané hodnoty posunuli zpátky o 128 nahoru, dostali bychom přesně originál. Příkladně samotné odečetní je také transformací (lineární) a má svou inverzi (přičítání). Mezi DCT a I-DCT je tedy třeba vložit onen ztrátový krok a tím je kvantizace. Nyní už jde o dělení, ovšem se zaokrouhlením na celá čísla. Musíme uvažovat, že koeficienty bude kompresní utilita ukládat do souboru, kde by desetinná čísla zabrala více místa, než měl samotný originál - proto zaokrouhlení. { kvantizace } DCT[i,j]:=Round(DCT[i,j]/QM[i,j]); { dekvantizace } DCT[i,j]:=DCT[i,j]*QM[i,j]; Po kvantizaci už máme kompresi hotovou a hned se přehoupneme k dekompresi. Všechny kroky se provedou v opačném pořadí. Dekvantizace se provede opět roznásobením kompenzovaných DC hodnot hodnotami kvantizační matice. Obvykle se používá jedna kvantizační matice pro celý obrázek, ovšem v JPEG to je pravidlem. Následuje pochopitelně I-DCT a potom posunutí hodnot zpátky na původní hladinu. Po ztrátovém kroku nám nyní občas některá hodnota "odskočí" z chtěného intervalu <0,255>, ale tím si nemusíme lámat hlavu. Dekomprimovaný blok se znovu vykreslí na obrazovku. Takto se pokračuje, až je celý obrázek zpracovaný. A co dál? JPEG specifikace však nehovoří jenom o těchto několika krocích. Truecolorové obrázky jsou obvykle vyjadřovány pomocí RGB, tedy složek červené, modré a zelené. U JPEG se jedná vždy o 24-bitovou grafiku, takže na každou barevnou šložku připadá 8 bitů, tedy 256 odstínů. Model RGB však není zrovna nejvhodnější pro ztrátový formát. Hodí se spíš tam, kde jsou zapotřebí exaktní barvy. Člověk vnímá barvy díky zvláštním barvocitným receptorům na sítnici. Jsou dvou druhů, přičemž jeden je citlivý na modré a druhý na červené světlo. Valná většina ostatních receptorů příjimá pouze luminanci, tedy intenzitu bílého světla. Na základě tohoto poznatku vznikl barevný model YUV (často také označovaný jako YCbCr), používaný mimo jiné i v televizních normách. U komprese údajů jde o to, že oko je podstatně citlivější na změny světlosti (Y), než na barevné odchylky (U,V). Barevný obrázek je rozložený na tři barevné roviny a každá se komprimuje zvlášť. Jediný rozdíl je v tom, že roviny U a V se zredukují co do velikosti - podvzorkují se v poměru 1:2. My si toho příliš nepovšimneme, ale výrazně se tak zvýší kompresní poměr. Další kroky jsou podobné těm, co jsem ukázal v programu, jenom se provádějí pro každou barevnou rovinu zvlášť. Je však zapotřebí uložit kvantifikované DC koeficienty bez redundance (nadbytečnosti). Je tu spousta nul po vydělení kvantizační maticí. DCT matice se převede na jednorozměrnou sekvenci způsobem, kterému se výstižně říká Zig-zag. V matici se pohybujeme po diagonálách a jednotlivé hodnoty vypisujeme do posloupnosti. Vysldkem je to, že dostaneme vedle sebe velké množství nul, takže redundace této posloupnosti je maximální. Obvykle se potom aplikuje jednoduché proudové kódování (RLE - Run Length Encoding) a potom ještě Huffmanovo kódování. Pro dosažení ještě o něco lepších výsledků je možné použít aritmetické kódování, ale zde jsou potřeba operace s čísli s dlouhým dekadickým rozvojem. To je nepraktické co do výkonu, a tudíž není v JFIF (souborový formát JPEG) aplikováno (ale asi také proto, že přišlo nějaký čas po standardizaci :). Jednoduše rychlá DCT Vypracoval jsem ještě mnohem svižnější verzi kompresního programu, která šetří procesor od otrockého počítání kosinů se stále stejným argumentem. Tentokrát se vytvoří substituční kosinová matice, takže při DCT se budou používat pouze základní aritmetické operace. Přibylo několik pomocných proměnných.

6 CT a CTt jsou kosinové tabulky, navzájem pouze převrácené. To proto, aby se zjednodušily na první pohled zvláštní přemety, které se uplatňují při násobení matic. T je pomocná matice (temp). program DCT256f; { fast image compression using DCT by Libor Tinka } uses Crt,Graph; const kvalita = 15; { <1,+-25> } type Matice = array[0..7,0..7] of real; var d,m, xx,yy,x,y,i,j,k: integer; bmp: file of byte; b: byte; A,DCT,QM,CT,CTt,T: Matice; T1: real; procedure Pal(n,R,G,B: byte); Port[$3C8]:=n; Port[$3C9]:=R; Port[$3C9]:=G; Port[$3C9]:=B; function C(u: real): real; if u=0 then C:=1/sqrt(2) else C:=1; { inicializace grafiky } d:=installuserdriver('svga256',nil);m:=0;initgraph(d,m,'svga256.bgi'); { inicializace palety } for x:=0 to 255 do Pal(x,Round(x*63/255),Round(x*63/255),Round(x*63/255)); { nacteni obrazku } assign(bmp,'exmpl256.bmp');reset(bmp);seek(bmp,1078); for y:=0 to 199 do for x:=0 to 319 do read(bmp,b); PutPixel(x,199-y,b); Close(bmp); { *** KOMPRESE *** } { sestaveni kvantizacni matice } for x:=0 to 7 do QM[x,y]:=1+((1+x+y)*kvalita); { sestaveni kosinove matice } CT[0,j]:=1/sqrt(8); CTt[j,0]:=CT[0,j]; for i:=1 to 7 do CT[i,j]:=sqrt(2/8)*cos((2*j+1)*i*pi/(2*8)); CTt[j,i]:=CT[i,j]; { prochazeni bloku } for yy:=0 to 24 do for xx:=0 to 39 do { nacteni bodu do pixelove matice } for x:=0 to 7 do A[x,y]:=GetPixel(xx*8+x,yy*8+y); { snizeni hodnot } for x:=0 to 7 do A[x,y]:=A[x,y]-128; { ** DCT ** } { T, A, CTt } T[i,j]:=0; for k:=0 to 7 do T[i,j]:=T[i,j]+A[i,k]*CTt[k,j]; { DCT, CT, T } T1:=0; for k:=0 to 7 do T1:=T1+CT[i,k]*T[k,j];

7 DCT[i,j]:=T1; { kvantizace } DCT[i,j]:=Round(DCT[i,j]/QM[i,j]); { dekvantizace } DCT[i,j]:=DCT[i,j]*QM[i,j]; { *** I-DCT *** } { T, DCT, A } T[i,j]:=0; for k:=0 to 7 do T[i,j]:=T[i,j]+DCT[i,k]*CT[k,j]; { A, CTt, T } T1:=0; for k:=0 to 7 do T1:=T1+CTt[i,k]*T[k,j]; T1:=T1+128; if T1<0 then A[i,j]:=0 else if T1>255 then A[i,j]:=255 else A[i,j]:=Round(T1); { vykresleni } for x:=0 to 7 do PutPixel(xx*8+x,yy*8+y,Round(A[x,y])); if KeyPressed then { preruseni } CloseGraph;Halt; readkey; CloseGraph; end. Kosinovou matici vytvoříte podle tohoto pravidla (kódem je to vyjádřeno pod komenářem: sestavení kosinové matice): Rutiny DCT a I-DCT pak mohou být ralizovány zcela jinak, a to násobením matic. Pozor! Zde platí trochu jiná pravidla, než v jakém smyslu se o nich hovořilo u kvantizačních matic. Tady se nenásobí odpovídající hodnoty, ale řádky a sloupce. Symbolicky potom můžeme DCT zapsat jako: V kódu je T a T vyjádřeno jako CT a CTt (CTt je převrácená k CT - transposed). Ve stejném duchu vyjádříme i inverzní DCT: Výsledky q = 1

8 q = 5 q = 10 q = 15 q = 25

9 q = 50 (q >> 25) Závěrem Nevím, nakolik jsem vám osvětlil to sladké tajemství, které skrývá specifikace JPEG, ale snažil jsem se vyjádřit co nejvíce informací na co nejmenší prostor. Pokud jste všemu z mého výkladu neporozuměli (já sám nejsem na DCT odborník a moje znalosti jsou víceméně povrchní), rozhodně nahlédněte do některé z mnoha dokumentací na webu. Já jsem pochytil některé "fígle" ve skvělé knize "Data Compression Book" v elektronické podobě a úvodu do DCT: "Image Compression and the Discrete Cosine Transform" od Kena Cabeena a Petera Genta. Kód můžete volně šířit a modifikovat, od toho jsem ho napsal, jen prosím uveďte mé jméno jako původního autora.

Kosinová transformace 36ACS

Kosinová transformace 36ACS Kosinová transformace 36ACS 10. listopadu 2006 Martin BruXy Bruchanov bruxy@regnet.cz Uplatnění diskrétní kosinové transformace Úkolem transformačního kódování je převést hodnoty vzájemně závislých vzorků

Více

Kompresní algoritmy grafiky. Jan Janoušek F11125

Kompresní algoritmy grafiky. Jan Janoušek F11125 Kompresní algoritmy grafiky Jan Janoušek F11125 K čemu je komprese dobrá? Pokud je třeba skladovat datově náročné soubory. Např. pro záznam obrazu, hudby a hlavně videa je třeba skladovat překvapivě mnoho

Více

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. 1/25 KOMPRESE OBRAZŮ Václav Hlaváč, Jan Kybic Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/ hlavac KOMPRESE OBRAZŮ, ÚVOD

Více

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3.

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3. Komprese dat Radim Farana Podklady pro výuku Obsah Komprese videa a zvuku. Komprese MPEG. Komprese MP3. Komprese videa Velký objem přenášených dat Typický televizní signál - běžná evropská norma pracuje

Více

STRUKTURA RASTROVÝCH DAT

STRUKTURA RASTROVÝCH DAT STRUKTURA RASTROVÝCH DAT dva typy rastrové vrstvy v GIS 1) Digitální obraz TV, počítač, mobil - obrazovka obraz z bodů mapa - mřížka s barevnými plochami 2) Rastrová data data pro analýzu a) binární -

Více

Informační systémy ve zdravotnictví

Informační systémy ve zdravotnictví Informační systémy ve zdravotnictví ZS 2008/2009 Zoltán Szabó Tel.: (+420) 312 608 207 E-mail: szabo@fbmi.cvut.cz č.dv.: 504, 5.p Dnešní přednáška Kódování, komprese 2 1 Komprese dat Cíl komprese: redukovat

Více

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

Rastrové grafické formáty. Václav Krajíček KSVI MFF UK, 2007 Rastrové grafické formáty Václav Krajíček KSVI MFF UK, 2007 Grafické formáty Velké množství Mnoho různých požadavků na uložená data neobrazová data Nativní formáty Například: PSP (Photoshop), XFC (Gimp)

Více

Vodoznačení video obsahu

Vodoznačení video obsahu Vodoznačení video obsahu Bc. Jiří Hošek Email: hosek.j@seznam.cz Ústav Telekomunikací, FEKT, VUT v Brně Tento článek je zaměřen na problematiku vodoznačení a zejména pak na techniky vkládání vodoznaku

Více

Univerzitní licence MATLABu. Pište mail na: se žádostí o nejnovější licenci MATLABu.

Univerzitní licence MATLABu. Pište mail na: se žádostí o nejnovější licenci MATLABu. Univerzitní licence MATLABu Pište mail na: operator@service.zcu.cz se žádostí o nejnovější licenci MATLABu. * násobení maticové K = L = 1 2 5 6 3 4 7 8 Příklad: M = K * L N = L * K (2,2) = (2,2) * (2,2)

Více

Grafické formáty. poznámky k 5. přednášce Zpracování obrazů. Martina Mudrová 2004

Grafické formáty. poznámky k 5. přednášce Zpracování obrazů. Martina Mudrová 2004 Grafické formáty poznámky k 5. přednášce Zpracování obrazů Martina Mudrová 2004 Grafické formáty Proč je tolik formátů pro uložení obrázků? Cíl: uložení obrazových dat ve formě souboru různý charakter

Více

Grafické formáty. Grafické formáty. Komprese rastrového obrazu. Proč je tolik formátů pro uložení obrázků?

Grafické formáty. Grafické formáty. Komprese rastrového obrazu. Proč je tolik formátů pro uložení obrázků? Grafické formáty poznámky k 5 přednášce Zpracování obrazů Martina Mudrová 00 Grafické formáty Proč je tolik formátů pro uložení obrázků? Cíl: uložení obrazových dat ve formě souboru různý charakter obrazu

Více

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

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT Metodický list k didaktickému materiálu Číslo a název šablony Číslo didaktického materiálu Druh didaktického materiálu Autor Téma sady didaktických materiálů Téma didaktického materiálu Vyučovací předmět

Více

Počítačová grafika a vizualizace I

Počítačová grafika a vizualizace I Počítačová grafika a vizualizace I KOMPRESE, GRAFICKÉ FORMÁTY Mgr. David Frýbert david.frybert@gmail.com OSNOVA Barva pro TV Datový tok Bitmapové formáty (JPEG, TIFF, PNG, PPM, ) Formáty videa MPEG-1,2,4,7,21

Více

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut.

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut. 1/24 KOMPRESE OBRAZŮ Václav Hlaváč Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/ hlavac KOMPRESE OBRAZŮ, ÚVOD 2/24 Cíl:

Více

Grafika na počítači. Bc. Veronika Tomsová

Grafika na počítači. Bc. Veronika Tomsová Grafika na počítači Bc. Veronika Tomsová Proces zpracování obrazu Proces zpracování obrazu 1. Snímání obrazu 2. Digitalizace obrazu převod spojitého signálu na matici čísel reprezentující obraz 3. Předzpracování

Více

Komprese videa Praha 2010 Účel komprese Snížení zátěže přenosového média Zmenšení objemu dat pro uložení Metody komprese obrazu Redundance Irelevance Redundantní složka část informace, po jejíž odstranění

Více

Maturitní téma: Počítačová grafika (rastrová a vektorová grafika, grafické programy, formáty)

Maturitní téma: Počítačová grafika (rastrová a vektorová grafika, grafické programy, formáty) Maturitní téma: Počítačová grafika (rastrová a vektorová grafika, grafické programy, formáty) Grafické editory Grafické editory jsou určeny k tvorbě a editaci grafiky neboli obrázků. 2 základní druhy grafických

Více

Rastrový obraz, grafické formáty

Rastrový obraz, grafické formáty Rastrový obraz, grafické formáty 1995-2010 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ RasterFormats Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 35 Snímání

Více

Analýza a zpracování digitálního obrazu

Analýza a zpracování digitálního obrazu Analýza a zpracování digitálního obrazu Úlohy strojového vidění lze přibližně rozdělit do sekvence čtyř funkčních bloků: Předzpracování veškerých obrazových dat pomocí filtrací (tj. transformací obrazové

Více

Zpracování obrazů. Honza Černocký, ÚPGM

Zpracování obrazů. Honza Černocký, ÚPGM Zpracování obrazů Honza Černocký, ÚPGM 1D signál 2 Obrázky 2D šedotónový obrázek (grayscale) Několikrát 2D barevné foto 3D lékařské zobrazování, vektorová grafika, point-clouds (hloubková mapa, Kinect)

Více

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni KTE/TEVS - Rychlá Fourierova transformace Pavel Karban Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni 10.11.011 Outline 1 Motivace FT Fourierova transformace

Více

ZÁPADOČESKÁ UNIVERZITA V PLZNI

ZÁPADOČESKÁ UNIVERZITA V PLZNI ZÁPADOČESKÁ UNIVERZITA V PLZNI FAKULTA PEDAGOGICKÁ KATEDRA VÝPOČETNÍ A DIDAKTICKÉ TECHNIKY KOMPONENTY PRO VÝUKOVÝ ELEKTRONICKÝ MATERIÁL - KOMPRESE V OBLASTI POČÍTAČŮ BAKALÁŘSKÁ PRÁCE Lukáš Smutný Přírodovědná

Více

KOMPRIMACE. aneb Aby to zabralo méně místa

KOMPRIMACE. aneb Aby to zabralo méně místa KOMPRIMACE aneb Aby to zabralo méně místa Komprimace nebo také komprese je jednoduše řečeno sbalení či spakování dat na mnohem menší velikost. Ve skutečnosti se jedná o vypuštění nadbytečné informace takovým

Více

Základy zpracování obrazu

Základy zpracování obrazu Základy zpracování obrazu Tomáš Mikolov, FIT VUT Brno V tomto cvičení si ukážeme základní techniky používané pro digitální zpracování obrazu. Pro jednoduchost budeme pracovat s obrázky ve stupních šedi

Více

Kurz digitální fotografie. blok 1 data/úpravy fotografií

Kurz digitální fotografie. blok 1 data/úpravy fotografií Kurz digitální fotografie blok 1 data/úpravy fotografií Grafické soubory Grafické soubory Obsahují grafická (obrazová) data, která mohou být uložena různými způsoby, tedy formou různých grafických formátů.

Více

DIPLOMOVÁ PRÁCE. Jan Ondruš Bezztrátová komprese JPEG grafiky

DIPLOMOVÁ PRÁCE. Jan Ondruš Bezztrátová komprese JPEG grafiky Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE Jan Ondruš Bezztrátová komprese JPEG grafiky Katedra softwarového inženýrství Vedoucí diplomové práce: Mgr. Jan Lánský Studijní

Více

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky Komprese dat Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI přednášky Statistické metody Jan Outrata (Univerzita Palackého v Olomouci) Komprese dat Olomouc, únor březen 2016 1 / 23 Tunstallův

Více

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMAČNÍCH TECHNOLOGIÍ ÚSTAV POČÍTAČOVÉ GRAFIKY A MULTIMÉDIÍ FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND

Více

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

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO 1 Základní dělení 3D grafika 2D grafika vektorová rastrová grafika 2/29 Vektorová grafika Jednotlivé objekty jsou tvořeny křivkami Využití: tvorba diagramů,

Více

UNIVERZITA JANA EVANGELISTY PURKYNĚ V ÚSTÍ NAD LABEM FAKULTA ŽIVOTNÍHO PROSTŘEDÍ. Katedra informatiky a geoinformatiky

UNIVERZITA JANA EVANGELISTY PURKYNĚ V ÚSTÍ NAD LABEM FAKULTA ŽIVOTNÍHO PROSTŘEDÍ. Katedra informatiky a geoinformatiky UNIVERZITA JANA EVANGELISTY PURKYNĚ V ÚSTÍ NAD LABEM FAKULTA ŽIVOTNÍHO PROSTŘEDÍ Katedra informatiky a geoinformatiky Seminární práce z předmětu Dálkový průzkum Země na téma: JPEG 2000 V Mostě 27.2. 2006

Více

aneb jak se to tam všechno vejde?

aneb jak se to tam všechno vejde? 768 576 KOMPRIMACE aneb jak se to tam všechno vejde? Položme si hned na začátku zdánlivě nepodstatnou otázku: Kolik místa zabere dvouhodinový film na CD nebo DVD? Uvažujme následující příklad: rozlišení

Více

Datové formáty videa a jejich využití. Tomáš Kvapil, Filip Le Manažerská informatika Multimédia

Datové formáty videa a jejich využití. Tomáš Kvapil, Filip Le Manažerská informatika Multimédia Datové formáty videa a jejich využití Tomáš Kvapil, Filip Le Manažerská informatika Multimédia 8.12.2016 Obsah Vlastnosti videa Kontejnery Kodeky Vlastnosti videa Snímková frekvence Datový tok Prokládání

Více

ztrátová odstraňuje zbytečné informace z obrazu. Různé druhy ztrátových kompresních metod se liší podle druhu odstraněných zbytečných informací.

ztrátová odstraňuje zbytečné informace z obrazu. Různé druhy ztrátových kompresních metod se liší podle druhu odstraněných zbytečných informací. Základní rozdělení Obecně každá ztrátová kompresní metoda je založena na odstraňování nadbytečných dat. Rozdělení kompresních metod obrazu: neztrátová -např. hledá delší sekvence stejných prvků nebo statisticky

Více

1. Formáty grafických dat

1. Formáty grafických dat 1. Formáty grafických dat Studijní cíl Tento blok kurzu je věnován problematice grafických formátů, kompresi grafických dat a odlišností u rastrových a vektorových souborů. Doba nutná k nastudování 2 hodiny

Více

Transformace obrazu Josef Pelikán KSVI MFF UK Praha

Transformace obrazu Josef Pelikán KSVI MFF UK Praha Transformace obrazu 99725 Josef Pelikán KSVI MFF UK Praha email: Josef.Pelikan@mff.cuni.cz WWW: http://cgg.ms.mff.cuni.cz/~pepca/ Transformace 2D obrazu dekorelace dat potlačení závislosti jednotlivých

Více

Algoritmus pro generování normálních magických čtverců

Algoritmus pro generování normálních magických čtverců 1.1 Úvod Algoritmus pro generování normálních magických čtverců Naprogramoval jsem v Matlabu funkci, která dokáže vypočítat magický čtverec libovolného přípustného rozměru. Za pomocí tří algoritmů, které

Více

Omezení barevného prostoru

Omezení barevného prostoru Úpravy obrazu Omezení barevného prostoru Omezení počtu barev v obraze při zachování obrazového vjemu z obrazu Vytváření barevné palety v některých souborových formátech Různé filtry v grafických programech

Více

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus

Pracovní listy - programování (algoritmy v jazyce Visual Basic) Algoritmus Pracovní listy - programování (algoritmy v jazyce Visual Basic) Předmět: Seminář z informatiky a výpočetní techniky Třída: 3. a 4. ročník vyššího stupně gymnázia Algoritmus Zadání v jazyce českém: 1. Je

Více

DIGITÁLNÍ FOTOGRAFIE

DIGITÁLNÍ FOTOGRAFIE DIGITÁLNÍ FOTOGRAFIE Petr Vaněček, katedra informatiky a výpočetní techniky Fakulta aplikovaných věd, Západočeská univerzita v Plzni 19. listopadu 2009 1888, Geroge Eastman You press the button, we do

Více

Bitmapová grafika: Vrstvy - interakce (režimy prolnutí)

Bitmapová grafika: Vrstvy - interakce (režimy prolnutí) VY_32_INOVACE_PG3108 ; Mgr. Pavel Hauer ; 5/2012; 1.ročník; bitmapová grafika, Počítačová grafika; názorná pomůcka pro výuku, opakování, doplnění látky Bitmapová grafika: Vrstvy - interakce (režimy prolnutí)

Více

13 Barvy a úpravy rastrového

13 Barvy a úpravy rastrového 13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody

Více

Souřadnicové prostory

Souřadnicové prostory Prostor objektu Tr. objektu Tr. modelu Prostor scény Souřadnicové prostory V V x, y z x, y z z -z x, y Tr. objektu V =V T 1 T n M Tr. modelu Tr. scény x, y Tr. pohledu Tr. scény Tr. pohledu Prostor pozorovatele

Více

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu:

Čtvrtek 8. prosince. Pascal - opakování základů. Struktura programu: Čtvrtek 8 prosince Pascal - opakování základů Struktura programu: 1 hlavička obsahuje název programu, použité programové jednotky (knihovny), definice konstant, deklarace proměnných, všechny použité procedury

Více

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

ZPRACOVÁNÍ OBRAZU přednáška 4 ZPRACOVÁNÍ OBRAZU přednáška 4 Vít Lédl vit.ledl@tul.cz TECHNICKÁ UNIVERZITA V LIBERCI Fakulta mechatroniky, informatiky a mezioborových studií Tento materiál vznikl v rámci projektu ESF CZ.1.07/2.2.00/07.0247,

Více

Rekurze. Pavel Töpfer, 2017 Programování 1-8 1

Rekurze. Pavel Töpfer, 2017 Programování 1-8 1 Rekurze V programování ve dvou hladinách: - rekurzivní algoritmus (řešení úlohy je definováno pomocí řešení podúloh stejného charakteru) - rekurzivní volání procedury nebo funkce (volá sama sebe přímo

Více

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

Multimediální systémy. 03 Počítačová 2d grafika Multimediální systémy 03 Počítačová 2d grafika Michal Kačmařík Institut geoinformatiky, VŠB-TUO Osnova přednášky Rastrová počítačová grafika Metody komprese obrazu Rastrové formáty Vektorová grafika Křivky

Více

BPC2E_C08 Parametrické 3D grafy v Matlabu

BPC2E_C08 Parametrické 3D grafy v Matlabu BPC2E_C08 Parametrické 3D grafy v Matlabu Cílem cvičení je procvičit si práci se soubory a parametrickými 3D grafy v Matlabu. Úloha A. Protože budete řešit transformaci z kartézských do sférických souřadnic,

Více

Komprese obrazu. Verze: 1.5, ze dne: 1. června Václav Hlaváč a Tomáš Svoboda

Komprese obrazu. Verze: 1.5, ze dne: 1. června Václav Hlaváč a Tomáš Svoboda Komprese obrazu Verze: 1.5, ze dne: 1. června 2006 Václav Hlaváč a Tomáš Svoboda Czech Technical University, Faculty of Electrical Engineering Center for Machine Perception, Prague, Czech Republic svoboda@cmp.felk.cvut.cz

Více

Anotace. Jednotky (tvorba a využití), struktury (typ record),

Anotace. Jednotky (tvorba a využití), struktury (typ record), Anotace Jednotky (tvorba a využití), struktury (typ record), medián v lineárním čase. Jednotky oddělený překlad Občas máme obecně využitelné funkce, které chceme používat v různých programech současně.

Více

Globální matice konstrukce

Globální matice konstrukce Globální matice konstrukce Z matic tuhosti a hmotnosti jednotlivých prvků lze sestavit globální matici tuhosti a globální matici hmotnosti konstrukce, které se využijí v řešení základní rovnice MKP: [m]{

Více

Algoritmy komprese dat

Algoritmy komprese dat Algoritmy komprese dat Digitalizace a komprese videa 13.1.2016 NSWI072-18 Úvod Video posloupnost snímků Komprese videa obrazu změna průměrného jasu obrázku» zanedbatelná po dekompresi statického obrazu»

Více

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

POČÍTAČOVÁ GRAFIKA. Počítačová grafika 1 Počítačová grafika 1 POČÍTAČOVÁ GRAFIKA Gymnázium Jiřího Wolkera v Prostějově Výukové materiály z matematiky pro nižší gymnázia Autoři projektu Student na prahu 21. století - využití ICT ve vyučování matematiky

Více

scale n_width width center scale left center range right center range value weight_sum left right weight value weight value weight_sum weight pixel

scale n_width width center scale left center range right center range value weight_sum left right weight value weight value weight_sum weight pixel Změna velikosti obrázku Převzorkování pomocí filtrů Ačkoliv jsou výše uvedené metody mnohdy dostačující pro běžné aplikace, občas je zapotřebí dosáhnout lepších výsledků. Pokud chceme obrázky zvětšovat

Více

Lingebraické kapitolky - Počítání s maticemi

Lingebraické kapitolky - Počítání s maticemi Lingebraické kapitolky - Počítání s maticemi Jaroslav Horáček KAM MFF UK 20 Rozehřívačka: Definice sčítání dvou matic a násobení matice skalárem, transpozice Řešení: (A + B ij A ij + B ij (αa ij α(a ij

Více

Počítačová grafika a vizualizace volné 3D modelování. Maxon CINEMA 4D. Mgr. David Frýbert, 2012

Počítačová grafika a vizualizace volné 3D modelování. Maxon CINEMA 4D. Mgr. David Frýbert, 2012 Počítačová grafika a vizualizace volné 3D modelování Maxon CINEMA 4D Mgr. David Frýbert, 2012 Počítačová grafika a vizualizace volné 3D modelování komprese, grafické formáty Mgr. David Frýbert, 2012 Barva

Více

StatSoft Jak vyzrát na datum

StatSoft Jak vyzrát na datum StatSoft Jak vyzrát na datum Tento článek se věnuje podrobně možnostem práce s proměnnými, které jsou ve formě datumu. A že jich není málo. Pokud potřebujete pracovat s datumem, pak se Vám bude tento článek

Více

BPC2E_C09 Model komunikačního systému v Matlabu

BPC2E_C09 Model komunikačního systému v Matlabu BPCE_C9 Model komunikačního systému v Matlabu Cílem cvičení je vyzkoušet si sestavit skripty v Matlabu pro model jednoduchého komunikačního systému pro přenos obrázků. Úloha A. Sestavte model komunikačního

Více

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem

Test prvočíselnosti. Úkol: otestovat dané číslo N, zda je prvočíslem Test prvočíselnosti Úkol: otestovat dané číslo N, zda je prvočíslem 1. zkusit všechny dělitele od 2 do N-1 časová složitost O(N) cca N testů 2. stačí zkoušet všechny dělitele od 2 do N/2 (větší dělitel

Více

JPEG Formát pro archivaci a zpřístupnění.

JPEG Formát pro archivaci a zpřístupnění. JPEG 2000 Formát pro archivaci a zpřístupnění Přednáška: Přednášející: Kontakt: 3. 12, 2009, AMK2009 Bedřich Vychodil bedrich.vychodil@nkp.cz JPEG2000 a očekávání Představen konsorciem Joint Photographic

Více

Kreslení elipsy Andrej Podzimek 22. prosince 2005

Kreslení elipsy Andrej Podzimek 22. prosince 2005 Kreslení elipsy Andrej Podzimek 22. prosince 2005 Kreslení elipsy v obecné poloze O co půjde Ukázat přesný matematický model elipsy Odvodit vzorce pro výpočet souřadnic důležitých bodů Nalézt algoritmus

Více

25. DIGITÁLNÍ TELEVIZNÍ SIGNÁL A KABELOVÁ TELEVIZE

25. DIGITÁLNÍ TELEVIZNÍ SIGNÁL A KABELOVÁ TELEVIZE 25. DIGITÁLNÍ TELEVIZNÍ SIGNÁL A KABELOVÁ TELEVIZE Digitalizace obrazu a komprese dat. Uveďte bitovou rychlost nekomprimovaného číslicového TV signálu a jakou šířku vysílacího pásma by s dolním částečně

Více

Zobrazování barev. 1995-2015 Josef Pelikán CGG MFF UK Praha. pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/

Zobrazování barev. 1995-2015 Josef Pelikán CGG MFF UK Praha. pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ Zobrazování barev 1995-2015 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ ColorRep 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 18 Barevné schopnosti HW True-color

Více

Reprodukce obrazových předloh

Reprodukce obrazových předloh fialar@kma.zcu.cz Podpořeno z projektu FRVŠ 584/2011 Historie Reprodukční fotografie V reprodukční fotografii se používají různé postupy pro reprodukci pérovek (pouze černá a bílá) jednoduché (viz přednáška

Více

DIGITÁLNÍ VIDEO. pokus o poodhalení jeho neskutečné obludnosti (bez jednosměrné jízdenky do blázince)

DIGITÁLNÍ VIDEO. pokus o poodhalení jeho neskutečné obludnosti (bez jednosměrné jízdenky do blázince) DIGITÁLNÍ VIDEO pokus o poodhalení jeho neskutečné obludnosti (bez jednosměrné jízdenky do blázince) Petr Lobaz, katedra informatiky a výpočetní techniky Fakulta aplikovaných věd, Západočeská univerzita

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Úlohy nad rastrovými daty Daniela

Více

Digitalizace dat metodika

Digitalizace dat metodika Digitalizace dat metodika Digitalizace Jak počítač získá jedničky a nuly, se kterými potom počítá a které je schopen si pamatovat? Pomocí různých přístrojů a zařízení (mikrofon, fotoaparát, skener, kamera,

Více

Dynamické programování

Dynamické programování Dynamické programování prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)

Více

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

CAD II přednáška č. 5. Grafické formáty PCX GIF TIFF BMP PCX GIF TIFF BMP PCX vyvinuto firmou ZSoft bezztrátová komprese každý obrázek obsahuje 128 bitovou hlavičku,následují komprimovaná data nabízítři druhy komprimace podle počtu barev (16-barev, 256-barev

Více

" Furierova transformace"

 Furierova transformace UNIVERZITA JANA EVANGELISTY PURKYNĚ V ÚSTÍ NAD LABEM FAKULTA ŽIVOTNÍHO PROSTŘEDÍ " Furierova transformace" Seminární práce z předmětu Dálkový průzkum Země Marcela Bartošová, Veronika Bláhová OŽP, 3.ročník

Více

Základy algoritmizace a programování

Základy algoritmizace a programování Základy algoritmizace a programování Příklady v MATLABu Přednáška 10 30. listopadu 2009 Řídící instrukce if else C Matlab if ( podmínka ) { } else { } Podmíněný příkaz if podmínka elseif podmínka2... else

Více

Semestrální práce z předmětu KIV/MHS. Komprese statického obrazu pomocí MDCT

Semestrální práce z předmětu KIV/MHS. Komprese statického obrazu pomocí MDCT Semestrální práce z předmětu KIV/MHS Komprese statického obrazu pomocí MDCT Havel Kotál (A07624) Srpen 2013 Obsah 1 Úvod... 2 2 Nástin problematiky ztrátové komprese obrazu... 3 2.1 Podvzorkování sytosti

Více

Kde a jak může být lineární algebra užitečná v praxi.

Kde a jak může být lineární algebra užitečná v praxi. Kde a jak může být lineární algebra užitečná v praxi. Jiří Fiala Všechny příklady jsou zjednodušené tak, aby bylo zřejmé užití nástrojů lineární algebry. Konkrétní implementace jsou však značně složitější.

Více

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty Data v počítači Informační data (elementární datové typy) Logické hodnoty Znaky Čísla v pevné řádové čárce (celá čísla) v pohyblivé (plovoucí) řád. čárce (reálná čísla) Povelová data (instrukce programu)

Více

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

Metodické listy pro kombinované studium předmětu. B_PPG Principy počítačové grafiky Metodické listy pro kombinované studium předmětu B_PPG Principy počítačové grafiky Metodický list č. l Název tématického celku: BARVY V POČÍTAČOVÉ GRAFICE Cíl: Základním cílem tohoto tematického celku

Více

Zadání soutěžních úloh

Zadání soutěžních úloh Zadání soutěžních úloh Kategorie mládež Soutěž v programování 25. ročník Krajské kolo 2010/2011 15. až 16. dubna 2011 Úlohy můžete řešit v libovolném pořadí a samozřejmě je nemusíte vyřešit všechny. Za

Více

Vyhodnocení 2D rychlostního pole metodou PIV programem Matlab (zpracoval Jan Kolínský, dle programu ing. Jana Novotného)

Vyhodnocení 2D rychlostního pole metodou PIV programem Matlab (zpracoval Jan Kolínský, dle programu ing. Jana Novotného) Vyhodnocení 2D rychlostního pole metodou PIV programem Matlab (zpracoval Jan Kolínský, dle programu ing. Jana Novotného) 1 Obecný popis metody Particle Image Velocimetry, nebo-li zkráceně PIV, je měřící

Více

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5 Obsah Obsah 1 Programovací jazyk Pascal 1 1.1 Struktura programu v Pascalu.................... 1 2 Proměnné 2 2.1 Vstup a výstup............................ 3 3 Operátory a některé matematické funkce 5

Více

Moderní multimediální elektronika (U3V)

Moderní multimediální elektronika (U3V) Moderní multimediální elektronika (U3V) Prezentace č. 13 Moderní kompresní formáty pro přenosné digitální audio Ing. Tomáš Kratochvíl, Ph.D. Ústav radioelektroniky, FEKT VUT v Brně Program prezentace Princip

Více

Rekurzivní sledování paprsku

Rekurzivní sledování paprsku Rekurzivní sledování paprsku 1996-2016 Josef Pelikán CGG MFF UK Praha pepca@cgg.mff.cuni.cz http://cgg.mff.cuni.cz/~pepca/ 1 / 21 Model dírkové kamery 2 / 21 Zpětné sledování paprsku L D A B C 3 / 21 Skládání

Více

Druhy grafických formátů a jejich komprese

Druhy grafických formátů a jejich komprese Druhy grafických formátů a jejich komprese Praha 2014 Zpracoval: Ing. Pavel branšovský pro potřebu VOŠ a SŠSE Volně použito podkladů z internetu 1 Provádění komprese obrazových dat dle standardu JPEG v

Více

Barevná konverze u kompresních algoritmů

Barevná konverze u kompresních algoritmů Barevná konverze u kompresních algoritmů Rozdíl ve způsobu, jakým počítač reprezentuje barvy, a jak je vnímá naše oko, je také důvodem pro určitou transformaci do barevného modelu, ve kterém je vhodné

Více

7 Transformace 2D. 7.1 Transformace objektů obecně. Studijní cíl. Doba nutná k nastudování. Průvodce studiem

7 Transformace 2D. 7.1 Transformace objektů obecně. Studijní cíl. Doba nutná k nastudování. Průvodce studiem 7 Transformace 2D Studijní cíl Tento blok je věnován základním principům transformací v rovinné grafice. V následujícím textu bude vysvětlen rozdíl v přístupu k transformacím u vektorového a rastrového

Více

Operace s maticemi. 19. února 2018

Operace s maticemi. 19. února 2018 Operace s maticemi Přednáška druhá 19. února 2018 Obsah 1 Operace s maticemi 2 Hodnost matice (opakování) 3 Regulární matice 4 Inverzní matice 5 Determinant matice Matice Definice (Matice). Reálná matice

Více

Hodnocení soutěžních úloh

Hodnocení soutěžních úloh Terč Koeficient 1 soutěžních úloh Kategorie žáci Soutěž v programování 25. ročník Krajské kolo 2010/2011 15. až 16. dubna 2011 Napište program, který zobrazí střelecký terč dle vzorového obrázku. Jak má

Více

Matice se v některých publikacích uvádějí v hranatých závorkách, v jiných v kulatých závorkách. My se budeme držet zápisu s kulatými závorkami.

Matice se v některých publikacích uvádějí v hranatých závorkách, v jiných v kulatých závorkách. My se budeme držet zápisu s kulatými závorkami. Maticové operace Definice Skalár Představme si nějakou množinu, jejíž prvky lze sčítat a násobit. Pěkným vzorem jsou čísla, která už známe od mala. Prvky takové množiny nazýváme skaláry. Matice Matice

Více

KTE / PPEL Počítačová podpora v elektrotechnice

KTE / PPEL Počítačová podpora v elektrotechnice KTE / PPEL Počítačová podpora v elektrotechnice Ing. Lenka Šroubová, Ph.D. email: lsroubov@kte.zcu.cz http://home.zcu.cz/~lsroubov 3. 10. 2012 Základy práce s výpočetními systémy opakování a pokračování

Více

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011 Získávání a analýza obrazové informace Obraz jako data Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 Osnova 1 Datové formáty obrazu 2 Datové

Více

Aproximace funkcí. x je systém m 1 jednoduchých, LN a dostatečně hladkých funkcí. x c m. g 1. g m. a 1. x a 2. x 2 a k. x k b 1. x b 2.

Aproximace funkcí. x je systém m 1 jednoduchých, LN a dostatečně hladkých funkcí. x c m. g 1. g m. a 1. x a 2. x 2 a k. x k b 1. x b 2. Aproximace funkcí Aproximace je výpočet funkčních hodnot funkce z nějaké třídy funkcí, která je v určitém smyslu nejbližší funkci nebo datům, která chceme aproximovat. Třída funkcí, ze které volíme aproximace

Více

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

Počítačová grafika. OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely Počítačová grafika OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely Vektorová grafika Vektorová grafika Příklad vektorové grafiky Zpět na Obsah Vektorová grafika Vektorový

Více

LZ77 KNIHOVNA PRO KOMPRESI A DEKOMPRESI DAT POMOCÍ ALGORITMU LZ77. Příručka uživatele a programátora

LZ77 KNIHOVNA PRO KOMPRESI A DEKOMPRESI DAT POMOCÍ ALGORITMU LZ77. Příručka uživatele a programátora KNIHOVNA PRO KOMPRESI A DEKOMPRESI DAT POMOCÍ ALGORITMU Příručka uživatele a programátora SofCon spol. s r.o. Střešovická 49 162 00 Praha 6 tel/fax: +420 220 180 454 E-mail: sofcon@sofcon.cz www: http://www.sofcon.cz

Více

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

VY_32_INOVACE_INF4_12. Počítačová grafika. Úvod VY_32_INOVACE_INF4_12 Počítačová grafika Úvod Základní rozdělení grafických formátů Rastrová grafika (bitmapová) Vektorová grafika Základním prvkem je bod (pixel). Vhodná pro zpracování digitální fotografie.

Více

Lineární algebra : Násobení matic a inverzní matice

Lineární algebra : Násobení matic a inverzní matice Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních

Více

Digitální učební materiál

Digitální učební materiál Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_156_IVT Autor: Ing. Pavel Bezděk Tematický okruh:

Více

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2

Operátory pro maticové operace (operace s celými maticemi) * násobení maticové Pro čísla platí: 2*2 * násobení maticové Pro čísla platí: Pro matice - násobení inverzní maticí inv inverzní matice A -1 k dané matici A je taková matice, která po vynásobení s původní maticí dá jednotkovou matici. Inverzní

Více

pi Ludolfovo číslo π = 3,14159 e Eulerovo číslo e = 2,71828 (lze spočítat jako exp(1)), např. je v Octave, v MATLABu tato konstanta e není

pi Ludolfovo číslo π = 3,14159 e Eulerovo číslo e = 2,71828 (lze spočítat jako exp(1)), např. je v Octave, v MATLABu tato konstanta e není realmax maximální použitelné reálné kladné číslo realmin minimální použitelné reálné kladné číslo (v absolutní hodnotě, tj. číslo nejblíž k nule které lze použít) 0 pi Ludolfovo číslo π = 3,14159 e Eulerovo

Více

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

Kde se používá počítačová grafika POČÍTAČOVÁ GRAFIKA Kde se používá počítačová grafika Tiskoviny Reklama Média, televize, film Multimédia Internetové stránky 3D grafika Virtuální realita CAD / CAM projektování Hry Základní pojmy Rastrová

Více

7 = 3 = = Učivo Vysvětlení Př. + pozn. Zlomek = vyjádření části celku 3 část snědla jsem 3 kousky

7 = 3 = = Učivo Vysvětlení Př. + pozn. Zlomek = vyjádření části celku 3 část snědla jsem 3 kousky 0 Učivo Vysvětlení Př. + pozn. Zlomek vyjádření části celku část snědla jsem kousky celek a pizza byla rozdělena na kousky Pojem zlomek Vyjádření zlomku Základní tvar: čitatel a jmenovatel jsou nesoudělná

Více

Programátorská dokumentace

Programátorská dokumentace Programátorská dokumentace Požadavky Cílem tohoto programu bylo představit barevné systémy, zejména převody mezi nejpoužívanějšími z nich. Zároveň bylo úkolem naprogramovat jejich demonstraci. Pro realizaci

Více

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

Identifikátor materiálu: ICT-1-19 Identifikátor materiálu: ICT-1-19 Předmět Informační a komunikační technologie Téma materiálu Komprimace, archivace dat Autor Ing. Bohuslav Nepovím Anotace Student si procvičí / osvojí komprimaci, archivaci

Více

Počítačové zpracování obrazu Projekt Učíme se navzájem

Počítačové zpracování obrazu Projekt Učíme se navzájem Počítačové zpracování obrazu Projekt Učíme se navzájem Tomáš Pokorný, Vojtěch Přikryl Jaroška 15. ledna 2010 Tomáš Pokorný email: xtompok@gmail.com Jaroška 1 Obsah Abstrakt! 4 Začátky! 5 M&M 5 Původní

Více