Slashdot Mirror


Algorithms for Motion Tracking?

Keith Handy asks: "I seem to be unable to find algorithms and/or open source programs that will do accurate motion tracking, i.e. you mark a point on an object in frame 36, and the program can follow that point on that object through all the frames following it. This is useful not just for analyzing motion, but also for interpolating/extrapolating frames of video -- so if you had something at only 15 fps, you could generate inbetween frames (which are not just crossfades between the frames) and actually smooth the effect of the motion. Not something so complicated as to get into actual physics -- just something that will indicate where (in 2D only) that part of the object has moved from one frame to the next, for any given point in the whole picture. And for that matter it doesn't have to be 100% accurate, just any means of generating a reasonable motion-flow map." This doesn't strike me as an easy algorithm to develop, but are there any papers online or offline, that might describe an algorithm that can at least track objects in an image?

"In other words, I want something that does this, in order to write code that will do things like this and this. I already know how to write code to blur and warp images, so to be able to track motion would give me (and you) the same capabilities as these expensive plug-ins.

Anyone know any other resources, directions, or existing code I could look into to find out more about how this works, so I can incorporate it into my own programming instead of paying hundreds or thousands of dollars for limited, proprietary use of the technology?"

3 of 32 comments (clear)

  1. Book by rm-r · · Score: 5, Informative

    Hmm, not sure about any resources on the net, but I did similar stuff at uni so I can recommend a book. Try Image processing, analysis and machine vision by hlavac et al. It's a very good book with plenty of code-neutral algorithms. Good luck.

    --

    J-aims
    --
    Yo, whatever happened to peas? Join T( H)GS
  2. openCV by bjpirt · · Score: 5, Informative

    have a look at openCV (stands for open computer vision), it was originally developed by intel, but was later open souced. runs on both linux and windows and is mainly used for real time motion tracking of live video sources. i'm sure there are some pretty nice algorithms in the source there somewhere. They have their stuff on sourceforge

    and a yahoo groups support forum thing here

    the original intel pages are here
    cheers,
    bjpirt

  3. KLT Feature Tracker by The+Whinger · · Score: 5, Informative

    Have a look at the KLT tracker - that will probably do what you want.

    An implementation can be found here:

    http://vision.stanford.edu/~birch/klt/