1. A method of motion estimation, the method comprising: a) determining a sum of absolute difference for a predetermined number of neighbors to a current pixel; b) calculating a gradient of the sum of absolute difference for each of the neighbors; c) determining a motion vector using the gradients, wherein the motion vector lies in a direction of steepest descent; and d) using the motion vector to perform half-pixel motion compensation.