
夜视机芯这个行当过去十几年里最核心的竞争力就一句话谁能在伸手不见五指的环境下把画面做得更干净、更亮、更真实。传统ISP在这件事上已经摸到了天花板而AI-ISP的出现尤其是PixelClean这类方案在机芯端的落地让全彩夜视从能看见往看得清、看得准迈了一大步。这篇内容我打算把从传统ISP到AI-ISP的演进逻辑拆开讲重点落在PixelClean在夜视机芯里到底做了什么、怎么落地、踩过哪些坑适合做安防机芯、图像调优、嵌入式视觉的同行参考也适合刚接触ISP pipeline的朋友建立整体认知。1. 夜视机芯里ISP到底在干什么活1.1 从Sensor原始数据到可用图像的那条流水线很多人一上来就聊AI-ISP但如果不先把传统ISP的活干清楚后面全是空中楼阁。夜视机芯的Sensor输出的通常是Bayer格式的RAW数据每个像素只有R、G、B其中一个分量而且是在极低照度下采集的信噪比非常差。ISP pipeline要做的就是把这堆残缺又脏的数据一步步变成人眼能看、后端算法能用的YUV图像。这条流水线大致包括黑电平校正、镜头阴影校正、坏点校正、去马赛克、白平衡、色彩校正、Gamma、降噪、锐化、宽动态处理等。白天光线充足时这些模块各司其职效果都不错。但到了夜间问题就集中爆发了——光子数量少Sensor增益被拉得很高噪声被同步放大去马赛克和降噪稍微处理不好画面要么糊成一团要么满屏彩色噪点。我常跟团队说ISP pipeline本质上是在做一系列取舍。降噪强了细节就丢锐化狠了噪声就起来色彩饱和度拉高了暗部就发紫。传统ISP的每个模块参数都是人工调的调优工程师靠经验在几十个参数之间找平衡点一个机芯调下来少则几天多则几周。这就是传统ISP的根本局限它是基于固定规则和统计模型的面对夜视这种极端场景规则本身就不够用了。1.2 传统ISP在夜视场景下的三个硬伤第一个硬伤是降噪和细节的矛盾。传统降噪大多基于空域或时域滤波空域降噪在平坦区域效果好但一到纹理区域就容易把细节一起抹掉时域降噪依赖多帧信息运动物体一来就产生拖影。夜间增益高噪声幅度大这个矛盾被放大到无法调和。第二个硬伤是色彩还原。夜间场景下ISP的白平衡和色彩校正矩阵是基于白天标定的到了低照度环境光源光谱、Sensor响应都变了色彩要么偏得离谱要么为了压噪点直接转黑白。所谓全彩夜视很多传统方案其实是靠补光灯硬撑一旦关灯就露馅。第三个硬伤是动态范围的割裂。夜间场景往往有强光源路灯、车灯和极暗区域并存传统ISP的宽动态处理在低照度下效果有限要么高光过曝要么暗部死黑。这三个硬伤叠加在一起就是为什么传统ISP做全彩夜视总是差一口气。2. AI-ISP换的不是算法是整条处理思路2.1 从人工调参到数据驱动的范式转移AI-ISP最本质的变化不是简单地在pipeline里塞一个神经网络而是把整个图像处理从人工设计规则转向数据驱动学习。传统ISP的每个模块都是工程师根据物理模型和统计规律设计的参数靠人调AI-ISP则是用大量成对的低照度RAW和高质量参考图训练网络让网络自己学会从暗、脏的输入映射到干净、明亮的输出。这个转变的意义在于传统ISP处理不了的复杂场景AI-ISP可以通过学习见过类似场景而做出更合理的判断。比如夜间树影下的纹理、雨夜路面的反光、混合光源下的肤色这些用规则很难描述清楚的情况网络能从数据里学到统计规律。但这里有个关键点必须说清楚AI-ISP不是把传统ISP整个扔掉。目前主流的落地方式是传统ISP负责基础处理黑电平、去马赛克、基础白平衡等AI模块负责最难的降噪、增强和色彩部分。这种混合架构既保证了稳定性又发挥了AI在极端场景下的优势。我在实际项目里见过纯AI端到端的方案效果在某些场景确实惊艳但功耗、延迟和稳定性在机芯端很难接受所以混合架构才是当前夜视机芯的现实选择。2.2 PixelClean在pipeline里的位置和职责PixelClean这个名字从字面就能看出它的核心任务——把像素洗干净。在夜视机芯的pipeline里它通常接在去马赛克之后、色彩处理之前专门负责低照度下的降噪和细节恢复。它的输入是带有大量噪声的RGB或YUV数据输出是噪声被显著抑制、同时边缘和纹理得到保留的图像。它和传统降噪最大的区别在于PixelClean是基于学习的降噪网络在训练时见过海量的噪声-干净图像对能够区分这是噪声和这是细节。传统降噪靠的是局部统计特性很难区分高频噪声和高频纹理PixelClean则通过感受野和上下文信息能更聪明地判断哪些该保留、哪些该抹掉。在实际调优中我发现PixelClean的强度参数不是越大越好。强度拉满确实画面很干净但暗部的细微纹理比如远处树叶、衣物褶皱会被当成噪声处理掉画面会有一种塑料感。合理的做法是根据增益档位动态调整强度低增益时轻处理保留细节高增益时重处理压住噪声。这个映射关系需要在实测中反复标定没有一劳永逸的参数。3. 全彩夜视落地时最容易被低估的几个环节3.1 训练数据的采集与配对决定了效果上限AI-ISP的效果七分靠数据三分靠网络结构。这句话我在多个项目里反复验证过。PixelClean要work必须有高质量的训练数据对同一场景下的低照度RAW和对应的长曝光/高信噪比参考图。采集时最容易被低估的是配对精度——如果两张图之间有轻微位移或时间差导致的内容变化网络就会学到错误的映射。我的经验是采集设备要固定用同一颗Sensor、同一个镜头通过控制曝光时间和增益来获取配对数据。场景要覆盖足够多的类型纯暗场景、有路灯的街道、有车灯的马路、室内混合光源、雨雾天气等。每个场景还要覆盖不同的色温否则网络在某种光源下会偏色。还有一个坑是参考图的获取。理想情况下参考图应该是极低噪声的但现实中长曝光也会引入噪声和运动模糊。我们的做法是用多帧平均加后期精修来生成参考图虽然费时但这是保证效果上限的必要投入。数据量上我建议至少覆盖几万对有效样本且要保证场景多样性否则网络容易过拟合到某几类场景。3.2 机芯端的算力约束与模型裁剪夜视机芯通常是嵌入式平台算力和内存都很紧张。PixelClean这类网络如果直接拿训练时的版本上机芯基本跑不动。所以模型裁剪和量化是绕不过去的环节。裁剪方面我们一般会做通道剪枝和层融合把冗余的卷积通道去掉再把BN层融合进卷积。量化方面从FP32到INT8是常规操作但要注意量化误差对暗部的影响——暗部数值本来就小量化精度不够会导致暗部出现色带或断层。我们的做法是对暗部区域做特殊的量化校准保证低亮度段的精度。这里有个实操心得不要等模型完全训练好再考虑部署。在训练阶段就要把部署约束考虑进去比如限制网络层数、通道数用可分离卷积替代标准卷积。否则训练出一个效果很好但跑不动的模型返工成本极高。另外不同机芯平台的NPU或DSP对算子支持不一样训练时用的算子要提前和平台对齐避免部署时找不到对应实现。3.3 与传统ISP模块的联调比想象中更磨人AI模块不是孤立工作的它和前后级传统模块的配合非常关键。我踩过的一个典型坑是PixelClean输出的图像在噪声指标上很好看但送进后面的锐化和色彩模块后画面反而出现了新的问题。原因是PixelClean改变了噪声的统计特性后面基于传统噪声模型设计的模块不适应了。解决办法是联调时把PixelClean和前后级模块放在一起评估而不是单独看它的输出。具体来说锐化模块的强度要重新标定因为AI降噪后的图像高频成分和传统降噪后不一样色彩模块的饱和度曲线也要调整因为AI处理后的色彩分布变了。这个过程很磨人但必须做否则单模块指标再好整体画面也不达标。还有一个细节是延迟。PixelClean引入的额外延迟要纳入整个pipeline的时序考虑尤其是需要多帧合成的场景。如果延迟太大机芯的实时性会受影响。我们的做法是优化网络结构减少推理时间同时在pipeline设计上做流水线并行把AI模块的延迟藏在前级处理的时间里。4. 实测中暴露的问题与排查思路4.1 暗部偏色和色噪的根因定位实测中最常见的问题是暗部偏色表现为暗区出现紫色、绿色或蓝色的色噪。这个问题往往不是单一原因造成的排查时要按链路逐级定位。第一步先看PixelClean的输入。如果输入RAW本身在暗部就有明显的通道不平衡比如B通道噪声远大于R通道那问题出在Sensor或前级增益设置上需要先解决输入质量。第二步看PixelClean的输出。如果输出在暗部有规律性的色偏可能是训练数据里暗部样本不足或参考图本身有色偏导致网络学到了错误的色彩映射。第三步看后级色彩模块。如果PixelClean输出正常但经过色彩校正后偏色那是色彩矩阵在低照度下不适用需要针对暗部单独标定。我的排查习惯是先抓各环节的中间图用同一场景对比一眼就能看出问题出在哪一级。这个习惯帮我省了大量猜测时间。另外色噪有时候是量化引起的尤其是INT8量化后暗部精度不够这时候要检查量化校准数据是否覆盖了足够的暗部场景。4.2 运动场景下的拖影与闪烁AI降噪如果用了时域信息运动场景下就容易出现拖影如果处理不稳定还会出现帧间闪烁。这两个问题在夜视机芯里特别敏感因为夜间运动物体行人、车辆本身就难拍。拖影的根因通常是时域融合的权重设计不合理运动区域没有及时降低时域权重。解决办法是引入运动检测在运动区域加大空域降噪的权重、降低时域权重。PixelClean如果本身是单帧处理那拖影问题会小很多但单帧降噪的极限有限所以很多方案是单帧AI降噪加轻量时域后处理。闪烁问题更隐蔽往往是网络对不同帧的输入响应不一致导致的。排查时要看连续多帧的输出如果同一静止场景下画面亮度或色彩有周期性波动那就是闪烁。解决办法包括在训练时加入时序一致性约束或者在推理时对输出做时域平滑。但平滑要适度过度平滑又会引入拖影这又回到了取舍问题。4.3 高光区域的过曝与光晕夜间强光源的处理是另一个难点。传统ISP靠宽动态和局部色调映射来压高光但AI-ISP如果训练数据里高光场景不足网络可能会把高光区域处理得过曝或产生光晕。我遇到过一次典型情况路灯下的画面灯周围有一圈明显的光晕看起来很不自然。排查后发现是PixelClean在训练时高光样本太少网络对高光区域的噪声和真实信号区分不清把光晕当成了需要保留的内容。解决办法是在训练数据里补充大量含强光源的样本并在损失函数里对高光区域加权让网络学会正确压高光。另外高光区域的色彩也容易出问题强光源往往伴随色偏网络如果没学好会把白光处理成偏黄或偏蓝。这个同样靠数据覆盖和针对性的损失设计来解决。5. 调优经验与参数标定的实操建议5.1 分增益档位的参数映射怎么建夜视机芯通常有多个增益档位从低增益到高增益噪声水平差异巨大。用一套参数打天下是不现实的必须建立分档位的参数映射。我的做法是先确定几个关键档位比如1x、4x、16x、64x增益在每个档位下单独标定PixelClean的强度、前后级模块的参数。标定时用标准灯箱和实景结合灯箱保证可重复性实景保证真实性。然后档位之间的过渡用插值避免切换档位时画面突变。这里有个细节增益切换的阈值和迟滞要设计好否则在临界点附近会频繁切换画面忽明忽暗。我们一般会设置一个迟滞区间比如从4x切到16x的阈值和从16x切回4x的阈值不同避免震荡。5.2 主观评价和客观指标怎么平衡调ISP最怕只看客观指标。PSNR、SSIM这些指标高不代表人眼看着舒服。AI-ISP尤其如此因为网络可能为了刷指标而过度平滑指标好看但画面没细节。我的经验是客观指标用来卡底线主观评价用来定方向。具体做法是先用客观指标筛掉明显不达标的版本然后组织多人主观评测重点看暗部细节、色彩自然度、运动流畅度。主观评测要用真实场景的视频而不是单帧图片因为很多问题闪烁、拖影只有看视频才能发现。还有一个技巧是对比评测。把AI-ISP的结果和传统ISP的结果并排播放让评测者盲评这样能避免先入为主的偏见。我们内部做评测时会把两个方案的画面随机左右摆放评测者不知道哪边是AI这样得出的结论更可靠。5.3 版本迭代中的回归测试怎么做AI-ISP的调优是个反复迭代的过程每次改模型或改参数都可能引入回归问题。没有好的回归测试机制很容易出现修好一个场景弄坏另一个场景的情况。我们建立了一套回归测试集包含几十个典型场景的固定视频片段每次迭代都跑一遍对比关键指标和主观评分。一旦发现某个场景退化就定位是哪个改动引起的。这套机制虽然前期投入大但后期省了大量返工时间。另外模型版本和参数配置要严格管理。我见过因为版本混乱导致线上效果和实验室不一致的情况排查起来非常痛苦。建议用配置文件管理所有参数模型文件带版本号和校验每次发布都有完整记录。6. 从机芯选型到方案落地的整体考量6.1 Sensor、镜头和AI-ISP的匹配关系AI-ISP不是万能的它的效果高度依赖输入质量。Sensor的灵敏度、镜头的进光量、红外截止滤光片的切换机制都会影响最终效果。选型时不能只看ISP方案要把整个光学链路一起考虑。比如大光圈镜头能显著提升低照度下的进光量给AI-ISP更好的输入但大光圈带来的边缘解析力下降又需要ISP补偿。Sensor的满阱容量和读出噪声决定了动态范围的上限AI-ISP只能在这个上限内做优化。我见过一些项目AI-ISP方案本身不错但配了低质量的Sensor和镜头效果怎么调都上不去这就是木桶效应。所以我的建议是先定光学和Sensor再定ISP方案三者要匹配。如果预算有限优先保证Sensor和镜头的质量因为这是物理基础ISP再强也变不出不存在的光子。6.2 功耗、延迟与成本的三角平衡夜视机芯是产品不是实验室demo功耗、延迟、成本这三个约束时刻存在。AI-ISP的算力需求比传统ISP高功耗和成本压力更大。功耗方面AI推理的功耗和模型复杂度、运行频率直接相关。我们的做法是根据场景动态调整光线好时降低AI模块的运行频率甚至旁路光线差时才全速运行。这样既保证效果又控制功耗。延迟方面前面提过AI模块的延迟要藏进pipeline。对于有实时性要求的场景比如高速球机延迟必须严格控制必要时牺牲一点效果换速度。成本方面AI-ISP对NPU或DSP有要求芯片选型时要把这部分算力成本算进去。有些方案用FPGA做ISP灵活性高但成本和功耗也高有些用专用ISP芯片成本低但灵活性差。这个取舍要根据产品定位来定没有标准答案。6.3 不同应用场景下的方案取舍夜视机芯的应用场景差异很大方案不能一刀切。固定枪机、球机、车载、门铃对体积、功耗、成本、效果的要求都不一样。比如门铃这类低功耗场景AI-ISP的算力要极度精简可能只能跑轻量级的降噪网络甚至用传统ISP加轻量AI后处理。而专业安防球机算力相对充裕可以跑完整的PixelClean方案追求极致效果。车载场景则对运动处理和宽动态要求极高AI-ISP要针对运动场景专门优化。我的经验是先明确场景的核心需求再倒推方案。不要为了用AI而用AI有些场景传统ISP加好的调优就能满足硬上AI反而增加成本和风险。AI-ISP的价值在于解决传统ISP解决不了的极端场景用对地方才有意义。7. 我对AI-ISP在夜视机芯里的一些个人判断做了几个AI-ISP项目下来我最大的体会是这项技术的门槛不在算法本身而在工程落地。网络结构、训练方法这些学术界和工业界都有成熟方案真正难的是数据采集、模型裁剪、联调标定、回归测试这一整套工程体系。谁能把这套体系跑通、跑顺谁就能做出真正能用的产品。另一个体会是AI-ISP和传统ISP不是替代关系而是互补关系。传统ISP的稳定性、可解释性、低功耗优势在很长时间内都不可替代。AI-ISP应该聚焦在它真正擅长的地方——极端低照度下的降噪和增强而不是试图包揽一切。混合架构会是未来几年的主流。最后说个实操小技巧调AI-ISP时别一上来就盯着最难的场景死磕。先把常规场景调稳建立好评测和回归机制再逐步攻克极端场景。这样节奏更可控也更容易积累经验。我见过太多项目一上来就追求全彩夜视极限效果结果基础没打牢最后连常规场景都做不好。稳扎稳打反而走得更快。