System and method to process motion vectors of video data
First Claim
Patent Images
1. A method comprising:
- assessing a spatial continuity relative to a first block of a video frame of video data;
assessing a temporal continuity relative to the first block of the video frame of video data, wherein assessing the temporal continuity comprises determining to utilize an estimated motion vector based on motion vectors of neighboring blocks, and wherein assessing the temporal continuity further comprises;
calculating a weighted difference between a processed motion vector of the first block of the video frame and a motion vector of a corresponding block of a previous frame of the video data,comparing the weighted difference to a threshold, andin response to the weighted difference exceeding the threshold, determining an estimated motion vector that is a median value of motion vectors of neighboring blocks in a three block by three block array that includes the first block corresponding to the processed motion vector; and
assigning a motion vector to the first block based on the spatial continuity and the temporal continuity.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods to process motion vectors of video data are disclosed. According to an embodiment, an intra-block in a video frame of the video data is identified. At least a first set and a second set of inter-blocks that neighbor the identified intra-block are identified, where each inter-block in a set of inter-blocks has a motion vector associated therewith. Data of the first and second set of inter-blocks is evaluated to determine an error associated with each of the first and second sets. A motion vector associated with motion vectors of the inter-blocks of the set with the least error is determined. The determined motion vector may be associated with the identified intra-block.
-
Citations
29 Claims
-
1. A method comprising:
-
assessing a spatial continuity relative to a first block of a video frame of video data; assessing a temporal continuity relative to the first block of the video frame of video data, wherein assessing the temporal continuity comprises determining to utilize an estimated motion vector based on motion vectors of neighboring blocks, and wherein assessing the temporal continuity further comprises; calculating a weighted difference between a processed motion vector of the first block of the video frame and a motion vector of a corresponding block of a previous frame of the video data, comparing the weighted difference to a threshold, and in response to the weighted difference exceeding the threshold, determining an estimated motion vector that is a median value of motion vectors of neighboring blocks in a three block by three block array that includes the first block corresponding to the processed motion vector; and assigning a motion vector to the first block based on the spatial continuity and the temporal continuity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. An apparatus comprising:
-
a spatial continuity module for assessing a spatial continuity relative to a first block of a video frame of video data; a temporal continuity module for assessing a temporal continuity relative to the first block of the video frame of video data, wherein assessing the temporal continuity comprises determining to utilize an estimated motion vector based on motion vectors of neighboring blocks, wherein the temporal continuity assessment module calculates a weighted difference between a processed motion vector of the first block of the video frame and a motion vector of a corresponding block of a previous frame of the video data, compares the weighted difference to a threshold, and determines an estimated motion vector that is a median value of motion vectors of neighboring blocks in a three block by three block array that includes the first block corresponding to the processed motion vector when the weighted difference exceeds the threshold; and a decision module for assigning a motion vector to the first block based on the spatial continuity and the temporal continuity. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A non-transitory computer-readable medium storing computer code, the computer code comprising instructions that cause a computer to:
-
assess a spatial continuity relative to a first block of a video frame of video data; assess a temporal continuity relative to the first block of the video frame of video data, wherein assessing the temporal continuity comprises determining to utilize an estimated motion vector based on motion vectors of neighboring blocks, wherein the instructions for assessing the temporal continuity further comprise instructions that cause the processor to; calculate a weighted difference between a processed motion vector of the first block of the video frame and a motion vector of a corresponding block of a previous frame of the video data; compare the weighted difference to a threshold; and in response to the weighted difference exceeding the threshold, determine an estimated motion vector that is a median value of motion vectors of neighboring blocks in a three block by three block array that includes the first block corresponding to the processed motion vector; and assign a motion vector to the first block based on the spatial continuity and the temporal continuity. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
-
23. A device comprising:
-
means for assessing a spatial continuity relative to a first block of a video frame of video data; means for assessing a temporal continuity relative to the first block of the video frame of video data, wherein assessing the temporal continuity comprises determining to utilize an estimated motion vector based on motion vectors of neighboring blocks, wherein the means for assessing the temporal continuity further comprise; means for calculating a weighted difference between a processed motion vector of the first block of the video frame and a motion vector of a corresponding block of a previous frame of the video data; means for comparing the weighted difference to a threshold; and means for determining, in response to the weighted difference exceeding the threshold, an estimated motion vector that is a median value of motion vectors of neighboring blocks in a three block by three block array that includes the first block corresponding to the processed motion vector; and means for assigning a motion vector to the first block based on the spatial continuity and the temporal continuity. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
Specification