37. CLUT

37.1. 功能描述

透过一个17x17x17 的3D LUT, 在RGB domain上做线性转换。将RGB像素值查表内插得到新的RGB像素值, 可以借此调试颜色、亮度。

37.2. API 参考

37.2.1. CVI_ISP_SetClutAttr

【描述】

设置CLUT属性参数

【语法】

CVI_S32 CVI_ISP_SetClutAttr(VI_PIPE ViPipe, const ISP_CLUT_ATTR_S *pstClutAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstCLUTAttr

CLUT属性参数

输入

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

  • 头文件: cvi_isp.h, cvi_comm_isp.h

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

37.2.2. CVI_ISP_GetClutAttr

【描述】

获取CLUT属性参数

【语法】

CVI_S32 CVI_ISP_GetClutAttr(VI_PIPE ViPipe, ISP_CLUT_ATTR_S *pstClutAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstCLUTAttr

CLUT属性参数

输出

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

  • 头文件: cvi_isp.h, cvi_comm_isp.h

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

37.2.3. CVI_ISP_SetClutSaturationAttr

【描述】

设置CLUT SbyS属性参数

【语法】

CVI_S32 CVI_ISP_SetClutSaturationAttr(VI_PIPE ViPipe, ISP_CLUT_SATURATION_ATTR_S *pstClutSaturationAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstClutSaturationAttr

CLUT SbyS属性参数

输出

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

  • 头文件: cvi_isp.h, cvi_comm_isp.h

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

37.2.4. CVI_ISP_GetClutSaturationAttr

【描述】

获取CLUT SbyS属性参数

【语法】

CVI_S32 CVI_ISP_GetClutSaturationAttr(VI_PIPE ViPipe, ISP_CLUT_SATURATION_ATTR_S *pstClutSaturationAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstClutSaturationAttr

CLUT SbyS属性参数

输出

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

  • 头文件: cvi_isp.h, cvi_comm_isp.h

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

37.3. 数据类型

37.3.1. ISP_CLUT_ATTR_S

【说明】

CLUT属性参数

【定义】

typedef struct _ISP_CLUT_ATTR_S {
   CVI_BOOL Enable;
   CVI_U8 UpdateInterval;
   CVI_U16 ClutR[ISP_CLUT_LUT_LENGTH];
   CVI_U16 ClutG[ISP_CLUT_LUT_LENGTH];
   CVI_U16 ClutB[ISP_CLUT_LUT_LENGTH];
} ISP_CLUT_ATTR_S;

【成员】

成员名称

描述

Enable

CLUT模块使能。

0: 关闭。

1: 使能。

取值范围: [0, 1]

数据类型: CVI_BOOL

UpdateInterval

影响参数更新间隔, 值越大画面变化越慢, 效能越好。

取值范围: [0x0, 0xff]

数据类型: CVI_U8

ClutR

R通道的LUT。

取值范围: [0x0, 0x3ff]

数据类型: CVI_U16

ClutG

G通道的LUT。

取值范围: [0x0, 0x3ff]

数据类型: CVI_U16

ClutB

B通道的LUT。

取值范围: [0x0, 0x3ff]

数据类型: CVI_U16

【注意事项】

无。

【相关数据类型及接口】

37.3.2. ISP_CLUT_SATURATION_MANUAL_ATTR_S

【说明】

CLUT SbyS属性手动参数

【定义】

typedef struct _ISP_CLUT_SATURATION_MANUAL_ATTR_S {
   CVI_U16 SatIn[4];
   CVI_U16 SatOut[4];
} ISP_CLUT_SATURATION_MANUAL_ATTR_S;

【成员】

成员名称

描述

SatIn [4]

SbyS 输入

取值范围: [0, 0x2000]

数据类型: CVI_U16

SatOut [4]

SbyS 输出

取值范围: [0, 0x2000]

数据类型: CVI_U16

【注意事项】

无。

【相关数据类型及接口】

37.3.3. ISP_CLUT_SATURATION_AUTO_ATTR_S

【说明】

CLUT SbyS属性手动参数

【定义】

typedef struct _ISP_CLUT_SATURATION_AUTO_ATTR_S {
   CVI_U16 SatIn[4][ISP_AUTO_ISO_STRENGTH_NUM];
   CVI_U16 SatOut[4][ISP_AUTO_ISO_STRENGTH_NUM];
} ISP_CLUT_SATURATION_AUTO_ATTR_S;

【成员】

成员名称

描述

SatIn [4]

SbyS 输入

取值范围: [0, 0x2000]

数据类型: CVI_U16

SatOut [4]

SbyS 输出

取值范围: [0, 0x2000]

数据类型: CVI_U16

【注意事项】

无。

【相关数据类型及接口】

37.3.4. ISP_CLUT_SATURATION_ATTR_S

【说明】

CLUT SbyS属性手动参数

【定义】

typedef struct _ISP_CLUT_SATURATION_ATTR_S {
   CVI_BOOL Enable;
   ISP_OP_TYPE_E enOpType;
   ISP_CLUT_SATURATION_MANUAL_ATTR_S stManual;
   ISP_CLUT_SATURATION_AUTO_ATTR_S stAuto;
} ISP_CLUT_SATURATION_ATTR_S;

【成员】

成员名称

描述

Enable

SbyS模块使能。

0: 关闭。

1: 使能。

取值范围: [0, 1]

数据类型: CVI_BOOL

enOpType

选择手动或自动模式

stManual

手动模式参数属性

stAuto

自动模式参数属性

【注意事项】

无。

【相关数据类型及接口】