主要内容

wiener2

二维自适应去噪滤波

的语法wiener2 (n [m], [mblock nblock],噪音)被移除。使用wiener2(我,(mn)、噪音)语法。

描述

J= wiener2 (,(mn),噪音)过滤器的灰度图像使用pixel-wise自适应维纳滤波器。(mn)指定了大小(——- - - - - -n)的社区使用平均值和标准偏差估计当地的形象。加性噪声(高斯白噪声)被认为是力量噪音

输入图像退化了恒功率添加剂噪声。wiener2基于统计数据的使用pixelwise自适应维纳方法估计从当地社区的每一个像素。

例子

(J,noise_out)= wiener2 (,(mn))返回添加剂噪声的估计能力wiener2计算之前做过滤。

例子

全部折叠

这个例子展示了如何使用wiener2函数应用维纳滤波器(一种线性滤波器)到一个图像自适应。维纳滤波器裁缝本身到本地图像方差。方差大,wiener2执行平滑。在方差很小,wiener2执行更平滑。

这种方法通常会产生更好的结果比线性过滤。自适应滤波器比类似的线性滤波器,选择性保留边缘和其他图像的高频部分。此外,没有设计任务;的wiener2函数处理所有初步计算和实现滤波器的输入图像。wiener2然而,确实需要更多的计算时间比线性过滤。

wiener2效果最好,当噪声恒功率(“白”)加性噪声,如高斯噪声。下面的例子适用wiener2土星与添加高斯噪声的图像。

读取图像到工作区中。

RGB = imread (“saturn.png”);

真彩图像转换成灰度。

I = im2gray (RGB);

添加高斯噪声图像

J = imnoise(我“高斯”,0,0.025);

嘈杂的图像显示。因为图像是相当大的,只显示图像的一部分。

imshow (J (600:1000 1:6));标题(的部分添加高斯噪声的图像);

图包含一个坐标轴对象。坐标轴对象与标题部分的图像添加高斯噪声包含一个类型的对象的形象。

消除噪音使用wiener2函数。

K = wiener2 (J [5 5]);

处理过的图像显示。因为图像是相当大的,只显示图像的一部分。

图imshow (K (600:1000 1:6));标题(的部分图像噪声去除维纳滤波器的);

图包含一个坐标轴对象。坐标轴对象与标题部分的图像噪声被维纳滤波器包含一个类型的对象的形象。

输入参数

全部折叠

输入图像,指定为一个二维数值数组。

数据类型:||int16|uint8|uint16

邻域大小,指定为一个2-element向量的形式(mn)在哪里的行数和吗n列的数量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

加性噪声,指定为数字数组。如果你不指定噪音wiener2使用当地的均值方差,非常刻薄(localVar)

数据类型:|

输出参数

全部折叠

过滤后的形象,作为一个数值数组返回相同的大小和数据类型作为输入图像

添加剂噪声功率估计,作为数字数组返回。

算法

wiener2估计每个像素周围的局部均值和方差。

μ = 1 N n 1 , n 2 η 一个 ( n 1 , n 2 )

σ 2 = 1 N n 1 , n 2 η 一个 2 ( n 1 , n 2 ) μ 2 ,

在哪里 η N——- - - - - -附近的图像中每个像素一个wiener2然后创建一个pixelwise维纳滤波器使用这些估计,

b ( n 1 , n 2 ) = μ + σ 2 ν 2 σ 2 ( 一个 ( n 1 , n 2 ) μ ) ,

ν的地方2噪声方差。如果没有,噪声方差wiener2使用当地所有的估计方差的平均值。

引用

[1]Lim Jae年代。二维信号和图像处理恩格尔伍德悬崖,新泽西,普伦蒂斯霍尔,1990年,p。548年,方程9.44,9.45和9.46。

扩展功能

版本历史

之前介绍过的R2006a

全部展开