How to is dwObject.numUndetectedFrames set/controlled?

We’re using object detection built upon the merged outputs of the object tracker and the object detector+clustering (as described in the Development Guide). Some of the resultant merged objects have a “numUndetectedFrames” that is greater than 0. I assume this means that the object was not in the detector+clustering outputs for some amount of time.

Is there any way to control how many undetected frames should be allowed before a tracked object is considered “expired” and dropped from the list? If not, is the logic governing the expiration of such objects documented somewhere?


Dear petexklxv,

numUndetectedFrames is used to enable decay in confidence of object tracks when there is no detection.

The logic is as follows (documented in doxygen):
if (numDetectedFrames > 0)
objectConfidence -= confRateTrackMin + (confRateTrackMax - confRateTrackMin) * (1.f - sqrt(featureCount / maxFeatureCount))

In addition, confThreshDiscard and confThreshConfirm parameters help control whether an object is expired or not. Thanks.