InverseCSG: MIT-Forscher automatisieren das Reverse Engineering von 3D-Modellen

Forscher am MIT haben auf der SIGGRAPH Asia 2018, einer Ausstellung für Computergrafik und interaktive Technologien, eine neue Methode zur Bearbeitung von CAD-Modellen präsentiert.

Das Team erklärt die neue Methode in dem Paper mit dem Namen “InverseCSG: Automatic Conversion of 3D Models to CSG Trees“. Das Verfahren soll dabei helfen 3D-Modelle nachträglich leichter zu ändern.

Bei vielen 3D-Modellen gibt es keine Metadaten, welche zeigen, wie die Modellierung gemacht wurde. Das erschwert die nachträgliche Bearbeitung solcher Modelle. Die Forscher des MIT haben einen Algorithmus geschaffen, der automatisiert den Aufbau der Datei erstellen kann.

Das MIT nennt die Methode InverseCSG. Bei der CSG-Modellierung wird ein Modell aus Primitiva (zum Beispiel Quader, Zylinder) mittels mengentheorethischer Operationen aufgebaut. Dies wird systemintern als Weg und nicht als Endprodukt gespeichert. Bei einer Umwandlung in ein anderes Format (zB .stl) geht dieser CSG-Baum verloren. Aus diesem Grund haben die Forscher den Algorithmus erschaffen.

In einer Zusammenfassung wird das Verfahren so beschrieben:

While computer-aided design is a major part of many modern manufacturing pipelines, the design files typically generated describe raw geometry. Lost in this representation is the procedure by which these designs were generated. In this paper, we present a method for reverse-engineering the process by which 3D models may have been generated, in the language of constructive solid geometry (CSG). Observing that CSG is a formal grammar, we formulate this inverse CSG problem as a program synthesis problem. Our solution is an algorithm that couples geometric processing with state-ofthe-art program synthesis techniques. In this scheme, geometric processing is used to convert the mixed discrete and continuous domain of CSG trees to a pure discrete domain where modern program synthesizers excel. We demonstrate the efficiency and scalability of our algorithm on several different examples, including those with over 100 primitive parts. We show that our algorithm is able to find simple programs which are close to the ground truth, and demonstrate our method’s applicability in mesh re-editing. Finally, we compare our method to prior state-of-the-art. We demonstrate that our algorithm dominates previous methods in terms of resulting CSG compactness and runtime, and can handle far more complex input meshes than any previous method.

Videoerklärung der Methode

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden