1. RK平台图像调优概述

大家好,我是负责这堂课的工程师。做RK平台的图像调优,说实话,一开始我也觉得挺懵的——Pipeline那么长,参数几百个,到底从哪下手?后来摸爬滚打几年,慢慢理出了头绪。今天咱们先把全景图铺开,看看整个调优工作到底在做什么。

1.1 RK ISP Pipeline 简介

RK的ISP(图像信号处理器)Pipeline,说白了就是把Sensor送来的原始数据,一步步加工成人眼看着舒服、算法能识别的图像。我习惯把它分成三大段:前端处理、中间处理、后端输出。

核心思路:Pipeline的每个模块都在做“补偿”和“增强”。Sensor有缺陷,ISP来补;环境不理想,ISP来调。理解了这个,你就能明白为什么参数调不好,效果就崩。

下面这张图是我自己整理的RK ISP Pipeline简化流程,你看一眼就能明白数据是怎么流动的:

RK ISP Pipeline 简化流程 Sensor RAW BLC / LSC Demosaic AWB / AEC CCM Gamma / Tone Sharpen / NR YUV 输出 关键说明: • BLC(黑电平校正)和 LSC(镜头阴影校正)是前端基础补偿,不做后面全白搭。 • AWB/AEC 是自动白平衡和自动曝光,它们决定了画面的“底色”和“亮度”。 • CCM(色彩校正矩阵)和 Gamma 负责“调色”,Sharpen/NR 负责“清晰度与降噪”。

每个模块都有对应的参数文件,比如 iq_tuning.xml 里就包含了AWB、CCM、Gamma等所有配置。我在项目里见过有人上来就调Sharpen,结果发现暗部噪点全炸了——因为前面的NR根本没动。Pipeline的顺序,决定了调优的优先级。

1.2 图像质量评估指标

调优之前,你得知道“好”的标准是什么。图像质量评估,我把它分成两类:客观指标和主观评价。客观指标用数据说话,主观评价靠人眼看。

指标类别 具体指标 说明
客观指标 SNR(信噪比) 信号与噪声的比值,越高越好。暗光下SNR通常低于30dB就要注意了。
MTF(调制传递函数) 衡量清晰度,常用MTF50。我习惯用SFR测试卡跑一遍。
Color Error(ΔE) 色彩偏差,ΔE < 3 算不错,< 1 就是顶级了。
Dynamic Range 动态范围,单位dB。高动态场景下,这个指标很关键。
主观评价 噪点水平 看暗部、纯色区域是否干净。我一般用ISO 12233图卡配合实景。
色彩还原 肤色、蓝天、草地是否自然。这个主观性很强,需要和客户对齐。
边缘振铃 Sharpen调过头会出现白边,人眼很敏感。

我的经验:客观指标是门槛,主观评价是天花板。SNR做到40dB以上,MTF50超过0.5,基本就及格了。但最终客户满不满意,还得看人眼感受。我曾经有个项目,客观指标全优,客户却说“看着假”——后来发现是Gamma曲线太硬,少了点胶片感。

1.3 调优工作流全景

调优不是一锤子买卖。我总结了一套工作流,大概分五个阶段。你想想看,如果跳过其中一步,后面返工的成本会翻倍。

  1. 准备阶段:选Sensor、搭硬件、拍RAW图。这一步我建议多拍几组不同光照的raw图,白天、夜晚、室内、室外,至少各一组。
  2. 基础校正:BLC、LSC、坏点校正。这些是“地基”,地基歪了,后面怎么调都别扭。
  3. 核心调优:AWB、AEC、CCM、Gamma。这是最耗时的部分,我一般先调AWB,再调CCM,最后动Gamma。
  4. 细节增强:Sharpen、NR、HDR。注意Sharpen和NR是“跷跷板”,调高Sharpen就得压NR,反之亦然。
  5. 验收与迭代:跑客观测试、做主观评审、出报告。如果客户反馈有问题,回到第三步或第四步微调。

避坑指南:我曾经跳过基础校正直接调AWB,结果发现不同Sensor之间有明显的亮度差异——后来查出来是LSC参数没对齐。从那以后,我每次都会先跑一遍基础校正的验证脚本,确保每个模块的raw图都“干净”了再往下走。

下面这张流程图,把整个工作流串起来了:

RK图像调优工作流全景 ① 准备阶段 ② 基础校正 ③ 核心调优 ④ 细节增强 ⑤ 验收迭代 反馈迭代 • 每个阶段都有对应的工具和脚本,比如准备阶段用 rkisp_demo 抓raw。 • 核心调优和细节增强之间经常需要来回调整,别指望一次搞定。

嗯,这里要注意:验收阶段不是终点。客户说“颜色偏黄”,你可能得回到AWB重新标定白点;客户说“暗部太糊”,你得回去调NR的强度。所以工作流画成闭环,是有道理的。