Skip to main content

2005 | Buch

Digitale Bildverarbeitung

Eine Einführung mit Java und ImageJ

verfasst von: Wilhelm Burger, Mark James Burge

Verlag: Springer Berlin Heidelberg

Buchreihe : eXamen.press

insite
SUCHEN

Über dieses Buch

Die Autoren geben eine fundierte Einführung in die wichtigsten Methoden der digitalen Bildverarbeitung. Dabei steht die praktische Anwendbarkeit im Vordergrund, formale und mathematische Aspekte sind auf das Wesentliche reduziert, ohne dabei auf eine präzise und konsistente Vorgehensweise zu verzichten.

Der Text eignet sich für technisch orientierte Studiengänge ab dem 3.Semester und basiert auf der mehrjährigen Lehrerfahrung der Autoren zu diesem Thema. Der Einsatz in der Lehre wird durch zahlreiche praktische Übungsaufgaben unterstützt. Das Buch eignet sich auch als detaillierte Referenz für Praktiker und Anwender gängiger Verfahren der digitalen Bildverarbeitung, z.B. in der Medizin, der Materialprüfung, der Robotik oder der Medientechnik.

Softwareseitig basiert das Buch auf der in Java implementierten und frei verfügbaren Bildverarbeitungsumgebung ImageJ.

Inhaltsverzeichnis

Frontmatter
1. Crunching Pixels
2. Digitale Bilder
Zusammenfassung
Zentrales Thema in diesem Buch sind digitale Bilder, und wir können davon ausgehen, dass man heute kaum einem Leser erklären muss, worum es sich dabei handelt. Genauer gesagt geht es um Rasterbilder, also Bilder, die aus regelmäßig angeordneten Elementen (picture elements oder pixel) bestehen, im Unterschied etwa zu Vektorgrafiken.
3. ImageJ
Zusammenfassung
Bis vor wenigen Jahren war die Bildverarbeitungs-“Community“ eine relativ kleine Gruppe von Personen, die entweder Zugang zu teuren Bildverarbeitungswerkzeugen hatte oder — aus Notwendigkeit — damit begann, eigene Softwarepakete für die digitale Bildverarbeitung zu programmieren. Meistens begannen solche „Eigenbau“-Umgebungen mit kleinen Programmkomponenten zum Laden und Speichern von Bildern, von und auf Dateien. Das war nicht immer einfach, denn oft hatte man es mit mangelhaft dokumentierten oder firmenspezifischen Dateiformaten zu tun. Die nahe liegendste Lösung war daher häufig, zunächst sein eigenes, für den jeweiligen Einsatzbereich „optimales“ Dateiformat zu entwerfen, was weltweit zu einer Vielzahl verschiedenster Dateiformate führte, von denen viele heute glücklicherweise wieder vergessen sind [59]. Das Schreiben von Programmen zur Konvertierung zwischen diesen Formaten war daher in den 1980ern und frühen 1990ern eine wichtige Angelegenheit. Die Darstellung von Bildern auf dem Bildschirm war ähnlich schwierig, da es dafür wenig Unterstützung vonseiten der Betriebssysteme und Systemschnittstellen gab. Es dauerte daher oft Wochen oder sogar Monate, bevor man am Computer auch nur elementare Dinge mit Bildern tun konnte und bevor man vor allem an die Entwicklung neuer Algorithmen für die Bildverarbeitung denken konnte.
Glücklicherweise ist heute vieles anders. Nur wenige, wichtige Bildformate haben überlebt (s. auch Abschn. 2.3) und sind meist über fertige Programmbibliotheken leicht zugreifbar. Die meisten Standard-APIs, z. B. für C++ und Java, beinhalten bereits eine Basisunterstützung für Bilder und andere digitale Mediendaten.
4. Histogramme
Zusammenfassung
Histogramme sind Bildstatistiken und ein häufig verwendetes Hilfsmittel, um wichtige Eigenschaften von Bildern rasch zu beurteilen. Insbesondere sind Belichtungsfehler, die bei der Aufnahme von Bildern entstehen, im Histogramm sehr leicht zu erkennen. Moderne Digitalkameras bieten oft die Möglichkeit, das Histogramm eines gerade aufgenommenen Bilds sofort anzuzeigen (Abb. 4.1), da eventuelle Belichtungsfehler durch nachfolgende Bearbeitungsschritte nicht mehr korrigiert werden können. Neben Aufnahmefehlern können aus Histogrammen aber auch viele Rückschlüsse auf einzelne Verarbeitungsschritte gezogen werden, denen ein Digitalbild im Laufe seines „Lebens“ unterzogen wurde.
5. Punktoperationen
6. Filter
Zusammenfassung
Die wesentliche Eigenschaft der im vorigen Kapitel behandelten Punktoperationen war, dass der neue Wert eines Bildelements ausschließlich vom ursprünglichen Bildwert an derselben Position abhängig ist. Filter sind Punktoperationen dahingehend ähnlich, dass auch hier eine 1:1-Abbildung der Bildkoordinaten besteht, d. h., dass sich die Geometrie des Bilds nicht ändert. Viele Effekte sind allerdings mit Punktoperationen — egal in welcher Form — allein nicht durchführbar, wie z.B. ein Bild zu schärfen oder zu glätten.
7. Kanten und Konturen
Zusammenfassung
Markante „Ereignisse“ in einem Bild, wie Kanten und Konturen, die durch lokale Veränderungen der Intensität oder Farbe zustande kommen, sind für die visuelle Wahrnehmung und Interpretation von Bildern von höchster Bedeutung. Die subjektive „Schärfe“ eines Bilds steht in direktem Zusammenhang mit der Ausgeprägtheit der darin enthaltenen Diskontinuitäten und der Deutlichkeit seiner Strukturen. Unser menschliches Auge scheint derart viel Gewicht auf kantenförmige Strukturen und Konturen zu legen, dass oft nur einzelne Striche in Karikaturen oder Illustrationen für die eindeutige Beschreibung der Inhalte genügen. Aus diesem Grund sind Kanten und Konturen auch für die Bildverarbeitung ein traditionell sehr wichtige Thema. In diesem Kapitel betrachten wir zunächst einfache Methoden zur Lokalisierung von Kanten und anschließend das verwandte Problem des Schärfens von Bildern.
8. Auffinden von Eckpunkten
Zusammenfassung
Eckpunkte sind markante strukturelle Ereignisse in einem Bild und daher in einer Reihe von Anwendungen nützlich, wie z.B. beim Verfolgen von Elementen in aufeinander folgenden Bildern (tracking), bei der Zuordnung von Bildstrukturen in Stereoaufnahmen, als Referenzpunkte zur geometrischen Vermessung, Kalibrierung von Kamerasystemen usw. Eckpunkte sind nicht nur für uns Menschen auffällig, sondern sind auch aus technischer Sicht „robuste“ Merkmale, die in 3D-Szenen nicht zufällig entstehen und in einem breiten Bereich von Ansichtswinkeln sowie unter unterschiedlichen Beleuchtungsbedingungen relativ zuverlässig zu lokalisieren sind.
9. Detektion einfacher Kurven
Zusammenfassung
In Kap. 7 haben wir gezeigt, wie man mithilfe von geeigneten Filtern Kanten finden kann, indem man an jeder Bildposition die Kantenstärke und möglicherweise auch die Orientierung der Kante bestimmt. Der darauf folgende Schritt bestand in der Entscheidung (z.B. durch Anwendung einer Schwellwertoperation auf die Kantenstärke), ob an einer Bildposition ein Kantenpunkt vorliegt oder nicht, mit einem binären Kantenbild (edge map) als Ergebnis. Das ist eine sehr frühe Festlegung, denn natürlich kann aus der beschränkten („myopischen“) Sicht eines Kantenfilters nicht zuverlässig ermittelt werden, ob sich ein Punkt tatsächlich auf einer Kante befindet oder nicht. Man muss daher davon ausgehen, dass in dem auf diese Weise produzierten Kantenbild viele vermeintliche Kantenpunkte markiert sind, die in Wirklichkeit zu keiner echten Kante gehören, und andererseits echte Kantenpunkte fehlen. Kantenbilder enthalten daher in der Regel zahlreiche irrelevante Strukturen und gleichzeitig sind wichtige Strukturen häufig unvollständig. Das Thema dieses Kapitels ist es, in einem vorläufigen, binären Kantenbild auffällige und möglicherweise bedeutsame Strukturen aufgrund ihrer Form zu finden.
10. Morphologische Filter
11. Regionen in Binärbildern
Zusammenfassung
Binärbilder, mit denen wir uns bereits im vorhergehenden Kapitel ausführlich beschäftigt haben, sind Bilder, in denen ein Pixel einen von nur zwei Werten annehmen kann. Wir bezeichnen diese beiden Werte häufig als „Vordergrund“ bzw. „Hintergrund“, obwohl eine solche eindeutige Unterscheidung in natürlichen Bildern oft nicht möglich ist. In diesem Kapitel gilt unser Augenmerk zusammenhängenden Bildstrukturen und insbesondere der Frage, wie wir diese isolieren und beschreiben können.
Angenommen, wir müssten ein Programm erstellen, das die Anzahl und Art der in Abb. 11.1 abgebildeten Objekte interpretiert. Solange wir jedes einzelne Pixel isoliert betrachten, werden wir nicht herausfinden, wie viele Objekte überhaupt in diesem Bild sind, wo sie sich befinden und welche Pixel zu welchem der Objekte gehören. Unsere erste Aufgabe ist daher, zunächst einmal jedes einzelne Objekt zu finden, indem wir alle Pixel zusammenfügen, die Teil dieses Objekts sind. Im einfachsten Fall ist ein Objekt eine Gruppe von aneinander angrenzenden Vordergrundpixeln bzw. eine verbundene binäre Bildregion.
12. Farbbilder
Zusammenfassung
Farbbilder spielen in unserem Leben eine wichtige Rolle und sind auch in der digitalen Welt allgegenwärtig, ob im Fernsehen, in der Fotografie oder im digitalen Druck. Die Empfindung von Farbe ist ein faszinierendes und gleichzeitig kompliziertes Phänomen, das Naturwissenschaftler, Psychologen, Philosophen und Künstler seit Jahrhunderten beschäftigt [70, 73]. Wir beschränken uns in diesem Kapitel allerdings auf die wichtigsten technischen Zusammenhänge, die notwendig sind, um mit digitalen Farbbildern umzugehen. Die Schwerpunkte liegen dabei zum einen auf der programmtechnischen Behandlung von Farbbildern und zum anderen auf der Umwandlung zwischen unterschiedlichen Farbdarstellungen.
13. Einführung in Spektraltechniken
14. Die diskrete Fouriertransformation in 2D
Zusammenfassung
Die Fouriertransformation ist nicht nur für eindimensionale Signale definiert, sondern für Funktionen beliebiger Dimension, und daher sind auch zweidimensionale Bilder aus mathematischer Sicht nichts Besonderes.
15. Die diskrete Kosinustransformation (DCT)
Zusammenfassung
Die Fouriertransformation und die DFT sind für die Verarbeitung komplexwertiger Signale ausgelegt und erzeugen immer ein komplexwertiges Spektrum, auch wenn das ursprüngliche Signal ausschließlich reelle Werte aufweist. Der Grund dafür ist, dass weder der reelle noch der imaginäre Teil des Spektrums allein ausreicht, um das Signal vollständig darstellen (d. h. rekonstruieren) zu können, da die entsprechenden Kosinus- bzw. Sinusfunktionen jeweils für sich kein vollständiges System von Basisfunktionen bilden.
Andererseits wissen wir (Gl. 13.21), dass ein reellwertiges Signal zu einem symmetrischen Spektrum führt, sodass also in diesem Fall das komplexwertige Spektrum redundant ist und wir eigentlich nur die Hälfte aller Spektralwerte berechnen müssten, ohne dass dabei irgendwelche Informationen aus dem Signal verloren gingen.
Es gibt eine Reihe von Spektraltransformationen, die bezüglich ihrer Eigenschaften der DFT durchaus ähnlich sind, aber nicht mit komplexen Funktionswerten arbeiten. Ein bekanntes Beispiel ist die diskrete Kosinustransformation (DCT), die vor allem im Bereich der Bild- und Videokompression breiten Einsatz findet und daher auch für uns interessant ist. Die DCT verwendet ausschließlich Kosinusfunktionen unterschiedlicher Wellenzahl als Basisfunktionen und beschränkt sich auf reellwertige Signale und Spektralkoeffizienten. Analog dazu existiert auch eine diskrete Sinustransformation (DST) basierend auf einem System von Sinusfunktionen [47].
16. Geometrische Bildoperationen
17. Bildvergleich
Backmatter
Metadaten
Titel
Digitale Bildverarbeitung
verfasst von
Wilhelm Burger
Mark James Burge
Copyright-Jahr
2005
Verlag
Springer Berlin Heidelberg
Electronic ISBN
978-3-540-27653-1
Print ISBN
978-3-540-21465-6
DOI
https://doi.org/10.1007/3-540-27653-X