Post on 01-Mar-2019
Plan wykładu• Modele przestrzeni barw
T likó j b tiff if• Typy plików - .jpg, .bmp, .tiff, .gif, .raw• Obraz jako macierz pikseli• Geometryczne przekształcenia obrazu – obroty,
odbicia, zniekształcenia• Przekształcenia punktowe
– Przekształcenia na pojedynczych punktach– Przekształcenia arytmetyczne– LUT
Hi– Histogram– Operacje wykonywane na dwóch obrazach
RGB – jeden z modeli przestrzeni barw, opisywanej współrzędnymi RGB. Jego p y j p ę y gnazwa powstała ze złożenia pierwszych liter angielskich nazw barw: R – red (czerwonej), G – green (zielonej) i B –blue (niebieskiej), z których model ten się składa.Jest to model wynikający z właściwości y ją yodbiorczych ludzkiego oka, w którym wrażenie widzenia dowolnej barwy można wywołać przez zmieszanie w ustalonych proporcjach trzech wiązek światła o barwie czerwonej, zielonej i ą j jniebieskiej
Zapis koloru jako RGB często stosuje się w informatyce. Najczęściej stosowany jest 24-bitowy zapis kolorów w którym każda z barw jestzapis kolorów, w którym każda z barw jest zapisana przy pomocy składowych, które przyjmują wartość z zakresu 0-255. W modelu RGB 0 oznacza kolor czarny, natomiast 255 kolor biały. W rzadszych przypadkach stosuje się model wrzadszych przypadkach stosuje się model, w którym przypada po 12 lub 16 bitów na każdą ze składowych, co daje dużo większe możliwości przy manipulowaniu kolorem
http://pl.wikipedia.org/wiki/Grafika:RGB_pixels.jpg
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
HSV (ang. Hue Saturation Value) – model opisu przestrzeni barw zaproponowany w 1978 roku przez Alveya Raya Smitha.
Model HSV nawiązuje do sposobu, w jakim widzi ludzki narząd wzroku, gdzie wszystkie barwy postrzegane są jako światło pochodzące z oświetlenia Według tego modelu wszelkie barwyoświetlenia. Według tego modelu wszelkie barwy wywodzą się ze światła białego, gdzie część widma zostaje wchłonięta a część odbita od oświetlanych przedmiotów.
Symbole w nazwie modelu to pierwsze litery nazw angielskich dla składowych opisu barwy: H –odcień barwy (ang. Hue) wyrażona kątem na kole barw przyjmująca wartości od 0° do 360° Model jest
Wymiary stożka opisuje składowa S – nasycenie koloru (ang. Saturation) jako promień podstawy
barw przyjmująca wartości od 0 do 360 . Model jest rozpatrywany jako stożek, którego podstawą jest koło barw.
y y p j y ( g ) j p p yoraz składowa V – (ang. Value) równoważna nazwie B – moc światła białego (ang. Brightness) jako wysokość stożka.
Przyporządkowanie częstotliwości fal świetlnych na kole barw w modelu HSV jest takie same jak w modelach HLS lub HSL tzn centrum barwy czerwonej odpowiada kąt 0° lub 360° Centrum barwymodelach HLS lub HSL, tzn. centrum barwy czerwonej odpowiada kąt 0° lub 360°. Centrum barwy zielonej odpowiada kąt 120°. Centrum barwy niebieskiej odpowiada kąt 240°. Pozostałe barwy pośrednie dla składowej Hue są odpowiednio rozłożone pomiędzy kolorami czerwonym, zielonym i niebieskim.
http://pl.wikipedia.org/wiki/HSV_(grafika)
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
CMYK – zestaw czterech podstawowych kolorów farb d k ki h h h idrukarskich stosowanych powszechnie w druku kolorowym w poligrafii i metodach pokrewnych (atramenty, t i i t i ł b itonery i inne materiały barwiące w drukarkach komputerowych, kserokopiarkach itp.). Na zestaw tych kolorów mówi się również barwy C cyjan (ang. Cyan)kolorów mówi się również barwy procesowe lub kolory triadowe (kolor i barwa w jęz. polskim to synonimy). CMYK to jednocześnie jedna z
yj ( g y )M magenta (ang. Magenta)Y żółty (ang. Yellow)
CMYK to jednocześnie jedna z przestrzeni barw w pracy z grafiką komputerową.
K czarny (ang. blacK)
Barwy wynikowe w metodzie CMYK otrzymuje się poprzez łączenie barw podstawowych w proporcjach (dla każdej z nich) od 0% do 100%. Farby CMYK to substancje barwiące przepuszczające światło, czyli barwniki, tak więc łączy się j i t d i i t lk kł d i t i i dl t b ikje nie metodą mieszania tylko nakładania warstwami i dlatego barwa wynikowa może mieć od 0% do aż 400% koloru (czyli kolorów składowych). Na kolory budowane wg CMYK należy patrzeć jak na warstwy kolorowej, przepuszczającej światło foliiświatło folii. http://pl.wikipedia.org/wiki/CMYK
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
YCbCr (lub inaczej YUV) to sposób zapisuYCbCr (lub inaczej YUV) to sposób zapisu kolorów za pomocą trzech wartości liczbowych opisujących dany kolor, podobnie jak w przypadku RGB - zapisu kolorów powszechnie stosowanego w informatyce (R -jak bardzo czerwony jest kolor G - jak bardzojak bardzo czerwony jest kolor, G jak bardzo zielony, B - jak bardzo niebieski). Jednak w przypadku YCbCr odbywa się to w troszkę i ób T t j t ść Y j śćinny sposób. Tutaj wartość Y oznacza jasność danego koloru i nazywana jest "luminancją", natomiast wartości Cb i Cr oznaczają jąodpowiednio jak bardzo niebieski i czerwony jest dany kolor, i nazywane są wspólnie "chrominancją"chrominancją .
http://en wikipedia org/wiki/Image:Barns grand tetons YCbCr separation jpghttp://www.szkolenia.agencjasedno.pl/artykuly/19/kompresja_obrazu_jpeg_czyli_rewolucja_w_cyfrowej_fotografii.htm
http://en.wikipedia.org/wiki/Image:Barns_grand_tetons_YCbCr_separation.jpg
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
BMP - to jeden z formatów plików z grafiką bitmapową. Opracowany pierwotnie jako natywny dla systemu OS/2 wykorzystywany później także w interfejsach systemów znatywny dla systemu OS/2, wykorzystywany później także w interfejsach systemów z rodziny Microsoft Windows (TM), jednak jako wolny od patentów jest dostępny i - mimo dużych rozmiarów - popularny jako format przechowywania danych również na wszystkich pozostałych platformach. Zawiera w sobie prostą kompresję bezstratną RLE (która nie musi być użyta), informację o użytych kolorach. Obsługuje tylko tryb RGB.Po części nagłówkowej pliku BMP zazwyczaj znajduje się paleta. Można tu wyodrębnić 2 przypadki:
W t b h 8 bit h l t b d j t i ó k l ó d i k żd– W trybach 8-bitowych paleta zbudowana jest z opisów kolorów, gdzie każdy kolor opisany jest za pomocą 4 bajtów (B, G, R, nie używany, lub alpha). Każdą ze składowych koloru należy podzielić przez 4.
– W trybach o większej liczbie kolorów niż 256 paleta nie występuje a kolor– W trybach o większej liczbie kolorów niż 256 paleta nie występuje, a kolor pixela w obrazie zapisywany jest przy pomocy numeru kolejnego koloru który jest wyliczany ze wzoru: Nr Koloru = R+ 256*G+ 65536*Bgdzie:R - wartość składowej czerwonejG - wartość składowej zielonejB - wartość składowej niebieskiej
Następnie w pliku znajdują się dane obrazowe.Linie obrazu zapisywane są od dołu do góry.
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
JPEG (wym. dżej-peg, jot-peg lub jotpeegie) – standard kompresji t t h b ó t h łó i dstatycznych obrazów rastrowych, przeznaczony głównie do
przetwarzania obrazów naturalnych (zdjęć satelitarnych, pejzaży, portretów itp.), charakteryzujących się płynnymi przejściami barw oraz brakiem lub małą ilością ostrych krawędzi i drobnych detali.• algorytm kompresji używany przez JPEG jest algorytmem stratnym, tzn. w czasie jego wykonywania tracona jest bezpowrotnie część pierwotnej informacji.j g y y j p ę p j j
Algorytm przebiega następująco:• obraz jest konwertowany z kanałów czerwony zielony niebieski (RGB) na• obraz jest konwertowany z kanałów czerwony-zielony-niebieski (RGB) na jasność (luminancję) i 2 kanały barwy (chrominancje). Ludzie znacznie dokładniej postrzegają drobne różnice jasności od drobnych różnic barwy, a więc użyteczne jest tutaj użycie różnych parametrów kompresji Krok nie jestwięc użyteczne jest tutaj użycie różnych parametrów kompresji. Krok nie jest obowiązkowy (opcjonalnie można go pominąć). • wstępnie odrzucana jest część pikseli kanałów barwy, ponieważ ludzkie oko ma znacznie niższą rozdzielczość barwy niż rozdzielczość jasności Można niema znacznie niższą rozdzielczość barwy niż rozdzielczość jasności. Można nie redukować wcale, redukować 2 do 1 lub 4 do 1.
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
• kanały są dzielone na bloki 8x8. W przypadku kanałów kolorów, jest to 8x8 aktualnych danych a więc zwykle 16x8danych, a więc zwykle 16x8. • na blokach wykonywana jest dyskretna transformata kosinusowa (DCT). Zamiast wartości pikseli mamy teraz średnią wartość wewnątrz bloku oraz częstotliwości zmian wewnątrz bloku, obie wyrażone przez liczby zmiennoprzecinkowe. Transformata DCT jest ą y p y p jodwracalna, więc na razie nie tracimy żadnych danych. • zastąpienie średnich wartości bloków przez różnice wobec wartości poprzedniej. Poprawia to w pewnym stopniu współczynnik kompresji. • kwantyzacja, czyli zastąpienie danych zmiennoprzecinkowych przez liczby całkowite. To właśnie tutaj występują straty danych. Zależnie od parametrów kompresora, odrzuca się mniej lub więcej danych. Zasadniczo większa dokładność jest stosowana do danych dotyczących niskich częstotliwości niż wysokichdotyczących niskich częstotliwości niż wysokich. • współczynniki DCT są uporządkowywane zygzakowato, aby zera leżały obok siebie. • współczynniki niezerowe są kompresowane algorytmem Huffmana. Są specjalne kody dla ciągów zerdla ciągów zer. • użyta transformata powoduje efekty blokowe w przypadku mocno skompresowanych obrazków.• wielką innowacją algorytmu JPEG była możliwość kontroli stopnia kompresji w jej trakcie,wielką innowacją algorytmu JPEG była możliwość kontroli stopnia kompresji w jej trakcie, co umożliwia dobranie jego stopnia do danego obrazka, tak aby uzyskać jak najmniejszy plik, ale o zadowalającej jakości
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
htt // l iki di / iki/Plik N ihttp://pl.wikipedia.org/wiki/Plik:Napis-p-n.png
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
GIF (ang. Graphics Interchange Format) – format pliku graficznego z kompresją bezstratną stworzony w 1987 r. przez firmę CompuServe. Pliki tego t h i ż t h WWW d ż l j t itypu są powszechnie używane na stronach WWW, gdyż pozwalają na tworzenie animacji z paletą 256 kolorów i dwustanową przezroczystością.
GIF stratny czy bezstratny?Jest wiele nieporozumień związanych z techniką zapisu obrazu w formacie GIF. Z założenia jest to zapis danych tzw. bezstratny z czystego ujęcia j p y y y g jęalgorytmicznego, czyli wszystkie piksele są wiernie zakodowane w pliku (ich umiejscowienie oraz kolor).Jednak format GIF potrafi zapisać jedynie piksel z dostępnej palety 256 kolorów. Jed a o at G pot a ap sać jedy e p se dostęp ej pa ety 56 o o óZ racji tego, że większość obecnie przetwarzanych obrazów posiada paletę 24-bitową (ok. 16,7 milionów kolorów), przed zapisaniem obrazu GIF następuje szereg procesów stratnych:g p y• wyznaczenie 256 kolorów (lub mniej), które jak najwierniej oddają oryginalny zestaw kolorów obecnych w obrazie; jest tzw. kwantyzacja kolorów • zapis tych kolorów do palety (może być również stratny)zapis tych kolorów do palety (może być również stratny) • opcjonalnie: ditheringDzięki temu pliki GIF są niewielkich rozmiarów, co było szczególnie istotne w latach 80 i 90 a następnie wraz z rozwojem Internetulatach 80 i 90, a następnie wraz z rozwojem Internetu.
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
RAW (ang. surowy) - ogólne określenie formatów zapisu danych bez łó kó (i f t k ) W f t fii f j j t j bnagłówków (informatyka). W fotografii cyfrowej rejestracja obrazu w
formacie RAW pozwala na zachowanie najwyższej jakości obrazu oferowanej przez aparat (duża głębia koloru, brak kompresji stratnej), dając możliwość dokładnej obróbki pliku na komputerze. Plik w formacie RAW uważa się za cyfrowy odpowiednik negatywu, a ich konwersję za wywołanie. Wywołanie RAW-u można powtarzać np. dla różnego y y p p gbalansu bieli, ale jest procesem nieodwracalnym. Nie można przekształcić zdjęć np. w formacie jpg na format RAW.
W odróżnieniu od zapisu w formacie JPEG albo TIFF, plik RAW nie zawiera bowiem gotowego obrazu, lecz "surowe" (ang. raw) dane z matrycy światłoczułej aparatu, które dopiero po interpolacji i ewentualnej kompresji zostaną przekształcone w typowy plik graficzny (proces ten jest z kolei odpowiednikiem wywoływania kliszy). Przeniesienie obróbki j p y y y)obrazu z aparatu do komputera pozwala na zastosowanie oprogramowania o większych możliwościach w stosunku do funkcji dostępnych w aparacie.dostępnych w aparacie.
Marek Jan Kasprowicz – Analiza obrazu komputerowego – 2009 r.
Każdy element rastra jestnumerowany dwoma liczbami n i m.P kt (0 0) jd j i
];1,0[ Mm −∈
Punkt (0,0) znajduje się w prawymdolnym rogu.
];1,0[];,[
Nn −∈Wartość piksela wyrażana jest
;),( CnmL ∈przez funkcję:
gd ie C to biór lic b całko it chgdzie C to zbiór liczb całkowitychz przedziału od 0 do 2B-1, a B jest przyjętą liczbą bitów dlareprezentacji jednego punktu obrazureprezentacji jednego punktu obrazu.
Na przesunięcia geometryczne składa się:• przesunięcia• przesunięcia• obroty• odbiciaodbicia• inne transformacje geometrii obrazuPrzekształcenia te wykorzystywane są do korekcji błędów y y y ą j ęwnoszonych przez system wprowadzający oraz do operacji pomocniczych.
Najczęściej wykorzystywane do korekcji błędów takich jak:i k t ł i d k• zniekształcenia poduszkowe
• zniekształcenia beczkowe• zniekształcenia trapezowe• zniekształcenia trapezowe• złe wykadrowanie obrazu
Przekształcenia punktowe:• Modyfikowana jest jedynie wartość (np. stopień jasności) poszczególnych punktów obrazu. Relacje geometryczne
t j b ipozostają bez zmian.• Jeżeli wykorzystywana jest funkcja ściśle monotoniczna (rosnąca l b malejąca) to a s e istnieje operacja(rosnąca lub malejąca), to zawsze istnieje operacja odwrotna, sprowadzająca z powrotem obraz wynikowy na wejściowy Jeżeli zastosowana funkcja nie jest ściślewejściowy. Jeżeli zastosowana funkcja nie jest ściśle monotoniczna, pewna część informacji jest bezpowrotnie tracona.• Operacje te mają za zadanie jedynie lepsze uwidocznienie pewnych treści już zawartych w obrazie. Nie wprowadzają
fżadnych nowych informacji do obrazu.
Histogram obrazu jest prostą funkcją, pozwalającą w sposób globalny scharakteryzować obraz:globalny scharakteryzować obraz:
∑∑− −
=1 1
))(()(M N
nmipih ∑∑= =
=0 0
)),(,()(m n
nmipih
gdzie:
= −210 1i B= 2,...,1,0i
1 gdy L(m n)=i=)),(,( nmip 1 gdy L(m,n)=i
0 w pozostałym przypadku
Wady arbitralnego określania przez badacza przekodowania stopni szarości obrazu-Reguła przekształcenia musi być każdorazowo wymyślana przez osobę analizującą obraz-Nie wiadomo które poziomy szarości wzmocnić, a które osłabić
Dla ogólnego polepszenia jakości obrazu (bez określenia czego się szuka) można użyć następujących dwóch przekształceń:
Normalizacja S
Modulacja Gamma (γ)Red kcja nadmiernego kontrast obraSprowadzenie przedziału zmian
wartości punktów wyjściowych obrazu do pewnego ustalonego
k
Redukcja nadmiernego kontrastu obrazu wyjściowego. Wykorzystywana funkcja ma postać x->xγ, gdzie γ jest stałym wykładnikiem zazwyczaj liczba naturalna
Marek Jan Kasprowicz – Analiza komputerowa obrazu – 2008 r.
zakresu wykładnikiem, zazwyczaj liczba naturalna.
Przekształcenia oparte na arytmetycznym przeliczaniu
pojedynczych punktówpojedynczych punktów
Marek Jan Kasprowicz – Analiza komputerowa obrazu – 2008 r.
Przekształcenia oparte na arytmetycznym przeliczaniu pojedynczych punktówp p j y y p
Zakłada się, że dla każdej pary liczb (m,n) ę, j p y ( , )jednoznacznie wskazującej jeden piksel na obrazie źródłowym, określana jest pewna y , j pfunkcja F, która przekształca go w piksel obrazu wynikowego:y g
L’(m,n) = F(L(m,n))( , ) ( ( , ))
Marek Jan Kasprowicz – Analiza komputerowa obrazu – 2008 r.
Najprostsze przekształcenia arytmetyczne to:jp p y y
1. Dodanie do obrazu stałej liczby x
L’(m,n) = L(m,n)+x
Po dokonaniu przekształcenia może być konieczna normalizacja obrazu wynikowego L’(m,n) celem j y g ( , )zapewnienia warunku L’(m,n)ЄN gdzie N oznacza liczbę z przedziału [0, 2B-1]
Przekształcenie przesuwa obraz w stronę jaśniejszej lub ciemniejszej części przyjętej palety stopni szarościciemniejszej części przyjętej palety stopni szarości. Pozwala to czasami zauważyć szczegóły początkowo niedostrzegalne gołym okiem.
Marek Jan Kasprowicz – Analiza komputerowa obrazu – 2008 r.
g g y
2 Przemnożenie obrazu przez liczbę x2. Przemnożenie obrazu przez liczbę x
L’(m,n) = L(m,n)*x
• Po dokonaniu przekształcenia może być konieczna normalizacja obrazu wynikowego L’(m n) celem zapewnienianormalizacja obrazu wynikowego L (m,n) celem zapewnienia warunku L’(m,n)ЄN gdzie N oznacza liczbę z przedziału [0, 2B-1][0, 2B 1]• Przekształcenie to zwiększa lub zmniejsza zróżnicowanie stopni szarości na obrazie. Zwiększenie zróżnicowania okupione jest zwykle utratą części informacji w wyniku niezbędnej normalizacji.
3 Z t i f k ji t j3. Zastosowanie funkcji potęgowej
L’(m,n) = (L(m,n))k
• Podwyższenie kontrastu w obszarze dużych wartości L(m,n). Przyciemnienie obrazu z ( , ) ydużym zróżnicowaniem najciemniejszych partii Wartości przekształcenia L’(m n)partii. Wartości przekształcenia L (m,n) powinny być znormalizowane
Najczęstsze wartości to k=2 i k=3• Najczęstsze wartości to k=2 i k=3
4. Zastosowanie funkcji pierwiastkowej
L’(m,n) = (L(m,n))1/2
• Podwyższenie kontrastu w obszarze małych wartości L(m,n). Rozjaśnienie obrazu z dużym ( , ) j yzróżnicowaniem najjaśniejszych partii. Wartości przekształcenia L’(m,n) powinny być p ( , ) p y yznormalizowane
5. Zastosowanie funkcji logarytmicznej
L’(m,n) = log (L(m,n) + 1)
• Podwyższenie kontrastu w obszarze małych wartości L(m n) Silne rozjaśnienie obrazu z bardzowartości L(m,n). Silne rozjaśnienie obrazu z bardzo silnym zróżnicowaniem najjaśniejszych partii. Wartości przekształcenia L’(m n) powinny byćWartości przekształcenia L (m,n) powinny być znormalizowane – odpowiednio przeskalowane.
Histogram obrazu jest prostą funkcją, pozwalającą w sposób globalny scharakteryzować obraz:globalny scharakteryzować obraz:
∑∑− −
=1 1
))(()(M N
nmipih ∑∑= =
=0 0
)),(,()(m n
nmipih
gdzie:
= −210 1i B= 2,...,1,0i
1 gdy L(m n)=i=)),(,( nmip 1 gdy L(m,n)=i
0 w pozostałym przypadku
Wyrównanie histogramu:• Operacja polegająca na zmianie położeniaOperacja polegająca na zmianie położenia (wzdłuż poziomej osi odpowiadającej stopniom szarości poszczególnych pikseli) kolejnychszarości poszczególnych pikseli) kolejnych słupków, zawierających zliczenia liczby pikseli o danej szarościo danej szarości.• Intuicyjnie mówiąc równoważenie histogramu polega na zwiększaniu różnic jasnościpolega na zwiększaniu różnic jasności pomiędzy tymi pikselami w obrazie, które mają jasności często występującejasności często występujące
Liczba rozróżnialnych na obrazie poziomów szarości zmalała, jednak bi kt i t l ść b d k l i i ił b t t t isubiektywnie czytelność obrazu radykalnie się poprawiła bo statystycznie
częściej pojawia się w obrazie znaczący kontrast pomiędzy sąsiednimi punktami
Operacje punktowe wykonywane na dwóch obrazach
• Operacjom punktowym mogą podlegać dwa obrazy (np. dodawanie wartości odpowiednich pikseli z dwóch obrazów) dając w rezultacie trzeci obraz
• Do podstawowych dwuargumentowych operacji punktowych należą:– dodawanie obrazów– odejmowanie obrazówj– przemnożenie dwóch obrazów– kombinacja liniowa obrazówj
Operacje punktowe wykonywane na dwóch obrazach
P k ł i d l• Przekształcenie arytmetyczne dwuargumentowe polega na przeprowadzeniu odpowiedniej operacji arytmetycznej na odpowiadających sobie punktach obrazów wejściowych i zapisanie wynikowego elementu do obrazu końcowego
• Dodawanie obrazów cyfrowych wykonuje się głównie w celach trikowych (cyfrowe fotomontaże)trikowych (cyfrowe fotomontaże)
• Dużo większe znaczenie praktyczne ma odejmowanie obrazu. Odejmowanie obrazów jest podstawowym sposobem wykrywania
i b h ( h h bi któ t hzmian w obrazach (np. ruchomych obiektów w systemach automatycznego zabezpieczania określonych obiektów)
• Mnożenie obrazów przy użyciu maski (odpowiednio p y y ( pskonstruowanego obrazu) pozwala uwydatnić pożądane miejsca w obrazie