1、a=1;figure(5);tan=45figure(6);%tan=60a=sqrt(3);figure(7);tan=60figure(8);实验结果如下图所示:图片1的原图像图片1的30度线性变换图像图片1的45度线性变换图像图片1的60度线性变换图像原图像的直方图 30度变换后直方图45度变换后的直方图 60度变换后直方图图片2处理程序参考图片1处理程序。图片2实验结果如图所示:图片2原图像30度变换后图像45度变换后图像60度变换后图像2.实验结果分析由实验结果可以看出,当按照30度线性变换后图像变暗,按照45度变换后图像没有任何改变,按照60度变换后图像变亮,由变换后的直方图可以确
2、认像素点的变化。由以上分析可以得出,当线性变换函数的斜率大于1时,图像的对比度将增大;当线性变换的斜率小于时,图像的对比度将减小;当线性变换函数的斜率等于1时,图像的对比度不变,只是像素点整体的移动。虽然线性变换可以改变对比度,但是对图像的细节部分增强有限。1.在MATLAB中编写灰度图像的对指数点运算程序 图片1对数处理程序:y=log(I+1);对数变换图片1直方图 图片1对数变换直方图对数变换后图像图片1指数处理程序: %显示原图像imshow(imadjust(I,3);H,x=imhist(imadjust(I,4),64);指数变换图片1直方图 指数变换后直方图图片1指数变换后图像
3、图片2对指数处理程序参考图片1处理程序。对指数处理结果如图所示:图片2指数变换后图像图片2直方图 指数变换后直方图对数变换后直方图图片2对数变换后图像A、对数变换采用对数变换,当函数自变量为低值时,曲线斜率很高;自变量为高值时,曲线斜率变小。由变换后图像和直方图可以得出,对数变换是增强图像中较暗的细节,从而可用来扩展被压缩的高值图像中较暗的像素。B、指数变换对数变换采用的是伽玛变换(1),同理图像的高灰度区域对比度得到增加。因为伽玛变换变换不是线性变换,不仅可以改变图像的对比度,还能够增强细节,从而带来整体图像效果的增强和改善。 (2)分别用Roberts算子、Sobel算子、LoG算子和Ca
4、nny算子进行边缘检测,比较它们的效果并讨论其特点;图片3 图片41.在MATLAB中编写检测程序图片3.pngbw1=edge(I,robertsbw2=edge(I,sobelbw3=edge(I,logbw4=edge(I,cannyimshow(bw1);imshow(bw2);imshow(bw3);imshow(bw4);实验结果如图所示:图片3经过roberts算子检测的图像图片3经过sobel算子检测的图像图片3经过LoG算子检测的图像图片3经过canny算子检测的图像 图片4处理程序参考图片3处理程序。roberts处理后图像 sobel处理后图像LoG处理后图像 canny
5、处理后图像由实验结果可以看出:Roberts利用局部差分算子寻找边缘,边缘定位精度较高,但是容易丢失一部分边缘,同时由于图像没经过平滑处理,因此不具备抑制噪声的能力,所以对含噪声少的图像的处理效果较好;Sobel算子考虑了邻域信息,相当于对图像先做加权平滑处理,然后再做微分运算,虽然能够对噪声有抑制效果,但不能完全排除检测结果中出现的虚假边缘。对边缘定位准确,但检测出的边缘容易出现多像素宽度;LoG算子即高斯-拉普拉斯算子,克服了拉普拉斯抗噪声比较差的缺点,但在抑制噪声的同时也可能将原有的比较尖锐的边缘也平滑掉,造成这些尖锐的边缘无法被检测到,但是相对于Roberts算子和Sobel算子处理结
6、果稍好;Canny算子:在图像边缘检测中,抑制噪声和边缘精确定位是无法同时瞒足的,Canny算子在力图在抗干扰和精确定位之间寻求最佳的折中方案。由图像处理结果可以看出,效果较前三者边缘更细腻、清楚。从边缘定位的精度看:Roberts算子和LoG算子定位精度更高。从对不同方向边缘的敏感性而言:Sobel算子检测斜向阶跃边缘效果较好;Roberts算子检测水平和垂直边缘效果较好;LoG算子不具备边缘方向检测能力;Soberl算子可以提供最精确的边缘方向估计。从去噪能力看:Roberts算子和LoG算子虽然定位精度较高,但受噪声影响大。从总体效果来衡量,Canny算子给出了一种边缘定位精确性和抗噪声
7、干扰性的较好折中。(3)采用不同阈值化方法(固定阈值、迭代阈值、Otsu阈值等)对图像进行分割,比较它们的效果并讨论其特点;图片5 图片61.固定阈值:图片5.pngimhist(I);直方图i=1;j=1;for i=1:1:256 for j=1: if (I(i,j)=TK) iForeground=iForeground+1; ForegroundSum=ForegroundSum+double(tmp);%前景灰度值 else iBackground=iBackground+1; BackgroundSum=BackgroundSum+double(tmp);ZO=Foregroun
8、dSum/iForeground;%计算前景和背景的平均值 ZB=BackgroundSum/iBackground; TKTmp=uint8(ZO+ZB)/2; if(TKTmp=TK ) bcal=0; TK=TKTmp;end %当阈值不再变化的时候,说明迭代结束disp(strcat(迭代后的阀值:,num2str(double(TK); %显示最终阈值newI=im2bw(I,double(TK)/255);原始图像imshow(newI);迭代法分割) 实验结果:128图片5迭代分割 图片6处理过程同上,实验结果如图所示:104图片6迭代分割3.Otsu阈值:I = imread(
9、level = graythresh(I);BW = im2bw(I,level); imshow(BW);otsuLevel=0.5137Otsu阈值分割 图片6处理过程同上,实验结果如下:Level=0.4039;4.实验结果分析固定阈值:由图片5和图片6的处理结果看出,固定阈值适合具有明显双峰的图像,但是当两个峰值相差很远时不适用,而且容易受到噪声的干扰,进而导致阈值的选取误差。又因为直方图是各灰度的像素统计,其峰值和谷底并不一定代表目标和背景,所以没有图像其他方面的知识,只靠直方图进行图像分割是不一定准确的。迭代阈值:基本思想是:开始选择一个阈值作为初始值,然后按照某种方法不断更新这个
10、阈值,直到满足给定的条件为止。由处理结果可以看出,迭代阈值法不需要再依靠直方图或其他方法给出分割阈值,就能够很好的分割图像。对于图片6效果不是很好。Otsu阈值:Otsu阈值又称最大类间方差法,函数Graythresh可以自适应地确定变换所用的最优阈值。由图像处理结果可以看出,对于简单图像处理效果稍好,但是对于复杂图像的处理效果不好,常常给物体的边缘带来误差。(4)对于2幅不同的纹理图像,计算其灰度共生矩阵及相关的二次统计量(能量、惯性、相关性、熵等),并比较有何不同?从这些统计量中可以看出纹理图像有何特点?图片7 图片81.实验程序%基于共生矩阵纹理特征提取,d=1,=0,45,90,135
11、共四个矩阵%所用图像灰度级均为256Gray = imread(图片7.pngM,N = size(Gray);I= zeros(M, N);I= ( Gray - rem(Gray, 8) ) / 8; imshow(Gray, );256 * 256imhist(Gray); imshow(I, );8 * 8%-%计算四个共生矩阵P,取距离为1,角度分别为0,45,90,135P = zeros(8,8,4);for m = 1:8 for n = 1: for i = 1:M for j = 1:N if j1&jI(i-1,j+1)=n-1 P(m,n,2) = P(m,n,2)+1
12、; P(n,m,2) = P(m,n,2); if iM&I(i+1,j)=n-1 P(m,n,3) = P(m,n,3)+1; P(n,m,3) = P(m,n,3);I(i+1,j+1)=n-1 P(m,n,4) = P(m,n,4)+1; P(n,m,4) = P(m,n,4); if m=n P(m,n,:) = P(m,n,:)*2;%-% 对共生矩阵归一化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;d
13、eltaX= H; deltaY = H;C =H; E(n) = sum(sum(P(:,n).2); %能量 if P(i,j,n)=0 H(n) = -P(i,j,n)*log(P(i,j,n)+H(n); %熵 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 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);
14、%相关性中y C(n) = i*j*P(i,j,n)+C(n); C(n) = (C(n)-Ux(n)*Uy(n)/deltaX(n)/deltaY(n); %相关性 %求能量、熵、惯性矩、相关的均值和标准差作为最终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),
15、E(4) % 输出数据;0,45,90,135方向上的熵依次为:,H(1),H(2),H(3),H(4) % 输出数据;0,45,90,135方向上的惯性矩依次为:,I(1),I(2),I(3),I(4) % 输出数据;0,45,90,135方向上的相关性依次为:,C(1),C(2),C(3),C(4) %输出数据;2.实验结果如下所示:图片7的结果:ans = 0.170495, 0.143078, 0.164191, 0.141377 2.223837, 2.366822, 2.239749, 2.389057 0.671650, 0.907801, 0.640556, 0.982820
16、0.672787, 0.543289, 0.677332, 0.507081共生矩阵:P(:,1) = 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.3527,2) = 0 0 0 0 0.0035 0.0039
17、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.3099,3) = 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
18、.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.3411,4) = 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的结果: 0.375000, 1.000000, 0.375000, NaN 1.039721, 0.000000, 1.039721, NaN 0.500000, 0.000000, 4.500000, NaN -1.777778, NaN, -0.197531, NaN 0 0 0 0 0 0 0 0.2500 0 0 0 0 0 0 0.2500 0.5000 0 0 0 0 0
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1