reconstruction of voxels from sensor data

36
University of Coimbra Reconstruction of Voxels from Sensor Data Ricardo Martins Coimbra, 19 th January 2010 Doctoral Programme in Electrical Engineering and Computer Science Computer Graphics and 3D Modeling

Upload: jerold

Post on 23-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

Reconstruction of Voxels from Sensor Data. Ricardo Martins. Coimbra, 19 th January 2010. Computer Graphics and 3D Modeling. Doctoral Programme in Electrical Engineering and Computer Science. Contents. 3D object representation Solid modeling representation *Voxel *Octree - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Reconstruction of Voxels from Sensor Data

University of Coimbra

Reconstruction of Voxels from Sensor Data

Ricardo Martins

Coimbra, 19th January 2010

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Page 2: Reconstruction of Voxels from Sensor Data

University of Coimbra

Contents

-3D object representation

-Solid modeling representation*Voxel*Octree

-Data Acquisition/Conversion*Computer Tomography*Reconstruction of octrees from range data*Voxelization*Surface reconstruction from volumetric data

-Volume Graphics vs Surface Graphics

-References

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Page 3: Reconstruction of Voxels from Sensor Data

University of Coimbra

3D Object Representation

Points -Range images -Point cloud

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Surfaces -Polygonal mesh -Subdivision surfaces -Parametric surfaces: -Implicit surfaces

Solids -Voxels -Octrees -Binary Space Partitions - BSP Trees -Construtive Solid geometry - CSG

High Level Structures -Scene Graph -Application specific

Page 4: Reconstruction of Voxels from Sensor Data

University of Coimbra

Solids -Voxels -Octrees -Binary Space Partitions - BSP Trees -Construtive Solid geometry - CSG

Solid Modeling Representation

Representation of solid interior of objects -Surface may not describe explicitly the physical characteristics of the object

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data acquisition devices generate solid type data representations

Applications require solid object representationsRendering algorithms which require solid object representations -Ray tracing with refraction. The considered path of the rays depends on the internal physical characteristics of the object representation.

Page 5: Reconstruction of Voxels from Sensor Data

University of Coimbra

Solids -Voxels -Octrees -Binary Space Partitions - BSP Trees -Construtive Solid geometry - CSG

Solid Modeling Representation

Recursive partition of space by planes. -Mark leaf cells as inside or outside or outside object.

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Page 6: Reconstruction of Voxels from Sensor Data

University of Coimbra

Solids -Voxels -Octrees -Binary Space Partitions - BSP Trees -Construtive Solid Geometry - CSG

Solid Modeling Representation

Represent a solid object as hierarchy of Boolean operations -Union-Interception-Difference

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Page 7: Reconstruction of Voxels from Sensor Data

University of Coimbra

Solids -Voxels -Octrees -Binary Space Partitions - BSP Trees -Construtive Solid geometry - CSG

Solid Modeling Representation

Representation of solid interior of objects -Surface may not describe explicitly the physical characteristics of the object

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data acquisition devices generate solid type data representations

Applications require solid object representationsRendering algorithms which require solid object representations -Ray tracing with refraction. The considered path of the rays depends on the internal physical characteristics of the object representation.

Page 8: Reconstruction of Voxels from Sensor Data

University of Coimbra

Voxels

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Partition of the space in a uniform, orthogonal grid -Grid cells are called voxel – “volume pixel”

Data type: -Binary data: {1,0}, full/empty, object/background; -Multivalued data: value representing some measurable property of the data

colordensityheat

pressureoccupancy

Page 9: Reconstruction of Voxels from Sensor Data

University of Coimbra

Voxels

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Boolean Operations -simple and intuitive

Union

Interception

Top view of one slice of the grid

Union

Interception

Page 10: Reconstruction of Voxels from Sensor Data

University of Coimbra

Octrees

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Refine resolution of voxels hierarchically -Octrees are almost often used to partition a 3D space by recursively subdividing it in eight octants. -Cube nodes: black/white/gray -More concise and efficient for non-uniform objects. -Adaptive definition of elementary size of grid cells.

Top view of one slice of the grid

Page 11: Reconstruction of Voxels from Sensor Data

University of Coimbra

Octrees

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Information representation -tree data structure

Top view of one slice of the grid

Page 12: Reconstruction of Voxels from Sensor Data

University of Coimbra

Octrees

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Boolean Operations -simple and intuitive

Top view of one slice of the grid

Union Interception

Page 13: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data flow of volume visualization and volume graphics

-Major sources of volumetric data: *Sampled/computed data *Geometrical models

-Reconstructed sampled/computed 3D data is stored is a volume buffer

-A geometrical model in 3D continuous space can be scan converted into a set of voxels and stored in the volume buffer

-Volume buffer data visualization *Conversion to a geometric model *Direct projection on a 2D píxel buffer

Page 14: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data flow of volume visualization and volume graphics

CT/PET

Range Data Voxels/Octrees Mesh

Surfaces

Reprojection

Voxelization

Space Carving

Page 15: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data flow of volume visualization and volume graphics

CT

Range Data Voxels/Octrees Mesh

Surfaces

Reprojection

Voxelization

Space Carving

Page 16: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

CT/PET

Computer Tomography (CT) Positron Emission Tomography (PET)

Page 17: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

CT

270º

180º0º

90º

Page 18: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

CT/PET

Page 19: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data flow of volume visualization and volume graphics

CT/PET

Range Data Voxels/Octrees Mesh

Surfaces

Reprojection

Voxelization

Space Carving

Page 20: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Reconstruction of octrees from range data

Pulli et al.’ 97

-Volumetric reconstruction from range data involves four main steps:

1.Data AcquisitionRange data sets covering the object to be modeled are obtained. Usually implies range data acquisition from multiple views.

2.RegistrationEach range view has its own coordinate system. The collection of views should be registered in a common object-centric coordinate system.

3.IntegrationThe separated registered range maps are integrated into a single data points representation.

4.Creation of the volumetric representation

Page 21: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Reconstruction octrees from range data

Pulli et al.’ 97

1.Data Acquisition

Eight intensity images corresponding to the views of the miniature chair

The data of the corresponding range images is acquired to each view.

Page 22: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Reconstruction of octrees from range data

Pulli et al.’ 97

2 and 3 – Registration and Integration

The registered point set

Page 23: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Reconstruction of octrees from range dataPulli et al.’ 97

4 – Creation of the volumetric representation - Processing a single range view

-Initial volume that surrounds all the range data.

-For each of the cubes, the 8 vertex are project in the image plane – hexagonal convex hull projection

-The hexagonal cone is truncated so it just encloses the cube

-If all the data points projecting on the hexagon are behind the truncated cone Outside

-If those points are closer than the closest corner of the cube Inside

-Otherwise Boundary Subdivision of the cube in 8 children cubes and apply the algorithm

Page 24: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Reconstruction of octrees from range dataPulli et al.’ 97

4 – Creation of the volumetric representation – Generalization to multiple views

Two possible processing orders:

- Simultaneous processing:

At each level, each cube is labeled only after conjugating the labels from all available views.

- Sequential processing

One view is processed at a time. Final conjugation of individual view results

Page 25: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Reconstruction of octrees from range dataPulli et al.’ 97

4 – Creation of the volumetric representation – Generalization to multiple views

The chair octree after 4,5,6, and 7 subdivisions

Page 26: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data flow of volume visualization and volume graphics

CT/PET

Range Data Voxels/Octrees Mesh

Surfaces

Reprojection

Voxelization

Space Carving

Page 27: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Voxelization

-Motivation:

-Conversion of a geometric object from their continuous geometric representation into a set of voxels that best approximate the continuous object;

-Discrete digitalization of a continuous object

-Approaches

- Straight forward and intuitive method point sampling

*The continuous object is evaluated at voxel center: 0 or 1 is assigned to each voxel*Binary classification of the voxel: the resolution of the grid determine the precision of the discrete model.

*Jagged surfaces Object space aliasing

Page 28: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Voxelization

-Approaches

- 3D object shape anti-aliasing technique Volume Sampling

-For each voxel visited by the binary voxelization algorithm, it is estimated the density contribution of the geometric object to the voxel.

-Multi-valued volumetric representation – Smoother Representation

Page 29: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Data flow of volume visualization and volume graphics

CT/PET

Range Data Voxels/Octrees Mesh

Surfaces

Reprojection

Voxelization

Space Carving

Page 30: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Surface reconstruction from volumetric data

-Motivation: Extraction and visualization of Isosurfaces from the volumetric data sets (multivalued data sets)

-Isosurfaces display is usually fast since most isosurfacing methods output a mesh composed of triangular polygons fast on typical graphics harware

-Marching Cubes - Popular methods was developed by Lorensen and Cline (1987)

*Creation of a polygonal representation of constant value surface for a 3D array of data

1. Location of the surface corresponding to a user specific value and triangle creation

2.Surface normal calculation at each vertex of each triangle

Page 31: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Surface reconstruction from volumetric data - Marching cube

1. Location of the surface and triangle creation

-Cube-by-cube determination of the surface configuration inside the cube

Comparison of the data value for the isosurface and the data value of each vertex

1- Data value of the vertex exceeds or equals the surface value – Inside surface

0- Data value of the vertex is below than the surface value – Outside surface

28 – 256 different topological configurations Look-up table which contains the edges intercepted for each case

Simplification:

Reflective Symmetry ( 256 128)

Rotational Symmetry (128 14)

Page 32: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Surface reconstruction from volumetric data - Marching cube

1. Location of the surface and triangle creation

-Elementary configurations

Page 33: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Surface reconstruction from volumetric data - Marching cube

1. Location of the surface and triangle creation

Index-pointer to an edge table that stores all edges interception given a cube configuration.

Identification of intercepted edges Interpolation to determine the precise location interception point triangle(s) definition

Page 34: Reconstruction of Voxels from Sensor Data

University of Coimbra

Data Acquisition/ Conversion

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Surface reconstruction from volumetric data - Marching cube

2. Unit Normal determination for each triangle vertex

-The normal will be used by the rendering algorithms to produce shaded images.

-Normal determination based on the gradient vector on each vertex (i,j,k)

-D(i,j,k) is the density at pixel (i,j) in slice k.

-x, y, z are the lengths of the cube edges

-The normal is linearly interpolated to the point of interception.

Page 35: Reconstruction of Voxels from Sensor Data

University of Coimbra

Volume graphics vs Surface Grafics

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

Page 36: Reconstruction of Voxels from Sensor Data

University of Coimbra

References

Doctoral Programme in Electrical Engineering and Computer Science

Computer Graphics and 3D Modeling

-Kaufman, A.; Cohen, D.; Yagel, R., Volume Graphics, IEEE Computer, Volume: 26 7 , July 1993 , Page(s): 51 -64.

-S. Wang and A. Kaufman, Volume-Sampled 3D Modeling, IEEE Computer Graphics & Appplications14(5), September 1994, pp.26-32.

-Oomes, S.[Stijn], Snoeren, P., Dijkstra, Tj.,3D Shape Representation: Transforming Polygons into Voxels, ScaleSpace97 (xx) -K Pulli, T. Duchamp, H. Hoppe, J. McDonald, L. Shapiro, W. Stuetzle, Robust Meshes from Multiple Range Maps,

-W.E. Lorensen and H.E. Cline, Marching Cubes: A High Resolution 3D Surface Reconstruction Algorithm, SIGGRAPH 87, 163-169.

-http://www.cs.princeton.edu/courses/archive/fall00/cs426/

-http://www.cs.princeton.edu/courses/archive/spring00/cs598b/