Patent ID: 8611415

Claim:
A method for encoding a video signal having at least one frame with a plurality of blocks each having pixels, comprising: receiving motion vectors for a first block in the frame and at least some blocks neighboring the first block, wherein the received motion vectors are determined using a first motion vector search scheme; identifying blocks from the neighboring blocks having motion vectors that are similar to the motion vector of the first block, and assigning the first block and the identified neighboring blocks to a group; determining a number of blocks in the group; and if the number of blocks in the group is greater than a predetermined number, determining an updated motion vector for at least one of the blocks in the group using a second motion vector search scheme that is different from the first motion vector search scheme, wherein the updated motion vector differs in direction or magnitude from the motion vector determined using the first motion vector search scheme, and wherein determining the updated motion vector for at least one of the blocks in the group comprises: determining a plurality of errors between the at least one block and a corresponding plurality of blocks located at each possible search location in a predetermined reference frame search window, selecting from among the corresponding plurality of blocks a best-matching block based on the determined plurality of errors, and calculating the updated motion vector using the at least one block and the best-matching block.