Skip to content
Snippets Groups Projects
README.md 3.3 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jan Wille's avatar
    Jan Wille committed
    # Aufgabenstellung Bachelorarbeit
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    ## Thema
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    Video-basierte Fahrspurerkennung von mobilen Robotern
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    ## Problemstellung
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    Auf der Projektfläche „Autonomes Fahren“ des Instituts für Konstruktionselemente, Mechatronik und Elektromobilität (IKME) der Hochschule Hannover ist
    eine große urbane Kreuzung im Maßstab 1:18 nachgebildet. Hier sollen in Zukunft automatisierte Logistikkonzepte mit mobilen Roboterfahrzeugen
    entwickelt und getestet werden. Die Roboter sind jeweils mit einer nach vorne gerichteten Videokamera ausgerüstet. Um die Fahrzeuge damit sicher
    steuern zu können, soll damit eine zuverlässige Fahrspurerkennung benötigt.
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    ## Aufgabe der Arbeit
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    Ziel der Arbeit ist es, eine echtzeitfähige Erkennung der Fahrspurmarkierungen aus dem Video-Bilddatenstrom zu realisieren und die Position der
    Markierungen relativ zum Fahrzeug anzugeben. Im eine geometrisch richtige Darstellung zu erhalten, soll zunächst eine Bestimmung der intrinsischen und
    extrinsischen Kamera-Kalibrierung durchgeführt werden. Mit den so bestimmten intrinsischen Parametern so dann eine Rektifizierung der Bilder
    durchgeführt werden.  
    Auf den rektifizierten Bildern soll dann die eigentlich Erkennung der Spurmarkierungen erfolgen. Dies kann a) kanten-basiert oder b) mit tiefen
    neuronalen Netzen erfolgen. Die extrinsische Kalibrierung soll dann genutzt werden, um die Position der Markierungen in Fahrzeug-Koordinaten
    umzurechnen. Zusätzlich kann die Farbinformation des Bildes genutzt werden um zwischen weißen und gelben Linien zu unterscheiden.  
    Gegebenenfalls kann auch das zeitliche Tracking eines Spurmodells umgesetzt werden.
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    Die Bildverarbeitung sollte unter ROS auf der Jetson-nano Hardware unter ROS in Echtzeit lauffähig sein. Eine erste Implementierung kann mit Python erfolgen. Für den längerfristigen Einsatz wäre eine Umsetzung in C++ mit ROS Nodelets wünschenswert.
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    # Umgehen mit dem Repository
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    Das Repository basiert auf [dieser Vorlage](https://lab.it.hs-hannover.de/qxx-tul-u1/latex-template-hsh). Dort befindet sich alle notwendige
    Dokumentation.
    
    Jan Wille's avatar
    Jan Wille committed
    
    
    Jan Wille's avatar
    Jan Wille committed
    Es wird sowohl der LaTeX-Quellcode, als auch die fertige PDF unter Versionskontrolle gestellt. Um die PDF selbst zu erzeugen, folgenden Befehle
    verwenden:
    
    Jan Wille's avatar
    Jan Wille committed
    ```bash
    
    Jan Wille's avatar
    Jan Wille committed
    make
    
    
    
    # Design
    
    ## Farbpalette
    
    <svg width="128.4" height="19.84" version="1.1" xmlns="http://www.w3.org/2000/svg">
      <rect x="32.1" width="32.1" height="19.84" style="fill-rule:evenodd;fill:#0d47a1"/>
      <rect x="64.21" width="32.1" height="19.84" style="fill-rule:evenodd;fill:#1b5e20"/>
      <rect x="96.31" width="32.1" height="19.84" style="fill-rule:evenodd;fill:#f57f17"/>
      <rect width="32.1" height="19.84" style="fill-rule:evenodd;fill:#b71c1c"/>
    </svg>
    
    
    Jan Wille's avatar
    Jan Wille committed
    - Rot `#B71C1C`
    - Blau `#0D47A1`
    - Grün `#1B5E20`
    - Gelb `#F57F17`
    
    Jan Wille's avatar
    Jan Wille committed
    
    # ideen:
    
    - [ ] Performance daten (CPU-Auslastung, Rechenzeit, etc.) mit echten Daten/Plot in die Arbeite aufnehmen
    - [ ] evtl. Videobeispiel mit live überlagertem Ergebnis (vor allem für Kolloc)
    
    Jan Wille's avatar
    Jan Wille committed
    - Quellen für Stand der Technik:
      - <https://www.sciencedirect.com/science/article/abs/pii/S003132032030426X>
      - <https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.695.9070&rep=rep1&type=pdf>
    
    Jan Wille's avatar
    Jan Wille committed
    
    ## Todo
    
    
    Jan Wille's avatar
    Jan Wille committed
    - [x] Paarbildung (finden von rechter+linker Kante einer Linie) -> Mittellinien
    
    Jan Wille's avatar
    Jan Wille committed
    - [ ] Transformation in Weltkoordinate
    
    Jan Wille's avatar
    Jan Wille committed
    - [x] C++ Implementierung
    - [x] Laufzeitmessung
    
    Jan Wille's avatar
    Jan Wille committed
    - [ ] Schreiben!