Skip to main content

函数:create_aipp

函数:create_aipp

C函数原型aclmdlAIPP *aclmdlCreateAIPP(uint64_t batchSize)
Python函数aipp_ptr = acl.mdl.create_aipp(batch_size)
函数功能动态AIPP场景下,根据模型支持的batch size创建aclmdlAIPP类型的数据,用于存放动态AIPP的参数。同步接口。 如需销毁aclmdlAIPP类型的数据,请参见函数:destroy_aipp
输入说明batch_si****ze:int,模型的Batch数。
返回值说明aipp_ptr:int,aclmdlAIPP类型数据对象地址。
约束说明

父主题: aclmdlAIPP

函数:destroy_aipp

C函数原型aclError aclmdlDestroyAIPP(const aclmdlAIPP *aippParmsSet)
Python函数ret = acl.mdl.destroy_aipp(aipp_parms_set)
函数功能销毁通过acl.mdl.create_aipp接口创建的aclmdlAIPP类型的数据。同步接口。
输入说明aipp_parms_set:int,待销毁的aclmdlAIPP数据类型对象的指针地址。
返回值说明ret:int,错误码
- 返回0表示成功。
- 返回其它值表示失败。
约束说明

父主题: aclmdlAIPP

函数:set_aipp_input_format

C函数原型aclError aclmdlSetAIPPInputFormat(aclmdlAIPP *aippParmsSet, AippInputFormat inputFormat)
Python函数ret = acl.mdl.set_aipp_input_format(aipp_parms_set**,** input_format)
函数功能动态AIPP场景下,必须设置原始输入图像的格式,同步接口。
输入说明aipp_parms_set:int,动态AIPP参数对象的指针地址,需提前调用acl.mdl.create_aipp接口创建aclmdlAIPP类型的数据。 input_format:int,表示原始输入图像的格式。 取值范围如下:
- 1:ACL_YUV420SP_U8
- 2:ACL_XRGB8888_U8
- 3:ACL_RGB888_U8
- 4:ACL_YUV400_U8
返回值说明ret:int,错误码
- 返回0表示成功。
- 返回其它值表示失败。
约束说明

父主题: 设置动态AIPP参数

函数:set_aipp_csc_params

C函数原型aclError aclmdlSetAIPPCscParams(aclmdlAIPP *aippParmsSet, int8_t cscSwitch, int16_t cscMatrixR0C0, int16_t cscMatrixR0C1, int16_t cscMatrixR0C2, int16_t cscMatrixR1C0, int16_t cscMatrixR1C1,int16_t cscMatrixR1C2, int16_t cscMatrixR2C0, int16_t cscMatrixR2C1, int16_t cscMatrixR2C2, uint8_t cscOutputBiasR0, uint8_t cscOutputBiasR1, uint8_t cscOutputBiasR2, uint8_t cscInputBiasR0, uint8_t cscInputBiasR1, uint8_t cscInputBiasR2)
Python函数ret = acl.mdl.set_aipp_csc_params(aipp_parms_set, csc_switch, csc_matrix_R0C0, csc_matrix_R0C1, csc_matrix_R0C2,csc_matrix_R1C0, csc_matrix_R1C1, csc_matrix_R1C2, csc_matrix_R2C0, csc_matrix_R2C1, csc_matrix_R2C2, csc_output_bias_R0, csc_output_bias_R1, csc_output_bias_R2, csc_input_bias_R0, csc_input_bias_R1, csc_input_bias_R2)
函数功能动态AIPP场景下,设置CSC色域转换相关的参数,若色域转换开关关闭,则调用该接口设置的参数无效。同步接口。
text<br>YUV转BGR:<br>| B | | cscMatrixR0C0 cscMatrixR0C1 cscMatrixR0C2 | | Y - cscInputBiasR0 |<br>| G | = | cscMatrixR1C0 cscMatrixR1C1 cscMatrixR1C2 | | U - cscInputBiasR1 | >> 8<br>| R | | cscMatrixR2C0 cscMatrixR2C1 cscMatrixR2C2 | | V - cscInputBiasR2 |<br>BGR转YUV:<br>| Y | | cscMatrixR0C0 cscMatrixR0C1 cscMatrixR0C2 | | B | | cscOutputBiasR0 |<br>| U | = | cscMatrixR1C0 cscMatrixR1C1 cscMatrixR1C2 | | G | >> 8 + | cscOutputBiasR1 |<br>| V | | cscMatrixR2C0 cscMatrixR2C1 cscMatrixR2C2 | | R | | cscOutputBiasR2 |<br>
色域转换参数值与转换前图片的格式、转换后图片的格式强相关,您可以参见《ATC工具使用指南》下的色域转换配置说明,按照转换前图片格式、转换后图片格式来配置色域转换参数。如果手册中列举的图片格式不满足要求,您需自行根据实际需求配置色域转换参数。
输入说明aipp_parms_set:int,动态AIPP参数对象的指针地址,需提前调用acl.mdl.create_aipp接口创建aclmdlAIPP类型的数据。 csc_switch:int,色域转换开关,取值范围:
- 0:关闭色域转换开关,默认为0。
- 1:打开色域转换开关。 csc_matrix_R0C0:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R0C1:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R0C2:int,色域转换矩阵参数,取值范围:[-32677 ,32676]。 csc_matrix_R1C0:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R1C1:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R1C2:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R2C0:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R2C1:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_matrix_R2C2:int,色域转换矩阵参数,取值范围:[-32677, 32676]。 csc_output_bias_R0:int,RGB转YUV时的输出偏移,默认值为0,取值范围:[0, 255]。 csc_output_bias_R1:int,RGB转YUV时的输出偏移,默认值为0,取值范围:[0, 255]。 csc_output_bias_R2:int,RGB转YUV时的输出偏移,默认值为0,取值范围:[0, 255]。 csc_input_bias_R0:int,YUV转RGB时的输入偏移,默认值为0,取值范围:[0, 255]。 csc_input_bias_R1:int,YUV转RGB时的输入偏移,默认值为0,取值范围:[0, 255]。 csc_input_bias_R2:int,YUV转RGB时的输入偏移,默认值为0,取值范围:[0, 255]。
返回值说明ret:int,错误码
- 返回0表示成功。
- 返回其它值表示失败。
约束说明如果通过acl.mdl.set_aipp_input_format接口设置的原始图像格式为YUV400,则不支持通过本接口设置色域转换参数。

父主题: 设置动态AIPP参数

函数:set_aipp_rbuv_swap_switch

C函数原型aclError aclmdlSetAIPPRbuvSwapSwitch(aclmdlAIPP *aippParmsSet, int8_t rbuvSwapSwitch)
Python函数ret = acl.mdl.set_aipp_rbuv_swap_switch(aipp_parms_set, rbuv_swap_switch)
函数功能动态AIPP场景下,CSC色域转换前,设置是否交换R通道与B通道、或者是否交换U通道与V通道,同步接口。
输入说明aipp_parms_set:int,动态AIPP参数对象的指针地址,需提前调用acl.mdl.create_aipp接口创建aclmdlAIPP类型的数据。 rbuv_swap_switch:int,表示是否交换R通道与B通道、或者是否交换U通道与V通道的开关。取值范围:
- 0:不交换,默认为0。
- 1:交换。
返回值说明ret:int,错误码
- 返回0表示成功。
- 返回其它值表示失败。
约束说明

父主题: 设置动态AIPP参数

函数:set_aipp_ax_swap_switch

C函数原型aclError aclmdlSetAIPPAxSwapSwitch(aclmdlAIPP *aippParmsSet, int8_t axSwapSwitch)
Python函数ret = acl.mdl.set_aipp_ax_swap_switch(aipp_parms_set, ax_swap_switch)
函数功能动态AIPP场景下,设置RGBA->ARGB或者YUVA->AYUV的交换开关,同步接口。
输入说明aipp_parms_set:int,动态AIPP参数对象的指针地址,需提前调用acl.mdl.create_aipp接口创建aclmdlAIPP类型的数据。 ax_swap_switch:int,表示GBA->ARGB或者YUVA->AYUV的交换开关。取值范围:
- 0:不交换,默认为0。
- 1:交换。
返回值说明ret:int,错误码
- 返回0表示成功。
- 返回其它值表示失败。
约束说明

父主题: 设置动态AIPP参数

在线提单