AEC10 SA计算整理 --- YHistSA & BrightenImgSA

YHistSA

YHistClampValue=YHistLowPctlLuma- [set param/tr:lux+lux]
YHistClampValue=Max(YHistClampValue,0.0)
YHistClampValue=Min(YHistClampValue,[setparam/tr:lux+lux])
HighPctlLumaTarget=Max(YHistHighPctlLuma,[setparam/tr:lux+lux])
HighPctlLumaRemoveOffset=YHistHighPctlLuma- YHistClampValue
YHistScaleValue=HighPctlLumaTarget/HighPctlLumaRemove
YHistScaleValue=Min(YHistScaleValue,1.25)

在YHistSA部分,我们主要对图像的亮度直方图进行动态调整,以适应不同的光照条件。具体步骤如下:

  1. 计算亮度钳制值:
    YHistClampValue = YHistLowPctlLuma - [set param/tr:lux+lux]
    YHistClampValue = Max(YHistClampValue, 0.0)
    YHistClampValue = Min(YHistClampValue, [set param/tr:lux+lux])
    这里,我们根据设定的光照参数调整亮度直方图的低阈值,并确保其值在合理范围内。
  2. 确定高亮目标值:
    HighPctlLumaTarget = Max(YHistHighPctlLuma, [set param/tr:lux+lux])
    设定高亮部分的目标亮度值,确保图像的高光部分不会过曝。
  3. 计算亮度缩放比例:
    HighPctlLumaRemoveOffset = YHistHighPctlLuma - YHistClampValue
    YHistScaleValue = HighPctlLumaTarget / HighPctlLumaRemoveOffset
    YHistScaleValue = Min(YHistScaleValue, 1.25)
    通过计算高亮部分的缩放比例,调整图像的亮度分布,同时限制最大缩放比例以防止失真。

BrightenImgSA:

BrightenImgSALuma=BrightenImgPCTLLuma
BrightenImgSATarget=[setparam/tr:lux+lux]
BrightenImgSAAdjRatioBright=BrightenImgSATarget/BrightenImgSALuma
BrightenImgSAAdjRatioSat=[setparam/tr:lux+lux]/BrightenImgSatPCTLLuma
BrightenImgSAAdjRatioMin=Min(BrightenImgSAAdjRatioBright,BrightenImgSAAdjRatioSat)
BrightenImgSAAdjRatioFSATgt=BrightenImgSAAdjRatioMin*FrameSALum/FrameSATarget
BrightenImgSAAdjInc=BrightenImgSAMinRatio*((BrightenImgSAAdjRatioFSATgt-1)*[setparam/tr:lux+CtrlLuma])+1
BrightenImgSAMinRatio=Min([setparam/tr:lux+BrightenImgStatsRoughness],[setparam/tr:lux+BrightenImgFlatRatio])
BrightenImgSAAdjRatioFSATgt=(BrightenImgSAAdjRatioFSATgt>1)?BrightenImgSAAdjInc:BrightenImgSAAdjRatioFSATgt
BrightenImgSAAdjRatio.Start=[setparam/tr:lux+BrightenImgSAAdjRatioFSATgt]*FrameSATarget/FrameSALum
BrightenImgSAAdjRatio.End=256

在BrightenImgSA部分,我们专注于根据光照条件动态调整图像的亮度和饱和度,以提升视觉质量。

  1. 初始化亮度和饱和度调整比例:
    BrightenImgSALuma = BrightenImgPCTLLuma
    BrightenImgSATarget = [set param/tr:lux+lux]
    BrightenImgSAAdjRatioBright = BrightenImgSATarget / BrightenImgSALuma
    BrightenImgSAAdjRatioSat = [set param/tr:lux+lux] / BrightenImgSatPCTLLuma
    分别计算基于亮度和饱和度的调整比例。

  2. 确定最小调整比例:
    BrightenImgSAAdjRatioMin = Min(BrightenImgSAAdjRatioBright, BrightenImgSAAdjRatioSat)
    取亮度和饱和度调整比例中的较小值,作为最终的调整基准。

  3. 计算帧级别的调整目标和增量:
    BrightenImgSAAdjRatioFSATgt = BrightenImgSAAdjRatioMin * FrameSALum / FrameSATarget
    BrightenImgSAMinRatio = Min([set param/tr:lux+BrightenImgStatsRoughness], [set param/tr:lux+BrightenImgFlatRatio])
    BrightenImgSAAdjInc = BrightenImgSAMinRatio * ((BrightenImgSAAdjRatioFSATgt - 1) * [set param/tr:lux+CtrlLuma]) + 1
    根据帧级别的亮度和目标值,计算调整增量。

  4. 应用调整比例:
    BrightenImgSAAdjRatioFSATgt = (BrightenImgSAAdjRatioFSATgt > 1) ? BrightenImgSAAdjInc : BrightenImgSAAdjRatioFSATgt
    BrightenImgSAAdjRatio.Start = [set param/tr:lux+BrightenImgSAAdjRatioFSATgt] * FrameSATarget / FrameSALum
    BrightenImgSAAdjRatio.End = 256
    如果调整后的目标比例大于1,则应用调整增量;否则保持原比例。最后,设置调整比例的起始和结束值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值