Adaptive Surface Extraction from Anisotropic Volumetric Data: Contouring on Generalized Octrees Ricardo Uribe Lobello, Florence Denis, Florent Dupont
Total Page:16
File Type:pdf, Size:1020Kb
Adaptive surface extraction from anisotropic volumetric data: contouring on generalized octrees Ricardo Uribe Lobello, Florence Denis, Florent Dupont To cite this version: Ricardo Uribe Lobello, Florence Denis, Florent Dupont. Adaptive surface extraction from anisotropic volumetric data: contouring on generalized octrees. Annals of Telecommunications - annales des télé- communications, Springer, 2014, 69 (5-6), pp.331-343. 10.1007/s12243-013-0369-4. hal-01119413 HAL Id: hal-01119413 https://hal.archives-ouvertes.fr/hal-01119413 Submitted on 27 Mar 2017 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Noname manuscript No. (will be inserted by the editor) Adaptive surface extraction from anisotropic volumetric data: contouring on generalized octrees Ricardo Uribe Lobello, Florence Denis and Florent Dupont the date of receipt and acceptance should be inserted later Abstract In this article, we present an algorithm to larly, the recent developments of time-of-flight camera extract adaptive surfaces from anisotropic volumetric technology makes it possible to create 3D models from data. For example, this kind of data can be obtained objects by using depth information in a scene. from a set of segmented images, from the sampling of Volumetric datasets are often characterized by a strong an implicit function or it can be built by using depth im- anisotropy caused by the increasing resolution of images ages produced by time-of-flight cameras. However, for (millions of pixels) produced compared with the small many applications as geometry modelling, rendering or quantity of provided images (usually some hundreds). finite elements, it is better to use an explicit surface This will produce highly stretched voxels affecting the representation. This surface must fit to the geometri- ability of conventional octree based algorithms to cap- cal and topological features of the object in order to ture high frequency details of the surface. obtain a good approximation and to avoid topological Voxel data can be represented as a scalar function F 3 artefacts. Our algorithm is able to extract adaptive sur- so that F (x; y; z) 2 R j (x; y; z) 2 Z defined at the faces that accurately approximate the geometry of the nodes of a regular grid Ω. Let vx;y;z be the voxel centred original object while minimizing aliasing effects. In ad- at the index (x; y; z). A labelled volumetric object is de- dition, our solution is suitable to handle the anisotropy fined as the set of voxels V = f8vx;y;z j F (x; y; z) = lg of volumetric representations. In comparison with rele- where l is a value usually established in a segmentation vant methods in the state of the art, ours offers a good process. compromise between mesh quality and precision in the However, for rendering and geometrical modelling, it is geometrical approximation. more suitable to handle an explicit surface representa- tion. This has increased the development of algorithms Keywords Surface extraction, Multi-resolution to extract a piecewise surface approximation from the models, Volumetric representation, Image processing. discrete surface of V , noted @V . Generating accurate surfaces from voxels is challenging 1 Introduction because many datasets can include degenerated config- urations that will induce non-manifold surfaces. More- Volumetric data are already being used as a valu- over, @V can contain sharp features that will force to in- able source of information in multiple domains. It can crease arbitrarily the sampling. In these cases, uniform be obtained from the segmentation of a set of images sampling is not efficient because most of the samples obtained from a MRI or from 3D rasterization in order are far from the surface. Therefore, we need a method to produce a voxel representation of the object. Simi- that adaptively samples @V and generates an accurate The authors are at the surface. LIRIS laboratory of the University of Lyon In order to be used by post processing algorithms as Villeurbanne, 69100, France. re-meshing or rendering, the extracted surface must be Tel.: +33 (0)4.72.43.26.10 a topological 2-manifold, which means that every edge Fax: +33 (0)4.72.43.15.36 E-mail: [email protected], on the surface has to be shared by at most two polygons fl[email protected], fl[email protected] while each vertex in the surface must be surrounded by 2 Ricardo Uribe Lobello, Florence Denis and Florent Dupont a 1-ring of edges. Additionally, for numerical applica- cell. However, this approach can produce topological tions, the quality of individual polygons is an important artefacts and non-manifold configurations as illustrated factor that can strongly affect the performance and con- in figure 2. vergence of numerical algorithms. By limiting DC octree adaptivity, Varadhan et al. [17] In this article, we present a surface extraction method have proposed an improved DC that avoids non-manifold well adapted to anisotropic volumetric datasets. It pro- configurations. Then, in Dual Marching Cubes (DMC), duces visually appealing meshes while preserving the Nielson [11] used a look-up table to produce surfaces quality of most of the triangular elements. that are dual to those created by Marching cubes by allowing cells to contain more than one dual node in 2 Related Work order to solve the non-manifold vertex configurations. However, we observe that by simply applying the DMC There is a vast bibliography concerning surface gen- algorithm, non-manifold edge configurations can still eration methods. Most methods used to extract surfaces appear between cells sharing an ambiguous face (see from labelled volumetric data are based on the well figure 2). known Marching Cubes algorithm [8]. Dual Contouring methods have been mainly used with implicit functions but some of them have been partially adapted to vol- umetric data. We briefly summarize relevant methods hereafter. The Marching Cubes (MC) algorithm is based on a reg- ular division of the volumetric data in cubical cells that Fig. 2 (Left) Two DMC look-up table cases 17 connected by can be processed separately. All possible intersection an ambiguous face. (Right) Non-manifold edge configuration patterns have been reduced to 14 pre-calculated cases (line in red). resumed in a look-up table. However, MC extracts very dense surfaces with many bad-shaped triangles. Concerning non-manifold configurations, several ap- Several algorithms have made improvements to MC [20, proaches propose to create dual grids extracted from 15,10]. Kobbelt et al. [6] replace the regular grid by an an octree data structure. These grids are aligned to octree and only process the cells which intersect the sur- features of the surface by using Hermite data on the face. Varadhan et al. [18] control the octree subdivision octree cells. Schaefer et al. [14] have proposed to use using a topology preserving criterion in order to make a dual hexahedral grid combined with marching cubes every cell MC-compatible and obtain consistent adap- (Dual Marching Cubes DMC2) to extract the surface. tive meshes. Kazhdan et al. [5] propose an algorithm However, as dual cells are not necessarily convex, this to extract closed manifold surfaces with MC from un- algorithm can produce self-intersected surfaces (see fig- restricted octrees. However, all these algorithms apply ure 3). In addition, aligning the grid to shape features MC triangularion inside cells and generate a lot of bad can make many degenerated triangles appear. quality triangles. In addition, as surface nodes are lo- cated on the edges of octree cells, sharp features are lost during reconstruction. Fig. 1 (Left) Non-manifold vertex configuration and (right) Fig. 3 Schaefer et al. DMC2 self intersection problem. Ver- non-manifold edge configuration in original Dual Contouring tices in blue are inside @V (white are outside), the surface is algorithm. the blue dotted line, red circles are dual nodes and grey lines are dual cell edges. Yellow lines are (self-intersected) surface edges that are generated connecting surface nodes located on dual cell edges. Dual contouring (DC) methods (see Ju et al. [4,13]) are able to build adaptive meshes and to capture sharp features in the presence of Hermite Data (surface nor- In order to avoid self intersections, Manson and Schae- mals). In these methods, surface nodes are not created fer [9] built a dual tetrahedral grid that do not con- on cell's edges but one node is generated inside every tain inverted tetrahedra. Then, they applied a marching Adaptive surface extraction from anisotropic volumetric data: contouring on generalized octrees 3 tetrahedra (MT) to extract the surface. This solution structure is not the usual one: the octree cells do not produces intersection-free surfaces, unfortunately, us- have to be always subdivided in the tree main axial ing MT, combined with a feature aligned grid produces directions. In consequence, we can choose to subdivide meshes with many bad-shaped triangles. a cell in only one or two axial directions as illustrated Finally, Manifold Dual Contouring (MDC) [12] pro- in the figure 4 for a quadtree. duces adaptive manifold meshes by using DMC over a regular octree and a topology preserving criterion that maintains the topology of the original object. Never- theless, this approach can still generate self-intersected surfaces and its bottom-up strategy for mesh simpli- fication is not suitable to handle strongly anisotropic datasets.