大致看了一下,有以下问题:
1、A是标量,做fft变换有什么意义?
2、没扮f是标量,plot肯定有问题。
3、存在大键液量本来应该是点运算的场合但用了普通的运算。
帮你改了一下,看是否符合需要:
m=0.5L=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左右的动态范围以内。再仿液闭求平均曲线,这个我也正在探索欢迎分享,转载请注明来源:内存溢出
评论列表(0条)