PowerPoint Template - Zhejiang University
Download
Report
Transcript PowerPoint Template - Zhejiang University
CONSERVATIVE
VOXELIZATION
Long Zhang1, Wei Chen1, David
Ebert2, Qunsheng Peng1
1 State Key Lab of CAD&CG, Zhejiang
University, Hangzhou, China
2 School of Electrical and Computer
Engineering, Purdue University
CGI 2007 – Conservative Voxelization
Contents
Introduction & Previous Work
The Main Idea
Algorithm & Implementation
Experimental Results
Conclusions & Future Work
2 / 24
CGI 2007 – Conservative Voxelization
Contents
Introduction & Previous Work
The Main Idea
Algorithm & Implementation
Experimental Results
Conclusions & Future Work
3 / 24
CGI 2007 – Conservative Voxelization
Voxelization
Rasterization – 2D scan-conversion
rasterization
Geometry primitive
pixels
Voxelization – 3D scan-conversion
voxelization
Surface model
voxels
4 / 24
CGI 2007 – Conservative Voxelization
Applications
physicallybased
simulation
collision
detection
Voxelization
volumetric
modelling
virtual
medicine
haptic
rendering
3D spatial
analysis
5 / 24
CGI 2007 – Conservative Voxelization
Hardware-accelerated Voxelization
The basic idea
Use the rasterization
functionality (2D
scan-conversion) of
graphics hardware to
accelerate voxelization (3D scanconversion)
Major advantage
Efficient
6 / 24
CGI 2007 – Conservative Voxelization
What’s Conservative?
standard rasterization
conservative rasterization
7 / 24
CGI 2007 – Conservative Voxelization
Why Is It Important?
Example: collision detection with
standard rasterization
conservative rasterization
no collision
4 colliding pixels
detected
8 / 24
CGI 2007 – Conservative Voxelization
Contents
Introduction & Previous Work
The Main Idea
Algorithm & Implementation
Experimental Results
Conclusions & Future Work
9 / 24
CGI 2007 – Conservative Voxelization
The Main Idea
Illustration in 2D
Previous approaches
Conservative voxelization
Orthogonal
projection
The
viewing volume
A triangle to
The
beresulting
voxelized
voxels
Therasterization
viewing
plane
• Use the
depth
value
of the
pixel center
pixelsvoxel for
• Generate a single
each pixel
• Compute the depth range in
each pixel
• Generate multiple voxels for
each pixel
10 / 24
CGI 2007 – Conservative Voxelization
Contents
Introduction & Previous Work
The Main Idea
Algorithm & Implementation
Experimental Results
Conclusions & Future Work
11 / 24
CGI 2007 – Conservative Voxelization
Computing the Depth Range
Full covered pixels
Partially covered pixels
• Compute the pixel/triangle
intersection
• Compute the depth range
in the intersection region
12 / 24
CGI 2007 – Conservative Voxelization
The Pixel/Triangle Intersection
A convex polygon
The minimal/maximal depth value lies on one of its
vertices
• Compute the intersection of two
edges of the triangle and the pixel
• The depth value can be easily
calculated;
• Is the condition satisfied?
• The depth value is known;
• Is the condition satisfied? (easy
to know)
The idea
Compute the depth values at all vertices
Compare the depth values to get the depth range
13 / 24
CGI 2007 – Conservative Voxelization
The Algorithm
Compute the minimal depth for each pixel
Let
be the vertex of the
pixel with the minimal depth value
Yes
Text
=
Text
The computation is fast
If
is
inside the
triangle
No
Compute the barycentric coordinate
Text
None of the pixel vertices
has the
minimal depth
Text
• Compute the intersection
points of triangle/pixel edges
• Test if any triangle vertices
are in the pixel
The computation is slow
Compute the maximal depth in the same way
14 / 24
CGI 2007 – Conservative Voxelization
Robustness Issues
Handling special cases
Intersection of
nearly parallel
lines
Replace QT with
QR
Degenerate
edges
Degenerate
triangles
Replace QR with
Pj
Replace v1 with
Q’L
The result is conservative
15 / 24
CGI 2007 – Conservative Voxelization
Contents
Introduction & Previous Work
The Main Idea
Algorithm & Implementation
Experimental Results
Conclusions & Future Work
16 / 24
CGI 2007 – Conservative Voxelization
Accuracy Analysis
Conservative
Voxelization
Theoretically
In practice
Accuracy:
Slightly overconservative:
• A voxel is generated if
and only if it intersects
with the input model
• All voxels intersecting
the input model are
generated
• A few voxels not
intersecting the input
model are also generated
17 / 24
CGI 2007 – Conservative Voxelization
Timing Statistics
• Efficient for high
resolution voxlization
• Not very efficient for
large model size
voxelization timings in ms.
Analysis
– the major cost lies
in computing the depth
range for each pixel
– the cost is much
lower for inner pixels
than for boundary
pixels
– most of the pixels
are inner pixels when
the resolution is high
Performance comparison between Dong’s and our method
18 / 24
CGI 2007 – Conservative Voxelization
Application to Collision Detection
Basic idea
Voxelize two models with a common bounding box
Compare the resulting volumes
Evaluation
Accuracy
• High resolution supported
• Classfication – colliding voxels
represent potentially colliding regions, and noncolliding voxels represent non-colliding regions
Efficiency
• Computation completely in GPU
• Need to traverse each
model once
• Support deforming models
Collision detection between the buddha
model and a morphing hand model.
The collision detection is accomplished
in approximately 114 ms.
19 / 24
CGI 2007 – Conservative Voxelization
Demo
20 / 24
CGI 2007 – Conservative Voxelization
Contents
Introduction & Previous Work
The Main Idea
Algorithm & Implementation
Experimental Results
Conclusions & Future Work
21 / 24
CGI 2007 – Conservative Voxelization
Conclusions
Technical contributions
1
The idea
We propose the idea
of conservative voxlization.
2
Algorithm
• Fully implemented
in the GPU
• Conservative
• Efficient
• Low memory consumption
• Suitable for deformable models
3
Application
We demonstrate the
application of our
algorithm in collision
detection of complex
models.
22 / 24
CGI 2007 – Conservative Voxelization
Future Work
More efficient algorithm
Using lookup tables
Need new functionalities of graphics hardware
More applications
Solid voxelization
23 / 24
[email protected]