vpc_crop

Applicability

Product

Supported

Atlas 350 Accelerator Card

Atlas A3 training product / Atlas A3 inference product

Atlas A2 training product / Atlas A2 inference product

Atlas training product

x

Atlas inference product

Atlas 200I/500 A2 inference product

Description

Crops one or more ROIs from an image. This API is asynchronous.

Prototype

  • C Prototype
    1
    hi_s32 hi_mpi_vpc_crop(hi_vpc_chn chn, const hi_vpc_pic_info *source_pic, hi_vpc_crop_region_info crop_info[], hi_u32 count, hi_u32 *task_id, hi_s32 milli_sec);
    
  • Python Function
    1
    task_id, ret = acl.himpi.vpc_crop(chn, source_pic, crop_info, count, milli_sec)
    

Parameters

Parameter

Description

chn

Int, channel ID for image processing.

source_pic

Dict, source image information. For details, see hi_vpc_pic_info. For details about related restrictions, see Restrictions.

crop_info

List, cropped image information list. The length must be the same as the value of count. For details, see hi_vpc_crop_region_info.

count

Int, number of crop ROIs. Value range: [1, 256].

milli_sec

Int, timeout interval, in milliseconds.

Return Value

Return Value

Description

task_id

Int, task ID, used to identify a task.

ret

Int, error code.
  • 0 indicates success.
  • Other values indicate failure. For details, see VPC Return Codes.

Reference

For details about the API call sequence, see Typical API Call Sequence (Image Resizing).

Restrictions

Version

Restrictions

Atlas inference product

  • Input image size and format:
    • When the input image size 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 input image width or height is in the range of (4096, 8192], the supported formats are as follows:
      The following enum values of hi_pixel_format are supported:
      HI_PIXEL_FORMAT_YUV_400 = 0,               // YUV400 8bit
      HI_PIXEL_FORMAT_YUV_SEMIPLANAR_420 = 1,    // YUV420SP NV12 8bit   
      HI_PIXEL_FORMAT_YVU_SEMIPLANAR_420 = 2,    // YUV420SP NV21 8bit 
      HI_PIXEL_FORMAT_YUV_SEMIPLANAR_422 = 3,    // YUV422SP 8bit
      HI_PIXEL_FORMAT_YVU_SEMIPLANAR_422 = 4,    // YVU422SP 8bit
      HI_PIXEL_FORMAT_YUV_SEMIPLANAR_444 = 5,    // YUV444SP 8bit
      HI_PIXEL_FORMAT_YVU_SEMIPLANAR_444 = 6,    // YVU444SP 8bit
      HI_PIXEL_FORMAT_YUYV_PACKED_422 = 7,       // YUV422Packed YUYV 8bit
      HI_PIXEL_FORMAT_UYVY_PACKED_422 = 8,       // YUV422Packed UYVY 8bit
      HI_PIXEL_FORMAT_YVYU_PACKED_422 = 9,       // YUV422Packed YVYU 8bit
      HI_PIXEL_FORMAT_VYUY_PACKED_422 = 10,      // YUV422Packed VYUY 8bit
    • For details about the restrictions on the width and height alignment and buffer size of each image format, see Restrictions on Image Formats, Width and Height Alignment, and Buffers.
  • For details about the restrictions on the output image resolution, image format, width and height alignment, and buffer size, see Restrictions.
  • Processing a single 1080p image requires a recommended setting of 3 ms timeout, and two 1080p images require a recommended setting of 6 ms timeout. This rule applies to more images. In terms of resolution, a 4K image is equivalent to four 1080p images, and therefore processing a single 3840 x 2160 image requires a recommended setting of 12 ms timeout.

Atlas 350 Accelerator Card

Atlas 200I/500 A2 inference product

Atlas A2 training product / Atlas A2 inference product

Atlas A3 training product / Atlas A3 inference product

  • For details about the restrictions on the image size, image format, width and height alignment, and buffer size, see Restrictions.
  • Processing a single 1080p image requires a recommended setting of 3 ms timeout, and two 1080p images require a recommended setting of 6 ms timeout. This rule applies to more images. In terms of resolution, a 4K image is equivalent to four 1080p images, and therefore processing a single 3840 x 2160 image requires a recommended setting of 12 ms timeout.