WYKŁAD IV
Dr inż. Sławomir Przyłucki
spg@spg51.net
Odbiór obrazu
Barwa i atrybuty barwy. Przezroczystość.
Sprzętowe modele koloru (RGB,CMY,CMYK)
Cechy koloru obrazu i ich wzajemne relacje
Modele HSV oraz HSL
Mieszanie kolorów i korekcja gamma
MATERIAŁY: ftp://ftp.spg51.net
User: mpns
Passwd: mpns2011
NA POCZĄTEK - ŚWIATŁO
Światło białe składa się ze wszystkich długości fal
elektromagnetycznych z zakresu widzialnego (400nm ÷ 700nm),
występujących w nim w równych ilościach.
WRAŻENIE BARWY
Światło może docierać do oka
bezpośrednio ze źródła światła
lub po odbiciu od obiektu.
Postrzegana barwa obiektu
zależy od barwy światła i od
tego, które długości fal potrafi
odbijać.
Na siatkówce oka tworzony jest
pomniejszony
i
odwrócony
obraz
obserwowanego obiektu.
Receptory siatkówki przekształcają
informację o natężeniu światła i długości
fal świetlnych na impulsy, które przez
nerw wzrokowy przesyłane są do mózgu.
Mózg interpretuje te informacje jako
jasność i barwę.
SIATKÓWKA (ANG. RETINA)
czopki (ang. Cones) − 3 rodzaje, reagujące na 3 długości fal, ok. 6
mln, skupione wokół żółtej plamki, niewielka czułość
pręciki (ang. Rodes) − 1 rodzaj, reakcja na poziom jasności, ok.
100 mln, na całej siatkówce,duża czułość nawet na słabe światło
PRAWA GRASSMANA I HELMHOLZA
Prawa Grassmana:
przy dowolnej ciągłej zmianie widma fal świetlnych barwa
zmienia się w sposób ciągły (
Ciągłość
)
przy składaniu promieniowań, barwa sumy nie zależy od składu
widmowego składników a jedynie od ich barwy (
Suma
)
dowolną barwę da się przedstawić jako sumę trzech liniowo
niezależnych barw (
Trójchromatyczność
)
Prawo Helmholza:
Dowolną mieszaninę świateł monochromatycznych można zastąpić
światłem
białym
zmieszanym
z
innym
światłem
monochromatycznym
PRAWA GRASSMANA I HELMHOLZA
Pojęcie barwy ma dwa znaczenia.
jest psychofizyczną cechą percepcji wzrokowej i jako taka
pozostaje jedynie w sferze doznań subiektywnych.
jest wielkością próbującą zobiektywizować i usystematyzować
opis tych wrażeń.
W teorii koloru wyróżnia się trzy atrybuty barwy, które pozwalają
na jej jednoznaczną identyfikację.
odcień (hue), nasycenie (saturtion) i jaskrawość (brightness).
Dowolne trzy liniowo niezależne barwy nazywamy
barwami podstawowymi.
Dwie barwy, których zmieszanie daje światło białe, określa się jako
barwy dopełniające.
ATRYBUTY BARWY
Odcień barwy (kolor, ton, Hue) – różnica
jakościowa barwy (np. czerwony, zielony),
określana w fizyce przez dominującą długość fali.
Nasycenie (Saturation) - odstępstwo barwy od bieli
(np. czerwień, róż, biel), określane w fizyce przez
czystość pobudzenia (e2-e1)
Jasność (wartość, Value) - wskazuje czy barwa jest
bliższa bieli czy czerni (np. czysta biel, szarości,
czerń), w fizyce jest proporcjonalna do całki z
widmowego rozkładu energii.
MODEL KOLORU RGB
Każdy kolor jest reprezentowany przez 3 składowe:
czerwoną (R), zieloną (G), niebieską (B)
czerwoną (R), zieloną (G), niebieską (B)
SPRZĘTOWE TRYBY BARWY RGB
Wartość barwy
- liczbowa reprezentacja barwy piksela.
Głębokość bitowa
- liczba bitów przeznaczona w danym trybie RGB
do zapisu wartości barwy.
Obraz dwubarwny:
liczba możliwych do uzyskania barw: 2,
wartość barwy: { 0, 1},
głębokość bitowa: 1.
MODEL KOLORU RGB A TABELE LUC
MODEL KOLORU RGB - CD
TRUE COLOR
liczba możliwych do uzyskania barw: 2 8×3 = 16 777216,
wartość barwy: { R, G, B }, gdzie R, G, B <0,255>,
∈
głębokość bitowa: 24.
HI COLOR
liczba możliwych do uzyskania barw: 23 × 5 = 32 768 lub 2(5+6+5) =
65 536,
wartość barwy: { R, G, B },
głębokość bitowa: 15 lub 16.
Obraz dwubarwny:
800×600 bitów = 60000B = 60000/1024 KB = 58,6KB
Obraz True Color:
800×600×24 = 1,37 MB, 1024×768×24 = 2,25 MB
MODEL KOLORU RGB - CD
inne kolory tworzą się na zasadzie dodawania
(model addytywny)
(model addytywny)
liczbę możliwych kolorów określa poziom zmienności każdej ze
składowych
− 16 bitów (5-6-5) – 65536 kolorów
− 24 bity (8-8-8) – ok. 16,7 mln kolorów
− 32 bity, jak wyżej, 8 bitów nieużywane lub kanał alfa
− 48 bitów (16-16-16), zastosowania profesjonalne
MODEL KOLORU CMY
Pigment farb/atramentów pochłania określone długości fali, a odbija
pozostałe. Dlatego farby druku C, M, Y nazywa się
subtraktywnymi.
MODEL KOLORU CMY - CD
MODEL KOLORU 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).
Aby zamienić reprezentację barwy z modelu RGB do CMY
stosujemy wzory:
RGB r , g , b =CMY 1−r ,1−g , 1−b
Aby dokonać zamiany z CMY do RGB używamy:
CMY c , m , y =RGB 1−c ,1−m , 1− y
CMY na CMYK zamieniamy w poniższy sposób:
k =min c , m , y
CMYK c−k , m−k , y−k , k =CMY c , m , y
KONWERSJA POMIĘDZY MODELAMI
SPRZĘTROWYMI
Drukarki komputerowe drukują na rastrze małe punkty o stałej
wielkości. Aby uzyskać odcienie koloru stosuje się rastrowanie
bazujace na mikrowzorach lub stochastyczne.
Maszyny drukarskie drukują w
oczkach rastra punkty o różnej
wielkości, nazywane półtonami.
DRUKOWANIE KOMPUTEROWE
DRUKOWANIE KOMPUTEROWE BARWNE
Kolorowe materiały ilustracyjne CMYK rozbija się dla druku
nakładowego na cztery obrazy, tzw.
wyciągi (separacje) barwne
.
Każdy wyciąg jest utworzony na oddzielnym rastrze.
Jeżeli dany obraz zawiera więcej kolorów niż jest w stanie
wyświetlić konkretne urządzenie stosuje się wówczas tzw.
dithering
.
Dithering polega na takim wyświetlaniu kolorów dostępnych na
danym urządzeniu, aby dawały złudzenie innego koloru.
Na przykład na drukarce umieszcza się nieregularny wzorek z
kropek w kolorach dostępnego atramentu, tak aby z większej
odległości zlewały się w jeden obszar o kolorze niedostępnym w
kałamarzach drukarki.
Na wyświetlaczach LCD wyświetla się dostępne kolory jeden po
drugim, na tyle szybko, aby oko rejestrowało pewien kolor pośredni.
Odpowiada za to tzw.
moduł RFC
. Od jego sprawności zależy
jakość wyświetlanych barw.
DITHERING
Modele RGB, CMY i CMYK są bardzo wygodne z punktu widzenia
reprezentacji barwy na urządzeniu wyjściowym (ekran, drukarka),
niezbyt dobrze jednak odpowiadają sposobowi widzenia barw przez
człowieka. Również niektóre transformacje obrazu wykonywane w
tych modelach powodują zafałszowanie barw. Opracowano kilka
innych modeli mających zapobiec tym niedogodnościom.
ODCIEŃ (hue)
Każdej barwie można przyporządkować pewną liczbę, która
jednoznacznie określa jej kolor (najczęściej jest to długość
odpowiadającej jej fali świetlnej). Pozycję wybranej barwy na
tzw. kole barw określa się jako H (hue). Najlepsze polskie
tłumaczenie tego słowa to odcień albo właśnie kolor.
MODELE KOLORU – RAZ JESZCZE
NASYCENIE (saturation)
Każda barwa może posiadać różny stopień nasycenia. Od zera, dla
którego odnosimy jedynie wrażenie jasności i nie potrafimy
rozróżnić koloru do jeden, gdy barwa jest w pełni nasycona.
Parametr ten nazywamy nasyceniem
S (saturation)
.
JASNOŚĆ (lightness)
Gdy odrzucimy wrażenie koloru, punkty obrazu możemy rozróżnić
jedynie według ich jasności
L (lightness)
.
JASKRAWOŚĆ (value, brightness)
Stopień zawartości światła białego w danej barwie nazywamy
jaskrawością i mierzymy przy użyciu jednego z dwóch
równoważnych parametrów
V (value)
lub
B (brightness)
.
MODELE KOLORU – RAZ JESZCZE - CD
Trzy
niesąsiadujące
ze
sobą
wierzchołki
odpowiadają
podstawowym kolorom w modelu RGB. Z każdym z tych
wierzchołków możemy związać romb.
Rozpatrzmy dla przykładu górny romb związany z wierzchołkiem R.
Wszystkie punkty w obrębie tego rombu będą miały składową
R=255. Składowe G i B będą się natomiast zmieniać od 0 do 255 w
zależności od tego jak daleko dany punkt leży od sąsiednich
rombów związanych ze kolorami G i B.
Przy takiej konstrukcji
sześciokąta kolorów
automatycznie w
pozostałych trzech
wierzchołkach
otrzymujemy kolory
podstawowe modelu
CMY.
SZEŚCIAN KOLORÓW
KOŁO KOLORÓW
W tym przypadku barwa określana jest poprzez podanie
współrzędnych (w układzie biegunowym) punktu wskazującego
określoną barwę. Współrzędnymi są: kąt - określający właściwy odcień
barwy (hue) oraz promień - określający nasycenie barwy (saturation).
Kąt równy zero odpowiada kolorowi czerwonemu, kąt 120º to kolor
zielony, a 240º to niebieski. Promień równy zero to zerowe nasycenie,
a maksymalny promień odpowiada maksymalnemu nasyceniu.
Jak łatwo zauważyć, zarówno na
sześciokącie kolorów jak i na kole
kolorów nie ma informacji o jasności
danej barwy (lub o jej jaskrawości). W
celu uwidocznienia tej informacji
stosuje się dwie techniki: albo rysuje
się
szereg
kół
o
różnych
jasnościach,albo rysuje się jedno koło
o standardowej jasności, na którym
prezentuje się jedynie kolor i
nasycenie, a jasność zaznacza się na
obecnym obok koła pasku jasności
Z każdym punktem obrazu, oprócz informacji o kolorze można
związać dodatkową informację o przezroczystości tego punktu.
Informacje o stopniu przezroczystości zawarte są w tzw.
kanale alfa.
Obraz może więc zawierać cztery kanały: red, green, blue & alpha,
PRZEZROCZYSTOŚĆ
Jeśli a oznacza stopień przezroczystości (od 0 do 1) to kolor wynikowy
można zapisać jako:
RGB a r T 1−a r O , a g T 1−a g O , a bT 1−a bO
⋅
⋅
⋅
⋅
⋅
⋅
gdzie indeks T oznacza składową tła, a indeks O składową obrazu.
Kanały alfa wykorzystywane są przy nakładaniu obrazu na tło,
którym w ogólności może być inny obraz. Kolor wynikowy jest
wówczas mieszanką kolorów tła i koloru danego punktu obrazu, przy
czym mieszaniu ulegają poszczególne składowe każdej z barw.
PRZEZROCZYSTOŚĆ - CD
Dla przykładu, w pierwszym przypadku, wartość kanału alfa wynosi
0.2 oznacza to, że przezroczystość obrazu na poziomie 20%, czyli
tylko 20% tła znajdzie się w obrazie końcowym. Tak więc każdą ze
składowych tła bierzemy w 20% (obrazek D), a każdą ze
składowych nakładanego obrazka bierzemy w 80% (obrazek C). Po
zsumowaniu otrzymamy obrazek będący mieszaniną w zadanych
proporcjach.
Umowny początek koła kolorów znajduje się w miejscu
odpowiadającemu czystej czerwieni, czyli w modelu RGB kolor ten
zapiszemy (1,0,0).
Kolor czerwony ma zatem odcień równy zero (H=0). Czysty kolor
zielony (0,1,0) znajduje się na linii ustawionej pod kątem 120º do
kierunku czerwonego, więc odcień zieleni jest równy 120 (H=120).
Kolor niebieski (0,0,1) natomiast ulokowany jest pod kątem 240º
stopni do czerwieni, więc jego odcień to 240.
KOŁO KOLORÓW – PRZYKŁAD
Każdy obszar ma pewne cechy charakterystyczne:
w obszarach 1 i 6 wartość składowej czerwonej jest max,
w obszarach 2 i 3 wartość składowej zielonej jest max, a w obszarach 4 i 5
wartości max przyjmuje składowa niebieska,
w obszarze 1 składowa zielona rośnie od wartości min do max,
w obszarze 2 składowa czerwona maleje od wartości max do min
w obszarze 3 składowa niebieska rośnie od wartości min do max
w obszarze 4 składowa niebieska maleje od wartości max do min
w obszarze 5 składowa czerwona rośnie od wartości min do max
w obszarze 6 składowa niebieska maleje od wartości max do min.
KOŁO KOLORÓW – PRZYKŁAD - CD
Rysunek przedstawia on "rozwinięcie" koła kolorów z zaznaczonymi
wartościami
odcienia
oraz
zachowaniem
poszczególnych
składowych w poszczególnych obszarach.
1. Znajdź najmniejszą i największą wartość spośród składowych RGB.
2. Na podstawie tych wartości określ obszar, w którym jest dany kolor.
3. Wartość odcienia wyliczamy z proporcji udziału trzeciej (pozostałej)
składowej w porównaniu z pozostałymi dwoma
ZAMIANA RGB NA H (ODCIEŃ)
Jeśli wszystkie trzy składowe RGB mają jednakowe wartości, to wartość
odcienia staje się nieokreślona. Najczęściej, dla wygody, przypisuje się
jej wartość zero.
Dany jest kolor o współrzędnych RGB(69,198,147). Postępujemy
zgodnie z algorytmem. Najmniejsza wartość min=69 dla koloru
czerwonego, największa wartość max=198 dla koloru zielonego. Taka
kombinacja wartości najmniejszej i największej występuje w obszarze
trzecim, a więc poszukiwana wartość odcienia będzie leżeć gdzieś
pomiędzy 120 a 180. Wartość odcienia wyliczymy z proporcji:
H=156
Tylko obszary od 1 do 4 z koła kolorów występują w widmie światła
białego. Kolorom z obszarów 5 i 6 nie da się przyporządkować pojedynczej
długości fali, a mimo to mają swoją liczbę określającą ich odcień. Odcień z
zakresu od 0 do 240 opisuje kolory występujące w widmie światła białego.
Są to tzw.
barwy proste (monochromatyczne, widmowe)
. Kolory z zakresu
240 do 360 można uzyskać jedynie przez mieszanie w różnych
proporcjach światła niebieskiego i czerwonego. Barwy te, razem z barwami
prostymi nazywane są
barwami zasadniczymi (czystymi)
.
PRZYKŁAD I PŁYNĄCE WNIOSKI
Określa ilość światła białego zmieszanego z barwą (w skali 0%-100%)
Światło białe to takie, w którym wszystkie składowe RGB mają
jednakowe maksymalne wartości.
Dla dowolnej barwy:
(R,G,B) = (R-m,G-m,B-m) + (m,m,m); gdzie
m=min(R,G,B)
Przykład:
(R,G,B)=(150,196,234)=(0,46,84)+(150,150,150)
NASYCENIE (SATURATION)
składnik chromatyczny (związany z barwą)
składnik achromatyczny (związany z ilością światła)
Barwy w których można wyróżnić pierwszy składnik nazywane są
barwami chromatycznymi
Wszystkie barwy posiadające tylko drugi składnik nazywane są
barwami achromatycznymi
Nasycenie, możemy zatem potraktować, jako miarę udziału
czynnika chromatycznego w barwie. Barwy achromatyczne mają
nasycenie równe zero.
(
)
100%
B)
G,
max(R,
B)|
G,
max(R,
B
G,
R,
min
|
Saturation
∗
−
=
ZAMIANA RGB NA NASYCENIE
NASYCENIE (SATURATION) - CD
Jasność (lightness)
określa zmianę jasności barwy, która
pociąga za sobą zmiany nasycenia
Jaskrawość (brightness,
value)
określa zmianę jasności barwy, która
nie
pociąga
za
sobą
zmiany
nasycenia
Zerowa jasność odpowiada czerni maksymalna jasność odpowiada
bieli
(
)
2
B)
G,
max(R,
B
G,
R,
min
Lightness
+
=
JASNOŚĆ I JASKRAWOŚĆ
Jaskrawość odpowiada wielkości fizycznej zwanej luminancją,
która określa natężenie światła wysyłanego lub przechodzącego
przez daną powierzchnię.
W modelu RGB za wartość luminancji, a zatem i jaskrawości,
przyjmuje się wartość największej składowej RGB.
Luminancja
– wielkość fotometryczna będąca miarą natężenia
oświetlenia padającego w danym kierunku. Opisuje ilość światła,
które przechodzi lub jest emitowane przez określoną powierzchnię i
mieści się w zadanym kącie bryłowym. Jest to miara wrażenia
wzrokowego, które odbiera oko ze świecącej powierzchni.
Jednostką luminancji w układzie SI jest
kandela na metr kwadratowy
(cd/m2)
lub jej pochodna o nazwie
nit (nt)
.
JASNOŚĆ I JASKRAWOŚĆ - CD
Regulując jasność monitora tak naprawdę zmieniamy jego
jaskrawość.
Z kolei w wielu programach graficznych nawet jeśli coś się nazywa
brightness to i tak oznacza zmianę jasności, a nie jaskrawości. Nie
dziwmy się więc, że programowe przyciemnienie i jednoczesne
sprzętowe rozjaśnienie w tym samym stopniu nie zachowa
poprawnej kolorystyki obrazu.
Jeżeli przykładowa barwa opisana jest trójką liczb (131,214,58) to jej
jaskrawość (luminancja) będzie równa 214. Jeżeli dla monitora, na
którym ten kolor jest wyświetlany, maksymalna luminancja wynosi np.
300cd/m2 to rzeczywista luminancja Y tego koloru będzie równa:
JASNOŚĆ I JASKRAWOŚĆ - CD
Chrominancja
- Składowa analogowego lub cyfrowego sygnału obrazu
kolorowego odpowiadająca za odcień oraz nasycenie koloru.
Reprezentacja obrazu kolorowego przy pomocy składowej luminancji i
dwóch składowych chrominancji ma wiele uzasadnień technicznych i
fizjologicznych:
oko ludzkie jest mniej wrażliwe na detale (szybkie zmiany) odcienia i nasycenia
koloru niż na szybkie zmiany jasności
w obrazach kolorowych naturalnego pochodzenia składowe chrominancji
zmieniają się w sposób mniej gwałtowny niż luminancja
składowe chrominancji mają mniejszą dynamikę w porównaniu z luminancją
składowe luminancji i chrominancji są wzajemnie mniej skorelowane niż
składowe RGB, zatem ta pierwsza reprezentacja zmniejsza redundancję
reprezentacja luminancja + chrominancja jest kompatybilna z czarno-białą
reprodukcją obrazu, która wykorzystuje samą luminancję.
JAK WIDZI OKO ? - CHROMINANCJA
PERCEPCJA JASNOŚCI
Prawo Webera-Fechnera – człowiek dostrzega różnicę kolorów na
podstawie stosunku ich intensywności a nie różnicy
Po lewej skala liniowa !!! A po prawej logarytmiczna !!!
PUŁAPKI W PERCEPCJI JASNOŚCI
Mózg postrzega
jasność w kontekście
otoczenia
Czy wewnętrzny prostokąt
zmienia jasność ?
Granica jasności stwarza iluzję jasnych pasków po lewej stronie pasków i ciemnych
pasków po prawej
Efekt łanu (ang. cornsweet)
PUŁAPKI W PERCEPCJI JASNOŚCI - CD
model HSL
W modelu HSL każdą barwę opisuje trójka liczb, z których pierwsza
określa odcień odpowiadający danej barwie, druga jej nasycenie a
trzecia jasność.
model HSV
W modelu HSV każdą barwę opisuje trójka liczb z których pierwsza
określa odcień odpowiadający danej barwie, druga jej nasycenie a
trzecia jaskrawość.
Model HSV użyteczny jest na przykład przy rozjaśnianiu obrazów,
które z natury są dość jasne (np. słoneczny dzień na plaży).
Model HSL warto stosować przy ściemnianiu.
MODELE ZALEŻNE OD SPRZĘTU - CD
MODEL KOLORU HSV (HSB)
przestrzeń kolorów jest stożkiem
Hue – barwa, liczona w stopniach
(0, 36)
Saturation – nasycenie (0,1)
Value lub Brightness – jasność,
wartość (0,1)
MODEL KOLORU HSL (HSI)
przestrzeń kolorów jest bryłą złożoną z 2 stożków
ta sama wartość barwy Hue
inne sformułowanie nasycenia Saturation
Lightness – średnie światło białe
konkurencja do HSV, ale który model jest
lepszy ?
Najczęściej stosowaną metodą konwersji obrazu kolorowego do
obrazu w odcieniach szarości jest zastąpienie każdego punktu
kolorowego odpowiadającą danemu kolorowi jasnością L (lightness).
Zamiana ta wiąże się ze zmniejszeniem rozmiarów pliku z obrazem.
Trzy bajty przeznaczone na zapis składowych RGB zastąpione
zostają jednym bajtem, w którym przechowywana jest wartość L.
Najprostszą metodą zamiany obrazu kolorowego na obraz w
odcieniach szarości jest technika mieszania kanałów. Polega ona na
sumowaniu w różnych proporcjach składowych R, G, B w celu
uzyskania wartości jasności L w danym punkcie.
TECHNIKA MIESZANIA KANAŁÓW
TECHNIKA MIESZANIA KANAŁÓW - CD
zamiana RGB na L metodą rozrzutu
Oto najczęściej stosowane sposoby mieszania kanałów:
metoda uśredniania
konwersja do NTSC i PAL
metoda uśredniania z uwzględnieniem czułości oka
KOREKCJA GAMMA
Krzywa gamma pokazuje w jaki sposób wartość sygnału
podawanego na wejście urządzenia wyjściowego (monitor, LCD,
drukarka) zamienia się na jasność danego punktu.
Często każda składowa koloru wymaga ustawienia innej wartości
korekcji gamma.