基于pca及其改進(jìn)算法的人臉圖像壓縮與重建_第1頁(yè)
已閱讀1頁(yè),還剩60頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  基于PCA及其改進(jìn)算法的人臉圖像壓縮與重建</p><p>  摘要:首先介紹了主成分分析(PCA)算法的基本原理,提出了利用PCA進(jìn)行圖像數(shù)據(jù)壓縮與重建的基本模型。主成分分析方法從矩陣角度也稱(chēng)為K-L變換。首先將圖像訓(xùn)練庫(kù)里的每個(gè)二維圖像拉伸成向量,然后對(duì)其進(jìn)行主成分分析得到主成份的變換矩陣以及圖像均值向量。圖像壓縮過(guò)程就是把壓縮的圖像減去訓(xùn)練得到的圖像均值向量并通過(guò)變換矩陣變換成維數(shù)很小

2、的一個(gè)向量的過(guò)程。圖像的重建就是將壓縮的圖像通過(guò)變換矩陣的逆變換矩陣的逆變換后再加上圖像均值向量得到的壓縮前向量的近似向量。然后介紹了一系列的主成分分析方法的改進(jìn)算法。其中包括Mat PCA算法、2DPCA算法、Module PCA算法等。其中Module PCA算法是將每一個(gè)訓(xùn)練圖像都劃分成一些尺寸大小一樣的子圖像,將所有訓(xùn)練圖像的所有子圖像集合在一起進(jìn)行PCA分析,得到相應(yīng)的總體協(xié)方差矩陣。在對(duì)測(cè)試圖像進(jìn)行壓縮時(shí),首先按照訓(xùn)練圖像那

3、樣的劃分方法將測(cè)試圖像劃分成子圖像,然后逐個(gè)對(duì)子圖像進(jìn)行壓縮。重建時(shí)逐個(gè)對(duì)壓縮的子圖像進(jìn)行重建,然后再拼接成原來(lái)的圖像。實(shí)驗(yàn)結(jié)果表明,利用模塊化PCA能有效減少數(shù)據(jù)的維數(shù),實(shí)現(xiàn)圖像壓縮,同時(shí)能根據(jù)實(shí)際需要重建圖像。</p><p>  關(guān)鍵詞:圖像壓縮;圖像重建;PCA;特征提取 </p><p>  Face image compression and reconstruction ba

4、se on PCA and improved PCA algorithm</p><p>  Abstract: First, This article have introduced the basic principle of PCA, and it has proposed the basic module of using PCA to compress and reconstruct the imag

5、e data. Principal component analysis is also known as K-L transformation from the perspective of matrix. First, each of the two-dimensional image should be stretched into a vector from the image databases. Then, through

6、principal component analysis to obtain a transformation matrix and vector mean of images. The image compression is a pro</p><p>  Keywords: image compression, image reconstruction, PCA, feature extraction<

7、;/p><p><b>  目 錄</b></p><p><b>  第1章 緒論1</b></p><p>  1.1 本文選題背景及意義1</p><p>  1.2 國(guó)內(nèi)外研究現(xiàn)狀2</p><p>  1.3 本文主要內(nèi)容及章節(jié)安排2</p>

8、<p>  第2章 PCA算法理論基礎(chǔ)4</p><p><b>  2.1 引言4</b></p><p>  2.2 PCA算法理論概述7</p><p>  2.2.1 K-L變換8</p><p>  2.2.2 SVD分解8</p><p>  2.2.3 特征向量

9、的選取10</p><p>  2.2.4 PCA算法流程框圖11</p><p>  2.3 本章小結(jié)13</p><p>  第3章 PCA改進(jìn)算法理論基礎(chǔ)14</p><p><b>  3.1引言14</b></p><p>  3.2 2DPCA算法理論概述14</p&

10、gt;<p>  3.2.1 2DPCA算法理論15</p><p>  3.2.2 基于2DPCA的圖像壓縮17</p><p>  3.2.3 基于2DPCA的圖像重建17</p><p>  3.2.4 2DPCA的流程框圖18</p><p>  3.3 Mat PCA算法理論概述19</p>&

11、lt;p>  3.3.1 Mat PCA簡(jiǎn)介19</p><p>  3.3.2 Mat PCA算法20</p><p>  3.3.3 Mat PCA算法流程21</p><p>  3.4 Module PCA算法概述22</p><p>  3.4.1 Module PCA算法簡(jiǎn)介22</p><p&

12、gt;  3.4.2 Module PCA算法22</p><p>  3.4.3 Module PCA算法流程23</p><p>  3.5 本章小結(jié)24</p><p>  第4章 MATLAB程序?qū)崿F(xiàn)25</p><p><b>  4.1 概述25</b></p><p> 

13、 4.2 PCA、2DPCA和Mat PCA程序?qū)崿F(xiàn)25</p><p>  4.2.1總體算法框架代碼25</p><p>  4.2.2訓(xùn)練圖像26</p><p>  4.2.3測(cè)試圖像30</p><p>  4.2.4添加噪聲30</p><p>  4.2.5壓縮圖像32</p>

14、<p>  4.2.6圖像重建33</p><p>  4.3 Module PCA程序?qū)崿F(xiàn)35</p><p>  4.3.1 訓(xùn)練圖像35</p><p>  4.3.2 測(cè)試圖像37</p><p>  4.3.3 壓縮圖像38</p><p>  4.3.4 圖像重建39</p>

15、;<p>  4.4 本章小結(jié)39</p><p>  第5章 實(shí)驗(yàn)結(jié)果及分析40</p><p>  5.1  概述40</p><p>  5.2 PCA、2DPCA和Mat PCA結(jié)果分析40</p><p>  5.2.1總體框架40</p><p>  5.2.2 PCA算法

16、實(shí)驗(yàn)分析41</p><p>  5.2.3 2D PCA算法實(shí)驗(yàn)分析46</p><p>  5.2.4 Mat PCA算法實(shí)驗(yàn)分析48</p><p>  5.3 Module PCA結(jié)果分析51</p><p>  5.3.1 Module PCA算法總體框架51</p><p>  5.3.12Mod

17、ule PCA算法實(shí)驗(yàn)分析51</p><p>  5.3 本章小結(jié)53</p><p><b>  結(jié)論54</b></p><p><b>  致謝55</b></p><p><b>  參考文獻(xiàn)56</b></p><p><b&

18、gt;  第1章 緒論</b></p><p>  1.1 本文選題背景及意義</p><p>  目前數(shù)字圖像的數(shù)據(jù)量呈爆炸型增長(zhǎng),占用大量的存儲(chǔ)和傳輸?shù)荣Y源[1],主要是由于圖像數(shù)據(jù)中的相鄰像素的相關(guān)性高,圖像數(shù)據(jù)表示中存在著大量的冗余;與此同時(shí)在圖像的特征表示的過(guò)程中,維數(shù)很高,使人難以理解數(shù)據(jù)之間的關(guān)系,使得存儲(chǔ)、傳輸、處理變得更加困難,在處理、計(jì)算過(guò)程中必須分配很大

19、的存儲(chǔ)空間以及消耗大量的計(jì)算時(shí)間,維數(shù)數(shù)據(jù)處理成了問(wèn)題的瓶頸。壓縮后的圖像傳輸?shù)侥康牡睾?,要?jīng)過(guò)解壓縮恢復(fù)到原圖像才可以使用,因此有必要對(duì)壓縮的圖像和數(shù)據(jù)進(jìn)行重構(gòu)。采用的主成分分析(PCA)方法能夠出去除去圖像數(shù)據(jù)的相關(guān)性[3],將圖像信息濃縮到幾個(gè)主要成分的特征圖像中,有效地實(shí)現(xiàn)了圖像的壓縮;同時(shí)可以根據(jù)主成分多少恢復(fù)不同的數(shù)據(jù)圖像,滿(mǎn)足不同層次對(duì)圖像壓縮與重建的需要。</p><p>  一般將所有的圖像稱(chēng)為

20、圖像空間(Image Space),圖像被認(rèn)為是該空間中的一個(gè)元素。要對(duì)圖像空間中的所有圖像進(jìn)行研究是非常復(fù)雜的,而且大部分也不是我們感興趣的。一個(gè)方法是將圖像空間分成若干子空間,對(duì)其中的子空間進(jìn)行統(tǒng)計(jì)分析。這些子空間中,研究人員最為感興趣的就是人臉圖像。得到了學(xué)術(shù)界的廣泛關(guān)注和深入研究。特征提取和降維是人臉壓縮的關(guān)鍵步驟。在主成分分析的算法中存在著很多不足,對(duì)面部表情變化很大和光線(xiàn)很強(qiáng)的等許多外界條件變換很大以及圖片的維數(shù)很高的情況下

21、普通的PCA壓縮方法不能夠達(dá)到很好的效果。所以研究PCA的改進(jìn)算法就非常有必要,改進(jìn)算法可以大大的提高壓縮的效率,以及提高重建時(shí)的準(zhǔn)確度。</p><p>  圖像數(shù)據(jù)量越大,占用的存儲(chǔ)、處理和傳輸?shù)荣Y源就越多。為了提高圖像存儲(chǔ)、傳輸和處理效率,必須對(duì)圖像中的冗余數(shù)據(jù)進(jìn)行壓縮。壓縮后的圖像傳輸?shù)侥康牡睾?,要?jīng)過(guò)解壓縮恢復(fù)為原始圖像,因此又需要對(duì)壓縮的圖像數(shù)據(jù)進(jìn)行重構(gòu)。</p><p>  

22、1.2 國(guó)內(nèi)外研究現(xiàn)狀</p><p>  目前學(xué)術(shù)界已經(jīng)發(fā)展了多種經(jīng)典的壓縮圖像算法,待處理的人臉圖像本質(zhì)上都是多維的人臉圖像,而PCA是基于向量的數(shù)據(jù)降維算法,因此使用PCA對(duì)這些對(duì)象壓縮的必須將原始觀測(cè)的張量對(duì)象向量化。原始數(shù)據(jù)因此丟失了空間結(jié)構(gòu)信息和關(guān)聯(lián)信息等高維特性,針對(duì)上述問(wèn)題本文提出的基于張量的主成分分析方法考慮到了輸入的張量樣本的結(jié)構(gòu)信息對(duì)原始張量數(shù)據(jù)直接進(jìn)行壓縮有利于人臉圖像的判別分析。<

23、/p><p>  主成分分析(Principal Component Analysis,PCA)也稱(chēng)主分量分析[2],它是一種利用降維思想,將原有的多個(gè)變量通過(guò)線(xiàn)性變換轉(zhuǎn)化為少數(shù)幾個(gè)新的綜合變量的統(tǒng)計(jì)分析方法。這些新變量(主成分)互不相關(guān),能有效地表示原變量的信息(不丟失或盡量少丟失原有變量的信息)。主成分分析方法能除去圖像數(shù)據(jù)的相關(guān)性,將圖像信息濃縮到幾個(gè)主要成分的特征圖像中,有效地實(shí)現(xiàn)圖像的壓縮;同時(shí)可以根據(jù)主成

24、分多少恢復(fù)不同的數(shù)據(jù)圖像,滿(mǎn)足不同層次對(duì)圖像壓縮與重建的需要。基本的PCA圖像壓縮算法,雖然可取得較理想的壓縮比,但該方法對(duì)保留特征個(gè)數(shù)的選取沒(méi)有一個(gè)好的標(biāo)準(zhǔn),信噪比十分低且對(duì)非線(xiàn)性非平穩(wěn)圖像信號(hào)沒(méi)進(jìn)行考慮。</p><p>  主要研究基于PCA的人臉圖像壓縮及重建方法,同時(shí)針對(duì)PCA方法的不足,研究PCA圖像壓縮及重建改進(jìn)方法,并通過(guò)MATLAB實(shí)現(xiàn)基于PCA及其改進(jìn)算法的圖像壓縮及重建。</p>

25、<p>  1.3 本文主要內(nèi)容及章節(jié)安排</p><p>  本文的工作主要是研究分析了以人臉圖像為載體的圖像壓縮與重建的PCA算法及其相關(guān)的改進(jìn)算法。文中重點(diǎn)研究了基于PCA的改進(jìn)算法包括2DPCA、Mat PCA和Module PCA三個(gè)改進(jìn)算法。從而很好的實(shí)現(xiàn)對(duì)人臉圖像的壓縮以及重建。</p><p>  全文共分為四章,內(nèi)容和組織結(jié)構(gòu)如下:</p>&

26、lt;p>  第一章,緒論。首先介紹了本文的選題背景以及選題意義,然后重點(diǎn)介紹了該課題在國(guó)內(nèi)外的研究狀況,最后介紹了本文的主要內(nèi)容及各章節(jié)安排。</p><p>  第二章,PCA算法理論基礎(chǔ)。首先對(duì)PCA算法的理論進(jìn)行介紹,包括K-L變換、SVD分解等基礎(chǔ)知識(shí)。</p><p>  第三章,PCA改進(jìn)算法理論基礎(chǔ)。介紹PCA改進(jìn)算法的主要理論包括2DPCA、Mat PCA以及Mod

27、ule PCA的相關(guān)知識(shí)。</p><p>  第四章,MATLAB程序?qū)崿F(xiàn)。在上一章節(jié)的理論基礎(chǔ)上,通過(guò)MATLAB將算法實(shí)現(xiàn),在這章將給出主要的一部分代碼。并且會(huì)對(duì)代碼進(jìn)行一些簡(jiǎn)要的說(shuō)明。本章將實(shí)現(xiàn)PCA、2DPCA、Mat PCA和Module PCA這四種算法。</p><p>  第五章,給出算法的實(shí)驗(yàn)結(jié)果。并且對(duì)PCA、2DPCA、Mat PCA和Module PCA這四種算法

28、人臉壓縮以及重建的效果進(jìn)行分析對(duì)比,通過(guò)對(duì)比總結(jié)出這四種算法的性能。</p><p>  最后,結(jié)論??偨Y(jié)了本文的工作,并提出人臉壓縮與重建技術(shù)存在的問(wèn)題并展望下一步研究方向。</p><p>  第2章 PCA算法理論基礎(chǔ)</p><p>  本章首先對(duì)人臉圖像壓縮以及重建的相關(guān)背景知識(shí)做了一個(gè)介紹,然后提出了PCA算法及其改進(jìn)算法的相關(guān)理論,包括K-L變換,S

29、VD分解,以及相關(guān)的壓縮圖像與重建圖像的基礎(chǔ)理論。</p><p><b>  2.1 引言</b></p><p>  圖像的基本特性之一是圖像的像素之間是高度相關(guān)的[1],因此很多圖像信息是冗余的。這也是圖像壓縮技術(shù)基礎(chǔ)。圖像壓縮技術(shù)第一步就是去除像素間的這種相關(guān)性,現(xiàn)在已經(jīng)有兩種技術(shù)可以達(dá)到這個(gè)目的,其中一種是預(yù)測(cè)(Predictive)技術(shù),另外一種方法是變換

30、技術(shù)(Transform)。圖像壓縮技術(shù)據(jù)此可以分成兩個(gè)大類(lèi),一類(lèi)是預(yù)測(cè)編碼,一類(lèi)是變換編碼。另外因?yàn)閳D像數(shù)據(jù)還存在編碼冗余,所以還可以用普通的數(shù)據(jù)壓縮手段例如變長(zhǎng)編碼來(lái)進(jìn)一步增加人臉圖像壓縮性能。實(shí)際人臉圖像壓縮系統(tǒng)中經(jīng)常都采用這些壓縮技術(shù),一個(gè)經(jīng)典的壓縮系統(tǒng)如圖2.1所示,包括量化器,符號(hào)編碼器以及轉(zhuǎn)換器。其中轉(zhuǎn)換器負(fù)責(zé)去除原始人臉圖像的冗余信息(利用變換技術(shù)或者預(yù)測(cè)),而量化器用于更進(jìn)一步增加轉(zhuǎn)化后圖像數(shù)據(jù)的編碼冗余(同時(shí)也使得人

31、臉圖像的部分信息變成不可恢復(fù),所以無(wú)損壓縮沒(méi)有該步驟),對(duì)于符號(hào)編碼器則主要負(fù)責(zé)將量化后的圖像數(shù)據(jù)進(jìn)行編碼傳輸。在圖像重建端,壓縮的數(shù)據(jù)首先通過(guò)符號(hào)解碼器來(lái)得到解壓后的量化數(shù)據(jù),然后通過(guò)反向轉(zhuǎn)換器恢復(fù)出壓縮的人臉圖像。</p><p>  2.1經(jīng)典的圖像壓縮系統(tǒng)</p><p>  基于預(yù)測(cè)技術(shù)的圖像壓縮方法,一般按照行-列的順序依次對(duì)圖像每個(gè)像素點(diǎn)進(jìn)行編碼。對(duì)每個(gè)像素點(diǎn)進(jìn)行編碼之前,要

32、先通過(guò)當(dāng)前和先前行已經(jīng)編碼的像素點(diǎn)對(duì)當(dāng)前像素點(diǎn)進(jìn)行預(yù)測(cè)值,這個(gè)預(yù)測(cè)值代表了人臉圖像中的冗余信息。把預(yù)測(cè)值與實(shí)際值進(jìn)行相減得到差值,也被稱(chēng)為預(yù)測(cè)誤差(Prediction Error)。最后僅對(duì)預(yù)測(cè)誤差進(jìn)行壓縮編碼。由于每個(gè)像素的預(yù)測(cè)值僅用到了先前已經(jīng)編碼的像素,這個(gè)編碼過(guò)程也被稱(chēng)為是因果的?;谝蚬幋a的解碼過(guò)程如下:首先通過(guò)先前解碼的像素得到當(dāng)前像素的預(yù)測(cè)值,然后再加上編碼過(guò)程存儲(chǔ)的預(yù)測(cè)誤差得到像素的解碼值。由于在因果的編碼過(guò)程中,像

33、素的預(yù)測(cè)值僅從先前編碼的像素得到,因而只利用其上方和左邊的像素。如果預(yù)測(cè)時(shí)同時(shí)利用下面和后邊的像素則可以得到更高的預(yù)測(cè)精度,同時(shí)也意味著更高的壓縮比,這就是非因果預(yù)測(cè)。然而這種方式使得編解碼過(guò)程不能順序的進(jìn)行。非因果圖像預(yù)測(cè)編碼過(guò)程一般還包含了圖像的變換或需要求解大量的聯(lián)立方程。這些編碼技術(shù)一般都是對(duì)圖像整個(gè)進(jìn)行編碼,或者按塊進(jìn)行編碼?;陬A(yù)測(cè)技術(shù)的典型編碼技術(shù)有差分脈沖調(diào)制(DPCM, Differential Pulse Code

34、Modulat</p><p>  2.2經(jīng)典基于預(yù)測(cè)的壓縮系統(tǒng)</p><p>  圖像壓縮的另一種途徑是通過(guò)變換。在變換編碼中,圖像首先通過(guò)某些變換(線(xiàn)性或非線(xiàn)性)得到一系列變換系數(shù),再將這些系數(shù)量化后得到壓縮圖像。在解碼端,編碼的系數(shù)首先經(jīng)過(guò)反量化,然后再通過(guò)反變換得到實(shí)際圖像。典型的基于變換的壓縮系統(tǒng)如圖2.3所示。變換編碼的基本原理是圖像在變 域中信號(hào)能量趨向于向低頻聚集。這表現(xiàn)

35、為變換系數(shù)大量集中于零值附近,只有少部分系數(shù)較大,這也被稱(chēng)為系數(shù)分布的稀疏性。根據(jù)變換系數(shù)的這一特點(diǎn),通常在量化后對(duì)量化系數(shù)進(jìn)行一次熵編碼(變長(zhǎng)編碼),以進(jìn)一步增加圖像的壓縮比,典型的基于變換編碼的系統(tǒng)如下圖所示?;谧儞Q的經(jīng)典圖像壓縮技術(shù)有JPEG和JPEG2000,前者基于DCT變換,而后者基于小波變換。</p><p>  圖2.3典型的基于變換的壓縮系統(tǒng)</p><p>  預(yù)測(cè)編

36、碼和變換編碼都有著各自的優(yōu)勢(shì),前者實(shí)現(xiàn)相對(duì)簡(jiǎn)單,而且算法本身是對(duì)圖像的局部信息自適應(yīng)的;后者一般具有更高的壓縮比,但是代價(jià)是變換計(jì)算的復(fù)雜度較高,這同時(shí)也使得實(shí)現(xiàn)較為復(fù)雜。</p><p>  評(píng)價(jià)圖像壓縮方法通常分兩個(gè)方面,壓縮性能以及壓縮圖像質(zhì)量[4]。其中壓縮性能常以壓縮比或者相對(duì)數(shù)據(jù)冗余大小來(lái)衡量,定義為原始數(shù)據(jù)總量與壓縮數(shù)據(jù)總量之比,而相對(duì)數(shù)據(jù)冗余定義如下壓縮后數(shù)據(jù)減少量相對(duì)于原數(shù)據(jù)量的百分比:<

37、/p><p><b> ?。?-1)</b></p><p><b> ?。?-2)</b></p><p>  此外還常用每個(gè)像素所用比特?cái)?shù)(BPP, Bits per pixel)來(lái)衡量壓縮性能,定義為壓縮數(shù)據(jù)總量與總像素?cái)?shù)的之比,單位為bits/pixel。</p><p><b>  

38、(2-3)</b></p><p>  壓縮圖像的質(zhì)量可以通過(guò)主觀或者客觀質(zhì)量評(píng)價(jià)得到。其中比較常見(jiàn)的客觀質(zhì)量評(píng)價(jià)手段有均方根誤差、信噪SNR和峰值信噪比PSNR,分別是下面的公式(2-4)~(2-6)定義[7]:</p><p><b> ?。?-4)</b></p><p><b>  (2-5)</b>&

39、lt;/p><p><b> ?。?-6)</b></p><p>  其中和力分別表示解壓圖像和原始圖像;PSNR計(jì)算公式中,n為每個(gè)像素所占比特?cái)?shù),常見(jiàn)的為8比特,MSE表示均方根誤差。</p><p>  雖然客觀質(zhì)量評(píng)價(jià)手段方便易行,但是并不能真正反映出人對(duì)圖像的主觀感受,因此主觀質(zhì)量評(píng)價(jià)更為準(zhǔn)確。主觀質(zhì)量評(píng)價(jià)可以讓多個(gè)觀察者對(duì)圖像進(jìn)行打分

40、,最后取其平均得到。由于主觀質(zhì)量評(píng)價(jià)需要大量人員參加,因此實(shí)際實(shí)行并不方便。圖像質(zhì)量評(píng)價(jià)正是在這種背景下產(chǎn)生的一個(gè)圖像處理領(lǐng)域的新熱點(diǎn),人們通過(guò)各種方法試圖設(shè)計(jì)和人眼感官一致的圖像質(zhì)量評(píng)價(jià)算法。本文中主要采用均方根誤差來(lái)評(píng)價(jià)圖像重建質(zhì)量的好壞。</p><p>  2.2 PCA算法理論概述</p><p>  基于PCA的人臉圖像的壓縮與重建算法是統(tǒng)計(jì)學(xué)中的一種方法,這種方法主要是通過(guò)對(duì)

41、圖像的主要成分的統(tǒng)計(jì)和計(jì)算,然后將較高維的圖像映射到低維的圖像空間中從而實(shí)現(xiàn)圖像的壓縮。當(dāng)要實(shí)現(xiàn)圖像的重建的時(shí)候,只需要將壓縮時(shí)候?qū)崿F(xiàn)圖像壓縮的逆矩陣與壓縮后的圖像相乘就可以實(shí)現(xiàn)圖像的重建?;赑CA的圖像壓縮算法相對(duì)于傳統(tǒng)的圖像壓縮算法較為簡(jiǎn)單[5]。</p><p>  2.2.1 K-L變換</p><p>  K-L變換是PCA方法的主要過(guò)程之一,要實(shí)現(xiàn)人臉圖像的壓縮與重建就要用到

42、K-L變換。K-L變換方法經(jīng)典,而且實(shí)現(xiàn)起來(lái)比較容易。</p><p>  基本的PCA方法在對(duì)人臉圖像壓縮前首先要挑選一些圖像作為訓(xùn)練圖像。假設(shè)要訓(xùn)練的圖像的尺寸為,那么它的所有列的像素可以首尾相接串起來(lái)。這樣,每一幅圖像可以拉伸成一個(gè)長(zhǎng)為的列向量,它可以看成維空間中的一個(gè)點(diǎn)。由于所訓(xùn)練的圖像彼此之間都具有很多相似的地方,所以這些向量在這一超高維空間中的分布并不是隨機(jī)或者雜亂無(wú)章的,它們彼此之間具有很強(qiáng)大的相關(guān)

43、性,可以對(duì)其進(jìn)行主成分分析(K-L變換),即用一個(gè)低維子空間描述這些圖像,同時(shí)又不丟失關(guān)鍵信息[6]。</p><p>  假設(shè)空間描述這些訓(xùn)練圖像集含有M副圖像,令為第個(gè)訓(xùn)練樣本圖像向量,為所有訓(xùn)練樣本圖像的平均圖像向量,即:</p><p><b>  (2-7)</b></p><p>  主成分分析需要訓(xùn)練樣本集的總體散布矩陣,即協(xié)方差

44、矩陣:</p><p><b>  (2-8)</b></p><p><b>  或</b></p><p><b>  (2-9)</b></p><p>  是一個(gè)維數(shù)為的矩陣,主成分分析方法需要計(jì)算其特征值和正交歸一化的特征向量由于實(shí)際應(yīng)用中都會(huì)非常大,直接計(jì)算式非常困

45、難的。為此下面的SVD分解可以很好的解決這個(gè)問(wèn)題。</p><p>  2.2.2 SVD分解</p><p>  SVD分解是處理維數(shù)很高的矩陣經(jīng)常用的方法[8],通過(guò)SVD分解可以有效的將很高維的矩陣分解到低維空間里面來(lái)進(jìn)行求解。通過(guò)SVD分解我們可以很容易的求解出高維矩陣的特征值和其相應(yīng)的特征向量。下面就是SVD分解的相關(guān)的具體理論。</p><p>  設(shè)A

46、是一個(gè)秩為r的維矩陣,則存在兩個(gè)正交矩陣:</p><p><b>  (2-10)</b></p><p><b>  (2-11) </b></p><p><b>  以及對(duì)角陣:</b></p><p><b>  (2-12)</b></p

47、><p>  且 </p><p>  滿(mǎn)足 </p><p>  其中,為矩陣和的非零特征值[9];和分別為和對(duì)應(yīng)于的特征向量。上述分解成為矩陣A的奇異值分解(Singular Value Decomposition, SVD),A的奇異值為。</p>

48、<p><b>  由于可表示為:</b></p><p><b>  (2-13)</b></p><p><b>  故,構(gòu)造矩陣</b></p><p><b>  (2-14)</b></p><p>  容易求出其特征值及相應(yīng)的正交

49、歸一化特征向量從上述推論可知,的正交歸一化特征向量為:</p><p><b>  (2-15)</b></p><p>  這就是圖像特征向量。它是通過(guò)計(jì)算較低維矩陣R的特征值和特征向量而間接求出的。</p><p>  將特征值按照從大到小的順序排列:其對(duì)應(yīng)的特征向量為。這樣,每一幅人臉圖像都可以投影到由張成的子空間中。因此,每一幅人臉圖像

50、對(duì)應(yīng)于子空間中的一個(gè)點(diǎn)。同樣,子空間中的任意一點(diǎn)也對(duì)應(yīng)于一幅圖像。有了這樣一個(gè)由張成的子空間,任何一幅人臉圖像都可以向其投影并獲得一組坐標(biāo)系數(shù),這組系數(shù)表明了該圖像在子空間中的位置。換句話(huà)說(shuō),任何一幅人臉圖像都可以表示為的線(xiàn)性組合,其加權(quán)系數(shù)即是K-L變換的展開(kāi)系數(shù),也可以稱(chēng)為該圖像的代數(shù)特征。</p><p>  對(duì)于任意待壓縮的人臉圖像,可以通過(guò)向特征子空間投影得到其系數(shù)向量:</p><

51、p><b>  (2-16)</b></p><p>  得到的系數(shù)向量可以被認(rèn)為是對(duì)它的壓縮,因?yàn)檫@個(gè)系數(shù)向量維度M通常遠(yuǎn)遠(yuǎn)小于,從而可大大節(jié)省存儲(chǔ)空間。并且通過(guò)U可以將其變換回去:</p><p><b>  (2-17)</b></p><p>  2.2.3 特征向量的選取</p><p&

52、gt;  圖像訓(xùn)練后將可以開(kāi)始對(duì)圖像進(jìn)行壓縮,然而特征向量的選取這個(gè)階段確實(shí)相當(dāng)?shù)闹匾绻卣飨蛄窟x取的不恰當(dāng),那么我們對(duì)圖像進(jìn)行壓縮將不會(huì)有一個(gè)好的結(jié)果,同時(shí)圖像也不能夠順利的重建。所以圖像的壓縮關(guān)鍵還在我們對(duì)特征向量的選取。</p><p>  在2.2.2中提到的U中,一共有M個(gè)特征向量[10]。雖然在很多情況下M要比小很多,然而在通常情況下,M仍然顯得較大,所以我們需要對(duì)特征向量進(jìn)行選取。事實(shí)上,我們?cè)?/p>

53、實(shí)際應(yīng)用中并不需要保留所有的特征向量。</p><p>  本文考慮到使用K-L變換作為對(duì)人臉圖像的壓縮手段,可以選取最大的前個(gè)特征向量使得</p><p><b> ?。?-18)</b></p><p>  在上面的式子中,根據(jù)問(wèn)題需要可以選取適當(dāng)?shù)闹?,如選取。這樣說(shuō)明樣本集在前個(gè)軸上的信息的99%。</p><p>

54、;  令 </p><p>  則上述對(duì)圖像的壓縮就變?yōu)椋?lt;/p><p><b> ?。?-19)</b></p><p><b>  相應(yīng)的重建圖像為:</b></p><p><b> ?。?-20)</b></p>&

55、lt;p>  2.2.4 PCA算法流程框圖</p><p>  通過(guò)上面的詳細(xì)理論介紹,PCA方法壓縮人臉圖像大致可以通過(guò)下面的描述來(lái)表達(dá):首先PCA方法壓縮人臉圖像需要將很多的圖像數(shù)據(jù)作為訓(xùn)練圖像輸入進(jìn)去,在訓(xùn)練圖像的階段需要完成壓縮圖像子空間的搭建。接著輸入待壓縮的測(cè)試圖像,將測(cè)試圖像投影到訓(xùn)練階段得到的子空間里面就可以對(duì)圖像實(shí)現(xiàn)圖像的降維工作從而完成對(duì)圖像的壓縮工作。當(dāng)圖像需要重建的時(shí)候,只需要將圖

56、像壓縮后的數(shù)據(jù)經(jīng)過(guò)反變換就可以實(shí)現(xiàn)對(duì)圖像的重建。總體的流程如下:</p><p>  圖2.4 PCA人臉圖像壓縮與重建總體流程</p><p>  上面的就是PCA人臉圖像壓縮與重建的總體流程,具體的圖像壓縮過(guò)程與重建的過(guò)程是這樣的:在壓縮人臉圖像的過(guò)程中首先要從ORL庫(kù)中找出N副圖像作為訓(xùn)練圖像。具體的訓(xùn)練過(guò)程是:首先計(jì)算N副圖像的灰度值的平均值,然后用N副圖像依次減去它們的平均值來(lái)

57、構(gòu)建協(xié)方差矩陣,由于一般情況下構(gòu)建的這個(gè)協(xié)方差矩陣都會(huì)很大,直接計(jì)算起來(lái)會(huì)很復(fù)雜,所以一般都通過(guò)SVD分解求解該協(xié)方差矩陣的特征值以及特征向量。當(dāng)求出了協(xié)方差矩陣的特征值以及特征向量后[12],在將求出來(lái)的特征值依次從大到小的排列以便于選出主成分的特征值,當(dāng)選出了主成分的特征值后,這些特征值所對(duì)應(yīng)的特征向量就構(gòu)成了壓縮圖像所需要的子空間。這樣訓(xùn)練圖像的階段就完成了。接下來(lái)就需要輸入將要壓縮的圖像,將待壓縮圖像投影到訓(xùn)練圖像所得到的子空間

58、上面就完成了圖像的壓縮。當(dāng)重建圖像時(shí),只需要將子空間矩陣的逆矩陣乘以壓縮后的圖像就可以實(shí)現(xiàn)對(duì)壓縮圖像的重建。流程圖如圖2.5所示。</p><p>  圖2.4 PCA人臉圖像壓縮與重建總體流程</p><p><b>  2.3 本章小結(jié)</b></p><p>  本章主要講訴的是關(guān)于PCA算法的基本理論,在PCA算法理論里面主要將的就是

59、K-L變換以及用來(lái)計(jì)算特征值以及特征向量的SVD分解。本章的PCA算法基本理論是所有的PCA改進(jìn)算法的基礎(chǔ),后面的改進(jìn)算法都是在本章所介紹的PCA算法基礎(chǔ)上面做出的改進(jìn)。</p><p>  第3章 PCA改進(jìn)算法理論基礎(chǔ)</p><p><b>  3.1引言</b></p><p>  上面章節(jié)講到的是最基本的主成分分析方法對(duì)圖像進(jìn)行壓縮和

60、重建的大致過(guò)程?;镜闹鞒煞址治龇椒ù嬖谝韵乱恍┤秉c(diǎn):當(dāng)人臉圖像光照以及位置發(fā)生較大變化時(shí),基本的PCA無(wú)法有效捕捉這些變化,而且有研究表明,基本的PCA幾乎不能捕捉到圖像之間的一些最簡(jiǎn)單的一致性,除非這些信息包含在訓(xùn)練圖像中。除此之外,基本的PCA都要把圖像的像素按某種方式(一般是各列首位相接)拉伸成一個(gè)維數(shù)很高的向量。當(dāng)圖像尺寸稍大時(shí),這個(gè)拉伸后的向量維數(shù)會(huì)非常高,更不用說(shuō)訓(xùn)練圖像之間的協(xié)方差矩陣了。雖然利用SVD分解可以近似得到特

61、征圖像,從而避免生成巨大的協(xié)方差矩陣,但是這樣做很多時(shí)候是不精確的。由于PCA方法的不足,這里將提出一系列的改進(jìn)方法,即2DPCA、MatPCA以及Module PCA這三種改進(jìn)的方法,如圖3.1所示。</p><p>  圖3.1 PCA算法分類(lèi)</p><p>  3.2 2DPCA算法理論概述</p><p>  從對(duì)基本的PCA實(shí)現(xiàn)人臉圖像壓縮與重建的介紹

62、中得知,二維的人臉圖像事先必須轉(zhuǎn)換成一維的向量,而且這一向量的維數(shù)往往是很高的。根據(jù)一批訓(xùn)練樣本實(shí)際計(jì)算得到的協(xié)方差矩陣是對(duì)真實(shí)協(xié)方差矩陣的近似,而訓(xùn)練樣本的數(shù)量相對(duì)協(xié)方差矩陣的維數(shù)來(lái)說(shuō)往往顯得過(guò)小,因此,想精確得到協(xié)方差矩陣是困難的,雖然實(shí)際應(yīng)用中往往并不直接得到這個(gè)協(xié)方差矩陣,而是通過(guò)其他途徑間接得到其特征值和相應(yīng)的特征向量,但并不說(shuō)明這樣可以精確的得到特征值和特征向量,因?yàn)樘卣髦岛吞卣飨蛄渴怯蓞f(xié)方差矩陣決定的,這和用什么方法得到他

63、們無(wú)關(guān)。所以,協(xié)方差矩陣的不精確必然導(dǎo)致相應(yīng)的特征值和特征向量的不精確。</p><p>  為了克服上訴缺點(diǎn),2DPCA這種人臉圖像的壓縮和重建方法可以是這種情況的到改善。這種方法和基本的PCA方法不同,它基于二維矩陣而不是一維向量。也就是說(shuō),圖像矩陣不必事先轉(zhuǎn)換成一個(gè)長(zhǎng)向量,而是基于原始圖像矩陣得到一個(gè)圖像協(xié)方差矩陣。相對(duì)于基本的PCA方法得到的協(xié)方差矩陣,2DPCA方法得到的圖像協(xié)方差矩陣的尺寸要小的多。2

64、DPCA相對(duì)于基本的PCA主要有兩方面的優(yōu)點(diǎn):一方面它可以比較精確的得到協(xié)方差矩陣;另一方面,2DPCA求相應(yīng)的特征向量所用的時(shí)間也比基本的PCA方法所用的時(shí)間短。</p><p>  3.2.1 2DPCA算法理論</p><p>  假設(shè)X為一個(gè)維歸一化的列向量。2DPCA算法是將圖像A(一個(gè)的矩陣)按照公式</p><p><b> ?。?-1)&l

65、t;/b></p><p>  投影到X上。因而,得到了一個(gè)維的投影向量Y,這里就稱(chēng)Y為圖像A的投影特征向量。在2DPCA方法中求的一個(gè)好的投影方向X就是一個(gè)關(guān)鍵的步驟,投影向量X的區(qū)分樣本能力的強(qiáng)弱可以由樣本投影后的分散程度來(lái)判定。投影后的樣本分散度越高,投影方向X就越好。</p><p>  通過(guò)研究知道,我們可以用投影后的向量的協(xié)方差的跡來(lái)刻畫(huà)樣本投影后的分散程度。即:<

66、/p><p><b> ?。?-2)</b></p><p>  式中,表示訓(xùn)練樣本投影后的向量的協(xié)方差;表示的跡。</p><p>  最大化公式(3-2)的物理意義在于找到一個(gè)投影方向,使得所有訓(xùn)練樣本在其上投影后的向量之間的分散度最大。的協(xié)方差矩陣可以表示為:</p><p><b>  (3-3)</

67、b></p><p><b>  因此</b></p><p><b> ?。?-4)</b></p><p>  可以定義下面的矩陣:</p><p><b> ?。?-5)</b></p><p>  矩陣被稱(chēng)為圖像協(xié)方差矩陣。從定義容易知道,

68、是的非負(fù)定矩陣??梢岳糜?xùn)練樣本圖像直接計(jì)算。假設(shè)一共有M個(gè)訓(xùn)練圖像樣本,矩陣表示第個(gè)訓(xùn)練圖像,表示所有訓(xùn)練樣本的平均圖像。</p><p><b>  (3-6)</b></p><p><b>  那么,可以寫(xiě)成</b></p><p><b>  (3-7)</b></p><

69、;p>  因此,式子(3-6)可以改寫(xiě)成為</p><p><b> ?。?-8)</b></p><p>  式子中,為歸一化的列向量。</p><p>  式子(3-8)為一般總體分散度準(zhǔn)則(Generalized Total Scatter Criterion)。使得最大化的歸一化向量被稱(chēng)為最優(yōu)投影軸。也就是說(shuō),所有訓(xùn)練圖像樣本矩陣

70、投影在之后得到的向量之間的分布散度最大。</p><p>  通過(guò)文獻(xiàn)[4]我們可以知道,是與的最大特征值對(duì)應(yīng)的特征向量。一般來(lái)說(shuō),只有一個(gè)最佳投影方向遠(yuǎn)遠(yuǎn)是不夠的,需要找出一系列的投影方向,即投影方向集,滿(mǎn)足使得盡量最大化以及彼此正交的原則,即</p><p><b>  (3-9)</b></p><p>  事實(shí)上,滿(mǎn)足上述原則的投影方向

71、集是與的前個(gè)最大特征值對(duì)應(yīng)的彼此正交的特征向量。</p><p>  3.2.2 基于2DPCA的圖像壓縮</p><p>  2DPCA方法在圖像壓縮方面,關(guān)鍵的步驟就是投影方向集的選取,當(dāng)投影方向集選取好了之后,將待壓縮的圖像減去訓(xùn)練圖像時(shí)得到的平均圖像,然后在分別投影到投影方向集上面得到各自在不同的投影方向上的投影,然后將得到的投影向量組合在一起就得到了圖像壓縮后的圖像。</p

72、><p>  可以利用由2DPCA得到的投影方向集對(duì)圖像進(jìn)行壓縮。對(duì)于一個(gè)給定的圖像樣本A,令</p><p>  , (3-10)</p><p>  這樣可以得到一系列的投影向量,稱(chēng)之為樣本圖像A的主成分(向量)。這里我們可以明顯的看到,用2DPCA方法得到的主成分是一個(gè)向量,而基本的PCA方法得到的主成分是標(biāo)量。</p>&

73、lt;p>  令 </p><p>  稱(chēng)其樣本圖像A的壓縮矩陣或者特征矩陣(特征圖像)。這就完成了對(duì)給定圖像的壓縮。</p><p>  3.2.3 基于2DPCA的圖像重建</p><p>  基于2DPCA的圖像重建總的來(lái)說(shuō),就是圖像壓縮的一個(gè)逆過(guò)程?;镜腜CA方法中,可以利用圖像壓縮后的特征向量和主成分來(lái)完成對(duì)

74、圖像的重建。與之類(lèi)似,2DPCA可以按照下面的步驟完成壓縮后圖像的重建。</p><p>  設(shè)屬于圖像協(xié)方差矩陣的最大的前個(gè)特征值的特征向量為,當(dāng)圖像矩陣在其上投影后,得到的主成分向量為</p><p><b>  ,</b></p><p>  令 </p><p>  因

75、此對(duì)于給定的樣本圖像A:</p><p><b> ?。?-11)</b></p><p>  由于是彼此正交的,所以從式子(3-11)容易得到A的重建圖像:</p><p><b> ?。?-12)</b></p><p><b>  如果令</b></p>&

76、lt;p>  我們稱(chēng)為A的重建子圖像,它和A以及的尺寸一樣。從式子(3-12)可以看到,可以近似地表示成k個(gè)子圖像之和。重建的精度和之前選擇的的前個(gè)最大特征值的具體值有關(guān),如果(n為的全部特征值個(gè)數(shù)),那么重建后的;否則,是的近似。</p><p>  以上就是2DPCA關(guān)于圖像重建的一些主要的理論算法,有了這些理論實(shí)現(xiàn)圖像重建就很容易了。</p><p>  3.2.4 2DPCA

77、的流程框圖</p><p>  基于2DPCA的人臉圖像壓縮算法在進(jìn)行人臉圖像的壓縮時(shí),和PCA方法在大體的流程上面是一樣的,都首先需要在ORL庫(kù)中選出N張圖片作為訓(xùn)練圖像。然后在輸入測(cè)試圖像來(lái)實(shí)現(xiàn)圖像的壓縮。當(dāng)需要重建圖像的時(shí)候,就需要將壓縮后的圖像數(shù)據(jù)做相應(yīng)的逆變換就可以實(shí)現(xiàn)圖像的重建。2DPCA方法與普通的PCA方法不同的地方是普通的PCA算法壓縮圖像后壓縮的圖像數(shù)據(jù)是一個(gè)標(biāo)量,而2DPCA方法在壓縮圖像后

78、圖像的數(shù)據(jù)是一個(gè)向量。2DPCA方法壓縮圖像首先需要訓(xùn)練圖像,訓(xùn)練圖像時(shí)需要從ORL人臉圖像數(shù)據(jù)庫(kù)中選取N張圖像作為訓(xùn)練圖像,訓(xùn)練圖像主要是為了找出最優(yōu)的投影軸,尋找最優(yōu)投影軸和普通PCA方法尋找特征值和特征向量來(lái)構(gòu)建投影子空間很類(lèi)似。都是首先要求出所有訓(xùn)練圖像的平均灰度值,然后用每個(gè)訓(xùn)練圖像減去平均灰度值,從而構(gòu)建協(xié)方差矩陣。然后利用SVD分解來(lái)求取協(xié)方差矩陣的特征值以及特征向量。然后選取歸一化的特征向量作為投影軸。選取最優(yōu)投影軸主要

79、就是利用方差最大化的方法進(jìn)行的一個(gè)篩選。然后使待壓縮的圖像投影到投影軸上時(shí)分散度最大的投影軸。完成了訓(xùn)練圖像后就可以開(kāi)始對(duì)圖像進(jìn)行壓縮了,壓縮圖像時(shí)需要將待壓縮的人臉圖像依次乘</p><p>  圖3.2 2D PCA人臉圖像壓縮與重建總體流程</p><p>  3.3 Mat PCA算法理論概述</p><p>  3.3.1 Mat PCA簡(jiǎn)介</p&

80、gt;<p>  在處理龐大的向量形態(tài)特征時(shí),將其轉(zhuǎn)化成矩陣形態(tài)特征來(lái)利用2DPCA方法對(duì)轉(zhuǎn)換后的特征矩陣進(jìn)行二次特征提取。這樣處理在模式識(shí)別的時(shí)候就可以提高識(shí)別準(zhǔn)確率以及處理速度。</p><p>  Mat PCA在面對(duì)向量形態(tài)的特征時(shí)會(huì)轉(zhuǎn)化成矩陣形態(tài)的特征,前提是這個(gè)向量的長(zhǎng)度必須是合數(shù),否則無(wú)法轉(zhuǎn)化成二維矩陣。如果是矩陣形態(tài)的特征,那么Mat PCA就不用提前對(duì)其進(jìn)行處理了。因此對(duì)于圖像矩陣

81、來(lái)說(shuō),如果是矩陣形態(tài)的特征,那么Mat PCA就不用提前對(duì)其進(jìn)行處理了。因此對(duì)于圖像矩陣來(lái)說(shuō),如果將其看成矩陣特征,那么Mat PCA方法和2DPCA方法是類(lèi)似的。</p><p>  對(duì)于圖像矩陣,Mat PCA方法和2DPCA方法是類(lèi)似的。只不過(guò)2DPCA是對(duì)原始圖像矩陣進(jìn)行投影,從方差最大化的角度來(lái)尋找最優(yōu)投影方向,而Mat PCA是對(duì)原始圖像矩陣進(jìn)行列投影,從重構(gòu)誤差最小的角度來(lái)尋找最優(yōu)投影方向。兩種方法

82、殊途同歸,都要對(duì)各自的圖像協(xié)方差矩陣求特征值,并根據(jù)實(shí)際需要確定選擇最大特征值的個(gè)數(shù)。</p><p>  3.3.2 Mat PCA算法</p><p>  設(shè)一共有M個(gè)的訓(xùn)練圖像樣本,訓(xùn)練樣本的平均圖像為。令</p><p>  滿(mǎn)足: </p><p>  其中,為長(zhǎng)為的列向量。對(duì)于圖像

83、我們可以得到如下的線(xiàn)性變換:</p><p><b>  (3-13)</b></p><p>  類(lèi)似于2DPCA算法,在尋找合適的投影軸X時(shí),需要遵循一定的原則,是的投影后盡可能多的保留原來(lái)訓(xùn)練圖像樣本的信息。一種可行的原則就是采用重建誤差原則(Reconstructed Error,RCE),即最小化:</p><p><b>

84、 ?。?-14)</b></p><p>  式子中,表示矩陣2-范數(shù), 。</p><p>  對(duì)于矩陣A來(lái)說(shuō),,因此</p><p><b> ?。?-15)</b></p><p><b>  其中:</b></p><p>  稱(chēng)為由給定樣本矩陣得到的總體

85、協(xié)方差矩陣。</p><p>  從式子(3-15)可以明顯看出,只需要最大化式子(3-16)即可:</p><p><b> ?。?-16)</b></p><p>  式子(3-16)等價(jià)于求解如下矩陣方程:</p><p><b> ?。?-17)</b></p><p&g

86、t;  其中,是對(duì)角陣,其對(duì)角元素即的所有非負(fù)特征值,X是由特征向量組成的矩陣。</p><p>  接下來(lái)在選取特征值的時(shí)候可以參考基本的PCA方法以及2DPCA方法,即選取適當(dāng)?shù)闹凳沟茫?lt;/p><p>  在確定合適的之后進(jìn)而得到由相應(yīng)的特征向量組成的投影矩陣X。</p><p>  3.3.3 Mat PCA算法流程</p><p>

87、  Mat PCA算法在大體上面的流程和普通的主成分分析方法壓縮圖片是基本一樣的,都是首先從ORL人臉圖像數(shù)據(jù)庫(kù)中間選取適當(dāng)數(shù)量的人臉圖像作為訓(xùn)練圖像。訓(xùn)練圖像的時(shí)候需要計(jì)算所選取的平均的圖像的灰度值。然后壓縮圖像和普通的PCA算法不同,Mat PCA算法是從列向量投影。2DPCA算法是從行向量方向進(jìn)行投影。和2DPCA算法從方差最大化的角度篩選投影向量不同的是,Mat PCA算法是從重構(gòu)誤差最小的角度來(lái)選取最優(yōu)投影軸。當(dāng)選取好了最優(yōu)投

88、影軸之后,就可以進(jìn)入圖像的壓縮階段了,將待壓縮的圖像進(jìn)行列投影就可以實(shí)現(xiàn)對(duì)圖像的壓縮。圖像重建和普通的主成分分析方法一樣也是只用進(jìn)行壓縮圖像的逆變換就可以完成圖像的重建。</p><p>  圖3.3 Mat PCA人臉圖像壓縮與重建總體流程</p><p>  3.4 Module PCA算法概述</p><p>  3.4.1 Module PCA算法簡(jiǎn)介&l

89、t;/p><p>  上面介紹了兩種主成分分析方法的改進(jìn)算法,包括2DPCA和Mat PCA兩種算法,這兩種算法都是在投影方向上和方式上來(lái)改進(jìn)傳統(tǒng)的PCA算法。Module PCA算法不是針對(duì)投影方向或者是投影軸來(lái)對(duì)PCA算法進(jìn)行的改進(jìn)。Module PCA算法是針對(duì)圖像數(shù)據(jù)過(guò)大,或者是當(dāng)外界條件變化很大的情況下對(duì)傳統(tǒng)的PCA算法做出的一種改進(jìn)。這種改進(jìn)可以有效的對(duì)很大的圖像進(jìn)行處理,也可以有效的應(yīng)對(duì)各種外界條件的變

90、化。</p><p>  這里提出模塊化主成分分析(Module PCA)算法的基本原理,利用模塊化PCA進(jìn)行圖像數(shù)據(jù)壓縮與重建的基本模型。然后將每一個(gè)訓(xùn)練圖像都劃分成一些尺寸大小一樣的子圖像,將所有訓(xùn)練圖像的所有子圖像集合在一起進(jìn)行PCA分析,得到相應(yīng)的總體協(xié)方差矩陣。在對(duì)測(cè)試圖像進(jìn)行壓縮時(shí),首先按照訓(xùn)練圖像那樣的劃分方法將測(cè)試圖像劃分成子圖像,然后逐個(gè)對(duì)子圖像進(jìn)行壓縮。重建時(shí)逐個(gè)對(duì)壓縮的子圖像進(jìn)行重建,然后再

91、拼接成原來(lái)的圖像。實(shí)驗(yàn)結(jié)果表明,利用模塊化PCA能有效減少數(shù)據(jù)的維數(shù),實(shí)現(xiàn)圖像壓縮,同時(shí)能根據(jù)實(shí)際需要重建圖像。</p><p>  3.4.2 Module PCA算法</p><p>  設(shè)一共有M個(gè)的訓(xùn)練圖像樣本,令分別為圖像縱向和橫向均勻劃分的個(gè)數(shù)。那么每個(gè)測(cè)試圖像均可劃分的個(gè)數(shù)。那么每個(gè)測(cè)試圖像均可劃分成個(gè)子圖像。</p><p><b>  令

92、</b></p><p><b>  (3-18)</b></p><p>  為所有訓(xùn)練圖像所有子圖像的均值,計(jì)算所有子圖像的總體協(xié)方差矩陣:</p><p><b>  (3-19)</b></p><p>  選取適當(dāng)?shù)闹担蟮奶卣髦凳沟茫?lt;/p><p>

93、  在確定合適的之后進(jìn)而得到由相應(yīng)的特征向量組成的投影矩陣:。對(duì)于測(cè)試圖像,將其按照訓(xùn)練圖像劃分模式劃分成:</p><p><b>  計(jì)算</b></p><p><b>  (3-20)</b></p><p>  完成對(duì)測(cè)試圖像各個(gè)子圖像的壓縮。</p><p><b>  計(jì)算&

94、lt;/b></p><p><b>  (3-21)</b></p><p>  完成對(duì)測(cè)試圖像各個(gè)子圖像的重建,將重建后的子圖像拼接在一起完成對(duì)的重建。</p><p>  3.4.3 Module PCA算法流程</p><p>  關(guān)于模塊化的主成分分析方法,主要就是解決圖片數(shù)據(jù)過(guò)大,以及外界條件引起的圖像

95、的部分區(qū)域變化從而導(dǎo)致圖像數(shù)據(jù)變化過(guò)大而引起圖像壓縮以及重建不準(zhǔn)確等情況。Module PCA方法和普通的PCA方法主要的改進(jìn)是在于,Module PCA方法在壓縮圖像的時(shí)候首先要將圖像劃分成個(gè)子圖像,這里的m和n需要用戶(hù)自己設(shè)定,用戶(hù)可以根據(jù)自己的需要選擇來(lái)設(shè)定劃分的子圖像的個(gè)數(shù),從而達(dá)到最理想的效果。當(dāng)用戶(hù)手動(dòng)輸入了需要?jiǎng)澐殖勺訄D像的個(gè)數(shù)后,然后就按照用戶(hù)的輸入來(lái)劃分待壓縮的圖像。將待壓縮的圖像劃分成了指定的子圖像個(gè)數(shù)后,其他它的工

96、作就是和普通的主成分分析方法的步驟是一樣的,需要計(jì)算圖像的平均灰度值,來(lái)構(gòu)建一個(gè)協(xié)方差矩陣。接著就要計(jì)算協(xié)方差矩陣的特征值以及特征向量,然后選取特征值里面最大的前k個(gè)特征值所對(duì)應(yīng)的特征向量來(lái)構(gòu)建一個(gè)投影的子空間。接著將劃分好的子圖像依次投影到該子空間上面從而完成對(duì)各個(gè)模塊的子圖像的壓縮過(guò)程。由于壓縮的時(shí)候是分模塊進(jìn)行壓縮的,這就決定了重建圖像的時(shí)候和普通的PCA方法也是不同的。重建圖像時(shí)不僅僅需要將子圖像依次進(jìn)行逆變換來(lái)完成子圖像的重建

97、工作,還需要將每個(gè)子圖像拼接在一起。這樣就完</p><p>  圖3.4 Module PCA人臉圖像壓縮與重建總體流程</p><p><b>  3.5 本章小結(jié)</b></p><p>  本章主要介紹了主成分分析方法的幾種改進(jìn)算法,主要包括2DPCA算法、Mat PCA算法以及Module PCA算法。2DPCA算法和Mat PCA

98、算法主要的區(qū)別在于它們選擇的投影方向不同,一個(gè)是對(duì)待壓縮圖像進(jìn)行列投影,另一個(gè)是對(duì)待壓縮圖像進(jìn)行行投影。而且它們選擇最優(yōu)投影軸的方法標(biāo)準(zhǔn)也是不相同的,2DPCA方法是從方差最化的角度來(lái)選擇最優(yōu)投影軸,而Mat PCA方法是從重構(gòu)誤差最小化來(lái)選擇最優(yōu)的投影軸。相對(duì)于2DPCA和Mat PCA兩種方法,Module PCA方法則是將圖像劃分成很多的子圖像來(lái)改進(jìn)PCA方法。每種改進(jìn)算法都有自己的優(yōu)點(diǎn),同時(shí)也都存在著不足。</p>

99、<p>  第4章 MATLAB程序?qū)崿F(xiàn)</p><p><b>  4.1 概述</b></p><p>  上面的章節(jié)主要論述了PCA及其改進(jìn)算法在人臉壓縮與重建上面的理論基礎(chǔ),在本章節(jié)主要給出了以上算法在MATLAB平臺(tái)上實(shí)現(xiàn)的代碼。為了方便操作,算法采用GUI(Graphical User Interface)的形式給出,并且給出關(guān)鍵代碼部分的注

100、釋?zhuān)员阌陂喿x。GUI采取了代碼編寫(xiě)的方式而沒(méi)有采取GUIED(GUI Design Enviornment)方式,一方面是這種方式大家更容易看懂,另一方面是這個(gè)程序在不同的MATLAB版本上運(yùn)行的方便性。</p><p>  本章節(jié)是將基本的PCA方法和2DPCA與Mat PCA方法實(shí)現(xiàn)圖像壓縮與重建對(duì)比;另一個(gè)是用Module PCA方法實(shí)現(xiàn)圖像壓縮和重建。</p><p>  4.2

101、 PCA、2DPCA和Mat PCA程序?qū)崿F(xiàn)</p><p>  在將PCA算法以及各種改進(jìn)的PCA算法包括2DPCA和Mat PCA算法實(shí)現(xiàn)的時(shí)候?yàn)榱朔奖銓?duì)比將這三種的實(shí)現(xiàn)程序?qū)懺诹艘黄?。這樣可以很清楚的對(duì)比三種算法的好壞。</p><p>  4.2.1總體算法框架代碼</p><p>  下面就是總體算法界面的實(shí)現(xiàn)代碼,一些關(guān)鍵的代碼后面有詳細(xì)的注釋以便能夠很

102、好的理解代碼??傮w算法界面實(shí)現(xiàn)代碼如下:</p><p>  function PcaMethodsforImageRebuilt %主界面,返回主界面句柄</p><p>  fig = figure('defaultuicontrolunits','normalized','name',...</p>

103、<p>  '各類(lèi)Pca方法用于圖像壓縮與重建','numbertitle','off','menubar','none');</p><p>  AxesH = axes('Pos',[.08 .08 .72 ,0.72],'visible','on'); %建立坐標(biāo)

104、軸,并返回句柄</p><p>  UiButtonGroupH = uibuttongroup('Position',[0.81 0.08 0.185 0.82],'title',...</p><p>  '各Pca方法','fontsize',10); %群組對(duì)象,并返回句柄</

105、p><p>  PcaH = uicontrol('Style','Radio','String','Pca','pos',[0.05 0.8 0.9 0.15],...</p><p>  'parent',UiButtonGroupH); %Pca的選項(xiàng)&l

106、t;/p><p>  TwoDPcaH = uicontrol('Style','Radio','String','2D Pca','pos',...</p><p>  [0.05 0.6 0.9 0.15],'parent',UiButtonGroupH); %2DPca的選項(xiàng)<

107、/p><p>  MatPcaH = uicontrol('Style','Radio','String','Mat Pca','pos',...</p><p>  [0.05 0.4 0.9 0.15],'parent',UiButtonGroupH); %MatPca的選項(xiàng)</

108、p><p>  %下面幾行建立供應(yīng)的菜單項(xiàng)以及噪聲按鈕。各菜單以及按鈕點(diǎn)擊時(shí)候的回調(diào)函數(shù)</p><p>  TrainImagesH = uimenu(fig,'label','訓(xùn)練圖像','tag','訓(xùn)練圖像', 'callback',@TrainImage);</p><p>  T

109、estImageH = uimenu(fig,'label','測(cè)試圖像','tag','測(cè)試圖像',...</p><p>  'callback',@TestImage,'enable','off');</p><p>  SaltPepperNoiseH = uicontr

110、ol(fig,'style','pushbutton','Pos',...</p><p>  [0.15,0.88,0.2,0.08],'string','添加椒鹽噪聲','fontsize',10,...</p><p>  'enable','off',&#

111、39;callback',@SaltPepperNoise);</p><p>  GaussianNoiseH = uicontrol(fig,'style','pushbutton','Pos',[0.55,0.88,0.2,0.08],...</p><p>  'string','添加高斯噪聲'

112、,'fontsize',10,'enable','off','callback',@GaussianNoise);</p><p>  CompressImageH = uimenu(fig,'label','壓縮圖像','tag','壓縮圖像','callback',.

113、..</p><p>  @CompressImage,'enable','off');</p><p>  RebuiltImageH = uimenu(fig,'label','重建圖像','tag','重建圖像','callback',...</p><

114、p>  @RebuiltImage,'enable','off');</p><p>  ImaOutH = uimenu(fig,'label','導(dǎo)出圖像到新figure','callback',@ImaOut);</p><p>  在主界面上一共有七個(gè)按鍵和三個(gè)模式選擇的按鍵,七個(gè)按鍵分別是訓(xùn)練圖

115、像、測(cè)試圖像、壓縮圖像、重建圖像和導(dǎo)出圖像這五個(gè)功能按鍵和兩個(gè)添加噪聲的按鍵。三個(gè)模式選擇按鍵分別對(duì)應(yīng)著PCA、2DPCA和Mat PCA三個(gè)模式。</p><p><b>  4.2.2訓(xùn)練圖像</b></p><p>  訓(xùn)練圖像時(shí)需要首先判斷輸入訓(xùn)練圖像的個(gè)數(shù),然后根據(jù)所選擇的模式來(lái)進(jìn)行不同的訓(xùn)練,由于PCA、2DPCA算法以及Mat PCA都在一起實(shí)現(xiàn),所以程

116、序?qū)崿F(xiàn)過(guò)程中需要判斷是選擇的哪種模式。在這里只給出關(guān)鍵的訓(xùn)練圖像的過(guò)程。選擇模式,以及最先輸入圖像的公共處理部分的代碼這里就不在給出了。</p><p>  選擇PCA算法的模式下的訓(xùn)練圖像:</p><p>  A1 = zeros(numel(A{1}),n);</p><p>  for k = 1:n</p><p>  A1(:,k

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論