image pyramids and blending slides modified from alexei efros, cmu, © kenneth kwan

44
Image Pyramids and Blending es Modified from Alexei Efros, CMU, © Kenneth Kwan

Post on 22-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Image Pyramids and Blending

Slides Modified from Alexei Efros, CMU,

© Kenneth Kwan

Page 2: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

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 3: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

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

Figure from David Forsyth

Page 4: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gaussian Pyramid for encoding

1) Prediction using weighted local Gaussian average2) Encode the difference as the Laplacian3) Both Laplacian and the Averaged image is easy to encode

[Burt & Adelson, 1983]

Page 5: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gaussian pyramid

Page 6: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Image sub-sampling

Throw away every other row and

column to create a 1/2 size image- called image sub-sampling

1/4

1/8

Page 7: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Image sub-sampling

1/4 (2x zoom) 1/8 (4x zoom)

Why does this look so bad?

1/2

Page 8: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Sampling

Good sampling:•Sample often or,•Sample wisely

Bad sampling:•see aliasing in action!

Page 9: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gaussian pre-filtering

G 1/4

G 1/8

Gaussian 1/2

Solution: filter the image, then subsample• Filter size should double for each ½ size reduction. Why?

Page 10: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Subsampling with Gaussian pre-filtering

G 1/4 G 1/8Gaussian 1/2

Solution: filter the image, then subsample• Filter size should double for each ½ size reduction. Why?• How can we speed this up?

Page 11: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Compare with...

1/4 (2x zoom) 1/8 (4x zoom)1/2

Page 12: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

What does blurring take away?

original

Page 13: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

What does blurring take away?

smoothed (5x5 Gaussian)

Page 14: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

High-Pass filter

smoothed – original

Page 15: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gaussian pyramid is smooth=> can be subsampled

Laplacian pyramid has narrow band of frequency=> compressed

Page 16: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan
Page 17: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Image Blending

Page 18: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Feathering

01

01

+

=

Encoding transparency

I(x,y) = (R, G, B, )

Iblend = Ileft + Iright

Page 19: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Affect of Window Size

0

1 left

right0

1

Page 20: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Affect of Window Size

0

1

0

1

Page 21: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Good Window Size

0

1

“Optimal” Window: smooth but not ghosted

Page 22: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

What is the Optimal Window?

To avoid seams• window >= size of largest prominent feature

To avoid ghosting• window <= 2*size of smallest prominent feature

Page 23: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Pyramid Blending

0

1

0

1

0

1

Left pyramid Right pyramidblend

Page 24: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Pyramid Blending

Page 25: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

laplacianlevel

4

laplacianlevel

2

laplacianlevel

0

left pyramid right pyramid blended pyramid

Page 26: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Laplacian Pyramid: Blending

General Approach:1. Build Laplacian pyramids LA and LB from images A and B

2. Build a Gaussian pyramid GR from selected region R

3. Form a combined pyramid LS from LA and LB using nodes of GR as weights:• LS(i,j) = GR(I,j,)*LA(I,j) + (1-GR(I,j))*LB(I,j)

4. Collapse the LS pyramid to get the final blended image

Page 27: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Blending Regions

Page 28: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Horror Photo

© prof. dmartin

Page 29: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Simplification: Two-band Blending

Brown & Lowe, 2003• Only use two bands: high freq. and low freq.• Blends low freq. smoothly• Blend high freq. with no smoothing: use binary mask

Page 30: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Low frequency ( > 2 pixels)

High frequency ( < 2 pixels)

2-band Blending

Page 31: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Linear Blending

Page 32: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

2-band Blending

Page 33: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gradient Domain

In Pyramid Blending, we decomposed our image into 2nd derivatives (Laplacian) and a low-res image

Let us now look at 1st derivatives (gradients):• No need for low-res image

– captures everything (up to a constant)

• Idea: – Differentiate– Blend– Reintegrate

Page 34: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gradient Domain blending (1D)

Twosignals

Regularblending

Blendingderivatives

bright

dark

Page 35: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Gradient Domain Blending (2D)

Trickier in 2D:• Take partial derivatives dx and dy (the gradient field)• Fidle around with them (smooth, blend, feather, etc)• Reintegrate

– But now integral(dx) might not equal integral(dy)

• Find the most agreeable solution– Equivalent to solving Poisson equation

– Can use FFT, deconvolution, multigrid solvers, etc.

Page 36: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Comparisons: Levin et al, 2004

Page 37: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Perez et al., 2003

Page 38: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Perez et al, 2003

Limitations:• Can’t do contrast reversal (gray on black -> gray on white)• Colored backgrounds “bleed through”• Images need to be very well aligned

editing

Page 39: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Don’t blend, CUT!

So far we only tried to blend between two images. What about finding an optimal seam?

Moving objects become ghosts

Page 40: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Davis, 1998

Segment the mosaic• Single source image per segment• Avoid artifacts along boundries

– Dijkstra’s algorithm

Page 41: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Input texture

B1 B2

Random placement of blocks

block

B1 B2

Neighboring blocksconstrained by overlap

B1 B2

Minimal errorboundary cut

Efros & Freeman, 2001

Page 42: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

min. error boundary

Minimal error boundary

overlapping blocks vertical boundary

__ ==22

overlap error

Page 43: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Kwatra et al, 2003

Actually, for this example, DP will work just as well…

Page 44: Image Pyramids and Blending Slides Modified from Alexei Efros, CMU, © Kenneth Kwan

Lazy Snapping (Li el al., 2004)

Interactive segmentation using graphcuts