arvy v počítačové grafice 2. přednáška předmětu Zpracování obrazů Martina Mudrová 24 arvy v počítačové grafice o je barva? světlo = elmg. vlnění v rozsahu 4,3. 4-7,5. 4 Hz viditelná č ást spektra rentgenové záření rádiové vlny zář ení gam a ultrafialové z. infrač ervené z. mikrovlny 22 24 2 8 6 4 2 8 frekvence [Hz] 38 74 vlnová délka [nm] přepočet mezi frekvencí ν a vlnovou délkou λ: kde c... rychlost světla c=3. 8 ms - achromatické světlo - obsahuje všechny frekvence v daném pásmu - zdroj: Slunce, žárovka - rozklad např. optickým hranolem monochromatické světlo obsahuje sv. zdroj jedné barvy s dominantní frekvencí barva tělesa dána schopností pohlcovat a odrážet záření o určitých frekvencích c λ = ν 2 Základní charakteristiky světla arva (barevný tón)... závisí na dominantí frekvenci Jas (svítivost, luminance)...odpovídá intenzitě světla Sytost...čistota barvy světla - čím větší je sytost, tím užší je spektrum barevných frekvencí ve světle obsažených Světlost... velikost achromatické složky ve světle s dominantní frekvencí arevnost (chromaticity)... slučuje sytost a dominantní frekvenci Komplementární barvy: takové 2 barevné zdroje, jejichž složením vznikne bílé světlo 3
Lidské vnímání barev Lidské oko - je schopno rozeznat asi 4 barevných odstínů, - je schopno rozeznat asi 6 úrovní šedé - záleží na světelných podmínkách - záleží na vzdálenosti objektu a oka, rozměru objektu - záleží na osobnosti (věk, únava,...) eceptory v lidském oku: -tyčinky - citlivá vrstva v sítnici, mimo žlutou skvrnu 3 miliónů, umožňují vnímání světla - čípky - všude v sítnici, převážně ve žluté skvrně 6-7miliónů, umožňují barevné vidění, umožňují ostré vidění za den. světla vyřazeny za šera 3 typy: pro,, trichromatické vidění 4 Lidské vnímání barev - příklad počet úrovní šedi: 8 4 2 (Machovy pásy) 5 Příklady optických klamů - vnímání tvarů a barev je ovlivněno také psychikou a dosavadními zkušenostmi osobnosti 6
Vytváření barev v P Jak se vytváří barva na monitoru či tiskárně? základní otázky:. výběr základní množiny barev použitelných k namíchání bar. odstínů 2. volba způsobu míchání základních barev řešení:,6. ed, reen, lue yan, Magenta, Yellow 2. Aditivní čím více barvy, tím,4 světlejší výsledek Subtraktivní čím více barvy, tím tmavší výsledek,2 hranice viditelného spektra...bílé světlo důsledek:,2,4,6,8 λx Α A není možno nalézt takové 3 základní barvy, aby pokryly všechny odstíny viditelného spektra 7 xλ Β,8 barvy A,, : x= A A++ y= A++ z= x+y+z= A++ arevný model jednoduše technicky realizovatelný základní barvy: červená, zelená, modrá aditivní míchání barev A - A...průhlednost (a -channel) použití: monitory, ed Magenta Yellow White lue yan reen,, fialová (magenta),, červená,, modrá,, černá odstíny šedi,, tyrkysová (cyan),, bílá,, zelená,, žlutá 8 arevný model MY základní barvy: tyrkysová, fialová, žlutá subtraktivní míchání barev MYK - K=black - lepší kvalita černé - černá je nejlevnější inkoust použití: tiskárny, yan reen ed lack Yellow lue lue Magenta,, zelená Y,, žlutá,, bílá odstíny šedi,, černá,,,, tyrkysová modrá (cyan),, červená,, fialová M (magenta) 9
arevný model HSV Jak mám namíchat světlejší odstín téže barvy? Model HSV (HS) H barevný tón (hue), <, 36 > udává převládající spektr. barvu S sytost (saturation), <,> určuje čistotu barvy (-příměs jiných barev ) V () jasová hodnota (value, brightness) <,> dána množstvím bezbarvého světla čisté barvy: obvod podstavy (V=, S=) dominantní barvy: plášť (S=) o (2 ) o (24 ) hodnota V Y o W ( ) M barevný tón H K sytost S arevný model HLS Ale lidské oko špatně rozeznává barvy i při přemíře světla... Model HLS H barevný tón (hue), <, 36 > udává převládající spektr. barvu L světlost (lightness), <,> velikost achromatické složky S sytost (saturation) <,> určuje čistotu barvy (-příměs jiných barev ) nejjasnější čisté barvy: obvod podstavy (L=.5, S=) Další barevné modely Modely pro televizní a video techniku: YUV, Y, YIQ -oddělení jasové složky (luminance) Y () a barevné (chrominance) -... YUV (UW)...norma PAL YIQ...norma NTS (Amerika) Y jas I,Q oranžové a modrozelené světlo Y norma SEAM, video, formát JPE Y <,> - jas, <-.5,.5> - modré a červené světlo světlost L W L=.5 převody s modelem jednoduché (maticové násobení) K Y M barevný tón H sytost S 2
Převody mezi barevnými modely Převod - MY: c r m = g y b Převod - HLS, HSV: ed a yan reen a Magenta lue a Yellow }! různé trojúhelníky v IE diagramu (color gamut) jsou komplementární barvy algoritmus - nedefinované hodnoty (např. H pro S=),... 3 arevná reprezentace rastrového obrazu. true color: 3x8 bitů/pixel ~ 6 mil. barev + popř. další bity vyhrazené dalším informacím, 3. intenzitní: odstíny šedi počet odstínů záleží na bitové hloubce, typicky 8bit/pixel~256 odstínů šedi převod z : I=.299r+.587g+.4b 4. monochromatický obraz: bit/pixel - černobílý 3 x -255 2. indexový: použití palety, typicky 3-3-2 nebo vlastní paleta obrázku 5 5 255 255 tyrkys 4 edukce barev Jak mohu omezit bitovou hloubku obrazu? vstup: obraz 3x8 bitů cíl: obraz x8 bitů řešení: použití barevné palety (colormap) original Tvorba barevné palety:. standardní 3-3-2 2. adaptivně vytvářená na základě histogramu požadavky na oblasti v krychli:. stejná velikost 2. stejný počet odstínů 3-3-2 adaptivní 5
.9.8.7.6.5.4.3.2. 2 3 4 5 6.9.8.7.6.5.4.3.2. 2 3 4 5 6.9.8.7.6.5.4.3.2. 2 3 4 5 6 Příklad redukce barev I originál uniformní parametrizace neuniformní parametrizace 6 ozptylování a polotónování = techniky pro omezení barevné palety - použití v barevném i v šedotónovém zobrazení polotónování (halftoning) => dochází k zvětšení obrazu různé rozptylovací matice použití u tiskáren rozptylování (dithering) => => => velikost obrazu je zachována algoritmy: - náhodné rozptýlení - distribuce chyby (Floyd-Steinberg) 7 Příklad redukce barev II originál černo-bílý 256 úrovní šedi černo-bílý s ditheringem 8
Algoritmus náhodného rozptýlení Příklad: Vstup: šedotónový obraz s bit. hloubkou 4 bity/pixel (tj. 6 úrovní šedi - I vst <,5>) íl: Černobílý obraz bitová hloubka bit/pixel ( I výst <,> ) Algoritmus náhodného rozptýlení: - pro každý pixel výst. obrazu: I výst= jestliže I vst >= náh. číslo z <,5> pak I výst = I výst+ vlastnosti algoritmu: pixelys I vst= budou mít I výst= (černý p. zůstane černý) pixelys I vst=5 budou mít I výst= (bílý p. zůstane bílý) pixelys I vst (,5) budou černé či bílé se zachováním jasových poměrů v obrázku díky porovnání I vst s náhodným číslem 9 Příklad Optimalizace barevné palety obrázku Optimalizujete barevnou paletu daného obrázku. U původního i nového obrázku zobrazte také barevnou paletu a složení barev v modelu % zmena barevne palety h=get(,'children'); delete(h) f=figure(); [x,map]=imread('busek.bmp'); [y,optmap]=cmunique(x,map); axes('position',[..6.8.35]), imshow(x,map), axes('position',[..2.8.35]),rgbplot(map) axis([ size(map,) ]),colorbar('horiz') title('original') f2=figure(2); axes('position',[..6.8.35]), imshow(y,optmap), axes('position',[..2.8.35]),rgbplot(optmap) axis([ size(optmap,) ]),colorbar('horiz') title('upravena') Příklad arevné modely.5.5 original 5 5 2 25 5 5 2 25 upravena 2 4 6 8 2 4 6 8 Převeďte daný obrázek do bar. modelu YIQ a do modelu HSV. Zobrazte jednotlivé složky % arevne modely delete(get(,'children')) [x,map]=imread('busek.bmp'); %. rozklad do YIQ barevneho modelu yiq=rgb2ntsc(map); figure(), subplot(22) rgbplot(yiq), title ('YIQ Model ') [y,i,q]=ind2rgb(x,yiq); subplot(222), figure(), imshow(y,256),title('yiq-jas') subplot(223), figure(),imshow(i,256),title('yqi-.bar.sl') subplot(224), figure(), imshow(q,256),title('yqi-2.bar.sl.') % 2. rozklad do barevneho modelu HSV figure(2) hsv=rgb2hsv(map); [h,s,v]=ind2rgb(x,hsv); subplot(222), figure(2),imshow(h,64),title('hsv-hue') subplot(223), figure(2), imshow(s,64),title('hsv-saturation') subplot(224), figure(2), imshow(v,64),title('hsv-value') subplot(22), rgbplot(hsv),title('hsv Model') YIQ Model - 2 YQI-.bar.sl.5 HSV Model 2 HSV-Saturation YIQ-jas YQI-2.bar.sl. HSV-Hue HSV-Value 2 2