An electronic device, comprising: a memory configured to store a sequence of image frames that comprises a first image frame (112A, 304A) and a second image frame (112B, 304B); and control circuitry configured to: estimate a set of feature correspondences between a first set of feature points (118, 310) in the first image frame (112A, 304A) and a second set of feature points (120, 312) in the second image frame (112B, 304B), wherein the first set of feature points (118, 310) is present within a first threshold distance from a user-specified initialization point (116, 306) that corresponds to an object of interest (114, 308) in the sequence of image frames and the second set of feature points (120, 312) is present within a second threshold distance from the user-specified initialization point (116, 306); generate different first motion-estimate models for different groups of feature correspondences of the estimated set of feature correspondences, wherein the different first motion-estimate models represent a shift in positions of the second set of feature points (120, 312) with respect to the first set of feature points (118, 310) in terms of a similarity transformation between the second set of feature points (120, 312) with respect to the first set of feature points (118, 310); estimate, from the different groups of feature correspondences, a plurality of inlier feature correspondences that correspond to the object of interest (114, 308) in the first image frame (112A, 304A) and the second image frame (112B, 304B), based on the different first motion-estimate models; generate a second motion-estimate model that is an optimized motion-estimate model of the different first motion-estimate models, based on the estimated plurality of inlier feature correspondences; and track the object of interest (114, 308) in the sequence of image frames, based on the second motion-estimate model. a memory configured to store a sequence of image frames that comprises a first image frame (112A, 304A) and a second image frame (112B, 304B); and control circuitry configured to: estimate a set of feature correspondences between a first set of feature points (118, 310) in the first image frame (112A, 304A) and a second set of feature points (120, 312) in the second image frame (112B, 304B), wherein the first set of feature points (118, 310) is present within a first threshold distance from a user-specified initialization point (116, 306) that corresponds to an object of interest (114, 308) in the sequence of image frames and the second set of feature points (120, 312) is present within a second threshold distance from the user-specified initialization point (116, 306); generate different first motion-estimate models for different groups of feature correspondences of the estimated set of feature correspondences, wherein the different first motion-estimate models represent a shift in positions of the second set of feature points (120, 312) with respect to the first set of feature points (118, 310) in terms of a similarity transformation between the second set of feature points (120, 312) with respect to the first set of feature points (118, 310); estimate, from the different groups of feature correspondences, a plurality of inlier feature correspondences that correspond to the object of interest (114, 308) in the first image frame (112A, 304A) and the second image frame (112B, 304B), based on the different first motion-estimate models; generate a second motion-estimate model that is an optimized motion-estimate model of the different first motion-estimate models, based on the estimated plurality of inlier feature correspondences; and track the object of interest (114, 308) in the sequence of image frames, based on the second motion-estimate model. estimate a set of feature correspondences between a first set of feature points (118, 310) in the first image frame (112A, 304A) and a second set of feature points (120, 312) in the second image frame (112B, 304B), wherein the first set of feature points (118, 310) is present within a first threshold distance from a user-specified initialization point (116, 306) that corresponds to an object of interest (114, 308) in the sequence of image frames and the second set of feature points (120, 312) is present within a second threshold distance from the user-specified initialization point (116, 306); generate different first motion-estimate models for different groups of feature correspondences of the estimated set of feature correspondences, wherein the different first motion-estimate models represent a shift in positions of the second set of feature points (120, 312) with respect to the first set of feature points (118, 310) in terms of a similarity transformation between the second set of feature points (120, 312) with respect to the first set of feature points (118, 310); estimate, from the different groups of feature correspondences, a plurality of inlier feature correspondences that correspond to the object of interest (114, 308) in the first image frame (112A, 304A) and the second image frame (112B, 304B), based on the different first motion-estimate models; generate a second motion-estimate model that is an optimized motion-estimate model of the different first motion-estimate models, based on the estimated plurality of inlier feature correspondences; and track the object of interest (114, 308) in the sequence of image frames, based on the second motion-estimate model.