Motion estimation for video compression
AssigneeXilinx, Inc.
InventorMankit Lo
Life of this patent
Estimating the term…
Abstract
Motion estimation is described. A first portion of a predicted frame is obtained. The first portion is for a first predicted value. A first subset of a reference frame is obtained. The first subset is for a first reference value. Twice the first predicted value is subtracted from the first reference value. The outcome of the subtracting is multiplied by the first reference value to produce a partial result. The partial result is used for indication of a degree of difference between the first portion and the first subset.
Claims20
A method for motion estimation, the method comprising:
- obtaining a first portion of a predicted frame, the first portion being for a first predicted value;
- obtaining a first subset of a reference frame, the first subset being for a first reference value;
- subtracting twice the first predicted value from the first reference value;
- and
- multiplying, using an integrated circuit, an outcome of the subtracting by the first reference value to produce a partial result, the partial result for indication of a degree of difference between the first portion and the first subset.
An integrated circuit, comprising:
- a digital signal processing block having a subtractor, a multiplier, and an adder;
- the subtractor coupled to receive a value of a variable B and twice a value of a variable A (“2A”) for providing a result of B−2A;
- and
- the multiplier coupled to receive the result of B−2A and to receive the variable B for providing a result of B(B−2A);
- the variable B being associated with a reference array of pixels, the reference array of pixels being a subset of a reference frame;
- the variable A being associated with a predicted array of pixels, the predicted array of pixels being a subset of a predicted frame;
- and
- the result of B(B−2A) being for motion estimation;
- wherein the result of B(B−2A) is usable to provide an indication of degree of difference between the variable B and the variable A for determining degree of difference between the subset of the reference frame and the subset of the predicted frame.
A method for providing an engine for motion estimation, comprising:
- determining an array size of an array of pixels, the array of pixels being for predicted data of a predicted frame;
- associating embedded resources to provide an array of digital signal processing blocks of the array size;
- configuring each digital signal processing block of the array of digital signal processing blocks to perform a respective portion of an equation B(B−2A), where B is associated with reference data from a reference frame and A is associated with the predicted data from the predicted frame;
- the array of digital signal processing blocks configured to propagate carry data from respective portions of the equation B(B−2A) and to propagate each output from each respective portion of the equation B(B−2A);
- a portion of the array of digital signal processing blocks configured to add an associated respective portion of the carry data to an associated respective portion of the equation B(B−2A) from a prior stage of the array of digital signal processing blocks;
- and
- programming first programmable resource to provide to receive outputs from a final stage of the array of digital signal processing blocks for summing the outputs to produce a current indicator, the current indicator being associated with a Sum of Square Differences-based result.
Dependencies are inferred from the claim text.