畢業(yè)設(shè)計人臉識別算法研究與實(shí)現(xiàn) 附完整源碼
《畢業(yè)設(shè)計人臉識別算法研究與實(shí)現(xiàn) 附完整源碼》由會員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計人臉識別算法研究與實(shí)現(xiàn) 附完整源碼(26頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 河北農(nóng)業(yè)大學(xué)信息學(xué)院 本科畢業(yè)論文 題 目: 人臉識別算法研究與實(shí)現(xiàn) 學(xué) 院: 信息科學(xué)與技術(shù)學(xué)院 專 業(yè): 電子信息科學(xué)與技術(shù) 學(xué)生姓名: 學(xué) 號: 指導(dǎo)教師: 職 稱: 副教授 提交日期: 2013 年 6 月 1
2、日 答辯日期: 2013 年 6 月 4 日 中 國 河北 2013 年 5 月 摘要 人臉識別技術(shù),作為目前模式識別領(lǐng)域研究的熱點(diǎn)也是難點(diǎn)之一,其最早提出可以追溯到1888年”。然而,到目前為止,由于人臉識別問題自身的復(fù)雜性,使得雖然有眾多科學(xué)研究人員潛心研究多年,也做出了許多的成果,但離徹底解決并達(dá)到實(shí)用,仍舊有很多關(guān)鍵性的問題需要解決。 本文對人臉識別做了一定的研究。論文首先介紹了人臉識別的背景、研究范圍以及方法,對人臉識別領(lǐng)域的一些理論方法作了總體的介紹。本文中所采用的人臉識別方法是比較經(jīng)典的PCA(Principle Component Analysis)主成
3、分分析。主要包括:結(jié)合人臉庫對人臉識別的預(yù)處理方法作了較為詳細(xì)的介紹;介紹了PCA人臉識別的方法;實(shí)現(xiàn)了一個基于PCA的實(shí)時人臉檢測識別原型系統(tǒng)。 關(guān)鍵字:MATLAB、圖形用戶界面GUI、人臉識別、PCA ABSTRACT Face recognition technology, as one of the hotspot in research of pattern recognition is also difficult, its first suggested dates back to 1888. "so far, however, because of th
4、e complexity of the face recognition problem itself, that although there are many scientific researchers studying for many years, has made many achievements, but from the resolve and achieve practical, there are still many key problems need to solve. In this paper, the face recognition to do
5、some research. Paper first introduces the background of face recognition, research scope and method, to some theoretical methods in the field of face recognition has made the overall introduction. Face recognition methods used in this article is the classical PCA (Principle Component Analysis), prin
6、cipal Component Analysis. Mainly includes: combining face library pretreatment method of face recognition has made the detailed introduction; This paper introduces the methods of PCA face recognition; Implements a real-time face detection prototype system based on PCA. keywords: MATLAB, graph
7、ical user interface GUI, face recognition, PCA 目錄 第一章 緒論 2 1.1 概述 2 1.1.1 介紹 2 1.2 課題研究的背景和意義 3 1.2.1研究的背景 3 1.2.2 研究的意義 3 1.2.2.1 重要的學(xué)術(shù)價值 3 1.2.2.2 很好的應(yīng)用前景 3 1.3入臉識別研究的現(xiàn)狀與困難 4 1.3.1研究的現(xiàn)狀 4 1.3.2 存在的主要困難 4 1.4 論文的內(nèi)容及安排 5 第二章 人臉識別實(shí)現(xiàn)所使用的工具 5 2.1 Matlab簡介 5 2.2 圖形用戶界面G
8、UI 7 2.2.1 圖形用戶界面GUI簡介 7 2.2.2 圖形用戶界面 GUI 實(shí)例 9 2.2.3 PCA 算法 12 2.3 本章小結(jié) 12 第三章 人臉識別PCA算法及其功能實(shí)現(xiàn) 13 3.1 PCA算法分析 13 3.1.1 主成分的一般定義 13 3.1.2 主成分的性質(zhì) 13 3.1.3 主成分?jǐn)?shù)目的選取 14 3.2 PCA算法功能實(shí)現(xiàn) 14 3.2.1 人臉空間的建立 14 3.2.2 特征向量的選取 15 3.2.3 人臉識別 15 第四章 人臉識別算法測試 15 4.1 實(shí)驗測試流程 15 第五章 個人總結(jié) 18 致謝 18 參考文獻(xiàn)
9、 19 附錄--matlab 源碼 20 1 第一章 緒論 1.1 概述 1.1.1 介紹 隨著社會的發(fā)展以及技術(shù)的進(jìn)步,尤其是近年內(nèi)計算機(jī)的軟硬件性能的飛速提升,各方面對快速高效的自動身份驗證的要求日益迫切。生物識別技術(shù)在科研領(lǐng)域取得了極大的重視和發(fā)展。由于生物特征是人的內(nèi)在屬性,具有很強(qiáng)的自身穩(wěn)定性和個體差異性,因此是身份驗證的最理想依據(jù)“1。其中,利用人臉特征進(jìn)行身份驗證又是最自然直接的手段,與指紋、虹膜、掌紋等其他人體生物特征識別系統(tǒng)相比,人臉識別系統(tǒng)更加友好,方便,易于為用戶所接受,有廣闊的應(yīng)用領(lǐng)域。例如:如:公安布控監(jiān)控、監(jiān)獄監(jiān)控、司法認(rèn)證、民航安檢、口岸
10、出入控制、海關(guān)身份驗證、銀行密押、智能身份證、智能門禁、智能視頻監(jiān)控、智能出入控制、司機(jī)駕照驗證、各類銀行卡、金融卡、信用卡、儲蓄卡持卡人的身份驗證,社會保險身份驗證等多個方面,還可以應(yīng)用到醫(yī)療和視頻會議等方面,表現(xiàn)出其強(qiáng)大的生命力。所謂人臉識別?!?3(FaceRecognition)就是利用計算機(jī)分析人臉圖象,從中提取有效的識別信息,用來辨別身份的一門技術(shù)。即對已知人臉進(jìn)行標(biāo)準(zhǔn)化處理后,通過某種方法和數(shù)據(jù)庫中的人臉標(biāo)本進(jìn)行匹配,尋找?guī)熘袑?yīng)人臉及該人臉相關(guān)信息。 由于生物特征是人的內(nèi)在屬性,具有很強(qiáng)的自身穩(wěn)定性和個體差異性,因此是身份驗證的最理想依據(jù)“1。其中,利用人臉特征進(jìn)
11、行身份驗證又是最自然直接的手段,與指紋、虹膜、掌紋等其他人體生物特征識別系統(tǒng)相比,人臉識別系統(tǒng)更加友好,方便,易于為用戶所接受,有廣闊的應(yīng)用領(lǐng)域。1。例如:如:公安布控監(jiān)控、監(jiān)獄監(jiān)控、司法認(rèn)證、民航安檢、口岸出入控制、海關(guān)身份驗證、銀行密押、智能身份證、智能門禁、智能視頻監(jiān)控、智能出入控制、司機(jī)駕照驗證、各類銀行卡、金融卡、信用卡、儲蓄卡持卡人的身份驗證,社會保險身份驗證等多個方面,還可以應(yīng)用到醫(yī)療和視頻會議等方面,表現(xiàn)出其強(qiáng)大的生命力。 從20世紀(jì)六十年代末到現(xiàn)在,人臉識別的發(fā)展經(jīng)歷了正面人臉識別,基于多姿態(tài)和表情的人臉識別,動態(tài)跟蹤人臉識別和三維人臉識別四個階段“1。文獻(xiàn)?!笔菍?/p>
12、年來人臉識別取得的成果進(jìn)行了總結(jié)?,F(xiàn)在,全世界從事人臉識別研究的科研機(jī)構(gòu)很多”1,國外的大學(xué)一般都有computer Vision研究組,并有從事人臉圖象處理課題的研究小組。其中著名的大學(xué)包括MIT,CMU等。國內(nèi)的清華大學(xué)、浙江大學(xué)、哈爾濱工業(yè)大學(xué)和中國科學(xué)院的一些研究機(jī)構(gòu)等都從事這方面的研究。同時也出現(xiàn)了一批供人臉識別相關(guān)產(chǎn)品的公司。有些國外公司開發(fā)的一些人臉識別的產(chǎn)品已經(jīng)被安全機(jī)構(gòu)使用。 1.2 課題研究的背景和意義 1.2.1研究的背景 自70年代以來.隨著人工智能技術(shù)的興起.以及人類視覺研究的進(jìn)展.人們逐漸對人臉圖像的機(jī)器識別投入很大的熱情,并形成了一個人臉圖像識別研究領(lǐng)
13、域,.這一領(lǐng)域除了它的重大理論價值外,也極具實(shí)用價值。 在進(jìn)行人工智能的研究中,人們一直想做的事情就是讓機(jī)器具有像人類一樣的思考能力,以及識別事物、處理事物的能力,因此從解剖學(xué)、心理學(xué)、行為感知學(xué)等各個角度來探求人類的思維機(jī)制、以及感知事物、處理事物的機(jī)制,并努力將這些機(jī)制用于實(shí)踐,如各種智能機(jī)器人的研制。人臉圖像的機(jī)器識別研究就是在這種背景下興起的,因為人們發(fā)現(xiàn)許多對于人類而言可以輕易做到的事情,而讓機(jī)器來實(shí)現(xiàn)卻很難,如人臉圖像的識別,語音識別,自然語言理解等。如果能夠開發(fā)出具有像人類一樣的機(jī)器識別機(jī)制,就能夠逐步地了解人類是如何存儲信息,并進(jìn)行處理的,從而最終了解人類的思維機(jī)制。 同時
14、,進(jìn)行人臉圖像識別研究也具有很大的使用價依。如同人的指紋一樣,人臉也具有唯一性,也可用來鑒別一個人的身份?,F(xiàn)在己有實(shí)用的計算機(jī)自動指紋識別系統(tǒng)面世,并在安檢等部門得到應(yīng)用,但還沒有通用成熟的人臉自動識別系統(tǒng)出現(xiàn)。人臉圖像的自動識別系統(tǒng)較之指紋識別系統(tǒng)、DNA鑒定等更具方便性,因為它取樣方便,可以不接觸目標(biāo)就進(jìn)行識別,從而開發(fā)研究的實(shí)際意義更大。并且與指紋圖像不同的是,人臉圖像受很多因素的干擾:人臉表情的多樣性;以及外在的成像過程中的光照,圖像尺寸,旋轉(zhuǎn),姿勢變化等。使得同一個人,在不同的環(huán)境下拍攝所得到的人臉圖像不同,有時更會有很大的差別,給識別帶來很大難度。因此在各種干擾條件下實(shí)現(xiàn)人臉圖像的
15、識別,也就更具有挑戰(zhàn)性。國外對于人臉圖像識別的研究較早,現(xiàn)己有實(shí)用系統(tǒng)面世,只是對于成像條件要求較苛刻,應(yīng)用范圍也就較窄,國內(nèi)也有許多科研機(jī)構(gòu)從事這方而的研究,并己取得許多成果。 1.2.2 研究的意義 1.2.2.1 重要的學(xué)術(shù)價值 目前人臉識別的研究工作牽涉到模式識別、圖像處理、計算機(jī)視覺、生理學(xué)、心理學(xué)、以及認(rèn)知科學(xué)和神經(jīng)網(wǎng)絡(luò)等多個領(lǐng)域的諸多知識,并與基于其它生物特征的身份鑒別方法以及計算機(jī)人機(jī)感知交互領(lǐng)域都有密切聯(lián)系。因此人臉識別研究對于開拓新興技術(shù)領(lǐng)域,促進(jìn)跨領(lǐng)域的多學(xué)科綜合發(fā)展具有重要的科學(xué)意義。 1.2.2.2 很好的應(yīng)用前景 人臉識別已成為計算機(jī)視覺及相關(guān)領(lǐng)域中的
16、關(guān)鍵技術(shù),在身份驗證,刑偵破案,入口控制,視頻監(jiān)視,機(jī)器人智能化和醫(yī)學(xué)等方面具有廣闊的應(yīng)用前景和商業(yè)價值。 近年來,人臉識別技術(shù)研究非?;钴S,除了基于KL變換的特征臉方法與以奇異值特征為代表的代數(shù)特征方法取得了新進(jìn)展外,人工神經(jīng)網(wǎng)絡(luò)、小波交換技術(shù)在人臉識別研究中都得到了很廣泛的應(yīng)用。而且出現(xiàn)了不少人臉識別的新方法。下面將介紹人臉識別研究的主要內(nèi)容和方法。 1.3入臉識別研究的現(xiàn)狀與困難 1.3.1研究的現(xiàn)狀 目前,國內(nèi)、外的人臉識別的方法多種多樣,并且不斷有新的研究成果出現(xiàn)。但是,由于人臉識別問題巨大的復(fù)雜性,要建立一個能夠完全自動完成人臉識別任務(wù)的計算機(jī)系統(tǒng)難度是相當(dāng)大的
17、,這不僅涉及到數(shù)字圖像處理,而且還涉及到計算機(jī)視覺,人工智能和計算機(jī)網(wǎng)絡(luò)及通訊等的多個學(xué)科領(lǐng)域的廣泛知識。解決特定環(huán)境下或某種應(yīng)用背景下的人臉識別問題,仍將是該領(lǐng)域研究的主要課題。 1.3.2 存在的主要困難 盡管已經(jīng)取得了很多的研究成果,但以下幾個問題一直會是今后研究工作的主要難點(diǎn)“’2“”所在,將極大影響人臉識別走向?qū)嵱没? 1、人臉本身的特點(diǎn) 一方面是由于人臉姿態(tài)的多樣性,在自然條件下獲得的人臉圖象并不總是正面的,人臉的偏轉(zhuǎn)或俯仰會造成面部信息的部分缺失,給精確提取人臉的特征造成一定程度的困難;另一方面是人臉是一個柔性體而不是剛體,并且人臉表情豐富且表情的變化細(xì)微
18、而復(fù)雜。因此,建立人臉表情模型和情緒分類,把人臉表情描述同面部特征的變 化聯(lián)系起來,利用計算機(jī)進(jìn)行抽象的概括也是一個重要的問題。 2、環(huán)境的影響 由于受到旋轉(zhuǎn)、距離、尺度,光照,光源方向等不確定因素影響,人臉獲取系統(tǒng)取得的人臉圖像將表現(xiàn)出非常復(fù)雜的模式。光照變化的環(huán)境下,每個像素的亮度值還依賴于環(huán)境中的各種因素:光源的位置、顏色和亮度,周圍物體的影響。目前許多識別方法對光照條件有著不同程度的依賴,過亮、過暗或偏光現(xiàn)象的存在都可能導(dǎo)致識別的急劇下降。因此,對人臉圖象進(jìn)行特征提取和分類之前一般要作預(yù)處理。 3、計算機(jī)本身的限制 三維人臉投影在二維的圖像上,雖然有信息的損失
19、,但仍是一種復(fù)雜的具有非常高維數(shù)的視覺信息,包含了大量的像素數(shù)據(jù),并且每一像素都攜帶了大量的信息。如何利用計算機(jī)正確處理巨大的信息量,同時,保證人臉識別系統(tǒng)的實(shí)時性要求也是計算機(jī)研究的主要難點(diǎn)之一。 1.4 論文的內(nèi)容及安排 第一章即本章主要介紹人臉識別的前景和發(fā)展方向以及在現(xiàn)實(shí)生活中的應(yīng)用,同時也講解了在實(shí)際研究中仍存在的一些問題。 主要介紹人臉識別系統(tǒng)中所用到的仿真軟件Matlab、Matlab圖像處理工具GUI、PCA算法。分別介紹了各自的簡介和一些典型的算法實(shí)例介紹。 第三章著重介紹了PCA算法在人臉識別上的應(yīng)用和功能實(shí)現(xiàn)。PCA算法應(yīng)用中主成分的一般定義、主成分的性質(zhì)、主
20、成分?jǐn)?shù)目的選取,以及PCA算法功能實(shí)現(xiàn)步驟:人臉空間的建立、特征向量的選取和人臉識別。 第四章是將已經(jīng)編寫好的程序代碼在PC機(jī)上運(yùn)行,選擇測試圖片與人臉庫進(jìn)行識別,最終計算準(zhǔn)確率以進(jìn)一步改進(jìn)算法。最后總結(jié)了全文的工作并對以后的需要進(jìn)一步研究的問題進(jìn)行了展望。 第五章是對整個人臉識別研究的總結(jié)以及今后的研究方向。 第二章 人臉識別實(shí)現(xiàn)所使用的工具 2.1 Matlab簡介 MATLAB是由美國mathworks公司發(fā)布的主要面對科學(xué)計算、可視化以及交互式程序設(shè)計的高科技計算環(huán)境。它將數(shù)值分析、矩陣計算、科學(xué)數(shù)據(jù)可視化以及非線性動態(tài)系統(tǒng)的建模和仿真等諸多強(qiáng)大功能集成在一個易于使用的視窗環(huán)
21、境中,為科學(xué)研究、工程設(shè)計以及必須進(jìn)行有效數(shù)值計算的眾多科學(xué)領(lǐng)域提供了一種全面的解決方案,并在很大程度上擺脫了傳統(tǒng)非交互式程序設(shè)計語言(如C、Fortran)的編輯模式,代表了當(dāng)今國際科學(xué)計算軟件的先進(jìn)水平。 MATLAB的優(yōu)勢: 1) 高效的數(shù)值計算及符號計算功能,能使用戶從繁雜的數(shù)學(xué)運(yùn)算分析中解脫出來; 2) 具有完備的圖形處理功能,實(shí)現(xiàn)計算結(jié)果和編程的可視化; 3) 友好的用戶界面及接近數(shù)學(xué)表達(dá)式的自然化語言,使學(xué)者易于學(xué)習(xí)和掌握; 4) 功能豐富的應(yīng)用工具箱(如信號處理工具箱、通信工具箱等) ,為用戶提供了大量方便實(shí)用的處理工具。 編程環(huán)境: MATLAB由一系列工具組成
22、。這些工具方便用戶使用MATLAB的函數(shù)和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調(diào)試器、路徑搜索和用于用戶瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級,MATLAB的用戶界面也越來越精致,更加接近Windows的標(biāo)準(zhǔn)界面,人機(jī)交互性更強(qiáng),操作更簡單。而且新版本的MATLAB提供了完整的聯(lián)機(jī)查詢、幫助系統(tǒng),極大的方便了用戶的使用。簡單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過編譯就可以直接運(yùn)行,而且能夠及時地報告出現(xiàn)的錯誤及進(jìn)行出錯原因分析。 簡單易用: Matlab是一個高級的矩陣/陣列語言,
23、它包含控制語句、函數(shù)、數(shù)據(jù)結(jié)構(gòu)、輸入和輸出和面向?qū)ο缶幊烫攸c(diǎn)。用戶可以在命令窗口中將輸入語句與執(zhí)行命令同步,也可以先編寫好一個較大的復(fù)雜的應(yīng)用程序(M文件)后再一起運(yùn)行。新版本的MATLAB語言是基于最為流行的C++語言基礎(chǔ)上的,因此語法特征與C++語言極為相似,而且更加簡單,更加符合科技人員對數(shù)學(xué)表達(dá)式的書寫格式。使之更利于非計算機(jī)專業(yè)的科技人員使用。而且這種語言可移植性好、可拓展性極強(qiáng),這也是MATLAB能夠深入到科學(xué)研究及工程計算各個領(lǐng)域的重要原因。 強(qiáng)處理能力: MATLAB是一個包含大量計算算法的集合。其擁有600多個工程中要用到的數(shù)學(xué)運(yùn)算函數(shù),可以方便的實(shí)現(xiàn)用戶所需的各種計算功
24、能。函數(shù)中所使用的算法都是科研和工程計算中的最新研究成果,而前經(jīng)過了各種優(yōu)化和容錯處理。在通常情況下,可以用它來代替底層編程語言,如C和C++ 。在計算要求相同的情況下,使用MATLAB的編程工作量會大大減少。MATLAB的這些函數(shù)集包括從最簡單最基本的函數(shù)到諸如矩陣,特征向量、快速傅立葉變換的復(fù)雜函數(shù)。函數(shù)所能解決的問題其大致包括矩陣運(yùn)算和線性方程組的求解、微分方程及偏微分方程的組的求解、符號運(yùn)算、傅立葉變換和數(shù)據(jù)的統(tǒng)計分析、工程中的優(yōu)化問題、稀疏矩陣運(yùn)算、復(fù)數(shù)的各種運(yùn)算、三角函數(shù)和其他初等數(shù)學(xué)運(yùn)算、多維數(shù)組操作以及建模動態(tài)仿真等。 圖形處理: MATLAB自產(chǎn)生之日起就具有方便的數(shù)據(jù)可
25、視化功能,以將向量和矩陣用圖形表現(xiàn)出來,并且可以對圖形進(jìn)行標(biāo)注和打印。高層次的作圖包括二維和三維的可視化、圖象處理、動畫和表達(dá)式作圖??捎糜诳茖W(xué)計算和工程繪圖。新版本的MATLAB對整個圖形處理功能作了很大的改進(jìn)和完善,使它不僅在一般數(shù)據(jù)可視化軟件都具有的功能(例如二維曲線和三維曲面的繪制和處理等)方面更加完善,而且對于一些其他軟件所沒有的功能(例如圖形的光照處理、色度處理以及四維數(shù)據(jù)的表現(xiàn)等),MATLAB同樣表現(xiàn)了出色的處理能力。同時對一些特殊的可視化要求,例如圖形對話等,MATLAB也有相應(yīng)的功能函數(shù),保證了用戶不同層次的要求。另外新版本的MATLAB還著重在圖形用戶界面(GUI)的制作
26、上作了很大的改善,對這方面有特殊要求的用戶也可以得到滿足。 MATLAB對許多專門的領(lǐng)域都開發(fā)了功能強(qiáng)大的模塊集和工具箱。一般來說,它們都是由特定領(lǐng)域的專家開發(fā)的,用戶可以直接使用工具箱學(xué)習(xí)、應(yīng)用和評估不同的方法而不需要自己編寫代碼。目前,MATLAB已經(jīng)把工具箱延伸到了科學(xué)研究和工程應(yīng)用的諸多領(lǐng)域,諸如數(shù)據(jù)采集、數(shù)據(jù)庫接口、概率統(tǒng)計、樣條擬合、優(yōu)化算法、偏微分方程求解、神經(jīng)網(wǎng)絡(luò)、小波分析、信號處理、圖像處理、系統(tǒng)辨識、控制系統(tǒng)設(shè)計、LMI控制、魯棒控制、模型預(yù)測、模糊邏輯、金融分析、地圖工具、非線性控制設(shè)計、實(shí)時快速原型及半物理仿真、嵌入式系統(tǒng)開發(fā)、定點(diǎn)仿真、DSP與通訊、電力系統(tǒng)仿真等,
27、都在工具箱(Toolbox)家族中有了自己的一席之地。 2.2 圖形用戶界面GUI 2.2.1 圖形用戶界面GUI簡介 圖形用戶界面(Graphical User Interface,簡稱 GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計算機(jī)操作用戶界面。與早期計算機(jī)使用的命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受。 如Windows是以“wintel標(biāo)準(zhǔn)”方式操作的,因為你可以用鼠標(biāo)來點(diǎn)擊按鈕來進(jìn)行操作,很直觀。而DOS就不具備GUI,所以他只能輸入命令。DOS 的這種界面叫CLI (Command line User Interface ) 命令行模式的人機(jī)接口
28、。 GUI 是 Graphical User Interface 的簡稱,即圖形用戶界面,通常人機(jī)交互圖形化用戶界面設(shè)計經(jīng)常讀做“goo-ee”準(zhǔn)確來說 GUI 就是屏幕產(chǎn)品的視覺體驗和互動操作部分。GUI 是一種結(jié)合計算機(jī)科學(xué)、美學(xué)、心理學(xué)、行為學(xué),及各商業(yè)領(lǐng)域需求分析的人機(jī)系統(tǒng)工程,強(qiáng)調(diào)人—機(jī)—環(huán)境三者作為一個系統(tǒng)進(jìn)行總體設(shè)計。這種面向客戶的系統(tǒng)工程設(shè)計其目的是優(yōu)化產(chǎn)品的性能,使操作更人性化,減輕使用者的認(rèn)知負(fù)擔(dān),使其更適合用戶的操作需求,直接提升產(chǎn)品的市場競爭力。 GUI 即人機(jī)交互圖形化用戶界面設(shè)計。縱觀國際相關(guān)產(chǎn)業(yè)在圖形化用戶界面設(shè)計方面的發(fā)展現(xiàn)狀,許多國際知名公司早已意識到 G
29、UI 在產(chǎn)品方面產(chǎn)生的強(qiáng)大增值功能,以及帶動的巨大市場價值,因此在公司內(nèi)部設(shè)立了相關(guān)部門專門從事 GUI 的研究與設(shè)計,同業(yè)間也成立了若干機(jī)構(gòu),以互相交流 GUI 設(shè)計理論與經(jīng)驗為目的。隨著中國 IT 產(chǎn)業(yè),移動通訊產(chǎn)業(yè),家電產(chǎn)業(yè)的迅猛發(fā)展,在產(chǎn)品的人機(jī)交互界面設(shè)計水平發(fā)展上日顯滯后,這對于提高產(chǎn)業(yè)綜合素質(zhì),提升與國際同等業(yè)者的競爭能力等等方面無疑起了制約的作用。 GUI的廣泛應(yīng)用是當(dāng)今計算機(jī)發(fā)展的重大成就之一,他極大地方便了非專業(yè)用戶的使用。人們從此不再需要死記硬背大量的命令,取而代之的是可以通過窗口、菜單、按鍵等方式來方便地進(jìn)行操作。而嵌入式GUI具有下面幾個方面的基本要求:輕型、占用資
30、源少、高性能、高可靠性、便于移植、可配置等特點(diǎn)。 GUI組成部分: 在啟動時顯示,也是界面中最底層,有時也指代包括窗口、文件瀏覽器在內(nèi)的“桌面環(huán)境”。在桌面上由于可以重疊顯示窗口,因此可以實(shí)現(xiàn)多任務(wù)化。一般的界面中,桌面上放有各種應(yīng)用程序和數(shù)據(jù)的圖標(biāo),用戶可以以此開始工作。桌面與既存的文件夾構(gòu)成里面相違背,所以要以特殊位置的文件夾的參照形式來定義內(nèi)容。比如在微軟公司的Windows XP系統(tǒng)中,各種用戶的桌面內(nèi)容實(shí)際保存在系統(tǒng)盤(默認(rèn)為C盤):\Documents and Settings\[用戶名]\桌面 文件夾里。 墻紙,即桌面背景??梢栽O(shè)置為各種圖片和各種附件,成為視覺美觀的重要因
31、素之一。應(yīng)用程序為使用數(shù)據(jù)而在圖形用戶界面中設(shè)置的基本單元。應(yīng)用程序和數(shù)據(jù)在窗口內(nèi)實(shí)現(xiàn)一體化。在窗口中,用戶可以在窗口中操作應(yīng)用程序,進(jìn)行數(shù)據(jù)的管理、生成和編輯。通常在窗口四周設(shè)有菜單、圖標(biāo),數(shù)據(jù)放在中央。在窗口中,根據(jù)各種數(shù)據(jù)/應(yīng)用程序的內(nèi)容設(shè)有標(biāo)題欄,一般放在窗口的最上方,并在其中設(shè)有最大化、最小化(隱藏窗口,并非消除數(shù)據(jù))、最前面、縮進(jìn)(僅顯示標(biāo)題欄)等動作按鈕,可以簡單地對窗口進(jìn)行操作。 在窗口中,一個數(shù)據(jù)在一個窗口內(nèi)完成的方式。在這種情況下,數(shù)據(jù)和顯示窗口的數(shù)量是一樣的。若要在其他應(yīng)用程序的窗口使用數(shù)據(jù),將相應(yīng)生成新的窗口。因此窗口數(shù)量多,管理復(fù)雜。 在一個窗口之內(nèi)進(jìn)行多個數(shù)據(jù)管
32、理的方式。這種情況下,窗口的管理簡單化,但是操作變?yōu)殡p重管理。 將系統(tǒng)可以執(zhí)行的命令以階層的方式顯示出來的一個界面。一般置于畫面的最上方或者最下方,應(yīng)用程序能使用的所有命令幾乎全部都能放入。重要程度一般是從左到右,越往右重要度越低。命定的層次根據(jù)應(yīng)用程序的不同而不同,一般重視文件的操作、編輯功能,因此放在最左邊,然后往右有各種設(shè)置等操作,最右邊往往設(shè)有幫助。一般使用鼠標(biāo)的第一按鈕進(jìn)行操作。 即時菜單(又稱功能表) 與應(yīng)用程序準(zhǔn)備好的層次菜單不同,在菜單欄以外的地方,通過鼠標(biāo)的第二按鈕調(diào)出的菜單稱為“彈出菜單”。根據(jù)調(diào)出位置的不同,菜單內(nèi)容即時變化,列出所指示的對象可以進(jìn)行的操作。
33、 顯示在管理數(shù)據(jù)的應(yīng)用程序中的數(shù)據(jù),或者顯示應(yīng)用程序本身。 數(shù)據(jù)管理程序,即在文件夾中用戶數(shù)據(jù)的管理、進(jìn)行特定數(shù)據(jù)管理的程序的情況下,數(shù)據(jù)通過圖標(biāo)顯示出來。通常情況下顯示的是數(shù)據(jù)的內(nèi)容或者與數(shù)據(jù)相關(guān)聯(lián)的應(yīng)用程序的圖案。另外,點(diǎn)擊數(shù)據(jù)的圖標(biāo),一般可以之間完成啟動相關(guān)應(yīng)用程序以后再顯示數(shù)據(jù)本身這兩個步驟的工作。 應(yīng)用程序的圖標(biāo)只能用于啟動應(yīng)用程序。 菜單中,利用程度高的命令用圖形表示出來,配置在應(yīng)用程序中,成為按鈕。 應(yīng)用程序中的按鈕,通??梢源娌藛?。一些使用程度高的命令,不必通過菜單一層層翻動才能調(diào)出,極大提高了工作效率。但是,各種用戶使用的命令頻率是不一樣的,因此這種配置一
34、般都是可以由用戶自定義編輯。 2.2.2 圖形用戶界面 GUI 實(shí)例 這里先簡單實(shí)現(xiàn)選擇圖片并在坐標(biāo)系上顯示圖片的功能。 1 、新建圖形用戶界面模板。 在菜單欄依次選擇 FILE---NEW---GUI---Blank Gui.選擇Push Button 和 Axes 兩個控件。如下圖 圖2-1 用戶圖形界面實(shí)例圖 保存文件為test.fig,同時系統(tǒng)自動產(chǎn)生一個同名的test.m文件。 在test.m 文件的 Push Button 的回調(diào)函數(shù)中加入如下的代碼: function pushbutton1_Callback(hObject
35、, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [filename, pathname] = uigetfile({*}, 讀取圖片); str=[pathname filename]; im=imr
36、ead(str); axes(handles.axes1); imshow(im); titel(選擇的圖片); 執(zhí)行test.m文件,會彈出下圖的窗口: 圖2-2 圖形用戶界面實(shí)例圖 按下 Push Button 后選擇圖片 圖2-3 圖形用戶界面實(shí)例圖 打開圖片: 圖2-4 圖形用戶界面實(shí)例圖 2.2.3 PCA 算法 PCA (personal computer assistant) 個人計算機(jī)助理,智能手機(jī)時代手機(jī)與電腦結(jié)合的演變名稱 。PCA 主要 用于數(shù)據(jù)降維,對于一系列例子的特征組成
37、的多維向量,多維向量里的某些元素本身沒有區(qū)分性,比如某個元素在所有的例子中都為1,或者與1差距不大,那么這個元素本身就沒有區(qū)分性,用它做特征來區(qū)分,貢獻(xiàn)會非常小。所以我們的目的是找那些變化大的元素,即方差大的那些維,而去除掉那些變化不大的維,從而使特征留下的都是“精品”,而且計算量也變小了。 對于一個k維的特征來說,相當(dāng)于它的每一維特征與其他維都是正交的(相當(dāng)于在多維坐標(biāo)系中,坐標(biāo)軸都是垂直的),那么我們可以變化這些維的坐標(biāo)系,從而使這個特征在某些維上方差大,而在某些維上方差很小。例如,一個45度傾斜的橢圓,在第一坐標(biāo)系,如果按照x,y坐標(biāo)來投影,這些點(diǎn)的x和y的屬性很難用于區(qū)分他們,因為他們
38、在x,y軸上坐標(biāo)變化的方差都差不多,我們無法根據(jù)這個點(diǎn)的某個x屬性來判斷這個點(diǎn)是哪個,而如果將坐標(biāo)軸旋轉(zhuǎn),以橢圓長軸為x軸,則橢圓在長軸上的分布比較長,方差大,而在短軸上的分布短,方差小,所以可以考慮只保留這些點(diǎn)的長軸屬性,來區(qū)分橢圓上的點(diǎn),這樣,區(qū)分性比x,y軸的方法要好! 所以我們的做法就是求得一個k維特征的投影矩陣,這個投影矩陣可以將特征從高維降到低維。投影矩陣也可以叫做變換矩陣。新的低維特征必須每個維都正交,特征向量都是正交的。通過求樣本矩陣的協(xié)方差矩陣,然后求出協(xié)方差矩陣的特征向量,這些特征向量就可以構(gòu)成這個投影矩陣了。特征向量的選擇取決于協(xié)方差矩陣的特征值的大小。 對于一個訓(xùn)練
39、集,100個對象模板,特征是10維,那么它可以建立一個100*10的矩陣,作為樣本。求這個樣本的協(xié)方差矩陣,得到一個10*10的協(xié)方差矩陣,然后求出這個協(xié)方差矩陣的特征值和特征向量,應(yīng)該有10個特征值和特征向量,我們根據(jù)特征值的大小,取前四個特征值所對應(yīng)的特征向量,構(gòu)成一個10*4的矩陣,這個矩陣就是我們要求的特征矩陣,100*10的樣本矩陣乘以這個10*4的特征矩陣,就得到了一個100*4的新的降維之后的樣本矩陣,每個特征的維數(shù)下降了。 當(dāng)給定一個測試的特征集之后,比如1*10維的特征,乘以上面得到的10*4的特征矩陣,便可以得到一個1*4的特征,用這個特征去分類。 所以做PCA實(shí)際上是
40、求得這個投影矩陣,用高維的特征乘以這個投影矩陣,便可以將高維特征的維數(shù)下降到指定的維數(shù)。 2.3 本章小結(jié) 本章主要介紹了matlab 和 GUI的背景知識,以及PCA算法。其中matlab 是整個程序運(yùn)行環(huán)境,GUI是運(yùn)行工具,PCA算法是實(shí)現(xiàn)人臉識別的必要處理依據(jù)。 第三章 人臉識別PCA算法及其功能實(shí)現(xiàn) 對于一幅圖像可以看作一個由像素值組成的矩陣,也可以擴(kuò)展開,看成一個矢量,如一幅N*N 象素的圖像可以視為長度為N2 的矢量,這樣就認(rèn)為這幅圖像是位于N2 維空間中的一個點(diǎn),這種圖像的矢量表示就是原始的圖像空間,但是這個空間僅是可以表示或者檢測圖像的許多個空間中的一個。不管子空間
41、的具體形式如何,這種方法用于圖像識別的基本思想都是一樣的,首先選擇一個合適的子空間,圖像將被投影到這個子空間上,然后利用對圖像的這種投影間的某種度量來確定圖像間的相似度,最常見的就是各種距離度量。因此,本次試題采用PCA算法并利用GUI實(shí)現(xiàn)。 對同一個體進(jìn)行多項觀察時,必定涉及多個隨機(jī)變量X1,X2,…,Xp,它們都是的相關(guān)性, 一時難以綜合。這時就需要借助主成分分析來概括諸多信息的主要方面。我們希望有一個或幾個較好的綜合指標(biāo)來概括信息,而且希望綜合指標(biāo)互相獨(dú)立地各代表某一方面的性質(zhì)。 任何一個度量指標(biāo)的好壞除了可靠、真實(shí)之外,還必須能充分反映個體間的變異。如果有一項指標(biāo),不同個體的取值
42、都大同小異,那么該指標(biāo)不能用來區(qū)分不同的個體。由這一點(diǎn)來看,一項指標(biāo)在個體間的變異越大越好。因此我們把“變異大”作為“好”的標(biāo)準(zhǔn)來尋求綜合指標(biāo)。 3.1 PCA算法分析 3.1.1 主成分的一般定義 設(shè)有隨機(jī)變量X1,X2,…,Xp, 其樣本均數(shù)記為 , ,…, ,樣本標(biāo)準(zhǔn)差記為S1,S2,…,Sp。首先作標(biāo)準(zhǔn)化變換,我們有如下的定義: (1) 若C1=a11x1+a12x2+ … +a1pxp,…,且使 Var(C1)最大,則稱C1為第一主成分; (2) 若C2=a21x1+a22x2+…+a2pxp, …,(a21,a22,…,a2p)垂直于(a11,a12,…,a1p),且
43、使Var(C2)最大,則稱C2為第二主成分; (3) 類似地,可有第三、四、五…主成分,至多有p個。 3.1.2 主成分的性質(zhì) 主成分C1,C2,…,Cp具有如下幾個性質(zhì): (1) 主成分間互不相關(guān),即對任意i和j,Ci 和Cj的相關(guān)系數(shù) Corr(Ci,Cj)=0 ij (2) 組合系數(shù)(ai1,ai2,…,aip)構(gòu)成的向量為單位向量, (3) 各主成分的方差是依次遞減的, 即 Var(C1)≥Var(C2)≥…≥Var(Cp) (4) 總方差不增不減, 即 Var(C1)+Var(C2)+ … +Var(Cp)
44、 =Var(x1)+Var(x2)+ … +Var(xp) =p 這一性質(zhì)說明,主成分是原變量的線性組合,是對原變量信息的一種改組,主成分不增加總信息量,也不減少總信息量。 (5) 主成分和原變量的相關(guān)系數(shù) Corr(Ci,xj)=aij =aij (6) 令X1,X2,…,Xp的相關(guān)矩陣為R, (ai1,ai2,…,aip)則是相關(guān)矩陣R的第i個特征向量(eigenvector)。而且,特征值li就是第i主成分的方差, 即 Var(Ci)= li 其中l(wèi)i為相關(guān)矩陣R的
45、第i個特征值(eigenvalue) ll1≥l2≥…≥lp≥0 3.1.3 主成分?jǐn)?shù)目的選取 前已指出,設(shè)有p個隨機(jī)變量,便有p個主成分。由于總方差不增不減,C1,C2等前幾個綜合變量的方差較大,而Cp,Cp-1等后幾個綜合變量的方差較小, 嚴(yán)格說來,只有前幾個綜合變量才稱得上主(要)成份,后幾個綜合變量實(shí)為“次”(要)成份。實(shí)踐中總是保留前幾個,忽略后幾個。 保留多少個主成分取決于保留部分的累積方差在方差總和中所占百分比(即累計貢獻(xiàn)率),它標(biāo)志著前幾個主成分概括信息之多寡。實(shí)踐中,粗略規(guī)定一個百分比便可決定保留幾個主成分;如果多留一個主成分,累積方差增加無幾,便不再多留。
46、 3.2 PCA算法功能實(shí)現(xiàn) 3.2.1 人臉空間的建立 假設(shè)一幅人臉圖像包含N個像素點(diǎn),它可以用一個N維向量Γ表示。這樣,訓(xùn)練樣本庫就可以用Γi(i=1,...,M)表示。 協(xié)方差矩陣C的正交特征向量就是組成人臉空間的基向量,即特征臉。 將特征值由大到小排列:λ1≥λ2≥...≥λr,其對應(yīng)的特征向量為μk。這樣每一幅人臉圖像都可以投影到由u1,u2,...,ur張成的子空間中。因此,每一幅人臉圖像對應(yīng)于子空間中的一點(diǎn)。同樣,子空間的任意一點(diǎn)也對應(yīng)于一幅圖像。 3.2.2 特征向量的選取 雖然協(xié)方差矩陣Ω最多有對應(yīng)于非零特征值的k(k遠(yuǎn)小于M)個特征向量,但是通常情況下,k仍然
47、很大,而事實(shí)上,根據(jù)應(yīng)用的要求,并非所有的特征向量都有需要保留,而特征空間投影的計算速度是直接與創(chuàng)建子空間所用的特征向量的數(shù)目相關(guān),若考慮到計算時間的因素,可以適當(dāng)?shù)臏p去一些信息量少的特征向量,而且,去掉這些特征向量之后不一定不利于分類結(jié)果,有的情況下反而能夠提高識別性能。 3.2.3 人臉識別 有了這樣一個由"特征臉"張成的降維子空間,任何一幅人臉圖像都可以向其投影得到一組坐標(biāo)系數(shù),這組系數(shù)表明了該圖像在子空間中的位置,從而可以作為人臉識別的依據(jù)。換句話說,任何一幅人臉圖像都可以表示為這組"特征臉"的線性組合,其加權(quán)系數(shù)即是K-L變換的展開系數(shù),也可以稱為該圖像的代數(shù)特征。因此,在獲
48、得特征臉之后,就可以對每一類別的典型樣本進(jìn)行投影,由此得到每個人臉的投影特征從而構(gòu)成人臉特征向量,作為下一步識別匹配的搜索空間。 輸入圖像及其在人臉空間上的投影(重構(gòu)圖像),人臉圖像在人臉空間中的投影變化不明顯而非人臉圖像的投影變化明顯。因此,檢測一幅圖像中是否存在人臉的基本思想是,計算該圖像中任意位置處的局部圖像與人臉空間之間的距離ε。其中,ε是局部圖像是否為人臉的度量。因此,計算給定圖像任意一點(diǎn)上的ε,就可以得到一映射圖ε(x,y)。 第四章 人臉識別算法測試 4.1 實(shí)驗測試流程 實(shí)驗在兩個圖庫上測試,一個是自建人臉庫,該庫包含10個不同人物,每人有5張不同表情和姿態(tài)下的
49、圖片,總共50幅。另一個是ORL人臉庫,該庫包含40個不同人物,每人有10張圖片,共400幅。用訓(xùn)練樣本進(jìn)行測試,識別率為100%。而隨著訓(xùn)練樣本的增加,識別率會有所提升,由于標(biāo)準(zhǔn)人臉庫在采集時考慮了多種因素,人臉圖像比較標(biāo)準(zhǔn),所以識別率較自建的人臉庫識別率高,另外因為自建人連庫的圖片太少,即訓(xùn)練樣本太少,也會對結(jié)果產(chǎn)生影響,效果不是很好。進(jìn)行直方圖均衡化比灰度歸一化的識別率高,預(yù)處理對識別的效果起著至關(guān)重要的作用。而此次實(shí)驗的預(yù)處理還比較粗糙,PCA也只是起到了簡單的特征臉降維的作用,要有更好的效果,還必須尋找更好的特征表達(dá),使得可以盡量消除光照、表情、遮掩和姿勢的影響。 下圖為測試流程截
50、圖: 首先,運(yùn)行程序.m文件 圖4-1 用戶使用界面圖 圖4-2 選擇圖片圖 圖4-3 讀取圖片后的圖 圖4-4 查找結(jié)果圖 第五章 個人總結(jié) 在大一的時候主修過MATLAB基礎(chǔ)這門課程,后大二時又學(xué)習(xí)了數(shù)字圖像處理這門課并跟老師做過為期一個星期的課程設(shè)計,MATLAB有比較扎實(shí)的基礎(chǔ),所以本次試題我采用了Matlab中的GUI(圖形用戶界面)為主要表現(xiàn)形式,我認(rèn)為在這次的題目下GUI比單純的M文件會有更強(qiáng)的應(yīng)用、測試及表現(xiàn)效果,但由于之前對PCA算法不太了解,所以花了很長時間去分析理解,最終選擇了較為簡單
51、且實(shí)用的PCA算法。從使用的角度考慮,我還為庫中的每個人取了一個名字,最終查找到時會在標(biāo)題處顯示其名字,下方顯示庫中與測試圖片最接近的庫圖片。因為是利用了有限的10人人臉庫,并且識別的人數(shù)不是很多,所以最終的結(jié)果還是不錯的。 致謝 在河北農(nóng)業(yè)大學(xué)的學(xué)習(xí)生活即將結(jié)束,在做畢設(shè)的這些日子里,我的老師、同學(xué)給予了我無微不至的關(guān)心和幫助,包括課題的選擇和程序的編譯運(yùn)行等等。借此畢業(yè)論文完成之際,謹(jǐn)向他們致以我最真誠的感謝! 首先要感謝的是我的導(dǎo)師任力生老師。任老師知識淵博、態(tài)度嚴(yán)謹(jǐn)、平易近人,在學(xué)術(shù)上給了我悉心的指導(dǎo)。由于在外找工作沒有辦法兼顧學(xué)校的事情,任老師并沒有因此有過多的苛責(zé)
52、,而是讓我安心做設(shè)計,在研究的方向和設(shè)計的可行性等方面都給了非常寶貴的指導(dǎo)意見。任老師對待工作嚴(yán)肅謹(jǐn)慎,不浮不躁,堅持踏實(shí)勤干的學(xué)習(xí)態(tài)度,這將是我一生工作和學(xué)習(xí)的好榜樣。 其次,我還要特別感謝我的同學(xué)李秀蕓同學(xué),她在我程序最迷茫的時候為我點(diǎn)明了關(guān)鍵所在,還細(xì)心的給我講解了代碼的含義,讓我對我的課題有了更加深入的了解。 另外還要格外感謝一下馬麗和斯永勝老師,這兩位老師本不是負(fù)責(zé)我的老師,而在我為選題苦惱、程序遇到bug無法運(yùn)行的時候,老師們給了我很多的參考建議,在此鄭重的感謝下兩位老師。 再次真心的感謝所有關(guān)心愛護(hù)我的良師益友和親人們。 參考文獻(xiàn) [1]
53、周杰,盧春雨等,人臉自動識別方法綜述,電子學(xué)報,2000,28(4),102一106. [2] 何東風(fēng),凌捷.人臉識別技術(shù)綜述[J].計算機(jī)學(xué)報,2003,13(12)75-78 [3] 賈永紅,數(shù)字圖象處理,武漢,武漢大學(xué)出版社,2003,63—72,132一141. [4] 周濤,基于PCA的人臉識別研究,2004.07 [5] 王宇飛,基于特征臉和支持向量機(jī)的人臉識別方法研究與實(shí)現(xiàn),2005.03 [6] 肖冰,王映輝,人臉識別研究綜述,計算機(jī)應(yīng)用研究,2005,8,卜5. [7] 鄧楠, 基于主成份分析的人臉識別, 2006.06 [8] 何國輝,甘俊英.PC
54、A-LDA算法在性別鑒別中的應(yīng)用[J].中國圖像圖形學(xué)報,2006,32(19):208-211. [9]徐仲,張凱院,陸全,冷國偉,矩陣論簡明教程,第四版,北京,科學(xué)出版社,2004,5l,118一123,138—140. [10] 龔勛,PCA與人臉識別及其理論基礎(chǔ),2007.04 [11] 祝磊,朱善安.人臉識別的一種新的特征提取方法[J].計算機(jī)學(xué)報,2007,34(6):122-1251 [12] 劉保柱,《MATLAB7.0從入門到精通》,人民郵電出版社 2010.05.01 [13]艾英山,張德賢,人臉識別方法的綜述與展望,計算機(jī)與數(shù)字工程,2005,33(10),2
55、4—27. [14]蘇宏濤,基于統(tǒng)計特征的人臉識別技術(shù)研究,[博士學(xué)位論文],西安,西北工業(yè)大學(xué),2005. [15]邊肇棋、張學(xué)工等,模式識別(第二版),北京:清華大學(xué)出版社,2000,223—226 [16]劉艷麗,趙躍龍,人臉識別技術(shù)研究進(jìn)展,計算機(jī)工程,2005,3l(3),10—12. 附錄--matlab 源碼 function varargout = pca_new(varargin) % PCA_NEW MATLAB code for pca_new.fig % PCA_NEW, by itself,
56、creates a new PCA_NEW or raises the existing % singleton*. % % H = PCA_NEW returns the handle to a new PCA_NEW or the handle to % the existing singleton*. % % PCA_NEW(CALLBACK,hObject,eventData,handles,...) calls the local % function named CALLBACK in PCA_NEW.M with t
57、he given input arguments. % % PCA_NEW(Property,Value,...) creates a new PCA_NEW or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before pca_new_OpeningFcn gets called. An % unrecognized property name or invalid valu
58、e makes property application % stop. All inputs are passed to pca_new_OpeningFcn via varargin. % % *See GUI Options on GUIDEs Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify th
59、e response to help pca_new % Last Modified by GUIDE v2.5 19-May-2013 20:23:10 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct(gui_Name, mfilename, ... gui_Singleton, gui_Singleton, ... gui_OpeningFcn, @pca_new_O
60、peningFcn, ... gui_OutputFcn, @pca_new_OutputFcn, ... gui_LayoutFcn, [] , ... gui_Callback, []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gu
61、i_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before pca_new is made visible. function pca_new_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see Out
62、putFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to pca_new (see VARARGIN) % Choose default command line output for pca_new handles.ou
63、tput = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes pca_new wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = pca_new_OutputFcn(hObject, eventdata
64、, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles stru
65、cture varargout{1} = handles.output; % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with han
66、dles and user data (see GUIDATA) %% 讀取待查找圖片 global im;%由于要在兩個按鈕函數(shù)中使用,故使用全局變量 [filename, pathname]=... uigetfile({*.bmp},選擇圖片); str = [pathname, filename];%合成路徑+文件名=所選圖片的完整路徑 str im = imread(str);%讀取圖片 axes( handles.axes1);%使用第一個axes,把當(dāng)前圖片放入第一個坐標(biāo)系 imshow(im);title(待查找)%顯示圖片 % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 市教育局冬季運(yùn)動會安全工作預(yù)案
- 2024年秋季《思想道德與法治》大作業(yè)及答案3套試卷
- 2024年教師年度考核表個人工作總結(jié)(可編輯)
- 2024年xx村兩委涉案資金退還保證書
- 2024年憲法宣傳周活動總結(jié)+在機(jī)關(guān)“弘揚(yáng)憲法精神推動發(fā)改工作高質(zhì)量發(fā)展”專題宣講報告會上的講話
- 2024年XX村合作社年報總結(jié)
- 2024-2025年秋季第一學(xué)期初中歷史上冊教研組工作總結(jié)
- 2024年小學(xué)高級教師年終工作總結(jié)匯報
- 2024-2025年秋季第一學(xué)期初中物理上冊教研組工作總結(jié)
- 2024年xx鎮(zhèn)交通年度總結(jié)
- 2024-2025年秋季第一學(xué)期小學(xué)語文教師工作總結(jié)
- 2024年XX村陳規(guī)陋習(xí)整治報告
- 2025年學(xué)校元旦迎新盛典活動策劃方案
- 2024年學(xué)校周邊安全隱患自查報告
- 2024年XX鎮(zhèn)農(nóng)村規(guī)劃管控述職報告