用MATLAB在同一个图里做三维图的投影

用MATLAB在同一个图里做三维图的投影,第1张

hold on;

plot3(x,y,zeros(1,length(x)),'r');

plot3(x,zeros(1,length(x)),z,'c');

plot3(zeros(1,length(x)),y,z,'g');

hold off;

那就再画个patch一下就行了嘛

fv1=isosurface(x,y,0z,D,100);%xy平面,其他平面投影类似

p1=patch(fv1,'FaceColor','red','EdgeColor','black');

首先了解函数的基本结构。如图,函数文件一般包括三个部分,即函数名,注释内容和函数体。其中,中括号里面的内容可以省略。

与建立M文件类似,在命令窗口中输入edit。

如图,编写函数,需要注意函数命名规则,注释部分可有可无,用%开始。

编写完成后保存文件,最好保存在当前工作路径的文件夹。

函数调用:

如图,直接输入函数名,形参,就能返回计算结果。

查看函数说明:

和查看其它函数说明一样,输入“help 函数名” 就能看到这个函数的注释说明。

不用投影,可以直接画伪色彩图

比如:

[x,y]=meshgrid(1:05:20,1:05:30);

z = x^2+y^2;  %z赋值

h= pcolor(x,y,z);

set(h,'edgecolor','none','facecolor','interp');

%如果要看三维图

h1= mesh(x,y,z);

set(h1,'edgecolor','none','facecolor','interp');

正好刚做过

就是把图像数组进行一次行求和,先把图像数组专置后,求和,统计图像水平方向即行像素的灰度值(或二值化后1)的和,如果要垂直投影就直接把图像数组求和就是了。例:

im=imread('bmp'); %读入图像

im1=rgb2gray(im); %灰度化

%水平投影

im2=im1'; %图像行列转置

i2=sum(im2); %水平投影后的数组

%垂直投影

i1=sum(im1); %垂直投影后 的数组

以上就是关于用MATLAB在同一个图里做三维图的投影全部的内容,包括:用MATLAB在同一个图里做三维图的投影、Matlab 三维图像投影的平面、如何在matlab中建立投影寻踪函数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10135978.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存