文档
注册

acl.himpi.vpc_resize

c函数原型

hi_s32 hi_mpi_vpc_resize (hi_vpc_chn chn, const hi_vpc_pic_info *source_pic, hi_vpc_pic_info *dest_pic, hi_double fx, hi_double fy, hi_u32 interpolation, hi_u32 *task_id, hi_s32 milli_sec);

Python函数

task_id, ret = acl.himpi.vpc_resize(chn, source_pic, dest_pic, fx, fy, interpolation, milli_sec)

函数功能

对图像进行按照一定比例进行缩放或者缩放到固定尺寸。异步接口。

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

Atlas 训练系列产品,当前版本不支持该接口。

输入说明

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

  • Atlas 推理系列产品(Ascend 310P处理器),该参数的取值范围:[0, 256),通道总数最多256。
  • Atlas A2训练系列产品/Atlas 800I A2推理产品,该参数的取值范围:[0, 256),通道总数最多256。
  • Atlas 200I/500 A2推理产品,该参数的取值范围:[0, 128),通道总数最多128。

source_pic:dict,原始图片信息,相关约束请参见约束说明

dest_pic:dict,目标图片信息。

fx:宽的缩放比例。

fy:高的缩放比例。

interpolation:int,缩放算法。此处配置的缩放算法建议与训练模型时的缩放算法保持一致。

Atlas 推理系列产品(Ascend 310P处理器),支持如下缩放算法:
  • 0:业界通用的Bilinear算法(与OpenCV算法的计算过程类似,当输入和输出图片格式都为RGB时,在[1/32, 512]的缩放范围内,与OpenCV的单个像素值最大差异为正负1)。
  • 1:业界通用的Nearest neighbor 算法(与OpenCV算法的计算过程类似)。
Atlas A2训练系列产品/Atlas 800I A2推理产品,支持如下缩放算法:
  • 0:业界通用的Bilinear算法(与OpenCV-3.4.2版本算法的计算结果相同)。
  • 1:业界通用的Nearest neighbor 算法(与OpenCV-3.4.2版本算法的计算结果相同)。
Atlas 200I/500 A2推理产品,支持如下缩放算法:
  • 0:业界通用的Bilinear算法(与OpenCV-3.4.2版本算法的计算结果相同)。
  • 1:业界通用的Nearest neighbor 算法(与OpenCV-3.4.2版本算法的计算结果相同)。
milli_sec:超时时间配置,单位是毫秒,取值范围如下。
  • “-1”:阻塞方式。
  • “0”:非阻塞方式。
  • >0:超时方式,配置具体的超时时间。超时时间受操作系统影响,一般偏差在操作系统的一个时间片内,例如,操作系统的一个时间片为4ms,用户设置的milli_sec参数值为1,则实际的超时时间在1ms到5ms范围内。在CPU负载高场景下,超时时间仍可能存在波动。

返回值说明

ret:int,错误码。

task_id:int,此次任务分配的ID,用来区分任务。

参考资源

接口调用流程,参见VPC图片处理典型功能

约束说明

版本

约束

Atlas 推理系列产品(Ascend 310P处理器)

  • 关于输入图片分辨率、图片格式:
    • 输入图片分辨率在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。
  • 设置fx / fy之后,缩放后的图片的分辨率必须在[10 * 6 ~ 4096 * 4096]范围内,否则返回错误。
  • 缩放可以通过fx / fy或者目标图片宽高两种方式来指定,但是两者均配置以目标尺寸缩放优先。两者不可同时为0。

Atlas 200I/500 A2推理产品

Atlas A2训练系列产品/Atlas 800I A2推理产品

  • 使用本接口对输入、输出图片分辨率的要求如下:
    • 输入图片分辨率:10 * 6 ~ 16384 * 16384

      当输出图片宽度大于4096时,输入图片最小分辨率为128 * 16。

      当输入图片宽度大于8192,输入图片高度最小为16。

    • 输出图片分辨率:10 * 6 ~ 16384 * 16384
  • 关于图片格式、宽高对齐、内存等约束,请参见图片格式、宽高对齐、内存约束
  • 当输入、输出图片格式都为ARGB8888、ABGR8888、RGBA8888、BGRA8888格式时,在经过本接口缩放处理后,A分量值会变为0。
  • 设置fx / fy之后,缩放后的图片的分辨率必须在[10 * 6 ~ 16384 * 16384]范围内,否则返回错误。
  • 缩放可以通过fx / fy或者目标图片宽高两种方式来指定,但是两者均配置以目标尺寸缩放优先。两者不可同时为0。
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词