Prozessautomatisierung






Simultaneous Localization and Mapping (SLAM)

Eines der grundlegenden Probleme in der mobilen Robotik wird als das SLAM-Problem bezeichnet. Der Begriff "SLAM" ist ein englisches Akronym und lautet ausgeschrieben ”simultaneous localisation and mapping“.

slam-diagramm.png Was versteht man darunter? Ein Roboter erkundet ohne Vorwissen seine Umgebung und soll diese anhand von Sensordaten kartieren (mapping). Eine genaue Karte kann allerdings nur dann erstellt werden, wenn die jeweilige aktuelle Position des Roboters in der Welt genau bekannt ist (localization). Diese genaue Lokalisierung in der Umwelt ist wiederum nicht ohne eine genaue Karte möglich. Aufgrund dieser beiden, nicht getrennt voneinander zu lösenden Anforderungen, wird das SLAM-Problem in der Literatur gern als "Henne und Ei“-Problem bezeichnet.

In Anlehnung an (Marenko et al., 2002) ist das SLAM-Problem, wie im Bild rechts dargestellt, also eine Mischung aus Lokalisierung und Kartierung, während Exploration und aktive Lokalisierung auch die Pfadplanung des Roboters mit einbeziehen.

Empfehlenswerte Literatur:

Allgemeine Informationen zum Thema im Internet:
  • Auf den Seiten der SLAM Summer School 2009 befinden sich zahlreiche Folien sowie die Video-Mitschnitte von Einführungsvorträgen zum Thema SLAM. Unbedingt einmal reinschauen!
  • Weitere Materialien stehen auf den Seiten der SLAM Summer School 2006 zur Verfügung.
  • Unter http://openslam.org/ stehen verschiedene fertige Algorithmen (meist Matlab) und Testdaten zum Download bereit.

Aktuelle Eigene Forschungsarbeiten

Robust Optimization-Based SLAM

manhattan_small.png Sollte die Place Recognition (siehe oben) doch einmal fehlschlagen, ist noch nicht alles verloren. Wir erforschen ganz aktuell Algorithmen, die mit Fehlern in der Wiedererkennung umgehen können und diese automatisch während der Kartierung (genauer, während des SLAM-Prozesses) erkennen und nachträglich entfernen können. Dabei kommen hocheffiziente Optimierungsmethoden zum Einsatz.

Weitere Informationen zu diesem aktuellen Forschungsansatz finden sich auf dieser Seite.

Place Recognition

Bewegt sich ein autonomer Roboter durch seine Umwelt, ist es wichtig, dass er schon bekannte Bereiche auch als bekannt wiedererkennt. Besonders schwierig ist dieses Problem, da verschiedene Orte in der Umwelt sich sehr ähnlich sehen und von einem Roboter mit seiner begrenzten Sensorik leicht verwechselt werden können.

Wir beschäftigen uns mit der Frage, wie ein autonomes System mit Hilfe von Kameras robust (d.h. möglichst fehlerfrei) schon bekannte Umgebungen wiedererkennen kann, auch wenn das Einsatzgebiet des Roboters sehr groß ist. Weitere Informationen finden sich auf unseren englischen Webseiten.

Biologisch motivierte SLAM-Algorithmen

Neben den klassischen Verfahren befassen wir uns seit Ende 2009 auch mit biologisch motivierten Verfahren zur Lösung des SLAM-Problems.

Seit den 70er Jahren wurden in den Gehirnen von Ratten, Primaten und Menschen verschiedene Typen von Zellen identifiziert, die bei der Ausführung von Navigations- und Orientierungsaufgaben beteiligt sind. Experimente verschiedener Forschergruppen zeigen, dass zum Beispiel die Position und die Orientierung im Raum, aber auch das Vorhandensein räumlicher Begrenzungen und anderer Merkmale von spezialisierten Zellen im Gehirn codiert werden.

Neurologen und theoretische Biologen entwickeln seitdem Modelle, die bestimmte Verhaltensweisen von Versuchstieren, aber auch von Menschen, mit Hilfe dieser Zellen und ihrer Vernetzung untereinander und mit anderen Hirnarealen erklären helfen. Wir interessieren uns für diese Entwicklungen und wollen aus den Erkentnissen der Neurowissenschaften eigene Algorithmen zur Lösung von Navigations- und Kartierungsaufgaben (SLAM) mit autonomen Robotern ableiten.

Dabei verfolgen wir einen pragmatischen Ansatz, d.h. wir versuchen nicht, die biologischen Prozesse in ihren Details nachzubilden (z.B. auf Ebene einzelner Neuronen oder gar Spikes). Stattdessen wollen wir die in der Biologie ablaufenden Prozesse abstrahieren und zu effizienten Algorithmen vereinfachen. Mehr Informationen dazu gibt es auf unserer Projektseite.

Visuelle Odometrie / Stereo Odometrie

Die Bewegung eines autonomen Systems (also Translation und Rotation) kann nicht nur über mechanische Weggeber oder optische Encoder gemessen werden, sondern auch mit Hilfe von Kamerabildern der Umgebung. Man unterscheidet dabei zwischen Stereo- und Mono-Ansätzen, je nach verwendeter Kamera.

Weitere Grundlegende Informationen

Landmarkenbasiertes SLAM - Schematische Darstellung

SLAMcomplete.png

Eine schematische Darstellung des landmarkenbasierten SLAM-Problems (aus der Dissertation von Joan Solà, 2007):
  1. Initialisierung neuer Landmarken.
  2. Vorhersage der neuen Position des Roboters mit erhöhter Unsicherheit.
  3. Messung der bereits kartographierter Landmarken aus der unsichereren Roboterposition heraus.
  4. Korrektur der Roboterposition sowie der geschätzten Landmarkenposition. Damit verbunden ist ebenfalls eine Reduktion der Unsicherheiten (hier als rote und blaue Ellipsen dargestellt).

Die für die Kartierung und Lokalisierung benötigten Landmarken können mit verschiedenen Sensoren wahrgenommen werden. Die ersten Forschergruppen arbeiteten meist mit Sonarsensoren oder Laserscannern. In jüngerer Zeit kommen dafür aber vermehrt Kameras zum Einsatz. Die Extraktion von Landmarken aus Kamerabildern hat den Vorteil, dass sie zu aussagefähigeren Karten führen können, als z.B. bloße Entfernungsmessungen von Laserscannern.

In eigenen Arbeiten haben wir für die Extraktion von Landmarken für SLAM sowohl Stereo- als auch Mono-Kameras verwendet. Bei Stereokameras können zu jeder beobachteten Landmarke sofort die 3d-Koordinaten errechnet werden, solange sich die Landmarke im Wahrnehmungsbereich der Stereokamera befindet, d.h. nicht zu weit vom Roboter entfernt ist. Weit entfernte Landmarken können mit Stereo-SLAM-Algorithmen nicht ohne weiteres verarbeitet werden, weshalb sich auch die Verwendung von monokularen Verfahren anbietet.

Landmarkenbasiertes Mono-Kamera-SLAM

UKFSLAM.png Im Gegensatz zu Stereo-Verfahren können mit einer einzigen Kamera keine 3-dimensionalen Entfernungsinformation wahrgenommen werden. Hierfür muss erst ein ”intelligenter“ Algorithmus entwickelt werden, der als Mono-Kamera-SLAM oder Mono-Vision-SLAM bezeichnet wird. Mit Hilfe der detektierten Landmarken aus dem Kamerabild und relativen Bewegungsinformationen von anderen Sensoren (Odometrie, IMU) können über einen solchen Algorithmus die Entfernungen und Positionen der Landmarken geschätzt und gleichzeitig die Positionsschätzung des Roboter verbessert werden.

Mit dem Begriff Landmarken werden Punkte in der realen Welt beschrieben, die durch ein spezielles Merkmal leicht aus verschiedenen Perspektiven wiedererkannt werden können. Entsprechend wird der Begriff auch im Bereich der Bildverarbeitung verwendet. Eine Landmarke beschreibt in diesem Fall einen Bildpunkt, bzw. Bildbe- reich, der über eine Bildfolge hinweg erkannt bzw. verfolgt werden kann. Dabei kann dieser Punkt durch einen Merkmalsvektor definiert sein, oder durch Korrelation wiedererkannt werden. Beide Verfahren sind nur ein Beispiel für eine Vielzahl von Ansätzen zum Wiedererkennen von Merkmalen in verschiedenen Aufnahmen. Die Fähigkeit, eine Landmarke zu finden und über mehrere Kamerabilder hinweg zu verfolgen, ermöglicht die räumliche Wahrnehmung dieser Landmarke. [Solà, 2007] verdeutlicht dies anhand einer Analogie zum Menschen, der ebenfalls aus einer Folge von zweidimensionalen Bildern, wie sie zum Beispiel bei Videospielen wahrgenommen werden, die Räumlichkeit und Entfernungen im Bild abschätzen kann.

monoSLAM2.png Wie diese Entfernungsschätzung abläuft, soll qualitativ in nebenstehender Abbildung aufgezeigt werden. Gezeigt ist eine Kamerabewegung in drei verschiedenen Zeitschritten, wobei im ersten Zeitschritt die Initialisierung einer Landmarke (mit einem Plus gekennzeichnet) erfolgt. In jedem Schritt wird eine Hypothese über die Lage der Landmarke aufgestellt, welche als orange Fläche dargestellt ist. Die Größe dieser Fläche ist von der Unsicherheit in der Kameraposition und Orientierung und der angenommenen Standardabweichung eines gefundenen Punktes im Kamerabild abhängig. In einem zweiten Schritt hat sich die Kamera sehr nahe entlang der vorherigen Sichtlinie von Kamera zur Landmarke hin bewegt, d.h. zwischen den beiden Sichtlinien besteht nur eine sehr kleine Winkeländerung, was zu wenig neuen Informationen über die Landmarkenposition führt. Der Bereich, in dem die Landmarke angenommen wird, verringert sich folglich nur sehr wenig. Eine exaktere Positionsannahme entsteht erst durch eine größere Winkeländerung, wie im dritten Teilbild dargestellt ist.

Publikationen zum Thema

  • Sünderhauf, N., Protzel, P. (2011). BRIEF-Gist -- Closing the Loop by Simple Means. Proc. of IEEE International Conference on Intelligent Robots and Systems (IROS), San Francisco, USA.

  • Lange, S. (2008). Mono-Kamera-SLAM: Implementierung eines Verfahrens zur visuell gestützten Navigation und Steuerung eines autonomen Luftschiffes. VDM Verlag Dr. Müller

  • Neubert, P., Vidal-Calleja, T., Lacroix, S., Protzel, P. (2008). A Fast Visual Line Segment Tracker. Proc. of 13th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA), Hamburg.