___________________________________ ___________________________________ ___________________________________ ___________________________________
Barvy v počítačové grafice
___________________________________ ___________________________________
2. přednáška předmětu Zpracování obrazů
___________________________________
Martina Mudrová 2004
___________________________________ ___________________________________ ___________________________________
Barvy v počítačové grafice
___________________________________
Co je barva?
___________________________________
světlo = elmg. vlnění v rozsahu 4,3.1014 -7,5 .1014 Hz v id ite ln á č á s t s p e k tra
re n tg e n o v é z á ře n í z á ře n í g a m a
1 02 4
1 02 2
u ltra fia lo v é z .
1 02 0
1 01 8
1 01 6
380
1 01 4
1 01 2
___________________________________
rá d io v é v ln y
m ik ro v ln y
in fra č e rv e n é z .
1 01 0
1 08
740
___________________________________
fre k v e n c e [H z ]
___________________________________
vlnová délka [nm]
přepočet mezi frekvencí ν a vlnovou délkou λ: kde c... rychlost světla c=3.108ms-1
λ=
c
___________________________________
ν
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 2 M. Mudrová, 2004
___________________________________ ___________________________________
Základní charakteristiky světla
___________________________________ Barva (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í
___________________________________
Barevnost (chromaticity) ... slučuje sytost a dominantní frekvenci
___________________________________ Komplementární barvy: takové 2 barevné zdroje, jejichž složením vznikne bílé světlo
___________________________________ 3
M. Mudrová, 2004
___________________________________ ___________________________________
Lidské vnímání barev
___________________________________
Lidské oko - je schopno rozeznat asi 400 000 barevných odstínů, - je schopno rozeznat asi 60 ú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, ...)
___________________________________ ___________________________________ ___________________________________
Receptory v lidském oku: - tyčinky - citlivá vrstva v sítnici, mimo žlutou skvrnu 130 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 R, G, B – trichromatické vidění
___________________________________ ___________________________________ 4
M. Mudrová, 2004
___________________________________ ___________________________________
Lidské vnímání barev - příklad
___________________________________
počet úrovní šedi: 80
40
20
___________________________________
10 (Machovy pásy)
___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ 5 M. Mudrová, 2004
___________________________________ ___________________________________
Příklady optických klamů
___________________________________
- vnímání tvarů a barev je ovlivněno také psychikou a dosavadními zkušenostmi osobnosti
___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ ___________________________________ 6
M. Mudrová, 2004
___________________________________ ___________________________________
Vytváření barev v PG Jak se vytváří barva na monitoru či tiskárně? základní otázky: 1. 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
___________________________________ ___________________________________
ba rvy A, B, C :
xλBΒ
A A+B+C
x=
y=
B A+B+C
0,8
z=
C A+B+C
___________________________________
x+y+z=1
___________________________________
0,6 řešení: 1. Red, Green, Blue Cyan, Magenta, Yellow 0,4 2. Aditivní – čím více barvy, tím světlejší výsledek 0,2 Subtraktivní – čím více barvy, tím tmavší výsledek 0,2 důsledek: není možno nalézt takové 3 základní barvy, aby pokryly všechny odstíny viditelného spektra
___________________________________
C hranice viditelného spektra
___________________________________
C...bílé světlo 0,4
0,6
λxΑ
0,8
___________________________________
A
7
M. Mudrová, 2004
___________________________________ ___________________________________
Barevný model RGB
___________________________________
• jednoduše technicky realizovatelný • základní barvy: červená, zelená , modrá • aditivní míchání barev • RGBA - A...průhlednost (a - channel) • použití: monitory,…
0,1,1 tyrkysová (cyan)
1,0,1 fialová (magenta)
Yellow Green
Red
od
White Magenta
___________________________________
B 0,0,1 m odrá
st
ín
y
še
di
___________________________________
G
___________________________________
1,1,0 žlutá
1,0,0 červená
Blue
___________________________________ 0,1,0 zelená
0,0,0 černá
Cyan
___________________________________
1,1,1 bílá
R
___________________________________ 8 M. Mudrová, 2004
___________________________________ ___________________________________
Barevný model CMY
___________________________________
• základní barvy: tyrkysová, fialová, žlutá • subtraktivní míchání barev • CMYK - K=black - lepší kvalita černé - černá je nejlevnější inkoust • použití: tiskárny,…
Y
1,0,1 zelená
Red
od
Magenta
Cyan
y
š
___________________________________
1,1,1 černá
0,0,0 bílá
Blue Blue Yellow Yellow
ín
i ed
___________________________________ 0,1,0
Black Green
st
___________________________________
0,1,1 červená
0,0,1 žlutá
C
1,0,0 tyrkysová (cyan)
___________________________________
fialová M (magenta)
___________________________________
1,1,0 modrá
___________________________________ 9
M. Mudrová, 2004
___________________________________ Barevný model HSV
___________________________________
Jak mám namíchat světlejší odstín téže barvy?
___________________________________
Model HSV (HSB) H …barevný tón (hue), <0, 360°> udává převládající spektr. barvu S …sytost (saturation), <0°,1> určuje čistotu barvy (-příměs jiných barev ) V (B)…jasová hodnota (value, brightness) <0,1> dána množstvím bezbarvého světla
___________________________________
hodnota V (120 )G
Y
o
___________________________________
o
R(0 )
W
C
M
B (240o)
___________________________________ ___________________________________
barevný tón H
čisté barvy: obvod podstavy (V=1, S=1) dominantní barvy: plášť (S=1)
K
___________________________________
sytost S
___________________________________ 10 M. Mudrová, 2004
___________________________________ ___________________________________
Barevný model HLS Ale lidské oko špatně rozeznává barvy i při přemíře světla...
___________________________________
Model HLS
___________________________________
světlost L
W
H …barevný tón (hue), <0, 360°> udává převládající spektr. barvu
___________________________________
L …světlost (lightness), <0°,1> velikost achromatické složky S …sytost (saturation) <0,1> určuje čistotu barvy (-příměs jiných barev )
G C
Y
nejjasnější čisté barvy: obvod podstavy (L=0.5, S=1)
___________________________________
R
L=0.5
___________________________________
M
B
barevný tón H K
___________________________________
sytost S
___________________________________ 11
M. Mudrová, 2004
___________________________________ ___________________________________
Další barevné modely
___________________________________
Modely pro televizní a video techniku: YUV, YCBCR, YIQ
___________________________________
-oddělení jasové složky (luminance) – Y (B) a barevné (chrominance) - ...
___________________________________
YUV (UWB) ...norma PAL YIQ ....norma NTSC (Amerika) Y – jas I,Q – oranžové a modrozelené světlo
___________________________________
YCBCR… norma SECAM, video, formát JPEG Y ∈ <0,1> - jas CB, CR ∈ <-0.5, 0.5> - modré a červené světlo
___________________________________ ___________________________________
převody s RGB modelem – jednoduché (maticové násobení) 12 M. Mudrová, 2004
___________________________________
___________________________________ ___________________________________
Převody mezi barevnými modely
___________________________________ Převod RGB - CMY:
⎡ c ⎤ ⎡1⎤ ⎡ r ⎤ ⎢ ⎥ ⎢⎥ ⎢ ⎥ ⎢ m⎥ = ⎢1⎥ − ⎢ g ⎥ ⎢⎣ y ⎥⎦ ⎢⎣1⎥⎦ ⎢⎣ b ⎥⎦
Red a Cyan Green a Magenta Blue a Yellow
___________________________________
}
jsou komplementární barvy
___________________________________ ___________________________________
! různé trojúhelníky v CIE diagramu (color gamut)
___________________________________
Převod RGB - HLS, HSV:
___________________________________
algoritmus - nedefinované hodnoty (např. H pro S=0),.....
___________________________________ 13
M. Mudrová, 2004
___________________________________ ___________________________________
Barevná reprezentace rastrového obrazu 1.
true color: 3x8 bitů/1pixel ~ 16 mil. barev + popř. další bity vyhrazené dalším informacím,
2.
R
G
___________________________________
B
___________________________________ ___________________________________
3 x 0-255
indexový: použití palety, typicky 3-3-2 nebo vlastní paleta obrázku
R
5
G
B
5 0 255 255
___________________________________ tyrkys
___________________________________ 3.
intenzitní: odstíny šedi – počet odstínů záleží na bitové hloubce, typicky 8bit/1pixel~256 odstínů šedi převod z RGB:
4.
___________________________________
I=0.299r+0.587g+0.114b
___________________________________
monochromatický obraz: 1bit/1pixel - černobílý
14
M. Mudrová, 2004
___________________________________ ___________________________________
Redukce barev
___________________________________
Jak mohu omezit bitovou hloubku obrazu? vstup: obraz RGB 3x8 bitů
original
R G B
cíl: obraz RGB 1x8 bitů
G
řešení: použití barevné palety (colormap)
R
___________________________________
B
Tvorba barevné palety: R
G
B
1.
standardní 3-3-2
2.
adaptivně vytvářená – na základě histogramu požadavky na oblasti v RGB krychli: 1. stejná velikost 2. stejný počet odstínů
3-3-2 G R
G
M. Mudrová, 2004
___________________________________ ___________________________________
B
adaptivní
R
___________________________________
___________________________________ ___________________________________
15
___________________________________ ___________________________________
Příklad redukce barev I uniformní parametrizace
originál
neuniformní parametrizace
___________________________________ ___________________________________ ___________________________________ ___________________________________
R G B
B
G
R
B
___________________________________
B G
R
G
R
___________________________________
1 1
1
0 .9
0 .9
0 .8
0 .8
0 .7
0 .7
0 .6
0 .6
0 .5
0 .5
0 .5
0 .4
0 .4
0 .4
0 .3
0 .3
0 .2
0 .1 0
10
20
30
40
50
60
0
___________________________________
0 .3
0 .2
0 .2 0 .1 0
0 .9 0 .8 0 .7 0 .6
0 .1 10
20
30
40
50
60
0
0
10
20
30
40
50
60
16 M. Mudrová, 2004
___________________________________ ___________________________________
Rozptylová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)
___________________________________ ___________________________________ ___________________________________
17 M. Mudrová, 2004
___________________________________ Příklad redukce barev II originál
___________________________________ 256 úrovní šedi
___________________________________ ___________________________________ ___________________________________
černo-bílý
___________________________________
černo-bílý s ditheringem
___________________________________ ___________________________________ ___________________________________ 18 M. Mudrová, 2004
___________________________________ Algoritmus náhodného rozptýlení
___________________________________ ___________________________________
Příklad: Vstup: šedotónový obraz s bit. hloubkou 4 bity/pixel (tj. 16 úrovní šedi - Ivst∈<0,15>)
___________________________________
Cíl: Černobílý obraz – bitová hloubka 1bit/pixel ( Ivýst ∈ <0,1> )
___________________________________
Algoritmus náhodného rozptýlení: - pro každý pixel výst. obrazu:
___________________________________
Ivýst=0 jestliže Ivst >= náh. číslo z <0,15> pak Ivýst = Ivýst+1
___________________________________
vlastnosti algoritmu: • pixely s Ivst=0 budou mít Ivýst=0 (černý p. zůstane černý) • pixely s Ivst=15 budou mít Ivýst=1 (bílý p. zůstane bílý) • pixely s Ivst ∈(0,15) budou černé či bílé se zachováním jasových poměrů v obrázku díky porovnání Ivst s náhodným číslem
___________________________________ ___________________________________
19 M. Mudrová, 2004
___________________________________ ___________________________________
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 RGB
___________________________________
% zmena barevne palety h=get(0,'children'); delete(h)
___________________________________
original 1
f1=figure(1); [x,map]=imread('busek.bmp'); [y,optmap]=cmunique(x,map); axes('position',[0.1 0.6 0.8 0.35]), imshow(x,map),
0.5 0
50 50
100 100
150 150
200 200
___________________________________
250 250
___________________________________
axes('position',[.1 .2 .8 .35]),rgbplot(map) axis([1 size(map,1) 0 1]),colorbar('horiz') title('original') f2=figure(2); axes('position',[0.1 0.6 0.8 0.35]), imshow(y,optmap),
upravena
___________________________________
1 0.5 0
20 20
axes('position',[.1 .2 .8 .35]),rgbplot(optmap) axis([1 size(optmap,1) 0 1]),colorbar('horiz') title('upravena')
40 40
60 60
80 80
100 100
___________________________________ 20
M. Mudrová, 2004
___________________________________ ___________________________________
Příklad
___________________________________
Barevné modely Převeďte daný obrázek do bar. modelu YIQ a do modelu HSV. Zobrazte jednotlivé složky % Barevne modely delete(get(0,'children')) [x,map]=imread('busek.bmp'); % 1. rozklad do YIQ barevneho modelu yiq=rgb2ntsc(map); figure(1), subplot(221) rgbplot(yiq), title ('YIQ Model ') [y,i,q]=ind2rgb(x,yiq); subplot(222), figure(1), imshow(y,256),title('YIQ-jas') subplot(223), figure(1),imshow(i,256),title('YQI-1.bar.sl') subplot(224), figure(1), imshow(q,256),title('YQI-2.bar.sl.')
YIQ Model
___________________________________
YIQ-jas
1 0 -1
0
100 200 YQI-1.bar.sl
___________________________________
YQI-2.bar.sl.
___________________________________ HSV Model
___________________________________
HSV-Hue
1
% 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(221), rgbplot(hsv),title('HSV Model') M. Mudrová, 2004
0.5 0
0
100 200 HSV-Saturation
___________________________________
HSV-Value
___________________________________ 21