Rohrböck, R. (2023). 3D object classification: From CAD models to reconstruction [Diploma Thesis, Technische Universität Wien]. reposiTUm. https://doi.org/10.34726/hss.2023.68182
E376 - Institut für Automatisierungs- und Regelungstechnik
-
Datum (veröffentlicht):
2023
-
Umfang:
82
-
Keywords:
Roboter; Objekterkennung; CAD Modelle; Deep Learning
de
Robot; Object; Detection; CAD models; Deep Learning
en
Abstract:
Bei vielen Bereichen in der Robotik ist es notwendig, ein vollständiges und korrektes Verständnis der Umgebung eines Roboters zu bekommen. Das trifft insbesondere für Service Roboter zu, die in der gleichen Umgebung für einen längeren Zeitraum operieren. Ein wichtiger Teil dieses Verstehens, ist die vorkommenden Objekte korrekt zu identifizieren und verstehen zu können. Dazu wird eine Szene, in der sich der Roboter befindet üblicherweise mit einer Art von 3D-Scanner gescannt und kartographiert. Die Karte kann anschließend in ihre einzelnen Elemente zerlegt werden, entweder durch ein Segmentierungsverfahren oder durch einen Mensch, der sie annotiert. Im Folgenden wird jedes vorkommende Objekt einer Klasse aus einem vorbestimmten Set an Klassen zugeordnet, um korrekt von dem Roboter bearbeitet werden zu können.Solche Klassifizierungsaufgaben werden heutzutage üblicherweise mit neuronalen Netzen gemacht, die in der Trainingsphase jedoch viel Material benötigen, um gute Ergebnissezu erzielen. Aufgrund des Aufwands und manchmal auch mangelnder Möglichkeiten ist es oft nicht zielführend ein neuronales Netz mit Daten aus Scans zu trainieren. Eine andere Möglichkeit ist es mit Computer-aided Design (CAD) generierten 3D-Modellen zu trainieren, die oft in Vielzahl aus Bibliotheken oder Produktionsdaten vorhanden sind.Ein Problem, das daraus besteht, sind die generellen Unterschiede zwischen den in echt gescannten Daten und den CAD-Daten, die als Sim2Real Gap bekannt ist.Um diese Sim2Real Gap näher zu untersuchen werden verschiedene neuronale Netze ausgewählt und damit verschiedene Experimente durchgeführt. Die neuronalen Netze werden so ausgewählt, dass verschiedene Kategorien von Eingangsdaten abgedeckt werden. Diese Eingangsdaten sind bild-, voxel- also Volumens- und Punktwolken-basiert und die dafür ausgewählten Algorithmen sind MVCNN, VoxNet und PointNet sowie dem Nachfolger PointNet++. Um einen Tiefenscanner zu simulieren wird eine eigene Rekonstruktions-Methode ("Reconstruction Pipeline") erstellt, welche ähnlich wie mit Sensoren die notwendigen 3D-Daten aus selbst erstellten Tiefenbildern zusammensetzt.Danach werden diese rekonstruierten 3D Daten in verschiedenen Experimenten weiter verändert um verschiedene Defekte zu simulieren, die bei 3D Scans entstehen. Diese Defekte sind neben der Veränderung durch die Rekonstruktion, zufällige bzw. unbekannte Orientierung und Größe, teilweise Verdeckungen, eingeschränkte Sicht auf Objekte und fehlerhafte Segmentierung. Schlussendlich wird noch ein Datensatz mit echten Scans ausgewertet. Bei allen Experimenten hat sich gezeigt, dass ein Training mit rekonstruierten Daten die Performance teils deutlich verbessern kann. Weiters hat sich gezeigt, dass der bildbasierte Algorithmus, MVCNN, bei fast allen Experimenten am besten funktioniert hat, also am robustesten auf die getesteten Arten von Störungen reagiert.
de
In many areas of robotics, it is necessary to get a complete and correct understanding of the environment of a robot. Service robots in particular will operate in the same environment for extended period of time. An important part of that understanding is to correctly identify and understand the objects that are present. For this purpose, a scene in which the robot is usually located is scanned and mapped with a 3D scanner.The map can then be broken down into its individual elements either automatically by a segmentation procedure or by a human annotating it. Each object is assigned a classfrom a predetermined set of classes in order to be correctly processed by the robot.Nowadays, such classification tasks are done with neural networks, which need a lot of data to be trained and achieve good results. Due to the effort and sometimes also the lack of capabilities, it is often not feasible to train a neural network with data from real scans. Another possibility is to train on computer-aided design (CAD) generated 3D models, which are often available in large numbers from libraries or production data.One problem that arises is the difference that exist between the real scanned data andthe CAD data, known as the Sim2Real Gap.We investigate this Sim2Real Gap in more detail by selecting different neural networks and performing different experiments. The neural networks are selected to cover different categories of input data. These input data are images, voxel grids (volume-based) and point cloud based. The selected algorithms are, in the same order, MVCNN, VoxNetand PointNet and its successor PointNet++. In order to simulate a depth scanner,a reconstruction pipeline is created, which, similar to sensors, compiles the necessary 3D data from generated depth images. Afterwards, this reconstructed 3D data is further modified in different experiments to simulate different defects that occur during3D scans. These defects are, besides the change due to the reconstruction, random or unknown orientation and size, partial occlusions, limited visibility of objects and erroneous segmentation. Finally, a data set with real scans is evaluated. In all experiments, it was shown that training with reconstructed data can improve performance, in some cases significantly. Furthermore, it was shown that the image-based algorithm, MVCNN,performed best in almost all experiments, as it proved most robust to all types of noise applied.
en
Weitere Information:
Abweichender Titel nach Übersetzung der Verfasserin/des Verfassers