SoSe24 - Praktikum Systementwurf - Spurerkennung mit Kamera (Modul OSE): Unterschied zwischen den Versionen
Zeile 80: | Zeile 80: | ||
=== Aufgabe 9.2: Segmentierung der Fahrbahnmarkierungen === | === Aufgabe 9.2: Segmentierung der Fahrbahnmarkierungen === | ||
Spurkandidaten F040.png | |||
[[Datei:Spurkandidaten F040.png|400px|thumb|right|Abb. 3: Geradeausfahrt]] | |||
[[Datei:Rundkurs IPT markiete Segmente.png|400px|thumb|right|Abb. 3: Segmentierung der Fahrspuren]] | [[Datei:Rundkurs IPT markiete Segmente.png|400px|thumb|right|Abb. 3: Segmentierung der Fahrspuren]] | ||
# Laden Sie das Bild <code>Spurkandidaten_F040. | # Laden Sie das Bild <code>Spurkandidaten_F040.png</code>. | ||
# Segmentieren Sie aus dem Kantenbild die rechte Fahrbahnmarkierungen | # Segmentieren Sie aus dem Kantenbild die rechte Fahrbahnmarkierungen | ||
## rechter Fahrbahnrand (Gelb) | ## rechter Fahrbahnrand (Gelb) |
Version vom 17. Juni 2024, 09:39 Uhr
![](/wiki/images/c/c1/PolynomVorKalman.gif)
Autor: | Prof. Dr.-Ing. Schneider |
Thema: | Spurerkennung mit Kamera (OSE) |
Workshoptermin 9: | 20.06.2024 |
Lernzielkontrolle 3: | 04.07.2024 |
Einleitung
Die Workshops im SDE Praktikum sollen die Studierenden das praktische Arbeiten in einem Mechatroniklabor im Bereich modellbasierte Entwicklung mit MATLAB/Simulink und DSpace Hardware DS1104/ControlDesk vermitteln. Der Umgang soll in der Selbstlernzeit geübt werden.
Im Projekt OSE werden Objekte mit dem LiDAR-Sensor erkannt und verarbeitet sowie die Fahrspur mit der Kamera. Dieser Workshop fokussiert die Spurerkennung sowie die Bildung und des Spurpolynoms.
Lernziele
Nach erfolgreicher Teilnahme am Workshop:
- können Sie die intrinsischen und extrinsischen Parameter einer Kamera bestimmen.
- können Sie eine Inverse Perspektiventransformation durchführen.
- können Sie Fahrbahnmarkierungen segmentieren.
- können Sie das Spurpolynom maßstabsgetreu bestimmen.
Bewertung
Die Bewertung erfolgt im Rahmen der Lernzielkontrolle 3.
Voraussetzungen
- Für den Workshop benötigen Sie MATLAB/Simulink in der Version 2019b.
- Studieren Sie die Praktikumsordnung.
- Die unter Vorbereitung aufgeführten Aufgaben sind vor dem Workshoptermin vorzubereiten. Der Workshop baut auf Ihre Vorbereitung auf.
Der Workshop setzt nachfolgende Kenntnisse voraus:
- die Grundlagen der Programmierung,
- der Umgang mit der Versionsverwaltung SVN und
- der Umgang mit MATLAB/Simulink.
- der Grundlagen der Digitalen Signal- und Bildverarbeitung:
- Lektion 2: Koordinatentransformationen
- Lektion 7: Kantenerkennung und Rauschunterdrückung
- Lektion 8: Datengetriebene Segmentierung
Ablauf des Praktikums
Uhrzeit | Agenda | Form |
---|---|---|
8:15 | Begrüßung | Moderation durch Marc Ebmeyer |
8:20 | Bearbeitung der Aufgaben (vgl. Tabelle 2) | Gruppenarbeit |
10:00 | Statusbericht der Teams | max. 5 Min. pro Team |
10:25 | Verabschiedung | Moderation durch Marc Ebmeyer |
10:30 Uhr | Veranstaltungsende |
Vorbereitung
Aufgabe 9.1: Vorbereitung der Kamera
![](/wiki/images/thumb/7/77/CameraCalibratorApp.jpg/400px-CameraCalibratorApp.jpg)
Um eine Kamera sinnvoll zur Spurerkennung einsetzen zu können, muss diese zuvor kalibriert werden.
- Studieren Sie die zugehörigen Wiki-Artikel und arbeiten Sie sich in die Camera Calibrator App von MATLAB® ein.
- Führen Sie die Kamera-Kalibrierung mit MATLAB® durch. Verwenden Sie hierzu eigene Bilder einer eigenen Kamera (möglichst mit Weitwinkellinse).
- Identifizieren Sie extrinsische und intrinsische Parameter.
- Machen Sie ein Foto eines vermessenen Aufbaus.
- Transformieren Sie einen vermessenen Punkt von Weltkoordinaten in Bildkoordinaten und umgekehrt.
- Dokumentieren Sie Ihren Versuchsaufbau, die Durchführung und Ergebnisse.
Links
Arbeitsergebnisse:
- Extrinsische Kameraparameter:
- Intrinsische Kameraparameter: k-Matrix
- kalibrierte Kamerabilder
Aufgabe 9.2: Segmentierung der Fahrbahnmarkierungen
Spurkandidaten F040.png
![](/wiki/images/thumb/6/67/Spurkandidaten_F040.png/400px-Spurkandidaten_F040.png)
![](/wiki/images/thumb/5/5a/Rundkurs_IPT_markiete_Segmente.png/400px-Rundkurs_IPT_markiete_Segmente.png)
- Laden Sie das Bild
Spurkandidaten_F040.png
. - Segmentieren Sie aus dem Kantenbild die rechte Fahrbahnmarkierungen
- rechter Fahrbahnrand (Gelb)
- Mittelspur (Rot) und
- linker Fahrbahnrand (Grün).
- Zeigen Sie die Segmente farbig im Video an.
- Verifizieren Sie Ihren Segmentierungsalgorithmus
Eingangsdatei: SVN: Rundkurs_IPT.mp4
Arbeitsergebnis: X-Y-Daten der drei Fahrspuren für jeden Zyklus des Films segmentiereFahrbahnmarkierung.m
Aufgabe 9.3: Spurpolynom
![](/wiki/images/thumb/6/6e/Rundkurs_IPT_Polynom.jpg/400px-Rundkurs_IPT_Polynom.jpg)
- Bestimmen Sie für die drei Spuren die Spurpolynome 2. Ordnung mit
polyfit
. - Ersetzen Sie
polyfit
durch die einfache Polynomapproximationinterpoliere_weg.m
. - Berechnen Sie aus dem Spurpolynom die drei Fahrspuren.
- Blenden Sie die drei Fahrspuren im Videobild ein.
Demo: https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/Demos/Lane_Tracking
Arbeitsergebnis: Spurpolynome für jeden Zyklus des Films, Visuelle Überprüfung durch Einblendung in das Video zeigeSpurpolynom.m
Durchführung
Themen der Teams
# | Thema | Teilnehmer |
---|---|---|
1 | 9.4 Kamerakalibrierung | Oliver Scholze, Niklas Reeker |
2 | 9.5 Inverse Perspektiventransformation (IPT) | Benjamin Dilly, Kevin Mudczinski |
3 | 9.6 Referenzwerte | Xiangyao Liu, Yuhan Pan |
4 | 9.7 Segmentierung der Fahrbahnmarkierungen | Johann Kismann, Dominik König |
5 | 9.8 Spurpolynom | Louis Holtapel, Can Nen |
6 | 9.9 Spurparameter (Empfangsseite) | David Weigt, Yunkai Lin |
Aufgabe 9.4: Kamerakalibrierung
- Messen Sie die extrinsische und intrinsische Parameter der Kamera mit der MATLAB® Camera Calibrator App.
- Machen Sie eine Aufzeichnung mit der Kamera von der Geraden bis in die erste Kurve. Steuern Sie den Wagen mit der Fernbedienung.
- Geben Sie die validierten Parameter und das aufgezeichnete Video
Spurerkennung.mp4
an Gruppe 2 weiter. - Vergleichen Sie Ihr Ergebnis mit der Dokumentation im HSHL-Wiki.
- Stellen Sie Ihre extrinsische und intrinsische Parameter vor und diskutieren Sie diese.
- Bewerten und verbessern Sie den Wiki-Artikels zur Kalibrierung der Kamera.
Arbeitsergebnisse:
- Versuchsprotokoll
Kamerakalibrierung.docx
- Extrinsische und intrinsische Kameraparameter
- Video mit kalibrierter Kamera:
Spurerkennung.mp4
- Wiki Artikel für die Kalibrierung extrinsischer und intrinsischer Kameraparameter
Aufgabe 9.5: Inverse Perspektiventransformation (IPT)
- Studieren Sie den Artikel zur Inversen Perspektiventransformation mit MATLAB®.
- Beschreiben Sie die Eingangsparameter. Nutzen Sie die Parameter von Gruppe 1.
- Beschreiben Sie die Ausgangsparameter.
- Wenden Sie die IPT auf das Video
Rundkurs.mp4
an. - Bewerten Sie Ihr Ergebnis und aktualisieren Sie ggf. den Wiki-Artikel.
- Konvertieren Sie mittels IPT das Video
Spurerkennung.mpg
.
Eingangsdateien: SVN: Rundkurs.mp4, Spurerkennung.mp4
Arbeitsergebnisse:
- Versuchsprotokoll
InversePerspektiventransformation.docx
- Transformiertes Video
Spurerkennung_IPT.mp4
- Dokumentation im Wiki (Verlinken Sie hier Ihr Ergebnis.)
Aufgaben 9.6: Referenzmessung
- Bestimmen Sie die realen Spurparameter a, b, c für die Gerade.
- Bestimmen Sie die realen Spurparameter a, b, c für die erste Linkskurve.
Arbeitsergebnisse:
- Versuchsprotokoll
Referenzmessung.docx
- m-File zur Darstellung der Ergebnisse
- Ergebnisdatei
Referenzmessung.mat
- Dokumentation im Wiki: Praktikum Systementwurf : Referenzmessung für das Spurpolynom
Aufgaben 9.7: Segmentierung der Fahrbahnmarkierungen
- Segmentieren Sie die Fahrspuren aus dem Video
Spurerkennung_IPT.mp4
. - Segmentieren Sie aus dem Kantenbild die 3 Fahrbahnmarkierungen
- rechter Fahrbahnrand (Gelb)
- Mittelspur (Rot) und
- linker Fahrbahnrand (Grün).
- Zeigen Sie die Segmente farbig im Video an.
Eingangsdateien: Spurerkennung_IPT.mp4
Arbeitsergebnisse:
- Versuchsprotokoll
Segmentierung_der_Fahrbahnmarkierungen.docx
- X-Y-Daten der drei Fahrspuren für jeden Zyklus des Films
segmentiereFahrbahnmarkierung.m
alsFahrbahnsegmente.mat
Aufgaben 9.8: Spurpolynom
- Bestimmen Sie für die drei Spuren die Spurpolynome 2. Ordnung mit
interpoliere_weg.m
. - Berechnen Sie aus dem Spurpolynom die drei Fahrspuren metrisch im Fahrzeugkoordinatensystem.
- Blenden Sie die drei Fahrspuren im Videobild ein.
Eingangsdateien: Spurerkennung_IPT.mp4
Arbeitsergebnisse:
- Spurpolynome für jeden Zyklus des Films, Visuelle Überprüfung durch Einblendung in das Video
zeigeSpurpolynom.m
- Versuchsprotokoll
Spurpolynom.docx
- Spurpolynom als
Spurpolynom.mat
- Dokumentation im Wiki (Verlinken Sie hier Ihr Ergebnis.)
Aufgaben 9.9: Spurparameter (Sende-/Empfangsseite)
- Nutzen Sie die Spurerkennung auf dem Fahrzeug. Betrachten Sie die Gerade und die erste Kurve.
- Vergleichen Sie die Spurparameter der Sendeseite mit der Referenz
Referenzmessung.docx
. - Vergleichen Sie die Spurparameter der Empfangsseite mit der Referenz
Referenzmessung.docx
. - Analysieren Sie ggf. Abweichungen und korrigieren Sie diese.
Arbeitsergebnisse:
- Versuchsprotokoll
Validierung_der_Spurparameter.docx
- Dokumentation im Wiki
Nützlicher Link
- Allgemeine Anforderungen an ein Versuchsprotokoll
- MATLAB®-Skript, welches die Messung in eine Auswertedatei umwandelt: funktion_wandle_dspacemess_in_CCF_mess.m
→ zurück zum Hauptartikel: Praktikum SDE | SDE-Team 2024/25