15. CNR¶
15.1. 功能描述¶
在 YUV Domain 针对色度噪声进行的空域去噪算法。
15.2. API 参考¶
CVI_ISP_SetCNRAttr: 设置色度降噪参数属性
CVI_ISP_GetCNRAttr: 获取色度降噪参数属性
CVI_ISP_SetCNRMotionNRAttr: 设置色度降噪移动物体参数属性
CVI_ISP_GetCNRMotionNRAttr: 获取色度降噪移动物体参数属性
15.2.1. CVI_ISP_SetCNRAttr¶
【描述】
设置色度降噪参数属性
【语法】
CVI_S32 CVI_ISP_SetCNRAttr(VI_PIPE ViPipe, const ISP_CNR_ATTR_S *pstCNRAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRAttr |
色度降噪参数属性 |
输入 |
【返回值】
返回值 |
描述 |
---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
15.2.2. CVI_ISP_GetCNRAttr¶
【描述】
获取色度降噪参数属性
【语法】
CVI_S32 CVI_ISP_GetCNRAttr(VI_PIPE ViPipe, ISP_CNR_ATTR_S *pstCNRAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRAttr |
色度降噪参数属性 |
输出 |
【返回值】
返回值 |
描述 |
---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
15.2.3. CVI_ISP_SetCNRMotionNRAttr¶
【描述】
设置色度降噪移动物体参数属性
【语法】
CVI_S32 CVI_ISP_SetCNRMotionNRAttr(VI_PIPE ViPipe, const ISP_CNR_MOTION_NR_ATTR_S *pstCNRMotionNRAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRMotionNRAttr |
色度降噪移动物体参数属性 |
输出 |
【返回值】
返回值 |
描述 |
---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
15.2.4. CVI_ISP_GetCNRMotionNRAttr¶
【描述】
获取色度降噪移动物体参数属性
【语法】
CVI_S32 CVI_ISP_GetCNRMotionNRAttr(VI_PIPE ViPipe, const ISP_CNR_MOTION_NR_ATTR_S *pstCNRMotionNRAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRMotionNRAttr |
色度降噪移动物体参数属性 |
输出 |
【返回值】
返回值 |
描述 |
---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
15.3. 数据类型¶
ISP_CNR_MANUAL_ATTR_S: 色度降噪参数手动属性
ISP_CNR_AUTO_ATTR_S: 色度降噪参数自动属性
ISP_CNR_ATTR_S: 色度降噪参数属性
ISP_CNR_MOTION_NR_MANUAL_ATTR_S: 色度降噪移动物体参数手动属性
ISP_CNR_MOTION_NR_AUTO_ATTR_S: 色度降噪移动物体参数自动属性
ISP_CNR_MOTION_NR_ATTR_S: 色度降噪移动物体参数属性
15.3.1. ISP_CNR_MANUAL_ATTR_S¶
【说明】
色度降噪参数手动属性
【定义】
typedef struct _ISP_CNR_MANUAL_ATTR_S {
CVI_U8 CnrStr;
CVI_U8 NoiseSuppressStr;
CVI_U8 NoiseSuppressGain;
CVI_U8 FilterType;
CVI_U8 MotionNrStr;
CVI_U8 LumaWgt;
CVI_U8 DetailSmoothMode;
} ISP_CNR_MANUAL_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
CnrStr |
色噪去噪强度。值越大,色噪去噪强度越大。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
NoiseSuppressStr |
色噪抑制强度。值越大,色噪去除强度越大。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
NoiseSuppressGain |
色噪抑制强度增益。值越小,色噪去噪强度越大。 取值范围: [0x1, 0x8] 数据类型: CVI_U8 |
FilterType |
色噪去噪滤波器强度。值越大,色噪去除强度越大。 取值范围: [0x0, 0x1f] 数据类型: CVI_U8 |
MotionNrStr |
调节物体运动区域的色噪去噪强度。值越大,运动区域的色噪越少。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
LumaWgt |
参考亮度的色噪去噪权重。值越大,亮度影响色噪去噪的强度越大。 取值范围: [0x0, 0x8] 数据类型: CVI_U8 |
DetailSmoothMode |
去噪细节平滑功能使能。 0 : 关闭。 1 : 使能。 取值范围: [0x0, 0x1] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.2. ISP_CNR_AUTO_ATTR_S¶
【说明】
色度降噪参数自动属性
【定义】
typedef struct _ISP_CNR_AUTO_ATTR_S {
CVI_U8 CnrStr[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 NoiseSuppressStr[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 NoiseSuppressGain[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 FilterType[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 MotionNrStr[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 LumaWgt[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 DetailSmoothMode[ISP_AUTO_ISO_STRENGTH_NUM];
} ISP_CNR_AUTO_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
CnrStr |
色噪去噪强度。值越大,色噪去噪强度越大。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
NoiseSuppressStr |
色噪抑制强度。值越大,色噪去除强度越大。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
NoiseSuppressGain |
色噪抑制强度增益。值越小,色噪去噪强度越大。 取值范围: [0x1, 0x8] 数据类型: CVI_U8 |
FilterType |
色噪去噪滤波器强度。值越大,色噪去除强度越大。 取值范围: [0x0, 0x1f] 数据类型: CVI_U8 |
MotionNrStr |
调节物体运动区域的色噪去噪强度。值越大,运动区域的色噪越少。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
LumaWgt |
参考亮度的色噪去噪权重。值越大,亮度影响色噪去噪的强度越大。 取值范围: [0x0, 0x8] 数据类型: CVI_U8 |
DetailSmoothMode |
去噪细节平滑功能使能。 0: 关闭。 1: 使能。 取值范围: [0x0, 0x1] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.3. ISP_CNR_ATTR_S¶
【说明】
色度降噪参数属性
【定义】
typedef struct _ISP_CNR_ATTR_S {
CVI_BOOL Enable;
ISP_OP_TYPE_E enOpType;
CVI_U8 UpdateInterval;
ISP_CNR_MANUAL_ATTR_S stManual;
ISP_CNR_AUTO_ATTR_S stAuto;
} ISP_CNR_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
Enable |
CNR模块使能。 0: 关闭。 1: 使能。 取值范围: [0, 1] 数据类型: CVI_BOOL |
enOpType |
工作类型 OP_TYPE_AUTO: 自动模式 OP_TYPE_MANUAL: 手动模式 |
UpdateInterval |
影响参数更新间隔,值越大画面变化越慢,效能越好 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
stManual |
手动模式参数属性 |
stAuto |
自动模式参数属性 |
【注意事项】
无
【相关数据类型及接口】
15.3.4. ISP_CNR_MOTION_NR_MANUAL_ATTR_S¶
【说明】
色度降噪移动物体参数手动属性
【定义】
typedef struct _ISP_CNR_MOTION_NR_MANUAL_ATTR_S {
CVI_U8 MotionCnrCoringLut[16]
CVI_U8 MotionCnrStrLut[16];
} ISP_CNR_MOTION_NR_MANUAL_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
MotionCnrCoringLut[16] |
使用 LUT 调整不同物体运动量时对应的色噪抑制强度,将运动量区分为16阶。值越大,去色噪强度越强 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
MotionCnrStrLut[16] |
使用LUT调整不同物体运动量时对应的去色噪强度,将运动量区分为16阶。值越大,去色噪强度越强。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.5. ISP_CNR_MOTION_NR_AUTO_ATTR_S¶
【说明】
色度降噪移动物体参数自动属性
【定义】
typedef struct _ISP_CNR_MOTION_NR_AUTO_ATTR_S {
CVI_U8 MotionCnrCoringLut[16][ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 MotionCnrStrLut[16][ISP_AUTO_ISO_STRENGTH_NUM];
} ISP_CNR_MOTION_NR_AUTO_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
MotionCnrStrLut[16] |
使用LUT调整不同物体运动量时对应的去色噪强度,将运动量区分为16阶。值越大,去色噪强度越强。 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.6. ISP_CNR_MOTION_NR_ATTR_S¶
【说明】
色度降噪移动物体参数属性
【定义】
typedef struct _ISP_CNR_MOTION_NR_ATTR_S {
CVI_BOOL MotionCnrEnable;
ISP_CNR_MOTION_NR_MANUAL_ATTR_S stManual;
ISP_CNR_MOTION_NR_AUTO_ATTR_S stAuto;
} ISP_CNR_MOTION_NR_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
MotionCnrEnable |
参考物体运动量来调整去色噪强度功能使能。 0: 关闭。 1: 使能。 取值范围: [0, 1] 数据类型: CVI_BOOL |
stManual |
手动模式参数属性 |
stAuto |
自动模式参数属性 |
【注意事项】
无
【相关数据类型及接口】