我来注册 发表于 2006-4-21 17:05

[求助]关于fft帮助中的一点疑问

在Matlab help里面查到fft的相关信息(如下所示),有些地方不太明白,关于1000Hz的那一句哪位能帮我翻译一下吗?另外在程序中还有几个问题不太明白,能解释一下吗(具体位置见下面)?谢谢!

A common use of Fourier transforms is to find the frequency components of a signal buried in a noisy time domain signal. Consider data sampled at 1000 Hz. Form a signal containing 50 Hz and 120 Hz and corrupt it with some zero-mean random noise:
t = 0:0.001:0.6;
x = sin(2*pi*50*t)+sin(2*pi*120*t);
y = x + 2*randn(size(t));
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')

It is difficult to identify the frequency components by looking at the original signal. Converting to the frequency domain, the discrete Fourier transform of the noisy signal y is found by taking the 512-point fast Fourier transform (FFT):
Y = fft(y,512);
The power spectrum, a measurement of the power at various frequencies, is

Pyy = Y.* conj(Y) / 512;
这一句是什么意思?

Graph the first 257 points (the other 255 points are redundant) on a meaningful frequency axis:

f = 1000*(0:256)/512;
频率f的取值为什么只取一半呢?
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency (Hz)')

happy 发表于 2006-4-22 21:56

fft变换之后除以采样频率的二分之一才是对应的幅值
取一般是因为fft后,前后两部分是对称的

我来注册 发表于 2006-4-23 09:56

谢谢教授的解释。我编了一个小程序,得到的图形是对称的,不知道是不是程序的某些地方是错的?具体问题网址是:
http://forum.vibunion.com/thread-11170-1-1.html

hlhoward 发表于 2006-5-12 11:08

Pyy = Y.* conj(Y) / 512;
这一句是什么意思?我也不大明白
happy教授指点一下,谢谢!
页: [1]
查看完整版本: [求助]关于fft帮助中的一点疑问