【RKAIQ ISP21】RK3568 平台 DPCC 坏点校正模块参数详解(GC2053 实战)

关键词RK3568 RKAIQ ISP21 DPCC Defect Pixel Cluster Correction 坏点校正 Hot Pixel Dead Pixel IQ Tuning GC2053
适用平台 :RK3568 / RV1126 / RK3588(ISP21 框架通用)
作者笔记 :本文基于 gc2053_default_JX8006.json 实战调试过程整理


📑 文章目录

  • 前言
  • 一、DPCC 是什么
  • 二、坏点类型详解
  • 三、最常调的 3 件事
  • 四、整体架构
  • 五、顶层参数
  • 六、Fast_Mode 快速模式
  • 七、Expert_Mode 专家模式
  • 八、Dpcc_pdaf PDAF 坏点屏蔽
  • 九、Sensor_dpcc Sensor 内置 DPCC
  • 十、当前 IQ 文件状态分析
  • 十一、实战调试经验
  • 十二、DPCC 与其他模块协同
  • 十三、一图速查
  • 十四、推荐配置档位
  • 十五、当前 IQ 文件评估
  • 总结
  • 参考资料

前言

adpcc_calib 是 RKAIQ ISP21 框架中的:

DPCC(Defect Pixel Cluster Correction)坏点校正模块

它的作用:

复制代码
自动检测 Sensor 坏点
    ↓
用周围像素插补修复

数据流:

复制代码
RAW Sensor
   ↓
BLC
   ↓
DPCC
   ↓
GIC
   ↓
Clean RAW

一、DPCC 是什么

一句话理解:

角色 类比
坏点 坏掉的像素
DPCC 自动修补工具

为什么必须有 DPCC

因为:

复制代码
所有 Sensor 都有坏点

GC2053 1080P:

复制代码
通常有 100~5000 个坏点

常见症状

  • 暗场白点
  • 高 ISO 彩色亮点
  • 亮场黑点
  • 长曝光热噪点

二、坏点类型详解

类型 现象 条件
Single 单亮点/暗点 常见
Double 双联坏点 制造缺陷
Triple 三联坏点 严重缺陷
Hot Pixel 暗场亮点 高温/高 ISO
Dead Pixel 亮场黑点 永久缺陷

三、最常调的 3 件事

想做什么 改哪里 怎么改
暗场亮点太多 RND.rb_rnd_thr 10→6
高 ISO 彩噪 set2 高 ISO 开启
简化调试 Fast_Mode Fast_mode_en=1

⚠️ 重要

DPCC:

复制代码
不要调太狠

否则会:

  • 误杀星空
  • 抹掉高光
  • 纹理变软

四、整体架构

复制代码
adpcc_calib
└── DpccTuningPara
    ├── Enable
    │
    ├── Fast_Mode
    │   ├── Fast_mode_en
    │   ├── Single/Double/Triple_enable
    │   └── Fast_Data
    │
    ├── Expert_Mode
    │   ├── stage1_Enable
    │   ├── SetEnable
    │   ├── set1/set2/set3
    │   │   ├── RK
    │   │   ├── LC
    │   │   ├── PG
    │   │   ├── RND
    │   │   ├── RG
    │   │   └── RO
    │   │
    │   ├── Dpcc_pdaf
    │   └── Sensor_dpcc

五、顶层参数

5.1 Enable

含义
1 启用
0 关闭

推荐

复制代码
"Enable": 1

为什么必须开

关闭后:

复制代码
暗场全是亮点

特别是:

复制代码
高 ISO

六、Fast_Mode 快速模式

⭐ 适合新手


6.1 基本结构

复制代码
"Fast_Mode": {
    "Fast_mode_en": 1,
    "Single_enable": 1,
    "Double_enable": 1,
    "Triple_enable": 0
}

6.2 Level 含义

Level 强度 风险
0~5 很弱 漏检
8~12 推荐 平衡
16~20 一般
24~31 激进 易误伤

6.3 推荐配置

复制代码
"Single_level":
[8,8,8,10,12,14,16,18,20,22,24,26,28]

"Double_level":
[6,6,6,8,10,12,14,16,18,20,20,22,24]

推荐逻辑

复制代码
低 ISO 温和
高 ISO 激进

七、Expert_Mode 专家模式

⭐⭐ 当前使用模式


7.1 顶层配置

参数 当前 含义
stage1_Enable 1 必开
grayscale_mode 0 彩色模式
stage1_g_3x3 0 G 用 5x5
stage1_rb_3x3 0 RB 用 5x5
rk_out_sel 1 RK 输出

结论

复制代码
保持默认即可

7.2 SetEnable

复制代码
"set1": [1,1,1,...]
"set2": [0,0,0,...]
"set3": [0,0,0,...]

三套参数集

参数集 作用 当前
set1 主配置
set2 高 ISO
set3 极端场景

推荐

高 ISO:

复制代码
set2[ISO>=3200] = 1

7.3 五种检测算法

算法 作用
RK RK 综合算法
LC 行列检测
PG 梯度检测
RND 排序检测 ⭐
RG 范围检测
RO 排序限制

7.3.1 RND 排序检测 ⭐

最重要算法


当前配置

复制代码
"rb_rnd_thr": [10,10,10,...]
"g_rnd_thr":  [10,10,10,...]

工作原理

复制代码
比较中心像素与周围排序关系

判断:

复制代码
是否离群

调节规律

想要效果 调法
更敏感 阈值减小
更保守 阈值增大

GC2053 推荐

复制代码
[12,12,12,11,10,9,8,7,6,5,5,4,4]

推荐逻辑

复制代码
高 ISO 更激进

7.3.2 LC 行检测

复制代码
"rb_line_thr": [8,8,8,...]

作用

复制代码
检测线状坏点

7.3.3 PG 梯度检测

复制代码
"rb_pg_fac": [4,4,4,...]

作用

复制代码
区分边缘与坏点

7.3.4 RG 范围检测

复制代码
"rb_rg_fac": [32,32,32,...]

作用

复制代码
判断是否超出邻域范围

7.3.5 RO 排序限制

复制代码
"rb_ro_lim": [2,2,2,...]

作用

复制代码
限制 RND 过激

7.3.6 RK 自研算法

复制代码
"RK_enable": [1,1,1,...]

作用

复制代码
综合兜底算法

八、Dpcc_pdaf PDAF 坏点屏蔽

复制代码
"en": 0

含义

PDAF Sensor:

复制代码
需要跳过对焦像素

GC2053

复制代码
没有 PDAF

因此:

复制代码
保持 0

九、Sensor_dpcc Sensor 内置 DPCC

复制代码
"sensor_dpcc_auto_en": 0

含义

高端 Sensor

复制代码
自带 DPCC 硬件

GC2053

复制代码
不支持

十、当前 IQ 文件状态分析

模块 当前状态 评价
Enable 已开启
Fast_Mode 未使用
Expert_Mode 已启用
set1 主配置
set2/set3 未启用
RND 中等强度
LC 已启用
PG 已启用
RG 已启用
RO 已启用
RK 已启用

当前评价

复制代码
配置合理

但:

复制代码
高 ISO 还不够激进

十一、实战调试经验

经验 1:先拍暗场

复制代码
import numpy as np

raw = np.fromfile(
    'dark.raw',
    dtype=np.uint16
).reshape(1080,1920)

threshold = raw.mean() + 100
hot_pixels = np.sum(raw > threshold)

print(hot_pixels)

健康范围

坏点数 状态
<50 很好
50~500 一般
>500 需要加强

经验 2:黄金 3 步法

复制代码
1. 关 DPCC 抓 RAW
2. 开 DPCC 抓 RAW
3. 对比剩余坏点

经验 3:五算法协同

复制代码
LC 解决线状坏点
RND 解决孤立坏点
RG 防止误检
PG 保护边缘
RO 限制激进程度
RK 综合兜底

经验 4:高 ISO 启用 set2

复制代码
"set2":
[0,0,0,0,0,0,0,0,1,1,1,1,1]

经验 5:高 ISO 推荐

复制代码
"rb_rnd_thr":
[12,12,12,11,10,9,8,7,6,5,5,4,4]

经验 6:7 大坑

坑 1:星空被抹掉

解决:

复制代码
rb_rnd_thr → 16

坑 2:金属高光消失

解决:

复制代码
rb_rg_fac → 40

坑 3:布料纹理变软

解决:

复制代码
rb_line_thr → 12

坑 4:暗场还有亮点

解决:

复制代码
rb_rnd_thr → 6

坑 5:高 ISO 彩噪

解决:

复制代码
启用 set2

坑 6:绿色斑块

解决:

复制代码
减小 PG

坑 7:换 Sensor 坏点变多

解决:

复制代码
使用 OTP 坏点表

十二、DPCC 与其他模块协同

复制代码
BLC
 ↓
DPCC
 ↓
GIC
 ↓
BayerNR

⚠️ 顺序很重要

因为:

复制代码
BLC 必须先减黑电平

否则:

复制代码
DPCC 会误判

十三、一图速查

想做什么 改哪里 怎么改
开启 DPCC Enable 0→1
增强检测 rb_rnd_thr 10→6
保护星空 rb_rnd_thr 10→16
高 ISO 强化 set2 ISO≥3200 开
保护高光 rb_rg_fac 32→40
保护纹理 rb_line_thr 8→12
PDAF 支持 Dpcc_pdaf.en 0→1

十四、推荐配置档位

档位 1:保守

复制代码
rb_rnd_thr:
[16,16,14,12,10,8,6,5,4,4,4,4,4]

档位 2:标准(推荐)

复制代码
rb_rnd_thr:
[12,12,12,11,10,9,8,7,6,5,5,4,4]

档位 3:激进

复制代码
rb_rnd_thr:
[8,8,7,6,5,5,4,4,4,4,4,4,4]

十五、当前 IQ 文件评估

维度 状态 说明
总开关 已开启
算法覆盖 五算法全开
ISO 渐变 当前未做
set2/set3 未启用
Sensor_dpcc 正确关闭
PDAF 正确关闭

最终结论

✅:

  • 基础配置合理
  • 普通场景足够
  • 五算法完整
    ⚠️ 建议:
  • 增加 ISO 渐变
  • 高 ISO 启用 set2
  • RND 高 ISO 更激进

总结

DPCC 的本质:

复制代码
自动检测并修复坏点

它决定:

  • 暗场是否干净

  • 高 ISO 是否有彩色亮点

  • 长曝光是否有热噪点
    真正项目里最重要的是:

    不要过修

因为:

复制代码
真实高光也可能像坏点

因此:

  • 低 ISO 保守
  • 高 ISO 激进
  • 必测星空/高光/纹理
    才是正确的 DPCC 调试方式。

参考资料

  1. Rockchip RKAIQ Framework Documentation
  2. RKAIQ ISP21 DPCC Calibration Guide
  3. GC2053 Datasheet
  4. RKMedia Developer Guide
  5. RKAIQ Source Code
相关推荐
ballball~~2 个月前
ISP-Tone Mapping
图像处理·算法·isp
ballball~~2 个月前
ISP-Gamma
图像处理·算法·isp
庄周迷蝴蝶2 个月前
什么是Hue?
isp
冒险家KL2 个月前
STM32 ISP自动下载探索及官方STM32CubeProgrammer实现自动下载
stm32·嵌入式硬件·isp
AomanHao3 个月前
【阅读笔记】沙尘图像线性颜色校正A fusion-based enhancing approach for single sandstorm image
图像处理·笔记·isp·图像增强·沙尘图像·色偏·颜色校正
芯门3 个月前
FPGA商用级ISP(二):镜头阴影校正(LSC)的网格增益插值与并行硬件架构实现
图像处理·fpga开发·isp
芯门3 个月前
FPGA商用级ISP:动态坏点校正(DPCC)的滑窗架构与并行判决实现
图像处理·fpga开发·isp
CheungChunChiu3 个月前
模拟 GStreamer 获取帧率能力:CIF 与 ISP 的差异
linux·网络·接口隔离原则·isp·cif·gst
AndrewHZ4 个月前
【图像处理与ISP技术】图像格式与存储原理
图像处理·算法·isp·图像压缩·图像格式·图像存储·图像信号处理