函数:get_dynamic_hw
函数:get_output_index_by_name
| C函数原型 | aclError aclmdlGetOutputIndexByName(const aclmdlDesc *modelDesc, const char *name, size_t *index) |
|---|---|
| Python函数 | index, ret = acl.mdl.get_output_index_by_name(model_desc, name) |
| 函数功能 | 根据模型中的输出名称获取对应输出的索引编号。同步接口。 |
| 输入说明 | model_desc:int,aclmdlDesc类型数据的指针地址。 name:str,指定输入名称。 |
| 返回值说明 | index:int,获取对应输入的索引编号。 ret:int,错误码。 - 返回0表示成功。 - 返回其它值表示失败。 |
| 约束说明 | 无 |
父主题: aclmdlDesc
函数:get_dynamic_batch
| C函数原型 | aclError aclmdlGetDynamicBatch(const aclmdlDesc *modelDesc, aclmdlBatch *batch) |
|---|---|
| Python函数 | batch, ret = acl.mdl.get_dynamic_batch(model_desc) |
| 函数功能 | 获取模型支持的动态Batch信息。同步接口。 |
| 输入说明 | model_desc:int,aclmdlDesc类型数据的指针地址。 |
| 返回值说明 | batch:dict,获取的模型支持的动态Batch信息。 - batch = { "batchCount": int,#模型中支持的batch分档数 "batch":[xx, xx,] # 模型中支持的具体分档 } 模型中支持的最大batch数为128。 - batchCount等于0时,表示不支持设置档位信息,以模型中的档位为准。 ret:int,错误码。 - 返回0表示成功。 - 返回其它值表示失败。 |
| 约束说明 | 无 |
父主题: aclmdlDesc
函数:get_dynamic_hw
| C函数原型 | aclError aclmdlGetDynamicHW(const aclmdlDesc *modelDesc, size_t index, aclmdlHW *hw) |
|---|---|
| Python函数 | hw_info, ret = acl.mdl.get_dynamic_hw(model_desc, index**)** |
| 函数功能 | 获取模型支持的动态宽高信息。同步接口。 |
| 输入说明 | model_desc:int,aclmdlDesc类型数据的指针地址。 index:预留参数,当前未使用,固定设置为-1。 |
| 返回值说明 | hw_info:dict,获取的模型支持的宽高信息 - hw_info= { "hwCount": int,#模型中支持的宽高分档数 "hw":[xx, xx,] # 模型中支持的具体分档,每组分档中,数组下标为0代表的是高,下标为1代表的是宽 } 最大的HW数量为128 - hwCount等于0时,表示不支持设置档位信息,以模型中的档位为准。 ret:int,错误码。 - 返回0表示成功。 - 返回其它值表示失败。 |
| 约束说明 | 无 |
父主题: aclmdlDesc
函数:get_cur_output_dims
| C函数原型 | aclError aclmdlGetCurOutputDims(const aclmdlDesc *modelDesc, size_t index, aclIODims *dims) |
|---|---|
| Python函数 | dims, ret = acl.mdl.get_cur_output_dims(model_desc, index**)** |
| 函数功能 | 根据模型描述信息获取指定的模型输出tensor的实际维度信息。同步接口。 |
| 输入说明 | model_desc:int,aclmdlDesc类型数据的指针地址。 需提前调用acl.mdl.create_desc接口创建aclmdlDesc类型的数据。 index:int,指定获取第几个输出的Dims,index值从0开始。 |
| 返回值说明 | dims:dict,输出实际维度信息。 若tensor的name长度大于127,则在输出dims.name时,pyACL会将tensor的name转换为“acl_modelId_${id}input${index}${随机字符串} ”格式(如果转换后的tensor的name与模型中已有的tensor的name冲突,则会在转换后的name尾部增加“${随机字符串} ”,否则不会增加随机字符串),并在转换后的name与原name之间建立映射关系,用户可调用acl.mdl.get_tensor_real_name接口,传入转换后的name,获取原name(若向接口传入原name,则获取的还是原name);若tensor的name长度小于或等于127,则在输出的dims.name时,按tensor的name输出。 ret:int,错误码。 - 返回0表示成功。 - 返回其它值表示失败。 |
| 约束说明 | 动态Shape(动态Batch或动态分辨率或动态维度(ND格式))场景下,如果用户已调用acl.mdl.set_dynamic_batch_size设置Batch、或调用acl.mdl.set_dynamic_hw_size接口设置输入图片的宽高、或调用acl.mdl.set_input_dynamic_dims接口设置某动态维度的值,则可通过该接口获取指定模型输出tensor的实际维度信息;如果用户未调用acl.mdl.set_dynamic_batch_size接口、或acl.mdl.set_dynamic_hw_size接口、或acl.mdl.set_input_dynamic_dims接口,则通过该接口可获取最大档的维度信息。 非动态Shape场景下,通过该接口获取指定的模型输出tensor的维度信息。 |
父主题: aclmdlDesc
函数:get_first_aipp_info
| C函数原型 | aclError aclmdlGetFirstAippInfo(uint32_t modelId, size_t index, aclAippInfo *aippInfo) |
|---|---|
| Python函数 | aipp_info, ret = acl.mdl.get_first_aipp_info(model_id, 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。 index:int,指定模型的第几个输入。 |
| 返回值说明 | aipp_info:dict,获取指定输入上静态AIPP的配置信息。 ret:int,错误码。 - 返回0表示成功。 - 返回其它值表示失败。 |
| 约束说明 | 如果使用本接口获取模型中动态AIPP的信息,只能获取aclAippInfo中如下参数的值:srcFormat、srcDatatype、srcDimNum、shapeCount、outDims,其它参数值无效。 aclAippInfo结构体以字典返回,字典中的key对应结构体的成员名。 |
父主题: aclmdlDesc
函数:get_input_dynamic_gear_count
| C函数原型 | aclError aclmdlGetInputDynamicGearCount(const aclmdlDesc *modelDesc, size_t index, size_t *gearCount) |
|---|---|
| Python函数 | gear_count, ret = acl.mdl.get_input_dynamic_gear_count(model_desc, index) |
| 函数功能 | 根据模型描述信息获取模型的输入所支持的动态维度档位数。同步接口。 |
| 输入说明 | model_desc:int,aclmdlDesc类型数据的指针地址。 index:int,预留参数,当前未使用,固定设置为-1。 |
| 返回值说明 | gear_count:int, 动态维度档位数。 例如,模型的输入tensor是4维,在模型转换时通过--dynamic_dims参数设置的分档为“1,3,224,224;2,3,224,224;1,3,256,256”,那么通过该接口获取的动态维度档位数为3。 ret:int,错误码。 - 返回0表示成功。 - 返回其它值表示失败。 |
| 约束说明 | 如果模型构建时没有设置动态维度的分档,那么通过该接口获取的动态维度档位数为0。模型构建的详细说明请参见模型构建。 |
父主题: aclmdlDesc
在线提单