“The whole is greater than the sum of its parts.” Max Wertheimer 10 Segmentierung “The whole is greater than the sum of its parts.” Max Wertheimer
Inhalt Einführung Segmentierung Bildverarbeitungssystem Kantenbasiert Kantendetektion Konturverfolgung Modellbasiert Hough – Transformation Pixelorientiert Regionenbasiert Region Growing Split & Merge Wasserscheide
Einführung Ziel Unterscheidung von „Teilbildern/Inhalte“ Automatische Klassifikation jedes Inhalts Beispiele Medien – Schrifterkennung Biometrie – Erkennung von Personen Produktionsanlagen – Identifizierung von Teilen Medizin – Identifizierung von Zellen/Gewebe Umwelt – Auswertung von Luftaufnahmen
Beispiele
Einführung Segmentierung Zusammenfassen von Punkten zu größeren Einheiten Unterteilung des Bildes in „zusammenhängende“ Bereiche, Bildsegmente Klassifizierung Zuweisung von Bereichen in „Objektklassen“ Segmentierung ist der erste Schritt der erkennenden Bildverarbeitung Segmentierung ist eines der komplexesten Kapitel der Bildverarbeitung !
Schritte der Bildverarbeitung
Bildverarbeitungssystem Stufen eines Bildverarbeitungssystems Bilderfassung Bildvorverarbeitung Segmentierung Merkmalsextraktion Klassifikation
1: Bilderfassung Objekte werden mit Sensorik erfasst Nur erfasste Eigenschaften können ausgewertet werden
2: Bildvorverarbeitung Bildmodifikation, welche den Informationsgehalt nicht bedeutend ändert Beispiele: Beleuchtungskorrekturen Rauschreduzierung Kontrasterhöhung Größenanpassung
3: Segmentierung Gegeben Bild B mit Bildpunkten f1,...,fn Gesucht Regionen Ri für die gilt:
4: Merkmalsextraktion Merkmale beschreiben Eigenschaften von Objekten Einfache Merkmale Umschreibendes Rechteck Mittlerer Intensität Flächeninhalt Schwerpunkt Umfang Abgeleitete Merkmale Kompaktheit Lage, Orientierung
5: Klassifizierung Klassifizierung von Objekten anhand ihrer Merkmale Notwendige Voraussetzung Merkmalsanalyse / Clustering des Merkmalraums Beispiel
6: Erfassung von Objekten Einfache/Heuristische Vorgehensweise Durch a-priori-Wissen Segmente identifizieren / ausschließen Segmente kleiner N Pixel werden ignoriert Segmente außerhalb des Area-Of-Interest / Region-Of-Interest werden ignoriert Größenverhältnis Farbe
Segmentierung
Segmentierung Gegeben Bild B mit Bildpunkten f1,...,fn Gesucht Regionen Ri für die gilt:
Strategien Diskontinuität Kanten Ähnlichkeit Schwellwert („lose“ Punkte) Wachstumsverfahren (Regionen)
Segmentierung durch Detektion von Diskontinuitäten
Detektion von Diskontinuitäten Detektion von scharfen, lokalen Änderungen der Bildintensität Kantenpunkte Kanten entstehen durch die Verbindung von Kantenpunkten
Detektion von Diskontinuitäten Punkte-Detektoren
Detektion von Linien Linien-Detektoren
Detektion von Linien Laplace Absolute Positive
Kantenbasierte Verfahren Kanten entsprechen häufig den Konturen der gesuchten Objekte Im Gegensatz zu punktbasierten Verfahren werden die gesuchten Objekte nicht als Fläche, sondern als Umrandung extrahiert Verarbeitungsschritte Hochpaß Konturverfolgung Konturverdünnung / Skelettierung / Thinning Bestimmung der umrandeten Gebiete
Kantentypen
Kantentypen
Reele Kanten
Kantenextraktion Extremum Nulldurchgang Bild Profil einer horizontalen Linie Erste Ableitung Extremum Zweite Ableitung Nulldurchgang
Kantenextraktion Berechnung der Ableitung in jedem Pixel: Ableitungsfilter 1. Ordnung (Roberts) Ableitungsfilter mit einfacher Mittelwertbildung (Prewitt, Sobel) Ableitungsfilter 2. Ordnung (Laplace) Ableitungsbilder werden (mittels Schwellwert) binarisiert
Beispiele A B C D A: Original B: Prewitt C: Sobel D: Laplace
Einfluß von Rauschen Var = 0.1 Var = 1 Var = 10
LoG Operator
Kantendetektion Sobel LoG Schwellwert Zero Cross
Konturverfolgung: Canny Ziel Binärbild mit möglichst geschlossenen Konturen Einfaches Vorgehen Von Startpunkt aus wird der nächste Konturpunkt entlang eines Suchstrahls identifiziert Richtung ergibt sich aus bereits erhaltenen Punkten oder dem Gradienten Nachteil Einmalige Fehlberechnung führt zu falscher Kontur
Orientierung der Normale
Suchrichtung senkrecht zum Gradienten Konturverfolgung Objekt Gradient f(x,y) (Grauwert) Kante y Hintergrund x Suchrichtung senkrecht zum Gradienten
Gradient vs Log vs Canny
Hough Transformation Ziel: „Globale“ Linienerkennung Transformiert das Segmentierungsproblem im Bildraum in ein Finden von lokalen Maxima („Punkte“) im Parameterraum Man habe n Punkte vorsegmentiert Suche Submengen dieser Punkte, welche auf Geraden liegen
Hough Transformation Im Parameterraum wird jeder Punkt des Bildraums durch eine Gerade abgebildet Punkte, die auf einer Gerade liegen, schneiden sich an einer Stelle (Fächern) Bildraum Parameterraum Hough-Raum
Hough Transformation Für einen beliebigen Punkt (xi, yi) im Bild gilt: yi = axi + b Es gibt unendlich viele a & b, welche die Gleichung erfüllen b = -xia + yi in der ab Ebene alle a & b liegen auf einer Gerade Die ab-Geraden von ko-linearen Punkten schneiden sich!
Geraden Detektion Finde alle Kanten im Bild (= Hochpaß, Menge von Punkten) Unterteile den Parameterraum in Zellen Für jeden detektierten Punkt (xk, yk) im Bild: Setze ai zu einem Zellenwert aus i = (imin, imax ) Löse bi = -xkai + yk und finde bi Inkrementiere entsprechende (ai, bi) Zelle
Hough Transformation Bildraum Akkumulator Parameter- raum y x d k 1 2 3 6 7 8 5 4 1 2 3 4 5 6 7 8 9 10 Bildraum Akkumulator x d 1 2 3 6 7 8 5 4 0.2 0.4 0.6 0.8 1 8 1 2 3 4 5 6 Parameter- raum 7 6 5 4 3 2 1 k 0 0.2 0.4 0.6 0.8 1
Hough Transformation Hessesche Normalenform: Parameter (Radon Transformation) x y ´ p´
Hough Transformation Punkte im Bildraum bilden sich auf Sinus-Kurven im Parameterraum ab Alle Sinus-Kurven ko-linearer Punkte schneiden sich an einer Stelle
Hough Transformation
Hough Transformation
Hough Transformation
Hough Transformation
Hough Transformation Kantenbild Original Ergebnis Hough-Raum
Hough Transformation
Hough Transformation Verhalten Robust gegenüber unterbrochenen Linien: Wert wird zwar verringert, lokales Maximum bleibt Bei verrauschten Linien: Cluster mit hohen Werten anstatt diskretes Maximum
Hough Transformation
Segmentierung durch Detektion von Ähnlichkeiten
Schwellwertverfahren Global: T fester Grauwert Dynamisch/adaptiv: T hängt von der Position innerhalb des Bildes ab Lokal: T hängt von den lokalen Grautönen ab (z.B. lokalen Mittelwert)
Verfahren Schwellwertverfahren Bereichswachstum Split-and-merge Wasserscheide
Punktorientierte Segmentierung Einfacher Schwellwert T (Threshold) = Segmentierung aufgrund der Grauwertinformation
Multi-modale Histogramme
Punktorientierte Segmentierung
Punktorientierte Segmentierung 3 1 2
Rauscheneinfluß Var = 10 Var = 50
Rauschentfernung & Schwellwert
Rauschentfernung in kleinen Regionen
Gradient & lokale Histogramme
Beleuchtungseinfluß
Beleuchtungseinfluß Erweiterung auf multimodale Histogramme
Beleuchtungseinfluß
Adaptives Schwellwertverfahren
Adaptives Schwellwertverfahren
Adaptives Schwellwertverfahren
Adaptives Schwellwertverfahren
Adaptives Schwellwertverfahren
Lokaler Schwellwert
Regionenbasierte Verfahren Ziel Aufteilung des Bildes in Zonen maximaler Homogenität (Grauwert, Farbe, etc.) Verfahren Bottom up: Region Growing Top Down: Split & Merge Vorteil Information über Nachbarschaft Robuster bei verrauschten Bildern
Region Growing Ausgehend von n-Ursprungspixel (Saatzellen, seed points) werden andere Pixel, die ein Homogenitätskriterium erfüllen, aggregiert R1 R2 R3
Parameter Anzahl & Position der Startpunkte Homogenitätskriterium Intensität Farbe Statistiken, Textur Stopp Regelung Lokale Kriterien: Grauton/Farbe, Textur Regionsgröße und –Form (Addaptive) Ähnlichkeit zu der Region
Region Growing Setzen von n Seed Points (Initiale Regionen) - Zufällig - Aufgrund von Beurteilung des Bildinhalts Untersuchung der 4 (oder 8)-Nachbarschaft Fall1: Punkt gehört zu keiner Region & H.-Krit. erfüllt Zuordnung zur Region Fall2: Punkt gehört zu keiner Region & H.-Krit. nicht erfüllt Keine Zuordnung Fall3: Punkt gehört bereits zu einer anderen Region & Homogenitätskriterium erfüllt Regionen werden vereinigt Fall4: Punkt gehört bereits zu einer anderen Region & Homogenitätskriterium nicht erfüllt Keine Vereinigung Wiederhole 1 und 2 bis keine Änderungen mehr eintreten
Originalbild Segmentiertes Bild Region Growing Originalbild Segmentiertes Bild
Region Growing Seeds: Maximum Grautöne DG < 255, 8-connected
Region Growing Problem Wahl der Seed Points Wahl des Homogenitätskriteriums Formulierung des Stop-Kriteriums Vorteile Einfache Erweiterbarkeit auf 3D Eleganteste Lösung multimodaler Historgamme Nachteile Unterschiedliche Seed Points können zu vollständig anderen Segmentierungen führen Anzahl der Regionen muß vorher festgelegt werden
Split & Merge Unterteilung und Verbindung von Bereichen in Quadrate entsprechend einem Homogenitäts-kriterium. Beispiele für Homogenitätskriterium: Grau-/Farbwerte identisch/ähnlich Grau-/Farbwerte im gleichen Intervall Grau-/Farbwerte ähnlich verteilt (Momentum, Textur)
Split & Merge Split Region Ri, wenn: P(Ri)=false Merge angrenzende und homo-gene Regionen Ri und Rj, wenn: P(RiRj)=true Rekursionen beendet, wenn kein weiteres Unterteilen / Vereinigen mehr möglich ist
Split & Merge 1 2 00 02 01 03 30 32 33 310 311 312 314 Quadtree 1 2 00 01 02 03 30 32 33 310 311 312 313
Merge Split Gefahr von „Overgrowing“ – zu viele Regionen „Undergrowing“ – zu wenige Regionen
Split & Merge Eliminierung von kleinen Regionen infolge Overgrowing: Suche die kleinste / eine kleine Region Ri Finde die benachbarte Region Rn zu der Ri unter Berücksichtigung des Homogenitätskriteriums am besten paßt und vereinige diese Diese Schritte werden so lange wiederholt, bis alle Regionen eine vorgegebene Mindestgröße besitzen
Split & Merge 32 ² 16² 8²
Wasserscheide Segmentierung
Wasserscheide Segmentierung
Damm Konstruktion Finde letzten Schritt vor Vereinigung M1 und M2 Finde vereinigte Menge q Dilatiere M1 und M2: Strukturelement platziert nur in q Keine Dilatation an Stellen, welche M1 und M2 vereinigen Damm sind die übrig gebliebenen Pixel innerhalb von q
Wasserscheide Segmentierung auf Gradientenbild
Über-Segmentierung der Gradientenbilder
Marker Konstruktion Tiefpaßfilterung Vereine Nachbarpunkte gleichen Grautons = seeds Wasserscheide auf den Seeds => Unterteilung des Gesamtbildes in „Zellen“ Gradient des Gesamtbildes Wasserscheide lokal in jeder „Zelle“
Marker-Boundaries
Markers Größe Form Position Orientierung Relative Abstände Textur Berücksichtigung von a-priori „Wissen“ oder „Kontext“ über das Bild Größe Form Position Orientierung Relative Abstände Textur etc. etc.
Wissen Berücksichtigung
Modellbasiertes Segmentieren Berücksichtigung von a priori Informationen über Art und Aussehen der zu segmentierenden Objekte Mensch besitzt ein „Modell“ des Objektes im Kopf, das Segmentieren vereinfacht: Die Kreisausschnitte werden zu durchgehenden Strecken ergänzt
Thinning Ziel Eliminierung von kurzen Kanten hervorgerufen durch Rauschen Verdünnung von Kanten Geforderte Eigenschaften Dünnes Skelett (möglichst nur 1 Pixel) Skelett zusammengehöriger Kanten soll zusammenhängen Beibehaltung der absoluten und relativen Größen
Übergang Detektion Übergang: - zu + + zu – Innerhalb/außerhalb: 0 oder +
Thinning Scan-Line-Thinning Beschränkung auf eine Richtung (horiz./vertikal) Skelett als Mittelpunkt der Positionen „Wechsel zw. Hintergrund und Objekt“ und „Wechsel zw. Objekt und Hintergrund “ Seiteneffekt: Verschiebung des Skeletts zu einer Seite hin
Zhang/Suen-Algorithmus Thinning Zhang/Suen-Algorithmus
Graphen-Kantenverfolgung Kosten = fmax – (fi – fj) = fmax – fi + fj
Konturverfolgung X-Chromosom mit gefundener Kante