|
VPI - Vision Programming Interface
0.1.0 Release
|
The algorithms supported by VPI are described in the following sections. An overview of the algorithm, instructions on how to use the algorithm, a list of any backend limitations, and the API reference are provided.
VPIStatus vpiSubmitGaussianPyramidGenerator(VPIStream stream, VPIImage input, VPIPyramid output)
Computes the Gaussian pyramid from the input image.
VPIStatus vpiArrayCreate(uint32_t capacity, VPIArrayType fmt, uint32_t flags, VPIArray *array)
Create an empty array instance with the specified flags.
VPIStatus vpiPyramidCreate(uint32_t width, uint32_t height, VPIImageType fmt, uint32_t numLevels, float scale, uint32_t flags, VPIPyramid *pyr)
Create an empty image pyramid instance with the specified flags.
VPIStatus vpiCreateStereoDisparityEstimator(VPIStream stream, uint32_t imageWidth, uint32_t imageHeight, const VPIImageType inputType, const uint32_t maxDisparity, VPIPayload *payload)
Creates payload for vpiSubmitStereoDisparityEstimator.
VPIImageType
Image formats.
float sensitivity
Specifies sensitivity threshold from the Harris-Stephens equation.
Stores a bounding box that is being tracked by KLT Tracker.
VPIBoundingBox bbox
Bounding box being tracked.
VPIStatus vpiSubmitBilateralImageFilter(VPIStream stream, VPIImage input, VPIImage output, uint32_t kernelSize, float sigmaRange, float sigmaSpace, VPIBoundaryCond boundary)
Runs a 2D bilateral filter over an image.
VPIStatus vpiSubmitBoxImageFilter(VPIStream stream, VPIImage input, VPIImage output, uint32_t kernelSizeX, uint32_t kernelSizeY, VPIBoundaryCond boundary)
Runs a 2D box filter over an image.
uint8_t trackingStatus
Tracking status of this bounding box.
VPIStatus vpiCreateHarrisKeypointDetector(VPIStream stream, uint32_t inputWidth, uint32_t inputHeight, VPIPayload *payload)
Creates a Harris Keypoint Detector payload.
VPIArrayType type
Type of each array element.
VPIStatus vpiArrayUnlock(VPIArray array)
Releases the lock on array object.
Structure that defines the parameters for vpiSubmitHarrisKeypointDetector.
VPIStatus vpiStreamSync(VPIStream stream)
Blocks the calling thread until all submitted commands in this stream queue are done (queue is empty)...
float maxScaleChange
Maximum relative scale change.
VPIStatus vpiSubmitImageResampler(VPIStream stream, VPIImage input, VPIImage output, VPIInterpolationType interpolationType, VPIBoundaryCond boundary)
Runs a generic resampling algorithm on a 2D image.
float strengthThresh
Specifies the minimum threshold with which to eliminate Harris Corner scores.
VPIStatus vpiSubmitStereoDisparityEstimator(VPIPayload payload, VPIImage left, VPIImage right, VPIImage disparity, const VPIStereoDisparityEstimatorParams *params)
Runs stereo processing on a pair of images, outputs a disparity map.
uint32_t gradientSize
Gradient window size.
uint32_t size
Number of elements in the array.
VPIStatus vpiArrayWrapHostMem(const VPIArrayData *arrayData, uint32_t flags, VPIArray *array)
Create an array object by wrapping around an existing host-memory block.
VPIKLTBoundingBoxTrackerType trackingType
Type of KLT tracking that will be performed.
VPIHomographyTransform2D element.
VPIStatus vpiSubmitHarrisKeypointDetector(VPIPayload payload, VPIImage input, VPIArray outFeatures, VPIArray outScores, const VPIHarrisKeypointDetectorParams *params)
Submits Harris Keypoint Detector operation to the stream associated with the payload.
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.
void vpiContextDestroy(VPIContext ctx)
Destroy a context instance as well as all resources it owns.
uint32_t capacity
Maximum number of elements that the array can hold.
Lock memory only for reading.
void * data
Points to the first element of the array.
VPIStatus vpiSubmitImageConvolver(VPIStream stream, VPIImage input, VPIImage output, const float *kernelData, uint32_t kernelWidth, uint32_t kernelHeight, VPIBoundaryCond boundary)
Runs a generic 2D convolution over an image.
float minNMSDistance
Non-maximum suppression radius, set to 0 to disable it.
float mat3[3][3]
3x3 homogeneous matrix that defines the homography.
float maxTranslationChange
Maximum relative translation change.
float nccThresholdStop
Threshold to stop estimating.
uint8_t templateStatus
Status of the template related to this bounding box.
float nccThresholdKill
Threshold to consider template tracking was lost.
VPIStatus vpiCreateKLTBoundingBoxTracker(VPIStream stream, uint32_t imageWidth, uint32_t imageHeight, VPIImageType imageType, VPIPayload *payload)
Creates payload for vpiSubmitKLTBoundingBoxTracker.
VPIKLTTrackedBoundingBox element.
Structure that defines the parameters for vpiCreateKLTBoundingBoxTracker.
unsigned 16-bit grayscale/luma.
uint32_t windowSize
width of Census Transform window for disparity features.
struct VPIImageImpl * VPIImage
float nccThresholdUpdate
Threshold for requiring template update.
VPIStatus vpiImageGetSize(VPIImage img, uint32_t *width, uint32_t *height)
Get the image size in pixels.
VPIStatus vpiImageGetType(VPIImage img, VPIImageType *type)
Get the image type.
Stores information about array characteristics and content.
uint32_t blockSize
Block window size used to compute the Harris Corner score.
VPIStatus vpiImageCreate(uint32_t width, uint32_t height, VPIImageType type, uint32_t flags, VPIImage *img)
Create an empty image instance with the specified flags.
All pixels outside the image are considered to be zero.
VPIStatus vpiArrayLock(VPIArray array, VPILockMode mode, VPIArrayData *arrayData)
Acquires the lock on array object and returns a pointer to array data.
VPIStatus vpiSubmitSeparableImageConvolver(VPIStream stream, VPIImage input, VPIImage output, const float *kernelXData, uint32_t kernelXSize, const float *kernelYData, uint32_t kernelYSize, VPIBoundaryCond boundary)
Runs a generic 2D convolution over an image.
uint32_t maxDisparity
Maximum disparity for matching search.
Structure that defines the parameters for vpiCreateStereoDisparityEstimator.
struct VPIPayloadImpl * VPIPayload
A handle to an algorithm payload.
struct VPIArrayImpl * VPIArray
void vpiPayloadDestroy(VPIPayload payload)
Deallocates the payload object and all associated resources.
VPIStatus vpiArrayInvalidate(VPIArray array)
This method is useful for unmanaged arrays only (created with 'vpiArrayWrap*`).
Inverse compositional algorithm for KLT tracker.
uint32_t numberOfIterationsScaling
Number of Inverse compositional iterations of scale estimations.
struct VPIStreamImpl * VPIStream
struct VPIPyramidImpl * VPIPyramid
VPIStatus vpiSubmitGaussianImageFilter(VPIStream stream, VPIImage input, VPIImage output, uint32_t kernelSizeX, uint32_t kernelSizeY, float sigmaX, float sigmaY, VPIBoundaryCond boundary)
Runs a 2D Gaussian filter over an image.
Stores a generic 2D bounding box.
Fast linear interpolation.