DOC PREVIEW
CMU CS 15463 - Image Compositing and Blending

This preview shows page 1-2-3-22-23-24-45-46-47 out of 47 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 47 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Image Compositing and Blending15-463: Computational PhotographyAlexei Efros, CMU, Fall 2007© NASAImage CompositingCompositing Procedure1. Extract Sprites (e.g using Intelligent Scissors in Photoshop)Composite by David Dewey2. Blend them into the composite (in the right order)Just replacing pixels rarely worksProblems: boundries & transparency (shadows)Binary maskTwo Problems:Semi-transparent objectsPixels too largeSolution: alpha channelAdd one more channel:• Image(R,G,B,alpha)Encodes transparency (or pixel coverage):• Alpha = 1: opaque object (complete coverage)• Alpha = 0: transparent object (no coverage)• 0<Alpha<1: semi-transparent (partial coverage)Example: alpha = 0.3Partial coverage or semi-transparencyAlpha BlendingalphamaskIcomp= αIfg+ (1-α)IbgshadowMultiple Alpha BlendingSo far we assumed that one image (background) is opaque. If blending semi-transparent sprites (the “A over B” operation):Icomp= αaIa+ (1-αa)αbIbαcomp= αa+ (1-αa)αbNote: sometimes alpha is premultiplied: im(αR,αG,αB,α):Icomp= Ia+ (1-αa)Ib(same for alpha!)Alpha Hacking…No physical interpretation, but it smoothes the seamsFeathering0101+=Encoding as transparencyIblend= αIleft+ (1-α)IrightSetting alpha: simple averagingAlpha = .5 in overlap regionSetting alpha: center seamAlpha = logical(dtrans1>dtrans2)DistancetransformSetting alpha: blurred seamAlpha = blurredDistancetransformSetting alpha: center weightingAlpha = dtrans1 / (dtrans1+dtrans2)DistancetransformGhost!Affect of Window Size01leftright01Affect of Window Size0101Good Window Size01“Optimal” Window: smooth but not ghostedWhat is the Optimal Window?To avoid seams• window = size of largest prominent featureTo avoid ghosting• window <= 2*size of smallest prominent featureNatural to cast this in the Fourier domain• largest frequency <= 2*size of smallest frequency• image frequency content should occupy one “octave” (power of two)FFTWhat if the Frequency Spread is WideIdea (Burt and Adelson)• Compute Fleft= FFT(Ileft), Fright= FFT(Iright)• Decompose Fourier image into octaves (bands)–Fleft= Fleft1+ Fleft2+ …• Feather corresponding octaves Fleftiwith Frighti– Can compute inverse FFT and feather in spatial domain• Sum feathered octave images in frequency domainBetter implemented in spatial domainFFTOctaves in the Spatial DomainBandpass ImagesLowpass ImagesPyramid Blending010101Left pyramid Right pyramidblendPyramid Blendinglaplacianlevel4laplacianlevel2laplacianlevel0left pyramid right pyramid blended pyramidLaplacian Pyramid: BlendingGeneral Approach:1. Build Laplacian pyramids LA and LB from images A and B2. Build a Gaussian pyramid GR from selected region R3. 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 imageBlending RegionsHorror Photo© david dmartin (Boston College)Results from this class (fall 2005)© Chris CameronSeason Blending (St. Petersburg)Season Blending (St. Petersburg)Simplification: Two-band BlendingBrown & Lowe, 2003• Only use two bands: high freq. and low freq.• Blends low freq. smoothly• Blend high freq. with no smoothing: use binary alphaLow frequency (λ > 2 pixels)High frequency (λ < 2 pixels)2-band BlendingLinear Blending2-band BlendingGradient DomainIn Pyramid Blending, we decomposed our image into 2ndderivatives (Laplacian) and a low-res imageLet us now look at 1stderivatives (gradients):• No need for low-res image – captures everything (up to a constant)• Idea: – Differentiate– Blend– ReintegrateGradient Domain blending (1D)TwosignalsRegularblendingBlendingderivativesbrightdarkGradient 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.Perez et al., 2003Perez et al, 2003Limitations:• Can’t do contrast reversal (gray on black -> gray on white)• Colored backgrounds “bleed through”• Images need to be very well alignededitingDon’t blend, CUT!So far we only tried to blend between two images. What about finding an optimal seam?Moving objects become ghostsDavis, 1998Segment the mosaic• Single source image per segment• Avoid artifacts along boundries– Dijkstra’s algorithmmin. error boundaryMinimal error boundaryoverlapping blocks vertical boundary__==22overlap errorGraphcutsWhat if we want similar “cut-where-things-agree” idea, but for closed regions?• Dynamic programming can’t handle loopsGraph cuts (simple example à la Boykov&Jolly, ICCV’01)n-linkssta cuthard constrainthard constraintMinimum cost cut can be computed in polynomial time(max-flow/min-cut algorithms)Kwatra et al, 2003Actually, for this example, DP will work just as well…Lazy SnappingInteractive segmentation using graphcutsPutting it all togetherCompositing images/mosaics• Have a clever blending function– Feathering– Center-weighted– blend different frequencies differently– Gradient based blending• Choose the right pixels from each image– Dynamic programming – optimal seams– Graph-cutsNow, let’s put it all together:• Interactive Digital Photomontage, 2004


View Full Document

CMU CS 15463 - Image Compositing and Blending

Documents in this Course
Lecture

Lecture

36 pages

Lecture

Lecture

31 pages

Wrap Up

Wrap Up

5 pages

morphing

morphing

16 pages

stereo

stereo

57 pages

mosaic

mosaic

32 pages

faces

faces

33 pages

MatTrans

MatTrans

21 pages

matting

matting

27 pages

matting

matting

27 pages

wrap up

wrap up

10 pages

Lecture

Lecture

27 pages

Lecture

Lecture

40 pages

15RANSAC

15RANSAC

54 pages

lecture

lecture

48 pages

Lecture

Lecture

42 pages

Lecture

Lecture

11 pages

Lecture

Lecture

52 pages

Lecture

Lecture

39 pages

stereo

stereo

57 pages

Lecture

Lecture

75 pages

texture

texture

50 pages

Lectures

Lectures

52 pages

Load more
Download Image Compositing and Blending
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Image Compositing and Blending and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Image Compositing and Blending 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?