Les chercheurs du MIT ont mis au point une technique permettant de « rétro-concevoir » des modèles de conception assistée par ordinateur (CAO) 3-D complexes — en les décomposant en les nombreuses formes individuelles dont ils sont faits — pour les rendre beaucoup plus faciles à personnaliser pour les utilisateurs pour la fabrication et Applications d'impression 3D. Crédit :Massachusetts Institute of Technology
Les chercheurs du MIT ont mis au point une technique qui "reverse" des modèles complexes de conception assistée par ordinateur (CAO) en 3D, ce qui les rend beaucoup plus faciles à personnaliser pour les applications de fabrication et d'impression 3D.
Presque tous les produits commerciaux commencent sous forme de fichier CAO, un modèle 2D ou 3D avec les spécifications de conception du produit. Une méthode largement utilisée pour représenter les modèles 3D d'aujourd'hui est la géométrie solide constructive (CSG), une technique où de nombreuses formes de base, ou "primitifs, " avec quelques paramètres réglables peut être assemblé de diverses manières pour former un seul objet. Une fois finalisé, l'objet numérique compilé est converti en un maillage de triangles 3D qui définit la forme de l'objet. Ces maillages sont utilisés en entrée pour de nombreuses applications, y compris l'impression 3D et la simulation virtuelle.
Personnaliser ce maillage, cependant, n'est pas une tâche facile. Par exemple, ajuster le rayon dans une partie de l'objet nécessite de peaufiner individuellement les sommets et les bords de chaque triangle affecté. Avec des modèles complexes comprenant des milliers de triangles, la personnalisation devient intimidante et chronophage. Les techniques traditionnelles pour reconvertir les maillages triangulaires en formes ne s'adaptent pas bien aux modèles complexes ou ne fonctionnent pas avec précision en basse résolution, fichiers bruyants.
Dans un article présenté lors de la récente conférence AMC SIGGRAPH Asia, Les chercheurs du MIT décrivent un système qui applique une technique appelée "synthèse de programme" pour décomposer les modèles CAO en leurs formes primitives, comme les sphères et les cuboïdes. La synthèse de programme construit automatiquement des programmes informatiques basés sur un ensemble d'instructions.
Essentiellement, pour construire des modèles CAO, les designers assemblent des formes individuelles en un objet final; la méthode des chercheurs fait l'inverse, démonter les modèles CAO en formes individuelles qui peuvent être modifiées. En entrée, le système prend un maillage triangulaire 3D et détermine d'abord les formes individuelles qui le composent. La synthèse du programme parcourt les formes, essayer de comprendre comment les formes ont été assemblées et assemblées dans le modèle final. Ce faisant, il décompose le maillage en un arbre de nœuds qui représentent les formes primitives et d'autres nœuds détaillant les étapes de la façon dont ces formes s'emboîtent. Les formes finales contiennent des paramètres modifiables que les utilisateurs peuvent modifier et qui peuvent être rechargés dans le maillage.
Formes fondamentales
Les chercheurs ont construit un ensemble de données de 50 modèles CAO 3D de complexité variable. Dans les expériences, les chercheurs ont démontré que leur système pouvait rétro-concevoir des fichiers CAO composés de jusqu'à 100 formes primitives. Des modèles plus simples peuvent être décomposés en une minute environ. Alors que les temps d'exécution peuvent être rapides, le principal avantage du système est sa capacité à distiller des modèles très complexes en simples, formes fondamentales, disent les chercheurs.
"À un haut niveau, le problème est l'ingénierie inverse d'un maillage triangulaire en un arbre simple, " dit Tao Du, un doctorat étudiant dans le groupe Computational Fabrication du Laboratoire d'informatique et d'intelligence artificielle (CSAIL) du MIT. "Idéalement, si vous souhaitez personnaliser un objet, il serait préférable d'avoir accès aux formes originales, quelles sont leurs dimensions et comment elles sont combinées. Mais une fois que vous avez tout combiné dans un maillage triangulaire, vous n'avez qu'une liste de triangles avec lesquels travailler, et cette information est perdue. Une fois que nous avons récupéré les métadonnées, il est plus facile pour d'autres personnes de modifier les conceptions."
Le processus pourrait être utile dans la fabrication ou lorsqu'il est combiné avec un logiciel d'impression 3D, Du dit. Ceci est particulièrement important à l'ère du partage de conception, où les utilisateurs amateurs d'imprimantes 3D téléchargent des modèles d'impression 3D sur des sites Web pour que les communautés en ligne les téléchargent et les modifient. Les téléchargements sont principalement des maillages triangulaires, car les maillages sont bien plus universellement acceptés sur toutes les plates-formes que les fichiers CAO d'origine basés sur CSG.
"Nous avons des tonnes de modèles de maillage, mais relativement peu de fichiers CAO derrière eux, " Du dit. " Si les utilisateurs veulent reproduire le design à la maison et le personnaliser un peu, alors cette technique pourrait être utile."
Arbres et triangles
La synthèse de programme trouve automatiquement les programmes informatiques candidats en fonction d'une "grammaire, " c'est-à-dire la structure dans laquelle il doit fonctionner, comme les arbres, et les spécifications mathématiques. En utilisant ces contraintes, la synthèse du programme revient et remplit les blancs pour construire un algorithme qui satisfait ces spécifications, donné une nouvelle entrée. La technique est utilisée, par exemple, pour les composants simples du génie logiciel.
Les chercheurs du MIT ont mis au point une technique permettant de « rétro-concevoir » des modèles de conception assistée par ordinateur (CAO) 3-D complexes — en les décomposant en les nombreuses formes individuelles dont ils sont faits — pour les rendre beaucoup plus faciles à personnaliser pour les utilisateurs pour la fabrication et Applications d'impression 3D. Crédit :Massachusetts Institute of Technology
Dans les travaux des chercheurs, la grammaire est CSG, représentés comme des arbres. Chaque nœud final (sans nœuds de branchement) représente une forme primitive avec des paramètres clairement définis, et les nœuds intermédiaires représentent les manières de base dont les formes convergent et se rapportent.
Les chercheurs ont développé une méthode qui permet à la synthèse du programme de numériser un maillage 3D entier et, essentiellement, Pensez à chaque arbre CSG possible qu'il pourrait créer comme un nouveau programme candidat.
Une fois que le système a reçu un maillage d'entrée, une étape de prétraitement détecte les emplacements possibles, orientation, et les paramètres de toutes les formes primitives. Ce processus crée un nuage de points massif sur la surface du maillage triangulaire. Un algorithme spécial de "détection de primitives" déduit de ces points les dimensions de chaque forme primitive qui compose le maillage.
Les chercheurs ont ensuite échantillonné des tonnes de points dans tout l'espace 3D et les ont signalés comme étant à l'intérieur ou à l'extérieur du maillage. Cela permet de déterminer comment les formes convergent ou se rapportent les unes aux autres. Un exemple simple est un maillage composé de deux sphères, A et B, fusionnés. Si un point échantillonné tombe à l'intérieur de la sphère A, un à l'intérieur de la sphère B, et un à l'intersection des deux (à l'intérieur des deux A et B), c'est très probablement une union des deux formes.
Compte tenu de ces informations, avec les dimensions primitives, la synthèse du programme pourrait potentiellement créer un arbre CGS. Mais, Des maillages 3D de complexité même faible nécessiteraient une synthèse de programme pour échantillonner des dizaines de milliers de points. Cela créerait un espace de recherche massif qui serait difficile à gérer du point de vue informatique. "L'alimentation directe de tous les échantillons étouffera le synthétiseur de programme, " Dit Du.
Pour s'assurer que le système fonctionne efficacement, les chercheurs ont conçu une méthode d'échantillonnage qui crée plusieurs petits sous-ensembles d'échantillons ponctuels dans l'espace 3-D, ce qui est beaucoup plus facile à calculer pour la synthèse de programme. En échantillonnant ces sous-ensembles, il crée un nouveau programme candidat, " ou arbre CGS, cela pourrait être considéré comme correct. Après de nombreuses itérations et en utilisant des techniques pour éliminer certains points et arbres, le système atterrit sur l'arbre CGS correct pour chaque forme, avec des étapes intermédiaires et des paramètres finaux corrects. Toutes les formes modifiées sont réintroduites dans le maillage alors que le système suit par calcul les étapes intermédiaires jusqu'à l'objet final.
Actuellement, le système ne gère que quatre formes primitives :sphères, cylindres, cubes, et tori (formes de beignets). Prochain, les chercheurs visent à augmenter la complexité de la grammaire CSG pour gérer plus de formes et plus de modificateurs en dehors des opérateurs booléens.
Cette histoire est republiée avec l'aimable autorisation de MIT News (web.mit.edu/newsoffice/), un site populaire qui couvre l'actualité de la recherche du MIT, innovation et enseignement.