小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

EEMD算法原理與實現(xiàn)

 腦機接口社區(qū) 2021-07-01

更多技術(shù),第一時間送達(dá)

EMD算法的不足

EMD算法能將原始信號不斷進行分解,獲取符合一定條件下的IMF分量。這些 IMF 分量之間的頻率往往不同,這就為其在諧波檢測方向的使用提供了一種思路。EMD 算法以其正交性、收斂性等特點被廣泛用于信號處理等領(lǐng)域,但并不像小波分析或者神經(jīng)網(wǎng)絡(luò)那樣,有固定的數(shù)學(xué)模型,因此它的一些重要性質(zhì)仍還沒有通過縝密的數(shù)學(xué)方法證明出。而且對模態(tài)分量 IMF 的定義也尚未統(tǒng)一,僅能從信號的零點與極值點的聯(lián)系與信號的局部特征等綜合描述。EMD 從理論到實際運用仍有很長的一段路要走。

EMD 具體的不足體現(xiàn)在以下幾個方面:

  1. IMF 分解時存在著模態(tài)混疊現(xiàn)象,也就是說一個IMF中會包含不同時間尺度的特征成分。一方面是由于信號本身的原因,另一方面是EMD算法本身的缺陷。

  2. 在分解出IMF的過程中需要迭代很多次,而停止迭代的條件缺乏一個標(biāo)準(zhǔn),所以不同的停止迭代的條件得到的IMFs也是不同的。

為了解決EMD中存在的模態(tài)混疊等問題,Huang通過了一種噪聲輔助信號處理(NADA),將信號中加入了噪聲進行輔助分析。在EMD 方法中,得到合理IMF 的能力取決于信號極值點的分布情況,如果信號極值點分布不均勻,會出現(xiàn)模態(tài)混疊的情況。為此,Huang將白噪聲加入待分解信號,利用白噪聲頻譜的均勻分布,當(dāng)信號加在遍布整個時頻空間分布一致的白噪聲背景上時,不同時間尺度的信號會自動分布到合適的參考尺度上,并且由于零均值噪聲的特性,經(jīng)過多次平均后,噪聲將相互抵消,集成均值的結(jié)果就可作為最終結(jié)果。

為抑制各 IMF 分量之間出現(xiàn)混頻,Norden Huang在 EMD分解中,運用添加均值為零的高斯白噪聲進行輔助分析,即EEMD算法。

EEMD算法的基本原理

EEMD方法實質(zhì)上是對EMD算法的一種改進,主要是根據(jù)白噪聲均值為零的特性,在信號中對此加入白噪聲,仍然用EMD進行分解,對分解的結(jié)果進行平均處理,平均處理的次數(shù)越多噪聲給分解結(jié)果帶來的影響就越小。設(shè)信號為,具體的分解步驟如下:
步驟1:
設(shè)定平均處理次數(shù)為,初始。步驟2:
添加具有一定幅值的隨機白噪聲,組成新的一系列信號:

步驟3:
將新的序列號進行EMD分解。

為EMD分解IMF的數(shù)量,是IMFs,是殘余分量。

步驟4:重復(fù)2步驟、3步驟M次,每次添加不同幅值的白噪聲,獲得一系列IMFs。通過IMFs平均值,求得EEMD的IMF分量.

EEMD和EMD性能對比 

EMD算法過程中出現(xiàn)模態(tài)混疊的兩種現(xiàn)象:  

1)不同的時間尺度成分出現(xiàn)在同一個IMF分量當(dāng)中。  

2)相同的尺度分布在不同的IMF分量當(dāng)中。

此現(xiàn)象會導(dǎo)致時頻分布錯誤,使IMF分量失去真實的物理意義。EEMD分解算法基于白噪聲頻譜均衡的分布特點來均衡噪聲,使得頻率的分布趨于均勻。添加的白噪聲不同信號的幅值分布點帶來的模態(tài)混疊效應(yīng)。 

python實現(xiàn)EEMD案例

# 導(dǎo)入工具包import numpy as npfrom PyEMD import EEMD, EMD, Visualisationimport pylab as plt

定義Signal函數(shù),產(chǎn)生信號,并對信號進行EEMD提取特征,最后繪制。

說明,這里是為了演示方便,下面在一個函數(shù)中進行所有操作的寫法并不推薦

def Signal(): global E_imfNo E_imfNo = np.zeros(50, dtype=np.int)
# EEMD options max_imf = -1
""" 信號參數(shù): N:采樣頻率500Hz tMin:采樣開始時間 tMax:采樣結(jié)束時間 2*np.pi """ N = 500 tMin, tMax = 0, 2 * np.pi T = np.linspace(tMin, tMax, N) # 信號S:是多個信號疊加信號 S = 3 * np.sin(4 * T) + 4 * np.cos(9 * T) + np.sin(8.11 * T + 1.2)
# EEMD計算 eemd = EEMD() eemd.trials = 50 eemd.noise_seed(12345)
E_IMFs = eemd.eemd(S, T, max_imf) imfNo = E_IMFs.shape[0]

# Plot results in a grid c = np.floor(np.sqrt(imfNo + 1)) r = np.ceil((imfNo + 1) / c)
plt.ioff() plt.subplot(r, c, 1) plt.plot(T, S, 'r') plt.xlim((tMin, tMax)) plt.title("Original signal")
for num in range(imfNo): plt.subplot(r, c, num + 2) plt.plot(T, E_IMFs[num], 'g') plt.xlim((tMin, tMax)) plt.title("Imf " + str(num + 1))
plt.show()
if __name__ == "__main__": Signal()

參考

基于穩(wěn)態(tài)視覺誘發(fā)電位的腦-機接口系統(tǒng)研究

腦機接口BCI學(xué)習(xí)交流群:QQ群:903290195

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多