资源描述:
《数字图像处理matlab期末复习程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、1、读入指定的图像,并完成下列功能:(1)、得出图像的大小;(2)、显示图像信息;(3)、将图像转换为灰度图像,并显示;(4)将灰度图像转换为二值图像,并显示。I=imread('22.jpg');s=size(I);%(1)Info=imfinfo('cameraman.bmp');%(2)J=rgb2gray(I);imshow(J);%(3)I1=im2bw(I);imshow(I1);%(4)2、读入指定的两幅图像,并完成下列功能:(1)、将两幅图像进行加、减、乘、除运算,逻辑与、或运算,并予以显示;(2)、合成一幅与源图
2、像大小相同的新图像,新图像的左半部为图像1的左半部,右半部为图像2的右半部,并予以显示;(3)、将新图像放大到原来的4倍,采用双线性插值,并予以显示。(1)I=imread(‘rice.png');J=imread('cameraman.tif');I1=im2bw(I);J1=im2bw(J);K=imadd(I,J);%+L=imsubtract(I,J);%-M=immultiply(I,J);%*N=imdivide(I,J);%/K1=I1&J1;%逻辑与运算K2=I1
3、J1;%逻辑或运算Figure;subplot(1
4、41);imshow(K,[]);subplot(142);imshow(L,[]);subplot(143);imshow(M,[]);subplot(144);imshow(N,[]);Figure;subplot(121);imshow(K1);subplot(122);imshow(K2);(2)a=imread('rice.png');b=imread('cameraman.tif');c=[a(:,1:end/2,:)b(:,end/2:end,:)]imshow(c);(3)J=imresize(c,4,'bilin
5、ear');imshow(J);3、读入指定的灰度图像,并完成下面的功能(1)显示出图像的直方图;(2)对图像进行直方图均衡化处理并显示及其直方图;(3)对图像的亮度进行处理,将图像的较暗部分[0:0.4]映射到[0.5:1],显示图像及其直方图;(1)I=imread('moon.tif');imhist(I);(2)I=imread('moon.tif');J=histeq(I);figure;subplot(121),imshow(J);subplot(122),imhist(J);(3)I=imread('camerama
6、n.tif');J=imadjust(I,[0,0.4],[0.5,1]);subplot(121),imshow(J);subplot(122),imhist(J)4、读入指定的灰度图像,并完成下面的功能(1)加入2%的椒盐噪声(高斯噪声)并显示;I=imread('cameraman.tif');J1=imnoise(I,'salt&pepper',0.02);J2=imnoise(I,'gaussian',0.01);subplot(221),imshow(J3);subplot(222),imshow(J4);(2)进行中
7、值滤波(均值滤波)并显示效果;I=imread('cameraman.tif');%读取图像K=filter2(fspecial('average',3),J)/255;%使用均值滤波器进行滤波L=medfilt2(J,[33]);%中值滤波subplot(223),imshow(K);subplot(224),imshow(L)(3)自己选择一个模板对图像进行锐化处理;I=imread('cameraman.tif');h1=[0,-1,0;-1,5,-1;0,-1,0];I2=imfilter(I,h1);I3=I-I2;su
8、bplot(131),imshow(I);subplot(132),imshow(I2,[]);subplot(133),imshow(I3,[]);(4)使用Sobel算子(其他算子),选择合适的阈值,对图像进行边缘提取并显示结果。f=imread('22.jpg');f=rgb2gray(f);%图像灰度化f=im2double(f);%图像灰度值转换为双精度类型数据[VSFATThreshold]=edge(f,'sobel','vertical');%自动选择阈值s180=[-1-2-1;000;121];B180=imf
9、ilter(f,s180,'replicate');%提取图像边缘B180=B180>=Threshold;s90=[-101;-202;-101];B90=imfilter(f,s90,'replicate');%提取图像边缘B90=B90>=T