hi_mpi_vpc_crop_resize_paste

函数功能

从输入图片中抠图,对抠出的子图进行缩放后,贴在用户输出图片的指定区域。异步接口。

Atlas 200/300/500 推理产品,不支持该接口。

Atlas 训练系列产品,不支持该接口。

约束说明

版本

约束

Atlas 推理系列产品

  • 关于输入图片分辨率、图片格式:
    • 输入图片分辨率在10*6~4096*4096(包括4096)范围内时,支持图片格式、宽高对齐、内存约束处说明的输入图片格式。
    • 输入图片的宽或高在4096~8192(包括8192)范围内时,支持格式如下:
      支持hi_pixel_format枚举值中的如下枚举项:
      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
    • 关于各图片格式的宽高对齐、内存大小约束,请参见图片格式、宽高对齐、内存约束
  • 关于输出图片分辨率、图片格式、宽高对齐、内存大小约束请参见约束说明
  • 当输入、输出图片格式都为ARGB8888、ABGR8888、RGBA8888、BGRA8888格式时,在经过本接口处理后,A分量值会变为0。
  • 输出图片的数量最多等于抠图区域的数量,最少是一张图片。也就是说,如果从输入图片中扣n张子图,那么贴图的目标图片可以是同一张大图,也可以是多张大图。取决于hi_vpc_crop_resize_paste_region结构体中指定的地址。
  • 由于hi_vpc_crop_resize_paste_region结构体内容比较丰富,使用者可以自由组合功能。例如:若是crop的宽高与resize之后的宽高一致,则不进行缩放。

Atlas A2训练系列产品

  • 关于图片分辨率、图片格式、宽高对齐、内存等约束,请参见约束说明
  • 由于YUV格式图像下采样约束,当输出图片格式为YUV420SP或YUV422SP格式时,贴图的顶部偏移、左侧偏移需为偶数。
  • 输出图片的数量最多等于抠图区域的数量,最少是一张图片。也就是说,如果从输入图片中扣n张子图,那么贴图的目标图片可以是同一张大图,也可以是多张大图。取决于hi_vpc_crop_resize_paste_region结构体中指定的地址。
  • 由于hi_vpc_crop_resize_paste_region结构体内容比较丰富,使用者可以自由组合功能。例如:若是crop的宽高与resize之后的宽高一致,则不进行缩放。

函数原型

hi_s32 hi_mpi_vpc_crop_resize_paste(hi_vpc_chn chn, const hi_vpc_pic_info *source_pic, hi_vpc_crop_resize_paste_region crop_resize_paste_info[], hi_u32 count, hi_u32 *task_id, hi_s32 milli_sec)

参数说明

参数名

输入/输出

说明

chn

输入

图片处理通道号。

该参数的取值范围:[0, 256),通道总数最多256。

source_pic

输入

原始图片信息的指针。

crop_resize_paste_info

输入

抠图缩放并贴图的图片信息数组,该数组长度与count参数值保持一致。

count

输入

抠图缩放贴图的图片数量,取值范围[1,256]。

task_id

输出

任务ID的指针,用来区分任务。

milli_sec

输入

超时时间配置,单位是毫秒,取值范围如下:
  • -1:阻塞方式
  • 0:非阻塞方式
  • >0:超时方式,配置具体的超时时间。超时时间受操作系统影响,一般偏差在操作系统的一个时间片内,例如,操作系统的一个时间片为4ms,用户设置的milli_sec参数值为1,则实际的超时时间在1ms到5ms范围内。在CPU负载高场景下,超时时间仍可能存在波动。

返回值说明