Function: dvpp_vpc_batch_crop_and_paste_async

Applicability

Product

Supported (√/x)

Atlas A3 training products / Atlas A3 inference products

Atlas A2 training products / Atlas A2 inference products

Atlas training products

Atlas inference products

Atlas 200I/500 A2 inference products

Function Usage

Crops one or more ROIs from one or more images and pastes the crop ROIs to the canvas for output. This API is asynchronous.

Prototype

  • C Prototype
    1
    aclError acldvppVpcBatchCropAndPasteAsync(acldvppChannelDesc  *channelDesc,acldvppBatchPicDesc *srcBatchPicDesc,uint32_t  *roiNums,uint32_t size,acldvppBatchPicDesc *dstBatchPicDesc,acldvppRoiConfig *cropAreas[],acldvppRoiConfig *pasteAreas[],aclrtStream stream)
    
  • Python Function
    1
    dst_batch_pic_descs, ret = acl.media.dvpp_vpc_batch_crop_and_paste_async(dvpp_channel_desc, src_batch_pic_descs, roi_nums_list, dst_batch_pic_descs, crop_area_list, paste_area_list, stream)
    

Parameter Description

Parameter

Description

dvpp_channel_desc

Int, pointer address of the channel description. It must be the same as the dvpp_channel_desc argument passed to the acl.media.dvpp_create_channel call.

src_batch_pic_descs

Int, pointer address of the description of batch input images.

  • Call acl.media.dvpp_create_batch_pic_desc to create a description of a group of images.
  • Call acl.media.dvpp_get_pic_desc to obtain the description of a specified image.
  • Call the acl.media.dvpp_set_pic_desc APIs to set the image description (including the memory address, memory size, image format, and image resolution).

roi_nums_list

List, list of number of cropped images, up to 256.

The value of roi_nums_list is less than or equal to 256, which is the same as the value of batch_size in dst_batch_pic_descs. (roi_nums_list[0] + ... + roi_nums_list[size - 1] <= 256)

dst_batch_pic_descs

Int, pointer address of the description of batch output images.

  • Call acl.media.dvpp_create_batch_pic_desc to create a description of a group of images.
  • Call acl.media.dvpp_get_pic_desc to obtain the description of a specified image.
  • Call the acl.media.dvpp_set_pic_desc APIs to set the image description (including the memory address, memory size, image format, and image resolution).

crop_area_list

List, list of the position of the cropping area.

  • Call acl.media.dvpp_create_roi_config to create an ROI configuration.
  • The number of elements in crop_area and paste_area is the same as that of batch_size in dst_batch_pic_descs.

paste_area_list

List, list of the position of the paste ROI.

  • Call acl.media.dvpp_create_roi_config to create an ROI configuration.
  • Round up the left offset of the paste ROI to the nearest multiple of 16.
  • The number of elements in crop_area and paste_area is the same as that of batch_size in dst_batch_pic_descs.

stream

Int, stream object.

Return Value Description

Return Value

Description

dst_batch_pic_descs

Int, pointer address of the description of batch output images.

ret

Int, error code: 0 on success; else, failure.

Restrictions

Version

Restrictions

Atlas training products

Atlas inference products

  • Input image size and format:
    • When the input image resolution is in the range of [10 x 6, 4096 x 4096], the input image formats described in Restrictions on Image Formats, Width and Height Alignment, and Buffers are supported.
    • When the width or height of the input image is in the range of (4096, 8192], the supported formats are as follows:
      The following enum values of acldvppPixelFormat are supported:
      PIXEL_FORMAT_YUV_400 = 0,               // YUV400 8bit
      PIXEL_FORMAT_YUV_SEMIPLANAR_420 = 1,    // YUV420SP NV12 8bit   
      PIXEL_FORMAT_YVU_SEMIPLANAR_420 = 2,    // YUV420SP NV21 8bit 
      PIXEL_FORMAT_YUV_SEMIPLANAR_422 = 3,    // YUV422SP 8bit
      PIXEL_FORMAT_YVU_SEMIPLANAR_422 = 4,    // YVU422SP 8bit
      PIXEL_FORMAT_YUV_SEMIPLANAR_444 = 5,    // YUV444SP 8bit
      PIXEL_FORMAT_YVU_SEMIPLANAR_444 = 6,    // YVU444SP 8bit
      PIXEL_FORMAT_YUYV_PACKED_422 = 7,       // YUV422Packed YUYV 8bit
      PIXEL_FORMAT_UYVY_PACKED_422 = 8,       // YUV422Packed UYVY 8bit
      PIXEL_FORMAT_YVYU_PACKED_422 = 9,       // YUV422Packed YVYU 8bit
      PIXEL_FORMAT_VYUY_PACKED_422 = 10,      // YUV422Packed VYUY 8bit
  • For details about the output image size and format, see Restrictions on Image Formats, Width and Height Alignment, and Buffers.
  • For details about the restrictions on the width and height alignment, buffer size, and image format, see Restrictions on Image Formats, Width and Height Alignment, and Buffers.
  • When the width and height of the paste_area are different from those of the crop_area, the image is resized. The default resizing algorithm is the widely used Bilinear algorithm.

Atlas A2 training products / Atlas A2 inference products

Atlas 200I/500 A2 inference products

Atlas A3 training products / Atlas A3 inference products