Why is 3D scanning hard? - Computer Graphics at Stanford University

advertisement
Why is 3D scanning hard?
Marc Levoy
Computer Science Department
Stanford University
The Digital Michelangelo Project
Atlas
Awakening
Bearded
Youthful
Dusk
Dawn
Night
Day
St. Matthew
David
Forma Urbis Romae
Eight hard problems
in 3D scanning
1.
2.
3.
4.
5.
6.
7.
8.
•
optically uncooperative materials
scanning in the presence of occlusions
insuring safety for delicate objects
scanning large objects at high resolution
accurate scanning in the field
filling holes in dense polygon models
handling large datasets
creating digital archives of 3D content
Some games with range data
Marc Levoy
Scanners used in the
Digital Michelangelo Project
Cyberware
- for statues
Faro + 3D Scanners
- for tight spots
Cyra
- for architecture
Marc Levoy
Our triangulation-based scanner
4 motorized axes
laser, range camera,
white light, and color camera
truss extensions
for tall statues
Marc Levoy
Scanning St. Matthew
working in
the museum
scanning
geometry
scanning
color
Marc Levoy
single scan of St. Matthew
1 mm
Hard problem #1:
optically uncooperative materials
dark
• fuzzy
• scattering
• transparent
shiny
• moving
• etc.
Marc Levoy
How optically cooperative is marble?
[Godin et al., Optical Measurement 2001]
• systematic bias of 40 microns
• noise of 150 – 250 microns
– worse at oblique angles of incidence
– worse for polished statues
Marc Levoy
Laser scattering noise
on David’s toe
50 micron scan by NRC/Canada
0.1 mm
Marc Levoy
Some marbles
scatter more than others
Michelangelo’s Pietà
Marc Levoy
Hard problem #2:
scanning in the presence of occlusions
< 30°
?
?
20°
?
• occlusions (& self-occlusion) force grazing
scans, which lead to holes
• a scanner with a fixed triangulation angle
cannot circumvent all occlusions
• a hammer & chisel can reach places
a triangulation scanner cannot
Marc Levoy
Some statues may be “unscannable”
(using optical methods)
Laocoon
Marc Levoy
Hard problem #3:
insuring safety for delicate objects
• energy deposition
– not a problem for marble statues
• avoiding collisions
Marc Levoy
Why are collisions hard to avoid?
• to insure safety, scan head should stay
outside the convex hull of the object
• in the worst case, required standoff may
equal diameter of convex hull
• a complicated object cannot be scanned
entirely from outside its convex hull
Marc Levoy
Hard problem #3:
insuring safety for delicate objects
• energy deposition
– not a problem for marble statues
• avoiding collisions
– manual motion controls
– automatic cutoff switches
– one person serves as spotter
– avoid time pressure
– get enough sleep
• surviving collisions
– pad the scan head
Marc Levoy
Hard problem #4:
scanning large objects at high resolution
• David is 5 meters tall
• chisel marks need 1/4mm
• dynamic range of 20,000:1
• 20,0002 = 1 billion polygons
• 14cm wide working stripe
• David was ~30 stripes around
Marc Levoy
Digital Michelangelo Project
reconfigurable robotic gantry
• calibrated motions
– pitch (yellow)
– pan (blue)
– horizontal translation (orange)
• uncalibrated motions
– vertical translation
– remounting the scan head
– moving the entire gantry
Marc Levoy
Scanning St. Matthew
•
•
•
•
•
104 scans
800 million polygons
4,000 color images
15 gigabytes
1 week of scanning
Marc Levoy
Scanning the David
•
•
•
•
•
•
480 individually aimed scans
2 billion polygons
7,000 color images
32 gigabytes
30 nights of scanning
22 people
Marc Levoy
Hard problem #5:
accurate scanning in the field
• rotating scan motion is hard to make accurate
• field reconfigurations are not repeatable
• need a way to recalibrate in the field
Marc Levoy
Digital Michelangelo Project
range processing pipeline
• steps
1. manual initial alignment
- should have tracked gantry
2. ICP to one existing scan
[Besl92]
3. automatic ICP of all overlapping pairs
[Rusinkiewicz01]
4. global relaxation to spread out error
[Pulli99]
5. merging using volumetric method
[Curless96]
Marc Levoy
Digital Michelangelo Project
range processing pipeline
• steps
1. manual initial alignment
- should have tracked gantry
2. ICP to one existing scan
[Besl92]
3. automatic ICP of all overlapping pairs
[Rusinkiewicz01]
4. global relaxation to spread out error
[Pulli99]
5. merging using volumetric method
[Curless96]
Marc Levoy
Digital Michelangelo Project
range processing pipeline
• steps
1.
2.
3.
4.
5.
manual initial alignment
ICP to one existing scan
automatic ICP of all overlapping pairs
global relaxation to spread out error
merging using volumetric method
Marc Levoy
What really happens?
• steps
1.
2.
3.
4.
5.
manual initial alignment
ICP to one existing scan
automatic ICP of all overlapping pairs
global relaxation to spread out error
merging using volumetric method
• ICP is unstable on smooth surfaces
Marc Levoy
What really happens?
• steps
1.
2.
3.
4.
5.
manual initial alignment
ICP to one existing scan
automatic ICP of all overlapping pairs
global relaxation to spread out error
merging using volumetric method
• ICP is unstable on smooth surfaces
• relaxation distributes errors unevenly
Marc Levoy
Digital Michelangelo Project
color processing pipeline
• steps
1.
2.
3.
4.
compensate for ambient illumination
discard shadowed or specular pixels
map onto vertices – one color per vertex
correct for irradiance  diffuse reflectance
Marc Levoy
What really happens?
• steps
1.
2.
3.
4.
•
•
•
•
compensate for ambient illumination
discard shadowed or specular pixels
map onto vertices – one color per vertex
correct for irradiance  diffuse reflectance
we treated reflectance as Lambertian
we used aggregate surface normals
we ignored interreflections
we ignored subsurface scattering
– derived reflectance is incorrect
– renderings are not realistic
Marc Levoy
The importance of
subsurface scattering
BRDF
BSSRDF
[Jensen et al., Siggraph 2000]
Marc Levoy
artificial surface reflectance
estimated diffuse reflectance
photograph
1.0 mm computer model
with diffuse reflectance
Hard problem #6:
filling holes in dense polygon models
signed
distance
function
volumetric
diffusion
process
Marc Levoy
Hard problem #7:
handling large datasets
3mm
mesh
1mm
0.3mm
Marc Levoy
Some solutions we’ve used
• range images instead of polygon meshes
– z(u,v)
– yields 18:1 lossless compression
– multiresolution using (range) image pyramid
• multiresolution viewer for polygon meshes
– 2 billion polygons
– immediate launching
– real-time frame rate when moving
– progressive refinement when idle
– compact representation
– fast pre-processing
Marc Levoy
The Qsplat viewer
[Rusinkiewicz and Levoy, Siggraph 2000]
• hierarchy of bounding spheres with position,
radius, normal vector, normal cone, color
• traversed recursively subject to time limit
• spheres displayed as splats
Marc Levoy
Streaming Qsplat
[Rusinkiewicz and Levoy, I3D 2001]
1 second
10 seconds
60 seconds
Marc Levoy
Hard problem #8:
creating digital libraries of 3D content
•
•
•
•
metadata – data about data
versioning – cvs for data archives
secure viewers for 3D models
robust 3D digital watermarking
• viewing, measuring, extracting data
• indexing and searching 3D content
• insuring longevity for the archive
Marc Levoy
How to think about range data
• range data is measured data
– both the geometry and the topology are noisy
– “geometric signal processing”
• range data is not a cloud of unorganized points
– use connectivity between range samples
– use lines of sight to scanner and camera
• range datasets are large
– representations that are exact only in the limit
– algorithms that are fast and approximate
– implementations that don’t need entire model in memory
Marc Levoy
Games with range data
1. volumetric scan conversion
2. range image synthesis
3. multi-modality scanned models
Marc Levoy
Game #1:
volumetric scan conversion
[Wei01]
•
•
•
•
convert point cloud to volume densities
facilitates volumetric / statistical analyses
new texture synthesis algorithms
volume texture synthesis
Marc Levoy
Game #2:
range image synthesis
(Hertzmann)
• texture synthesis of range data
– in range images
– in merged surface meshes
• application to hole filling
Marc Levoy
Game #3:
multi-modality scanned models
• time-of-flight scans for overall shape
• triangulation scans for range texture
• photography for reflectance
Marc Levoy
Three final questions
1. Can range scanning be fully automated?
2. Can we build a 3D fax machine?
3. Will IBR replace 3D scanning?
Marc Levoy
The Forma Urbis Romae:
a marble map of ancient Rome
Marc Levoy
Can we replace this?
uncrating...
Marc Levoy
Can we replace this?
positioning...
Marc Levoy
Can we replace this?
scanning...
Marc Levoy
Can we replace this?
aligning...
Marc Levoy
Automatic 3D scanning?
• requires 6 DOF robot
• automatic view planning
[Connolly85, Maver93, Pito96, Reed97,…]
• hard to guarantee safety
• use CT scanning instead?
Marc Levoy
Can we build a 3D fax machine?
• quality and cost of rapid
prototyping is improving
• need automatic scanning
• need color printing
• how to match BRDF?
• looking for a killer app
?
[Curless96]
Marc Levoy
Will IBR replace 3D scanning?
…assuming the reason for scanning
a particular object is to fly around it
• Yes
–
–
–
–
–
–
simple, brute force
universal meta-primitive
geometry is implicit
independent of scene complexity
multiresolution is trivial
hardware acceleration
• No
– discards structure of model
– rasterized geometry
– big and slow
Marc Levoy
Download