Przekształcenia morfologiczne
Przekształcenia morfologiczne są podstawowym narzędziem analizy obrazu, ponieważ pozwalają na wykonanie najbardziej złożonych operacji, takich jak analiza kształtu cząstek, detekcja ich wzajemnego położenia itp. Za ich pomocą możliwe jest również przeprowadzenie złożonych procesów symulacji (np. symulacja wzrostu cząstek). Przekształcenia morfologiczne modyfikują tylko tą część punktów obrazu, których otoczenie jest zgodne z pewnym wzorcem. Istotą każdej operacji morfologicznej jest tzw. element strukturalny, który można też nazwać wzorcem lub szablonem. W elemencie strukturalnym określony jest punkt środkowy, oznaczający położenie piksela poddawanego analizie oraz zespół punktów otaczających.
Przekształcenie morfologiczne polega na: przyłożeniu centralnego punktu elementu strukturalnego kolejno do wszystkich punktów obrazu, sprawdzeniu, czy lokalna konfiguracja pikseli odpowiada wzorcowi zapisanemu w elemencie strukturalnym, wykonaniu określonej dla danego przekształcenia operacji w wyniku stwierdzenia takiej zgodności (zazwyczaj sprowadza się to do zmiany koloru lub odcienia danego punktu).
Poniżej przedstawione zostały najprostsze elementy strukturalne dla siatek: kwadratowej i heksagonalnej: 1 gdzie: 0 — punkt czarny, 1 — punkt biały.
Ważniejsze przekształcenia morfologiczne: Erozja Dylatacja Otwarcie Zamknięcie Detekcja szczytów Detekcja dolin Szkieletyzacja Obcinanie gałęzi Ścienianie
Erozja Gdy weźmiemy nieregularny obszar (figurę) X oraz element strukturalny zdefiniowany jako koło B o promieniu r. Erozję figury X elementem B możemy zdefiniować na dwa równoważne sposoby: figura zerodowana to zbiór środków wszystkich kół o promieniu r, które w całości zawarte są we wnętrzu obszaru X, koło B przetaczamy po wewnętrznej stronie brzegu figury X, a kolejne położenia jego środka wyznaczają brzeg figury zerodowanej.
Ilustracja zasady erozji:
Przy takiej definicji erozji jako punkt środkowy elementu strukturalnego przyjmowany jest środek koła. W rzeczywistym obrazie komputerowym złożonym z pojedynczych punktów siatki, uzyskanie koła jednostkowego jest niemożliwe. Jego przybliżeniem może być, w zależności od zastosowanej siatki, kwadrat lub element heksagonalny
Przybliżeniem koła jednostkowego może być, w zależności od zastosowanej siatki, kwadrat lub element heksagonalny: Erozja o wielkości jednostkowej polega na usunięciu wszystkich tych punktów obrazu o wartości 1, które posiadają, choć jednego sąsiada o wartości 0. Wielkość erozji może być oczywiście różna, a jej miarą jest wielkość elementu strukturalnego.
Przykłady: ima = imerode(im,se); se = strel('square',3);
Element strukturalny 5x5: ima = imerode(im,se); se = strel('square',5);
Inne elementy strukturalne: ima = imerode(im,se); se = strel('line',10,45);
ima = imerode(im,se); se = strel('line',5,45);
ima = imerode(im,se); se = strel('line',5,45);
ima = imerode(im,se); se = strel('line',10,45);
ima = imerode(im,se); se = strel('line',10,45);
ima = imerode(im,se); se = strel('line',10,110);
ima = imerode(im,se); se = strel('line',10,45);
ima = imerode(im,se); se = strel('line',10,45);
Ilustracja erozji obrazu wieloodcieniowego: Erozja obrazów wieloodcieniowych jest definiowana jako filtr minimalny
Przykłady erozji obrazu wieloodcieniowego: ima = imerode(im,se); se = strel('square',3);
Element strukturalny 5x5: ima = imerode(im,se); se = strel('square',5);
Bakteria
Element strukturalny 5x5:
Krwinki
Element strukturalny 5x5:
Szpik kostny
Element strukturalny 5x5:
Lena
Element strukturalny 5x5:
Żeliwo
Element strukturalny 5x5:
Kamerzysta
Element strukturalny 5x5:
Najważniejsze cechy erozji: zdolność do eliminacji drobnych szczegółów (odizolowanych punktów, małych cząstek oraz wąskich wypustów) i wygładzania brzegu figury (niestety, kosztem pewnego jej zmniejszenia), zdolność do podziału niektórych cząstek, posiadających wyraźne przewężenia, na kilka odrębnych obszarów, addytywność przekształcenia, możliwość wpływu na wynik operacji poprzez dobór odpowiednich elementów strukturalnych.
Rozklejanie cząstek
Erozja na kolorach:
Dylatacja Dylatacja stanowi przekształcenie odwrotne do erozji. Zatem gdy analizujemy pewien obraz zawierający figurę X oraz kołowy element strukturalny B dylatację można zdefiniować na dwa sposoby: figura po dylatacji jest zbiorem środków wszystkich kół B, których choć jeden punkt pokrywa się z jakimkolwiek punktem figury wyjściowej, koło B przetaczamy po zewnętrznej stronie brzegu figury, a kolejne położenia jego środka wyznaczają brzeg figury po dylatacji.
Ilustracja zasady dylatacji:
Element dylatacji strukturalny możemy zdefiniować jako: Można zauważyć, że zewnętrzna strona brzegu figury jest równocześnie wewnętrzną stroną jej negatywu. Zatem dylatację można zdefiniować dodatkowo jako negatyw erozji negatywu obrazu.
Przykłady:
Ilustracja dylatacji obrazu wieloodcieniowego:
Najważniejsze cechy dylatacji: Dylatacja zamyka małe otwory i wąskie „zatoki”, przy jednoczesnym zwiększeniu powierzchni przekształcanej figury, co niekiedy prowadzi do sklejania cząstek Dylatacja obrazów wieloodcieniowych jest filtrem maksymalnym
Przykłady dylatacji obrazu wieloodcieniowego: ima = imdilate(im,se); se = strel('square',3);
Element strukturalny 5x5:
Schemat otwarcia: Otwarcie jest złożeniem erozji i dylatacji
Przykład otwarcia:
Schemat otwarcia obrazu wieloodcieniowego:
Przykład otwarcia obrazu wieloodcieniowego:
Przykład otwarcia obrazu wieloodcieniowego:
Schemat zamknięcia: Zamknięcie jest złożeniem dylatacji i erozji.
Przykład zamknięcia:
Schemat zamknięcia obrazu wieloodcieniowego:
Przykład zamknięcia obrazu wieloodcieniowego:
Przykład zamknięcia obrazu wieloodcieniowego:
Cechy otwarcia i zamknięcia: a) w przypadku obrazów binarnych: otwarcie usuwa drobne obiekty i drobne szczegóły, takie jak półwyspy i wypustki, nie zmieniając wielkości zasadniczej części figury, może też rozłączyć niektóre cząstki, zamknięcie wypełnia wąskie wcięcia i zatoki oraz drobne otwory wewnątrz cząstki, nie zmieniając wielkości zasadniczej części figury, może też połączyć niektóre cząstki, obydwie operacje nie zmieniają kształtu ani wymiarów dużych cząstek o wyrównanym, gładkim brzegu;
Cechy otwarcia i zamknięcia: b) przy obrazach wieloodcieniowych: obydwa przekształcenia powodują pewne rozmycie szczegółów obrazu, przy czym dotyczy ono przy otwarciu głównie miejsc jasnych, zaś przy zamknięciu — ciemnych, rozmycie to wynika z usunięcia bądź „zalania” szczegółów analogicznie jak w przypadku obrazów binarnych
Schemat detekcji szczytów (z lewej) i dolin (z prawej):
Przykład detekcji szczytów:
Szkieletyzacja: a) obraz wyjściowy, b) szkielet przy siatce kwadratowej c) szkielet przy siatce heksagonalnej:
Szkieletyzację przeprowadza się za pomocą przekształcenia zwanego ścienianiem. Można ją przeprowadzić przy pomocy ścieniania obrotowym elementem strukturalnym o symbolu L: Szkieletyzacja pozwala między innymi na określenie orientacji długich cząstek, klasyfikację cząstek na podstawie ich kształtu, wyznaczenie linii środkowej grubszych linii, itp..
Procedura obcinania gałęzi: a) obraz wyjściowy, b) szkielet, c) szkielet po częściowym i d) całkowitym obcięciu gałęzi:
Szkielety są bardzo czułe na poszarpania brzegów figury, co powoduje powstanie licznych dodatkowych, krótkich gałęzi szkieletu. Algorytm obcinania gałęzi polega na ścienianiu szkieletu następującym wirującym elementem strukturalnym o symbolu E: Obcinanie gałęzi szkieletu wykazuje kilka charakterystycznych cech: nie zostaną nigdy usunięte zamknięte pętle, nigdy nie zostaną obcięte gałęzie, których obydwa końce przecinają brzeg obrazu, pozostałe gałęzie zostają usunięte w stopniu zależnym jedynie od liczby powtórzeń, do całkowitej eliminacji włącznie.