VPI - Vision Programming Interface

0.1.0 Release

KLTBoundingBoxTracker

Data Structures

struct  VPIKLTBoundingBoxTrackerParams
 Structure that defines the parameters for vpiCreateKLTBoundingBoxTracker. More...
 

Enumerations

enum  VPIKLTBoundingBoxTrackerType { VPI_KLT_INVERSE_COMPOSITIONAL }
 KLT Tracker type. More...
 

Functions

VPIStatus vpiCreateKLTBoundingBoxTracker (VPIStream stream, uint32_t imageWidth, uint32_t imageHeight, VPIImageType imageType, VPIPayload *payload)
 Creates payload for vpiSubmitKLTBoundingBoxTracker. More...
 
VPIStatus vpiSubmitKLTBoundingBoxTracker (VPIPayload payload, VPIImage templateImage, VPIArray inputBoxList, VPIArray inputPredictionList, VPIImage referenceImage, VPIArray outputBoxList, VPIArray outputEstimationList, const VPIKLTBoundingBoxTrackerParams *params)
 Runs KLT Tracker on two frames. More...
 

Detailed Description

Runs KLT Tracking on two frames.


Data Structure Documentation

◆ VPIKLTBoundingBoxTrackerParams

struct VPIKLTBoundingBoxTrackerParams

Structure that defines the parameters for vpiCreateKLTBoundingBoxTracker.

Parameters
thresholdUpdate[in] threshold to update template
thresholdKill[in] threshold to kill tracking
thresholdStop[in] threshold to stop iteration
maxScaleChange[in] maximum scale change for valid tracking
maxTranslationChange[in] maximum translation change for valid tracking
imageType[in] input image type

Definition at line 104 of file KLTBoundingBoxTracker.h.

+ Collaboration diagram for VPIKLTBoundingBoxTrackerParams:
Data Fields
float maxScaleChange Maximum relative scale change.

Scale changes larger than this will make KLT consider that tracking was lost.

float maxTranslationChange Maximum relative translation change.

Translation changes larger than this will make KLT consider that tracking was lost.

float nccThresholdKill Threshold to consider template tracking was lost.

Must be a value between 0 and 1.

float nccThresholdStop Threshold to stop estimating.
float nccThresholdUpdate Threshold for requiring template update.

Must be a value between 0 and 1.

uint32_t numberOfIterationsScaling Number of Inverse compositional iterations of scale estimations.
VPIKLTBoundingBoxTrackerType trackingType Type of KLT tracking that will be performed.

Enumeration Type Documentation

◆ VPIKLTBoundingBoxTrackerType

#include <vpi/algo/KLTBoundingBoxTracker.h>

KLT Tracker type.

Enumerator
VPI_KLT_INVERSE_COMPOSITIONAL 

Inverse compositional algorithm for KLT tracker.

The inverse compositional algorithm is a reformulation of the classic Lucas-Kanade algorithm to make the steepest-descent images and Hessian constant.

Ref:Simon Baker, Iain Matthew, "Lucas-Kanade 20 Years On: A Unified Framework".
International Journal of Computer Vision, February 2004, Volume 56, issue 3, pp. 228-231.

Definition at line 80 of file KLTBoundingBoxTracker.h.

Function Documentation

◆ vpiCreateKLTBoundingBoxTracker()

VPIStatus vpiCreateKLTBoundingBoxTracker ( VPIStream  stream,
uint32_t  imageWidth,
uint32_t  imageHeight,
VPIImageType  imageType,
VPIPayload payload 
)

#include <vpi/algo/KLTBoundingBoxTracker.h>

Creates payload for vpiSubmitKLTBoundingBoxTracker.

Parameters
stream[in] a stream handle
imageWidth[in] input image width
imageHeight[in] input image height
imageType[in] input image type
payload[out] pointer to a payload handle
Returns
an error code on failure else VPI_SUCCESS

◆ vpiSubmitKLTBoundingBoxTracker()

VPIStatus vpiSubmitKLTBoundingBoxTracker ( VPIPayload  payload,
VPIImage  templateImage,
VPIArray  inputBoxList,
VPIArray  inputPredictionList,
VPIImage  referenceImage,
VPIArray  outputBoxList,
VPIArray  outputEstimationList,
const VPIKLTBoundingBoxTrackerParams params 
)

#include <vpi/algo/KLTBoundingBoxTracker.h>

Runs KLT Tracker on two frames.

Outputs tracked bounding boxes and estimated transform array.

Parameters
payload[in] payload created with vpiCreateKLTBoundingBoxTracker
referenceImage[in] reference image
templateImage[in] template image
inputBoxList[in] input bounding box array, must have type VPI_ARRAY_TYPE_KLT_TRACKED_BOUNDING_BOX
inputPredictionList[in] input predicted transform array, must have type VPI_ARRAY_TYPE_HOMOGRAPHY_TRANSFORM_2D
params[in] parameters for the KLT tracker
outputBoxList[out] output bounding box array, must have type VPI_ARRAY_TYPE_KLT_TRACKED_BOUNDING_BOX
outputEstimationList[out] estimated transform array, must have type VPI_ARRAY_TYPE_HOMOGRAPHY_TRANSFORM_2D
Returns
an error code on failure else VPI_SUCCESS