29. RGBCAC¶
29.1. 功能描述¶
实现图像去紫边功能,改善图像边缘的紫边现象。
29.2. API 参考¶
CVI_ISP_SetRGBCACAttr : 设置伽玛属性参数
CVI_ISP_GetRGBCACAttr : 获取伽玛属性参数
29.2.1. CVI_ISP_SetRGBCACAttr¶
【描述】
设置伽玛属性参数
【语法】
CVI_S32 CVI_ISP_SetRGBCACAttr(VI_PIPE ViPipe, const ISP_RGBCAC_ATTR_S * pstRGBCACAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstRGBCACAttr |
伽玛属性参数 |
输入 |
【返回值】
返回值 |
描述 |
---|---|
0 |
成功。 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无。
【举例】
无。
【相关主题】
29.2.2. CVI_ISP_GetRGBCACAttr¶
【描述】
获取伽玛属性参数
【语法】
CVI_S32 CVI_ISP_GetRGBCACAttr(VI_PIPE ViPipe, ISP_RGBCAC_ATTR_S * pstRGBCACAttr);
【参数】
参数名称 |
描述 |
输入/输出 |
---|---|---|
ViPipe |
VI_PIPE 号 |
输入 |
pstRGBCACAttr |
伽玛属性参数 |
输出 |
【返回值】
返回值 |
描述 |
---|---|
0 |
成功。 |
非 0 |
失败,其值为 错误码。 |
【需求】
头文件: cvi_isp.h, cvi_comm_isp.h
库文件: libisp.so
【注意】
无。
【举例】
无。
【相关主题】
29.3. 数据类型¶
ISP_RGBCAC_MANUAL_ATTR_S : 伽玛属性手动参数
ISP_RGBCAC_AUTO_ATTR_S : 伽玛属性自动参数
ISP_RGBCAC_ATTR_S : 伽玛属性参数
29.3.1. ISP_RGBCAC_MANUAL_ATTR_S¶
【说明】
伽玛属性手动参数
【定义】
typedef struct _ISP_RGBCAC_MANUAL_ATTR_S {
CVI_U8 DePurpleStr0; /*RW; Range:[0x0, 0xFF]*/
CVI_U8 DePurpleStr1; /*RW; Range:[0x0, 0xFF]*/
CVI_U16 EdgeCoring; /*RW; Range:[0x0, 0xFFF]*/
CVI_U8 DePurpleCrStr0; /*RW; Range:[0x0, 0x10]*/
CVI_U8 DePurpleCbStr0; /*RW; Range:[0x0, 0x10]*/
CVI_U8 DePurpleCrStr1; /*RW; Range:[0x0, 0x10]*/
CVI_U8 DePurpleCbStr1; /*RW; Range:[0x0, 0x10]*/
} ISP_RGBCAC_MANUAL_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
DePurpleStr0 |
长帧去紫边强度。值越大,紫边现象越少 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
DePurpleStr1 |
短帧去紫边强度。值越大,紫边现象越少 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
EdgeCoring |
边缘侦测的噪声抑制控制 取值范围: [0x0, 0xfff] 数据类型: CVI_U16 |
DePurpleCrStr0 |
长帧 R 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
DePurpleCbStr0 |
长帧 B 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
DePurpleCrStr1 |
短帧 R 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
DePurpleCbStr1 |
短帧 B 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
【注意事项】
无。
【相关数据类型及接口】
29.3.2. ISP_RGBCAC_AUTO_ATTR_S¶
【说明】
伽玛属性自动参数
【定义】
typedef struct _ISP_RGBCAC_AUTO_ATTR_S {
CVI_U8 DePurpleStr0[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 DePurpleStr1[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U16 EdgeCoring[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 DePurpleCrStr0[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 DePurpleCbStr0[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 DePurpleCrStr1[ISP_AUTO_ISO_STRENGTH_NUM];
CVI_U8 DePurpleCbStr1[ISP_AUTO_ISO_STRENGTH_NUM];
} ISP_RGBCAC_AUTO_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
DePurpleStr0 |
长帧去紫边强度。值越大,紫边现象越少 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
DePurpleStr1 |
短帧去紫边强度。值越大,紫边现象越少 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
EdgeCoring |
边缘侦测的噪声抑制控制 取值范围: [0x0, 0xfff] 数据类型: CVI_U16 |
DePurpleCrStr0 |
长帧 R 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
DePurpleCbStr0 |
长帧 B 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
DePurpleCrStr1 |
短帧 R 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
DePurpleCbStr1 |
短帧 B 通道校正边强度 取值范围: [0x0, 0x10] 数据类型: CVI_U8 |
【注意事项】
无。
【相关数据类型及接口】
29.3.3. ISP_RGBCAC_ATTR_S¶
【说明】
伽玛属性参数
【定义】
typedef struct _ISP_RGBCAC_ATTR_S {
CVI_BOOL Enable;
ISP_OP_TYPE_E enOpType;
CVI_U16 VarThr;
CVI_U8 PurpleDetRange0;
CVI_U8 PurpleDetRange1;
CVI_U8 DePurpleStrMax0;
CVI_U8 DePurpleStrMin0;
CVI_U8 DePurpleStrMax1;
CVI_U8 DePurpleStrMin1;
CVI_U16 EdgeGlobalGain;
CVI_U8 EdgeGainIn[3];
CVI_U8 EdgeGainOut[3];
CVI_U16 LumaScale;
CVI_U16 UserDefineLuma;
CVI_U8 LumaBlendWgt;
CVI_U8 LumaBlendWgt2;
CVI_U8 LumaBlendWgt3;
CVI_U8 PurpleCb;
CVI_U8 PurpleCr;
CVI_U8 PurpleCb2;
CVI_U8 PurpleCr2;
CVI_U8 PurpleCb3;
CVI_U8 PurpleCr3;
CVI_U8 GreenCb;
CVI_U8 GreenCr;
CVI_U8 TuningMode;
ISP_RGBCAC_MANUAL_ATTR_S stManual;
ISP_RGBCAC_AUTO_ATTR_S stAuto;
} ISP_RGBCAC_ATTR_S;
【成员】
成员名称 |
描述 |
---|---|
Enable |
CAC模块使能 取值范围: [0, 1] 数据类型: CVI_BOOL |
enOpType |
工作类型 OP_TYPE_AUTO: 自动模式 OP_TYPE_MANUAL: 手动模式 |
VarThr |
边缘侦测 的阈值。值越小,越多区域被判断为边缘 取值范围: [0x0, 0x1ff] 数据类型: CVI_U16 |
PurpleDetRange0 |
长帧紫边侦测的阈值。值越大,越多区域被判断为紫边 取值范围: [0x0, 0x80] 数据类型: CVI_U8 |
PurpleDetRange1 |
短帧紫边侦测的阈值。值越大,越多区域被判断为紫边 取值范围: [0x0, 0x80] 数据类型: CVI_U8 |
DePurpleStrMax0 |
长帧去紫边强度可允许之最大值 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
DePurpleStrMin0 |
长帧去紫边强度可允许之最小值 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
DePurpleStrMax1 |
短帧去紫边强度可允许之最大值 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
DePurpleStrMin1 |
短帧去紫边强度可允许之最小值 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
EdgeGlobalGain |
边缘侦测的强度总增益 取值范围: [0x0, 0xfff] 数据类型: CVI_U16 |
EdgeGainIn[3] |
由四个数值组成的数组。定义边缘强度等级,值越大,边缘强度越强 取值范围: [0x0, 0x3] 数据类型: CVI_U8 |
EdgeGainOut[3] |
由四个数值组成的数组。定义 边缘强度增益,值越大,去紫边效果越强 取值范围: [0x0, 0x3] 数据类型: CVI_U8 |
LumaScale |
亮度控制 取值范围: [0x0, 0x7ff] 数据类型: CVI_U16 |
UserDefineLuma |
自定义亮度值 取值范围: [0x0, 0xfff] 数据类型: CVI_U16 |
LumaBlendWgt |
输入/输出 |
LumaBlendWgt2 |
亮度 2 的融合权重 取值范围: [0x0, 0x20] 数据类型: CVI_U8 |
LumaBlendWgt3 |
亮度 3 的融合权重 取值范围: [0x0, 0x20] 数据类型: CVI_U8 |
PurpleCb |
紫色在Cb domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
PurpleCr |
紫色在Cr domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
PurpleCb2 |
紫色2在Cb domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
PurpleCr2 |
紫色2在Cr domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
PurpleCb3 |
紫色3在Cb domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
PurpleCr3 |
紫色3在Cr domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
GreenCb |
绿色在Cb domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
GreenCr |
绿色在Cr domain的坐标 取值范围: [0x0, 0xff] 数据类型: CVI_U8 |
TuningMode |
输出调试方案,辅助调节参数。 1: 边缘侦测图像结果。 2: 紫边侦测图像结果 0:的 CAC图像结果。 取值范围: [0x0, 0x2] 数据类型: CVI_U8 |
stManual |
手动模式参数属性 |
stAuto |
自动模式参数属性 |
【注意事项】
无。
【相关数据类型及接口】