GM 5 modelowanie koloru [tryb zgodności](1)


Grafika menedżerska
Grafika menedżerska
Modelowanie koloru
Światło widzialne
fiolet - niebieski - cyan - zielony - żółty - pomarańczowy - czerwony
Spektrum światła białego:
400nm 700nm
Światło widzialne stanowi wąski wycinek fal
elektromagnetycznych z zakresu 400nm 700nm. Fale
dłuższe (podczerwień) i krótsze (nadfiolet) są dla oka
ludzkiego niewidoczne.
Światło białe składa się ze wszystkich długości fal widma.
Wrażenie koloru - czynniki
P()
Widmowy rozkład energii światła
z dominującą długością fali
e2
e1
[nm]



Barwa (ang. hue)  określana przez dominującą długość fali, czynnik jakościowy 
Barwa (ang. hue)  określana przez dominującą długość fali, czynnik jakościowy 
to co odróżnia np. zieleń od błękitu.
Nasycenie (ang. saturation)  określane jako stosunek energii dominującej długości
fali e2 do wypadkowej energii e1 pozostałych fal tworzących widmo świetlne.
Nasycenie (czystość barwy) jest tym większe, im większa jest wartość e2 w
stosunku do e1. Dla e1=0 nasycenie maksymalne, dla e2=e1 nasycenie zerowe
(barwy achromatyczne).
Jasność (ang. ligthness)  określana stopniem podobieństwa barwy do bieli (dla
odcieni jasnych) czy czerni (dla odcieni ciemnych), czynnik ilościowy
proporcjonalny do całki z widmowego rozkładu energii światła.
Barwy podstawowe, barwy dopełniające
Światło białe można uzyskać mieszając w odpowiednich
proporcjach tylko kilka barw: np. barwę czerwoną, zieloną i
niebieską w stosunku 26:66:8.
Takie trójki czy pary barw, które w sumie dają światło białe
nazywamy barwami dopełniającymi. Dla barwy czerwonej
nazywamy barwami dopełniającymi. Dla barwy czerwonej
(656 nm) barwą dopełniającą jest cyjan (492 nm), dla żółtej
(574 nm) niebieska (482 nm).
Barwy, którymi opisujemy inne nazywane są barwami
podstawowymi. Nie istnieje  najlepszy zestaw barw
podstawowych.
Prawa Grassmana
I prawo  prawo trójchromatyczności
Każda dowolna barwa może być odwzorowana za pomocą trzech
liniowo niezależnych barw.
Trzy barwy tworzą układ niezależnych liniowo jeżeli dowolne
zsumowanie dwóch z nich nie może dać trzeciej barwy układu.
uwaga: twierdzenie odwrotne nie jest prawdziwe, tzn. z dowolnie
uwaga: twierdzenie odwrotne nie jest prawdziwe, tzn. z dowolnie
wybranych trzech liniowo niezależnych barw, nie da się utworzyć
wszystkich barw.
Cyan
G B
Yellow Magenta
R
Model RGB Model CMY
Prawa Grassmana
II prawo  prawo ciągłości
W mieszaninie złożonej z dwóch barw, stopniowa zmiana
barwy jednego ze składników pociąga za sobą stopniową
zmianę barwy mieszaniny.
Alternatywne sformułowanie: przy ciągłej zmianie długości
fali promieniowania barwa zmienia się w sposób ciągły.
fali promieniowania barwa zmienia się w sposób ciągły.
III prawo  prawo addytywności
Barwa mieszaniny zależy jedynie od barw jej składników, a
nie od ich składu widmowego.
Modele koloru
niezależne od urządzenia  CIE XYZ, CIE La*b*
ukierunkowane na użytkownika  HLS, HSV(HSB)
ukierunkowane na sprzęt  RGB, CMY, CMYK
Model CIE XYZ
opracowany w 1931 r. przez Międzynarodową Komisję Oświetleniową (CIE)
zdefiniowany na podstawie systemu CIE RGB, w którym doświadczalnie za pomocą
kolorymetru wizualnego określono wartości składowych trójchromatycznych r(),
g(), b() widma światła widzialnego L
składowe r(), g(), b() określają względny udział barw podstawowych
R, G i B potrzebnych do wywołania takiego samego wrażenia jak barwa widmowa
Kolorymetr wizualny
Kolorymetr wizualny
- światła wzorcowe: R[700 nm]
G[546 nm]
B[435 nm]
- L (lambda): światlo badane
- składowe r(), g(), b() wyznaczono dla
L=< 360-830 nm> z krokiem co 1nm
Przestrzeń kolorów CIE XYZ
składowe trójchromatyczne x(), y(), z() otrzymane w wyniku przekształceń
liniowych składowych r(), g(), b() systemu CIE RGB
są nieujemne w całym zakresie widma
składowa y()  informacja o strumieniu światła (luminancja, jasność)
składowe x() i z()  informacja o barwie (chromatyczność)
w przestrzeni CIE XYZ kolory widzialne są zawarte w bryle zbliżonej do
stożka o wierzchołku w początku układu współrzędnych
Składowe trójchromatyczne w układzie CIE XYZ
Diagram chromatyczności CIE
Stożek barw widzialnych Rzuty płaszczyzny X+Y+Z=1
w przestrzeni CIE XYZ w przestrzeni CIE XYZ
Diagram (wykres, trójkąt) chromatyczności CIE jest fragmentem przestrzeni
CIE XYZ wyciętej przez trójkąt ograniczony osiami XYZ leżący na
płaszczyznie X+Y+Z=1, obszar zbliżony kształtem do trójkąta, zamknięty
dwiema liniami - krzywą i prostą.
Diagram chromatyczności CIE
- krawędz części krzywoliniowej - barwy podstawowe widma światła białego
- krawędz dolna - purpury, powstałe przez zmieszanie w różnych proporcjach skrajnych barw
widma światła białego (380nm światła fioletowego i 780nm światła czerwonego)
- barwy w pełni nasycone (czyste) na krawędziach, nienasycone wewnątrz trójkąta
- środek diagramu (C) jest punktem bieli o współrzędnych x=0,333, y=0,333
- barwa zmienia się wraz z kątem obrotu wokół punktu środkowego, nasycenie zmienia się
wzdłuż linii prostych przechodzących przez ten punkt.
Diagram CIE- wykorzystanie
1. Wyznaczanie nasycenia barwy
Nasycenie barwy A jest określone proporcją:
s = AC / BC
2. Dodawanie barw:
Barwę A można otrzymać jako mieszaninę
barwy B i światła białego C w proporcji
określonej przez długości odcinków AC i BC
3. Wyznaczanie barw dopełniających
Dopełniające pary barw wyznaczone są przez
końce dowolnych odcinków przechodzących
przez punkt C (światło białe). (Np. barwy B i G
lub D i E.
4. Wyznaczanie dominującej długości fali
Dominującą długością fali barwy A jest długość
fali barwy B.
Model CIE La*b*
Zawiera najszerszą zdefiniowaną matematycznie
przestrzeń barw, która powstała w wyniku
przekształcenia modelu CIE XYZ. Każdy inny model
koloru da się opisać we współrzędnych La*b*, ale nie
na odwrót. Model jest niezależny od urządzeń
wejścia/wyjścia. Wykorzystywany do obliczeń na
barwach i wyznaczania stopnia podobieństwa barw w
systemach zarządzania barwami CMS (Color
Management System).
Management System).
Wszystkie barwy o jednakowej jasności leżą na
powierzchni kołowej wyznaczonej osiami a* i b*:
- oś a* - barwy od czerwonej do zielonej
- oś b* - barwy od żółtej do niebieskiej
Jasność L zmienia się w kierunku pionowym.
Kolor wynikowy określany jest przez parametry L oraz a* i b*. Zakres zmienności parametrów
definiowany jest w programach graficznych. Np. w CorelDraw:
- a* i b*=<-60;+60>, L=<0,100>
- dostępna liczba kolorów: 121x121x101=1 478741
- różnica między 2 barwami: "E = [("L)2 + ("a*)2 + ("b*)2 ]
Model RGB
Model wykorzystywany:
w sprzęcie tworzącym obraz w wyniku emisji światła:
monitory, projektory, skanery, cyfrowe aparaty
fotograficzne
do sprzętowej reprezentacji (opisu) pikseli w systemach
do sprzętowej reprezentacji (opisu) pikseli w systemach
komputerowych
Kolor wypadkowy powstaje w wyniku addytywnego
mieszania składowych podstawowych R, G, B.
czerwony (Red) - zielony (Green) - niebieski (Blue)
Model RGB
B
B
Kolor - punkt w przestrzeni ograniczonej
sześcianem jednostkowym, definiowany przez
trójkę (r,g,b)
1
1
Kolory podstawowe:
R = (1,0,0)
G = (0,1,0)
G = (0,1,0)
1
1
1
1
G
G
G
G
B = (0,0,1)
0
0
Kolory dopełniające:
C = (0,1,1)
1
1
M = (1,0,1)
Y = (1,1,0)
R
R
Kolor czarny = (0,0,0)
Kolor biały = (1,1,1)
50% szarość = (0.5, 0.5, 0.5)
Sprzętowa reprezentacja koloru
Wartość koloru - liczbowa reprezentacja barwy piksela
Głębokość bitowa - liczba bitów przeznaczona do zapisu
wartości koloru
Obraz binarny::
liczba możliwych kolorów: 2
wartość koloru: { 0, 1 }
głębokość bitowa: 1
Sprzętowa reprezentacja koloru
High Color::



liczba możliwych kolorów: 23 5 lub 2(5+6+5) = 32 768 lub 65 536
wartość koloru: { R, G, B }, gdzie R, G, B "<0, 31> lub <0, 63>
głębokość bitowa: 15 lub 16 bitów (2 bajty)
True Color::
8
3
3




liczba możliwych kolorów: 2 = 16 777 216
liczba możliwych kolorów: 2 8 = 16 777 216
wartość koloru: { R, G, B }, gdzie R, G, B "<0, 255>
głębokość bitowa: 24 bity (3 bajty ze składowymi R,G,B)
Paleta barw  Look-Up Table
11111111 11111111 00000000
R G B
x
ekran
255
.
.
.
.
y
19
111111111111000000 19
pamięć obrazu
0
o głębokości
24-bitowa tabela barw (LUT)
8 bitów/piksel
wskazywana indeksem 8-bitowym
3


Liczba możliwych do uzyskania kolorów: 2 8 = 16 777 216.
Kolor wybierany z palety 256 kolorów.
Zawartość tabeli barw może być w sposób dynamiczny zmieniana.
Wielkość pamięci obrazu
W = K x L x Bpp
gdzie: Bpp  głębokość bitowa (bit per pixel)
K  liczba kolumn obrazu
L  liczba linii obrazu
Obraz binarny:
800
600x1 = 60000B = 60000/1024 KB = 58,6KB


Obraz True Color:
800 24 = 14400000B = 14400000/1024/1024 MB = 1,373MB
600


1280 24 = 3932160B = 3,75MB
1024


Model CMY
Model wykorzystywany w sprzęcie tworzącym obraz w wyniku nakładania
na nośnik barw podstawowych: drukarki, plotery
Kolor wypadkowy powstaje w wyniku substraktywnego mieszania światła
odbitego od podłoża.
Pigment farby/atramentu pochłania określone długości fal, a odbija
pozostałe. Np. fiolet (M) pochłania ze światła białego składową G, odbija
składowe R i B.
Model CMY
Kolor - punkt w przestrzeni ograniczonej
sześcianem jednostkowym, definiowany przez
Y
Y
trójkę (c,m,y)
Kolory podstawowe:
1
1
C = (1,0,0) cyan
M = (0,1,0) magenta
Y = (0,0,1) yellow
Y = (0,0,1) yellow
Kolory dopełniające:
R = (0,1,1)
1
1
M
M
G = (1,0,1)
0
0
B = (1,1,0)
1
1
Kolor czarny = (1,1,1)
Kolor biały = (0,0,0)
C
C
50% szarość = (0.5, 0.5, 0.5)
Model CMYK
W modelu CMY równe ilości trzech barw podstawowych (c=m=y) tworzą neutralną
szarość, która w modelu CMYK jest generowana przez czwartą barwę podstawową K
(blacK - czarny).
C M Y C M Y K
( 0.2 0.5 ) ( 0.2 0.5 )
+ +
( 0.4 0.4 0.4 ) ( 0.4 )
( 0.4 0.6 0.9 ) ( 0.2 0.5 0.4 )
CMY = (c, m, y) CMYK = (c - k, m - k, y - k, k)
Wartość składowej K:
k = min {c, m, y}
Procedury generowania czerni
W celu poprawy jakości druku (kolorystyka, kontrast) barwa
czarna K zastępuje (całkowicie lub częściowo) tą część barw
modelu CMY, które tworzą neutralne odcienie szarości.
Procedury generowania czerni:
Procedury generowania czerni:
UCR (Under Color Removal) - usuwanie koloru neutralnego
GCR (Gray Component Replacement) - zamiana szarego
składnika
UCR (Under Color Removal)
UCR - odtwarza neutralną szarość jedynie przy pomocy czarnego
atramentu. Zamiana CMY na CMYK:
(c,m,y,k) = (c-kmax, m-kmax, y-kmax, kmax)
CMY=(0.4, 0.6, 0.9)
kmax= min {0.4, 0.6, 0.9} = 0.4
kmax= min {0.4, 0.6, 0.9} = 0.4
CMYK=(0.0, 0.2, 0.5, 0.4)
ilość atramentu:
CMY=40%+60%+90%=190%
CMYK=0%+20%+50%+40%=110%
Aby czarny atrament nie powodował
 brudnego wyglądu odcieni jasnych
(świateł), UCR stosuje się od określonego
poziomu neutralnej szarości (od 0.50.6).
CMY CMYK
GCR (Gray Component Replacement)
GCR - odtwarza tylko część neutralnej szarości przy pomocy czarnego
atramentu: Zamiana CMY na CMYK:
(c,m,y,k) = (c-g, m-g, y-g, g)
gdzie: g = s% kmax
s - zadany stopień zastępowania neutralnej szarości.
Przykład:
CMY = (0.4, 0.6, 0.9), s=50%, kmax= 0.4
g = 50% kmax= 0.2
CMYK = (0.2, 0.4, 0.7, 0.2)
ilość atramentu: CMY=40%+60%+90%=190%
CMYK=20%+40%+70%+20%=150%
Uwagi
druk CMYK zawsze obniża łączne zużycie
atramentu/farby w porównaniu z drukiem CMY
drukarki stosują własne procedury generowania czerni, a
więc nie mamy kontroli nad tym procesem
więc nie mamy kontroli nad tym procesem
przy wyznaczaniu wartości neutralnych odcieni szarości
urządzenia drukujące posługują się krzywymi mieszania
atramentów (tonerów) uwzględniającymi ich wpływ na
 brudzenie odcieni jasnych
Model HLS
Definiowanie koloru
Znaczenie i zakresy współrzędnych:
H: hue - barwa o wartościach z przedziału: od 0 do 360 stopni
L: ligthness  jasność z przedziału 0...1 albo 0...100%
S: saturation - nasycenie koloru z przedziału 0...1 albo 0...100%
Model HSV (HSB)
Znaczenie i zakresy współrzędnych:
H: hue - barwa o wartościach z przedziału: od 0 do 360 stopni
S: saturation - nasycenie koloru z przedziału 0...1 albo 0...100%
V(B): value (brigthness)  wartość (jaskrawość) z przedziału 0...1 albo 0...100%
Algorytm przejścia od RGB do HLS
// konwersja RGB -> HLS (wg Travisa)
// zakresy zmiennych: r[0,1], g[0,1], b[0,1], h[0,360], l[0,1], s[0,1]
void rgb2hls (double r, double g, double b, double &h, double &l, double &s)
{
double max = max (max (r,g),b);
double min = min (min (r,g),b);
l = (max + min) / 2 // wyznaczenie jasności l
if (max = min) {
if (max = min) {
s = 0; h = 0; } // wartość niezdefiniowana  kolory achromatyczne
else
{
if (l <= 0.5) s = (max - min)/(max + min); // wyznaczenie nasycenia s
else s = (max -min) / (2 - max - min); //
if (r = max) h = (g - b) / (max - min); // wyznaczenie barwy h
else if (g = max) h = 2 + (b - r) / (max - min); //
else if (b = max) h = 4 + (r - g) / (max - min); //
h = h * 60; // konwersja h na stopnie
if (h < 0.0) h += 360;
}
}
Algorytm przejścia od HLS do RGB
// konwersja: HLS -> RGB (wgTravisa)
// zakresy zmiennych: h[0,360], l[0,1], s[0,1], r[0,1], g[0,1], b[0,1]
// funkcja pomocnicza: value
#include
inline double value (double nl, double n2, double h)
{
{
if (h > 360) h -= 360;
else if (h < 0) h += 360;
if (h < 60) return nl + (n2 - nl) * h / 60.0;
if (h < 180) return n2;
if (h < 240) return nl + (n2 - nl) * (240 - h) / 60.0;
return nl; // (h < 360)
}
Algorytm przejścia od HLS do RGB  cd.
void hls2rgb (double h, double l, double s, double &r, double &g, double
&b)
{
double m1, m2;
if (l <= 0.5)
m2 = l * (1.0 + s);
else
m2 = l + s - l * s;
m2 = l + s - l * s;
m1 = 2.0 * l - m2;
if (s == 0)
r = g = b = l;
else
{
r = value (m1,m2,h + 120); //wyznaczenie wartości r,g,b
g = value (m1,m2,h);
b = value (m1,m2,h - 120);
}
}
Obliczenia w przestrzeni kolorów  modele liniowe
RGB, CMY, CIE XYZ
C1=[r1, g1, b1]; C2=[r2, g2 ,b2]; gdzie: rn, gn, bn Ź <0;1>;
1. Operacje bezpośrednie
dodawanie kolorów
C1+C2=[r1+r2, g1+g2, b1+b2]
mnożenie przez skalar
ąC=[ąr, ąg, ąb] ą Ź <0;1>;
2. Operacje pośrednie
interpolacja liniowa
C=ąC1+ (1- ą)C2 gdzie: C1, C2  kolory znane
ą  współczynnik mieszania
kolorów
C  poszukiwany kolor
Obliczenia w przestrzeni kolorów  modele liniowe
RGB, CMY, CIE XYZ
3. Nakładanie kolorów
wspólna krawędz
C=ą1C1+ą2 C2
C2
gdzie: ą1,ą2 Ź <0;1>  współczynnik pokrycia obszaru
C1
obszary rozłączne
C=ą1C1+ą2 C2
C2
gdzie: ą1,ą2 Ź <0;1>  współczynnik pokrycia obszaru
C1
obszary pokrywające się
C=F1C1+F2C2
C2
gdzie: F1,F2  udział obszarów C1,C2
w wypadkowym pokryciu obszaru
C1
Cieniowanie - porównanie
a) model nieoświetlony
b) cieniowanie stałą barwą wielokąta
c) cieniowanie metodą Gourauda
d) cieniowanie metodą Phonga
Cieniowanie Gourauda
1. Wyznaczenie barwy w wierzchołkach trójkąta:
- wyznaczenie wektorów normalnych do wszystkich wierzchołków
jako średniej arytmetycznej wektorów normalnych wszystkich ścian,
do których ten wierzchołek należy.
- na podstawie wektora normalnego wyznaczenie barwy wierzchołka
korzystając z wybranego modelu oświetlenia
2. Liniowa interpolacja barwy dla wszystkich punktów wielokąta zgodnie
z zaprezentowanymi wzorami.
z zaprezentowanymi wzorami.
Cieniowanie Phonga
Cieniowanie metodą Phonga polega na interpolacji wektora normalnego dla
każdego punktu wielokąta, a następnie wyznaczenie na tej podstawie
intensywności barwy.
Etapy:
1. Wyznaczenie wektorów normalnych do wszystkich wierzchołków wielokąta
jako średniej arytmetycznej wektorów normalnych wszystkich ścian, do
których ten wierzchołek należy.
2. Liniowa interpolacja wartości wektorów normalnych dla wszystkich punktów
2. Liniowa interpolacja wartości wektorów normalnych dla wszystkich punktów
wielokąta (dla wszystkich pikseli):
2.1. Interpolacja wzdłuż krawędzi;
2.2. Interpolacja wzdłuż linii horyzontalnych.
3. Na podstawie wartości wektorów normalnych wyznaczenie barwy dla
wszystkich punktów wielokąta zgodnie z przyjętym modelem oświetlenia


Wyszukiwarka

Podobne podstrony:
Ster Proc Dyskret 6 [tryb zgodności]
PA3 podstawowe elementy liniowe [tryb zgodności]
Wycena spolki przez fundusze PE [tryb zgodnosci]
4 Sieci komputerowe 04 11 05 2013 [tryb zgodności]
I Wybrane zagadnienia Internetu SLAJDY [tryb zgodności]
dyrektorzy mod 1 [tryb zgodności]
Neurotraumatologia wyk??mian1 [tryb zgodności]
Psychologia osobowosci 3 12 tryb zgodnosci
Chemia Jadrowa [tryb zgodnosci]
Wykład 6 [tryb zgodności]
na humanistyczny enigma [tryb zgodności]
BADANIE PŁYNU MOZGOWO RDZENIOWEGO ćw 2 2 slajdy[tryb zgodności]
(cwiczenia trendy?nchmarking [tryb zgodności])id55
5 Popyt konsumenta [tryb zgodno Ťci]
15 Marek Panfil [tryb zgodnosci]
Wyklad 7 Nieparametryczne metody statystyczne PL [tryb zgodności]
Ek w 10, Pomiar dochodu narodowego, 15maj11 [tryb zgodności]
wykład 7i8 4h podstawy zarządzania m jablonski [tryb zgodności]
(Tkanka nerwowa [tryb zgodności])

więcej podobnych podstron