题主想用matlab给出模型绘制一个图像。应该这样来实现:
1、首先需要有一系列数据 x、y
2、自定义模型函数表达式
func=@(a,x)a(1)/(1+(a(1)/x0-1)exp(-a(2)t))
3、利用nlinfit函数拟合系数Xm和r
a= nlinfit(x,y,func,a0) a(1)=Xm,a(2)=r
4、求拟合值
yi=func(a,xi)
5、绘制模型图像
plot(x,y,xi,yi)
如x0=10,r=20,xm=e^20,则其图形为
T=1954:2005;
t=1:length(T);
x0=10;r=20;xm=exp(1)^20;
x=xm/(1+(xm/x0-1)exp(-rt));
t=1954:2005
plot(t,x,'k-')
xlabel('t'),ylabel('x(t)')
1、在MATLAB plots中,没有找到与复制动态相位图相关的绘图工具。
2、复制动态相位图是根据复制动态方程和雅克比矩阵的计算结果画出来的,若再用Matlab做出相应的复制相位图,也仅仅是用另一种方式将之前的结果重新表述一遍,意义不大。
3、我觉得应该从MATLAB的常微分与偏微分方程入手,找到表达方程的plot,能够表达复制动态相位图的含义却又不与之前的复制动态相位图完全相同。
fft()可以直接fourier变换,然后会自动得到幅度谱\相位谱\能量谱数据
找到正确的相位谱数据列,和另一经f变换的数据的相位谱做相关
挺麻烦,说不清。
参考《定量侧井声学》唐晓明著第三章第二节中“波形叠加相干法”,有些类似。
还可以用这个相干系数co=((序列{Ai}求和-{Ai}平均)(序列{Bi}求和-{Bi}平均))/根号下((序列{Ai}求和-{Ai}平均)平方 ((序列{Bi}求和-{Bi}平均)平方)
1首先打开计算机上的matlab程序,然后输入指令[清除;,清除屏幕。
2然后将准备好的图像复制到matlab的工作目录中。
3输入返回指令[data=imread('folder图标。BMP')]在主界面;,将图像转换为数据。
4然后双击工作区中的数据,查看图像数据的特定信息。
5输入指令[imshow(data);],可以看到数据代表了。
6输入指令[gdata=rgb2gray(data);],可以得到灰度后的矩阵。
7双击右边工作区中的gdata以查看数据的特定信息。
8然后输入指令[imshow(gdata);],可以看到灰度图像。
i=imread('lenabmp');
figure;imshow(i);
G=fft2(double(i));
FG=abs(fftshift(G));
PG=angle(G);
IFG=ifft2(FG);
IPG=ifft2(exp(jPG));
figure;
subplot(2,2,1);
imshow(log(FG+1),[])%显示频谱幅度
title('图像频谱幅度');
subplot(2,2,2);
imshow(angle(fftshift(G)),[])
title('图像相位');
%---------------------------
subplot(2,2,3);
imshow(log(1+abs(IFG)),[]);
title('图像频谱幅度的逆变换');
subplot(2,2,4);
imshow(IPG,[]);
title('图像相位的逆变换');
%---------------------------
M=ifft2(abs(G)exp(jPG));
figure;imshow(M,[]);
以上就是关于matlab里想绘制一个图像如下图所示,急求大佬代码全部的内容,包括:matlab里想绘制一个图像如下图所示,急求大佬代码、如何运用matlab绘制演化博弈论中复制动态方程的相位图、如何用MATLAB编写相位相关算法等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)