Transcript
Page 1: Form: Morphologische Operatoren

Computer Vision

1_Seite 1

Form: Morphologische Operatoren

● Binarisierte Bilder enthalten oft

zusätzliche Strukturen oder

nicht markierte Punkte

Informationsgewinnung

Korrektur durch morphologische Operatoren

Quelle: Jähne B. Digitale Bildverarbeitung

Page 2: Form: Morphologische Operatoren

Computer Vision

1_Seite 2

Form: Erosion und Dilatation

● 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.

Informationsgewinnung

Page 3: Form: Morphologische Operatoren

Computer Vision

1_Seite 3

Form: Opening und Closing

● Durch Kombination der Erosion und Dilatation lassen sich morphologische Operatoren zusammensetzen.

● Opening: Erst Erosion dann Dilatation

● Closing: Erst Dilation dann Erosion

Informationsgewinnung

Dilatation

Dilatation Erosion

Erosion

Page 4: Form: Morphologische Operatoren

Computer Vision

1_Seite 4

Form: morphologische Operatoren

● Beispiel: strukturgebendes Element

Informationsgewinnung

Erosion

Dilatation

Opening

Closing

zusätzlicheStrukturen

Nicht markiertePunkte

01110

11111

11111

11111

01110

Page 5: Form: Morphologische Operatoren

Computer Vision

1_Seite 5

Form: Extraktion von Rändern

● Idee: Randpixel haben zumindest an einer Seite keinen Nachbarn

● Ein Erosionsoperator mit einer Maske, die alle möglichen Nachbarn enthält, entfernt alle Randpunkte

● Die Mengendifferenz zwischen dem Original und dem erodierten Bild liefert die Randpunkte:

Informationsgewinnung

g‘: Erosion 3x3

g = 255 und g‘ = 0g: Original

111

111

111

Page 6: Form: Morphologische Operatoren

Computer Vision

1_Seite 6

Form: Darstellung von Objektberandungen

Kettencode (8er-Nachbarschaft):

● Erstellung: Folge der Richtungen entlang der Kontur ab beliebigem Startpunkt.

Beispiel: 22110067665654323

● Der Kettencode ist translationsinvariant.

● Kompakte Darstellung (gegenüber Matrixdarstellung des umgebenden Rechtecks)

umgebendes Rechteck: R² bitKettencode: ~ R Randpunkte * 3 bitAb einem Durchmesser von 10

Bildpunkten ist der Kettencode kompakter.

Informationsgewinnung

1

0

23

4

5 6 7

2

2

1

100

67

Page 7: Form: Morphologische Operatoren

Computer Vision

1_Seite 7

Form: Darstellung von Objektberandungen

Kettencode (8er-Nachbarschaft):

● Erstellung: Folge der Richtungen entlang der Kontur ab beliebigem Startpunkt.

Beispiel: 22110067665654323

● Der Kettencode ist translationsinvariant.

● Kompakte Darstellung (gegenüber Matrixdarstellung des umgebenden Rechtecks)

umgebendes Rechteck: R² bitKettencode: ~ R Randpunkte * 3 bitAb einem Durchmesser von 10

Bildpunkten ist der Kettencode kompakter.

Informationsgewinnung

1

0

23

4

5 6 7

2

2

1

100

67

Page 8: Form: Morphologische Operatoren

Computer Vision

1_Seite 8

Form: Darstellung von Objektberandungen

Weitere Prozessierung:

● Anfangspunktinvarianz - Startpunkt-Normierung: Verschiebe zirkular so, dass die Sequenz eine Zahl minimaler Größe bildet.

Beispiel: 22110067665654323 00676656543232211

● 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 folgt: Kettencode Rotationsnormierung Startpunktnormierung

Beispiel: 22110067665654323 07070617071777717 06170717777170707

Informationsgewinnung

1

0

23

4

5 6 7

1

0

23

4

5 6 7

7

654

3

21

2

2

1

100

67

Page 9: Form: Morphologische Operatoren

Computer Vision

1_Seite 9

Form: Darstellung von Objektberandungen

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).

Informationsgewinnung

Verfahren durch Überdeckung

Page 10: Form: Morphologische Operatoren

Computer Vision

1_Seite 10

Form: Darstellung von Objektberandungen

Polygonapproximation

● Einfache Methode (liefert Polygone mit minimalem Umfang):

Informationsgewinnung

1. Überdecke die Randkurve mit rechtwinklig angeordneten Quadraten

2. Gerade Verbindungen der Außenecken der umrandeten Fläche

Page 11: Form: Morphologische Operatoren

Computer Vision

1_Seite 11

Form: Kurven

Darstellung der Berandung durch Kurven:

Informationsgewinnung

r

Schwerpunkt (x0,y0)T

)2,0[sin

cos)(

0

0

ttry

trxtp

Problem bei Polygondarstellungen: Die Ecken der Polygone sind nicht äquidistant!Abhilfe: Polardarstellung

0p

)1,0[)1()( 1 tptpttq kkk

Tyxp ),( 111

2p

kq

Position als Funktion der Länge:

Page 12: Form: Morphologische Operatoren

Computer Vision

1_Seite 12

Form: Polardarstellung der Obj.-Berandung

Polardarstellung: Objektbeschreibung mit Hilfe des Objektradius als Funktion des Winkels.

● Vorteil: äquidistante Darstellung.

Informationsgewinnung

r

Schwerpunkt

Ar

Schwerpunkt

A

r

r

A/2 A/2

A/2

Page 13: Form: Morphologische Operatoren

Computer Vision

1_Seite 13

Form: Momente der Objektberandung

r

Schwerpunkt

A

r

A/2

A/2

K

iii

K

ii

nin

p

mit

p

1

1

)(

)()()(

Informationsgewinnung

1. Umwandlung der Berandung in eine Kurve (z. B. Polardarstellung)

2. Berechnung der Momente der Kurve

K

iii

K

ii

nin

r

mit

g

1

1

)(

)()()(

Bei Polardarstellung:

Page 14: Form: Morphologische Operatoren

Computer Vision

1_Seite 14

Form: Fourier-Deskriptoren

Fourierdeskriptoren für diskretisierte Kurven in karthesischen Koordinaten:

● Gegeben: geschlossene, äquidistant diskretisierte Kurve

● In komplexer Schreibweise

● Die diskrete Fouriertransformation (DFT) liefert eine Zerlegung von u in die Summe

mit den Koeffizienten

● Die Koeffizienten heißen Fourierdeskriptoren und beschreiben die Objektberandung.

Informationsgewinnung

10,)()(1

0

2

Lkesuka

L

s

L

ksi

10,)(1

)(1

0

2

LsekaL

suL

k

L

ksi

1,...,0)},(),({ Lssysxu1,...,0),()()( Lssyisxsu

Page 15: Form: Morphologische Operatoren

Computer Vision

1_Seite 15

Form: Fourier-Deskriptoren

Eigenschaften der Fourierdeskriptoren

● Identität (Eindeutigkeit)

● Translation

● Skalierung

● Anfangspunkt

● Rotation

Informationsgewinnung

)(su )(ka

0)()(' ususu 0)()()(' uksasa

)()(' susu )()(' kaka

)()(' 0ssusu L

si

ekasa02

)()('

2)()(' iesusu 2)()(' iekaka

Page 16: Form: Morphologische Operatoren

Computer Vision

1_Seite 16

Form: Fourier-Deskriptoren

Ähnlichkeit von Randkurven mit Fourierdeskriptoren

Seien u(s) und v(s) zwei mittelwertfreie Randkurven mit Koeffizienten a(k) und b(k) und

mit

Informationsgewinnung

1

0

2

00 )()(min)(0

L

s

i

sessvsusd

Ls

ekbkakc

kkc

kkc

kb

kkc

ki

kk

kk

k

kk

/2

)()()(

)cos()(

)sin()(tan

)(

)cos()(

0

*

2

d(s0) kann für jedes s0 berechnet werden.

Das Minimum ist dann ein Ähnlichkeitsmaß für die Formen.

Page 17: Form: Morphologische Operatoren

Computer Vision

1_Seite 17

Form: Darstellung von ObjektberandungenInformationsgewinnung

1

0

23

4

5 6 7

2

2

1

100

67

0

1

2

3

1

10

Kettencode8er-Nachbarschaft

Kettencode4er-Nachbarschaft

Page 18: Form: Morphologische Operatoren

Computer Vision

1_Seite 18

Form: Darstellung von ObjektberandungenInformationsgewinnung

111

111

111

Frage: Welcher der beiden Ränder wird durch Erosion und Mengendifferenz geliefert?

Erinnerung:strukturgebendes Element


Recommended