数字图像处理大作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
[HW5][24]SA11009045_张海滨
大作业
1、行模糊、锐化、和直方图均衡化。
程序:
I=imread('E:\研一\数字图像处理\作业\HW5\DSC00003.JPG'); figure,imshow(I),title('原始图像');
I1=rgb2gray(I);
I1=imresize(I1,0.5);
figure,imshow(I1),title('灰度图像');
h=ones(5,5)/25;
I2=imfilter(I1,h);
figure,imshow(I2),title('模糊处理');
J=double(I1);
h1=fspecial('laplacian');
I3=filter2(h1,J);
figure,imshow(I3),title('锐化处理');
I4 = histeq(I1,256);
figure,imhist(I1),title('原图像直方图');
figure,imshow(I4),title('均衡化处理');
figure,imhist(I4),title('均衡化后直方图');
进行运算的结果为:
原始图像
此为进行处理的原始图像。进行图像灰度化并把图像的大小进行调整为原来的一半,得到图像:
对图像分别进行均值滤波器模糊、拉普拉斯算子锐化处理,得到的结果如下图:
方图如下所示。
2、边缘检测,程序:
I=imread('F:\研一\数字图像处理\作业\HW5\DSC00003.JPG'); I1=rgb2gray(I);
I1=imresize(I1,0.5);
J=double(I1);
H=[0 1 0;1 -4 1;0 1 0];
J=conv2(J,H,'same');
J=I1-J;
subplot(1,2,1);
imshow(I1),title('灰度图像');
subplot(1,2,2);
imshow(J),title('Laplace算子边缘检测');
G1 = [-1 -2 -1;0 0 0;1 2 1];
G2 = G1';
Iedge=I1;
I2x = filter2(G1,Iedge);
I2y = filter2(G2,Iedge);
I2=abs(I2x+I2y);
I22 = mat2gray(I2);
figure,imshow(mat2gray(abs(I2x))),title('水平方向边缘')
figure,imshow(mat2gray(abs(I2y))),title('垂直方向边缘')
figure,imshow(I22),title('合成边缘')
IFB=im2bw(I22,0.08);
figure,imshow(IFB),title('合成边缘二值图像')
[m n]=size(I22);
I2_edge=I22;
for i=1:m
for j=1:n
if I2_edge(i,j)>0.15
I2_edge(i,j)=1;
else if I2_edge(i,j)>0.06
I2_edge(i,j)=0.5;
end
end
end
end
figure,imshow(I2_edge),title('边缘增强后的图像');
可以得到Laplace 算子处理得到的边缘:
灰度图
像Laplace 算子边缘检测
利用Sobel算子获得的图像的水平和垂直边缘。并得到两个方向的合成图像,它表示图像的综合边缘信息。从图中可以看出,图像用Sobel算子进行边缘增强后整个图像很暗,为了更清晰地表现图像的轮廓信息,我对合成边缘中的边缘像素进行了增强处理,获得最后一幅所示边缘增强的结果,它由4个灰度级来表示。
3、数字标识部位分割,程序:
I=imread('F:\研一\数字图像处理\作业\HW5\DSC00003.JPG'); I1=rgb2gray(I);
I1=imresize(I1,0.5);
figure,imshow(I1),title('灰度图像');
I2=im2bw(I1,graythresh(I1));
figure,imshow(I2),title('二值图像');
I3=I2(665:687,1:100);
I3=imresize(I3,10);
figure,imshow(I3),title('数字部分特征提取');
A=I3;ED_type='disk';
se=strel(ED_type,12);
I4=imclose(A,se);
figure,imshow(I4),title('闭运算的结果');
J1=I4(40:203,1:143);
A=J1;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,1),imshow(A),title('第1个数字');
J2=I4(40:210,144:286);
A=J2;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,2),imshow(A),title('第2个数字');
J3=I4(40:210,287:429);
A=J3;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,3),imshow(A),title('第3个数字');
J4=I4(40:210,430:572);
A=J4;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,4),imshow(A),title('第4个数字');
J5=I4(40:210,573:715);
A=J5;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,5),imshow(A),title('第5个数字');
J6=I4(40:210,716:863);
A=J6;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,6),imshow(A),title('第6个数字');
J7=I4(40:210,864:1000);
A=J7;ED_type='disk';
se=strel(ED_type,8);
A=imdilate(A,se);
subplot(1,7,7),imshow(A),title('第7个数字');
通过计算,得到图像的灰度图和二值化图像如下图所示: