基于MATLAB的改进型中值滤波源代码设计.doc_第1页
基于MATLAB的改进型中值滤波源代码设计.doc_第2页
基于MATLAB的改进型中值滤波源代码设计.doc_第3页
基于MATLAB的改进型中值滤波源代码设计.doc_第4页
基于MATLAB的改进型中值滤波源代码设计.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于MATLAB的改进型中值滤波源代码设计%by 周波 2011,10,27.4meiren=imread(meiren.bmp);jiazao=imnoise(meiren,salt & pepper,0.7) ;%椒盐噪声row,col=size(meiren) ;%返回矩阵的行和列。 %下面是扩充矩阵的部分kc=kuochong(jiazao);image=kc;kc=kuochong(image);image=kc; kc=kuochong(image);image=kc; output=image; for i=4:1:row+3 for j=4:1:col+3 ps=pans(image,i,j); if(ps=1) output(i,j)=image(i,j); else out=nchu3(image,i,j); out=double(out); end output(i,j)=ceil(out); end end for i=1:1:row for j=1:1:col s(i,j)=output(i+3,j+3); end end shuchu=uint8(s);subplot(231),imshow(meiren);title(原图像);subplot(232),imshow(jiazao);title(加椒盐噪声后图像 p=0.7);subplot(233),imshow(shuchu);title(经过中值滤波后的图像);xitong3=medfilt2(jiazao,3 3); %调用系统函数进行中值滤波 subplot(234),imshow(xitong3),title(用Matlab系统函数进行3X3中值滤波之后的结果); xitong5=medfilt2(jiazao,5 5); %调用系统函数进行中值滤波 subplot(235),imshow(xitong5),title(用Matlab系统函数进行5X5中值滤波之后的结果);function kc=kuochong(im) row,col=size(im); image=zeros(row+2,col+2); for i=1:1:row for j=1:1:col image(i+1,j+1)=im(i,j); end end for i=2:1:row+1 image(i,1)=im(i-1,1); end for j=2:1:col+1 image(1,j)=im(1,j-1); end for i=2:1:row+1 image(i,col+2)=im(i-1,col); end for j=2:1:col+1 image(row+2,j)=im(row,j-1); end image(1,1)=im(1,1); image(row+2,col+2)=im(row,col); image(row+2,1)=im(row,1); image(1,col+2)=im(1,col); kc=image;%by 周波 2011,10,28.2function out=nchu3(image,i1,j1) ima=image(i1-1,j1),image(i1,j1-1),image(i1,j1),image(i1,j1+1),image(i1+1,j1);mi=min(ima);ma=max(ima);sz1=zeros(1,5);v=1; for k=1:1:5 if(ima(k)mi)&(ima(k)1) for v1=1:1:v-1 sz1s(v1)=sz1(v1); end end if (v1) out=median(sz1s); % 9 else im=image(i1-1:i1+1,j1-1:j1+1); ima=im(1,:),im(2,:),im(3,:); mi=min(ima); ma=max(ima); sz3=zeros(1,9); v=1; for k=1:1:9 if(ima(k)mi)&(ima(k)1) for v1=1:1:v-1 sz3s(v1)=sz3(v1); end end if (v1) out=median(sz3s); else %21 im=image(i1-1:i1+1,j1-2:j1+2); im1=image(i1-2,j1-1:j1+1); im2=image(i1+2,j1-1:j1+1); ima=im(1,:),im(2,:),im(3,:),im1(1,:),im2(1,:); mi=min(ima); ma=max(ima); sz5=zeros(1,21); v=1; for k=1:1:21 if(ima(k)mi)&(ima(k)1) for v1=1:1:v-1 sz5s(v1)=sz5(v1); end end if (v1) out=median(sz5s); else % 37 im=image(i1-1:i1+1,j1-3:j1+3); im1=image(i1-2,j1-2:j1+2); im2=image(i1-3,j1-1:j1+1); im3=image(i1+2,j1-2:j1+2); im4=image(i1+3,j1-1:j1+1); ima=im(1,:),im(2,:),im(3,:),im1(1,:),im2(1,:),im3(1,:),im4(1,:); mi=min(ima); ma=max(ima); sz7=zeros(1,37); v=1; for k=1:1:37 if(ima(k)mi)&(ima(k)1) for v1=1:1:v-1 sz7s(v1)=sz7(v1); end end if (v1) out=median(sz7s); else out=image(i1,j1); end end endendfunction ps=pans(image,i,j)pzu=image(i-1,j-1),image(i-1,j),image(i-1,j+1),image(i,j-1),image(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论