title: Integrating Azure Kinect data into as-planned as-built automated comparison pipeline
Creators: name: Prohaska, Jonas
Publisher: name: TU Wien
Year: 2024
Subjects: subject: Building Information Modeling
subject: 3D-Rekonstruktion
subject: Punktwolke
subject: Objekterkennung
subject: Tiefenkamera
subject: Kinect
subject: LiDAR
subject: Building Information Modeling
subject: 3D-Reconstruction
subject: Point Cloud
subject: Object Detection
subject: Depth camera
subject: Kinect
subject: LiDAR

description: Mit der fortschreitenden Digitalisierung der Bauindustrie findet BIM (Building Information Modeling) immer mehr Anwendungsfälle. Der Vergleich eines BIM-Modells mit seinem realen Gegenstück war bisher eine manuelle und oft zeitaufwändige Aufgabe. Um dies zu automatisieren, wurde das BIMCheck-Projekt initiiert. Bisher können mittels LiDAR (Light Detection and Ranging) und SLAM (Simultaneous Localization and Mapping) ein Gebäude und seine verschiedenen Räume grob mit seinem BIM-Modell verglichen werden. Aufgrund der geringen Dichte der LiDAR-Punktwolken können jedoch kleine Objekte von Interesse wie Steckdosen, Lichtschalter oder Notfallinstallationen nicht erfasst und damit auch nicht mit ihrem BIM-Modell verglichen werden. Um diese kleineren Objekte zu erfassen, führt diese Arbeit eine Azure Kinect-Komponente in die modulare BIMCheck-Pipeline ein. Diese Komponente erlaubt die Aufzeichung, Registrierung und Verarbeitung mehrerer aus Azure Kinect Bildern extrahierten kolorierten Punktwolken in Echtzeit. Während der Großteil der Registrierung durch die LiDAR SLAM Komponente erreicht wird, wird ebenfalls eine zusätzliche Registrierung durch Perspective-n-Point (PnP) eingesetzt. Aufgrund der großen Menge an Daten, die von der Azure Kinect generiert werden, verfügt die Komponente auch über mehrere Datenreduktionstechniken, um die Punktwolken auf ihre relevantesten Daten zu filtern. Die Leistung der Komponente wird in Bezug auf Registrierungsqualität, Datenreduktionsrate und Geschwindigkeit bewertet. Zwei Arten von Umgebungen werden verwendet, um die Registrierungsgenauigkeit zu bewerten: Ein simpler aber detailreicher leerer Flur und ein größeres Bürogebäude unter normalen Arbeitsbedingungen. Unsere Komponente zeigt robuste Ergebnisse in beiden Umgebungen, mit der Fähigkeit, Parameter je nach Umgebung und Aufnahmeverfahren noch extra fein abzustimmen. Die Komponente überwindet viele der Einschränkungen, die mit der Registrierung und Kombination von Azure Kinect-Punktwolkendaten einhergehen. Sie wurde in C++ unter Verwendung von PCL und OpenCV geschrieben. Zusammen mit der LiDAR SLAM-Komponente kann das System auch außerhalb der Bauindustrie eingesetzt werden, etwa für die Erfassung archäologischer Stätten oder zur Erstellung von 3D-Modellen realer Objekte für den Einsatz in Virtual-Reality-Anwendungen.
description: With the continued digitalization of the construction industry BIM (Building Information Modeling) lends itself to ever more use cases. Comparing a BIM model to its real-life twin has traditionally been a manual and often time-consuming task. In order to automate this, the BIMCheck project was initiated. So far, using LiDAR (Light Detection and Ranging) and SLAM (Simultaneous Localization and Mapping), a building and its various rooms can be roughly compared with its BIM Model. However, due to the sparse density of the LiDAR point clouds, small objects of interest such as power sockets, light switches or emergency installations cannot be sufficiently recognized and compared to their BIM model counterpart. To capture these smaller objects, this thesis introduces an Azure Kinect component into the modular BIMCheck pipeline. This component records, registers and post-processes multiple unstructured colored point clouds extracted from the Azure Kinect frames simultaneously in real-time. While most of the registration is achieved by a good initial guess obtained from LiDAR SLAM, additional registration through Perspective-n-Point (PnP) is also employed. Due to the large amount of data generated by the Azure Kinect, the component also features multiple data reduction techniques in order to keep only the most relevant data while filtering away the rest.The performance of the component is evaluated in terms of registration quality, data reduction rate and performance. Two types of environments are used to evaluate the registration accuracy: A simple but feature-rich empty hallway and a larger office complex under normal working conditions. Our component shows robust results in both environments, with the ability to fine-tune parameters depending on the environment and recording procedure.The component overcomes many of the limitations that come with registering and combining Azure Kinect point cloud data. It was written in C++ using PCL and OpenCV. Together with the LiDAR SLAM component, the system may also be used outside of the construction industry, ranging from scanning archaeological sites to creating 3D models of real-world objects for use in virtual reality applications.