BIT I SoSem 2015 | Basisinformationstechnologie II - 06_Algorithmen der Bildverarbeitung II: Punktoperationen und Filter
1. Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung
Dr. Jan G. Wieners // jan.wieners@uni-koeln.de
Basisinformationstechnologie II
Sommersemester 2015
20. Mai 2015 – Algorithmen der Bildverarbeitung II: Punktoperationen und Filter
2. Zwei Herausforderungen um OCR und
Merkmalsextraktion
Vorverarbeitung: Verbesserung des Quellmaterials
Punktoperationen
Binarisierung
Histogrammausgleich
Binarisierung, Schwellwertausgleich
Filter
Medianfilter
Geometrische Operationen
Themenüberblick
24. “Same Same But Different – Comparing Rendering Environments for Interactive
Digital Objects” (Guttenbrunner, Rauber, Thaller, Wieners): http://www.euromed2010.eu/e-
proceedings/content/full/140.pdf
25. “Same Same But Different – Comparing Rendering Environments for Interactive
Digital Objects” (Guttenbrunner, Rauber, Thaller, Wieners): http://www.euromed2010.eu/e-
proceedings/content/full/140.pdf
35. Gonzalez und Woods, 2008: „We can summarize by saying that RGB is ideal
for image color generation (as in image capture by a color camera or image
display in a monitor screen), but its use for color description is much more
limited.”
36.
37. Das IHS-Farbsystem (auch HSI, HSV Farbsystem):
Leuchtstärke (Intensity): Maßeinheit der Helligkeit,
resultiert aus dem Durchschnitt der Farbwerte
Zu viel Information: Umwandlung in Graustufenbild
38. Das IHS-Farbsystem (auch HSI, HSV Farbsystem):
Leuchtstärke (Intensity): Maßeinheit der Helligkeit,
resultiert aus dem Durchschnitt der Farbwerte
Sättigung (Saturation): Beschreibt die Farbreinheit
Zu viel Information: Umwandlung in Graustufenbild
39. Das IHS-Farbsystem (auch HSI, HSV Farbsystem):
Leuchtstärke (Intensity): Maßeinheit der Helligkeit,
resultiert aus dem Durchschnitt der Farbwerte
Sättigung (Saturation): Beschreibt die Farbreinheit
Farbton (Hue): Proportional zur durchschnittlichen
Wellenlänge der Farbe; basiert auf Abbildung der
Farben in einem Polarkoordinatensystem:
Zu viel Information: Umwandlung in Graustufenbild
40. Relevant für Umwandlung in Graustufenbild:
Leuchtstärke (Intensity)
Algorithmus:
Betrachte jedes Pixel P der Rastergrafik
Weise jedem Farbkanal des betrachteten Pixels P die Summe
der Werte der einzelnen Farbkanäle R, G und B zu und
dividiere anschließend durch die Anzahl der drei:
𝑃 = 𝑟𝑔𝑏(
𝑃𝑅 + 𝑃𝐺 + 𝑃𝐵
3
,
𝑃𝑅 + 𝑃𝐺 + 𝑃𝐵
3
,
𝑃𝑅 + 𝑃𝐺 + 𝑃𝐵
3
)
Zu viel Information: Umwandlung in Graustufenbild
43. Histogramm
Das Histogramm eines Bildes dokumentiert (bei einem 8-Bit
Graustufenbild) über eine Liste von 256 Elementen die Anzahl (y-
Achse) der Pixel des Bildes, die mit dem entsprechenden
Graustufenwert belegt sind.
44. Histogramm
Das Histogramm eines Bildes dokumentiert über eine Liste von 256
Elementen (8-Bit Graustufenbild) die Anzahl der Pixel des Bildes, die
mit dem entsprechenden Farb- bzw. Graustufenwert belegt sind.
?
45. Algorithmus:
Betrachte jedes Pixel P der Rastergrafik
Speichere den Graustufenwert des Pixels in einem
assoziierten Array:
// Initialisiere jede Speicherstelle des Arrays mit 0
array histogram[0-255] = 0;
// Iteriere über jedes Pixel des Bildes
array histogram[ PR ] += 1;
Histogrammerstellung – so funktioniert‘s
46. Histogrammausgleich (automatisch)
Z.B.: Lisani, Petro, Sbert 2012: Color and
Contrast Enhancement by Controlled
Piecewise Affine Histogram Equalization
Vgl. http://www.ipol.im/pub/art/2012/lps-pae/
47. Wie lässt sich (algorithmisch) eine Aufhellung des
Graustufenbildes vornehmen?
Übung: Bildaufhellung?
48. Wie lässt sich (algorithmisch) eine Aufhellung des
Graustufenbildes vornehmen?
Übung: Bildaufhellung?
49. Algorithmus:
Betrachte jedes Pixel des Bildes
Für jedes dunkle Pixel: Vermindere den Grauwert
Für jedes helle Pixel: Erhöhe den Grauwert
Kontrastverstärkung
50. Zu viel Information II: Binarisierung
Grundfrage dieses (und der vergangenen Verfahren): Wie lässt sich
Bildinformation verwerfen, ohne die Bildcharakteristika (i.e. die Form
des Elephanten) zu zerstören?
51. Zu viel Information II: Binarisierung
Grundfrage dieses (und der vergangenen Verfahren): Wie lässt sich
Bildinformation verwerfen, ohne die Bildcharakteristika (i.e. die Form
des Elephanten) zu zerstören?
52. Binarisierung mit konstantem Schwellenwert – so funktioniert‘s
Zwei Pixelklassen:
Algorithmus:
Betrachte jedes Pixel P der Rastergrafik
Vergleiche den Farb-/Grauwert jedes Pixels mit dem
Schwellenwert T.
Ist der Wert kleiner als der Schwellenwert, so wird es schwarz
eingefärbt (a).
Ist der Wert größer oder gleich dem Schwellenwert, so wird es
weiß eingefärbt (b).
57. Filter: Betrachtung / Veränderung eines Pixels in
Abhängigkeit seiner Nachbarpixel
Achtung: Weil Originalpixel für das Ergebnis der
Filterung relevant (und unabdingbar) ist: Nutzung eines
Zwischenbildes als Ausgabe- oder Eingabepuffer.
Filter
58. Lineare Filter (LSI-Filter, linear shift-invariant
filters): Jedes Pixel im Verarbeitungsfenster wird
mit einem vordefinierten Wert aus einer Faltungs-
bzw. Filtermatrix multipliziert.
Nichtlineare Filter: U.a. heuristische Ansätze
Heuristik (vgl. Prechtl / Burkard): „Lehre bzw. Theorie der Verfahren zum Finden von Neuem und Problemlösen.“
Filter
59. Berechnet einfachen arithmetischen Mittelwert der
Pixelwerte in der Nachbarschaft unter der
Filtermaske
Faltungsmatrix 𝑀 =
1
9
1 1 1
1 1 1
1 1 1
Pro / Contra:
Rauschen reduziert
Glättung / „Blurring“
Kanten verwischen
Einfacher Mittelwertfilter
Quelle: Handels 2009: Medizinische Bildverarbeitung.
64. Algorithmus Medianfilter (Rangordnungsfilter):
Rangordnungsfilter betrachten die Nachbarschaftspixel
jedes Pixels, speichern die gefundenen Farb- bzw.
Graustufenwerte und sortieren die so gewonnenen Werte
in aufsteigender Reihenfolge.
Aus einer 3x3 Pixelmatrix resultiert eine Liste, bestehend
aus insgesamt neun Werten. Relevant für das
Medianfilter ist das Element, das sich in der Mitte der
sortierten Liste der Pixelwerte befindet.
Das Medianfilter selektiert den Pixelwert des fünften
Listenelements und weist dem Pixel in der Mitte der
Matrix den Median, d.h. den fünften Wert der Liste zu.
Beispiel Nichtlinearer Filter: Medianfilter
Zur Erweiterungsfähigkeit bestehender OCR Verfahren auf den Bereich extrem früher Drucke (2008)
Anwendungsfall: PLANETS
Zu viel Information: Umwandlung von RGB-Bild in Graustufenbild
Polarkoordinatensystem -> Winkel
Polarkoordinatensystem -> Winkel
Polarkoordinatensystem -> Winkel
Alle Pixelwerte um einen Wert n erhöhen
Punktoperation
Der Mittelwert-Filter ersetzt jedes Pixel durch den Mittelwert seiner Umgebungspixel. Dabei wird jedes Umgebungspixel gleich gewichtet. Dies hat zur Folge, dass der Mittelwert-Filter nicht nur Rauschen glättet, sondern auch Kanten im Bild verwischt.
Er berechnet als neuen Pixelwert das arithmetische Mittel der Umgebungspixel.