Mit dem Kopf in den (Punkt-)Wolken

Verarbeitung von LiDAR-Daten zur Objektdetektion

LiDAR-Sensoren produzieren Punktwolken, die die Sensorumgebung in 3D abbilden. Diese aus Abstandspunkten bestehende „Wolke“ liefert zahlreiche und wertvolle Umgebungsinformationen. Für manche Anwendungen sind diese allerdings zu komplex zur Weiterverarbeitung: Autonome Fahrfunktionen, Verkehrsüberwachung oder Parkplatzdetektion etwa benötigen vielmehr eine Liste der im Blickfeld detektierten Objekte. Wie werden diese Informationen aus den LiDAR-Daten gewonnen?

Schauen wir hierzu doch einmal auf einen konkreten Fall: Die Stadt Lidartown feiert ihr alljährliches Stadtfest. Es ist allerlei geboten, unter anderem wird auf einem großen Parkplatz im Stadtzentrum ein kostenloses Konzert gespielt. Der Zutritt der Zuschauer wird also nicht über Eintrittskarten reguliert, dennoch dürfen sich aus Sicherheitsgründen nicht mehr als 1000 Personen auf dem Gelände aufhalten. Um dies sicherzustellen, installiert die Stadt einen LiDAR-Sensor, der den Eingangsbereich zum Konzertgelände überblickt und somit erfasst, wer den Eingang passiert. Der Eingang ist dabei ein breiter Durchgang, durch den die Besucher das Gelände auch wieder verlassen.

Präzision und Anonymität durch 3D-Daten

Ein LiDAR hat hier verschiedene Vorteile gegenüber Lösungen wie Kameras, Bewegungssensoren oder manuellem Zählen durch Mitarbeiter der Stadt: Zum einen erfasst er die Szene sehr detailliert und zuverlässig in Echtzeit. Normale Bewegungssensoren etwa haben ein Problem genaue Zahlen zu generieren, sobald mehrere Leute gleichzeitig eintreten: Laufen beispielsweise drei Personen nebeneinander, kann es passieren, dass die beiden außen laufenden Personen zwar erfasst werden, die Person in der Mitte wird jedoch nicht mitgezählt. Zum anderen schützt der LiDAR die Privatsphäre der Konzertbesucher, indem er farblose 3D-Daten statt Kamerabilder und Gesichter verarbeitet.

Wie viele Menschen befinden sich auf dem Gelände?

Der Einlass beginnt und viele Menschen strömen auf das Gelände. Dabei sammelt der Sensor Millionen von Abstandsdaten, die jedoch zur weiteren Verarbeitung für die Applikation des Besucherzählens zu komplex ist. Sie beinhalten für jeden aufgezeichneten Punkt x-, y- und z-Daten und setzen sich in einer Punktwolke zusammen. Der Veranstalter benötigt diese Informationen jedoch nicht im Detail, sondern er braucht Daten, die ihm Auskunft über die Anzahl der sich auf dem Gelände befindenden Besucher gibt. Im Grunde sind das drei Informationen, die in Echtzeit zur Verfügung gestellt werden müssen: Der Veranstalter muss wissen, wie viele Menschen den Eingang passieren. Die Software erkennt diese als Objekte in der Punktwolke. Zudem werden die Informationen über den genauen Standort der identifizierten Person benötigt: Befinden sich die Menschen bereits hinter dem Eingang und damit auf dem Gelände oder stehen sie außerhalb der Begrenzungen, beispielsweise in der Schlange vor dem Eingang? Die dritte benötigte Information ist die der Bewegungsrichtung der Personen. So können auch Personen erfasst werden, die das Gelände wieder verlassen und damit von der anwesenden Menge abgezogen werden.

Welche Punkte müssen betrachtet werden?

Wie werden genau diese Daten aus den komplexen Punktwolkendaten gewonnen? Um das nachvollziehen zu können, schauen wir uns hier einen vereinfachten Algorithmus zur Datenauswertung an: Im ersten Schritt muss der Vordergrund vom Hintergrund differenziert werden. Hierbei wird zunächst wird die Szene analysiert und der Hintergrund abgezogen, um Punktcluster erkennen zu können. Dafür wird der statische Hintergrund in einer Punktwolke aufgezeichnet, bevor Besucher auf dem Gelände eintreffen. Indem der „Status Quo“ festgehalten wird, kann die Software feststellen, welche Punktgruppen ignoriert werden können, da sie statisch sind und zum Hintergrund gehören. Mit diesem festgehaltenen Hintergrundbild wird, sobald Menschen auf das Gelände kommen, jedes aufgenommene Bild abgeglichen, um eben diese Objekte zu detektieren.

Vordergrund und Hintergrund

Hintergrund ohne Vordergrund

Hintergrund ohne Vordergrund

Vordergrund ohne Hintergrund

Vordergrund ohne Hintergrund

Von Hüllen und Boxen

Kommen nun Besucher, ändert sich die Punktwolke und neue Objekte sind durch Cluster in der Punktwolke zu erkennen. Sind diese im Abgleich mit dem Hintergrundbild nicht vorhanden, wird erkannt, dass ein bewegliches Objekt den Bereich betreten hat. Nach dem Prinzip der konvexen Hülle wird nun eine so genannten Bounding Box um das Objekt gezogen. Die konvexe Hülle beschreibt den kleinstmöglichen Umfang eines Körpers, indem sie die äußersten Punkte des Objektes miteinander verbindet. Die Bounding Box fasst das Objekt zur besseren Verarbeitung der Informationen in dem kleinstmöglichen Quader ein. Hier erfolgt also eine Datenreduzierung, die die Daten leichter handhabbar macht.

Die Größe dieser Bounding Box hilft bei der groben Klassifizierung des Objekts. Im Straßenverkehr beispielsweise wird damit festgestellt, ob es sich um ein Auto, ein Fahrrad oder einen Fußgänger handelt. In unserem Beispiel-Fall des Stadtfest-Konzertes kann die Erfassung der Bounding Box-Größe ebenfalls der Klassifikation von Objekten als Menschen dienen, auch wenn auf dem Gelände eher nicht mit Fahrrädern oder Autos zu rechnen ist. Somit ordnet die Software die sich im Eingangsbereich befindenden Objekte der groben Kategorie „Mensch“ zu und ist in der Lage, die Anzahl eben dieser zu ermitteln.

Person in einer Punktwolke

Person in einer Punktwolke, umfasst mit einer Bounding Box

Wie bewegen sich die Menschen?

Die Größe der Objekte im Eingangsbereich ist damit also identifiziert. Wie werden die weiteren benötigten Informationen zu Position und Bewegungsrichtung ermittelt? Die Information über die genaue Position der Menschen kann einfach aus der Bounding Box extrahiert werden, da diese den Kern der LiDAR-Information ausmacht – LiDAR-Sensoren erfassen schließlich Abstände.

Die Bewegungsrichtung kann beispielsweise festgestellt werden, indem der Algorithmus die Position des Objekts in den vorangegangenen Frames beobachtet: Da bekannt ist, mit welchem zeitlichen Abstand Frames generiert werden, kann durch den Positionsabgleich des Objekts zwischen mehreren Frames einfach festgestellt werden, wohin und wie schnell es sich bewegt. Entsprechend dieser Geschwindigkeit und der Bewegungsrichtung, kann der weitere Weg des Objektes antizipiert werden, sobald das gleiche Punktcluster in zwei oder mehr Frames identifiziert wurde.

Das Ergebnis: Die Objektliste

Diese Informationen werden in einer so genannten Objektliste zur Verfügung gestellt. Diese Tabelle hält in jeder Zeile das detektierte Objekt und seine Eigenschaften, in unserem Fall die Größe, Position und Bewegungsrichtung, fest. Daten in dieser Form können einfach weiterverarbeitet werden und ermöglichen im Konzert-Beispiel zu jedem Zeitpunkt die Ermittlung der genauen Personenanzahl auf dem Gelände. Dadurch wird erkannt, wann die Maximalanzahl an Besuchern erreicht ist und der Einlass gestoppt werden muss. Zudem lässt sich genau nachvollziehen, wann sich die meisten Menschen auf dem Gelände befinden oder wann am meisten Andrang am Eingang war. Diese Daten können für die Planung von zukünftigen Veranstaltungen nützlich sein.

Geregelter Besucherstrom dank ausgewerteter LiDAR-Daten

Die Stadt Lidartown ist sehr zufrieden mit dem LiDAR-Einsatz auf dem Konzertgelände: Die Software in unserem Beispiel hat eine Benachrichtigung an die Veranstalter ausgelöst, als die Besucherzahl 900 überschritt. Somit konnte die Veranstaltungsleitung von da an einen genaueren Blick auf die Besucherzahl haben, um rechtzeitig einen Einlassstopp zu veranlassen. Während der restlichen Zeit konnte sie jedoch andere Aufgaben verfolgen oder einfach der Band zuhören – der LiDAR hatte die wichtigen Dinge für sie im Blick.