22
Poisson Surface Reconstruction - II Siddhartha Chaudhuri http://www.cse.iitb.ac.in/~cs749 Kazhdan, Bolitho and Hoppe

Poisson Surface Reconstruction - II - IIT Bombay

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Poisson Surface Reconstruction - II - IIT Bombay

Poisson Surface Reconstruction - IISiddhartha Chaudhuri httpwwwcseiitbacin~cs749

Kazhdan Bolitho and Hoppe

Recap of differential operators (in 3D)

Gradient (of scalar-valued function)

In operator form Maps scalar field to vector field

nabla f=( part fpart xpart fpart ypart fpart z )

nabla=( partpart x partpart y partpart z )

Scalar fields (black high white low) and their gradients (blue arrows)

Wik

iped

ia

Recap of differential operators (in 3D)

Divergence (of vector-valued function)

Maps vector field to scalar field

Gam

asut

ra

nablasdotV=partV x

part x+

partV y

part y+

partV z

part z

Has divergence Divergence-free

Recap of differential operators (in 3D)

Curl (of vector-valued function)

Maps vector field to vector field

Gam

asut

ra

Curl-free Has curl

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Recap of differential operators (in 3D)

Laplacian (of scalar-valued function)

In operator form

Maps scalar field to scalar field

Gam

asut

ra

Δ=( part2

part x2 part2

part y2 part2

part z2 )

Δ f = nablasdotnabla f =

part2 fpart x2 +

part2 f

part y2+part2 f

part z2

Original function After applying Laplacian

Recap

The boundary of a shape is a level set of itsindicator function χ

The gradient nablaχ of χ is the normal field V at theboundary (after some smoothing which we wont go into here)

We can solve for χ by integrating the normal field hellip but in general we cant get an exact solution

since an arbitrary vector field need not be thegradient of a function (field needs to be curl-free)

So we find a least-squares fit minimizing ||nablaχ ndash V||2

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 2: Poisson Surface Reconstruction - II - IIT Bombay

Recap of differential operators (in 3D)

Gradient (of scalar-valued function)

In operator form Maps scalar field to vector field

nabla f=( part fpart xpart fpart ypart fpart z )

nabla=( partpart x partpart y partpart z )

Scalar fields (black high white low) and their gradients (blue arrows)

Wik

iped

ia

Recap of differential operators (in 3D)

Divergence (of vector-valued function)

Maps vector field to scalar field

Gam

asut

ra

nablasdotV=partV x

part x+

partV y

part y+

partV z

part z

Has divergence Divergence-free

Recap of differential operators (in 3D)

Curl (of vector-valued function)

Maps vector field to vector field

Gam

asut

ra

Curl-free Has curl

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Recap of differential operators (in 3D)

Laplacian (of scalar-valued function)

In operator form

Maps scalar field to scalar field

Gam

asut

ra

Δ=( part2

part x2 part2

part y2 part2

part z2 )

Δ f = nablasdotnabla f =

part2 fpart x2 +

part2 f

part y2+part2 f

part z2

Original function After applying Laplacian

Recap

The boundary of a shape is a level set of itsindicator function χ

The gradient nablaχ of χ is the normal field V at theboundary (after some smoothing which we wont go into here)

We can solve for χ by integrating the normal field hellip but in general we cant get an exact solution

since an arbitrary vector field need not be thegradient of a function (field needs to be curl-free)

So we find a least-squares fit minimizing ||nablaχ ndash V||2

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 3: Poisson Surface Reconstruction - II - IIT Bombay

Recap of differential operators (in 3D)

Divergence (of vector-valued function)

Maps vector field to scalar field

Gam

asut

ra

nablasdotV=partV x

part x+

partV y

part y+

partV z

part z

Has divergence Divergence-free

Recap of differential operators (in 3D)

Curl (of vector-valued function)

Maps vector field to vector field

Gam

asut

ra

Curl-free Has curl

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Recap of differential operators (in 3D)

Laplacian (of scalar-valued function)

In operator form

Maps scalar field to scalar field

Gam

asut

ra

Δ=( part2

part x2 part2

part y2 part2

part z2 )

Δ f = nablasdotnabla f =

part2 fpart x2 +

part2 f

part y2+part2 f

part z2

Original function After applying Laplacian

Recap

The boundary of a shape is a level set of itsindicator function χ

The gradient nablaχ of χ is the normal field V at theboundary (after some smoothing which we wont go into here)

We can solve for χ by integrating the normal field hellip but in general we cant get an exact solution

since an arbitrary vector field need not be thegradient of a function (field needs to be curl-free)

So we find a least-squares fit minimizing ||nablaχ ndash V||2

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 4: Poisson Surface Reconstruction - II - IIT Bombay

Recap of differential operators (in 3D)

Curl (of vector-valued function)

Maps vector field to vector field

Gam

asut

ra

Curl-free Has curl

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Recap of differential operators (in 3D)

Laplacian (of scalar-valued function)

In operator form

Maps scalar field to scalar field

Gam

asut

ra

Δ=( part2

part x2 part2

part y2 part2

part z2 )

Δ f = nablasdotnabla f =

part2 fpart x2 +

part2 f

part y2+part2 f

part z2

Original function After applying Laplacian

Recap

The boundary of a shape is a level set of itsindicator function χ

The gradient nablaχ of χ is the normal field V at theboundary (after some smoothing which we wont go into here)

We can solve for χ by integrating the normal field hellip but in general we cant get an exact solution

since an arbitrary vector field need not be thegradient of a function (field needs to be curl-free)

So we find a least-squares fit minimizing ||nablaχ ndash V||2

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 5: Poisson Surface Reconstruction - II - IIT Bombay

Recap of differential operators (in 3D)

Laplacian (of scalar-valued function)

In operator form

Maps scalar field to scalar field

Gam

asut

ra

Δ=( part2

part x2 part2

part y2 part2

part z2 )

Δ f = nablasdotnabla f =

part2 fpart x2 +

part2 f

part y2+part2 f

part z2

Original function After applying Laplacian

Recap

The boundary of a shape is a level set of itsindicator function χ

The gradient nablaχ of χ is the normal field V at theboundary (after some smoothing which we wont go into here)

We can solve for χ by integrating the normal field hellip but in general we cant get an exact solution

since an arbitrary vector field need not be thegradient of a function (field needs to be curl-free)

So we find a least-squares fit minimizing ||nablaχ ndash V||2

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 6: Poisson Surface Reconstruction - II - IIT Bombay

Recap

The boundary of a shape is a level set of itsindicator function χ

The gradient nablaχ of χ is the normal field V at theboundary (after some smoothing which we wont go into here)

We can solve for χ by integrating the normal field hellip but in general we cant get an exact solution

since an arbitrary vector field need not be thegradient of a function (field needs to be curl-free)

So we find a least-squares fit minimizing ||nablaχ ndash V||2

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 7: Poisson Surface Reconstruction - II - IIT Bombay

Recap

So we find a least-squares fit minimizing ||nablaχ ndash V||2

This reduces to solving the Poisson Equation

We can discretize the system by representing thefunctions as vectors of values at sample points Gradient divergence and Laplacian operators become

matrices

Solving the resulting linear system gives a leastsquares fit at the sample positions

nablasdot(nabla χ )=nablasdotV hArr Δ χ=nablasdotV

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 8: Poisson Surface Reconstruction - II - IIT Bombay

Why cant we solve it exactly Over a non-loop 1D range (which we studied closely)

this isnt very useful ndash the gradient is invertible byintegration and we can solve the system exactly We can also do this in the discrete setting ndash the

corresponding operator matrix is invertible

But in 2 and higher dimensions the gradient is notinvertible and neither is its operator matrix Gradient maps scalar field to vector field intuitively ldquolower-

dimensionalrdquo to ldquohigher-dimensionalrdquo In 1D scalars and vectors are the same

ddx d χ

dx=V

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 9: Poisson Surface Reconstruction - II - IIT Bombay

A vector field (over a simply-connected region) is thegradient of a scalar function if and only if it iscurl‑free (has no circulation about any point) In other words we can solve nablaχ = V (over a simply-

connected region) if and only if nablatimesV = 0

If the region is not simply-connected even this maynot be enough

nablatimesV=( partpart x partpart y partpart z )times(V x V y V z)

Curl-free Not curl-free

Gam

asut

ra

Non-invertibility of k-D continuous operators

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 10: Poisson Surface Reconstruction - II - IIT Bombay

Non-invertibility of k-D discrete operators

nabla(k-D discrete

gradient)

χ

= V

n columns

kn rows

n rows

kn rows

(1 row for eachcoordinate ofeach point)

Overdetermined

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 11: Poisson Surface Reconstruction - II - IIT Bombay

nablasdot(k-D discretedivergence)

g=V

n rows

kn columns

kn rows

(1 row for eachcoordinate ofeach point)

n rows

Non-invertibility of k-D discrete operators

Underdetermined

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 12: Poisson Surface Reconstruction - II - IIT Bombay

Thought for the Day 1

What about the Laplacian Is it invertible

Is this over- or under-determined

nablasdotnabla(k-D discreteLaplacian)

g=n columns

n rows

n rows χn rows

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 13: Poisson Surface Reconstruction - II - IIT Bombay

What we have so far

Transform continuous variational problems todiscrete linear algebra problems

Solve in a least squares sense since the problemis overdetermined in higher dimensions

BUT the results are also discrete the values ofthe function f at the sampled points Solution A different type of discretization

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 14: Poisson Surface Reconstruction - II - IIT Bombay

Galerkin Approximation

Restrict the solution space F to weighted sums ofbasis functions ie F = sumi wi Bi for some set offunctions B1 B2 Bm

Why Allows us to discretize the problem in termsof the m-D vector of weights

We will choose functions that are locally supported hellip ie each fi is non-zero only around some local region

of space This keeps the resulting linear system sparse

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 15: Poisson Surface Reconstruction - II - IIT Bombay

Basis Functions with Local Support

A finite element model Discretize space into cells then define a basis

function centered around each cell

Instead of values at points we now have values locally around points

Wik

iver

sity

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 16: Poisson Surface Reconstruction - II - IIT Bombay

Basis Functions with Local Support

A potential grid of cells

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 17: Poisson Surface Reconstruction - II - IIT Bombay

Basis Functions with Local Support

A single basis function centered at a gridcell but overlapping adjacent cells

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 18: Poisson Surface Reconstruction - II - IIT Bombay

Basis Functions with Local Support

A potential grid of cellsProblem Not enough detail where its needed (boundary) too much

detail where its not (empty space or interior)

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 19: Poisson Surface Reconstruction - II - IIT Bombay

Basis Functions with Local Support

A hierarchical adaptive grid (octree)

Puts resolution where it matters One basis function per octree cell

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 20: Poisson Surface Reconstruction - II - IIT Bombay

Projecting to the Finite Basis

Assume we want to reconstruct the function overrange Ω (eg [0 1] in 1D or [0 1]3 in 3D)

The original Poisson problem is Δχ = nablaV

BUT since weve now restricted our solutions tothe space spanned by Bi this equation may nothave an exact solution Solution Least squares to the rescue again

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 21: Poisson Surface Reconstruction - II - IIT Bombay

Projecting to the Finite Basis

Solve Δχ = nablaV for χ isin F

To find the best solution within the space spannedby the basis we minimize the sum of squaredprojections onto the basis functions

where measures theprojection of function f onto basis function Bi

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

⟨ f Bi⟩=intΩf (x )Bi (x )dσ

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap

Page 22: Poisson Surface Reconstruction - II - IIT Bombay

Projecting to the Finite Basis

Minimize

(skipping some algebra) This amounts tominimizing ||Lw ndash v||2 where

sumi=1

m

⟨Δ χminusnablasdotV Bi ⟩Ω2

= sumi=1

m

|⟨ Δ χ Bi ⟩minus ⟨nablasdotV Bi ⟩Ω|2

Lij = ⟨ part2Bipart x2 B j⟩+⟨ part2Bipart y2 B j⟩+⟨ part2Bi

part z2 B j ⟩v i = ⟨nablasdotV Bi ⟩

w1

w2

wm

w =

Mostly zero since mostpairs of basis functions

dont overlap