Function: dvpp_vpc_batch_crop_resize_make_border_async

C Prototype

aclError acldvppVpcBatchCropResizeMakeBorderAsync(acldvppChannelDesc *channelDesc, acldvppBatchPicDesc *srcBatchPicDescs, uint32_t *roiNums, uint32_t size, acldvppBatchPicDesc *dstBatchPicDescs, acldvppRoiConfig *cropAreas[], acldvppBorderConfig *borderCfgs[], acldvppResizeConfig *resizeConfig, aclrtStream stream)

Python Function

ret = acl.media.dvpp_vpc_batch_crop_resize_make_border_async(dvpp_channel_desc, src_batch_pic_descs, roi_nums_list, dst_batch_pic_descs, crop_area_list, border_cfgs_list, resize_config, stream)

Function Usage

Crops one or more ROIs from one or more input images, resizes each cropped image, pads each resized image, and loads each padded image to the output buffer. This API is asynchronous.

The Atlas 200/300/500 Inference Product does not support this API in the current version.

The Atlas Training Series Product does not support this API in the current version.

Input 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 buffer address, buffer size, image format, and image resolution).

roi_nums_list: list, array for the number of crop ROIs, up to 256.

The total value 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 buffer address, buffer 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_list and paste_area_list is the same as that of batch_size in dst_batch_pic_descs.

border_cfgs_list: list, border configuration list.

  • The elements in the border_cfgs array match those in crop_areas with ordering preserved.
  • The border_type member can only be set to BORDER_CONSTANT or BORDER_REPLICATE.

resize_config: int, pointer address of the image resizing configuration data.

Call acl.media.dvpp_create_resize_config to create an image resizing configuration in advance.

The width or height of the resized image output by VPC is that of the output image minus the padding length.

stream: int, stream.

Return Value

ret: int, error code.

  • 0 indicates the success of task delivery.
  • Other values indicate the failure of task delivery.