04.06.2014 Views

Przekształcenia punktowe i skali szarości ( jasności ) = Korekcja ...

Przekształcenia punktowe i skali szarości ( jasności ) = Korekcja ...

Przekształcenia punktowe i skali szarości ( jasności ) = Korekcja ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Przekształcenie :<br />

Przekształcenia <strong>punktowe</strong> i <strong>skali</strong> szarości ( jasności )<br />

= <strong>Korekcja</strong> jasności i kontrastu obrazu<br />

h ( x,<br />

y)<br />

= T ( f )( x,<br />

y)<br />

= t(<br />

f ( x,<br />

y))<br />

nazywamy przekształceniem obrazu wejściowego f w obraz wyjściowy h za<br />

pomocą operatora <strong>punktowe</strong>go T odnoszącego się do punktu obrazu f o<br />

współrzędnych x,y na podstawie przekształcenia t <strong>skali</strong> szarości (jasności) .<br />

Przekształcenie t nazywamy takŜe modyfikacją histogramu.<br />

Przekształcenie t moŜemy opisać przy pomocy funkcji gradacji t.<br />

Kształt tej funkcji decyduje o sposobie korekcji jasności lub kontrastu<br />

obrazu.<br />

Pod pojęciem jasności obrazu rozumiemy wartości funkcji f.<br />

Pod pojęciem kontrastu obrazu rozumiemy lokalną zmianę jasności, którą<br />

definiujemy jako stosunek między średnią jasnością pikseli<br />

reprezentujących obiekty na obrazie a średnią jasności pikseli<br />

reprezentujących tło obrazu (Przykład : gwiazdy na niebie w dzień i w<br />

nocy) – pojęcie subiektywne.<br />

Przykład funkcji gradacji t dokonującej poprawy kontrastu na obrazie<br />

Obraz analogowy<br />

Obraz dyskretny<br />

Obraz wyjściowy<br />

Obraz wyjściowy<br />

Obraz wejściowy<br />

Obraz wejściowy<br />

Przy przekształceniach punktowych często stosuje się operacje typu LUT<br />

(ang. Look Up Tables) . W operacji tej do przekształcania wartości<br />

poszczególnych punktów obrazu uŜywa się przygotowanych a priori tabel<br />

przekodowania np.


Modyfikacja jasności<br />

⎧c<br />

+ f ( x,<br />

y)<br />

jesli 0 ≤ c + f(x,y) ≤ G - 1<br />

⎪<br />

h(<br />

x,<br />

y)<br />

= ⎨G - 1 jesli c + f(x,y) > G - 1<br />

⎪<br />

⎩0<br />

jesli c + f(x,y) < 0<br />

Modyfikacja kontrastu<br />

Rozciąganie do pełnego zakresu szarości (p. skalowanie liniowe z obcięciem)<br />

h<br />

⎧0<br />

⎪<br />

f ( p)<br />

−u<br />

p)<br />

= ⎨<br />

⎪ u2<br />

− u1<br />

⎪<br />

⎩G<br />

−1<br />

jesli f(p) < u<br />

jesli u<br />

≤ f ( p)<br />

≤ u<br />

1<br />

( 1<br />

2<br />

jesli f(p) > u<br />

2<br />

1


Modyfikacja kontrastu w oparciu o nieliniowe funkcje gradacji t<br />

Modyfikacja obrazu wejściowego :<br />

Modyfikacja w oparciu o :<br />

a) krzywą A :<br />

Obraz wejściowy i jego histogram


) krzywą B :<br />

c ) krzywą C :<br />

d) Krzywą D :<br />

Zakładamy , Ŝe stosujemy znormalizowaną skalę szarości w przedziale [0,1]:<br />

f ( p)<br />

U = oraz G −1<br />

s<br />

S = G −1


Krzywe A i B to funkcje potęgowe. Przekształcenie realizowane przy pomocy<br />

tych funkcji opisujemy:<br />

⎡ f ( p)<br />

⎤<br />

h(<br />

p)<br />

= ( G −1)<br />

⋅<br />

⎢<br />

⎣G<br />

−1⎥<br />

⎦<br />

Krzywe C i D reprezentują S-funkcje. Przekształcenie to opisujemy:<br />

r<br />

⎧<br />

⎪v<br />

h(<br />

p)<br />

= ⎨<br />

⎪v<br />

⎪<br />

⎩<br />

1<br />

2<br />

U<br />

( U ) = ( G −1)<br />

⋅<br />

r<br />

S<br />

−1<br />

(1 − U )<br />

( U ) = ( G −1)(1<br />

−<br />

r<br />

(1 − S)<br />

r<br />

r<br />

−1<br />

jesli 0 ≤U<br />

)<br />

≤ S<br />

jesli S ≤U<br />

≤ 1<br />

Tworzenie obrazów odwrotnych (negatywów) realizowane jest przy pomocy<br />

funkcji gradacji o przykładowych kształtach :<br />

h(<br />

p)<br />

= 1. 0<br />

− U<br />

⎧1.0<br />

⎪<br />

h(<br />

p)<br />

= ⎨0.<br />

1<br />

⎪<br />

⎩ U<br />

dla 0 ≤ U<br />

≤ 0.1<br />

dla 0.1 ≤U<br />

≤ 1


Bitowa modyfikacja kontrastu – wyświetlamy bity na określonych pozycjach<br />

bajtów opisujących jasności poszczególnych pikseli tworzących obraz.<br />

(na podst. W.K. Pratt - „Digital Image Processing” ):<br />

Obraz wejściowy


„Okienkowanie <strong>skali</strong>” ( ang. Amplitude level slicing) – wygodne przy<br />

określaniu rozmieszczenia na obrazie pikseli o określonej jasności (wartości<br />

funkcji f ).<br />

Modyfikacja histogramu = kształtowanie histogramu obrazu<br />

Wyrównywanie histogramu – histogram obrazu wyjściowego jak najbardziej<br />

płaski = wartość funkcji gęstości prawdopodobieństwa stała<br />

Przypadek ciągły :<br />

f<br />

h<br />

j<br />

k<br />

Szukane przekształcenie t otrzymamy dla stałej wartości funkcji gęstości<br />

obrazu wyjściowego:


Podstawiając otrzymujemy:<br />

p h<br />

( h)<br />

=<br />

h<br />

max<br />

1<br />

− h<br />

min<br />

h<br />

1 h − hmin<br />

∫ dh = = P f<br />

( f )<br />

h − h h − h<br />

hmin<br />

max<br />

min<br />

max<br />

Z tego obliczamy h będącą funkcją przejścia:<br />

max<br />

− hmin<br />

]<br />

min<br />

h = Pf ( f )[ h + h<br />

min<br />

Dla obrazu dyskretnego otrzymujemy:<br />

h<br />

k<br />

k = ∑ HIST f , j)<br />

⋅[<br />

hmax<br />

− hmin<br />

] +<br />

j=<br />

0<br />

( h<br />

Efekt wyrównania moŜemy zwiększyć lub zmniejszyć przy pomocy:<br />

h<br />

k<br />

r<br />

k = ∑ HIST f , j)<br />

⋅[<br />

hmax<br />

− hmin<br />

] +<br />

j=<br />

0<br />

( h<br />

min<br />

min<br />

Uwaga: Ze względu na dyskretyzację obrazu oraz ograniczoną ilość poziomów<br />

kwantyzacji (poziomów szarości) niemoŜliwe jest otrzymanie histogramu<br />

idealnie płaskiego jak w przypadku ciągłym, dlatego wyrównany histogram<br />

obrazu dyskretnego posiada ekstrema oraz nie ma wypełnionych niektórych<br />

poziomów szarości.<br />

Przykłady operacji wyrównywania histogramu


Obraz wejściowy<br />

Histogram obrazu wejściowego<br />

Obraz wejściowy<br />

Histogram obrazu wejściowego<br />

Obraz z wyrównanym histogramem<br />

Wyrównany histogram<br />

Funkcja gradacji<br />

Obraz Obraz po hiperbolizacji z wyrównanym histogramu histogramem<br />

Histogram po wyrównany hiperbolizacji


Lokalna modyfikacja histogramu – modyfikacja w pewnym , ustalonym<br />

sąsiedztwie.<br />

Adaptacyjna modyfikacja histogramu<br />

gdzie<br />

M<br />

= a[ bM 00 + (1 − b)<br />

M10]<br />

+ (1 − a)[<br />

bM 01 + (1 − b)<br />

M11]<br />

k<br />

a =<br />

k<br />

1<br />

−<br />

−<br />

k<br />

k<br />

0<br />

0<br />

b =<br />

j<br />

j<br />

1<br />

−<br />

−<br />

j<br />

j<br />

0<br />

0


Porównanie globalnego, lokalnego i adaptacyjnego wyrównywania histogramu<br />

Wygładzanie histogramu – likwidacja lokalnych ekstremów.<br />

Obraz wejściowy A<br />

Wyrównanie klasyczne obrazu A<br />

Wyrównanie lokalne obrazu A<br />

Wyrównanie adaptacyjne obrazu A<br />

Obraz wejściowy B<br />

Wyrównanie klasyczne obrazu B<br />

Wyrównanie adaptacyjne obrazu B

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!