1 / 14

一种对脉冲噪声的快速和可靠的开关中值滤波

一种对脉冲噪声的快速和可靠的开关中值滤波. Wei Ping, Li Junli, Lu Dongming, Chen Gang. 摘要.

betsy
Download Presentation

一种对脉冲噪声的快速和可靠的开关中值滤波

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 一种对脉冲噪声的快速和可靠的开关中值滤波 Wei Ping, Li Junli, Lu Dongming, Chen Gang

  2. 摘要 • 在本文中,我们提出了一种针对被脉冲噪声损坏的图像的快速和可靠的滤波器,中值滤波曾经是最受欢迎的非线性滤波器,可以有效的消除脉冲噪声,有很好的去噪能力和计算效率;但是当噪声比率较高的时候,性能较差。因此,为了提高滤波效果,又出现了许多新的算法。最近,出现新了一种具有边界噪声检测能力的开关中值滤波算法(BDND),表现出比其它基于中值滤波的算法更好的性能。但是这种算法需要很多的计算时间。我们提出的算法采用和BDND相似的策略,和其一样有效,但更有效率。新的方法使用新的强大而有效的噪声检测方法来判断像素是否被噪声破坏。如果是,则使用一个可变的窗口中值滤波器来削弱脉冲噪声。计算机仿真结果证明了所提出方法的良好性能。

  3. 1 引言 • 在一些应用中数字图像可能会受到脉冲噪声的破坏。减小噪声在数字图像处理中是一个非常重要的任务。这个任务的难点是怎样减小噪声但保持图像的细节。有许多关于如何恢复被脉冲噪声破坏的图像的研究。最受欢迎的脉冲噪声滤波器是中值滤波。但是它使一些细节和源图像的边缘变模糊,特别是当噪声等级较高时。出现了各种不同的对中值滤波改进的方法,如加权中值滤波,中心加权中值滤波等。这些滤波器对每个像素应用中值操作,不管当前的像素是否被污染,这样会使图像非常模糊。

  4. 1 引言 • 开关中值滤波器(SM)识别每个像素是“被被坏”还是“原始的”,只有那些被破坏的像素才会被滤波处理。所以SM滤波器在削弱脉冲噪声时,能够获得更好的效果。问题是如何检测和分离被破坏的像素。更早的一些研究工作中已经达到了这个目标。他们使用一个从预先假设的噪声密度等级中获得的固定决策阈值来实现。这些噪声检测过程在区分像素和噪声时经常会出现错误。在文献[5]中提出一个噪声自适应软开关中值滤波器(NASM)来解决这个问题。当脉冲噪声密度范围为10%到50%时,NASM在去除噪声中表现出很好的性能。但是,当图像的噪声密度大于50%时,恢复图像的质量大幅下降。最近,Pei-EngNg和Kai-kuang提出一个高精度噪声检测算法BDND。即使噪声密度高达90%BDND也可以达到满意的结果。但是对实际应用,它的计算量太大了。

  5. 2 脉冲噪声检测 • 脉冲噪声分布于图像灰度的两极,在图像灰度很高和很低的地方都存在。它严重损坏了图像的细节。在本文中,噪声检测方法应用到每个像素来确定像素是不是受到脉冲噪声的破坏。使用了一个二进制矩阵来指示识别结果,“0”代表没被破坏,“1”代表被破坏。 • 使用两个重复的过程来实现这个目标。在第一个过程中,在以当前像素为中心的正方形窗口内的像素被分成三个区域,低亮度区,中值亮度区,和高亮度区。当前像素不是落在中值亮度区时,就认为像素被破坏。 • 第一个重复过程使用一个21X21像素的窗口,我们计算局部窗口的直方图,根据直方图我们可以得到两个边界b1和b2。

  6. 2 脉冲噪声检测 • 第一个重复过程的步骤如下: • 1)引入一个21X21的局部窗口,中心是当前像素。 • 2)计算局部窗口的直方图,二进制索引就是灰度,寻找局部窗口的最大和最小灰度,分别标记为Min和Max。 • 3)对在Min和 (Min+Max)/2之间的索引,计算其和邻近非零二进制索引的差,寻找最大的差,并将相应索引标记为边界b1。 • 4)同理,对在(Min+Max)/2和Max之间的索引计算出b2。现在便建立了三个区域。 • 5)如果像素不属于中值区,则被破坏。 • 假设图像有L个灰度。我们用一个L大小的一维向量记为来记录局部窗口的直方图。对于8位深度的灰色图像,L=256。局部窗口从图像的顶部滑动到底部,左边移动到右边。当窗口越过图像边界时,对称的扩展像素。

  7. 3 自适应滤波策略 • 现在,我们已经得到一个指示每个像素是否被破坏的二值矩阵。基于这个矩阵,那些“没被破坏”的像素保持不变,具有自适应调整窗口大小的开关中值滤波器应用于那些“被破坏”的像素。 • 从窗口大小W=3开始。滤波窗口在四个边扩展一个像素,如果没破坏的像素数量少于3个。这个和应用于BDND的滤波策略有点不同。它的扩展是当没破坏的像素少于窗口像素数量的一半(Sin=W*W/2)时进行扩展,当没被破坏像素数量超过Sin,或窗口大小等于预定义的最大窗口大小Wmax,扩展过程结束。Wmax通过估计噪声密度等级来确定。在高噪声密度(>50%),通常,在窗口内没被破坏像素数量少于Sin,窗口大小经常增加到最大窗口大小Wmax,这会使得图像细节变得很模糊。此外,噪声密度等级的估计需要比我们简单滤波策略更多的计算。 • 假设应用开关中值滤波于噪声像素Xij,并最终确定窗口大小为Wf,输出像素是Yi,j • 注意在中值滤波过程中,那些被破坏的像素被排除在外,只有那些没被破坏的像素再用来计算中值。

  8. 4 计算复杂度 • 考虑处理一个MXN大小、L个灰度级的图像,第一个重复过程我们使用21X21的滑动窗口。在每行的开始,计算滑动窗口的灰度直方图。这个需要21*21=441次整数加法操作。当滤波窗口滑动到下一个像素时,更新直方图需要21次减操作和21次加操作。过程重复直到图像的右边界。然后,滑动窗口从下一行的第一个像素开始,重新计算直方图。如果不区别加操作和减操作,通过整个图你的,总的直方图计算是441*M+42*(N-1)*M次加操作。 • 直方图向量Hist有L个元素。对每一个像素,最多需要L-1次减操作来计算非零邻近元件的差。然后我们可以得到两个边界b1和b2来确定像素是否被破坏。所以第一次重复过程最多有441*M+42*(N-1)*M+(L-1)*M*N次整数加操作,当L=256约等于K*M*N次整数操作,K约等于300。 • 我们的噪声检测过程的第二次重复过程使用3X3的滑动窗口,所以只需要9次整数加操作和8次整数减操作业计算直方图和亮度差。在最坏的情况下,第二个过程需要17*M*N次整数操作。加起来,对每个像素检测过程需要少于317次整数加操作。

  9. 4 计算复杂度 • BDND噪声检测方法也是用21X21大小的滑动窗口,在窗口内的像素根据升序排列并查找中值。然后计算每对邻近像素的亮度差,在0和中值之间查找最大差。对应亮度是边界b1,同理在中值和255之间查找边界b2。如果像素亮度在b1和b2之间,被分类为没破坏,然后调用第二个重复过程和第一个过程一样,只是窗口大小为3X3。21X21大小窗口内有442个像素,因此对每个像素,需要441次减操作来计算每对邻近像素的差。这个数字已经比我们提出方法的操作次数大,而且还没考虑排序操作和第二次重复过程。 • 对比BDND,我们提出的方法在计算复杂度上有两个优点: • 没有排序操作; • 在滤波策略中,我们提出的方法不需要估计噪声密度等级,并且最后确定的滤波窗口大小比BDND小。

  10. 5 实验结果 • 我们通过评估滤波图像的PSNR和执行时间,对比BDND和我们提出方法的性能。 • 使用256X256 8位深度的灰色测试图像,使用“Lena”图像进行仿真。在我们的仿真实验中,源图像被“椒盐”噪声均匀的污染。仿真的实验在一个宽的噪声密度等级下进行(从10%到90%)

  11. 5 实验结果 • 在图1中,介绍了对70%被破坏的Lena图像进行恢复的结果。可以看出根据噪声去除效果和细节保留能力,我们提出的方法能够获得更好的性能。滤波结果几乎和理想中值滤波一致。 图1 第一行图像显示了源图像和对应的70%脉冲噪声的图像。第二行是使用7X7标准滤波器的去噪结果和在第三章描述的在脉冲噪声绝对位置使用滤波策略的理想中值滤波器结果。第三行是BDND和我们提出的方法的结果。

  12. 5 实验结果 • 图2概括了我们提出的方法和BDND开关滤波器在不同噪声等级下的PSNR性能比较。两个方法都能够有效去除脉冲噪声,PSNR性能非常接近。为了证明两个方法的差别,将我们提出的方法和BDND的PSNR相减,如图3所示。可以看到当噪声密度小于0.3,BDND比我们的方法好0.1db,当噪声密度等级大于0.4时,我们的方法比BDND好0.2db。 图2 PSNR性能比较 图3 两个方法的PSNR差

  13. 5 实验结果 • BDND的大主要计算量在第一个重复过程,排序操作非常费时。快速排序算法被广泛采用而且性能非常好,因此我们使用快速排序算法来完善BDND方法并和我们的方法比较。快速排序算法的时间复杂度是O(N log N)。 • 所提出的方法、BDND和7X7标准中值滤波应用一“Lena”图像的时间分析在AMD Athlon 1.81GHzPC上进行,结果如表1。结果表明所提出方法比BDND快很多,运行时间可以和7X7 SM滤波器相比较,当噪声密度少于70%时甚至比其快。BDND所花时间最多。 • 图4显示了3个方法在处理“Lena”图像时不同脉冲噪声密度等级时的运行时间(秒)。 表1 不同滤波器的运行时间 图4 7X7标准中值滤波,BDND滤波,我们的方法的运行时间

  14. 6 结论 • 在本文中,我们提出一个对脉冲噪声的快速和可靠的开关中值滤波方法。实验结果表明我们的方法的性能在PSNR和运行时间上都优于BDND滤波,特别是在高噪声等级时。这个方法的最大优点是它很简单,实现起来甚至比7X7标准中值滤波快,而且它的PSNR性能相当好,远好于当前的一些非线性脉冲滤波器。

More Related