您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 实验1-数字图像处理的MATLAB基础
1试验一数字图像处理的MATLAB基础一.试验目的通过试验使学生掌握使用MATLAB进行数字图像处理的基本语句。二.试验内容(一)复习MATLAB基本命令、基本绘图方法和编程方法1.输入A=[715;256;315],B=[111;222;333],在命令窗口中执行下列表达式,掌握其含义:A(2,3):矩阵A的第二行第三列元素;A(:,2):矩阵A所有的行,第三列;A(3,:)矩阵A第三行,所有的列;A(:1:2:3):矩阵所有的行,第一列和第三列,步长值为2A(:,3).*B(:,2):矩阵A的第三列与矩阵B第二列元素相乘。A(:,3).*B(:,2):矩阵A的第三列与矩阵B第二列矩阵相乘。A*B:矩阵相乘;A.*B:矩阵中的元素相乘;A^2:矩阵A与A相乘;A.^2:矩阵元素相乘;B/A:表示矩阵相除;B./A:表示矩阵中的元素相除。A=[715;256;315];B=[111;222;333];A(2,3)ans=6A(:,2)ans=151A(3,:)ans=2315A(:,1:2:3)ans=752635A(:,3).*B(:,2)ans=51215A(:,3)*B(2,:)ans=101010121212101010A*Bans=242424303030202020A.*Bans=715410129315A^2ans=3661766423370381346A.^2ans=49125425369125B/Aans=0.18420.2105-0.23680.36840.4211-0.47370.55260.6316-0.7105B./Aans=0.14291.00000.20001.00000.40000.33331.00003.00000.60002.同屏绘制正弦曲线y=sin()x、余弦曲线y=cos()x、y=sin(x)cos(x)、y=sin(x)+cos(x)的图像。程序如下:x=-2*pi:pi/10:2*pi;subplot(2,2,1)y1=sin(x);plot(x,y1,'r')xlabel('x');ylabel('y1=sin(x)');gridonsubplot(2,2,2)y2=cos(x);plot(x,y2,'b')xlabel('x');ylabel('y2=cos(x)');gridon4subplot(2,2,3)y3=sin(x).*cos(x);plot(x,y3,'g')xlabel('x');ylabel('y3=sin(x).*cos(x)');gridonsubplot(2,2,4)y4=sin(x)+cos(x);plot(x,y4,'m')xlabel('x');ylabel('y4=sin(x)+cos(x)');gridon-8-6-4-202468-1-0.500.51xy1=sin(x)-8-6-4-202468-1-0.500.51xy2=cos(x)-8-6-4-202468-0.500.5xy3=sin(x).*cos(x)-8-6-4-202468-1.5-1-0.500.511.5xy4=sin(x)+cos(x)3.设z=222()xyxe,求定义域x=[-2,2],y=[-2,2]内的z值,网格取0.1见方,画出三维曲面图。程序如下:x=-2:0.1:2;y=-2:0.1:2;[X,Y]=meshgrid(x,y);Z=X.^2.*exp(-(X.^2+Y.^2));mesh(Z)xlabel('x');ylabel('y');zlabel('z');501020304050020406000.10.20.30.4xyz(二)熟悉imread函数,imshow函数,imwrite函数的使用方法。1.读入图像lena_gray.tif,并显示。I=imread('d:\test_images\lena_gray.tif','tif');imshow(I);2.令I=imread(‘lena_gray.tif’);求得图像的尺寸。显示图像I[20:200,20:100],将该图像存储为bmp格式的图像。程序如下:I=imread('d:\test_images\lena_gray.tif','tif');imshow(I);size(I);6I(20:200,20:100);J=I(20:200,20:100);imshow(J);imwrite(J,'d:\jly\gg.bmp','bmp');图像的尺寸是255255图像的尺寸太大了,没有copy过来,还有I[20:200,20:100],表示取得图像这个区间的值,在命令窗口里,没有copy过来。从实验运行结果我们可以得出,图像在电脑中的存储是以数字的形式存储的,且灰度级为0—255.3.对图像cameraman.tif和lena_gray.tif进行加法、和旋转运算,并显示结果:I=imread('d:\test_images\lena_gray.tif','tif');camer=imread('d:\test_images\cameraman.tif','tif');ADDicamer=I+camer;imshow(ADDicamer);imshow(I')图像叠加的效果:7图像旋转的效果:4.读入彩色图像lena_color.tif,并显示:lenac=imread('d:\test_images\lena_color.tif','tif');imshow(lenac)8三.思考题回答和实验中发现的问题。用MATLAB对图像进行处理,不仅可以锻炼我们的编程能力,还可以对效果不好的图像进行处理,获得想要的图像,另外,还可以进行叠加、旋转,挺有用处的。
本文标题:实验1-数字图像处理的MATLAB基础
链接地址:https://www.777doc.com/doc-5067595 .html