Skip to content
Snippets Groups Projects
Commit abd9fd44 authored by Jan Wille's avatar Jan Wille
Browse files

deep learning

parent 42a8218f
Branches
No related tags found
No related merge requests found
......@@ -70,3 +70,7 @@ Jetson
Nano
image
fehlklassifiziert
Deep-Learning
Convolutional
Deep-Learning-Methoden
unterschdilcihsten
No preview for this file type
......@@ -98,7 +98,8 @@
plural={Bildkoordinaten},
description={
Ein 3D-Koordinatensystem, das die gesamte Scene/Welt des derzeitigen Systems umfasst.
}
},
sort={koordinaten-welt}
}
\newglossaryentry{Objekt-coords}{
......@@ -108,7 +109,8 @@
description={
Ein 3D-Koordinatensystem welches relativ zum Fahrzeug/Objekt liegt. Es bewegt sich mit dem Fahrzeug und hat seinen Uhrsprung im/nahe am
Fahrzeug.
}
},
sort={koordinaten-fahrzeug}
}
\newglossaryentry{Bild-coords}{
......@@ -118,7 +120,8 @@
description={
Ein Koordinatensystem welches die sicht der Kamera Widerspiegelt. X- und Y-Koordinaten korrospondieren dabei zu pixelkoordinaten und die
Z-Achse stellt die Entfernung zur Kamera dar.
}
},
sort={koordinaten-bild}
}
\newglossaryentry{ROI}{
......
......@@ -37,6 +37,7 @@
\label{fig: genersich}
\end{figure}
\pagebreak
Bei den sogenannten Features handelt es sich um spezifische, möglichst eindeutige Muster im Bild. Im Fall von Fahrspurmarkierungen sind
dies meist Kannten und Ecken ebendieser. Häufig wird hier der \gls{canny} eingesetzt, der von John Canny
\cite{Canny:computationAlapproachEdgeDetection} entwickelt wurde. Dieser Algorithmus ist sehr gut zum Identifizieren von Kantenpixeln
......@@ -60,41 +61,40 @@
Transformation wurde aber bereits im Voraus als zu rechenintensiv ausgeschlossen.
\subsection{Deep Learning Ansätze}
Alternativ zu den traditionellen Ansätzen gibt es die neuen Deep Learning Methoden. Hier werden sogenannte \emph{Convolutional Neural
Networks} (kurz \emph{CNN}) verwendet. Diese Netzwerke bestehen aus mehreren Schichten, welche von einem Eingangsbild nacheinander
durchlaufen werden.
\todo[inline]{
Was ist das? \\
Warum hier nicht? \\
Was ist ungeeignet?
}
% \section{Lochkamera Modell} \label{sec: pinhole model}
% \begin{align} \label{eq: camera}
% \begin{pmatrix}
% u \\ v \\ 1
% \end{pmatrix}
% &=
% \begin{pmatrix}
% f_x & 0 & c_x \\
% 0 & f_y & c_y \\
% 0 & 0 & 1 \\
% \end{pmatrix}
% \begin{pmatrix}
% r_{11} & r_{12} &r_{13} & t_1 \\
% r_{21} & r_{22} &r_{23} & t_2 \\
% r_{31} & r_{32} &r_{33} & t_3 \\
% \end{pmatrix}
% \begin{pmatrix}
% x \\ y \\ z \\ 1
% \end{pmatrix}
% \\
% p &= K \cdot T[RT] \cdot
% \end{align}
\subsection{Deep-Learning Ansätze}
Alternativ zu den traditionellen Ansätzen wird in den letzten Jahren vor allem an den sogenannten Deep-Learning-Methoden geforscht. Hier
werden Neurale Netze verwendet, um Lösungen für besonders schwierigen Situationen wie extremen Lichtverhältnissen oder stark verwitterte
Spurmarkierungen zu finden.
Diese Netzwerke können mittels eines großen Datensatzes an Bildern trainiert werden, um unter unterschiedlichsten, unvorhersehbaren
Bedingungen noch Ergebnisse zu erhalten. Dabei gilt, je größer und vielfältiger der Trainingsdatensatz, umso wahrscheinlicher erzielt das
trainierte Netzwerk gute Ergebnisse. \cite{survey:deepLeraningInLanemarkerdetection} vergleicht frei verfügbare Datensätze und liefert
eine Übersicht für welche Anwendungen diese sich eigen.
Der generelle Detektierungsablauf ist auch bei Deep-Learning-Methoden der in \autoref{fig: genersich} dargestellte. Je nach Methode und
Netzwerk können aber mehrere Schritte vom selben Netzwerk erledigt oder mehrere Netzwerke für die einzelnen Schritte verwendet werden.
In den letzten Jahren wurden unterschiedlichste Arten von Neuralen Netzen für die Detektion von Spurmarkierungen entwickelt und erprobt.
Vier unterschiedliche Netzwerkarten, deren Verwendungszweck und Vorteile, sowie ein Vergleich der Ergebnisse ist in
\cite{review:landeDetectionMethodes-deepLearning} nachzulesen. Dort wurden Genauigkeiten von $97\,\percent$ erreicht, allerdings war die
Generalisierung der getesteten Modelle nicht immer zuverlässig.
Der in \cite{survey:deepLeraningInLanemarkerdetection} erstellte Vergleich kommt zu sehr ähnlichen Ergebnissen. Zusätzlich wurde hier die
Performance der Netzwerke untersucht und angegeben, wie viele Bilder pro Sekunde verarbeitet werden können. Hier haben sich einige
Methoden als sehr viel schneller herausgestellt.
\medskip
Ein großer Nachteil aller Deep-Learning-Methoden ist die benötigen hohe Rechenleistung. Bereist das Training der Netzwerke erfordert einen
existierenden, ausreichen großen Datensatz und viel Zeit und Rechenleitung. Aber auch zur Nutzung der fertig trainierten Netzwerkes ist
wieder einiges an Rechenleitung notwendig. Hier kann zwar die GPU zu Hilfe genommen werden, es ist aber ein Nachteil gegenüber den
traditionellen Ansätzen.
Dies ist insbesondere für den Anwendungsfall dieser Arbeit ein Problem. Die Ressourcen des JetBots sollen so wenig wie möglich belastet
werden, damit dieses mit weiten Anwendungen geteilt werden können. Da einige potenzielle Anwendungen auf die Verwendung von Neuralen
Netzen angewehten sind, ist insbesondere die GPU sehr sparsam zu benutzen.
Daher ist für diese Arbeit die Verwendung von Deep-Learning nicht sinnvoll und findet keine Anwendung.
\section{OpenCV} \label{sec: opencv}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment