4. 噪声类型与模型:高斯噪声、泊松噪声、椒盐噪声、固定模式噪声的数学模型

做安防监控图像处理这些年,我打交道最多的就是噪声。说白了,噪声就是图像里那些不该出现的随机波动。你想想看,一个监控摄像头在低照度环境下拍出来的画面,那种密密麻麻的颗粒感,就是噪声在作祟。

要搞定噪声,首先得摸清它的脾气。每种噪声都有自己的数学模型,理解了模型,才能对症下药。这一章我就带你把这四种最常见的噪声模型掰开揉碎了讲清楚。

4.1 高斯噪声:最普遍的背景噪声

高斯噪声是安防监控里最常见的噪声类型。它主要来自传感器本身的电子热运动,还有电路放大器的随机波动。我习惯叫它“白噪声”,因为它的功率谱密度在整个频域里是均匀的。

高斯噪声的概率密度函数长这样:

P(x) = (1 / (σ * √(2π))) * exp(-(x - μ)² / (2σ²))

其中:

  • μ —— 均值,通常为0
  • σ —— 标准差,决定噪声强度
  • x —— 像素灰度值

关键参数:高斯噪声的强度完全由标准差 σ 控制。σ 越大,画面越花。

我在项目中遇到过一个问题:某款IPC在夜间模式下,画面总是灰蒙蒙的。排查了半天,发现是传感器温度升高导致热噪声增大,σ值从正常的5跳到了12。后来加了温控补偿,问题才解决。

4.2 泊松噪声:光子计数的随机性

泊松噪声跟光子的量子特性有关。说白了,就是单位时间内到达传感器的光子数量不是固定的,而是服从泊松分布。这在低照度环境下特别明显。

泊松分布的数学模型:

P(k) = (λ^k * e^(-λ)) / k!

其中:

  • λ —— 平均光子数(也是方差)
  • k —— 实际观测到的光子数

个人经验:泊松噪声有个特点——它的方差等于均值。这意味着信号越弱(λ越小),噪声相对信号的比例就越大。这就是为什么夜景监控画面总是噪点满满。

我记得有一次做星光级摄像头的去噪算法,一开始用高斯模型去拟合,效果很差。后来换成泊松-高斯混合模型,才把暗区的噪声压下去。嗯,这里要注意,纯泊松模型只适用于光子计数阶段,实际传感器输出还要叠加读出噪声(高斯)。

4.3 椒盐噪声:脉冲式的像素损坏

椒盐噪声,也叫脉冲噪声。它的表现就是图像上随机出现白点(盐)和黑点(椒)。这通常是因为传感器像素单元损坏、ADC采样错误或者传输过程中的比特翻转造成的。

椒盐噪声的数学模型比较简单:

P(x) = 
  p_a,  x = 0    (黑点,椒)
  p_b,  x = 255  (白点,盐)
  1 - p_a - p_b,  x = 原始值

其中:

  • p_a —— 出现黑点的概率
  • p_b —— 出现白点的概率

避坑指南:我曾经在一条产线上发现,某批次的摄像头在高温老化后,椒盐噪声密度从0.1%飙升到5%。后来查出来是焊点虚焊导致的数据线接触不良。所以,遇到椒盐噪声,先别急着调算法,先查硬件。

4.4 固定模式噪声:传感器的“胎记”

固定模式噪声(FPN)是每个传感器独有的“指纹”。它表现为图像上固定的条纹、网格或斑点,不随时间变化。这主要是因为传感器制造工艺的差异,每个像素的暗电流和增益不完全一致。

FPN的数学模型:

I_out(x,y) = G(x,y) * I_in(x,y) + O(x,y)

其中:

  • I_out —— 输出像素值
  • I_in —— 理想像素值
  • G(x,y) —— 像素(x,y)的增益偏差
  • O(x,y) —— 像素(x,y)的暗电流偏移

核心理解:FPN是乘性噪声(增益)和加性噪声(偏移)的组合。它不随机,是确定性的,所以理论上可以通过标定来校正。

我做过一个项目,客户投诉某款摄像头画面有“水波纹”。我一看就知道是FPN没校准好。后来用均匀光源采集了100帧暗场和亮场,计算每个像素的G和O,写入传感器寄存器,水波纹就消失了。

4.5 四种噪声的对比与实战选择

在实际项目中,你遇到的往往是多种噪声的混合体。我整理了一张对比表,方便你快速判断:

噪声类型 来源 分布特性 数学模型 典型场景
高斯噪声 热噪声、放大器噪声 正态分布,均匀 P(x) = (1/(σ√2π))·exp(-(x-μ)²/(2σ²)) 所有光照条件
泊松噪声 光子计数随机性 泊松分布,信号相关 P(k) = λᵏ·e⁻λ / k! 低照度、弱光
椒盐噪声 像素损坏、传输错误 脉冲式,稀疏 P(0)=pₐ, P(255)=p_b 硬件故障、传输干扰
固定模式噪声 传感器工艺差异 固定位置,不随机 I_out = G·I_in + O 所有场景(需标定)

实战建议:我个人的习惯是,拿到一张噪声图像,先做三步诊断:

  1. 看噪声是否随信号强度变化 → 是则考虑泊松,否则高斯
  2. 看是否有固定位置的亮点/暗点 → 有则考虑FPN
  3. 看是否有随机出现的纯黑/纯白点 → 有则考虑椒盐

4.6 噪声模型知识图谱

下面这张图把四种噪声的核心要素串起来了,方便你建立整体认知:

安防监控噪声模型知识图谱 噪声模型 高斯噪声 泊松噪声 椒盐噪声 固定模式噪声 属性 • 来源:热噪声、放大器 • 分布:正态分布 • 参数:μ=0, σ控制强度 属性 • 来源:光子计数随机性 • 分布:泊松分布 • 参数:λ=均值=方差 属性 • 来源:像素损坏、传输错误 • 分布:脉冲式 • 参数:pₐ(黑), p_b(白) 属性 • 来源:工艺差异 • 分布:固定位置 • 参数:G(增益), O(偏移) 实战要点:混合噪声模型 + 针对性去噪策略 💡 诊断顺序:看信号相关性 → 看固定位置 → 看脉冲点 然后选择对应模型进行参数估计与去噪

4.7 噪声模型的参数估计

知道了模型,还得会估计参数。我常用的方法有几种:

  • 高斯噪声:取一块均匀区域(比如天空),计算像素值的标准差σ。我习惯取100x100的块,多取几块取平均。
  • 泊松噪声:在不同光照下采集多帧图像,计算每个像素的均值和方差,验证方差是否等于均值。
  • 椒盐噪声:统计图像中纯黑(0)和纯白(255)像素的比例。注意要排除图像本身的黑白区域。
  • 固定模式噪声:盖上镜头盖拍暗场,计算每个像素的偏移O;再用均匀光源拍亮场,计算增益G。

注意:参数估计的精度直接影响去噪效果。我曾经见过有人用100x100的块估计高斯噪声,结果块里有纹理,σ估计值偏大了一倍,去噪后图像糊成一片。所以,选块一定要选平坦区域。

好了,四种噪声的数学模型就讲到这里。理解了这些模型,后面讲去噪算法时,你就能明白为什么中值滤波对椒盐噪声有效,为什么高斯滤波对高斯噪声有效,为什么FPN需要标定而不是滤波。这些都是环环相扣的。