Transcript PowerPoint
Video Textures Paper by Schodl et al. Presentation by Lincoln Hamilton Note: Video Clips borrowed from Video Textures Presentation Outline • • • • • • Motivation What are video textures? Analysis Synthesis Rendering Extensions Motivation • Video has a finite duration – Choppy if you loop it • Video has a beginning, middle, and end. – Specific Behavior – Lacks “Timeless” Quality What are video textures? • Video Textures – A continuous, infinitely varying stream of video images. – Synthesized from a finite set of images by randomly rearranging frames from a source video. Creating Video Textures • Challenges – – – – Locate Potential Transition Points Find Sequences Smoothing Visual Discontinuities Automatically Dividing Video Into Regions Video Texture Representation • Markov processes with each state corresponding to a single frame • Two Representations – Matrix of probabilities • Better when the matrix is dense – Set of Links • Better when the set of transitions is sparse Analysis • Compute L2 Distance to measure similarity Dij = || Ii – Ij||2 • Goal is to create transitions whenever Di+1,j is small Analysis • Map through probabilities Pij = exp(- Dij / s) Sigma determines what transitions are acceptable High s Low s Dynamics • Dynamics must be preserved • Consider a pendulum How to preserve dynamics • Adjacent frames must also be similar D’ij = (Sum: k=-m to m-1)wkDi+k,j+k • Instead of matching frames, you match subsequences • This can be done by filtering the difference matrix with a diagonal kernel with weights [w-m,….,wm-1] Avoiding dead ends • Some transitions lead to dead ends • Calculate Anticipated Future Cost Go to board Synthesis • Two Algorithms – Random Play • Begins at any point and transitions to next depending on the Probability matrix – Video Loops • Create video loops that repeat for a fixed period Video Loops • Primitive Loop – Single Transition, source I destination J – The cost is D’ij • Compound Loop Optimal Loops • Dynamic Programming Algorithm – 1. 2. 3. 4. 5. Pre-compute set of loops Schedule the transition that starts at the very end of the sequence as the first transition to be taken. The removal of this transition i j may break the remaining primitive loops into one or more sets of continuous ranges. Repeat previous step until there are no more primitive loops left in the first range. Schedule any primitive loop in each of the following ranges. Go back to step 2 until all the loops are removed Rendering • Sometimes there are cases where there is no such unnoticeable transition. • Techniques to solve this problem – Cross-fading – Morphing Cross-fading and Morphing • Cross-fading – Frames from the sequence near the source of the transition are faded out while frames from near the destination are faded in. • Causes Temporary blurs • Morphing – Find a consensus position for the pixel • Take weighted average of the corresponding positions Cross-fading and Morphing Jump Cut Cross-fade Morph Parametric Motion Control Slow Variable Fast Time Compression and Dilation Shorter Original Longer Mouse-control