Cechy kształtu Topologiczne Geometryczne spójność liczba otworów liczba Eulera szkielet obwód pole powierzchni środek ciężkości ułożenie przestrzenne momenty wyższych rzędów promienie max-min centryczność inne współczynniki kształtu... 1 Topologiczne cechy kształtów Topologiczne cechy kształtów to takie cechy, które są niezmienne względem transformacji typu rozciąganie gumy (ang. rubber-sheet), tj. przekształceń w których nie dopuszcza się cięcia płaszczyzny obszaru oraz tworzenia połączeń między jej brzegami Spójność, liczba otworów oraz liczba Eulera są niezmiennymi cechami topologicznymi Przykładowo odległość Euklidesowa nie jest cechą topologiczną, ponieważ podlega zmianie przy rozciąganiu lub kurczeniu obszaru. Podobnie obwód czy pole powierzchni Cechy topologiczne, oprócz cech geometrycznych, są zazwyczaj dodatkowym opisem kształtu 2
Spójność C obszaru C=1 Liczba otworów H Obszar zawiera trzy spójne obiekty C=3 H=1 H=1 H=2 3 Liczba Eulera E Liczba Eulera jest zależnością pomiędzy spójnością obiektu a jego liczbą otworów E = C - H E=0 E=-1 E=1 Szkielet obszaru Ważnym sposobem reprezentacji kształtu jest jego redukcja do linii zwanej szkieletem obiektu (osią środkową). Szkielet wyznacza się za pomocą algorytmów ścieniania (zwanych szkieletyzacją) Linia szkieletowa obiektu jest podstawową cechą kształtu którą wykorzystuje się przy rozpoznawaniu znaków, granulometrii czy wektoryzacji obrazu 4
bs=bwmorph(bw,'skel',inf); 5 Cechy geometryczne Obwód długość brzegu obszaru obiektu Dla siatki dyskretnej, rzeczywista długość brzegu nie jest liczbą punktów brzegowych 1. Obwód obiektu równy liczbie elementów jego brzegu (metoda najprostsza, ale wprowadza stosunkowo duży błąd estymatora wartości obwodu obiektu) 1 15 14 2 13 3 12 4 11 5 10 6 7 8 9 6
2. Obwód obiektu jest równy sumie długości odcinków łączących środki elementów konturu. Przyjmuje się, że element konturu jest kwadratem o boku = 1 Metoda ta jest dokładniejsza niż metoda liczby punktów brzegowych 7 3. Obwód obiektu wyznacza się na podstawie zależności liczba zewnętrznych boków punktów konturu liczba wierzchołków konturu Metoda ta zapewnia estymator długości o zerowej wartości średniej i minimalnej wariancji dla odcinków nachylonych pod różnym kątem 8
Wyznaczanie (śledzenie) brzegu wewnętrznego obszaru 1. Przeszukuj obraz kolejno liniami, aż do znalezienia pierwszego punktu obszaru. Oznacz ten piksel jako P 0 (początkowy punkt brzegu). Zdefiniuj zmienną dir zapamiętującą kierunek poprzedniego ruchu wzdłuż brzegu (tj. od poprzedniego do następnego punktu brzegu). Przyporządkuj dir=3 dla 4-sąsiedztwa dir=7 dla 8-sąsiedztwa 2. Przeszukaj sąsiedztwo 3x3 aktualnego piksela obracając się przeciwnie do ruchu wskazówek zegara, rozpoczynając od kierunku a) dla 4-sąsiedztwa: (dir+3) mod 4 b) dla 8-sąsiedztwa: (dir+7) mod 8 gdy dir jest liczbą parzystą (dir+6) mod 8 gdy dir jest liczbą nieparzystą Pierwszy znaleziony punkt obszaru stanowi nowy element brzegu P n. Uaktualnij wartość dir. 3. Jeśli P n = P 1 i P n-1 =P 0, to stop. W przeciwnym razie idź do 2. 4. Brzeg wewnętrzny określają piksele P 0,..., P n-2 9 Kierunki dla 4-sąsiedztwa 1 Kierunki dla 8-sąsiedztwa 3 2 1 2 0 4 0 5 7 3 1 18 17 3 2 16 15 4 14 5 6 13 7 12 8 9 10 11 6 1 15 14 2 13 3 12 4 11 5 10 6 7 8 9 10
Kody łańcuchowe (Freemana) 1 2 3 1 2 0 4 0 3 2 2 1 2 3 2 1 3 1 3 0 1 3 1 3 0 0 0 5 6 7 4 4 3 5 2 6 2 6 2 7 2 6 0 0 0 323303300011112122 566760002222344 11 Sygnatury jednowymiarowe funkcje odwzorowujące brzeg obszaru (np. kod Freemana) Sygnatury opisujące brzeg jako odległość w funkcji kąta [1] Uzyskany opis jest inwariantny od skali i rotacji obiektu 12
Reprezentacja grup punktów w postaci odcinków (łamanej) Iteracyjny algorytm poszukiwania punktów końcowych (ang. Iterative End Point Fit - IEPF) Aproksymacja odcinkami grupy punktów polega na rekursywnym podziale odcinka utworzonego przez punkt początkowy i końcowy grupy. 1. Dla każdego punktu grupy zbadaj odległość od prostej pomocniczej zawierającej odcinek. Jeśli spełniony jest warunek zadanej wartości progu odległości to stop. 2. Jeśli są punkty nie spełniające warunku to znajdź punkt najbardziej oddalony i podziel początkową grupę punktów na dwie nowe grupy, dla każdej podgrupy przejdź do punktu 1. 13 Momenty statystyczne dla obrazów cyfrowych Momenty geometryczne zwykłe - liczba pikseli obszaru (pole powierzchni obiektu) Momenty centralne - współrzędne środka ciężkości (przyjmuje się, że określają położenie na obrazie) 14
Momenty centralne do 3 rzędu wyrażone za pomocą momentów zwykłych Momenty te stanowią podstawę do wyznaczenia 7 momentów niezależnych od przesunięcia, rotacji oraz skali 15 Momenty Hu (niezmienniki względem przesunięcia, obrotu i skali) Znormalizowane momenty centralne Momenty Hu 16
Centryczność można zdefiniować jako stosunek długości maksymalnej cięciwy obiektu do maksymalnej długości cięciwy prostopadłej do niej (niezależna od przesunięcia, rotacji i skali) - pole powierzchni obiektu 17 Współczynnik zwartości obiektu (kołowości) jest miarą podobieństwa kształtu obszaru do koła. Zwartość jest współczynnikiem bezwymiarowym również niezależnym od liniowych transformacji (przesunięcia, rotacji i skali) 18
Promienie są odpowiednio najdłuższymi i najkrótszymi promieniami wyprowadzonymi ześrodka ciężkości figury. Stosunek może służyć jako miara wydłużenia figury (ang. Object aspect ratio) 19 Okrąg opisany na obiekcie - liczba punktów obiektu 20
Prostokąt opisujący (minimalny prostokąt graniczny) prostokąt o najmniejszym polu powierzchni zawierający dany obiekt, przy czym kierunek dłuższego boku prostokąta jest równoległy do kierunku wyznaczającego oś najmniejszej bezwładności figury - smukłość 21 Średnice Fereta Ułożenie przestrzenne obiektu można wyznaczyć przez rzutowanie obiektu na osie układu kartezjańskiego. Najdłuższą cięciwą (Fereta) jest odcinek łączący najodleglejsze punkty brzegu figury Alternatywna miara wydłużenia - liczba punktów obiektu 22
Określanie położenia i orientacji (kierunku) obiektów Położenie obiektu na obrazie określa się zwykle za pomocą współrzędnych środka ciężkości obszaru - liczba punktów obiektu Orientację wyznacza się dla obiektów smukłych. Jako orientację przyjmuje się kierunek osi o najmniejszej bezwładności (co odpowiada kierunkowi dłuższego boku prostokąta opisującego) 23 Zliczanie obiektów na obrazie Detekcja krawędzi? Wykorzystanie erozji i=imread('circles.png'); in=bwmorph(i,'erode',10); [il,num]=bwlabel(in); figure,imshow(in) disp('liczba obiektów:');num 24
Zliczanie obiektów na obrazie z wykorzystaniem transformacji odległościowej Transformacja odległościowa (ang. distance transform) Polega na sumowaniu kolejnych wyników pośrednich erozji obrazu 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 1 1 1 1 1 0 0 0 1 1 1 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 2 2 1 0 0 0 1 2 2 2 1 0 0 0 1 2 2 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 2 2 1 0 0 0 1 2 3 2 1 0 0 0 1 2 2 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 Transformacja odległościowa s=[0 1 0; 1 1 1; 0 1 0]; in=uint8(ib);ib=uint8(ib); for j=1:20 ib=imerode(ib,s); in=in+uint8(ib); end 25 Transformacja odległościowa przykład zastosowania do zliczania obiektów Transformacja odległościowa Binaryzacja 26
Transformacja odległościowa przykład przygotowania obrazu do segmentacji metodą wododziałową Transformacja odległościowa Segmentacja wododziałowa 27