System and method for producing video effects on live-action video
First Claim
1. A video effects device for producing live-action video, comprising:
- input means for capturing a frame of live-action video and for storing said frame in a frame buffer as a set of pixels;
means for generating image addresses, each having an x-coordinate and a y-coordinate;
a vector offset table addressed by a first index and by a second index, including first means for receiving the x-coordinate and y-coordinate of a first image address respectively as the first index and second index;
means for mapping said first image address to a raw activation factor;
means for reducing or increasing a raw activation factor to produce an adjusted activation factor, including means for varying the amount of reduction or increase with time;
computation means for multiplying an adjusted activation factor with a vector offset to produce an activated vector offset and for adding said activated vector offset to a second image address to produce a frame buffer read address; and
means for outputting pixels, coupled to said computation means and to said frame buffer to generate a transformed video signal.
3 Assignments
0 Petitions
Accused Products
Abstract
A digital video effects system for producing live-action video effects in real time includes an address generator having a pair of 2-D tables for providing x-coordinate and y-coordinate offset values. A third 2-D table contains warp activation factors (activators) which are scaled by a clip and gain processing technique to produce scaled activators. The scaled activators are used to scale the x- and y-offset values which are then combined with the original raster-order addresses to produce frame buffer readout addresses. An output video signal is produced by an inverse mapping of the input frame buffer to the output. The 2-D tables provide control of the image on a pixel-by-pixel basis. The degree of scaling by the clip and gain unit varies with time so that the resulting readout addresses also vary with time. A video effect, therefore, is produced simply by adjusting the scaling of the clip and gain unit. Moreover, a variety of effects can be achieved simply by changing the various 2-D tables.
144 Citations
62 Claims
-
1. A video effects device for producing live-action video, comprising:
-
input means for capturing a frame of live-action video and for storing said frame in a frame buffer as a set of pixels; means for generating image addresses, each having an x-coordinate and a y-coordinate; a vector offset table addressed by a first index and by a second index, including first means for receiving the x-coordinate and y-coordinate of a first image address respectively as the first index and second index; means for mapping said first image address to a raw activation factor; means for reducing or increasing a raw activation factor to produce an adjusted activation factor, including means for varying the amount of reduction or increase with time; computation means for multiplying an adjusted activation factor with a vector offset to produce an activated vector offset and for adding said activated vector offset to a second image address to produce a frame buffer read address; and means for outputting pixels, coupled to said computation means and to said frame buffer to generate a transformed video signal. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for producing live-action video effects, comprising the steps of:
-
defining a video effect, including initializing a vector offset table and an activation table, each table indexed by a first index and a second index; inputting a first video signal and storing said video signal in a frame buffer as a plurality of pixels; generating a stream of pixel addresses, each having an x-coordinate and a y-coordinate; generating a stream of vector offsets from said vector offset table, including indexing said vector offset table by the x-coordinates and the y-coordinates of said stream of pixel addresses; generating a stream of raw activation values, including indexing said activation table by the x-coordinates and the y-coordinates of said stream of pixel addresses; generating a stream of adjusted activation values by performing a computation of said stream of raw activation values with an adjusting function; generating a stream of scaled offsets, including scaling said stream of vector offsets by corresponding values in said stream of adjusted activation values; varying said adjusting function; and generating a stream of output pixels, including adding said stream of scaled offsets to a stream of pixel addresses and reading out said frame buffer with addresses produced thereby. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A video effects device comprising a video input buffer for storing an input image as a plurality of pixels, an address generator for producing pixel read out addresses, a video output means for producing an output video signal based on said pixel readout addresses, said address generator comprising:
-
means for generating an image address, said image address having an x-coordinate and a y-coordinate; first means for mapping said image address to an offset vector; second means for mapping said image address to an activation factor; means for scaling said activation factor to produce a scaled activation factor, the degree of scaling varying with time; means for combining said scaled activation factor and said offset vector to produce a scaled offset vector; and means for adding said scaled offset vector to said image address to produce a pixel readout address; whereby said output video signal is produced by accessing pixels from said video input buffer based on pixel readout addresses. - View Dependent Claims (27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A method for manipulating live-action video to produce video effects in real-time, comprising the steps of:
-
(a) inputting and storing live-action video in a memory store as a set of input pixels, each input pixel being addressed by an x-coordinate and a y-coordinate; (b) providing a plurality of offset vectors; (c) providing a plurality of warp activation values; (d) providing a mapping relation for mapping a first warp activation factor to produce a second warp activation factor; (e) selecting an offset vector from among said plurality of offset vectors; (f) selecting a warp activation value from among said plurality of warp activation values; (g) mapping a selected warp activation value to produce a mapped warp activation value; (h) multiplying said mapped warp activation value with a selected offset vector to form a scaled offset vector; (i) constructing a video signal, including adding said scaled offset vector to a raster-order address to produce a readout address and accessing a pixel from said memory store addressed by said readout address; (j) altering said mapping relation; and (k) repeating said steps (e) through (j). - View Dependent Claims (39, 40, 41, 42, 43, 44, 45, 46, 47, 48)
-
-
49. A video effects device for producing live-action video effects on a video display, comprising:
-
video input means for obtaining a live-action video image; a video memory to store said live-action video image as a plurality of input pixels, said video memory being addressed by an x-coordinate and a y-coordinate; means for generating pixel coordinates; an x-offset table having offset values which are referenced by a first index and a second index; a y-offset table having offset values which are referenced by said first index and said second index; means for selecting an x-offset and a y-offset respectively from said x-offset table and said y-offset table, including means for receiving, as said first index, the x-coordinate of a first generated pixel coordinate and for receiving, as said second index, the y-coordinate of said first generated pixel coordinate; calculation means for computing a sum of a selected x-offset value and the x-coordinate of a second generated pixel coordinate and for computing a sum of a selected y-offset value and the y-coordinate of said second generated pixel coordinate, thereby producing a readout pixel coordinate; and a video signal generator, coupled to said calculation means, for reading out said video memory to produce a video signal. - View Dependent Claims (50, 51, 52, 53, 54)
-
-
55. A method of producing live-action video effects in real time, comprising the steps of:
-
selecting a visual effect; initializing a vector table to contain a plurality of transform vectors for producing a selected visual effect, said vector table organized as rows and columns, each transform vector comprising an x-offset and a y-offset; following said steps of selecting and initializing, inputting a video signal and storing said video signal as a frame of live-action video in a memory store as a set of pixels, each pixel being addressed by an x-coordinate and a y-coordinate; producing a stream of pixel addresses; accessing transform vectors from locations in said vector table addressed by said stream of pixel addresses to produce a stream of transform vectors; combining said pixel addresses with accessed transform vectors to produce readout addresses; and reading out pixels from locations in said memory store addressed by said readout addresses and outputting such pixels in a video output signal. - View Dependent Claims (56, 57, 58, 59, 60, 61, 62)
-
Specification