Operacje morfologiczne

Transkrypt

Operacje morfologiczne
Laboratorium:
Cyfrowe przetwarzanie obrazów i sygnaªów
Operacje morfologiczne
1
Cel i zakres ¢wiczenia
Celem ¢wiczenia jest zapoznanie si¦ z wªasno±ciami prostych operacji morfologicznych:
•
zw¦»ania/erozji (erode),
•
rozszerzania/dylatacji (dilate),
•
otwarcia (open),
•
domkni¦cia (close)
oraz sposobami ich wykorzystania do przetwarzania obrazów.
2
Przykªady
Operatory morfologiczne wykorzystuj¡ tzw. element strukturalny (struc-
turing element), który deniuje wielko±¢ i ksztaªt otoczenia (s¡siedztwa), w
którym operacja jest wykonywana. W harpii mo»na okre±li¢ element strukturalny wyª¡cznie jako kwadrat o boku 3, 5 lub 7. Okna konguracji dla
rozszerzania, zw¦»ania, otwarcia i domkni¦cia pozwalaj¡ te rozmiary ustawi¢
(rys. 1). Okna konguracji dla operacji rozszerzania i zw¦»ania pozwalaj¡
dodatkowo wybra¢ liczb¦ iteracji.
Warto zauwa»y¢, »e operacje morfologiczne mog¡ by¢ wykonywane zarówno dla obrazów binarnych jak i dla obrazów ze skal¡ szaro±ci. W tym drugim
przypadku erozja odpowiada lokalnemu minimum, a dylatacja - lokalnemu
maksimum.
Oznaczmy obraz wej±ciowy jako
src.
Poni»ej przedstawiono kilka przy-
kªadowych wªasno±ci operacji morfologicznych.
Zªo»enie erozji i dylatacji jest równowa»ne operacji otwarcia (opening):
open(src) = dilate(erode(src)).
1
Rysunek 1: Okna konguracji dla operatorów zw¦»ania i otwierania
Rysunek 2: Przykªad zªo»enia erozji i dylatacji
2
Przykªadowa realizacja w harpii jest pokazana na rys. 2.
Operacje erozji i dylatacji s¡ dualne:
(erode(srcc ))c = dilate(src).
Realizacja jest pokazana na rys. 3. Operacja dopeªnienia
srcc
jest wykony-
Rysunek 3: Przykªad dualno±ci erozji i dylatacji
wana jako ró»nica obrazu wypeªnionego warto±ci¡
255
i obrazu ¹ródªowego.
Wªasno±¢ idempotentno±ci operatora oznacza, »e jego wielokrotne zªo»enie nie zmienia wyniku w stosunku do jednokrotnego zastosowania. Operacja
otwarcia jest idempotentna:
open(open(src)) = open(src),
co przedstawiono na rys. 4.
Rysunek 4: Przykªad idempotentno±ci operacji otwierania
Operacje morfologiczne mo»na wykorzysta¢ do ltrowania obrazów, znajdowania konturów sylwetek lub tzw. gradientów morfologicznych, wyostrzania obrazów. Poni»ej przedstawiono przykªady takiego wykorzystania.
3
Kaskadowe zastosowanie otwierania i domykania sylwetek:
close(open(src))
pozwala usun¡¢ drobne wady ich brzegów (rys. 5).
Rysunek 5: Przykªad ltru morfologicznego
Gradient morfologiczny pozwala znale¹¢ kontur sylwetki (dla obrazu binarnego) lub kraw¦dzie (dla obrazu ze skal¡ szaro±ci):
grad(src) = dilate(src) − erode(src),
lowgrad(src) = dilate(src) − src,
co przedstawiono na rys. 6.
Rysunek 6: Przykªady gradientu morfologicznego
Uwaga: Uzyskane gradienty mo»na wykorzysta¢ do wyostrzania obrazu
przez ich odpowiednie dodawanie do obrazu oryginalnego.
4
3
Zadania do wykonania
U»ywaj¡c obrazów ze skal¡ szaro±ci, jak równie» binarnych (uzyskanych przez
progowanie po ewentualnej ltracji dolnoprzepustowej) nale»y wykona¢ poni»sze zadania.
1. Sprawdzi¢ podstawowe wªasno±ci operacji morfologicznych:
•
zªo»enie dylatacji i erozji jako domkni¦cie:
close(src) = erode(dilate(src)),
•
dualno±¢ otwarcia i domkni¦cia:
(open(srcc ))c = close(src),
•
idempotentno±¢ operacji domykania:
open(open(src)) = open(src), close(close(src)) = close(src).
2. Wykorzysta¢ operacje morfologiczne do przetwarzania obrazów:
•
ltry morfologiczne - otwarcie, domkni¦cie i ich zªo»enia:
open(src), close(src),
close(open(src)), open(close(src)),
close(open(close(open(src)))), open(close(open(close(src)))), ...
•
gradienty morfologiczne:
grad(src) = dilate(src) − erode(src),
lowgrad(src) = dilate(src) − src,
uppgrad(src) = src − erode(src),
•
gradienty teksturowe:
hatgrad(src) = close(src) − open(src),
blackhat(src) = close(src) − src,
tophat(src) = src − open(src),
•
wyostrzanie obrazu:
sharp(src) = src + uppgrad(src) − lowgrad(src),
hatsharp(src) = src + tophat(src) − blackhat(src).
5
4
Uwagi pomocnicze
1. Operatory morfologiczne:
M orphological Operators → Erosion - erozja;
M orphological Operators → Dilate - dylatacja;
M orphological Operators → Opening - otwarcie;
M orphological Operators → Closing - domkni¦cie.
5
Forma sprawozdania
Analogicznie jak w ¢wiczeniu EX0, zamieniaj¡c w odpowiednich miejscach
EX0 na EX6.
Marek Wnuk
6

Podobne dokumenty