acl.himpi.vpc_crop_resize_resize_paste

c函数原型

hi_s32 hi_mpi_vpc_crop_resize_resize_paste(hi_vpc_chn chn, const hi_vpc_pic_info *source_pic, hi_vpc_crop_resize_resize_paste_region crop_resize_resize_paste_info[], hi_u32 count, hi_u32 *task_id, hi_s32 milli_sec)

Python函数

task_id, ret = acl.himpi.vpc_crop_resize_resize_paste(chn, source_pic,crop_resize_resize_paste_info,count,milli_sec)

函数功能

从输入图片中抠图,对抠出的子图进行两次缩放后(两次缩放目的是对敏感图像信息模糊脱敏),贴在用户输出图片的指定区域。异步接口。

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

输入说明

  • chn:int,图片处理通道号。

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

  • crop_resize_resize_paste_info:list,抠图缩放并贴图的图片信息数组,该数组长度与count参数值保持一致。元素类型参见hi_vpc_crop_resize_resize_paste_region
  • count:int,抠图缩放贴图的图片数量,取值范围[1,256]。

    输入图片分辨率在10*6~4096*4096(包括4096)范围内时,支持图片格式、宽高对齐、内存约束处说明的输入图片格式。

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

返回值说明

  • task_id:任务分配的ID,用来区分任务。

约束说明

  • 输出图片的数量最多等于抠图区域的数量,最少是一张图片。也就是说,如果从输入图片中扣n张子图,那么贴图的目标图片可以是同一张大图,也可以是多张大图。取决于hi_vpc_crop_resize_resize_paste_region字典中指定的地址。
  • 两次缩放中,只能先缩小再放大,每次缩放后的图片的分辨率必须在[10*6, 4096*4096]范围内、宽高缩放比例在[1/32, 32]范围内,两次缩放之后的图片大小必须与抠图的大小保持一致。
  • VPC功能的约束请参见约束说明
  • 由于YUV格式图像下采样约束,当输出图片格式为YUV420SP或YUV422SP格式时,贴图的顶部偏移、左侧偏移建议为偶数。