定义自动白平衡扩展属性。
typedef struct { hi_u8 tolerance; hi_u8 zone_radius; hi_u16 curve_l_limit; hi_u16 curve_r_limit; hi_bool extra_light_en; hi_isp_awb_extra_light_source_info light_info[HI_ISP_AWB_LS_NUM]; hi_isp_awb_in_out_attr in_or_out; hi_bool multi_light_source_en; hi_isp_awb_multi_ls_type multi_ls_type; hi_u16 multi_ls_scaler; hi_u16 multi_ct_bin[HI_ISP_AWB_MULTI_CT_NUM]; hi_u16 multi_ct_wt[HI_ISP_AWB_MULTI_CT_NUM]; hi_bool fine_tun_en; hi_u8 fine_tun_strength; } hi_isp_awb_attr_ex;
成员名称 |
描述 |
---|---|
tolerance |
自动白平衡调整的偏差范围,检测误差在门限范围内时,AWB不动作。 取值范围:[0x0,0xFF] |
zone_radius |
自动白平衡统计中对像素分类时用的距离范围。该值越小,AWB精度越高,但会降低 AWB算法稳定性。 取值范围:[0x0,0xFF] |
curve_l_limit |
自动白平衡色温曲线的左边界限。取值范围:[0x0,0x100] |
curve_r_limit |
自动白平衡色温曲线的右边界限。取值范围:[0x100,0xFFF] |
extra_light_en |
自动白平衡计算时是否考虑色温曲线外的独立光源点。 取值范围:
|
light_info[HI_ISP_AWB_LS_NUM] |
色温曲线外的独立光源点的信息, 最多可以添加 4 个。 #define HI_ISP_AWB_LS_NUM 4 |
in_or_out |
自动白平衡对场景做室内外判断的参数。 |
multi_light_source_en |
自动白平衡检测当前场景是否为混合光源,根据混合光源程度调整饱和度或CCM。 取值范围:
|
multi_ls_type |
混合光源调整策略选择,支持调整饱和度或CCM。 取值范围:
|
multi_ls_scaler |
混合光源下,饱和度或CCM最大调整幅度。实际调整幅度还和场景混合光源程度有关。 取值范围:[0x0, 0x100] |
multi_ct_bin[HI_ISP_AWB_MULTI_CT_NUM] |
混合光源下的色温分段参数。 取值范围:[0x0, 0xFFFF],要求为单调递增序列。 #define HI_ISP_AWB_MULTI_CT_NUM 8 |
multi_ct_wt[HI_ISP_AWB_MULTI_CT_NUM] |
混合光源下的色温权重参数。 取值范围:[0x0, 0x400] #define HI_ISP_AWB_MULTI_CT_NUM 8 |
fine_tun_en |
自动白平衡特殊色检测开关,包括肤色检测等。 取值范围:
|
fine_tun_strength |
肤色、蓝色等单色检测的强度。仅在fine_tun_en使能时有效。取值范围:[0x0, 0xFF] |
图 色温曲线的参数示意
图 混合光源场景色温权重设置示例说明(n 为色温分段点个数)
注意事项