【RKAIQ ISP21】RK3568 平台 ADRC 动态范围压缩模块参数详解(GC2053 实战)
关键词RK3568RKAIQISP21ADRCDRCTone MappingHDR动态范围压缩IQ TuningGC2053适用平台RK3568 / RV1126 / RK3588ISP21 框架通用作者笔记本文基于gc2053_default_JX8006.json实战调试过程整理 文章目录前言一、ADRC 是什么二、最常调的 4 件事三、整体结构四、顶层参数详解五、DrcGain 动态范围增益六、HiLight 高光压制七、LocalTMO 局部色调映射八、CompressSetting 压缩曲线九、Scale_y 输出曲线十、当前 IQ 文件状态评估十一、实战调试经验十二、ADRC 与其他模块协同十三、ADRC vs Gamma vs Adehaze十四、一图速查十五、当前 IQ 文件 ADRC 评估十六、ADRC 三大铁律总结参考资料前言adrc_calib_v10是 RKAIQ ISP21 框架中的ADRCAdaptive Dynamic Range Compression动态范围压缩模块它也被称为TMOTone Mapping Operator核心作用把 Sensor 的高动态范围 压缩到显示器能显示的范围数据流20-bit RAW ↓ amerge_calib ↓ adrc_calib_v10 ↓ 12-bit RGB一、ADRC 是什么一句话理解角色含义输入20-bit HDR RAW输出12-bit RGBADRC动态范围压缩 局部增强为什么必须有 ADRC因为Sensor 动态范围 远超显示器直接裁剪会丢高光或暗部ADRC用非线性压缩保留细节ADRC 的本质亮部压缩 暗部抬升 局部增强⭐ 最重要一句话ADRC 是画面立体感的核心来源二、最常调的 4 件事想要效果改哪里怎么改暗部更亮DrcGain0.1~0.3高光不过曝HiLight.Strength0.1更有立体感GlobalContrast0.05画面不发灰Scale_y 末段降低⚠️ 重要ADRC最容易出现塑料感调过头会halobanding肤色发青暗部噪点三、整体结构adrc_calib_v10 └── DrcTuningPara ├── Enable ├── CtrlDataType │ ├── DrcGain ├── HiLight ├── LocalTMOSetting ├── CompressSetting ├── Scale_y │ ├── ByPassThr ├── Edge_Weit ├── IIR_frame └── damp四、顶层参数详解4.1Enable值含义1开启 ADRC0关闭 ADRC推荐Enable: 14.2CtrlDataType值含义推荐ENVLV按环境亮度✅ISO按 ISO特殊场景推荐CTRLDATATYPE_ENVLV因为更符合人眼感知4.3ByPassThrByPassThr: 0.01作用EnvLv 变化小时不重新计算4.4IIR_frameIIR_frame: 2值效果1响应快2推荐4~8更稳定4.5dampdamp: 0.9值效果小快速响应大防闪烁4.6Edge_WeitEdge_Weit: 0.0627451作用边缘保护权重五、DrcGain 动态范围增益⭐ ADRC 最核心模块5.1DrcGain当前配置[1.4,1.4,1.4, 1.5,1.6,1.7, 1.7,1.7, 1.6,1.5, 1.4,1.3,1.2]含义值效果1.0不增益1.2~1.4温和1.5~1.7标准1.8~2.5HDR 风当前策略中间强 两头弱为什么这样设计场景需求极暗防噪点弱光强抬升强光防过亮5.2Alpha[0.25,0.25,0.25,...]含义高光保护系数值效果0不保护0.2~0.3推荐0.5强保护5.3Clip[12,12,12,...]含义噪声限制值效果8强抑制12标准16保细节六、HiLight 高光压制⭐ 防止过曝6.1Strength当前配置[0.5,0.5,0.45, 0.4,0.35,0.3, 0.3,0.25, 0.2,0.18, 0.15,0.12,0.1]含义值效果0不压0.2~0.4推荐0.5~0.7强压当前逻辑暗场强压 亮场弱压原因弱光长曝光 更容易高光爆掉七、LocalTMO 局部色调映射⭐ 立体感核心来源7.1LocalWeit[1,1,1,1,1,1,1,1,1,1,1,1,1]含义值效果0关闭局部 TMO0.5柔和1.0全开7.2GlobalContrast⭐⭐ 最关键当前配置[0.3,0.3,0.3, 0.28,0.25,0.22, 0.2,0.2, 0.18,0.15, 0.12,0.1,0.1]含义值效果0不增强0.1~0.2温和0.25~0.35推荐0.4~0.5HDR 风当前逻辑暗场强对比 亮场弱对比7.3LoLitContrast当前配置[0.25,0.25,0.22, 0.2,0.18,0.15, 0.15,0.12, 0.1,0.1, 0.08,0.05,0.05]含义专门增强暗部局部细节⚠️ 注意过高会放大暗部噪点7.4 平滑参数参数当前值含义curPixWeit0.376当前帧权重preFrameWeit1前帧权重Space_sgm_cur4068空间平滑Space_sgm_pre3968前帧平滑一般不调默认即可八、CompressSetting 压缩曲线8.1ModeCOMPRESS_AUTO含义模式含义AUTO自动计算MANUAL手动曲线推荐99% 用 AUTO8.2Manual_curve[0,558,1087,...,8192]⚠️ 注意当前AUTO 模式因此这条曲线未生效九、Scale_y 输出曲线⭐⭐⭐ 最终输出曲线当前配置[0,2,22,80,200, 390,640,780, 925,1070,1215, 1430,1620, 1780,1900, 1990,2048]9.1 曲线作用决定最终亮度映射区域含义区域作用前段黑场中段通透感后段高光 rolloff9.2 当前特点高光末段更平缓好处防止高光硬切当前优化末段1900 → 1990 → 2048保留约 3% headroom十、当前 IQ 文件状态评估模块状态评价Enable✅已启用CtrlDataType✅ ENVLV推荐DrcGain✅已优化Alpha✅平衡Clip✅标准HiLight✅防过曝LocalTMO✅已优化Scale_y✅已优化IIR_frame✅平衡damp✅稳定综合评价当前 ADRC 已深度优化十一、实战调试经验经验 1标准 SOP1. 先关 LocalTMO 2. 调 DrcGain 3. 调 HiLight 4. 再开 LocalTMO 5. 最后调 Scale_y经验 24 大测试场景场景重点室内窗外动态范围灯泡halo白墙banding人脸肤色经验 37 大坑坑 1暗部噪点爆炸原因DrcGain 太大坑 2肤色发青原因HiLight 太强坑 3halo 光晕解决Space_sgm_cur: 6000坑 4场景闪烁解决damp: 0.95 IIR_frame: 4坑 5白墙 banding解决降低 GlobalContrast坑 6高光硬切解决Scale_y 末段 rolloff坑 7重复增强错误ADRC Gamma Enhance CPROC 全都拉满十二、ADRC 与其他模块协同amerge ↓ ADRC ↓ Gamma ↓ Adehaze ↓ CPROC⚠️ 铁律对比度只在一个模块主调推荐模块推荐强度ADRC主调Gamma中等Enhance轻度CPROC轻度十三、ADRC vs Gamma vs Adehaze模块数据域作用ADRCRGB 线性域动态范围压缩GammaRGB 域亮度映射AdehazeYUV 域局部增强特点模块强度风险ADRC最强最大Gamma中等一般Enhance最弱最安全十四、一图速查想做什么改哪里怎么改暗部更亮DrcGain0.1暗部更暗DrcGain-0.1高光更暗HiLight0.1更通透GlobalContrast0.05暗部更立体LoLitContrast0.05去 haloSpace_sgm4068→6000防闪烁damp0.9→0.95防过曝Scale_y末段减小十五、当前 IQ 文件 ADRC 评估维度评分总开关✅DrcGain✅HiLight✅LocalTMO✅Scale_y✅时域稳定性✅模块协同✅综合评分⭐⭐⭐⭐⭐十六、ADRC 三大铁律铁律 1必须测试 窗外 室内铁律 2对比度只在一个模块主调铁律 3优先检查 暗部噪点 高光过曝总结ADRC 的本质压缩动态范围它决定暗部细节高光保留立体感HDR 风格真正项目里最重要的是自然 稳定 不过度因此DrcGain 控暗部HiLight 控高光LocalTMO 控立体感Scale_y 控最终风格才是正确的 ADRC 调参方式。参考资料Rockchip RKAIQ Framework DocumentationRKAIQ ISP21 ADRC Calibration GuideGC2053 DatasheetRKMedia Developer GuideRKAIQ Source Code