Extração Flexível de Isosuperfícies para Otimização de Malhas Baseada em Gradiente
Flexible Isosurface Extraction for Gradient-Based Mesh Optimization
August 10, 2023
Autores: Tianchang Shen, Jacob Munkberg, Jon Hasselgren, Kangxue Yin, Zian Wang, Wenzheng Chen, Zan Gojcic, Sanja Fidler, Nicholas Sharp, Jun Gao
cs.AI
Resumo
Este trabalho considera a otimização de malhas baseada em gradientes, onde iterativamente otimizamos uma malha de superfície 3D representando-a como a isosuperfície de um campo escalar, um paradigma cada vez mais comum em aplicações como fotogrametria, modelagem generativa e física inversa. As implementações existentes adaptam algoritmos clássicos de extração de isosuperfícies, como Marching Cubes ou Dual Contouring; essas técnicas foram projetadas para extrair malhas de campos fixos e conhecidos, e no contexto de otimização, elas carecem dos graus de liberdade necessários para representar malhas de alta qualidade que preservam características, ou sofrem de instabilidades numéricas. Introduzimos o FlexiCubes, uma representação de isosuperfície especificamente projetada para otimizar uma malha desconhecida em relação a objetivos geométricos, visuais ou até mesmo físicos. Nossa principal percepção é a introdução de parâmetros adicionais cuidadosamente escolhidos na representação, que permitem ajustes locais flexíveis na geometria e conectividade da malha extraída. Esses parâmetros são atualizados juntamente com o campo escalar subjacente por meio de diferenciação automática ao otimizar para uma tarefa subsequente. Baseamos nosso esquema de extração no Dual Marching Cubes para melhorar as propriedades topológicas e apresentamos extensões para gerar opcionalmente malhas tetraédricas e hierarquicamente adaptativas. Experimentos extensivos validam o FlexiCubes tanto em benchmarks sintéticos quanto em aplicações do mundo real, mostrando que ele oferece melhorias significativas na qualidade da malha e na fidelidade geométrica.
English
This work considers gradient-based mesh optimization, where we iteratively
optimize for a 3D surface mesh by representing it as the isosurface of a scalar
field, an increasingly common paradigm in applications including
photogrammetry, generative modeling, and inverse physics. Existing
implementations adapt classic isosurface extraction algorithms like Marching
Cubes or Dual Contouring; these techniques were designed to extract meshes from
fixed, known fields, and in the optimization setting they lack the degrees of
freedom to represent high-quality feature-preserving meshes, or suffer from
numerical instabilities. We introduce FlexiCubes, an isosurface representation
specifically designed for optimizing an unknown mesh with respect to geometric,
visual, or even physical objectives. Our main insight is to introduce
additional carefully-chosen parameters into the representation, which allow
local flexible adjustments to the extracted mesh geometry and connectivity.
These parameters are updated along with the underlying scalar field via
automatic differentiation when optimizing for a downstream task. We base our
extraction scheme on Dual Marching Cubes for improved topological properties,
and present extensions to optionally generate tetrahedral and
hierarchically-adaptive meshes. Extensive experiments validate FlexiCubes on
both synthetic benchmarks and real-world applications, showing that it offers
significant improvements in mesh quality and geometric fidelity.