Computational Imaging Project - Exam.pdf

Computational Imaging Project - Exam
Computational Imaging Project - Exam Aufgabe 1) Du hast ein vollkommen schwarzes Bild einer Szene aufgenommen, die von einem einzelnen Punktlicht beleuchtet wird. Daher sind alle Punkte der Szene sichtbar, aber es gibt nur ein Schatten. Das Kameramodell ist ein pinhole Modell und die Kamera hat ein CCD-Sensor. a) (a) Lichtquellen und Beleuchtungsmodelle: Beschreibe, wie die Position und Intensität...

© StudySmarter 2024, all rights reserved.

Computational Imaging Project - Exam

Aufgabe 1)

Du hast ein vollkommen schwarzes Bild einer Szene aufgenommen, die von einem einzelnen Punktlicht beleuchtet wird. Daher sind alle Punkte der Szene sichtbar, aber es gibt nur ein Schatten. Das Kameramodell ist ein pinhole Modell und die Kamera hat ein CCD-Sensor.

a)

(a) Lichtquellen und Beleuchtungsmodelle: Beschreibe, wie die Position und Intensität der Punktlichtquelle das resultierende Bild der Szene beeinflussen. Vergleiche dies mit einem Flächenlicht mit gleicher Gesamtintensität. Zeichne dabei ein Diagramm, das die Unterschiede in der Schattengestaltung und den Beleuchtungsgrad darstellt.

Lösung:

(a) Lichtquellen und Beleuchtungsmodelle:

Die Position und Intensität der Punktlichtquelle haben wesentliche Auswirkungen auf das resultierende Bild der Szene. Diese Faktoren beeinflussen, wie die Helligkeit verteilt wird und wie die Schatten angeordnet sind.

  • Position der Punktlichtquelle:
    • Je näher die Punktlichtquelle an der Szene ist, desto schärfer und kleiner sind die Schatten. Die Beleuchtungsgradienten sind steiler, da das Licht eine kleinere Fläche beleuchtet.
    • Eine weiter entfernte Punktlichtquelle erzeugt weichere und größere Schatten. Die Beleuchtungsgradienten sind flacher, da das Licht eine größere Fläche beleuchtet und gleichmäßiger verteilt ist.
  • Intensität der Punktlichtquelle:
    • Eine hohe Lichtintensität führt zu helleren Reflexionen und starken Kontrasten in der Szene. Schattenbereiche sind tiefschwarz, wenn es keine Umgebungsbeleuchtung gibt.
    • Eine niedrige Lichtintensität sorgt für insgesamt dunklere Bilder mit weniger ausgeprägten Schatten.

Vergleich mit einem Flächenlicht:

  • Schattengestaltung: Bei einer Punktlichtquelle entstehen scharfe, definierte Schattenränder. Bei einem Flächenlicht sind die Schatten weicher und diffuser. Dies liegt daran, dass ein Flächenlicht Licht aus mehreren Richtungen auf das Objekt wirft, wodurch die Schattenränder „verschmiert“ werden.
  • Beleuchtungsgrad: Ein Flächenlicht verteilt das Licht gleichmäßiger über die Szene und reduziert starke Kontraste im Vergleich zu einer Punktlichtquelle. Einige Bereiche der Szene, die bei einer Punktlichtquelle stark beleuchtet wären, erscheinen bei einer Flächenlichtquelle weniger intensiv beleuchtet.

Diagramm zur Veranschaulichung:

Im folgenden Diagramm werden die Unterschiede bei der Schattengestaltung und beim Beleuchtungsgrad zwischen Punktlicht und Flächenlicht dargestellt:

Diagramm zur Beleuchtungskonfiguration

Das Diagramm zeigt links eine Szene mit einer Punktlichtquelle und rechts die gleiche Szene mit einem Flächenlicht.

  • Mit Punktlicht ist ein klar umrissener Schatten sichtbar.
  • Mit Flächenlicht ist der Schatten weicher und weniger klar umrissen.
  • Die Beleuchtung ist mit Punktlicht intensiver und kontrastreicher, während sie mit Flächenlicht gleichmäßiger und flacher ist.

b)

(b) Abbildungsgeometrie und Farbmodellierung: Angenommen, die Szene enthält einen roten und einen blauen Würfel. Der rote Würfel steht näher an der Punktlichtquelle. Nutze das Kameramodell, um die geometrische Position der Würfel auf dem Bildsensor zu berechnen. Zeige mathematisch auf, wie diese Positionen beeinflusst werden, wenn die Kameraposition geändert wird. Beschreibe auch, wie die Farbinformation (in einem RGB-Farbraum) im digitalen Bild repräsentiert wird.

Lösung:

(b) Abbildungsgeometrie und Farbmodellierung:

Um die geometrische Position der Würfel auf dem Bildsensor zu berechnen und zu verstehen, wie diese Positionen beeinflusst werden, wenn die Kameraposition geändert wird, müssen wir das Pinhole-Kameramodell und grundlegende Konzepte der Bildverarbeitung betrachten.

Abbildungsgeometrie

Das Pinhole-Kameramodell projiziert eine dreidimensionale Szene auf einen zweidimensionalen Bildsensor. Es nutzt eine einfache Perspektivprojektion, um die Positionen der Objekte auf dem Bildsensor zu bestimmen.

Nehmen wir an, die Parameter der Kamera sind:

  • Brennweite (f): Die Distanz zwischen der Pinhole-Öffnung und dem Bildsensor.
  • Bildsensorgröße: Die Abmessungen des Bildsensors.

Um die geometrische Position zu berechnen, nutzen wir die Projektionstheorien:

\[x' = \frac{f \, X}{Z} \quad und \quad y' = \frac{f \, Y}{Z}\]

Hierbei sind \(X\), \(Y\), \(Z\) die 3D-Koordinaten eines Punktes in der Szene, und \(x'\), \(y'\) sind die entsprechenden 2D-Koordinaten auf dem Bildsensor.

Position der Würfel

  • Roter Würfel: Angenommen, der rote Würfel befindet sich an den Koordinaten \((X_r, Y_r, Z_r)\), näher an der Punktlichtquelle.
  • Blauer Würfel: Angenommen, der blaue Würfel befindet sich an den Koordinaten \((X_b, Y_b, Z_b)\), weiter entfernt von der Punktlichtquelle.

Die Positionen auf dem Bildsensor (\(x'_r\), \(y'_r\)) für den roten Würfel und (\(x'_b\), \(y'_b\)) für den blauen Würfel sind:

\[x'_r = \frac{f \, X_r}{Z_r} \quad und \quad y'_r = \frac{f \, Y_r}{Z_r}\]\[x'_b = \frac{f \, X_b}{Z_b} \quad und \quad y'_b = \frac{f \, Y_b}{Z_b}\]

Da der rote Würfel näher an der Punktlichtquelle steht (kleineres \(Z_r\)), wird er größer und näher am Zentrum des Bildsensors erscheinen als der blaue Würfel.

Änderung der Kameraposition

Falls die Kamera um einen Vektor \((dx, dy, dz)\) verschoben wird, ändern sich die Koordinaten der Würfel relativ zur neuen Lage der Kamera:

\[X' = X - dx\]\[Y' = Y - dy\]\[Z' = Z - dz\]

Die neuen Bildsensorpositionen für die Würfel berechnen sich dann zu:

\[x'_{new} = \frac{f \, (X - dx)}{Z - dz}\]\[y'_{new} = \frac{f \, (Y - dy)}{Z - dz}\]

Farbmodellierung im RGB-Farbraum

Die Farbinformation der Würfel wird im RGB-Farbraum gespeichert. Jeder Pixel auf dem CCD-Sensor erfasst die Intensität des einfallenden Lichts in den drei Primärfarben: Rot (R), Grün (G) und Blau (B).

  • Roter Würfel: Reflektiert hauptsächlich rotes Licht, daher hat der Pixel eine hohe R-Komponente und niedrige G- und B-Komponenten.
  • Blauer Würfel: Reflektiert hauptsächlich blaues Licht, daher hat der Pixel eine hohe B-Komponente und niedrige R- und G-Komponenten.

Ein digitaler Bildsensor speichert diese Farbinformationen als separate Kanäle für jede Primärfarbe:

\[(R, G, B) = (I_r, I_g, I_b)\]

Hierbei stehen \(I_r\), \(I_g\), \(I_b\) für die Intensitäten der jeweiligen Farbkanäle an einem bestimmten Pixel.

Aufgabe 2)

Gegeben sei ein schlecht gestelltes inverses Problem in der medizinischen Bildgebung, bei dem der Messwertvektor \( y \) und das Modell \( A \) gegeben sind. Es sollen die Parameter \( x \) bestimmt werden, sodass \( A(x) = y \) gilt. Aufgrund der Instabilität und Mehrdeutigkeit des Problems ist eine Regularisierung erforderlich. Verwende die Tikhonov-Regularisierung zur Stabilisierung des Problems. Die Regularisierungsfunktion sei durch \( R(x) = || x ||^2 \) gegeben. Der Regularisierungsparameter \( \lambda \) ist ebenfalls bekannt.

a)

Formuliere das Optimierungsproblem mit der Tikhonov-Regularisierung. Gebe die Zielfunktion an, die minimiert werden soll, und erläutere den Einfluss des Regularisierungsparameters \( \lambda \) auf die Lösung.

Lösung:

Formulierung des Optimierungsproblems

Um das schlecht gestellte inverse Problem in der medizinischen Bildgebung zu stabilisieren, nutzen wir die Tikhonov-Regularisierung. Hierbei werden der Messwertvektor \(y\) und das Modell \(A\) verwendet, um die Parameter \(x\) zu bestimmen, sodass \(A(x) = y\) gilt. Die Regularisierungsfunktion wird durch \(R(x) = || x ||^2\) gegeben und der Regularisierungsparameter \(\lambda\) ist bekannt.

Das Optimierungsproblem mit Tikhonov-Regularisierung wird wie folgt formuliert:

  • Messwertvektor: \(y\)
  • Modell: \(A(x) = y\)
  • Regularisierungsfunktion: \(R(x) = ||x||^2\)
  • Regularisierungsparameter: \(\lambda\)

Die Zielfunktion, die minimiert werden soll, ist:

  • \(J(x) = ||A(x) - y||^2 + \lambda ||x||^2\)

Erläuterung des Einflusses des Regularisierungsparameters \(\lambda\)

Der Regularisierungsparameter \(\lambda\) hat bedeutenden Einfluss auf die Lösung:

  • Ein kleiner Wert von \(\lambda\) minimiert hauptsächlich das Residuum \(||A(x) - y||^2\), was zu einer sehr genauen, aber potenziell instabilen Lösung führen kann.
  • Ein großer Wert von \(\lambda\) legt mehr Gewicht auf das Minimieren von \(||x||^2\), was zu einer stabileren, aber möglicherweise weniger genauen Lösung führen kann.
  • Es ist entscheidend, einen geeigneten Wert für \(\lambda\) zu wählen, um einen guten Kompromiss zwischen Genauigkeit und Stabilität zu finden.

c)

Implementiere in Python eine Routine, die das Optimierungsproblem mit der Tikhonov-Regularisierung löst. Nutze dazu eine lineare algebraische Lösungsmethode wie den Levenberg-Marquardt-Algorithmus. Du kannst dazu die Bibliothek SciPy nutzen.

Lösung:

Implementierung der Routine in Python

Um das Optimierungsproblem mit der Tikhonov-Regularisierung zu lösen, können wir die Bibliothek SciPy verwenden. Wir nutzen den Levenberg-Marquardt-Algorithmus, um die Lösung zu finden.

Hier ist eine beispielhafte Implementierung:

import numpy as npfrom scipy.optimize import least_squares# Gegebene WerteA = ...  # Das Modell A (als Matrix)y = ...  # Der Messwertvektor ylambda_param = ...  # Der Regularisierungsparameter # Definition der Zielfunktiondef objective_function(x):    residual = np.dot(A, x) - y    regularization_term = np.sqrt(lambda_param) * x    return np.concatenate([residual, regularization_term])# Initialer Schätzwert für xx0 = np.zeros(A.shape[1])# Lösung des Optimierungsproblems mit dem Levenberg-Marquardt-Algorithmusresult = least_squares(objective_function, x0, method='lm')# Erhaltene Parameter xx_optimal = result.xprint('Optimierte Parameter x:', x_optimal)

Erklärung des Codes:

  • Importiere die notwendigen Bibliotheken: numpy für numerische Operationen und least_squares aus scipy.optimize für die Optimierung.
  • Definiere die gegebenen Werte: das Modell A als Matrix, den Messwertvektor y, und den Regularisierungsparameter \( \lambda \).
  • Definiere die Zielfunktion objective_function, die den Residuum-Term und den Regularisierungs-Term kombiniert. Die Zielfunktion gibt den Vektor zurück, der die zu minimierenden Terme (`residual` und `regularization_term`) enthält.
  • Lege den initialen Schätzwert x0 für die Parameter x fest. Hier wird ein Vektor mit Nullen verwendet.
  • Nutze die Funktion least_squares, um das Optimierungsproblem zu lösen. Der Levenberg-Marquardt-Algorithmus wird durch die Methode 'lm' angegeben.
  • Extrahiere die optimierten Parameter x aus dem Ergebnis des Optimierungsprozesses und drucke sie aus.

Aufgabe 3)

Bei der iterativen Rekonstruktion handelt es sich um eine Gruppe von Methoden zur Lösung von inversen Problemen in der Bildrekonstruktion, wie sie beispielsweise in der Computertomographie vorkommen. Diese Verfahren optimieren die Lösung schrittweise unter Verwendung von Iterationen. Zu den Vorteilen im Vergleich zu direkten Methoden wie der gefilterten Rückprojektion (FBP) gehören die Reduktion von Artefakten und Rauschen sowie die Möglichkeit, Regularisierungen zur Stabilisierung der Lösung in das Verfahren einzubeziehen. Zu den typischen iterativen Rekonstruktionsalgorithmen gehören ART (Algebraic Reconstruction Technique), SIRT (Simultaneous Iterative Reconstruction Technique) und ML-EM (Maximum Likelihood Expectation Maximization). Um diese Verfahren anwenden zu können, ist oft \textit{a priori}-Wissen erforderlich und die Formulierungen werden üblicherweise nach einer geeigneten Diskretisierung der Probleme angewandt.

a)

Erläutere die Unterschiede zwischen der Algebraic Reconstruction Technique (ART) und der Simultaneous Iterative Reconstruction Technique (SIRT) hinsichtlich ihrer Verfahren und Eigenschaften. Gehe dabei insbesondere auf die Optimierungsstrategien und die resultierenden Bildqualität ein. Welche Art von \textit{a priori}-Wissen könnte erforderlich sein, um eine effektivere Rekonstruktion zu erreichen?

Lösung:

Unterschiede zwischen ART und SIRT:

  • Verfahren:
    • ART (Algebraic Reconstruction Technique): ART rekonstruiert das Bild iterativ durch die Anwendung einer Korrektur auf jede Projektionsdatenzeile einzeln. Es basiert auf der Idee, dass die Summe der Pixelwerte entlang einer Linie (Projektion) mit dem gemessenen Wert übereinstimmen sollte. Die Korrektur wird nacheinander auf jede Projektionslinie angewendet, was zu einer sequentiellen Aktualisierung des Bildes führt.
    • SIRT (Simultaneous Iterative Reconstruction Technique): Im Gegensatz dazu basiert SIRT auf der gleichzeitigen Korrektur aller Projektionsdaten. Anstatt die Korrektur zeilenweise nacheinander anzuwenden, wird eine mittlere Korrektur berechnet, die gleichzeitig auf den gesamten Datensatz angewendet wird. Dadurch wird nach jeder Iteration ein globales Bildupdate vorgenommen.
  • Eigenschaften:
    • Optimierungsstrategien: ART optimiert die Lösung durch sequentielle Aktualisierungen und neigt dazu, schneller zu konvergieren, kann jedoch auch stark von der Reihenfolge der Projektionslinien abhängen und zu Instabilitäten führen. SIRT verwendet eine globalere Strategie, die stabiler und robuster ist, jedoch tendenziell langsamer konvergiert.
    • Bildqualität: ART kann in Fällen mit geringem Rauschen und wenigen Artefakten zu sehr guten Ergebnissen führen. Bei höheren Rauschpegeln oder stark gestörten Daten kann es jedoch instabil werden. SIRT weist eine verbesserte Rauschempfindlichkeit auf und erzeugt in der Regel stabilere Bilder, insbesondere bei stark gestörten Daten. Es resultiert oft in einer höheren Bildqualität bei schwierigeren Rekonstruktionsproblemen.

\textit{a priori}-Wissen für effektivere Rekonstruktion:

  • Bildstruktur: Informationen über die anzunehmende Struktur des Bildes, beispielsweise die Glattheit oder Kanteninformationen, können als Regularisierung genutzt werden.
  • Statistische Eigenschaften der Rauschen: Kenntnisse über das Verhalten und die Verteilung des Rauschens können ebenfalls in die Rekonstruktion einfließen und zu besseren Ergebnissen führen.
  • Physikalische Eigenschaften des untersuchten Objekts: Kenntnisse über das zu rekonstruierende Objekt, z. B. die Materialeigenschaften oder die geometrische Form, können den Rekonstruktionsprozess unterstützen.
Sign Up

Melde dich kostenlos an, um Zugriff auf das vollständige Dokument zu erhalten

Mit unserer kostenlosen Lernplattform erhältst du Zugang zu Millionen von Dokumenten, Karteikarten und Unterlagen.

Kostenloses Konto erstellen

Du hast bereits ein Konto? Anmelden