interreflections : the inverse problem lecture #12 thanks to shree nayar, seitz et al, levoy et al,...

59
Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kr

Upload: eleanore-ramsey

Post on 17-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Interreflections :

The Inverse Problem

Lecture #12

Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Page 2: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Graphics

Page 3: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Vision: Estimating Shape of Concave Surfaces

Actual Shape

Shape from Photometric Stereo

Need to account for Interreflections!!

Page 4: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Shape and Interreflections: Chicken and Egg

• If we remove the effects of interreflections, we know how to compute shape.

• But, interreflections depend on the shape!!

So, which comes first?

Page 5: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Linear System of Radiosity Equations - RECAP

KnownKnown

Unknown

• Matrix Inversion to Solve for Radiosities.

Page 6: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Use Radiance instead of Radiosity

• Vision shape-from-intensity algorithms work on Radiance.

• Assume image pixel covers infinitesimal scene patch area .

• Form factor is called “Interreflection Kernel”, K (better name).

j

ijjisi KLLL

Radiance of a facet is given by the linear combination of radiances from other facets.

Loosely, we can say, this weighted averaging in the directionof concave curvature.

Page 7: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Why do concavities appear shallow?

j

ijjisi KLLL

Radiance of a facet is given by the linear combination of radiances from other facets.

Loosely, we can say this weighted averaging in the directionof concave curvature.

Page 8: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Matrix Form of Interreflection Equation

LKPLL s

sLLKPI )(

Page 9: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Pseudo Shape and Reflectance

•Apply any shape from intensity algorithm ignoring interreflections!

Actual Shape

Pseudo-shape from Photometric Stereo

•KEY IDEA: The pseudo shape and reflectance (albedo) is related to the actual shape and reflectance.

Page 10: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Pseudo Shape/Reflectance from Photometric Stereo

iii nN

...],,,[ 4321 NNNNFFacet Matrix :

sLKPIL 1)(

s.)( 1 FKPIL Sourcedirection

],,[.)(],,[ 3211

321 sssFKPILLL Three Source Directions :

Page 11: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Pseudo Shape/Reflectance from Photometric Stereo

],,[.)(],,[ 3211

321 sssFKPILLL Three Source Directions :

FKPIFp1)(

Pseudo Shape :

1321321 ],,[.],,[ sssLLLFp

Page 12: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Key Observations

FKPIFp1)(

• Pseudo Facets: Lambertian! “Smoothed” versions of actual facets (shallow) Pseudo albedos may be greater than 1.

• Pseudo Shape and Albedos are independent of source direction! This allows us to reconstruct actual shape.

Page 13: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Iterative Refinement of Shape and Albedos

•Start with pseudo shape and albedos as initial guesses.

•Compute Interreflection Kernel K, and Albedo matrix P.

•Iterate until convergence.

piii FKPIF 11 )(

pFF 0

Page 14: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 15: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Important Assumptions and Observations

•Any shape-from-intensity method can be used.

•Assumes shape is continuous (for integrability).

•All facets contributing to interreflections must be visible to sensor.

•Facets are infinitesimal lambertian patches.

•Complexity:

•Convergence shown for 2 facets.

•Does not always converge to the right facet for large tilt angles (> 70).

)( 2MnO (M Iterations, n facets)

Page 16: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 17: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 18: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 19: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

3D Objects withTranslational Symmetry

Page 20: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

3D Objects withTranslational Symmetry

Page 21: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 22: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 23: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Shape and Interreflections: Chicken and Egg

• If we remove the effects of interreflections, we know how to compute shape.

• But, interreflections depend on the shape!!

So, which comes first?

Page 24: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Removing Interreflection

Images by Ward et al., SIGGRAPH 88

Page 25: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Bounce Images

Page 26: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Main ResultsThere exists a matrix C1 that removes all

interreflections in a photograph (or lightfield)

Works for any illumination

There is a matrix Ck that retains only the kth bounce

Page 27: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Light transport

T

Page 28: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The transport matrix

=

T Lin Lout

Accounts for• interreflections, shadows, refraction, subsurface scatter, ...• [Dorsey 94] [Zongker 99] [Debevec 00] [Peers 03] [Goesele 05] [Sen 05] ...

Page 29: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The transport matrix

=

T Lin Lout

Page 30: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Direct illumination rendering

=

T1 Lin L1out

Single bounce from light to eye• no interreflections

BRDF

Page 31: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Inverse rendering

=

T-1Lin Lout

Page 32: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Removing Interreflections

L1out Lout

= T-1T1

C1

Second derivation:• from the rendering equation [Kajiya 86] [Cohen 86]

Page 33: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Cancellation Operators

Recursively define other operators(I – C1)

– gives interreflected light

C2 = C1 (I – C1)– gives second bounce of light

Ck = C1(I – C1)k-1

– gives kth bounce of light

Inverse ray tracing!

Page 34: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

How to compute C1

Simplified case• Lambertian reflectance and fixed viewpoint

• Lin and Lout are 2D

• Can capture T by scanning a laser

Page 35: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Synthetic M Scene

T C4TC3TC2TC1T

1

2 3

4

T (log-scaled)

1

2

3

4

Page 36: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

T C4TC3TC2TC1T

real data

Page 37: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman
Page 38: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

(x3) (x3) (x6) (x15)

direct indirect

Page 39: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

direct indirect

(x3) (x3) (x6) (x15)

flash light illumination

Page 40: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Shape and Interreflections: Chicken and Egg

• If we remove the effects of interreflections, we know how to compute shape.

• But, interreflections depend on the shape!!

So, which comes first?

Page 41: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The 4D transport matrix

scene

photocellprojector camera

Page 42: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

camera

The 4D transport matrix

scene

projector

P

pq x 1

C

mn x 1

T

mn x pq

Page 43: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

T PC =

The 4D transport matrix

pq x 1mn x 1

mn x pq

Page 44: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

TC =

The 4D transport matrix

10000

mn x pq

pq x 1mn x 1

Page 45: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

TC =

The 4D transport matrix

01000

mn x pq

pq x 1mn x 1

Page 46: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

TC =

The 4D transport matrix

00100

mn x pq

pq x 1mn x 1

Page 47: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The 4D transport matrix

T PC =

pq x 1mn x 1

mn x pq

Page 48: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The 4D transport matrix

applying Helmholtz reciprocity...

T PC =

pq x 1mn x 1

mn x pq

T P’C’ =

mn x 1pq x 1

pq x mn

T

Page 49: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

Example

conventional photographwith light coming from right

dual photographas seen from projector’s position

Page 50: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

Properties of the transport matrix

• little interreflection → sparse matrix

• many interreflections → dense matrix

• convex object → diagonal matrix

• concave object → full matrix

Can we create a dual photograph entirely from diffuse reflections?

Page 51: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

Dual photographyfrom diffuse reflections

the camera’s view

Page 52: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

The relighting problem

• subject captured under multiple lights

• one light at a time, so subject must hold still

• point lights are used, so can’t relight with cast shadows

Paul Debevec’sLight Stage 3

Page 53: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The 6D transport matrix

Page 54: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

The 6D transport matrix

Page 55: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

The advantage of dual photography

• capture of a scene as illuminated by different lights cannot be parallelized

• capture of a scene as viewed by different cameras can be parallelized

Page 56: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

scene

Measuring the 6D transport matrix

projector

camera arraymirror arraycamera

Page 57: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

Relighting with complex illumination

• step 1: measure 6D transport matrix T

• step 2: capture a 4D light field

• step 3: relight scene using captured light field

scene

camera arrayprojector

TT P’C’ =

mn x uv x 1pq x 1

pq x mn x uv

Page 58: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Marc Levoy

Running time

• the different rays within a projector can in fact be parallelized to some extent

• this parallelism can be discovered using a coarse-to-fine adaptive scan

• can measure a 6D transport matrix in 5 minutes

Page 59: Interreflections : The Inverse Problem Lecture #12 Thanks to Shree Nayar, Seitz et al, Levoy et al, David Kriegman

Can we measure an 8D transport matrix?

scene

camera arrayprojector array