Studienarbeit "Möglichkeiten der Indentifikation und Entfernung von
Transcrição
Studienarbeit "Möglichkeiten der Indentifikation und Entfernung von
Fakultät für Informatik Professur Medieninformatik Studienarbeit Möglichkeiten der Indentifikation und Entfernung von Bildstörungen Janina Bär Chemnitz, den 12. Februar 2006 Betreuer: Dr. Maximilian Eibl Bär, Janina Möglichkeiten der Indentifikation und Entfernung von Bildstörungen Studienarbeit, Fakultät für Informatik Technische Universität Chemnitz, Februar 2006 Inhaltsverzeichnis 1 Einleitung 1.1 Problem . . . . . . . . . . 1.2 Zielstellung . . . . . . . . 1.3 Gliederung . . . . . . . . 1.4 Einführende Bemerkungen 1.5 Verwendete Techniken . . 1.5.1 CanoScan Lide 50 1.5.2 ImageJ . . . . . . . . . . . . . 1 1 1 2 2 3 3 3 2 Bildstörungen 2.1 Entstehung von Bildstörungen . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Klassifikation von Bildstörungen . . . . . . . . . . . . . . . . . . . . . . . 2.3 Beispielbilder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 5 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Entfernung von Bildstörungen unter Verwendung von Operationen der Bildverarbeitung 3.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Lineare Faltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 Fourier-Transformation . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Lineare Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.2 Rangordnungsfilter . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.3 Andere Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Folgerungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 11 11 12 12 13 16 19 20 4 Automatische Entfernung von Bildstörungen 4.1 Vorhandene Anwendungen . . . . . . . . . . . . 4.1.1 Adobe Photoshop . . . . . . . . . . . . . 4.1.2 AKVIS Retoucher . . . . . . . . . . . . 4.1.3 Jasc Paint Shop Pro . . . . . . . . . . . . 4.1.4 Dusta La Vista von Sreen . . . . . . . . . 4.2 Weitere Ansätze . . . . . . . . . . . . . . . . . . 4.2.1 Lineare Glättungsfilter verbessern . . . . 4.2.2 Kantendetektion mit hohem Schwellwert 22 22 22 25 26 28 30 30 30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i I NHALTSVERZEICHNIS 4.3 4.4 4.2.3 Glättung und Bildschärfung . . . . . . . . . . . . . . . . . . . . 4.2.4 Unscharf Maskieren . . . . . . . . . . . . . . . . . . . . . . . . 4.2.5 Zylinderhutoperator . . . . . . . . . . . . . . . . . . . . . . . . 4.2.6 Linien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.7 Weiß . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Automatische Fotoentwicklung und künstlerischer Aspekt in Fotografien . Weitere Entwicklungen zur automatischen Entfernung von Bildstörungen 4.4.1 ICE-Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Digital ICE Professional . . . . . . . . . . . . . . . . . . . . . . 4.4.3 FARE-Verfahren von Canon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 32 32 33 34 35 36 36 38 38 5 Auswertung und Ausblick 40 Abbildungsverzeichnis 43 Literaturverzeichnis 45 A Anwendung auf Beispielbilder A.1 Mittelwertfilter . . . . . . . . . . . . . . . . . . A.2 Gauß-Filter . . . . . . . . . . . . . . . . . . . . A.3 Binominalfilter . . . . . . . . . . . . . . . . . . A.4 Maximum/Minimum-Filter . . . . . . . . . . . . A.5 Median-Filter . . . . . . . . . . . . . . . . . . . A.6 Gewichtetes Median-Filter . . . . . . . . . . . . A.7 Adobe Photoshop . . . . . . . . . . . . . . . . . A.7.1 Stempel-Werkzeug . . . . . . . . . . . . A.7.2 Staub und Kratzer entfernen . . . . . . . A.8 Jasc Paint Shop Pro . . . . . . . . . . . . . . . . A.8.1 Rauschunterdrückung . . . . . . . . . . A.8.2 Rauschen entfernen mit Kantenschutz . . A.8.3 Schwarze und weiße Bildfehler entfernen A.8.4 Kleine Bildfehler automatisch entfernen . A.9 Verbessertes lineares Glättungsfilter . . . . . . . A.10 Kantendetektion . . . . . . . . . . . . . . . . . . A.11 Unscharf maskieren . . . . . . . . . . . . . . . . A.12 Zylinderhutoperator . . . . . . . . . . . . . . . . A.13 Rein weiße Stellen in Fotos . . . . . . . . . . . . ii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 49 51 53 54 56 59 61 61 62 64 64 65 66 67 68 69 71 75 77 1 Einleitung 1.1 Problem Im Zuge der „neuen Medien“1 und Digitalisierung des menschlichen Umfeldes werden nach und nach die analogen Fotos, im Sinne von echten Papierbildern, in den Hintergrund gestellt. Mittlerweile fotografieren die meisten Menschen in Deutschland digital und viele KameraHersteller wenden sich von den analogen Modellen ab. Die Vorteile digitaler Bilder liegen auf der Hand: sie lassen sich auf einem Rechner mit etwas Aufwand beispielsweise in einer Datenbank abspeichern, um später zu einem Stichwort die passenden Fotos schnell zu finden. Wie kann schnell in den alten und analogen Fotos gesucht werden? Digitale Daten sind länger „haltbar“ als Papierbilder, denen man mit steigendem Alter dieses auch ansieht. Wie lassen sich also Fotos haltbarer machen? Und: digitale Bilder weisen keine Bildstörungen im Sinne von Kratzern oder Ähnlichem auf. In Zeiten von Internet und E-Mail schicken immer weniger Menschen Briefe mit der Post. Ein schönes Digitalbild lässt sich leicht anhängen und bereitet dem Empfänger Freude. Eine EMail ist innerhalb von Stunden beim Empfänger, ein Brief dauert – rechtzeitig eingesteckt – mindestens einen Tag. Wie können also alte Fotos schnell verschickt werden? Aus diesen Gründen sind viele Menschen bestrebt ihre analogen Bilder zu digitalisieren. Mit einem Scanner ist das kein Problem. Doch die erzielten Resultate sind meist nicht von gewünschter Qualität. Dies kann am Ausgangsbild liegen, das über die Jahre doch schon einige Kratzer oder Risse erhalten hat, oder auch an den Fusseln, die auf dem Scanner lagen. 1.2 Zielstellung Ziel dieser Studienarbeit ist es, Möglichkeiten aufzudecken, die nach dem Digitalisieren (z.B. Einscannen) auf das digitale Bildmaterial angewendet werden, um Bildstörungen zu beseitigen und das möglichst ohne Kompromisse eingehen zu müssen, beispielsweise auf Kosten der Bildschärfe. Gibt es solche Methoden, die einigermaßen gut funktionieren, so sollen Überlegungen angestellt werden, den Prozess zu automatisieren. Dies umfasst eine 1 im weiteren Sinne als Medien, die auf Daten in digitaler Form zugreifen 1 1 E INLEITUNG Erkennung von Bildstörungen und eine anschließende Entfernung selbiger – Sind auf diesem Bild Störungen vorhanden? Wenn ja, dann wende Methode x an, um diese zu beseitigen. 1.3 Gliederung Anschließend an diesen Abschnitt folgen einführende Bemerkungen und ein Überblick über die in dieser Arbeit verwendeten Techniken noch im Zuge der Einleitung (Kapitel 1). Auf Grund der Tatsache, dass Bildstörungen auf die unterschiedlichste Art und Weise entstehen, beschäftigt sich Kapitel 2 mit diesem Aspekt und den entsprechenden Beispielbildern. Außerdem wird versucht die Bildstörungen zu klassifizieren. In Kapitel 3 folgt eine Vorstellung der gängigsten Methoden der Bildverarbeitung zur Entfernung von Bildstörungen. Anhand von Beispielen wird die Wirkungsweise verdeutlicht. Kapitel 4 zeigt dann die Möglichkeiten der automatischen Entfernung von Bildstörungen. Ausgehend von vorhandenen und gebräuchlichen Anwendungen über Ansätze der Kombination von Methoden bis hin zur hardwaremäßigen Identifikation von Bildstörungen bei Diascannern wird dieses Thema erörtert. Auch der künstlerische Aspekt und die daraus folgende Schwierigkeit der automatischen Identifikation von Bildstörungen soll diskutiert werden. Nach einer Bewertung der heutigen Möglichkeiten folgt ein Ausblick auf mögliche zukünftige Lösungsmethoden und Weiterentwicklungen des mit dieser Studienarbeit zusammengetragenen Wissens in Kapitel 5. Im Anhang A folgen die Beispielbilder und Diskussionen zu den meisten angesprochenen Methoden. 1.4 Einführende Bemerkungen Diese Studienarbeit erhebt nicht den Anspruch auf Vollständigkeit, vielmehr geht es um Repräsentativität der vorgestellten Methoden. Zunächst möchte ich auf den Unterschied zwischen Bildbearbeitung und Bildverarbeitung hinweisen. Bildbearbeitung kann man als Manipulation von Bildern betrachten. Bilder werden also nachträglich verändert, verbessert oder verfremdet. Im Gegensatz dazu ist unter Bildverarbeitung so etwas wie Bildverstehen und Mustererkennung zu verstehen, also eine Art Analyse und Interpretation visueller Informationen. Diese Studienarbeit ist somit der Bildverarbeitung zuzuordnen. 2 1.5 V ERWENDETE T ECHNIKEN Ausgangspunkt für die betrachteten Möglichkeiten der Identifikation und Entfernung von Bildstörungen sollen immer digitale Bilder sein. Wie diese digitalisiert wurden, ist nicht relevant. Es werden ausschließlich Rasterbilder betrachtet, also solche die aus regelmäßig angeordneten Pixeln bestehen, keine Vektorgrafiken. Als Bildstörungen werden nur die in Kapitel 2 beschriebenen betrachtet, keinerlei durch die Aufnahme bedingte Störungen wie Unschärfe durch Verwackeln etc. oder aber Unterund Überbelichtungen. 1.5 Verwendete Techniken 1.5.1 CanoScan Lide 50 Zum einscannen aller analogen Bilder dieser Arbeit wurde der Scanner „CanoScan Lide 50“ verwendet. Wichtige technische Daten zum Scanner: • LiDE2 -Sensor mit 1.200 dpi • 48 Bit Farbtiefe intern/extern 1.5.2 ImageJ ImageJ verbindet die Konzepte sowohl der Bildbearbeitung, als auch der Bildverarbeitung. So lassen sich auf einfache Weise Bilder manipulieren und bearbeiten, öffnen oder in verschiedenen Dateiformaten speichern. Eine Reihe von Werkzeugen der Bildverarbeitung – beispielsweise Kantendetektoren oder verschiedenste Filter sind bereits vorhanden. Eigene Javacode-Stücke lassen sich als Plugins einfach hinzufügen. Sie können im laufenden System übersetzt und sofort ausgeführt werden, ohne dass ImageJ neu gestartet werden muss. Dies hat seine Ursache in der dynamischen Struktur von Java. Da ImageJ vollständig in Java implementiert ist, ist es weitestgehend plattformunabhängig. Außerdem bringt ImageJ eine eigene Java-Laufzeitumgebung mit, sodass Java selbst nicht auf dem Computer installiert sein muss. ImageJ wird meist als eigenständige JavaApplikation verwendet, kann aber auch – unter den üblichen Einschränkungen – innerhalb des Web-Browsers als Java-Applet oder serverseitig eingesetzt werden. ImageJ wird von Rasband am U.S. National Institute of Health (NIH) entwickelt und ist frei verfügbar. Auf der ImageJ-Homepage3 stehen der gesamte Quellcode, die aktuelle Version 2 LED Indirect Exposure 3 http://rsb.info.nih.gov/ij/ 3 1 E INLEITUNG von ImageJ, Updates und Dokumentationen, sowie Testbilder und eine wachsende Sammlung von Plugins zur Verfügung. Es gibt in ImageJ auch die Möglichkeit Makros aufzuzeichnen, sodass auch Anwender ohne Java-Kenntnisse mit den vorhandenen Möglichkeiten kleinere „Programme“ schreiben können. Somit ist ImageJ eine ideale Basis, um Bildverarbeitungsalgorithmen anzuwenden, aneinanderzureihen, neue zu entwickeln und mit ihnen zu experimentieren. Abbildung 1.1 zeigt einen Screenshot von ImgaeJ. Abbildung 1.1: Screenshot: ImageJ Weitere Informationen zu ImageJ sind auf der oben genannten Homepage zu finden. Burger und Burge beschreiben in [BB05] eine Einführung in die digitale Bildverarbeitung mit Java und ImageJ. 4 2 Bildstörungen 2.1 Entstehung von Bildstörungen Bildstörungen können auf die unterschiedlichsten Weisen entstehen. Beispiele lassen sich schnell finden: • ein gerahmtes Foto ist heruntergefallen und das zersprungene Glas hat Kratzer auf dem Bild hinterlassen • ein (sehr) altes Foto bekam weiße Stellen vom Lagern • versehentlich bekam das Foto ein Eselsohr • ein Bild wurde an die Pinnwand gehängt und hat nun ein Loch, nach dem Einscannen entstanden schwarz-weiße Gebilde • ein Foto wurde zerrissen und soll nun wieder zusammengesetzt werden • beim Einscannen eines Fotos ergab der Staub auf dem Scanner unerwünschte weiße Stellen • sonstige Störungen (auch beabsichtigt hinzugefügte Störungen) Sie haben jedoch eine Gemeinsamkeit: am Ende liegen Bilder in digitaler oder analoger Form vor, die unerwünschte Störungen aufweisen. Um nun die Fotos mit dem Computer verarbeiten zu können, müssen alle digitalisiert werden. Wie dies geschieht, soll hier nicht betrachtet werden. 2.2 Klassifikation von Bildstörungen Versucht man nun die verschiedenen Bildstörungen zu klassifizieren, könnte man zu folgender Ordnung gelangen: • Kratzer • Knicke 5 2 B ILDSTÖRUNGEN • Löcher • Risse • Punkte • „Salt-and-Pepper“-Rauschen Die Entstehung der ersten fünf Bildstörungen ist oben beschrieben. Unter „Salt-and-Pepper“Rauschen versteht man kleine weiße und schwarzen Punkte. Diese können beispielsweise durch einen Rauschgenerator entstehen, der zufällige Pixel auf schwarz oder weiß setzt, oder aber mit einem „Störungsfilter“ dem Bild hinzugefügt werden. In Abhängigkeit dessen, wie sich Staub auf dem Bild bemerkbar macht, kann Staub auch als Salt-and-Pepper-Rauschen betrachtet werden. 2.3 Beispielbilder Ein einzelnes Foto zu finden, welches geeignet ist um die verschiedensten Methoden zur Entfernung von Bildstörungen und deren Vor- und Nachteile darzustellen, schien mir schwierig. Deshalb wählte ich eine Reihe von Beispielbildern – von alten Schwarz-Weiss-Fotografien bis hin zu aktuellen digitalen Farbfotos, mit unterschiedlichen Motiven – um die verschiedensten Aspekte besser verdeutlichen zu können. Nachfolgend eine Übersicht über die Beispielbilder. In diesen Fotos sind alle oben aufgeführten Bildstörungen vorhanden. Abbildung 2.1 zeigt eine alte Schwarz-Weiß-Fotografie einer Landschaft, die nun nach längerer Zeit Kratzer und weiße Punkte aufweist. Ein tatsächlich gerahmtes Bild, was heruntergefallen ist und vom zersprungenen Glas am oberen und linken Rand Kratzer bekam, ist in Abbildung 2.2 zu sehen. Das Foto in Abbildung 2.3 enhält einen Knick und Risse. Risse können dünn oder dick sein. Der „frische“ Knick äußert sich lediglich durch eine Farbveränderung. Ältere Knicke sehen ähnlich wie die Kratzer aus Abbildung 2.1 aus. Abbildung 2.4 wurde mit Salt-and-Pepper-Rauschen versehen. Der Pixelradius beträgt zwei, was bedeutet, dass die Störungen eine Fläche von 2x2 Pixel besitzen. Abbildung 2.5 zeigt die Bildstörung „Löcher“. Da beim Scannen von Bildern mit Löchern Bildstörungen entstehen, die sowohl schwarz als auch weiß – bedingt durch die unterschiedlichen „Höhen“ beim Scannen – in Erscheinung treten, muss diese Art gesondert betrachtet werden. 6 2.3 B EISPIELBILDER Abbildung 2.1: Kratzer und Punkte vom Lagern Abbildung 2.2: Kratzer vom gesprungenen Glas 7 2 B ILDSTÖRUNGEN Abbildung 2.3: Knick und Risse Abbildung 2.4: Salt-and-Pepper-Rauschen 8 2.3 B EISPIELBILDER Abbildung 2.5: Löcher vom Befestigen an der Pinnwand Alle Bildstörungen, bis auf die durch den zweiten Kreis verdeutlichte, entstanden durch Löcher, die von vorn nach hinten durch das Foto gestochen wurden. Die übrige durch Stechen von hinten nach vorn. 9 3 Entfernung von Bildstörungen unter Verwendung von Operationen der Bildverarbeitung Ein Bildverarbeitungsoperator ist ein Werkzeug, das ein oder mehrere (Eingangs-) Bilder in ein Ausgangsbild überführt. Die Operationen der Bildverarbeitung lassen sich in drei Kategorien einteilen: • Punktoperationen • lokale Operationen • globale Operationen Als Punktoperationen werden solche Operationen bezeichnet, bei denen ein Bildpunkt des Ausgangsbildes nur durch einen einzelnen Bildpunkt des Eingangsbildes oder der Eingangsbildfolge bestimmt wird. Zu diesen Operationen zählen beispielsweise Invertierung, Dehnung der Grauskala oder Binarisierung. Bei lokalen Operationen hingegen ist der Bildpunkt des Ausgangsbildes abhängig von den Bildpunkten in einer bestimmten lokalen Umgebung um einen entsprechenden Punkt des Eingangsbildes bzw. der Eingangsbildfolge. Eine solche lokale Umgebung wird meist quadratisch und symmetrisch zum betrachteten Punkt gewählt. Zu den lokalen Operationen zählen eine Reihe von Filtern, von denen einige zur Beseitigung von Bildstörungen verwendet werden können. Globale Operationen sind solche, bei denen ein Bildpunkt des Ausgangsbildes eine Funktion aller Bildpunkte des Eingangsbildes bzw. der Eingangsbildfolge darstellt. Im Folgenden werden die lokalen Operationen näher betrachtet, da hier die Möglichkeiten zur Entfernung von Bildstörungen zu finden sind. 10 3.1 G RUNDLAGEN 3.1 Grundlagen 3.1.1 Lineare Faltung Zur mathematischen Beschreibung lokaler Operationen ist der Begriff der linearen Faltung von Bedeutung. Lineare Faltung1 wird in [Ste04] wie folgt definiert: Seien L, M ungerade natürliche Zahlen, GE = (gE (i, j)) ein Eingangsbild und H = h(i , j ) = 0 0 M−1 M−1 h(− L−1 ... h(− L−1 2 ,− 2 ) 2 , 2 ) ... ... ... ... h(0, 0) ... ... ... ... M−1 L−1 M−1 h( L−1 , − ) . . . h( 2 2 2 , 2 ) eine Matrix mit i = 0, . . . , I −1; j = 0, . . . , J −1; i0 = − L−1 L−1 0 M−1 M−1 ,..., ; j =− ,..., 2 2 2 2 Die lineare Faltung GF = (gF (i, j)) von GE mit dem Faltungskern H wird durch die folgende Faltungssumme definiert: L−1 2 gF (i, j) = M−1 2 ∑ ∑ h(l, m) · gE (i − l, j − m) M−1 − L−1 2 − 2 = h(i, j) ∗ gE (i, j) Bezeichnung: GF = H ∗ GE Bemerkungen: • Die lineare Faltung berechnet die Werte gF (i, j) des Ausgangsbildes aus den Werten einer (rechteckigen) Umgebung des Punktes (i, j) des Eingangsbildes GE . • Die Eigenschaften der Faltungsoperation werden durch den Faltungskern H = (h(i0 , j0 )) bestimmt. 1 auch: Konvolution 11 3 E NTFERNUNG VON B ILDSTÖRUNGEN UNTER V ERWENDUNG VON O PERATIONEN DER B ILDVERARBEITUNG • In der Bildverarbeitung nehmen wir an, dass L und M wesentlich kleiner als die Zeilen- und Spaltenlänge des Bildes sind. • Bei Anwendung der Gleichung auf randnahe Bildbereiche treten Indizes auf, die Bildpunkte außerhalb des Bildes GE = (gE (i, j)) ansprechen. Es gibt eine Reihe von Verfahren, wie Zeilen- und Spaltenwiederholung, Bildspiegelung usw., um diesen Punkten geeignete Werte zuzuweisen. Die lineare Faltung besitzt zwei weitere wichtige Eigenschaften. Sie ist • assoziativ und • kommutativ. 3.1.2 Fourier-Transformation Basierend auf der Zerlegung von Bildsignalen in harmonische Funktionen, lassen sich Bilder auch im Frequenzbereich darstellen. Es gibt wichtige Verfahren in der digitalen Bildverarbeitung, die ohne spektrale Konzepte nicht darstellbar sind. Die Fouriertransformation beschreibt den Übergang einer Funktion g(x) zu ihrem Fourierspektrum G(w) (Vorwärtstransformation). Auf Grund der Darstellung der transformierten Funktion durch periodische Wellen unterschiedlicher Amplitude und Frequenz, spricht man hier von einer Repräsentation im Frequenzraum. Die Originalrepräsentation wird Repräsentation im Ortsraum genannt. Die übliche Bezeichnung für Funktionen im Ortsraum ist die Verwendung kleiner Buchstaben – z.B. f (n), für korrespondierende Frequenzraumfunktionen sind es Großbuchstaben – z.B. F(u). Die für die Bildverarbeitung wichtigste Eigenschaft der Fouriertransformation ist die Faltungseigenschaft: wird eine Funktion einer linearen Faltung unterzogen, dann ist die Fouriertransformierte dieses Ergebnisses gleich der punktweisen Multiplikation der einzelnen Fouriertransformierten: g(x) ∗ h(x) ↔ G(w) · H(w) Eine lineare Faltung der Funktionen im Ortsraum entspricht also einer Multiplikation der zugehörigen Transformierten im Frequenzraum – und umgekehrt. 3.2 Filter Filteroperationen kann man in lineare und nicht lineare unterscheiden. Lineare Filter zeichnen sich dadurch aus, dass sich die „Verknüpfung“ der Pixelwerte innerhalb der entsprechenden Umgebung durch eine bestimmte Funktion beschreiben lässt - beispielweise eine 12 3.2 F ILTER gewichtete Summation. Bei nicht linearen Filtern hingegen ist es so, dass sich diese meist nicht mehr durch Funktionen beschreiben lassen. Das Operatorfenster des Filters ist gewöhnlich quadratisch und zwischen 3x3 und 11x11 Pixeln groß. Grundsätzlich lässt sich sagen: je kleiner das Operatorfenster, desto feinere Details können bearbeitet werden. Solche Details können auch Bildstörungen sein. Größere Fenster unterdrücken auch größere Strukturen, führen aber zu unscharfen Ergebnisbildern und benötigen mehr Rechenzeit. Zur Entfernung der verschiedenen Bildstörungen lassen sich nun einige der Filter mehr oder weniger gut verwenden. Im Folgenden werden wichtige Operationen – in ImageJ implementiert – auf die Beispielbilder angewendet und ausgewertet. 3.2.1 Lineare Filter Jedes lineare Filter mit ausschließlich positiven Koeffizienten ist sozusagen ein Glättungsfilter, da der gewichtete Durchschnitt über die Filterregion berechnet wird. Glättungsfilter sind für die Entfernung von Bildstörungen zu verwenden. Betrachten wir nun einige Beispiele. Mittelwertfilter Das Mittelwertfilter wird häufig auch „Box“-Filter genannt, was an seiner Form liegt: die 3D-Form des Filters erinnert an eine Schachtel. Auch die Bezeichnung „Boxcar“-Filter ist nicht unüblich. Das Mittelwertfilter ist ein einfaches Glättungsfilter. Der Faltungskern ist an jeder Stelle mit einer 1 besetzt. Zur Normierung wird mit dem entsprechenden Faktor multipliziert. Die 3x3und 5x5-Faltungskerne sind folgende: 1 1 1 1 HMW 1 (i, j) = · 1 1 1 9 1 1 1 1 · HMW 2 (i, j) = 25 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 13 3 E NTFERNUNG VON B ILDSTÖRUNGEN UNTER V ERWENDUNG VON O PERATIONEN DER B ILDVERARBEITUNG Es wird also der Durschnitt der neun bzw. 25 Pixel berechnet und dem Punkt (i, j) zugewiesen. Wie man in Anhang A.1 sehen kann, ist das Mittelwertfilter ein eher schlechtes Glättungsfilter. Dies liegt vor allem an den scharf abfallenden Rändern und dem damit zusammenhängenden Frequenzverhalten. Außerdem sollten Glättungsfilter nach allen Richtungen gleichförmig arbeiten, also „isotrop“ sein, was beim Box-Filter auch nicht der Fall ist. Gauß-Filter Ein weiteres Glättungsfilter ist das Gauß-Filter. Die Faltungskerne der 3x3-Version und der 5x5-Version sehen wie folgt aus: 1 2 1 1 HG1 (i, j) = · 2 4 2 16 1 2 1 0 1 2 1 0 1 3 5 3 1 1 2 5 9 5 2 · HG2 (i, j) = 57 1 3 5 3 1 0 1 2 1 0 Die Gauß-Funktion ist isotrop. Bei einer ausreichenden Größe des Faltungskerns – mindestens 5x5 – wird dies angenähert. Das Frequenzverhalten weist somit keine stark abfallenden Ränder auf. Deshalb ist das Gauß-Filter dem Mittelwertfilter überlegen. Anhand der Abbildungen A.3 und A.4 in Anhang A.2 ist gut zu erkennen, dass im Vergleich zum Mittelwertfilter weniger Unschärfe entsteht. Allerdings werden auch hier die meisten Bildstörungen nicht entfernt. Binominalfilter Ähnlich wie beim Gauß-Filter wird beim Binominalfilter ein abrupter Wechsel des Funktionswertes vermieden und eine kontinuierlich abnehmende Form erzeugt. Deshalb ist die 3x3-Version identisch mit der des Gauß-Filters. Die Grundlage für die Binominalfilter liefern die Binominalkoeffizienten. Wie Binominalfilter entwickelt und definiert werden, ist in [Tön05] nachzulesen. Nachfolgend die 3x3- und 5x5-Variante des Binominalfilters: 1 2 1 1 HB1 (i, j) = · 2 4 2 16 1 2 1 14 3.2 F ILTER 1 HB2 (i, j) = · 256 1 4 6 4 1 4 16 24 16 4 6 24 36 24 6 4 16 24 16 4 1 4 6 4 1 Durch die Binominalfilter wird ein optimales Rauschfilter angenähert. Anhang A.3 zeigt, dass sich die Resultate der Filterung mittels Gauß- und Binominalfilter kaum unterscheiden. Tiefpassfilter Tiefpassfilter sind solche, die Signalteile mit hohen Frequenzen abschwächen und nur Frequenzen unterhalb einer bestimmten Grenzfrequenz ungeschwächt passieren lassen. Die Abschwächung hängt von der Höhe der Frequenz und auch von der Periodizität der Sinusfunktion im Zähler ab. Außerdem ist die Periodizität richtungabhängig, was bedeutet dass man durch eine Filterung eines Bildes und eine Filterung des selben, aber um 90 Grad gedrehten Bildes unterschiedliche Ergebnisse erhält. Mittels Tiefpassfiltern verschwinden kleine Grauwertspitzen im Bild und das Bild wirkt unschärfer. Somit gehören auch Mittelwertfilter, Gauß-Filter und Binominalfilter zu den Tiefpassfiltern. Allerdings ist die Tiefpasscharakteristik des Mittelwertfilters nicht ideal. Zwei bisher noch nicht betrachtete lineare Tiefpassfilter sind: • ideales Tiefpassfilter und • Butterworth Tiefpassfilter. Nach der Transformation eines Bildes in den Frequenzraum, kann die Filterung durchgeführt werden. Anschließend an eine Rücktransformation in den Ortsraum sind die Störungen dann mehr oder weniger zufriedenstellend beseitigt. Die Filterung geschieht durch eine Multiplikation der Fouriertransformierten mit der entsprechenden Filterfunktion. Die Operationen erfolgen dabei an der am Ursprung der Frequenzebene zentrierten Darstellung des Frequenzspektrums. Die Filterfunktion des idealen Tiefpassfilters ist folgende: 2 1, f alls u2 + v2 ≤ Fmax HFmax (u, v) = 0, sonst Dabei ist Fmax die Grenzfrequenz, für die Signal und Rauschen etwa gleich stark sind. Sozusagen die maximale Frequenz, die durch die Filterung erhalten bleibt. Diese ist hierbei ein direktes Maß für den Abstand vom Ursprung des Frequenzspektrums. 15 3 E NTFERNUNG VON B ILDSTÖRUNGEN UNTER V ERWENDUNG VON O PERATIONEN DER B ILDVERARBEITUNG Die erzielten Resultate der idealen Tiefpassfilterung sind aber in der Praxis meist nicht ausreichend, was – ähnlich wie beim Mittelwertfilter – an dem steilen Flankenabfall der Filterfunktion liegt. Abhilfe kann mit dem Butterworth-Tiefpassfilter 1 HFmax (u, v) = 1+ (u2 +v2 ) 2 Fmax k geschaffen werden. Die Dämpfung wird durch den Parameter Fmax eingestellt und der Exponent k steuert, wie schnell die Funktion an der Grenzfrequenz abnimmt. Für kleine k ergibt dies eine langsame Minderung, für k → ∞ nähert sich das Filter dem idealen Tiefpassfilter an. 3.2.2 Rangordnungsfilter Wie wir gesehen haben, besitzen lineare Filter einen entscheidenden Nachteil: sie verwischen auch kleinste Details des Bildes, die aber beabsichtigt sind - beispielsweise Punkte, Linien oder gar Kanten. Damit wird der Kontrast reduziert und die Bildqualität leidet. Lineare Filter sind also für die Entfernung von Bildstörungen weniger geeignet. Nun stellt sich die Frage, ob sich dieses Problem mit nicht linearen Filtern lösen lässt. Ein Beispiel für nicht lineare Filter sind Rangordnungsfilter, die nun näher betrachtet werden sollen. Maximum- und Minimum-Filter Das Prinzip der Maximum- und Minimum-Filter ist recht einfach: bestimme das Maximum bzw. Minimum der entsprechenden Filterregion und weise diesen Wert dem Punkt (i, j) zu. Das Maximum-Filter entfernt die schwarzen Punkte (Pepper) und verbreitert gleichzeitig helle Stellen. Eine Anwendung des Minimum-Filters hat natürlich den entgegengesetzten Effekt: helle Punkte (Salt) werden entfernt und gleichzeitig dunkle Strukturen räumlich erweitert. Zur Beseitigung der Bildstörungen der Beispielbilder sind beide Filter weniger geeignet. Die entstehende Verbreiterung der hellen oder dunklen Bildteile „entstellt“ das Bild. Einzig zur Entfernung von Salt- and Pepper-Rauschen kann das Filter angewendet werden, da hier die Störungen verschwinden. Eine Überlegung wäre nun beispielsweise zunächst das Maximum-Filter anzuwenden, um die schwarzen Punkte zu entfernen und anschließend das Minimum-Filter anzuwenden, um 16 3.2 F ILTER die Wirkung des Verbreiterns der hellen Bildteile des Maximum-Filters rückgängig zu machen. Die weißen Punkte sind danach immer noch vorhanden, weswegen eine erneute Anwendung des Minimum-Filters sinnvoll ist. Eine abschließende Anwendung des MaximumFilters macht die Erweiterung der dunklen Strukturen rückgängig. Ergebnis: das Salt- and Pepper-Rauschen ist nun entfernt, allerdings auf Kosten der Bildschärfe. Anhang A.4 zeigt diesen Prozess. Medianfilter Das Medianfilter ersetzt den Punkt (i, j) durch den Median der Pixelwerte innerhalb der entsprechenden Filterregion. Der Median ist definiert als der mittlere Wert einer nach der Größe geordneten Folge. Rechteckige Filter haben meist eine ungerade Seitenlänge, womit der mittlere Wert der geordneten Folge immer eindeutig ist. Ist die Anzahl der Elemente der Folge allerdings gerade, so ist der Median das arithmetische Mittel der beiden mittleren Werte. Anders ausgedrückt: median(p0 , ..., pk ) = pn , k = 2n 1 2 · (pn + pn−1 ), k = 2n − 1 k, n ∈ Z Betrachten wir zunächst in Abbildung 3.1 die Auswirkungen des 3x3-Medianfilters auf Bildstrukturen in 2D: Abbildung 3.1: Auswirkungen des 3x3 Medianfilters a) ein einzelner Punkt wird eliminiert, b) eine ein Pixel dünne horizontale oder vertikale Linie wird eliminiert, c) eine Sprungkante bleibt unverändert, d) eine Ecke wird abgerundet. Selbstverständlich muss das Medianfilter nicht die 3x3-Struktur haben. Auch eine 5x5-Struktur oder eine eindimensionale 3er-Maske (die erst horizontal und dann vertikal angewendet wird) sind denkbar. 17 3 E NTFERNUNG VON B ILDSTÖRUNGEN UNTER V ERWENDUNG VON O PERATIONEN DER B ILDVERARBEITUNG Das Medianfilter entfernt Störungen und Rauschen. In homogenen Bereichen kann eine völlige Beseitigung von Impulsrauschen erreicht werden. Gleichzeitig bleiben scharfe Bildkanten erhalten – mit der Einschränkung, dass diese nahezu gerade innerhalb der Filterumgebung verlaufen, denn an Ecken werden Artefakte verursacht. Die wichtigsten deterministischen und statistischen Eigenschaften des Medianfilters sind in [Jäh91] zu finden. Anhang A.5 zeigt, dass das Medianfilter zur Beseitigung von Salt- and Pepper-Rauschen, sowie zur Entfernung von kleinen Punkten und Linien gut geeignet ist. Große Bildfehler können – das Medianfilter auf das gesamte Bild angewendet – nicht bzw. unter sehr hohem Schärfeverlust auf Grund von hohem Pixelradius beseitigt werden. Wird das Medianfilter nur auf bestimmt Bereiche angewendet, so enstehen auch bei großen Störungen akzeptable Resultate. Gewichtetes Medianfilter Beim Medianfilter bestimmt die „Mehrheit“ der beteiligten Pixelwerte das Ergebnis. Ein einzelner Pixelwert kann das Ergebnis nicht wesentlich beeinflussen und führt maximal zu einer Verschiebung der anderen Werte um eins nach oben oder unten. Das Maß ist sozusagen „robust“. Nun stellt sich die Frage, ob bessere Ergebnisse erreicht werden, wenn die einzelnen Pixelwerte gewichtet in das Ergbnis eingehen sollten – also beispielsweise eine stärkere Gewichtung der Pixel im Zentrum gegenüber den Randpixeln. Das gewichtete Medianfilter arbeitet wie das Medianfilter, ordnet dabei aber den verschiedenen Positionen der Filterregion bestimmte Gewichte zu. Diese Gewichte können in Form einer Gewichtungsmatrix W festgelegt werden. Der Pixelwert des Bildes wird dann entsprechend dem Eintrag in W oft in die Ergebnisfolge eingesetzt. Anschließend wird die Ergebnisfolge wie gehabt sortiert und dem Punkt (i, j) der Medianwert zugewiesen. Als gewichtete Medianfilter eignen sich beispielsweise folgende Gewichtungsmatrizen W: 1 2 1 W1 (i, j) = 2 3 2 1 2 1 0 1 0 W2 (i, j) = 1 1 1 0 1 0 Die Arbeit mit diesen Gewichtungsmatrizen ergab, dass sie nicht zur Entfernung der in dieser Studienarbeit betrachteten Bildstörungen geeignet sind. Die Resultate der Anwendung des 18 3.2 F ILTER gewichteten Medianfilters mit den oben aufgeführten Gewichtungsmatrizen sind in Anhang A.6 zu sehen. Es entsteht im Vergleich zum Medianfilter weniger Unschärfe, es konnten aber bis auf kleine Linien und Punkte keine Bildstörungen entfernt werden. Selbstverständlich lassen sich weitere Gewichtungsmatrizen verwenden, die zur Eliminierung anderer Bildstörungen nützlich sind. 3.2.3 Andere Filter Nachfolgend eine kurze Beschreibung weiterer in der Literatur beschriebener Filter. Diese finden alle Anwendung bei der Beseitigung von Rauschen in Bildern. Lokaladaptive Filter Lokal adaptive Filter gehören zu den nichtlinearen Operatoren. Ihre Charakteristik ist nicht von der Position im Bild abhängig, sondern vom tatsächlichen Signal-Rausch-Verhältnis in einer entsprechenden Bildpunktumgebung bestimmt. Die statistischen Eigenschaften eines durch die Aufnahmebedingungen gestörten Bildes spielen hierbei eine wichtige Rolle. Es soll hier nicht weiter auf lokal adaptive Filter eingegangen werden, da Störungen, die bei der Aufnahme entstehen, nicht Thema dieser Studienarbeit sind. Eine genaue Herleitung und die algorithmische Umsetzung in C++ eines solchen Filters, des MMSE-Filters (Minimum Mean-Square Error), ist in [ZB96] zu finden. Signaladaptive Glättungsoperatoren Wie in [Wah89] beschrieben, können die Nachteile der Beseitigung erwünschter hochfrequenter Bildstrukturen wie Details oder abrupte Hell-Dunkel-Kanten durch Tiefpassfilter oder der Artefaktbildung beim Medianfilter durch signaladaptive Glättungsoperatoren weitgehend vermieden werden. Ausgehend davon, dass sich natürliche Bildsignale in Bereiche relativ niederer Grauwertfunktionen und in Bereiche abrupter Hell-Dunkel-Übergänge unterteilen lassen, liegt folgendes Verfahren nahe: Zunächst werden die Hell-Dunkel-Übergänge mit Operatoren zur Kantendetektion und anschließender Schwellwertoperation im Bild identifiziert. Sind die Kanten festgestellt, wird ein Glättungsfilter entsprechend angewandt. 19 3 E NTFERNUNG VON B ILDSTÖRUNGEN UNTER V ERWENDUNG VON O PERATIONEN DER B ILDVERARBEITUNG Pruningfilter Nichtlineare Pruningfilter werden in [Wah89] beschrieben. Bei dieser Filterung wird davon ausgegangen, dass die Störung des Bildes durch leistungsfähige Subtraktion eliminiert bzw. abgeschnitten (engl. „pruning“: abschneiden) werden kann. Der Zusammenhang zwischen Eingangsspektrum FR (k, l) und Ausgangsspektrum FPRUN (k, l) bei nichtlinearen Pruningfiltern ist folgender: ( q 2 |FR (k, l)|2 − R , |FR (k, l)| > R |FPRUN (k, l)| = 0, sonst ϕ [FPRUN (k, l)] = ϕ [FR (k, l)] mit : R − mittlere Amplitude, ϕ − Standardabweichung Mit Pruningfiltern ist eine gute Trennung zwischen Nutz- und Störsignalenergien im Spektrum möglich. Somit können im Ortsraum dominante Strukturen auch bei sehr starkem Rauschen nach Anwendung des Filters noch relativ gut wiedergegeben werden. Wiener Filter Das Wiener Filter beruht auf Kenntnissen über statistischen Eigenschaften für Rauschen und Unschärfe. Mit Hilfe von Wiener Filtern können additives Rauschen und/oder Unschärfe aus Bildern entfernt werden. (Die ursprüngliche Frequenz kann nicht wieder hergestellt werden, die Störfrequenzen werden lediglich unterdrückt. Auch eine Wiederherstellung der Komponenten, die durch Bandbreitenbeschränkung verloren gingen und somit zu Unschärfe führten, ist nicht möglich – lediglich eine Nachschärfung der Bildteile.) Wenn Rauschen und Unschärfe in einem Bild vorhanden sind, ist die Anwendung des Wiener Filter ein Kompromiss mit Tiefpassfilter-Charakteristik für die Reduktion des additiven Rauschens und Hochpassfilter-Charakteristik, die Unschärfe reduziert, Rauschen aber verstärkt. Weitere Informationen zum Wiener Filter sind beispielsweise in [Cas96] oder [Pit93] zu finden. 3.3 Folgerungen Auf Grund ihrer Einfachheit lassen sich selbstverständlich noch viele weitere Filter kreieren, die auf ganz bestimmte Bilder angewendet auch zu guten Ergebnissen führen. Denkbar wären beispielsweise auch Filter, bei denen der Grauwert des aktuellen Pixels durch 20 3.3 F OLGERUNGEN • den Durchschnitt der k mittleren Werte • den Durchschnitt aller Grauwerte, deren Abstand kleiner als eine bestimmte Schwelle zum aktuellen Grauwert ist • den Median der k nächsten Grauwerte der Umgebung ersetzt wird. Die genannten Filter haben aber alle folgenden Nachteil: eine zuverlässige Entfernung aller hier betrachteten Bildstörungen unter der Bedingung, dass der Schärfeverlust nicht zu hoch ist, ist nicht möglich. Dies liegt vor allem daran, dass die Filter auf das gesamte Bild angewendet werden. Mit einer guten Erkennung von Bildstörungen und einer Anwendung der Filter nur in einer bestimmten, möglichst kleinen, Umgebung um die identifizierten Stellen, sind gute Resultate zu erwarten. Auch sollte dann für jede Bildstörung individuell – abhängig von deren Größe und Beschaffenheit – erwogen werden, die Filter mehrmals auf die entsprechenden Regionen anzuwenden oder die Filterumgebung zu vergrößern. Dies führt dann aber wieder zu einer erhöhten Unschärfe. Zusammenfassend lässt sich sagen, dass es kaum Filter gibt, die angewendet auf das gesamte Bild zuverlässig die Bildstörungen entfernen. Eine Ausnahme bildet das Medianfilter, mit dessen Hilfe die Eliminierung von Salt- and Pepper-Rauschen möglich ist. Für jede Bildstörung wird ein anderes Filter bzw. ein Filter mit unterschiedlichen Parametern benötigt. Große Bildstörungen können nicht ohne hohe Schärfeverluste entfernt werden. Eine Anwendung auf die betreffenden Bildregionen führt jedoch zu guten Ergebnissen. 21 4 Automatische Entfernung von Bildstörungen Da einigermaßen geeignete Methoden der Entfernung von Bildstörungen vorhanden sind, ist es erstrebenswert den Prozess der Erkennung und Entfernung zu automatisieren – also eine Anwendung zu entwickeln, die ein oder eine Reihe von Bildern auf Bildstörungen überprüft und gegebenenfalls diese entfernt. 4.1 Vorhandene Anwendungen Betrachten wir zunächst einige der bereits vorhandenen Anwendungen und die Art und Weise, wie dort das Problem der automatischen Erkennung und Entfernung von Bildstörungen gelöst wird. 4.1.1 Adobe Photoshop Staubentfernung mit dem Stempel-Werkzeug Das Stempel-Werkzeug ist eine Möglichkeit zur Entfernung der Bildstörungen. Neben Kratzern und Punkten können hiermit auch Löcher oder ganze Figuren aus dem Bild entfernt werden. Allerdings ist hier keinerlei Automatik möglich – das Verfahren wird ausschließlich „von Hand“ angewendet. Mit dem Stempel-Werkzeug werden Pixelinformationen von einer Stelle des Bildes zu einer anderen kopiert. Es muss ein Referenzpunkt definiert werden, dessen Informationen kopiert werden sollen. Sowohl Grauwert als auch Struktur dieser Bildstelle lassen sich übertragen. Setzt man den Stempel danach über den entsprechenden Bildstörungen ab, werden diese entfernt. Die Verwendung des Stempel-Werkzeugs funktioniert bei homogenen Bildstellen sehr gut, bei komplizierten Texturen hingegen läuft man Gefahr, dass auffällige Bildmuster entstehen. Bildstörungen wie die Löcher, die schwarze und weiße Bereiche nach dem Scannen erzeugen, lassen sich mit diesem Werkzeug gut entfernen. In Anhang A.7.1 ist das Ergebnis der Arbeit mit dem Stempel zu sehen. 22 4.1 VORHANDENE A NWENDUNGEN „Eigener Filter“ Lineare Filter sind unter der Bezeichnung „Eigener Filter“ („Custom Filter“) in Photoshop realisiert. Hier werden vom Anwender die ganzzahligen Koeffizienten der Filtermatrix und der entsprechende Skalierungsfaktor zur Normalisierung spezifiziert. Abbildung 4.1: „Eigener Filter“ in Adobe Photoshop Werden wie in der Abbildung nur die mittleren neun Felder mit Koeffizienten gefüllt, entsteht ein 3x3-Filter, werden alle Felder gefüllt, ein 5x5-Filter. Der Koordinatenursprung des Filters liegt also im Zentrum der Matrix. Zusätzlich kann ein konstanter Verschiebungswert angegeben werden, um negative Berechnungsergebnisse auf Grund negativer Koeffizienten in den sichtbaren Intensitätsbereich zu verschieben. Mit dieser Möglichkeit lassen sich also eigene Filter erstellen, indem man die unterschiedlichen Filtermatrizen eingibt. Trägt man die oben aufgeführten Filtermatrizen (Kapitel 3.2.1) ein, so zeigen die Ergebnisse der Anwendung auf die Beispielbilder keinerlei Unterschied zu den in ImageJ implementierten Filtern. Somit arbeitet die Photoshop-Funktion auf gleiche Weise. Eine automatische Erkennung von Bildstörungen erfolgt hier nicht. Die Filtermatrix wird einfach auf das gesamte Bild angewendet. Helle bzw. dunkle Bereiche vergrößern Die Filter „Helle Bereiche vergrößern“ und „Dunkle Bereiche vergrößern“ sind in Adobe Photoshop vorhanden. Sie arbeiten wie die in Kapitel 3.2.2 vorgestellten Maximum- bzw. 23 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN Minimum-Filter. Dabei ist der Radius einstellbar, innerhalb dessen der Helligkeitswert des aktuellen Pixels durch den höchsten bzw. niedrigsten Wert der umgebenden Pixel ersetzt werden soll. Filter: Staub und Kratzer entfernen Das „Filter“ arbeitet folgendermaßen: an starken Kontrastübergängen werden die Umgebungsfarben in das Innere der Kontur gedrängt. Hierzu müssen Pixelradius und Schwellwert eingestellt werden. Der Pixelradius legt die Breite fest, in der die kontrastreichen Konturen mit den Umgebungsfarben überdeckt werden. Ein Radius von einem Pixel korrigiert nur die äußere Pixelreihe der Kontur. Durch den Schwellwert wird die Anwendung auf bestimmte Kontrastunterschiede eingeschränkt, sodass bei entsprechendem Schwellwert kontrastschwache Bereiche nicht von der Weichzeichnung betroffen sind. Abbildung 4.2: Filter „Staub und Kratzer entfernen“ in Adobe Photoshop Sind einmal Radius und Schwellwert eingestellt, arbeitet dieser Filter automatisch. Die zwei Werte müssen aber vom Benutzer festgelegt werden. Die Ergebnisse der Anwendung des Filters sind also von den vom Anwender eingestellten Werten abhängig und somit ist das Verfahren nur halb-automatisch. Durch Probieren lässt sich vielleicht ein Kompromiss finden, der allerdings auf Kosten des Ergebnisses der Filteranwendung für viele Bilder mit gleichen Werten für Pixelradius und Schwellwert funktioniert. 24 4.1 VORHANDENE A NWENDUNGEN Es handelt sich bei dem Filter um ein Weichzeichnungsfilter, das bestimmte Bereiche nicht betrifft (genau die, deren Kontrast unter dem Schwellwert liegt). Doch wie bei allen Weichzeichnungsfiltern gibt es auch hier das Problem, dass in vielen Fällen nicht nur Fremdkörper, sondern auch Bilddetails entfernt werden. Somit bringt eine Anwendung des Filters auf vom Benutzer ausgewählte Bildstellen ein besseres Ergbnis, allerdings funktioniert dies nicht automatisch. Anhang A.7.2 zeigt, dass die Anwendung des Filters kleine Bildstörungen – beispielsweise kleine Kratzer, Punkte und Salt- and Pepper-Rauschen – entfernt. Größere Bildstörungen können nur unter hohem Schärfeverlust eliminiert werden. Allerdings können – in homogenen Bereichen angewendet – mit dem Filter auch größere Bildstörungen beseitigt werden (die zunehmende Unschärfe fällt durch die Homogenität nicht so ins Gewicht und die nicht bearbeiteten Bildteile bleiben unverändert, also scharf). Photoshop ermöglicht es seit Version 7.0 eine Reihe von Arbeitsschritten aufzuzeichnen und diese dann auf eine Menge von Bildern anzuwenden (Makrofunktion und Stapelverarbeitung). Außerdem lässt sich Photoshop auch per Skript-Plugin über verschiedene Skriptsprachen – unter anderem mit JavaScript – ansteuern. Deshalb können die für die Filterung benötigten Werte einmal festgelegt und dann per Anwendung auch auf eine Reihe von Bildern unter der Benutzung des entsprechenden Filters verwendet werden. Bei einer Reihe von gleichartigen Bildern, können somit automatisch gute Ergebnisse erzielt werden. Bei Bildern, bei denen die Parameter sehr verschieden für gute Ergebnisse eingestellt werden müssen, funktioniert diese Art der Automatisierung nicht. Zerissenes Bild Bisher wurden nur Filter zur Staub- und Kratzerentfernung in Adobe Photoshop vorgestellt. Wie jedoch muss vorgegangen werden, um Risse aus dem Bild zu entfernen? Zwei Teile können mit Photoshop nicht automatisch wieder zusammengefügt werden, hierzu ist Handarbeit nötig. Im Prinzip werden die beiden Teile nebeneinander eingescannt, dann wird die Risskante markiert und ein Bildteil wird auf das andere hinzubewegt. Nun ist nur noch eine Art weiße Linie zu erkennen, also ein dünner Kratzer. Dieser wird dann durch Kopieren der umliegenden Farbe und Struktur in Handarbeit geschlossen. Eine ausführliche Beschreibung ist in [Sch04] zu finden. 4.1.2 AKVIS Retoucher AKVIS Retoucher ist ein Programm, das sich problemlos in verschiedenste Bildverarbeitungsprogramme, u.a. Photoshop, integrieren lässt. Es ist eine Software zur Fotorestaurierung und zum Entfernen von Kratzern, Staub und unnötiger Bildobjekte. Das zu bearbei- 25 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN tende Bild wird im Bildverarbeitungsprogramm geöffnet, die zu beseitigenden Stellen müssen markiert werden und anschließend wird der Retoucher angewendet. Die Kratzer werden recht gut entfernt. Wie die Entfernung funktioniert, ließ sich nicht herausfinden, allerdings lassen sich die „normalen“ Glättungsfilter vermuten. Markiert man große nicht homogene Bereiche oder über Kanten hinweg, so werden diese zerstört. Da der Anwender zunächst die gestörten Bildbereiche markieren muss, funktioniert die Bearbeitung für Kratzer und Staub recht gut. Die Entfernung von Bildstörungen ist also gut umgesetzt, es fehlen jedoch die Möglichkeiten der Identifikation. Somit ist das Programm auf den Anwender angewiesen und kann daher nicht als automatisch bezeichnet werden. Weitere Informationen zu AKVIS Retoucher und eine kostenlose Testversion sind unter http://akvis.com/de zu finden. 4.1.3 Jasc Paint Shop Pro Mit Jasc Paint Shop Pro verhält es sich im Wesentlichen wie mit Adobe Photoshop. Es sind die verschiedensten Werkzeuge zur Entfernung von Bildstörungen gegeben, die dann alle eher weniger automatisch angewendet werden können. Die besten Resultate werden „von Hand“ erzielt. Das „Median-Filter“ ist neben dem „benutzerdefinierten Filter“ mit einer Faltungsmatrix von bis zu 7x7 implementiert. Genau wie in Adobe Photoshop gibt es keine anderen Ergebnisse bei der Anwendung dieser Filter auf die Beispielbilder im Vergleich zu dem in Kapitel 3.2.2 beschriebenen Medianfilter und den aus Kapitel 3.2.1 implementierten linearen Filtern. Rauschen entfernen Es gibt die Fotokorrekturverfahren „Rauschunterdrückung“, „Rauschen entfernen mit Kantenschutz“ und „Rauschen entfernen mit Texturschutz“. Die verschiedenen Befehle arbeiten folgendermaßen: Mit „Rauschunterdrückung“ können aus einem Pixel bestehende Bildfehler entfernt werden. Dazu wird die Helligkeit des Pixels und der umgebenden Pixel analysiert und entschieden, ob das Pixel entfernt werden soll oder nicht. Anhang A.8.1 verdeutlicht das unzureichende Ergebnis der Anwendung auf die Beispielbilder. Der Befehl „Rauschen entfernen mit Kantenschutz“ erkennt laut Paint Shop Pro Hilfe Objektkanten und arbeitet um sie herum. Angewendet auf das gesamte Bild, ist das Verfahren nicht geeignet, was durch Anhang A.8.2 belegt wird. Auch für einzelne Teile eines Beispielbildes ist es nicht ausreichend, denn damit könnte nur die Unschärfe der anderen Bildteile reduziert, jedoch nicht das Ergebnis in den markierten Bereichen verbessert werden. 26 4.1 VORHANDENE A NWENDUNGEN „Rauschen entfernen mit Texturschutz“ dient dazu Bildstörungen zu entfernen, ohne Texturdetails zu verlieren. Die Pixel des Bildes werden analysiert und es wird erkannt, ob sie strukturierte oder glatte Bereiche darstellen. In strukturierten Bereichen wird nur wenig Rauschen entfernt, in homogenen Bereichen hingegen wird das Rauschen stärker beseitigt. Auch hier gilt, dass der Befehl auf einen Bildausschnitt schneller und effektiver angewendet werden kann. Eine Probe mit den Beispielbildern ergab kaum Änderungen am Foto. Des Weiteren gibt es die Möglichkeit „schwarze und weiße Bildfehler entfernen“. Hiermit können aus mehreren Pixeln bestehende schwarze oder weiße Bildstörungen entfernt werden. Ein Pixelbereich wird dazu mit den umgebenden Pixeln verglichen und Bereiche, die als Störung erkannt werden, werden an die Umgebung angeglichen. Mit diesem Befehl lassen sich auch Bildstörungen, die durch Staub beim Scannen entstanden, eliminieren. Selbstverständlich ist dieses Verfahren zur Entfernung von Salt- and Pepper-Rauschen gut geeigent, für die Eliminierung der anderen Bildstörungen nicht. Siehe Anhang A.8.3 Bildfehlerentfernungswerkzeuge Mit den Bildfehlerentfernungswerkzeugen „Klonen“ und „Bildfehler entfernen“ können von Hand Pixelinformationen von einer Stelle des Bildes an eine andere kopiert (siehe Photoshop: Stempelwerkzeug 4.1.1) bzw. weiße Störstellen durch Markieren und Kopieren der umliegenden Pixelinformationen entfernt werden. Diese Methoden funktionieren sehr gut, nur nicht automatisch. Kleine Bildfehler automatisch entfernen Bemerkenswert ist die Möglichkeit „kleine Bildfehler automatisch entfernen“. Diese Korrektur lässt sich auf das gesamt Bild, sowie auf einen vorher ausgewählten Bereich anwenden, was bessere Resultate verspricht. Der Anwender muss einige Parameter einstellen. Es muss ausgewählt werden, ob dunkle Bildfehler (Bildfehler, die dunkler als der Hintergrund sind) oder helle Bildfehler (Bildfehler, die heller als der Hintergrund sind) oder beide Arten von Bildfehlern entfernt werden sollen. Lokale Kontrastgrenzen müssen festgelegt werden – untere und obere Grenze bestimmen dabei den Unterschied zwischen Bildfehler und Hintergrund. Außerdem ist für „Stärke“ der Grad der Korrektur zum Entfernen des Bildfehlers auszuwählen. Der Hilfe ist zu entnehmen, dass die Anwendung dieses Werkzeuges zu Detailverlust und Unschärfe führt. Deshalb sollen die Parameter vom Anwender so genau wie möglich eingestellt werden. Dies bedeutet bei „Stärke“ ist die niedrigste Einstellung auszuwählen, bei der alle Bildfehler entfernt werden. Für die Kontrastgrenzen gilt selbiges. Untere und obere 27 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN Grenze sollen so lange aneinander angenähert werden, bis nicht mehr alle Bildstörungen entfernt werden. Bleiben bei den Standardeinstellungen 0 und 50 Bildfehler zurück, so können diese nicht mit dem Befehl „kleine Bildfehler automatisch entfernen“ eliminiert werden. Die Versuche mit den Beispielbildern brachten ein ernüchterndes Ergebnis. Lediglich dünne Kratzer und kleine Punkte, sowie Salt-Rauschen ließ sich entfernen. Anhang A.8.4 zeigt die Resultate. 4.1.4 Dusta La Vista von Sreen Ein Programm, welches automatisch nach Staubpartikeln auf Grundlage der Morphologie1 sucht, ist „Dusta La Vista“ von Screen. Das Programm arbeitet folgendermaßen: zunächst wird das entsprechende Bild geöffnet und Staub und Kratzer werden automatisch berechnet. Die gefundenen Stellen werden dann in einer Vorschau rot markiert. Der Anwender kann Korrekturen vornehmen – nicht erkannte Defekte markieren und fälschlich erkannte Markierungen löschen. Sind die Einstellungen getroffen, kann die Staubentfernung berechnet werden. Abbildung 4.3 zeigt Originalbild, Vorschau und Resultat der Staubentfernung mit Dusta La Vista. Die Bilder sind dem Werbeprospekt2 entnommen. Mit dem zusätzlichen „Batch Tool“ ist eine Stapelverarbeitung möglich. Somit können im Hintergrund automatisch Bilder retuschiert werden. Dazu müssen die Bilder in definierte Eingangsordner kopiert werden. Man kann die Parametereinstellungen (z.B. Gestalt, Sichtbarkeit (relative Dichte), Reflexion (relativer Farbton)) in Schlüsseln speichern, sodass sich eine Menge gleichartiger Bilder in einem Ordner gut bearbeiten lassen. Es sollte zwischen den verschiedenen Arten der „Vorlagen“ unterschieden werden – beispielsweise in Diapositivund Dianegativvorlagen – da sich Staub und Kratzer je nach Vorlage unterschiedlich bemerkbar machen. Sollen große Bilder retuschiert werden, gestaltet sich die Berechnung recht aufwändig, weswegen entsprechende Rechenkapazität von Nöten ist. Kleinere Verschmutzungen werden von Dusta La Vista gut erkannt und entfernt. Bei größeren Verschmutzungen gelangt das Programm an seine Grenzen, denn diese werden oft nicht als solche identifiziert. Durch die Stapelverarbeitung ist eine weitestgehend automatische Staubentfernung möglich, gute Ergebnisse werden allerdings erst nach ausreichend vielen Testläufen erzielt, in denen die Parameter richtig eingestellt werden müssen. Und auch dann ist die Gefahr noch groß, 1 Lehre der Formen und Gestalten 2 http://www.tecshopping.com.br/arquivos/dustalavista.pdf 28 4.1 VORHANDENE A NWENDUNGEN Abbildung 4.3: Staubentfernung mit Dusta La Vista 29 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN dass erwünschte Details entfernt werden. Die Ergebnisse sind allerdings besser als die mit dem Photoshopfilter „Staub und Kratzer entfernen“ erzielten. Die besten Resultate sind aber auch hier nur durch Feedback mit dem Anwender möglich, womit man dieses Programm zur Staubentfernung auch eher als „semiautomatisch“ bezeichnen kann. Selbstverständlich gibt es eine Vielzahl anderer kostenpflichtiger oder freier Software und Plugins zur digitalen Bildverarbeitung und somit zur Entfernung von Bildstörungen. Eine Aufzählung aller würde den Rahmen dieser Studienarbeit sprengen. Im Grunde sind sich die Programme alle sehr ähnlich und grundsätzliche Neuerungen sind nicht zu erwarten. Zusammenfassend lässt sich also sagen, dass eine automatische algorithmische Verarbeitung digitaler Bilder zur Entfernung von Bildstörungen derzeit noch nicht realisiert ist. 4.2 Weitere Ansätze Da es durch einfache Anwendung der vorhandenen Operatoren nicht möglich ist, zufriedenstellende Ergebnisse zu erzielen, müssen sich weitere Gedanken gemacht werden. Vielleicht gibt es eine Kombination aus Bildverarbeitungsverfahren, mit deren Hilfe wünschenswerte Resulate erzielt werden können. Es ist aber auch möglich, dass eine völlig andere Herangehensweise das Problem löst. Deshalb habe ich versucht einige Ideen umzusetzen, um eine Automatisierung zu ermöglichen. 4.2.1 Lineare Glättungsfilter verbessern Eine leichte Verbesserung des Mittelwertfilters ergibt sich, wenn man die Filterung wie in [ZB96] vorgeschlagen mit einer Bedingung verknüpft: Der Wert des aktuellen Bildpunktes soll nur dann durch den Mittwelwert seiner Nachbarn ersetzt werden, wenn die Differenz zwischen dem aktuellen Grauwert und dem Mittelwert der Bildpunktnachbarn geringer ist als eine gewisse Schwelle T. Allerdings resultiert daraus auch so keine grundsätzliche Verbesserung der Art, dass trotz Glättung die interessanten Bilddetails nicht verloren gehen. Anhang A.9 verdeutlicht diesen Sachverhalt. 4.2.2 Kantendetektion mit hohem Schwellwert Führt man zunächst eine Kantendetektion durch, werden Kanten und auch Bildstörungen gefunden. Geht man davon aus, dass sich beide durch ihren Farbwert unterscheiden, also 30 4.2 W EITERE A NSÄTZE Bildstörungen heller sind als Kanten, könnte man mittels Kantendetektion mit einem entsprechend hohen Schwellwert Bildstörungen separieren. Auf die gefundenen Stellen lassen sich dann oben genannte Operatoren anwenden, um die Bildstörungen zu entfernen. Die vorhandene Funktion zur Kantendetektion in ImageJ benutzt den Sobel-Operator. Mit Hilfe der beiden 3x3 Faltungskerne 1 2 1 1 0 −1 0 0 0 2 0 −2 −1 −2 −1 1 0 −1 werden horizontale und vertikale Ableitungen gebildet. Das Ergebnisbild ist dann eine Kombination der beiden unter Verwendung der Quadratwurzel aus der Summe der Quadrate. Wird die Funktion zur Kantendetektion auf die Beispielbilder angwendet, so erhält man keine brauchbaren Resultate. Es werden einfach zu viele Kanten gefunden und Bildstörungen und Kanten sind weiterhin nicht voneinander zu unterscheiden. In Anhang A.10, Abbildung A.24 wird dieses Problem bildlich verdeutlicht. Die Farben der oben gefundenen Kanten reichen von blau, orange, rosa und grün bis hin zu weiß. Schränkt man die Auswahl der Kanten nun soweit ein, dass man sagt, dass nur diejenigen Kanten betrachtet werden sollen, deren RGB-Wert größer als 755 (Weißtöne) bzw. deren Grauwert größer als 245 ist, so erhält man – wie in Anhang Anhang A.10, Abbildung A.25 zu sehen – weniger Kanten. Allerdings werden nun nicht mehr alle Bildstörungen detektiert und es sind trotzdem noch „echte“ Kanten in der Auswahl. 4.2.3 Glättung und Bildschärfung Ausgehend davon, dass durch Glättungsfilter eine Unschärfe entsteht, liegt der Ansatz nahe, zunächst die Bildstörungen mit Filtern zu entfernen und anschließend eine Bildschärfung durchzuführen. Dieses Verfahren ist logischerweise nur dann erfolgversprechend, wenn durch die Glättung die Bildstörungen entfernt werden konnten und das Bild nicht zu unscharf geworden ist. Bleiben nach der Glättung noch Störungen übrig, so werden diese auch durch die anschließende Schärfung nicht eliminiert. Ein zu unscharfes Bild kann auch mit dem besten Algorithmus nicht wieder gestochen scharf werden, da durch die Glättung Bildinformationen verloren gegangen sind. 31 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN 4.2.4 Unscharf Maskieren In vielen Bildverarbeitungsprogrammen und auch in ImageJ ist die Funktion „unscharf maskieren“ implementiert. Die Bezeichnung ist etwas irreführend. Der Begriff stammt aus der analogen Fotografie. Wird eine unscharfe Maske auf das Originalbild gelegt, so lässt sich anhand der Helligkeitsdifferenzen auf Bildkanten schließen. „Unscharf maskieren“ ist also ein Werkzeug zum Schärfen von Bildern – es verbessert die Bildschärfe durch Kontrasterhöhung an Kanten und Linien. Allerdings kann die Funktion „unscharf maskieren“ nicht zwischen einem Stromkabel und einem Kratzer oder aber zwischen einem Vogel am Himmel und einem Staubkorn unterscheiden, weswegen Bildstörungen auch hervorgehoben werden. Es stellt sich nun die Frage, ob mittels „unscharf maskieren“ eine Identifikation von Bildstörungen vorgenommen werden kann. In Anhang A.11 ist dargestellt, dass dies sehr abhängig von der Art des Bildes und der Bildstörung ist. Eine weitere Idee zur Entfernung von Bildstörungen lässt sich entwickeln: zuerst wird die Funktion „unscharf maskieren“ auf das Bild angewendet, um die Kanten zu betonen und anschließend wird ein Filter benutzt, um die Bildstörungen zu entfernen. Anhang A.11 zeigt, dass mit diesem Verfahren bessere Ergebnisse erzielt werden können als mit einer einfachen Anwendung von Filtern oder mit der in Abschnitt 4.2.3 beschriebenen Methode. 4.2.5 Zylinderhutoperator Der Zylinderhutoperator wird auch „Top-Hut-Operator“ genannt und ist in [Abm94] beschrieben. Der Operator erkennt helle oder dunkle Detailstrukturen, wenn diese kleiner als eine definierte Größe sind und den notwendigen Kontrast besitzen. Helle Details werden durch die Subtraktion desjenigen Anteils im Bild B, der bei einer Opening-Operation3 übrig bleibt, gefunden – dunkle Details durch Subtraktion von B vom Ergebnis der Closing-Operation: B − ((B Xb ) ⊕ Xb ), Cb ≥ h Cbhhell = 0, sonst ((B ⊕ Xb ) − B Xb ), Cb ≥ h Cbhdunkel = 0, sonst Xb ist dabei das strukturierende Element mit einem Durchmesser von b. Sind mit diesem Operator die hellen und dunklen Detailstrukturen – beispielsweise Körner oder Linien – eines Bildes gefunden, lässt sich mit diesem Ergebnis weiterarbeiten. Man 3 Definition 32 z.B. in [Ste04] 4.2 W EITERE A NSÄTZE könnte an den entsprechenden Stellen die Operationen der Bildverarbeitung anwenden, um die Störungen zu entfernen. Denkbar wäre auch eine einfache Subtraktion des Bildes mit den gefundenen Stellen vom Originalbild. Hierbei entsteht allerdings Unschärfe, da alle hellen oder dunklen Stellen im Bild gefunden werden und nicht nur die Störungen. Also muss auch hier beachtet werden, dass die gefundenen Stellen nicht zwangsläufig Störstellen sind. Anhang A.12 zeigt die gefundenen hellen Störstellen für die Beispielbilder. Es wurde der Einfachheit halber mit den entsprechenden Grauwertbildern gearbeitet. Für die Verwendung des Zylinerhutoperators gibt es gut und weniger gut geeignete Bilder. 4.2.6 Linien Unterdrückung linienhafter Störmuster Ein Operator zur Unterdrückung linienhafter Störmuster wird in [Kle95] vorgestellt. Mit dessen Hilfe können waagerechte oder senkrechte linienhafte Muster mit einer Breite von einem Pixel erkannt und entfernt werden. Die Entfernung geschieht durch lineare Subtraktion der Störung von der Grauwertfunktion des Bildes: In F( f , p) werden Grauwerte F(i, j), 1 ≤ i ≤ m und 1 ≤ j ≤ n, betrachtet (nichtzentriertes i j-Koordinatensystem). Für das Resultatbild h gilt: h(p) = m 1 f (p) + m·n · ∑ f (q) − m1 · ∑ F(i, n+1 2 ), 1 f (p) + m·n · ∑ f (q) − 1n · ∑ F( m+1 2 , j), wenn VAR = 2 q∈F(p) q∈F(p) wenn VAR = 1 i=1 n j=1 Angabe, ob die zu elimierende linienhafte Störung waagerecht (VAR = 1) oder senkrecht (VAR = 2) ist. Dieses Verfahren funktioniert so nur bei Grauwertbildern. Die Bedingungen, dass die linienhaften Störmuster nur ein Pixel breit sein dürfen und waagerecht oder senkrecht verlaufen müssen, schränkt die Wirksamkeit des Operators stark ein. Somit ist er nur für Sonderfälle brauchbar. 33 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN Verfahren zur Linienverfolgung In [Kla96] ist ein Verfahren zur Linienverfolgung beschrieben. Dazu wird ein geeigneter Startpunkt vom Anwender angegeben, worauf die Bestimmung weiterer Punkte der gesuchten Linie in der Umgebung bereits ermittelter Punkte folgt. Es gibt verschiedene Überlegungen zum Verhalten an problematischen Stellen, wie Unterbrechungen oder Verzweigungen. Mit diesem Verfahren ließen sich Kratzer über ihre gesamte Länge identifizieren und anschließend mit Filteroperatoren entfernen. Da aber der Anwender einen Startpunkt für den Algorithmus angeben muss, ist eine automatisierte Identifikation und Entfernung der Bildstörungen nicht möglich. Somit kann dieser Ansatz wieder verworfen werden. 4.2.7 Weiß Geht man davon aus, dass reines Weiß in der Natur kaum vorkommt, lassen sich Kratzer und Risse zumindest in Farbbildern leicht feststellen. Man sucht nach reinem Weiß (RGB: #FFFFFF), wendet die in Kapitel 3 dargestellen Operationen an und erreicht zufriedenstellende Resultate. Dieser Ansatz hat einen entscheidenten Nachteil: Die Überlegung, dass es kaum reines Weiß in der Natur gibt, erweist sich nach einigem Nachdenken als falsch. Folgende Motive sind ohne den bildlichen Zusammenhang – also ohne die Hilfe des Bildverstehens – kaum von Bildstörungen zu unterscheiden. Es gibt das Extrem • Schnee. Auf Winterbildern, die bei strahlender Sonne aufgenommen wurden, gibt es sehr viel reines Weiß. Mit der Einschränkung, dass Bildstörungen nur eine maximale Breite haben dürfen, sollte sich das Problem vereinfachen lassen. Lösbar wird es aber dadurch nicht. Es lassen sich allerdings noch eine Reihe anderer Motive finden, bei denen derzeit Bildstörungen durch eine Software nicht erkennbar sind: • Zebra • Kondensstreifen am Himmel • Wasserfall (Gischt) • fallende Schneeflocken 34 4.3 AUTOMATISCHE F OTOENTWICKLUNG UND KÜNSTLERISCHER A SPEKT IN F OTOGRAFIEN Reines Weiß als Identifizierungskriterium für Bildstörungen ist auch dahingehend nicht sinnvoll, da das durchscheinende Fotopapier nur wenn der Riss „frisch“ ist als Weiß erscheint, mit einiger Zeit aber auch vergilbt. In Anhang A.13 ist dargestellt, dass Bildstörungen wie Risse und Kratzer nicht rein weiß sind, sondern unerwartet ganz andere, nicht gestörte Stellen, in den Beispielbildern weiß erscheinen. Abgesehen von den oben genannten Gründen, warum die Annahme, dass reines Weiß in der Natur kaum vorkommt, falsch ist, ist auch folgender Aspekt dieses Ansatzes nicht zu missachten: die Annahme, dass reines Weiß in der Natur wenig vorkommt, schränkt die Auswahl der Fotos, die möglicherweise bearbeitet werden können, zu stark ein. Aus diesen Gründen kann die Idee verworfen werden. 4.3 Automatische Fotoentwicklung und künstlerischer Aspekt in Fotografien Momentan ist es so, dass sehr viele Menschen fotografieren, aber nur die wenigsten eine Ausbildung auf dem Gebiet genossen haben. Jeder möchte jedoch, gibt er seine „Schnappschüsse“ zur Entwicklung, erstklassige Fotos haben. Die Folge davon ist, dass die Fotolabors, die zahlreiche Fotos automatisch entwickeln, gewisse Bildbearbeitungsverfahren anwenden. So werden beispielsweise zu dunkle Bilder aufgehellt oder ganz schlechte Aufnahmen erst gar nicht entwickelt. Die Auswahl wird automatisch Anhand von messbaren Daten (maximaler Grauwertunterschied etc.) getroffen. Dieses Verfahren hat den Nachteil, dass der Schnee auf Winterbildern, die im Sommer zur Entwicklung gegeben wurden, grau wird. Warum? Der Automat erkennt die weißen Stellen als Fehler und führt eine Korrektur durch. (Andersherum sind auch schwarze Stellen Fehler, was eine Aufhellung nach sich ziehen würde.) Gibt man die selben Bilder im Winter zur Entwicklung, so wird der Schnee weiß. Grund dafür ist, dass im Winter sehr viele Bilder entwickelt werden müssen, auf denen Schnee zu sehen ist, also wird der Schwellwert für die Korrektur verändert. Auch der künstlerische Aspekt in Fotografien ist nicht zu vergessen. Es werden manchmal beabsichtigt Motive unter- oder überbelichtet, um bestimmte Effekte zu erzeugen. Ausgangspunkt ist ein Motiv, das mit fünf unterschiedlichen Belichtungen aufgenommen wurde, darunter beabsichtigt über- oder unterbelichtet. Wird dann der Film zur Entwicklung in kommerzielle Fotolabors abgegeben, erhält man fünf mal das gleiche Foto, denn es wurde eine automatische Korrektur vorgenommen. Um die gewünschten Effekt zu erhalten, muss das Bild selbst entwickelt oder in ein kleines Labor gegeben werden, in dem Menschen von Hand entwickeln. 35 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN Aus diesen Erkenntnissen lässt sich schließen, dass es bei der automatischen Korrektur zu Fehlern kommt, weil dem Entwicklungsautomaten (egal ob für analoge oder digitale Bilder) das nötige „Wissen“ fehlt. Ein Mensch blickt auf ein Winterbild und erkennt den Schnee als Schnee und nicht als Fehler – ein Automat kann nur entsprechend seiner Programmierung „handeln“ und wenn dort weiße Stellen als zu korrigierende Fehler angesehen werden, wird auch Schnee korrigiert. Der Automat kann den Unterschied nicht erfassen. Wie soll er dann auch Bildstörungen von gewünschten Strukturen, beispielsweise Kanten, unterscheiden? 4.4 Weitere Entwicklungen zur automatischen Entfernung von Bildstörungen Ein anderer Ansatz zur Entfernung von Staub und Kratzern ist, gleich beim Scanvorgang Bildstörungen zu identifizieren und zu entfernen. Dazu gibt es verschiedene Verfahren für Diascanner auf dem Markt. 4.4.1 ICE-Verfahren ICE steht für Image Correction & Enhancement. Es wurde von der Firma Applied Science Fiction entwickelt und ist in Diascannern der unterschiedlichsten Hersteller integriert. Zusätzlich zur normalen RGB-Abtastung wird eine vierte Abtasteinheit mit Infrarotlicht eingesetzt. Somit können dreidimensionale Unebenheiten (Berge oder Täler) erkannt werden. Schmutz bedeutet eine Erhöhung auf der Bildoberfläche, ein Loch oder Kratzer hingegen eine Senke. Wurde ein Berg oder Tal gefunden, kommt die entsprechende Software zum Einsatz. Sie beinhaltet die Algorithmen der Bildverarbeitung und wendet sie auf die entsprechenden Bildstellen an. Das ICE-Verfahren ist also hauptsächlich für die Detektion der Bildstörungen verantwortlich. Somit können alle Arten von Bildstörungen exakt erkannt und mit den entsprechenden Algorithmen bearbeitet werden. Das Ergebnis dieser Technik ist überzeugend. Anhand der Beispielbilder aus [Wagb] kann dies verdeutlicht werden. Abbildung 4.4 wurde ohne Staub- und Korrekturverfahren eingescannt und man sieht mehrere Kratzer und Staubpartikel im oberen Bereich der Fotografie. Abbildung 4.5 wurde mit dem Nikon LS-4000 mit eingeschaltetem ICE-Verfahren eingescannt und die Bildstörungen sind verschwunden. Das ICE-Verfahren hat einen Nachteil: es kann nur auf Farbfilme angewendet werden. Bei Scannen von Schwarz-Weiß-Fotos erhält man unscharfe Resultate. Grenzen werden auch 36 4.4 W EITERE E NTWICKLUNGEN ZUR AUTOMATISCHEN E NTFERNUNG VON B ILDSTÖRUNGEN Abbildung 4.4: gescanntes Bild ohne ICE Abbildung 4.5: gescanntes Bild mit eingeschaltetem ICE-Verfahren 37 4 AUTOMATISCHE E NTFERNUNG VON B ILDSTÖRUNGEN durch die Größe der Bildstörungen gesetzt – selbstverständlich kann eine abgefetzte Bildoberfläche wie in Abbildung 4.6 nicht rekonstruiert werden. Abbildung 4.6: Bild mit abgefetzter Oberfläche Diese Möglichkeit der Erkennung und Entfernung von Bildstörungen ist voll automatisch, bedeutet allerdings eine hardwaremäßige Veränderung am Scanner direkt. 4.4.2 Digital ICE Professional Digital ICE Professional ist eine Weiterentwicklung des ICE-Verfahrens, mit dessen Hilfe auch bei Kodachrome4 -Bildern gute Ergebnisse erzielt werden. Das Verfahren ist seit 2004 auf dem Markt. 4.4.3 FARE-Verfahren von Canon Ein nicht ganz so leistungsfähiges Verfahren namens FARE (Film Automatic Retouching and Enhancement) wurde von Canon entwickelt. Für welche Scannermodelle dieses Verfahren möglich ist, ist unter [Deu] nachzulesen. Das zugrundeliegende Prinzip ist der Vergleich zweier Scans ein und desselben Bildes. Die beiden Scans unterscheiden sich in der Art des zum Scannen verwendeten Lichts: normales Scanlicht und Infrarotlicht. Mit Hilfe des Infrarotlichts lassen sich auch hier Bildstörungen auffinden, die durch die Farbinformationen benachbarter Bildbereiche ersetzt werden. Dieses Verfahren ist damit analog zu den linearen Filtern – es funktioniert umso besser, je homogener die Bildbereiche sind. 4 eine bestimmt Art Diafilm, die von Kodak entwickelt wurde. Zeichnet sich durch extreme Feinkörnigkeit und hohes Auflösungsvermögen aus. Auch Farbumkehrfilm genannt. Weitere Informationen zum Scannen von Kodachromefilmen sind unter [Waga] zu finden. 38 4.4 W EITERE E NTWICKLUNGEN ZUR AUTOMATISCHEN E NTFERNUNG VON B ILDSTÖRUNGEN FARE kann für Farbfilm und Farbprozess-Schwarzweißfilm verwendet werden und funktioniert bei Kodachrome-Filmen und normalen Schwarz-Weiß-Filmen nicht. 39 5 Auswertung und Ausblick Auswertung Wie wir festgestellt haben, gibt es durchaus Möglichkeiten Bildstörungen zu entfernen. In Abhängigkeit von der Größe der Bildstörungen ist dies unterschiedlich gut möglich. Kleine Störungen können entfernt werden, ohne dass deutliche Unschärfe entsteht, größere Bildstörungen nicht. Angewendet auf nur einen bestimmten, möglichst homogenen Bereich, können auch große Bildstörungen relativ gut entfernt werden. Mit einem gewissen Schärfeverlust ist dabei aber zu rechnen. Bei Bildstörungen handelt es sich immer um einen Informationsverlust an den entsprechenden Stellen. Die Entfernung der Störung ist somit der Versuch der Rekonstruktion der Bildinformationen aus den umliegenden Pixeln. Für kleine Störungen und mittlere Störungen in homogenen Bereichen ist dies gut möglich. Werden die hier vorgestellten Verfahren der Bildverarbeitung auf das gesamte Bild angewendet, so entstehen schlechtere Resultate, als bei einer Anwendung nur in den entsprechenden Regionen um die Störung. Hier liegt auch das eigentliche Problem bei der automatischen Identifikation und Entfernung von Bildstörungen. Es ist derzeit einfach so, dass Bildstörungen als solche von Automaten nicht eindeutig identifizierbar sind. Die Gründe dafür sind vor allem im Bildverstehen, einem Teilgebiet der Bildverarbeitung, zu finden. Bildverstehen beschäftigt sich mit der Analyse und Interpretation von visueller Information. Es ist leider so, dass die Leistung des menschlichen Sehsystems noch nicht erreicht werden kann – sei es nun aus Gründen der Komplexität des biologischen Systems und der Tatsache, dass dieses noch nicht vollständig erforscht ist, oder aus Gründen der sich im Fluss befindlichen Terminologie und tragenden Konzepte. Derzeit ist die professionelle Retusche, also das Entfernen von Bildstörungen, reine Handarbeit und somit sehr aufwändig. Anders sind sehr gute Ergebnisse noch nicht zu erreichen. Ein Kompromiss, wie beispielsweise in Dusta La Vista, kann geschlossen werden. Bildstörungen werden automatisch erkannt und markiert, am Ende jedoch entscheidet der Mensch, welche Markierungen wirklich richtig sind und an welchen Stellen die entsprechenden Markierungen fehlen. Die Entfernung der Bildstörungen erfolgt dann wieder automatisch. 40 Die hardwaremäßige Indentifikation von Bildstörungen in Diascannern und die anschließenden Bearbeitung dieser identifizierten Stellen mit gängigen Bildverarbeitungsoperatoren ist ein Schritt in die richtige Richtung. Allerdings muss man dann trotzdem mit der Einschränkung leben, dass nur Originalbilder mit Bildstörungen bearbeitet werden können – eine Kopie eines Bildes mit Kratzern weist an der betreffenden Stelle keine Höhenunterschiede mehr auf. Ausblick Alles in allem bleibt das Thema der automatischen Indentifikation und Entfernung von Bildstörungen auch weiterhin interessant. Es gibt eine gewaltige Menge an Bildmaterial, das Fehler veschiedenster Art aufweist. Denkt man nur an historische Aufzeichnungen oder alte Fotos, von denen die meisten sicherlich nicht bildstörungsfrei erhalten sind und die alle noch digitalisiert werden können. Meiner Meinung nach liegen die Chancen einer baldigen Lösung des Problems in der hardwaregstützten Erkennung von Bildstörungen. Möglicherweise lässt sich das Verfahren bei Diascannern auch bald für das Scannen von Fotografien verwenden? Oder es gelingt die zuverlässige Identifikation der Bildstörungen auf eine andere Art der Oberflächenabtastung? Vielleicht gelingt es in Zukunft die Leistung des menschlichen Sehsystems zusammen mit dem Bildverstehen zu adaptieren. Dann sind rein algorithmische Lösungen zur Identifikation und Entfernung von Bildstörungen möglich. Es gibt Ansätze, die psychophysische Wahrnehmungeeigenschaften des Menschen in Bildverbesserungsverfahren mit einbeziehen. Beispiele hierfür sind in [AN76] und [HS78] zu finden. Das Thema lässt sich auch auf bewegte Bilder ausweiten, denn hier gibt es eine Reihe von Dokumenten, die in analoger Form vorliegen und zahlreiche – auch durch ihr Alter bedingte – Fehler aufweisen. Die weißen Kratzer in alten Kinofilmen sind bekannt. Die Grundlage für eine sichere Entfernung solcher Stellen liegt in der erfolgreichen Identifikation und Eliminierung von Bildstörungen in Bildern und Fotos, denn Filme sind beanntlich eine Abfolge von Bildern. 41 42 Abbildungsverzeichnis 1.1 Screenshot: ImageJ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1 2.2 2.3 2.4 2.5 Kratzer und Punkte vom Lagern . . . . Kratzer vom gesprungenen Glas . . . . Knick und Risse . . . . . . . . . . . . . Salt-and-Pepper-Rauschen . . . . . . . Löcher vom Befestigen an der Pinnwand . . . . . 7 7 8 8 9 3.1 Auswirkungen des 3x3 Medianfilters . . . . . . . . . . . . . . . . . . . . . 17 4.1 4.2 4.3 4.4 4.5 4.6 „Eigener Filter“ in Adobe Photoshop . . . . . . . . . . . Filter „Staub und Kratzer entfernen“ in Adobe Photoshop Staubentfernung mit Dusta La Vista . . . . . . . . . . . gescanntes Bild ohne ICE . . . . . . . . . . . . . . . . . gescanntes Bild mit eingeschaltetem ICE-Verfahren . . . Bild mit abgefetzter Oberfläche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 24 29 37 37 38 A.1 A.2 A.3 A.4 A.5 A.6 A.7 A.8 A.9 A.10 A.11 A.12 A.13 A.14 A.15 A.16 A.17 3x3 Mittelwertfilter . . . . . . . . . . . . . . . . . . . 5x5 Mittelwertfilter . . . . . . . . . . . . . . . . . . . 3x3 Gauß-Filter . . . . . . . . . . . . . . . . . . . . . 5x5 Gauß-Filter . . . . . . . . . . . . . . . . . . . . . 5x5 Binominalfilter . . . . . . . . . . . . . . . . . . . Zwischenschritte bei Maximum/Minimum-Operationen Originalbild . . . . . . . . . . . . . . . . . . . . . . . Ergebnisbild nach Maximum/Minimum-Operationen . Medianfilter, Radius: 1 Pixel . . . . . . . . . . . . . . Medianfilter, Radius: 4 bzw. 3 Pixel . . . . . . . . . . Medianfilter in homogenen Bereichen . . . . . . . . . Medianfilter in inhomogenen Bereichen (1) . . . . . . Medianfilter in inhomogenen Bereichen (2) . . . . . . Gewichtetes Medianfilter, Gewichtungsmatrix W1 . . . Gewichtetes Medianfilter, Gewichtungsmatrix W2 . . . Stempel-Werkzeug zur Entfernung von Löchern . . . . Staub und Kratzer entfernen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 50 51 52 53 54 55 55 56 57 57 58 58 59 60 61 62 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 A BBILDUNGSVERZEICHNIS A.18 A.19 A.20 A.21 A.22 A.23 A.24 A.25 A.26 A.27 A.28 A.29 A.30 A.31 A.32 A.33 A.34 A.35 44 Staub und Kratzer entfernen in markiertem Bereich . Rauschunterdrückung . . . . . . . . . . . . . . . . . Rauschen entfernen mit Kantenschutz . . . . . . . . Schwarze und weiße Bildfehler entfernen . . . . . . Kleine Bildfehler automatisch entfernen . . . . . . . Lineares Glättungsfilter mit Schwellwert . . . . . . . Kantendetektion in ImageJ . . . . . . . . . . . . . . Kantendetektion mit Schwellwert . . . . . . . . . . . „Unscharf maskieren“ . . . . . . . . . . . . . . . . . „Unscharf maskieren“ mit anschließendem Glätten . Portraitaufnahme - unscharf maskieren und glätten . Portraitaufnahme - glätten und schärfen . . . . . . . Portraitaufnahme - 3x3 Mittelwertfilter . . . . . . . . Portraitaufnahme - Originalbild . . . . . . . . . . . . Ermittelte Störstellen mittels Zylinderhutoperator (1) Ermittelte Störstellen mittels Zylinderhutoperator (2) Rein weiße Stellen in den Beispielbildern . . . . . . Weiße (helle) Stellen in den Beispielbildern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 64 65 66 67 68 69 70 71 72 73 73 74 74 75 76 77 78 Literaturverzeichnis [Abm94] Wolfgang Abmayr: Einführung in die digitale Bildverarbeitung, S. 215–216, B. G. Teubner, Stuttgart, 1994. [AN76] G. L. Anderson und A. N. Netravali: Image Restoration Based on a Subjective Criterion, IEEE Trans. SMC-6, Nr. 12, 1976. [BB05] Wilhelm Burger und Mark James Burge: Digitale Bildverarbeitung - Eine Einführung mit Java und ImageJ, Springer Verlag, Berlin Heidelberg, 2005. [Cas96] Kenneth R. Castleman: Digital Image Processing, Kap. 11.5, Prentice-Hall, New Jersey 07632, 1996. [Deu] Canon Deutschland: Canon bietet automatische Bildretusche - FARE, http://www.canon.de/for_home/product_finder/scanners/ technologien/fare_technologie/index.asp. [HS78] T. Hentea und B. E. A. Saleh: Image Restoration Utilizing Spatial Masking of the Visual System, IEEE Trans. SMC-8, Nr. 12, 1978. [Jäh91] Bernd Jähne: Digitale Bildverarbeitung, Kap. 5.7.1, Springer Verlag, Berlin Heidelberg, 2. vollständig neubearbeitete Aufl., 1989 und 1991. [Kla96] Jürgen Klas: Digitale Bildverarbeitung - Einführung, Grundlagen, Methoden, Moreno-Verlag, 86802 Buchloe, 1996. [Kle95] Reinhard Klette: Handbuch der Operatoren für die Bildverarbeitung - Bildtransformationen für die digitale Bildverarbeitung, Kap. 6.6.2, Vieweg, 85586 Poing, 2. überarbeitete und erweiterte Aufl., 1995. [Pit93] Ioannes Pitas: Digital Image Processing Algorithms, Kap. 3.6, Prentice-Hall, New Jersey 07632, 1993. [Sch04] Udo Schmidt: Photoshop Workshops, S. 52–59, Franzis Verlag GmbH, 85586 Poing, 2. aktualisierte Aufl., 2004. [Ste04] Johannes Steinmüller: Bildverarbeitung, Vorlesungsskript, Technische Universität Chemnitz, 2004. 45 L ITERATURVERZEICHNIS [Tön05] Klaus D. Tönnies: Grundlagen der Bildverarbeitung, Pearson Studium, 81829 München, 2005. [Waga] Patrick Wagner: Scannen von Kodachrome filmscanner.info/Kodachrome.html. [Wagb] Patrick Wagner: Staub- und Kratzerkorrekturverfahren, http://www. filmscanner.info/Korrekturverfahren.html. Filmen, http://www. [Wah89] Friedrich M. Wahl: Digitale Bildsignalverarbeitung - Grundlagen, Verfahren, Beispiele, Springer-Verlag, Heidelberg New York London Paris Tokyo Hongkong, 1989. [ZB96] 46 Wolf D. Zimmer und Eberhard Bonz: Objektorientierte Bildverarbeitung - Datenstrukturen und Anwendungen in C++, Carl Hanser Verlag, München Wien, 1996. Anhang 47 48 A Anwendung auf Beispielbilder A.1 Mittelwertfilter Sowohl die 3x3 als auch die 5x5 Version des Mittwelwertfilters bewirken lediglich eine Unschärfe. Die Bildstörungen bleiben – bis auf kleine Punkte, die durch Staub auf dem Scanner entstanden, und dünne Linien erhalten. Abbildung A.1: 3x3 Mittelwertfilter Am Bild rechts unten kann man die Wirkungsweise des Filters sehr gut sehen: die weißen und schwarzen Punktstörungen (Salt- and Pepper-Rauschen) werden lediglich vergrö- 49 A NHANG ßert und in ihrer Farbe den umliegenden Pixeln angenähert – sozusagen wird der Übergang zwischen Bild und Störung verwischt. Auf Grund des größeren Faltungskerns entsteht beim 5x5 Mittelwertfilter eine größere Unschärfe. Abbildung A.2: 5x5 Mittelwertfilter 50 A NHANG A.2 Gauß-Filter Ähnlich wie bei der Anwendung des Mittelwertfilters entsteht Unschärfe nach Benutzung des Filters. Angewendet auf das gesamte Bild, können nur dünne Linien und kleine Punkte entfernt werden, Salt- and Pepper-Rauschen bleibt erhalten. Im Gegensatz zum Mittwelwertfilter tritt hier allerdings keine solch starke Verwischung auf. Abbildung A.3: 3x3 Gauß-Filter 51 A NHANG Abbildung A.4: 5x5 Gauß-Filter 52 A NHANG A.3 Binominalfilter Die Wirkung des Binominalfilters unterscheidet sich kaum von der des Gauß-Filters. Somit ist auch der Binominalfilter dem Mittelwertfilter überlegen. Auffällig ist, dass die Beispielbilder durch Annäherung eines Pixels an die Nachbarpixel alle dunkler als das Originalbild werden. (Dies ist auch bei der Anwendung des Gauß-Filters der Fall.) Da sich Binominalfilter und Gauß-Filter in der 3x3-Version nicht unterscheiden, sind nachfolgend nur die Ergebnisse der Filterung mit dem 5x5-Filter dargestellt. Abbildung A.5: 5x5 Binominalfilter 53 A NHANG A.4 Maximum/Minimum-Filter Verwendung einer Kombination aus Maximum- und Minimum-Filtern für die Beseitigung von Salt- and Pepper-Rauschen. Die Anwendung des Maximumfilters beseitigt die schwarzen Punkte und verbreitert helle Bereiche, das Minimumfilter verkleinert die weißen Störstellen, eine erneute Anwendung des Minimumfilters beseitigt die weißen Stellen und verbreitert dunkle Bereiche, die Anwendung des Maximumfilters erweitert helle Bereiche. Abbildung A.6: Zwischenschritte bei Maximum/Minimum-Operationen Der Vergleich von Originalbild und Ergebnisbild zeigt, dass das Salt- and Pepper-Rauschen beseitigt werden konnte, allerdings eine Unschärfe entstand. 54 A NHANG Abbildung A.7: Originalbild Abbildung A.8: Ergebnisbild nach Maximum/Minimum-Operationen 55 A NHANG A.5 Median-Filter Mit Hilfe des Medianfilters kann schon bei einem Radius von einem Pixel das Salt- and Pepper-Rauschen entfernt werden. Angewendet auf das gesamte Bild werden auch kleine Punkte und Linien zuverlässig entfernt. Abbildung A.9: Medianfilter, Radius: 1 Pixel Erst bei einem Pixelraduis von drei oder vier verschwinden kleinere Risse und mittlere Kratzer. Allerdings sind die Ergebnisse deutlich unscharf und nicht verwendbar. Sowohl der breite Kratzer als auch der breite Riss lassen sich mit diesem Pixelradius nicht entfernen – siehe Abbildung A.10. Wird das Medianfilter nur auf einzelne Bereiche des Bildes angewendet, so können die Bildstörungen mehr oder weniger gut entfernt werden. Das ist abhängig von der Art des Bildbereichs – in homogenen Bereichen werden die Störungen gut entfernt (Abbildung A.11), in inhomogenen Bereichen entstehen „Verwischungen“ (Abbildungen A.12 und A.13). 56 A NHANG Abbildung A.10: Medianfilter, Radius: 4 bzw. 3 Pixel Abbildung A.11: Medianfilter in homogenen Bereichen 57 A NHANG Abbildung A.12: Medianfilter in inhomogenen Bereichen (1) Abbildung A.13: Medianfilter in inhomogenen Bereichen (2) 58 A NHANG A.6 Gewichtetes Median-Filter Im Vergleich zum Medianfilter können mit dem gewichteten Medianfilter weniger der hier betrachteten Bildstörungen entfernt werden. Dafür entsteht bei der Anwendung eine geringere Unschärfe und somit weniger Detailverlust. Abbildung A.14: Gewichtetes Medianfilter, Gewichtungsmatrix W1 Wird wie in Abbildung A.14 die Gewichtungsmatrix W1 verwendet, so können dünne Linien und kleine Punkte im Bild links oben entfernt werden. Im Bild rechts oben unterscheiden sich die Kratzer vom Glas nach der Anwendung des gewichteten Medianfilters kaum von denen nach der Anwendung des Medianfilters, allerdings ist der Rest des Bildes weniger unscharf. An Rissen und dem Salt-and Pepper-Rauschen in den Bildern unten links und rechts ändert sich nichts. Würde das Salt-and Pepper-Rauschen nur ein Pixel betragen, so würde dieses auch mit dem gewichteten Medianfilter und Gewichtungsmatrix W1 entfernt werden können, schließlich werden ja hier die „direkten Nachbarpixel“ oben, unten, rechts und links vom entsprechenden Pixel mit dem Wert zwei mehr gewichtet als die übrigen. Bei einem 2x2 59 A NHANG großen Salt- and Pepper-Rauschen sind immer zwei dieser direkten Nachbarn auch weiß bzw. schwarz und somit ist der Median dann immernoch weiß oder schwarz und die Störung wird nicht entfernt. Eine Verwendung von Gewichtungsmatrix W2 wie in Abbildung A.15 bewirkt kaum eine Veränderung des gestörten Originalbildes. Selbst kleine Linien und Punkte, die mit W1 aud dem oberen linken Bild noch entfernt werden konnten, sind fast ausschließlich noch vorhanden. Bei Verwendung der Gewichtungsmatrix W2 haben nur die direkten Nachbarpixel Einfluss auf das entsprechende Pixel, weswegen noch weniger Unschärfe entsteht. Abbildung A.15: Gewichtetes Medianfilter, Gewichtungsmatrix W2 Die Anwendung des gewichteten Medianfilters auf nur bestimmte Bildregionen führt auch hier zu besseren Ergebnissen. 60 A NHANG A.7 Adobe Photoshop A.7.1 Stempel-Werkzeug Durch Kopieren der Pixelinformationen von einer Bildstelle an eine andere können Löcher mit dem Stempelwerkzeug entfernt werden. Die Anwendung dieses Werkzeuges funktioniert nicht automatisch, sondern vollständig „von Hand“. Die folgende Abbildung zeigt das gute Ergebnis der Arbeit mit dem Werkzeug. Abbildung A.16: Stempel-Werkzeug zur Entfernung von Löchern 61 A NHANG A.7.2 Staub und Kratzer entfernen Abbildung A.17: Staub und Kratzer entfernen Das Filter „Staub und Kratzer entfernen“ funktioniert nur für bestimmte Bildstörungen gut. Salt- and Pepper-Rauschen kann schon mit minimalen Einstellungen entfernt werden und das mit so gut wie keinem Schärfeverlust. Die Kratzer und Punkte auf dem Bild links oben wurden entfernt, allerdings auf Kosten der Bildschärfe. Der breite Riss auf dem Bild unten links konnte trotz hoher Unschärfe nicht entfernt werden – das restliche Bild ist völlig entstellt. Die Parameter, die zu einer Eliminierung der Kratzer auf dem Bild rechts oben nötig sind, bewirken ebenfalls eine deutliche Zunahme an Unschärfe. Da aber der Hintergrund dieser Portrait-Aufnahme von vorn herein unscharf ist, bewirkt eine Anwendung des Filters auf die beiden Bereiche um die Kratzer eine Beseitigung dieser und der Rest des Bildes ist von der Anwendung nicht betroffen, bleibt also scharf. Abbildung A.18 verdeutlicht dies. Hieraus lässt sich folgern, dass eine entsprechende Identifikation der Kratzer und Anwen- 62 A NHANG dung des Filters auf diese Bildstellen zu einem guten Ergebnis führen würde. Solch eine Identifikation ist aber in Adobe Photoshop nicht implementiert. Abbildung A.18: Staub und Kratzer entfernen in markiertem Bereich 63 A NHANG A.8 Jasc Paint Shop Pro A.8.1 Rauschunterdrückung Abbildung A.19: Rauschunterdrückung Mit dem Werkzeug „Rauschunterdrückung“ können Bildstörungen von der Breite eines Pixels entfernt werden. Die meisten der betrachteten Bildstörungen sind aber größer als ein Pixel. Somit werden diese nicht entfernt. Das Werkzeug liefert einigermaßen gute Ergebnisse für die Entfernung der Punkte im Beispielbild links oben. Auch das Pepper-Rauschen im Bild rechts unten ist elimiert, das Salt-Rauschen hingehen nur teilweise. Da das Werkzeug nur kleine Störungen entfernt, ist bei allen Bildern die entstandene Unschärfe recht gering. 64 A NHANG A.8.2 Rauschen entfernen mit Kantenschutz Abbildung A.20: Rauschen entfernen mit Kantenschutz Das Werkzeug „Rauschen entfernen mit Kantenschutz“ ist zur Entfernung der betrachteten Bildstörungen nicht geeignet. Außer im Bild links oben wurden trotz maximalem Korrekturgrad die Bildstörungen nicht entfernt (Beim Salt- and Pepper-Rauschen wurden die weißen Störungen bei einem niedrigeren Korrekturgrad entfernt, die schwarzen blieben jedoch auch bei maximalem Korrekturgrad bestehen). Die kleinen Kratzer und Punkte im linken oberen Bild konnten ab einem Korrekturgrad von 15 (das ist die Hälfte des maximalen Korrekturgrades) eliminiert werden, der große Kratzer jedoch auch bei maximalem Korrekturgrad nicht. Alle Bilder wurden durch die Anwendung des Werkzeugs stark unscharf, weswegen dieses keine Option zur Entfernung von Bildstörungen darstellt. 65 A NHANG A.8.3 Schwarze und weiße Bildfehler entfernen Abbildung A.21: Schwarze und weiße Bildfehler entfernen Die Anwendung dieses Werkzeugs ist für die Entfernung von Salt- and Pepper-Rauschen sehr gut geeigent, denn schon mit gering eingestellten Parametern werden die Bildstörungen entfernt und die Bildschärfe bleibt gut erhalten. Zur Entfernung der anderen Bildstörungen ist das Werkzeug „Schwarze und Weiße Bildfehler entfernen“ nicht geeignet, obwohl sich Fehlergröße in Pixeln und Fehlerempfindlichkeit einstellen lassen. 66 A NHANG A.8.4 Kleine Bildfehler automatisch entfernen Abbildung A.22: Kleine Bildfehler automatisch entfernen Mit nicht ganz maximalen Grenzen lassen sich die dünnen Kratzer und kleinen Punkte im linken oberen Bild fast vollständig entfernen, allerdings entsteht eine gewisse Unschärfe, die aber noch vertretbar ist. Der dicke Kratzer und einige Punkte können auch hier nicht eliminiert werden. Bei allen anderen Bildern mussten die Grenzen maximal gewählt werden und trotzdem konnten die Bildstörungen mit dem Werkzeug „Kleine Bildfehler automatisch entfernen“ nicht entfernt werden. Der Programmhilfe ist zu entnehmen, dass in diesem Fall das Verfahren nicht zur Beseitigung genutzt werden kann. Die Entstehung von Unschärfe und Artefakten ist im linken unteren Bild bei den vorderen Sonnenschirmen und im rechten unteren Bild am Zaun sehr gut zu sehen. 67 A NHANG A.9 Verbessertes lineares Glättungsfilter Beim verbesserten linearen Glättungsfilter wird der Wert des aktuellen Bildpunktes nur dann durch den Mittelwert seiner Bildpunktnachbarn ersetzt, wenn die Differenz zwischen beiden kleiner als ein bestimmter Schwellwert ist. Durch Probieren folgt, dass mit einem Schwellwert von 50 eine gute Sichtbarkeit der Wirkungsweise des Filters erzielt werden kann. Selbstverständlich muss der Schwellwert für jedes gestörte Bild neu eingestellt werden. Bei den Beispielbildern wurden alle mit dem Schwellwert 50 bearbeitet, um bessere Vergleiche ziehen zu können. Es ist ersichtlich, dass genau wie beim einfachen 3x3 Mittelwertfilter (Vergleich: Anhang A.1) Unschärfe entsteht und die Bildstörungen weiterhin vorhanden sind. Allerdings ist der Schärfeverlust im Vergleich zum einfachen Mittelwertfilter geringer. Abbildung A.23: Lineares Glättungsfilter mit Schwellwert 68 A NHANG A.10 Kantendetektion Wird die ImageJ-Funktion „find edges“ benutzt, um Kanten zu detektieren, so entstehen für die Beispielfotos die in Abbildung A.24 dargestellten Bilder. Alle von schwarz unterschiedlich gefärbten Stellen wurden als Kanten gefunden. Es sind also weit mehr Stellen identifiziert, als eigentlich Bildstörungen vorhanden sind, weswegen diese Methode nicht brauchbar ist. Abbildung A.24: Kantendetektion in ImageJ Mit der Einschränkung, dass nur die Kanten betrachtet werden sollen, deren RGB-Wert größer als 755 bzw. deren Grauwert größer als 245 ist, bleiben die in Abbildung A.25 dargestellten Kanten übrig. Im Bild links oben sind nicht mehr alle Kratzer markiert, sondern nur noch der größte. Dafür ist noch immer der Übergang von Himmel zu Bäumen markiert. Die Kratzer in der Portraitaufnahme rechts oben sind gar nicht mehr markiert. Im Bild links unten sind noch sehr viele Kanten übrig, der kleine Riss allerdings nicht mehr. In der Abbildung rechts unten ist das Rauschen auf dem Kaninchen noch gut zu erkennen, die schwarzen und 69 A NHANG weißen Punkte im Hintergrund aber eher nicht. Dafür sind noch viele andere Kanten des Zaunes markiert. Abbildung A.25: Kantendetektion mit Schwellwert 70 A NHANG A.11 Unscharf maskieren Wird die ImageJ-Funktion „unsharp mask“ mit einem Radius von eins und einer mittleren Breite der Maske verwendet, so erhält man die in Abbildung A.26 dargestellten Beispielbilder. Abbildung A.26: „Unscharf maskieren“ Besonders im Landschaftsbild links oben, das sonst keine scharfen Kanten aufweist, werden die Bildstörungen schön hervorgehoben. Selbiges gilt für die Portraitaufnahme, wobei hier auch das Weiß in den Augen hervorgehoben wird und somit schwer von Punktstörungen (Salt-Rauschen) unterscheidbar ist. In den anderen beiden Fotografien werden auf Grund der Bild- und Störungsbeschaffenheit die eigentlichen Bildstörungen nicht so gut hervorgehoben. Wird nach dem unscharf maskieren eine Glättungsoperation durchgeführt, beispielsweise unter Verwendung des einfachen 3x3 Mittelwertfilters, so entstehen unterschiedliche Ergebnisse. Abbildung A.27 zeigt im Vergleich zum entsprechenden Originalbild kaum Verände- 71 A NHANG rungen bei den Aufnahmen links oben und unten, gute Ergebnisse bei der Portraitaufnahme rechts oben, und eine Verbesserung in Bezug auf das Salt-and Pepper-Rauschen im Foto rechts unten. Auch hier ist also eine Abhängigkeit von Motiv und Bildstörung festzustellen. Abbildung A.27: „Unscharf maskieren“ mit anschließendem Glätten Anhand der Portraitaufnahme (A.31) lässt sich zeigen, dass das zunächst unscharfe Maskieren mit anschließender Glättung (A.28) bessere Ergebnisse – in Bezug auf die Entfernung der Kratzer mit möglichst geringem Schärfeverlust – liefert, als eine Glättung des Bildes mit anschließender Schärfung (A.29) oder die einfache Anwendung des 3x3 Mittelwertfilters (A.30). 72 A NHANG Abbildung A.28: Portraitaufnahme - unscharf maskieren und glätten Abbildung A.29: Portraitaufnahme - glätten und schärfen 73 A NHANG Abbildung A.30: Portraitaufnahme - 3x3 Mittelwertfilter Abbildung A.31: Portraitaufnahme - Originalbild 74 A NHANG A.12 Zylinderhutoperator Hier wird die Variante des Zylinerhutoperators betrachtet, die helle Details findet. Auf Grund der Tatsache, dass die Implementation der morphologischen Operation „Opening“ (Erosion gefolgt von Diletation) für Farbbilder recht aufwändig ist, zeige ich anhand der Graustufenbilder der Beispielbilder, welche Störstellen gefunden werden. Diese Bilder sind alle fast schwarz mit nur wenigen hellen Stellen. Beim Landschaftsbild sind einige helle Punkte und an der Stelle des großen Kratzers ein heller Strich zu sehen. Die hellen Stellen der Portraitaufnahme sind dort wo die Kratzer waren und an den Stellen der hellen Reflexion in den Augen. Auf dem Bild mit den Rissen wird der kleine Riss gefunden und auch sehr dünn der große, aber wesentlich heller treten Striche im oberen rechten Bereich auf. Im Kaninchenbild werden die Stellen des Salt- Rauchens markiert, gleichzeitig aber auch deutlich die Striche vom Zaun. Abbildung A.32: Ermittelte Störstellen mittels Zylinderhutoperator (1) Addiert man, wie in Abbildung A.32 dargestellt, zu den Bildern den Grauwert 25 um eine 75 A NHANG bessere Sichtbarkeit zu erreichen, so stellt man fest, dass noch wesentlich mehr Stellen gefunden wurden. Besonders das Portraitbild ist wesentlich heller als die anderen, was darauf schließen lässt, dass wohl auch im unscharfen Hintergrund weiße Störstellen erkannt wurden. Da mit dem Zylinderhutoperator der große Riss nicht als solcher gefunden wurde, habe ich die Iterationsschritte der Erosion und Diletation auf drei erhöht. Dann wird auch der große Riss als Bildstörung erkannt. Allerdings werden dann noch mehr Störstellen gefunden. Abbildung A.33 zeigt das aufgehellte Bild, das die Bildstörungen hell anzeigt. Mit diesem Ergebnis lässt sich nicht arbeiten. Abbildung A.33: Ermittelte Störstellen mittels Zylinderhutoperator (2) 76 A NHANG A.13 Rein weiße Stellen in Fotos Der Beweis, dass reines Weiß in der Natur doch vorkommt und dass Bildstörungen nicht zwangsläufig in reinem Weiß in Erscheinung treten, liefert Abbildung A.34. Den Grauwert von 255 haben in der Landschaftsaufnahme (links) nur einige Pixel im rechten oberen Bereich, wo gar keine Bildstörungen zu finden sind. Die Kratzer sind gar nicht weiß. Beim Foto von dem Kaninchen (rechts) sind neben dem Salt-Rauschen auch viele Stellen vom Zaun im Hintergrund rein weiß. Die anderen beiden Beispielbilder besitzen keine rein weißen Pixel. Abbildung A.34: Rein weiße Stellen in den Beispielbildern Wird die Schwelle nicht ganz so „hart“ auf reines Weiß eingestellt, sondern lässt man einen gewissen Spielraum (RGB-Wert größer 755, Grauwert größer 245), so erhält man die in Abbildung A.35 markierten Stellen. Auch hier sind kaum Bildstörungen weiß, ursprüngliche Bildteile hingegen schon. 77 A NHANG Abbildung A.35: Weiße (helle) Stellen in den Beispielbildern 78