实验一-图像增强和图像分割实验.doc_第1页
实验一-图像增强和图像分割实验.doc_第2页
实验一-图像增强和图像分割实验.doc_第3页
实验一-图像增强和图像分割实验.doc_第4页
实验一-图像增强和图像分割实验.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

实验一 图像增强和图像分割实验(1)分别用图中给出的直线和曲线作为增强函数进行增强,比较它们的效果并讨论其特点。E5(s)E4(s)L-1L-1E2(s)E3(s)E1(s)L-1L-1线性变换 对指数变换 图片1 图片2实验步骤:1. 在MATLAB中编写灰度图像的线性变换点运算程序图片1处理程序I=imread(图片1.png); %读入原图像I=im2double(I); %转换数据类型为doubleM,N=size(I);figure(1);imshow(I);%显示原图像title(原图像);figure(2);I=rgb2gray(I);%转化为灰度图像H,x=imhist(I,64);stem(x,(H/M/N),.);title(原图像);%tan=30a=sqrt(3)/3;b=0;y=a.*I+b;figure(3);imshow(y);title(tan=30);figure(4);H,x=imhist(y,64);stem(x,(H/M/N),.);title(tan=30);%tan=45a=1;b=0;y=a.*I+b;figure(5);imshow(y);title(tan=45);figure(6);H,x=imhist(y,64);stem(x,(H/M/N),.);title(tan=45);%tan=60a=sqrt(3);b=0;y=a.*I+b;figure(7);imshow(y);title(tan=60);figure(8);H,x=imhist(y,64);stem(x,(H/M/N),.);title(tan=60);实验结果如下图所示:图片1的原图像图片1的30度线性变换图像图片1的45度线性变换图像图片1的60度线性变换图像原图像的直方图 30度变换后直方图45度变换后的直方图 60度变换后直方图图片2处理程序参考图片1处理程序。图片2实验结果如图所示:图片2原图像30度变换后图像45度变换后图像60度变换后图像2. 实验结果分析由实验结果可以看出,当按照30度线性变换后图像变暗,按照45度变换后图像没有任何改变,按照60度变换后图像变亮,由变换后的直方图可以确认像素点的变化。由以上分析可以得出,当线性变换函数的斜率大于1时,图像的对比度将增大;当线性变换的斜率小于时,图像的对比度将减小;当线性变换函数的斜率等于1时,图像的对比度不变,只是像素点整体的移动。虽然线性变换可以改变对比度,但是对图像的细节部分增强有限。1. 在MATLAB中编写灰度图像的对指数点运算程序 图片1对数处理程序:I=imread(图片1.png); %读入原图像I=im2double(I); %转换数据类型为doubleI=rgb2gray(I);figure(1);imshow(I); %显示原图像title(原图像);figure(3);H,x=imhist(I,64);stem(x,(H/M/N),.);title(原图像);figure(2);y=log(I+1);imshow(I);title(对数变换);figure(4);H,x=imhist(y,64);stem(x,(H/M/N),.);title(对数变换);实验结果如下图所示:图片1直方图 图片1对数变换直方图对数变换后图像图片1指数处理程序:I=imread(图片1.png); %读入原图像I=im2double(I); %转换数据类型为doubleI=rgb2gray(I);M,N=size(I);figure(1);imshow(I); %显示原图像title(原图像);figure(3);H,x=imhist(I,64);stem(x,(H/M/N),.);title(原图像);figure(2);imshow(imadjust(I,3);figure(4);H,x=imhist(imadjust(I,4),64);stem(x,(H/M/N),.);title(指数变换);实验结果如下图所示:图片1直方图 指数变换后直方图图片1指数变换后图像图片2对指数处理程序参考图片1处理程序。对指数处理结果如图所示:图片2指数变换后图像图片2直方图 指数变换后直方图对数变换后直方图图片2对数变换后图像2. 实验结果分析A、对数变换采用对数变换,当函数自变量为低值时,曲线斜率很高;自变量为高值时,曲线斜率变小。由变换后图像和直方图可以得出,对数变换是增强图像中较暗的细节,从而可用来扩展被压缩的高值图像中较暗的像素。B、指数变换对数变换采用的是伽玛变换(1),同理图像的高灰度区域对比度得到增加。因为伽玛变换变换不是线性变换,不仅可以改变图像的对比度,还能够增强细节,从而带来整体图像效果的增强和改善。 (2)分别用Roberts算子、Sobel算子、LoG算子和Canny算子进行边缘检测,比较它们的效果并讨论其特点;图片3 图片4实验步骤:1. 在MATLAB中编写检测程序I=imread(图片3.png);bw1=edge(I,roberts);bw2=edge(I,sobel);bw3=edge(I,log);bw4=edge(I,canny);figure(1);imshow(I);title(原图像);figure(2);imshow(bw1);title(roberts);figure(3);imshow(bw2);title(sobel);figure(4);imshow(bw3);title(log);figure(5);imshow(bw4);title(canny);实验结果如图所示:图片3经过roberts算子检测的图像图片3经过sobel算子检测的图像图片3经过LoG算子检测的图像图片3经过canny算子检测的图像 图片4处理程序参考图片3处理程序。实验结果如下图所示:roberts处理后图像 sobel处理后图像 LoG处理后图像 canny处理后图像2. 实验结果分析由实验结果可以看出:Roberts利用局部差分算子寻找边缘,边缘定位精度较高,但是容易丢失一部分边缘,同时由于图像没经过平滑处理,因此不具备抑制噪声的能力,所以对含噪声少的图像的处理效果较好;Sobel算子考虑了邻域信息,相当于对图像先做加权平滑处理,然后再做微分运算,虽然能够对噪声有抑制效果,但不能完全排除检测结果中出现的虚假边缘。对边缘定位准确,但检测出的边缘容易出现多像素宽度;LoG算子即高斯-拉普拉斯算子,克服了拉普拉斯抗噪声比较差的缺点,但在抑制噪声的同时也可能将原有的比较尖锐的边缘也平滑掉,造成这些尖锐的边缘无法被检测到,但是相对于Roberts算子和Sobel算子处理结果稍好;Canny算子:在图像边缘检测中,抑制噪声和边缘精确定位是无法同时瞒足的,Canny算子在力图在抗干扰和精确定位之间寻求最佳的折中方案。由图像处理结果可以看出,效果较前三者边缘更细腻、清楚。从边缘定位的精度看:Roberts算子和LoG算子定位精度更高。从对不同方向边缘的敏感性而言:Sobel算子检测斜向阶跃边缘效果较好;Roberts算子检测水平和垂直边缘效果较好;LoG算子不具备边缘方向检测能力;Soberl算子可以提供最精确的边缘方向估计。从去噪能力看:Roberts算子和LoG算子虽然定位精度较高,但受噪声影响大。从总体效果来衡量,Canny算子给出了一种边缘定位精确性和抗噪声干扰性的较好折中。(3)采用不同阈值化方法(固定阈值、迭代阈值、Otsu阈值等)对图像进行分割,比较它们的效果并讨论其特点;图片5 图片6实验步骤:1. 固定阈值: I=imread(图片5.png);figure(1);imshow(I);title(原图像);figure(2);imhist(I);title(直方图);i=1;j=1;for i=1:1:256 for j=1:1:256 if (I(i,j)=TK) iForeground=iForeground+1; ForegroundSum=ForegroundSum+double(tmp); %前景灰度值 else iBackground=iBackground+1; BackgroundSum=BackgroundSum+double(tmp); end end endZO=ForegroundSum/iForeground; %计算前景和背景的平均值 ZB=BackgroundSum/iBackground; TKTmp=uint8(ZO+ZB)/2; if(TKTmp=TK ) bcal=0; else TK=TKTmp;end %当阈值不再变化的时候,说明迭代结束enddisp(strcat(迭代后的阀值:,num2str(double(TK); %显示最终阈值newI=im2bw(I,double(TK)/255);figure(1);imshow(I);title(原始图像);figure(2);imshow(newI);title(迭代法分割) 实验结果:迭代后的阀值:128图片5迭代分割 图片6处理过程同上,实验结果如图所示:迭代后的阀值:104图片6迭代分割3. Otsu阈值:I = imread(图片5.png);level = graythresh(I);BW = im2bw(I,level);figure(1);imshow(I);title(原图像);figure(2); imshow(BW);title(otsu); 实验结果:Level=0.5137Otsu阈值分割 图片6处理过程同上,实验结果如下:Level=0.4039;Otsu阈值分割4. 实验结果分析固定阈值:由图片5和图片6的处理结果看出,固定阈值适合具有明显双峰的图像,但是当两个峰值相差很远时不适用,而且容易受到噪声的干扰,进而导致阈值的选取误差。又因为直方图是各灰度的像素统计,其峰值和谷底并不一定代表目标和背景,所以没有图像其他方面的知识,只靠直方图进行图像分割是不一定准确的。迭代阈值:基本思想是:开始选择一个阈值作为初始值,然后按照某种方法不断更新这个阈值,直到满足给定的条件为止。由处理结果可以看出,迭代阈值法不需要再依靠直方图或其他方法给出分割阈值,就能够很好的分割图像。对于图片6效果不是很好。Otsu阈值:Otsu阈值又称最大类间方差法,函数Graythresh可以自适应地确定变换所用的最优阈值。由图像处理结果可以看出,对于简单图像处理效果稍好,但是对于复杂图像的处理效果不好,常常给物体的边缘带来误差。(4)对于2幅不同的纹理图像,计算其灰度共生矩阵及相关的二次统计量(能量、惯性、相关性、熵等),并比较有何不同?从这些统计量中可以看出纹理图像有何特点?图片7 图片8实验步骤:1. 实验程序%基于共生矩阵纹理特征提取,d=1,=0,45,90,135共四个矩阵%所用图像灰度级均为256Gray = imread(图片7.png);M,N = size(Gray);I= zeros(M, N);I= ( Gray - rem(Gray, 8) ) / 8;figure(1); imshow(Gray, ); title(256 * 256);figure(3);imhist(Gray);figure(2); imshow(I, ); title(8 * 8);figure(4);imhist(I);%-%计算四个共生矩阵P,取距离为1,角度分别为0,45,90,135%-P = zeros(8,8,4);for m = 1:8 for n = 1:8 for i = 1:M for j = 1:N if j1&jN&I(i,j)=m-1&I(i-1,j+1)=n-1 P(m,n,2) = P(m,n,2)+1; P(n,m,2) = P(m,n,2); end if iM&I(i,j)=m-1&I(i+1,j)=n-1 P(m,n,3) = P(m,n,3)+1; P(n,m,3) = P(m,n,3); end if iM&jN&I(i,j)=m-1&I(i+1,j+1)=n-1 P(m,n,4) = P(m,n,4)+1; P(n,m,4) = P(m,n,4); end end end if m=n P(m,n,:) = P(m,n,:)*2; end endend%-% 对共生矩阵归一化%-for n = 1:4 P(:,:,n) = P(:,:,n)/sum(sum(P(:,:,n);end %-%4.对共生矩阵计算能量、熵、惯性矩、相关4个纹理参数%-H = zeros(1,4);I = H;Ux = H; Uy = H;deltaX= H; deltaY = H;C =H;for n = 1:4 E(n) = sum(sum(P(:,:,n).2); %能量 for i = 1:8 for j = 1:8 if P(i,j,n)=0 H(n) = -P(i,j,n)*log(P(i,j,n)+H(n); %熵 end I(n) = (i-j)2*P(i,j,n)+I(n); %惯性矩 Ux(n) = i*P(i,j,n)+Ux(n); %相关性中x Uy(n) = j*P(i,j,n)+Uy(n); %相关性中y end endendfor n = 1:4 for i = 1:8 for j = 1:8 deltaX(n) = (i-Ux(n)2*P(i,j,n)+deltaX(n); %相关性中x deltaY(n) = (j-Uy(n)2*P(i,j,n)+deltaY(n); %相关性中y C(n) = i*j*P(i,j,n)+C(n); end end C(n) = (C(n)-Ux(n)*Uy(n)/deltaX(n)/deltaY(n); %相关性 end%-%求能量、熵、惯性矩、相关的均值和标准差作为最终8维纹理特征%-b1 = sqrt(cov(E); a1 = mean(E) ;b2 = sqrt(cov(H); a2 = mean(H) ;b3 = sqrt(cov(I); a3 = mean(I);b4 = sqrt(cov(C) ;a4 = mean(C);sprintf(0,45,90,135方向上的能量依次为: %f, %f, %f, %f,E(1),E(2),E(3),E(4) % 输出数据;sprintf(0,45,90,135方向上的熵依次为: %f, %f, %f, %f,H(1),H(2),H(3),H(4) % 输出数据;sprintf(0,45,90,135方向上的惯性矩依次为: %f, %f, %f, %f,I(1),I(2),I(3),I(4) % 输出数据;sprintf(0,45,90,135方向上的相关性依次为: %f, %f, %f, %f,C(1),C(2),C(3),C(4) %输出数据;2. 实验结果如下所示:图片7的结果:ans =0,45,90,135方向上的能量依次为: 0.170495, 0.143078, 0.164191, 0.141377ans =0,45,90,135方向上的熵依次为: 2.223837, 2.366822, 2.239749, 2.389057ans =0,45,90,135方向上的惯性矩依次为: 0.671650, 0.907801, 0.640556, 0.982820ans =0,45,90,135方向上的相关性依次为: 0.672787, 0.543289, 0.677332, 0.507081共生矩阵:P(:,:,1) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0017 0.0036 0.0017 0.0003 0.0006 0 0 0 0.0036 0.0221 0.0293 0.0102 0.0019 0 0 0 0.0017 0.0293 0.0781 0.0537 0.0197 0 0 0 0.0003 0.0102 0.0537 0.1152 0.0941 0 0 0 0.0006 0.0019 0.0197 0.0941 0.3527P(:,:,2) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0035 0.0039 0.0007 0.0007 0 0 0 0.0035 0.0184 0.0326 0.0160 0.0064 0 0 0 0.0039 0.0326 0.0801 0.0564 0.0262 0 0 0 0.0007 0.0160 0.0564 0.0950 0.1018 0 0 0 0.0007 0.0064 0.0262 0.1018 0.3099P(:,:,3) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0019 0.0044 0.0019 0.0006 0.0003 0 0 0 0.0044 0.0246 0.0325 0.0079 0.0022 0 0 0 0.0019 0.0325 0.0840 0.0581 0.0148 0 0 0 0.0006 0.0079 0.0581 0.1105 0.0960 0 0 0 0.0003 0.0022 0.0148 0.0960 0.3411P(:,:,4) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.0029 0.0039 0.0021 0.0007 0 0 0 0.0029 0.0150 0.0358 0.0172 0.0057 0 0 0 0.0039 0.0358 0.0744 0.0576 0.0326 0 0 0 0.0021 0.0172 0.0576 0.0859 0.0981 0 0 0 0.0007 0.0057 0.0326 0.0981 0.3114 图片8的结果:ans =0,45,90,135方向上的能量依次为: 0.375000, 1.000000, 0.375000, NaNans =0,45,90,135方向上的熵依次为: 1.039721, 0.000000, 1.039721, NaNans =0,45,90,135方向上的惯性矩依次为: 0.500000, 0.000000, 4.500000, NaNans =0,45,90,135方向上的相关性依次为: -1.777778, NaN, -0.197531, NaN共生矩阵:P(:,:,1) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.2500 0 0 0 0 0 0 0.2500 0.5000P(:,:,2) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1P(:,:,3) = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

温馨提示

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

最新文档

评论

0/150

提交评论