受 Sarwate 博士对 在时域中对信号进行采样时如何在频域中形成副本?,我决定亲自看看基本概念。
我解释了 Sarwate 博士的回答,即抽样是一个连续的活动。所需要做的就是将脉冲与要采样的信号相乘。这需要通过延迟/转移版本的冲动来重复。
时域中的乘法是频域中的卷积,反之亦然。我认为随着每个样本的脉冲移动,它的频谱响应也会在频域中经历类似的移动。但似乎并非如此。
我用八度音程编写了一个玩具程序,频率响应图并没有带来任何乐趣。我在这里误解了什么?
## Num Samples
N = 10;
## Row vector representing samples (all zeroed out)
x = zeros(1,N);
y = zeros(1,N);
z = zeros(1,N);
## Undelayed impulse (For lack of a better word)
x(1) = 10;
## Delayed by 1 sample
y(2) = 10;
## Delayed by 2 samples
z(3) = 10;
## Obtain spectrum of undelayed impulse
s_spectrum_x = fft(x);
s_spectrum_abs_x = abs(s_spectrum_x);
## Obtain spectrum of impulse delayed by 1 sample
s_spectrum_y = fft(y);
s_spectrum_abs_y = abs(s_spectrum_y);
## Obtain spectrum of impulse delayed by 2 samples
s_spectrum_z = fft(z);
s_spectrum_abs_z = abs(s_spectrum_z);
>>disp(s_spectrum_abs_x);
10 10 10 10 10 10 10 10 10 10
>>disp(s_spectrum_abs_y);
10 10 10 10 10 10 10 10 10 10
>>disp(s_spectrum_abs_z);
10 10 10 10 10 10 10 10 10 10
y 和 z 的初始 bin 不应该为 0 吗?