- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Lee滤波、精致Lee滤波
实验目的
1、通过实验进一步加深对原理的理解;
、提高Matlab编程能力
实验原理
()
噪声抑制的两个关键环节为建立真实后向散射系数的估计机制和制定同质区域像素样本的选择方案。Lee滤波是利用图像局部统计特性进行图像斑点滤波的典型方法之一,其是基于完全发育的斑点噪声模型,选择一定长度的窗口作为局部区域,假定先验均值和方差可以通过计算局域的均值和方差得到。
()
之后,Lee又提出了一种基于边缘检测的自适应滤波算法,通过重新定义中心像素的邻域来提高估计的准确性。通常使用的滑动窗口,假定中心像素为x:
1、将的滑窗分为九个子区间,区间之间有重叠,每个子区间大小为。
2、计算各子窗的均值,用这个均值构造一个的矩阵M,来估计局域窗中边缘的方向:
将梯度模板应用到均值矩阵,梯度绝对值最大的方向被认为是边缘的方向。这里只需要用水平、垂直、45度和135度四个方向的梯度模板,相反方向互为相反数。用这个矩阵与四种边缘模板与之进行加权计算,选择计算加权结果绝对值最大。确定边缘方向。一种边缘方向对应两种模板和,比较和大小,确定选择哪一种窗口。所有阴影区域外的像素将取代原来滑窗内所有的像素来计算局域均值和方差,从而重新估计局域窗的中心像素值。
()
图像均值是指整个图像的平均强度,它反映了图像的平均灰度,即图像所包含目标的平均后向散射系数。均值的保持是为了保持原始图像的灰度强度,以利于图像的后续处理和解释。
(2)、图像方差:
图像方差代表了图像区域中所有点偏离均值的程度,它反映了图像的不均匀性。方差的减小是衡量滤波器去噪能力的一般指标,方差减小越多,滤波器的去噪能力越强。
(3)、等效视数:
等效视数是衡量一幅图像噪声点噪声相对强度的指标,反映滤波器的斑点抑制能力,等效视数越大,表现图像上的噪声越弱,其解译性越好,其定义如下:是所有像元的均值, 是标准差。
(4)、边缘保持指数:
边缘保持指数表示处理后各滤波器对图像水平与垂直方向边缘的保持能力,其定义为:
其中为滤波之后的图像像元,为原始图像像元,ESI的取值范围是[0,1],当其值为1时,图像的边缘得到完全保持,值为0时,图像已经变为一个平面,没有任何变化。ESI值越大,滤波器的边缘保持能力越强。
实验代码
%Lee滤波和精致Lee滤波实验
%2013年3月14日
close all;
clear all;
clc;
%%%%%%%%%%%%%%从读取图像%%%%%%%%%%%%%%%
IMAGE=imread(‘p.bmp’);% 以上读取出IMAGE图像,大小为2816*1540,留作后续处理
figure;
imshow(IMAGE);
title(?????-ê?IMAGEí???);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%Lee滤波%%%%%%%%%%%%%%%%%%
m = 1000;
n = 800;
part = d(1800:1800+m,700:700+n);% 处理完全图需要时间过长,在此我们仅取图像的一小部分验证算法
figure;
imshow(part);
title(?-ê?IMAGEí???);
WL = 7;% Lee滤波的窗长
IMAGE_filtered = zeros(m-floor(WL/2),n-floor(WL/2));
for i=floor(WL/2)+1:m-floor(WL/2) %WL*WL滤波
for j=floor(WL/2)+1:n-floor(WL/2)
Window=part(i-floor(WL/2):i+floor(WL/2),j-floor(WL/2):j+floor(WL/2));% 取窗口中的数据
[k,p]=size(Window);
Temp=reshape(Window,1,k*p);
u_y = mean(Temp);
var_y = std2(Temp) * std2(Temp);
var_x = (var_y - u_y*u_y)/2;
a = 1-var_x/var_y;
b = var_x/var_y;
IMAGE_filtered(i-floor(WL/2)+1,j-floor(WL/2)+1)=u_y + b*(part(i,j)-u_y);
end
end
IMAGE_filtered=IMAGE_filtered/max(max(IMAGE_filtered));
IMAGE_filtered=imadju
文档评论(0)