9. MeshShading

9.1. 功能描述

以网格形式对镜头四周暗角进行矫正

9.2. API 参考

9.2.1. CVI_ISP_SetMeshShadingAttr

【描述】

设置Mesh Shading算法参数

【语法】

CVI_S32 CVI_ISP_SetMeshShadingAttr(VI_PIPE ViPipe, const ISP_MESH_SHADING_ATTR_S *pstMeshShadingAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstMeshShadingAttr

Mesh Shading算法参数

输入

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

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

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

9.2.2. CVI_ISP_GetMeshShadingAttr

【描述】

获取Mesh Shading算法参数

【语法】

CVI_S32 CVI_ISP_GetMeshShadingAttr(VI_PIPE ViPipe, ISP_MESH_SHADING_ATTR_S *pstMeshShadingAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstMeshShadingAttr

Mesh Shading算法参数

输出

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

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

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

9.2.3. CVI_ISP_SetMeshShadingGainLutAttr

【描述】

设置LSC 网格形式补偿增益表

【语法】

CVI_S32 CVI_ISP_SetMeshShadingGainLutAttr(VI_PIPE ViPipe, const ISP_MESH_SHADING_GAIN_LUT_ATTR_S *pstMeshShadingGainLutAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstMeshShadingGainLutAttr

LSC 网格线形式补偿增益表

输入

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

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

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

9.2.4. CVI_ISP_GetMeshShadingGainLutAttr

【描述】

获取 LSC 网格形式补偿增益表

【语法】

CVI_S32 CVI_ISP_GetMeshShadingGainLutAttr(VI_PIPE ViPipe, ISP_MESH_SHADING_GAIN_LUT_ATTR_S *pstMeshShadingGainLutAttr);

【参数】

参数名称

描述

输入/输出

ViPipe

VI_PIPE 号

输入

pstMeshShadingGainLutAttr

LSC 网格线形式补偿增益表

输出

【返回值】

返回值

描述

0

成功。

非 0

失败,其值为 错误码

【需求】

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

  • 库文件: libisp.so

【注意】

无。

【举例】

无。

【相关主题】

9.3. 数据类型

9.3.1. ISP_MESH_SHADING_MANUAL_ATTR_S

【说明】

Mesh Shading算法手动参数

【定义】

typedef struct _ISP_MESH_SHADING_MANUAL_ATTR_S {
   CVI_U16 MeshStr;
} ISP_MESH_SHADING_MANUAL_ATTR_S;

【成员】

成员名称

描述

MeshStr

LSC 补偿强度

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

数据类型: CVI_U16

【注意事项】

无。

【相关数据类型及接口】

9.3.2. ISP_MESH_SHADING_AUTO_ATTR_S

【说明】

Mesh Shading算法自动参数

【定义】

typedef struct _ISP_MESH_SHADING_AUTO_ATTR_S {
   CVI_U16 MeshStr[ISP_AUTO_ISO_STRENGTH_NUM];
} ISP_MESH_SHADING_AUTO_ATTR_S;

【成员】

成员名称

描述

MeshStr

LSC 补偿强度

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

数据类型: CVI_U16

【注意事项】

无。

【相关数据类型及接口】

9.3.3. ISP_MESH_SHADING_ATTR_S

【说明】

Mesh Shading算法参数

【定义】

typedef struct _ISP_MESH_SHADING_ATTR_S {
   CVI_BOOL Enable;
   ISP_OP_TYPE_E enOpType;
   CVI_U8 UpdateInterval;
   CVI_BOOL OverflowProtection;
   ISP_MESH_SHADING_MANUAL_ATTR_S stManual;
   ISP_MESH_SHADING_AUTO_ATTR_S stAuto;
} ISP_MESH_SHADING_ATTR_S;

【成员】

成员名称

描述

Enable

LSC 功能使能。

0: 关闭。

1: 使能。

取值范围: [0, 1]

数据类型: CVI_BOOL

enOpType

选择手动或自动模式

UpdateInterval

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

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

数据类型: CVI_U8

OverflowProtection

避免过曝区色偏

取值范围: [0, 1]

数据类型: CVI_BOOL

stManual

手动参数

stAuto

自动参数

【注意事项】

无。

【相关数据类型及接口】

9.3.4. ISP_MESH_SHADING_GAIN_LUT_S

【说明】

网格线形式补偿增益表细项

【定义】

typedef struct _ISP_MESH_SHADING_GAIN_LUT_S {
   CVI_U16 ColorTemperature;
   CVI_U16 RGain[CVI_ISP_LSC_GRID_POINTS];
   CVI_U16 GGain[CVI_ISP_LSC_GRID_POINTS];
   CVI_U16 BGain[CVI_ISP_LSC_GRID_POINTS];
} ISP_MESH_SHADING_GAIN_LUT_S;

【成员】

成员名称

描述

ColorTemperature

色温自适应LSC补偿增益表所对应之色温,单位为 K

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

数据类型: CVI_U16

RGain

红色通道增益

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

数据类型: CVI_U16

GGain

绿色通道增益

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

数据类型: CVI_U16

BGain

蓝色通道增益

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

数据类型: CVI_U16

【注意事项】

无。

【相关数据类型及接口】

9.3.5. ISP_MESH_SHADING_GAIN_LUT_ATTR_S

【说明】

LSC 网格线形式补偿增益表

【定义】

typedef struct _ISP_MESH_SHADING_GAIN_LUT_ATTR_S {
   CVI_U8 Size;
   ISP_MESH_SHADING_GAIN_LUT_S LscGainLut[ISP_MLSC_COLOR_TEMPERATURE_SIZE];
} ISP_MESH_SHADING_GAIN_LUT_ATTR_S;

【成员】

成员名称

描述

Size

色温自适应LSC补偿增益表数量

取值范围: [0x1, 0x7]

数据类型: CVI_U8

LscGainLut

LSC 网格线形式补偿增益表

【注意事项】

无。

【相关数据类型及接口】