![]() |
【求助】怎样去除FFT的频率折叠问题
clear ;
clc ; f0 = 600;%初始采样频率为600Hz df = 200; f1 = 100; %信号频率100Hz f2 = 750;%信号频率750 Hz k = 5; for i = 1:k fs = f0 + (i-1)*df; dt = 1/fs; t = 0:dt:1024*dt; x1 = sin(2*pi*f1*t); x2 = 2*sin(2*pi*f2*t); X = x1' + x2'; Y = fft(X); y = abs(Y(1:1024)); subplot(k,1,i); plot(y); ticks = 0:1024*100/fs:1024; label = 0:100:fs; axis([1,1024,0,1000]); set(gca,'xtick',ticks); set(gca,'xticklabel',label); grid on; end 其中750Hz的信号不想采进来的,怎样能够去掉? |
是指频域滤波么?
应该是做个频域滤波就行了吧,但是可能信号会变形。
不过还是没太明白你的问题,你是指不要你的那个f2=750那个么? |
如果光是2个频率组成的信号,要把750Hz折叠过来的部分消除掉应该还是可以做到的。楼主用了5个采样频率,从600增加到1400。但不管哪一个采样频率,750Hz折叠过来部分反映在abs(fs/2-(750-fs/2))=abs(fs-750)这个频率上。所以对5个采样频率分别反映在150,50,250,450和650hz上。要消除750Hz折叠过来的影响,可以对750Hz折叠过来的频率作疽适应滤波,能滤除这干扰。
|
所有时间均为北京时间。现在的时间是 14:12。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.