Methods for comparing a target block to a reference window for motion estimation during video encoding
First Claim
1. A method for comparing a target block to a reference window in motion estimation calculations, comprising the steps of:
- determining SAD calculations as a function of the target block and the reference window, wherein the determined SAD calculations are calculated by summing the absolute differences of pixel data of the target block and pixel data of the reference window;
reading the target block into registers;
reading a segment of the reference window, wherein the reference is an array of pixels, wherein each row of the array of pixels is partitioned into a left segment, a middle segment, and a right segment, and wherein an order that the segments are read by a processor is as follows;
the middle segment, the left segment, and the right segment;
updating the determined SAD calculations on the fly as a function of the read target block and the read segment of the reference window;
determining one or more sub-blocks of the reference window having minimum SAD values as a function of the updated SAD calculations; and
if one or more of the minimum SAD values are not below a perdefined threshold, repeating the reading a segment step, the updating step and the determining step for a next segment of the reference window.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for comparing a target block to a reference window in motion estimation calculations, comprises the steps of: determining SAD calculations as a function of the target block and the reference window; reading the target block into registers; reading a segment of the reference window; updating the determined SAD calculations on the fly as a function of the read target block and the read segment of the reference window; and determining one or more sub-blocks of the reference window having minimum SAD values as a function of the updated SAD calculations; and if one or more of the minimum SAD values are not found, repeating the reading a segment step, the updating step and the determining step for a next segment of the reference window.
6 Citations
18 Claims
-
1. A method for comparing a target block to a reference window in motion estimation calculations, comprising the steps of:
-
determining SAD calculations as a function of the target block and the reference window, wherein the determined SAD calculations are calculated by summing the absolute differences of pixel data of the target block and pixel data of the reference window; reading the target block into registers; reading a segment of the reference window, wherein the reference is an array of pixels, wherein each row of the array of pixels is partitioned into a left segment, a middle segment, and a right segment, and wherein an order that the segments are read by a processor is as follows;
the middle segment, the left segment, and the right segment;updating the determined SAD calculations on the fly as a function of the read target block and the read segment of the reference window; determining one or more sub-blocks of the reference window having minimum SAD values as a function of the updated SAD calculations; and if one or more of the minimum SAD values are not below a perdefined threshold, repeating the reading a segment step, the updating step and the determining step for a next segment of the reference window. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for comparing a target block to a reference window in motion estimation calculations, comprising the steps of:
-
determining SAD calculations as a function of pixel data of the target block and pixel data of the reference window; reading the target block into registers; reading a segment of the reference window, wherein the reference window is an array of pixels, and wherein a middle row of the array of pixels is read first and then alternating top and bottoms rows, relative to the middle row, are read in order of proximity to the middle row;
updating the determined SAD calculations on the fly as a function of the read target block and the read segment of the reference window;determining one or more sub-blocks of the reference window having minimum SAD values as a function of the updated SAD calculations, wherein if a certain one of the updated SAD calculations is completed for a certain sub-block of the reference window and is below a predefined threshold, using the certain sub-block of the reference window for motion estimation; and if one or more of the minimum SAD values are not below the predefined threshold, repeating the reading a segment step, the updating step and the determining step for a next segment of the reference window, wherein if the updated SAD calculations are completed and are equal to or above the predefined threshold, using the determined one or more sub-blocks of the reference window for motion estimation. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A method for comparing a target block to a reference window in motion estimation calculations, comprising the steps of:
-
determining SAD calculations as a function of the target block and the reference window; reading the target block into registers; reading a segment of the reference window; updating the determined SAD calculations on the fly as a function of the read target block and the read segment of the reference window; determining one or more sub-blocks of the reference window having minimum SAD values as a function of the updated SAD calculations, wherein if a certain one of the updated SAD calculations is completed for a certain sub-block of the reference window and is below a predefined threshold, using the certain sub-block of the reference window for motion estimation; and if one or more of the minimum SAD values are not below the predefined threshold, repeating the reading a segment step, the updating step and the determining step for a next segment of the reference window, wherein if the updated SAD calculations are completed and are equal to or above the predefined threshold, using the determined one or more sub-blocks of the reference window for motion estimation, wherein the reference window is an array of pixels, wherein each row of the array of pixels is partitioned into a first segment, a second segment, and a third segment, wherein, in the reading the segments step, the order that the segments are read by the processor is as follows;
the second segment, the first segment, and the third segment, andwherein, in the reading the segments step, the segments in a middle row of the array of pixels is read first and then the alternating top and bottoms rows, relative to the middle row, are read in order of proximity to the middle row. - View Dependent Claims (16, 17, 18)
-
Specification