Hierarchical mesh-to-points as-rigid-as-possible registration

Abstract

Surface registration is a fundamental problem in computer graphics and computer-aided design. The problem consists in finding a deformation from one surface to another that preserves some properties. For instance, in our inverse engineering context, we aim at finding the best, as isometric as possible, map between an input triangular model, and a large point cloud acquired on the actual mechanical part being processed. Existing solutions are not able to handle very large models with a good level of precision. We propose a method which is accurate and fast. Our solution combines an efficient iterative energy minimization scheme on a hierarchical decomposition of the problem geometry. Our experiments show that we obtain a fast and efficient algorithm compared to the state-of-the art method, while keeping its numerical accuracy.

Publication
Computer and Graphics (Proceedings of Shape Modeling International 2021)

Caption: Dataset: Yellow meshes are source models, blue point clouds correspond the target scans. Finally, red meshes are outputs we obtain after registration (see Table 1 for the settings). From left to right columns: two hats (a, f ) under springback deformation, a mapping between a rectangle (b) and a twisted helicoid (g) (90° to mimic a torsion), the sheet (c, h) for a complex deformation and a car hood model (d) with simulated scan (i). The last column (e, j, o) corresponds to a real test case of a CAD model and a scan of the real metal sheet. Meshes and point clouds are downsampled for visualization purposes.

@Article{Bourquat2021,
  author =       {Pierre Bourquat and David Coeurjolly and Guillaume
                  Damiand and Florent Dupont},
  title =        {Hierarchical mesh-to-points as-rigid-as-possible
                  registration},
  journal =      {Computer and Graphics (Proceedings of Shape Modeling
                  International 2021)},
  year =         2021,
  month =        {nov},
  note =         {in press},
  doi =          {10.1016/j.cag.2021.10.016}
}