DriveWorks SDK Reference
5.10.90 Release
For Test and Development only

Feature Tracker

Feature2D Tracker

To track 2D feature points between two frames, dwFeatureTracker_trackFeaturesAsync() takes as input two pyramids and list of 2D feature points as well as predicted locations for those points. The prediction can be the current position or can be computed by some motion model for the feature points. The output is the location and status for each input point, e.g. if the feature could be tracked successfully or not.

Feature2D tracker doesn't detect feature points, it must have an external feature list that contains the features to be tracked as input, usually from Feature2D detector, see more info from Features and Feature 2D Detector Interface

There're 3 types of tracking algorithm: DW_FEATURE2D_TRACKER_ALGORITHM_STD, DW_FEATURE2D_TRACKER_ALGORITHM_EX and DW_FEATURE2D_TRACKER_ALGORITHM_EX_FAST. DW_FEATURE2D_TRACKER_ALGORITHM_STD uses IA (inverse additive) KLT, always tracks feature from previous frame to current frame, it is translation only tracking. It's the fastest mode, but the accuracy is not as good as the other 2 ones. DW_FEATURE2D_TRACKER_ALGORITHM_EX uses IC (inverse compositive) KLT, it supports the 3-DOF translation+scale tracking, it also maintains the feature templates inside the tracker, so it tracks frame N-k to the current frame N. The interanl template from frame N-k will only be updated when it differs too much to current frame N. This mode gives better accuracy but is the slowest. DW_FEATURE2D_TRACKER_ALGORITHM_EX_FAST uses IC KLT and supports translation+scale tracking just like DW_FEATURE2D_TRACKER_ALGORITHM_EX mode, but it doesn't maintain the internal feature templates. It always tracks features from previous frame to current frame as DW_FEATURE2D_TRACKER_ALGORITHM_STD. This mode provides better accuracy than DW_FEATURE2D_TRACKER_ALGORITHM_STD, and is faster than DW_FEATURE2D_TRACKER_ALGORITHM_EX, it is the recommended mode in most cases.

Relevant Tutorials

APIs