aCVC, a Computer Vision Company

Sensor and software supplier. Software development partner.

Zurück zur Startseite

Daten Viewer

Der Viewer ermöglicht eine einfache und intuitive Visualisierung der aufgezeichneten Daten. Sowohl Roh- als auch post-prozessierte Daten von Algorithmen oder manuellem Labeling können mithilfe dieses Tools veranschaulicht werden. Durch die Echtzeitvisualisierung können sogar Aufzeichnungen von mehreren hunderten Gigabytes problemlos auf gängigen Rechnern in den Ubuntu, Windows oder MacOS Betriebssystemen inspiziert werden. Dadurch dass der Viewer kostenfrei für jeden zum Download verfügbar ist, können aufgezeichnete und post-prozessierte Daten einfach mit weiteren Kunden oder Dienstleistern geteilt werden. Unter Windows und MacOS wird der Viewer über die jeweiligen App Stores zum Download angeboten. Die Download-Links für die vom Viewer unterstützten Plattformen:





Das Navigieren im Viewer wurde auf ähnliche Weise implementiert wie in den meisten 3D-Computerspielen. Der Benutzer kann sich im 3D-Raum mithilfe der Maus und den WASD Tasten bewegen. Außerdem kann das Scrollrad für Aufwärts- und Abwärtsübersetzungen relativ zur Betrachterposition verwendet werden. Da diese Methode heutzutage als Mainstream gilt, können wir davon ausgehen, dass der Viewer eine möglichst ergonomische und intuitive Erfahrung für die Anzeige von 3D-Daten bietet. Insbesondere Benutzer, die mit 3D Computerspielen vertraut sind, werden sich mit unseren Viewer sehr vertraut fühlen.

Der Viewer liest Daten in unserem eigenen effizient modellierten Format. Das Softwarepacket beinhaltet Anwendungen, die die Daten aus der aufgezeichneten Rohform in dieses effizientere Format konvertieren. Der Kamerastream zur Visualisierung wird als separate Videodatei gespeichert und kann optional auch beim Benutzen des Viewers weggelassen werden.

Folgendes Video zeigt die Verwendung des Viewers in einer einzelnen ununterbrochenen Bildschirmaufnahme, die die verschiedenen Funktionen demonstriert.


Automatisiertes Post-Processing

SLAM - Simultaneous Localization and Mapping

Der erste Schritt in unserer automatisierten Verarbeitung der aufgenommen Daten ist die Verwendung von Google Cartographer. Wir führen es mit spezifischen Einstellungen und Parametern aus, um eine möglichst robuste und genaue Lokalisierung für unser System zu erhalten. In unserem Fall verwendet Cartographer die Punktwolke und die IMU Daten vom Livox Horizon und ermöglicht die Integration eines GNSS Signals, welches wir vergewöhnlich auch mitverwenden. Wir empfehlen die Verwendung des optionalen GNSS Signals, da unsere Experimente gezeigt haben, dass es einen erheblichen Vorteil in der Lokalisierung bringen kann, besonders wenn das Fahrzeug während der Aufnahme mehrmals entlang derselben Teilstrecke fährt. Da Cartographer die GNSS Daten nur für sein globales SLAM Modul verwendet, scheint die Genauigkeit des Signals eines Smartphones ausreichend zu sein, um gute Lokalisierungsergebnisse zu erzielen. Wir verwenden die Ausgabedaten der GPS2IP App, die unser Softwarepaket automatisiert interpretieren und verarbeiten kann. Da Google Cartographer über eine ROS Oberfläche verfügt, können auch andere Datenquellen problemlos integriert werden.

Mit der von Cartographer bereitgestellten Lokalisierung und einigen weiteren Verarbeitungsanwendungen in unserem Softwarepacket erstellen wir eine akkumulierte statische Karte der gefahrenen Strecke. Diese wird als eine der Ausgaben der automatisierten Verarbeitung des Softwarepakets verfügbar gemacht. Sie können sich einen Teil einer solchen Karte im folgenden 3D-Fenster anschauen.


Deep Learning

Unser Softwarepaket bietet die Möglichkeit, semantische Segmentierungen und Objektinstanzsegmentierungen mithilfe vortrainierter Versionen des Pyramid Scene Parsing neuronalen Netzwerkes und des Mask R-CNN neuronalen Netzwerkes automatisiert berechnen zu lassen und diese mit der Lidar Punktwolke zu fusionieren.

Pyramid Scene Parsing Network

Das PSPNet ist ein neuronales Netzwerk, das eine semantische Segmentierung durchführt, welches im Bereich ADAS Forschung breit angewendet wird. Es erzeugt ein semantisches Label für jedes Pixel in den Kamerabildern. Da in unserem Sensor Setup das Sichtfeld der Kamera das Sichtfeld des Lidars vollständig einschließt, erhält (fast) jeder Punkt im Lidar-Datenstrom ein semantisches Label vom PSPNet.

Beispielausgaben des PSPNet auf die Kameradaten sowie in den Lidarpunkten und der statischen Karte können in den folgenden Videos und im 3D-Fenster veranschaulicht werden.



Mask R-CNN

Das Mask R-CNN kann sowohl für Objekterkennungs- als auch für Objektinstanzsegmentierungsaufgaben verwendet werden. Objektinstanzsegmentierungen sind im Wesentlichen Segmentierungen innerhalb der Bounding Box eines erkannten Objektes. Das Projizieren von Lidar-Punkten in den Instanz-Ausgabedaten vom Mask R-CNN bietet eine bessere Kompatibilität und erzeugt tendenziell weniger Fehlauswertugen als die direkte Verwendung von Bounding Boxen. Da sich das Mask R-CNN in der Branche breit etabliert hat, haben wir es in unsere automatisierte Verarbeitung integriert. In unserem Anwendungsfall labeln wir alle Lidarpunkte gemäß den entsprechenden Mask R-CNN Erkennungen und legen diese zu den Ausgabedaten unserer Software dazu.

Beispielausgaben des Mask R-CNN auf Kameradaten sowie die in den Lidarpunkten andgewendeten erkennungen sind in den folgenden Videos veranschaulicht.




Kalibrierung

Unsere Codebase enthält ein Modul das wir zur Kalibrierung von unserem Sensor Setup verwenden. Wir stellen dies unseren Kunden im Rahmen des Softwarepakets zur Verfügung. Damit können Kunden unsere auf dem Dachträger montierte Sensoren bei Bedarf neu kalibrieren oder auch Lidar-, Kamera- und/oder Inertialsensoren von anderen Lieferanten in unserem Dachträgerkoordinatensystem kalibrieren.

Das Kalibrierungsmodul enthält eine teils automatisierte Kette von Kalibriertools, welche Bibliotheken und Anwendungen zum Kalibrieren von Lidar zu Lidar, Lidar zu IMU und Lidar zu Kamera umfasst. Die ersteren beiden sind vollautomatisiert und die Qualität der Ergebnisse wird visuell inspiziert. Das Endergebnis kann mit Meshlab, RViz oder unserem Viewer visualisiert werden. Für die Kamera zu Lidar Registrierung verwenden wir eine teilautomatisierte Methode, die eine benutzerdefinierte grafische Benutzeroberfläche (GUI) verwendet.

Zurück zur Startseite