33. CLUT¶
33.1. Functional Description¶
throughone17x17x17 3D LUT, inRGB domainonperformlinearconversion. willRGBpixelvaluelook upinterpolateobtaintonew RGBpixelvalue, canusethisDebugcolor, brightness.
33.2. API Reference¶
CVI_ISP_SetClutAttr : SetCLUTattribute parameters
CVI_ISP_GetClutAttr : GetCLUTattribute parameters
CVI_ISP_SetClutHslAttr : SetCLUT hslattribute parameters
CVI_ISP_GetClutHslAttr : GetCLUT hslattribute parameters
33.2.1. CVI_ISP_SetClutAttr¶
[Description]
SetCLUTattribute parameters
[Syntax]
CVI_S32 CVI_ISP_SetClutAttr(VI_PIPE ViPipe, const ISP_CLUT_ATTR_S *pstClutAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstClutAttr |
CLUTattribute parameters |
Input |
[Return Value]
Return Value |
Description |
|---|---|
0 |
Success |
Non-zero |
Failure, whose value is Error Code. |
[Requirements]
Header File: cvi_isp.h, cvi_comm_isp.h
Library File: libisp.so
[Note]
None
[Example]
VI_PIPE ViPipe = 0;
ISP_CLUT_ATTR_S stAttr;
CVI_ISP_GetClutAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetClutAttr(ViPipe, &stAttr);
[Related Topics]
33.2.2. CVI_ISP_GetClutAttr¶
[Description]
GetCLUTattribute parameters
[Syntax]
CVI_S32 CVI_ISP_GetClutAttr(VI_PIPE ViPipe, ISP_CLUT_ATTR_S *pstClutAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstClutAttr |
CLUTattribute parameters |
output |
[Return Value]
Return Value |
Description |
|---|---|
0 |
Success |
Non-zero |
Failure, whose value is Error Code. |
[Requirements]
Header File: cvi_isp.h, cvi_comm_isp.h
Library File: libisp.so
[Note]
None
[Example]
None
[Related Topics]
33.2.3. CVI_ISP_SetClutHslAttr¶
[Description]
SetCLUT hslattribute parameters
[Syntax]
CVI_S32 CVI_ISP_SetClutHslAttr(VI_PIPE ViPipe, const ISP_CLUT_HSL_ATTR_S *pstClutHslAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstClutHslAttr |
CLUT hslattribute parameters |
Input |
[Return Value]
Return Value |
Description |
|---|---|
0 |
Success |
Non-zero |
Failure, whose value is Error Code. |
[Requirements]
Header File: cvi_isp.h, cvi_comm_isp.h
Library File: libisp.so
[Note]
None
[Example]
VI_PIPE ViPipe = 0;
ISP_CLUT_HSL_ATTR_S stAttr;
CVI_ISP_GetClutHslAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetClutHslAttr(ViPipe, &stAttr);
[Related Topics]
33.2.4. CVI_ISP_GetClutHslAttr¶
[Description]
GetCLUT hslattribute parameters
[Syntax]
CVI_S32 CVI_ISP_GetClutHslAttr(VI_PIPE ViPipe, ISP_CLUT_HSL_ATTR_S *pstClutHslAttr);
[Parameters]
Parameter Name |
Description |
Input/Output |
|---|---|---|
ViPipe |
VI_PIPE No. |
Input |
pstClutHslAttr |
CLUT hslattribute parameters |
output |
[Return Value]
Return Value |
Description |
|---|---|
0 |
Success |
Non-zero |
Failure, whose value is Error Code. |
[Requirements]
Header File: cvi_isp.h, cvi_comm_isp.h
Library File: libisp.so
[Note]
None
[Example]
None
[Related Topics]
33.3. Data Types¶
ISP_CLUT_ATTR_S : Define CLUTattribute parameters
ISP_CLUT_HSL_ATTR_S : Define CLUT hslattribute parameters
33.3.1. ISP_CLUT_ATTR_S¶
[Description]
Define CLUTattribute parameters
[Definition]
typedef struct _ISP_CLUT_ATTR_S {
CVI_BOOL Enable; /*Rw; Range:[0, 1]*/
CVI_U8 UpdateInterval; /*Rw; Range:[0, 255]*/
CVI_U16 ClutR[ISP_CLUT_LUT_LENGTH]; /*Rw; Range:[0, 1023]*/
CVI_U16 ClutG[ISP_CLUT_LUT_LENGTH]; /*Rw; Range:[0, 1023]*/
CVI_U16 ClutB[ISP_CLUT_LUT_LENGTH]; /*Rw; Range:[0, 1023]*/
} ISP_CLUT_ATTR_S;
[Members]
Member Name |
Description |
|---|---|
Enable |
module enable switch Value Range: [0, 1] Data Types: CVI_BOOL |
UpdateInterval |
reserved, not yetuseparameternumber. Value Range: [0, 255] Data Types: CVI_U8 |
ClutR |
Rchannel LUT. Value Range: [0, 1023] Data Types: CVI_U16 |
ClutG |
Gchannel LUT. Value Range: [0, 1023] Data Types: CVI_U16 |
ClutB |
Bchannel LUT. Value Range: [0, 1023] Data Types: CVI_U16 |
[Precautions]
None
[Related Data Types and Interfaces]
33.3.2. ISP_CLUT_HSL_ATTR_S¶
[Description]
Define CLUT hslattribute parameters
[Definition]
typedef struct _ISP_CLUT_HSL_ATTR_S {
CVI_BOOL Enable; /*Rw; Range:[0, 1]*/
CVI_FLOAT Sigma; /*Rw; Range:[0, 64]*/
CVI_S16 HByH[ISP_CLUT_HUE_LENGTH]; /*Rw; Range:[-30, 30]*/
CVI_U16 SByH[ISP_CLUT_HUE_LENGTH]; /*Rw; Range:[0, 100]*/
CVI_U16 LByH[ISP_CLUT_HUE_LENGTH]; /*Rw; Range:[0, 100]*/
CVI_U16 SByS[ISP_CLUT_SAT_LENGTH]; /*Rw; Range:[0, 100]*/
} ISP_CLUT_HSL_ATTR_S;
[Members]
Member Name |
Description |
|---|---|
Enable |
hslmodule enable. Value Range: [0, 1] Data Types: CVI_BOOL |
Sigma |
None Value Range: [0, 64] Data Types: CVI_FLOAT |
HByH |
length37 array, willhue 36etc.part, canSeteachhuerangerotaterotate angledegree. Value Range: [-30, 30] Data Types: CVI_S16 |
SByH |
length37 array, willhue 36etc.part, canSeteachhuerangesaturationgain, 50isonex. Value Range: [0, 100] Data Types: CVI_U16 |
LByH |
length37 array, willhue 36etc.part, canSeteachhuerangebrightnessgain, 50isonex. Value Range: [0, 100] Data Types: CVI_U16 |
SByS |
length21 array, willsaturation20etc.part, canSeteachsaturationrangesaturationgain, 50isonex. Value Range: [0, 100] Data Types: CVI_U16 |
[Precautions]
None
[Related Data Types and Interfaces]