public class PointTrackerToTwoPass<T extends boofcv.struct.image.ImageBase> extends java.lang.Object implements PointTrackerTwoPass<T>
PointTracker to be used as a PointTrackerTwoPass. Since
PointTrack does not have all the same capabilities of PointTrackerTwoPass not all operations
are supported or behave in exactly the same way. Use of this interface is only appropriate when
a two pass tracker is being used as a regular point tracker.| Constructor and Description |
|---|
PointTrackerToTwoPass(PointTracker<T> tracker) |
| Modifier and Type | Method and Description |
|---|---|
void |
dropAllTracks()
Drops all feature to be dropped and will no longer be tracked.
|
boolean |
dropTrack(PointTrack track)
Manually forces a track to be dropped.
|
void |
finishTracking()
Finishes tracking and updates the track's description, updates inactive and drop track lists.
|
java.util.List<PointTrack> |
getActiveTracks(java.util.List<PointTrack> list)
Returns a list of active tracks.
|
java.util.List<PointTrack> |
getAllTracks(java.util.List<PointTrack> list)
Returns a list of all features that are currently being tracked
|
java.util.List<PointTrack> |
getDroppedTracks(java.util.List<PointTrack> list)
Returns a list of tracks dropped by the tracker during the most recent update.
|
java.util.List<PointTrack> |
getInactiveTracks(java.util.List<PointTrack> list)
Returns a list of inactive tracks.
|
java.util.List<PointTrack> |
getNewTracks(java.util.List<PointTrack> list)
Returns a list of tracks that have been added since process was called.
|
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 |
reset()
Discard memory of all current and past tracks.
|
void |
setHint(double pixelX,
double pixelY,
PointTrack track)
Provides a hint for where the
|
void |
spawnTracks()
Automatically selects new features in the image to track.
|
public PointTrackerToTwoPass(PointTracker<T> tracker)
public void process(T image)
PointTrackerTwoPassPointTracker.process(boofcv.struct.image.ImageBase) in that it will only
update each track's location, but not its description, and the active list. Call PointTrackerTwoPass.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 PointTrackerTwoPass.finishTracking().process in interface PointTracker<T extends boofcv.struct.image.ImageBase>process in interface PointTrackerTwoPass<T extends boofcv.struct.image.ImageBase>image - Next image in the sequencepublic void reset()
PointTrackerreset in interface PointTracker<T extends boofcv.struct.image.ImageBase>public void dropAllTracks()
PointTrackerdropAllTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>public boolean dropTrack(PointTrack track)
PointTrackerdropTrack in interface PointTracker<T extends boofcv.struct.image.ImageBase>track - The track which is to be droppedpublic java.util.List<PointTrack> getAllTracks(java.util.List<PointTrack> list)
PointTrackergetAllTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>list - Optional storage for the list of tracks.
If null a new list will be declared internally.public java.util.List<PointTrack> getActiveTracks(java.util.List<PointTrack> list)
PointTrackergetActiveTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>list - Optional storage for the list of tracks.
If null a new list will be declared internally.public java.util.List<PointTrack> getInactiveTracks(java.util.List<PointTrack> list)
PointTrackergetInactiveTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>list - Optional storage for the list of tracks.
If null a new list will be declared internally.public java.util.List<PointTrack> getDroppedTracks(java.util.List<PointTrack> list)
PointTrackergetDroppedTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>list - Optional storage for the list of tracks.
If null a new list will be declared internally.public java.util.List<PointTrack> getNewTracks(java.util.List<PointTrack> list)
PointTrackergetNewTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>list - Optional storage for the list of tracks.
If null a new list will be declared internally.public void spawnTracks()
PointTrackerspawnTracks in interface PointTracker<T extends boofcv.struct.image.ImageBase>public void performSecondPass()
PointTrackerTwoPassperformSecondPass in interface PointTrackerTwoPass<T extends boofcv.struct.image.ImageBase>public void finishTracking()
PointTrackerTwoPassfinishTracking in interface PointTrackerTwoPass<T extends boofcv.struct.image.ImageBase>public void setHint(double pixelX,
double pixelY,
PointTrack track)
PointTrackerTwoPasssetHint in interface PointTrackerTwoPass<T extends boofcv.struct.image.ImageBase>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