Method and apparatus for global motion estimation
First Claim
1. A method for estimating global motion, comprising:
- estimating different global motion parameters for a current frame;
deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame;
identifying reference blocks in a reference frame using the local motion vectors;
comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame;
estimating global motion parameters at corners of the current frame; and
generating the local motion vectors by interpolating the global motion parameters to the image blocks in the current frame.
2 Assignments
0 Petitions
Accused Products
Abstract
Different combinations of global motion parameters are estimated for a current frame interpolated to derive local motion vectors for individual image blocks. Image blocks in a reference frame identified by the local motion vectors are compared to the image blocks in the current frame. The estimated global motion parameters that provide the best match between the image blocks in the current frame and the reference frame are selected for encoding the current frame. Selected sub regions of temporally consecutive image frame s can be used in order to release the computational burden for global motion estimation and provide more robust global motion estimation results. A data truncation method can also be used to remove bias caused by foreground moving objects.
-
Citations
20 Claims
-
1. A method for estimating global motion, comprising:
-
estimating different global motion parameters for a current frame; deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame; identifying reference blocks in a reference frame using the local motion vectors; comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame; estimating global motion parameters at corners of the current frame; and generating the local motion vectors by interpolating the global motion parameters to the image blocks in the current frame. - View Dependent Claims (2)
-
-
3. A method for estimating global motion, comprising:
-
estimating different global motion parameters for a current frame; deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame; identifying reference blocks in a reference frame using the local motion vectors; comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame; iteratively estimating different combinations of global motion parameters within selected search areas; generating the local motion vectors for the image blocks using the different combinations of global motion parameters; selecting one of the estimated combinations of global motion parameters that best matches the reference blocks in the reference frame with the image blocks in the current frame; and using the selected global motion parameters for encoding the current frame.
-
-
4. A method for estimating global motion, comprising:
-
estimating different global motion parameters for a current frame; deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame; identifying reference blocks in a reference frame using the local motion vectors; comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame; and using only image blocks toward edges of the current fame for comparing with the reference frame.
-
-
5. A method for estimating global motion, comprising:
-
estimating different global motion parameters for a current frame; deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame; identifying reference blocks in a reference frame using the local motion vectors; comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame; and
using a Sum of Absolute Differences for comparing image blocks in the current frame with reference blocks in the reference frame.
-
-
6. A method for estimating global motion, comprising:
-
estimating different global motion parameters for a current frame; deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame; identifying reference blocks in a reference frame using the local motion vectors; comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame; and removing foreground moving object bias from the comparison between the current frame and the reference frame. - View Dependent Claims (7, 8)
-
-
9. A method for estimating global motion, comprising:
-
estimating different global motion parameters for a current frame; deriving local motion vectors from the different global motion parameters for individual image blocks in the current frame; identifying reference blocks in a reference frame using the local motion vectors; comparing the image blocks in the current frame with the identified reference blocks in the reference frame to select the estimated different global motion parameters for the current frame; deriving local motion vectors from the selected estimated global motion parameters for the individual image blocks in the current image frame; using the local motion vectors to identify reference blocks in the reference frame; and using the identified reference blocks to encode or decode the image blocks in the current image frame. - View Dependent Claims (10, 11)
-
-
12. An encoder, comprising:
a processor configured to estimate different global motion parameters for a current frame and use the estimated global motion parameters to derive local motion vectors for individual image blocks in the current frame the processor comparing image blocks in the current frame with reference blocks in a reference frame identified by the local motion vectors and selecting the global motion parameters for the current frame according to the comparisons and configured to derive the local motion vectors by interpolating the global motion parameters to different image blocks in the current frame. - View Dependent Claims (13)
-
14. An encoder, comprising:
a processor configured to estimate different global motion parameters for a current frame and use the estimated global motion parameters to derive local motion vectors for individual image blocks in the current frame the processor comparing image blocks in the current frame with reference blocks in a reference frame identified by the local motion vectors and selecting the global motion parameters for the current frame according to the comparisons and configured to iteratively estimate different combinations of global motion parameters at corners of the current frame generate the local motion vectors for the different combinations, and select the combination of global motion parameters that produce or best match between the image blocks in the current frame and the reference blocks in the reference frame.
-
15. An encoder, comprising:
a processor configured to estimate different global motion parameters for a current frame and use the estimated global motion parameters to derive local motion vectors for individual image blocks in the current frame the processor comparing image blocks in the current frame with reference blocks in a reference frame identified by the local motion vectors and selecting the global motion parameters for the current frame according to the comparisons and configured to generate local motion vectors only for selected image blocks near or at edges of the current frame and compare only the selected image blocks with reference blocks in the reference frame identified by the local motion vectors.
-
16. An encoder, comprising:
a processor configured to estimate different global motion parameters for a current frame and use the estimated global motion parameters to derive local motion vectors for individual image blocks in the current frame the processor comparing image blocks in the current frame with reference blocks in a reference frame identified by the local motion vectors and selecting the global motion parameters for the current frame according to the comparisons and configured to remove foreground moving object bias from the comparison between the current frame and the reference frame. - View Dependent Claims (17)
-
18. An encoder, comprising:
a processor configured to estimate different global motion parameters for a current frame and use the estimated global motion parameters to derive local motion vectors for individual image blocks in the current frame the processor comparing image blocks in the current frame with reference blocks in a reference frame identified by the local motion vectors and selecting the global motion parameters for the current frame according to the comparisons and configured to use the selected global motion parameters for encoding the image blocks in the current frame.
-
19. A decoder, comprising:
a processor decoding encoded image frame using local motion vectors for identified macroblocks, the local motion vectors derived from estimated global motion parameters associated with the image frame, the processor using the derived local motion vectors to identify reference blocks in a reference frame and then using the reference blocks to reconstruct the macroblocks in a current frame and wherein the local motion vectors are previously derived by interpolating the global motion estimation parameters to locations of the image blocks in the current frame. - View Dependent Claims (20)
Specification