Graphische Datenverarbeitung Bildbearbeitung für Rasterbilder
Übersicht l Neu Folien:, 28 und ab 56 l Maße zur Beurteilung von Bildern: l Histogramm l Entropie l Punktoperationen: l Lineare Veränderung der Grauwerte: l Addition & Multiplikation l Komb. aus Add. & Mult.: lineare Grauwerttransformation l Binarisierung & Äquidistantenbildung (Vorgriff auf Kap. 4) l Nicht lineare Veränderung der Grauwerte: l Gamma-Korrektur l Lokale Bildoperatoren: l Faltung l Rangfolgeoperatoren
Ein Maß zur Beurteilung eines Bildes Histogramm: Häufigkeitsverteilung der Grauwerte Häufigkeit eines Grauwertes Grauwerte 2 3 4 5 6 2 3 2 2 2 2 2 2 2 4 6 6 6 6 6 6 6 5 6 6 6 6 6 6 6 6 2 2 2 4 4 2 2 7 4 4 8 4 4 9 4 4 37 37 37 78 77 36 36 Zugrunde liegendes Grautonbild
Histogramm: Häufigkeitsverteilung der Grauwerte
Wie sehen die Histogramme aus?
Was ist aus einem Histogramm abzulesen? Belichtungsfehler l ein Ende der Grauwertskala bleibt ungenutzt l Während beim anderen Ende Häufungen eintreten Kontrast l Als Kontrast bezeichnet man die Differenz zwischen minimal und maximal genutzten Grauwert. Ein voller Kontrast nützt den gesamten Grauwertbereich. Dynamik l Unter Dynamik versteht man die Anzahl verschiedener Pixelwerte in einem Bild. Im Idealfall wird der Wertebereich voll ausgeschöpft.
Im Histogramm sichtbar: Kontrast & Dynamik l Eingeschränkter Kontrastumfang l mit eingeschränkter Dynamik im Kontrastbereich Woher kommen die Spitzen im Histogramm? Wenn diese Lücke gefüllt wäre, hätte man die maximal mögliche Dynamik im eingeschränken Kontrastbereich erreicht
Im Histogramm sichtbar: Auswirkungen von Kompression Durch die JPEG-Komprimierung sind, neben weiß und schwarz, zusätzliche Grauwerte hinzugekommen.
Punktoperationen Punktoperation: l Berechnungsvorschrift wird auf jeden Pixel angewendet. l Nachbarschaften spielen keine Rolle Einige mögliche Punktoperationen: l Addition l Invertieren l Addition & Multiplikation: Lineare Grauwerttransformation l Gamma-Korrektur
gg -Diagramm g Identische Abbildung der Grauwerte des Ausgangsbildes g MAX Bereich in dem sich die Grauwerte nach der Abbildung befinden g max g min g MIN gmin Histogramm des Ausgangsbildes gmin gmax gmax g
absolute Häufigkeit Invertieren eines Bildes Pixeloperation: g (i,j)=gmax-g(i,j) daraus folgt: h(gi ) = h(gmax-i) Grauwerte
Kontrast kontrastreich Dg kontrastarm Dg Grauwertbilder Histogramme
Punktoperation: Addition Pixeloperation: g(i,j) <= 25 dann g (i,j) = g(i,j) + 5 g(i,j) > 25 dann g (i,j) = 255
Punktoperation: Addition g = Min(g+5,255) 255 255 g Wie wirkt sich die Addition im Histogramm aus, wenn die relative Häufigkeit der Grauwerte vorher für alle Grauwerte gleich war?
Punktoperation: Biniarisierung g 255 27 g
Punktoperation: Biniarisierung g 255 gs=2 g 2 255 gs=3 Schwellwert gs=2
Punktoperation: Äquidensitenbild (Poster) g 255 g mit 6 gleichmäßig verteilten Stufen
Punktoperation: Äquidensitenbild (Poster) mit 4 gleichmäßig verteilten Stufen
Wie kann man den Kontrast erhöhen?
Kontrasterhöhung: Das nennt man lineare Grauwerttransformation!
Nach der Kontrasterhöhung:
Punktoperation: Lineare Grauwerttransformation http://ivvgeo.uni-muenster.de/vorlesung/fe_script/kapitel3/main3-2.html Multiplikation bewirkt, dass nicht mehr jeder Grauwert genutzt wird!!
Nutzen des optimalen Grauwertbereichs g 255 78 255 g Wie berechnet man das?
Nutzen des optimalen Grauwertbereichs. Teilschritt g 255 Kontrastumfang 78 255 g g = max( g, ) sorgt dafür, dass g nicht kleiner werden kann.
Nutzen des optimalen Grauwertbereichs 2. Teilschritt g 255 78 255 g 255 Üben anhand kleiner Zahlen: g ' (g ) 78 mit g = wenn g < g = 255 wenn g > 255
Lineare Grauwerttransformation g MAX g MIN g ' (i, j ) [ g (i, j ) g min ] g max g min g MIN falls g ' (i, j ) g MIN wäre mit g ' (i, j ) g MAX falls g ' (i, j ) g MAX wäre
Lineare Grauwerttransformation g MIN falls g ' (i, j ) g MIN wäre g MAX g MIN g ' (i, j ) [ g (i, j ) g min ] mit g ' (i, j ) g max g min g MAX falls g ' (i, j ) g MAX wäre Umrechnung zur eigentlichen linearen Grauwerttransformation: g g ' (i, j ) g (i, j ) g MAX g MIN g g MIN g MAX g min MAX g max g min g max g min g ' (i, j, ) g (i, j ) mult add g g MIN mult MAX mit g max g min add g min mult g MIN gmin gmin gmax gmax
Lineare Grauwerttransformation g 'MAX g 'MIN g 'MAX g 'MIN g ' (i, j ) g (i, j ) g min g max g min g max g min g ' (i, j, ) g (i, j ) mult add g ' g 'MIN mult MAX mit g max g min add g min mult Ste g igu ng d g255 MAX er Str eck e gmin gmax gmax g
Lineare Grauwerttransformation gm ' (i, j ) g (i, j ) g 'MAX g 'MIN g ' g 'MIN g min MAX g max g min g max g min g g ' (i, j, ) g (i, j ) mult add g 255 MAX g 'MAX g 'MIN mult mit g max g min add g min mult Abstand zwischen gm -Kurve und Zielfunktion gmin gmax gmax g
Lineare Grauwerttransformation m g 'MAX g 'MIN g 'MAX g 'MIN g ' (i, j ) g (i, j ) g min g max g min g max g min g g ' (i, j, ) g (i, j ) mult add g 255 MAX g g MIN mult MAX mit g max g min add g min mult Welchen Wert muss man von der gm Kurve abziehen um zur Zielfunktion zu kommen? -gmin * mult gmin gmax gmax g
Lineare Grauwerttransformation g 'MAX g 'MIN g 'MAX g 'MIN g ' (i, j ) g (i, j ) g min g max g min g max g min g ' (i, j, ) g (i, j ) mult add g g 255 MAX g ' g 'MIN mult MAX mit g max g min add g min mult gmin gmax gmax g
Punktoperation und lokale Bildoperation Punktoperation Original Bild Transformiertes Bild Lokale Bildoperation Original Bild Transformiertes Bild
N4- und N8-Nachbarschaften 4er-Nachbarschaft Original Bild Transformiertes Bild
N4- und N8-Nachbarschaften 4er-Nachbarschaft 8er-Nachbarschaft Faltungsmatrix
Faltung: Identität FI=
Faltung l l l l Ergebniswerte e(i,j) Position des aktuell betrachteten Pixels (i,j) Grauwerte des aktuell betrachten Pixels g(i,j) Wert der Faltungsmatrix f(k,l) Beispiel einer 3x3-Faltungsmatrix 2 2 e(i, j ) g(i k, j l ) * f (k, l ) l k
Faltung: Glättung der Bildfunktion FM= Tafelbeispiel: Bild ist 8*6 Pixel groß?
Faltung: Glättung der Bildfunktion FM= Tafelbeispiel: g (i,j)= 255*8/9 = 227
Faltung von farbigen Bildern.Aufteilen in die unterschiedlichen RGB-Farbkanäle 2.Grauwertbilder filtern 3.Farbbild erstellen R G B
Wie muss die Faltungsmatrix aussehen um ein Bild zu glätten?
Glättungsfilter im Vergleich FM= FG= 2 2 4 2 2 Gaus-Filter Mittelwert-Filter
Faltung Lineare Grauwerttransformation für l Mittelwert: mult = /9 & add = l gmin = l gmax = 9 * 255 = 2295 l Gaus-Filter: mult = /6 & add = Formel zur linearen Grauwerttransformation: g ' (i, j, ) g (i, j ) mult add g ' g 'MIN mult MAX mit g max g min add g min mult
Glättungsfilter im Vergleich l Mittelwert-Filter l Gaus-Filter
Wirkung des Gaus-Filters (5x5-Faltungsmatrix) Original und gefiltert
Bilder von Peter Wienerroither Woran erkennt man am digitalen Bild verwaschene (unscharfe) und kontrastreiche (scharfe) Bildbereiche?
Bilder von Peter Wienerroither Woran erkennt man am digitalen Bild verwaschene (unscharfe) und kontrastreiche (scharfe) Bildbereiche?
Wie muss die Faltungsmatrix aussehen, die den Kontrast verstärkt? Kanten müssen betont werden! Vorgehen: l Kanten finden und hervorheben l Mit Originalbild verknüpfen
Biologische Kontrastverstärkung Gleichbleibende Reize von Flächen werden gedämpft und Kontraste überzeichnet Testbild Stark überzeichnet dargestellte Wahrnehmung
Vorbereitungen zur Kantendetektion Grauwertprofil s(x) Bildzeile Funktion, die den Grauwertverlauf entlang dieser Bildzeile darstellt
Vorbereitungen zur Kantendetektion Grauwertprofil s(x). Ableitung s (x)
Für eine stetige Funktion s(x) gilt:. Ableitung von s(x) ist definiert durch: lim g ( x x ) g ( x ) g' ( x) x x Grenzwertbildung für Funktionen mit einen diskreten x : g ( x ) g ( x ) g ( x ) g ( x )
Differenzenoperatoren FDy= -
Umsetzung der. Ableitung: Differenzoperatoren Negative Werte können auftreten: FDy { 255,..., 255} FDy= -
Wirkung des horizontalen Differenzoperators
Differenzenoperatoren FDx= -
Differenzenoperatoren FDx= - - -
Anwendung der folgenden Differenzoperatoren: - - - - FDx= - FDx= -
Kantendetektoren in senkrechter, waagrechter (oben) und diagonaler Ausrichtung (unten) - - - - - - - - - - - -
Kombinationsfilter: Ermittelt Kanten in allen Richtungen FD + FD2 + FD3 + FD4 = FK - - + - - - - + - - - - - + - -3-3 - = - 3 3
Anwendung des Kombinationsfilters Vergleich mit dem vertikalen Differenzoperator
Wie kombiniert man die ursprüngliche Bildinformation mit dem Kombinationsfilter?
Relief-Filter - - - Original Bild FR=n*FI+FD2= n - - FR=n*FI+FD4= - n
Anwendung des Kombinationsfilters mit unterschiedlichen n: original n=3 n= n=7
Kantendetektion mit dem Laplace-Operator Grauwertprofil von g(x).ableitung von s(x): g (x) 2.Ableitung von s(x): g (x)
2. Ableitung von s(x) mit einem diskreten x ( g ( x x ) g ( x)) ( g ( x) g ( x x)) g ' ' ( x) lim x x g ' ' ( x ) g ( x ) 2 g ( x ) g ( x ) Für Rasterbilder: x 2. Ableitung in wagrechter & senkrechter Richtung: -4 Laplace-Operator
Laplace-Operator zur Kantendetektion Grauwertprofil. Ableitung 2. Ableitung FL= -4
Laplace-Operator zur Kantendetektion Original Bild FL= -4
Kantendetektion mit Laplace-Operator
Vom Laplace-Operator zur Kontrastverbesserung FL= -4 FK = n*fidentity-fl FK = - - n+4 - -
Kontrastverbesserung mit dem Laplace-Operator Original Bild FK= - - n+4 - -
Kontrastverbesserung mit Laplace-Operator
Wiederholung: Faltungsoperatoren l l l l Mittelwertoperator (Weichzeichner) Differenzoperatoren (Kantendetektor) Laplace-Operator Kontrastverstärker Kennen Sie auch l Biniarisierung l Identitätsoperator
Rangfolgeoperatoren Rangfolge der Grauwerte wird gebildet:.sortieren: g g... gn 2.Entsprechend des Operators wird ein Grauwert an einer spezifischen Position der Rangfolge ausgewählt: l Median-Operator: g (i,j) = g4 l Erosion: g (i,j) = g l Dilatation: g (i,j) = g8
Rangfolgeoperatoren / Rangordnungsoperatoren l l l l l Median Dilatation Erosion Opening Closing
Rangfolgeoperatoren / Rangordnungsoperatoren Am Beispiel der N8-Nachbarschaft: l Aktuell betrachtete Bildposition: g(i,j) l g(i,j) und die Grauwerte der Nachbarschaft werden größenabhängig sortiert: g g... g n l Rangfolgeoperatoren wählen nun bestimmte Positionen dieser Sortierung aus...
Rangfolgeoperatoren / Rangordnungsoperatoren Beispiele für strukturierende Elemente l Bezugspunkt: l Nachbarpunkt: Elementarrechteck Elementarraute N4-Nachbarschaft N8-Nachbarschaft Schräges Element
Medianfilter Bezugspunkt nimmt mittleren Grauwert der Rangfolge an:.sortieren: g g... gn 2.Für eine N8-Nachbarschaft gilt: g (i,j) = g4 l. Verbesserung von verrauschten Bildern: Eliminiert isolierte, fehlerhafte Bildpunkte l. Kanten werden jedoch nicht verwaschen (vergleiche Mittelwertoperator)
Medianoperator Originalbild W. Kestner: Folien zur Vorlesung GDV I Ausschnitt nach Anwendung des Medianoperators
Medianoperator Original Ergebnis W. Kestner: Folien zur Vorlesung GDV I
Medianoperator Original Ergebnis W. Kestner: Folien zur Vorlesung GDV I
Vergleich: Mittelwert- und Medianoperator Original 3x3 Mittelwert W. Kestner: Folien zur Vorlesung GDV I 3x3 Median
Vergleich: Mittelwert- und Medianoperator Ausgangsbilder 3x3 Mittelwert 3x3 Median W. Kestner: Folien zur Vorlesung GDV I
Vergleich: Mittelwert und Median Ausgangsbild 3x3 Mittelwert 3x3 Median
Anwendung des Median-Filter bei einem verrauschten Bild Quelle: https://de.wikipedia.org/wiki/datei:medianfilterp.png
Dilatation Bezugspunkt nimmt maximalen Grauwert der Rangfolge an: g g... g n.sortieren: 2.Für eine N8-Nachbarschaft gilt: g (i,j) = g8 Allgemein: dil( x, y ) max {se ( x i, y j ) k (i, j )} i,j Die Indizes i und j laufen dabei über den Geltungsbereich des strukturierenden Elements. Folge: Ausdehnung der helleren Bereiche (=Bildvordergrund)
Dilatation Originalbild Ausschnitt nach Anwendung der Dilatation
Erosion Bezugspunkt nimmt minimalen Grauwert der Rangfolge an:.sortieren: g g... gn 2.Für eine N8-Nachbarschaft gilt: g (i,j) = g Allgemein: ero( x, y ) min{se ( x i, y j ) k (i, j )} i,j Die Indices i und j laufen dabei über den Geltungsbereich des strukturierenden Elements. Folge: Ausdehnung der dunkleren Bereiche (=Bildhintergrund)
Erosion Originalbild Ausschnitt nach Anwendung der Erosion
5 Minuten Aufgabe: Im Bild sollen nur die Pixel der Pfeile sichtbar sein. Wie würden Sie vorgehen?
Biniarisierung des Originalbildes Original Histogramm Schwellwert 27 Schwellwert 225
Anwendung von Opening und Closing um ein biniarisiertes Bild für die Segmentierung vorzubereiten: Aufgaben: l Rauschen eliminieren l Lücken innerhalb des Pfeils schließen Idee zur Elimination des Rauschens: x Erosion x Dilatation
. Lösung: Ein Opening gefolgt von einem Closing 2. eine Dilatation 3. eine Dilatation 4. eine Erosion Opening. eine Erosion Closing
2. Lösung: Ein Closing gefolgt von einem Opening 2. eine Erosion 3. eine Erosion 4. eine Dilatation Closing. eine Dilatation Opening
Segmentierung dient zur l Unterscheidung der Objekte vom Hintergrund und l zur Unterscheidung der Objekte untereinander. A: Original Bild, B: Knochengewebe wird hervorgehoben, C: Lungengewebe wird hervorgehoben
Zusammenhangskomponente (ZHK) in 2D Der Vordergrund (blau) enthält 7 N4 ZHK 2 N8 ZHK Vorder- und Hintergrund müssen immer mit entgegen gesetzten Nachbarschaftsverhältnis ermittelt werden. Warum?
Zusammenhangskomponente (ZHK) in 2D Der Hintergrund enthält 4 N4 ZHK N8 ZHK
Variante der ZHK-Markierung: Rekursives Fluten
Rekursives Fluten N8 Nachbarschaft N4 Nachbarschaft Quelle: https://de.wikipedia.org/wiki/floodfill
Rekursives Fluten (~floodfill) in größerem Maßstab Quelle: https://en.wikipedia.org/wiki/flood_fill#/media/file:wfm_floodfill_animation_stack.gif
Übersicht l Maße zur Beurteilung von Bildern: l Histogramm l Entropie l Punktoperationen: l Lineare Veränderung der Grauwerte: l Addition & Multiplikation l Komb. aus Add. & Mult.: lineare Grauwerttransformation l Binarisierung & Äquidistantenbildung (Vorgriff auf Kap. 4) l Nicht lineare Veränderung der Grauwerte: l Gamma-Korrektur l Lokale Bildoperatoren: l Faltung l Rangfolgeoperatoren
Motivation zur Gamma-Korrektur l Charge Coupled Device = Ladungsgekoppelte Bildsensoren l am weitesten verbreitet: Scanner, Digitalkamera l Wandelt Lichtenergie in elektrischen Strom um:
Der entstandene Fehler muss durch eine Korrekturfunktion die Gammakorrektur behoben werden:
Verlauf der Gamma-Korrektur g' gmax g gmax g=2 g=,5 :
Gamma-Korrektur Nicht lineares Aufhellen der Grauwerte
Gamma-Korrektur Welche Bereiche werden aufgehellt und welche abgedunkelt? Wie ändert sich der Kontrast?
Gamma-Korrektur Nicht lineares Abdunkeln der Grauwerte g /gmax g=.5 g/gmax Welche Bereiche werden aufgehellt und welche abgedunkelt? g' Wie ändert sich der Kontrast? gmax g gmax.5 g-wert