74
Mitsubishi Electric Research Laboratories Raskar 2007 Media Lab, MIT Cambridge, MA Less is More: Less is More: Coded Computational Photography Coded Computational Photography Ramesh Raskar P ro jec tor Tags Pos=0 Pos=255

Raskar Coded Opto Charlotte

Embed Size (px)

Citation preview

Page 1: Raskar Coded Opto Charlotte

Mitsubishi Electric Research Laboratories Raskar 2007

Media Lab, MIT

Cambridge, MA

Less is More:Less is More:

Coded Computational PhotographyCoded Computational Photography

Ramesh Raskar

P ro jec tor

T ags

P os =0

P os=255

Page 2: Raskar Coded Opto Charlotte

MIT Media Lab

Camera Culture

Ramesh Raskar

Camera Culture

Page 3: Raskar Coded Opto Charlotte

Motion Blurred Photo

Page 4: Raskar Coded Opto Charlotte
Page 5: Raskar Coded Opto Charlotte

Short Exposure Traditional MURA Coded

Deblurred Result

Captured SinglePhoto

Shutter

Banding Artifacts and some spatial frequencies

are lost

Dark and noisy

Page 6: Raskar Coded Opto Charlotte

Blurring == Convolution

Traditional Camera: Shutter is OPEN: Box Filter

PSF == Sinc Function

ω

Sharp Photo Blurred Photo

Fourier Transform

Page 7: Raskar Coded Opto Charlotte

Flutter Shutter: Shutter is OPEN and CLOSED

Preserves High Spatial Frequencies

Sharp Photo Blurred Photo

PSF == Broadband Function

Fourier Transform

Page 8: Raskar Coded Opto Charlotte

Flutter Shutter CameraFlutter Shutter CameraRaskar, Agrawal, Tumblin [Siggraph2006]

LCD opacity switched in coded sequence

Page 9: Raskar Coded Opto Charlotte

TraditionalCoded

Exposure

Image of Static Object

Deblurred Image

Deblurred Image

Page 10: Raskar Coded Opto Charlotte
Page 11: Raskar Coded Opto Charlotte

Coded Exposure

Temporal 1-D broadband code: Motion Deblurring

Coded Aperture

Spatial 2-D broadband mask: Focus Deblurring

Page 12: Raskar Coded Opto Charlotte

Coded Aperture CameraCoded Aperture Camera

The aperture of a 100 mm lens is modified

Rest of the camera is unmodifiedInsert a coded mask with chosen binary pattern

Page 13: Raskar Coded Opto Charlotte

In Focus Photo

LED

Page 14: Raskar Coded Opto Charlotte

Out of Focus Photo: Open Aperture

Page 15: Raskar Coded Opto Charlotte

Out of Focus Photo: Coded Aperture

Page 16: Raskar Coded Opto Charlotte

Captured Blurred Photo

Page 17: Raskar Coded Opto Charlotte

Refocused on Person

Page 18: Raskar Coded Opto Charlotte

Less is MoreLess is More

Blocking Light == More InformationBlocking Light == More Information

Coding in Time Coding in Time Coding in SpaceCoding in Space

Page 19: Raskar Coded Opto Charlotte

Less is More ..Less is More ..

• Coded Exposure– Motion Deblurring [2006]

• Coded Aperture– Focus Deblurring [2007]

• Optical Heterodyning– Light Field Capture [2007]

• Coded Spectrum– Agile Wavelength Profile [2008]

• Coded Illumination– Motion Capture [2007]– Multi-flash: Shape Contours [2004]

P rojec tor

T ags

P os=0

P os=255

Page 20: Raskar Coded Opto Charlotte

Computational PhotographyComputational Photography

1. Epsilon Photography– Low-level vision: Pixels– Multi-photos by perturbing camera parameters– HDR, panorama, …– ‘Ultimate camera’

2. Coded Photography– Single/few snapshot– Reversible encoding of data– Additional sensors/optics/illum– ‘Scene analysis’ : (Consumer software?)

3. Essence Photography– Beyond single view/illum– Not mimic human eye– ‘New art form’

Page 21: Raskar Coded Opto Charlotte

Computational PhotographyComputational Photography

1. Epsilon Photography– Low-level Vision: Pixels– Multiphotos by perturbing camera parameters– HDR, panorama– ‘Ultimate camera’

2. Coded Photography– Mid-Level Cues:

• Regions, Edges, Motion, Direct/global– Single/few snapshot

• Reversible encoding of data– Additional sensors/optics/illum– ‘Scene analysis’

3. Essence Photography– Not mimic human eye– Beyond single view/illum– ‘New artform’

Page 22: Raskar Coded Opto Charlotte

Computational PhotographyComputational Photography

1. Epsilon Photography– Multiphotos by varying camera parameters– HDR, panorama– ‘Ultimate camera’: (Photo-editor)

2. Coded Photography– Single/few snapshot– Reversible encoding of data– Additional sensors/optics/illum– ‘Scene analysis’ : (Next software?)

3. Essence Photography– High-level understanding

• Not mimic human eye• Beyond single view/illum

– ‘New artform’

Page 23: Raskar Coded Opto Charlotte

Mask? Sensor

MaskSensorMask? Sensor

MaskSensor

Mask? Sensor

4D Light Field from 2D Photo:

Heterodyne Light Field Camera

Full Resolution Digital Refocusing:

Coded Aperture Camera

Page 24: Raskar Coded Opto Charlotte

Light Field Inside a CameraLight Field Inside a Camera

Page 25: Raskar Coded Opto Charlotte

Lenslet-based Light Field cameraLenslet-based Light Field camera

[Adelson and Wang, 1992, Ng et al. 2005 ]

Light Field Inside a CameraLight Field Inside a Camera

Page 26: Raskar Coded Opto Charlotte

Stanford Plenoptic Camera Stanford Plenoptic Camera [Ng et al 2005][Ng et al 2005]

4000 × 4000 pixels ÷ 292 × 292 lenses = 14 × 14 pixels per lens

Contax medium format camera Kodak 16-megapixel sensor

Adaptive Optics microlens array 125μ square-sided microlenses

Page 27: Raskar Coded Opto Charlotte

Digital RefocusingDigital Refocusing

[Ng et al 2005][Ng et al 2005]

Can we achieve this with a Can we achieve this with a MaskMask alone? alone?

Page 28: Raskar Coded Opto Charlotte

Mask based Light Field CameraMask

Sensor

[Veeraraghavan, Raskar, Agrawal, Tumblin, Mohan, Siggraph 2007 ]

Page 29: Raskar Coded Opto Charlotte

How to Capture 4D Light Field with 2D

Sensor ?

What should be the pattern of the mask ?

Page 30: Raskar Coded Opto Charlotte

Radio Frequency HeterodyningRadio Frequency Heterodyning

Baseband Audio Signal

Receiver: DemodulationHigh Freq Carrier

100 MHz

ReferenceCarrier

Incoming Signal

99 MHz

Page 31: Raskar Coded Opto Charlotte

Optical HeterodyningOptical Heterodyning

Photographic Signal

(Light Field)

Carrier Incident Modulated

Signal

ReferenceCarrier

Main LensObject Mask Sensor

RecoveredLight Field

Software Demodulation

Baseband Audio Signal

Receiver: DemodulationHigh Freq Carrier

100 MHz

ReferenceCarrier

Incoming Signal

99 MHz

Page 32: Raskar Coded Opto Charlotte

Captured 2D Photo

Encoding due to Mask

Page 33: Raskar Coded Opto Charlotte

2D FFT

Traditional Camera Photo

Heterodyne Camera Photo

Magnitude of 2D FFT

2D FFT

Magnitude of 2D FFT

Page 34: Raskar Coded Opto Charlotte

Computing 4D Light Field

2D Sensor Photo, 1800*1800 2D Fourier Transform, 1800*1800

2D FFT

Rearrange 2D tiles into 4D planes200*200*9*94D IFFT

4D Light Field

9*9=81 spectral copies

200*200*9*9

Page 35: Raskar Coded Opto Charlotte

A Theory of Mask-Enhanced CameraA Theory of Mask-Enhanced Camera

Main LensObject Mask Sensor

•Mask == Light Field Modulator

•Intensity of ray gets multiplied by Mask

•Convolution in Frequency domain

Page 36: Raskar Coded Opto Charlotte

fx

fθ0

fx0

Band-limited Light Field

Sensor Slice – Fourier Slice Theorem

Photo = Slice of Light Field in Fourier Domain

[Ren Ng, SIGGRAPH 2005]

Page 37: Raskar Coded Opto Charlotte

How to Capture 2D Light Field with 1D Sensor ?

fx

fθ0

fx0

Band-limited Light Field

Sensor Slice

Fourier Light Field Space

Page 38: Raskar Coded Opto Charlotte

Extra sensor bandwidth cannot capture extra dimension of the light field

fx

fθ0

fx0

Sensor Slice

Extra sensor bandwidth

Page 39: Raskar Coded Opto Charlotte

fx

??????

??? ???

Page 40: Raskar Coded Opto Charlotte

Solution: Modulation Theorem

Make spectral copies of 2D light field

fx

fθ0

fx0

Modulation Function

Page 41: Raskar Coded Opto Charlotte

Modulated Light Field

fx

fθ0

fx0

Modulation Function

Sensor Slice captures entire Light Field

Page 42: Raskar Coded Opto Charlotte

Demodulation to recover Light Field

fx

Reshape 1D Fourier Transform into 2D

1D Fourier Transform of Sensor Signal

Page 43: Raskar Coded Opto Charlotte

fx

fθ0

fx0

Modulation Function == Sum of Impulses

Physical Mask = Sum of Cosines

Page 44: Raskar Coded Opto Charlotte

1/f0

Mask Tile

Cosine Mask Used

Page 45: Raskar Coded Opto Charlotte

Where to place the Mask?

Mask

Sensor

Mask

Sensor

Mask Modulation Function Mask Modulation

Function

fx

Page 46: Raskar Coded Opto Charlotte

Mask Sensor

Where to place the Mask?

Mask Modulation Functionfx

Page 47: Raskar Coded Opto Charlotte

Captured 2D Photo

Encoding due to Cosine Mask

Page 48: Raskar Coded Opto Charlotte

Computing 4D Light Field2D Sensor Photo, 1800*1800 2D Fourier Transform

2D FFT

Rearrange 2D tiles into 4D planes200*200*9*94D IFFT

4D Light Field

9*9=81 spectral copies

200*200*9*9

Page 49: Raskar Coded Opto Charlotte

Digital Refocusing

Only cone in focus

Captured Photo

Page 50: Raskar Coded Opto Charlotte

Full resolution 2D image of Focused Scene Parts

Captured 2D Photo

Image of White Lambertian Plane

divide

Page 51: Raskar Coded Opto Charlotte

Coding and Modulation in Camera Using MasksCoding and Modulation in Camera Using MasksMask? Sensor

MaskSensor

MaskSensor

Coded Aperture for Full Resolution

Digital Refocusing

Heterodyne Light Field Camera

Page 52: Raskar Coded Opto Charlotte

Agile Spectrum Imaging

With Ankit Mohan, Jack Tumblin [Eurographics 2008]

Page 53: Raskar Coded Opto Charlotte

C

B

A

A’

B’

C’

Pinhole

Lens L1

Prism orDiffraction Grating

Lens L2Sensor

Rainbow Plane

C’’

B’’

A’’

Scene

Rainbow Plane inside Camera

Page 54: Raskar Coded Opto Charlotte

A’

B’

C’ λ

λ

λC’’

B’’

A’’

tS

Lens L2x

I

x

t

Page 55: Raskar Coded Opto Charlotte

A’

B’

C’ λ

λ

λC’’

B’’

A’’

tR

Lens L2x

I

x

ttS

Page 56: Raskar Coded Opto Charlotte
Page 57: Raskar Coded Opto Charlotte
Page 58: Raskar Coded Opto Charlotte
Page 59: Raskar Coded Opto Charlotte

Glare Reduction/Enhancement using Glare Reduction/Enhancement using 4D Ray Sampling4D Ray Sampling

Captured Glare Reduced

Glare Enhanced

Page 60: Raskar Coded Opto Charlotte

i

j

x

Sensor

u

Glare = low frequency noise in 2D

•But is high frequency noise in 4D

•Remove via simple outlier rejection

Page 61: Raskar Coded Opto Charlotte

i

j

Sensor

i

j

x

Pin-hole array mask

u

Page 62: Raskar Coded Opto Charlotte

Mask based Light Field CameraMask

Sensor

Page 63: Raskar Coded Opto Charlotte
Page 64: Raskar Coded Opto Charlotte
Page 65: Raskar Coded Opto Charlotte
Page 66: Raskar Coded Opto Charlotte
Page 67: Raskar Coded Opto Charlotte
Page 68: Raskar Coded Opto Charlotte
Page 69: Raskar Coded Opto Charlotte

Glare Reduction/Enhancement using Glare Reduction/Enhancement using 4D Ray Sampling4D Ray Sampling

[Siggraph 2008][Siggraph 2008]

Captured Glare Reduced

Glare Enhanced

Page 70: Raskar Coded Opto Charlotte

• 6D Display

• Multi-flash Camera

• Computational Photography– Online Siggraph Course Notes– Google: ‘Computational Photography’

Other ProjectsOther Projects

Page 71: Raskar Coded Opto Charlotte

Coded Computational Photography• Coded Exposure

– Motion Deblurring [2006]

• Coded Aperture– Focus Deblurring [2007]– Glare reduction [2008]

• Optical Heterodyning– Light Field Capture [2007]

• Coded Illumination– Motion Capture [2007]– Multi-flash: Shape Contours [2004]

• Coded Spectrum– Agile Wavelength Profile [2008]

• Epsilon->Coded->Essence Photographyhttp://raskar.info

Page 72: Raskar Coded Opto Charlotte
Page 73: Raskar Coded Opto Charlotte

Blind CameraBlind Camera

Sascha Pohflepp, U of the Art, Berlin, 2006

Page 74: Raskar Coded Opto Charlotte

Coded Computational Photography• Coded Exposure

– Motion Deblurring [2006]

• Coded Aperture– Focus Deblurring [2007]– Glare reduction [2008]

• Optical Heterodyning– Light Field Capture [2007]

• Coded Illumination– Motion Capture [2007]– Multi-flash: Shape Contours [2004]

• Coded Spectrum– Agile Wavelength Profile [2008]

• Epsilon->Coded->Essence Photographyhttp://raskar.info