|
看了半天也不知道楼主到底有什么问题,不是每个人都学你这个专业的,chromatography是什么意思我都不知道。你要稍微详细一点描述你的问题,别人才能帮得上你的忙呀!
顺便指出,连续信号是没有FFT的,DFT和FFT只是效率问题,是同一个东西。
你说要分离信号,如果你不知道怎么分离的话,我下面具个例子,希望对你又帮助。代码是matlab写的。
有一个离散信号 x = [ 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 ];
用fft频谱。
fx = fft(x);
用一下语句绘出频谱的幅值 fig1.jpg
figure;
plot(abs(fx),'o-');
现在分离出两组信号,一组是低频信号,一组是高频信号。
这组是低频信号
fxnl = zeros(1,32);
fxnl([1:2 32]) = fx([1:2 32]);
这组是高频信号
fxnh = zeros(1,32);
fxnh(3:31) = fx(3:31);
用反变换还原信号
xnl = ifft(fxnl);
xnh = ifft(fxnh);
绘出信号 fig2.jpg
figure;
plot(1:32, x, 1:32, xnl, 1:32, xnh, 1:32, (xnh+xnl),'o');
grid on;
legend('x_n','x_{new} with Low Pass', 'x_{new} with High Pass', 'Superposition');
这里最后一个用小圆圈显示的是两组分离出来的信号的叠加。由于我提取的信号,包含了全部的频谱,所以在时域里两个分离出来的信号的叠加就是原信号。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
x
|