Video encoder and decoder using bilinear motion compensation and lapped orthogonal transforms
AssigneeMicrosoft Corporation
InventorSteven A. Gabriel
Life of this patent
Estimating the term…
Abstract
A method and system for improved motion compensation between a previous frame of video information and a new frame. Each block of pixels in a block-based compression scheme uses four vectors, three from proximate blocks, to determine motion-induced changes to its pixels. The vectors are interpolated for each pixel based on the location of the pixel in the block with respect to the vectors. The address of each pixel in the frame block of the previous frame is altered based on the resultant vector determined therefor, whereby a color value for the new pixel is obtained from the altered address. Sharp contrasts at the edges between blocks are eliminated due to the gradual blending obtained by using vectors of the adjacent blocks to determine a pixel's color.
Claims22
A computer-readable medium having computer-executable instructions, comprising:
- storing information corresponding to at least one other frame of pixels, the pixels organized into distinct sets;
- storing received motion information, the motion information comprising vectors associated with at least some of the sets of pixels;
- and
- constructing a new frame based on the at least one other frame of pixels and the motion information by selecting at least some of the pixel positions in the new frame, interpolating at least two of the vectors relative to each selected pixel position in the new frame to determine a location in the other frame, and setting a pixel value for the selected pixel position in the new frame based on the location determined in the other frame.
A method for constructing a second video image from a first video image, comprising:
- maintaining the information corresponding to the first video image;
- selecting a selected pixel in the second video image;
- mathematically combining at least two distinct sets of motion information to determine a location relative to at least two of the pixels in the first video image, each distinct set of motion information having a distinct relationship with the selected pixel;
- and
- constructing the second video image including setting a pixel value for the selected pixel based on the location determined in the first video image, such that the value set for the selected pixel in the second video image provides the appearance of motion relative to the first video image.
A method for constructing a video image, comprising:
- maintaining information representative of at least part of a first frame of video information;
- receiving a plurality of data sets, each data set representing a distinct set of motion information;
- selecting selected pixels in the video image to be constructed, and for each pixel selected, mathematically combining at least two of the data sets to obtain combined motion information for the selected pixel, each data set that is combined for the selected pixel having a distinct relationship with the selected pixel;
- and
- constructing a second frame of video information with the selected pixels by setting values therefor determined via the combined motion information and locations found thereby in the first frame of video information such that the values set for the selected pixels in the video image that is constructed provide the appearance of motion relative to the first frame of video information.
Dependencies are inferred from the claim text.