收藏 分销(赏)

Matlab实验及答案.docx

上传人:xrp****65 文档编号:5881289 上传时间:2024-11-22 格式:DOCX 页数:33 大小:836.94KB
下载 相关 举报
Matlab实验及答案.docx_第1页
第1页 / 共33页
Matlab实验及答案.docx_第2页
第2页 / 共33页
点击查看更多>>
资源描述
实验一、MATLAB基本操作 一、实验目的 2.学习使用图形函数计算器命令funtool及其环境。 3. 学习使用help命令进行帮助 4. 掌握向量与矩阵的创建以及矩阵的基本操作 5. 掌握数组与矩阵的概念 二、 实验内容 熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;掌握数组与矩阵的概念;学会使用help命令进行帮助;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool; 1. 命令窗 口的简单使用 (1) 简单矩阵的输入 (自由创建) x=[1 3 5;2 4 6] x = 1 3 5 2 4 6 (2) 求[12+2×(7-4)]÷32的算术运算结果,总结算术运算符先级 [12+2*(7-4)]/3^2 ans = 2 2. 有关向量、矩阵或数组的一些运算 (1) 设A=15;B=20;求C=A+B与c=a+b的区别 A=15;B=20; >> C=A+B C = 35 >> c=a+b ??? Undefined function or variable 'a'. (2) 设A=[1 2 3;4 5 6;7 8 9],B=[9 8 7;6 5 4;3 2 1];求A*B与A.*B,分析原因? (A*B是两个矩阵相乘,A.*B是对应元素相乘) A=[1 2 3;4 5 6;7 8 9]; B=[9 8 7;6 5 4;3 2 1]; >> A*B ans = 30 24 18 84 69 54 138 114 90 >> A.*B ans = 9 16 21 24 25 24 21 16 9 (3) 设a=10,b=20;求i=a/b与j=a\b a=10; >> b=20; >> i=a/b i = 0.5000 >> j=a\b j = 2 (4) 设a=[1 -2 3;4 5 -4;5 -6 7] 请设计出程序,分别找出小于0的矩阵元素的线性索引以及行列索引(sub2ind/ind2sub)。(find()) 并将其单下标转换成全下标。 clear,clc a=[1 -2 3;4 5 -4;5 -6 7]; b=find(a<0) [x,y]=ind2sub(size(a),find(a<0)) Y=sort(a, 1, ‘descend’) 2.对矩阵按列从大到小 排列 (sort()) (5) 在MATLAB命令行窗口运行A=[1,2;3,4]+i*[5,6;7,8];看结果如何?如果改成运行A=[1,2;3,4]+i[5,6;7,8],结果又如何? >> A=[1,2;3,4]+i*[5,6;7,8] A = 3.5000 5.0000 6.5000 8.0000 >> A=[1,2;3,4]+i[5,6;7,8] ??? A=[1,2;3,4]+i[5,6;7,8] Error: Unbalanced or misused parentheses or brackets. 前面那个是虚数矩阵,后面那个出错 (6) 请写出完成下列计算的指令: a=[1 2 3;3 4 2;5 2 3],求a^2=?,a.^2=? a^2= 22 16 16 25 26 23 26 24 28 a.^2= 1 4 9 9 16 4 25 4 9 (7) 有一段指令如下,请思考并说明运行结果及其原因 clear X=[1 2;8 9;3 6]; X( : ) 转化为列向量 >> clear >> X=[1,2;8,9;3,6]; >> X(:) ans = 1 8 3 2 9 6 (8) 使用help命令,明白什么是稀疏矩阵sparse( ),并用采用两种方法创建下面的稀疏矩阵(其中一种方法采用help所提供的三元组方法创建稀疏矩阵 (S = SPARSE(i,j,s,m,n))) 2 0 8 0 0 0 0 1 0 4 0 0 6 0 0 0 另: 1.B=该稀疏矩阵上下反转 2.该矩阵变维,C为2*8矩阵,D为3*8矩阵,C?D? 方法一: clear,clc data=[2 8 1 4 6]; ir=[1 1 2 3 4 ]; jc=[1 3 4 2 1]; s=sparse(ir,jc,data,4,4); full(s) 方法二:不用三元组法 clear,clc a=zeros(4,4); a(1,[1,3])=[2,8]; a(2,4)=1; a(3,2)=4; a(4,1)=6; a B=flipud(a) C=reshape(a,2,8) (9) 学会使用图形函数计算器(funtool 命令),并进行下列计算: 1.求函数的符号导数 y=sin(x); 2.求下列函数的符号积分 (1) y=1/sqrt(1-x^2); 3.求两个函数之间的操作 求和 (1) sin(x)+cos(x) 乘积 (1) exp(-x)*sin(x) 商 (2) (1) sin(x)/cos(x); 求复合函数 (1) y=exp(u) u=sin(x) (10) 总结who,whos,clc,clear命令 三、设计提示 1.初次接触Matlab应该注意函数表达式的文本式描述。 2.在使用图形函数计算器funtool时,注意观察1号和2号窗口中函数的图形。 3. help帮助命令的使用 3. 向量与矩阵的创建 实验二:数组运算及线型方程组的求解 二、实验内容 1.“:”号的用法。用“:”号生成行向量a=[1 2 3 4 5 6 7 8 9 10]、b=[5 3 1 -1 -3 -5];用线性等分命令linspace重新生成上述的a和b向量。另,在100和10000之间用对数等分命令logspace生成10维的向量c。ak=logspace(2,4,10) linspace(1,10,10) linspace(5,-5,6) 2. 已知多项式a(x)=x2+2x+3,b(x)=4x2+5x+6,求a,b的积并微分。 >> a=[1,2,3];b=[4,5,6];polyder(a,b) ans = 16 39 56 27 >> poly2str(ans,'x') ans = 16 x^3 + 39 x^2 + 56 x + 27 3.生成下列矩阵,取出方框内的数组元素 a(2,2:3) a(2:4,4) a(4:5,1:3) 4. 生成一个9×9维的魔方矩阵,提取其中心的3×3维子矩阵M,利用sum函数检验其各行和各列的和是否相等。并且实现上述中心矩阵左旋90°或右旋90°,左右翻转,上下翻转 a=magic(9) >> b=a(4:6,4:6) b = 20 31 42 30 41 52 40 51 62 >> sum(b,1) ans = 90 123 156 >> sum(b,2) ans = 93 123 153 rot90(b) rot90(b,-1) fliplr(b) flipud(b) 5.已知a=[1 2 3;4 5 6;7 8 0],求其特征多项式并求其根、特征值和特征多项式 >> a=[1 2 3;4 5 6;7 8 0] a = 1 2 3 4 5 6 7 8 0 >> poly(a) ans = 1.0000 -6.0000 -72.0000 -27.0000 >> poly2sym(ans) ans = x^3-6*x^2-72*x-7599824371187741/281474976710656 >> [d v]=eig(a) d = -0.2998 -0.7471 -0.2763 -0.7075 0.6582 -0.3884 -0.6400 -0.0931 0.8791 v = 12.1229 0 0 0 -0.3884 0 0 0 -5.7345 6. 计算二重不定积分 >> syms x y >> f=int(int(x*exp(-x*y),x),y) 或 >> x=sym('x') x = x >> y=sym('y') y = y >> f=int(int(x*exp(-x*y),x),y) f = 1/y*exp(-x*y) 8.求解微分方程。 y=dsolve('D2y+2*Dy+2*y=0','y(0)=1','Dy(0)=0') 9.求其解。 >> a=[6 9 14 -11 5;1 14 -7 -15 -6;-2 1 -7 12 -1;6 11 11 -9 -13] a = 6 9 14 -11 5 1 14 -7 -15 -6 -2 1 -7 12 -1 6 11 11 -9 -13 >> b=[68 294 -441 103]' b = 68 294 -441 103 >> ra=rank(a) ra = 4 >> rb=rank([a,b]) rb = 4 %4<5 >> x1=null(sym(a)) x1 = 27713/253 -11117/506 -8394/253 1 1619/506 >> a\b ans = 0 -26.3759 -5.4126 -38.3960 -8.2392 X=K*x1+ans 实验三:二维图形和三维图形的创建 一、实验目的 1.掌握二维图形的绘制。 2.掌握图形的标注 3.了解三维曲线和曲面图形的绘制。 二、实验内容 1.生成1×10维的随机数向量a,在同一幅图片上分别用红、黄、蓝、绿色绘出其连线图、脉冲图、阶梯图和条形图,并分别标出标题“连线图”、“脉冲图”、“阶梯图”、“条形图”。 >> x=rand(1,10) x = Columns 1 through 7 0.9501 0.2311 0.6068 0.4860 0.8913 0.7621 0.4565 Columns 8 through 10 0.0185 0.8214 0.4447 >> subplot(141); >> plot(x) >> subplot(142); >> stem(x) >> subplot(143); >> stairs(x) >> subplot(144); >> bar(x) 2.绘制向量x=[1 3 0.5 2.5 2]的饼形图,并把3对应的部分分离出来。 x=[1 3 0.5 2.5 2]; >> pie(x,[0 1 0 0 0]) 3.用hold on命令在同一个窗口绘制曲线y=sin(t),y1=sin(t+0.25) y2=sin(t+0.5),其中t=[0 10]。 t=0:2*pi/100:10; y1=sin(t); plot(t,y1) hold on y2=sin(t+0.25); plot(t,y2) hold on y3=sin(t+0.5); plot(t,y3) 4.绘制曲线 x=tcos(3t) y=tsin2t 其中-π≤t≤π,步长取π/100。 要求:要图形注解、标题、坐标轴标签, 并在曲线上截取一点,将相对应的坐标值文本标注出来(ginput())。; t=-pi:pi/100:pi; x=t.*cos(3*t); y=t.*sin(t).^2; plot(x,y); title('曲线图'); legend('x=tcos(3t),y=tsin^2t'); xlabel('x轴数据'); ylabel('y轴数据'); >> hold on >> [m,n]=ginput(1) m = 0.7465 n = -0.4971 >> plot(m,n,'or') >> text(m,n,['m=',num2str(m),'n=',num2str(n)]) 5.在三个子图像中,分别绘制三维曲线,三维曲面,三维网格的半径为6,坐标为(6,7,6)的由900个面构成的球面(sphere()),对每个图形标注标题 [x,y,z]=sphere(30); Z=z*5+6; X=x*5+6; Y=y*5+7; subplot(1,3,1) mesh(X,Y,Z); title('三维网格') subplot(1,3,2) plot3(X,Y,Z) title('三维曲线') subplot(1,3,3) surf(X,Y,Z) title('三维曲面') 6.(1)绘一个圆柱螺旋线(形似弹簧)图。圆柱截面直径为10,高度为5,每圈上升高度为1。如左图所示。 2)利用(1)的结果,对程序做少许修改,得到如右图所示图形。 (>> t=0:0.01:5; x1=5*cos(2*pi*t); y1=5*sin(2*pi*t); z=t; subplot(121), plot3(x1,y1,z) >> grid on >> x2=t.*cos(2*pi*t); >> y2=t.*sin(2*pi*t); >> z=t; >> subplot(122), plot3(x2,y2,z) >> grid on 思考题:如果要绘制出如图所示的图形,请先指出这四个图形分别对应哪副图,以及请正确填写下列空格 subplot( 6 , 4 ,[2 3 4 6 7 8] );plot(1:10);grid on; subplot( 6 ,4 , [10 11 14 15]);plot(peaks);grid on; subplot( 6 , 4 , [5 9]);plot(membrane);grid on; subplot( 6, 4 , [17 18 21 22]);surf(membrane);grid on; 三、设计提示 1.Matlab允许在一个图形中画多条曲线:plot(x1,y1,x2,y2,……)指令绘制等多条曲线。Matlab自动给这些曲线以不同颜色。标注可用text函数,legend函数等,数据截取ginput函数,。 2.若干个图像在一副图像上显示,可以用hold on,子图像用subplot函数。 3.三维绘图函数为plot3,mesh(),surf()。 实验四:函数编写与程序设计 一、实验目的 1 . 掌握M文件的创建。 2.掌握函数的编写规则。 3.掌握函数的调用。 4 . 掌握基本的输入输出函数以及显示函数的用法。 5.会用Matlab程序设计实现一些工程算法问题。 二、实验内容 1 . 设计程序,完成两位数的加、减、乘、除四则运算,即产生两个两位随机整数,再输入一个运算符号,做相应的运算,显示相应的结果,并要求结果显示类似于“a=x+y=34”。 解: a=input('请输入一个数:'); b=input('请再输入一个数:'); fuhao=input('请输入一个运算符号(+ - * /):','s'); switch fuhao case {'+'} he=a+b; disp(['和=',num2str(a),'+',num2str(b),'=',num2str(he)]) case {'-'} he=a-b; disp(['差=',num2str(a),'-',num2str(b),'=',num2str(he)]) case {'*'} he=a*b; disp(['积=',num2str(a),'*',num2str(b),'=',num2str(he)]) case {'/'} he=a/b; disp(['商=',num2str(a),'/',num2str(b),'=',num2str(he)]) otherwise disp('请输入正确的符号') end 2 . 求下列分段函数的值 要求:用if语句实现,分别输出x = -5.0,-3.0,1.0,2.0,2.5,3.0,5.0时的y值。其中x的值以向量的形式从键盘输入。(length()) 解:x=[]; y=[]; x=input('请输入x的值:'); for k=1:length(x) if x(k)<0 & x(k)~=-3 y(k)=x(k).^2+x(k)-6; elseif x(k)>=0&x(k)<10&x(k)~=2&x(k)~=3 y(k)=x(k).^2-5*x(k)+6; else y(k)=x(k).^2-x(k)-1; end end for i=1:length(y) disp(['y(',num2str(x(i)),')','=',num2str(y(i))]); end [-5.0 -3.0 1.0 2.0 2.5 3.0 5.0] 3.编写一个mcircle(r)函数,调用该函数时,根据给定的半径r,以 4. 输入一个百分制成绩,要求输出成绩等级A、B、C、D、E。其中90分~100分为A,80分~89.5分为B,70分~79.5为C,60分~69.5分为D,60分以下为E。 要求:1)分别用if语句和switch语句实现 2)对不合理的成绩应输出出错信息“输入的成绩不合理”(若成绩出现小数,则只能是“.5”) (num2cell函数:将数值矩阵转化为单位矩阵 num2cell(1:5)={1 2 3 4 5 }) 解:score=input('请输入您的分数:'); if rem(score,0.5)==0 switch score case num2cell(90:0.5:100) disp('您的成绩等级为 A') case num2cell(80:0.5:89) disp('您的成绩等级为 B') case num2cell(70:0.5:79) disp('您的成绩等级为 C') case num2cell(60:0.5:69) disp('您的成绩等级为 D') case num2cell(0:0.5:59.5) disp('您的成绩等级为 E') otherwise disp('你输入的成绩不合理') end else disp('你输入的成绩不合理,若出现小数只能是0.5') end 5.编写一个函数,实现对一个向量求以及求平均值的功能。(要求实现函数中,输入若不是一个向量,则报错) function [s,m]=qiu(v) [m,n]=size(v); if(m>1 & n>1)|(m==1 & n==1) error('error') end s=sum(v); m=s/length(v); 6 . Fibonacci数组的元素满足Fibonacci规则: a(k+2)=a(k)+a(k+1),(k=1,2,3,…);且a1= a2=1。 请设计一段程序,求出该数组中第一个大于10000的元素 要求显示的结果为: i=21 a(i)=10946 或者 a(21)=10946 法一:a(1)=1; a(2)=1; for k=1:10000 %不能是3:10000 a(k+2)=a(k)+a(k+1); if a(k)>10000 break; end end disp(['k=',num2str(k)]) disp(['a(k)=',num2str(a(k))]) 8 . 编写一个阶乘函数jiecheng.m,利用该函数找出最小的n值,使得n!>10100,并求出n!。 解:function s=jiecheng(n) s=1; if n==0 s=1; elseif n<0 error('n必须大于等于0') else for i=1:n s=s*i; end end for n=1:1000 if(jiecheng(n)>10^100) break; end end str1=['n=',num2str(n)]; str2=['n!=',num2str(s)]; disp(str1) disp(str2) 9.程序设计:公元前五世纪我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、母、雏各几何?x+y+z=100 5x+3y+z/3=100 这是一个欠定方程。 for x=0:19 for y=0:33 for z=0:100 if (x+y+z==100)&(5*x+3*y+z/3==100) d=[x,y,z] end end end end 三、设计提示 1.函数名和函数文件名应相同;对调用参数的取值范围要检验是否符合要求,如不符合要求,应给出出错信息(用if和error或disp函数实现)。 2.程序设计——“百鸡问题”答案不唯一。提示:设x:鸡翁数,则x的范围:0~19;y:鸡母数,则y的范围:0~33;z:鸡雏数,则z的范围:0~100。 实验五:Matlab多项式和符号运算 二、实验内容 1.将多项式化为x的降幂排列。p=poly([2 -3 7 -1]) P=poly([2,-3,7,-1]) poly2str(P,'x') 结果: ans = x^4 - 5 x^3 - 19 x^2 + 29 x + 42 2.求一元高次方程的根。 P1=[1 -5 -30 150 273 -1365 -820 4100 576 -2880]; x1=roots(P1) 结果: x1 = 5.0000 -4.0000 4.0000 -3.0000 3.0000 -2.0000 -1.0000 2.0000 1.0000 4.对比用多项式函数的polyder函数及符号函数中的diff函数,求导x2+2x+3。 a=[1 2 3] % x2+2x+3 polyder(a) %ans=2 2 2x+2 syms x; f= x^2+2*x+3; diff(f) %ans=2*x+2 5.求多项式 在点2、4、5的值 A=[1 3 -2 1]; >> polyval(A,[2 4 5]) ans = 17 105 191 6.计算 a(x)=2x3+4x2+6x+8, b(x)=3x2+6x+9的多项式相加(试着编写一个polyadd的函数,实现多项式相加的功能) a=[2 4 6 8]; b=[0 3 6 9]; c=a+b function y=polyadd(x1,x2) n1=length(x1); n2=length(x2); if n1>n2 x2=[zeros(1,n1-n2),x2]; end if n2>n1 x1=[zeros(1,n2-n1),x1]; end y=x1+x2; end >> a=[2 4 6 8]; b=[0 3 6 9]; c=polyadd(a,b) 7.求多项式和的乘积;并求的商和余式。(conv() deconv()) f1=sym('x^3+3*x^2+5*x+7'); f2=sym('8*x^3-6*x^2+4*x-2'); f=f1*f2 collect(f) (f-f1)/f2 collect(ans) 结果: f = (x^3+3*x^2+5*x+7)*(8*x^3-6*x^2+4*x-2) f = 8*x^6+18*x^5+26*x^4+36*x^3-28*x^2+18*x-14 h = (-21+8*x^6+18*x^5+26*x^4+35*x^3-31*x^2+13*x)/(8*x^3-6*x^2+4*x-2) h = (-21+8*x^6+18*x^5+26*x^4+35*x^3-31*x^2+13*x)/(8*x^3-6*x^2+4*x-2) 8.求的符号导数。 y='x^5+tan(4*x^2)+3'; >> diff(y) ans = -26 -41 -10 73 -19 13 -70 12 -10 78 -26 -44 -9 2 8 9.用符号运算求实验内容6中的的表达式。观察在不使用collect(f)函数以及使用后的结果。 三、设计提示 1.关于多项式运算的函数有poly、roots、diff、conv/deconv等。 2.多项式做加减运算时要注意等长度。 3.符号表达式的输入可以用字符串方式,也可以用sym函数, syms函数。 4.了解以下符号多项式函数 1. collect(f): 函数用途是合并多项式中相同的项, syms x t f=(1+x)*t+x*t; collect(f) 2. expand(f):展开多项式, syms x f=x*(x*(x-1)+3)+2; expand(f); 3. horner(f) 对转换多项式为Horner形式, 这种形式的特点是乘法嵌套, 其有着不错的数值计算性质. syms x; f=x^3+2*x^2+5*x-2 horner(f) 4. factor(f): 多项式的因式分解. 如果无法在有理数的范围内作分解, 那么返回的结果还是输入值. syms x; f=x^3-6*x^2+11*x-6; factor(f) 5. simplify(f): 通过数学运算化简符号表达式 syms x; f=cos(x)^2+sin(x)^2 simplify(f) 6. simple(f): 威力比较强大, 它会尝试各种办法来化简符号表达式, 其化简的标准是使得符号表达式的长度最短. syms x f=sin(x)^2+cos(x)^2; simple(f) 7. subexpr(f): 通过计算机自动寻找, 将表达式中多次出现的因式用简短的符号表示, 返回的结果中包含替换之后的表达式, 以及被替换的因式. syms x a; f=solve(x^2+a*x-1); r=subexpr(f); 8. pretty(f): 用"我们人能看到懂"的表示方法表示出符号表达式. syms a x; f=solve(x^2+a*x-1); pretty(f); 实验六:线性时不变系统的时域响应 一、实验目的 1.掌握线性时不变系统的三种描述形式—传递函数描述法、零极点增益描述法、状态空间描述法。 2.掌握三种描述形式之间的转换。 3.掌握连续和离散系统频率响应的求解。 二、实验内容 1.生成20个点的单位脉冲信号、单位阶跃信号,并记录下函数命令和波形。 N=20; x=zeros(1,N) x(1)=1 stem(x) x=ones(1,N) stem(x) 2.生成f=50Hz占空比为40%,幅值为5的矩形波,生成f=50Hz的锯齿波。 F=10000 t=0:1/F:0.1; f=50 x1=square(2*pi*f*t,40) plot(t,x1) x2=sawtooth(2*pi*f*t,0) plot(t,x2) 3.将连续系统转化为传递函数的形式,并显示其表达式。 k=0.5; z=[1,-3]'; p=[-1,-2,-4]'; zpk=zpk(z,p,k) [b,a]=zp2tf(z,p,k); tf=tf(b,a) 结果: Zero/pole/gain: 0.5 (s-1) (s+3) ----------------- (s+1) (s+2) (s+4) Transfer function: 0.5 s^2 + s - 1.5 ---------------------- s^3 + 7 s^2 + 14 s + 8 4.将离散系统转化为零极点增益的描述形式,并显示其表达式。 b=[3 5 2]; a=[1 -1.6 1.3 -.9 .5]; systf=tf(b,a,'variable','z^-1') [z,p,k]=tf2zp(b,a); syszpk=zpk(z,p,k,'variable','z^-1') 结果: Transfer function: 3 + 5 z^-1 + 2 z^-2 --------------------------------------------- 1 - 1.6 z^-1 + 1.3 z^-2 - 0.9 z^-3 + 0.5 z^-4 Sampling time: unspecified Zero/pole/gain: 3 z^-2 (1+z^-1) (1+0.6667z^-1) ------------------------------------------------------------- (1 - 1.685z^-1 + 0.8654z^-2) (1 + 0.08497z^-1 + 0.5778z^-2) Sampling time: unspecified 5.分别求实验内容3和4的频率响应(对离散系统取256样点,采样频率取8000Hz)。 k=0.5; z=[1,-3]'; p=[-1,-2,-4]'; [b,a]=zp2tf(z,p,k); freqs(b,a) 结果: b=[3 5 2]; a=[1 -1.6 1.3 -.9 .5]; freqz(b,a,256,8000) % Fs=8000 结果: 6.分别求实验内容3和4的单位冲激响应(对离散系统,作60样点图)。 k=0.5; z=[1,-3]'; p=[-1,-2,-4]'; sys3=zpk(z,p,k); impulse(sys3) 结果: b=[3 5 2]; a=[1 -1.6 1.3 -.9 .5]; impz(b,a,60) 三、设计提示 1.显示传递函数模型用tf(b,a);显示零极点增益模型用zpk(z,p,k)。注意:z、p为列向量。 2.连续系统频率响应用freqs函数;离散系统用freqz函数。 3.连续系统冲激响应用impulse函数;离散系统用impz函数。 实验七:数字图像处理初步 一、实验目的 1.掌握图像文件的读取与写入。 2.掌握图像文件的显示、翻转、缩放、叠加 3.掌握黑白和彩色图像在Matlab中矩阵存储格式。 二、实验内容 1.读取greens.jpg到矩阵X中,去掉红色图层,然后显示出来。 X=imread('greens.jpg'); figure(1); imshow(X); Y=X; Y(:,:,1)=0; figure(2); imshow(Y); 2.在一个子图中显示cameraman.tif'图片,在另一个子图中显示该图片灰度范围在[100,150]。 [B,map]=imread('cameraman.tif','tif'); subplot(121); imshow(B,[100,150]); %灰度范围[0,255] subplot(122); imshow(B); 读取football.jpg到矩阵A中,观察A的维数,并显示该图像。([x,y,z]=size(A)) A=imread('football.jpg'); figure(1); imshow(A); [x,y,z]=size(A); 输入以下程序,观察结果,如果想把本题结果变为下图,应该怎么改动程序? A=imread('football.jpg'); figure(1); imshow(A); [x,y,z]=size(A); B=A; B([x+1:2*x],:,1)=fliplr(A(:,:,1)); B([x+1:2*x],:,2)=fliplr(A(:,:,2)); B([x+1:2*x],:,3)=flipl
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 环境建筑 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服