簡體   English   中英

如何找到閾值以及用於低通濾波器信號的小波族?

[英]How to find threshold value and which wavelet family to use for low pass filter signal?

我正在嘗試在本網站 [ 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

親切的問候

在這種情況下,閾值 0.63 意味着他希望僅保留信號中較低頻率的 63%。 由於較高的頻率通常對信號的總能量並不重要,因此您可以爭論為了壓縮而將其移除。 根據信號的不同,您最多可以刪除 99% 的信號,並且仍然可以獲得完美的逆變換。

至於他選擇的Daubechie 4小波,除了很常見的小波,我不知道還能說什么。 它可以很好地估計 3 次多項式,這對於大多數應用程序來說通常已經足夠了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM