劉 兵,李 聰,向磊磊,孫玉秋 (長江大學信息與數學學院,湖北荊州434023)
Norden Huang于1988年提出一種新的用于分析非線性和非平穩的信號處理方法——經驗模式分解 (Empirical mode decomposition,EMD)[1],這種方法的關鍵在于:任何復雜的數據都可以分解為一系列有限且是少量的固有模式函數 (Intrinc mode function,IMF),其中IMF滿足以下2個條件:①在整個數據序列中,極值點的數量與過零點的數量必須相差不超過1個;②在任一時間點上,信號局部極大值確定的上包絡線和局部極小值確定的下包絡線的均值為零,即滿足傳統平穩高斯過程。這種分解是自適應的,因此具有很高的效率,將這種分解方式應用于信號分解時能獲得比較好的IMF,并且對非線性和非平穩的信號進行處理時,能夠取得小波分析等分析方法難以取得的效果。
EMD方法在處理一維信號時,對極值的選取一般只需與左右像素比較,在擬合時可以得到足夠的擬合點。但是在二維圖像中進行選取極值的過程,一般需要比較每個像素的3鄰域,5鄰域或8鄰域,然后在擬合時對每列或每行進行擬合,可能會出現某行或某列的極值點低于2個,這樣算法就不具有普遍性。應用形態學的算法可以很好的解決此類問題,并且所需的存儲空間遠低于原算法。在信號中,對極值點的擬合一般采用三次樣條擬合,這種擬合方式會出現擬合過沖的情況,且在端點處也有可能會發生端點飛翼。可是這些變異點在信號處理中不是很多,所以沒有引起研究者的重視。但是在圖像處理時,這些變異點會隨著計算次數的增加來影響整個圖像[2]。針對這些問題,筆者提出1種EMD的改進算法:先運用形態學算子[3]提取出圖像的極大值和極小值點,對極值點采用Delaunay三角擬合[4-5]算法進行曲面擬合,得到上下包絡面。
一維EMD算法原理如圖1所示。把二維EMD算法[6]運用到圖像處理方面,將一幅圖像分解為若干固有模式函數和一個余量函數的集合,和一維情況類似,二維EMD定義如下:
1)把原始數據X作為待處理數據,確定該圖像的所有局部極值點 (包括極大值點和極小值點);
2)對所有極大值和極小值分別進行曲面擬合得到包絡曲面emax,emin;
4)計算余量h=X-eave;
5)判斷h是否是一個固有模式分量 (IMF),若不是,將h返回到第一步。
經過第5)步的判定,假如條件滿足,就可以得到一個固有模式函數,將原始圖像減去所求得的IMF1,即得到一個余量數據r,將r作為原始數據再重復前面5個步驟,得到IMF2,IMF3,…,IMFn以及一個余量R。余量R滿足預先設定的停止準則后即可停止,最后剩下原始數據的余項R。
將這些固有模式函數和余量相加,就可以實現對信號的重構。

圖1 一維EMD算法流程
用原始的方式進行極值點的提取,對于邊界上的灰度值要單獨處理,耗費大量時間且尋找的極值點在某一行 (列)只有一個或零個,對后續操作有難以克服的影響。因此,考慮用形態學的方法來求極值。
形態學有以下4種基本運算:膨脹,腐蝕,開運算,閉運算,用形態學求極值主要運用的是膨脹和腐蝕運算。所謂在灰度級圖像上的膨脹操作就是指輸入圖像在結構元素 (本身可以看作是一個子圖像函數)下的一種灰度擴張。原圖像滑過結構元素時,圖像有部分與結構元素重合,此時對應點的灰度值根據結構元素的取值進行取最大值處理。處理過后的原圖像主要取決于結構元素的值和形狀,如果所有結構元素的值為正,則輸出圖像會趨于比輸入圖像更亮并且暗的部分全部減少或者被消除掉。同樣腐蝕操作是指輸入圖像在結構元素下的一種灰度降低。與膨脹運算相比,僅在對應點灰度值取值時,所采取的運算方式不一樣,腐蝕操作是根據結構元素采取最小值操作。
選取一個3階元素全為1的矩陣作為結構元素,運用形態學的膨脹 (腐蝕)算子,分別得到的是每一個點在其3鄰域內的最大值 (最小值)為這一點的值。然后與原圖像進行比較,具有相同數值的點就是原圖像的極大 (小)值點。
一維的插值算法在二維圖像中直接應用時會產生較大的誤差,因此,采用Delaunay三角插值算法,直接對極值點進行插值擬合,這樣可以極大地減小圖像因為擬合而引起的誤差。
二維點集三角剖分是指將二維平面上的點集用不相交的直線段連接起來,使得所形成的凸包內每一個區域都是三角形。Delaunay三角插值算法是先用Voronoi多邊形將離散的極值點分開,使每一個極值點屬于一個Voronoi多邊形,而連接3個共點的Voronoi多邊形內的極值點則形成一個Delaunay三角形,所有這些Delaunay三角形的集合構成Delaunay三角剖分。在每個三角形剖分內進行三次樣條插值,就得到了點集的擬合面。
Delaunay準則實現的條件是凸包內每一個三角形外接圓中不包含點集中的其他任何點,這使得每個三角形都盡可能接近于等邊三角形,避免產生狹長的三角形也就是使各離散點對整個三角形有限元網格的影響僅限于局部。
但是用Delaunay插值擬合時,在邊界處會產生一些奇異點;而這與之后進行的形態學操作有一些矛盾,因此,要對這些奇異點進行如下處理:用離奇異點相對近的點的灰度值來代替奇異點的灰度值,這一做法符合圖像的基本特性且處理之后的效果顯著。
采用Matlab[7]編程,筆者提出的改進算法運行的時間為1.797s,直接用傳統的經驗模式分解運行的時間是6.797s,改進算法運行比傳統方法快了5s;速度提高了73.56%,降低了時間復雜度,提高了運算效率。圖像分解效果如圖2所示。
對Norden Huang提出的EMD算法進行了改進,改進算法大大地降低了時間復雜度和空間復雜度。試驗結果表明,該算法能大大的減小對計算機存儲容量的要求,能有效的進行分解處理,在圖像分解中有良好的效果,進一步研究可以應用在圖像去噪、圖像合成、圖像復原等方面。

圖2 試驗結果
[1]Norden E H.A new method for nonlinear and nonstationary time series analysis:empirical mode decomposition and hillbert spectral analysis[J].Proc SPIE,2000,4056:197-205.
[2]徐曉剛,徐冠雷,王曉通,等 .經驗模式分解 (EMD)及其應用 [J].電子學報,2009,03:151-153.
[3]岡薩雷斯 .數字圖象處理 [M].北京:電子工業出版社,2007:420-454.
[4]張合勇,任德明,趙衛疆,等 .圖像處理中二維經驗模式分解的改進算法 [J].光學學報,2009,29(5):1248-1253.
[5]Waston D F.Computing the n-Dimensional Delaunay Tessellation with Application to Voronoi Polytops[J].The Computer Jour-nal,1981,24 (2):16-20.
[6]Nunes J C,Guyot S,Delechelle E.Texture analysis based on local analysis of the bidimensional empirical mode decomposition [J].Machine Vision and Applications,2005,16 (3):177-188.
[7]劉衛國.Matlab程序設計教程 [M].北京:中國水利水電出版社,2005.