小波變換(wavelet transform)的通俗解釋(一)

小波變換html

         小波,一個神奇的波,可長可短可胖可瘦(伸縮平移),當去學習小波的時候,第一個首先要作的就是回顧傅立葉變換(又回來了,唉),由於他們都是頻率變換的方法,而傅立葉變換是最入門的,也是最早了解的,經過傅立葉變換,瞭解缺點,改進,慢慢的就成了小波變換。主要的關鍵的方向是傅立葉變換、短時傅立葉變換,小波變換等,第二代小波的什麼的就不說了,太多了沒太多意義。固然,其中會看到不少的名詞,例如,內積,基,歸一化正交,投影,Hilbert空間,多分辨率,父小波,母小波,這些不一樣的名詞也是學習小波路上的標誌牌,因此在剛學習小波變換的時候,看着三個方向和標誌牌,能夠順利的走下去,固然路上的美景要本身去欣賞(這裏的美景就是定義和推導了)。由於內容太多,不是很重要的地方我都註釋爲(查定義)一堆文字的就是理論(能夠大致一看不用馬上就懂),同時最下面也給了幾個網址輔助學習。數組

1、基閉包

           傅立葉變換和小波變換,都會聽到分解和重構,其中這個就是根本,由於他們的變化都是將信號當作由若干個東西組成的,並且這些東西可以處理還原成比原來更好的信號。那怎麼分解呢?那就須要一個分解的量,也就是常說的基,基的瞭解能夠類比向量,向量空間的一個向量能夠分解在x,y方向,同時在各個方向定義單位向量e一、e2,這樣任意一個向量均可以表示爲a=xe1+ye2,這個是二維空間的基,框架

                                                                    

           而對於傅立葉變換的基是不一樣頻率的正弦曲線,因此傅立葉變換是把信號波分解成不一樣頻率的正弦波的疊加和,而對於小波變換就是把一個信號分解成一系列的小波,這裏時候,也許就會問,小波變換的小波是什麼啊,定義中就是告訴咱們小波,由於這個小波實在是太多,一個是種類多,還有就是同一種小波還能夠尺度變換,可是小波在整個時間範圍的幅度平均值是0,具備有限的持續時間和突變的頻率和振幅,能夠是不規則,也能夠是不對稱,很明顯正弦波就不是小波,什麼的是呢,看下面幾個圖就是ide

                                                                

 

           當有了基,之後有什麼用呢?函數

           下面看一個傅立葉變換的實例:學習

           對於一個信號的表達式爲x=sin(2*pi*t)+0.5*sin(2*pi*5*t); 網站

          這裏能夠看到是他的基就是sin函數,頻率是1和5,下面看看圖形的表示,是否是感覺了到了頻域變換給人的一目瞭然。spa

                                                               

 

           基具備非冗餘性,即便基不是正交的,有相關性,但若去掉其中任何一個,則不成爲基,這一點也叫完備性;基的表示有惟一性,即給定一族基對一個函數的表達是惟一的;通常狀況下基非正交,也稱爲爲exact frame(Resize basis),這個時候要表示信號能夠將基正交化成惟一的正交基(對偶爲其自身);也能夠求其對偶框架(dual frame),其對應了小波變換中的雙正交情形!信號能夠依框架分解,而後用對偶框架重構。若在基集裏添加一些新的向量,並隨意調整空間位置,則有可能成爲框架。把函數與基或框架做內積,也能夠說成是一種函數空間到係數空間的變換。若某種變換後的能量(內積的平方和度量)仍然有一個大於0的上下界,才能夠成爲框架,因爲框架的冗餘性,因此係數的表達也不具備惟一性。若上下界相等,則爲緊框架,且界表示冗餘度。若上下界相等爲且爲1,稱爲pasval identity frame,此時不必定爲正交基(想象把一組正交基中某一個拆成兩個同方向的基之和,則pasval identity仍然成立),此時若加上基的長度均爲一的條件,則框架退化爲正交基。可能你會問咱們用基來表示信號就好了啊,爲何還要框架呢?其實不少信號表示方法不能構成基,卻能構成框架,如短時傅立葉變換中如要求窗函數知足基條件,則可推出該函數有不好的時頻局部化性質(事實上退化爲了傅立葉變換。.net

 

2、內積

            在Hilbert空間(查定義)裏看到這個東西,用來刻畫兩個向量的夾角,當內積爲0時,兩個向量正交,若g爲Hilbert空間裏的正交基的時候,內積爲f向基上的正交投影;(Hilbert空間是一個很直觀的空間,我一直都理解爲歐氏空間去理解定義在其上的東西,L^2(平方可積,查定義)和l^2一樣爲Hilbert空間。

 

下面這個公式是基本,通過變形後會用在推導中:

 

                       

若是兩個向量的內積爲0 ,就說他們是正交的。

若是一個向量序列相互對偶正交,而且長度都爲1,那麼就說他們是正交歸一化的。

對於,存在L2(R)上一組標準正交基gi(t),i=1,2,3….,使得

                                                                         

 L2(R)上任意一個函數f(t)均可以由L2(R)上的一個規範正交基gi(t)進行線性組合表示出來

3、傅立葉的缺點

先列舉出來缺點,而後再說明:

(1)    Fourier分析不能刻畫時間域上信號的局部特性

(2)    Fourier分析對突變和非平穩信號的效果很差,沒有時頻分析

        傅立葉變換傅立葉變換將函數投影到三角波上,將函數分解成了不一樣頻率的三角波,這不能不說是一個偉大的發現,可是在大量的應用中,傅立葉變換的侷限性卻日趨明顯,事實上在光滑平穩信號的表示中,傅立葉基已經達到了近似最優表示,可是平常生活中的信號卻並非一直光滑的,並且奇異是平凡的,傅立葉在奇異點的表現就着實讓人不爽,從對方波的傅立葉逼近就能夠看出來,用了大量不一樣頻率的三角波去逼近其係數衰減程度至關緩慢,並且會產生Gibbs效應。其內在的緣由是其基爲全局性基,沒有局部化能力,以致局部一個小小的擺動也會影響全局的係數。實際應用中很須要時頻局部化,傅立葉顯然缺少此能力了。即便如此,因爲其鮮明的物理意義和快速計算,在不少場合仍然應用普遍。傅立葉變換在從連續到離散的情形是值得借鑑與學習的,你們都知道,時間週期對應頻域離散,時間離散對應頻域週期,時間離散週期對應頻域離散 週期,DFT實際上是將離散信號作週期延拓而後作傅立葉變換再截取一個週期,反變換一樣如此,因此DFT用的是塊基的概念,這樣若是信號兩端的信號鏈接後再也不光滑(即便兩邊都光滑),一樣會在邊界上產生大幅值係數(邊界效應),延伸到圖像中就是塊效應。當對信號作對稱週期延拓後再作傅立葉變換獲得的正弦係數所有爲0,也就是任何對稱函數能夠寫成餘弦的線性組合,一樣按照離散的思路構造獲得的是離散塊餘弦基,即DCT變換,雖然DCT能夠經過對稱後周期延拓再變換減小了邊界效應(兩邊信號接上了,但不必定平滑),但任不能消除塊效應,尤爲是圖像變換中人爲將圖像分紅8*8處理後塊效應更加明顯。可是DCT很好的能量彙集效應讓人驚奇,加之快速計算方法使它替代DFT成爲圖像的壓縮的標準了很長時間(JPEG)。

           上面一堆文字也許看的有點蒙,仍是用圖來講明

          第一個就是傅立葉變換是整個時域,因此沒有局部特徵,這個也是他的基函數決定的看圖,同時若是在時域張有了突變,那麼在頻域就須要大量的三角波去擬合,這也是傅立葉變換性質決定的。

 

 

 

 

         第二個就是面對非平穩信號,傅立葉變換能夠看到由哪些頻域組成,可是不知道各成分對應的時刻是什麼,也就是沒有時頻分析,看不出來信號頻域隨着時間變換的狀況,反過來講就是,一個的頻圖對應好幾個時域圖,不知道是哪一個,這個在實際應用中就很差了,看圖

 

                                  

 

 

          作FFT後,咱們發現這三個時域上有巨大差別的信號,頻譜(幅值譜)卻很是一致。尤爲是下邊兩個非平穩信號,咱們從頻譜上沒法區分它們,由於它們包含的四個頻率的信號的成分確實是同樣的,只是出現的前後順序不一樣。

        可見,傅里葉變換處理非平穩信號有天生缺陷。它只能獲取一段信號整體上包含哪些頻率的成分,可是對各成分出現的時刻並沒有所知。所以時域相差很大的兩個信號,可能頻譜圖同樣。

        然而平穩信號大可能是人爲製造出來的,天然界的大量信號幾乎都是非平穩的,因此在好比生物醫學信號分析等領域的論文中,基本看不到單純傅里葉變換這樣naive的方法。

 

                                  

 

   上圖所示的是一個正常人的事件相關電位。對於這樣的非平穩信號,只知道包含哪些頻率成分是不夠的,咱們還想知道各個成分出現的時間。知道信號頻率隨時間變化的狀況,各個時刻的瞬時頻率及其幅值——這也就是時頻分析。

 

3、短時傅立葉變換(Short-time Fourier Transform,STFT)

            有了缺點就要改進了,這裏就出來了短時傅立葉變換,也叫加窗傅立葉變換,顧名思義,就是由於傅立葉變換的時域太長了,因此要弄短一點,這樣就有了局部性。

          定義:把整個時域過程分解成無數個等長的小過程,每一個小過程近似平穩,再傅里葉變換,就知道在哪一個時間點上出現了什麼頻率了。」這就是短時傅里葉變換。下面就是示意圖

 

                                  

 

          時域上分紅一段一段作FFT,不就知道頻率成分隨着時間的變化狀況了嗎!

         可能理解這一點最好的方式是舉例子。首先,由於咱們的變換是對時間和頻率的函數(不像傅立葉變換,僅僅是對頻率的函數),它是二維的(若是加上幅度則是三維)。如下圖所示的非平穩信號爲例:

 

                               

 

 

   在這個信號中,在不一樣時刻有四個頻率份量。0-250ms內信號的頻率爲300Hz,其他每一個250ms的間隔的信號頻率分別爲200Hz,100Hz和50Hz。很明顯,這是一個非平穩信號,讓咱們看一看它的短時傅立葉變換:用這樣的方法,能夠獲得一個信號的時頻圖了:

 

                              

 

 

        圖上既能看到10Hz, 25 Hz, 50 Hz, 100 Hz四個頻域成分,還能看到出現的時間。兩排峯是對稱的,因此你們只用看一排就好了。

看着貌似解決了問題,好像有了局部性,可是這個名字叫作加窗傅立葉變換,那麼這個窗要多大了呢?

窗太窄,窗內的信號過短,會致使頻率分析不夠精準,頻率分辨率差。

窗太寬,時域上又不夠精細,時間分辨率低。

                                

                          

 

(這裏插一句,這個道理能夠用海森堡不肯定性原理來解釋。相似於咱們不能同時獲取一個粒子的動量和位置,咱們也不能同時獲取信號絕對精準的時刻和頻率。這也是一對不可兼得的矛盾體。咱們不知道在某個瞬間哪一個頻率份量存在,咱們知道的只能是在一個時間段內某個頻帶的份量存在。因此絕對意義的瞬時頻率是不存在的。)

 

 

 

                         

                        

                         

         上圖對同一個信號(4個頻率成分)採用不一樣寬度的窗作STFT,結果如右圖。用窄窗,時頻圖在時間軸上分辨率很高,幾個峯基本成矩形,而用寬窗則變成了綿延的矮山。可是頻率軸上,窄窗明顯不以下邊兩個寬窗精確。

          因此窄窗口時間分辨率高、頻率分辨率低,寬窗口時間分辨率低、頻率分辨率高。

          對於時變的非穩態信號,高頻適合小窗口,低頻適合大窗口。然而STFT的窗口是固定的,在一次STFT中寬度不會變化,因此STFT仍是沒法知足非穩態信號變化的頻率的需求。

 

4、小波變換

          真是千呼萬喚纔出來了,終於看見小波了啊。

           這裏先引入小波,回顧一下基,而後再看看小波的優勢,其實就是上面傅立葉缺點的解決。

           對於加窗傅立葉變換讓人頭疼的就是窗口的大小問題,若是咱們讓窗口的大小能夠改變,不就完美了嗎?答案是確定的,小波就是基於這個思路,可是不一樣的是。STFT是給信號加窗,分段作FFT;而小波變換並無採用窗的思想,更沒有作傅里葉變換。小波直接把傅里葉變換的基給換了——將無限長的三角函數基換成了有限長的會衰減的小波基。這樣不只可以獲取頻率,還能夠定位到時間了~

          這裏就又回到了最開始的基了。

          這個基函數會伸縮、會平移(實際上是兩個正交基的分解)。縮得窄,對應高頻;伸得寬,對應低頻。而後這個基函數不斷和信號作相乘。某一個尺度(寬窄)下乘出來的結果,就能夠理解成信號所包含的當前尺度對應頻率成分有多少。因而,基函數會在某些尺度下,與信號相乘獲得一個很大的值,由於此時兩者有一種重合關係。那麼咱們就知道信號包含該頻率的成分的多少。如前邊所說,小波作的改變就在於,將無限長的三角函數基換成了有限長的會衰減的小波基。效果以下圖

 

                                       

如今來看一下小波公式

                            

從公式能夠看出,不一樣於傅里葉變換,變量只有頻率ω,小波變換有兩個變量:尺度a(scale)和平移量 τ(translation)。尺度a控制小波函數的伸縮,平移量 τ控制小波函數的平移。尺度就對應於頻率(反比),平移量 τ就對應於時間。以下圖

                               



         當伸縮、平移到這麼一種重合狀況時,也會相乘獲得一個大的值。這時候和傅里葉變換不一樣的是,這不只能夠知道信號有這樣頻率的成分,並且知道它在時域上存在的具體位置。

         而當咱們在每一個尺度下都平移着和信號乘過一遍後,咱們就知道信號在每一個位置都包含哪些頻率成分。

 看到了嗎?有了小波,咱們今後不再懼怕非穩定信號啦!今後能夠作時頻分析啦!

(1) 解決了局部性

 

         

 

(2)解決時頻分析

作傅里葉變換隻能獲得一個頻譜,作小波變換卻能夠獲得一個時頻譜!

   

 

時域信號                                           傅立葉變換結果                                                小波變換結果

 

5、小波的深刻

             上面那麼多,也就是走進小波的大門,具體的咱們還要學習子空間、多分辨率,母小波的變換,如何去構造想要的小波函數,而後還有離散小波變換,正交小波變換,二維小波變換,小波包的應用(這裏沒有介紹能夠本身看資料)。好像還有不少要學習的。

這裏先深刻一下,父小波和母小波,多分辨率分析,瞭解一下伸縮和平移。

         任何小波變換的基函數,其實就是對母小波和父小波縮放和平移的集合。首先要看的就是多分辨率分析。

每一個小波變換都會有一個mother wavelet,咱們稱之爲母小波,同時還有一個father wavelet,就是scaling function。而該小波的basis函數其實就是對這個母小波和父小波縮放和平移造成的。縮放倍數都是2的級數,平移的大小和當前其縮放的程度有關。

        還講到,小波系統有不少種,不一樣的母小波,衍生的小波基就徹底不一樣。小波展開的近似形式是這樣:

 

                                                                           

 

    其中的就是小波級數,這些級數的組合就造成了小波變換中的基basis。和傅立葉級數有一點不一樣的是,小波級數一般是orthonormal basis,也就是說,它們不只兩兩正交,還歸一化了。

     咱們還講了通常小波變換的三個特色,就是小波級數是二維的,能定位時域和頻域,計算很快。但咱們並無深刻講解,好比,如何理解這個二維?它是如何同時定位頻域和時域的?

      在這一篇文章裏,咱們就來討論一下這些特性背後的原理。 

      首先,咱們一直都在講小波展開的近似形式。那什麼是完整形式呢?以前講到,小波basis的造成,是基於基本的小波函數,也就是母小波來作縮放和平移的。可是,母小波並不是惟一的原始基。在構建小波基函數集合的時候,一般還要用到一個函數叫尺度函數,scaling function,人們一般都稱其爲父小波。它和母小波同樣,也是歸一化了,並且它還須要知足一個性質,就是它和對本身自己週期平移的函數兩兩正交:

 

                                

                               

 

       另外,爲了方便處理,父小波和母小波也須要是正交的。能夠說,完整的小波展開就是由母小波和父小波共同定義的。

 

                    

                       

 

       其中ψ(t)是母小波,是父小波。須要提醒一點的是,這個正交純粹是爲了小波分析的方便而引入的特性,並非說小波變換的基就必定必須是正交的。但大部分小波變換的基確實是正交的,因此本文就直接默認正交爲小波變換的主要性質之一了。引入這個父小波呢,主要是爲了方便作多解析度分析(multiresolution analysis, MRA)。說到這裏,你的問題可能會井噴了:好好的爲何出來一個父小波呢?這個scaling function是拿來幹嗎的?它背後的物理意義是什麼?waveletfunction背後的物理意義又是什麼?這個多解析度分析又是什麼呢?不急,下面,咱們圍繞一個例子來鞏固一下前面的知識,同時再引出新的特性。

    假設咱們有這樣一個信號:

    

                 

 

         該信號長度爲8,是離散的一維信號。咱們要考慮的,就是如何用小波將其展開。爲了方便講解,咱們考慮最簡單的一種小波,哈爾小波。下面是它的一種母小波:

                 

 

那如何構建基於這個母小波的基呢?剛纔提到了,要縮放,要平移。咱們先試試縮放,那就是ψ(2n):

                               

 

但這樣的話,它與本身的內積就不是1了,不符合小波基orthonormal的要求,因此咱們要在前面加一個係數根號二,這樣咱們就獲得了另外一個哈爾小波的basis function:

                                 

 

          同理,咱們能夠一直這樣推廣下去作scale,獲得4n,8n,…….下的basis function。固然在這個例子裏,咱們信號長度就是8,因此作到4n就夠了。但推廣來講,就是這種scaling對母小波的做用爲,這是歸一化後的表示形式。

       平移的話也很簡單,咱們能夠對母小波進行平移,也能夠對scale以後的basis function進行平移。好比對上一幅圖中的basis function進行平移,就成了

                                       

 

       看得出來,平移後的basis function和母小波以及僅僅scale過的小波,都是正交的,附合小波basis的特色。若是咱們用ψ(n)來表示這個mother wavelet,那麼這些orthonormal basis函數能夠寫成:

 

                                                 

 

        這裏的k是能夠當作時域的參數,由於它控制着小波基時域的轉移,而j是頻域的參數,由於它決定了小波基的頻率特性。看到這裏,你應該會感受很熟悉,由於這裏的平移和變換本質和剛纔對scaling function的平移變換是如出一轍的。

 

這樣,咱們就有了針對此信號space的哈爾小波basis組合:

 

                             

 

        能夠看出,咱們用到了三層頻率尺度的小波函數,每往下一層,小波的數量都是上面一層的兩倍。在圖中,每個小波基函數的表達形式都寫在了波形的下面。

        等等,你可能已經發現了,有問題。這裏爲何多了個沒有函數表達式的波形呢?這貨明顯不是wavelet function阿。沒錯,它是以前提到的scaling function,也就是父小波。而後你可能就會問,爲啥這個憑空插了一個scaling function出來呢?明明目標信號已經能夠用純的小波基組合表示了。是,確實是,就算不包括scaling function,這些小波函數自己也組成了正交歸一基,但若是僅限於此的話,小波變換也就沒那麼神奇的功效了。引入這個scaling function,才能引入咱們提到的多解析度分析的理論,而小波變換的強大,就體如今這個多解析度上。那在這裏,咱們怎麼用這個多解析度呢?這個哈爾小波basis組合是怎麼經過多解析度推導出來的呢?

        話說在數學定義中,有一種空間叫Lebesgue空間,對於信號處理很是重要,能夠用L^p(R)表示,指的是由p次可積函數所組成的函數空間。咱們在小波變換中要研究的信號都是屬於L^2(R)空間的,這個空間是R上的全部到處平方可積的可測函數的集合,這樣就等於對信號提出了一個限制,就是信號能量必須是有限的,不然它就不可積了。小波變換的定義都是基於但不限於L^2(R)中的信號的。這玩意的特性要具體解釋起來太數學了,牽涉到太多泛函知識,我就不在這裏詳述了。並且老實說我也沒能力徹底講清楚,畢竟不是學這個的,有興趣能夠參考wiki。總之你記住,小波變換研究中所使用的信號基本都是平方可積的信號,但其應用不限於這種信號,就好了。

    對L^2(R)空間作MRA是在幹嗎呢?就是說,在L^2(R)空間中,咱們能夠找出一個嵌套的空間序列,並有下列性質:

 

       我來簡單解釋一下這些性質。這個V_j都是L^2(R)空間中的子空間,而後他們是由小到大的,交集是{0},由於這是最小的子空間,並集就是L空間。是否是有點難以理解?不要緊,看看下面這個圖就清楚了:

                                                     

 

      這個圖是圈圈套圈圈,最裏面的圈是V0,以後分別是V1,V2,V3,V4 。那他們有趣的性質就是,假若有一個函數f(t)他屬於一個某空間,那你將其在時域上平移,它仍是屬於這個空間。但若是你對它頻域的放大或縮小,它就會相應移到下一個或者上一個空間了。

       同時咱們還知道,你要形容每個空間的話,都須要有對應的orthonormal basis,這是必然的,那對於V0來說,它的orthonormal basis就是

                                

 

       這一系列函數是什麼呢?是的時域變換,並且咱們剛纔也說了,時域上平移,是不會跳出這個空間的。這樣,咱們就能夠說,由這一系列basis所定義的L^2(R)子空間V0被這些basis所span,表示成:

                              

 

       k從負無窮到正無窮。上面的bar表示這是一個閉包空間,也就是說

                        

 

       這樣,咱們就定義了基本的V0這個子空間。剛纔說了,這個子空間的基都是對的整數時域變換,這裏咱們稱爲scalingfunction,因此換個說法,就是說這裏整個子空間V0,由scalingfunction和其時域變換的兄弟們span。

      固然,若是這個scaling function只是用來表明一個子空間的,那它的地位也就不會這麼重要了。剛纔咱們提到,這個嵌套空間序列有一個性質,。這就是這個函數,若是你對它頻域的放大或縮小,它就會相應移到下一個或者上一個空間了。這個性質就有意思了,它表明什麼呢?對於任何一個包含V0的更上一層的空間來說,他們的基均可以經過對scaling function作頻域的scale後再作時域上的整數變換獲得!推廣開來就是說,當

               

 

咱們有    

 

這也就意味着,對於任何屬於V_j空間的函數f(t),均可以表示爲:

                 

 

          到這裏,咱們就明白這些個子空間和那個憑空冒出來的scaling function的做用了。scaling的構建這些不一樣的子空間的基礎,當j越大的時候,每一次你對頻率變換後的scaling function所作的時域上的整數平移幅度會越小,這樣在這個j子空間裏面獲得的f(t)表示粒度會很細,細節展示不少。反之亦然。通俗點說,就是對scaling function的變換平移給你不一樣的子空間,而不一樣的子空間給你不一樣的分辨率,這樣你就能夠用不一樣的分辨率去看目標信號。

        下面就是時候看看什麼是MRA equation了,這是更加有趣,也是更加核心的地方。經過剛纔的講解,V0屬於V1,那scaling function是在V0中的,天然也在V1中了。咱們把他寫成V1的基的線性組合,那就是

                

 

        其中的h(n)是scaling function的係數,也叫作scaling filter或者scaling vector,能夠是實數,也能夠是虛數。根號2是爲了維持norm爲1的。看,在這個公式裏,咱們就把屬於V0的函數用V1的基表示出來了。同理,咱們能夠循環如此,把屬於V0的在V2,V3, …, Vn中表示出來。這些方程就是MRA equation,也叫refinement equation,它是scaling function理論的基礎,也是小波分析的基礎之一。

        好,稍微總結一下。到如今,已經講了關於scaling function的基本理論知識,知道了信號空間能夠分爲不一樣精細度的子空間,這些子空間的basis集合就是scaling function或者頻率變換以後的scaling function,以下圖所示:

                                  

 

上圖就是四個子空間的basis集合的展覽。經過前面的討論,咱們還知道,一開始的scalingfunction能夠經過更精細的子空間的scaling function(它們都是對應子空間的basis)來構建。好比

                                

 

對於更加finer的scale:

                                       

 

       依此類推。實際上,對於任何scale和translate過的scaling function,均可以用更加精細的scale層面上的scaling function構建出來。

        而後,咱們有各類scale下的scaling function了,該看看它們分別所對應的嵌套的空間序列了。先看看V0,天然就是以基本的scaling function爲基礎去span出來的:

 

                                   

 

          這個不新鮮,剛纔就講過了。這個子空間表明什麼樣的信號?常量信號。道理很簡單,這個scaling function在整個信號長度上,沒有任何變化。繼續往下看:

                               

 

這個相比V0更加finer的子空間,表明着這樣一種信號,它從1-4是常量,從5-8是另外一個常量。同理咱們有:

                            

 

            V2表明的信號,是分別在1,2; 3,4; 5,6; 7,8上有相同值的信號。那麼V3呢?則表示任何信號,由於對於V3來說,任何一個時間刻度上的值均可以不同。並且如今,咱們也能夠經過上面的一些scaling functions的波形驗證了以前提到的多解析度分析中的一個核心性質,那就是:

                         

 

      咱們以前講了一堆多解析度的理論,但直到如今,經過這些圖形化的分析,咱們可能纔會真正理解它。那好,既然咱們有一個現成的信號,那就來看看,對這個信號做多解析度分析是啥樣子的:

 

                                            

 

             你看,在不一樣的子空間,對於同一個信號就有不一樣的詮釋。詮釋最好的固然是V3,徹底不損失細節。這就是多解析度的意義。咱們能夠有嵌套的,由scalingfunction演變的basis function集合,每個集合都提供對原始信號的某種近似,解析度越高,近似越精確。

           說到這裏,可能你對scaling function以及多解析度分析已經比較理解了。可是,咱們尚未涉及到它們在小波變換中的具體應用,也就是尚未回答剛纔那個問題:憑空插了一個scaling function到小波basis組合中幹嗎。也就是說,咱們但願理解scaling function是怎麼和小波函數結合的呢,多解析度能給小波變換帶來什麼樣的好處呢。這其實就是是小波變換中的核心知識。理解了這個,後面的小波變換就是純數學計算了。

 

好,咱們已經知道,對於子空間V0,basis是scalingfunction:

 

 

看出什麼規律了麼?多看幾回這三個圖,你會驚訝地發現,在V0中的scaling function和wavelet function的組合,其實就是V1中的basis!繼續這樣推導,V1原本的的basis是:

 

 

 

         他們的組合,本質上也就是V2的basis(參考圖2)。你繼續推導下去,會獲得一樣的結論:在scale j的wavelet function,能夠被用來將Vj的basis擴展到V(j+1)中去!這是一個很是很是關鍵的性質,由於這表明着,對任何一個子空間Vj,咱們如今有兩種方法去獲得它的orthonormal basis:

1. 一種就是它原本的basis ,對任意k。

2. 第二種就是它上一個子空間的basis,對任意k,以及上一級子空間的wavelet function ,對任意k。

 

       第二種選擇能給咱們帶來額外的好處,那就是咱們能夠循環不斷地用上一級子空間的scaling function以及wavelet function的組合來做爲當前子空間的基。換句話說,若是針對V3這個子空間,它實際上就有四種不一樣的,可是等價的orthonormal basis:

 

1. 本級(V3)的scalingfunction basis set

 

2. 上一級(V2)的scalingfunction + wavelet function;

 

3 . 上上一級(V1)的scalingfunction + 上上一級(V1)的waveletfunction + 上一級(V2)的waveletfunction;

 

4. 上上上一級(V0)的scalingfunction + 上上上一級(V0)的waveletfunction + 上上一級(V1)的waveletfunction + 上一級(V2)的waveletfunction

 

          好,看看最後一種選取方式,有沒有感到眼熟?對了,它就是咱們以前提到的「針對此信號space的哈爾小波basis組合」,參見圖1。如今咱們知道了,這個scalingfunction不是憑空插進去的,而是經過不斷的嵌套迭代出來的:

 

      那爲何咱們最後選定的是這種選取方式呢?實際上,剛纔介紹的這個性質已經告訴咱們,對於任何的scale j0,咱們均可以給咱們的signal space找到一組orthonormal basis,這個basis是經過組合scale j0上的scaling function以及全部在scale j,j>=j0上的wavelets獲得的。這樣,基於這個orthonormal basis,

全部信號空間中的信號均可以寫成組成這個basis的functions的線性組合:

 

對應的係數的計算和日常同樣:

 

這,就是最終的,也是最核心的,小波變換形式。無論是信號壓縮,濾波,仍是別的方式處理,只要是用小波變換,都逃不出這個基礎流程:

1. 選取合適的wavelet function和scaling function,從已有的信號中,反算出係數c和d。

2. 對係數作對應處理

3. 從處理後的係數中從新構建信號。

 

      這裏的係數處理是區別你的應用的重點。好比圖像或者視頻壓縮,就但願選取能將能量彙集到很小一部分系數中的小波,而後拋棄那些能量很小的小波係數,只保留少數的這些大頭係數,再反變換回去。這樣的話,圖像信號的能量並無怎麼丟失,圖像體積卻大大減少了。

      還有一個沒有解釋的問題是,爲何要強調尺度函數和小波函數組成一個orthonormal basis呢?計算方即是一方面,還有一個緣由是,若是他們知足這個性質,就知足瑞利能量定理,也就是說,信號的能量,能夠徹底用每一個頻域裏面的展開部分的能量,也就是他們的展開係數表示:

 

         到這裏,咱們對小波變換的形式就講完了。雖然是用的最簡單的哈爾小波爲例子,但觸類旁通便可。咱們着重介紹了多解析度分析以及它給小波變換帶來的殺手鐗:時域頻域同時定位。結束以前,再多說幾句小波變換的意義。咱們拿剛纔例子中V3子空間的第二種可選擇的orthonormal basis做爲例子:

                                

 

 

           左邊這四個basis組成元素,也就是scaling functions,的係數,表徵的是信號的local平均(想一想它們和信號的內積形式),而右邊的這四個basis組成元素,也就是wavelet functions,的係數則表徵了在local平均中丟失的信號細節。得益於此,多解析度分析可以對信號在愈來愈寬的區域上取平均,等同於作低通濾波,並且,它還能保留由於平均而損失的信號細節,等同於作高通濾波!這樣,咱們終於能夠解釋了wavelet function和scaling function背後的物理意義了:wavelet function等同於對信號作高通濾波保留變化細節,而scalingfunction等同於對信號作低通濾波保留平滑的shape!

       對小波變換的基礎知識,咱們就講到這裏。須要注意的是,這只是小波變換最基本最基本的知識,但也是最核心的知識。看完這裏其實就是回到了最開始的介紹:小波變換是把信號分解成一系列的小波(通過原始小波伸縮和平移獲得的),這裏就告訴了咱們伸縮和平移

 

6、小波的應用

         小波是多分辨率理論的分析基礎。而多分辨率理論與多種分辨率下的信號表示和分析有關,其優點很明顯--某種分辨率下沒法發現的特性在另外一個分辨率下將很容易被發現。從多分辨率的角度來審視小波變換,雖然解釋小波變換的方式有不少,但這種方式能簡化數學和物理的解釋過程。

      對於小波的應用不少,我學習的的方向主要是圖像處理,因此這裏用圖像的應用來舉例。對於圖像,要知道量化級數決定了圖像的分辨率,量化級數越高,圖像越是清晰,圖像的分辨率就高。

例一,哈爾小波圖像分解

                    

 

例二,  小波去噪平滑

                   

  

 

例三,  小波的邊緣檢測

                     

 

       小波的知識還有不少,能夠再繼續看書學習,但願看到這個文章,能夠對小波入門的同窗有必定的幫助,下面給出幾個不錯的網站能夠輔助學習

http://blog.163.com/renfengyuee@126/blog/static/35943136201091274316370/

http://www.zhihu.com/question/22864189

http://users.rowan.edu/~polikar/WAVELETS/WTtutorial.html

http://blog.csdn.net/wanglang3081/article/details/17751805

相關文章
相關標籤/搜索