how to correct this error?

L=90;
M=90;
T=csvread('read.csv');
f=abs(fftshift(fft2(T)));
a=-L/2*0.12:0.12:0.12*L/2;
b=-M/2*0.20:0.20:0.20*M/2;
t=(a.^2-b.^2)/(2.*a);
f_t=20*log10(f);
figure
imagesc(t,b,f_t)
grid on
axis equal
title('after shift')
axis tight
colormap (hot);
figure
imagesc(a,b,f_t)
grid on
axis equal
axis tight
title('before shift')
colormap (hot);
if my data is shifted wrt t then the place from where the data is shifted towards the positive axis that place should be white blocks

3 个评论

Not sure what the error is. I don't see any. You take the fft and then shift it with fftshift() so that the DC origin in the center of the image, which it is in both cases. For the second case, you merely change the x labels. So while the original DC element occurred at t=3 it now occurs around t=1. You say you think "the place from where the data is shifted towards the positive axis that place should be white blocks" meaning that the block at 3 (where it was shifted from) should be white. Well it is. The white block is in the 4th column in both cases, of course because all you did was to change the x tick labels. So in the first case it's in column 4 with t=3, and in the second case it's in column 4 with t = 1. It's doing what you told it to do and I don't see the "error".
but with other data why i am not able to see white box..bcoz other data is also shifted at the same time
I don't know. You didn't post/attach the other data.

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息

产品

版本

R2021a

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by