2.3.3 去噪
在完成去马赛克操作之后,原始图像变为了三通道图像,每个像素都包含RGB三通道的强度值。然而,这样的图像中包含各种各样的噪声,因此需要去噪(denoising)操作将其去除。去噪是计算摄像乃至计算机视觉领域的一个经典而热门的议题,有大量的资料可以参考,例如参考文献[7]。本节仅涉及较为粗浅的噪声产生原理以及去噪方法。
了解噪声的来源能够帮助人们理解噪声、在去噪时“对症下药”。数字图像中的噪声主要来源有三种。第一种是散粒噪声(photon shot noise),是由“光子到达相机”事件服从随机泊松分布(Poisson distribution)导致的,主要出现在低光图像中。随着图像亮度的提升,虽然散粒噪声的方差也会提高,但由于它相比信号强度提高得更慢,所以信噪比会增加,散粒噪声也就变得更不明显。第二种是暗电流噪声(dark-shot noise),是由电路的热效应而逸出的电子导致的,在传感器温度越高时会变得越明显,因此也可以通过冷却传感器来抑制。第三种是读出噪声(read noise),是由传感器的读出电路以及模拟前端(包括模拟放大器与模数转换器)中的电路噪声导致的。明亮的场景及较大的像素尺寸可以帮助降低噪声;而在这种情况下,由于像素值强度较大,相比暗电流噪声与读出噪声,散粒噪声是主要的噪声来源。
此处介绍最为简单的两种去噪算法。第一种方法是平均滤波(mean filtering),即对于每个像素,使用其邻域像素值的均值代替其原本像素值,如图2-18b所示。第二种方法是中值滤波(median filtering),相比平均滤波使用了中位数而非均值,如图2-18c所示。这两种去噪算法都对噪声有一定的抑制效果,但同时也会导致图像细节的损失以及面临去噪效果不佳等问题。更加优良和复杂的去噪算法包括双边滤波(bilateral filtering)、非局部平均(non-local means)、甚至是基于卷积神经网络的方法等,能够在去噪的同时尽量保留图像细节。