问题陈述
在上面的数据集中,您可以注意到一条连续的路径,然后是 x 轴上 320-400 左右的噪声带。我希望能够应用一个滤波器来放大连续路径,同时抑制噪声带。噪声带内的数据是无用的。
尝试 1
我是信号处理的新手,但我尝试设计自己的滤波器。我尝试设计一个最小过滤器。我将其定义为使输出信号 $ S $ 成为输入信号 $ F $ 中下一个 $ w $ 项中的最小值: $ S[n] = \min \{F[x] | x \in \{n, n+1, n+2, ..., n+w\}\} $
for i in range(len(original_signal) - window_len):
filtered_signal[i:i+window_len] = min(original_signal[i:i+window_len])
它通过区域中的最低像素表示每个像素,这应该使噪声消失,因为噪声带在很多高值之间会有很多低值。它也消耗了太多的信号。
这是一张显示滤波器带走的图像(原始信号和滤波信号之间的差异)
尝试 2
中值滤波器不起作用,因为噪声带的中值相对较高(1e4):
而空白空间的中位数不是那么高(1e3):
因此,中值滤波器不会将噪声降低到与空白空间相同的程度。
你知道我可以尝试任何过滤器吗?
附加数据
所需信号的直方图:
所有直方图归一化并放在相同的轴上: