Method and apparatus for motion compensated frame rate up conversion for block-based low bit rate video
First Claim
1. At least one processor configured to implement a method in a decoder for video frame interpolation using a current video frame, at least one previous video frame, and a set of transmitted motion vectors, the method comprising:
- creating a first set of motion vectors as a function of the set of transmitted motion vectors;
identifying an intermediate video frame, the entire intermediate video frame having a plurality of non-overlapping blocks;
assigning each non-overlapping block with at least one motion vector chosen from the first set of motion vectors to create a set of assigned motion vectors, the assigning comprising;
determining a seeded motion vector passing through the non-overlapping block; and
performing a motion vector search based on the seeded motion vector;
creating a second set of motion vectors as a function of the assigned set of motion vectors; and
,generating an interpolated video frame using the second set of motion vectors.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus for video frame interpolation using a current video frame, at least one previous video frame, and a set of transmitted motion vectors is described. A first set of motion vectors is created as a function of the set of transmitted motion vectors. An intermediated video frame is identified, where the intermediate video frame having a plurality of non-overlapping blocks. Each non-overlapping block is assigned with at least one motion vector chosen from the first set of motion vectors to create a set of assigned motion vectors. Then, a second set of motion vectors is created as a function of the assigned set of motion vectors. A video frame is generated using the second set of motion vectors.
-
Citations
56 Claims
-
1. At least one processor configured to implement a method in a decoder for video frame interpolation using a current video frame, at least one previous video frame, and a set of transmitted motion vectors, the method comprising:
-
creating a first set of motion vectors as a function of the set of transmitted motion vectors; identifying an intermediate video frame, the entire intermediate video frame having a plurality of non-overlapping blocks; assigning each non-overlapping block with at least one motion vector chosen from the first set of motion vectors to create a set of assigned motion vectors, the assigning comprising; determining a seeded motion vector passing through the non-overlapping block; and performing a motion vector search based on the seeded motion vector; creating a second set of motion vectors as a function of the assigned set of motion vectors; and
,generating an interpolated video frame using the second set of motion vectors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method, implemented in a decoder, for video frame interpolation using a current video frame, at least one previous video frame, and a set of transmitted motion vectors, the method comprising:
-
creating a first set of motion vectors as a function of the set of transmitted motion vectors; identifying an intermediate video frame, the entire intermediate video frame having a plurality of non-overlapping blocks; assigning each non-overlapping block with at least one motion vector chosen from the first set of motion vectors to create a set of assigned motion vectors, the assigning comprising; determining a seeded motion vector passing through the non-overlapping block; and performing a motion vector search based on the seeded motion vector; creating a second set of motion vectors as a function of the assigned set of motion vectors; and
,generating an interpolated video frame using the second set of motion vectors. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. A non-transitory computer-readable medium having computer executable instructions stored thereon, the stored instructions, when executed by a processor, cause the processor to perform a method for video frame interpolation using a current video frame, at least one previous video frame, and a set of transmitted motion vectors, the method comprising:
-
creating a first set of motion vectors as a function of the set of transmitted motion vectors; identifying an intermediate video frame, the intermediate video frame having a plurality of non-overlapping blocks; assigning each non-overlapping block with at least one motion vector chosen from the first set of motion vectors to create a set of assigned motion vectors, the assigning comprising; determining a seeded motion vector passing through the non-overlapping block; and performing a motion vector search based on the seeded motion vector; creating a second set of motion vectors as a function of the assigned set of motion vectors; and
,generating an interpolated video frame using the second set of motion vectors. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. An apparatus for video frame interpolation using a current video frame, at least one previous video frame, and a set of transmitted motion vectors, comprising:
-
means for creating a first set of motion vectors as a function of the set of transmitted motion vectors; means for identifying an intermediate video frame, the entire intermediate video frame having a plurality of non-overlapping blocks; means for assigning each non-overlapping block with at least one motion vector chosen from the first set of motion vectors to create a set of assigned motion vectors, the assigning means comprising; means for determining a seeded motion vector passing through the non-overlapping block; and means for performing a motion vector search based on the seeded motion vector; means for creating a second set of motion vectors as a function of the assigned set of motion vectors; and
,means for generating an interpolated video frame using the second set of motion vectors. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56)
-
Specification