15. CNR¶
15.1. 功能描述¶
在 YUV Domain 针对色度噪声进行的空域去噪算法。 cv184x 系列 的 CNR 模块通过双边滤波处理对UV通道做整体的降噪处理。
15.2. API 参考¶
CVI_ISP_SetCNRAttr : 设置CNR 参数属性
CVI_ISP_GetCNRAttr : 获取CNR 参数属性
CVI_ISP_SetCNRFilterAttr : 设置CNR FILTER 参数属性
CVI_ISP_GetCNRFilterAttr : 获取CNR FILTER 参数属性
15.2.1. CVI_ISP_SetCNRAttr¶
【描述】
设置CNR 参数属性
【语法】
CVI_S32 CVI_ISP_SetCNRAttr(VI_PIPE ViPipe, const ISP_CNR_ATTR_S *pstCNRAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRAttr |
CNR 参数属性 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
VI_PIPE ViPipe = 0;
ISP_CNR_ATTR_S stAttr;
CVI_ISP_GetCNRAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetCNRAttr(ViPipe, &stAttr);
【相关主题】
15.2.2. CVI_ISP_GetCNRAttr¶
【描述】
获取CNR 参数属性
【语法】
CVI_S32 CVI_ISP_GetCNRAttr(VI_PIPE ViPipe, ISP_CNR_ATTR_S *pstCNRAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRAttr |
CNR 参数属性 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
15.2.3. CVI_ISP_SetCNRFilterAttr¶
【描述】
设置CNR FILTER 参数属性
【语法】
CVI_S32 CVI_ISP_SetCNRFilterAttr(VI_PIPE ViPipe, const ISP_CNR_FILTER_ATTR_S *pstCNRFilterAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRFilterAttr |
CNR FILTER 参数属性 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
VI_PIPE ViPipe = 0;
ISP_CNR_FILTER_ATTR_S stAttr;
CVI_ISP_GetCNRFilterAttr(ViPipe, &stAttr);
stAttr.enOpType = OP_TYPE_AUTO;
CVI_ISP_SetCNRFilterAttr(ViPipe, &stAttr);
【相关主题】
15.2.4. CVI_ISP_GetCNRFilterAttr¶
【描述】
获取CNR FILTER 参数属性
【语法】
CVI_S32 CVI_ISP_GetCNRFilterAttr(VI_PIPE ViPipe, ISP_CNR_FILTER_ATTR_S *pstCNRFilterAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstCNRFilterAttr |
CNR FILTER 参数属性 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无
【举例】
无
【相关主题】
15.3. 数据类型¶
ISP_CNR_MANUAL_ATTR_S : 定义手动CNR 参数属性
ISP_CNR_AUTO_ATTR_S : 定义自动CNR 参数属性
ISP_CNR_ATTR_S : 定义CNR 参数属性
ISP_CNR_FILTER_MANUAL_ATTR_S : 定义手动CNR FILTER 参数属性
ISP_CNR_FILTER_AUTO_ATTR_S : 定义自动CNR FILTER 参数属性
ISP_CNR_FILTER_ATTR_S : 定义CNR FILTER 参数属性
15.3.1. ISP_CNR_MANUAL_ATTR_S¶
【说明】
定义手动CNR 参数属性
【定义】
typedef struct _ISP_CNR_MANUAL_ATTR_S {
CVI_U8 MedianFltKsize; /*Rw; Range:[0, 2]*/
CVI_U8 CnrByMotion[3]; /*Rw; Range:[0, 31]*/
CVI_U8 CnrRefYStr; /*Rw; Range:[0, 31]*/
CVI_U8 CnrRefUVStr; /*Rw; Range:[0, 31]*/
CVI_U8 CnrYRange; /*Rw; Range:[0, 3]*/
CVI_U8 CnrYThr; /*Rw; Range:[0, 31]*/
CVI_U8 CnrYPrcStr; /*Rw; Range:[0, 2]*/
CVI_U8 CnrYStrH; /*Rw; Range:[0, 32]*/
CVI_U8 CnrYStrT; /*Rw; Range:[0, 32]*/
CVI_U8 CnrUVRange; /*Rw; Range:[0, 4]*/
CVI_U8 CnrUVThr; /*Rw; Range:[0, 32]*/
CVI_U8 CnrUVPrcStr; /*Rw; Range:[0, 3]*/
CVI_U8 CnrUVStrH; /*Rw; Range:[0, 64]*/
CVI_U8 CnrUVStrT; /*Rw; Range:[0, 64]*/
CVI_U8 CnrSatRange; /*Rw; Range:[0, 3]*/
CVI_U8 CnrSatPrtThr; /*Rw; Range:[0, 31]*/
CVI_U8 CnrSatPrcStr; /*Rw; Range:[0, 2]*/
CVI_U8 CnrSatStrH; /*Rw; Range:[0, 32]*/
CVI_U8 CnrSatStrT; /*Rw; Range:[0, 32]*/
CVI_U8 CnrSatBldCoring; /*Rw; Range:[0, 32]*/
} ISP_CNR_MANUAL_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
MedianFltKsize |
Filter size selection for CMF。 取值范围: [0, 2] 数据类型: CVI_U8 |
CnrByMotion |
控制不同运动状态下的CNR强度。CnrByMotion[0]~CnrByMotion[2]分别对应静止区、转换区、运动区。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrRefYStr |
在 Y 通道上的色度参考权重。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrRefUVStr |
在 UV 通道上的色度参考权重。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrYRange |
在 Y 通道上的亮度差阈值。值越大,高亮度差阈值越大,CnrYStrH对高亮度差区域的影响范围越大。 取值范围: [0, 3] 数据类型: CVI_U8 |
CnrYThr |
在 Y 通道上的亮度差阈值。亮度差低于CnrYThr的部分,CNR强度由CnrYStrH控制。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrYPrcStr |
Chroma adaptation weighting precision for Y channel。 0: 8; 1: 16; 2: 32; 取值范围: [0, 2] 数据类型: CVI_U8 |
CnrYStrH |
在 Y 通道上控制亮度差异较小的区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrYStrT |
在 Y 通道上控制亮度差异较大的区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrUVRange |
在 UV 通道上控制高色差阈值。值越大,高色差阈值越大,CnrUVStrH对高色差区域的影响范围越大。 0: 8; 1: 16; 2: 32; 3: 64; 4: 128; 7-5: Reserved; 取值范围: [0, 4] 数据类型: CVI_U8 |
CnrUVThr |
在 UV 通道上控制高饱和阈值。值越大,高饱和阈值越大,CnrSatStrH对高饱和区域的影响范围越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrUVPrcStr |
Chroma adaptation weighting precision for UV channels。 0: 8; 1: 16; 2: 32; 3: 64; 取值范围: [0, 3] 数据类型: CVI_U8 |
CnrUVStrH |
在 UV 通道上控制低色差区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 64] 数据类型: CVI_U8 |
CnrUVStrT |
在 UV 通道上控制高色差区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 64] 数据类型: CVI_U8 |
CnrSatRange |
控制高饱和阈值。值越大,高饱和阈值越大,CnrSatStrH对高饱和区域的影响范围越大。 0: 8; 1: 16; 2: 32; 3: 64; 取值范围: [0, 3] 数据类型: CVI_U8 |
CnrSatPrtThr |
低饱和度阈值。饱和度低于CnrSatPrtThr的部分,CNR强度由CnrSatStrH控制。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrSatPrcStr |
Chroma adaptation weighting precision for Saturation。 0: 8; 1: 16; 2: 32; 取值范围: [0, 2] 数据类型: CVI_U8 |
CnrSatStrH |
控制低饱和度区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrSatStrT |
控制高饱和度区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrSatBldCoring |
Chroma adaptation weighting for Saturation blending。 取值范围: [0, 32] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.2. ISP_CNR_AUTO_ATTR_S¶
【说明】
定义自动CNR 参数属性
【定义】
typedef struct _ISP_CNR_AUTO_ATTR_S {
CVI_U8 MedianFltKsize[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 2]*/
CVI_U8 CnrByMotion[3][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 CnrRefYStr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 CnrRefUVStr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 CnrYRange[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 3]*/
CVI_U8 CnrYThr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 CnrYPrcStr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 2]*/
CVI_U8 CnrYStrH[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 32]*/
CVI_U8 CnrYStrT[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 32]*/
CVI_U8 CnrUVRange[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 4]*/
CVI_U8 CnrUVThr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 32]*/
CVI_U8 CnrUVPrcStr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 3]*/
CVI_U8 CnrUVStrH[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 64]*/
CVI_U8 CnrUVStrT[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 64]*/
CVI_U8 CnrSatRange[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 3]*/
CVI_U8 CnrSatPrtThr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 CnrSatPrcStr[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 2]*/
CVI_U8 CnrSatStrH[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 32]*/
CVI_U8 CnrSatStrT[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 32]*/
CVI_U8 CnrSatBldCoring[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 32]*/
} ISP_CNR_AUTO_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
MedianFltKsize |
Filter size selection for CMF。 取值范围: [0, 2] 数据类型: CVI_U8 |
CnrByMotion |
控制不同运动状态下的CNR强度。CnrByMotion[0]~CnrByMotion[2]分别对应静止区、转换区、运动区。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrRefYStr |
在 Y 通道上的色度参考权重。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrRefUVStr |
在 UV 通道上的色度参考权重。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrYRange |
在 Y 通道上的亮度差阈值。值越大,高亮度差阈值越大,CnrYStrH对高亮度差区域的影响范围越大。 取值范围: [0, 3] 数据类型: CVI_U8 |
CnrYThr |
在 Y 通道上的亮度差阈值。亮度差低于CnrYThr的部分,CNR强度由CnrYStrH控制。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrYPrcStr |
Chroma adaptation weighting precision for Y channel。 0: 8; 1: 16; 2: 32; 取值范围: [0, 2] 数据类型: CVI_U8 |
CnrYStrH |
在 Y 通道上控制亮度差异较小的区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrYStrT |
在 Y 通道上控制亮度差异较大的区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrUVRange |
在 UV 通道上控制高色差阈值。值越大,高色差阈值越大,CnrUVStrH对高色差区域的影响范围越大。 0: 8; 1: 16; 2: 32; 3: 64; 4: 128; 7-5: Reserved; 取值范围: [0, 4] 数据类型: CVI_U8 |
CnrUVThr |
在 UV 通道上控制高饱和阈值。值越大,高饱和阈值越大,CnrSatStrH对高饱和区域的影响范围越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrUVPrcStr |
Chroma adaptation weighting precision for UV channels。 0: 8; 1: 16; 2: 32; 3: 64; 取值范围: [0, 3] 数据类型: CVI_U8 |
CnrUVStrH |
在 UV 通道上控制低色差区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 64] 数据类型: CVI_U8 |
CnrUVStrT |
在 UV 通道上控制高色差区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 64] 数据类型: CVI_U8 |
CnrSatRange |
控制高饱和阈值。值越大,高饱和阈值越大,CnrSatStrH对高饱和区域的影响范围越大。 0: 8; 1: 16; 2: 32; 3: 64; 取值范围: [0, 3] 数据类型: CVI_U8 |
CnrSatPrtThr |
低饱和度阈值。饱和度低于CnrSatPrtThr的部分,CNR强度由CnrSatStrH控制。 取值范围: [0, 31] 数据类型: CVI_U8 |
CnrSatPrcStr |
Chroma adaptation weighting precision for Saturation。 0: 8; 1: 16; 2: 32; 取值范围: [0, 2] 数据类型: CVI_U8 |
CnrSatStrH |
控制低饱和度区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrSatStrT |
控制高饱和度区域的CNR强度。值越大,去噪强度越大。 取值范围: [0, 32] 数据类型: CVI_U8 |
CnrSatBldCoring |
Chroma adaptation weighting for Saturation blending。 取值范围: [0, 32] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.3. ISP_CNR_ATTR_S¶
【说明】
定义CNR 参数属性
【定义】
typedef struct _ISP_CNR_ATTR_S {
CVI_BOOL Enable; /*Rw; Range:[0, 1]*/
ISP_OP_TYPE_E enOpType;
CVI_U8 UpdateInterval; /*Rw; Range:[1, 255]*/
CVI_BOOL MedianFltEnable; /*Rw; Range:[0, 1]*/
CVI_BOOL CnrEnable; /*Rw; Range:[0, 1]*/
CVI_BOOL CnrSatBldEnable; /*Rw; Range:[0, 1]*/
CVI_U8 SubSclSel; /*Rw; Range:[0, 1]*/
CVI_U8 CnrDebugMode; /*Rw; Range:[0, 6]*/
CVI_BOOL CnrBypass1; /*Rw; Range:[0, 1]*/
CVI_BOOL CnrBypass2; /*Rw; Range:[0, 1]*/
ISP_CNR_SCALE_FACTOR_E SubImgSclFactor;
ISP_CNR_MANUAL_ATTR_S stManual;
ISP_CNR_AUTO_ATTR_S stAuto;
} ISP_CNR_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
Enable |
模块使能开关 取值范围: [0, 1] 数据类型: CVI_BOOL |
enOpType |
工作类型 OP_TYPE_AUTO:自动模式 OP_TYPE_MANUAL:手动模式 数据类型: ISP_OP_TYPE_E |
UpdateInterval |
影响参数更新间隔,值越大画面变化越慢,效能越好。 取值范围: [1, 255] 数据类型: CVI_U8 |
MedianFltEnable |
UV通道预滤波处理使能。Enable = 1时生效。 取值范围: [0, 1] 数据类型: CVI_BOOL |
CnrEnable |
CNR 模块使能 取值范围: [0, 1] 数据类型: CVI_BOOL |
CnrSatBldEnable |
enable sat blend 取值范围: [0, 1] 数据类型: CVI_BOOL |
SubSclSel |
Selection sub-image output flow: 0: output sub image after LCA; 1: output sub image before CMF。 取值范围: [0, 1] 数据类型: CVI_U8 |
CnrDebugMode |
Register debug mode 0: no debug, normal output; 1: debug output wY, wUV, w; 2: debug output abs distU, distV,distUV; 3: debug output sat weight; 4: debug output SAT blend out; 5: debug output cnr motion; 6: debug output subimg sclupimg; 取值范围: [0, 6] 数据类型: CVI_U8 |
CnrBypass1 |
Set 1 to bypass chra(LCA) 取值范围: [0, 1] 数据类型: CVI_BOOL |
CnrBypass2 |
根据亮度差、饱和度、色差、运动状态调整CNR强度的功能使能。 取值范围: [0, 1] 数据类型: CVI_BOOL |
SubImgSclFactor |
Sub image scaling factor 数据类型: ISP_CNR_SCALE_FACTOR_E |
stManual |
手动参数 |
stAuto |
自动参数 |
【注意事项】
无
【相关数据类型及接口】
15.3.4. ISP_CNR_FILTER_MANUAL_ATTR_S¶
【说明】
定义手动CNR FILTER 参数属性
【定义】
typedef struct _ISP_CNR_FILTER_MANUAL_ATTR_S {
CVI_U8 SubImgNrFltKsize; /*Rw; Range:[0, 3]*/
CVI_U8 SubImgNrEdgeDirPN; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrEdgeDirHV; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrEdgeKsize; /*Rw; Range:[0, 1]*/
CVI_U8 SubImgNrYCRef; /*Rw; Range:[0, 31]*/
CVI_U8 SubImgNrUVCRef; /*Rw; Range:[0, 31]*/
CVI_U8 OutierThY; /*Rw; Range:[0, 7]*/
CVI_U8 OutierThUV; /*Rw; Range:[0, 7]*/
CVI_U8 YOutierDifTh; /*Rw; Range:[0, 255]*/
CVI_U8 UOutierDifTh; /*Rw; Range:[0, 255]*/
CVI_U8 VOutierDifTh; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrRefCThrYDif[3]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrRefCStrY[4]; /*Rw; Range:[0, 8]*/
CVI_U8 SubImgNrRefCThrUVDif[3]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrRefCStrUV[4]; /*Rw; Range:[0, 8]*/
CVI_U8 SubImgNrDirFltThrY[5]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrDirFltStrY[6]; /*Rw; Range:[0, 16]*/
CVI_U8 SubImgNrDirFltThrU[5]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrDirFltStrU[6]; /*Rw; Range:[0, 16]*/
CVI_U8 SubImgNrDirFltThrV[5]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrDirFltStrV[6]; /*Rw; Range:[0, 16]*/
} ISP_CNR_FILTER_MANUAL_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
SubImgNrFltKsize |
Filter size selection for Y/UV channels 0: 3x3; 1: 5x5; 2: 7x7; 3: 9x9; 取值范围: [0, 3] 数据类型: CVI_U8 |
SubImgNrEdgeDirPN |
正(负)45度方向判断阈值。值越大,越容易判断为无方向。值过大,容易造成边缘渗色问题。 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrEdgeDirHV |
水平/垂直方向判断阈值。值越大,越容易判断为无方向。值过大,容易造成边缘渗色问题。 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrEdgeKsize |
Edge kernel size selection。 0: 3x3; 1: 5x5; 取值范围: [0, 1] 数据类型: CVI_U8 |
SubImgNrYCRef |
Reference center weighting for Y channel 取值范围: [0, 31] 数据类型: CVI_U8 |
SubImgNrUVCRef |
Reference center weighting for UV channel 取值范围: [0, 31] 数据类型: CVI_U8 |
OutierThY |
Reference center outlier threshold of Y channel 取值范围: [0, 7] 数据类型: CVI_U8 |
OutierThUV |
Reference center outlier threshold of UV channel 取值范围: [0, 7] 数据类型: CVI_U8 |
YOutierDifTh |
Reference center outlier difference threshold for Y channel 取值范围: [0, 255] 数据类型: CVI_U8 |
UOutierDifTh |
Reference center outlier difference threshold for U channel 取值范围: [0, 255] 数据类型: CVI_U8 |
VOutierDifTh |
Reference center outlier difference threshold for V channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrRefCThrYDif |
Range filter threshold for reference center of Y channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrRefCStrY |
Range filter weighting for 0x0] reference center of Y channel 取值范围: [0, 8] 数据类型: CVI_U8 |
SubImgNrRefCThrUVDif |
Range filter threshold for reference center of UV channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrRefCStrUV |
Range filter weighting for 0x0] reference center of UV channel 取值范围: [0, 8] 数据类型: CVI_U8 |
SubImgNrDirFltThrY |
Filter threshold for Y channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrDirFltStrY |
Filter weighting for Y channel 取值范围: [0, 16] 数据类型: CVI_U8 |
SubImgNrDirFltThrU |
Filter threshold for U channel, 和SubImgNrDirFltStrU共同控制U通道的降噪强度 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrDirFltStrU |
Filter threshold for U channel, 和SubImgNrDirFltThrU共同控制U通道的降噪强度 取值范围: [0, 16] 数据类型: CVI_U8 |
SubImgNrDirFltThrV |
Filter threshold for V channel, 和SubImgNrDirFltStrV共同控制V通道的降噪强度 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrDirFltStrV |
Filter threshold for V channel, 和SubImgNrDirFltThrV共同控制V通道的降噪强度 取值范围: [0, 16] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.5. ISP_CNR_FILTER_AUTO_ATTR_S¶
【说明】
定义自动CNR FILTER 参数属性
【定义】
typedef struct _ISP_CNR_FILTER_AUTO_ATTR_S {
CVI_U8 SubImgNrFltKsize[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 3]*/
CVI_U8 SubImgNrEdgeDirPN[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrEdgeDirHV[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrEdgeKsize[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 1]*/
CVI_U8 SubImgNrYCRef[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 SubImgNrUVCRef[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 31]*/
CVI_U8 OutierThY[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 7]*/
CVI_U8 OutierThUV[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 7]*/
CVI_U8 YOutierDifTh[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 UOutierDifTh[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 VOutierDifTh[ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrRefCThrYDif[3][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrRefCStrY[4][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 8]*/
CVI_U8 SubImgNrRefCThrUVDif[3][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrRefCStrUV[4][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 8]*/
CVI_U8 SubImgNrDirFltThrY[5][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrDirFltStrY[6][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 16]*/
CVI_U8 SubImgNrDirFltThrU[5][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrDirFltStrU[6][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 16]*/
CVI_U8 SubImgNrDirFltThrV[5][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 255]*/
CVI_U8 SubImgNrDirFltStrV[6][ISP_AUTO_ISO_STRENGTH_NUM]; /*Rw; Range:[0, 16]*/
} ISP_CNR_FILTER_AUTO_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
SubImgNrFltKsize |
Filter size selection for Y/UV channels 0: 3x3; 1: 5x5; 2: 7x7; 3: 9x9; 取值范围: [0, 3] 数据类型: CVI_U8 |
SubImgNrEdgeDirPN |
正(负)45度方向判断阈值。值越大,越容易判断为无方向。值过大,容易造成边缘渗色问题。 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrEdgeDirHV |
水平/垂直方向判断阈值。值越大,越容易判断为无方向。值过大,容易造成边缘渗色问题。 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrEdgeKsize |
Edge kernel size selection。 0: 3x3; 1: 5x5; 取值范围: [0, 1] 数据类型: CVI_U8 |
SubImgNrYCRef |
Reference center weighting for Y channel 取值范围: [0, 31] 数据类型: CVI_U8 |
SubImgNrUVCRef |
Reference center weighting for UV channel 取值范围: [0, 31] 数据类型: CVI_U8 |
OutierThY |
Reference center outlier threshold of Y channel 取值范围: [0, 7] 数据类型: CVI_U8 |
OutierThUV |
Reference center outlier threshold of UV channel 取值范围: [0, 7] 数据类型: CVI_U8 |
YOutierDifTh |
Reference center outlier difference threshold for Y channel 取值范围: [0, 255] 数据类型: CVI_U8 |
UOutierDifTh |
Reference center outlier difference threshold for U channel 取值范围: [0, 255] 数据类型: CVI_U8 |
VOutierDifTh |
Reference center outlier difference threshold for V channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrRefCThrYDif |
Range filter threshold for reference center of Y channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrRefCStrY |
Range filter weighting for 0x0] reference center of Y channel 取值范围: [0, 8] 数据类型: CVI_U8 |
SubImgNrRefCThrUVDif |
Range filter threshold for reference center of UV channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrRefCStrUV |
Range filter weighting for 0x0] reference center of UV channel 取值范围: [0, 8] 数据类型: CVI_U8 |
SubImgNrDirFltThrY |
Filter threshold for Y channel 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrDirFltStrY |
Filter weighting for Y channel 取值范围: [0, 16] 数据类型: CVI_U8 |
SubImgNrDirFltThrU |
Filter threshold for U channel, 和SubImgNrDirFltStrU共同控制U通道的降噪强度 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrDirFltStrU |
Filter threshold for U channel, 和SubImgNrDirFltThrU共同控制U通道的降噪强度 取值范围: [0, 16] 数据类型: CVI_U8 |
SubImgNrDirFltThrV |
Filter threshold for V channel, 和SubImgNrDirFltStrV共同控制V通道的降噪强度 取值范围: [0, 255] 数据类型: CVI_U8 |
SubImgNrDirFltStrV |
Filter threshold for V channel, 和SubImgNrDirFltThrV共同控制V通道的降噪强度 取值范围: [0, 16] 数据类型: CVI_U8 |
【注意事项】
无
【相关数据类型及接口】
15.3.6. ISP_CNR_FILTER_ATTR_S¶
【说明】
定义CNR FILTER 参数属性
【定义】
typedef struct _ISP_CNR_FILTER_ATTR_S {
CVI_BOOL SubImgNrEnable; /*Rw; Range:[0, 1]*/
CVI_BOOL YNrEnable; /*Rw; Range:[0, 1]*/
CVI_BOOL EdgeDebugEnable; /*Rw; Range:[0, 1]*/
CVI_BOOL RefCenterDebugEnable; /*Rw; Range:[0, 1]*/
ISP_CNR_FILTER_MANUAL_ATTR_S stManual;
ISP_CNR_FILTER_AUTO_ATTR_S stAuto;
} ISP_CNR_FILTER_ATTR_S;
【成员】
成员名称 |
描述 |
|---|---|
SubImgNrEnable |
Set 1 to enable filter for ife2 sub image。 取值范围: [0, 1] 数据类型: CVI_BOOL |
YNrEnable |
IFE2 enable key for Y。 取值范围: [0, 1] 数据类型: CVI_BOOL |
EdgeDebugEnable |
Debug key for Edge map in IFE2。 取值范围: [0, 1] 数据类型: CVI_BOOL |
RefCenterDebugEnable |
Debug key for Ref center filter in IFE2。 取值范围: [0, 1] 数据类型: CVI_BOOL |
stManual |
手动参数 |
stAuto |
自动参数 |
【注意事项】
无
【相关数据类型及接口】