位置: IT常识 - 正文

保姆级高通AEC9调试指南(看完可解决80%AE相关问题)(高通 adc)

编辑:rootadmin
保姆级高通AEC9调试指南(看完可解决80%AE相关问题)

推荐整理分享保姆级高通AEC9调试指南(看完可解决80%AE相关问题)(高通 adc),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:高通aac,高通abl,高通ar,高通adrc,高通ale,高通aac,高通aac,高通aac,内容如对您有帮助,希望把文章链接给更多的朋友!

Initial Tuning

默认ISO 100相当于1倍gain,有的2倍,可自行设置。

Exposure table

Vertical Blanking Time=1/max_fps/FrameLengthLinesverticaloffset10^9 首行曝光时间=1/max_fps/FrameLengthLinesminlinecount10^9 相关参数在客户给的sensor.XML文件中有 Eg:Max fps=30 FrameLengthLines=2492 veticaloffset=6 minliencout=1 Vertical Blanking Time=1/30/2492610^9=80256 首行曝光时间=1/30/2492110^9=13408

最后一个IncremenPriority设置为Gain,其他都是Exp Time(避免极暗环境下存在拖影)

首行曝光时间得到之后 后面的index gain依次按照1/2/4/8/16/32/64进行配置 在硬件条件差别不大的情况下 曝光时间参照对比机进行 拍摄不同iso段 查看详细信息得到帧率,曝光时间=1/帧率 即可得到调试机的曝光时间(单位为:ns,1s=10^9ns)

Luma target

AEC Triger配置: 默认情况下,Chromatix工具生成两个触发点,三个区域。 测试TL84 400lux条件光源下的照度指数:lux_index_400 Trigger[0].start=lux_index_400-100 Trigger[0].end=lux_index_400-60 Trigger[1].start=lux_index_400+90 Trigger[1].end=lux_index_400+160 eg:lux_index_400=267

Trigger[0].start=lux_index_400-100=167 Trigger[0].end=lux_index_400-60=207 Trigger[1].start=lux_index_400+90=357 Trigger[1].end=lux_index_400+160=427

luma Target:55-50 52-45 40-25

Bright & Dark Regions

(这个地方一般不用)

根据设置的bright和dark region的范围,对bright和dark区域,要么做一个丢弃,要么做一个权重的重新分配。 一般camera HAL会下发center weighted的配置,tuning参数无法控制。 一张图片会划分成很多个像素格,在这张图片中找到对应的像素点所在的像素格,和它的weight表去做一个乘积,然后得到最终的一个权重,来调整它的亮度

Histogram(重点)

在初始调试时,首先 ADRC 和dark boost的关闭的。 尤其是前摄,可以不开ADRC,直接用histogram条件亮度。 Dark boost用ISP dgain补的亮度,噪声会很多,去噪会去不掉。

ISP gain 可以根据AE table设置结果,平台来动态计算ISP GAIN的值。

主要调试下面这6个值。

Safe target ——used to control the luma of main part of image.

1.Safe target的计算: (1)先计算 Bright_low_target ,Bright_high_target ,Dark_low_target,Dark_high_target

(2)按照大小排序,取中间两个值作为low_target,hight_target

(3)按照大小排序low_target,hight_target,Reference_Target,取中间值作为safe_target

(4)排序MinTargetAdjRatioreference_Target,MaxTargetAdjRatioreference_Target 和(3)中所得的safe_Target进行比较,选择中间的数值作为最终的safe_Target

2.safe_target调试思路:

Safe target控制图片主要亮度,target越大,画面越亮,但是会受到MaxTargetAdjRatio[1,2],MinTargetAdjRatio[0.6,1]的限制。 AdjRatio=target/luma,AdjRatio会被限制在MaxTargetAdjRatio,MinTargetAdjRatio之间

目的:画面整体变亮

则要Safe target变大,倒过来回退到1中的(4)

因为MinTargetAdjRatio<MaxTargetAdjRatio, 所以有以下三种情况: Safe_target<MinTargetAdjRatioreference_Target<MaxTargetAdjRatioreference_Target MinTargetAdjRatioreference_Target<MaxTargetAdjRatioreference_Target<Safe_target MinTargetAdjRatioreference_Target<Safe_target<MaxTargetAdjRatioreference_Target

最简单直接的方法就是增加中间的那个值: MinTargetAdjRatioreference_Target, MaxTargetAdjRatioreference_Target, Safe_target

对于前面两种情况,可增加MinTargetAdjRatio,MaxTargetAdjRatio(reference_Target在图片信息中无法修改) 最后这种情况需要回退到1中的(3),根据low_target,safe_target,hight_target的排序中间值,增加对应的 hist_sat_low_ref,hist_sat_high_ref,hist_dark_low_ref,hist_dark_high_ref从而达到增加final_safe_Target的目的。

以上都是基于你调试的中间值没有超过右边的最大值 例子:Safe_target<MinTargetAdjRatioreference_Target<MaxTargetAdjRatioreference_Target 当你增加MinTargetAdjRatioreference_Target的时候,会不会有超过MaxTargetAdjRatioreference_Target的情况发生呢? 答案是必然的

当原本的中间值超过右边的值的时候,右边的值即为最终的safe_target,这就是我们接下来要讲的间接调试。 思路:对于1(4)中的排序,可以增加左边最小值直到最小值超过中间值,从而互换了最小值和中间值的位置 例子:Safe_target<MinTargetAdjRatioreference_Target<MaxTargetAdjRatioreference_Target 这个时候我们增加Safe_target,直到safe_target大于MinTargetAdjRatioreference_Target, 这个时候的排序是:MinTargetAdjRatioreference_Target<Safe_target<MaxTargetAdjRatioreference_Target 之前的final_safe_target==MinTargetAdjRatioreference_Target 现在final_safe_target==Safe_target 而Safe_target>MinTargetAdjRatio*reference_Target

所以达到了通过增加safe_target,从而增加整体亮度的目的!

3 总结: 根据1(4)中的公式: 例子:Safe_target<MinTargetAdjRatioreference_Target<MaxTargetAdjRatioreference_Target 要增加亮度: (1)可以增加中间值(中间值不超过右边最大值的情况下) (2)增加中间值超过右边最大值(中间值超过右边最大值,从而导致原来的右边最大值取代中间值) (3)增加左边最小值超过中间值(左边最小值增加后取代原来的中间值) 最终目的都是增加final_safe_target 降低亮度同理!

Short target ——used to suppress the luma of high bright area of image, and calculate sensor exposure info.Smaller target, less the over-exposure area.

1.Short Target的计算:

short target=safe target

If (adrc_enable==0)

short target==safe target

Else if

Bright_low_Target <Bright_high_Target Short Target=min(Bright_high_Target ,Safe_Target) Else if Bright_low_Target <Bright_high_Target Bright_low_Target=Bright_high_Target Short Target=min(Bright_low_Target ,Safe_Target)

Adrcgain1=safe_Target/Max(1,short_Target) Adrcgain=Min(adrcgain1,Maxdrcgain) Short_Target=safe_target/Max(1,adrcgain)

2.调试思路:

Short Target主要控制图片中的高光区域,高光压制可以通过降低short target来操作。

目的:高光压制,即降低short target

(1)adrc_enable==0时 short target=safe target 可以通过降低safe target的方法来,具体可以参考safe target上面

(2)adrc_enable!==0

Adrcgain1=safe_Target/Max(1,short_Target) Adrcgain=Min(adrcgain1,Maxdrcgain) Short_Target=safe_target/Max(1,adrcgain)

降低safe_target或者提高adrcgain

Bright_high_Target Bright_low_Target Safe_Target 选择最小的值作为short_Target

可根据公式直接把最小值调小,当然也可以间接调试另外两个大的,使得比最小值更小(影响较大,不建议间接)

减小hist_sat_low_ref或者hist_sat_high_ref 再然后就是减小safe target了 (看实际情况)

Long target —— used to control dark boost. Bigger target, less too-dark area.

1.Long Target的计算:

Long_Target=safe_Target

if(Adrc_enable=1&&Dark_boost_enable=1&&Dark_low_target>safe_target&&Adrc_gain<Maxdrcgain)

Long_Target=safe_Target

Else

Darkboost=Min(MaxDarkboostgain,Dark_low_Target/safe_target,MaxDRCgain/adrcgain)

Long target=darkboost*safe_target

2.调试思路: Long target主要控制图片中的暗部,long target越大,暗处提升越高,作用就是提升暗部。

目的:暗处提升,即增加long target

保姆级高通AEC9调试指南(看完可解决80%AE相关问题)(高通 adc)

(1)直接提升safe target (2)提升darkboost 因为 Darkboost=Min(MaxDarkboostgain,Dark_low_Target/safe_target,MaxDRCgain/adrcgain) 可以根据实际情况DMaxDarkboostgain提高, 或者根据Dark_low_Target/safe_target提高Dark_low_Target,降低safe_target, 或者根据MaxDRCgain/adrcgain提高MaxDRCgain,降低adrcgain

取决于最小值

Short_taget,safe_target,long_target之间的关系

DRC Gain=Safe/Short(Max DRC Gain 可以控制亮度比例 DRC 越大,short越小,高光压制越强烈,画面越暗) Dark boost Gain=Long/Safe Sensitivity Ratio=Long/Short

Extreme color

Enable Extrm Clr:开关 Thres Luma low:如果Exstrme color区域的亮度小于该值,则该区域是Extrme Color的权重较小。 Thres Luma Hight:如果Exstrme color区域的亮度大于该值,则该区域是Extrme Color的权重较小。

Color stats pct low:每帧图像中极端颜色的最小百分比 Color stats pct hight:每帧图像中极端颜色的最大百分比

Adj_ratio:

极端色改亮度,可以考虑打开extreme color。在主观测试的时候,可以在实验室搭建红绿蓝三色背景布来调整。

每个lux trigger范围下,都对应三个channel Adj ratio,R/G/B。值越小,压制效果越明显 比如,拍摄绿植,G分量很多,就可以通过减小G分量,来改变它的亮度。还是通过改变target的方式来调整的。

若是extreme color被触发了,则target adjustment中三个参数的值不会都是1。会取个最小值做最终权重的计算。

Lux-based safe target:设置的luma target。

Color-based safe target: 若是触发了extreme color 计算,则得出的基于histogram计算和extreme color计算得出的target。

Three items in extreme percentages and target adjustments: 0: red, 1: green, 2: blue. Final adjust ratio = min(adjust[0], adjust[1], adjust[2]). Color-based safe target = lux-based safe target * final adjust ratio = 52 * 0.9981506 = 51.90384(base on this example exif info). History-base target: 通过histogram计算出来的target。

Final target: 基于按照luma target,histogram target,Color-based safe target顺序,最后算出来的target。

Three items, 0: short, 1: long, 2: safe. Final targets[i] = histogram-based targets[i] * (color-based safe target / lux-based safe target), i = 0/1/2.

Flash

1.Flash一般要修改曝光表,若是对预闪要求很高的情况下。 2.Flash target,若是打开的话,在打开flash打开的情况下,就不会去调luma target,而是调用flash target。

3.smart flash:3A > AEC > Flash > Flash Mtr > Smart Flash,可以用来调整闪光灯过曝。

Smart_flash_est_strength: 用于控制 AEC ROI 估算将在多大程度上对焦前景物体,值越大越关注前景。

左边smart flash0 右边smart flash10

Sat_prevention_Strength:值越大,越防止过曝

4.FD flash :在开着闪光灯,并且有人脸的时候,会针对人脸重新做个调整。

enableFDFlash:FD闪光灯开关 LED Face Weight:人脸权重 FD Flash FrameCount : 如果为使 FD 在预闪光期间运行而提供了额外 延迟,调整此参数可控制帧增量大小。需考虑 FD 进程在当前平台上的性能以及扩展预闪光 序列对用户体验的影响程度。

FD Flash LumaTarget: 增大/减小亮度目标可分别使人脸变亮/变暗。

5.Flash lux trigger,闪光灯触发条件,满足条件才会打闪,否则不会打闪。

6.CCT Tables,[0]:预闪,[1]:主闪。针对预闪和主闪去改电流值,加大的话,会增加功耗。

Face

Enable Face ROI:启用人脸区域 Enable lux face target一般不打开,不打开的情况下,主要调试Face weight ,Face size。

Face Size:人脸区域大小范围 size越大,人脸权重越大,越亮

左边size0.2-0.3 右边size0.8-0.9

Face Weight:权重越大,画面越亮。

Enable lux face target一般不打开,打开了之后,face会依据lux face target进行划分。 也就是会根据lux index 区间调试ace luma target, Face Weight,Face Size,

Lux Face luma Target: Enable lux face target打开之后,根据lux face进行triger,face luma target设置,

Face luma weight lux index trigger:根据lux face进行trigger,weight设置

Face size weight lux index trigger:根据lux face进行trigger,size设置

专门针对逆光场景: Backlit Weight Adj Settings:start越大 画面越亮;Thres Back Lit Luma Ratio:逆光场景调整比率,越大越亮

在拍摄视频的时候,忽然遇到人脸,但是很快又灭了,导致人脸会有个震荡。这个时候可以把stat update delay time Enter 加大一些。让人脸保持的时间长一些。

GTM(global tone mapping)

GTM会影响全局的值。GTM一般不动,影响比较大。主要就是调试下面两个框

LTM(local tone mapping)

LTM也是分为室内,室外,暗处

LTM Strength: LTM 强度,不建议开大,开大的话,副作用很大。 可能会有闪烁,色泽溢出,来回跳变。所以这块强度不建议太大。 Lowlight情况下,开的很大的话,会引起红噪问题。

Dark Boost:提升暗处细节。

Bright Suppress: 抑制高亮,但是通常室外的高亮通过LTM的bright suppress,抑制的力度是很小的。还是要通过ADRC去调试。

点击region data,Lce Strength可以用来调节黑色字体的对比度。 其他参数基本上是不动的。 LTM需要在histogram调试完毕之后,再调试。

TMC

只有当historgram 调试的差不多时候,才会去调试TMC。

HDR:

HDR点检:需要关闭AE高级模块以及关闭 LTM img Process 。如果HDR出问题,首先查看HDR dump,若输入图没有问题,输出图合成有问题,转给算法分析。

HDR合成算法:通过EV- EV0 EV+的顺序合成,用EV-帧压制高光,EV+帧提亮暗处,达成正常的曝光。

参数EVvalue,EV table。 备注:

1.EV table不需要根据stepsPerEV和minEVValue去计算,保留默认参数即可。

6 -2 2

0.25 0.2806 0.315 0.3536 0.3969 0.4454 0.5 0.5612 0.6299 0.7071 0.7937 0.8909 1 1.1225 1.2599 1.4142 1.5874 1.7818 2 2.2449 2.5198 2.8284 3.1748 3.5636 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

2.EV table需要根据stepsPerEV和minEVValue去计算,计算公式如下:

比如stepsPerEV为6,minEVValue为-4,maxEVValue为4,则EV范围为[EV-24,EV+24] EVCompTableElements[0]=2(EV-24/6)=2(-24/6)=0.0625。 EVCompTableElements[48]= 2^(24/6)=16 如果EVCompTableElements 的值实际不匹配,会出现HDR拍照完成后预览整体画面暗下来。

ADRC

ADRC可防止图像背景过度曝光,而不会导致整个图像变暗。 使用100%GTM可提升对比度,但是导致褪色,使用100%LTM可导致部分区域对比度下降但色彩效果更佳。 一般GTM 2,LTM 8

边缘增强可增强边界局部对比度,从而增强图像的清晰度,CPP硬件中的ASF模块使用高通滤波器增强边缘,平滑处理可应用到非纹理区域来抑制噪声。 ASF逻辑模块包含新的ASF结构,其中包括用于检测边缘和实现锐化的独立组件ASF模块使用基于边缘定向的锐化,由四个边缘检测器、四个定向锐化滤波器以及一个对称锐化滤波器,边缘定向结果决定使用哪个锐化滤波。

本文链接地址:https://www.jiuchutong.com/zhishi/292978.html 转载请保留说明!

上一篇:前端数据加密的几种方式(前端数据加密的三种方式)

下一篇:被北极光映衬出轮廓的因努伊特石堆,加拿大西北地区 (© Mark Duffy/Alamy)(北极光的征兆)

  •  最实用的网络推广四种方法(最实用的网络安全技术)

    最实用的网络推广四种方法(最实用的网络安全技术)

  • 微信积分怎么开通(微信积分怎么开通积分功能)

    微信积分怎么开通(微信积分怎么开通积分功能)

  • 怎么清理手机垃圾广告(怎么清理手机垃圾)(怎么清理手机垃圾免费)

    怎么清理手机垃圾广告(怎么清理手机垃圾)(怎么清理手机垃圾免费)

  • 淘宝怎么取消分享淘友圈(淘宝怎么取消分期付款)

    淘宝怎么取消分享淘友圈(淘宝怎么取消分期付款)

  • 无法访问指定设备路径或文件怎么回事(无法访问指定设备)

    无法访问指定设备路径或文件怎么回事(无法访问指定设备)

  • ipadpro充电口(ipadpro充电口是什么接口)

    ipadpro充电口(ipadpro充电口是什么接口)

  • 怎么看内屏有没有被换(怎么知道内屏有没有摔坏)

    怎么看内屏有没有被换(怎么知道内屏有没有摔坏)

  • odotrip按键有什么用(od键在哪里)

    odotrip按键有什么用(od键在哪里)

  • hdmicec是什么意思(hdmi cable是什么意思)

    hdmicec是什么意思(hdmi cable是什么意思)

  • 微信换头像后对方多久显示(微信换头像后对方不点头像也能看见换头像了吗)

    微信换头像后对方多久显示(微信换头像后对方不点头像也能看见换头像了吗)

  • 微信版本太低无法注册和升级(微信版本太低无法登陆该如何解决)

    微信版本太低无法注册和升级(微信版本太低无法登陆该如何解决)

  • 鼠标拖拽不灵敏怎么办(鼠标拖动不好用)

    鼠标拖拽不灵敏怎么办(鼠标拖动不好用)

  • 笔记本开强冷有危害吗(笔记本风扇强冷)

    笔记本开强冷有危害吗(笔记本风扇强冷)

  • 被拉黑名单能发短信吗(拉黑名单能发信息吗)

    被拉黑名单能发短信吗(拉黑名单能发信息吗)

  • 怎么开启软件权限(软件权限怎么开)

    怎么开启软件权限(软件权限怎么开)

  • 鼠标上的按键分别有什么功能(鼠标按键分类)

    鼠标上的按键分别有什么功能(鼠标按键分类)

  • ipad防误触在哪里设置(ipad防误触在哪里关闭)

    ipad防误触在哪里设置(ipad防误触在哪里关闭)

  • 安卓手机怎么屏幕录制(安卓手机怎么屏蔽短信)

    安卓手机怎么屏幕录制(安卓手机怎么屏蔽短信)

  • 淘宝怎么提醒卖家补货(淘宝怎么设置提醒预售)

    淘宝怎么提醒卖家补货(淘宝怎么设置提醒预售)

  • oppoa9有指示灯吗(oppoa93有没有指示灯)

    oppoa9有指示灯吗(oppoa93有没有指示灯)

  • vivo呼吸灯在哪里设置(vivo呼吸灯怎么打开)

    vivo呼吸灯在哪里设置(vivo呼吸灯怎么打开)

  • vivo手机流量设置在哪里(vivo手机流量怎么设置)

    vivo手机流量设置在哪里(vivo手机流量怎么设置)

  • 监控不在线怎么解决(监控不在线怎么弄)

    监控不在线怎么解决(监控不在线怎么弄)

  • 笔记本音频服务未运行(笔记本音频服务器未运行是怎么回事)

    笔记本音频服务未运行(笔记本音频服务器未运行是怎么回事)

  • 电脑卡了怎么重启(电脑卡了怎么重启快捷键)

    电脑卡了怎么重启(电脑卡了怎么重启快捷键)

  • 在vue3+vite项目下按需引入vant报错Failed to resolve import解决方案(vue3 provide inject)

    在vue3+vite项目下按需引入vant报错Failed to resolve import解决方案(vue3 provide inject)

  • 高手养成计划基础篇-Linux第一季(高手成长礼包)

    高手养成计划基础篇-Linux第一季(高手成长礼包)

  • next在python中返回迭代器(python的next())

    next在python中返回迭代器(python的next())

  • 离职补偿的扣税比例
  • 简易计税征收率是多少
  • 城建税和教育费附加怎么写分录
  • 经销商返点方案范文
  • 本期盈余转入累计盈余下面什么科目
  • 三栏式明细账适用于银行存款吗
  • 生产领用周转材料
  • 房地产按揭是什么意思
  • 法人章和财务章谁保管
  • 税盘减免主表不显示减免怎么填
  • 银行入息是入几个月的
  • 产品样品送样流程
  • 红冲后的发票税可以办退税吗
  • 抵款车辆低价卖给职工账务处理:
  • 收到费用报销发票怎么做
  • 产品成本核算需要经过哪些程序
  • 退还增值税留抵税额是什么政策
  • 存在弃置费用的固定资产有哪些
  • 企业所得税年报补报
  • 当月取得的进项必须当月勾选吗
  • 增值税普通发票和专用发票有什么区别
  • 收到技术服务费计入什么科目
  • 退休人员返聘工资怎么缴税
  • 固定资产抵扣进项
  • 附加税包括哪些税种2021年
  • 事业单位 会计
  • 鸿蒙壁纸怎么设置滚动
  • 公司工会需要单独做账么
  • 怎么认定是否为党员
  • PHP:xml_get_current_line_number()的用法_XML解析器函数
  • 免抵退税如何进账
  • ErrorCaptureStackTrace(err); Error [ERR_MODULE_NOT_FOUND]: Cannot find module
  • 调制解调器的作用包括
  • 苹果发布macOS13.3预览版
  • 发票开错抬头怎么进行税务处理?
  • 框架的弊端和作用
  • 企业一次性收取租金如何缴纳增值税
  • web前端初级知识点
  • el-upload上传文件必传校验
  • linuxless命令查看文件
  • mzip命令 控制磁盘驱动器
  • 异地工程预缴税款时间
  • 税前扣除 发票
  • 网上学电脑哪个软件好
  • mongodb修改命令
  • 房地产土地使用权计入存货吗
  • sql server 2008 r2数据库备份
  • 上年度企业所得税调整需要调账吗
  • 外单位替本单位缴纳社保
  • 先征后退增值税是否征收企业所得税
  • 单位购买公文包合法吗
  • 专项应付款转入资本公积的规定
  • 按季度报税怎么处理
  • 费用本期发生额怎么算
  • 商品销售企业成本包括
  • 汇算清缴退款如何做账
  • 依法建账的法是指
  • 公司建立初期做账
  • 中小企业做账
  • 数据库优化的作用是什么?
  • mysql 5.6 从陌生到熟练之_数据库备份恢复的实现方法
  • linux安装linux
  • rhel7.4安装
  • linux查看可执行命令
  • dcs是什么文件
  • windows端口占用怎么关闭
  • WinXP巧用Netsh工具快速填写IP参数
  • linux操作系统配置网络
  • python计算ndvi
  • python模拟reversed功能
  • cocos2dx 3.1 cpp版本转lua版本 mac
  • js定义函数的几种方法
  • javascript 基础
  • 输出中断
  • javascript gui
  • java教程 视
  • 江苏高速通行费标准
  • 在本地买车怎么上外地牌照
  • 小规模纳税人达到一般纳税人标准
  • 内蒙古国税网上办税厅
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设