Top Banner
Data-driven methods: Video 15-463: Computational Photograph Alexei Efros, CMU, Fall 200 © A.A. Efros
51

Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Dec 22, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Data-driven methods: Video

15-463: Computational PhotographyAlexei Efros, CMU, Fall 2007

© A.A. Efros

Page 2: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Weather Forecasting for Dummies™ Let’s predict weather:

• Given today’s weather only, we want to know tomorrow’s• Suppose weather can only be {Sunny, Cloudy, Raining}

The “Weather Channel” algorithm:• Over a long period of time, record:

– How often S followed by R

– How often S followed by S

– Etc.

• Compute percentages for each state: – P(R|S), P(S|S), etc.

• Predict the state with highest probability!• It’s a Markov Chain

Page 3: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

4.04.02.0

3.03.04.0

1.06.03.0

Markov Chain

What if we know today and yestarday’s weather?

Page 4: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Text Synthesis

[Shannon,’48] proposed a way to generate English-looking text using N-grams:• Assume a generalized Markov model• Use a large text to compute prob. distributions of

each letter given N-1 previous letters • Starting from a seed repeatedly sample this Markov

chain to generate new letters • Also works for whole words

WE NEED TO EAT CAKE

Page 5: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Mark V. Shaney (Bell Labs)

Results (using alt.singles corpus):• “As I've commented before, really relating to

someone involves standing next to impossible.”

• “One morning I shot an elephant in my arms and kissed him.”

• “I spent an interesting evening recently with a grain of salt”

Page 6: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Video TexturesVideo Textures

Arno Schödl

Richard Szeliski

David Salesin

Irfan Essa

Microsoft Research, Georgia Tech

Page 7: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Still photosStill photos

Page 8: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Video clipsVideo clips

Page 9: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Video texturesVideo textures

Page 10: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Problem statementProblem statement

video clip video texture

Page 11: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Our approachOur approach

• How do we find good transitions?

Page 12: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Finding good transitions Finding good transitions

• Compute L2 distance Di, j between all

frames

Similar frames make good transitions

frame ivs.

frame j

Page 13: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Markov chain representationMarkov chain representation

2 3 41

Similar frames make good transitions

Page 14: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Transition costs Transition costs

• Transition from i to j if successor of i is similar to j

• Cost function: Cij = Di+1, j

• i

j

i+ 1

j-1

i j D i+ 1, j

Page 15: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Transition probabilitiesTransition probabilities

•Probability for transition Pij inversely related

to cost:•Pij ~ exp ( – Cij / 2 )

high low

Page 16: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Preserving dynamicsPreserving dynamics

Page 17: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Preserving dynamics Preserving dynamics

Page 18: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Preserving dynamics Preserving dynamics

• Cost for transition ij

• Cij = wk Di+k+1, j+kk = -N

N -1

i

j j+ 1

i+ 1 i+ 2

j-1j-2

i jD i, j - 1 D Di+ 1, j i+ 2, j+ 1

i-1

D i-1, j-2

Page 19: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Preserving dynamics – effect Preserving dynamics – effect

• Cost for transition ij

• Cij = wk Di+k+1, j+kk = -N

N -1

Page 20: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

2 3 41

Dead endsDead ends

• No good transition at the end of sequence

Page 21: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

2 3 41

Future costFuture cost

• Propagate future transition costs backward

• Iteratively compute new cost

• Fij = Cij + mink Fjk

Page 22: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

2 3 41

Future costFuture cost

• Propagate future transition costs backward

• Iteratively compute new cost

• Fij = Cij + mink Fjk

Page 23: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

2 3 41

Future costFuture cost

• Propagate future transition costs backward

• Iteratively compute new cost

• Fij = Cij + mink Fjk

Page 24: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

2 3 41

Future costFuture cost

• Propagate future transition costs backward

• Iteratively compute new cost

• Fij = Cij + mink Fjk

Page 25: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

2 3 41

• Propagate future transition costs backward

• Iteratively compute new cost

• Fij = Cij + mink Fjk

• Q-learning

Future costFuture cost

Page 26: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Future cost – effectFuture cost – effect

Page 27: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Finding good loopsFinding good loops

• Alternative to random transitions

• Precompute set of loops up front

Page 28: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Visual discontinuitiesVisual discontinuities

• Problem: Visible “Jumps”

Page 29: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Crossfading Crossfading

• Solution: Crossfade from one sequence to the other.

A i-2

A i-2

B j-2

15

3

1 2

2 1

3

4

4 4

4 4

4+ + +

A i-1

A i-1 / B j-2 A i-1 / B j-2 A i-1 / B j-2

B j-1

A i

B j

A i+1

B j+1

B j+1

Page 30: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Morphing Morphing

• Interpolation task:

A25 B2

5 C15+ +

Page 31: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Morphing Morphing

• Interpolation task:

• Compute correspondencebetween pixels of all frames

A25 B2

5 C15+ +

Page 32: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Morphing Morphing

• Interpolation task:

• Compute correspondence between pixels of all frames

• Interpolate pixel position andcolor in morphed frame

• based on [Shum 2000]

A25 B2

5 C15+ +

Page 33: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Results – crossfading/morphingResults – crossfading/morphing

Page 34: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Results – crossfading/morphingResults – crossfading/morphing

Jump Cut Crossfade Morph

Page 35: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

CrossfadingCrossfading

Page 36: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Frequent jump & crossfadingFrequent jump & crossfading

Page 37: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Video portraitVideo portrait

• Useful for web pages

Page 38: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

• Combine with IBR techniques

Video portrait – 3DVideo portrait – 3D

Page 39: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Region-based analysisRegion-based analysis

• Divide video up into regions

• Generate a video texture for each region

Page 40: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Automatic region analysisAutomatic region analysis

Page 41: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

User selects target frame range

User-controlled video texturesUser-controlled video textures

slow variable fast

Page 42: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Video-based animationVideo-based animation

• Like spritescomputer games

• Extract spritesfrom real video

• Interactively control desired motion

©1985 Nintendo of America Inc.

Page 43: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Video sprite extractionVideo sprite extraction

blue screen m attingand velocity estim ation

Page 44: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

C i j = + angle C i j

vector tom ouse pointer

S im ilarity term Contro l term

velocity vector

Animation{ {

Video sprite controlVideo sprite control

• Augmented transition cost:

Page 45: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

F i j

F i j

F i j F i j

F i j

F i jF i j

S W

W

N W

N

N E

E

S E

S

G oal

Video sprite controlVideo sprite control

• Need future cost computation

• Precompute future costs for a few angles.

• Switch between precomputed angles according to user input

• [GIT-GVU-00-11]

Page 46: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Interactive fishInteractive fish

Page 47: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Summary Summary

• Video clips video textures

• define Markov process

• preserve dynamics

• avoid dead-ends

• disguise visual discontinuities

Page 48: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Discussion Discussion

• Some things are relatively easy

Page 49: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Discussion Discussion

• Some are hard

Page 50: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

A final exampleA final example

Page 51: Data-driven methods: Video 15-463: Computational Photography Alexei Efros, CMU, Fall 2007 © A.A. Efros.

Michel Gondry train video

http://youtube.com/watch?v=qUEs1BwVXGA