Finish documentation

This commit is contained in:
2025-07-05 10:34:54 +02:00
parent 5c7067e255
commit 0ba97576a9
31 changed files with 578 additions and 114 deletions

View File

@@ -25,20 +25,75 @@ Implementieren Sie die Mittelwertbildung mit einer variablem Bildreihe $N$ (defa
Um zu pr<70>fen wie das Bild auf Pixelebene arbeitet, kann die Variable \textit{plotNoise} in der Funktion \textit{process()} auf \textit{True} gesetzt werden.
Es werden zwei zus<75>tzliche Plots ausgegeben, in der ein Bildausschnitt des Zentrums vor- und nach der Rauschunterdr<64>ckung vergr<67><72>ert dargestellt werden.
\pagebreak
\paragraph*{Aufgabe 1}
Geben Sie Ihren Code an und beschreiben Sie ihn. Geben Sie nur relevante Code Bereiche an!
\lstset{caption={Vorverarbeitung, Aufgabe 1}}
\begin{lstlisting}
# Your code!
def _211_Rauschreduktion(self, img):
self.picture_buffer.append(img)
if len(self.picture_buffer) < self.n:
# If number of buffered images < defined buffer size n,
# return current image
return img
elif len(self.picture_buffer) > self.n:
# If number of buffered images > defined buffer size n,
# remove oldest image
self.picture_buffer.pop(0)
# Reduce noise, return result image
return np.mean(self.picture_buffer, axis=0).astype(np.uint8)
\end{lstlisting}
\paragraph*{Aufgabe 2}
Nennen Sie Vor und Nachteile, wenn $N$ vergr<67><72>ert werden w<>rde. Sollte $N$ in dieser Anwendung vergr<67><72>ert werden?
\color{blue}
Vorteile:
\begin{itemize}
\item Je gr<67><72>er die Anzahl der Bilder N, desto besser kann das Rauschen verringert werden
\item Gut f<>r statische Szenen
\end{itemize}
Nachteile:
\begin{itemize}
\item H<>herer Speicheraufwand
\item H<>heres N folgt in mehr zeit um den Mittelwert zu berechnen
\item Bewegungen werden verschmiert
\end{itemize}
\color{black}
\paragraph*{Aufgabe 3}
Beschreiben Sie eine weitere Methode zur Rauschreduktion. Diskutieren Sie dabei Vor- oder Nachteile!
\color{blue}
Wiener-Filter
Vorteile:
\begin{itemize}
\item Bessere Ergebnisse als ein Mittelwert-Filter
\item Bewegungen werden nicht verschmiert, da nur ein Bild ben<65>tigt wird
\end{itemize}
Nachteile:
\begin{itemize}
\item Mathematisch aufwendiger
\item Abh<62>ngig von Annahme der Rauschart
\end{itemize}
\color{black}
\subsubsection{Histogramm Spreizung}
Pixel k<>nnen in unserer Anwendung Werte von $I_k(x,y) \in \{ 0, \ldots , 255 \}$ annehmen. Dieser Wertebereich wird nicht zwangsl<73>ufig ausgenutzt. Um das zu <20>ndern, soll eine Histogramm Spreizung auf den Helligkeitsinformationen der Pixel durchgef<65>hrt werden.
@@ -56,8 +111,33 @@ I_V^{\textnormal{new}}(x,y) = \frac{I_{V}(x,y) - \min I_{V}}{\max I_{V} - \min I
Geben Sie Ihren Code an und beschreiben Sie ihn. Geben Sie nur relevante Code Bereiche an!
\lstset{caption={Vorverarbeitung, Aufgabe 4}}
\begin{lstlisting}
# Your code!
def _212_HistogrammSpreizung(self, img):
# Convert brg image to hsv image
hsv_image = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# Get hsv parts
h, s, v = cv2.split(hsv_image)
# Calc histogram spread
v = cv2.equalizeHist(v)
# Merge histogram spread to image
hsv_stretched = cv2.merge([h, s, v])
# Convert hsv image to brg and store result to member variable
self.middle_value_picture = cv2.cvtColor(hsv_stretched,
cv2.COLOR_HSV2BGR)
# Return brg result image
return self.middle_value_picture
\end{lstlisting}
\paragraph*{Aufgabe 5}
Warum ist es sinnvoll, den gesamten Wertebereich f<>r die Darstellung von Videos in Multimedia-Anwendungen auszunutzen?
Warum ist es sinnvoll, den gesamten Wertebereich f<>r die Darstellung von Videos in Multimedia-Anwendungen auszunutzen?
\color{blue}
Damit wird der Kontrast des Bildes verbessert. Das kann eine Hilfe beim
Schwellwertverfahren sein.
\color{black}