Lückenbehandlung bei der Spurerkennung: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 21: Zeile 21:
=== Einlesen in Endlosschleife ===
=== Einlesen in Endlosschleife ===
Die Anforderungen die Daten in einer Endlosschleife einzulesen wird durch den folgenden Quellcode erfüllt.
Die Anforderungen die Daten in einer Endlosschleife einzulesen wird durch den folgenden Quellcode erfüllt.
[Datei:DSB1.png]
[[Datei:DSB1.png]]
=== Fahrspurerkennung ===  
=== Fahrspurerkennung ===  



Version vom 7. Juni 2014, 16:14 Uhr

Autor: Tim Salinski
Betreuer: Prof. Schneider

Motivation

Der Rundkurs bei Carolo Cup weist zahlreiche Fehlstellen auf. Während dieser soll das Fahrzeug weiterhin in der korrekten Spur fahren.

Ziel

Korrekte Fahrspurerkennung trotz Fehlstellen.

Aufgabe

  1. Zeichnen Sie die Kamerasicht eines Rundkurses mit Fehlstellen auf.
  2. Lesen Sie diesen als Endlosschleife in Matlab ein.
  3. Optimieren Sie die Fahrspurerkennung, so dass Fehlstellen überbrückt werden.
  4. Optimieren Sie die Laufzeit des Algorithmus.

Lösung

Setup vor Ausführung

Das Verarbeiten von Videodateien ist in Matlab immer mit größerem Aufwand von Rechenzeit und Speicherplatz verbunden, da diese unkomprimiert große Matrizen füllen. Um dem etwas entgegenzuwirken existiert das Skript "DSB_Aufgabe_Setup". Damit ist es möglich das Video "Lueckenerkennung" in seine einzelnen Frames zu zerlegen und diese unter "Lueckenerkennung_Frames" zu speichern. Dabei erhalten die Frames durchnummerierte Names in der Form "Frame_0000", sodass sie im weiteren Verlauf einfach geladen werden können. Alle Frames zusammen verbrauchen zwar mehr Speicher als das Video selbst aber auf diese Weise kann bei der weiteren Verarbeitung Rechenzeit gespart werden, da eine Bilddatai schneller geladen werden kann als ein Frame aus der Videodatei. Unter echten Bedingungen würden solche Ladezeiten komplett entfallen, weil die Daten direkt von der Kamera verwendet werden können und nicht auf der Festplatte zwischengespeichert werden müssen.

Einlesen in Endlosschleife

Die Anforderungen die Daten in einer Endlosschleife einzulesen wird durch den folgenden Quellcode erfüllt.

Fahrspurerkennung

Laufzeitbetrachtung

Siehe auch

Weblinks

Carolo Cup 2013 (TU Braunschweig)


→ zurück zum Hauptartikel: Digitale Signal- und Bildverarbeitung SoSe2014