Using low-resolution frames to increase frame rate of high-resolution frames
First Claim
1. A method of increasing a frame rate of video data performed by one or more devices, the method comprising:
- obtaining a plurality of original higher-resolution frames and a lower-resolution frame, each of the plurality of original higher-resolution frames having a first resolution, the lower-resolution frame having a second resolution lower than the first resolution;
generating, based on the plurality of original higher-resolution frames, a first additional higher-resolution frame, the first additional higher-resolution frame having the first resolution, the first additional higher-resolution frame and the lower-resolution frame corresponding to a same particular output time;
generating a down-sampled frame by down-sampling the first additional higher-resolution frame, the down-sampled frame having the second resolution, wherein;
a set of corresponding blocks includes a first block, a second block, a third block, and a fourth block, the first block being in the down-sampled frame, the second block being in the lower-resolution frame, the third block being in an up-sampled frame, and the fourth block being in the first additional higher-resolution frame, andthe first block, the second block, the third block, and the fourth block correspond to a same region of an image represented in the down-sampled frame, the lower-resolution frame, the up-sampled frame, and the first additional higher-resolution frame;
determining, based on comparisons of blocks of the lower-resolution frame and blocks of the down-sampled frame, a plurality of weights, wherein determining the plurality of weights comprises;
determining a difference metric that indicates a degree of difference between the first block and the second block; and
determining, based on the difference metric, a weight for the set of corresponding blocks, the weight for the set of corresponding blocks being one of the weights in the plurality of weights;
generating the up-sampled frame by up-sampling the lower-resolution frame, the up-sampled frame having the first resolution; and
generating a second additional higher-resolution frame based on a weighted average of the up-sampled frame and the first additional higher-resolution frame, wherein;
the weighted average is based on the plurality of weights, and wherein the second additional higher-resolution frame corresponds to the particular output time, andgenerating the second additional higher-resolution frame comprises, for each sample in the third block, determining, based on the weight for the set of corresponding blocks, a sample in the second additional higher-resolution frame as a weighted average of the sample in the third block and a corresponding sample in the fourth block.
1 Assignment
0 Petitions
Accused Products
Abstract
A device obtains a plurality of original high-resolution frames and a low-resolution frame. The device generates, based on the plurality of original high-resolution frames, a first additional high-resolution frame. The first additional high-resolution frame and the low-resolution frame correspond to a same output time. The device generates a down-sampled frame by down-sampling the first additional higher-resolution frame. Additionally, the device determines, based on comparisons of blocks of the low-resolution frame and blocks of the down-sampled frame, a plurality of weights. The device generates an up-sampled frame by up-sampling the low-resolution frame. The device generates a second additional high-resolution frame based on a weighted average of the up-sampled frame and the first additional high-resolution frame. The weighted average is based on the plurality of weights. The second additional high-resolution frame corresponds to the same output time as the first additional high-resolution frame and the low-resolution frame.
-
Citations
18 Claims
-
1. A method of increasing a frame rate of video data performed by one or more devices, the method comprising:
-
obtaining a plurality of original higher-resolution frames and a lower-resolution frame, each of the plurality of original higher-resolution frames having a first resolution, the lower-resolution frame having a second resolution lower than the first resolution; generating, based on the plurality of original higher-resolution frames, a first additional higher-resolution frame, the first additional higher-resolution frame having the first resolution, the first additional higher-resolution frame and the lower-resolution frame corresponding to a same particular output time; generating a down-sampled frame by down-sampling the first additional higher-resolution frame, the down-sampled frame having the second resolution, wherein; a set of corresponding blocks includes a first block, a second block, a third block, and a fourth block, the first block being in the down-sampled frame, the second block being in the lower-resolution frame, the third block being in an up-sampled frame, and the fourth block being in the first additional higher-resolution frame, and the first block, the second block, the third block, and the fourth block correspond to a same region of an image represented in the down-sampled frame, the lower-resolution frame, the up-sampled frame, and the first additional higher-resolution frame; determining, based on comparisons of blocks of the lower-resolution frame and blocks of the down-sampled frame, a plurality of weights, wherein determining the plurality of weights comprises; determining a difference metric that indicates a degree of difference between the first block and the second block; and determining, based on the difference metric, a weight for the set of corresponding blocks, the weight for the set of corresponding blocks being one of the weights in the plurality of weights; generating the up-sampled frame by up-sampling the lower-resolution frame, the up-sampled frame having the first resolution; and generating a second additional higher-resolution frame based on a weighted average of the up-sampled frame and the first additional higher-resolution frame, wherein; the weighted average is based on the plurality of weights, and wherein the second additional higher-resolution frame corresponds to the particular output time, and generating the second additional higher-resolution frame comprises, for each sample in the third block, determining, based on the weight for the set of corresponding blocks, a sample in the second additional higher-resolution frame as a weighted average of the sample in the third block and a corresponding sample in the fourth block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A device comprising:
-
a memory configured to store a plurality of original higher-resolution frames and a lower-resolution frame, each of the plurality of original higher-resolution frames having a first resolution, the lower-resolution frame having a second resolution lower than the first resolution; and one or more processing circuits configured to; generate, based on the plurality of original higher-resolution frames, a first additional higher-resolution frame, the first additional higher-resolution frame having the first resolution, the first additional higher-resolution frame and the lower-resolution frame corresponding to a same particular output time; generate a down-sampled frame by down-sampling the first additional higher-resolution frame, the down-sampled frame having the second resolution, wherein; a set of corresponding blocks includes a first block, a second block, a third block, and a fourth block, the first block being in the down-sampled frame, the second block being in the lower-resolution frame, the third block being in an up-sampled frame, and the fourth block being in the first additional higher-resolution frame, and the first block, the second block, the third block, and the fourth block correspond to a same region of an image represented in the down-sampled frame, the lower-resolution frame, the up-sampled frame, and the first additional higher-resolution frame; determine, based on comparisons of blocks of the lower-resolution frame and blocks of the down-sampled frame, a plurality of weights, wherein the one or more processing circuits are configured such that, as part of determining the plurality of weights, the one or more processing circuits; determine a difference metric that indicates a degree of difference between the first block and the second block; and determine, based on the difference metric, a weight for the set of corresponding blocks, the weight for the set of corresponding blocks being one of the weights in the plurality of weights; generate the up-sampled frame by up-sampling the lower-resolution frame, the up-sampled frame having the first resolution; and generate a second additional higher-resolution frame based on a weighted average of the up-sampled frame and the first additional higher-resolution frame, wherein the weighted average is based on the plurality of weights, wherein; the second additional higher-resolution frame corresponds to the particular output time, and the one or more processing circuits are configured such that, as part of generating the second additional higher-resolution frame, the one or more processing circuits determine, for each sample in the third block, based on the weight for the set of corresponding blocks, a sample in the second additional higher-resolution frame as a weighted average of the sample in the third block and a corresponding sample in the fourth block. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A device comprising:
-
means for storing a plurality of original higher-resolution frames and a lower-resolution frame, each of the plurality of original higher-resolution frames having a first resolution, the lower-resolution frame having a second resolution lower than the first resolution; means for generating, based on the plurality of original higher-resolution frames, a first additional higher-resolution frame, the first additional higher-resolution frame having the first resolution, the first additional higher-resolution frame and the lower-resolution frame corresponding to a same particular output time; means for generating a down-sampled frame by down-sampling the first additional higher-resolution frame, the down-sampled frame having the second resolution, wherein; a set of corresponding blocks includes a first block, a second block, a third block, and a fourth block, the first block being in the down-sampled frame, the second block being in the lower-resolution frame, the third block being in an up-sampled frame, and the fourth block being in the first additional higher-resolution frame, and the first block, the second block, the third block, and the fourth block correspond to a same region of an image represented in the down-sampled frame, the lower-resolution frame, the up-sampled frame, and the first additional higher-resolution frame; means for determining, based on comparisons of blocks of the lower-resolution frame and blocks of the down-sampled frame, a plurality of weights, wherein the means for determining the plurality of weights comprises; means for determining a difference metric that indicates a degree of difference between the first block and the second block; and means for determining, based on the difference metric, a weight for the set of corresponding blocks, the weight for the set of corresponding blocks being one of the weights in the plurality of weights; means for generating the up-sampled frame by up-sampling the lower-resolution frame, the up-sampled frame having the first resolution; and means for generating a second additional higher-resolution frame based on a weighted average of the up-sampled frame and the first additional higher-resolution frame, wherein; the weighted average is based on the plurality of weights, wherein the second additional higher-resolution frame corresponds to the particular output time, and the means for generating the second additional higher-resolution frame comprises means for determining, for each sample in the third block, based on the weight for the set of corresponding blocks, a sample in the second additional higher-resolution frame as a weighted average of the sample in the third block and a corresponding sample in the fourth block.
-
-
18. A non-transitory computer-readable data storage medium having instructions stored thereon that, when executed, cause one or more processing circuits to:
-
obtain a plurality of original higher-resolution frames and a lower-resolution frame, each of the plurality of original higher-resolution frames having a first resolution, the lower-resolution frame having a second resolution lower than the first resolution; generate, based on the plurality of original higher-resolution frames, a first additional higher-resolution frame, the first additional higher-resolution frame having the first resolution, the first additional higher-resolution frame and the lower-resolution frame corresponding to a same particular output time; generate a down-sampled frame by down-sampling the first additional higher-resolution frame, the down-sampled frame having the second resolution, wherein; a set of corresponding blocks includes a first block, a second block, a third block, and a fourth block, the first block being in the down-sampled frame, the second block being in the lower-resolution frame, the third block being in an up-sampled frame, and the fourth block being in the first additional higher-resolution frame, and the first block, the second block, the third block, and the fourth block correspond to a same region of an image represented in the down-sampled frame, the lower-resolution frame, the up-sampled frame, and the first additional higher-resolution frame; determine, based on comparisons of blocks of the lower-resolution frame and blocks of the down-sampled frame, a plurality of weights, wherein as part of causing the one or more processing circuits to determine the plurality of weights, execution of the instructions causes the one or more processing circuits to; determine a difference metric that indicates a degree of difference between the first block and the second block; and determine, based on the difference metric, a weight for the set of corresponding blocks, the weight for the set of corresponding blocks being one of the weights in the plurality of weights; generate the up-sampled frame by up-sampling the lower-resolution frame, the up-sampled frame having the first resolution; and generate a second additional higher-resolution frame based on a weighted average of the up-sampled frame and the first additional higher-resolution frame, wherein; the weighted average is based on the plurality of weights, wherein the second additional higher-resolution frame corresponds to the particular output time, and as part of causing the one or more processing circuits to generate the second additional higher-resolution frame, execution of the instructions causes the one or more processing circuits to determine, for each sample in the third block, based on the weight for the set of corresponding blocks, a sample in the second additional higher-resolution frame as a weighted average of the sample in the third block and a corresponding sample in the fourth block.
-
Specification