diff --git a/.vscode/ltex.hiddenFalsePositives.de-DE.txt b/.vscode/ltex.hiddenFalsePositives.de-DE.txt
index 6a66312ad8dbf8482464793dca80e1a078bd0000..e26a6e952aada689cd032359150e38f645ccd86a 100644
--- a/.vscode/ltex.hiddenFalsePositives.de-DE.txt
+++ b/.vscode/ltex.hiddenFalsePositives.de-DE.txt
@@ -21,3 +21,4 @@
 {"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QDieser wird dann als Message veröffentlicht und an alle Abonnenten des Dummies verschickt.\\E$"}
 {"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QJede \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q kann eigene Informationen als sogenannte Dummies veröffentlichen und andere, parallel laufende Dummies können diese abonnieren.\\E$"}
 {"rule":"DOPPELTES_AUSRUFEZEICHEN","sentence":"^\\QROS's ??\\E$"}
+{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QDieses kann unter dem \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q /img/temp abgerufen und live angeschaut werden.\\E$"}
diff --git a/Bachelorarbeit.pdf b/Bachelorarbeit.pdf
index 8db99803bc673a39e657c15cc676600b671693c4..402464fbfce5b54eba19f02f9e592dc4aca61577 100644
Binary files a/Bachelorarbeit.pdf and b/Bachelorarbeit.pdf differ
diff --git a/chap/implementation.tex b/chap/implementation.tex
index 9d5e313a99c576c4ed6f395ba86c41b4ff767b5b..9e25ab0ac8ac6e6f743889f2d4ab6608e5c30e63 100644
--- a/chap/implementation.tex
+++ b/chap/implementation.tex
@@ -607,6 +607,8 @@
 			Auch die Bildung von Linienpaaren aus einer rechten und linken Linie Erfolg analog zu \gls{python}. Hier gibt es auch keine großartigen
 			Unterschiede in der Umsetzung, wie \autoref{code: pairing c++} zu sehen ist.
 
+			Auch hier wird mit den gefundenen Paaren wieder ein Linienmarker-Objekt erzeugt und zur oberen Nutzung abgespeichert.
+
 			\begin{lstlisting}[
 				float,
 				style=example,
@@ -631,41 +633,48 @@
 				}
 			\end{lstlisting}
 
+			Da noch nicht klar ist, wie genau die gefundenen Daten potenziell zukünftigen Prozessen zu Verfügung gestellt werden sollen, werden diese
+			zurzeit nicht veröffentlicht. Stadtmessen wird analog zur Python-Implementierung ein Bild mit eingezeichneten Spurmarkern erzeugt und als
+			visuelles Ergebnis zur Verfügung gestellt. Dieses kann unter dem \gls{Topic} \lstinline{/img/temp} abgerufen und live angeschaut werden.
+
+			\bigskip
+			\todo{pagebreak?}
+
 
 		\subsection{Performance Betrachtung}
 
 			Mit dieser zusätzlichen \gls{ROS Node} ist es erneut interessant, wie sich diese auf die Performance auswirkt. Aus \autoref{sec: intrinsic}
-			ist ja bereits die Performance mit laufender Kamera- und Entzerrer-Node bekannt. Zum Vergleich wurde wieder die Systemauslastung,
-			insbesondere die der CPU, mit dem Programm jtop aufgenommen. Dies ist in \autoref{fig: jtop markings} Abgebildet.
+			ist ja bereits die Performance mit laufender Kamera- und Entzerrer-Node bekannt. Zum Vergleich wurde wieder die Systemauslastung mit dem
+			Programm \lstinline{jtop} aufgenommen und die Durchlaufzeit nach Erhalt eines Bildes gemessen.
 
 			\begin{figure}
+				\includegraphics[width=.6\textwidth, trim={0 0 12px 31px}, clip]{img/jtop_cameraUndistortDetection.png}
 				\caption{CPU Auslastung des JetBots mit laufender Kamera, Entzerrung und Markierungserkennung}
 				\label{fig: jtop markings}
 			\end{figure}
 
+			Ein Screenshot von \lstinline{jtop} ist in \autoref{fig: jtop markings} abgebildet. Mit der zusätzlichen neuen \gls{ROS Node} ist die CPU
+			Auslastung nur geringfügig auf ca. $37,5\,\percent$ gestiegen, auch dies ist dank starker Fluktuation in der CPU Nutzung praktisch
+			vernachlässigbar.
 
-			\todo[inline]{Robo will nicht booten...}
-
-			Die Performance der \gls{C++} implementiert ist wie erwartet deutlich besser als bei der \gls{python}-Version. Vom Erhalt des Bildes bis
-			zur Veröffentlichung des Ergebnisses mit den gefundenen Linienmarkierungen dauert es
-
+			Die Laufzeit-Performance der \gls{C++} implementiert ist wie erwartet deutlich besser als bei der \gls{python}-Version. Vom Erhalt des
+			Bildes bis zur Veröffentlichung des Ergebnisses mit den gefundenen Linienmarkierungen dauert es $\approx 3,46\,\ms$.
 
 			\begin{table}
 				\caption{Gemessene Laufzeit bei 10 Durchläufen der \gls{Callback}}
 				\begin{tabular}{r|S}
 					Durchlauf Nr. & \multicolumn{1}{c}{gemessene Laufzeit} \\\hline
-					1             & 3,885214 \,\ms                         \\
-					2             & 4,068192 \,\ms                         \\
-					3             & 3,968679 \,\ms                         \\
-					4             & 3,711925 \,\ms                         \\
-					5             & 3,969982 \,\ms                         \\
-					6             & 4,085944 \,\ms                         \\
-					7             & 4,024673 \,\ms                         \\
-					8             & 3,897130 \,\ms                         \\
-					9             & 3,752863 \,\ms                         \\
-					10            & 4,095999 \,\ms                         \\
+					1             & 5,049744 \,\ms                         \\
+					2             & 5,049744 \,\ms                         \\
+					3             & 5,186416 \,\ms                         \\
+					4             & 6,229117 \,\ms                         \\
+					5             & 5,328923 \,\ms                         \\
+					6             & 5,231026 \,\ms                         \\
+					7             & 6,762161 \,\ms                         \\
+					8             & 5,631071 \,\ms                         \\
+					9             & 5,309235 \,\ms                         \\
+					10            & 4,862289 \,\ms                         \\
 				\end{tabular}
-				\todo[inline]{ist die Tabelle überhaupt sinnvoll?}
 			\end{table}
 
 
diff --git a/chap/kalibrierung.tex b/chap/kalibrierung.tex
index 3b9a3d43c6727d72683586516eea579332d11eed..8602f862f3c6be1183831ba770ab791ce3293d23 100644
--- a/chap/kalibrierung.tex
+++ b/chap/kalibrierung.tex
@@ -401,19 +401,21 @@
 				wird, gemessen.
 
 				\begin{figure}
-					\includegraphics[width=.6\textwidth, trim={0 0 12px 31px}, clip]{img/jtop_camera.png}
+					\includegraphics[width=.6\textwidth, trim={0 0 12px 31px}, clip]{img/jtop_cameraUndistort.png}
 					\caption{CPU Auslastung des JetBots mit laufender Kamera und entzerrer \gls{ROS Node}}
 					\label{fig: jtop cam+undist}
 				\end{figure}
 
 				Der \lstinline{jtop} Screenshot in \autoref{fig: jtop cam+undist} zeigt die CPU Nutzung bei aktivem ROS-Core, Kameratreiber und
-				der neu erstellten Entzerrer \gls{ROS Node}. Die durchschnittliche CPU Auslastung liegt bei ungefähr $38,75\,\percent$, ist also nur
-				sehr geringfügig höher als die in \autoref{sub: performance baseline} gemessene Grundauslastung ohne die neue \gls{ROS Node}.
+				der neu erstellten Entzerrer \gls{ROS Node}. Die durchschnittliche CPU Auslastung liegt bei ungefähr $35,25\,\percent$, ist also
+				sogar sehr geringfügig niedriger als die in \autoref{sub: performance baseline} gemessene Grundauslastung ohne die neue \gls{ROS Node}.
+				Das ist aber auf die starke Fluktuation in der CPU Auslastung und daher ungenauen Messung zurückzuführen. Die Auslastung wird daher
+				als identisch betrachtete.
 
 				Um die Laufzeit der \gls{ROS Node} zu bestimmen wird die aktuelle Zeit wie sie von der Funktion \lstinline{ros::Time::now()}
 				zurückgegeben wird verwendet. Die aktuelle Zeit beim Start der \gls{Callback} wird abgespeichert. Nach Durchlauf der Funktion wird
 				erneut die aktuelle Zeit bestimmt und die Differenz in Sekunden als Debug-Nachricht ausgegeben. Die Laufzeit der \gls{ROS Node} wird
-				über einige Zeit gemittelt. Dabei ergibt sich eine Laufzeit von $\approx 3,9\,\ms$.
+				über einige Zeit gemittelt. Dabei ergibt sich eine Laufzeit von $\approx 4,07\,\ms$.
 
 				\begin{table}
 					\caption{Gemessene Laufzeit bei 10 Durchläufen der \gls{Callback}}
@@ -423,7 +425,7 @@
 						2             & 4,068192 \,\ms                         \\
 						3             & 3,968679 \,\ms                         \\
 						4             & 3,711925 \,\ms                         \\
-						5             & 3,969982 \,\ms                         \\
+						5             & 5.231026 \,\ms                         \\
 						6             & 4,085944 \,\ms                         \\
 						7             & 4,024673 \,\ms                         \\
 						8             & 3,897130 \,\ms                         \\
diff --git a/img/jtop_cameraUndistort.png b/img/jtop_cameraUndistort.png
index b2eb3d7e0d7327cbb1cecb3038200b1667a92e00..42d3a10a70b01cffae0758a15bb81fcca0a005f2 100644
Binary files a/img/jtop_cameraUndistort.png and b/img/jtop_cameraUndistort.png differ
diff --git a/img/jtop_cameraUndistortDetection.png b/img/jtop_cameraUndistortDetection.png
new file mode 100644
index 0000000000000000000000000000000000000000..a0fb2c75bdd50786ea96582428779c0e29d32673
Binary files /dev/null and b/img/jtop_cameraUndistortDetection.png differ