GeoBrush: Interactive Mesh Geometry Cloning

Eurographics 2011

Kenshi Takayama, Ryan Schmidt, Karan Singh, Takeo Igarashi, Tamy Boubekeur, Olga Sorkine

teaser

Abstract

We propose a method for interactive cloning of 3D surface geometry using a paintbrush interface, similar to the continuous cloning brush popular in image editing. Existing interactive mesh composition tools focus on atomic copy-and-paste of pre-selected feature areas, and are either limited to copying surface displacements, or require the solution of variational optimization problems, which is too expensive for an interactive brush interface. In contrast, our GeoBrush method supports real-time continuous copying of arbitrary high-resolution surface features between irregular meshes, including topological handles. We achieve this by first establishing a correspondence between the source and target geometries using a novel generalized discrete exponential map parameterization. Next we roughly align the source geometry with the target shape using Green Coordinates with automatically-constructed cages. Finally, we compute an offset membrane to smoothly blend the pasted patch with C^1 continuity before stitching it into the target. The offset membrane is a solution of a bi-harmonic PDE, which is computed on the GPU in real time by exploiting the regular parametric domain. We demonstrate the effectiveness of GeoBrush with various editing scenarios, including detail enrichment and completion of scanned surfaces.

Publication

Video


[mp4]

Supplemental material

Hindsight on the biharmonic solver

In the paper, we used a two-step approach for the biharmonic solver where the values and their derivatives are updated in an interleaving fashion. This was because we first tried the more standard approach of using a larger stencil (i.e., two-ring neighbor stencil), but it didn't work somehow. After publishing the paper, we did a follow-up experiment about this (code), and found that we made a small mistake of implementation. It turned out that the approach of using a larger stencil, whose implementation is simpler than the two-step approach, just works. Hopefully this information might be useful for someone who wants to implement a biharmonic solver similar to ours.

Return to Home