ORBDescExtractor#

Functions#

NVCVStatus pvaORBDescExtractorCreate(NVCVOperatorHandle *handle, const NVCVImageRequirements *inImageRequirements, const NVCVTensorRequirements *inCornersTensorRequirements, const NVCVTensorRequirements *outDescriptorsTensorRequirements, uint32_t disableRBRIEFFlag, NVCVBorderType borderType, int32_t borderValue)

Constructs an instance of the ORBDescExtractor operator.

NVCVStatus pvaORBDescExtractorSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVImageHandle in, NVCVTensorHandle inCornersTensorHandle, NVCVTensorHandle outDescriptorsTensorHandle)

Submits the ORBDescExtractor operator to a CUDA stream.

NVCVStatus pvaORBDescExtractorSubmit(NVCVOperatorHandle handle, cupvaStream_t stream, NVCVImageHandle in, NVCVTensorHandle inCornersTensorHandle, NVCVTensorHandle outDescriptorsTensorHandle)

Submits the ORBDescExtractor operator to a cuPVA stream.

Functions#

NVCVStatus pvaORBDescExtractorCreate(
NVCVOperatorHandle *handle,
const NVCVImageRequirements *inImageRequirements,
const NVCVTensorRequirements *inCornersTensorRequirements,
const NVCVTensorRequirements *outDescriptorsTensorRequirements,
uint32_t disableRBRIEFFlag,
NVCVBorderType borderType,
int32_t borderValue,
)#

Constructs an instance of the ORBDescExtractor operator.

Limitations: Only support feature points from a single image.

Input Image: Input image sizes and formats are specified in inImageRequirements.

Image Format

Allowed

U8

Yes

Y8

Yes

Y8_ER

Yes

S8

Yes

U16

Yes

Y16

Yes

Y16_ER

Yes

S16

Yes

Border Type:

Border Type

Allowed

Constant

Yes

Clamp

Yes

Mirror

No

Reflect

No

Limited

No

Parameters:

Data Layout: [HW] Data Type: NVCV_DATA_TYPE_F32 Height: Number of features Width: 2

Data Layout: [HW] Data Type: NVCV_DATA_TYPE_U8 Height: Number of features Width: PVA_BRIEF_DESCRIPTOR_ARRAY_LENGTH

Parameters:
  • handle[out] Where the operator instance handle will be written to.

    • Must not be NULL.

  • inImageRequirements[in] Pointer to the input image NVCVImageRequirements structure which contains image shape, strides, and format information.

  • inCornersTensorRequirements[in] Pointer to the input corners NVCVTensorRequirements structure which contains tensor rank, shape, layout and data type information. Corner coordinates are in XY-interleaved format.

  • outDescriptorsTensorRequirements[in] Pointer to the output descriptors NVCVTensorRequirements. 2D tensor with 2nd dimension size PVA_BRIEF_DESCRIPTOR_ARRAY_LENGTH.

  • disableRBRIEFFlag[in] Binary flag to control whether to use the rotationally-invariant BRIEF algorithm.

    • Valid values are as follows:

      • 0: Default, enable rotationally-invariant BRIEF.

      • 1 : Disable rotationally-invariant BRIEF.

  • borderType[in] Border type to use.

  • borderValue[in] Border value to use for NVCV_BORDER_CONSTANT.

Return values:
  • NVCV_ERROR_INVALID_ARGUMENT – Handle is null.

  • NVCV_ERROR_OUT_OF_MEMORY – Not enough memory to create the operator.

  • NVCV_SUCCESS

NVCVStatus pvaORBDescExtractorSubmit(
NVCVOperatorHandle handle,
cudaStream_t stream,
NVCVImageHandle in,
NVCVTensorHandle inCornersTensorHandle,
NVCVTensorHandle outDescriptorsTensorHandle,
)#

Submits the ORBDescExtractor operator to a CUDA stream.

Note

CUDA stream support requirements:

  • PVA SDK 2.7.0 or later

  • Jetpack 7 or later

  • DriveOS 7 or later

  • x86 Emulator is not supported

Parameters:
  • handle[in] Handle to the operator.

  • stream[in] Handle to a valid CUDA stream.

  • in[in] Input image handle.

  • inCornersTensorHandle[in] Input corners tensor handle.

  • outDescriptorsTensorHandle[out] Output descriptors tensor handle.

Return values:
  • NVCV_ERROR_INVALID_ARGUMENT – Some parameter is outside valid range.

  • NVCV_ERROR_INTERNAL – Internal error in the operator, invalid types passed in.

  • NVCV_SUCCESS – Operation executed successfully.

NVCVStatus pvaORBDescExtractorSubmit(
NVCVOperatorHandle handle,
cupvaStream_t stream,
NVCVImageHandle in,
NVCVTensorHandle inCornersTensorHandle,
NVCVTensorHandle outDescriptorsTensorHandle,
)#

Submits the ORBDescExtractor operator to a cuPVA stream.

Parameters:
  • handle[in] Handle to the operator.

    • Must not be NULL.

  • stream[in] Handle to a valid cuPVA stream.

  • in[in] Input image handle.

  • inCornersTensorHandle[in] Input corners tensor handle.

  • outDescriptorsTensorHandle[out] Output descriptors tensor handle.

Return values:
  • NVCV_ERROR_INVALID_ARGUMENT – Some parameter is outside valid range.

  • NVCV_ERROR_INTERNAL – Internal error in the operator, invalid types passed in.

  • NVCV_SUCCESS – Operation executed successfully.