Wednesday, February 14, 2007

Motion Estimation

Well with CSE121 finally submitted last night i have been able to get back to work on the project. The next portion of the project i want to get done is the motion estimation part.

My first attempt at implementing motion estimation was to use the Lucas-Kanade optical flow algorithm. This provided promising results for displacements of only 1 or two pixels at high resolution so long as the decimated image wasn't 'too' decimated. For larger high resoltuon displacements however this method of estimating the motion between frames quickly broke down, increasing the factor by which the image is decimated resulted in the algorithm being accurate over smaller displacements. The factor by which an image has been decimated directly influences the amount of information that is c0ntained in the low resolution frames.

After trying Lucas-Kanade i searched around on the internet for more papers relating to motion estimation and came up with one which sounds like it might be a promising method, hopefully this paper will provide a method that works, otherwise i will just implement ransac, which for the moment seems like overkill as i am assuming that the transformations between images are pure translations.

The paper is titled: "Using Gradient Correlation for sub-pixel motion estimation of video sequences"

I have started implementing this algorithm but due to lack of time i have been unable to finish it before the lecture, after the lecture i will hopefully get the implementation finished and i will then improve this entry to include information on how the method works.

1 comment:

Unknown said...

Tom,

If motion estimation fails for large displacements then the logical solution is a multi-scale (pyramid) approach. You can add the multi-scale feature to your current Lucas-Kanade codes in less than an hour of MATLAB coding.

Sina