Composite

group NVCV_C_ALGORITHM_COMPOSITE

Unnamed Group

NVCVStatus cvcudaCompositeSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVTensorHandle foreground, NVCVTensorHandle background, NVCVTensorHandle fgMask, NVCVTensorHandle output)

Executes the composite operation on the given cuda stream. This operation does not wait for completion.

Limitations:

Input: Data Layout: [kNHWC, kHWC] Channels: [3]

Data Type

Allowed

8bit Unsigned

Yes

8bit Signed

No

16bit Unsigned

No

16bit Signed

No

32bit Unsigned

No

32bit Signed

No

32bit Float

No

64bit Float

No

Output: Data Layout: [kNHWC, kHWC] Channels: [3, 4]

Data Type

Allowed

8bit Unsigned

Yes

8bit Signed

No

16bit Unsigned

No

16bit Signed

No

32bit Unsigned

No

32bit Signed

No

32bit Float

No

64bit Float

No

Input/Output dependency

 Property      |  Input == Output
-------------- | -------------
 Data Layout   | Yes
 Data Type     | Yes
 Number        | Yes
 Channels      | No
 Width         | Yes
 Height        | Yes

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

    • Must not be NULL.

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

  • foreground[in] input foreground tensor. Each image is BGR (3-channel) 8-bit.

  • background[in] input background tensor. Each image is BGR (3-channel) 8-bit.

  • fgMask[in] input foreground mask tensor. Each mask image is grayscale 8-bit.

  • output[out] output tensor. Each output image is BGR(A) (3-channel for BGR, 4-channel for BGRA) 8-bit.

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 cvcudaCompositeVarShapeSubmit(NVCVOperatorHandle handle, cudaStream_t stream, NVCVImageBatchHandle foreground, NVCVImageBatchHandle background, NVCVImageBatchHandle fgMask, NVCVImageBatchHandle output)

Functions

NVCVStatus cvcudaCompositeCreate(NVCVOperatorHandle *handle)

Constructs and an instance of the composite operator.

Parameters:

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

  • Must not be NULL.

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.