Wavelets for Surface Reconstruction Josiah Manson Guergana Petrova - - PowerPoint PPT Presentation

wavelets for
SMART_READER_LITE
LIVE PREVIEW

Wavelets for Surface Reconstruction Josiah Manson Guergana Petrova - - PowerPoint PPT Presentation

Wavelets for Surface Reconstruction Josiah Manson Guergana Petrova Scott Schaefer Convert Points to an Indicator Function Data Acquisition Properties of Wavelets Fourier Series Wavelets Represents all functions Locality Depends


slide-1
SLIDE 1

Wavelets for Surface Reconstruction

Josiah Manson Guergana Petrova Scott Schaefer

slide-2
SLIDE 2

Convert Points to an Indicator Function

slide-3
SLIDE 3

Data Acquisition

slide-4
SLIDE 4

Properties of Wavelets

Fourier Series Wavelets Represents all functions Locality Smoothness Depends

  • n wavelet
slide-5
SLIDE 5

Wavelet Bases

Haar D4

) (x  ) (x  ) (x  ) (x 

slide-6
SLIDE 6

Example of Function using Wavelets

 

   

k j j k j k k

k x c k x c x f

, ,

) 2 ( ) ( ) (  

slide-7
SLIDE 7

Example of Function using Wavelets

 

k k

k x c x f ) ( ) ( 

slide-8
SLIDE 8

Example of Function using Wavelets

 

   

k j j k j k k

k x c k x c x f

, ,

) 2 ( ) ( ) (  

slide-9
SLIDE 9

Example of Function using Wavelets

 

   

k j j k j k k

k x c k x c x f

}, 1 , { ,

) 2 ( ) ( ) (  

slide-10
SLIDE 10

Example of Function using Wavelets

 

   

k j j k j k k

k x c k x c x f

}, 2 , 1 , { ,

) 2 ( ) ( ) (  

slide-11
SLIDE 11

Strategy

  • Estimate wavelet coefficients of indicator

function

  • Use only local combination of samples to

find coefficients

slide-12
SLIDE 12

Computing the Indicator Function

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

[Kazhdan 2005]

slide-13
SLIDE 13

Computing the Indicator Function

 

R j k j

dx k x x c ) 2 ( ) (

,

 

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

[Kazhdan 2005]

slide-14
SLIDE 14

Computing the Indicator Function

 

   

M j R j k j

dx k x dx k x x c ) 2 ( ) 2 ( ) (

,

  

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

[Kazhdan 2005]

slide-15
SLIDE 15

Computing the Indicator Function

 

 

   

M p M

d p n p F dx x F  ) ( ) ( ) (   

Divergence Theorem

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

 

   

M j R j k j

dx k x dx k x x c ) 2 ( ) 2 ( ) (

,

  

[Kazhdan 2005]

slide-16
SLIDE 16

Computing the Indicator Function

 

 

   

M p M

d p n p F dx x F  ) ( ) ( ) (   

Divergence Theorem

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

 

   

M j R j k j

dx k x dx k x x c ) 2 ( ) 2 ( ) (

,

  

[Kazhdan 2005]

slide-17
SLIDE 17

Computing the Indicator Function

 

 

M p k j

d p n p F  ) ( ) (

,

 

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

 

   

M j R j k j

dx k x dx k x x c ) 2 ( ) 2 ( ) (

,

  

[Kazhdan 2005]

slide-18
SLIDE 18

Computing the Indicator Function

 

i i i i k j

d n p F    ) (

,

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

) (x 

 

 

M p k j

d p n p F  ) ( ) (

,

 

 

   

M j R j k j

dx k x dx k x x c ) 2 ( ) 2 ( ) (

,

  

[Kazhdan 2005]

slide-19
SLIDE 19

Finding

) 2 ( ) ( k x x F

j

     

) (x F 

slide-20
SLIDE 20

Finding

) (x F 

) 2 ( ) ( ) ( k x x F dx d x F

j

     

slide-21
SLIDE 21

Finding

) (x F 

) 2 ( ) ( ) ( k x x F dx d x F

j

     

 

 

x j

ds k s x F ) 2 ( ) ( 

slide-22
SLIDE 22

Extracting the surface

 

   

k j j k j k k

k x c k x c x

, ,

) 2 ( ) ( ) (   

Coefficients Indicator function Surface Dual marching cubes

slide-23
SLIDE 23

Haar unsmoothed

Smoothing the Indicator Function

slide-24
SLIDE 24

Smoothing the Indicator Function

Haar unsmoothed Haar smoothed

slide-25
SLIDE 25

Comparison of Wavelet Bases

Haar D4

slide-26
SLIDE 26

Advantages of Wavelets

  • Coefficients calculated only near surface

– Fast – Low memory

  • Multi-resolution representation
  • Out of core calculation is possible
slide-27
SLIDE 27

Streaming Pipeline

Input Output

slide-28
SLIDE 28

Results

Michelangelo’s Barbuto 329 million points (7.4 GB of data), 329MB memory, 112 minutes

slide-29
SLIDE 29

Results

Michelangelo’s Awakening 381 million points (8.5 GB), 573MB memory, 81 minutes Produced 590 million polygons

slide-30
SLIDE 30

Results

Michelangelo’s Atlas 410 million points (9.15 GB), 1188MB memory, 98 minutes Produced 642 million polygons

slide-31
SLIDE 31

Results

Michelangelo’s Atlas 410 million points (9.15 GB), 1188MB memory, 98 minutes Produced 642 million polygons

slide-32
SLIDE 32

Robustness to Noise in Normals

0° 30° 60° 90°

slide-33
SLIDE 33

Comparison of Methods

MPU 551 sec 750 MB Poisson 289 sec 57 MB Haar 17 sec 13 MB D4 82 sec 43 MB

slide-34
SLIDE 34

Relative Hausdorf Errors

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 armadilloman happy buddha dragon elephant2 hand malaysia tall teeth venus2

Scaled Error

MPU Poisson Haar Haar Smooth D4 D4 Smooth

slide-35
SLIDE 35

Conclusions

  • Wavelets provide trade-off

between speed/quality

  • Works with all orthogonal

wavelets

  • Guarantees closed, manifold

surface

  • Out of core