Presentation is loading. Please wait.

Presentation is loading. Please wait.

Video Textures Arno Schödl Richard Szeliski David Salesin Irfan Essa Microsoft Research, Georgia Tech.

Similar presentations


Presentation on theme: "Video Textures Arno Schödl Richard Szeliski David Salesin Irfan Essa Microsoft Research, Georgia Tech."— Presentation transcript:

1 Video Textures Arno Schödl Richard Szeliski David Salesin Irfan Essa Microsoft Research, Georgia Tech

2 Still photos

3 Video clips

4 Video textures

5 Related work Image-based rendering Novel still views from still images View Morphing [Seitz 96] Lightfields / Lumigraph [Levoy 96, Gortler 96] Façade [Debevec 96] Virtualized Reality [Kanade 97] many more…

6 Image-based rendering (IBR) From View Morphing by Seitz and Dyer Slide added by D.Brogan

7 Related work Texture synthesis Infinite extension of 2D pattern [Heeger 95] [de Bonet 97] [Efros 99]

8 Related work Temporal texture synthesis Video as a spatio-temporal texture Statistical Learning of Multidimensional Textures [Bar-Joseph 99] [Wei 00]

9 Related work Video Rewrite Assemble video snippets to generate lip motion [Bregler 97]

10 Periodic motion analysis Uses similar analysis tools Related work [Niyogi 94] [Seitz 97] [Polana 97] [Cutler 00]

11 Problem statement video clipvideo texture

12 Our approach How do we find good transitions?

13 Finding good transitions Compute L 2 distance D i, j between all frames Similar frames make good transitions frame ivs. frame j

14 Markov chain representation Similar frames make good transitions

15 Transition costs Transition from i to j if successor of i is similar to j Cost function: C i  j = D i+1, j

16 Transition probabilities Probability for transition P i  j inversely related to cost: P i  j ~ exp ( – C i  j /  2 ) high  low 

17 Preserving dynamics

18

19 Cost for transition i  j C i  j = w k D i+k+1, j+k

20 Preserving dynamics – effect Cost for transition i  j C i  j = w k D i+k+1, j+k

21 Dead ends No good transition at the end of sequence

22 Future cost Propagate future transition costs backward Iteratively compute new cost F i  j = C i  j +  min k F j  k

23 Future cost Propagate future transition costs backward Iteratively compute new cost F i  j = C i  j +  min k F j  k

24 Future cost Propagate future transition costs backward Iteratively compute new cost F i  j = C i  j +  min k F j  k

25 Future cost Propagate future transition costs backward Iteratively compute new cost F i  j = C i  j +  min k F j  k

26 Propagate future transition costs backward Iteratively compute new cost F i  j = C i  j +  min k F j  k Q-learning Future cost

27 Future cost – effect

28 Fixed-length videos Alternative to random transitions Precompute set of loops up front Slide edited by D.Brogan

29 Fixed-length videos Creating fixed-length videos Enumerate all sets of transitions with a total length L (multiloops) Select the ones that are legal (the loops overlap so video can jump from one to another) Find the best one Exponential in number of transitions Slide added by D.Brogan

30 Fixed-length videos Create an L x N table L = length of longest loop being considered N = number of loops being considered Slide added by D.Brogan

31 Fixed-length videos Populate the table For each (loop n, length l ) tuple, find best loop (possibly compound) of length l that includes at least one instance of loop n Slide added by D.Brogan

32 Fixed-length videos Populate the table with dynamic programming Start from row one, find best loops Proceed through the rows (length 5, loop C ) is found from (length 3, loop C ) + (length 2, loop D ) Slide added by D.Brogan

33 Fixed-length videos Each cell requires inspection of at most L-1 compound loops from same column and N- 1 entries from other columns Total Cost: O(L 2 N 2 ) Slide added by D.Brogan

34 Fixed-length videos Organizing the loops You cannot jump from any loop to any other loop… sequence order matters Start with loop with largest last frame num. Remove it from the pool Identify isolated loops Add loops that require first loop for access Slide added by D.Brogan

35 Visual discontinuities Problem: Visible “Jumps”

36 Crossfading Solution: Crossfade from one sequence to the other.

37 Morphing Interpolation task:

38 Morphing Interpolation task: Compute correspondence between pixels of all frames Optical flow Slide edited by D.Brogan

39 Morphing Interpolation task: Compute correspondence between pixels of all frames Interpolate pixel position and color in morphed frame based on [Shum 2000]

40 Results – crossfading/morphing

41 Jump Cut Crossfade Morph

42 Crossfading

43 Frequent jump & crossfading

44 Video portrait Useful for web pages

45 Combine with IBR techniques Video portrait – 3D

46 Region-based analysis Divide video up into regions Generate a video texture for each region

47 Automatic region analysis

48 User selects target frame range User-controlled video textures slowvariablefast

49 Lengthen / shorten video without affecting speed Time warping shorteroriginallonger

50 Video-based animation Like sprites computer games Extract sprites from real video Interactively control desired motion ©1985 Nintendo of America Inc.

51 Video sprite extraction

52 Video sprite control Augmented transition cost:

53 Video 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]

54 Interactive fish

55 Summary Video clips  video textures define Markov process preserve dynamics avoid dead-ends disguise visual discontinuities

56 Summary Extensions regions external constraints video-based animation

57 Discussion Some things are relatively easy

58 Discussion Some are hard

59 Future work Better analysis of complex motions New optimality metrics More powerful video-based animation Other kinds of video-based rendering

60 A final example


Download ppt "Video Textures Arno Schödl Richard Szeliski David Salesin Irfan Essa Microsoft Research, Georgia Tech."

Similar presentations


Ads by Google