Ask Your Question

move-stop-move Blob Tracking

asked 2013-08-01 18:35:41 -0600

mikos gravatar image

updated 2013-08-01 18:42:08 -0600

Hi OpenCV-ers, I need to build a blob tracker that works with move-stop-move events. Say a human walking into camera FOV, stops and stands still for a while, and moves again..rinse/repeat. What algorithms exist to collapse these multiple "tracks" (including the stasis) into a single track?

AFAIK, current OpenCV tracking algorithms track continuously moving objects, and any intermittent stop, generates a new track. Any thoughts on how I should approach this?

Thanks for your time.

p.s I know it might be easy to compare blobs and combine tracks, but I need to maintain a bead on the human even when s/he is standing still.

edit retag flag offensive close merge delete


Just totally off topic, are you perhaps the mikos_ from dev forum that supplied source code for neuralGas clustering? If so, please tell me, would like to get in contact with you since we are pushing it in the master branch, but still need some help.

StevenPuttemans gravatar imageStevenPuttemans ( 2013-08-02 04:37:22 -0600 )edit

sorry not me.

mikos gravatar imagemikos ( 2013-08-09 02:03:25 -0600 )edit

Ok thanks anyway :)

StevenPuttemans gravatar imageStevenPuttemans ( 2013-08-09 02:09:50 -0600 )edit

1 answer

Sort by ยป oldest newest most voted

answered 2013-08-02 01:18:44 -0600

Siegfried gravatar image

updated 2013-08-02 01:44:25 -0600

Hi mikos,

do you detect the person with a detector (e.g. HoG Descriptor or Haar Classifier) ? Then you can use a tracking algorithm to track the detected object boundaries (or the center of the boundaries). A good introduction into Object Tracking can be found here.

OpenCV contains an implementation of the Kalman Filter see here and here. The Kalman filter is widely used to track object. But to detect persons the definition of a proper motion model is hard.

An other easier filter for tracking is the alpha-beta filter. This filter is very easy to develop (only some matrix operations) and doesn't need a motion model.

Both filters can handle move-stop-move events. If you have to detect more than one person in the image you have to start for each detected person an separate tracker instance. The assignment of the detected person to the right tracker could then be hard.

edit flag offensive delete link more

Question Tools


Asked: 2013-08-01 18:35:41 -0600

Seen: 3,585 times

Last updated: Aug 02 '13