151、ISP Pipeline深度解析:从RAW域到RGB域的完整信号流与关键处理节点
151、ISP Pipeline深度解析:从RAW域到RGB域的完整信号流与关键处理节点去年在调试某款旗舰手机主摄时,遇到一个诡异现象:暗光下拍摄的红色交通灯,在屏幕上变成了品红色。团队折腾了两周,从sensor驱动查到镜头镀膜,最后发现是ISP pipeline中一个被默认关闭的色差校正模块在作祟。这个案例让我意识到,很多工程师对ISP的理解停留在“黑盒”层面——知道输入RAW输出RGB,但中间那些节点到底在干什么、顺序为什么不能乱、每个模块的坑在哪里,很少有人能说清楚。今天这篇笔记,我就把ISP pipeline从RAW域到RGB域的完整信号流拆开揉碎,结合这些年踩过的坑,给你一个能直接指导调试的认知框架。RAW域:sensor给我们的“毛坯房”sensor输出的RAW数据,本质上是每个像素点只记录一种颜色(R/G/B)的原始电荷信号。别被“原始”两个字骗了——这玩意儿离“干净”差得远。黑电平校正(BLC)是第一个节点。sensor在无光照时,像素依然会有暗电流导致的偏置电压,通常在几十到几百个DN(数字码值)之间。这里有个坑:不同sensor的黑电平可能随增益变化,甚至随温度漂移。我见过某项目在-20℃低温测试时,黑电平偏移了15个DN,导致暗部出现绿色条纹。解决方案是在sensor驱动中做温度补偿查表,别指望ISP的固定值能搞定。坏点校正(DPC)紧随其后。sensor的坏点分静态和动态两种。静态坏点出厂时标定过,但动态坏点(热像素)会随曝光时间、温度随机出