我有2个阵列,包含800000个系统的输入和输出数据样本。该系统采用0至10伏特的烤箱。采样时间为0.001秒。
我必须确定这个系统的模型,但首先,鉴于数据显然很脏,我想过滤噪音。
如何使用Matlab的系统识别工具箱进行操作? 此外,我如何估算截止频率以消除噪音?
提前谢谢。
PS:鉴于这有点偏离主题,请发表您的回答here谢谢。
答案 0 :(得分:0)
截止频率直接由采样时间或采样频率给出。 您的采样频率是1 /(采样时间),并且必须至少为2个感兴趣的最高频率因子: http://en.wikipedia.org/wiki/Nyquist%E2%80%93Shannon_sampling_theorem
f_s = 1 / T_s> = 2 * f_cutOff
在采样频率足够高的情况下,您可以简单地进行相同的频域处理。最简单的方法是查看频域(使用函数fft())。并首先检查高噪声成分的位置。然后过滤掉这些组件(归零),然后将其转换回时域(使用函数ifft())。
答案 1 :(得分:0)
在最简单的情况下,噪声被建模为白高斯分布。如果估计噪声能量,可以通过调用
来产生虚拟噪声noise = A*randn(1,N);
这里,A是幅度,N是样本计数。然后只取这个信号的fft并从输入信号的fft中减去它并取反fft(ifft)