public interface PointTrackerTwoPass<T extends boofcv.struct.image.ImageBase> extends PointTracker<T>
Extension of PointTracker allows for predictions of a feature's location to be incorporated into the tracker.
A typical usage would be to first run the tracker, estimate a motion model, then use the said motion model to
predict each feature's location.
The behavior of process(boofcv.struct.image.ImageBase)} has been changed. It will only update each track's
location and the active list. performSecondPass() will also only update the track's location and
active list. finishTracking() will update the dropped list and change the track's description.
Dropping tracks: Tracks should not be dropped until after finishTracking() has been called. If a track is dropped between process() and finishTracking() are called, then the behavior is not defined.
NOTES:
process(boofcv.struct.image.ImageBase) is called. process(boofcv.struct.image.ImageBase) and finishTracking() is equivalent
to just calling process() in the standard PointTracker interface.| Modifier and Type | Method and Description |
|---|---|
void |
finishTracking()
Finishes tracking and updates the track's description, updates inactive and drop track lists.
|
void |
performSecondPass()
Updates spacial information for each track and active list.
|
void |
process(T image)
Changes behavior of
PointTracker.process(boofcv.struct.image.ImageBase) in that it will only
update each track's location, but not its description, and the active list. |
void |
setHint(double pixelX,
double pixelY,
PointTrack track)
Provides a hint for where the
|
dropAllTracks, dropTrack, getActiveTracks, getAllTracks, getDroppedTracks, getInactiveTracks, getNewTracks, reset, spawnTracksvoid process(T image)
PointTracker.process(boofcv.struct.image.ImageBase) in that it will only
update each track's location, but not its description, and the active list. Call finishTracking()
to update the track's description, the inactive list, and the dropped list. An exception is thrown if
multiple calls to this function are made without calling finishTracking().process in interface PointTracker<T extends boofcv.struct.image.ImageBase>image - Next image in the sequencevoid performSecondPass()
void finishTracking()
void setHint(double pixelX,
double pixelY,
PointTrack track)
pixelX - x-coordinate hint for where the track is in the imagepixelY - y-coordinate hint for where the track is in the imagetrack - The track for which the hint is being provided for