Public Member Functions

MultiObjectTrackingState Class Reference
[Auxilliary Tools]

Auxilliary Tool: A class for trying to uniquely identify and track several objects simultaneously. More...

#include <MultiObjectTrackingState.h>

List of all members.

Public Member Functions

 MultiObjectTrackingState ()
 Constructor.
void updateState (const std::vector< SearchResult > &patches, const std::vector< CvScalar > &colors)
 Update location of tracked objects based on the output of an object detector, and user provided color information.
void drawState (IplImage *colorInputImage)
 Visualize the tracking state.
void reset (int maxObjects=-1)
 Re-initialzie the tracking state, and optionally give hints about the number of objects being tracked.
std::vector< TrackingObjectgetState ()
 Query the current state of the tracker.

Detailed Description

Auxilliary Tool: A class for trying to uniquely identify and track several objects simultaneously.

This tracking is done using some heuristic rules. New object locations are matched to old ones based on the color of the object, and its remembered location.

Author:
Nicholas Butko
Date:
2010 version 0.4

Member Function Documentation

void MultiObjectTrackingState::drawState ( IplImage *  colorInputImage )

Visualize the tracking state.

Objects are given unique colors (which does not correspond to their track colors). Invisible objects are represented by a dot at their center. If the tracker is performing well, colors should "stick" to objects.

Parameters:
colorInputImageAn image to draw over in order to visualize tracker output. This must be a 3 channel, IPL_DEPTH_8U image. Calling drawState draws directly onto colorInputImage.
vector< TrackingObject > MultiObjectTrackingState::getState (  )

Query the current state of the tracker.

The indices of this state vector should "stick" to objects, i.e. the same object should always be at the same position in the vector.

Returns:
A list of location of tracked objects.
void MultiObjectTrackingState::reset ( int  maxObjects = -1 )

Re-initialzie the tracking state, and optionally give hints about the number of objects being tracked.

Parameters:
maxObjectsGive a hint to the tracker about the maximum number of objects in the scene, which makes the tracker more robust to false alarms.
void MultiObjectTrackingState::updateState ( const std::vector< SearchResult > &  patches,
const std::vector< CvScalar > &  colors 
)

Update location of tracked objects based on the output of an object detector, and user provided color information.

Parameters:
patchesOutput of an object detector applied to a frame of video or camera.
colorsA color statistic of each patch. This could be the mean patch color value, but any three numbers the user believes can be used to help discriminate one object from another can be used.

The documentation for this class was generated from the following files: