下载
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
昇腾小AI

函数:set_input_aipp

C函数原型

aclError aclmdlSetInputAIPP(uint32_t modelId, aclmdlDataset *dataset, size_t index, const aclmdlAIPP *aippParmsSet)

Python函数

ret = acl.mdl.set_input_aipp(model_id, dataset, index, aipp_parms_set)

函数功能

动态AIPP场景下,根据指定的动态AIPP输入的输入index,设置模型推理时的AIPP参数值。

动态AIPP支持的几种操作的计算方式及其计算顺序如下:抠图->色域转换->缩放(当前版本不支持缩放)->减均值/归一化->padding。

输入说明

model_id:int,模型的ID,

调用acl.mdl.load_from_file接口/acl.mdl.load_from_mem接口/acl.mdl.load_from_file_with_mem接口/acl.mdl.load_from_mem_with_mem接口加载模型成功后,会返回模型ID。

dataset:int,表示模型的输入数据的指针地址,使用aclmdlDataset类型的数据描述模型推理时的输入数据,输入的内存地址、内存大小用aclDataBuffer类型的数据来描述。

index:int,标识动态AIPP输入的输入index。

  • 多个动态AIPP输入的场景下,用户可调用acl.mdl.get_aipp_type接口获取指定模型输入所关联的动态AIPP输入的输入index。
  • 为保证向前兼容,如果明确只有一个动态AIPP输入,可调用acl.mdl.get_input_index_by_name接口获取,输入名称固定为“ascend_dynamic_aipp_data”

aipp_parms_set:int,动态AIPP参数对象的指针地址,需提前调用acl.mdl.create_aipp接口创建aclmdlAIPP类型的数据。

返回值说明

ret:int,错误码

  • 返回0表示成功。
  • 返回其它值表示失败。

约束说明

  • 经过动态AIPP处理后的图像的宽、高必须与原始模型中输入Shape中的宽、高保持一致。
  • 多Batch场景下,根据每个Batch的配置计算出动态AIPP后输出图片的宽、高,经过动态AIPP后每个Batch的输出图片宽、高必须是一致的。计算输出图片宽、高的计算公式如表1所示。
  • 抠图或者缩放或者padding之后,对图片宽、高的校验规则如下,其中,aippOutputW、aippOutputH分别表示AIPP输出图片的宽、高,其它参数是acl.mdl.set_aipp_src_image_sizeacl.mdl.set_aipp_crop_paramsacl.mdl.set_aipp_padding_params接口的入参。

参考资源

接口调用流程与示例,参见动态AIPP(单个动态AIPP输入)

表1 输出图片宽、高计算公式

抠图

缩放

补边(padding)

动态AIPP输出图片的宽、高

aippOutputW = srcImageSizeW

aippOutputH = srcImageSizeH

aippOutputW = cropSizeW

aippOutputH = cropSizeH

aippOutputW = scfOutputSizeW

aippOutputH = scfOutputSizeH

aippOutputW = cropSizeW + paddingSizeLeft + paddingSizeRight

aippOutputH = cropSizeH + paddingSizeTop + paddingSizeBottom

aippOutputW = srcImageSizeW + paddingSizeLeft + paddingSizeRight

aippOutputH = srcImageSizeH + paddingSizeTop + paddingSizeBottom

aippOutputW = scfOutputSizeW + paddingSizeLeft + paddingSizeRight

aippOutputH = scfOutputSizeH + paddingSizeTop + paddingSizeBottom

aippOutputW = scfOutputSizeW

aippOutputH = scfOutputSizeH

aippOutputW = scfOutputSizeW + paddingSizeLeft + paddingSizeRight

aippOutputH = scfOutputSizeH + paddingSizeTop + paddingSizeBottom

搜索结果
找到“0”个结果

当前产品无相关内容

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