收稿日期:2008-01-11;修回日期:2008-03-20 基金項目:黑龍江省科技攻關項目(GB06A106)
作者簡介:高東(1982-),男,河北保定人,博士研究生,主要研究方向為信號處理與故障診斷(gd4ever123@gmail.com);張貝克(1976-),男,副教授,博士,主要研究方向為系統仿真、軟件工程、安全工程;吳重光(1945-),男,中國系統仿真學會副理事長,教授,博導,主要研究方向為石油化工自動化、過程系統仿真、安全科學技術開發.
(北京化工大學 信息科學與技術學院 自動化系 北京 100029)
摘要:針對傳統小波變換中存在的邊界問題,采用基于提升格式的小波變換,在數據內部及邊界設計了相應的預測與更新算子,通過一個滑動的時間窗,使過程數據的去噪能夠在線進行,同時加入粗大誤差的去除,增強了算法的魯棒性。通過數值仿真實驗以及對實際過程數據去噪,表明該方法處理邊界問題的有效性,能夠達到較好的去噪效果。
關鍵詞:邊界問題;提升格式;在線去噪;魯棒性
中圖分類號:TP391; TP14
文獻標志碼:A
文章編號:1001-3695(2008)10-3198-03
Method and its application of on-line denosing of process data
based on lifting scheme
GAO Dong,ZHANG Bei-ke,WU Chong-guang
(Dept. of Automation School of Information Science Technology Beijing University of Chemical Technology Beijing 100029 China)
Abstract:
This paper used the wavelet transforms based on lifting scheme for the boundary problem in the classical wavelet transforms. Pesigned the predict algorithm and update algorithm near and far from the boundary which made it possible for on-line denoising of process data with a sliding window. And used the denoising of gross error to enhance the robust. The numerical experiment and denoising of process data show that the method can work well near the boundary of data and achieve better denoising result.
Key words:boundary problem; lifting scheme; on-line denosing; robust
0引言
過程工業中對信號進行實時采樣是很重要的環節,但由于信號在激勵、傳輸和檢測過程中,可能不同程度地受到隨機噪聲和粗大誤差的污染。如何消除實際信號中的噪聲,從混有噪聲的信號中提取有用信息一直是信息學科研究的焦點之一。小波分析是近年發展起來的一種信號處理工具,因其具有良好的時頻局部化特性和多分辨特性而得到了廣泛的應用,包括在信號的去噪中。而傳統的小波去噪最大的缺點在于難以在線應用,原因在于大部分傳統小波都是非因果小波,即對當前小波系數的計算需要用到下一時刻或下幾個時刻的數據;同時一般采用的是二進離散小波,要求二進長度的信號[1],這兩個原因導致小波分解都會引入不同程度的延時。為了能夠使小波分析能夠在線進行,許多方法被提出:Cohen等人[2]構造了一種邊緣矯正濾波器,解決邊界問題。Nounou等人[1]提出使用滑動的窗口實現了小波分析的在線進行。其余的方法還包括:冗余采樣頻率法;有滯后的浮動數據窗法和對稱添加的浮動數據窗法[3]。這三種方法或者犧牲一定的實時性,或者增加了采樣的頻率。1996年,Sweldens[4,5]提出了提升算法,這種新的小波構造方案與傳統小波從頻域來分析問題的角度不同,提升小波變換完全在時(空)域進行變換,無須借助傅里葉變換,并且可以將所有傳統小波都通過提升方法構造出來,用提升小波實現消噪還有運算速度快,無須額外內存,可實現整數小波變換等特點。最重要一點,工程人員可以按照自己的需要構造適當的小波,從而為邊界問題的處理提供了有效的方法[6]。
本文從實際應用出發,介紹了基于插值細分方法的提升小波的原理及變換過程,設計了相應的預測與更新算子克服傳統小波變換存在的邊界問題,并采用中值法去除數據中包含的粗大誤差,然后通過一個滑動的時間窗,將提升小波閾值去噪應用于過程數據的在線去噪中,取得了較好的去噪效果,對今后的工作進行了展望。
1提升算法原理
典型的提升算法分為三個部分,即分割(split)、預測(predict)和更新(update),如圖1所示。
其中:sj為待分解信號,sj-1為尺度系數;dj-1細節系數;se為信號的偶數序列;s0為信號的奇數序列。
1)分割將信號序列sj分成相互關聯的兩部分,分割后的兩部分信號相關性愈強,效果愈好。通常采用lazy小波進行分割,即按奇數和偶數樣本將信號序列分解成偶數序列se和奇數序列so。
se=sj,2k; k∈Z(1)
so=sj,2k+1; k∈Z(2)
2)預測采用偶序列樣本se預測奇序列樣本so,并將預測值與實際值的差定義為細節信號dj-1,即
dj-1=so-P(se)(3)
其中:P(·)為預測算子。
3)更新為了在變換前后保持存在于原始信號sj的某些頻率特性如平均值,低階消失矩等特性不變,減少由于分割所產生的混疊效應,引入更新算子U(·),并由此導出逼近信號
sj-1=se+U(dj-1)(4)
從頻域角度來看,細節信號dj-1反映了信號sj中的高頻成分,而逼近信號sj-1反映了信號sj中的低頻成分。按照上面的方法,繼續對sj-1進行分解,可以得到下一層的逼近信號sj-2和細節信號dj-2,依此類推,就可以完成傳統小波分解的中多層小波分解。
信號的重構過程是信號分解過程的逆過程,如圖2所示,只要改變一下運算符號即可,非常簡單。
先進行更新:se=sj-1-U(dj-1) (5)
再進行預測:so=dj-1+P(se) (6)
將得到的se和so合并組成信號sj,多層重構依此類推。
2預測與更新算子的設計
由第1章所述,提升格式的重點在于預測算子和更新算子的確定,插值細分方法是提升格式中常用的預測估計方法。預測部分是通過一部分數據來預測另一部分相關的數據(通常使用奇數序列數據周圍對稱的M個偶序列數據來預測),并使預測的結果盡可能接近被預測數據。稱M為對偶消失矩,M的取值與細節信號有關,決定著插值多項式函數的平滑性。
更新部分是通過逼近信號即偶數序列周圍對稱的N個細節信號更新逼近信號,使得逼近信號能夠保持原來信號的特征(如均值),即消除信號的高頻部分,得到低頻部分。N為小波消失矩數目,決定著逼近信號的平滑度。
實際中,數據往往不是無限長的,對于那些處于邊界的數據,要采用特殊的處理方法,傳統的小波變化采用數據延拓的方式,如周期延拓、零延拓、對稱延拓等,從而產生誤差;對于實時性要求較高的場合,往往更關心的是邊界數據的去噪效果,所以傳統的小波延拓方案很難滿足實時性的要求。然而提升小波可以不采用延拓,而是采用相應的預測與更新算子,即相應的邊界小波。根據文獻[7]計算出M=4,N=4,分解層數4層,數據長度L=257時,邊界處與非邊界處的預測算子與更新算子。預測算子計算較為簡單,左右邊界各只存在一種邊界情況,每層系數一樣。右邊界與左邊界系數對稱,即右邊界系數為0.062 5,-0.312 5,0.937 5,0.312 5,表中不再列出,如表1所示。
表1預測算子
預測算子
更新算子計算較為復雜,每一層系數不一樣,左邊界有七種邊界情況,左邊界a代表第a個逼近系數。這里只列出了第一層系數,右邊界與左邊界的更新算子對稱,即第a個逼近系數用到的更新算子與第(L-α+1)個逼近系數對應的更新算子對稱,表中不再列出,如表2~5所示。
表2更新算子(第一層)
表3更新算子(第二層)
表4更新算子(第三層)
3粗大誤差的去除
基于提升小波變換的去噪對于處理受到高斯噪聲污染的信號非常有效,但實際過程工業信號中經常包含粗大誤差,如果對含有粗大誤差的信號使用上述的提升小波分解算法,粗大誤差將會出現在多個尺度處的細節信號和近似信號中,影響去噪效果。 所以,在進行提升小波變換之前和分解之后的各層,可以先采用某種方法去除數據中的粗大誤差,增強去噪方法的魯棒性。
中值法是一種應用廣泛的去噪方法,可以較好的去除信號中包含的粗大誤差,設一維窗口A的長度為L=2k+1 位于窗口的輸入信號為xi-k,…,xi,…,xi+k,輸出為:
yi=media(xi-k,…,xi,…,xi+k)(7)
media為取中值函數。其中窗口A的長度決定了去除粗大誤差的效果,太短的話,結果可能包含粗大誤差,太長的話,可能會破壞原來信號的特征。
4過程數據在線去噪
針對小波去噪的在線實現問題,Nounou等人[1]采用二進制長的平移窗,每次只對位于該窗口中的測量數據點進行去噪,當存在新的測量數據時,及時移動窗口,使最新測量數據點位于當前窗口中,同時保持最大的二進制窗口長。該方法既保留了在每個平移窗中進行小波分解的優點,又可以對測量數據進行在線去噪。根據這個原理,利用提升小波的邊界處理方法,結合過程數據中粗大誤差的去除,得到如下過程數據在線去噪的一般方法:
a)設定移動窗口長度為L ,對位于窗口中的測量數據點用進行粗大誤差去除。
b)對位于窗口中的測量數據點用提升小波分解n層。
c)對細節系數進行軟閾值處理,即
d^j,k=sign(dj,k)(|dj,k|-λ),|dj,k|≥λ
0,|dj,k|<λ(8)
其中:dj,k為分解后得到的小波系數;d^j,k為去噪后小波系數;λ為閾值,λ=σ2 ln(N);N為數據長度;σ估計的噪聲方差;σ可用經驗公式估計:
σ=1/0.674 5 med (|dj|)(9)
其中:dj第j層小波系數,med(|dj|),求dj絕對值的中值函數。
d)對處理后的各層系數使用提升小波反變換得到去噪后的信號。
e)僅保留去噪后信號的最后一個數據點用于在線使用。
f)當獲得新的測量數據時,及時移動窗口使最新測量數據點位于當前窗口中,同時保持窗口長度,返回a)。
為了進一步去除各個尺度上的粗大誤差,可以對于每一層提升小波分解得到的近似信號進行粗大誤差去除,這樣的優點是可以保證每一個尺度上的粗大誤差均能夠被消除,缺點是計算較為復雜。
5仿真實驗及實際應用
5.1仿真實驗
設含噪信號st=yt+et+δt。其中:yt是真實的信號;et是高斯白噪聲;δt是信號中的非高斯噪聲,即粗大誤差。
取一段正弦信號,yt=sin (t),長度512,添加信噪比為15 dB的高斯白噪聲et和隨機的粗大誤差δt,粗大誤差去除窗長A為3,白噪聲去除滑動窗口L長度為257,分解層數為4層,采用軟閾值方法去噪,圖3(a)為原始信號,(b)為添加了白噪聲和粗大誤差的信號,(c)為使用魯棒性在線去噪方法后的信號。
如圖3所示,采用本文的去噪方法,能夠去除所有的粗大誤差,同時去掉大部分白噪聲,去噪后信噪比為19.545 3 dB,但是去噪后的曲線還是包含有一定的毛刺。其主要原因是一方面粗大誤差的干擾沒有完全消除,影響了去噪效果;另一方面,也是最主要的原因,由于考慮到實時性,所有數據都是實時計算出來的邊界數據,而針對邊界數據采用的方法保持了較高的消失距,在噪聲的干擾下,結果會與離線去噪的結果有一定的偏差,但是已經基本上能夠滿足去噪要求。
5.2在實際過程工業數據處理中的應用
以上所述過程數據在線去噪方案應用于某煉油廠常減壓裝置的安全預警系統中,作為此系統的數據預處理模塊,用來去除數據中包含的隨機誤差和粗大誤差,為后續的安全預警系統提供較真實的數據,防止誤報和誤動作。
以煉油廠的常減壓設備中某一段溫度信號為例,如圖4(a)所示,該信號包含大量白噪聲和一些粗大誤差(a點和b點),這些噪聲如果不經處理,會給后續的安全預警系統,控制系統,故障診斷系統等造成較大影響,甚至使它們產生錯誤的動作,甚至造成事故。使用本文方法對溫度信號進行魯棒去噪處理后,如圖4(b)所示,噪聲大大減少的同時,還保留了原始信號的一些局部特征,為后續系統的處理提供了較為真實的數據。
6結束語
本文針對傳統小波去噪難以在線實現的情況,利用一個滑動窗口,使用提升小波進行去噪,針對邊界處理的問題,設計了相應的預測與更新算子,靈活的解決了邊界問題;同時針對小波難以去除粗大誤差,魯棒性不強的情況,加入了中值去噪方法,增強了提升小波去噪的魯棒性。此方法通過MATLAB仿真與實際過程工業數據去噪中的應用,結果證明了其有效性。如何能根據實時信號的特征,自適應地選擇對噪聲穩健的同時又有較高的精確度用于邊界處理的預測與更新算子,是下一步研究的目標。
參考文獻:
[1]
NOUNOU M N,BASKI B R.On-line multiscale filtering of random and gross errors without process models[J].AIChE,1999,45(5):1041-1058.
[2]COHEN A,DAUBECHIES I,VIAL P.Wavelets on the interval and fast wavelet transforms[J].Appl Computer Harmonic Analysis,1993,1(1):54-81.
[3]劉志成,陳祥光 李宇峰,等.傳感器輸出時間序列的實時小波濾波方法[J].北京化工大學學報,2007,1(34):71-75.
[4]SWELDEN W.The lifting scheme: a custom-design construction of biorthogonal wavelets[J].Appl Computer Harmonic Analysis,1996,3(2):186-200.
[5]SWELDEN W.The lifting scheme: a construction of second generation wavelets [J].SIAM J Math Anal,1997,29(2):511-546.
[6]SWELDEN W,SCHRODER P.Building your own wavelets at home[EB/OL].(2000-01-02)[2008-01-10].http://cm.bell-labs.com/who/wim/papers/athome/athome.pdf.
[7]FERNANDEZ G PERIASWAMY S. Asoftware package for wavelet transforms using lifting[EB/OL].(2000-01-02)[2008-01-10].http://citeseer.ist.psu.edu/cache/papers/cs/451/http:zSzzSzwww.cs.sc.eduzSz~fernandez SzliftpackzSzfileszSzTR9604.pdf/periaswa-my96liftpack.pdf.
[8]CLAYPOOLE R L JRBARANIUK R G. Flexible wavelet transforms using lifting[EB/OL].(1998-09-18)[2008-01-10].http://cite-seer.ist.psu.edu/cache/papers/cs/4886/http:zSzzSzwww-dsp.rice.eduzSzpublicationszSzpubzSzroger-seg98.pdf/flexible-wavelet-transforms-using.pdf.
[9]水鵬朗,保錚.穩健邊界濾波器的區間內插子波[J].中國科學(E輯),2000,30(1):56-63.