CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

26
CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids

Transcript of CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Page 1: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

CS 691B Computational Photography

Instructor: Gianfranco DorettoImage Pyramids

Page 2: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Linear image transformations

• In analyzing images, it’s often useful to make a change of basis.

Basis

fUF

Vectorized image

transformed image

Page 3: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Spatial Domain Basis

Basis functions:

……

……

..

Tells you where things are….

… but no concept of what it is

Page 4: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Identity transform

= *

Pixel domain image

Spatial bases are local: each transform coefficient depends on one pixel location.

Pixel domain

image

1000…01000…00100…

…0001…00010

000100…

…0001000…

Page 5: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Fourier Domain Basis

Basis functions:

Tells you what (frequency) is in the image….

… but not where it is

……

……

……

Page 6: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Fourier transform

= *

Pixel domain image

Fourier bases are global: each transform coefficient depends on all pixel locations.

Fourier transform

Page 7: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Image Analysis

• Want representation that combines what and where.

Image Pyramids

Page 8: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Overview

• Gaussian Pyramid• Laplacian Pyramid

Page 9: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Image Pyramids

Known as a Gaussian Pyramid [Burt and Adelson, 1983]• In computer graphics, a mip map [Williams, 1983]• A precursor to wavelet transform

Page 10: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Gaussian pyramid construction

filter mask

Repeat• Filter (keep filter the same size)• Subsample (by a factor of two)

Until minimum resolution reached • can specify desired number of levels (e.g., 3-level pyramid)

Total number of pixels in pyramid?• 1 + ¼ + 1/16 + 1/32…….. = 4/3

Over-complete representation

Page 11: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

A bar in the big images is a hair on the zebra’s nose; in smaller images, a stripe; in the smallest, the animal’s nose

Page 12: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

What are they good for?

• Improve Search– Search over translations

• Classic coarse-to-fine strategy

– Search over scale• Template matching• E.g. find a face at different scales

• Pre-computation– Need to access image at different blur levels– Useful for texture mapping at different resolutions (called mip-

mapping)

• Compression– Capture important structures with fewer bytes

• Denoising– Model statistics of pyramid sub-bands– Image blending

Page 13: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Gaussian pyramid

= *Pixel domainimage

Overcomplete representation. Low-pass filters, sampled appropriately for their blur.

Gaussian pyramid

Page 14: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Overview

• Gaussian Pyramid• Laplacian Pyramid

Page 15: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

What does blurring take away?

original

Page 16: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

What does blurring take away?

smoothed (5x5 Gaussian)

Page 17: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

High-Pass filter

smoothed – original

Page 18: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Band-pass filtering

• Laplacian Pyramid (subband images)

• Created from Gaussian pyramid by subtraction

Gaussian Pyramid (low-pass images)

Page 19: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Laplacian filter

GaussianUnit impulse Laplacian of Gaussian

- ≅

Page 20: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Laplacian pyramid algorithm

blur

_

subsample blur

_

subsampleblur

_

subsample

Page 21: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Can we reconstruct the original?

interpolateinterpolateinterpolate

Need this!

Page 22: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

The Laplacian Pyramid

• Synthesis– preserve difference between upsampled

Gaussian pyramid level and Gaussian pyramid level

– band pass filter - each level represents spatial frequencies (largely) unrepresented at other levels

• Analysis– reconstruct Gaussian pyramid, take top

layer

Page 23: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Laplacian pyramid

Page 24: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Laplacian pyramid

= *Pixel domain image

Overcomplete representation. Transformed pixels represent bandpassed image information.

Laplacian pyramid

Page 25: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Hybrid Image in Laplacian Pyramid

High frequency Low frequencyExtra points for project 1

Page 26: CS 691B Computational Photography Instructor: Gianfranco Doretto Image Pyramids.

Slide Credits

• This set of sides also contains contributionskindly made available by the following authors– Alexei Efros– Svetlana Lazebnik– Frédo Durand– Bill Freeman– Steve Seitz– Derek Hoiem– David Forsyth