LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie D Graphik: Bildverbesserung Vorlesung D Graphik Andreas Butz, Otmar Hilliges Freitag, 9. Dezember 5
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie Themen heute Lineare Bildverbesserung Kantenoperatoren Kantenattribute Kanten und Rauschen Nichtlineare Filter Rangordnungsfilter Diffusionsfilter Segmentierung Schwellwertbasiert Shadingkorrektur
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 3 Was sind Kanten? Diskontinuitäten zwischen Regionen. Problem: Die Region selbst und damit ihr Homogenitätskriterium muss bekannt sein, um Diskontinuität definieren zu können. Homogenität einer Funktion: Grauwerte Textur Form
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 4 Kantenhervorhebung durch Frequenzraumfilterung Kanten weisen mehr hochfrequente Anteile auf als homogene Gebiete Hochpassfilterung H F max ( u, v) =, fallsu, sonst. + v F max
Filterung mit Idealem Hochpass- (links) und mit Butterworth- Hochpassfilter (rechts) LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 5
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 6 Butterworth-Hochpassfilter ( ) ( ) + + = sonst, max max v u v u F v u H k F
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 7 Kanten im Ortsraum Kanten und Rauschen haben ähnliche Charakteristika im Frequenzraum Kantendetektor verstärkt Rauschen. original. Ableitung. Ableitung
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 8 Kanten im -D Raum Differenzbildung in n-richtung Pseudo-3D Eindruck: Differenzbildung in m-richtung
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 9 Gradientenschätzung über Konvolution Gradient im N-dimensionalen Raum ist ein N- dimensionaler Vektor aus N partiellen Ableitungen. Jede partielle Ableitung kann durch eine Differenz abgeschätzt werden, die durch Konvolution berechnet werden kann. Beispiele: G r g g ( m, n) x x = = G = G [ ] x y [ ] ( m, n) ( m, n) g y, Gx =, g = y ( m, n) [ f * g ]( m, n), G ( m, n) [ f * g ]( m, n) g R = x g R y = (symmetrischer Konvolutionskern) y. (Robert s Gradient)
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie Elemente des Gradienten Betrag (Kantenstärke) Betrag : sqrt(g x +G y ) Richtung: tan - (G y /G x ) Richtung
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie Robert s Gradient Die beiden Komponenten des Robert s Gradient sowie der Betrag des Gradienten (unten) auf einem rauscharmen (links) und einem verrauschten (rechts) Bild
Rauschen und Kanten Hintergrundartefakte (Rauschen) werden verstärkt. LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 3 Sobel Operator - - - - - und - Faltungskern kombiniert Glättung und Differenzierung in einem Operator.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 4 Ableitungen der Gaussfunktion y partielle Ableitung in x x y partielle Ableitung in y x
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 5 Vergleich der Differenzfilter im Frequenzbereich Einfache Differenz Sobelfilter Approximation der ersten Ableitung der Gaußfunktion
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 6 Sobel vs. Gauß 3x3 Sobel 3x3 Gauß
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 7 Optimale Kantenfilterung Annahme: Bild ist homogen mit Ausnahme von Funktionswertänderungen an idealen Kanten. Repräsentation im Frequenzraum homogener Bereich mit Grauwert g: F(,) = g und F(u,v)= für u,v Kante: F(,) = und F(u,v) für u,v Rauschen: F(u,v)
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 8 Kanten und Rauschen Doppelkante: beide Kantenorte müssen unterscheidbar sein. Filter suchen mit: F(,)= F(u,v)= w, falls (u +v )<r, sonst r FT(edge) FT(noise)
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 9 Filter Gaußfilter mit unterschiedlicher Varianz (im Ortsraum). Repräsentation im Frequenzraum
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie F(u) σ=. Filter unterdrückt Rauschen ungenügend u F(u) Filter Kante Rauschen Filter u σ=. Filter ist nahezu optimal.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie F(u) σ=4. Filter ist nahezu optimal. u F(u) Filter Kante Rauschen Filter u σ=8. Filter unterdrückt Kante.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie Filterresultat kante*kantenfilter σ=8. σ=4. σ=. σ=. x
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 3 Zweidimensionales optimales Filter Rauschunterdrückung und Kantenhervorhebung gemäß Frequenzraumcharakteristik. Filterung nur entlang größter Steigung Canny Edge Enhancement: Richtung der Kante schätzen. Sequenz von Filtern mit unterschiedlicher Glättungscharakteristik in Gradientenrichtung berechnen.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 4 Kompassfilter Dienen der Hervorhebung von Kanten in einer bestimmten Richtung. Prewitt-Operator Kirsch-Operator = = = =...,, 8 3 h h h h = = = = 5 5 3 5 3 3 3 3... 3 3 5 3 5 3 3 5, 3 5 5 3 5 3 3 3, 5 5 5 3 3 3 3 3 8 3 h h h h
Kirschoperator LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 5
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 6 Ecken und Regionengrenzen Betrag des Gradienten (Sobel)
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 7 Bildzeile f(x) Wo ist die Regionengrenze? f (x) f (x) f (x) x x x Vorzeichenwechsel ist leichter zu erkennen, als ein Minimum oder Maximum. Gradient (Länge) als Kennzeichen für die Wichtigkeit einer Kante zweite Ableitung für den Ort der Kante (Nulldurchgang) Operatoren zur Berechnung der zweiten Ableitung: - Laplace Filter - Marr-Hildreth Filter (LoG Filter, Mexican Hat) - DoG (Difference of Gaussians)
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 8 Laplace Funktion Summe der partiellen zweiten Ableitungen: Nulldurchgänge der Laplacefunktion produzieren zusammenhängende Kurven entlang von Bildkanten. Approximation durch Kombination einer doppelten Differenzbildung in x- und y-richtung, z.b. Faltung eines Differenzoperators [- ] mit sich selbst: [- -] ergibt für [- ]*[- ] + [- ] T *[- ] T : Summe aller partiellen Ableitungen: ( ) ( ) ( ),,, y y x f x y x f y x f + = = + 4 ( ) ( ) ( ) ( ) ( ) + + + = 8 :,,,,, x y y x f y x y x f y y x f x y x f y x f
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 9 Laplace-Operator Nulldurchgänge des Laplace-Operators. Dunkle Pixel bezeichnen negative, helle Pixel bezeichnen positive Werte.
Marr-Hildreth-Filter = LoG-Filter LoG-Filter: Laplacian-of-Gaussian, d.h. der Faltung mit dem Laplacefilter geht eine Glättung mit einer Gaußfunktion voraus. y LoG Operator x LoG x x + y x + y (, y) = exp 4 πσ σ σ Auch genannt: Mexican hat filter LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 3
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 3 Laplace 4 Laplace 8 Marr-Hildreth-Operator
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 3 DoG (Difference of Gaussians) Subtraktion zweier Gaußfilter mit unterschiedlicher Varianz σ : DoG(x,y,σ,σ ) = [ π σ ] - exp(-(x + y )/σ ) - [ π σ ] - exp(-(x + y )/σ ) σ =. σ =5. DoG DoG und LoG-Filter sind in ihrer Wirkungsweise vergleichbar.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 33 Hesse-Matrix Die Matrix aller zweiten Ableitungen heißt Hesse-Matrix: Die Determinante der Hesse-Matrix ist ein (rauschanfälliger) Eckensensor ( ). = y f y x f x y f x f f H
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 34..nochmal kurz zusammengefasst: Rauschen und Kanten haben im Frequenzbereich ähnliche Attribute. Kantenhervorhebung in Orts- und Frequenzraum, Kompassfilter Kanteneigenschaften Zweite (partielle Ableitung): Hesse-Matrix, Laplace-Filter, LoG-Filter,
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 35 Nichtlineare Filterung Rauschen und Kanten haben im Frequenzbereich ähnliche Attribute. Ist ein nichtlineares Filter denkbar, das für Rauschen und Kanteneigenschaften unterschiedlich sensitiv ist? Rauschen sind räumlich gleichverteilte Grauwertvariationen. Grauwertvariationen an Kanten sind nicht räumlich gleichverteilt. Filter muss diesen Unterschied berücksichtigen.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 36 Rangordnungsfilter Vorgehen: Sortierung der Elemente in einer Filtermaske Auswahl des an einer bestimmten Stelle einsortierten Werts Eintragung des ausgewählten Werts in die zentrale Position Eigenschaften: Es entstehen keine neuen Werte Filter ist nichtlinear, nicht kommutativ, nicht assoziativ Gebräuchlichstes Rangordnungsfilter ist das Medianfilter 6 3 5 7 3... 8. 4. 7. 4 7 5. 9. 6. erster Rang mittlerer Rang (Median) letzter Rang
Medianfilter Annahmen: Medianfilter ist quadratisch mit ungerader Seitenlänge. Kantensignal ist größer als das Rauschsignal Kante im Filterbereich verläuft in diesem Bereich (nahezu) gerade. Grauwert ist (nahezu) konstant in einer Umgebung von Größe des Filters. Kante verläuft durch Filterbereich: Der Mittelpunkt des Filters liegt auf der gleichen Seite der Kante wie die Mehrzahl der Pixel (z.b. rechts von der Kante). Pixel von dieser Seite (z.b. rechts) wird selektiert (kantenerhaltend). Keine Kante im Filterbereich: Median nähert sich dem Erwartungswert mit Anzahl der Stichproben (rauschunterdrückend). LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 37
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 38 Medianfilter Median zur Entfernung von Salt&Pepper- Rauschen in einer 3x3 Umgebung.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 39 Medianfilter Durch Medianfilterung (rechts) kann Impulsrauschen im Gegensatz zur Mittelwertfilterung (Mitte) beseitigt werden.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 4 Vergleich Median vs. Mittelwert Mittelwert 7x7 Median 7x7 Artefakt
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 4 Diffusionsfilter Diffusionsprozess ist Modell für die Filterung Diffusion: Flüssigkeit mit lokal variierender Dichte Lokaler Ausgleich in Abhängigkeit vom Dichtegradienten Übertragung auf ein Bild: Dichte ist die Bildfunktion Dichtegradient ist Grauwertgradient
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 4 Diffusion Homogene Diffusion: Szene besteht aus einem einzigen Material und die Diffusion ist proportional zum Dichtegradienten dieses Materials. Inhomogene Diffusion: Szene enthält Barrierematerialien, wo die Diffusion erschwert wird. Anisotrope, inhomogene Diffusion: Diffusion an Barrierematerialien ist richtungsabhängig.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 43 Fick sches Gesetz r j ( x, y) = D( x, y) u( x, y) = D( x, y) D Diffusionstensor u - Dichtegradient ( x, y) f x f ( x, y) y Der Diffusionstensor spezifiziert die Art des Fluss j in Abhängigkeit vom Dichtegradient u. Die Konzentrationsveränderung durch j ist: u Der Divergenzoperator ist definiert durch: ( x, y, t) t j div r j = r = div j( x, y, t). ( x, y, t) j y( x, y t) x + x, y
Fick sches Gesetz (Namensherkunft, Quelle: Wikipedia) Adolf Eugen Fick (* 3. September 89 in Kassel,. August 9 in Blankenberghe, Flandern) war ein deutscher Physiologe. Er stellte 855 die nach ihm benannten Gesetze der Diffusion auf, die eine wesentliche Grundlage zur Entwicklung der Kontaktlinse bildeten. Die Adolf-Fick-Stiftung vergibt alljährlich den Adolf-Fick-Preis an einen herausragenden Physiologen. Der Preis wird als die wichtigste Auszeichnung auf dem Gebiet der deutschsprachigen Physiologie angesehen. LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 44
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 45 Berechnung der Diffusion Die Belegung des Diffusionstensors gibt an, ob es sich um homogene, inhomogene oder anisotrope, inhomogene Diffusion handelt. Die Differentialgleichung lässt sich im Allgemeinen nicht analytisch lösen. Iterative Approximation: u ( x y, t ) u( x, y, t ) + ( t t ), i+ = i i+ u ( x, y, ti ). Die Intervallgröße muss sorgfältig gewählt werden, damit der Schätzfehler durch die Approximation nicht zu groß wird. i t
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 46 Homogene Diffusion = ε ε D ( ) ( ) + = y t y x f x t y x f j,,,, div ε ε r und
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 47 Inhomogene Diffusion Ziel: keine (wenig) Diffusion an Kanten. Problem: Kantenverlauf ist nicht bekannt. Annahme: Kante = hoher Gradient, d.h. Diffusionstensor muss von der Gradientenlänge abhängig sein. ε = ( ) u ε D mit ( ) ( ) u ε u = ε u λ + λ Der Parameter λ steuert, wie stark der Gradient die Diffusion beeinflusst.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 48 Inhomogene Diffusion Rauschen an den Kanten bleibt erhalten.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 49 Anisotrope, inhomogene Diffusion Ziel: keine Diffusion über Kanten hinaus, aber entlang von Kanten. Diffusionstensor muss Kantenrichtung mit berücksichtigen. Diffusionstensor kann zerlegt werden in: e D = e,, e e,, λ e λ e,, e e,, Adäquate Bestimmung der Eigenvektoren und Eigenwerte löst das Problem.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 5 Eigenvektoren für die anisotrope Diffusion u ( ) ( ) e e =, λ = ε u, ( e e ) = ( e e ), λ =.,,, u,, mit ε ( ) λ u = ε u + λ Erster Eigenvektor in Richtung des Gradienten und Eigenwert sinkt mit Gradientenlänge: keine Diffusion über Kanten hinweg. Zweiter Eigenvektor parallel zur Kante und Eigenwert konstant: Diffusion parallel zur Kante ist von der Kantenstärke unabhängig.
Anisotrope Diffusion LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 5
Anistrope Diffusion LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 5
Diffusion im Vergleich Homogene Diffusion: vollständige Homogenisierung Inhomogene Diffusion Isotrop: Erhält Kanten, aber dort auch Rauschen. Anisotrop: unterdrückt Rauschen auch an Kanten. Modell für Dichtegradient und Kante sind gleich Es gibt keine %-ige Kantenentscheidung: Jede Diffusion führt nach genügend vielen Iterationen zur vollständigen Homogenisierung LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 53
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 54 Dichte- und Kantengradient Dichteunterschiede (einer Substanz) sind unabhängig von Grenzflächen. Kantengradient k kann unabhängig von Dichtegradient u definiert werden. Dichtegradient: repräsentiert (weißes) Rauschen, beinhaltet alle Frequenzen des Spektrums gleichmäßig Kantengradient Repräsentiert (unscharfe) Abbildung einer idealen Stufenkante Beinhaltet vornehmlich mittlere Frequenzen
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 55 Kanten- und Dichtegradienten Dichtegradient: einfacher Differenzoperator Kantengradient: Ableitung einer Gaußfunktion mit gegebener Standardabweichung Kanten mit Merkmalen, die durch das Gaußfilter nicht erfasst werden, bleiben nicht erhalten.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 56 Resultat σ=. σ=5. σ=9. Iterationen Iterationen
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 57..Also nochmal kurz: Durch nichtlineare Operatoren können Kanten und Rauschen getrennt behandelt werden. Medianfilterung und Kantenmodell der Medianfilterung. Diffusionsfilter Diffusionsmodell Homogene, inhomogene und anisotrope Diffusion Parametrisierung
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 58 Segmentierung Ziel: Pixelaggregate schaffen, denen Bedeutung zugeordnet werden kann Pixel gehören zusammen, wenn sie einem zusammenhängenden Gebiet angehören. Homogenitätsbedingung ist vom Bildinhalt unabhängig (Segmentierung ist datenbasiert). Modellbasierte Segmentierung: Zwitter zwischen Segmentierung und Analyse.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 59 Segmentierung Zerlegung eines Bildes in semantische Einheiten. Segmente: Träger der Bedeutung von Strukturen eines Bildes. Eigenschaften einer Segmentierung: vollständig: jedes Pixel ist einem Segment zugeordnet. überdeckungsfrei: ein Pixel ist genau einem Segment zugeordnet. zusammenhängend: jedes Segment bildet ein zusammenhängendes Gebiet.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 6 Segmentierungsmethoden Histogrammbasierte oder bildbasierte Segmentierung: Segmentzugehörigkeit wird anhand des Histogramms oder des Bildes entschieden histogrammbasiert bildbasiert regionenorientiert kantenorientiert Regionen- oder Kantenorientierung: Segmente werden durch ihre Grenzen oder ihr Inneres definiert
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 6 Histogrammbasierte Segmentierung Histogramm Schwellenwert Annahme: Bild besteht aus zwei Anteilen die sich durch ihren Grauwert unterscheiden. Aufgabe: Schwellenwert zwischen den beiden Grauwerten finden. b(i,j) =, falls f(i,j)>t, sonst
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 6 Shading Helligkeitsvariationen zerstören die bimodale Verteilung der Häufigkeiten. Schwellenwert ist nicht mehr für das gesamte Bild definierbar.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 63 Berücksichtung von Shading Homogenes Bild unter gleichen Bedingungen aufnehmen. Shading-Bild aus dem Bild selbst bestimmen. Variierende Schwellenwerte.
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 64 Bestimmung des Shadingbilds Falls die überwiegende Mehrzahl des Bildes aus Vorderoder Hintergrund-pixeln besteht, kann das Shadingbild durch einem Rangordnungsfilter erzeugt werden. Das Rangordnungsfilter muss mindestens so groß sein, dass immer mindestens ein Vordergrund- und ein Hintergrundpixel enthalten ist. 3 3 Maximumsfilter
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 65 Shading-Korrektur Berechne aus dem Hintergrundsbild Shadingfunktion s(i,j) Korrektur: f (i,j)=f(i,j) s(i,j) Segmentierung auf dem korrigierten Bild. ohne Korrektur mit Korrektur
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 66 Variierende Schwelle Schwellenwert Histogramm 8 7 7 69 7 79 73 7 7 8 8 73 7 74 79 75 73 Lokale Schwellenwerte aus Histogramme in Teilregionen. (Lineare) Interpolation von Schwellenwerten T(i,j) an allen anderen Punkten. Segmentierung durch f(i,j)>t(i,j).
LMU München Medieninformatik Butz/Hilliges D Graphics WS5 9..5 Folie 67 Literatur Klaus D. Tönnies: "Grundlagen der Bildverarbeitung", ISBN 3-873-755-4 http://www.pearsonstudium.de/main/main.asp?page=booksites/selectchapte r&isbn=38737554&pszielgruppe=student