This is an archived version of the Machine Learning Lab website for documentation purposes. The host is in no way affiliated with the University of Freiburg, its Faculty of Engineering or any of its members.

NeuroRacer: Beating humans in slot-car racing

See here for pictures of the NeuroRacer in our gallery.

Hardware

ceiling camera

USB control

Software

screenshot of the vision system

Die Bildverarbeitung erkennt das Fahrzeug im Kamerabild anhand von Farb- und Form-Eigenschaften. Sie erfolgt in mehreren Schritten:

  1. Farbsegmentierung: Im ersten Schritt wird eine Farbsegmentierung durchgeführt. Dabei wird jedem Pixel aufgrund seines Farbwertes im RGB-Farbraum durch eine konstante Funktion Graph eine Farbklasse Graph zugeordnet. Für die Ermittlung der Funktion Graph wird dazu in einem separaten Schritt, vor Beginn des Bildverarbeitungsprozesses, ein Teilbereich des HSI-Farbraums ausgewählt, dem die Farbklasse Graph entsprechen soll. Anhand dieser Auswahl wird dann eine Nachschlagetabelle gebildet, in der die diskrete Funktion gespeichert ist.
  2. Kettencodierung: Im zweiten Schritt werden Farbsegmente aus Pixeln der gleichen Farbklasse mit Hilfe eines Kettencodes (freeman1961encoding) zu Regionen zusammengefasst und deren Eigenschaften wie Größe, Schwerpunkt und Kompaktheit bestimmt. Diese Eigenschaften werden für den nächsten Schritt benötigt.
  3. Tracking: Zu Beginn des Tracking-Prozesses wird einmalig vom Benutzer eine der oben beschriebenen Regionen als Prototyp ausgewählt und deren Eigenschaften vom Modul gespeichert.In allen folgenden Tracking-Schritten wird dann durch Annahmen über die Bewegung (nach Sethi1987finding) sowie einen Vergleich der gespeicherten, prototypischen Eigenschaften, mit denen der gerade sichtbaren Regionen, die Region mit der größten Ähnlichkeit zum Prototyp ausgewählt. Über die Zeit werden Eigenschaften des Prototyps denen der letztendlich ausgewählten Region angepasst, um auch sich leicht (perspektivisch) verändernde Objekte weiterhin verfolgen zu können.
  4. Orientierungsbestimmung: Im letzten Schritt wird das kleinstmöglich umschließende Rechteck um die zu verfolgende Region ermittelt (freeman1975determining). Damit lassen sich zusätzliche Eigenschaften wie Orientierung und Seitenverhältnis bestimmen. Dieser Schritt ist optional und kann dazu verwendet werden, die Objektverfolgung durch den Vergleich weiterer Eigenschaften zu stabilisieren.

Schedule

Industrial Partners

People

Researchers working in our team:

  • Prof. Dr. Martin Riedmiller
  • Sascha Lange
  • Tim Kietzmann
  • Christian Müller

Publications

Contact

For more information on this research project, please contact Martin Riedmiller.