matlab程序,主要是关于傅里叶变换后的函数跟一个函数相乘,出不来图像

matlab程序,主要是关于傅里叶变换后的函数跟一个函数相乘,出不来图像,第1张

大致看了一下,有以下问题

1、A是标量,做fft变换有什么意义?

2、没扮f是标量,plot肯定有问题。

3、存在大键液量本来应该是点运算的场合但用了普通的运算。

帮你改了一下,看是否符合需要:

m=0.5

L=1%待定

h=14

R=-176.209715

r=0.05

p=0.01368

d=1/290.0514

N=1024%%%%采样点

km=0.005

fs=34%横轴扫描频率

lamda=0.00038%%%%波长

%--------主程序---------%

x=(0:N-1)/fs

s=4*pi*L*(x+h+lamda*R/2/d)/lamda/R

A=m*L*BESSELJ(1,s)/(2*lamda*R)./(x+h+lamda*R/2/d)

Z=fft(A,N)%%%离散傅里叶变换

%mag=abs(Z)%%%%傅里叶变换振幅

fx=2*x/lamda/R

%mag=abs(Z)

B=2*pi*r*fx

C1=p*p*BESSELJ(1,B)./(pi*r*fx).*(sin(p*fx)/p./fx).^2%式1

C2=C1.*sin((km-p/2+r)*fx)./((km-p/2+r)*fx)%式2

%MTF1=mag*C1

MTF1=abs(Z.*C1)

MTF2=abs(Z.*C2)

% f=(0:N-1)*fs/N

subplot(2,1,1)

plot(fx,MTF1)

xlabel fx, ylabel 稿察物MTF1

subplot(2,1,2)

plot(fx,MTF2)

xlabel fx, ylabel MTF2

楼主是不是在做MTF函数,我也遇到了你的问题,动态范围调整可以这样进行:1.找埋弯到边缘点。2.对每行,例如:1,2,3......等减去边缘点的值。3.画曲线备裂。这样就将他们跳到了0左右的动态范围以内。再仿液闭求平均曲线,这个我也正在探索


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

原文地址: http://outofmemory.cn/yw/12417971.html

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

发表评论

登录后才能评论

评论列表(0条)

保存