1、 subplot(2,2,4),imhist(BW),title(转为2值图像的直方图图(1-2)灰度图像变成2值图像右图是左图转化后的2值图像,很明显的看到只有两种灰度级,这样将原灰度图像中的一些细节就丢失了,比如以前图像中的背景根头发有很明显的分界线,而转化成2值图像后,头发和背景由于在灰度分界值得同一侧,故被处理成为一种灰度级。而面部也有一些细节损失掉了,从直方图也能看出,处理后的图像只有两种灰度级,这样处理有种木刻画的效果。1.3灰度图像的裁剪图像的裁剪是依据改变图像的像素数目来对图像进行裁剪的。裁剪的目的是是突出显示重要部位,裁剪后的图像的像素数目比裁剪之前减少。J=K(65:280
2、,65:240);subplot(1,2,1),imshow(K),title(原始灰度图像subplot(1,2,2),imshow(J),title(裁剪以后的图像图(1-3)灰度图像的裁剪如上图所示,裁剪之后图像会减小,若是将裁剪以后的图像放大到跟原始图像一样大小,那么裁剪图像会出现马赛克。1.4灰度图像的旋转图像旋转是对图像的空间角度做调整。图像旋转可以通过直接调用旋转角度的函数来完成。M1=imrotate(K,45);M2=imrotate(K,70);M3=imrotate(K,90);figure,subplot(1,4,1),imshow(K),title(subplot(1
3、,4,2),imshow(M1),title(旋转45度图像subplot(1,4,3),imshow(M2),title(旋转70度图像subplot(1,4,4),imshow(M3),title(旋转90度图像figure,subplot(1,4,1),imhist(K),title(原始灰度直方图subplot(1,4,2),imhist(M1),title(旋转45度直方图subplot(1,4,3),imhist(M2),title(旋转70度直方图subplot(1,4,4),imhist(M3),title(旋转90度直方图图(1-4a)与绘图图像的旋转从以上图像的寻转过程可以
4、看到,在中间两幅图中会出现黑色边角,但实际照片中的像素值没有改变。旋转只是对同享空间上做了变换,并不影响原照片的灰度级。图(1-4b)旋转直方图从直方图可以看出,旋转之前和旋转九十度的图像的直方图并没有改变,只说明图像和直方图并不是一一对应的关系,一个直方图可能有好多个图像与之对应。而中间两幅图像也是由于旋转以后增加的黑色边角似的直方图发生了变化。1.5灰度图像的平移图像的平移是改变图像在显示窗口内像素的位置,属于空域的线性变换。M=double(K);m,n=size(K);L=ones(m,n);for i=1:200 for j=1: L(i+m-200,n-200+j)=M(i,j);
5、 endendN=uint8(L);subplot(1,2,1),imshow(K);title(subplot(1,2,2),imshow(N);平移后的图像图(1-5)图像的平移从图像中可以看到照片从像素框中移到了右下方,像素框内器宇不凡为黑色1.6灰度图像的反向操作反向操作是用一个与原始灰度图像同样大小的全白图像(像素灰度值全为255)各点的像素值减去当前灰度图像相应像素点的像素值。反相有时候可以节约打印的成本,如在一幅图像中如果黑色部分过多,可以将其反向操作在打印出来,这样不仅能够将图像中的信息反映出来还能节省打印用的墨。L=double(K);Lf=ones(m,n);mn Lf(i
6、,j)=255-L(i,j);D=uint8(Lf);subplot(2,2,1),imshow(K),title(subplot(2,2,2),imshow(D),title(反向操作subplot(2,2,3),imhist(K),title(原灰度图像直方图subplot(2,2,4),imhist(D),title(反相以后的直方图图(1-6)图像的反变换从效果来看,原来图像中灰度值大的像素点灰度值变小,灰度值小的像素点灰度值变大。反相前后的直方图也成对称关系。1.7灰度图像缩放图像的缩放包括缩小和放大。以缩小为例:N=imresize(K,0.3);M=imresize(K,2);s
7、ubplot(1,2,2),imshow(N),title(缩放0.3倍的图像图(1-7a)图像的缩放从两幅图像上看,缩小0.3以后的图像出现了明显的马赛克,这是应为图像缩小后,其用来表示整个图像的像素点减少,将其拉到跟原始图像一样大时,表示同一处细节就会出现不连续性。图(1-7b)缩放直方图从直方图来看,缩小以后虽然直方图大体跟原灰度直方图相类似,但在一些像素较少的地方出现了毛刺,这也是因为像素数减少,致使一些细节没有被表现出来,而与其他的灰度级的像素数合并。2.灰度图像的增强2.1灰度图像的平滑图像的平滑主要由两个作用,一是消除或减少噪声,改善图像质量;另一个是模糊图像,使图像看起来柔和自
8、然。图像平滑可以在空间域进行,也可以在频率域进行,空间域常用的方法有:多图像平均法、邻域平均法、中值滤波法等。2.1.1多图像平均法 叠加法去除高斯噪声就使用的多图像平均法。基本原理就根据高斯噪声的随机性,将同一图像的不同密度的噪声图像相叠加,达到去除噪声的目的。%加不同密度的高斯噪声J1=imnoise(K,gaussian,0,0.01);figure,subplot(2,3,1),imshow(J1),title(高斯0.01J2=imnoise(K,0,0.02);subplot(2,3,2),imshow(J2),title(高斯0.02);J3=imnoise(K,0,0.03);
9、subplot(2,3,3),imshow(J3),title(高斯0.03J4=imnoise(K,0,0.05);subplot(2,3,4),imshow(J4),title(高斯0.05J5=imnoise(K,0,0.10);subplot(2,3,5),imshow(J5),title(高斯0.10%叠加法去除高斯噪声J1=double(J1);J2=double(J2);J3=double(J3);J4=double(J4);J5=double(J5);X=(J1+J2+J3+J4+J5)/5;Z=uint8(X);subplot(2,3,6),imshow(Z),title(叠
10、加法去除高斯噪声J1=uint8(J1);J2=uint8(J2);J3=uint8(J3);J4=uint8(J4);J5=uint8(J5);figure,subplot(2,3,1),imhist(J1),title(直方图0.01subplot(2,3,2),imhist(J2),title(直方图0.02subplot(2,3,3),imhist(J3),title(直方图0.03subplot(2,3,4),imhist(J4),title(直方图0.05subplot(2,3,5),imhist(J5),title(直方图0.1subplot(2,3,6),imhist(Z),t
11、itle(叠加之后图像直方图图(2-1-1a)原始灰度图及直方图图(2-1-1b)叠加法去除高斯噪声从最后的效果来叠加以后噪声比其他加噪声图像有明显的减轻,但跟原始图像比噪声仍然存在。图(2-1-1c)叠加法去除高斯噪声直方图从直方图来看,家噪声的密度越大,直方图表现出越平缓,最后叠加结果的直方图与加密度为0.01的直方图很相像,这也证明经过叠加以后噪声明显减少。2.1.2邻域平均法邻域平均法就是对原始图像的每个像素点(x,y)取一个邻域R,计算R中所有像素和该点的灰度平均值,把他赋给输出图像中的对应点。M=rgb2gray(I);figure,J1 = imnoise(M,M4=0 1 0;
12、 1 0 1; 0,1,0/4;X1=imfilter(J1,M4);M8= 1 1 1; 1 1 1/8; X2=imfilter(J1,M8); M25=1 1 1 1 1; 1 1 1 1 1; 1 1 1 1 1/25; X3=imfilter(J1,M25); M49=1 1 1 1 1 1 1; 1 1 1 1 1 1 1; 1 1 1 1 1 1 1/49; X4=imfilter(J1,M49); figure,subplot(2,3,1),imshow(M);subplot(2,3,2),imshow(J1);添加0.05高斯噪声图像subplot(2,3,3),imshow
13、(X1);M4模版去噪subplot(2,3,4),imshow(X2);M8模板去噪subplot(2,3,5),imshow(X3);M25模板去噪 subplot(2,3,6),imshow(X3);M49模板去噪 figure;subplot(2,3,1),imhist(M);原始灰度图像直方图subplot(2,3,2),imhist(J1);加噪声直方图subplot(2,3,3),imhist(X1);四邻域去噪直方图subplot(2,3,4),imhist(X2);八邻域去噪直方图subplot(2,3,5),imhist(X3);25邻域去噪直方图subplot(2,3,6
14、),imhist(X4);49邻域去噪直方图 图(2-1-2a)叠加法去除出高斯噪声从去噪后图像的效果来看四种邻域都有去噪效果,而且直观地看,4,8,25,49邻域的去噪效果依次增强,但随着去噪效果的增强,图像也变得模糊。图(2-1-2b)叠加法去噪直方图从直方图来看,随着邻域模版的增大,直方图越来越趋近于原始灰度图像的直方图,这也表明:随着邻域模版的增大去噪效果越来越明显。2.1.3中值滤波法中值滤波实际上就是用一个含有奇数个像素的窗口在图像中滑动,将窗口中心点的灰度值用窗口内各点灰度的中值代替。G=imnoise(K,J=imnoise(K,salt & pepper,0.05);Lg=m
15、edfilt2(G,3 3);Lj=medfilt2(J,3 3);subplot(2,3,1),imshow(K),title(subplot(2,3,2),imshow(G),title(加高斯噪声图像subplot(2,3,3),imshow(J),title(加椒盐噪声图像subplot(2,3,4),imshow(Lg),title(高斯噪声中值滤波图像subplot(2,3,5),imshow(Lj),title(椒盐噪声中值滤波图像图(2-1-3)中值滤波从图像中可以看出中值滤波法对椒盐噪声的滤除效果好于对高斯噪声的滤除2.2灰度图像锐化2.2.1拉普拉斯算子进行锐化 实现程序:
16、A=0 1 0; 1 -4 1; 0 1 0;B=1 1 1; 1 1 1; 1 1 1/9;Id=imfilter(K,A);subplot(1,3,1),imshow(Id),title(拉氏算子处理Jd=imfilter(K,B);subplot(1,3,2),imshow(Jd),title(模糊化处理Id=double(Id);Jd=double(Jd);Gu=uint8(Jd-Id);subplot(1,3,3),imshow(Gu),title(拉普拉斯算子图像锐化图(2-2-1)拉氏算子图像锐化 从锐化结果看,比模糊化的图像清晰很多,但头发和衣领部分也有明显的黑点。2.2.2R
17、oberts算子进行边沿检测及锐化罗伯特算子是分别将像素点矩阵主对角线,从对角线的灰度值作差得到两个不同方向(44度和135度)的边缘检测图像,再将两个方向的图像叠加起来。%罗伯特算子锐化;Rh=1 0; 0 -1 ;Rv=0 1; -1 0; B=1 1 1;Ih=imfilter(K,Rh);figure,subplot(1,5,1),imshow(Ih),title(45度检测Iv=imfilter(K,Rv);subplot(1,5,2),imshow(Iv),title(135度检测Ih=double(Ih);Iv=double(Iv);R=uint8(Ih+Iv);subplot(
18、1,5,3),imshow(R),title(罗伯特算子边缘检测subplot(1,5,4),imshow(Jd),title(R=double(R);Gu=uint8(Jd-R);subplot(1,5,5),imshow(Gu),title(罗伯特算子图像锐化图(2-2-2a)罗伯特算子边沿检测图(2-2-2b)罗伯特算子锐化2.2.3Prewitt算子进行边沿检测及锐化Prewitt算子与罗伯特算子类似,只不过是3*3的像素点矩阵,的道德为水平检测和竖直检测,再将得到的两个方向上的图像叠加起来,得到边缘检测图像。%Prewitt;Ph=-1 0 1; -1 0 1; -1 0 1 /2;
19、Pv=-1 -1 -1; 0 0 0; 1 1 1/2;Kh=imfilter(K,Ph);figure,subplot(1,5,1),imshow(Kh),title(水平检测Kv=imfilter(K,Pv);subplot(1,5,2),imshow(Kv),title(竖直检测Kh=double(Kh);Kv=double(Kv);P=uint8(Kh+Kv);subplot(1,5,3),imshow(P),title(Prewitt算子边缘检测P=double(P);Gu=uint8(Jd-P);Prewitt算子图像锐化图(2-2-3a)Prewitt算子边沿检测图(2-2-3b
20、)Prewitt算子图像锐化2.2.4 Sobel算子进行边沿检测及锐化Soble算子左边缘检测,跟其他两个也类似,得到视屏检测和竖直检测的两个图像,再叠加起来就成为Soble边缘检测的图像。%SobelSh=-1 0 1; -2 0 2; -1 0 1/2;Sv=-1 -2 -1; 1 2 1/2;Eh=imfilter(K,Sh);figure,subplot(1,5,1),imshow(Eh),title(Ev=imfilter(K,Sv);subplot(1,5,2),imshow(Ev),title(Eh=double(Eh);Ev=double(Ev);S=uint8(Eh+Ev)
21、;subplot(1,5,3),imshow(S),title(Sobel算子边缘检测S=double(S);Gu=uint8(Jd-S);Sobel算子图像锐化图(2-2-4a)Soble算子边沿检测图(2-2-4b)Soble算子图像锐化从以上边缘检测的图像分析可得:Roberts算子可以进行边缘检测,但是去噪作用小;Prewitt算子不仅能检测边缘,而且能抑制噪声的影响;Soble算子噪声抑制效果强于Prewitt算子,但是得到的边缘较宽。2.3直方图均衡化直方图均衡化的基本思想是对原始灰度图像中的像素灰度做某种映射变换,是变换后的图像灰度的概率密度是均匀分布的,即变换后图像的灰度级是均
22、匀分布的,这意味着图像的动态范围得到了增加,从而提高图像的对比度。figure,subplot(2,2,1),imshow(K);subplot(2,2,2),histeq(K);均衡化后图像subplot(2,2,3),imhist(K);subplot(2,2,4),imhist(k);均衡化后直方图图(2-3)直方图均衡化从这幅图来看,均衡化以后图像灰度级的动态范围得到了增加,但是也损失掉了图像的一些细节,从直方图来看灰度级分布及均匀了,那是因为小概率灰度级被合并到了别的灰度级中。这样处理随让增加了图像会妒忌的动态范围,是灰度级分布均匀,但具体效果是好还是不好,要根据实际需求来作出判断。3.灰度图像的形态学处理3.1二值图像膨胀 se=strel(line,11,0); bw2=imdilate(BW,se); subplot(1,2,1),imshow(BW),title( subplot(1,2,2),imshow(bw2),title(膨胀图(3-1)膨胀操作从膨胀结果可以看出眼睛和嘴部位已经膨胀到几乎看不见。3.2二值图像腐蚀 bw2=imerode(BW,se); subplot(1,2,2),imshow(bw2),title(
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1