Unsere Fortschritte im CognitiveAR Labor
Edge Computing, Microsoft HoloLens, Künstliche Intelligenz, und Club Mate (08.08.2021)
Förderjahr 2020 / Project Call #15 / ProjektID: 5121 / Projekt: CognitiveAR

In den Räumen der TU Wien haben wir ein kleines Labor eingerichtet, wo wir uns nun mit großen Schritten der ersten Version unseres Systems nähern. In diesem Eintrag geht es um unseren aktuellen Fortschritt und die Projektverlängerung bis Dezember

Das CognitiveAR Labor

Seit unserer Publikation auf der IEEE VR im März sind wir damit beschäftigt diese ersten Proof-of-Concept Implementierungen im Detail auszuarbeiten, und auch unsere Videoanalyseplattform "CogStream" mit der Microsoft HoloLens zu verbinden. Dazu haben wir ein kleines Labor eingerichtet, in dem sich unser Team zusammenfindet um gemeinsam an unserem Framework, Softwarebibliotheken, und Hardwareintegration zu arbeiten. Impressionen aus dem Labor findet ihr ganz unten im Beitrag.

Wir möchten euch hier den aktuellen Fortschritt seit April bis jetzt präsentieren.

3D Objekterkennung und -Positionierung

Ein wesentlicher Bestandteil unserer Plattform ist das erkennen und positionieren von Objekten im Raum anhand von Kamerabildern. Dazu haben wir begonnen Machine Learning Modelle für Tiefenerkennung mit echten Tiefenkameras wie der Intel RealSense zu vergleichen. Hier ist ein Video das Christian aufgenommen hat, das die Tiefenwerte aus dem Bild visualisiert. Oben links sieht man das RGB Bild, oben mitting sieht man die Werte der Tiefenkamera. Die restlichen Bilder sind durch verschiedene Machine Learning Modelle berechnet die auf dem RGB Bild operieren.

Diese Tiefenwerte können nun in Kombination mit Objekterkennung dazu verwendet werden Objekte im 3D Raum zu positionieren, und die Distanz zur Kamera zu schätzen. Im Video sieht man die von YOLOv5 erkannten Objekte, und die von unserem Algorithmus mit Hilfe der Tiefenwerte errechneten 3D Koordinaten.

CogStream Video Analytics

Unsere System für KI-basierte Echtzeit-Videoanalyse "CogStream", ist ein wesentliche Bestandteil der Plattform, um den Kamerafeed von Augmented Reality Headsets zu analysieren. CogStream implementiert eine Plugin Architektur, mit der sog. Engines verwaltet werden können. Engines kapseln die Funktionalität eines oder mehrere KI Modelle um die Bilder der Kamera zu analysieren. Im folgenden Bild sieht man Beispielsweise eine Engine die Gesichts- und Emotionserkennung macht. Diese läuft in Echzeit auf einer GPU mit etwa 20 Frames pro Sekunde.

Die Gesichter von Katharina und Thomas werden von einer CogStream Engine erkannt
Die Gesichter von Katharina und Thomas werden von einer CogStream Engine erkannt

 

Wir können bereits den Kamerafeed von der HoloLens zu einer CogStream Engine die auf einem NVIDIA Jetson Xavier NX im selben Netzwerk läuft über das Netzwerk senden. Im nächsten Schritt werden wir die Resultate in der HoloLens in einer AR Anwendung visualisieren.

Technische Herausforderungen im Edge Computing

Unsere Plattform CognitiveAR ist für Edge Computing Szenarien konzipiert, und soll auch auf Hardware die für solche Szenarien charakteristisch ist lauffähig sein. Auf Edge Computing Hardware mit KI-Beschleunigern, wie etwa die NVIDIA Jetson Platform, Programme ausführbar zu machen ist jedoch oft eine Herausforderung. Durch die kompakte Bauform dieser Plattformen (ein NVIDIA Jetson Xavier NX passt in die Hand), sind diese häufig mit ARM System-on-Chip Architekturen gebaut, die etwa den Kompilierungsvorgang vieler Machine Learning Bibliotheken immens erschwert. Die Neuartigkeit der Geräte führt auch oft dazu, dass Produkte schlecht dokumentiert sind.

Wir haben unsere Erfahrungen hierzu in zwei Tech-Blog Einträgen (auf Englisch) auf unserer Website festgehalten, und Tutorials geschrieben um den Vorgang zu dokumentieren.

Teaser bilder unserer Blogeinträge

 

Projektverlängerung

Der Projektzeitraum war von Jänner bis September 2021 geplant. Viele unserer Projektmitarbeiter befinden sich noch mitten im Informatikstudium, oder arbeiten im universitären Umfeld, das uns insbesondere von April bis Juni immer wieder viel abverlangt. Übungsabgaben, Prüfungen, Deadlines, und das alles unter den Herausforderungen der COVID-19 Pandemie, haben zu einer wesentlichen Projektverzögerung geführt. In Absprache mit der Netidee haben wir unser Projekt bis Dezember verlängern können, um den abgesteckten Projektumfang auch erfüllen zu können.

Wir planen eine weitere Publikation der Ergebnisse unseres 3D Objektpositionierungssystems, und arbeiten weiter an der Integration zwischen der HoloLens und CogStream. Für Ende September ist die Präsentation der ersten Demo App geplant.

Impressionen aus dem Labor

 

Christian und Silvio versuchen der Anweisung von Thomas zu folgen, fürs Foto zu tun als würden sie was sinnvolles auf den Geräten machen
Christian und Silvio versuchen der Anweisung von Thomas zu folgen, fürs Foto zu tun als würden sie was sinnvolles auf den Geräten machen
Christian hat eine HoloLens auf
Christian testet die HoloLens 2
Matthias und silvio sitzen vor einem Laptop
Matthias hilft Silvio beim Aufsetzen von Unity und dem MRTK für die HoloLens
Silvio und Christian stehen vor einem Whiteboard
Silvio und Christian stehen vor unserem Whiteboard, oben links die Club Mate Abrechnungsmatrix.

 

Thomas Rausch

Profile picture for user ThomasRausch
Founder & Technical Lead of CognitiveXR
Co-Founder and Lead Engineer at LocalStack

Skills:

cloud computing
,
edge computing
,
AI | KI
,
Research
CAPTCHA
Diese Frage dient der Überprüfung, ob Sie ein menschlicher Besucher sind und um automatisierten SPAM zu verhindern.
    Datenschutzinformation
    Der datenschutzrechtliche Verantwortliche (Internet Privatstiftung Austria - Internet Foundation Austria, Österreich) würde gerne mit folgenden Diensten Ihre personenbezogenen Daten verarbeiten. Zur Personalisierung können Technologien wie Cookies, LocalStorage usw. verwendet werden. Dies ist für die Nutzung der Website nicht notwendig, ermöglicht aber eine noch engere Interaktion mit Ihnen. Falls gewünscht, können Sie Ihre Einwilligung jederzeit via unserer Datenschutzerklärung anpassen oder widerrufen.