Geometria obrazu Wykład 4

Slides:



Advertisements
Podobne prezentacje
Klasyfikacja danych Metoda hierarchiczne
Advertisements

Modele oświetlenia Punktowe źródła światła Inne
Elementy przetwarzania obrazów
DOMINOWANIE W GRAFACH Magdalena Lemańska.
CIĄGI.
ALGORYTMY GRAFOWE.
Geometria obrazu Wykład 5
Grażyna Mirkowska PJWSTK 15 listopad 2000
Przetwarzanie i rozpoznawanie obrazów
Geometria obrazu Wykład 3
Homologia, Rozdział I „Przegląd” Homologia, Rozdział 1.
Wykład 6 Najkrótsza ścieżka w grafie z jednym źródłem
Minimalne drzewa rozpinające
Algorytm Dijkstry (przykład)
Temat: WIELOŚCIANY KLASA III P r.
Badania operacyjne. Wykład 2
ALGORYTMY I STRUKTURY DANYCH
Ciągi de Bruijna generowanie, własności
CLUSTERING Metody grupowania danych Plan wykładu Wprowadzenie Dziedziny zastosowania Co to jest problem klastrowania? Problem wyszukiwania optymalnych.
WYKŁAD 7. Spójność i rozpięte drzewa
WYKŁAD 8. Siła spójności Wierzchołek v nazywamy wierzchołkiem cięcia grafu G, gdy podgraf G-v ma więcej składowych spójności niż G. Krawędź e nazywamy.
Materiały do zajęć z przedmiotu: Narzędzia i języki programowania Programowanie w języku PASCAL Część 7: Procedury i funkcje © Jan Kaczmarek.
WYKŁAD 8. Siła spójności A,B – dowolne podzbiory V(G)
GRAFY PLANARNE To grafy, które można narysować na płaszczyźnie tak, by krawędzie nie przecinały się (poza swoimi końcami). Na przykład K_4, ale nie K_5.
Dariusz Odejewski Krzysztof Wójcik
Algorytm Rochio’a.
Rozpoznawanie obrazów
Paweł Kramarski Seminarium Dyplomowe Magisterskie 2
Macierz incydencji Macierzą incydencji grafu skierowanego D = (V, A), gdzie V = {1, ..., n} oraz A = {a1, ..., am}, nazywamy macierz I(D) = [aij]i=1,...,n,
Geometria obrazu Wykład 13
Geometria obrazu Wykład 8
Sieci neuronowe jednokierunkowe wielowarstwowe
Metody Symulacyjne w Telekomunikacji (MEST) Wykład 6/7: Analiza statystyczna wyników symulacyjnych  Dr inż. Halina Tarasiuk
Grafika wektorowa i bitmapa
WYKŁAD 7. Spójność i rozpięte drzewa Graf jest spójny, gdy dla każdego podziału V na dwa rozłączne podzbiory A i B istnieje krawędź z A do B. Definicja.
Zależności funkcyjne.
Minimalne drzewa rozpinające
Krótki kurs geometrii płaszczyzny
Przepływy w sieciach. Twierdzenie minimaksowe.
Komputerowe metody przetwarzania obrazów cyfrowych
Detekcja twarzy w obrazach cyfrowych
Geometria obliczeniowa Wykład 7
Systemy wspomagania decyzji
II. Matematyczne podstawy MK
Geometria obliczeniowa Wykład 5
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
VI EKSPLORACJA DANYCH Zadania eksploracji danych: klasyfikacja
Algorytmy i Struktury Danych
Geometria obliczeniowa Wykład 13 Planowanie ruchu 1.Znajdywanie ścieżki między dwoma punktami. 2.Ruch postępowy robota wielokątnego na płasz- czyźnie.
Grafika i komunikacja człowieka z komputerem
Geometria obrazu Wykład 3
Grafika i komunikacja człowieka z komputerem
Geometria obliczeniowa Wykład 5 Geometryczne struktury danych 1. Drzewa odcinków 2. Drzewa czwórkowe 3. Drzewa BSP.
Geometria obrazu Wykład 6
PLANARNOŚĆ i KOLOROWANIE MAP. Problem Jaka jest minimalna liczba kolorów, za pomocą których można pokolorować obszary województw na mapie Polski tak,
WĘDRÓWKI PO GRAFACH Obchody Eulera Cykle Hamiltona.
Algorytmy grafowe Minimalne drzewa rozpinające
GRA CHOMP. Czym jest chomp? Jest to gra dla dwóch osób, rozgrywana na prostokątnej tablicy, zwanej „tabliczką czekolady”
IFS, IFSP I GRA W CHAOS ZBIORY FRAKTALNE I WYBRANE SPOSOBY ICH GENEROWANIA.
Grafika 2d - Podstawy. Kontakt Daniel Sadowski FTP: draver/GRK - wyklady.
Geometria obrazu Wykład 3 Rozpoznawanie obrazu 1. Suma Minkowskiego 2. Morfologia matematyczna 3. Szkielety.
Geometria obrazu Wykład 5 Segmentacja Grafy sąsiedztwa. 1.Grafy definiowane przez różne obszary. 2.Minimalne drzewo rozpinające. Metody obszarowe. 1.Drzewa.
FIGURY PŁASKIE.
Geometria obrazu Wykład 4
Figury geometryczne.
Geometria obliczeniowa Wykład 7
Co do tej pory robiliśmy:
Jednorównaniowy model regresji liniowej
Algorytmy i struktury danych
ALGORYTMY I STRUKTURY DANYCH
Zapis prezentacji:

Geometria obrazu Wykład 4 Grafy sąsiedztwa. Grafy definiowane przez różne obszary Minimalne drzewo rozpinające Drzewa czwórkowe. Podział obrazu. Metody podziału

Grafy sąsiedztwa. Definicja. Grafem sąsiedztwa dla zbioru n punktów P w przestrzeni metrycznej nazywamy graf o wierzchołkach w P, do którego krawędź pq należy wtedy i tylko wtedy, gdy spełnione są pewne geometryczne warunki. Definicja K-najbliższym grafem sąsiedztwa jest graf, w którym krawędź pq istnieje, gdy odległość między p i q należy do k najmniejszych odległości z p do innych wierzchołków z P.

Grafy definiowane przez różne obszary. grafy planarne grafy bez trójkątów grafy bez czworokątów grafy acykliczne

Definicja. Minimalne drzewo rozpinające MST(G) grafu G = (V, E), którego każda krawędź e ma wagę w(e), jest spójnym, acyklicznym grafem rozpiętym na zbiorze V i minimalnej sumie wag krawędzi. Algorytm Kruskala. posortuj krawędzie według wag; dobierz kolejne krawędzie w porządku niemalejącym tak, aby nie tworzyły cyklu; Algorytm Prima. wybierz dowolny wierzchołek; dołącz do wybranego zbioru kolejny najbliższy wierzchołek;

Lemat. Algorytmy te działają odpowiednio w czasie O(|E| log |V|) oraz O(|E| + |V| log |V|). Definicja. MST(S) rozpięte na punktach ze zbioru S w Rn jest drzewem o wierzchołkach w S i minimalnej sumarycznej długości krawędzi. MST(S) rozpięte na punktach z SR2 można znaleźć w czasie O(n log n), a w przestrzeni d-wymiarowej (d > 2) w O(nd/2).

Podział (segmentacja) obrazu. Podziałem obrazu nazywamy proces podziału cyfrowego obrazu na wiele odcinków (zbiorów pikseli, zwanych też superpikselami). Celem podziału jest uproszczenie lub zmiana reprezentacji obrazu na uwypuklającą jakąś własność (np. podział na barwy) lub łatwiejszą do analizy (np. dla obliczeń równoległych). Podział obrazu jest zwykle wykorzystywany do lokalizacji obiektów lub ich brzegu na obrazie. Innymi słowy, jest to proces przydzielania pikselom etykiet taki, że piksele z takimi samymi etykietami mają wspólne własności.

Metody segmentacji możemy podzielić na kilka klas w zależności od rodzaju informacji określającej podział lub innych uwarunkowań. Możemy wyróżnić następujące metody: obszarowe: - działu wodnego, - podziału na kracie (podziału i łączenia), - rozrostu obszaru, krawędziowe, punktowe: - klastrowe, - progowe, hybrydowe – łączące w sobie powyższe metody, inne (automatyczne, półautomatyczne, zależne od wymiaru, samouczące się).

Możemy wyróżnić tu dwie podmetody: opadu deszczu (rainfall), Metoda działu wodnego. Możemy wyróżnić tu dwie podmetody: opadu deszczu (rainfall), zatapiania (sinking). (geomatura.pl)

Otrzymujemy tzw. graf lokalnego sąsiedztwa. Metoda opadu deszczu. Dla każdej pary sąsiednich (choć niekoniecznie) pikseli liczymy wagi łączących je krawędzi odpowiadające euklidesowej odległości wektorów RGB w tych punktach: wij = dij = ||RGBi- RGBj||. Otrzymujemy tzw. graf lokalnego sąsiedztwa. Licząc gradienty w tak określonym polu dostajemy następujący podział (kierunek spływu wody z gór): [G.Economou et al. „Godesic distance and MST based image sgmentation”]

Otrzymujemy spójne składowe odpowiadające zlewiskom, które wyznaczają podział obrazu (niebezpieczeństwo stanowi duża „dziura”, wokół której są mało różniące się obiekty – wtedy przy podziale obrazu mogą zostać „wessane” – stają się nierozróżnialne). [G.Economou et al. „Godesic distance and MST based image sgmentation”]

suma wag wij na ścieżce łączącej dane punkty lub Metoda zatapiania. Tak jak poprzednio tworzymy graf lokalnego sąsiedztwa, obliczamy MST i określamy na nim miarę, np. suma wag wij na ścieżce łączącej dane punkty lub maksimum z wag na takiej ścieżce. „Zatapiamy” zlewiska do pewnego poziomu. Obraz dzieli się na obszary zatopione i nie. W zależności od wybranej strategii otrzymujemy różne wyniki. [G.Economou et al. „Godesic distance and MST based image sgmentation”]

Zastosowanie grafu najbliższego sąsiedztwa. Wierzchołkami grafu są poszczególne piksele, a wagą krawędzi minimalna odległość między odpowiednimi punktami (x,y,r,g,b) . Badamy otoczenia pikseli o promieniu r. Takie podejście daje lepszy wynik od poprzedniego np. następującym przypadku: [P.F.Felzenszwalb et al. „Efficient graph-based image segmentation”]

Jeszcze jeden przykład. Wśród k najbliższych wierzchołków przypisujmy badanemu pikselowi barwę większości sąsiadów. [R.Cardenes et al. „Computational Geometry Computation and kNN Segmentation in ITK”.

Drzewo czwórkowe (quadtree). Drzewo czwórkowe dla n-elementowego zbioru punktów P (card(P) oznacza licz-nosć zbioru P) definiujemy w następujący sposób. Niech Q := [x1,x2][y1,y2] będzie kwadratem. Jeśli card(P)  1, to drzewo czwórkowe zawiera pojedynczy liść, w którym pamię-tamy zbiór P i kwadrat Q. W przeciwnym przypadku dzielimy kwa-drat Q na ćwiartki QNE, QNW, QSW, QSE względem xm := (x1+x2)/2 i ym := (y1+y2)/2, gdzie PNE := {p  P: px > xm , py > ym }, PNW := {p  P: px  xm , py > ym }, PSW := {p  P: px  xm , py  ym }, PSE := {p  P: px > xm , py  ym }. Korzeniowi drzewa odpowiada kwadrat Q a jego synom - QNE, QNW, QSW, QSE . W wierzchołku v trzymamy kwadrat Q(v). QNE QNW QSW QSE NE NW SW SE

Drzewa czwórkowe mogą być wy-korzystane np Drzewa czwórkowe mogą być wy-korzystane np. w celu kompresji całotonalnych obrazów bitmap-owych. Można też skorzystać z nich do tworzenia sieci trójkątów dla efek-tywnych obliczeń numerycznych w szczególnych przypadkach płytek obwodów drukowanych (kierunki ścieżek różnią się o wielokrotność /4). Siatki muszą : być dopasowane (nie ma wierzch-ołków trójkątów na krawędziach innych trójkątów), uwzględniać dane (ścieżki są za-warte w krawędziach siatki), być dobrze ukształtowana (trójkąty muszą mieć określony kształt), być niejednolite (małe trójkąty bli-sko ścieżek, a duże – daleko).

Metoda podziału na kracie (podziału i łączenia). Wierzchołkami kraty są poszczególne piksele połączone krawędziami z sąsiadami (4 lub 8). Wagą krawędzi jest różnica intensywności barw między sąsiadami. Dzielimy tylko te obszary, które nie spełniają warunku podobnej intensywności barw (metoda podziału). Następnie łączymy sąsiadujące obszary o zbliżonych intensywnościach barw. Wadą tej metody jest jej duża złożoność i wrażliwość na dobór parametrów.

Przykład. [P.F.Felzenszwalb et al. „Efficient graph-based image segmentation”]

Metoda rozrostu obszaru. W metodzie tej, piksel oprócz konieczności posiadania określonych własności (np. koloru) musi sąsiadować z innymi pikselami należącymi do danego obszaru. W tym celu konieczne jest zdefiniowanie parametrów początkowych: obiektu (obiektów) bazowego, który ma się rozrastać, kryterium dołączania kolejnych pikseli. Możemy tu zastosować algorytmy morfologii matematycznej. Jeśli krawędzie obszaru nie są wyraźne może się rozlewać po całym obrazie.

Przykład. [http://http://www.cse.unr.edu/~bebis/CS791E/Notes/RegionGrowing.pdf]

Inny przykład. [http://http://research.rmutp.ac.th/research/reference/Region%20growing%20a%20new%20approach.pdf]

Metoda krawędziowa. Stosując segmentację krawędziową nie wykrywamy bezpośrednio obszarów, ale określamy granice między nimi wykorzystując w tym celu np. filtry gradientowe lub Laplace’a. (http://sirius.cs.put.poznan.pl/~inf74839/proceedings/binwr.pdf)

Metoda k-centroidów (k-means). Metoda skupiskowa (cluster) – wybieramy zbiór obiektów i dopasowujemy do nich elementy obrazu. Następnie powtarzamy to samo z innymi zbiorami, aż nie zajdą żadne zmiany. Przykład. Metoda k-centroidów (k-means). [http://http://en.wikipedia.org/wiki/K-means_clustering]

Metoda progowa. Załóżmy, że mamy dany obraz w różnych odcieniach szarości. Segmentacja przez progowanie polega na określeniu pewnej wartości pro-gowej T (w skali intensywności obrazu), względem której każdy element piksel obrazu jest przydzielany do jednej z dwóch kategorii – obiekt lub tło. Otrzymujemy funkcję W zależności od potrzeb obiekt (tło) odpowiadają punktom o wartości 1 lub 0. Aby operacja progowania miała sens, piksele obiektu muszą mieć inny zakres intensywności niż tło.

Progi możemy definiować na różne sposoby Progi możemy definiować na różne sposoby. Mówimy o progu globalnym, gdy wartość progu jest ustalana na podstawie całego obrazu . Gdy wartość progu zależy od współrzędnych przestrzennych (x,y) obrazu to mówimy, że próg jest ustalany dynamicznie . Gdy próg zarówno zależy od intensywności obrazu oraz jego pewnej cechy p(x,y), to próg nazywamy lokalnym. Ma to zastosowanie np. gdy obraz jest nierównomiernie oświetlony (wtedy p(x,y) odpowiada średniej jasności obrazu w danym otoczeniu).

X Przykład. Progowanie lokalne z maska Gaussa. [www.ii.uj.edu.pl/~rakowski/TOM_prezentacja.ppt]

W adaptacyjnym progowaniu wieloprzebiegowym w każdym kroku pewne piksele są klasyfikowane na podstawie ich wartości oraz progu obliczonego na podstawie wartości pikseli z pewnego zdefiniowanego otoczenia. Pozostałe, niesklasyfikowane piksele przechodzą do następnego etapu. Algorytm kończy działanie, gdy wszystkie piksele obrazu zostaną sklasyfikowane. Przykład. Lokalny próg dla piksela (x,y) może być liczony według wzoru txy = mxy + vxy, gdy vxy > vmin, gdzie m oznacza wartość średnią a v wariancję. Jeśli vxy < vmin, to wartość progu txy jest równa wartości progu dla poprzednio przetwarzanego piksela. Praktycznym problemem dającym się rozwiązać przy pomocy progowania adaptacyjnego jest sytuacja, w której na szukany obiekt pada intensywny refleks światła, co czyni jego barwę nieregularną z punktu widzenia kamery. W takim przypadku dobór pojedynczego progu może być niewystarczający.

Przykład. [http://www.ee.pw.edu.pl/~czajewsw/studenckie/magisterskie/Daniel_Chade.pdf]

Niekoniecznie musi być dokładnie jeden próg Niekoniecznie musi być dokładnie jeden próg. Przy progowaniu wielopoziomowym wartości odpowiednich poziomów progowania są elementami wektora T=[T1, T2,..., Tn]. W jego wyniku obraz podlega segmentacji na n+1 obszarów o różnych intensywnościach, np. progowanie dwupoziomowe wyznacza trzy takie obszary: [aragorn.pb.bialystok.pl/~boldak/DIP/CPO-W07-v01-50pr.pdf]

Ten sam algorytm z różnymi progami będzie (zazwyczaj) określał inne obszary. Jak zatem można określać progi , aby wynik był zgodny z naszymi oczekiwaniami? Ręcznie (interaktywnie). Automatycznie. Określenie właściwego progu jest skomplikowanym problemem, na którego rozwiązanie może mieć wpływ np. średnia intensywność szukanego obiektu i tła, ich rozmiary itp..

Dziękuję za uwagę.