Configurable motion estimation search systems and methods
First Claim
1. A computing device comprising a video encoding pipeline configured to receive source image data corresponding with a first image and to output encoded image data corresponding with the source image data, wherein the video encoding pipeline comprises:
- motion estimation setup circuitry configured to;
determine a first pixel search area in a second image based at least in part on a first location indicated by a first initial candidate inter-frame prediction mode;
determine a second pixel search area in the second image based at least in part on a second location indicated by a second initial candidate inter-frame prediction mode different from the first initial candidate inter-frame prediction mode; and
adjust the second initial candidate inter-frame prediction mode to move the second pixel search area in the second image when a first amount of overlap between the first pixel search area and the second pixel search area is between an upper threshold and a lower threshold; and
motion estimation circuitry coupled to the motion estimation setup circuitry, wherein the motion estimation circuitry is configured to perform a first motion estimation search in the first pixel search area and the second pixel search area when the first amount of overlap between the first pixel search area and the second pixel search area is not greater than the upper threshold to facilitate determining a final candidate inter-frame prediction mode; and
mode decision circuitry coupled to the motion estimation circuitry, wherein the mode decision circuitry is configured to;
determine a rate-distortion cost associated with the final candidate inter-frame prediction mode based at least in part on a comparison of the source image data and a prediction sample resulting from application of the final candidate inter-frame prediction mode to other image data; and
determine a prediction mode used to prediction encode the source image data based at least in part on the rate-distortion cost associated with the final candidate inter-frame prediction mode, wherein the encoded image data is generated to indicate the prediction mode.
1 Assignment
0 Petitions
Accused Products
Abstract
System and method for improving operational efficiency of a video encoding pipeline used to encode image data. The video encoding pipeline includes a motion estimation setup block, which dynamically adjusts a setup configuration of the motion estimation block based at least in part on operational parameters of the video encoding pipeline and select an initial candidate inter-frame prediction mode based at least on the setup configuration, a full-pel motion estimation block, which determines an intermediate candidate inter-frame prediction mode by performing a motion estimation search based on the initial candidate inter-frame prediction mode, a sub-pel motion estimation block, which determines a final candidate inter-frame prediction by performing a motion estimation search based on the intermediate candidate inter-frame prediction mode, and a mode decision block, which determines a rate-distortion cost associated with the final candidate inter-frame prediction mode and determines a prediction mode used to prediction encoding the image data.
-
Citations
20 Claims
-
1. A computing device comprising a video encoding pipeline configured to receive source image data corresponding with a first image and to output encoded image data corresponding with the source image data, wherein the video encoding pipeline comprises:
-
motion estimation setup circuitry configured to; determine a first pixel search area in a second image based at least in part on a first location indicated by a first initial candidate inter-frame prediction mode; determine a second pixel search area in the second image based at least in part on a second location indicated by a second initial candidate inter-frame prediction mode different from the first initial candidate inter-frame prediction mode; and adjust the second initial candidate inter-frame prediction mode to move the second pixel search area in the second image when a first amount of overlap between the first pixel search area and the second pixel search area is between an upper threshold and a lower threshold; and motion estimation circuitry coupled to the motion estimation setup circuitry, wherein the motion estimation circuitry is configured to perform a first motion estimation search in the first pixel search area and the second pixel search area when the first amount of overlap between the first pixel search area and the second pixel search area is not greater than the upper threshold to facilitate determining a final candidate inter-frame prediction mode; and mode decision circuitry coupled to the motion estimation circuitry, wherein the mode decision circuitry is configured to; determine a rate-distortion cost associated with the final candidate inter-frame prediction mode based at least in part on a comparison of the source image data and a prediction sample resulting from application of the final candidate inter-frame prediction mode to other image data; and determine a prediction mode used to prediction encode the source image data based at least in part on the rate-distortion cost associated with the final candidate inter-frame prediction mode, wherein the encoded image data is generated to indicate the prediction mode. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 20)
-
-
9. A tangible, non-transitory, computer-readable medium that store instructions executable by one or more processors in a video encoding pipeline, wherein the instructions comprise instructions to:
-
instruct, using the one or more processors, the video encoding pipeline to retrieve source image data corresponding with a first image; instruct, using the one or more processors, the video encoding pipeline to determine a first pixel search area in a second image based at least in part on a first location identified by a first candidate inter prediction mode; instruct, using the one or more processors, the video encoding pipeline to determine a second pixel search area in the second image based at least in part on a second location identified by a second candidate inter prediction mode different from the first candidate inter prediction mode; instruct, using the one or more processors, the video encoding pipeline to adjust the second candidate inter prediction mode to move the second pixel search area in the second image when a first amount of overlap between the first pixel search area and the second pixel search area is between an upper threshold and a lower threshold; instruct, using the one or more processors, the video encoding pipeline to perform a motion estimation search in the first pixel search area and the second pixel search area when the first amount of overlap between the first pixel search area and the second pixel search area is not greater than the upper threshold to facilitate determining a prediction mode to be applied to other image data to determine a prediction sample corresponding with the source image data; and instruct, using the one or more processors, the video encoding pipeline to output encoded image data generated to indicate the prediction mode and a prediction residual resulting from comparison of the prediction sample and the source image data. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method comprising:
-
receiving, using a video encoding pipeline, source image data corresponding with a first image; determining, using the video encoding pipeline, a first pixel search area in a second image based at least in part on a first location indicated by a first candidate inter-frame prediction mode; determining, using the video encoding pipeline, a second pixel search area in the second image based at least in part on a second location indicated by a second candidate inter-frame prediction mode different from the first candidate inter-frame prediction mode; adjusting, using the video encoding, the second candidate inter-frame prediction mode to move the second pixel search area in the second image when a first amount of overlap between the first pixel search area and the second pixel search area is between an upper threshold and a lower threshold; and performing, using the video encoding pipeline, a motion estimation search in the first pixel search area and the second pixel search area when the first amount of overlap between the first pixel search area and the second pixel search area is not greater than the upper threshold to facilitate determining a prediction mode to be applied to other image data to determine a prediction sample corresponding with the source image data; and outputting, using the video encoding pipeline, encoded image data that indicates the prediction mode and a prediction residual resulting from comparison of the prediction sample and the source image data. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification