3. 移动端ISP算法概览

移动端ISP(Image Signal Processor)并不是单一算法,而是一条按像素流水线组织的处理链。Sensor输出的Bayer RAW数据通常只有单一颜色分量,且伴随黑电平偏移、坏点、噪声、光照色偏等问题。ISP的任务是在有限功耗与延迟预算内,把RAW逐步转换为可显示、可编码的YUV图像。理解各模块的功能与先后关系,是后续算法适配和工程落地的基础。

本节按典型移动端ISP流水线顺序,概览黑电平校正、坏点修复、去马赛克、白平衡、色彩校正、伽马、降噪与锐化等模块。它们并非简单串联,而是存在前后依赖与反馈关系,例如降噪常分RAW域与YUV域两段,锐化需在降噪之后以避免放大噪声。

移动端ISP典型处理流水线(RAW → YUV) Bayer RAW Sensor 原始输出 黑电平校正 BLC / 暗电流扣除 坏点修复 DPC / 动态坏点 去马赛克 Demosaic / 插值 白平衡 AWB / 色温增益 色彩校正 CCM / 色彩矩阵 伽马校正 Gamma / 色调映射 降噪 NR / 空域+时域 锐化 Sharpen / 边缘增强 YUV 输出 显示 / 编码 降噪与锐化常分RAW域/YUV域两段,参数需联动调优 关键约束: 移动端需在功耗、带宽、延迟与画质之间折中;多数模块支持硬件加速,参数由3A统计与Tuning工具动态下发。

核心原理:各模块解决什么问题

黑电平校正(BLC)处理的是Sensor在无光条件下仍输出的非零基底值。该值来自暗电流和读出电路偏置,若不扣除,暗部会发灰、对比度下降。工程上通常按通道(R/Gr/Gb/B)分别标定,并随增益和温度做补偿。

坏点修复(DPC)针对Sensor制造缺陷或老化产生的异常像素。静态坏点位置固定,可通过标定表记录;动态坏点随增益和曝光变化,需实时检测。常用方法是用同色邻域中值或梯度加权替代,避免破坏边缘。

去马赛克(Demosaic)把每个像素只有一种颜色的Bayer阵列恢复为RGB三通道。核心是插值:在平坦区平滑插值,在边缘区沿边缘方向插值,否则会出现拉链纹和伪彩。移动端常用方向自适应插值加伪彩抑制。

白平衡(AWB)估计场景光源色温,对R/B通道施加增益,使白色物体在不同光源下仍呈中性。色彩校正(CCM)则通过3×3矩阵修正Sensor光谱响应与目标色彩空间之间的偏差,通常与AWB配合,保证肤色和饱和色准确。

伽马校正把线性光信号映射到人眼感知更均匀的编码域,同时压缩高光、提升暗部。降噪分空域和时域:空域在单帧内平滑相似像素,时域利用多帧对齐融合,移动端常用两者结合。锐化在降噪后增强边缘对比,但需控制过冲与噪声放大。

方法流程:一条可落地的处理顺序

  1. RAW域:BLC → 线性化 → 坏点修复 → RAW降噪 → 镜头阴影校正。
  2. 去马赛克:方向自适应插值 → 伪彩抑制 → 边缘增强。
  3. 色彩域:AWB增益 → CCM → 伽马 → 色彩空间转换。
  4. YUV域:时域/空域降噪 → 锐化 → 色调与对比度微调 → 输出。
工程上常把降噪拆成RAW域和YUV域两段:RAW域降噪在去马赛克前抑制Sensor噪声,YUV域降噪处理插值和色彩变换引入的噪声。锐化必须放在降噪之后,否则会把噪声当成边缘放大。

案例/场景:夜景与逆光下的模块联动

夜景场景中,Sensor增益提高,暗电流和坏点更明显,BLC与DPC参数需随增益调整;同时噪声增大,RAW域降噪强度提高,但过强会抹掉细节,需与锐化联动。逆光场景中,AWB容易受高光区域干扰,CCM需保护肤色,伽马则负责把高光压回可显示范围。

# 典型Tuning参数片段(示意)
BLC:   {r: 64, gr: 64, gb: 64, b: 64, gain_comp: true}
DPC:   {mode: dynamic, threshold: 32, gain_dep: true}
AWB:   {mode: auto, gray_edge: 0.35, skin_protect: true}
CCM:   {matrix: [[1.62,-0.52,-0.10],[-0.28,1.55,-0.27],[0.02,-0.42,1.40]]}
Gamma: {curve: srgb_like, contrast: 0.12}
NR:    {raw_strength: 0.6, yuv_strength: 0.4, temporal: 0.5}
Sharp: {amount: 0.8, radius: 1.2, overshoot: 0.15}

误区与复盘:常见工程陷阱

误区现象修正方向
BLC只用一个全局值暗部偏色、四角发灰按通道和增益分档标定
DPC阈值固定高增益下坏点漏检或误杀阈值随增益自适应
去马赛克只做双线性边缘拉链纹、伪彩方向自适应+伪彩抑制
AWB与CCM独立调肤色偏黄或偏红联合标定,保护肤色
先锐化后降噪噪声被放大成颗粒降噪在前,锐化在后
移动端ISP的每个模块都不是孤立参数,而是与3A统计、增益、温度、场景检测联动。调试时应先固定曝光和增益,逐模块验证,再进入动态场景联调,避免多变量同时变化导致定位困难。