Variational auto-encoder for outputting a 3D model
AssigneeDassault Systemes
InventorNicolas Beltrand
Life of this patent
Estimating the term…
Abstract
A computer-implemented method of machine-learning. The method includes obtaining a Variational Auto-encoder architecture for a neural network which is configured to take as an input a 2D sketch and a random variable, and to output a 3D model represented by the 2D sketch. The method of machine-learning also includes teaching the neural network.
Claims24
A computer-implemented method of machine-learning comprising:
- obtaining a Variational Auto-encoder architecture for a neural network which is configured to take as an input a 2D sketch and a random variable, and to output a 3D model represented by the 2D sketch;
- and
- teaching the neural network,
- wherein the 3D model is a parameterized 3D model defined by a set of parameters consisting of a first subset of one or more parameters and a second subset of one or more parameters, and the neural network is configured to selectively:
- output a value for the set, and
- take as input a value for the first subset from a user and output a value for the second subset, and
- wherein the architecture includes a vector, the neural network being configured:
- for selective outputting a value for the set, to produce a first value for the vector representing a probability distribution for the first subset, to output the value for the first subset corresponding to an argmax of the vector representing the probability distribution, and to further output the value for the second subset based on said first value for the vector;
- and
- for selective taking as input a value for the first subset from the user and outputting the value of the second subset, to produce a second value for the vector having a value of 1 for coordinates corresponding to the value for the first subset and a value of 0 for all other coordinates, the neural network being configured to output the value for the second subset based on the second value for the vector.
A computer-implemented method of 3D design, the method of 3D design comprising:
- obtaining a neural network taught according to a method of machine-learning including:
- obtaining a Variational Auto-encoder architecture for a neural network which is configured to take as an input a 2D sketch and a random variable, and to output a 3D model represented by the 2D sketch, and
- teaching the neural network;
- obtaining a 2D sketch;
- and
- applying the neural network to the 2D sketch and a random variable, to output a 3D model represented by the 2D sketch,
- wherein the 3D model is a parameterized 3D model defined by a set of parameters consisting of a first subset of one or more parameters and a second subset of one or more parameters, and the neural network is configured to selectively:
- output a value for the set, and
- take as input a value for the first subset from a user and output a value for the second subset, and
- wherein the architecture includes a vector, the neural network being configured:
- for selective outputting a value for the set, to produce a first value for the vector representing a probability distribution for the first subset, to output the value for the first subset corresponding to an argmax of the vector representing the probability distribution, and to further output the value for the second subset based on said first value for the vector;
- and
- for selective taking as input a value for the first subset from the user and outputting the value of the second subset, to produce a second value for the vector having a value of 1 for coordinates corresponding to the value for the first subset and a value of 0 for all other coordinates, the neural network being configured to output the value for the second subset based on the second value for the vector.
A device comprising:
- a non-transitory memory having recorded thereon a computer program that when executed by a processor causes the processor to
- be configured to:
- obtain a Variational Auto-encoder architecture for a neural network which is configured to take as an input a 2D sketch and a random variable, and to output a 3D model represented by the 2D sketch, and teach the neural network, wherein the 3D model is a parameterized 3D model defined by a set of parameters consisting of a first subset of one or more parameters and a second subset of one or more parameters, and the neural network is configured to selectively:
- output a value for the set, and take as input a value for the first subset from a user and output a value for the second subset, and
- wherein the architecture includes a vector, the neural network being configured:
- for selective outputting a value for the set, to produce a first value for the vector representing a probability distribution for the first subset, to output the value for the first subset corresponding to an argmax of the vector representing the probability distribution, and to further output the value for the second subset based on said first value for the vector;
- and
- for selective taking as input a value for the first subset from the user and outputting the value of the second subset, to produce a second value for the vector having a value of 1 for coordinates corresponding to the value for the first subset and a value of 0 for all other coordinates, the neural network being configured to output the value for the second subset based on the second value for the vector, and/or
- be configured to:
- obtain a neural network taught by the processor being configured to:
- obtain the Variational Auto-encoder architecture for the neural network which is configured to take as the input the 2D sketch and the random variable, and to output the 3D model represented by the 2D sketch, and
- teach the neural network, provide a 2D sketch, and apply the neural network to the 2D sketch and a random variable, to output a 3D model represented by the 2D sketch, wherein the 3D model is a parameterized 3D model defined by a set of parameters consisting of a first subset of one or more parameters and a second subset of one or more parameters, and the neural network is configured to selectively:
- output a value for the set, and take as input a value for the first subset from a user and output a value for the second subset, and wherein the architecture includes a vector, the neural network being configured:
- for selective outputting a value for the set, to produce a first value for the vector representing a probability distribution for the first subset, to output the value for the first subset corresponding to an argmax of the vector representing the probability distribution, and to further output the value for the second subset based on said first value for the vector;
- and
- for selective taking as input a value for the first subset from the user and outputting the value of the second subset, to produce a second value for the vector having a value of 1 for coordinates corresponding to the value for the first subset and a value of 0 for all other coordinates, the neural network being configured to output the value for the second subset based on the second value for the vector.
A computer-implemented method of machine-learning comprising:
- obtaining a Variational Auto-encoder architecture for a neural network which is configured to take as an input a 2D sketch and a random variable, and to output a 3D model represented by the 2D sketch;
- and
- teaching the neural network,
- wherein the neural network includes:
- a first part which is configured to take the 2D sketch and the random variable as inputs and to provide a respective output, and
- a second part which is configured to take the respective output of the first part as input and to output the 3D model,
- wherein the first part includes:
- a first subpart which is configured to take the 2D sketch as input and to output a first latent vector, and
- a second subpart which is configured to take the first latent vector and the random variable, and to re-parameterize the first latent vector into a second latent vector with the random variable, and
- wherein the second subpart is configured to perform the following operation:
- output=μ+δ*ε
- where:
- output denotes the second latent vector,
- ε denotes the random variable,
- μ denotes a conditional mean of the second latent vector, and
- δ denotes a conditional standard deviation of the second latent vector.
A computer-implemented method of machine-learning comprising:
- obtaining a Variational Auto-encoder architecture for a neural network which is configured to take as an input a 2D sketch and a random variable, and to output a 3D model represented by the 2D sketch;
- and
- teaching the neural network,
- wherein the 3D model is defined by a section and an extrusion, the section being defined by a list of positional parameters, and the neural network comprises a recurrent neural network configured to output a value for the list,
- wherein the neural network is further configured to output a value for the extrusion based on a final state of the recurrent neural network, and
- wherein the section is further defined by a number representing a type of the section, the neural network being further configured to output a vector representing a probability distribution for the number, and optionally the outputting of the value for the extrusion and/or for the list of positional parameters is further based on the vector representing the probability distribution.
Dependencies are inferred from the claim text.