賈國(guó)慶, 霍真如, 易輝躍, 房衛(wèi)東, 許 暉
(1.青海民族大學(xué) 物理與電子信息工程學(xué)院, 青海 西寧 810007; 2.中國(guó)科學(xué)院 上海微系統(tǒng)與 信息技術(shù)研究所, 上海 201899; 3.上海無線通信研究中心, 上海 201210)
隨著物聯(lián)網(wǎng)[1]和區(qū)塊鏈[2]等信息技術(shù)的發(fā)展,加速度傳感器被應(yīng)用到眾多領(lǐng)域。通過分析加速度傳感器采集的信號(hào)可以得到被測(cè)對(duì)象的特征信息,對(duì)加速度信號(hào)處理尤為重要??柭鼮V波[3]能夠處理時(shí)變系統(tǒng)、非平穩(wěn)和多維信號(hào),當(dāng)信號(hào)發(fā)生急劇變化時(shí)會(huì)產(chǎn)生較大的誤差。小波變換[4]對(duì)高斯白噪聲的處理有著顯著的影響,在處理過程中,小波基和分解層的不當(dāng)選擇將導(dǎo)致含噪信號(hào)自適應(yīng)去噪的失敗。經(jīng)驗(yàn)?zāi)B(tài)分解(Empirical mode decomposition,EMD)[5]可以將復(fù)雜信號(hào)分解為平滑的數(shù)據(jù)序列集,根據(jù)信號(hào)特征進(jìn)行自適應(yīng)處理,但EMD算法易出現(xiàn)模態(tài)混疊,且具有端點(diǎn)效應(yīng)。Konstantin等[6]提出了變分模態(tài)分解(Variational mode decomposition,VMD),VMD是一種自適應(yīng)信號(hào)處理算法,其處理非線性和非平穩(wěn)信號(hào)具有明顯優(yōu)勢(shì)且運(yùn)算效率高,可克服 EMD 中存在的模態(tài)混疊問題。但VMD分解結(jié)果的好壞受限于模態(tài)數(shù)和懲罰參數(shù)的選擇,且重構(gòu)信號(hào)的分量選取也是降噪效果好壞的關(guān)鍵因素。加速度傳感器無輸入原信號(hào),測(cè)得的數(shù)據(jù)本身含噪聲,無法通過與原信號(hào)互相關(guān)的關(guān)系選擇重構(gòu)的分量。通過依據(jù)峭度準(zhǔn)則選擇重構(gòu)的模態(tài)分量會(huì)舍棄含噪的模態(tài)分量,丟失信號(hào)部分信息。為了克服現(xiàn)有VMD算法的缺陷,提出一種改進(jìn)的VMD算法,通過建立的模態(tài)分解數(shù)與輸入信號(hào)樣本熵關(guān)系模型確定模態(tài)分解數(shù),根據(jù)計(jì)算模態(tài)分量的樣本熵確定最優(yōu)的模態(tài)分量,經(jīng)數(shù)據(jù)平滑處理后進(jìn)行重構(gòu),對(duì)加速度信號(hào)進(jìn)行處理能夠更有效地濾除噪聲和改善加速度信號(hào)的質(zhì)量。
VMD分解通過迭代的方式搜尋最優(yōu)變分模型來確定各個(gè)模態(tài)分量的中心頻率及頻帶寬度,實(shí)現(xiàn)信號(hào)的頻域及每個(gè)模態(tài)分量的自適應(yīng)部分。假設(shè)原輸入信號(hào)為f(t),則變分模型約束表達(dá)式[6]為
(1)
式中:u——分解后的K個(gè)模態(tài)分量,{u}={u1,u2,…,uk},k=1,2,…,K;
ω——K個(gè)模態(tài)分量的中心頻率,{ω}={ω1,ω2,…,ωk}。
引入二次懲罰因子α改善信號(hào)收斂性,拉格朗日乘法算子λ的作用是為了強(qiáng)制執(zhí)行約束,更好地求解變分約束的最優(yōu)解,其中,α為足夠大的正數(shù),還能在受到高斯噪聲產(chǎn)生的影響下保障信號(hào)的重構(gòu)精度,λ可以令約束條件保持穩(wěn)定嚴(yán)格性。擴(kuò)展的拉格朗日表達(dá)式[6]為
({uk},{ωk},λ)=
(2)
(2)n=n+1、k=k+1執(zhí)行循環(huán),當(dāng)達(dá)到預(yù)設(shè)K時(shí)終止循環(huán)。模態(tài)分量及中心頻率更新公式分別為
(3)
(4)
(5)
ε——判別精度,輸出K個(gè)模態(tài)分量,否則,返回步驟(2)。
樣本熵的計(jì)算不依賴數(shù)據(jù)長(zhǎng)度且具有良好的一致性,其是樣本熵具備的優(yōu)勢(shì)。樣本熵計(jì)算步驟如下[8]:
(1)由N個(gè)數(shù)據(jù)組成的時(shí)間序列x(n)=x(1),x(2),…,x(n)的一組維數(shù)為m的向量序列Xm(1),Xm(2),…,Xm(N-m+1),其中,Xm(i)={x(i),x(i+1),…,x(i+m-1)},1≤i≤N-m+1。
(2)定義向量Xm(i)與Xm(j)之間的距離d[Xm(i),Xm(j)],是兩者對(duì)應(yīng)元素中最大差值的絕對(duì)值為
d[Xm(i),Xm(j)]=maxk=0,1,…,m-1(|x(i+k)-
x(j+k)|)。
(6)
(7)
(8)
(9)
在VMD算法中,分解模態(tài)數(shù)k值的選取比較重要,取值過小會(huì)導(dǎo)致欠分解,取值過大容易產(chǎn)生過分解現(xiàn)象,以上兩種情況均會(huì)對(duì)信號(hào)的重構(gòu)產(chǎn)生不良影響,取得正確的k值是VMD分解的關(guān)鍵步驟。
經(jīng)研究發(fā)現(xiàn),VMD分解層數(shù)k與輸入信號(hào)的樣本熵有關(guān),熵值越大,信號(hào)中各個(gè)頻率越多,VMD分解模態(tài)數(shù)越大;熵越小,信號(hào)中頻率越少,VMD分解模態(tài)數(shù)越小。因此,通過數(shù)據(jù)分析,建立了k與輸入信號(hào)樣本熵S的關(guān)系模型為
(10)
通過計(jì)算信號(hào)的樣本熵,用該關(guān)系模型確定信號(hào)的分解模態(tài)數(shù)。
通過多次仿真分析得出,對(duì)加速度信號(hào)進(jìn)行VMD分解,在得到的模態(tài)分量中,第一個(gè)模態(tài)分量的樣本熵值最小,通過預(yù)先設(shè)定的取值范圍為100~2 000,以步長(zhǎng)為100,取不同的α值對(duì)信號(hào)進(jìn)行VMD分解,計(jì)算每次分解得到的第一個(gè)模態(tài)分量的樣本熵,選擇樣本熵最小的α值作為VMD分解懲罰參數(shù)。
對(duì)經(jīng)過VMD分解后的信號(hào)進(jìn)行重構(gòu)時(shí),需要去除其中的噪聲和無效分量,可通過計(jì)算各個(gè)分量信號(hào)的樣本熵來確定重構(gòu)的分量信號(hào)。經(jīng)過多次仿真實(shí)驗(yàn)VMD分解加速度信號(hào),樣本熵小于0.3的分量信號(hào)包含了純凈信號(hào)和含噪信號(hào),噪聲信號(hào)的樣本熵大于0.3,因此,選擇樣本熵小于0.3的分量信號(hào)通過高斯平滑濾波函數(shù)[9]經(jīng)數(shù)據(jù)平滑處理后重構(gòu)。數(shù)據(jù)平滑處理目的是為了減小噪聲信號(hào)的影響和提高信噪比。
改進(jìn)VMD算法的流程如圖1所示。
改進(jìn)VMD算法流程如下:
(1)計(jì)算輸入信號(hào)樣本熵根據(jù)式(10)確定分解模態(tài)數(shù)k。
(2)預(yù)先設(shè)定α的取值范圍,取不同的α值對(duì)信號(hào)進(jìn)行VMD分解,計(jì)算每次分解得到的模態(tài)分量樣本熵,選擇樣本熵最小的α值作為VMD分解懲罰參數(shù)。初始化VMD算法中其他參數(shù),噪聲容忍度τ、直流分量、中心頻率和收斂準(zhǔn)則容忍度。
(3)計(jì)算分解得到的k個(gè)模態(tài)分量的樣本熵,選擇樣本熵小于0.3的分量進(jìn)行數(shù)據(jù)平滑處理。
(4)對(duì)經(jīng)過數(shù)據(jù)平滑處理后的分量進(jìn)行重構(gòu),得到降噪后的信號(hào)。
設(shè)置VMD的輸入信號(hào)為
y(t)=x1(t)+x2(t)+x3(t)
其中,t=[0,50,200],50為步長(zhǎng),對(duì)y(t)添加信噪比10 dB的高斯白噪聲得到信號(hào)y1(t)如圖2所示。x1(t)、x2(t)、x3(t)信號(hào)波形如圖3所示。
計(jì)算得到y(tǒng)1(t)的樣本熵S(y1)=1.192 9,根據(jù)VMD分解模態(tài)數(shù)k與輸入信號(hào)樣本熵S的關(guān)系模型可得k=4,計(jì)算最優(yōu)二次懲罰因子α,經(jīng)分解得到的信號(hào)分別為u1(t)、u2(t)、u3(t)、u4(t)波形如圖4所示。VMD分解輸出信號(hào)的頻譜圖如圖5所示,得到的頻譜峰值頻率與輸入信號(hào)的頻率一致,因此,可以驗(yàn)證改進(jìn)VMD方法的可行性,可應(yīng)用于分析實(shí)測(cè)數(shù)據(jù)。
為了對(duì)比分析不同方法的降噪效果,選用信噪比和均方誤差作為降噪的評(píng)價(jià)指標(biāo)。信噪比越大則表明加速度信號(hào)的信息量越大,降噪效果越好;而均方誤差越小,則降噪后的加速度信號(hào)中有用信號(hào)的成分越多,降噪效果越好。對(duì)xn(t)信號(hào)分別利用VMD分解、卡爾曼濾波、經(jīng)驗(yàn)?zāi)B(tài)分解、小波閾值處理、數(shù)據(jù)平滑處理和改進(jìn)VMD方法進(jìn)行降噪處理。幾種方法的均方誤差如圖6所示,幾種方法的信噪比對(duì)比結(jié)果如圖7所示。
采用加速度傳感器QMI8610采集z軸加速度信號(hào),采樣頻率為512 Hz, 經(jīng)VMD算法和改進(jìn)VMD算法對(duì)原信號(hào)進(jìn)行降噪對(duì)比結(jié)果如圖8所示。與VMD算法相比,改進(jìn)VMD算法更完整的保留了加速度信號(hào)特征的同時(shí)具有更好的降噪性能。
采用VMD算法和改進(jìn)的VMD算法對(duì)采集的加速度信號(hào)降噪,其均方差和信噪比對(duì)比結(jié)果,VMD算法的MSE值為0.013 5,SNR為-3.13 dB。改進(jìn)的VMD算法的MSE值為0.008 8, 信噪比SNR為1.49。改進(jìn)的VMD算法較VMD算法對(duì)加速度信號(hào)降噪后的均方差和信噪比均有所改善。
由圖6和7可以看出,對(duì)模擬加速度信號(hào)添加相同的噪聲含量時(shí),利用改進(jìn)VMD方法對(duì)含噪模擬加速度信號(hào)降噪后,信號(hào)的信噪比最大,而利用VMD分解、卡爾曼濾波、經(jīng)驗(yàn)?zāi)B(tài)分解、小波閾值處理、數(shù)據(jù)平滑處理等方法降噪處理后,雖然信號(hào)的信噪比有所提高,但明顯低于改進(jìn)VMD方法降噪后的信噪比;在添加不同的噪聲含量時(shí),改進(jìn)VMD方法降噪后信號(hào)的均方誤差值最??;當(dāng)含噪聲模擬加速度信號(hào)降噪前的信噪比增加時(shí),改進(jìn)VMD方法降噪后的信噪比有明顯提升,說明在含有不同噪聲量的情況下,提出的改進(jìn)VMD方法降噪效果較好,在濾除噪聲的同時(shí)能較好地保留有用信號(hào),相比VMD分解、卡爾曼濾波、經(jīng)驗(yàn)?zāi)B(tài)分解、小波閾值處理、數(shù)據(jù)平滑處理等方法具有更好的降噪效果。
(1)改進(jìn)VMD方法通過信號(hào)樣本熵確定分解模態(tài)數(shù)和懲罰參數(shù),使結(jié)果更加準(zhǔn)確,改進(jìn)VMD方法對(duì)滿足條件的模態(tài)分量重構(gòu)前進(jìn)行了數(shù)據(jù)平滑處理,得到了更好的加速度信號(hào)降噪效果。
(2)改進(jìn)VMD方法選取了最優(yōu)的模態(tài)分量進(jìn)行重構(gòu),更完整地保留加速度信號(hào)特征,有利于提高后續(xù)速度和位移等參數(shù)的精度。相比于傳統(tǒng)的VMD算法所提改進(jìn)變分模態(tài)分解算法的均方誤差降低了3%,信噪比提升了12.35%。