US9928314B2ActiveUtilityA1

Fitting sample points with an isovalue surface

Assignee: DASSAULT SYSTEMESPriority: Apr 10, 2014Filed: Apr 10, 2015Granted: Mar 27, 2018
Est. expiryApr 10, 2034(~7.7 yrs left)· nominal 20-yr term from priority
G06T 17/00G06F 17/175G06F 30/17G06F 17/10G06T 2210/56G06T 2215/06G06T 15/08G06T 2215/16G06F 30/00G06F 30/23G06F 17/5086G06F 17/50G06F 17/5018
61
PatentIndex Score
1
Cited by
48
References
13
Claims

Abstract

The invention notably relates to a computer-implemented method for designing a three-dimensional modeled object that represents a physical entity. The method comprises providing sample points; determining a volumetric function, within a predetermined class of volumetric functions, as the optimum of an optimization program that explores orientation vectors defined at the sample points, wherein the optimization program penalizes a distance from the explored orientation vectors; and fitting the sample points with an isovalue surface of the volumetric function, wherein the program further penalizes oscillations of the fitted isovalue surface.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A computer-implemented method for generating a three-dimensional modeled object that represents a physical entity, comprising:
 providing sample points; 
 determining a volumetric function, within a predetermined class of volumetric functions, as the optimum of an optimization program that explores orientation vectors defined at the sample points, wherein the optimization program penalizes a distance from the explored orientation vectors, wherein the distance from the explored orientation vectors involves a difference between a gradient of an argument volumetric function and an explored orientation vector at the sample points; 
 fitting the sample points with an isovalue surface of the volumetric function, wherein the optimization program further penalizes oscillations of the isovalue surface; and 
 displaying the three-dimensional modeled object generated based on the fitting. 
 
     
     
       2. The method of  claim 1 , wherein the oscillations for an explored volumetric function involve a volume integral of a positive function of a derivation of the explored volumetric function. 
     
     
       3. The method of  claim 2 , wherein the positive function is a square function. 
     
     
       4. The method of  claim 2 , wherein the derivation of the explored volumetric function is a normalization of the explored volumetric function obtained by subtracting an average value of the volumetric function at the sample points. 
     
     
       5. The method of  claim 4 , wherein the optimization program is: F 
       
         
           
             
               
                 
                   F 
                   * 
                 
                 ⁡ 
                 
                   ( 
                   p 
                   ) 
                 
               
               = 
               
                 f 
                 ⁡ 
                 
                   ( 
                   
                     
                       
                         argmax 
                         
                           θ 
                           , 
                           ϕ 
                         
                       
                       ⁢ 
                       
                         
                           ∫ 
                           
                             ∫ 
                             ∫ 
                           
                         
                         V 
                       
                       ⁢ 
                       
                         
                           f 
                           ⁡ 
                           
                             ( 
                             
                               θ 
                               , 
                               ϕ 
                               , 
                               p 
                             
                             ) 
                           
                         
                         nor 
                         2 
                       
                       ⁢ 
                       d 
                       ⁢ 
                       
                           
                       
                       ⁢ 
                       ν 
                     
                     , 
                     p 
                   
                   ) 
                 
               
             
           
         
       
       where:
 p={p 1  . . . p N } are the sample points, 
 F is the predetermined class of volumetric functions, defined on volume domain V, and 
 
       
         
           
             
               
                 
                   f 
                   ⁡ 
                   
                     ( 
                     
                       θ 
                       , 
                       ϕ 
                       , 
                       p 
                     
                     ) 
                   
                 
                 nor 
               
               = 
               
                 
                   f 
                   ⁡ 
                   
                     ( 
                     
                       θ 
                       , 
                       ϕ 
                       , 
                       p 
                     
                     ) 
                   
                 
                 - 
                 
                   
                     
                       ∑ 
                       i 
                     
                     ⁢ 
                     
                       
                         f 
                         
                           θ 
                           , 
                           ϕ 
                         
                       
                       ⁡ 
                       
                         ( 
                         
                           p 
                           i 
                         
                         ) 
                       
                     
                   
                   N 
                 
               
             
           
         
       
       is the normalization of the explored volumetric function ƒ(θ, φ, p)=argmin ƒϵF Σ i ∥∇ƒ(p i )−n θ     i     φ     i   ∥, wherein N={n θ     i     φ     i    . . . n θ     N     φ     N   } are explored orientation vectors defined at the sample points P by azimuth and elevation angles θ={θ 1  . . . θ N } and φ={φ 1  . . . φ N }. 
     
     
       6. The method of  claim 1 , wherein the sample points correspond to 3D curves sketched by a user and the optimization program explores the orientation vectors under a constraint that the explored orientation vectors be normal to the 3D curves and respect a minimal rotation propagation condition over each 3D curve. 
     
     
       7. The method of  claim 6 , wherein the constraint that the explored orientation vectors respect the minimal rotation propagation condition corresponds to an application of a double reflection method. 
     
     
       8. The method of  claim 6 , wherein the determining comprises solving the optimization program by a meta-heuristic optimization. 
     
     
       9. The method of  claim 8 , wherein the meta-heuristic optimization is a particle swarm optimization. 
     
     
       10. The method of  claim 9 , wherein the distance from the explored orientation vectors involves a sum of norms of the difference between the gradient of the argument volumetric function and the explored orientation vector at the sample points. 
     
     
       11. The method of  claim 1 , wherein the physical entity is a manufacturing product. 
     
     
       12. A non-transitory data storage medium having recorded thereon a computer program that comprises instructions for performing a method of generating a three-dimensional modeled object that represents a physical entity, wherein the method comprises:
 providing sample points; 
 determining a volumetric function, within a predetermined class of volumetric functions, as the optimum of an optimization program that explores orientation vectors defined at the sample points, wherein the optimization program penalizes a distance from the explored orientation vectors, wherein the distance from the explored orientation vectors involves a difference between a gradient of an argument volumetric function and an explored orientation vector at the sample points; 
 fitting the sample points with an isovalue surface of the volumetric function, wherein the computer program further penalizes oscillations of the isovalue surface; and 
 displaying the three-dimensional modeled object generated based on the fitting. 
 
     
     
       13. A system comprising a processor coupled to a memory and a graphical user interface, the memory having recorded thereon a computer program that comprises instructions for performing a method of generating a three-dimensional modeled object that represents a physical entity, wherein the method comprises:
 providing sample points; 
 determining a volumetric function, within a predetermined class of volumetric functions, as the optimum of an optimization program that explores orientation vectors defined at the sample points, wherein the optimization program penalizes a distance from the explored orientation vectors, wherein the distance from the explored orientation vectors involves a difference between a gradient of an argument volumetric function and an explored orientation vector at the sample points; 
 fitting the sample points with an isovalue surface of the volumetric function, wherein the computer program further penalizes oscillations of the isovalue surface; and 
 displaying the three-dimensional modeled object generated based on the fitting.

Join the waitlist — get patent alerts

Track US9928314B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.