1. A motion estimation method, comprising: calculating an available time, wherein the available time is regarded as a maximum time for estimating a motion vector of a block unit of an image frame; accumulating a working time for estimating the motion vector of the block unit of the image frame; and selectively performing at least one stage of a plurality of motion estimation stages according to the available time, wherein the motion estimation stages comprise a first motion estimation stage and a second motion estimation stage; determining at completion of the first motion estimation stage whether to selectively perform the second motion estimation stage by comparing the accumulated working time with the available time; wherein when a difference between the accumulated working time and the available time is smaller than a predetermined value, utilizing a first motion vector generated via the first motion estimation stage as a final motion vector of the block unit without continuing to perform the second motion estimation stage; and wherein when the difference between the accumulated working time and the available time is not smaller than the predetermined value, continuing to perform the second motion estimation stage; wherein the predetermined value is defined as an average working time of the second motion estimation stage plus a buffer period.