徐志祥 郭磊 姜光宇 尚書陽 鄭榮燾


摘 要:動態信號如振動信號采樣頻率高、數據量大,若不加處理直接進行網絡傳輸,不僅對網絡帶寬要求高,而且對云端儲存壓力也較大。為了提高動態信號的實時性和數據傳輸、儲存的可靠性,文中提出了一種針對動態信號的壓縮方法。應用于振動試驗平臺采集到的振動數據顯示,壓縮方法壓縮效果較好,可完整保留信號特征信息,壓縮率低于0.04,均方根誤差較小,優于目前的壓縮方法。
關鍵詞:動態信號;小波變換;數據壓縮;有損壓縮;云儲存;振動試驗
中圖分類號:TP39 文獻標識碼:A 文章編號:2095-1302(2019)06-00-04
0 引 言
機械裝備的智能化和物聯網化是不可扭轉的趨勢,其本質是將智能傳感器、控制器等通過網絡通信連接匯集實現互聯互通。在研究基于云計算的煤礦電機振動信號分析系統時,發現現場采集的動態信號實時性要求高且數據量大,相比于電機溫度、電流電壓等緩變信號,動態信號采樣頻率達到幾十kHz,若想對其進行實時采集并傳輸,在儲存空間和網絡帶寬上都有較大的壓力,因此對采集到的動態信號進行壓縮傳送十分必要。
回顧前人的研究,管博等人將DCT數據壓縮方法引入旋轉機械振動信號處理領域,將信號壓縮為原來的1/4,并且可對數據進行自動濾波[1]。王懷光等人基于提升小波和LZW提高數據的可壓縮性,壓縮率為0.2~0.3[2]。王楠等人在研究無線傳感器網絡節點時在保留信號主要頻域特征的前提下,使振動信號壓縮比達到9.5[3]。為了進一步提高壓縮率,減小均方根誤差,本文提出了一種有損壓縮和無損壓縮相結合的壓縮方法:
(1)對采集到的動態信號原始數據進行小波分解,得到近似系數An和細節系數D1~Dn。其中近似系數An不做處理,對細節系數D1~Dn進行分層閾值處理,從而去除高頻噪聲信號,提取出信號中的有用成分。
(2)將閾值后的近似系數An和細節系數D1~Dn進行壓縮編碼,以進一步提高壓縮比,便于網絡傳輸。使用數據時,需要將接收到的數據進行解壓縮得到近似系數An和細節系數D1~Dn,重構后即可恢復動態信號,流程如圖1所示。
1 動態信號壓縮的性能指標為了評價壓縮效果,本文通過壓縮率、均方根誤差和信息損失率以及殘差四種指標進行定量分析。
壓縮率(Compression Ratio,CR)定義如下:
式中:Bs為原始信號占用比特數;Bc為壓縮后信號占用比特數。
均方根誤差(Root Mean Squared Error,RMSE)定義如下:
式中:x(i)為原始信號;(i)為重構信號。
信息損失率(Information Loss Rate,ILR)定義如下:
殘差(Residual,RES)定義如下:
壓縮率越小,均方根誤差越小,信息損失率越小,壓縮效果就越好。其中均方根誤差描述動態信號信息損失數值,信息損失率描述信息損失比率。
2 動態信號的表征及小波分解
2.1 動態信號的表征模型來源于文獻[4],對于動態信號來說,假設其由工頻以及倍頻和分頻組成,我們使用以下函數模型來描述:
當動態信號來源碰撞摩擦或信號有動蕩時,上式還需要加上突變類信號Ft(n?t),以及噪聲信號Fs(n?t)。完整的動態信號描述如下:
我們對信號進行處理時,上式中實物第一項和第二項為有用信息,予以保留,而噪聲信號Fs(n?t)影響診斷和判斷,可去除。
2.2 小波分解
設函數ψ(t)∈L2(R),其中L2(R)屬于平方可積的函數空間,即函數能量有限。當其滿足如下條件:
式中ψ(ω)為ψ(t)的傅里葉變換,因此函數ψ(t)就稱為一個基小波。假如我們對函數ψ(t)進行平移和伸縮變換就可以得到一系列小波序列:
式中:a為伸縮因子,b為平移因子,a,b∈R且a>0。連續小波變換定義如下:連續小波的逆變換表示為平移因子b會改變窗口在時間軸上的位置,而伸縮因子a既影響窗口在頻率軸上的位置,也能改變窗口的形狀,因此小波變換能自適應的反映低頻和高頻成分現實中,大多數信號是離散的,因此離散小波變換只需要取:之后帶入連續小波變換公式,便可以得到離散小波變換公式:
3 分層閾值
非線性小波閾值的概念是Donoho在20世紀90年代提出的,由于其算法實現簡單、計算量小,到目前仍被廣泛研究與應用。對動態信號進行小波分解后得到細節系數和近似系數,通過一定方式將各層系數過濾,留下有用信號[5-7]。
在實際工程中,使用一個通用閾值對應各層分解系數閾值是不合適的,因為在低尺度上,通用閾值可能會去除有用信號,而高尺度上又會殘留噪聲信號。因此,選用分層閾值便可有效克服該問題,即在不同分解尺度上使用不同的閾值。
分層閾值的公式:
式中:σ為噪聲強度;i為當前分解層數;N為信號長度。
閾值分為硬閾值和軟閾值兩種。硬閾值處理:小波系數中絕對值小于閾值t的值置為0,其余系數值保持不變。軟閾值處理:在硬閾值處理的基礎上將邊界不連續點收縮使其連續。兩種處理方式示意如圖2所示。
從圖中我們可以看到軟閾值方法沒有斷點,信號更光滑,但卻會丟失信號的某些特征。相反,硬閾值方法能夠保留信號特征,但信號不太平滑,在均方根誤差方面優于軟閾值方法(試驗中,其他條件相同、壓縮率相當時,軟閾值方法均方根誤差為0.004 8,硬閾值方法相應為0.003 4)。
4 小波基函數以及無損壓縮算法的選擇
4.1 小波基函數的選取常見的小波基函數有harr小波、db小波、bior小波、coif小波、sym小波等。豐富的小波基使得小波基的選取具有模糊性,不同小波基對不同信號的分解效果有很大的差異,因此在小波基的選擇上有專門的研究。
對于動態信號而言,需要壓縮,我們希望產生盡量少的非零小波系數,這就需要有盡量大的消失距。正則性也同樣重要,正則性的階數越大,信號頻域的能量越集中,壓縮的效果就越好。雙正交小波db小波對于壓縮來說是較好的選擇,它消失距階數高,正則性好,在時域上緊支撐,同時小波函數還具有速降性。文獻[8]中指出針對動態信號的特征提取時,選擇消失距為10以上的db小波基較為合適,但是消失距過大又會造成邊界問題、計算時間過長等問題,故選擇db11小波基。
4.2 無損壓縮算法的比較與選取幾種常見無損壓縮算法針對動態信號數據的比較如圖3所示。由于是無損壓縮,解壓縮后的信號與壓縮前信號一致,均方根誤差為0,無信息損失。無損壓縮方法壓縮率和程序運行時間見表1所列。
可以看出,bz2算法壓縮率最低,算法消耗時間也較少,對于動態信號的壓縮是最優的,因此選用這種無損壓縮方式。
bz2是bzip2的簡稱,是Burrows-Wheeler Transform(BWT)算法的一個開源實現,于1996年提出,并迅速在UNIX環境下流行。內部原理:首先使用BWT生成局部相關性較好的序列,該過程并不壓縮,僅進行數據轉化,之后再使用Move-to-Front Transform(MTF)減少信息熵,由Run-Length Encoding(RLE)將重復的多個字符替換為重復次數加字符的形式,最后用Huffman編碼,進一步降低壓縮率。
5 動態信號壓縮實驗
壓縮實驗使用的信號選擇采樣頻率高的振動信號(數據來源于電機振動實驗平臺),如使用加速度傳感器和NI數據采集卡采集電動機振動信號,采樣頻率為10 240 Hz,數據采集時間為1 s。小波基函數選用db11,分層閾值硬閾值的方法,編程實現的壓縮率、均方根誤差、信息損失率與分解層數關系如圖4~圖7所示。
程序運行時間約為0. 1 s,3層小波分解程序運行時間最長為0.12 s,最短時間是2層分解0.07 s。因為各層分解時間相差不大,故不可作為確定分解層數的關鍵因素。
從圖4中可以看到,壓縮率隨分解層數的增加而降低,即在相同的小波基函數、閾值方式以及無損壓縮算法條件下,分解層數越多,壓縮率越低。2~3層時壓縮率下降明顯,到7層以后壓縮率不再減小,此時壓縮率已低于3.6%。
由圖5與圖6可知,均方根誤差和信息損失率隨分解層數的增加而增加,說明壓縮率和均方根誤差、信息損失率相互矛盾,需要折衷處理。均方根誤差和信息損失率變化趨勢相同,小波分解層數小時變化較大,分解層數大時變化緩慢。各層分解參數見表2所列。
選擇分解層數時,可根據實際要求選擇與壓縮率、均方根誤差和信息損失率適合的層數。若對壓縮率和均方根誤差等沒有嚴格要求,可以根據“肘部法則”選擇3,4,5層分解,其中4,5層分解程序運行效率較3層高。
電動機振動信號原始信號與壓縮后重構信號以及殘差如圖8、圖9所示(截取)。
可以看到動態信號模型中第一項振動信號工頻、倍頻、分頻以及第二項Ft(n?t)突變類信號均得以保留,可保證動態信號后續的診斷等處理。
6 結 語
(1)編程實現并比較了幾種常見無損壓縮算法針對動態信號數據的壓縮效果,壓縮效果從好到差依次排序為:bz2,lzma,gzip,zilb,LZW,其中bz2算法壓縮率約為0.2。
(2)取相同的小波基函數、閾值方式以及無損壓縮算法,研究發現分解層數越多,壓縮率越低,均方根誤差越大,信息損失率也越大,壓縮率和均方根誤差、信息損失率相互矛盾。
(3)本文提出的壓縮方法針對動態信號數據的壓縮效果明顯,壓縮率優于目前存在的動態信號壓縮方法,壓縮比為25:1,均方根誤差約為0.003。
參 考 文 獻
[1]管博,胡勁松.基于DCT的旋轉機械振動信號壓縮方法研究[J].風機技術,2007(3):80-82.
[2]王懷光,張培林,吳定海,等.基于提升小波和LZW的機械振動信號數據壓縮[J].測控技術,2013,32(9):24-27.
[3]王楠,孟慶豐,鄭斌.振動信號無線傳輸的數據壓縮編碼算法[J].振動測試與診斷,2013,33(2):236-240.
[4]徐敏強,張嘉鐘,張國斌,等.基于小波變換的旋轉機械振動信號數據壓縮方法的研究[J].振動工程學報,2000,13(4):531-536.
[5]余晃晶.小波降噪閾值選取的研究[J].紹興文理學院學報,2004,24(9):34-38.
[6] ZHANG Y,HUTCHINSON P. Optimal compression of vibration data with lifting wavelet transform and context-based arithmetic coding[C]// Signal Processing Conference,IEEE,2017.
[7] DONOHO D L. De-noising by soft-thresholding[J].IEEE transactions on information theory,2002,41(3):613-627.
[8]郭亞.振動信號處理中的小波基選擇研究[D].合肥:合肥工業大學,2003.
[9]翁浩,高金吉.旋轉機械振動信號壓縮小波基優化選取方法[J].振動、測試與診斷,2013,33(3):437-444.
[10]文鴻雁,張正祿.非線性小波變換閾值法去噪改進[J].測繪通報,2006(3):18-21.
[11] ZHANG Y. Wavelet-based vibration sensor data compression technique for civil infrastructure condition monitoring[J]. Journal of computing in civil engineering,2006,20(6):390-399.
[12]唐進元,陳維濤,陳思雨,等.一種新的小波閾值函數及其在振動信號去噪分析中的應用[J].振動與沖擊,2009,28(7):118-121.
[13]李紅延,周云龍,田峰,等.一種新的小波自適應閾值函數振動信號去噪算法[J].儀器儀表學報,2015,36(10):2200-2206.