c函数原型 |
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函数 |
task_id, ret = acl.himpi.vpc_crop(chn, source_pic, crop_info, count, milli_sec) |
函数功能 |
按照指定区域从一张输入图片中抠出一张或多张子图。异步接口。 昇腾310 AI处理器,当前版本不支持该接口。 昇腾910 AI处理器,当前版本不支持该接口。 |
输入说明 |
- chn:图片处理通道号,取值范围:[0, 256),通道总数最多256。
- source_pic: 原始图片信息。
- 输入图片分辨率在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
- crop_info:抠图图片信息数组,该数组长度与count参数值保持一致。
- count: 抠图区域的数量,取值范围[1,256]。
- milli_sec:超时时间配置,单位是毫秒,取值范围如下。
- “-1”:阻塞方式。
- “0”:非阻塞方式。
- >0:超时方式,配置具体的超时时间。超时时间受操作系统影响,一般偏差在操作系统的一个时间片内,例如,操作系统的一个时间片为4ms,用户设置的milli_sec参数值为1,则实际的超时时间在1ms到5ms范围内。在CPU负载高场景下,超时时间仍可能存在波动。
|
返回值说明 |
- task_id:此次任务分配的ID,用来区分任务。
- ret:int,错误码。
|
注意事项 |
无 |
约束说明 |
- 单张1080P的图像处理超时时间建议设置3ms,以此类推,如果是2张1080P的图像,建议设置超时间为6ms;如果是3张1080P图片,建议设置超时时间为9ms。其他分辨率,按照图像尺寸进行近似的等价折算,例如,3840*2160分辨率的图像建议超时时间设置为12ms。
- VPC功能的约束请参见约束说明。但需注意,由于通过本接口抠的图直接作为输出图片,所以需满足输出图片最大分辨率4096*4096的限制,因此本接口中抠图区域最大分辨率为4096*4096。
|
参考资源 |
接口调用流程,参见接口调用流程。 |