【RKAIQ ISP21】RK3568 平台AWB自动白平衡模块参数详解(GC2053 实战)
·
关键词:
RK3568RKAIQISP21AWB自动白平衡IQ TuningGC2053
适用平台:RK3568 / RV1126 / RK3588(ISP21 框架通用)
作者笔记:本文基于gc2053_default_JX8006.json实战调试过程整理
📑 文章目录
- 前言
- 一、整体架构
- 二、
control—— 总控制层 - 三、
manualPara—— 手动白平衡 - 四、
autoPara—— 自动白平衡核心 - 五、
lightSources—— 光源模型系统 - 六、
autoExtPara—— 稳定性与高级控制 - 七、最关键的 7 个 AWB 调节维度
- 八、典型场景调节速查表
- 九、AWB 与其他模块协同
- 十、板端验证流程
- 总结
- 参考资料
前言
wb_v21 是 RKAIQ ISP21 框架中的 AWB(Auto White Balance)自动白平衡模块。
它的作用只有一句话:
让“白色”在不同色温光源下都看起来是白色。
AWB 是 ISP 中第二复杂的模块(仅次于 AEC),涉及:
- 光源识别
- 白点检测
- RGB Gain 计算
- 色温估算
- 稳定性控制
- 单色场景处理
- 日夜色温限制
很多同学第一次调 AWB 都会遇到:
- 为什么黄墙会偏蓝?
- 为什么室内暖光总被矫正成冷色?
- 为什么 AWB 会来回跳?
- 为什么白天颜色忽冷忽暖?
staWeight到底怎么调?
本文基于 RK3568 + GC2053 + JX8006 模组实战,对 RKAIQ ISP21 AWB 模块进行完整拆解。
🎯 读完本文你能:
- 看懂 RKAIQ 的 AWB 参数
- 理解 RK 的 7 光源模型
- 学会解决“黄背景偏蓝”
- 学会处理 AWB 抖动
- 学会白天/夜晚色温限制
- 掌握 IPC 产品常见 AWB 调参方法
一、整体架构
wb_v21
├── control ← 总控制
├── manualPara ← 手动白平衡
├── autoPara ← 自动白平衡核心
│ ├── limitRange
│ ├── lightSources[7]
│ ├── wpDiffLumaWeight
│ └── ...
└── autoExtPara ← 高级稳定性控制
├── tolerance
├── dampFactor
├── wbGainDaylightClip
├── chrAdpttAdj
├── singleColorProces
└── ...
AWB 的核心流程
白点检测
↓
光源估算
↓
计算 RGB Gain
↓
输出 AWB Gain
↓
CCM / Gamma / 最终 RGB
二、control —— 总控制层
位置:
wb_v21.control
2.1 总开关
| 参数 | 典型值 | 含义 |
|---|---|---|
byPass |
0 |
0=启用 AWB;1=关闭 AWB |
mode |
CALIB_WB_MODE_AUTO |
AUTO / MANUAL |
2.2 AUTO 与 MANUAL
AUTO
自动识别:
- 光源
- 色温
- RGB Gain
实际产品默认使用。
MANUAL
强制固定:
- RGB Gain
- 色温
- 场景
适合:
- ISP 调试
- 实验室验证
- 排查颜色问题
三、manualPara —— 手动白平衡
仅:
mode = MANUAL
时生效。
3.1 常见参数
| 参数 | 含义 |
|---|---|
mwbGain |
手动 RGB Gain |
scene |
手动场景 |
CCT |
手动色温 |
3.2 mwbGain 示例
"mwbGain": [1.119, 1, 1, 2.335]
含义:
| 通道 | Gain |
|---|---|
| R | 1.119 |
| Gr | 1 |
| Gb | 1 |
| B | 2.335 |
3.3 常见手动场景
| 场景 | 作用 |
|---|---|
| CLOUDY_DAYLIGHT | 阴天 |
| DAYLIGHT | 白天 |
| INCANDESCENT | 白炽灯 |
| FLUORESCENT | 荧光灯 |
四、autoPara —— 自动白平衡核心
这是 AWB 的主体部分。
位置:
wb_v21.autoPara
五、lightSources —— 光源模型系统
RKAIQ 默认定义了:
7 个标准光源模型
5.1 标准光源列表
| 光源 | 典型 CCT | 类型 | 场景 |
|---|---|---|---|
| HZ | 2300K | 极暖光 | 白炽灯 |
| A | 2856K | 暖光 | 暖黄灯 |
| TL84 | 4000K | 荧光灯 | 商场 |
| CWF | 4150K | 中性荧光 | 室内 |
| D50 | 5000K | 中性日光 | 标准日光 |
| D65 | 6500K | 白天日光 | 室外 |
| D75 | 7500K | 阴天 | 蓝天 |
5.2 每个光源的核心字段
| 字段 | 含义 | 是否常调 |
|---|---|---|
standardGainValue |
标定 RGB Gain | ❌ |
uvRegion |
UV 白点区域 | ⚠️ |
xyRegion |
xy 白点区域 | ⭐ |
staWeight |
光源权重 | ⭐⭐⭐ |
weight |
按亮度权重 | ⚠️ |
dayGainLvThSet |
日夜切换阈值 | ❌ |
六、staWeight —— 最核心参数
🔥 AWB 调参里最重要的参数之一。
6.1 staWeight 示例
"staWeight": [
100,100,100,100,
100,100,100,100,
100,100,100,100,
100,100,90,75
]
6.2 它的本质
每个数字代表:
当前光源在 AWB 投票中的权重
范围:
0 ~ 255
6.3 调节规律
| 想要效果 | 调法 |
|---|---|
| 该光源更容易被识别 | 权重提高 |
| 该光源更难被识别 | 权重降低 |
| 完全屏蔽 | 全部设 0 |
6.4 当前 IQ 调整状态
| 光源 | 默认值 | 当前值 | 调节方向 |
|---|---|---|---|
| HZ | 100 | 55 | ⬇️ |
| A | 100 | 70 | ⬇️ |
| TL84 | 100 | 85 | ⬇️ |
| CWF | 100 | 95 | ⬇️ |
| D50 | 100 | 100 | 不变 |
| D65 | 100 | 120 | ⬆️ |
| D75 | 100 | 115 | ⬆️ |
6.5 这样调的目的
解决:
黄背景场景下偏蓝
问题。
本质:
降低暖光识别概率
提高冷光识别概率
七、xyRegion —— 白点识别区域
这是:
AWB 白点判定区域
7.1 结构
xyRegion:
normal:
big:
7.2 normal 与 big
| 区域 | 含义 |
|---|---|
| normal | 常规区域 |
| big | 扩大容忍区域 |
7.3 调节规律
提高容忍度
扩大:
big 区域
通常:
向外扩 0.03 ~ 0.05
降低误判
缩小:
big 区域
八、autoExtPara —— 高级稳定性控制
位置:
wb_v21.autoExtPara
九、tolerance —— 防抖机制
AWB 稳定性的核心。
9.1 默认问题
默认:
[0,0,0,0]
意味着:
任何变化都会更新 Gain
因此:
AWB 很容易来回跳
9.2 当前推荐值
[0.008,0.008,0.005,0.003]
9.3 含义
| 场景 | 容忍度 |
|---|---|
| 暗场景 | 0.8% |
| 亮场景 | 0.3% |
9.4 调节规律
| 数值 | 效果 |
|---|---|
| 小 | 响应快 |
| 大 | 更稳定 |
十、dampFactor —— 阻尼系数
作用:
AWB 平滑更新
当前配置
"dFMin": 0.85,
"dFMax": 0.95
调节规律
| 阻尼 | 效果 |
|---|---|
| 小 | 跟踪快 |
| 大 | 更稳定 |
十一、wbGainDaylightClip —— 白天色温限制
⭐ 实战里非常重要。
11.1 配置
{
"enable": 1,
"outdoor_cct_min": 5000
}
11.2 作用
当:
AE 判定当前是白天
时:
AWB 不允许跑到低色温暖光区
11.3 解决的问题
- 白天偏黄
- 黄背景偏蓝
- 室外颜色漂移
十二、singleColorProces —— 单色场景处理
用于处理:
大面积单一颜色场景
例如:
- 黄墙
- 草地
- 红地毯
12.1 当前关键参数
"alpha": 0.95
12.2 含义
单色场景平滑系数。
12.3 调节规律
| 数值 | 效果 |
|---|---|
| 小 | 跟踪快 |
| 大 | 更稳定 |
十三、最关键的 7 个 AWB 调节维度
| 调节目标 | 修改参数 | 调节方向 |
|---|---|---|
| 黄背景偏蓝 | staWeight(A/HZ) |
降低 |
| 室内偏冷 | staWeight(D65/D75) |
提高 |
| 白天偏黄 | wbGainDaylightClip |
开启 |
| AWB 抖动 | tolerance |
提高 |
| 跳变明显 | dampFactor |
提高 |
| 单色误判 | singleColorProces.alpha |
提高 |
| 光源识别不准 | xyRegion.big |
扩大 |
十四、典型问题速查表
| 现象 | 调节方法 |
|---|---|
| 🟦 黄背景偏蓝 | 降低 A/HZ 权重 |
| 🟨 白天偏黄 | 开启 wbGainDaylightClip |
| ❄️ 室内偏冷 | 提高 D65/D75 权重 |
| 🔄 AWB 来回跳 | 提高 tolerance |
| 🌈 单色场景误判 | 提高 alpha |
| ⚡ 启动瞬间偏色 | lightSourceForFirstFrame 改 D65 |
十五、AWB 与其他模块协同
数据流:
AEC
↓
AWB
↓
CCM
↓
Gamma
↓
最终 RGB
15.1 AEC 不稳 → AWB 必然抖
曝光变化会直接影响:
白点统计
15.2 AWB 不准 → CCM 会放大错误
因此:
AWB 是整个颜色系统的基础
十六、板端验证流程
16.1 推送 IQ 文件
adb push gc2053_default_JX8006.json /oem/etc/iqfiles/
16.2 停止冲突进程
/oem/RkLunch-stop.sh
16.3 启动 RTSP
rkmedia_vi_venc_rtsp_test -a /oem/etc/iqfiles
16.4 VLC 拉流
rtsp://<板端IP>/live/main_stream
十七、建议测试场景
建议至少验证:
- ☀️ 室外白天
- 🌇 黄昏
- 🏠 室内暖光
- 🟨 黄墙
- 🌳 草地
- 🔵 蓝色背景
总结
AWB 的本质:
白点识别
+
光源判断
+
RGB Gain 补偿
真正产品里最重要的不是:
绝对正确
而是:
稳定
不跳
场景不翻车
因此:
staWeighttolerancedampFactorsingleColorProces
才是 AWB 项目调试的核心。
参考资料
- Rockchip RKAIQ Framework Documentation
- RKMedia Developer Guide
- GC2053 Datasheet
- RKAIQ ISP21 Source Code
- RKAIQ AWB Calibration Guide
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)