aclmdlSetAIPPCscParams

Applicability

Product

Supported

Atlas A3 training products / Atlas A3 inference products

√

Atlas A2 training products / Atlas A2 inference products

√

Atlas 200I/500 A2 inference products

√

Atlas inference products

√

Atlas training products

√

Description

Sets CSC parameters in the dynamic AIPP scenario. If the CSC switch is turned off, the following parameters set by using this API call are invalid.

YUV2BGR conversion:
| B |   | cscMatrixR0C0 cscMatrixR0C1 cscMatrixR0C2 | | Y - cscInputBiasR0 |
| G | = | cscMatrixR1C0 cscMatrixR1C1 cscMatrixR1C2 | | U - cscInputBiasR1 | >> 8
| R |   | cscMatrixR2C0 cscMatrixR2C1 cscMatrixR2C2 | | V - cscInputBiasR2 |
BGR2YUV conversion:
| Y |   | cscMatrixR0C0 cscMatrixR0C1 cscMatrixR0C2 | | B |        | cscOutputBiasR0 |
| U | = | cscMatrixR1C0 cscMatrixR1C1 cscMatrixR1C2 | | G | >> 8 + | cscOutputBiasR1 |
| V |   | cscMatrixR2C0 cscMatrixR2C1 cscMatrixR2C2 | | R |        | cscOutputBiasR2 |

CSC parameters are closely related to the source and destination image formats. You can refer to ""Advanced Features" > "AIPP" > "CSC Configuration"" in ATC Instructions for CSC parameter configuration. Configure CSC parameters as required if the listed image formats do not meet your requirements.

Prototype

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)

Parameters

Parameter

Input/Output

Description

aippParmsSet

Output

Pointer to the dynamic AIPP parameter object.

Call aclmdlCreateAIPP in advance to create data of the aclmdlAIPP type.

cscSwitch

Input

CSC enable.

  • 0: disabled. If this parameter is set to 0, the following parameters are invalid.
  • 1: enabled

cscMatrixR0C0

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR0C1

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR0C2

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR1C0

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR1C1

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR1C2

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR2C0

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR2C1

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscMatrixR2C2

Input

CSC matrix parameter.

Value range: [–32677, +32676]

cscOutputBiasR0

Input

Output bias for RGB2YUV conversion.

Value range: [0, 255]

cscOutputBiasR1

Input

Output bias for RGB2YUV conversion.

Value range: [0, 255]

cscOutputBiasR2

Input

Output bias for RGB2YUV conversion.

Value range: [0, 255]

cscInputBiasR0

Input

Input bias for YUV2RGB conversion.

Value range: [0, 255]

cscInputBiasR1

Input

Input bias for YUV2RGB conversion.

Value range: [0, 255]

cscInputBiasR2

Input

Input bias for YUV2RGB conversion.

Value range: [0, 255]

Returns

0 on success; else, failure. For details, see aclError.

Restrictions

If the original image format is set to YUV400 by the aclmdlSetAIPPInputFormat call, it is not supported to set the CSC attributes by this API.