VPI - Vision Programming Interface

1.2 Release

Stereo Disparity Estimator

Estimates disparity from a stereo pair. More...

Data Structures

struct  VPIStereoDisparityEstimatorCreationParams
 Structure that defines the parameters for vpiCreateStereoDisparityEstimator. More...
 
struct  VPIStereoDisparityEstimatorParams
 Structure that defines the parameters for vpiSubmitStereoDisparityEstimator. More...
 

Functions

VPIStatus vpiInitStereoDisparityEstimatorCreationParams (VPIStereoDisparityEstimatorCreationParams *params)
 Initializes VPIStereoDisparityEstimatorCreationParams with default values. More...
 
VPIStatus vpiCreateStereoDisparityEstimator (uint32_t backends, int32_t imageWidth, int32_t imageHeight, VPIImageFormat inputFormat, const VPIStereoDisparityEstimatorCreationParams *params, VPIPayload *payload)
 Creates payload for vpiSubmitStereoDisparityEstimator. More...
 
VPIStatus vpiInitStereoDisparityEstimatorParams (VPIStereoDisparityEstimatorParams *params)
 Initializes VPIStereoDisparityEstimatorParams with default values. More...
 
VPIStatus vpiSubmitStereoDisparityEstimator (VPIStream stream, uint32_t backend, VPIPayload payload, VPIImage left, VPIImage right, VPIImage disparity, VPIImage confidenceMap, const VPIStereoDisparityEstimatorParams *params)
 Runs stereo processing on a pair of images and outputs a disparity map. More...
 

Detailed Description

Estimates disparity from a stereo pair.


Data Structure Documentation

◆ VPIStereoDisparityEstimatorCreationParams

struct VPIStereoDisparityEstimatorCreationParams

Structure that defines the parameters for vpiCreateStereoDisparityEstimator.

Definition at line 81 of file StereoDisparity.h.

+ Collaboration diagram for VPIStereoDisparityEstimatorCreationParams:
Data Fields
float downscaleFactor Output's downscale factor with respect input's resolution.

When using PVA+NVENC backends for high-quality stereo, the allowed values are 1 (no downscale) or 4. Setting it to 4 leads to faster execution speeds as NVENC engine output has 1/4th resolution.

int32_t maxDisparity Maximum disparity for matching search.

◆ VPIStereoDisparityEstimatorParams

struct VPIStereoDisparityEstimatorParams

Structure that defines the parameters for vpiSubmitStereoDisparityEstimator.

Definition at line 133 of file StereoDisparity.h.

+ Collaboration diagram for VPIStereoDisparityEstimatorParams:
Data Fields
int32_t confidenceThreshold
int32_t maxDisparity Maximum disparity for matching search.
int32_t quality
int32_t windowSize Width of Census Transform window for disparity features.

Function Documentation

◆ vpiCreateStereoDisparityEstimator()

VPIStatus vpiCreateStereoDisparityEstimator ( uint32_t  backends,
int32_t  imageWidth,
int32_t  imageHeight,
VPIImageFormat  inputFormat,
const VPIStereoDisparityEstimatorCreationParams params,
VPIPayload payload 
)

#include <vpi/algo/StereoDisparity.h>

Creates payload for vpiSubmitStereoDisparityEstimator.

Parameters
[in]backendsVPI backends that are eligible to execute the algorithm. Currently only one backend is accepted.
[in]imageWidth,imageHeightInput image dimensions
[in]inputFormatInput image format.
[in]paramsCreation parameters. Pass NULL to use defaults.
[out]payloadPointer to memory where the created payload handle will be written to.
Returns
an error code on failure else VPI_SUCCESS

◆ vpiInitStereoDisparityEstimatorCreationParams()

VPIStatus vpiInitStereoDisparityEstimatorCreationParams ( VPIStereoDisparityEstimatorCreationParams params)

#include <vpi/algo/StereoDisparity.h>

Initializes VPIStereoDisparityEstimatorCreationParams with default values.

Defaults:

  • maxDisparity: 64
  • downscaleFactor = 1;
Parameters
[in]paramsStructure to be filled with default values.
Returns
an error code on failure else VPI_SUCCESS

◆ vpiInitStereoDisparityEstimatorParams()

VPIStatus vpiInitStereoDisparityEstimatorParams ( VPIStereoDisparityEstimatorParams params)

#include <vpi/algo/StereoDisparity.h>

Initializes VPIStereoDisparityEstimatorParams with default values.

Defaults:

  • windowSize: 5
  • maxDisparity: 0 (uses disparity set during payload construction)
  • confidenceThreshold: 32767
  • quality: 6
Parameters
[in]paramsStructure to be filled with default values.
Returns
an error code on failure else VPI_SUCCESS

◆ vpiSubmitStereoDisparityEstimator()

VPIStatus vpiSubmitStereoDisparityEstimator ( VPIStream  stream,
uint32_t  backend,
VPIPayload  payload,
VPIImage  left,
VPIImage  right,
VPIImage  disparity,
VPIImage  confidenceMap,
const VPIStereoDisparityEstimatorParams params 
)

#include <vpi/algo/StereoDisparity.h>

Runs stereo processing on a pair of images and outputs a disparity map.

Please refer to Limitations and Constraints for information on limitations for some parameters.

Parameters
[in]streamThe stream where the operation will be queued in.
[in]backendBackend that will execute the algorithm. Must be one of the backends specified during payload creation. If 0, VPI will select one of the eligible backends from the payload that accepts the given parameters, usually the fastest one.
[in]payloadPayload to be submitted along the other parameters.
[in]leftLeft stereo input image.
[in]rightRight stereo input image.
[out]disparityImage where the disparity values will be written to.
[out]confidenceMapMust be NULL if using CPU backend, otherwise a confidence map will be generated. Image format must be VPI_IMAGE_FORMAT_U16.
[in]paramsPointer to algorithm control parameters. If NULL, it'll use the defaults given by vpiInitStereoDisparityEstimatorParams.
Returns
an error code on failure else VPI_SUCCESS