使用低通滤波器在频域中消除信号中的白噪声

时间:2016-01-29 06:14:41

标签: java signal-processing lowpass-filter

环境

嗨,我有一个128点阵列,在绘图上看起来像这样

Signal With Noise

我想从此信号中删除噪音并发出类似

的信号

Signal after filtering white noise

为此,我的计划是转换frequency domain中的信号并使用low pass filter.

  

注意 - 我能够在频域中转换原始信号   给我两个长度为128的数组(一个是*frequency plot*,一个是。{   *phase plot*)。我也能够使用这两个阵列恢复原始信号。 (DFT & IDFT)。

问题

现在我想过滤来自Signal的噪音。我使用JAVA作为编程语言,this link / this link提供了用于实现IIR Filters的库。但我不知道我应该使用什么cutoff frequency

另外如果我使用上面的Filter coefficients那么如何实现这个过滤器?(请从理论上解释)

我想使用butterworth lowpass filter.

1 个答案:

答案 0 :(得分:2)

因此,仅靠线性过滤是不够的;我拍了你的信号照片,把它转换成一系列数字,分配了一个任意的时间尺度,并在时域和频域绘制它(图1-3):

Plots

然后我试图找到一个过滤器,至少可以取消大部分嘈杂的峰值。注意如何在图4中平滑矩形脉冲的边缘。

但是,您可以在滤镜后应用阈值并获得所需的信号形状。