Objekterkennung mit LiDAR

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

Autor: Peng

Aufgabenstellung

  1. Einarbeitung in dier bestehende Software
  2. Softwareentwurf in MATLAB
    1. Meilenstein 1:
    2. Ansteuerung des Hokuyo LiDAR
    3. Koordinatentransformation polar- zu karthesisch
    4. Testdokumentation der KOS-Trafo
    5. Objektbildung (z.B. Sukzessiv Edge Following)
    6. Testdokumentation der Objektbildung
    7. Meilenstein 2:
    8. Objekttracking (mit Kalman-Filter)
    9. Testdokumentation des Objekttrackings
    10. Attribute schätzen: v, a, B, T, Güte (s. Schnittstellendokument)
    11. Testdokumentation der Attribute mit Referenz
    12. Dokumentation im Wiki
  3. Softwareentwurf in C
    1. Meilenstein 3:
    2. Ansteuerung des LiDAR
    3. Koordinatentransformation polar- zu karthesisch
    4. Testdokumentation der KOS-Trafo
    5. Objektbildung (z.B. Sukzessiv Edge Following)
    6. Testdokumentation der Objektbildung
    7. Meilenstein 4:
    8. Objekttracking (mit Kalman-Filter)
    9. Testdokumentation des Objekttrackings
    10. Attribute schätzen: v, a, B, T, Güte (s. Schnittstellendokument)
    11. Testdokumentation der Attribute mit Referenz
    12. Testoberfläche in Control Desk
    13. Dokumentation im Wiki

Softwareentwurf in MATLAB

Ansteuerung des LiDAR Hokuyo URG-04LX

Der VerbindungsCode in Matlab wird in SVN schon gefunden. Aber wird es beachtet, dass die Nummer des verwendeten seriellen COM Ports angepasst werden muss, damit dieses funktioniert.

% Stelle Verbindung mit LiDAR her
stComport='COM6';
SetupLidar;

Durch das Anrufsprogramm "LidarScan" wird der Radius erhalten.

% Das Resultat von LidarScan
[rangescan]=LidarScan(lidar);

Koordinatentransformation polar- zu kartesisch

Da der Laserscanner nur Polarkoordinaten ausgibt, ist es notwendig, diese in Kartesische Koordinaten zu transformieren, um die Figur darzustellen. Die folgend mathmatische Funktion wird im Programm verwendet.

Wegen des Einheit in Meter wird die Einheit im Programm umgerechnet.

% Das Koordinatenparameter in m
x(cnt)=rangescan(cnt)*sin(phi_rad(cnt))/1000;
y(cnt)=rangescan(cnt)*cos(phi_rad(cnt))/1000;

Koordinatentransformation LiDARfest zu Fahrzeugfest

Um das Hindernis zu vermeiden, wird LiDARfest in Fahrzeugfest transformiert. Für den weiteren Verlauf wird das Koordinatensystem auf das Fahrzeug übertragen. Hierzu werden folgende Werte:

  • Index: L (LiDARfest)
  • Einheit/Skalierung: m
  • Ursprung: Mitte
  • x-Achse: nach links/rechts
  • y-Achse: nach oben/unten
  • z-Achse: keine vorhanden

auf das folgende Koordinatensystem transformiert:

Fahrzeugfestes KOS

  • Index: K (körperfest, karosseriefest)
  • Einheit/Skalierung: mm
  • Ursprung: Mitte Vorderkante des vorderen Stoßfängers des Fahrzeugs (z = 0)
  • x-Achse: nach vorne (im Sinne der Hauptfahrtrichtung)
  • y-Achse: nach links
  • z-Achse: nach oben

Softwareentwurf in C++

Getting started


→ zurück zum Hauptartikel: SDE Praktikum Autonomes Fahren