版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、 河北農(nóng)業(yè)大學 本科畢業(yè)論文(設計)題 目: 基于Eigenfaces的人臉識別算法實現(xiàn) 學 院: 信息科學與技術學院 專業(yè)班級: 計算機1002班 學 號: 學生姓名: 指導教師姓名: 指導教師職稱: 講師 2014年 6 月 5 日 PAGE PAGE 26摘要隨著科技的快速發(fā)展,視頻監(jiān)控技術在我們生活中有著越來越豐富的應用。在這些視頻監(jiān)控領域迫切需要一種遠距離,非配合狀態(tài)下的快速身份識別,以求能夠快速識別所需要的人員信息,提前智能預警。人臉識別無疑是最佳的選擇??梢酝ㄟ^人臉檢測從視頻監(jiān)控中快速提取人臉,并與人臉數(shù)據(jù)庫對比從而快速識別身份。這項技術可以廣泛應用于國防,社會安全,銀行電子商務
2、,行政辦公,還有家庭安全防務等多領域。本文按照完整人臉識別流程來分析基于PCA(Principal Component Analysis)的人臉識別算法實現(xiàn)的性能。首先使用常用的人臉圖像的獲取方法獲取人臉圖像。本文為了更好的分析基于PCA人臉識別系統(tǒng)的性能選用了ORL人臉數(shù)據(jù)庫。然后對人臉數(shù)據(jù)庫的圖像進行了簡單的預處理。由于ORL人臉圖像質(zhì)量較好,所以本文中只使用灰度處理。接著使用PCA提取人臉特征,使用奇異值分解定理計算協(xié)方差矩陣的特征值和特征向量以及使用最近鄰法分類器歐幾里得距離來進行人臉判別分類。關鍵詞:人臉識別 PCA算法 奇異值分解定理 歐幾里得距離ABSTRACTWith the
3、rapid development of technology, video surveillance technology has become increasingly diverse applications in our lives. In these video surveillance urgent need for a long-range, with rapid identification of non-state, in order to be able to quickly identify people the information they need, advanc
4、e intelligence warning. Face recognition is undoubtedly the best choice. Face detection can quickly extract human faces from video surveillance, and contrast with the face database to quickly identify identity. This technology can be widely used in national defense, social security, bank e-commerce,
5、 administrative offices, as well as home security and defense and other areas.In accordance with the full recognition process to analyze the performance of PCA-based face recognition algorithm. The first to use the method of access to commonly used face images for face images. In order to better ana
6、lysis is based on the performance of the PCA face recognition system selected ORL face database. Then the image face database for a simple pretreatment. Because ORL face image quality is better, so this article uses only gray scale processing. Then use the PCA for face feature extraction using singu
7、lar value decomposition theorem to calculate the covariance matrix of the eigenvalues and eigenvectors, and use the Euclidean distance of the nearest neighbor classifier to the classification of human face discrimination.KEYWORDS: face recognition PCA algorithm SVD Euclidean distance目錄TOC o 1-3 h u
8、HYPERLINK l _Toc1982 摘要 PAGEREF _Toc1982 2 HYPERLINK l _Toc10941 ABSTRACT PAGEREF _Toc10941 3 HYPERLINK l _Toc22463 1 人臉識別概述 PAGEREF _Toc22463 5 HYPERLINK l _Toc15789 1.1 人臉識別的研究概況和發(fā)展趨勢 PAGEREF _Toc15789 5 HYPERLINK l _Toc30777 1.1.1 人臉識別的研究概況 PAGEREF _Toc30777 5 HYPERLINK l _Toc10751 1.1.2 人臉識別的發(fā)展趨
9、勢 PAGEREF _Toc10751 6 HYPERLINK l _Toc15644 1.2 人臉識別的主要難點 PAGEREF _Toc15644 7 HYPERLINK l _Toc25706 1.3 人臉識別的流程 PAGEREF _Toc25706 7 HYPERLINK l _Toc32443 1.3.1 人臉圖像采集 PAGEREF _Toc32443 8 HYPERLINK l _Toc10374 1.3.2 預處理 PAGEREF _Toc10374 8 HYPERLINK l _Toc1182 1.3.3 特征提取 PAGEREF _Toc1182 8 HYPERLINK
10、l _Toc22748 1.4 本章小結(jié) PAGEREF _Toc22748 9 HYPERLINK l _Toc960 2 人臉圖像 PAGEREF _Toc960 10 HYPERLINK l _Toc10413 2.1 人臉圖像獲取 PAGEREF _Toc10413 10 HYPERLINK l _Toc13256 2.2 人臉圖像數(shù)據(jù)庫 PAGEREF _Toc13256 10 HYPERLINK l _Toc9417 2.3 人臉圖像預處理 PAGEREF _Toc9417 11 HYPERLINK l _Toc23294 2.3.1 灰度變化 PAGEREF _Toc23294
11、11 HYPERLINK l _Toc7204 2.3.2 二值化 PAGEREF _Toc7204 12 HYPERLINK l _Toc28436 2.3.3 圖像銳化 PAGEREF _Toc28436 12 HYPERLINK l _Toc11789 2.4 本章小結(jié) PAGEREF _Toc11789 13 HYPERLINK l _Toc6389 3 人臉識別 PAGEREF _Toc6389 14 HYPERLINK l _Toc13112 3.1 PCA算法理論 PAGEREF _Toc13112 14 HYPERLINK l _Toc7215 3.2 PCA人臉識別算法的實現(xiàn)
12、 PAGEREF _Toc7215 15 HYPERLINK l _Toc8183 3.2.1 K-L變換 PAGEREF _Toc8183 15 HYPERLINK l _Toc26310 3.2.2 SVD 定理 PAGEREF _Toc26310 15 HYPERLINK l _Toc12628 3.2.3 PCA算法 PAGEREF _Toc12628 16 HYPERLINK l _Toc29797 3.2.4 人臉識別過程 PAGEREF _Toc29797 17 HYPERLINK l _Toc1008 3.3 程序運行效果 PAGEREF _Toc1008 17 HYPERLI
13、NK l _Toc18504 3.4 程序代碼 PAGEREF _Toc18504 18 HYPERLINK l _Toc27336 3.4.1 代碼類關系 PAGEREF _Toc27336 18 HYPERLINK l _Toc7002 3.4.2 代碼的OpenCV相關 PAGEREF _Toc7002 19 HYPERLINK l _Toc19805 3.4.3 關鍵函數(shù)代碼 PAGEREF _Toc19805 19 HYPERLINK l _Toc2137 3.5 本章小結(jié) PAGEREF _Toc2137 23 HYPERLINK l _Toc20426 結(jié)論 PAGEREF _T
14、oc20426 24 HYPERLINK l _Toc3580 致謝 PAGEREF _Toc3580 25 HYPERLINK l _Toc23751 參考文獻 PAGEREF _Toc23751 261 人臉識別概述1.1 人臉識別的研究概況和發(fā)展趨勢1.1.1 人臉識別的研究概況人臉識別的研究開始于上世紀七十年代,當時的研究主要是基于人臉外部輪廓的方法。到現(xiàn)在為止,人臉識別主要經(jīng)歷了三個階段的發(fā)展。對于人臉識別的研究歷史可分為三個階段:第一階段(1964-1990)這個階段主要采取的技術是基于人臉幾何結(jié)構的。研究的重點主要在剪影上。研究人員做了大量關于如何提取面部剪影曲線的結(jié)構特征的研究
15、。這個階段屬于人臉識別的初級階段,突出的研究成果不多,也沒有獲得的實際應用。第二階段(1991-1997)這個階段雖然時間相對較短,但是碩果累累,出現(xiàn)了若干具有代表性的算法和幾個商業(yè)化的人臉識別系統(tǒng),如Identix(原為Visionics)公司的FaceIt系統(tǒng)。這個時期最具盛名的人臉識別方法是MIT媒體實驗室的Turk和Pentland提出的的“特征臉”方法。后來很多人臉識別技術都與特征臉有關,現(xiàn)在特征臉已與歸一化的協(xié)相關量方法一起成為了人臉識別性能測試的基準算法。這個時期的主要成果有:1992年左右,Brunelli和Poggio做了一個基于結(jié)構特征的方法和基于模板匹配的方法性能對比的實
16、驗,并得出了模塊匹配的方法優(yōu)于基于特征的方法的結(jié)論。這個結(jié)論和特征臉的共同作用,基本上停止了純粹基于結(jié)構特征人臉識別的研究,并且很大的促進了基于表觀的線性子空間建模和基于統(tǒng)計模式識別技術的發(fā)展,使其逐漸成為主流技術。Belhumeur等人的Fisherface方法也是此階段一個重要的成果。該方法目前依然是主流人臉識別方法中的一種,產(chǎn)生了很多變種,比如子空間判別模型等。其先使用PCA即特征臉對人臉圖像表現(xiàn)特征進行降維,并使用線性判別分析方法對降維后的主成分進行變換以獲得“盡量大的類間散度和盡量小的類內(nèi)散度”。彈性匹配技術為另一個重要方法。它用一個屬性圖來描述人臉:屬性的頂點代表面部關鍵特征點,它
17、的屬性為相應特征點處的多分辨率,多方向局部特征Gabor變換,稱為Jet;邊的屬性為不同特征點間的幾何關系。對于輸入的圖像,其通過一種優(yōu)化搜索策略來定位預先定位的若干面部關鍵特征點,同時提取它們的Jet特征,得到輸入人臉圖像的屬性圖。最后通過計算其與已知人臉屬性圖的相似度來完成識別過程。彈性匹配方法的優(yōu)點是既保留了面部的全局結(jié)構特征,也對人臉關鍵局部特征進行了建模。局部特征分析由Atick等提出。其在本質(zhì)上是基于統(tǒng)計的低維對象描述方法,與PCA相比,局部特征分析在全局主成分分析的基礎上提取的是局部特征。它既保留了全局拓撲信息,有提取了局部特征,使其具有了更好的描述和識別能力。局部特征分析技術已
18、商業(yè)化為著名FaceIt系統(tǒng)。柔性模型,包括主動形狀模型和主動外觀模型。它是人臉建模方面的一個新的進步。其主要將人臉描述為2D形狀和紋理兩個分離的部分,分別用PCA建模,然后再通過PCA將兩者合成來對人臉建模。柔性模型具有良好的人臉合成能力,可以使用基于合成的圖像分析技術對人臉圖像進行特征提取和建模。這個階段所提出的算法在理想圖像采集條件,人員配合,中小規(guī)模正面人臉數(shù)據(jù)庫上達到了非常好的性能。,也誕生幾個著名的人臉識別系統(tǒng)。第三階段(1998年現(xiàn)在)這個時期關于人臉識別的研究非常熱門。有大量的研究人員從事這方面的研究。主要針對的是主流的人臉識別技術在采集條件不理想和用戶不配合下魯棒性差的問題。
19、光照和姿態(tài)問題成為了研究焦點。這個時期主要成果有:Georghiades等人基于光照錘模型的多姿態(tài),多光照條件人臉識別方法。Blanz和Vetter等人基于3D變形模型的多姿態(tài),多光照的人臉識別方法。Shashua等人基于上圖像的人臉圖像識別與繪制技術??傮w而言,目前非理想成像條件下(尤其是光照和姿態(tài)),對象不配合,大規(guī)模人臉數(shù)據(jù)庫上的人臉識別已逐漸成為研究的重點。而非線性建模方法,統(tǒng)計學習理論,基于Boosting的學習技術,基于3D模型的人臉建模與識別方法等逐漸成為備受重視的技術發(fā)展趨勢。從整個人臉識別的研究歷史來看,基于PCA的特征臉識別方法占據(jù)了非常重要的地位,也對后來的人臉識別技術產(chǎn)
20、生甚遠的影響。在后來很多的人臉識別技術,我們或多或少都會發(fā)現(xiàn)它的影子。人臉圖像維數(shù)都很高,PCA方法不但很好表征人臉而且通過去除相關性,減少冗余,解決了在人臉識別過程中圖像為數(shù)過高的問題。并且隨著現(xiàn)代社會的發(fā)展,快速人臉識別的需求越來越大。所以研究基于PCA的人臉識別算法的實現(xiàn)還是有實際意義。1.1.2 人臉識別的發(fā)展趨勢人臉識別至今雖然取得了豐碩的研究成果,但是還有很多問題需要解決。人臉識別的難度在于:人臉是非剛性物體,并且會隨著年齡的增長而改變,特征難以完全描述;人臉常常有許多遮擋物,如:眼鏡,帽子等;環(huán)境的光照和人臉的姿態(tài)等。人臉識別的未來主要的發(fā)展趨勢如下:多數(shù)據(jù)融合與方法綜合人臉識別
21、技術經(jīng)過這幾十年的發(fā)展,已取得非常不錯的成果。但是各種技術和方法都有自己不同的適應環(huán)境和各自的特點。如何使用數(shù)據(jù)融合理論,將不同的方法綜合起來,相互補充,來取得較好的人臉識別效果,便成為人們的研究熱點之一。動態(tài)跟蹤人臉識別系統(tǒng)目前的靜態(tài)人臉識別技術只能滿足一般身份識別場合如門禁系統(tǒng),考勤系統(tǒng)等,無法進行人臉的動態(tài)跟蹤與識別。隨著現(xiàn)在社會的發(fā)展,目前對動態(tài)人臉的跟蹤與識別的需求越來越大,尤其是在一些安全領域?;谛〔ㄉ窠?jīng)網(wǎng)絡的人臉識別小波自提出以來,其理論和應用得到了長足的發(fā)展。它被認為是傅里葉分析的突破性的發(fā)展。隨著神經(jīng)網(wǎng)絡的理論研究的深入,與小波,混沌,模糊集等非線性理論相結(jié)合已成為一個非常
22、重要的發(fā)展方向。小波變換具有時頻特性和變焦特性,神經(jīng)網(wǎng)絡具有自學習,自適應,魯棒性,容錯性和推廣能力。如果能結(jié)合兩者的優(yōu)勢,將會取得人臉識別不錯的效果。三維人臉識別 目前許多人臉識別成果是建立在二維人臉基礎上的,而實際的人臉是三維的。三維人臉相比較于二維圖像提供了更加完整的人臉信息。隨著現(xiàn)在三維人臉采集技術的逐步發(fā)展,如何利用三維人臉進行人臉識別已成為一個新的研究熱點。適應各種復雜背景的人臉分割技術現(xiàn)在在復雜背景下的人臉分割已經(jīng)取得了一定的成果,如彈性匹配,但檢測速度和效果還無法令人滿意。在復雜背景下快速有效檢測和分割人臉技術還需進一步的研究。全自動人臉識別技術全自動人臉識別技術目前還處于初級
23、研究階段,識別效果和速度離實際的要求還相差甚遠。具體原因是人臉是非剛體,無法得到準確完整的描述人臉特征。如何有效的表達人臉特征將是其研究的重點。1.2 人臉識別的主要難點目前的人臉識別技術在人員配合,較理想采集條件下可以取得比較滿意的結(jié)果。但在人員不配合,采集條件不理想下,系統(tǒng)的性能陡然下降。目前的主要的難點為:人的臉部結(jié)構相似,甚至人的五官結(jié)構、臉部紋理和外形都很相似。由于不同個體之間的區(qū)別不大,這樣的特點對于檢測人臉的存在有利,但是對用人臉區(qū)分人的身份不利。人可以通過臉部變化產(chǎn)生豐富的表情,同時通過不同的視角觀察人臉,其視覺圖像差別很大,甚至會出現(xiàn)同一個人在不同情況下的臉內(nèi)差異大于不同人臉
24、之間的臉間差異,因此人臉的外部形態(tài)很不穩(wěn)定給識別帶來很大的困難。背景的變化及復雜程度在很大程度上會影響人臉檢測的準確度,例如將人臉判斷為非人臉或?qū)⒎侨四樥`判為人臉等。而視頻監(jiān)控系統(tǒng)往往設置在背景較復雜的場所,所以解決背景干擾問題成為一個重要問題,同時也是一個難點問題。視頻監(jiān)控區(qū)域往往出現(xiàn)一個以上的人臉,如何將所有人臉都準確地進行定位是一個比較困難的地方。與姿勢和觀察角度的變化相似不同的光照條件也會造成識別的困難。即使是同一個人,在相同的表情和視角情況下,人臉的區(qū)別也很大。人臉遮擋物的不同,同樣會給識別帶來很大的難度。而且,同一個人隨著年齡的變化,人臉特色會出現(xiàn)很大的不同,因此會出現(xiàn)采集到的人臉
25、與人臉庫中的同一個人的人臉差異很大。其中第一類的變化是個體間的變化,稱之為類間變化:第二類變化是同一個 體間不同情況下的變化,稱之為類內(nèi)變化。很多情況下,類內(nèi)變化甚至會大于類 間變化,從而使受類內(nèi)變化干擾情況下的人臉識別準確率大大降低。1.3 人臉識別的流程圖1-1 人臉識別流程圖1.3.1 人臉圖像采集采集人臉圖像是通過傳感器采集人臉圖像,并將其轉(zhuǎn)換為計算機可以處理的數(shù)字信號。這是人臉識別的第一步。在采集人臉圖像時,要注意用戶人臉姿態(tài),臉部有無遮擋,周圍光照是否滿足要求及設備采集圖像的質(zhì)量是否能滿足要求。1.3.2 預處理預處理是為了除去噪聲和對測量儀器或其他因素對人臉圖像造成退化現(xiàn)象進行復
26、原。從傳感器采集到圖像除了包含人臉特征信息,還包含背景信息,所以必須從原始人臉圖像分割出我們要處理的部分。如何分割就需要定位和分割算法。他們一般以人臉圖像在圖像結(jié)構和人臉信號分布的先驗知識為依據(jù)。常用的人臉預處理有人臉圖像灰度化,人臉圖像二值化,人臉圖像歸一化,直方圖修正,圖像濾波和圖像銳化。1.3.3 特征提取特征提取就是計算機通過提取人臉圖像中能夠凸顯個性化差異的的本質(zhì)特征,進而來實現(xiàn)身份識別。本文講解如何使用PCA算法提取人臉特征,進而實現(xiàn)人臉識別。特征主要包括三種類型:物理特征,結(jié)構特征和數(shù)學特征。由于物理特征和結(jié)構特征容易被察覺,觸覺以及其他感覺器官所感知,所以人類常常是利用這些特征
27、來對對象進行識別。對于計算機而言,模擬人類的感覺器官是很難實現(xiàn)的,但計算機在處理數(shù)學特征的能力上要比人類強得多,因此我們通過諸如協(xié)方差矩陣,統(tǒng)計平均值和相關系數(shù)等數(shù)學特征來構建人臉識別系統(tǒng)。特征提取和選擇的根本任務就是從許多特征中找出那些最有效的特征。在樣本數(shù)不是很多的情況下,可以利用這些特征進行分類器的設計,但是在大多數(shù)情況下,由于測量空間的維數(shù)很高,不能直接進行分類器的設計。因此,如何把高維測量空間壓縮到低維特征空間,以便有效的設計分類器,便成為了一個值得思考的問題。為了獲得有效的特征,一般需要經(jīng)過特征形成,特征提取和特征選擇等步驟。1)特征形成特征形成是根據(jù)被識別對象產(chǎn)生出一組基本特征的
28、過程,當被識別的對象是波形或數(shù)字圖像時,這些特征可以通過計算得來;當被識別對象是實物或某種過程時,這些特征可以用儀表或傳感器測量來得到。通過上面方法獲得特征被稱為原始特征。2)特征提取原始數(shù)據(jù)組成的空間被稱為測量空間。由于測量空間的維數(shù)一般都很高,不易設計分類器,所以在分類器設計之前,需要從測量空間變換到維數(shù)很少的特征空間,由特征向量表示。通過映射或變換方法用低緯空間來表示樣本的過程被稱為特征提取。映射后的特征稱為二次特征,它們是原始特征的某種組合,通常是線性組合。3)特征選擇從一組特征中挑出一些最有效的特征從而達到降低特征空間維數(shù)目的的過程稱為特征選擇。由于在許多實際問題中常常不容易找到那些
29、最重要的特征,或者由于條件限制而不能對這些重要特征進行測量。從而使得特征選擇和特征提取的任務復雜化。特征提取和特征選擇在有些情況下并不是截然分開的,因為從一定意義上來講,二者都是要達到對數(shù)據(jù)進行降維的目的,只是實現(xiàn)的途徑不同。特征提取是通過某種變換的方法組合原有的高維特征,從而得到一組低維的特征。而特征選擇是根據(jù)專家的檢驗知識或評價準則來挑選對分類最有影響的特征。比如可以先將原始特征空間映射到維數(shù)較低的空間,在這個空間中在進一步選擇特征來進一步降低維度;也可以先去除那些明顯不含有分類信息的特征,而后再進行映射以降低維度。4)特征匹配特征匹配是計算兩個人臉圖像特征樣本的特征模塊間的相似度即將采集
30、到的人臉圖像的特征模版與系統(tǒng)中已存儲的特征模版進行比對,并輸出最佳匹配對象。在本文主要講解使用最近鄰法分類器歐幾里得距離來判別人臉圖像,在實際廣泛使用的還有基于SVM即支持向量機,基于神經(jīng)網(wǎng)絡和圖匹配的方法。1.4 本章小結(jié)本章由人臉識別的研究概況和發(fā)展趨勢,人臉識別技術的主要難點,和人臉識別流程三個小節(jié)構成。在人臉識別的研究概況和發(fā)展趨勢小節(jié)主要講解人臉識別的研究概況及基于PCA人臉識別算法實現(xiàn)的研究意義還有人臉識別技術未來的走向。在人臉識別技術的主要難點小節(jié)主要講解人臉識別的主要技術難點。人臉識別小節(jié)講解本文人臉識別的流程。2 人臉圖像2.1 人臉圖像獲取著計算機科技和微電子的發(fā)展,現(xiàn)在人
31、臉圖像采集設備也越來越多。常用的采集設備有數(shù)碼相機,數(shù)碼攝影機等。但是采集設備成像原理各異,有些設備對某類人臉圖像的采集效果比較好,進而人臉識別率高,對不同類的人臉圖像采集效果差,進而人臉識別率低。不過隨著現(xiàn)在科技的發(fā)展,這個問題已基本上被解決。另外,人臉圖像采集的形式不同也會影響識別率。人臉圖像的采集形式主要有兩種:一為靜態(tài)人臉圖像,二位動態(tài)人臉圖像。靜態(tài)人臉圖像的采集相對比較簡單,用數(shù)碼相機即可獲取。動態(tài)人臉圖像相比靜態(tài)人臉圖像獲取難度較大,但其更加貼近實際需求,應用場合更加廣闊。2.2 人臉圖像數(shù)據(jù)庫人臉數(shù)據(jù)庫是人臉識別研究,開發(fā)和評測不可缺少的。每個人臉識別系統(tǒng)都需要一個人臉數(shù)據(jù)庫。人
32、臉圖像數(shù)據(jù)庫的設計對人臉識別系統(tǒng)的識別率有著非常大影響。設計一個在所有變化情況下都能正確識別的系統(tǒng)是非常困難的,而且也沒有必要。所有人臉識別系統(tǒng)都是在一定的約束條件進行的。所以有必要建立滿足不同需要的人臉數(shù)據(jù)庫。常用人臉數(shù)據(jù)庫如下:國外人臉數(shù)據(jù)庫的有FERET人臉數(shù)據(jù)庫, MIT人臉數(shù)據(jù)庫,YALE人臉數(shù)據(jù)庫,PIE人臉數(shù)據(jù)庫,ORL人臉數(shù)據(jù)庫,AR人臉數(shù)據(jù)庫和Essex人臉數(shù)據(jù)庫。FERET人臉數(shù)據(jù)庫是人臉識別中最常用的數(shù)據(jù)庫,包含多姿態(tài)和多光照的人臉灰度圖像,但其多為西方人臉圖像,每個人的人臉圖像變化較少。MIT人臉數(shù)據(jù)庫有麻省理工大學媒體實驗室建立,由16位志愿者的2592副多姿態(tài),多光
33、照和不同大小的圖像組成。PIE人臉數(shù)據(jù)庫有卡內(nèi)基梅隆大學建立,由68位志愿者的41368副不同姿態(tài),多光照和不同表情的圖像組成。ORL人臉數(shù)據(jù)庫由劍橋大學AT&T實驗室建立由40位志愿者的400幅圖像組成,其中部分志愿者的圖像還有姿態(tài),表情和光照的變化。由于其人臉變化模式較少,現(xiàn)已很少使用。AR人臉數(shù)據(jù)庫為西班牙巴塞羅那計算機視覺中心建立,由116人的3228幅圖像構成。采集是在嚴格控制攝像機參數(shù),光照變化,攝像機距離等條件下進行的。Essex人臉數(shù)據(jù)庫是英國埃塞克斯大學的人臉數(shù)據(jù)庫。任何人都可以下載它的人臉數(shù)據(jù)庫,但是你不能發(fā)布,打印,銷售或發(fā)行這些圖像。這個人臉數(shù)據(jù)庫由Libor Spea
34、cek博士主持的計算機視覺研究項目在維護。這個數(shù)據(jù)庫由faces94,faces95,faces96,grimace四個庫組成。這樣做的目的是為了增加難度。Faces96和grimace是這個數(shù)據(jù)庫最難識別的。它們的背景和比例是變化的,人臉表情是極度變化的。英國埃塞克斯大學計算機視覺研究項目鼓勵研究者公布使用這個數(shù)據(jù)庫取得人臉識別結(jié)果。我們在本文采用的是它的face94數(shù)據(jù)庫。faces94數(shù)據(jù)庫中人臉圖像是在受試者坐在距離相機固定位置,并要求講話的情況下采集而成。講話的目的是為了采集面部表情的變化。每個圖像的大小為180*200,圖像的背景是藍色的。有輕微的姿態(tài)變換,無光照變換。國內(nèi)人臉數(shù)據(jù)
35、庫有中科院計算技術研究所銀晨科技面向識別聯(lián)合實驗室建立的CASPEAL人臉數(shù)據(jù)庫。該數(shù)據(jù)庫是基于目前的人臉數(shù)據(jù)庫大多都較小或圖像變化因素單一,人臉圖像的多為西方人,其面部特征與東方人存在一定的差別,需要建立一個大規(guī)模,多因素的東方人臉數(shù)據(jù)庫的需求建立的,共采集了1040位志愿者(595名男性,445名女性)的99450幅圖像。該數(shù)據(jù)庫根據(jù)不同的變化因素又分為7種模式子庫。這7種變化因素為姿態(tài),表情,飾物,光照,背景,距離和時間跨度,其中以姿態(tài),表情,飾物和光照為主,故稱為PEAL(pose,expression,accessory和lighting的簡寫)。CASEPEALR1為CASEPEA
36、L的共享版,可以提供給研究人員用以研究使用。其中研究人員指的是研究生導師或其他固定職位的研究員,不包括學生。2.3 人臉圖像預處理一般,系統(tǒng)采集到的原始圖像都會受到各種各樣的噪聲的影響而失真。并且由于各種條件的限制,采集到的原始圖像不能直接進行使用,必須做預處理,即消除噪聲,校正失真,將圖像變化為標準形式。這樣才有利于穩(wěn)定的進行特征提取。常用的人臉預處理有:灰度變化,二值化,圖像銳化等。2.3.1 灰度變化人臉識別的研究常以灰度圖像為處理對象。因為彩色圖像的顏色信息常常受到復雜背景的影響。利用彩色圖像進行人臉識別存在較多缺陷,而灰度圖像為一種最簡單有效的對比增強方法。彩色圖像有紅綠藍三原色組合
37、而成,灰度圖像只含有亮度信息,并且灰度圖像的亮度為連續(xù)變化的,所以灰度圖像要對亮度值進行量化,為0-255,共256個等級。0為全黑,255為全亮。常用的經(jīng)驗公式為gray=0.39*R+0.5*G+0.11*B.常用變換的方法如下:線性變換:假設圖像為灰度變化范圍為,變換后的圖像為灰度變化范圍為,則它們之間關系為 (2-1)分段線性變換:假設圖像為灰度變化范圍為,變換后的圖像為,目標的灰度變化范圍為,想使灰度變化到,則對應關系為 (2-2)非線性變換:使用非線性函數(shù)作為映射函數(shù)如對數(shù)函數(shù),進行灰度變換。對數(shù)變換和指數(shù)變換分別為 (2-3) (2-4)其中a, b, c用來調(diào)整曲線的位置和形狀
38、。指數(shù)變換能對圖像的高灰度區(qū)以較大的拉伸。對數(shù)變換可以使圖像低灰度區(qū)有較大拉伸而高灰度區(qū)進行壓縮。對數(shù)變換可以使圖像灰度分布相匹配于人的視覺特性。2.3.2 二值化二值化是通過選取適當?shù)拈y值將灰度圖像的灰度值從0到255變換為只有0和255的黑白圖像。在人臉識別中二值化用來把人的頭發(fā),眼睛,臉的輪廓及背影與人臉的亮域分開。在圖像二值化過程中選擇合適的閥值非常重要。常用的圖像二值化選擇方法如下:整體閥值法:在二值化時候只使用一個全局閥值t。假設圖像為,灰度范圍為,t為和之間選擇的一個合適的灰度值,轉(zhuǎn)換后的圖像為,則轉(zhuǎn)換關系為 (2-5)局部閥值法:它是根據(jù)當前像素的灰度值和此像素周圍點局部灰度特
39、征值來共同決定閥值。動態(tài)閥值法:它的閥值不僅和該像素和周圍像素有關,還和該像素的坐標位置有關。整體閥值法適合圖像質(zhì)量比較好的情況,此時圖像在直方圖一般有兩個峰值。局部閥值法可以處理比較復雜的情況,但有些情況會發(fā)生失真。動態(tài)閥值法適應性和性能都比較好,實際中對于人臉識別常采用此法進行二值化。2.3.3 圖像銳化圖像銳化用于解決圖像提取,圖像傳輸及相關處理過程受到某些因素影響而變得模糊。圖像模糊是圖像遭受了平均或積分運算造成,可以通過對圖像進行逆運算來使圖像變得清晰。但是圖像銳化存在一個前提條件,圖像必須要有較高的信噪比,否則會造成信噪比更低,圖像噪聲增加比圖像信號更多。在實際中,一般先濾除噪聲后
40、在進行圖像銳化處理。常用的圖像銳化方法為拉普拉斯銳化。假設拉普拉斯算子為即 (2-6)離散數(shù)字圖像為,其一階偏導數(shù)為 (2-7)則其二階偏導數(shù)為 (2-8)所以 (2-9)對于擴算現(xiàn)象引起的人臉圖像模糊,可通過進行圖像銳化,其中k為擴算效應的相關系數(shù)。k值要選擇合理,若k過大,圖像輪廓邊緣會過沖。若k過小會導致銳化效果不明顯。2.4 本章小結(jié)本小結(jié)主要介紹了常用的人臉圖像采集方式,國內(nèi)外常用的人臉數(shù)據(jù)庫和常用的人臉預處理有:灰度變化,二值化,圖像銳化。3 人臉識別3.1 PCA算法理論主成分分析(Principal Component Analysis)是一種掌握事物主要矛盾的統(tǒng)計分析方法,它
41、可以從多元事物中解析出主要影響因素,揭示事物的本質(zhì),簡化復雜的問題。計算主成分的目的是將高維數(shù)據(jù)投影到較低維空間。給定n個變量的m個觀察值,形成一個n*m的數(shù)據(jù)矩陣,n通常比較大。對于一個由多個變量描述的復雜事物,認識難度會很大,于是我們可以抓住事物主要方面進行重點分析,如果事物的主要方面剛好體現(xiàn)在幾個主要變量上,那么我們只需要將體現(xiàn)事物主要方面的較少的幾個主要變量分離出來,對此進行詳細分析。但是在一般情況下,我們并不能直接找出這樣的關鍵變量。這時我們可以用原有變量的線性組合來表示事物的主要方面,PCA就是這樣一種分析方法。PCA主要用于數(shù)據(jù)降維,對于由一系列特征組成的多維向量,其中某些元素本
42、身沒有區(qū)分性,比如某個元素在所有的樣本中都相等,或者彼此差距不大,那么這個元素本身就沒有區(qū)分性,如果用它做特征來區(qū)分,貢獻會非常小。所以我們的目的是找那些變化大的元素,即方差大的那些維,而去除掉那些變化不大的維,從而使特征留下的都是“精品”,使得計算量也相應變小。對于一個k維的特征來說,相當于它的每一維特征與其他維都是正交的(相當于在多維坐標系中,坐標軸都是垂直的),那么我們可以變化這些維的坐標系,從而使這個特征在某些維上方差大,而在某些維上方差很小。例如,一個45度傾斜的橢圓,在第一坐標系,如果按照x,y坐標來投影,這些點的x和y的屬性很難用于區(qū)分他們,因為他們在x,y軸上坐標變化的方差都差
43、不多,我們無法根據(jù)這個點的某個x屬性或y屬性來判斷這個點是哪個,而如果將坐標軸旋轉(zhuǎn),以橢圓長軸為x軸,則橢圓在長軸上的分布比較長,方差大,而在短軸上的分布短,方差小,所以可以考慮只保留這些點的長軸屬性,來區(qū)分橢圓上的點,這樣區(qū)分性比x,y軸的方法要好! 所以我們的做法就是求得一個k維特征的投影矩陣,這個投影矩陣可以將特征從高維降到低維。投影矩陣也可以叫做變換矩陣。新的低維特征必須每個維都正交,特征向量都是正交的。通過求樣本矩陣的協(xié)方差矩陣,然后求出協(xié)方差矩陣的特征向量,這些特征向量就可以構成這個投影矩陣了。特征向量的選擇取決于協(xié)方差矩陣的特征值的大小。經(jīng)過PCA分析,一個多維變量的復雜問題被簡
44、化為低維空間的簡單問題。PCA的目標是尋找r(rn)個新變量,使它們反映事物的主要特征,壓縮原有數(shù)據(jù)矩陣的規(guī)模。每個新變量是原有變量的線性組合,體現(xiàn)原有變量的綜合效果,具有一定的實際含義。這r個新變量稱為“主成分”,它們可以在很大程度上反映原來n個變量的影響,并且這些新變量是互不相關的,也是正交的。通過主成分分析,可以壓縮數(shù)據(jù)空間,將多元數(shù)據(jù)的特征在低維空間里直觀地表示出來。舉一個例子:對于一個訓練集,100個對象模板,特征是10維,那么我們可以建立一個10*100的矩陣作為樣本。求這個樣本的協(xié)方差矩陣,得到一個10*10的協(xié)方差矩陣,然后求出這個協(xié)方差矩陣的特征值和特征向量,應該有10個特征
45、值和10個特征向量,我們根據(jù)特征值的大小,取前四個特征值所對應的特征向量,構成一個10*4(投影矩陣)的矩陣,這個矩陣就是我們要求的特征矩陣,100*10的樣本矩陣乘以這個10*4的特征矩陣,就得到了一個100*4的新的降維之后的樣本矩陣,每個特征的維數(shù)下降了。當給定一個測試的特征集之后,比如1*10維的特征,乘以上面得到的10*4的特征矩陣,便可以得到一個1*4的特征,用這個特征去分類。所以做PCA實際上是求得這個投影矩陣,用高維的特征乘以這個投影矩陣,便可以將高維特征的維數(shù)下降到指定的維數(shù)。3.2 PCA人臉識別算法的實現(xiàn)3.2.1 K-L變換PCA方法是由Turk和Pentlad提出來的
46、,它的基礎就是Karhunen-Loeve變換(簡稱K-L變換),是一種常用的正交變換。首先對K-L變換作一個簡單介紹:假設X為n維的隨機變量,X可以用n個基向量的加權和來表示:X= ii (3-1)式中:i是加權系數(shù),i是基向量,此式可以用矩陣的形式表示:X =(1 ,2,3 ,n)( 1, 2 , n)= (3-2)系數(shù)向量為:=TX (3-3)綜上所述,K-L展開式的系數(shù)可用下列步驟求出:求隨機向量X的自相關矩陣R=EXTX,由于沒有類別信息的樣本集的均值向量,常常沒有意義,所以也可以把數(shù)據(jù)的協(xié)方差矩陣=E(x-)(x-)T作為K-L坐標系的產(chǎn)生矩陣,這里是總體均值向量。求出自相關矩陣或
47、者協(xié)方差矩陣R的本征值i和本征向量i =(1 ,2,3 ,n)展開式系數(shù)即為=TXK-L變換的實質(zhì)是建立一個新的坐標系,將一個物體主軸沿特征矢量對齊的轉(zhuǎn)變換,這個變換解除了原有數(shù)據(jù)向量的各個分量之間相關性,從而有可能去掉那些帶有較少信息的坐標系以達到降低特征空間維數(shù)的目的。3.2.2 SVD 定理人臉訓練圖像的協(xié)方差矩陣為,其中人臉訓練樣本為,維度為,則協(xié)方差矩陣C的維度為。這就出現(xiàn)問題,C的維度過高,在實際中直接計算它的特征值和特征向量非常困難。因此,本文使用SVD定理(奇異值分解定理)來解決這個問題。假設B為維秩為p的矩陣,則存在兩個正交矩陣和一個對角矩陣:正交矩陣為 (3-4) (3-5
48、)其中 (3-6) (3-7)對角矩陣為 則可以得到,而且和有共同的非零特征值,和分別為和對應特征值的正交特征向量。由上述定理可以得到 (3-8)則可以由協(xié)方差矩陣,構造出矩陣,從而容易求出L的特征值和特征向量,再根據(jù)上述式可以求得協(xié)方差C的特征值和特征向量。3.2.3 PCA算法在人臉識別中PCA方法是一種基于整幅人臉圖像的識別算法用于降維。一個NN的二維臉部圖片可以看成是N的一個一維向量,一張11292的圖片可以看成是一個10304維的向量,同時也可以看成是一個10304維空間中一點。圖片映射到這個巨大的空間后,由于人臉的構造相對來說比較接近,因此,可以用一個相應的低維子空間來表示。我們把
49、這個子空間叫做“臉空間”。PCA的主要思想就是找到能夠最好地說明圖片在圖片空間中的分布情況的那些向量。這些向量能夠定義“臉空間”,每個向量的長度為N,描述一張NN的圖片,并且是原始臉部圖片的一個線性組合。對于一副M*N的人臉圖像,將其每列相連構成一個大小為D=M*N維的列向量。D就是人臉圖像的維數(shù),也即是圖像空間的維數(shù)。設n是訓練樣本的數(shù)目;Xj表示第j幅人臉圖像形成的人臉向量,則所需樣本的協(xié)方差矩陣為:Sr= (3-9)其中u為訓練樣本的平均圖像向量:u = (3-10)令A=x1-u x2-uxn-u,則有Sr=AAT,其維數(shù)為D*D。根據(jù)K-L變換原理,需要求得的新坐標系由矩陣AAT的非
50、零特征值所對應得特征向量組成。直接計算的計算量比較大,所以采用奇異值分解(SVD)定理,通過求解ATA的特征值和特征向量來獲得AAT的特征值和特征向量。依據(jù)SVD定理,令li(i=1,2,r)為矩陣ATA的r個非零特征值,vi為ATA對應于li的特征向量,則AAT的正交歸一特征向量ui為:(i=1,2,r) (3-11)則特征臉空間為:w=(u1 ,u2 ur,)3.2.4 人臉識別過程人臉識別過程分為訓練和測試兩個階段。在訓練階段,主要是提取數(shù)據(jù)庫人臉圖像的特征,并形成特征庫。在測試階段,主要是提取待識別圖像的特征和計算提取的特征和特征庫中特征之間的距離測度,并輸出最小距離測度對應的人臉圖像
51、作為結(jié)果。具體步驟如下:訓練階段將規(guī)范化的圖像矩陣A中的每一列向量投影到特征子空間,形成特征庫。測試階段假設測試人臉圖像為Y,在人臉識別前,先對其進行標準化,即。把標準化后的人臉圖像向特征子空間進行投影得到向量。本文使用最近領法分類器歐幾里德距離進行判決分類。測試圖像與每個人臉圖像間的距離為 (k=1,2,P),并將最小距離對應的訓練圖像作為測試圖像的匹配圖像。3.3 程序運行效果訓練的人臉數(shù)據(jù)庫為下列20張人臉圖像圖3-1 訓練人臉數(shù)據(jù)庫讀入待識別的人臉圖像圖3-2 讀入帶識別人臉圖像輸出識別結(jié)果圖3-3 輸出識別結(jié)果3.4 程序代碼3.4.1 代碼類關系圖3-4 代碼類關系圖FacePca
52、類主要實現(xiàn)PCA人臉的訓練計算出人臉特征子空間FaceRec類主要實現(xiàn)對帶識別人臉進行計算歐幾里得距離進行識別MainWindow類主要實現(xiàn)界面和帶識別人臉圖像的錄入3.4.2 代碼的OpenCV相關使用OpenCV的圖像基本容器Mat(數(shù)據(jù)矩陣)進行圖像基本操作和矩陣變換使用OpenCV的cvSVD接口執(zhí)行矩陣的奇異值分解使用OpenCV的cvNorm接口計算計算出歐幾里得距離3.4.3 關鍵函數(shù)代碼FacePca主要方法/讀取訓練圖像數(shù)據(jù)m_trainDatavoid FacePca:SetTrainData(const char*fileName, const int trainNumb
53、er)cv:Mat trainData(IMAGE_SIZE,trainNumber,CV_32FC1);for(int i=0; i trainNumber; i+)std:string imageFileName(fileName);char chNum10;_itoa(i+1,chNum,10);imageFileName.append(chNum);imageFileName += .bmp;/創(chuàng)建灰度圖像大小是*112的,跟訓練圖像大小一致IplImage *trainImage = cvCreateImage(cvSize(IMAGE_WIDTH,IMAGE_HEIGHT),IPL
54、_DEPTH_32F,1);/讀入訓練圖像,存到trainImage trainImage = cvLoadImage(imageFileName.data(),0);int j=0;for (size_t row=0; row height; row+)/獲得灰度值數(shù)據(jù)指針uchar* ptr = (uchar*)(trainImage-imageData) + row * (trainImage-width);for (size_t cols=0; cols width; cols+)/*讀出gray的灰度值存到Data里*/float k = ptrcols;trainData.at(j
55、,i) = k;j+;/釋放灰度圖內(nèi)存cvReleaseImage(&trainImage);m_trainData = trainData;m_trainNumber = trainNumber;/計算平均圖像向量m_dataMeanvoid FacePca:CalDataMean()/矩陣Data的行平均cv:Mat dataMean(IMAGE_SIZE, 1,CV_32FC1);for(int i = 0; i IMAGE_SIZE; i+)float sum = 0;for(int j = 0;j m_trainNumber;j+)sum += m_trainData.at(i,j)
56、;sum = sum / m_trainNumber;dataMean.at(i,0) = sum;m_dataMean = dataMean;/計算協(xié)方差矩陣 通過SVD定理求解特征值和特征向量 計算出特征臉空間void FacePca:CalEigenFace()/求矩陣Data跟矩陣Data_mean的差值cv:Mat Data_normal(IMAGE_SIZE, m_trainNumber,CV_32FC1);for(int i=0;i IMAGE_SIZE;i+)for(int j=0;j m_trainNumber;j+)Data_normal.at(i,j)= m_trainD
57、ata.at(i,j)- m_dataMean.at(i,0);/求矩陣Data_normal的協(xié)方差矩陣Data_covcv:Mat Data_cov(m_trainNumber,m_trainNumber,CV_32FC1);Data_cov = Data_normal.t()*Data_normal;/SVD定理求解矩陣V為矩陣Data_cov的特征向量矩陣矩陣D為矩陣Data_cov的特征值對角矩陣cv:Mat D(m_trainNumber,m_trainNumber,CV_32FC1), V(m_trainNumber,m_trainNumber,CV_32FC1);cvSVD(&
58、CvMat(Data_cov), &CvMat(D), NULL, &CvMat(V);int count=0;for(int i = 0;i D.cols; i+)if( D.at (i,i) 1)/非特征值的數(shù)量count+;cv:Mat tem_V( m_trainNumber,count,CV_32FC1 ), tem_D( count,1,CV_32FC1 );for(int i = 0,k = 0;i V.cols; i+)if(D.at (i,i) 1) V.col(i).copyTo(tem_V.col(k);tem_D.at (k,0)= D.at (i,i);k+;/求特征
59、子空間cv:Mat eigenFace(IMAGE_SIZE,tem_V.cols,CV_32FC1);eigenFace = Data_normal * tem_V;for(int i=0;item_V.cols;i+)for(int j=0;jIMAGE_SIZE;j+)eigenFace.at(j,i) = eigenFace.at(j,i) / sqrt(tem_D.at(i,0);m_eigenFace = eigenFace;/去中心的圖像投影轉(zhuǎn)化為臉空間cv:Mat projectedImage(tem_V.cols,m_trainNumber,CV_32FC1);project
60、edImage = eigenFace.t()* Data_normal;m_projectedImage = projectedImage;FaceRec主要方法/讀入帶識別圖像m_recImagevoid FaceRec:InputRecImage( const char* fileName)/創(chuàng)建測試圖像大小是*112的IplImage *testImage=cvCreateImage(cvSize(IMAGE_WIDTH,IMAGE_HEIGHT),IPL_DEPTH_32F,1);/導入測試圖像testImage=cvLoadImage(fileName,0);cv:Mat recI
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年西瓜買賣詳細協(xié)議模板
- 2024年預付款墊資協(xié)議格式草案
- 地質(zhì)勘查工作協(xié)議2024
- 二手房交易北京協(xié)議樣式2024年
- 2024年精裝地暖施工協(xié)議范本
- 2024年國內(nèi)集裝箱運輸協(xié)議樣本
- 2024商業(yè)地產(chǎn)續(xù)租協(xié)議范本
- 2024年度農(nóng)產(chǎn)品專項采購協(xié)議樣本
- 2024年學校周邊商業(yè)租賃協(xié)議樣本
- 2024年借款居間服務協(xié)議模板2
- 2024年官方獸醫(yī)考試題庫(判斷題)
- 職業(yè)健康安全培訓課件(共32張課件)
- 2024年全國統(tǒng)考“營養(yǎng)師或營養(yǎng)指導員”相關知識考前試題庫與參考答案
- 2024年07月首都博物館2024年招考17名合同制用工人員筆試近年2018-2023典型考題及考點剖析附答案帶詳解
- 2024CSCO結(jié)直腸癌診療指南解讀
- 大學生畢業(yè)論文寫作教程(高校畢業(yè)生論文寫作指課程導)全套教學課件
- 2024年遼寧鐵道職業(yè)技術學院高職單招(英語/數(shù)學/語文)筆試歷年參考題庫含答案解析
- 主播藝人入職面試信息登記表
- 2023年學習興稅(網(wǎng)絡信息)知識考試復習題庫(含答案)
- 圖形創(chuàng)意(第二版)教材課件匯總完整版ppt全套課件最全教學教程整本書電子教案全書教案合集最新課件匯編
- 國家開放大學《管理英語4》章節(jié)測試參考答案
評論
0/150
提交評論