Rotate

group NVCV_C_ALGORITHM_ROTATE

Unnamed Group

NVCVStatus cvcudaRotateSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVTensorHandle in, NVCVTensorHandle out, const double angleDeg, const double2 shift, const NVCVInterpolationType interpolation)

Executes the rotate 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

No

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

No

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
Interpolation type
 Type                 |  Allowed
--------------------- | -------------
 NVCV_INTERP_NEAREST  | Yes
 NVCV_INTERP_LINEAR   | Yes
 NVCV_INTERP_CUBIC    | Yes
 NVCV_INTERP_AREA     | No

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

    • Must not be NULL.

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

  • in[in] input tensor / image batch.

  • out[out] output tensor / image batch.

  • angleDeg[in] angle used for rotation in degrees.

  • shift[in] value of shift in {x, y} directions to move the center at the same coord after rotation.

  • interpolation[in] Interpolation method to be used, see NVCVInterpolationType for more details.

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 cvcudaRotateVarShapeSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVImageBatchHandle in, NVCVImageBatchHandle out, NVCVTensorHandle angleDeg, NVCVTensorHandle shift, const NVCVInterpolationType interpolation)

Functions

NVCVStatus cvcudaRotateCreate(NVCVOperatorHandle *handle, const int32_t maxVarShapeBatchSize)

Constructs and an instance of the rotate operator.

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

    • Must not be NULL.

  • maxVarShapeBatchSize[in] maximum batch size for var shape operator

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.