您无法用特定频率的简单正弦曲线识别混叠,这在某种程度上是试图避免它的重点。您无法知道您“查看”的正弦曲线是 Hz 还是 Hz。Q2Fs−Q
单个混叠正弦分量看起来就像一个非混叠正弦波。如果您想体验混叠,您必须尝试使用更复杂的波形或随时间变化的正弦曲线。
“体验混叠”的一种方法是通过以下方式对啁啾进行欠采样:
Fs = 8000;t=0:(1./Fs):(5-1./Fs);p=2.*pi.*t; %Sampling Frequency, Time Vector, Phase Vector
y1 = chirp(t,0,5,Fs/2.0); %Create a chirp that goes from DC to Fs/2.0
spectrogram(y1); %Have a look at it through spectrogram, please pay attention at the axis labels. This is basically going to be a "line" increasing with time.
soundsc(y1,Fs); %Listen to it...It clearly "goes up" in frequency
y2 = chirp(t,0,5,Fs); %Now create a chirp that goes from DC to Fs
spectrogram(y2); %Have a look at it through spectrogram
soundsc(y2,Fs); %Listen to it...Do you "get" the folding of the spectrum?
通常,您可以将采样视为调制,因为这是在ADC 转换器的采样和保持元件中有效发生的事情。
这将使您能够更容易地理解诸如欠采样之类的概念(以及以低于 Nyquist 速率进行采样完全可以的应用程序)。而且,您可以在 MATLAB 中加载一个 WAV 文件(使用“wavread”),其中包含一些更复杂的信号,然后在使用“soundsc”收听它之前,只需将它与“方”波*相乘(您可能想要查找函数'square') 的频率低于 WAV 文件的。这将有效地引入混叠的关键(不需要的)特性,即频谱的这种折叠。结果不是很愉快,因此您可能希望降低扬声器音量。Fs
我希望这有帮助。
*编辑:显然,“正方形”返回一个幅度在区间 [-1,1] 内的正方形,因此在将其与您的信号相乘之前,最好将其重新缩放为:
aSquareWave = (square(100.*p)+1.0)/2.0 % Where p is the phase vector and here we are producing a square wave at 100Hz (given an Fs of 8kHz as above). aSquareWave's amplitude is now in the interval [0,1]