In diesem Projekt ist ein Fahrzeug in der Lage, selbstständig durch einen Kurs zu fahren. Die Entscheidung über den Lenkwinkel wird durch Kamerabilder getätigt. Hierzu wurden zunächst manuell einige Runden mit dem Fahrzeug über die Strecke gefahren um Trainingsdaten zu sammeln. Anschließend wurde ein neuronales Netz trainiert, das in der Lage ist, zu einem einkommenden Kamerabild einen Lenkwinkel vorzuschlagen. Ein Video und die detailliertere Beschreibung des Projektes finden sich weiter unten.
Das simulierte Fahrzeug besitzt 3 Kameras, eine links, eine mittig und eine an der rechten Seite platziert. Um Trainingsbilder zu sammeln, wurde manuell mit dem Fahrzeug um die Teststrecke gefahren, wobei die Kameras Bilder aufnahmen. Dabei wurde auch der Lenkwinkel aufgezeichnet. Auf Basis dieser Bilder soll ein CNN erstellt werden, das in der Lage ist, abhängig von der Straßenbegrenzung einen Lenkwinkel vorzuschlagen. Um beim Training des Modells störende Umwelteinflüsse, wie Bäume, Himmel und Teile des Fahrzeugs, nicht zu berücksichtigen, wurden die Trainingsbilder beschnitten.
Da es sich bei der Strecke um einen Rundkurs handelte, lagen deutlich mehr Bilder mit einem negativen Lenkwinkel (nach links) vor. Daher wurde die Strecke erneut in entgegengesetzte Richtung gefahren. Die Trainingsdaten zeigten so eine regelrechte Verteilung von negativen und positiven Lenkwinkeln. Zusätzlich wurden Bilder verschiedener Fahrbeläge bzw. Bodenunebenheiten und von Fahrspuren ohne Spurmarkierungen aufgenommen. Bei Untersuchung der Trainingsdaten zeigt sich so etwa eine gleiche Verteilung von Einlenkmanöver in linke und in rechte Richtung.
Das implementierte neuronale Netz besteht aus drei Convolutional Ebenen, gefolgt von Pooling Ebenen zum Reduzieren der Größe. Auf die Feature Extraktion folgen 4 lineare Ebenen mit eingeschobenen Dropout Ebenen, wobei die letzte Ebene einen Lenkwinkel ausgibt. Mit diesem Netz kann das Fahrzeug den Kurs autonom fahren und einen Abstand zum Fahrbahnrand halten.