Average Blur
- group NVCV_C_ALGORITHM_AVERAGEBLUR
Functions
-
NVCVStatus cvcudaAverageBlurCreate(NVCVOperatorHandle *handle, int32_t maxKernelWidth, int32_t maxKernelHeight, int32_t maxVarShapeBatchSize)
Constructs an instance of the AverageBlur.
- Parameters:
handle – [out] Where the operator instance handle will be written to.
Must not be NULL.
maxKernelWidth – [in] The maximum kernel width that will be used by the operator.
Positive value.
maxKernelHeight – [in] The maximum kernel height that will be used by the operator.
Positive value.
maxVarShapeBatchSize – [in] The maximum batch size that will be used by the var-shape operator.
Positive value.
- Return values:
NVCV_ERROR_INVALID_ARGUMENT – Handle is null.
NVCV_ERROR_OUT_OF_MEMORY – Not enough memory to create the operator.
NVCV_SUCCESS – Operation executed successfully.
-
NVCVStatus cvcudaAverageBlurSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVTensorHandle in, NVCVTensorHandle out, int32_t kernelWidth, int32_t kernelHeight, int32_t kernelAnchorX, int32_t kernelAnchorY, NVCVBorderType borderMode)
Executes the AverageBlur operation on the given cuda stream. This operation does not wait for completion.
Limitations:
Input: Data Layout: [kNHWC, kHWC] Channels: [1, 3, 4]
Data Type
Allowed
8bit Unsigned
Yes
8bit Signed
No
16bit Unsigned
Yes
16bit Signed
Yes
32bit Unsigned
No
32bit Signed
Yes
32bit Float
Yes
64bit Float
No
Output: Data Layout: [kNHWC, kHWC] Channels: [1, 3, 4]
Data Type
Allowed
8bit Unsigned
Yes
8bit Signed
No
16bit Unsigned
Yes
16bit Signed
Yes
32bit Unsigned
No
32bit Signed
Yes
32bit Float
Yes
64bit Float
No
Input/Output dependency
Property | Input == Output -------------- | ------------- Data Layout | Yes Data Type | Yes Number | Yes Channels | Yes Width | Yes Height | Yes
- Parameters:
handle – [in] Handle to the operator.
Must not be NULL.
stream – [in] Handle to a valid CUDA stream.
in – [in] Input tensor.
out – [out] Output tensor.
kernelWidth – [in] AverageBlur kernel width.
kernelHeight – [in] AverageBlur kernel height.
kernelAnchorX – [in] Kernel anchor in X direction. Indicates the relative position of a filtered point within the kernel. Use (-1, -1) to indicate kernel center.
kernelAnchorY – [in] Kernel anchor in Y direction. Indicates the relative position of a filtered point within the kernel. Use (-1, -1) to indicate kernel center.
borderMode – [in] Border mode to be used when accessing elements outside input image, cf.
NVCVBorderType
.
- 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 cvcudaAverageBlurVarShapeSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVImageBatchHandle in, NVCVImageBatchHandle out, NVCVTensorHandle kernelSize, NVCVTensorHandle kernelAnchor, NVCVBorderType borderMode)
Executes the AverageBlur operation on a batch of images.
- Parameters:
in – [in] Input image batch.
out – [out] Output image batch.
kernelSize – [in] Average blur kernel size as a Tensor of int2.
Must be of pixel type NVCV_DATA_TYPE_2S32
kernelAnchor – [in] Average blur kernel anchor as a Tensor of int2.
Must be of pixel type NVCV_DATA_TYPE_2S32
borderMode – [in] Border mode to be used when accessing elements outside input image, cf.
NVCVBorderType
.
-
NVCVStatus cvcudaAverageBlurCreate(NVCVOperatorHandle *handle, int32_t maxKernelWidth, int32_t maxKernelHeight, int32_t maxVarShapeBatchSize)