34. CSC¶
34.1. 功能描述¶
该功能提供了色域转换时的一些相关画质设定,通过设定hue、luma、saturation、contrast、色域转换标准规范类型,进而影响画面的效果,而无需知晓转换矩阵的计算过程,当然也可以让使用者直接通过设定转换矩阵的coeff和offset,进而影响画质效果
34.2. API 参考¶
CVI_ISP_SetCSCAttr : 设置CSC属性参数
CVI_ISP_GetCSCAttr : 获取CSC属性参数
34.2.1. CVI_ISP_SetCSCAttr¶
【描述】
设置CSC属性参数
【语法】
CVI_S32 CVI_ISP_SetCSCAttr(VI_PIPE ViPipe, const ISP_CSC_ATTR_S *pstCSCAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCSCAttr |
CSC属性参数 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
VI_PIPE ViPipe = 0;
ISP_CSC_ATTR_S stAttr;
CVI_ISP_GetCSCAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetCSCAttr(ViPipe, &stAttr);
【相关主题】
34.2.2. CVI_ISP_GetCSCAttr¶
【描述】
获取CSC属性参数
【语法】
CVI_S32 CVI_ISP_GetCSCAttr(VI_PIPE ViPipe, ISP_CSC_ATTR_S *pstCSCAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCSCAttr |
CSC属性参数 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
34.3. 数据类型¶
ISP_CSC_ATTR_S : 定义CSC属性参数
ISP_CSC_MATRX_S : 定义自定义转换矩阵
34.3.1. ISP_CSC_ATTR_S¶
【说明】
定义CSC属性参数
【定义】
typedef struct _ISP_CSC_ATTR_S {
CVI_BOOL Enable; /*Rw; Range:[0, 1]*/
ISP_CSC_COLORGAMUT enColorGamut;
CVI_U8 UpdateInterval; /*Rw; Range:[0, 255]*/
CVI_U8 Hue; /*Rw; Range:[0, 100]*/
CVI_U8 Luma; /*Rw; Range:[0, 100]*/
CVI_U8 Contrast; /*Rw; Range:[0, 100]*/
CVI_U8 Saturation; /*Rw; Range:[0, 100]*/
ISP_CSC_MATRX_S stUserMatrx;
} ISP_CSC_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
Enable |
模块使能开关 取值范围: [0, 1] 数据类型: CVI_BOOL |
enColorGamut |
色域转换类型选择 0: ISP_CSC_COLORGAMUT_BT601 1: ISP_CSC_COLORGAMUT_BT709 2: ISP_CSC_COLORGAMUT_BT2020 3: ISP_CSC_COLORGAMUT_USER 数据类型: ISP_CSC_COLORGAMUT |
UpdateInterval |
影响参数更新间隔,值越大画面变化越慢,效能越好。 取值范围: [0, 255] 数据类型: CVI_U8 |
Hue |
调节色度 取值范围: [0, 100] 数据类型: CVI_U8 |
Luma |
调节亮度 取值范围: [0, 100] 数据类型: CVI_U8 |
Contrast |
调节对比度 取值范围: [0, 100] 数据类型: CVI_U8 |
Saturation |
调节饱和度 取值范围: [0, 100] 数据类型: CVI_U8 |
stUserMatrx |
自定义色域转换矩阵 数据类型: ISP_CSC_MATRX_S |
【注意事项】
无
【相关数据类型及接口】
34.3.2. ISP_CSC_MATRX_S¶
【说明】
定义自定义转换矩阵
【定义】
typedef struct _ISP_CSC_MATRX_S {
CVI_S16 userCscCoef[CSC_MATRIX_SIZE]; /*Rw; Range:[-8192, 8191]*/
CVI_S16 userCscOffset[CSC_OFFSET_SIZE]; /*Rw; Range:[-256, 255]*/
} ISP_CSC_MATRX_S;
【成员】
成员名称 |
描述 |
|---|---|
userCscCoef |
3*3色域转换矩阵的系数 取值范围: [-8192, 8191] 数据类型: CVI_S16 |
userCscOffset |
输出offset 取值范围: [-256, 255] 数据类型: CVI_S16 |
【注意事项】
无
【相关数据类型及接口】