Algorytmy graficzne Marcin Wilczewski Politechnika Gdańska, 213/14 1
Zagadnienia, wykład, laboratorium Wykład: Światło i barwa. Modele barw. Charakterystyki obrazu. Reprezentacja i opis. Kwantyzacja skalarna i wektorowa obrazów cyfrowych. Wyszukiwanie obrazów cyfrowych ze względu na treść. Obrazy binarne i ich przetwarzanie. Obrazy barwne i ich przetwarzanie. Metody przetwarzania obrazu w dziedzinie przestrzennej. Algorytmy kompresji danych obrazowych. Wykład kończy się pisemnym zaliczeniem (ostatnie zajęcia w semestrze, 2 punktów). Laboratorium: Problemy do rozwiązania omawiane na wykładzie. Czas realizacji od 1 do 4 tygodni. Maksymalnie: 3 punktów. Możliwość zdobycia punktów na wykładzie. Oceny Zaliczenie pisemne: >1 punktów oraz [26,3] 3;[31-35] 3+;[36,4] 4;[41,45] 4+;[46-]-5 Literatura: Rafael C. Gonzalez, Richard E. Woods, Digital Image Processing 2
Obszar zainteresowań wykładu Dziedziny związane z tworzeniem i przetwarzaniem obrazów cyfrowych: grafika komputerowa generowanie obrazów, tworzenie obrazów sztucznych, przetwarzanie obrazów naturalnych. Celem jest stworzenie obrazu, cyfrowe przetwarzanie obrazów celem jest wydobywanie lub podkreślanie istotnych informacji zawartych w obrazie, computer vision (widzenie komputerowe) in/out obraz opis obraz przetwarzanie obrazów (image processing) computer vision (widzenie komputerowe) opis grafika komputerowa sztuczna inteligencja 3
Barwa potrzeba obiektywnego opisu Istnieje potrzeba określania barwy w sposób ścisły obiektywny precyzyjny nadający się do przetwarzania komputerowego bez konieczności korzystania z wzorników. W praktyce powstało wiele sposób obiektywnego i numerycznego opisu barw modele kolorymetryczne: CIE RGB, CIE XYZ, CIE UVW, CIE LUV modele komputerowe i telewizyjne: RGB, HSV, YCbCR, YUV, YIQ. 4
Cechy barwy Określenia fizyczne (fizykalne) dominująca długość fali zakres spektralny światła natężenie W zastosowaniach technicznych opis tego typu jest nieefektywny. Dlaczego? Określenia percepcyjne odcień barwy (np. czerwony, niebieski, zielony, żółty) nasycenie (np. zielony, seledynowy, oliwkowy, etc.) lub czystość pobudzenia jasność 5
Model RGB a b c Model RGB stanowi najpopularniejszą reprezentację barw. Model oparty o trójchromatyczną teorię postrzegania barw, zgodnie z którą wrażenie barwy powstaje wskutek pobudzenia trzech rodzajów czopków o maksimach absorpcji spektralnej dla światła czerwonego, zielonego i niebieskiego. Bryła barw modelu RGB jest sześcianem w wierzchołkach którego znajdują się barwy podstawowe: czerwona, zielona, niebieska, barwy do nich dopełniające: żółty, niebieskozielony (cyjan), purpura (magenta) oraz czerń (,,) i biel (1,1,1). Model addytywny barwy uzyskuje się w drodze mieszania barw podstawowych R, G, B w różnych proporcjach. Brak barw odpowiada czerni. Zalety: wszystkie barwy pośrednie można reprezentować liniową kombinacją barw podstawowych (wygoda i szybkość obliczeń), odpowiada sposobom generowania barw w urządzeniach typu monitor i telewizor Model RGB posiada wady, które powodują, że w wielu zastosowaniach konieczna jest transformacja obrazu RGB do innej przestrzeni barw posiadającej lepsze własności. Podstawowe wady modelu RGB to: percepcyjna niejednorodność, tzn. słabe korelacje pomiędzy postrzeganą różnicą dwóch barw a ich euklidesową odległością w sześcianie RGB, nieintuicyjnośćposługiwania się składowymi R, G i B w określaniu barwy problem z wizualizacją barwy na podstawie znajomości składowch RGB, korelacje pomiędzy poszczególnymi składowymi. Istnieją szacunki, że dla obrazów naturalnych korelacje pomiędzy składowymi R i B, R i G oraz G i B wynoszą odpowiednio:.78,.98 oraz.94. Obraz zapisany w formacie RGB jest podatny na kompresję. wrażliwość wartości składowych na zmiany poziomu oświetlenia (iluminacji) sceny, jednoczesne operacje wykonywane na wszystkich składowych mogą prowadzić do przekłamania kolorów (np. rozjaśnianie obrazu RGB wymaga ingerencji we wszystkie składowe obrazu). Rys. (a) sześcian barw modelu RGB; (b) nieintuicyjność modelu RGB. Lewa kolumna odpowiada barwom (R,G,B)=(1,,1..), prawa kolumna barwom (R,G,B)=(,,1..); (c) dwa przykładowe kolory, dla których odległość euklidesowa w przestrzeni RGB jest identyczna (d=9) z odległością pomiędzy kolorami w dowolnym wierszu na rysunku (b). 6
Model rgb (unormowany RGB) Wartości składowych RGB są proporcjonalne do ilości światła padającego na obrazowany obiekt (fragment sceny). Wszystkie lokalne zaburzenia w ilości światła padającego na obiekt spowodowane, dla przykładu zacienieniem, powodują wyraźne zmiany wszystkich składowych obrazu. Jest to niepożądane zjawisko, które może prowadzić do błędów segmentacji prowadzonej na obrazie RGB (lub błędów innego rodzaju). Prostą operacją uniezależniającą składowe barwy od ilości światła jest proces normalizacji składowych postaci: w której rezultacie powstają barwy unormowane r, g oraz b spełniające warunek: r+g+b=1(znajomość dwóch składowych pozwala wyznaczyć trzecią). Problem osobliwości: R+G+B=. Składowe rgb w przeciwieństwie do RGB posiadają pożądaną cechę: ich wartości nie zmieniają się pod wpływem zmiany oświetlenia obiektu (sceny) bez zmiany składu spektralnego światła. Czy znajomość składowych r, g oraz b wystarcza do jednoznacznego odtworzenia wartości składowych R, G oraz B? 7
Model rgb (unormowany RGB) - ilustracja 3 b 3 c 3 d 2 2 2 a 3 2 3 4 3 4 3 4 3 e 3 f 3 g 2 2 2 2 3 3 3 4 3 4 3 4 2 h.7 i.6.5.4 3 4 3 4 Rys. (a) -obraz oryginalny; (b), (c), (d) odpowiednio składowe R, G, B obrazu (a); (e), (f), (g) odpowiednio składowe unormowane r, g, b obrazu (a); (h) oraz (i) wartości pikseli w wierszu dla składowej odpowiednio G oraz g obrazu oryginalnego. Widać stabilność składowych rgb na zmianypoziomu oświetlenia, któremu nie towarzyszy zmiana składu spektralnego światła. 8
Model HSV (1) Model HSV (hue, saturation, value) jest modelem, który nawiązuje do naturalnego sposobu interpretacji i opisu barw za pomocą trzech atrybutów: odcienia (hue), nasycenia (saturation) oraz jasności (intensity, brightness, value). Dwa pierwsze atrybuty związane są z cechą jakościową światła (chromatyczność), trzeci parametr, jasność, jest związany z ilością światła. Model HSV pozwala rozłożyć wrażenie barwne na trzy składowe, przy czym tylko dwie dotyczą chromatyczności. Barwy w modelu HSV reprezentowane są jako punkty leżące na oraz w wewnątrz ostrosłupa foremnego o podstawie sześciokąta. Ostrosłup HSV można uzyskać przez transformację sześcianu RGB. Oś V (value, intensity) przyjmuje wartości z przedziału [,1]i stanowi oś ostrosłupa. Punkty osi V reprezentują barwy achromatyczne (poziomy szarości od czerni do bieli) Nasycenie S (saturation) przyjmuje wartości z przedziału [,1]i jest mierzona jako odległość punkty barwy od osi V. Barwy o maksymalnym nasyceniu odpowiadają barwom świateł monochromatycznych. Odcień H (hue) przyjmuje wartości z przedziału [,36]i mierzony jest jako kąt obrotu wokół osi V (przeciwnie do kierunku ruchu wskazówek zegara). Jak zmienia się odcień w przypadku S=? Analiza ostrosłupa HSV wskazuje, że maksymalne nasycenie barwy jakie można uzyskać zależy od wartości jasności (ilości światła). Podobny efekt jest wbudowany np. w system barw Munsela. Przecięcie sześcianu płaszczyzną prostopadłą do osi V dla ustalonej wartości V daje możliwe barwy dla danego poziomu jasności. Dla płaszczyzny V= jedynym wrażeniem jest czerń. Rys. Przestrzeń barw modelu HSV. 9
Model HSV (2) Równania opisujące konwersję pomiędzy modelami RGB oraz HSV w sposób przybliżony odpowiadają psychofizycznemu wrażeniu (odcień, nasycenie, jasność) wywołanemu przez kombinację barw RGB. Przy założeniu, że R,G,B=[,1] konwersja modelu RGB do modelu HSV opisana jest równaniami: Implementując powyższe równania należy zwrócić uwagę na osobliwości! (np. dla barw achromatycznych) oraz na fakt, że zmienna θ jest wartością kątową wyrażoną w stopniach (nie radianach). Zaproponowano wiele wersji powyższych równań o znacznie mniejszej złożoności obliczeniowej. Przykładem jest równanie na składową H, które nie zawiera funkcji trygonometrycznych: 1
Model HSV (3) - ilustracja a 2 b 2 Rys. (a) sześcian RGB; obrazy (b), (c) i (d) to obrazy odpowiednio H, S oraz V obrazu oryginalnego wyrażonego w modelu HSV. Obraz (e) jest obrazem składowej H obrazu oryginalnego (a) silnie skompresowanego algorytmem JPEG. 2 2 3 c 2 d 2 e 2 2 3 2 3 2 3 11
Obraz w składowych RGB a b c d Rys. Obraz RGB. Na następnym slajdzie przedstawiona jest wersja HSV obrazu. 12
Model HSV (4) - ilustracja a b Rys. (a) obraz oryginalny oraz odpowiednio jego składowe H, S, V w modelu HSV. Obraz (e) stanowi pokolorowaną wersję obrazu składowej H (obrazu(b)). Obrazy (b) oraz (e) wskazują na wyraźne rozseparowanie obszarów o różnym odcieniu co podkreśla istnienie obiektów na jednolitym tle. c d e 13
Model HSV (5) przykład segmentacji a b Rys. Przykład segmentacji przez kwantyzację składowej H obrazu w modelu HSV. (a) obraz oryginalny; (b)-(d) obrazy powstałe po kwantyzacji odcienia do odpowiednio 6, 4 oraz 3 poziomów. c d 14
Model HSV (6) Zalety modelu HSV: Naturalność i zgodność ze sposobem opisu barw przez człowieka. Separacja wielkości opisujących wrażenia chromatyczne od achromatycznych (HS oraz V). Dla przykładu, wykonanie operacji rozjaśnienia obrazu RGB wymaga modyfikacji wszystkich trzech składowych. Ta sama operacja w obrazie po konwersji do przestrzeni HSV wymaga modyfikacji tylko składowej V. Podobnie w przypadku modyfikacji nasycenia i odcienia. Możliwość opisu barwy poprzez tylko dwie składowe: H oraz S. Ta cecha pozwala wykorzystywać model HSV w zastosowaniach do rozpoznawania obiektów na podstawie koloru (barwy) niezależnie od zmian jasności (podobnie jak model rgb). Pozwala zdefiniować efektywne miary w przestrzeni obrazu. Przykładem miar może być liczba unikalnych kolorów mierzonych jako liczba odcieni, nasycenie pikseli (pixel saturation) jako stosunek liczby pikseli o maksymalnym nasyceniu do liczby pikseli nienasyconych oraz często stosowana miara odległości na histogramach HSV. Wady modelu HSV: Istnienie osobliwości w równaniach konwersji RGB do HSV: osobliwość H dla wszystkich barw achromatycznych oraz osobliwość S dla czerni (R=G=B=), Percepcyjna niejednorodność pomimo zorientowania modelu na intuicyjność. Przykłady wykorzystania modelu HSV w przemyśle i technice: identyfikacja obiektów kodowanych barwą, sortowanie i klasyfikacja owoców i warzyw rozpoznawanie znaków drogowych. 15