Digitale Bildverarbeitung - Rechnerübung 3 1. Khoros Zur Durchführung der Rechnerübung wird das Programmpaket KHOROS mit seiner Benutzerschnittstelle Cantata verwendet. Nach der Anmeldung am Rechner durch den Übungsbetreuer ist Cantata aufzurufen, indem zunächst eine Shell geöffnet wird (anklicken des kleinen Bildschirmsymbols unten in der Taskleiste) und in dieser Shell die Befehle source /prog/khoros/2001/setenv und cantata& eingegeben werden. Die Versuche sind in Workspaces gespeichert, die sich im Verzeichnis /project/nva/bildverarbeitung/rechneruebung/ befinden. Für jeden Workspace sollte mit File/New ein neuer Arbeitsbereich geöffnet werden. Die Operatoren eines Workspaces werden durch Glyphen repräsentiert, die durch ein Anklicken des quadratischen Feldes in der Mitte aktiviert werden können. Ist die Operation beendet, färbt sich die Verbindung zum nächsten Glyphen grün und der nächste Glyph kann aktiviert werden. Die Eigenschaften eines Glyphen können durch einen Klick auf das Dreieck in der oberen linken Ecke angesehen und ggf. verändert werden. Sollte ein Glyph hängen, also nicht fertig durchlaufen, kann dies durch einen Klick auf Run in den Eigenschaften des Glyphs erzwungen werden. 2. Bildrepräsentation und Bildformate Bei der Bilderaufnahme werden physikalische Größen in ein Bild umgewandelt. Meist ist die Intensität einer elektromagnetischen Welle der Wert, der im Bild dargestellt wird. Die gemessene Intensität ist von der Beleuchtung, dem Rückstreukoeffizienten der Objekte und den Eigenschaften des Sensors abhängig. Es werden in der Praxis verschiedene Wellenlängen verwendet, am häufigsten jedoch diejenigen des sichtbaren Bereiches. In welchem Wellenlängenbereich liegt das sichtbare Spektrum? 1
2 Abtastung und Quantisierung Um ein digitales Bild zu erhalten, werden die kontinuierlichen Werte der Intensitäten quantisiert und mit einem Gitter abgetastet. Ist der Sensor bereits so angelegt (z. B. ein CCD-Array), dann ist hierdurch das Gitter definiert. Im allgemeinen wird ein orthogonales Gitter verwendet. Bilder auf Film müssen zunächst gescannt werden, dabei wird die Abtastung und Quantisierung festgelegt. Andere bildgebende Verfahren errechnen die Intensitätswerte aus den Messungen (z. B. Computertomographie). Man spricht für die Abtastrate auch von räumlicher Auflösung (spatial resolution) und für die Quantisierung von radiometrischer Auflösung (radiometric resolution). Die räumliche Auflösung bezieht sich auf die Projektion eines Pixels in den Objektraum und wird meist in [m] angegeben, da sie eine Länge in Weltkoordinaten darstellt. Sie ist nicht zu verwechseln mit der Bildgröße, die einfach in Anzahl Pixeln angegeben wird. Im Workspace 01repaesentationen.wk werden verschiedene Bilder geladen. Geben sie die Art der Werte (z. B. float), den genutzten Wertebereich sowie die Anzahl der Kanäle an. Die Werte können im Glyph Editimage unter View/Info bzw. View/Stats angezeigt werden. Bild Wertetyp Min Max Anzahl Kanäle Ball SAR Spine MRT Truck Kopf Räumliche Auflösung Laden Sie den Workspace 02spatial-resolution.wk und erklären sie, wie der Schachbrett- Effekt genannte Eindruck zustandekommt. Welche Schritte werden dazu durchgeführt? Schritt 1: Schritt 2: Wie könnte man den Effekt mindern? Histogramme Laden sie den Workspace 03image-stats.wk. Was ist in den Diagrammen dargestellt, wie werden sie berechnet und welche Bedeutung haben die Achsen?
3 Workspace 04histogramm.wk enthält zwei Graphen. Der obere Graph rechnet mit typischen aus dem Histogramm ableitbaren Funktionen. Was ist der Unterschied zwischen den beiden Operatoren im oberen Graph? Warum funktioniert der eine besser für die Aufgabenstellung der Nummernschildidentifikation als der andere? Der untere Graph nimmt eine andere Operation vor. Wie unterscheidet sich diese von den vorhergehenden? Wertebereich Im Workspace 05wrap-byte.wk wird eine Konstante auf ein Bild addiert. Wie kommen die unterschiedlichen Resultate zustande? Bitoperationen Welche Bit-Operation wird im Workspace 06bit-slices.wk durchgeführt? Was kann man an den einzelnen Bildern sehen? Farbe 07pseudo-color.wk: Wie ist die Farbinformation in diesem Bild abgelegt? Welche anderen Möglichkeiten gibt es, Farbinformationen zu speichern? 3. Punktoperationen 08punktoperationen: In diesem Workspace werden einige Punktoperationen durchgeführt. Suchen Sie einen oder mehrere Schwellwerte, mit denen sich ˆ die Zellen ˆ der Hintergrund ˆ der Rand der Zellen hervorheben lassen. Dazu kann man den Threshold im Glyph Editimage unter Options/Threshold interaktiv wählen (Pixel Thresholding aktivieren). Tragen Sie diese in die entsprechenden Threshold-Glyphen ein.
4 4. Lokale Operationen Lokale Operationen verwenden die Umgebung eines Pixels im Eingangsbild, um das Ausgangsbild zu berechnen. Gradient Laden Sie 09gradient.wk. Wie wird der Gradient berechnet? Wieso sind es zwei verschiedene Filter, die zum Einsatz kommen? Was zeigen die Ergebnisbilder? Median Im Workspace 10median.wk wird der Median berechnet. Welcher Parameter führt zu den unterschiedlichen Ergebnissen? Welche Operation wird im untersten Glyph durchgeführt? 5. Globale Operationen Globale Operationen sind dadurch gekennzeichnet, daß sich die einzelnen Ausgangswerte aus allen Werten des Eingangsbildes berechnen. Fouriertransformation Eine typische globale Operation ist die Fouriertransformation. Einige einfache Bilder werden im Workspace 11dft-simple-images.wk vorgestellt. Was ist im Ergebnisbild dargestellt und in welchem Format liegt es vor? Variieren Sie die Parameter der Eingangsbilder und beschreiben Sie die Veränderungen und ihren Grund. 12F-sine-x-over-x.wk: Welche Funktion findet sich in den Ausgangsbildern? Von welchen Parametern ist sie abhängig? Aliasing Im Workspace 13aliasing.wk entsteht Aliasing unter bestimmten Bedingungen. Welche Bedingung muss erfüllt sein, damit kein Aliasing auftritt? Wie äußert sich die Nichteinhaltung der Bedingung?
5 Interpolation Weitere Eigenschaften der diskreten Fouriertransformation werden in Workspace 14interpolation.wk sichtbar. Wie wird in diesem Workspace das Bild vergrößert und wieso ist eine Interpolation besser als die anderen? 6. Inverse Filterung Im Workspace 15inverse.wk wird eine inverse Filterung im Fourierraum vorgenommen. Wie funktioniert sie? Kann sie auch im Ortsraum vorgenommen werden? Im Workspace 16barcode-filter.wk wird ebenfalls eine Filterung im Fourierraum vorgenommen. Wie wird hier das Rauschen im Bild verringert? Kann jedes Rauschen so verringert werden?