CV7_Formextraktion

Werbung
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
2ks
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
2ks
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 2s0
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 ik
  2s0 / 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
Herunterladen