, , ,

Sensor Fusion

Konstantin Rosenberg

Geschrieben von Konstantin Rosenberg

Einleitung

Stell dir vor du fährst in deinem autonom Fahrenden Auto die Straße entlang. Plötzlich erscheint, hinter einem parkenden Auto, ein Fußgänger und tritt direkt vor dir auf die Fahrbahn. Du erschrickst, doch das Auto kommt elegant vor dem unachtsamen Spaziergänger zu stehen. Während du dir gerade nicht einmal sicher bist was passiert ist, hat dein selbstfahrendes Auto einen Unfall verhindert. Aber was genau ist hier eigentlich passiert?

Im 21. Jahrhundert gibt es autonome Autos und Drohnen liefern Pakete direkt vor deine Haustür. Dabei haben Drohnen und autonom fahrende Autos eine Sache gemeinsam. Sie beide sind mit vielen verschiedenen Sensoren ausgestattet, um ihre Umgebung wahrzunehmen und auf Ereignisse zu reagieren. Gerade beim autonomen Fahren sind hohe Zuverlässigkeits- und Sicherheitsanforderungen an die Systeme gestellt, da schließlich Leben von den richtigen Entscheidungen des Systems abhängen. Um richtige Entscheidungen zu gewährleisten ist es unabdingbar, dass ein System möglichst präzise, zuverlässige Daten erhält. Es ergibt sich demnach die Frage, wie die Aufnahme und Verarbeitung von Sensorinformationen dahingehend verbessert werden kann, sodass der Entscheidungsprozess eines autonomen Systems ein akzeptables und zuverlässiges Niveau erhält. Eine der Antworten auf diese Frage lautet: „Sensor Fusion“.

Datenverarbeitung in autonomen Systemen

Um Sensor Fusion zu verstehen betrachten wir zunächst die Datenverarbeitung in einem Autonomen System. Autonome Systeme verwenden Sensorik, um ihre Umwelt wahrzunehmen und entsprechend der Umstände zu agieren. Im Beispiel aus der Einleitung bemerkte das autonome Auto den Fußgänger und leitete deshalb einen Bremsvorgang ein. Dieser hier beschriebene Vorgang aus Wahrnehmung und Handeln lässt sich für ein System in die folgenden Schritte unterteilen.

  1. Informationen aufnehmen
  2. Informationen interpretieren
  3. Aktion planen
  4. Aktion ausführen

Damit autonome Autos ihre Umgebung wahrnehmen können, werden in deren Systeme Sensoren integriert. Wenn man so will sind die Sensoren die Augen und Ohren des Systems, denn ohne diese würde das System nicht verstehen was gerade um es herum passiert. Sensoren kommen in den unterschiedlichsten Farben und Formen vor, je nachdem welchen Zweck sie erfüllen. Es gibt Kamerasensoren für das erheben von Bildinformationen, Infrarotsensoren für Abstandsmessungen, Gyroskopische Sensoren um die Lage im Raum festzustellen etc. Im Falle eines autonomen Fahrzeugs werden Kamerasensoren und zusätzliche Sensoren für die Abstandserkennung benutzt und somit der Wahrnehmung der Verkehrslage dienen.
Die über Sensorik aufgenommenen Informationen müssen anschließend noch vom System ausgewertet und interpretiert werden. Dazu versucht das System die gesammelten Umgebungsinformationen zu verstehen. Das autonome Auto fragt sich also beispielsweise: Was sehe ich hier? Ist ein Mensch zu erkennen oder doch nur der Schatten eines Baumes? Oder ist es wohlmöglich ein anderes Auto?
Wurden die Informationen dann interpretiert, reagiert das System entsprechend und führt eine Handlung aus. Werden die aufgenommenen Sensorinformationen, wie im Falle unseres Beispiels, als Fußgänger interpretiert, bremst das Auto ab.

Sensor Fusion

Nun da wir den Ablauf in einem autonomen System genauer verstehen, können wir Sensor Fusion als Teil dieses Ablaufs betrachten.

Eigentlich verhält es sich mit Sensor Fusion wie mit unseren Sinneseindrücken. Wir hören, sehen und fühlen verschiedene Reize, welche wie aus unserer Umwelt aufnehmen. Das Gehirn wiederum verarbeitet diese Informationen zu einem gesamtheitlichen Eindruck. Genau so funktioniert auch Sensor Fusion. In einem System werden nicht nur die Daten eines einzelnen Sensors für den Interpretationsschritt verwendet, sondern gleich mehrere. Dadurch verbessert sich der gesamtheitliche Eindruck über die Umgebung. Sensor Fusion ist demnach ein Teil des Aufnahme- und Interpretationsschritts in einem autonomen System, da mehrere Sensorinformationen aufgenommen und auch gemeinsam verarbeitet werden.

Vorteile von Sensor Fusion

Die Aufnahme und Verarbeitung mehrerer Sensorinformationen bietet gleich mehrere Vorteile wie:

Genauere Daten

Mithilfe von Sensor Fusion kann die Genauigkeit und Qualität der, über Sensorik erfassten Informationen, verbessert werde. Da die von Sensoren aufgenommenen Informationen nie 100% korrekt sind, sondern Ungenauigkeiten und Störsignale enthalten, wird Sensor Fusion eingesetzt, um diese Inkorrektheiten abzuschwächen. Werden mehrere Sensoren der gleichen Art verwendet ist es möglich die fehlerhaften Informationen herauszufiltern, indem die aufgenommenen Informationen miteinander verrechnet werden. Dazu kann der Durchschnitt der beiden Sensorinformationen ermittelt werden, um den Noise zu herauszurechnen. Genauso wie bei den menschlichen Augen der blinde Fleck durch das zweite Auge ergänzt und das Blickfeld vervollständigt wird, werden bei Sensor Fusion mehrere Sensoren verwendet, um Ungenauigkeiten oder Fehlende Informationen durch weitere Sensoren zu beseitigen.

Verlässlichere Daten

Ein weiter Vorteil von Sensor Fusion ist eine erhöhte Verlässlichkeit der Sensorinformationen. Werden mehrere unterschiedliche Sensoren für die Erfüllung einer Aufgabe verwendet, können die Sensordaten gegeneinander abgeglichen werden, um die Plausibilität der Daten zu überprüfen. Fallen Sensoren aus, oder liefern aus diversen Gründen komplett falsche Informationen, stehen immer noch die Daten anderer Sensoren für die Erfüllung einer Aufgabe zur Verfügung.
Fallen bei einem autonomen Auto die Sensoren für die Geschwindigkeitsermittlung aus, besitzt das System noch weitere Sensoren, wie beispielsweise das GPS, um die Geschwindigkeit festzustellen. Zwar kann die Genauigkeit der der Daten darunter leiden, aber die Information der Geschwindigkeit geht nicht komplett verloren.

Zusätzliche Zustandsinformationen

Durch Sensor-Fusion ergeben sich außerdem viele neue Möglichkeiten, um zusätzliche Informationen über die Systemumgebung zu erhalten. Werden z.B. zwei Sensoren für die Erhebung von Bildinformationen verwendet, kann dadurch zusätzlich die Entfernung zu den erkannten Objekten berechnet werden. Genau wie unser Gehirn mithilfe der Bildinformationen von zwei Augen dazu fähig ist die Entfernung zu den Objekten zu berechnen.

Sensor Fusion Algorithmen

Wir haben nun einen Überblick über Sensor Fusion und darüber welche Vorteile das Verwenden mehrerer Sensorinformationen für den Entscheidungsprozess eines autonomen Systems haben kann. Im Weiteren schauen wir uns an wie Sensorinformationen aus verschiedenen Quellen am besten interpretiert werden können. Dafür betrachten wir die allgemeine Vorgehensweise von Sensor Fusion Algorithmen, deren Ziel es ist den physischen Zustands eines System oder Objekts abzuschätzen.
Im Prinzip kombinieren Sensor Fusion Algorithmen Dinge die über einen Vorgang bekannt sind mit den Daten die von Sensoren erfasst werden. Konkret sind in den Sensor Fusion Algorithmen dazu physikalische Gleichungsmodelle als Ausgangspunkt verwendet. Diese Gleichungsmodelle heißen „Motion model“ und sind in ein sogenanntes „prediction model“ integriert. Prediction models sind Gleichungen die der Vorhersage von Systemzuständen dienen. Mithilfe des prediction model werden also anhand von bekannten physikalischen Gleichungen Vorhersagen über den zukünftigen Zustand eines Systems gemacht. Diese Vorhersage kann dann mithilfe eines sog. „update model“ um die tatsächlich, von Sensoren gemessenen Daten, korrigiert werden. Das Ergebnis beinhaltet damit eine Mischung aus Vorhersage und tatsächlich gemessenen Werten. Falsche Messwerte werden also schon durch das Prinzip dieses Vorhersagevorgangs abgeschwächt, da sich das System nicht komplett auf Sensorinformationen verlässt. Außerdem wird die Plausibilität von Sensorinformationen überprüfbar, weil eine Vorhersage den Rahmen für mögliche Werte vorgibt und Messfehler dadurch erkannt werden können. Klingt alles etwas kompliziert, schauen wir uns das doch einmal in einem Beispiel an.

Beispiel Lokalisation

Stellen wir uns wir fahren über eine Landstraße und möchten nun die Position unseres Autos anhand von Sensorinformationen bestimmen. Registriert der Geschwindigkeitssensor eines Fahrzeugs z.B die Geschwindigkeit von 10m/s, so kann die Annahme getroffen werden, dass sich das Fahrzeug nach einer Sekunde 10 Meter weiter vorne befindet, falls sich die Richtung des Fahrzeugs nicht ändert. Nun wird die vorhergesagte Position mit den Sensorinformationen verglichen und verrechnet. Es ergibt sich die vom System registrierte neue Position des Fahrzeugs. Die festgestellt Position und alle weiteren Zustandsinformationen(Geschwindigkeit usw.) werden anschließend als Ausgang für die nächste Vorhersage verwendet und der Vorgang beginnt von neuem.

Hier einmal die Positionsbestimmung durch Sensorfusion Bildlich dargestellt:

Vorhersage der zukünftigen Position anhand des prediction model

Die Gelbe Linie beschreibt die Vorhersage der Position anhand der aktuellen Position und dem Zustand unseres System. Diese Informationen werden durch das prediction model verarbeitet und es kommt zu einer Vorhersage . Der Systemzustand beinhaltet Informationen wie z.B Geschwindigkeit, Position, Karten Daten usw. die als Grundlage für die Vorhergesagt Position dienen. Wie ihr seht ist die Vorhersage nicht perfekt sondern etwas neben der Straße. Es wird auch keine vollständige Korrektheit erwartet, denn die Vorhersage wird jetzt noch durch Sensorinformationen ergänzt.

Über die Sensorik des Systems festgestellte Position

Die rote Linie beschreibt die festgestellte Position anhand von Sensordaten. Unser System hat zwischen den Messungen eventuell die Geschwindigkeit oder Richtung geändert, deshalb bekommen wir ein etwas anderes Ergebnis als das prediction model. Aber auch hier ist die Position nicht richtig, da die Sensoren nicht perfekt funktionieren sondern Störsignale beinhalten und eventuell falsche Informationen aufnehmen. Deshalb werden im Folgenden schritt die Vorhersage und die gemessenen Sensordaten zu einer finale Lokalisation verrechnet.

Berechnung des Systemzustands aus Sensordaten und Vorhersage

Die Lila Kurve stellt Lokalisation anhand der Vorhersage und der Sensorinformationen dar. Die Berechnung der Position fällt zwischen die Gelbe und die rote Linie und im optimal Fall möglichst nah an die tatsächliche Position des Fahrzeugs.

Kalman Filter

Einer der bekanntesten Sensor Fusion Algorithmen ist wohl der Kalman Filter. Vor allem bietet sich diese Technologie für die Vorhersage anhand mehrerer Sensorinformationen mit hohem Rauschanteil an. Der Kalman Filter geht dabei von einer Gaußverteilten Welt aus und ist optimal für Lineare Problemstellungen. Somit eignet er sich für Aufgaben wie Lokalisation. Oft wird der Kalman Filter mit Sensor Fusion gleichgesetzt obwohl es auch andere Möglichkeiten für die Verrechnung von Sensorinformationen wie z.B. neuronale Netze gibt.

Wie geht’s weiter?

Wir haben in diesem Blogeintrag das grundlegende Prinzip hinter Sensor Fusion betrachtet. Sensor Fusion bietet viele Vorteile für autonome Systeme durch die Kombination von Sensorinformationen sind Umgebungseinschätzungen präziser und zuverlässiger . Es gibt viele mögliche Anwendungsfälle für Sensor Fusion wie Lokalisation, Hinderniserkennung, Abstandserkennung usw. In Zukunft werden viel autonome Systeme Sensor Fusion verwenden, um intelligentere, sicherere und zuverlässigere Entscheidungen zu berechnen. Es lohnt sich also das Thema auch weiterhin zu verfolgen.

Referenzen:

  1. https://algorithmsbook.com/#
  2. https://www.researchgate.net/publication/332997416_Multi-Sensor_Data_Fusion_Algorithm_Based_on_Trust_Degree_and_Improved_Genetics
  3. https://www.udacity.com/blog/2020/08/sensor-fusion-algorithms-explained.html
  4. https://towardsdatascience.com/wtf-is-sensor-fusion-part-2-the-good-old-kalman-filter-3642f321440
  5. https://www.sciencedirect.com/science/article/abs/pii/S1367578802000457
  6. https://www.researchgate.net/profile/Wilfried-Elmenreich/publication/267771481_An_Introduction_to_Sensor_Fusion/links/55d2e45908ae0a3417222dd9/An-Introduction-to-Sensor-Fusion.pdf

by

Konstantin Rosenberg

Tags:

Comments

Leave a Reply