+ All Categories
Home > Documents > When Does Computational Imaging Improve...

When Does Computational Imaging Improve...

Date post: 31-Jul-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
52
When Does Computational Imaging Improve Performance? Oliver Cossairt Assistant Professor Northwestern University Collaborators: Mohit Gupta, Changyin Zhou, Daniel Miau, Shree Nayar (Columbia University)
Transcript
Page 1: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

When Does Computational

Imaging Improve Performance?

Oliver Cossairt

Assistant Professor

Northwestern University

Collaborators: Mohit Gupta, Changyin Zhou,

Daniel Miau, Shree Nayar (Columbia University)

Page 2: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

How to capture the best quality photograph?

Iphone 4GPhotograph

Canon DLSRPhotograph

http://campl.us/posts/iPhone-Camera-Comparison

Page 3: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

http://thehdrimage.com/tag/metering/

Digital vs. Film Photography

• Dynamic range fixed at time of exposure

1ms Exposure Time 4ms Exposure Time

8ms Exposure Time 16ms Exposure Time

Digital Camera

• Dynamic range can be extended computationally

High Dynamic Range Image

Film Camera

Page 4: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

http://graphics.stanford.edu/courses/cs178-13/lectures/astrophotography-02may13-150dpi.pdf

Digital Photography: Noise

• Noise level fixed at capture time

• Limited by film grain size

Milky Way, 6 min exposure (Jesse Levinson)

Digital Camera• Noise can be

averaged away

• SNR unlimited in principle

Milky Way, 10x 6 min exposures averaged

Film Camera

Page 5: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

• Take multiple pictures and computationally combine

Computational Imaging: Increased Functionality

Others• Multiview Stereo• Depth from Focus/Defocus• Tomography• Structured Light• Deconvolution microscopy• etc.

HDR Imaging Panoramic Stitching

Digital Holography

[Greenbum et al. ’12]

Image-Based Lighting

[Debevec et al. ’00]

Light Field Capture

[Wilburn et al. ’04]

Page 6: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

[Caraso, Opt. Eng ‘06]

Focus Blur

• Blur is fixed at time of capture

M100 Galaxy captured by Hubble Telescope

Digital Camera

• Images can be deblurredvia deconvolution

M100 Galaxy after blind deconvolution

Film Camera

Page 7: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Digital Camera

• Long exposure produces blurry image

50 millisecond exposure

Motion Blur

Film Camera

• Short exposure avoids motion blur

• Image is noisy

1 millisecond exposure (noisy)

• Blur can be removed via deconvolution

(blurry)(deblurred)

Page 8: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Coded Blur and Multiplexing

CameraExposure

Time50 millisec

[Raskar et al. ’06]

Page 9: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Coded Blur and Multiplexing

CameraExposure

Time50 millisec

[Raskar et al. ’06]

Blur is shifted and summed copies

Page 10: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Coded Blur and Multiplexing

CameraExposure

Time50 millisec

[Raskar et al. ’06]

Which copies to keep?

Page 11: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Coded image capture for increased performance

Computational Imaging: Increased Performance

Reflectance

[Schechner ‘03][Ratner ‘07][Ratner ‘08]

Defocus Blur

[Hausler ’72][Nagahara ’08]

[Levin et al. ’07][Zhou, Nayar ’08]

[Dowski, Cathey ‘96]

Motion Blur

[Raskar ’06] [Levin ‘08][Cho ’10]

Multi/Hyper-Spectral

[Sloane ’79] [Hanley ’99]

[Baer ‘99][Wetzstein et al., ’12]

Light Field Capture

[Lanman ’08] [Veeraraghavan ’07]

[Liang ‘08]

Coded Aperture

[Mertz ’65] [Gottesman ’89]

Page 12: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Coded Imaging Performance

CameraExposure

Time50 millisec

Coded Exposure

Time50 millisec

Short Exposure

Vs.

Deblurred Image

When does computational imaging improve performance?

CameraExposure

Page 13: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Measuring Computational Imaging

Performance

Page 14: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

• No diffraction

• Fully determined

Image Formation Model

Assumption:

A) Linear model of incoherent image formation

Scene CodedImage

ComputationalCamera

Image

Optical Coding Equation

CodedImage

CodingMatrix Noise

Page 15: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

• Signal dependent / independent noise

• Ignore Dark current, fixed pattern

Affine Noise Model

Assumption:

B) Affine noise model (photon noise is Gaussian)

Noise Variance at kth Pixel:

photon noise

aperture, lighting, pixel size

read noise

electronics,ADC’s, quantization

• Photon noise modeled as Gaussian

(ok for more than 10 photons)

• Photon noise spatially averaged

Noise PDF:

Page 16: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Signal-level and photon noise depend on illumination

Lighting Conditions

Assumption:

C) Naturally occurring light conditions for photography

Ex) q=.5, R = .5, F/8, t = 6ms, p=6um

Isrc (lux)

Quarter moon Full moon Twilight Indoor lighting Cloudy day Sunny day

10-2 1 10 102 103 104

8×10-3 0.8 8.1 81.4 814.3 8143J (e-)

Signal level

Illumination

Illumination(lux)

Aperture ExposureTime (s)

PixelSize (m)

QuantumEfficiency

ReflectivityAverageSignal (e-)

[Cossairt et al. TIP ‘12]

Page 17: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

For Gaussian noise, Mean-Squared-Error (MSE) can be computed

analytically

Measuring Performance

Observation:

1) Multiplexing performance depends on coding matrix

Ex) Coded Motion Deblurring

Long Exposure Coded Exposure

Page 18: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Impulse imaging (identity sampling)

Multiplexing vs. Impulse Imaging

Observation:

2) Multiplexing increases signal-dependent noise

Noise variance

Coded imaging (multiplexed sampling)

Noise variance

Increasedthroughput

Page 19: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Observation:

3) Performance depends on multiplexing and signal prior

Multiplexing vs. Impulse Imaging

SNR Gain over impulse imaging:

Decreases with C

Noise Dependent

Increases with C

Coding Dependent

Coded Aperture Astronomy

Decreasing contrast

Increasing scene points

[Mertz ’65]

Fresnel zone plate

[Sloane ’79]

Hadamard Multiplexing:

No SNR gain for large signal

Page 20: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Assume we have a PDF for images, e.g.

Image Prior Models

Assumption:

D) Signal prior models naturally occurring images

MSE difficult to express analytically when

Compute the Maximum A Posteriori (MAP) estimate

Data term Prior term

Other priors

•Total Variation (TV)

•Wavelet/sparsity prior

•Learned priors (K-SVD)

Power Spectra Prior

Page 21: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Image Priors and Noise

Observation:

4) Signal priors help more at low light levels

PSNR = 5.5 dB

Twilight

(10 lux)

PSNR = 16.4 dB

Denoise

Daylight

(10 lux)5

PSNR = 35 dB PSNR = 35.9 dB

Denoise

Page 22: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

How to capture the best quality photograph?

Observations:

1) Multiplexing performance depends on coding matrix

2) Multiplexing helps most in low light

3) Performance depends on both multiplexing and signal prior

4) Signal priors help most in low light

Assumptions

A) Incoherent imaging

B) Affine noise model

C) Natural lighting conditions

D) Natural image prior

Page 23: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Example:

Motion Deblurring

Page 24: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Motion Deblurring vs. Impulse Imaging

CameraExposure

Time50 millisec

Computational Imaging (Coded Exposure)

Time50 millisec

Impulse Imaging (Short Exposure)

Vs.

What is the best possible coding performance we can get?

Optical efficiency (C)= total ‘on’ time

[Ratner ‘07]

Page 25: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

[Ratner and Schechner ‘07]

Optical Efficiency (C)

SN

R G

ain

(G

)

Average signal level

Read noise

5 10 15 20 25 30

1

2

3

4

S-Matrix

Multiplexing Performance Bound

Page 26: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

When Does Motion Deblurring Improve Performance?

Motion InvariantLevin et al.

Flutter ShutterRaskar et al.

Upper Bound on SNR Gain:

Performance depends only on lighting conditions!

[Cossairt et al. TIP ‘12]

Read

Noise

Average

signal level

q=.5, R = .5, F/2.1, p = 1um,

Maximum object speed (pixels/sec)

Page 27: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Twilight

(10 lux)

Flutter Shutter Simulation

Impulse (4ms) Flutter Shutter (180ms) Deblurred

Cloudy Day

(10 lux)3

PSNR = 12.4 dB PSNR = 10.1 dB

q=.5, R = .5, F/2.1, pixel size = 1um, read noise

PSNR = -7.2 dB PSNR = -3.0 dB

Page 28: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Example:

Extended DOF Imaging

Page 29: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

http://en.wikipedia.org/wiki/Focus_stacking

Depth of Field

Microscope Tachinid Fly

Small DOF

Page 30: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

http://en.wikipedia.org/wiki/Focus_stacking

Depth of Field

Microscope Tachinid Fly

Large DOF

Page 31: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

F 1.4F 2.8F 5.6F 8.0

LensImage

Depth of Field and Noise

Small apertures have large depth of field and low SNR

Page 32: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

LensSensor

Focal Sweep

400 600 900 1500 20001200 1700 (depth)

Point Spread Function (PSF)

[Hausler ‘72, Nagahara et al. ‘08]

Page 33: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Focal Sweep

400 600 900 1500 2000 (depth)1200 1700

+ + + + + + =

t = 1 t = 2 t = 3 t = 4 t = 5 t = 6 t = 7(400) (600) (900) (1500) (2000)(1200) (1700)

Integrated PSF

[Hausler ‘72, Nagahara et al. ‘08]

LensSensor

Page 34: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Quasi Depth Invariant PSF

Extended depth of field with a single deconvolution

1200mm

750mm

400mm2000mm

-25 0 25

0.016

0.012

0.008

0.004

0

1

60

1200mm

-25 0 25

0.016

0.012

0.008

0.004

0

750mm

400mm 2000mm

×

Traditional Camera PSFFocal Sweep PSF

Page 35: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Focal Sweep: Captured

75 m

50 m

Extended Depth of Field Telescope

Meade LX200 8’’ Telescope

Traditional Image

75 m

50 m

75 m

50 m

Focal Sweep: Processed2000mm FL

Page 36: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

LensImage

Focal Sweep Without Moving Parts

Focal Sweep

LensImage

Diffusion Coding

Radial Diffuser

(No Moving Parts)

[Cossairt et al. Siggraph ‘10]

500 x 3 micron

Page 37: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Diffusion Coding: Evaluation

RM

S D

eblu

rrin

gErr

or

Depth (mm)

Cubic Phase PlateFocal Sweep

noise

Diffusion Coding

400 600 900 1200 1500 1700 2000

.07

.06

.05

.04

.03

.02

.01

[Dowski and Cathey ‘95]

[Hausler ‘72, Nagahara et al. ‘08]

[Cossairt et al. Siggraph ‘10]

Diffusion coding gives best performance without moving parts

Page 38: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Diffusion Coding F/1.8 (Deblurred)

Traditional F/1.8 Diffusion Coding F/1.8 (Captured)

Diffusion Coding vs. Traditional Camera

Traditional F/18 (Normalized)

Page 39: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Face Detection

Diffusion Coding Camera (F/2.0)Traditional Camera (F/2.0)

Page 40: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

AnnularAperture

Mirror 2 Mirror 1 SensorDiffuser

80” Focal Length

8” dia

Diffusion Coded Telescope: Optical Design

Page 41: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Telephoto Focal Sweep with Deformable Optics

Canon 800mm EFL Lens

Deformable Lens

Sensor

[Miau et al. ICCP ‘13]

Page 42: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Telephoto Video Quality Comparison

Conventional EDOF (Deformable Lens)

Page 43: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Noise Variance:Impulse Camera

lenssensor

A

Focal Sweep Performance

Mean-Squared Error:

Noise Variance:

light increase

Focal Sweep

lens

diffuser

sensor

C*A

Mean-Squared Error:

[Cossairt et al. TIP ‘12]

Page 44: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

When Does Defocus Deblurring Improve Performance?

Performance depends only on lighting conditions!

[Cossairt et al. TIP ‘12]

Read

Noise

Average

signal level

Focal sweep multiplexing gain can be expressed analytically

q=.5, R = .5, t = 20ms, p = 5um,

Maximum defocus at F/1 (pixels)

Page 45: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Focal Sweep

(F/2.0)

Traditional

(F/2.0)

Twilight

(10 lux)

Pixel size = 5um

Read noise

Focal Sweep Simulation

Daylight

(10 lux)5

PSNR = 35 db PSNR = 38.5 db

Traditional

(F/20.0)

PSNR = 5.5 db PSNR = 18.5 db

Page 46: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Focal Sweep

(F/2.0)

Focal Sweep Simulation (with Prior)

Daylight

(10 lux)5

PSNR = 35.9 dB / 35 dB PSNR = 39.6 dB / 38.5 dB

BM3D Algorithm: [Dabov et al. ‘06]

Twilight

(10 lux)

Traditional

(F/20.0)

PSNR = 16.4 dB / 5.5 dB PSNR = 22.8 dB / 18.5 dB

Traditional

(F/2.0)

Pixel size = 5um

Read noise

Page 47: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Simulated Focal Sweep Performance

[Cossairt et al., TIP ‘12]

Focal Sweep performance bound is weak at low light levels

Focal Sweep Performance

ImpulseImaging

Page 48: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Conclusions

• Results for Motion Deblurring, EDOF also applicable to many

other computational cameras

• Computational imaging performance should always be

measured relative to impulse imaging

• Computational imaging performance depends jointly on

multiplexing, noise, and signal priors

• Important question: “How much performance improvement

from multiplexing above and beyond use of signal priors?”

Page 49: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Visual Quality Metrics

[Cossairt et al., TIP ‘12]

SSIM Metric UQI Metric SSIM MetricVIF Metric

Performance bound roughly holds for all metrics

Page 50: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Computational Gigapixel Camera

BallLens

LensArray

BallLens

SensorArray

Computations

GigapixelImage

Also See: MOSAIC Program, Duke, UCSD, Distant Focus

Ball LensSensor

Pan/Tilt Motor

Computational Camera Design Prototype Camera

Page 51: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Resolution vs. Lens Scale

Pixels

Poin

t Spre

ad F

unction

0-50 50

PSF size increases linearly

Page 52: When Does Computational Imaging Improve Performance?users.eecs.northwestern.edu/~ollie/frameworkCI/... · Signal-level and photon noise depend on illumination Lighting Conditions

Resolution vs. Lens Scale

Pixels

Poin

t Spre

ad F

unction

0-50 50

PSF size increases linearly

Scale (M)

RM

S D

eblu

rrin

gErr

or

1 12 25 37 50 62 75 87 100

0.02

0.04

0.06

0.08

0.10

0.12

0.14

Deblurring Error is sub-linear

[Cossairt et al. JOSA ‘11]


Recommended