资源描述:
《图像处理实验 图像增强和图像分割剖析.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、图像处理实验图像增强和图像分割一、实验目的:掌握用空间滤波进行图像增强的基本方法,掌握图像分割的基本方法。二、实验要求:1、测试图像1中同时含有均值为零的均匀分布噪声和椒盐噪声。用大小为5×5的算术均值滤波器和中值滤波器对图像进行处理,在不同窗口中显示原图像及各处理结果图像,并分析哪一种滤波器去噪效果好?2、对测试图像2进行图像分割,求出分割测试图像2的最佳阈值。分别显示原图、原图的直方图(标出阈值)、和分割后的二值图。实验内容:1.实验原理开始1)图像增强:流程图:读取图像构建滤波函数滤波处理结
2、束图像增强可以通过滤波的方式来完成,即消除一部分的噪声。滤波又可以分为均值滤波和中值滤波。1.中值滤波原理:中值滤波就是选用一个含有奇数个像素的滑动窗口,将该窗口在图像上扫描,把其中所含像素点按灰度级的升(或降)序排列,取位于中间的灰度值来代替窗口中心点的灰度值。对于一维序列{}:对于二维序列{}:1.均值滤波原理:对于含噪声的原始图像g(s,t)的每一个像素点去一个领域N,用N中所包含的相速的灰度平均值,作为领域平均处理后的图像f(x,y)的像素值,即:1)图像分割:设置阈值容差T0计算平均值T
3、1由T1分割成G1,G2分别计算出G1,G2的平均值m1,m2T2=(m1+m2)/2
4、T2-T1
5、>T0是否255*(I>T2)+0*(I<=T2)\255*(I>T2)+0*(I<=T2)))))0*(I<=T2)图像分割:依据图像的灰度、颜色等特征,将一幅图像分为若干个互不重叠的、具有某种同质特征的区域。本实验中我们是根据灰度值,将灰度值大于阈值T的像素统一置为255,小于的则置为0。如何求出最合适的分割阈值,则需要用到迭代算法。迭代法算法步骤:(1)初始化阈值T(一般为原图像所有像素平均
6、值)。(2)用T分割图像成两个集合:G1和G2,其中G1包含所有灰度值小于T的像素,G2包含所有灰度值大于T的像素。(3)计算G1中像素的平均值m1及G2中像素的平均值m2。(4)计算新的阈值:T=(m1+m2)/2。(5)如果新阈值跟原阈值之间的差值小于一个预先设定的范围,停止循环,否则继续(2)-(4)步。2.程序代码与分析:1)图像增强:clearall;clc;%读入图像I1=imread('Fig5.12(b).jpg');%均值滤波模板h1=ones(5,'uint8');%获取分辨率
7、[a,b]=size(I1);%创建变量I2=zeros(a+4,b+4,'uint8');I3=zeros(a+4,b+4,'uint8');%复制原始图像forn=3:a+2form=3:b+2I2(n,m)=I1(n-2,m-2);I3(n,m)=I1(n-2,m-2);endend%边界值设定forn=1:a+4form=1:b+4%左上角设定ifn<3&&m<3I2(n,m)=I2(6-n,6-m);I3(n,m)=I3(6-n,6-m);%右下角设定elseifn>a+2&&m>b+2
8、I2(n,m)=I2(2*a+4-n,2*b+4-m);I3(n,m)=I3(2*a+4-n,2*b+4-m);%右上角设定elseifn<3&&m>b+2I2(n,m)=I2(6-n,2*b+4-m);I3(n,m)=I3(6-n,2*b+4-m);%左下角设定elseifm<3&&n>a+2I2(n,m)=I2(2*a+4-n,6-m);I3(n,m)=I3(2*a+4-n,6-m);%上两行设定elseifn<3I2(n,m)=I2(6-n,m);I3(n,m)=I3(6-n,m);%下两行
9、设定elseifn>a+2I2(n,m)=I2(2*a+4-n,m);I3(n,m)=I3(2*a+4-n,m);%左两列设定elseifm<3I2(n,m)=I2(n,6-m);I3(n,m)=I3(n,6-m);%右两列设定elseifm>b+2I2(n,m)=I2(n,2*b+4-m);I3(n,m)=I3(n,2*b+4-m);endendendendendendendendendend%图像处理forn=3:a+2form=3:b+2%均值滤波temp0=I2(n-2:n+2,m-2:m
10、+2);temp0=temp0.*h1;temp1=mean(temp0(:));temp1=uint8(floor(temp1));I2(n,m)=temp1;%中值滤波temp2=I3(n-2:n+2,m-2:m+2);temp3=median(double(temp2(:)));temp3=uint8(floor(temp3));I3(n,m)=temp3;endend%保持分辨率I4=I2(3:a+2,3:b+2);I5=I3(3:a+2,3:b+2);%显示图像figur