空间域图像滤波

  • 格式:docx
  • 大小:17.12 KB
  • 文档页数:2

下载文档原格式

  / 2
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

function Template=gausTemplate(n,sigma)

end

---------------------------------------------------------------------------------------------------------------------- clc

clear

im=imread('C:\Users\Administrator\Desktop\lena.jpg');

s=11;sigma=10;

k=(s-1)/2;

Template=gausTemplate(s,sigma);%生成高斯模板

[m,n]=size(im);

%图像扩边

%%%%%%%%%%%%%%%%%%

for i=k+1:m+k

for j=k+1:n+k

neighbor=;%%%%点i,j的邻阈

temp=;%%邻域内点乘

imF(i,j)=;%计算滤波器响应

end

end

imFil=imF(k+1:m+k,k+1:n+k);%滤波后的图像

imFil=uint8(imFil);

imshow(imFil)

clc

clear

im=imread('C:\Users\Administrator\Desktop\lena.jpg');

s=3;sigma=0.8;

k=(s-1)/2;

Template=gausTemplate(s,sigma);%Éú³É¸ß˹ģ°å

[m,n]=size(im);

%ͼÏñÀ©±ß

new=zeros(m+2*k,n+2*k);

new(k+1:m+k,k+1:n+k)=im; %%%%%%%%%%%%%%%%%%

for i=k+1:m+k

for j=k+1:n+k

neighbor=new(i-k:i+k,j-k:j+k) ;%%%%µãi,jµÄÁÚãÐtemp=neighbor.*Template ;%%ÁÚÓòÄÚµã³Ë

imF(i,j)=sum(temp(:)) ;%¼ÆËãÂ˲¨Æ÷ÏìÓ¦

end

end

imFil=imF(k+1:m+k,k+1:n+k);%Â˲¨ºóµÄͼÏñ

imFil=uint8(imFil);

imshow(imFil);