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