1. A method for performing motion estimation for an image, where said image is divided into at least one block, said method comprising the steps of: (a) decomposing the image into a non-linear pyramid; and (b) performing hierarchical motion estimation on said non-linear pyramid.