Upload
rickert-raichle
View
113
Download
5
Embed Size (px)
Citation preview
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 1
Kapitel 7: Kanten und Konturen
1. Wie entsteht eine Kante?
2. Gradienten-basierte Kantendetektion
3. Filter zur Kantendetektion
4. Weitere Kantenoperatoren
5. Von Kanten zu Konturen
6. Kantenschärfung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 2
Überblick
• Kanten, Konturen: lokale Veränderung der Intensität
- Kanten und Konturen spielen dominante Rolle im menschlichen Sehen
- Subjektive Schärfe eines Bildes über Deutlichkeit seiner Strukturen
- Menschliches Auge legt Gewicht auf kantenförmige Strukturen
• Einzelne Striche einer Karikatur legen Inhalt fest• Komplette Figuren werden aus wenigen
dominanten Linien rekonstruiert
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 3
Kanten spielen dominante Rolle
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 4
1 Wie entsteht eine Kante?
• Kanten: Intensität ändert sich stark auf kleinem Raum entlang einer Richtung
• Je stärker die Änderung, desto stärker der Hinweis auf eine Kante
• Stärke der Änderung entspricht der ersten Ableitung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 5
2 Gradienten-basierte Kantendetektion
• Startpunkt: Betrachtung einer Dimension mit einer heller Region im Zentrum
• (b) Intensitätsprofil und erste Ableitung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 6
Diskrete Funktion
• Diskrete Funktionen haben keine Ableitung• Abschätzung: Gerade durch benachbarte Punkte
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 7
2.1 Partielle Ableitung und Gradient
• Partielle Ableitung: Ableitung einer mehrdimensionalen Funktion entlang einer Koordinatenrichtung, z.B. entlang x und y
• Gradient: Vektor der Funktion I an der Stelle (u,v)
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 8
Betrag des Gradienten
• Der Betrag des Gradienten ist invariant unter Bilddrehung
• D.h. unabhängig von der Orientierung der Bildstrukturen
• Wichtig für Lokalisierung von Kanten• Grundlage vieler Kantendetektoren
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 9
2.2 Ableitungsfilter
• Durch die Abschätzung der diskreten Funktion ergibt sich der Gradientenfilter in horizontaler Richtung:
- Koeffizient für I(u-1,v): -0.5
- Koeffizient für I(u,v): 0
- Koeffizient für I(u+1,v): +0.5
• Gradientenfilter für die vertikale Richtung:
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 10
Anwendung des Ableitungsfilters
OriginalAbleitunghorizontaleRichtung
Ableitungvertikale Richtung
BetragdesGradienten
(b)(c): negativ = schwarz positiv = weiß Nullwerte = grau
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 11
3 Filter zur Kantendetektion
• Abschätzung der Gradienten ist Grundlage der meisten Operatoren für Kantendetektion
• Alternative Operatoren unterscheiden sich in:- Schätzung der Richtungskomponente
- Zusammenfassung der Komponenten zum Gesamtergebnis
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 12
3.1 Prewitt- und Sobel-Operator
• Beide Operatoren sind sehr ähnlich, sie haben nur leicht unterschiedliche Filter
• Filter des Prewitt-Operators
• Separierte Form:
1. Glättung über 3 Zeilen bzw. 3 Spalten2. Gewöhnlicher Gradient, d.h. Ableitung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 13
Sobel-Operator und Abschätzung
• Filter des Sobel-Operators
• Abschätzung der Gradienten nach Skalierung
Prewitt-Operator Sobel-Operator
Bei Glättung:Zentrales Element Stärker beachten
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 14
Kantenstärke und Kantenrichtung
• Skalierte Filterergebnisse (Gradientenwerte):
• Kantenstärke: Betrag der Gradienten:
• Lokale Kantenrichtung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 15
Ablauf der Kantendetektion
1. Gradientenfilter Hx und Hy anwenden
2. Kantenstärke E berechnen
3. Kantenrichtung Φ berechnen
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 16
Verbesserung des Sobel-Operator
• Sobel-Operator ist weit verbreitet• Verbesserung von Sobel bzgl. Winkelfehler:
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 17
3.2 Roberts-Operator
• Einer der ältesten Kantenoperatoren• Nur zwei 2x2 Filter:
• Kantenstärke: - Betrag des Gradienten
- Alternativ: Maximum der Gradienten- max( |I(u+1,v) − I(u,v+1|, | I(u,v) − I(u+1,v+1)| )
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 18
Diagonale Richtungskomponenten beim Roberts-Operator
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 19
3.3 Kompass-Operatoren
• Guter Kantenfilter ist Kompromiss- Je besser Reaktion auf kantenartige Strukturen- Desto stärker richtungsabhängig, - D.h. umso enger der Winkelbereich für Erkennung
• Kompass-Operatoren: Satz von „engen“ Filtern für mehrere Richtungen
• Beispiel: Kantenoperator von Kirsch für acht verschiedene Richtungen im Abstand von 45o
• Nur vier werden berechnet, da die anderen bis auf das Vorzeichen gleich sind
• Z.B. H0 = -H4
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 20
Die acht Kirsch-Filter
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 21
Berechnungen für Kirsch-Operator
• Ermittlung der acht Richtungsbilder
• Kantenstärke: Maximum der einzelnen Ergebnisse
• Stärkste Filter bestimmt Kantenrichtung:
• Praxis: kaum Vorteile gegenüber einfacheren Operatoren
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 22
3.4 Kantenoperatoren im ImageJ
• Menü:- Process -> Find Edges
• Plugin:- ImageProcessor.findEdges()
• Sobel-Operator wird angewendet für fast alle Bildtypen
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 23
4 Weitere Kantenoperatoren4.1 Kantendetektion mit zweiter Ableitung
• Problem der 1. Ableitung: - Kanten sind so breit wie die Länge des Anstiegs
- Genaue Kantenposition ist schwierig zu lokalisieren
• 2. Ableitung- Misst lokale Krümmung
- Kanten: Nulldurchgänge der 2. Ableitung
- Da 2. Ableitung sehr rauschanfällig ist, vorher geeigneten Glättungsfilter anwenden
• Bekannt: LoG: „Laplacian-of-Gaussian-Operator- Zuerst Glättung mit Gauß-Filter
- Dann 2. Ableitung mit Laplace-Filter (Kap 7.6)
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 24
Vergleich unterschiedlicher Kantendetektoren
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 25
4.2 Kanten auf verschiedenen Ebenen
• Das Ergebnis einfacher Kantenoperatoren entspricht häufig nicht dem subjektiven Empfinden:
1. Kantenoperatoren verdeutlichen nur lokale Unterschiede
2. Visuelles Sehen setzt auch verschwindende Unterschiede fort
3. Kanten entstehen auf verschiedenen Auflösungsebenen
4. Der Sobel-Filter betrachtet nur 3x3 Region
• Alternativen:- Größere Kantenfilter oder
- Mehrere Bilder mit unterschiedlicher Auflösung analysieren
• Multi-Resolution-Technik:1. Kanten auf unterschiedlichen Auflösungsebenen finden
2. Jeweils dominante Kante bestimmen
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 26
4.3 Canny-Filter
• Canny-Filter1. Satz von gerichteten, relativ großen Filtern2. Ergebnisse werden im Kantenbild zusammengefasst
• Ziele1. Anzahl falscher Kanten minimieren2. Kanten möglichst gut lokalisieren3. Nur eine Markierung pro Kante
• Realisierung- Gradienten-Filter- Lokalisierung durch Nulldurchgänge der 2. Ableitung- Meistens: eine Bildversion mit unterschiedlicher Auflösung
• Realisierung durch unterschiedliche Filterradien mit entsprechenden Glättungsparametern σ
• Beschreibung in [Efford 2000]
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 27
Canny-Filter mit unterschiedlichen Glättungsparametern σ
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 28
5 Von Kanten zu Konturen5.1 Konturen verfolgen
• Kanten sind die Ausgangsbasis - Für das Finden größerer Bildstrukturen- Insbesondere Konturen von Objekten
• Konturen entlang Kanten verfolgen1. Beginn: Bildpunkt mit hoher Kantenstärke auswählen2. Schrittweise Kanten in beider Richtungen verfolgen3. Abschluss: Kanten schließen sich zu einer durchgehenden Kontur
• Probleme1. Eine Kante endet in einer Region ohne Abschluss2. Kreuzende Kanten sind mehrdeutig3. Konturen spalten sich ev. in mehrere Richtungen auf
• Konturverfolgung auf Kantenbildern nur bei klarer Trennung zwischen Objekt und Hintergrund
• Meisten: Verfolgung anhand Binärbilder (siehe Kapitel 9)
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 29
6 Kantenschärfung
• Beim Scannen oder Skalieren von Bildern entstehen Unschärfen
• Kompensation durch nachträgliches Schärfen- Verstärken von hochfrequenten Bildanteilen
- D.h. an raschen Bildübergängen
• Im Folgenden vorgestellt1. Laplace-Filter
2. Unscharfe Maskierung (USM)
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 30
6.1 Laplace-Filter
• Basis: Zweite Ableitung
• Folgende Folie: 1. Eindimensionale, kontinuierliche Funktion f(x)
2. Erste Ableitung f‘(x)
3. Zweite Ableitung f‘‘(x)
4. Schärfung: Funktion minus gewichtete zweite Ableitung
• Grad der Schärfung ist abhängig vom Gewichtungsfaktor ω
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 31
Kantenschärfung mit der zweiten Ableitung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 32
Laplace-Operator
• Zweidimensional: zweite Ableitung in horizontaler und vertikaler Richtung
• Laplace-Operator: Summe der zweiten Ableitungen
• Die zweite Ableitung einer diskreten Funktion kann mit linearen Filtern berechnet werden
• Mehrere Beispiele auf den nächsten Folien
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 33
Beispiel für Laplace-Filter
Herleitung: [Jähne2002]
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 34
Anwendung des Filters
Original
2. Ableitungvertikal
2. Ableitunghorizontal
Laplace-Operator
(b)(c): negativ = schwarz positiv = weiß Nullwerte = grau
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 35
Weitere gebräuchliche Varianten
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 36
Schärfung mit dem Laplace-Filter
• I‘ = I - ω (HL * I)- Faktor ω bestimmt Stärke der Schärfung
- ω ist vom verwendeten Filter abhängig
• Da 2. Ableitung anfällig gegenüber Bildrauschen: vorher Glättung mit Gauß-Filter
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 37
Beispiel: Schärfung mit Laplace-Filter
Original
Anwendung desLaplace-Filtersauf Original
Geschärftes Bild
Profil der markierten Zeile
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 38
6.2 Unscharfe Maskierung (unsharp masking, USM)
• Verwendung: Astronomie, digitaler Druck, …• Ursprung: analoge Filmtechnik• Schärfung durch optische Überlagerung mit
unscharfen Duplikaten• Ablauf USM-Filter in zwei Schritten:
1. Die Maske ergibt sich aus Original minus geglättetes Original
2. Auf Original wird die gewichtete Maske angewendet
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 39
Formal
• Maske:
• Original plus gewichtete Maske:
• Gewichtungsfaktor a steuert die Stärke der Schärfung
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 40
USM-Filter mit unterschiedlichen Radien für Glättung
Profil der markierten Bildzeile
Stärke derSchärfung mita = 100%bei allen Bildern
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 41
Glättungsfilter und Erweiterungen
• Geeignete Glättungsfilter für USM- Prinzipiell: jeder Glättungsfilter
- Üblich: Gauß-Filter mit Radius 1 .. 20
- Gewichtungsfaktor a liegt zwischen 0.2 .. 4.0
• Erweiterungen für USM- USM verstärkt auch sichtbare Rauscheffekte
- Einige Implementierungen (Adobe Photoshop): Schärfung erst, wenn Schwellwert für lokalen Kontrast überschritten
• ImageJ- Process -> Filter -> Unsharp Mask
- Plugin: siehe nächste Folie
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 42
Plugin: UnsharpMask
import ij.plugin.filter.UnsharpMask;
…
public void run(ImageProcessor imp){
UnsharpMask usm = new UnsharpMask();
double r = 2.0; // standard radius
double a = 0.6; // standard weight
usm.sharpen(imp,r,a);
…
}
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 43
Laplace- vs. USM-Filter
• Laplace ist Sonderfall von USM• Formaler Beweis: [Burger2005] S.136
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 44
Weitere Kapitel
[Burger2005] vs. Vorlesung8. Auffinden von Eckpunkten9. Detektion einfacher Kurven10. Morphologische Filter -> Kapitel 811. Regionen in Binärbildern -> Kapitel 912. Farbbilder -> Kapitel 1013. Einführung in die Spektraltechniken14. Die diskrete Fouriertransformation in 2D15. Die diskrete Kosinustransformation16. Geometrische Bildoperationen 17. Bildvergleich
W. Lux, FH Düsseldorf BV: Kap 7 Kanten und Konturen 45
Literatur
• Wilhelm Burger, Mark J. Burge: Digitale Bildverarbeitung, Springer Verlag, 2005
• N. Efford: Digital Image Processing, A Practical Introduction Using Java
• B. Jähne: Digitale Bildverarbeitung, Springer Verlag, 5. Auflage, 2002