Asymptotic Non-local Means Image Denoising Algorithm
-
摘要: 非局部平均去噪算法(Non-local means denoising algorithm, NLM)是图像处理领域具有里程碑意义的算法, NLM的提出开启了影响深远的非局部方法. 本文从以下两个方面来重新探讨非局部平均算法: 1) 针对NLM算法运算复杂度高的问题, 基于互相关(Cross-correlation, CC)和快速傅里叶变换(Fast Fourier transformation, FFT)构造了一种快速算法; 2) NLM在滤除噪声的同时会模糊图像结构信息, 在强噪声条件下更是如此. 针对这一问题, 提出了一种渐近非局部平均图像去噪算法, 该算法利用方差的性质来控制滤波参数. 数值实验表明, 快速算法较之经典算法, 在标准参数配置下运行速度可提高27倍左右; 渐近非局部平均图像去噪算法较之经典非局部平均图像去噪算法, 去噪效果显著改善.Abstract: Non-local means denoising (NLM) algorithm is a milestone algorithm in the field of image processing. The proposal of NLM has opened up the non-local method which has a deep influence. This paper performed a revisit for NLM from two aspects as follows: 1) To alleviate the high computational complexity problem of NLM, a fast algorithm was constructed, which was based on cross-correlation and fast Fourier transform; 2) NLM always blur structures and textures during the noise removal, especially in the case of strong noise. To solve this problem, an asymptotic non-local means (ANLM) image denoising algorithm is put forward, which uses the property of noise variance to control the filtering parameters. Numerical experiments illustrate that the fast algorithm is 27 times faster than classical implementation with standard parameter configuration, and the ANLM obtain better denoising effect than classical NLM.
-
图像经常在采集和传输过程中被噪声污染, 噪声的存在会降低图像质量, 影响人们对图像的观察. 在与图像相关的各种应用中, 有效地抑制噪声有助于产生可靠的结果. 因此, 对图像进行预先的去噪处理非常重要.
图像去噪一直是图像处理领域的一个重要研究课题, 研究学者们根据噪声特性, 提出了许多关于空域或频域的滤波方法. 其中, 空域滤波是基于邻域处理的增强方法, 直接在图像所在的二维空间进行处理, 即处理每一个像素点的灰度值. 其主要方法有均值滤波、中值滤波、高斯滤波和维纳滤波等[1-4]. 而频域滤波是将图像变换到频域后, 在频域中处理其变换系数, 然后再进行逆变换得到滤波后的图像. 常用的变换包括小波变换[5-6]、傅里叶变换[7]、基于过完备字典的稀疏表示[8-9]、基于多尺度几何分析的变换等[10-12]. 以上这些方法大多是基于局部处理的思想, 即通过对像素点邻域内所有像素或部分像素进行加权平均从而实现图像去噪. 1998年Tomasi等[13]提出了利用两个像素空间上的邻近关系和灰度上的相似性来确定权值的方法, 此为非局部思想的雏形. 2005年Buades等[14]基于图像中包含大量自相似结构的特点, 提出了非局部平均去噪算法(Non-local means denoising algorithm, NLM), 该算法利用加权平均的思想来估计待处理像素点的值, 权重的大小利用两个图像块的相似性来计算, 图像块之间的相似性由高斯加权欧氏距离度量. NLM充分利用了自然图像中存在的大量冗余信息, 能更好地保持图像的细节和纹理.
为了获得更好的去噪性能, 许多学者对非局部平均去噪算法进行了深入的研究. 2007年Dabov等[15]提出了BM3D (Block-matching and 3D filtering)的方法, 该方法利用图像块之间的相似性, 对具有相似结构的图像块进行三维变换域滤波. 2018年Verma等[16]通过给每个像素重新选取合适的平滑参数, 提出了一种基于灰色关联分析的非局部滤波方法. 2009年Tasdizen等[17]提出了基于主成分分析(Principle component analysis, PCA)的方法, 该方法利用PCA将图像邻域向量投影到低维子空间, 然后利用子空间中的距离计算相似性权值. 2011年Grewenig等[18]提出通过旋转来查找更相似的图像块的方法, 将图像中相似的图像块尽可能地提取出来. 2013年Wu等[19]提出了根据图像块差异的概率确定权值的方法, 该方法在高斯噪声的假定下推导了图像块之间差异的概率分布, 并根据此概率分布来确定非局部平均算法中的权值. 2016年蔡斌等[20]提出了基于候选集选取的方法, 先搜索灰度分布相似的图像块组成候选集, 然后在候选集中选取结构更为相似的图像块. 2019年Bo等[21]提出了利用模糊理论来重新度量图像像素之间相似性的方法. 2017年Nguyen等[22]对James-Stein型中心像素权重估计方法进行了改进. 2014年Jacques[23]提出了利用积分图像(Integral images)技术对NLM算法进行加速的方法, 该方法对原始图像进行整体平移, 而后通过对平移前后的两幅图像逐点计算差的平方来建立积分图像, 而利用积分图像计算两个图像块之间的欧氏距离可以避免一定重复计算. 2016年黄智等[24] 利用图像块的奇异值分解重新定义邻域间的相似度, 提出了混合相似性权重的方法. 2013年张选德等[25]利用奇异值分解建立符合“两方向”和“求同存异”原则的非局部图像去噪模型.
本文从以下两个方面来重新探讨非局部平均算法: 1) 针对算法时间复杂度高的问题, 提出一种快速非局部平均去噪算法(Fast non-local means denoising algorithm, FNLM), 该算法借助互相关(Cross-correlation, CC)和快速傅里叶变换(Fast Fourier tramsformation, FFT)来计算两个图像块之间加权欧氏距离. 2) NLM算法在滤除噪声的同时会模糊图像的结构信息, 针对这一问题, 本文提出一种渐近非局部平均方法(Asymptotic non-local means, ANLM), 该方法利用方差的性质来控制滤波参数, 通过对图像的渐近滤波来缓解结构信息的模糊. 数值实验表明, 快速算法较之经典方法, 在标准参数配置下运行速度可提高27倍左右; 渐近非局部平均图像去噪算法较之经典非局部平均图像去噪算法, 能更好地保持图像的结构信息, 从而获得更好的去噪效果.
本文结构安排如下: 第1节给出退化模型和非局部平均图像去噪算法的基本原理; 第2节介绍快速非局部平均图像去噪算法; 第3节介绍ANLM去噪算法; 第4节通过仿真实验来验证FNLM和ANLM算法的有效性; 第5节对本文的工作进行总结.
1. 非局部平均图像去噪算法
1.1 退化模型
假定退化模型为
$$ g = f+\eta $$ (1) 其中,
$ f $ 表示理想的干净图像,$ g $ 表示噪声图像,$ \eta $ 表示独立同分布(均值为零、标准差为$\sigma)$ 的高斯噪声.1.2 NLM算法
假定噪声图像
$ {g} = \{g(i)|i\in{{\Omega}}\} $ , 滤波后的图像$ {{\hat{g}}} = \{{\hat{g}}(i)|i\in{{\Omega}}\} ,$ 其中,$ {{\Omega}} $ 为图像区域,$ i $ 为像素索引. NLM算法中,$ {\hat{g}}(i) $ 可表示为$$ {\hat{g}}(i) = \frac{\sum\limits_{j\in{{\Omega}}_i}{w(i,j)g(j)}} {\sum\limits_{j\in{{\Omega}}_i}{w(i,j)}} \qquad $$ (2) $$ w(i,j) = \exp\left(-\frac{d(i,j)}{h^{2}}\right) \quad $$ (3) $$ d(i,j) = \|N(i)-N(j)\|_{2,\alpha}^{2} \, $$ (4) 其中,
$ N(i), N(j) $ 分别表示以像素$ i, j $ 为中心、大小为$ p\times p $ 的图像块;$ d(i,j) $ 为$ N(i) $ 与$ N(j) $ 之间的加权欧氏距离,$ \alpha $ 表为高斯核的标准差,$ w(i,j) $ 为赋予$ g(j) $ 的权值, 式(2)中分母$ \sum_{j\in{{\Omega}}_i}{w(i,j)} $ 表示归一化因子, 归一化因子保证权值之和为1;$ h $ 控制着滤波的平滑程度, 通常取$ h $ 为噪声的标准方差, 即$ h = \sigma $ ; 在算法中每个图像块都要与搜索区域中所有的图像块进行相似性比较, 若搜索区域为整个图像, 计算量将非常大. 为了提高算法的速度, 将$ {{\Omega}}_i $ 取为以像素$ i $ 为中心、大小为$q\times q$ 的方形区域.2. 快速非局部平均图像去噪算法
在NLM算法中, 运算量主要消耗在两个图像块之间加权欧氏距离的计算上. 假设图像的大小为
$ N\times N $ , 像素点$ i $ 为待处理像素, 搜索区域$ {{\Omega}}_i $ 的大小为$ q\times q $ . 为了计算$ {\hat{g}}(i) $ , 需要计算$ N(i) $ 与搜索区域$ {{\Omega}}_i $ 中每个图像块$ N(j) $ ,$ j\in{\Omega}_i $ 之间的加权欧氏距离. 如此一来, 处理一个像素点需要计算$ 2p^{2}q^{2} $ 次乘法, 而处理整个图像需要计算$ 2N^{2}p^{2}q^{2} $ 次乘法. 因此, NLM的计算复杂度为$ {\rm{O}}\left(N^{2}p^{2}q^{2}\right) $ . 如上所述, NLM算法需要进行逐像素处理, 而且处理每个像素时需要计算以该像素为中心的图像块与搜索区域中每个图像块之间的加权欧氏距离, 因此存在大量的重复计算. 为了提高算法的执行效率, 下面利用互相关来构造一种快速算法.由式(2)
$\sim $ (4)可见, NLM算法在处理第$ i $ ,$ i\in{{\Omega}} $ 个像素时, 需要计算图像块$ N(i) $ 与$N(j),$ $ j\in{\Omega}_i $ 之间的加权欧氏距离$$ \begin{array}{l} \|N(i)-N(j)\|_{2,\alpha}^{2} = \\ \;\;\;\;\;\;\;\;\;\|N(i)\|_{2,\alpha}^{2}+\|N(j)\|_{2,\alpha}^{2}-2\times N(i)\otimes N(j) \end{array} $$ (5) 其中,
$ \|N(i)\|_{2,\alpha}^{2} , \|N(j)\|_{2,\alpha}^{2} $ 分别表示图像块$ N(i) $ ,$ N(j) $ 的加权2-范数的平方,$ N(i)\otimes N(j) $ 表示$ N(i) $ 与$ N(j) $ 的加权内积, 此处的“加权”是利用高斯核函数来完成的. 计算$ N(i) $ 中所有像素值的平方, 然后求和, 就得到了$ N(i) $ 的2-范数的平方$ \|N(i)\|_{2}^{2} $ ; 而计算$ N(i) $ 中所有像素值的平方, 然后求高斯加权和, 就得到了加权2-范数的平方$ \|N(i)\|_{2,\alpha}^{2} $ . 类似地, 计算$ N(i) $ 与$ N(j) $ 的逐点之乘积, 然后求和, 就得到$ N(i) $ 与$ N(j) $ 的内积; 而计算$ N(i) $ 与$ N(j) $ 的逐点之乘积, 然后求高斯加权和, 就得到$ N(i) $ 与$ N(j) $ 的加权内积.由式(5)可见, NLM算法需要计算
$ \|N(i)\|_{2,\alpha}^{2} $ ,$ \|N(j)\|_{2,\alpha}^{2} $ ,$ i\in{{\Omega}} $ ,$ j\in{\Omega}_i $ 及其$ N(i)\otimes N(j) $ ,$ i\in{{\Omega}} $ ,$ j\in{\Omega}_i $ . 下面说明如何来简化计算: 1)关于$ \|N(i)\|_{2,\alpha}^{2} $ ,$ \|N(j)\|_{2,\alpha}^{2} $ ,$i\in{{\Omega}},$ $ j\in{\Omega}_i $ 的计算. 利用高斯函数对平方图像(计算输入图像的逐点平方所得的图像)做相关滤波, 可以计算出整个图像中所有图像块的加权2-范数的平方, 在后续处理中只需直接调用这些值. 2)关于$ N(i)\otimes N(j) $ ,$ i\in{{\Omega}} $ ,$ j\in{\Omega}_i $ 的计算. 对于每个$ i\in{{\Omega}} $ , 同样可利用互相关滤波一次性计算所有$ N(i)\otimes N(j) $ ,$ j\in{\Omega}_i $ 的值. 上面借助互相关滤波来减少NLM算法中的重复计算, 而互相关滤波可利用FFT加速实现.一般地, 对于二维信号
$ h(t) $ ,$ I(t) $ ,$ t\in {\bf R}^{2} $ ,$ h(t) $ 与$ I(t) $ 的互相关定义为$$ (h\star I)(\tau)= {\sum\limits_{t\in T}\overline{{h}(t)}}{I(t+\tau)} $$ (6) 其中,
$\overline{{h}(t)}$ 为$ h(t) $ 的复共轭,$ \tau $ 为位移,$ T $ 为互相关滤波时的图像窗口. 类似于卷积定理, 互相关满足$$ {\cal F}\{h\star I\} = \overline{{\cal F}(h)}\cdot {\cal F}\{I\} $$ (7) $$ \{h\star I\} = {\cal F}^{-1} \{\overline{{\cal F}(h)}\cdot {\cal F}\{I\}\} $$ (8) 其中
$ {\cal F} $ ,$ {\cal F}^{-1} $ , 分别表示傅里叶变换和傅里叶逆变换, 符号“$ \star $ ”表示互相关, 符号“$ \cdot $ ”表示逐点相乘,$\overline{{\cal F}(h)}$ 为$ {\cal F}\{h\} $ 的复共轭.从而, NLM中关于相似度的计算, 可转化为FFT来实现
1)
$ \|N(i)\|_{2,\alpha}^{2} $ ,$ \|N(j)\|_{2,\alpha}^{2} $ ,$ i\in\Omega $ ,$ j\in{\Omega}_i $ 由$$ {\cal F}^{-1} \{\overline{{\cal F}(G)}\cdot {\cal F}\{g\cdot g\}\} $$ (9) 来计算.
2)对于每个
$ N(i)\otimes N(j) $ ,$ i\in{{\Omega}} $ ,$ j\in{\Omega}_i $ 由$$ {\cal F}^{-1} \{\overline{{\cal F}\{G\cdot N(i)\}}\cdot {\cal F}\{D(i)\}\} $$ (10) 来计算. 其中
$ G $ 为高斯加权函数,$ D(i) $ 为搜索窗图像, 即位于$ {\Omega}_i $ 区域的图像块, 如图1所示.3. 渐近非局部平均图像去噪算法
在NLM算法中, 滤波参数
$ h $ 通常取噪声的标准方差, 即$ h = \sigma $ . 如图2所示, 滤波参数$ h $ 的取值越小, 权值$ w(i,j) $ 受图像块之间加权欧氏距离$ d(i,j) $ 的影响越大; 反之, 滤波参数$ h $ 的取值越大, 权值$ w(i,j) $ 受图像块之间加权欧氏距离$ d(i,j) $ 的影响越小. 因此, 当图像中含有强噪声时, 即$ h = \sigma $ 取值较大时, 权值趋于一致, 而NLM的去噪效果也趋于均值滤波的滤波效果, 即图像结构和细节信息丢失, 图像变得模糊. 图3中以Straw图像为例, 当滤波参数的值为100时, 可以看出NLM滤波后得到的图像非常模糊.为了缓解上述问题, 我们采取渐近滤波的方法, 即进行多次滤波. 假定进行
$ K $ 次滤波,$ K $ 次的滤波参数分别为$ h_{1}(i),h_{2}(i),\cdots,h_{k}(i) $ , 其中$h_{k}(i) < \sigma,$ $k = 1,2,\cdots,K, i\in{{\Omega}}$ , 这样每次滤除少量噪声的同时尽可能保持图像的结构, 以此来增强算法的结构保持能力. 但是, 到底进行多少次滤波和每次滤波参数应当如何选取, 都难以进行建模分析. 简单起见, 这里采用两阶段滤波, 第1次滤波的滤波参数为$ h_{1}(i) = $ $ 0.5\sigma, i\in{{\Omega}} $ (所有的点使用相同的滤波参数), 而第2次滤波参数$ h_{2}(i) $ 利用第1次滤波的权值来进行逐点计算(每个点上使用不同的滤波参数).假设
$ X_{i},i = 1,2,\cdots,n $ 为独立同分布的随机变量, 则有$$\begin{split} D\left(\sum\limits_{i = 1}^{n}a_{i}X_{i}\right) =& \sum\limits_{i = 1}^{n}a_{i}^2D(X_{i})+\\ &2\sum\limits_{1\leq i}\sum\limits_{<j\leq n}a_{i}a_{j}{{{\rm{Cov}}}(X_{i},X_{j}}) \end{split} $$ (11) 其中,
$ D $ 表示方差,${{\rm{Cov}}}(X_{i},X_{j})$ 表示协方差, 由于$ X_{1},X_{2},\cdots,X_{i} $ 是相互独立的, 则${\rm{Cov}}(X_{i},X_{j}) = 0,$ $i\neq j,$ 于是$$ D\left(\sum\limits_{i = 1}^{n}a_{i}X_{i}\right) = \sum\limits_{i = 1}^{n}{a_{i}^2}{D(X_{i})} $$ (12) 由于噪声是独立同分布的, 因此根据式(12), 第1次滤波后, 每个像素点
$ i\in\Omega $ 处的噪声标准差为$$ \sigma_{2}(i) = \sqrt{{\sum\limits_{j\in{\Omega}_i}}{w^{2}(i,j)}\sigma^2}, \quad i\in\Omega $$ (13) 而第2次滤波时平滑参数取为每一个像素点处的噪声标准差, 即
$$ {h_{2}(i)} = \sigma_{2}(i) = \sqrt{{\sum\limits_{j\in{\Omega}_i}}{w^{2}(i,j)}\sigma^2}, \;\;i\in\Omega $$ (14) 图4给出了对含噪的Lena图像(
$ \sigma = 25 $ )进行两阶段渐近滤波的效果图. 其中, 图4(a)表示噪声图像, 图4(b)表示对图4(a)进行滤波的结果(第1次), 而图4(c)表示对图4(d)进行滤波的结果(第2次).4. 仿真实验分析
4.1 FNLM实验结果与分析
FFT在工程实践中有广泛的应用, 其计算速度较之离散傅里叶变换(Discrete Fourier transform, DFT)有明显优势. 对长度为
$ M $ 的信号进行DFT, 其计算复杂度为${{\rm{O}}}(M^{2}),$ 而FFT的计算复杂度为${\rm{O}}(M{{{{\rm{log}}}}_2}M).$ 在FNLM算法中, 计算两个图像块之间加权欧氏距离的过程转换为FFT来实现, 这样在减少重复计算的同时大大降低了算法的时间复杂度. 由FFT性质, 式(9)的计算复杂度为${\rm{O}}(2N^{2}+$ ${2N^{2}{{\rm{log}}_2}N^{2}}+{p^{2}{{\rm{log}}_2}p^{2}}) ,$ 式(10)的计算复杂度为${\rm{O}}\left(N^{2}\left({2q^{2}{{{{\rm{log}}}}_2}q^{2}}+{p^{2}}+{p^{2}{{{{\rm{log}}}}_2}p^{2}}+{q^{2}}\right)\right)$ , 则FNLM算法的计算复杂度为${\rm{O}}(N^{2}({{{{{\rm{log}}}}_2}N}\!+\! \dfrac{p^{2}{{{{\rm{log}}}}_2}p}{N^{2}}\!+\! q^{2}{{{{\rm{log}}}}_2}q+ {p^{2}{{{{\rm{log}}}}_2}p})) .$ 由第2节的分析可知, 传统NLM算法的计算复杂度为${{\rm{O}}}\left(N^{2}p^{2}q^{2}\right) .$ 由于$\lim_{\substack{x\to +\infty}} {\dfrac{{{\rm{log}}_2}x}{x^{k}}} = 0\; (k > 0)$ , 因此, 当$ N $ 固定时$$ \lim\limits_{\substack{q\to +\infty\\ p\to -\infty}}{\frac{N^{2}({{{{\rm{log}}_2}N}+{\frac{p^{2}{{\rm{log}}_2}p}{N^{2}}} +q^{2}{{\rm{log}}_2}q}+{p^{2}{{\rm{log}}_2}p})}{N^{2}p^{2}q^{2}}} = 0 $$ (15) 这意味着当
$ p $ 和$ q $ 取值较大时, FNLM的运算量比传统NLM的运算量要小.下面通过仿真实验对NLM、FNLM、NLM-P[23]三种实现方法的运行时间进行比较. 三种方法均采用MATLAB R2016b实现, 计算平台为dell-PC Intel(R) Core(TM) i7-7700 VPU @ 3.60 GHz 3.60 GHz, 8 GB内存的计算机. 表1列出了利用三种算法分别对512
$\times \;512$ 的Lena图像进行去噪处理, 参数$ p $ ,$ q $ 取不同值时的运行时间. 从中可见, 无论参数$ p $ 和$ q $ 取何值, FNLM比NLM和NLM-P算法的运行时间都要快. 在标准参数配置下, 即$ p = 5 $ ,$ q = 21 $ 时, NLM-P较之NLM的运算速度可提高13倍左右; 而FNLM较之NLM的运算速度可提高27倍左右. 当$ p = 3 $ ,$ q = 101 $ 时, NLM-P较之NLM的运算速度可提高31倍左右; FNLM较之NLM的运算速度可提高103倍左右. 而当$ p = 3 $ ,$ q = 51 $ 时, FNLM较之NLM-P的运算速度可提高8倍左右(均已加粗显示).表 1 三种去噪算法运行速度的比较Table 1 Comparison of running speeds of three denoising algorithms图像块
尺寸搜索区域
尺寸NLM运行
时间 (s)NLM-P运行
时间 (s)FNLM运行
时间 (s)NLM与NLM-P
运行时间之比值NLM与FNLM
运行时间之比值NLM-P与FNLM
运行时间之比值3 × 3 21 × 21 232.79 19.41 7.17 11.99 32.46 2.71 3 × 3 31 × 31 505.64 42.01 10.53 12.04 48.02 3.99 3 × 3 51 × 51 873.02 113.04 13.95 7.72 62.58 8.10 3 × 3 101 × 101 5 024.73 160.10 48.49 31.38 103.62 3.30 5 × 5 21 × 21 236.12 18.29 8.68 12.91 27.20 2.11 5 × 5 31 × 31 512.77 39.90 12.74 12.85 40.25 3.13 5 × 5 51 × 51 911.16 108.04 16.19 8.43 56.28 6.67 5 × 5 101 × 101 5 159.80 154.83 53.13 33.33 97.12 2.91 7 × 7 21 × 21 250.77 19.21 11.28 13.05 22.23 1.70 7 × 7 31 × 31 547.50 42.29 16.51 12.95 33.16 2.56 7 × 7 51 × 151 913.15 114.37 19.75 5.58 46.24 5.79 7 × 7 101 × 101 5 328.55 163.56 59.96 32.58 88.87 2.73 9 × 9 21 × 21 256.49 18.54 13.40 13.83 19.14 1.38 9 × 9 31 × 31 560.17 39.63 20.70 14.13 27.06 1.91 9 × 9 51 × 51 969.08 108.74 23.35 8.91 41.50 4.66 9 × 9 101 × 101 5 516.60 154.75 67.41 35.65 81.84 2.30 4.2 ANLM实验结果与分析
下面通过仿真实验来验证ANLM的有效性. 这里选取去噪研究中常用的14幅图像作为测试图像, 选取NLM、PNLM[19]作为比较算法. 三种算法中, 搜索区域和图像块的尺寸均设为
$ 21\times 21 $ 和$ 5\times 5 $ . 数值实验采用峰值信噪比(Peak signal to noise ratio, PSNR)和结构相似度(Structural similarity, SSIM)作为指标.表2对三种算法在不同噪声强度下的PSNR和SSIM进行比较. 从中可见, 无论PSNR还是SSIM, ANLM较之传统的NLM都有一定的提高. 当噪声标准差小于50时, ANLM的PSNR大部分情况下都略高于NLM和PNLM算法, 同时SSIM均优于NLM和PNLM算法; 当噪声标准差大于等于50时, ANLM在PSNR和SSIM上均优于NLM和PNLM算法(均已加粗显示). 对噪声标准差为100的Lena图像, ANLM算法具有较明显的优势, 其PSNR值比NLM的PSNR值高出2.35 dB; 其余的测试图像在强噪声条件下ANLM算法的PSNR值也都明显高于NLM. 这说明噪声标准差越大, ANLM算法较之NLM改善越明显.
表 2 三种去噪算法对灰度图像的效果比较Table 2 Effect comparison of three denoising algorithms on gray images图像 算法 25 30 50 75 100 PSNR/SSIM PSNR/SSIM PSNR/SSIM PSNR/SSIM PSNR/SSIM Camera 256 × 256 NLM 28.23/0.77 27.27/0.73 24.26/0.57 21.82/0.41 20.17/0.30 PNLM 28.39/0.82 27.58/0.79 24.96/0.71 22.59/0.61 21.02/0.52 ANLM 28.07/0.83 27.43/0.81 25.35/0.73 23.32/0.64 21.80/0.56 Lena 512 × 512 NLM 30.11/0.89 29.13/0.87 26.21/0.78 23.75/0.67 22.00/0.58 PNLM 30.58/0.89 29.72/0.88 27.18/0.81 25.07/0.73 23.65/0.67 ANLM 30.59/0.90 29.80/0.89 27.57/0.83 25.72/0.77 24.35/0.71 Boat 512 × 512 NLM 28.17/0.85 27.21/0.82 24.53/0.72 22.48/0.61 21.04/0.53 PNLM 28.40/0.85 27.51/0.82 24.99/0.72 23.17/0.63 22.07/0.56 ANLM 28.55/0.86 27.74/0.84 25.50/0.75 23.73/0.67 22.58/0.61 Finger 512 × 512 NLM 26.57/0.93 25.43/0.91 21.84/0.79 19.18/0.63 17.73/0.51 PNLM 26.41/0.93 25.45/0.91 22.15/0.78 19.22/0.57 17.64/0.40 ANLM 26.41/0.94 25.63/0.93 23.00/0.83 20.40/0.68 18.58/0.52 B Fly 512 × 512 NLM 28.09/0.85 27.12/0.82 23.88/0.69 20.61/0.54 18.39/0.41 NLM 27.78/0.88 26.98/0.86 24.32/0.79 21.44/0.68 18.99/0.56 ANLM 27.61/0.89 26.84/0.87 24.65/0.80 22.44/0.72 20.45/0.63 Man 512 × 512 NLM 28.28/0.85 27.39/0.82 24.87/0.71 22.83/0.61 21.35/0.53 PNLM 28.45/0.84 27.62/0.81 25.32/0.71 23.61/0.62 22.51/0.56 ANLM 28.63/0.86 27.89/0.83 25.83/0.75 24.20/0.67 23.08/0.61 Baboon 512 × 512 NLM 24.53/0.81 23.66/0.77 21.60/0.63 20.27/0.52 19.36/0.44 PNLM 24.61/0.81 23.75/0.76 21.51/0.59 20.23/0.47 19.61/0.40 ANLM 24.62/0.83 23.88/0.79 21.83/0.64 20.57/0.53 19.90/0.45 Straw 256 × 256 NLM 24.67/0.80 23.50/0.74 20.71/0.55 19.16/0.39 18.27/0.31 PNLM 24.94/0.81 23.78/0.75 20.66/0.51 18.96/0.32 18.25/0.24 ANLM 24.96/0.83 24.04/0.78 21.23/0.58 19.37/0.40 18.51/0.32 Barbara 512 × 512 NLM 28.26/0.89 27.11/0.87 24.05/0.76 21.92/0.65 20.54/0.57 PNLM 28.76/0.90 27.64/0.88 24.51/.078 22.45/0.68 21.30/0.60 ANLM 28.72/0.91 27.82/0.89 25.08/0.81 23.02/0.71 21.82/0.65 Montage 256 × 256 NLM 30.31/0.83 29.17/0.78 25.54/0.62 22.21/0.44 20.24/0.33 PNLM 30.56/0.88 29.50/0.86 26.41/0.79 23.51/0.69 21.31/0.59 ANLM 30.60/0.89 29.65/0.87 27.04/0.80 24.50/0.71 22.28/0.62 House 256 × 256 NLM 30.60/0.78 29.43/0.74 25.92/0.57 23.20/0.41 21.43/0.30 PNLM 31.30/0.83 30.26/0.81 26.97/0.73 24.31/0.62 22.74/0.54 ANLM 31.28/0.84 30.47/0.82 27.85/0.75 25.35/0.66 23.58/0.58 Hill 512 × 512 NLM 28.21/0.83 27.33/0.79 24.94/0.68 23.08/0.58 21.68/0.51 PNLM 28.37/0.82 27.51/0.78 25.31/0.66 23.87/0.57 23.01/0.52 ANLM 28.69/0.84 27.94/0.81 25.86/0.71 24.38/0.62 23.44/0.57 Couple 512 × 512 NLM 27.50/0.84 26.52/0.80 24.03/0.69 22.16/0.58 20.84/0.50 PNLM 27.76/0.84 26.74/0.80 24.27/0.67 22.68/0.57 21.71/0.51 ANLM 28.12/0.86 27.21/0.83 24.79/0.72 23.22/0.62 22.20/0.56 Peppers 256 × 256 NLM 28.61/0.79 27.58/0.75 24.45/0.60 21.76/0.45 20.00/0.34 PNLM 29.04/0.83 28.08/0.80 25.12/0.72 22.40/0.62 20.64/0.53 ANLM 28.75/0.84 27.93/0.81 25.51/0.74 23.34/0.65 21.64/0.57 为了验证ANLM算法去噪的视觉效果. 图5给出了三种算法对于House图像在中等噪声水平(
$ \sigma = 30 $ )下的去噪效果对比图, 图5(c)为NLM算法的去噪效果图, 可以看出仍残留少量的噪声; 图5(d)和5(e)分别为PNLM和ANLM算法的去噪效果图, 可以看出这两种算法的视觉效果相当, 且与NLM算法相比获得了较好的视觉效果; 图6给出了三种算法对于B Fly局部图在强噪声水平($ \sigma = $ $ 100 $ )下的去噪效果对比图, 可以看出, 在强噪声水平下的实验可以充分体现三种算法在视觉效果上的差异, 其中ANLM可以获得比其他两种算法更好的视觉效果. 这充分验证了ANLM算法的有效性.5. 总结与展望
本文对经典的NLM算法进行研究, 贡献主要包括以下两个方面: 1) 对NLM中最耗运算量的相似性度量的计算进行了分解和分析. 首先将相似性度量的计算转换为相关滤波, 然后利用FFT来实现相关滤波, 由此构造了快速算法; 2) 针对NLM在噪声方差较大时, 会引起图像结构和纹理模糊的问题, 提出了一种渐近非局部滤波方法. 这种方法对图像进行两次非局部滤波, 第1次滤波参数取
$ h_{1}(i) = 0.5\sigma $ ,$ i\in{{\Omega}} $ , 第2次滤波参数利用方差的性质进行逐点运算. 数值实验表明, 快速算法较之NLM在运算速度上有大幅度提高; 渐近滤波算法较之NLM算法, 去噪效果有显著改善.近年来, 深度学习方法的兴起迅速地改变了整个计算机视觉领域的研究动向. 当然深度学习的方法依赖于大样本进行训练, 对运算能力有非常高的要求. 目前, 如何将传统方法与深度学习有效结合, 改善深度学习方法的“黑箱化”现状, 或者利用传统方法来简化深度网络, 这些问题得到了研究同行们的重视. 非局部方法利用图像固有的自相似结构, 在图像处理领域具有里程牌意义. 对这一方法的深入研究, 有助于将非局部方法和深度学习方法有效结合, 而这也正是我们下一步的主要工作.
-
表 1 三种去噪算法运行速度的比较
Table 1 Comparison of running speeds of three denoising algorithms
图像块
尺寸搜索区域
尺寸NLM运行
时间 (s)NLM-P运行
时间 (s)FNLM运行
时间 (s)NLM与NLM-P
运行时间之比值NLM与FNLM
运行时间之比值NLM-P与FNLM
运行时间之比值3 × 3 21 × 21 232.79 19.41 7.17 11.99 32.46 2.71 3 × 3 31 × 31 505.64 42.01 10.53 12.04 48.02 3.99 3 × 3 51 × 51 873.02 113.04 13.95 7.72 62.58 8.10 3 × 3 101 × 101 5 024.73 160.10 48.49 31.38 103.62 3.30 5 × 5 21 × 21 236.12 18.29 8.68 12.91 27.20 2.11 5 × 5 31 × 31 512.77 39.90 12.74 12.85 40.25 3.13 5 × 5 51 × 51 911.16 108.04 16.19 8.43 56.28 6.67 5 × 5 101 × 101 5 159.80 154.83 53.13 33.33 97.12 2.91 7 × 7 21 × 21 250.77 19.21 11.28 13.05 22.23 1.70 7 × 7 31 × 31 547.50 42.29 16.51 12.95 33.16 2.56 7 × 7 51 × 151 913.15 114.37 19.75 5.58 46.24 5.79 7 × 7 101 × 101 5 328.55 163.56 59.96 32.58 88.87 2.73 9 × 9 21 × 21 256.49 18.54 13.40 13.83 19.14 1.38 9 × 9 31 × 31 560.17 39.63 20.70 14.13 27.06 1.91 9 × 9 51 × 51 969.08 108.74 23.35 8.91 41.50 4.66 9 × 9 101 × 101 5 516.60 154.75 67.41 35.65 81.84 2.30 表 2 三种去噪算法对灰度图像的效果比较
Table 2 Effect comparison of three denoising algorithms on gray images
图像 算法 25 30 50 75 100 PSNR/SSIM PSNR/SSIM PSNR/SSIM PSNR/SSIM PSNR/SSIM Camera 256 × 256 NLM 28.23/0.77 27.27/0.73 24.26/0.57 21.82/0.41 20.17/0.30 PNLM 28.39/0.82 27.58/0.79 24.96/0.71 22.59/0.61 21.02/0.52 ANLM 28.07/0.83 27.43/0.81 25.35/0.73 23.32/0.64 21.80/0.56 Lena 512 × 512 NLM 30.11/0.89 29.13/0.87 26.21/0.78 23.75/0.67 22.00/0.58 PNLM 30.58/0.89 29.72/0.88 27.18/0.81 25.07/0.73 23.65/0.67 ANLM 30.59/0.90 29.80/0.89 27.57/0.83 25.72/0.77 24.35/0.71 Boat 512 × 512 NLM 28.17/0.85 27.21/0.82 24.53/0.72 22.48/0.61 21.04/0.53 PNLM 28.40/0.85 27.51/0.82 24.99/0.72 23.17/0.63 22.07/0.56 ANLM 28.55/0.86 27.74/0.84 25.50/0.75 23.73/0.67 22.58/0.61 Finger 512 × 512 NLM 26.57/0.93 25.43/0.91 21.84/0.79 19.18/0.63 17.73/0.51 PNLM 26.41/0.93 25.45/0.91 22.15/0.78 19.22/0.57 17.64/0.40 ANLM 26.41/0.94 25.63/0.93 23.00/0.83 20.40/0.68 18.58/0.52 B Fly 512 × 512 NLM 28.09/0.85 27.12/0.82 23.88/0.69 20.61/0.54 18.39/0.41 NLM 27.78/0.88 26.98/0.86 24.32/0.79 21.44/0.68 18.99/0.56 ANLM 27.61/0.89 26.84/0.87 24.65/0.80 22.44/0.72 20.45/0.63 Man 512 × 512 NLM 28.28/0.85 27.39/0.82 24.87/0.71 22.83/0.61 21.35/0.53 PNLM 28.45/0.84 27.62/0.81 25.32/0.71 23.61/0.62 22.51/0.56 ANLM 28.63/0.86 27.89/0.83 25.83/0.75 24.20/0.67 23.08/0.61 Baboon 512 × 512 NLM 24.53/0.81 23.66/0.77 21.60/0.63 20.27/0.52 19.36/0.44 PNLM 24.61/0.81 23.75/0.76 21.51/0.59 20.23/0.47 19.61/0.40 ANLM 24.62/0.83 23.88/0.79 21.83/0.64 20.57/0.53 19.90/0.45 Straw 256 × 256 NLM 24.67/0.80 23.50/0.74 20.71/0.55 19.16/0.39 18.27/0.31 PNLM 24.94/0.81 23.78/0.75 20.66/0.51 18.96/0.32 18.25/0.24 ANLM 24.96/0.83 24.04/0.78 21.23/0.58 19.37/0.40 18.51/0.32 Barbara 512 × 512 NLM 28.26/0.89 27.11/0.87 24.05/0.76 21.92/0.65 20.54/0.57 PNLM 28.76/0.90 27.64/0.88 24.51/.078 22.45/0.68 21.30/0.60 ANLM 28.72/0.91 27.82/0.89 25.08/0.81 23.02/0.71 21.82/0.65 Montage 256 × 256 NLM 30.31/0.83 29.17/0.78 25.54/0.62 22.21/0.44 20.24/0.33 PNLM 30.56/0.88 29.50/0.86 26.41/0.79 23.51/0.69 21.31/0.59 ANLM 30.60/0.89 29.65/0.87 27.04/0.80 24.50/0.71 22.28/0.62 House 256 × 256 NLM 30.60/0.78 29.43/0.74 25.92/0.57 23.20/0.41 21.43/0.30 PNLM 31.30/0.83 30.26/0.81 26.97/0.73 24.31/0.62 22.74/0.54 ANLM 31.28/0.84 30.47/0.82 27.85/0.75 25.35/0.66 23.58/0.58 Hill 512 × 512 NLM 28.21/0.83 27.33/0.79 24.94/0.68 23.08/0.58 21.68/0.51 PNLM 28.37/0.82 27.51/0.78 25.31/0.66 23.87/0.57 23.01/0.52 ANLM 28.69/0.84 27.94/0.81 25.86/0.71 24.38/0.62 23.44/0.57 Couple 512 × 512 NLM 27.50/0.84 26.52/0.80 24.03/0.69 22.16/0.58 20.84/0.50 PNLM 27.76/0.84 26.74/0.80 24.27/0.67 22.68/0.57 21.71/0.51 ANLM 28.12/0.86 27.21/0.83 24.79/0.72 23.22/0.62 22.20/0.56 Peppers 256 × 256 NLM 28.61/0.79 27.58/0.75 24.45/0.60 21.76/0.45 20.00/0.34 PNLM 29.04/0.83 28.08/0.80 25.12/0.72 22.40/0.62 20.64/0.53 ANLM 28.75/0.84 27.93/0.81 25.51/0.74 23.34/0.65 21.64/0.57 -
[1] 许录平. 数字图像处理学, 北京: 科学出版社, 2007. 86−88Xu Lu-Ping. Digital Image Processing. Beijing: Publishing House of Science, 2007. 86−88 [2] Huang H C, Lee T C M. Data adaptive median filters for signal and image denoising using a generalized SURE criterion. IEEE Signal Processing Letters, 2006, 13(9): 561−564 doi: 10.1109/LSP.2006.874463 [3] Yuan S Q, Tan Y H. Impulse noise removal by a global-local noise detector and adaptive median filter. Signal Processing, 2006, 86(8): 2123−2128 doi: 10.1016/j.sigpro.2006.01.009 [4] Huang X D, Woolsey G A. Image denoising using wiener filtering and wavelet thresholding. In: Proceedings of the 2000 IEEE Multimedia and Expo, New York, USA: IEEE, 2000. 1759−1762 [5] Sendur L, Selesnick I W. Bivariate shrinkage functions for wavelet-based denoising exploiting interscale dependency. IEEE Transactions on Signal Processing, 2002, 20(11): 2744−2756 [6] Portilla J, Strela V, Wainwright M J, Simoncelli E P. Image denoising using scale mixtures of Gaussians in the wavelet domain. IEEE Transactions on Image Processing, 2003, 12(11): 1338−1351 doi: 10.1109/TIP.2003.818640 [7] Alleyne, D. A two-dimensional Fourier transform method for the measurement of propagating multimode signals. The Journal of the Acoustical Society of America, 1991, 89(3): 1159−1168 doi: 10.1121/1.400530 [8] Elad M, Aharon M. Image denoising via sparse and redundant representations over learned dictionaries. IEEE Transactions on Image Processing, 2006, 15(12): 3736−3745 doi: 10.1109/TIP.2006.881969 [9] Sun D, Gao Q W, Lu Y X, Huang Z X, Li T. A novel image denoising algorithm using linear Bayesian MAP estimation based on sparse representation. Signal Processing, 2014, 100: 132−145 doi: 10.1016/j.sigpro.2014.01.022 [10] 纪建, 徐双星, 李晓. 基于形态成分分析和Contourlet变换的自适应阈值图像去噪方法. 模式识别与人工智能, 2014, 27(6): 561−568 doi: 10.3969/j.issn.1003-6059.2014.06.012Ji Jian, Xu Shuang-Xing, Li Xiao. An adaptive thresholding image denoising method based on morphological component analysis and contourlet transform. Pattern Recognition and Artificial Intelligence, 2014, 27(6): 561−568 doi: 10.3969/j.issn.1003-6059.2014.06.012 [11] 凤宏晓, 侯彪, 焦李成, 卜晓明. 基于非下采样Contourlet域局部高斯模型MAP的SAR图像相干斑抑制. 电子学报, 2010, 38(4): 811−816Feng Hong-Xiao, Hou Biao, Jiao Li-Cheng, Bu Xiao-Ming. SAR image despeckling based on local Gaussian model and MAP in NSCT domain. Acta Electronica Sinica, 2010, 38(4): 811−816 [12] Yin M, Liu W, Zhao X, Guo Q W, Bai R F. Image denoising using trivariate prior model in nonsubsampled dual-tree complex contourlet transform domain and non-local means filter in spatial domain. Optik-International Journal for Light and Electron Optics, 2013, 124(24): 6896−6904 doi: 10.1016/j.ijleo.2013.05.132 [13] Tomasi C, Manduchi R. Bilateral filtering for gray and color images. In: Proceedings of the 6th IEEE International Conference on Computer Vision, Bombay, India: IEEE, 1998. 839−846 [14] Buades A, Coll B, Morel J M. A non-local algorithm for image denoising. In: Proceedings of the 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. San Diego, USA: IEEE, 2005. II: 60−65 [15] Dabov K, Foi A, Katkovnik V, Egiazarian K. Image denoising by sparse 3-D transform-domain collaborative filtering. IEEE Transactions on Image Processing, 2007, 16(8): 2080−2095 doi: 10.1109/TIP.2007.901238 [16] Verma R, Pandey R. Grey relational analysis based adaptive smoothing parameter for non-local means image denoising. Multimedia Tools and Applications, 2018, 77(19): 25919−25940 doi: 10.1007/s11042-018-5828-5 [17] Tasdizen T. Principal neighborhood dictionaries for nonlocal means image denoising. IEEE Transactions on Image Processing, 2009, 18(12): 2649−2660 doi: 10.1109/TIP.2009.2028259 [18] Grewenig S, Zimmer S, Weickert J. Rotationally invariant similarity measures for nonlocal image denoising. Journal of Visual Communication and Image Representation, 2011, 22(2): 117−130 doi: 10.1016/j.jvcir.2010.11.001 [19] Wu Y, Tracey B, Natarajan P, Noonan J P. Probabilistic non-local means. IEEE Signal Processing Letters, 2013, 20(8): 763−766 doi: 10.1109/LSP.2013.2263135 [20] 蔡斌, 刘卫, 郑重, 汪增福. 一种改进的非局部均值去噪算法. 模式识别与人工智能, 2016, 29(1): 1−10Cai Bin, Liu Wei, Zheng Zhong. Wang Zeng-Fu. An improved non-local means denoising algorithm. Pattern Recognition and Artificial Intelligence, 2016, 29(1): 1−10 [21] Bo L, Lv J R, Luo X G, Wang H J, Wang S. A novel and fast nonlocal means denoising algorithm using a structure tensor. The Journal of Supercomputing, 2019, 75(2): 770−782 doi: 10.1007/s11227-018-2611-3 [22] Nguyen M P, Chun S Y. Bounded self-weights estimation method for non-local means image denoising using minimax estimators. IEEE Transactions on Image Processing, 2017, 26(4): 1637−1649 doi: 10.1109/TIP.2017.2658941 [23] Jacques F. Parameter-free fast pixelwise non-local means denoising. Image Processing on Line, 2014, 4: 300−326 doi: 10.5201/ipol.2014.120 [24] 黄智, 付兴武, 刘万军. 混合相似性权重的非局部均值去噪算法. 计算机应用, 2016, 36(2): 556−562 doi: 10.11772/j.issn.1001-9081.2016.02.0556Huang Zhi, Fu Xing-Wu, Liu Wan-Jun. Non-local means denoising algorithm with hybrid similarity weight. Journal of Computer Applications, 2016, 36(2): 556−562 doi: 10.11772/j.issn.1001-9081.2016.02.0556 [25] 张选德, 冯象初, 王卫卫, 魏立力. 求同存异的非局部图像去噪. 中国科学: 信息科学, 2013, 43(7): 907−919Zhang Xuan-De, Feng Xiang-Chu, Wang Wei-Wei, Wei Li-Li. Exploit the similarity while preserving the difference for nonlocal image denoising. Scientia Sinica (Informationis), 2013, 43(7): 907−919 期刊类型引用(7)
1. 王迪,潘金山,唐金辉. 基于自监督约束的双尺度真实图像盲去噪算法. 软件学报. 2023(06): 2942-2958 . 百度学术
2. 陈叶飞,赵广社,李国齐,王鼎衡. 无监督多重非局部融合的图像去噪方法. 自动化学报. 2022(01): 87-102 . 本站查看
3. 钱冲,常冬霞. 图拉普拉斯正则化稀疏变换学习图像去噪算法. 计算机工程与应用. 2022(05): 232-239 . 百度学术
4. 雷露露,周颖玥,李驰,王欣宇,赵家琦. 基于多尺度快速非局部平均滤波的超声图像去斑算法. 计算机应用. 2022(06): 1950-1956 . 百度学术
5. 李鹏,王青宁. 基于FNLM和Frangi滤波的路面裂缝分割算法. 现代电子技术. 2022(14): 69-73 . 百度学术
6. 李建平,王钊. 基于PSO-CNN的验证码识别算法研究. 计算机技术与发展. 2022(09): 51-55 . 百度学术
7. 邹翔,潘兵,王延珺,刘晨,许蔚. 高斯预滤波对数字体图像相关测量的影响. 光学学报. 2021(15): 140-150 . 百度学术
其他类型引用(19)
-