跳到主要内容

ISP 主观效果调试

整体调图思路介绍

  • 进行主观效果调试前,确保已完成客观效果调试;如使用的Sensor没有参考的效果文件,可使用同Sensor原厂的效果配置作为初版效果

  • 图像效果调试应基本遵循亮度 -> 对比度 -> 色彩 -> 清晰度的调试顺序,调试场景应包含白天户外、室内、低照度等多种场景,确保覆盖所有照度场景

  • 亮度是图像效果的基础,当增益一定的情况下,曝光时间越长,能使得Sensor接收到更多细节,但曝光时间变长,同时也容易导致运动拖影、亮区过曝等副作用,因此曝光调试应尽量对齐竞品,对比度在一定程度上会影响亮度调试时的判断,因此建议调试亮度时可以先关闭对比度模块将过曝区域调到与竞品对齐

  • 对比度影响整体图像感官并在一定程度上会影响细节清晰度,适度调节对比度使图像动态范围更佳,并能提升细节的局部对比度。

  • 色彩分为白平衡和颜色,白平衡作用于全局,从效果上是整体图像偏色,而颜色作用于局部,从效果上是某种颜色与真实颜色的偏差。两者搭配使用,能让色彩表现更佳。

  • 清晰度分为去噪和锐化,如果噪声抹除过多,会导致细节在后期的锐化无法凸显出来,如果锐化强度过低,也会导致图像经过编码以后无法展现出来,因此当遇到清晰度问题时,先需要确认是哪里导致的问题,才能从根源解决。

  • 推荐使用在线调试,能确保调试效果与应用最终展示效果一致

曝光基础调试思路

模块参数

与曝光相关的模块如下

AE参数介绍1

AE参数介绍2

调试思路

如何提高或降低亮度值

Step1:调试AE前,先确定好曝光表

曝光表代表了ISP的曝光索引,记录了最小曝光最小增益到最大曝光最大增益的索引值,AE根据当前场景计算出当前曝光增益下的亮度值与我们的预期亮度进行对比,如果偏暗,就向上索引曝光表,提高曝光增益,如果偏亮,就向下索引曝光表,降低曝光增益

名称说明
Min Exp代表当前行的最小曝光值,22000代表1/22000秒
Max Exp代表当前行的最大曝光值,20代表1/20秒
Min Gain代表当前行的最小增益值,256代表1倍增益
Max Gain代表当前行的最大增益值

AE参数介绍3

下面举例说明:

  • 按照上图的曝光表,如果当前画面曝光值处于1/30秒,1倍增益的情况下,画面亮度偏暗
  • 这个时候AE会按照第一行索引,继续提高曝光直到1/20秒,1倍增益,如果这时候的画面仍然偏暗
  • AE就开始转到第二行,开始提高增益值,当提升到1/20秒,5倍增益(1280)后,画面亮度与期望亮度一致

Step2: 调整Dynamic Tuning中的AEAE通常是根据Lum联动,先根据当前环境下的日志确认当前跑的Lum idx,如下图所示,打开loglum_idx为177(6.08X),对应Dynamic Tuning中的AE中的第6~7档参数

AE参数介绍4

Step3: 如果希望将亮度降低,降低对应档位的Target

AE参数介绍5

AE参数修改示例1

如何优化暗部偏暗死黑

Step1:先关闭GTM、DRC这两个对比度相关模块,确认是否这里导致的暗部偏暗,如果排查是这里导致,那么参考下一章对比度模块继续调试优化
Step2:与对比机对比过曝区域,如果我们的过曝区域比对比机的大,那么可以适当降低对应档位的Target
Step3:如果暗部仍然不够亮,可以适当提高PLTM强度来提高暗部亮度解决,请参考下一章对比度模块继续调试优化

如何排查亮度闪烁问题

Step1:先关闭GTM、DRC、PLTM这三个对比度相关模块,确认是否还有闪烁,如果没有闪烁,请联系FAE确认
Step2:关闭AE改成手动曝光,确认是否还存在闪烁
Step3:如果确认是AE模块导致闪烁,可先通过调整Frames Delay尝试改善,找Sensor原厂确认曝光增益的延迟生效帧数,并填写进去
Step4:调整Dynamic Tuning中的AE 对应档位的Speed、Tolerance,使得收敛速度变慢,AE容忍度变高
Step5:检查曝光表是否有问题,AE target设置是否平滑
Step6:检查 Sensor 驱动的 HTS、VTS 和 PCLK 的值是否正确
Step7:检查曝光函数是否使用 Sensor 的 group hold/group write 功能。如果 Sensor 支持,一定要使用

注意事项

  • 曝光表设置务必要准守每行只调整曝光或增益的其中一个,且上一行的曝光增益最大值是下一行的曝光增益最小值
  • 调试AE target值后无变化,可以将AE重新开关,使AE能正常收敛到最佳状态

对比度基础调试思路

模块参数

与对比度相关的模块如下

GTM参数介绍1

GTM参数介绍2

Pltm参数介绍1

Pltm参数介绍2

调试思路

如何提高画面对比度

GTM Type 5 为例,

Step1:关闭PLTM,确认是否PLTM强度太大导致画面对比度不够,如果是PLTM导致,那么可以适当降低PLTM强度
Step2:如果不是PLTM影响,将Dynamic Tuning中的GTM对应档位的Gain、EQ Ratio值写大,可提升画面对比度

修改对比度示例1

修改对比度示例2

Step3:如果认为GTM将亮度上拉导致部分区域过曝,可以降低Black、White,使亮部上拉强度降低

修改对比度示例3

修改对比度示例4

如何提升暗部亮度

Step1:关闭GTM、DRC模块,确认是否GTM模块将暗部压暗
Step2:与对比机对比过曝区域,如果对比机的过曝区域比我们的大,那么可以适当提高对应档位的AE Target值,提高曝光增益
Step3:如果确认上述原因无法改善暗部亮度,先通过Log确认当前环境下的Pltm强度,如果当前Pltm强度小于Max Stren Clip,那么可以通过提高Auto Stren来提高暗部亮度

修改对比度示例5

修改对比度示例6

修改对比度示例7

Step4:如果当前的Pltm强度等于Max Stren Clip,那么需要将Max Stren Clip提高来放开对PLTM强度的限制

修改对比度示例8

注意事项

  • GTM Type建议设置为4/5,其余的不建议使用,设置为4的话,需要占用一路Vipp节点
  • pltm强度不建议开太强,画面提亮太多易导致噪声偏大,画面对比度变低

色彩基础调试思路介绍

模块参数

与颜色相关的模块如下:

AWB为白平衡模块,作用于全局,主要作用是让白色还原为白色

awb参数介绍1

awb参数介绍2

CEM为颜色模块,作用于HSV,可单独修改某个颜色的色调、饱和度、亮度,通常可用于提高绿植饱和度、降低人像肤色饱和度等

cem参数介绍1

cem参数介绍2

cem参数介绍3

cem参数介绍4

调试思路

如何排查偏色问题

Step1:确保当前镜头搭配Sensor已完成AWB标定,Dynamic Tuning中的AWB模块参数正常,建议按照256设置,待白平衡正常后再调整偏好色。
Step2:打开log,检查awb log是否正常,如下图Outlier Light num为339,说明有339个落点块未被统计到

色彩调试示例1

Step3:打开3A Stat后,点击dump,检查当前场景的落点信息

色彩调试示例2

Step4:如落点基本未落入光源框中,需要手动移动光源框到大部分落点所在区域(或新增光源框框柱对应落点)

色彩调试示例3

色彩调试示例4

Step5:如果落点基本能落入光源框中,仍然有偏色现象,关闭MSC/LSC模块,确认是否MSC/LSC模块对各通道的补偿差异导致色彩异常,如是,请重新校准MSC

Step6:关闭CEM模块,确认CEM曲线是否对低饱和度提升过大导致色彩异常,如关闭CEM后,整体色彩基本正常但整体饱和度偏低

Step7:按照下图方式调整CEM曲线解决,如果是刚开始调试,CEM曲线建议先Reset All并在修改后Save曲线(曲线不一定完全按照下图设置,需根据实际场景在合适的位置做饱和度下拉)

色彩调试示例6

色彩调试示例7

如何提升整体饱和度

Step1:调整Dynamic Tuning中的CEM,将对应档位的参数提高,即可提高整体饱和度

饱和度调试示例1

饱和度调试示例2

如何提升绿色饱和度

Step1:确认整体饱和度是否与竞品接近,如果整理饱和度偏低,可以先提高Dynamic Tuning中的CEM的饱和度值
Step2:如果只是绿色饱和度偏低,可通过调整CEM曲线来优化,如果是刚开始调试,CEM曲线建议先Reset All并在修改后Save曲线

饱和度调试示例3

饱和度调试示例4

如何优化肤色问题

在初步完成标定及主观调试后,由于CCM并无法将每种色彩完全还原准确,这些差异经过了CEM色彩增强后,会比较明显,比如肤色。
肤色会存在的问题主要有肤色过重(饱和度偏高)、肤色偏红、肤色偏黄绿等,针对此类问题,可参考下面优化步骤进行修改。

Step1:与竞品对齐肤色饱和度,如果整体饱和度偏高,先降低Dynamic Tuning中的CEM的饱和度值,如果降低后肤色仍然偏重,通过调整cem曲线来改善

Step2:人脸饱和度大致可按照下图曲线进行设置,如果肤色饱和度偏低,那么中间这条曲线可往回拉

人脸调试示例1

Step3:修改完人脸饱和度后,如果人脸有偏黄绿的问题,可调整肤色色调,使其往红色方向偏移

人脸调试示例2

如何优化暗部偏色

Step1:关闭PLTM模块,检查目标区域是否有明显偏色,如果并非PLTM拉亮导致暗部偏色,那么建议可以通过CEM模块,降低暗部饱和度的方式进行抑制

暗部偏色示例1

Step2PLTM拉升暗部亮度时,同时也会放大暗部的色噪,如果确认是PLTM导致,先关闭PLTM后,检查暗部区域亮度均值,估算DSC的亮度阈值范围,如本图的暗部亮度均值为28(8bit)
Step3:由于DSC亮度范围为12bit,所以换算后亮度值为28*16=448,那么可以将亮度阈值定在448左右,调试时适当偏移
Step4:将亮度的低阈值定在466,那么图像中亮度小于466的区域暗部饱和度抑制程度最大,处于466-768范围内抑制程度逐渐衰减,大于768的区域不受抑制,并适当调整Ratio直到调整前后抑制效果明显,可以较好地改善偏色现象

暗部偏色示例2

暗部偏色示例3

如何修改白平衡统计窗口大小

针对行车类产品或户外摄像头设备,可能会存在上半部分蓝天区域被误纳入白平衡统计,导致白平衡异常,画面偏黄,针对此类问题,可以通过修改白平衡统计窗口大小,将白平衡统计改为只统计下半部分图像来优化此类问题
统计窗口是将全图坐标归一化到[-1000,1000],那么如果想让awb只计算画面的下半部分,可以这样修改,使白平衡只针对画面下半部分计算。

isp_gen->awb_settings.awb_coor.y1 = 0;

修改白平衡统计窗口示例1

修改白平衡统计窗口示例2

如何优化混淆色

为什么会出现白平衡混淆色?
由于当前主流的白平衡算法都是使用灰块统计的方式,有部分特殊场景(如蓝天、肤色、绿植、黄土地等),容易被判断为灰块进行收白,从而导致白平衡异常
通常混淆色会导致的颜色异常包含有:
蓝天 - 大面积蓝天会被判定为高色温,导致蓝天收白,导致白平衡严重偏黄
肤色 - 大面积肤色会被判定为中色温,在室内正常日光灯下会导致轻微偏蓝
绿植 - 大面积绿植如果落入统计框,会导致白平衡偏紫
黄土地 - 大面积黄土地会被判定为低色温,导致图像偏蓝

如何优化白平衡混淆色?
Step1:降低对应光源框的range,通常混淆色与我们标定的色温标准落点会有一定偏差,降低range,可以一定程度上将这些混淆色剔除,避免纳入白平衡收白的落点中
Step2:如果是大面积绿植导致偏色,还可以通过调整Green Zone来优化,此值越小,绿植对白平衡的影响会降低,但如果白平衡标定数据不够准确或此值写的太小,可能会导致图像偏绿。

白平衡混淆色调试1

Step3:除上述的修改方案外,如果检查awb落点落入了多个色温下,可以将混淆色对应的色温的权重写小,来减小混淆色对整体白平衡的影响
Step4:如果是大面积蓝天场景导致偏色,还可以修改白平衡统计窗口,将白平衡统计改为只统计下半部分图像来优化

注意事项

  • CEM曲线修改后请保存曲线,避免后面关闭工具后加载参数无法查看
  • CEM曲线修改要相对平滑,避免色彩过渡不均匀

清晰度基础调试思路

模块参数

与清晰度相关的模块如下:

去噪参数

DPC模块用于去除Sensor坏点,去坏点强度太强容易影响清晰度,需要均衡调试

DPC参数介绍

Denoise模块作用于空域去噪,强度过大易导致清晰度变差

Denoise参数介绍1

Denoise参数介绍2

TDNF模块作用于时域去噪,强度过大易导致拖影问题

TDNF参数介绍1

TDNF参数介绍2

TDNF参数介绍3

锐化参数

Sharpness模块用于提升图像锐化强度,增强细节体现,锐化阈值及强度需要把控好,避免黑白边过强或锐出噪声等问题(Encpp-Sharp参数与Sharpness基本一致,建议两级锐化都需要打开使用)

Sharp参数介绍1

Sharp参数介绍2

Sharp参数介绍3

Sharp参数介绍4

注意事项

  • V821的D2D模块 LYR3 DNR YRatio不需要进行调试

调试思路

如何提升图像清晰度

Step1:由于IPC、CDR等编码产品,画质效果与编码有紧密的关系,在调试清晰度前,需要对比竞品将编码配置调整好,如码率、QP等,如果对清晰度要求较高,建议关闭编码2D、3D模块(通过应用接口设置)
Step2:确认好机器对焦准确,没有明显虚焦,如果存在虚焦,需要确认镜头底座与板子之间是否存在缝隙,尝试更换镜头或扭紧螺丝
Step3:分别关闭Denoise、DPC模块,确认是否去坏点强度过大或D2D强度过大导致细节损失(关闭后建议开关一下TDNF,使得画面细节重新收敛)
Step4:如果关闭后,细节有明显提升,可降低对应档位DPC去坏点强度,直到开始出现坏点,再降低D2D强度,直到运动区域开始出现明显噪声

清晰度调试示例1

Step5:如果排除去噪模块影响,可通过两级锐化来提高清晰度

清晰度调试示例2

清晰度调试示例3

清晰度调试示例2

如何去除噪声

Step1:如需要去除运动噪声,比如手臂挥动、人像走动出现的噪声,通过提高Denoise去噪强度解决
Step2:如画面中存在跳动噪声,需要提高TDNF去噪强度解决
Step3:如果画面中存在坏点,可通过DPC模块去除
Step4:如果静止画面存在噪声,需要依次排除是哪个模块引入噪声,先关闭Sharpness、Encpp确认是否锐化引入噪声,如是,那么需要通过调整锐化阈值,避免低频噪声被锐化出来
Step5:如果不是锐化出来的噪声,可关闭PLTM、GTM模块等确认是否其他亮度增益模块拉出噪声
Step6:低照度环境下,通过降低亮度可以减少噪声出现

如何优化拖影问题

Step1:连接调试工具,关闭TDNF模块,如果拖影消失,说明拖影为ISP引入。关闭TDNF会导致画面噪声闪烁,为正常现象
Step2如确认是ISP导致,先尝试降低D3D模块运动降噪强度,将SS MV DNRLS MV DNR的强度设置为0

拖影调试示例1

Step3:如果仍然存在拖影,可再继续降低D3D整体去噪强度,直到画面出现轻微噪声闪烁为止

拖影调试示例2

Step4:如果不是ISP导致,请抓取VE节点确认编码3D是否打开,如有打开可关闭再确认效果

拖影调试示例3