Professional Documents
Culture Documents
Morphologische Bildverarbeitung I
Christina Deutschmann
Vortrag mit Programmvorstellung 29.07.03
berblick
Algorithmus zur - Distanztransformation - Erosion und Dilatation mittels Distanztransformation (jeweils fr Binrbilder)
Distanztransformation (1)
- Distanztransformation: dist(p1) = min{ d(p1, p2): f(p2) = 0 }
(xi, yi) Koordinaten des Pixels pi Pixel p1, p2 Df des Binrbildes f : Df Z2 {0,1}, d hier Metrik/diskrete Distanz d4 bzw. d8, mit d4((x1 y1), (x2, y2)) = |x2 x1| + |y2 y1|, d8((x1 y1), (x2, y2)) = max{ |x2 x1|, |y2 y1| },
- Berechnung der Distanz zum nchsten nullwertigen Pixel (pro Bildpixel) - Ergebnis abhngig von Form und Gre des strukturierenden Elements (SE)
Formen
4er Nachbarschaft (City Block Metrik)
Bezugspunkt
rautenfrmiges SE
quadratisches SE
Gre n { 1, 2, 3, ... }
SE der Gre 1:
(elementares SE)
(n-1) malige Dialatation mit dem (punktgespiegelten) elementaren SE Simulation und Bildanalyse mit Java
Seminar
Christina Deutschmann 29.07.03
Distanztransformation (2)
- Sequentieller Algorithmus nach Rosenfeld und Pfaltz (1966)
Vorwrtsabtastung aller Pixel p Df des Binrbildes f : D f 2 { 0, 1} IF ( f ( p) == 1) THEN f ( p ) = 1 + min{ f (q ) | q N G ( p)} Rckwrtsabtastung aller Pixel p Df + IF ( f ( p) != 0) THEN f ( p ) = min{ f ( p), 1 + min{ f ( q) | q N G ( p)}}
NG
4
Rckwrtsnachbarn
+ NG
Vorwrtsnachbarn
Randbetrachtung
Problem: Objektpixel (1er) liegen soweit am Rand, da Nachbar(n) auerhalb liegen Lsung: Konsistentes Verhalten durch virtuelle Nachbarn mit Wert "" (z.B. 231-1)
Vorwrtsabtastung
OUTPUT (Grauwertbild)
0
Rckwrtsabtastung
0 0 0 0 0 0
0 1 1 1 1 0
0 1 2 1 2 1 2 1 0
0 1 1 2 1 3 3 1 0
0 1 1 2 1 3 4 1 0
0 0 0 0 0 0
0 1 1 1 1 0
0 1 2 2 2 1 0
0 1 2 2 3 3 1 0
0 1 2 1 1 3 1 4 0
0 0 0 0 0 0
0 0 0 0 0
Christina Deutschmann 29.07.03
B = { p: Bp A } (Def. fr Binrbilder)
gelschte Pixel
- Dilatation (Ausdehnung): A
B = { p: Bp A } (Def. fr Binrbilder)
- Allg.: Maximum Filter (Rangordnungsfilter) - Bei Binrbildern: wenn das SE mind. ein Objektpixel abdeckt, ist das Ergebnis 1, sonst 0 (ODER Verknpfung) - Wirkung: kleine Lcher werden gefllt, Konturen des Objekts werden glatter und das Objekt wird grer
- Einsatz
Als morphologische Grundoperatoren fr zusammengesetzte Operatoren, wie z.B. Opening (A Closing (A B) B oder Extraktion von Rndern A\(A B). Simulation und Bildanalyse mit Java
Seminar
B)
B,
erode4(Df, n) = {pDf | dist4(p) > n} = binarize(dist4(Df), n+1) erode8(Df, n) = {pDf | dist8(p) > n} = binarize(dist8(Df), n+1)
binarize(3)
Dilatation
ber die Dualitt von Erosion und Dilatation: A B = (Ac B)c Das Bild wird zunchst invertiert, dann die Erosion angewendet und erneut invertiert.
invert() dilate8(1)
invert()
dilate4(Df, n) = invert(Df); erode4(Df, n); invert(Df) dilate8(Df, n) = invert(Df); erode8(Df, n); invert(Df)
erode8(1)
Anhang (1)
Literatur
P. Soille, Morphologische Bildverarbeitung - Grundlagen, Methoden, Anwendungen, Springer-Verlag, 1998 P. E. Danielsson, Euclidean distance mapping, Computer Graphics and Image Processing 14, p. 227-248, 1980 B. Jhne, Digitale Bildverarbeitung, Springer-Verlag, 2002 J. Ohser, F. Mcklich, Statistical Analysis of Microstructures in Materials Science, John Wiley & Sons, 2000 http://java.sun.com/j2se/1.4.1/docs/api/
Anhang (2)
Screenshots
Bilder zur Distanztransformation (Abb. 1).
Abb. 1 Bild 1-4 sind Distanztransformationen von Bild 1. Bild 2 und 4 (Zeile 2) mit der 4er Nachbarschaft, Bild 3 und 5 (Zeile 3) mit der 8er Nachbarschaft. Als alternative Reprsentation wurden die Distanztransformationen in Bild 4 und 5 (Spalte 2) modulo 8 dargestellt. Dort kann man auch prinzipiell sehen, wie die Erosion verwirklicht wird, nmlich durch Abtragung der "Ringe" (Anzahl entsprechend der Gre des SE, bei Darstellung in modulo 2).
Anhang (3)
Bilder zur Erosion und Dilatation (Abb. 2 und 3)
Interessant bei Abb. 2 ist, dass der Kreis aus Bild 1 bei der Erosion mit der 4er Nachbarschaft zunehmend zum Quadrat wird (je fters man die Erosion ausfhrt bzw. je grer das SE ist), bei der Dilatation hingegen immer mehr zur Raute. Fr die 8er Nachbarschaft der umgekehrte Fall gilt (Erosion Raute, Dilatation Quadrat).
Abb. 2 Bild 6 und 8 (Zeile 2) sind Erosion und Dilatation von Bild 1 mit der 4er Nachbarschaft und einem SE der Gre 10 Bild 7 und 9 (Zeile 3) sind Erosion und Dilatation von Bild 1 mit der 8er Nachbarschaft und ebenfalls einem SE der Gre 10.
Abb. 3 Bild 11 und 12 (Zeile 2) sind Erosion und Dilatation von Bild 10 mit der 8er Nachbarschaft und einem SE der Gre 16.
Anhang (4)
Bilder zur Randbetrachtung (Abb. 4)
10
In Bild 13 liegen die Objekte am Rand, sind also nicht vollstndig von Hintergrundpixeln (0'en) umgeben. In Bild 14 sieht man, wie die Grauwerte zum Rand hin zunehmen (aufgrund der Randbetrachtung beim Algorithmus zur Distanztransformation). Deswegen wird bei einer Erosion, wie in Bild 16, intuitiv nicht vom Rand her erodiert (was z.B. bei einer Annahme von 0'en auerhalb des Bildes der Fall wre.
Abb. 4 Bild 14 und 15 (Zeile 2) sind Distanztransformationen von Bild 13, Bild 14 mit der 4er und Bild 15 mit der 8er Nachbarschaft (modulo 2). Bild 16 und 17 (Zeile 3) sind Erosion und Dilatation von Bild 1 mit der 8er Nachbarschaft und einem SE der Gre 8.
Anhang (5)
Abschlieend noch Bilder fr Leute, die zulange vor dem Rechner saen (Abb. 5)
11
Abb. 5 Bild 20 ist die Distanztransformation von Bild 19, mit einer 8er Nachbarschaft und der Darstellung der Grauwerte modulo 8.