US-12619797-B2 - Topological message passing for three dimensional models in boundary representation format
Abstract
Methods, systems, and apparatus, including medium-encoded computer program products, for computer aided design of physical structures include: obtaining a B-Rep model including parametric surfaces and associated coedges; generating feature matrices from the coedges associated with the parametric surfaces; using the feature matrices in a convolution layer of a convolutional neural network of a machine learning algorithm to recognize a collection of faces or edges in the B-Rep model, including concatenating results of transforming the feature matrices using a topological walk matrix that represents topological information for the parametric surfaces based on adjacency relationships among the coedges (e.g., including ordering information); and preparing, based on the at least one collection of faces or edges recognized by the machine learning algorithm, (i) a display of the B-Rep model to facilitate user changes or (ii) a design of the B-Rep model to facilitate manufacturing a physical structure using the B-Rep model.
Inventors
- Joseph George Lambourne
Assignees
- AUTODESK, INC.
Dates
- Publication Date
- 20260505
- Application Date
- 20211104
Claims (20)
- 1 . A method comprising: obtaining, in a structural modelling program, a three dimensional model of a manufacturable object comprising one or more modelled manifolds defined by boundary representation data structure entities comprising (i) trimmed parametric surfaces and (ii) coedges associated with the trimmed parametric surfaces, wherein the coedges specify topological information for the trimmed parametric surfaces, and the topological information comprises adjacency relationships among the coedges including ordering information comprising next and previous coedges around a parent face of a given coedge; generating, by the structural modelling program, feature matrices from the boundary representation data structure entities, wherein the feature matrices represent geometry information about the trimmed parametric surfaces; using, by the structural modelling program, the feature matrices in at least one convolution layer of a convolutional neural network of a machine learning algorithm to recognize at least one collection of faces or edges in the one or more modelled manifolds, wherein using the feature matrices in the at least one convolution layer comprises concatenating results of transforming the feature matrices using at least one topological walk matrix built from data of the boundary representation data structure entities to represent the topological information for the trimmed parametric surfaces, wherein the data comprises the adjacency relationships among the coedges including the ordering information; and preparing, by the structural modelling program and based on the at least one collection of faces or edges recognized by the machine learning algorithm, (i) a display of the three dimensional model of the manufacturable object to facilitate user input to change the three dimensional model or (ii) a design of the three dimensional model of the manufacturable object to facilitate manufacturing a physical structure using the three dimensional model.
- 2 . The method of claim 1 , wherein the one or more modelled manifolds comprise at least one closed manifold representing a modelled solid.
- 3 . The method of claim 1 , wherein the one or more modelled manifolds comprise at least one open manifold representing a modelled sheet body.
- 4 . The method of claim 1 , wherein the geometry information about the trimmed parametric surfaces comprises surface type information associated with faces of the trimmed parametric surfaces.
- 5 . The method of claim 1 , wherein the geometry information about the trimmed parametric surfaces comprises curve type information associated with edges of the trimmed parametric surfaces.
- 6 . The method of claim 1 , wherein the geometry information about the trimmed parametric surfaces comprises convexity information associated with edges of the trimmed parametric surfaces.
- 7 . The method of claim 1 , wherein the geometry information about the trimmed parametric surfaces comprises boundary representation flag information indicating an orientation of a face, an edge, a coedge, a surface, or a curve.
- 8 . The method of claim 7 , wherein the geometry information about the trimmed parametric surfaces comprises the boundary representation flag information indicating at least one of (i) whether a coedge has a same direction as a curve of its associated edge, (ii) whether a normal direction of a face is parallel to normals of an underlying surface, or (iii) whether a coedge is the coedge referenced by the parent loop.
- 9 . The method of claim 1 , wherein using the feature matrices in the at least one convolution layer of the convolutional neural network of the machine learning algorithm to recognize the at least one collection of faces or edges comprises identifying the at least one collection of faces or edges as being similar to at least one of multiple other collections of faces or edges in other three dimensional models, the other three dimensional models being in boundary representation format and having been previously processed by the machine learning algorithm in a self-supervised manner using adjacency relationships including ordering information for coedges in the other three dimensional models that are processed using at least one convolutional kernel defined with respect to coedges to find learnable parameters associated with both geometry and topology information within a region of a three dimensional model.
- 10 . The method of claim 9 , wherein the collections of faces or edges are represented using vectors of numbers for faces, edges and coedges in a multi-dimensional embedding space, and the identifying uses similarity of the vectors of numbers assessed using cosine similarity, Euclidean distance, or another measure of similarity in the multi-dimensional embedding space.
- 11 . The method of claim 10 , comprising running the machine learning algorithm in which the feature matrices are used in the at least one convolution layer, and running the machine learning algorithm comprises pooling information from coedges onto their parent faces and edges in each convolution unit of the convolutional neural network.
- 12 . The method of claim 1 , wherein the structural modelling program comprises a computer aided design program.
- 13 . The method of claim 1 , wherein the structural modelling program comprises a computer aided engineering program.
- 14 . The method of claim 1 , wherein the structural modelling program comprises a computer aided manufacturing program.
- 15 . The method of claim 1 , wherein the structural modelling program comprises a process planning program.
- 16 . The method of claim 1 , wherein the preparing comprises modifying the display of the three dimensional model by designating the at least one collection of faces or edges in the display of the three dimensional model.
- 17 . The method of claim 1 , wherein the preparing comprises modifying the display of the three dimensional model by designating a suggested completion of a user selection of the at least one collection of faces or edges in the display of the three dimensional model.
- 18 . The method of claim 1 , wherein the preparing comprises modifying the display of the three dimensional model by alerting a user about a suitability of the three dimensional model for at least one predefined downstream process.
- 19 . The method of claim 18 , wherein the at least one predefined downstream process comprises a manufacturing process or a structural performance process.
- 20 . The method of claim 1 , wherein the preparing comprises modifying the design of the three dimensional model by manipulating geometry of the at least one collection of faces or edges to automate a predefined workflow.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS This application claims the benefit under 35 U.S.C. § 119(e) of U.S. Patent Application No. 63/113,766, entitled “TOPOLOGICAL MESSAGE PASSING FOR THREE DIMENSIONAL MODELS IN BOUNDARY REPRESENTATION FORMAT”, filed Nov. 13, 2020, which is incorporated herein by reference in its entirety. BACKGROUND This specification relates to computer aided design of physical structures, which can be manufactured using additive manufacturing, subtractive manufacturing and/or other manufacturing systems and techniques. Computer Aided Design (CAD) software has been developed and used to generate three-dimensional (3D) representations of objects, and Computer Aided Manufacturing (CAM) software has been developed and used to manufacture the physical structures of those objects, e.g., using Computer Numerical Control (CNC) manufacturing techniques. Typically, CAD software stores the 3D representations of the geometry of the objects being modeled using a boundary representation (B-Rep) format. A B-Rep model is a set of connected surface elements specifying boundaries between a solid portion and a non-solid portion of the modelled 3D object. In a B-Rep model (often referred to as a B-Rep), geometry is stored in the computer using smooth and precise mathematical surfaces, in contrast to the discrete and approximate surfaces of a mesh model, which can be difficult to work with in a CAD program. B-Rep models are the standard way 3D shapes are described in commercial CAD applications/software. They combine trimmed parametric curves and surfaces with topological information which connects the geometric entities to describe manifolds. Prismatic shapes can be represented using lightweight primitive curves and surfaces while free-form objects can be defined using NURBS (Non-Uniform Rational B-Spline) surfaces. While this makes the representation both compact and expressive, the complexity of the data structures and limited availability of labelled datasets has presented a high barrier to entry for researchers. The task of segmenting B-Rep models is of particular interest as it allows the automation of many laborious manual tasks in Computer Aided Engineering (CAE) and Computer Aided Process Planning (CAPP). Although attempts were made in the 90s and early 2000s to apply neural networks to the task of B-Rep segmentation, the absence of machine learning frameworks and large labelled datasets caused progress to stall until very recently. For example, P. Jayaraman, et al., UV-net: Learning from curve-networks and solids, 2020, proposed a unified representation for parametric curve-networks and solids by exploiting the u- and uv-parameter domains of curves and surfaces to model the geometry, and an adjacency graph to explicitly model the topology, which enables the use of a network architecture based on coupled image and graph convolutional neural networks to extract features from curve-networks and solids. SUMMARY This specification describes technologies relating to computer aided design of physical structures using topological message passing for three-dimensional (3D) models in boundary representation (B-Rep) format. A framework for using machine learning to recognize collections of faces or edges on solid models from examples is provided. In a graph, there is no concept of the order of the edges around a given node. Hence in traditional message passing graph networks, convolution is achieved by aggregating messages from neighboring nodes using symmetric functions. In contrast, the convolutions described in this document can aggregate information from neighboring faces, edges and coedges onto a single coedge. Using walks from a starting coedge to other entities in a convolutional kernel for B-Rep models, an analogy can be drawn to the use of sliding filter windows in image convolution neural networks (CNNs). The entities in the convolutional kernel for B-Rep models can be ordered, similar to the pixels in an image convolution, and the feature vectors can be concatenated in this order. The learnable weights can then be applied to specific entities. This avoids the need for symmetric functions. This provides improved performance, e.g., in terms of processing power, memory usage and/or neural network recognition of geometric entities in a three dimensional model. For example, in contrast with voxel based approaches for feature detection, the present systems and techniques can avoid the cubic storage complexity of the voxel representation of an object's volume (rather than its boundary) which puts severe limitations on the size of geometric features that can be detected. As industrial CAD models often contain small but important features, the present systems and techniques are more readily applicable than voxel based approaches using current GPU (Graphical Processing Unit) hardware. As another example, in contrast with point cloud based segmentation, the present systems and techniques can avoid the risk