AEC10 SA计算整理 --- ExtremeColorSA & SaliencySA

在图像处理中,自动曝光算法对于提升图像质量至关重要,特别是在光线变化复杂的环境下。本文将详细介绍并优化两种自动曝光算法:SaliencySA 和 ExtremeColorSA,通过调整曝光参数以适应不同的光照条件和颜色特性。

SaliencySA

SaliencySALuma=NormalizedWeightedSum(SaliencyLuma,FrameLumaBE16x16)
SaliencySATarget=[setparam/tr:lux]
SaliencySALumaWeight=[setparam/tr:lux+TriggerCtrlSaliencyValue]
SaliencySAFrameWeight=1-SaliencySALumaWeight
SaliencySAAdjRatioSaliency=SaliencySATarget/SaliencySALuma
SaliencySAAdjRatioHigh=[setparam/tr:lux]/SaliencyHighPCTLLuma
SaliencySAAdjRatioLow=[setparam/tr:lux]/SaliencyLowPCTLLuma
SaliencySAAdjRatioMin=Min(SaliencySAAdjRatioSaliency,1.0,[setparam/tr:lux+SaliencySAAdjRatioHigh])
SaliencySAAdjRatioMin=Max(SaliencySAAdjRatioSaliency*0.4,SaliencySAAdjRatioMin)
SaliencySAAdjRatioMax=Max(SaliencySAAdjRatioSaliency,[setparam/tr:lux+SaliencySAAdjRatioLow])
SaliencySAAdjRatioMax=Min(SaliencySAAdjRatioSaliency*1.5,SaliencySAAdjRatioMax)
SaliencySAAdjRatioSel=(SaliencySAAdjRatioMin*[setparam/tr:lux+SaliencySAAdjRatioSaliency])/(SaliencySAAdjRatioMax*[setparam/tr:lux+SaliencySAAdjRatioSaliency]
SaliencySAAdjRatioFSATgt=(SaliencySAAdjRatioSel*FrameSALuma)/FrameSATarget
SaliencySAAdjRatio=[setparam/tr:lux+SaliencySAAdjRatioFSATgt]*FrameSATarget/FrameSALuma

SaliencySA 算法主要基于图像的显著性(Saliency)和亮度(Luma)来调整曝光参数,以达到最佳的视觉效果。以下是该算法的详细优化步骤:

  1. 计算显著性亮度权重
    SaliencySALuma = NormalizedWeightedSum(SaliencyLuma, FrameLumaBE16x16)
    SaliencySALumaWeight = setparam[‘tr:lux’] + TriggerCtrlSaliencyValue
    SaliencySAFrameWeight = 1 - SaliencySALumaWeight
    这里,SaliencyLuma 表示图像的显著性亮度图,FrameLumaBE16x16 是图像块的亮度信息。通过调整显著性亮度的权重,可以更好地控制曝光调整的方向。
  2. 计算曝光调整比例
    SaliencySATarget = setparam[‘tr:lux’]
    SaliencySAAdjRatioSaliency = SaliencySATarget / SaliencySALuma
    SaliencySAAdjRatioHigh = setparam[‘tr:lux’] / SaliencyHighPCTLLuma
    SaliencySAAdjRatioLow = setparam[‘tr:lux’] / SaliencyLowPCTLLuma

SaliencySAAdjRatioMin = min(SaliencySAAdjRatioSaliency, 1.0, setparam[‘tr:lux’] + SaliencySAAdjRatioHigh)
SaliencySAAdjRatioMin = max(SaliencySAAdjRatioSaliency * 0.4, SaliencySAAdjRatioMin)

SaliencySAAdjRatioMax = max(SaliencySAAdjRatioSaliency, setparam[‘tr:lux’] + SaliencySAAdjRatioLow)
SaliencySAAdjRatioMax = min(SaliencySAAdjRatioSaliency * 1.5, SaliencySAAdjRatioMax)

SaliencySAAdjRatioSel = (SaliencySAAdjRatioMin * (setparam[‘tr:lux’] + SaliencySAAdjRatioSaliency)) / (SaliencySAAdjRatioMax * (setparam[‘tr:lux’] + SaliencySAAdjRatioSaliency))
SaliencySAAdjRatioFSATgt = (SaliencySAAdjRatioSel * FrameSALuma) / FrameSATarget
SaliencySAAdjRatio = (setparam[‘tr:lux’] + SaliencySAAdjRatioFSATgt) * FrameSATarget / FrameSALuma
通过计算一系列调整比例,确保曝光调整既不过度也不过低,同时考虑了图像的高亮和低亮区域。

ExtremeColorSA

ExtremeColorSALuma=FrameSALuma
ExtremeColorSATarget=ExtremeColorFinalTarget
ExtremeColorGreemZoneSum=ExtremeGreenColorZone1Ratio+ExtremeGreenColorZone2Ratio+ExtremeGreenColorZone3Ratio
ExtremeColorLargestRatio=Largest(ExtremeRedColorRatio,ExtremeColorGreemZoneSum,ExtremeBlueColorRatio,0.0)
ExtremeColorRedTargetAdj=[setparam/tr:lux+ExtremeRedColorRatio]
ExtremeColorGreenTargetAdj=[setparam/tr:lux+ExtremeColorGreenZoneSum]
ExtremeColorBlueTargetAdj=[setparam/tr:lux+ExtremeColorBlueZoneSum]
ExtremeColorSmallestTargetAdj=Smallest(ExtremeColorRedTargetAdj,ExtremeColorGreenTargetAdj,ExtremeColorBlueTargetAdj,1.0)
ExtremeColorFinalTarget=FrameSATarget*ExtremeColorSmallestTargetAdj
ExtremeColorSAAdjRatio=ExtremeColorSATarget/ExtremeColorSALuma

ExtremeColorSA 算法专注于通过调整颜色通道(红、绿、蓝)的曝光目标来改善图像的色彩表现。首先,计算了绿色区域的权重总和和最大的颜色区域比例。其次,基于各颜色区域的相对重要性,调整每个颜色通道的目标曝光值。最终,根据调整后的颜色目标和当前颜色亮度,计算出颜色曝光调整。

相关推荐

  1. AEC10 SA计算整理 --- ExtremeColorSA & SaliencySA

    2024-07-11 09:56:02       9 阅读
  2. sa-token整合oauth2

    2024-07-11 09:56:02       17 阅读
  3. Linux .a .so 整理记录

    2024-07-11 09:56:02       45 阅读
  4. 问题整理【2024-04-10

    2024-07-11 09:56:02       22 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 09:56:02       7 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 09:56:02       8 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 09:56:02       7 阅读
  4. Python语言-面向对象

    2024-07-11 09:56:02       10 阅读

热门阅读

  1. 探索 Postman API 网络图:可视化 API 交互的窗口

    2024-07-11 09:56:02       12 阅读
  2. (131)EMIF接口--->(003)基于FPGA实现EMIF接口

    2024-07-11 09:56:02       10 阅读
  3. 分析一下多方联合计算中的数据泄露场景

    2024-07-11 09:56:02       10 阅读
  4. VSCode,请打开文件始终在新标签页打开

    2024-07-11 09:56:02       10 阅读
  5. JIRA的高级搜索JIRA Query Language(JQL)详解

    2024-07-11 09:56:02       10 阅读
  6. 开源项目有哪些机遇与挑战?

    2024-07-11 09:56:02       9 阅读
  7. 多器官功能障碍综合征

    2024-07-11 09:56:02       11 阅读
  8. ABAP中预制会计凭证的BAPI使用方法

    2024-07-11 09:56:02       9 阅读
  9. 力扣题解( 最长湍流子数组)

    2024-07-11 09:56:02       10 阅读
  10. ORACLE 数据库ADG切换

    2024-07-11 09:56:02       7 阅读
  11. Memcached介绍和详解

    2024-07-11 09:56:02       10 阅读
  12. js实现打印

    2024-07-11 09:56:02       10 阅读
  13. dlib简介

    2024-07-11 09:56:02       11 阅读