如何找到阈值以及将哪个小波族用于低通滤波器信号?

问题描述 投票:0回答:1

[我正在尝试在此网站[http://ataspinar.com/2018/12/21/a-guide-for-using-the-wavelet-transform-in-machine-learning/]上实现代码,在其中研究将低通滤波器应用于信号,但是,我不明白他是如何获得阈值和小波家族的。您能解释一下他是如何提出值和小波名称的吗?

对于代码:

def lowpassfilter(signal, thresh = 0.63, wavelet="db4"):
    thresh = thresh*np.nanmax(signal)
    coeff = pywt.wavedec(signal, wavelet, mode="per" )
    coeff[1:] = (pywt.threshold(i, value=thresh, mode="soft" ) for i in coeff[1:])
    reconstructed_signal = pywt.waverec(coeff, wavelet, mode="per" )
    return reconstructed_signal

亲切的问候

python filtering signal-processing wavelet
1个回答
0
投票

在这种情况下,阈值0.63表示他希望仅维持信号中较低频率的63%。由于较高的频率通常对信号的总能量不是至关重要的,因此可以为压缩而主张将其去除。根据信号的不同,您最多可以去除99%的信号,但仍然可以获得完美的逆变换。

关于他对Daubechie 4小波的选择,除了这是一个非常常见的小波,我不知道还有什么要说的。它可以很好地估计3级多项式,通常对于大多数应用来说已经足够了。

© www.soinside.com 2019 - 2024. All rights reserved.