图像滤波(Image Denoising)

如题所述

第1个回答  2022-07-05
        在讨论所有问题之前,首先要对滤波这个问题进行良好的数学建模,一般来讲光学图像滤波都会采用如下的模型

其中 代表了空间位置信息, 代表了对应 位置上的观察到的像素值信息, 代表了对应 位置上真实的像素值信息,是需要求解的对象,常常被称为ground truth, 是均值为0的随机噪声。

       如果对同一目标 进行多次观测,为了从这一系列观测到的值 中恢复出真实的信号,根据贝叶斯的理论框架,如果已知独立同分布的噪声 的概率密度函数 ,有表达式

滤波问题就是在求解如下的方程

在均匀先验 的假设下,如果 是零均值高斯白噪声 ,存在如下的表达式

很显然,上式的解就是常见的均值滤波器。它建立在对于同一个目标的多次观测的假设基础上。在图像处理中,一般认为空间上临近的像素其相同的可能性大,因此往往在目标点的空间领域内进行均值操作。但是上式的要求是严格的,它要求周围像素点和中心像素点拥有相同的真值。可以想象,这种方法在匀质区域上拥有较好的效果,事实上它是匀质区域在最小方差无偏意义上最好的滤波器,达到了该问题的克拉美罗界。对于非匀质区域,周围像素点不再和中心像素点保持绝对一致,该滤波器无偏差地滤掉了属于信号的高频信息(比如边缘信息),引起了边缘模糊等现象。因此后来引入了拥有权重的滤波器,对这些周围领域像素点赋予不同的权重,和中心像素点越相似的权重越大,越不相似的权重越小。这些滤波器可以统一地用下面的式子来表达

其中的权重 是一个对称的正值的函数,它代表了像素之间的相似性和距离。很多滤波算法都可以用上式来表达,它们之间的区别就在于这个权重函数 的不同。前面的均值滤波器也是其中的一种特殊情况,其中 。此外还有常见的高斯滤波器(Gaussian Filter,GF),它把权重函数写成只和位置 相关的函数,认为在空间上距离 越近相似度越大,距离越远相似度越小,其中相似度权重和距离的关系采用高斯函数来描述,如果距离度量采用欧氏距离,其权重可以用下式表达

除了高斯函数之外,还有很多类似的只与空间位置相关的核函数。遗憾的是这样的描述方式只考虑了空间上的关系,缺少了基于内容的修正,因此并没有解决边缘、角点这样的高频信号的模糊问题,因此后来提出了双边滤波器,其权重函数如下式所示

这种双边滤波器考虑到了像素值之间的相似程度,对于含有边缘的图像能够起到一定的保边作用。但是双边滤波器对于低信噪比下的图像,性能会恶化。这是因为噪声的干扰,处于同一边的像素点之间的相似程度也会很低。其根本原因在于位置 的值是精确的,但是像素 的值是近似的,直接采用单个像素的 值会受到噪声的影响,为了增加滤波器对于噪声的抵抗力,需要用周围领域来估计和 相关的参数,因此后面又有学者提出了局部自适应回归核LARK,其权重核函数如下所示

这种方法首先估计窗内每个点的梯度协方差矩阵,然后求平均,这一步的本质就是在求解窗内边缘的方向,以便于制定和图像结构相关的滤波器核函数。相比于前面的均匀滤波和高斯滤波,LARK权重系数在每个方向上下降的速度是不一样的,和梯度的大小成正相关,因此它考虑了图像本身的结构信息。相比于双边滤波器,LARK利用周围领域来估计和 相关的系数,抗噪声能力更强。LARK可以认为是一种从数据中学习鲁棒的结构探针的方法。

为了进一步提升性能,需要将更多的相似像素加入到这个估计式子中来,因此有必要将周围领域扩大到更大的范围,比如说全图,这就是非邻域平均算法(Non-Local Mean,NLM)的出发点。可以用下面的式子来表达

它完全忽视了距离对于权重的影响,只考虑图像像素和结构之间的相似性,这样可以把更多的属于同一目标的像素点加入到计算中来,进一步降低估计结果的方差,提高泛化性能。遗憾的是如果严格按照公式来,对每一点都要做这样的全图相似性计算操作,其计算复杂度急剧上升,因此在应用中往往还是采用local的邻域方案,只不过是一个相对更大的邻域而已。如果Non-Local算法只根据单个像素的观测值 来计算权重,同样对于低信噪比下的结果会造成性能恶化。一般采用基于小块的Non-Local算法来增强算法的鲁棒性。但是对于那些不具有自相似性的图像,会过度平滑复杂不规则结构。

如果对式用矩阵的方式来描述,那么可以写成

上面方程的闭式解是

上式是对单点滤波的闭式解,如果是对整个区域里的点滤波则可以写成

可以看到前面这些空域方法的核心就是权重参数 ,虽然不同方法得到的参数不一样,但它们都是周围邻域点的函数。如果对式稍作变换可以得到

这就是变换域滤波算法,先把信号 通过正交矩阵 变换到变换域上,然后在变换域通过矩阵 进行滤波,再通过正交矩阵 变换到原域上。常用的变换有傅里叶变换、小波变换、DCT变换等等。

前面提到的算法都是从式 出发的,它们有一个共同的特性,就是都在均匀先验 的假设下。这种假设认为滤波的图像的像素值均匀分布在整个色彩空间,而事实上,实际中的图像在整个色彩空间是有一定偏好的。如果利用这种先验信息,那么可以得到更好的结果。

这种先验包括非常流行的稀疏先验假设,稀疏先验假设认为任意一个图像 都可以用一个完备的字典 稀疏表达,它的先验就是字典表达的稀疏性,也被称为稀疏编码(Sparse Coding,SC),如下式所示

其中 是图像 在字典 下的表达。

还有一种很流行的先验是变分(Total Variation,TV)约束先验。这种先验的想法来源于Rudin在文献中提到的一个经验性的观察:含有噪声的图像比没有噪声的图片,其变分绝对值之和要大很多。因此这可以作为一种信息对优化加以约束。具体表达式如下

在这些约束的作用下,使得滤波器更加倾向于修复符合先验的图像(概率大的 ),而不再是在全空间修复,对于特定问题可以超越一般的算法,先验越符合实际,效果就越好。

注意到前面的这些方法,往往需要真值的一些特征参数,包括像素值、边缘主方向等等。这些参数由于噪声的干扰,本身也变成了一个随机变量。前面已经出现了用一个小patch来估计这些参数的方法,大大改善了估计的准确度。除此以外,还出现了循环方法,这些循环包括串联滤波器,使得下一次的参数基于上一次滤波之后的更准确的结果,以达到比上一次更加准确的最终估计值(偏差不断变大,方差不断变小),也包括残差滤波,不断挖掘被滤掉部分中的高频信息叠加到最后的结果中(偏差不断变小,方差不断变大)。它们不断叠加的结果就是方差和偏差之间的权衡,在均方误差(Mean Squared Error,MSE)最小的情况下,线性滤波器通过最优迭代最终演变成维纳滤波,达到线性均方最小误差问题(Linear Minimun Mean Square Error,LMMSE)的克拉美罗界。

文献Image Denoising by Sparse 3-D Transform-Domain Collaborative Filtering提出了一种新的滤波方法BM3D,它参考了NLM在很大的领域内搜索相似块,并且在变换域进行滤波,同时考虑了空间的位置关系和块之间的特征相似性,并且采用了迭代的方法。使得下一次得到的维纳滤波器参数估计更加准确,达到了经典滤波算法的state of art。该方法非常复杂,以至于没法简单的用数学表达式来表达权重参数 。具体的细节可以参考文献。

这些传统方法都有一个很大的缺陷,就是需要事先得知图像的噪声强度或者信噪比来估算其中的某些参数,这给实际应用带来了很大的限制。有时候甚至在同一张图像上的噪声强度并不是均匀的,而是有差别的,而这些方法都不能应对这样的情况。更重要的是,它们本身就是浅层的神经网络,表达能力有限。因此后面出现了采用神经网络的方法。

未完待续……
相似回答
大家正在搜