Form: Morphologische Operatoren Informationsgewinnung ● Binarisierte Bilder enthalten oft zusätzliche Strukturen oder nicht markierte Punkte Korrektur durch morphologische Operatoren Quelle: Jähne B. Digitale Bildverarbeitung Computer Vision 1_Seite 1 Form: Erosion und Dilatation Informationsgewinnung ● Morphologische Operatoren sind lokale Operatoren, die innerhalb bestimmter Nachbarschaften (Fenster, strukturierendes Element) angewandt werden. ● Erosion - logische UND-Verknüpfung (bzgl. 255): Ein Bildpunkt wird auf 0 gesetzt, wenn innerhalb des strukturierenden Elements eine 0 vorhanden ist, sonst auf 255. ● Dilatation – logische ODER-Verknüpfung (bzgl. 255): Ein Bildpunkt wird auf 255 gesetzt, wenn innerhalb des strukturierenden Elements eine 255 enthalten ist, sonst 0. Computer Vision 1_Seite 2 Form: Opening und Closing Informationsgewinnung ● Durch Kombination der Erosion und Dilatation lassen sich morphologische Operatoren zusammensetzen. ● Opening: Erst Erosion dann Dilatation Erosion Dilatation ● Closing: Erst Dilation dann Erosion Dilatation Computer Vision Erosion 1_Seite 3 Form: morphologische Operatoren ● Beispiel: strukturgebendes Element zusätzliche Strukturen 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 Informationsgewinnung 1 1 1 1 1 0 1 1 1 0 Erosion Opening Dilatation Closing Nicht markierte Punkte Computer Vision 1_Seite 4 Form: Extraktion von Rändern Informationsgewinnung ● Idee: Randpixel haben zumindest an einer Seite keinen Nachbarn ● Ein Erosionsoperator mit einer Maske, die alle möglichen Nachbarn enthält, entfernt alle Randpunkte 1 1 1 1 1 1 1 1 1 ● Die Mengendifferenz zwischen dem Original und dem erodierten Bild liefert die Randpunkte: g‘: Erosion 3x3 g = 255 und g‘ = 0 g: Original Computer Vision 1_Seite 5 Form: Darstellung von Objektberandungen Informationsgewinnung Kettencode (8er-Nachbarschaft): 1 0 0 6 7 1 ● Erstellung: Folge der Richtungen entlang der Kontur ab beliebigem Startpunkt. Beispiel: 22110067665654323 2 ● Der Kettencode ist translationsinvariant. 2 ● Kompakte Darstellung (gegenüber Matrixdarstellung des umgebenden Rechtecks) umgebendes Rechteck: R² bit Kettencode: ~ R Randpunkte * 3 bit Ab einem Durchmesser von 10 Bildpunkten ist der Kettencode kompakter. 3 2 4 5 1 0 6 7 Computer Vision 1_Seite 6 Form: Darstellung von Objektberandungen Informationsgewinnung Kettencode (8er-Nachbarschaft): 1 0 0 6 7 1 ● Erstellung: Folge der Richtungen entlang der Kontur ab beliebigem Startpunkt. Beispiel: 22110067665654323 2 ● Der Kettencode ist translationsinvariant. 2 ● Kompakte Darstellung (gegenüber Matrixdarstellung des umgebenden Rechtecks) umgebendes Rechteck: R² bit Kettencode: ~ R Randpunkte * 3 bit Ab einem Durchmesser von 10 Bildpunkten ist der Kettencode kompakter. 3 2 4 5 1 0 6 7 Computer Vision 1_Seite 7 Form: Darstellung von Objektberandungen Informationsgewinnung Weitere Prozessierung: 1 0 0 ● Anfangspunktinvarianz - Startpunkt-Normierung: 6 7 1 Verschiebe zirkular so, dass die Sequenz eine Zahl minimaler Größe bildet. 2 Beispiel: 22110067665654323 00676656543232211 2 ● Rotationsinvarianz - Rotationsnormierung: Erste Differenz: Anzahl der Richtungen, die zwei aufeinander folgende Elemente des Codes trennen. Beispiel: 22110067665654323 07070617071777717 ● Anfangspunkt und Rotationsinvarianz erhält man wie 3 2 1 2 3 1 1 7 2 4 0 4 6 3 4 5 6 7 5 folgt: Kettencode Rotationsnormierung Startpunktnormierung 5 6 0 Beispiel: 22110067665654323 07070617071777717 06170717777170707 7 Computer Vision 1_Seite 8 Form: Darstellung von Objektberandungen Informationsgewinnung Zusammenfassung Kettencode: ● Translations-, rotations- und startpunktinvariant. ● Kompakte Darstellung gegenüber Matrixdarstellung. ● Nicht skalierungsinvariant. ● Kettencodes unterschiedlicher Länge sind nicht direkt vergleichbar. ● Der Kettencode ist eine Polygondarstellung in Pixelgenauigkeit. ● Gesucht: Polygondarstellung bzw. Polygonapproximation, die die wesentlichen Berandungseigenschaften mit einer möglichst kleinen Anzahl von Segmenten beschreibt (ein nicht-triviales Problem iterativer Suche). Verfahren durch Überdeckung Computer Vision 1_Seite 9 Form: Darstellung von Objektberandungen Informationsgewinnung Polygonapproximation ● Einfache Methode (liefert Polygone mit minimalem Umfang): 1. Überdecke die Randkurve mit rechtwinklig angeordneten Quadraten 2. Gerade Verbindungen der Außenecken der umrandeten Fläche Computer Vision 1_Seite 10 Form: Kurven Informationsgewinnung Darstellung der Berandung durch Kurven: p0 r qk Schwerpunkt (x0,y0)T p1 ( x1 , y1 )T Position als Funktion der Länge: x0 r cos t p(t ) y0 r sin t t [0,2 ) p2 qk (t ) (1 t ) pk t pk 1 t [0,1) Problem bei Polygondarstellungen: Die Ecken der Polygone sind nicht äquidistant! Abhilfe: Polardarstellung Computer Vision 1_Seite 11 Form: Polardarstellung der Obj.-Berandung Informationsgewinnung Polardarstellung: Objektbeschreibung mit Hilfe des Objektradius als Funktion des Winkels. A q r A r q Schwerpunkt Schwerpunkt r r A/2 A/2 A/2 q q /2 3/2 2 /2 3/2 2 ● Vorteil: äquidistante Darstellung. Computer Vision 1_Seite 12 Form: Momente der Objektberandung 1. Umwandlung der Berandung in eine Kurve (z. B. Polardarstellung) Informationsgewinnung 2. Berechnung der Momente der Kurve K n ( ) ( i ) n p( i ) i 1 A r mit q K i p( i ) i 1 Schwerpunkt Bei Polardarstellung: K n (q ) (q i q ) n g (q i ) r i 1 A/2 mit A/2 K q /2 3/2 2 Computer Vision q q i r (q i ) i 1 1_Seite 13 Form: Fourier-Deskriptoren Informationsgewinnung Fourierdeskriptoren für diskretisierte Kurven in karthesischen Koordinaten: ● Gegeben: geschlossene, äquidistant diskretisierte Kurve u {x( s ), y ( s )}, s 0,..., L 1 ● In komplexer Schreibweise u ( s) x( s) i y ( s), s 0,..., L 1 ● Die diskrete Fouriertransformation (DFT) liefert eine Zerlegung von u in die Summe 2ks i 1 L 1 u ( s ) a(k ) e L , 0 s L 1 L k 0 mit den Koeffizienten L 1 a(k ) u ( s ) e i 2ks L , 0 k L 1 s 0 ● Die Koeffizienten heißen Fourierdeskriptoren und beschreiben die Objektberandung. Computer Vision 1_Seite 14 Form: Fourier-Deskriptoren Informationsgewinnung Eigenschaften der Fourierdeskriptoren ● Identität (Eindeutigkeit) u (s ) a(k ) ● Translation u' (s) u(s) u0 a' ( s) a( s) (k )u0 ● Skalierung u ' ( s) u ( s) a' (k ) a(k ) ● Anfangspunkt ● Rotation u ' ( s) u ( s s0 ) u' ( s) u (s)ei 2q Computer Vision a ' ( s ) a ( k )e i 2s0 L a' (k ) a(k )ei 2q 1_Seite 15 Form: Fourier-Deskriptoren Informationsgewinnung Ähnlichkeit von Randkurven mit Fourierdeskriptoren Seien u(s) und v(s) zwei mittelwertfreie Randkurven mit Koeffizienten a(k) und b(k) und L 1 iq 2 d ( s0 ) min u ( s) v( s s0 )e s0 s 0 mit c(k ) cos( k k k q ) b( k ) d(s0) kann für jedes s0 berechnet werden. 2 k c(k ) sin( tan q c(k ) cos( k k ) k k ) Das Minimum ist dann ein Ähnlichkeitsmaß für die Formen. k k c(k ) a (k )b* (k )e ik 2s0 / L Computer Vision 1_Seite 16 Form: Darstellung von Objektberandungen 1 0 0 6 7 1 3 0 2 1 2 1 2 4 5 Informationsgewinnung 0 6 1 1 Kettencode 8er-Nachbarschaft 7 Kettencode 0 4er-Nachbarschaft 2 3 Computer Vision 1_Seite 17 Form: Darstellung von Objektberandungen Informationsgewinnung Frage: Welcher der beiden Ränder wird durch Erosion und Mengendifferenz geliefert? Erinnerung: strukturgebendes Element 1 1 1 1 1 1 1 1 1 Computer Vision 1_Seite 18