




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)第一章 前言第一節(jié) 課題背景一 課題的來源隨著安全入口控制和金融貿(mào)易方面應(yīng)用需要的快速增長,生物統(tǒng)計識別技術(shù)得到了新的重視。目前,微電子和視覺系統(tǒng)方面取得的新進展,使該領(lǐng)域中高性能自動識別技術(shù)的實現(xiàn)代價降低到了可以接受的程度。而人臉識別是所有的生物識別方法中應(yīng)用最廣泛的技術(shù)之一,人臉識別技術(shù)是一項近年來興起的,但不大為人所知的新技術(shù)。人們更多的是在電影中看到這種技術(shù)的神奇應(yīng)用:警察將偷拍到的嫌疑犯的臉部照片,輸入到電腦中,與警方數(shù)據(jù)庫中的資料進行比對,并找出該嫌犯的詳細
2、資料和犯罪記錄。這并非虛構(gòu)的情節(jié)。在國外,人臉識別技術(shù)早已被大量使用在國家重要部門以及軍警等安防部門。在國內(nèi),對于人臉識別技術(shù)的研究始于上世紀90年代,目前主要應(yīng)用在公安、金 融、網(wǎng)絡(luò)安全、物業(yè)管理以及考勤等領(lǐng)域。二 人臉識別技術(shù)的研究意義 1、富有挑戰(zhàn)性的課題人臉識別是機器視覺和模式識別領(lǐng)域最富有挑戰(zhàn)性的課題之一,同時也具有較為廣泛的應(yīng)用意義。人臉識別技術(shù)是一個非?;钴S的研究領(lǐng)域,它覆蓋了數(shù)字圖像處理、模式識別、計算機視覺、神經(jīng)網(wǎng)絡(luò)、心理學(xué)、生理學(xué)、數(shù)學(xué)等諸多學(xué)科的內(nèi)容。如今,雖然在這方面的研究已取得了一些可喜的成果,但是FRT在實用應(yīng)用中仍面臨著很嚴峻的問題,因為人臉五官的分布是非常相似的
3、,而且人臉本身又是一個柔性物體,表情、姿態(tài)或發(fā)型、化妝的千變?nèi)f化都給正確識別帶來了相當(dāng)大的麻煩。如何能正確識別大量的人并滿足實時性要求是迫切需要解決的問題。2、面部關(guān)鍵特征定位及人臉2D形狀檢測技術(shù)在人臉檢測的基礎(chǔ)上,面部關(guān)鍵特征檢測試圖檢測人臉上的主要的面部特征點的位置和眼睛和嘴巴等主要器官的形狀信息?;叶确e分投影曲線分析、模板匹配、可變形模板、Hough變換、Snake算子、基于Gabor小波變換的彈性圖匹配技術(shù)、主動性狀模型和主動外觀模型是常用的方法。 可變形模板的主要思想是根據(jù)待檢測人臉特征的先驗的形狀信息,定義一個參數(shù)描述的形狀模型,該模型的參數(shù)反映了對應(yīng)特征形狀的可變部分,如位置、
4、大小、角度等,它們最終通過模型與圖像的邊緣、峰、谷和灰度分布特性的動態(tài)地交互適應(yīng)來得以修正。由于模板變形利用了特征區(qū)域的全局信息,因此可以較好地檢測出相應(yīng)的特征形狀。由于可變形模板要采用優(yōu)化算法在參數(shù)空間內(nèi)進行能量函數(shù)極小化,因此算法的主要缺點在于兩點:一、對參數(shù)初值的依賴程度高,很容易陷入局部最??;二、計算時間長。針對這兩方面的問題,我們采用了一種由粗到細的檢測算法:首先利用人臉器官構(gòu)造的先驗知識、面部圖像灰度分布的峰谷和頻率特性粗略檢測出眼睛、鼻子、嘴、下巴的大致區(qū)域和一些關(guān)鍵的特征點;然后在此基礎(chǔ)上,給出了較好的模板的初始參數(shù),從而可以大幅提高算法的速度和精度。眼睛是面部最重要的特征,它
5、們的精確定位是識別的關(guān)鍵?;趨^(qū)域增長的眼睛定位技術(shù),該技術(shù)在人臉檢測的基礎(chǔ)上,充分利用了眼睛是面部區(qū)域內(nèi)臉部中心的左上方和右上方的灰度谷區(qū)這一特性,可以精確快速的定位兩個眼睛瞳孔中心位置。該算法采用了基于區(qū)域增長的搜索策略,在人臉定位算法給出的大致人臉框架中,估計鼻子的初始位置,然后定義兩個初始搜索矩形,分別向左右兩眼所處的大致位置生長。該算法根據(jù)人眼灰度明顯低于面部灰度的特點,利用搜索矩形找到眼部的邊緣,最后定位到瞳孔的中心。實驗表明,本算法對于人臉大小、姿態(tài)和光照的變化,都有較強的適應(yīng)能力,但在眼部陰影較重的情況下,會出現(xiàn)定位不準。佩戴黑框眼鏡,也會影響本算法的定位結(jié)果。3、面部感知系統(tǒng)
6、的重要內(nèi)容 基于視覺通道信息的面部感知系統(tǒng),包括人臉檢測和跟蹤、面部特征定位、面部識別、人臉歸類(年齡、種族、性別等的判別)、表情識別、唇讀等分系統(tǒng),如圖1-1所式,可以看出,繼人臉檢測和跟追之后,面部特征定位通常是面部感知的一個必備環(huán)節(jié),是后續(xù)工作的基礎(chǔ),具有重要的意義。盡管人臉識別不能說是其他面部感知模塊的必備功能,但是, 可以肯定的是,利用已知的身份信息,結(jié)合特定人的先驗知識,可以提高表情分析、唇讀和語音識別、手勢識別乃至手寫體識別的可靠性。而計算機對使用者身份確認的最直接的應(yīng)用就是基于特定使用者的環(huán)境設(shè)置:如使用者的個性化工作環(huán)境,信息的共享和隱私保護等等。視頻輸入人臉檢測和跟蹤面部特
7、征定位人臉識別表情分析性別判斷種族判斷年齡判別唇 讀身份信息情感狀態(tài)性別信息種族信息年齡信息唇形類別 圖1-1面部感知系統(tǒng)結(jié)構(gòu)圖第二節(jié) 人臉識別的國內(nèi)外發(fā)展概況現(xiàn)在人臉識別技術(shù)已經(jīng)應(yīng)用在許多領(lǐng)域中,并起到了舉足輕重的作用,人臉識別研究開始于1966年P(guān)RI的Bledsoe的工作,經(jīng)過三十多年的發(fā)展,人臉識別技術(shù)取得了長足的進步, 現(xiàn)在就目前國內(nèi)外的發(fā)展情況來進行展述。一 國外的發(fā)展概況1見諸文獻的機器自動人臉識別研究開始于1966年P(guān)RI的Bledsoe的工作,1990年日本研制的人像識別機,可在1秒鐘內(nèi)中從3500人中識別到你要找的人。1993年,美國國防部高級研究項目署 (Advanced
8、 Research Projects Agency)和美國陸軍研究實驗室(Army Research Laboratory)成立了Feret(Face Recognition Technology) 項目組,建立了feret 人臉數(shù)據(jù)庫,用于評價人臉識別算法的性能。美國陸軍實驗室也是利用vc+開發(fā),通過軟件實現(xiàn)的,并且FAR為49%。在美國的進行的公開測試中,F(xiàn)AR,為53%。美國國防部高級研究項目署,利用半自動和全自動算法。這種算法需要人工或自動指出圖像中人的兩眼的中心坐標,然后進行識別。在機場開展的測試中,系統(tǒng)發(fā)出的錯誤警報太多,國外的一些高校(卡內(nèi)基梅隆大學(xué)(Carnegie Mello
9、n University)為首,麻省理工大學(xué)(Massachusetts Institute of Technology )等,英國的雷丁大學(xué)(University of Reading)和公司(Visionics 公司Facelt 人臉識別系統(tǒng)、Viiage 的FaceFINDER 身份驗證系統(tǒng)、Lau Tech 公司Hunter系統(tǒng)、德國的BioID 系統(tǒng)等)的工程研究工作也主要放在公安、刑事方面,在考試驗證系統(tǒng)的實現(xiàn)方面深入研究并不多。二 國內(nèi)的發(fā)展概況 2人臉識別系統(tǒng)現(xiàn)在在大多數(shù)領(lǐng)域中起到舉足輕重的作用,尤其是用在機關(guān)單位的安全和考勤、網(wǎng)絡(luò)安全、銀行、海關(guān)邊檢、物業(yè)管理、軍隊安全、智能
10、身份證、智能門禁、司機駕照驗證、計算機登錄系統(tǒng)。我國在這方面也取得了較好的成就,國家863項目“面像檢測與識別核心技術(shù)”通過成果鑒定并初步應(yīng)用,就標志著我國在人臉識別這一當(dāng)今熱點科研領(lǐng)域掌握了一定的核心技術(shù)。北京科瑞奇技術(shù)開發(fā)股份有限公司在2002年開發(fā)了一種人臉鑒別系統(tǒng),對人臉圖像進行處理,消除了照相機的影響,再對圖像進行特征提取和識別。這對于人臉鑒別特別有價值,因為人臉鑒別通常使用正面照,要鑒別的人臉圖像是不同時期拍攝的,使用的照相機不一樣。系統(tǒng)可以接受時間間隔較長的照片,并能達到較高的識別率,在計算機中庫藏2300人的正面照片,每人一張照片,使用相距1-7年、差別比較大的照片去查詢,首選
11、率可以達到50%,前20張輸出照片中包含有與輸入照片為同一人的照片的概率可達70% 。2005年1月18日,由清華大學(xué)電子系人臉識別課題組負責(zé)人蘇光大教授主持承擔(dān)的國家十五攻關(guān)項目人臉識別系統(tǒng)通過了由公安部主持的專家鑒定。鑒定委員會認為,該項技術(shù)處于國內(nèi)領(lǐng)先水平和國際先進水平。本論文主要對該人臉識別系統(tǒng)進行模塊劃分,并介紹各模塊的功能,重點介紹圖像預(yù)處理模塊,對其內(nèi)的子模塊的功能和算法進行詳細講述,主要介紹光線補償、圖像灰度化、高斯平滑、均衡直方圖、圖像對比度增強,圖像預(yù)處理模塊在整個系統(tǒng)中起著極其關(guān)鍵的作用,圖像處理的好壞直接影響著后面的定位和識別工作。第二章 系統(tǒng)的需求分析與方案選擇人臉識
12、別系統(tǒng)現(xiàn)在應(yīng)用于許多領(lǐng)域中,但是人臉識別技術(shù)也是一項近年來興起的,且不大為人所知的新技術(shù)。在我國以及其他國家都有大量的學(xué)者正在研究之中,不斷的更新人臉識別技術(shù),以便系統(tǒng)的識別準確率達到新的高度。第一節(jié) 可行性分析在開發(fā)該人臉識別軟件之前,我們查詢了前人所寫過的諸多論文以及源程序,在開發(fā)之時,結(jié)合了資料中的算法并揉進了自己的一些思想,使程序可以對人臉圖片進行簡易識別。一 技術(shù)可行性 圖像的處理方法很多,我們可以根據(jù)需要,有選擇地使用各種方法。在確定臉部區(qū)域上,通常使用的方法有膚色提取。膚色提取,則對臉部區(qū)域的獲取則比較準確,成功率達到95%以上,并且速度快,減少很多工作。圖像的亮度變化,由于圖像
13、的亮度在不同環(huán)境的當(dāng)中,必然受到不同光線的影響,圖像就變得太暗或太亮,我們就要對它的亮度進行調(diào)整,主要采取的措施是對圖像進行光線補償。高斯平滑:在圖像的采集過程中,由于各種因素的影響,圖像中往往會出現(xiàn)一些不規(guī)則的隨機噪聲,如數(shù)據(jù)在傳輸、存儲時發(fā)生的數(shù)據(jù)丟失和損壞等,這些都會影響圖像的質(zhì)量,因此需要將圖片進行平滑操作以此來消除噪聲?;叶茸儞Q:進行灰度處理,我們要保證圖像信息盡可能少的丟失。同樣在進行灰度變換前,我們也要對圖像的信息進行統(tǒng)計,找出一個比較合理的灰度值,才能進行灰度變換。灰度均衡:灰度變換后,就要進行灰度均衡,可以根據(jù)灰度分布來進行灰度均衡。對比度增強:將所要處理的區(qū)域和周圍圖像區(qū)域
14、進一步拉開他們的對比度,使它們更加明顯,主要通過像素的聚集來實現(xiàn)。二 操作可行性該人臉識別軟件需要如下的運行環(huán)境:CPU:500M及以上;內(nèi)存:64 M及以上。安裝有Windows 98、Windows Me、Windows 2000、Windows NT等操作系統(tǒng)中的其中一種。另還裝有攝像頭可進行隨機拍照和識別。因此,從操作可行性來看,只要系統(tǒng)用戶的硬件軟件設(shè)備滿足以上條件,即可用該人臉識別軟件進行人臉的識別。第二節(jié) 需求分析一 應(yīng)用程序的功能需求分析 該軟件最主要的功能就是要能識別出人臉,首先該系統(tǒng)需要對通過攝像頭拍照而獲取到的原始的人臉圖片進行一系列處理才可進行下一步的工作,該處理過程也
15、稱圖像預(yù)處理。預(yù)處理這個模塊在整個人臉識別系統(tǒng)的開發(fā)過程中占有很重要的地位,只有預(yù)處理模塊做的好,才可能很好的完成后面的人臉定位和特征提取這兩大關(guān)鍵模塊。因此本設(shè)計中所要完成的主要功能如下所述:圖像獲取功能:該模塊主要是從攝像頭拍照后進行獲取圖片,也可以從圖片庫中獲取,獲取后的圖片可以在軟件的界面中顯示出來以便進行識別。圖像預(yù)處理功能:該模塊主要包括圖像光線補償、圖像變成灰色、高斯平滑、均衡直方圖、實現(xiàn)圖像對比度增強、二值化變換等。人臉定位功能:該模塊主要是將處理后的人臉圖片進行定位,將眼睛、鼻子、嘴巴標記出來,以便進行特征提取。特征提取功能:該模塊是在定位后的人臉圖片中將眼睛、鼻子、嘴巴的特
16、征值提取出來。識別功能:該模塊是將從圖片中提取的特征值和后臺數(shù)據(jù)庫中的值進行比較來完成識別功能。二 開發(fā)環(huán)境需求分析1、硬件環(huán)境(1)硬件配置原則具有可靠性,可用性和安全性,具有完善的技術(shù)支持。能夠滿足個人學(xué)習(xí)和設(shè)計需要。(2)運行本軟件所需的硬件資源CPU: 800M及以上;內(nèi)存: 128M及以上2、軟件環(huán)境(1)系統(tǒng)軟件配置原則 能夠滿足該軟件的可靠性,可用性和安全性的要求(2)系統(tǒng)軟件配置方案 配置有持續(xù)工作能力、高穩(wěn)定性、高度可集成的開放式標準的操作系統(tǒng),如Windows2000,Windows NT,UNIX,Linux等。 配備符合ANSI/ISO標準的高級程序設(shè)計語言處理軟件。如
17、:Visual C+ 6.0。 熟悉C+高級程序設(shè)計語言。3、 運行環(huán)境需求分析(1)、硬件環(huán)境CPU:500M及以上;內(nèi)存:64 M及以上。(2)、軟件環(huán)境可以運行在微軟公司近年來所出的各種操作系統(tǒng)。如Windows 98、Windows Me、Windows 2000、Windows NT等。第三節(jié) 預(yù)處理方案選擇一 設(shè)計方案原則的選擇本應(yīng)用程序的設(shè)計方案原則如下:1、采用較為先進的技術(shù)力量,保證應(yīng)用程序在技術(shù)上具備一定的優(yōu)勢。2、采用成熟的技術(shù),保證應(yīng)用程序的安全性和可靠性。3、應(yīng)用程序便于擴展和維護,易于技術(shù)的更新。4、應(yīng)用程序充分利用現(xiàn)有的資源,盡量減少不必要的再投資。5、編寫的代碼
18、必須嚴謹易讀,代碼的解釋必須清楚明白,為應(yīng)用程序的再開發(fā)提供應(yīng)盡的責(zé)任。二 圖像文件格式選擇在設(shè)計的過程中,為了定位和特征提取的方便,我們采用的是24位位圖。三 開發(fā)工具選擇本次設(shè)計所用的開發(fā)工具是Microsoft Visual C+ 6.0。 Visual C+ 6.0是Microsoft公司推出的一種可視化編程工具。它支持多平臺和交叉平臺的開發(fā),將各種編程工具如編輯器、連接器、調(diào)試器等巧妙的結(jié)合在一起,構(gòu)成一個完美的可視化開發(fā)環(huán)境。用戶無需通過繁雜的編程操作,即可完成Windows下應(yīng)用程序的編輯、編譯、測試和細化等工作。四 算法選擇分析本文主要研究的對象是圖像預(yù)處理模塊,該模塊分為光線
19、補償、圖像灰度化、高斯平滑、圖像對比度增強、均衡直方圖,每個小模塊的實現(xiàn)都有許多相應(yīng)的算法。下面將本系統(tǒng)采用的算法進行介紹:光線補償 :由于光線原因,所照的圖像可能會存在光線不平衡的情況而造成色彩偏差,為了抵消這種整個圖像中存在的色彩偏差,本系統(tǒng)采用的解決方法是:將整個圖像中的所有像素的亮度從高到低進行排列,取前5%的像素,然后線性放大,使這些像素的平均亮度達到255。實際上就是調(diào)整圖片像素的RGB值。圖像灰度化:圖像灰度化是將圖像變成灰色,本系統(tǒng)中采用以下步驟來實現(xiàn)圖像的灰度化:彩色轉(zhuǎn)換成灰度、灰度比例變換、灰度線性變換、灰度線性截斷、灰度取反。高斯平滑:在圖像的采集過程中,由于各種因素的影
20、響,圖像中往往會出現(xiàn)一些不規(guī)則的隨機噪聲,如數(shù)據(jù)在傳輸、存儲時發(fā)生的數(shù)據(jù)丟失和損壞等,這些都會影響圖像的質(zhì)量,因此需要將圖片進行平滑操作以此來消除噪聲。但是如果平滑不當(dāng),就會使圖像本身的細節(jié)如邊界輪廓、線條等變的模糊不清,為了既平滑掉噪聲有盡量保持圖像細節(jié),本系統(tǒng)采用高斯平滑。均衡直方圖:使用該模塊的目的是通過點運算使輸入轉(zhuǎn)換為在每一灰度級上都有相同的像素點數(shù)的輸出圖像。它的實現(xiàn)主要是利用灰度均衡的轉(zhuǎn)換式DB = f (DA)= H(u)du 。(式1)圖像對比度增強:為了將圖像的特征一步一步顯現(xiàn)出來,需要進行圖像的對比度增強,它主要通過對圖像的灰度值進行統(tǒng)計,對于小于Low則認為是有關(guān)的信息
21、,則將它作為黑色處理,對于處于High以上的則認為是一些無關(guān)的信息,將它們?nèi)サ?,而處于兩者之間的,則進行對比度增強,將他們在總的灰度值里面的比例作為新的像素信息保存起來。第三章 系統(tǒng)的概要設(shè)計 本章主要介紹系統(tǒng)的結(jié)構(gòu)設(shè)計的流程以及系統(tǒng)各模塊的功能及相關(guān)原理。應(yīng)用程序的總體結(jié)構(gòu)設(shè)計流程圖如圖31所示:圖31總體結(jié)構(gòu)設(shè)計流程圖用 戶從“文件”菜單中選擇“打開”選項在彈出的“打開”對話框中選擇要打開的位圖,點擊“確定”,應(yīng)用程序顯示所要打開的位圖識別獲取臉部區(qū)域獲取特征參數(shù)人臉定位圖象預(yù)處理顯示識別結(jié)果圖像預(yù)處理的層次圖如圖3-2所示: 圖3-2 預(yù)處理的層次圖預(yù)處理光線補償圖像灰度化高斯平滑均衡直
22、方圖圖像對比度增強二值化第一節(jié) 各模塊功能概述以上是該系統(tǒng)的總體結(jié)構(gòu)設(shè)計圖以及圖像預(yù)處理模塊的層次圖。下面介紹系統(tǒng)中的各模塊的功能及算法:圖像獲取模塊該模塊主要是從攝像頭拍照后進行獲取圖片,也可以從圖片庫中獲取,獲取后的圖片可以在軟件的界面中顯示出來以便進行識別。人臉區(qū)域獲取 該系統(tǒng)中圖像里人臉區(qū)域的獲取,主要是根據(jù)膚色來進行獲取,通過膚色非線形分段色彩變換來實現(xiàn)。這一非線性分段色彩變換得到的膚色模型屬于色彩空間中的聚類模型,這一類膚色模型的建立首先要選取一種合適的色彩空間。圖像預(yù)處理模塊圖像預(yù)處理就是對獲取得來的圖像進行適當(dāng)?shù)奶幚?,使它具有的特征能夠在圖像中明顯的表現(xiàn)出來。該模塊中的子模塊有
23、如下5個,下面對它們進行概述: 光線補償3因為系統(tǒng)得到的圖片可能會存在光線不平衡的情況,這會影響我們對特征的提取,同時系統(tǒng)中要用到Y(jié)crCB色彩空間,所以有必要對圖像進行光線補償。盡可能將它的特征在圖像中表現(xiàn)出來。YcrCB是一種色彩空間,它用于視頻系統(tǒng)中,在該色彩空間中,Y分量表示像素的亮度,Cr表示紅色分量,Cb表示藍色分量,通常把Cr和Cb稱為色度。YcrCB色彩空間是以演播室質(zhì)量標準為目標的CC601編碼方案中采用的彩色表示模型。灰度變化4圖像灰度化的過程就是把彩色圖像轉(zhuǎn)換為黑白色圖像的過程,它也是為了將圖像的信息更加具體、簡單的表現(xiàn)出來,但是,這樣做也將會丟失圖像信息。因此,盡可能在
24、轉(zhuǎn)化的過程中用簡單的方式表現(xiàn)圖像復(fù)雜的信息。高斯平滑處理5高斯平滑將對圖像進行平滑處理,在圖像采集過程中,由于各種因素的影響,圖像往往會出現(xiàn)一些不規(guī)則的噪聲,入圖像在傳輸、存儲等都有可能產(chǎn)生數(shù)據(jù)的丟失。從而影響圖像的質(zhì)量。處理噪聲的過程稱為平滑。平滑可以降低圖像的視覺噪聲,同時出去圖像中的高頻部分后,那些本來不明顯的低頻成分更容易識別。平滑可以通過卷積來實現(xiàn)。經(jīng)過卷積平滑后的水平投影后,二值化提供了較好的圖像效果。對比度增強6對比度增強,就是對圖像的進一步處理,將對比度再一次拉開。它針對原始圖像的每一個像素直接對其灰度進行處理的,其處理過程主要是通過增強函數(shù)對像素的灰度級進行運算并將運算結(jié)果作
25、為該像素的新灰度值來實現(xiàn)的。通過改變選用的增強函數(shù)的解析表達式就可以得到不同的處理效果。二值化7二值化的目的是將采集獲得的多層次灰度圖像處理成二值圖像,以便于分析理解和識別并減少計算量。二值化就是通過一些算法,通過一個閾值改變圖像中的像素顏色,令整幅圖像畫面內(nèi)僅有黑白二值,該圖像一般由黑色區(qū)域和白色區(qū)域組成,可以用一個比特表示一個像素,“1”表示黑色,“0”表示白色,當(dāng)然也可以倒過來表示,這種圖像稱之為二值圖像。這便有利于我們對特征的提取。該設(shè)計中采用組內(nèi)方差和組外方差來實現(xiàn)二值化。直方圖均衡8直方圖均衡化的目的是使一輸入圖像轉(zhuǎn)換為在每一灰度級上都有相同的象素點數(shù),它的處理的中心思想是把原始圖
26、像的灰度直方圖從比較集中的某個灰度區(qū)間變成在全部灰度范圍內(nèi)的均勻分布,它的研究思路是:通過直方圖變換式來進行直方圖的均衡處理,直方圖變換式是但是直方圖均衡化存在著兩個缺點: 1)變換后圖像的灰度級減少,某些細節(jié)消失; 2)某些圖像,如直方圖有高峰,經(jīng)處理后對比度不自然的過分增強。人臉定位模塊人臉定位是將典型的臉部特征(如眼睛,鼻尖,嘴唇等等)標記出來,在本系統(tǒng)中,定位的特征是眼睛,鼻尖和嘴巴三個。由于眼睛具有對稱性,因此可以很快就能標記出來,而鼻子是在眼睛下面,且嘴巴在鼻子下面,所以只要眼睛標記好,鼻子和嘴巴也能相應(yīng)的標記出來。特征提取模塊特征提取按以下4個步驟進行:(1)、提取兩只眼睛的距離
27、(2)、眼睛的傾角度(3)、眼睛、嘴巴的重心(4)、用一個矩形標出每一個特征在特征提取完之后將會得到相應(yīng)的特征值以便存入后臺數(shù)據(jù)庫。 識別模塊該模塊通過與庫存中的特征向量進行比較,找出與特征最相近的參數(shù),再對該參數(shù)進一步分析。如果分析在我們所確認的范圍內(nèi),我們就認為該人就是我們所要找的。然后從庫存中提取出該人相關(guān)的信息,并顯示出來。如果庫存中沒有,則給出提示是否對存庫作為樣本。第四章 系統(tǒng)的詳細設(shè)計本章主要對圖像處理這一模塊進行詳細介紹,對其子模塊所用到的算法及具體實現(xiàn)進行詳細講述。第一節(jié) 系統(tǒng)的運行流程圖圖6-1 系統(tǒng)的運行流程圖1、啟動本系統(tǒng),進入人臉識別系統(tǒng)界面。2、點擊攝像鍵,然后進行
28、拍照,并將圖像顯示并保存。1、對圖片進行光線補償、將圖片變成灰色、實現(xiàn)圖片對比度增強,二值化變換等一系列預(yù)處理。2、將處理好的人臉圖片進行定位,標出眼睛、鼻尖和嘴巴。3、對定位好的人臉圖片進行特征提取操作。1、識別出圖片上的人。2、結(jié)束退出輸出輸入 第二節(jié) 圖像處理詳細設(shè)計一 位圖詳細設(shè)計1 設(shè)備無關(guān)位圖(DIB)VC+沒有提供使用十分方便的DIB繪制方法,只好自己去創(chuàng)建一個實用的DIB類了。本系統(tǒng)中建立了一個專門的類DIB來處理設(shè)備無關(guān)位圖,表41列出了對位圖的操作函數(shù)。函 數(shù)功 能ClearMemory()釋放內(nèi)存CopyHandle()拷貝內(nèi)存塊LoadDIB()加載位圖信息ReadDI
29、BFile()讀取位圖文件信息LightingCompensate()進行光線補償PixelOffset()修正像素值PaintDIBTrue()繪制DIB對象GetColorNumber()獲取顏色總數(shù)GetHeight()獲取DIB高度GetWidth()獲取DIB寬度GetSize()獲取圖像數(shù)據(jù)緩沖區(qū)中的字節(jié)數(shù)GetBitCount()獲取顏色位數(shù)GetBiBitCount()獲取字節(jié)數(shù) 表61 Dib類的部分功能二 圖像點處理詳細設(shè)計圖像點運算是一種既簡單又重要的技術(shù),它能讓用戶改變圖像數(shù)據(jù)占據(jù)的灰度范圍,一幅輸入圖像經(jīng)過點運算后將產(chǎn)生一幅新的輸出圖像,由輸入像素點的灰度值決定相應(yīng)的
30、輸出像素點的灰度值,點運算與局部運算的差別在于:后者每個輸出像素的灰度值由對應(yīng)輸入像素的一個領(lǐng)域內(nèi)幾個像素的灰度值決定。所以,點運算不可以改變圖像內(nèi)的空間關(guān)系。點運算可以按照預(yù)定的方式改變一幅圖的灰度直方圖。除了灰度級的改變是根據(jù)某種特定的灰度變換函數(shù)進行之外,點運算可以看作是“從像素到像素”的復(fù)制操作。如果輸入圖像為A(x,y),輸出圖像為B(x,y),則點運算可表示為: B(x,y) = fA(x,y) (式2)其中函數(shù)f(D)被稱為灰度變換(Gray Scale Transformation ,GST)函數(shù),它描述了輸入灰度值和輸出灰度值之間的轉(zhuǎn)換關(guān)系,一旦灰度變換函數(shù)確定,該點運算就完
31、全被確定下來了。點運算有時又稱為對比度增強、對比度拉伸或灰度變換,它是圖像數(shù)字化軟件和圖像顯示軟件的重要組成部分。下面將對本設(shè)計解決各圖像點處理模塊運用進行到的理論和編程實現(xiàn)進行詳細講述。1、光線補償(1)算法思想:光線補償?shù)南敕ǖ奶岢鲋饕强紤]到膚色等色彩信息經(jīng)常受到光源顏色、圖像采集設(shè)備的色彩偏差等因素的影響,而在整體上偏離本質(zhì)色彩而向某一方向移動,即我們通常所說的色彩偏冷、偏暖、照片偏黃、便藍等等。這種現(xiàn)象在藝術(shù)照片中更為常見。所以Anil K.Jain等提出,為了抵消這種整個圖像中存在著的色彩偏差,我們將整個圖像中所有像素亮度(是經(jīng)過了非線形r-校正后的亮度)從高到低進行排列,取前5%
32、的像素,如果這些像素的數(shù)目足夠多(例如,大于100),我們就將它們的亮度作為“參考白”(Reference White),也即將它們的色彩的R、G、B分量值都調(diào)整為255。整幅圖像的其他像素點的色彩值也都按這一調(diào)整尺度進行交換。 (2) 具體實現(xiàn)光線補償功能: 明白了光線補償這功能的算法及思想,就可以編碼實現(xiàn)其功能了,實現(xiàn)過程如下:、 編輯菜單IDR_MAINFRAM,先在其中添加一菜單項,將其命名為“預(yù)處理”,并在其屬性欄中將其設(shè)為“彈出”菜單,點擊預(yù)處理該菜單項將會彈出一個新的子菜單,此時把該子菜單命名為“光線補償”,并把其ID設(shè)為ID_READY_LIGHTINGCONPENSATE,對
33、應(yīng)文件FaceDetectViewCpp中的函數(shù)ReadyLightingconpensate()實現(xiàn),并在void CFaceDetectView: OnReadyLightingconpensate()中添加如下代碼:hDIBTemp = gDib.CopyHandle(hDIB);gDib.LightingCompensate(hDIB);GlobalUnlock(hDIB);Invalidate();光線補償功能實質(zhì)上是用上段代碼中的LightingCompensate()函數(shù)來進行實現(xiàn)。函數(shù)LightingCompensate()是類DIB的一個成員函數(shù)。其核心代碼如下所述:/下面的
34、循環(huán)對圖像進行光線補償for(i =0;iheight;i+)for(int j=0;jPixelOffset(i,j,wBytesPerLine); /得到藍色分量*(lpData+lOffset) = colorb;/綠色分量colorb = *(lpData+lOffset+1);colorb *=co;if(colorb 255)colorb = 255;*(lpData+lOffset+1) = colorb;/紅色分量colorb = *(lpData+lOffset+2);colorb *=co;if(colorb 255)colorb = 255;*(lpData+lOffse
35、t+2) = colorb; 光線補償?shù)男Ч麍D如下所示 : 圖 4-1 原圖 圖4-2 光線補償效果圖2、 圖像灰度化(1)算法思想 彩色轉(zhuǎn)換成灰度 將彩色圖像轉(zhuǎn)化為灰階圖像常采用如下的經(jīng)驗式: gray0.39R0.50G0.11B(式3)其中,gray為灰度值,R、G、B分別為紅色、綠色和藍色分量值。 灰度比例變換灰度比例變換是把原像素的灰度乘以一個縮放因子,并最后截至0,255。 灰度線性變換當(dāng)圖像由于成像時曝光不足或曝光過度,會產(chǎn)生對比度不足的弊病,從而使圖像中的細節(jié)分辨不清。將圖像灰度進行線性擴展,常能顯著地改善圖像的外觀?;叶染€性變換的計算式為: g = (式4)f,其他式中,f是
36、原像素的灰度,g為變換后的灰度。該變換把屬于a,b的灰度級變換至灰度區(qū)間c,d,而沒有在a,b區(qū)間的原像素灰度將保持不變。這里a,b,c,d,f,g均為0,255之間的整數(shù)值??梢姡琣被映射為c,b被映射為d。 灰度線性截斷 灰度線性截斷的思想是:如果原像素的灰度小于a,則該像素的灰度等于c;如果原像素的灰度大于b,則該像素的灰度等于d。(2)具體實現(xiàn)灰度化功能在明白了灰度化的原理之后,就可進行編碼來實現(xiàn)該功能。 編輯菜單IDR_MAINFRAM,先在其中添加一菜單項,將其命名為”圖像灰度化”,并將其ID號設(shè)為ID_READY_SCALE, 對應(yīng)文件FaceDetectViewCpp中的函數(shù)R
37、eadyLightingconpensate()實現(xiàn). 現(xiàn)該模塊的核心代碼如下:獲取藍色分量 ColorB=*(lpData + lOffset); 獲取綠色分量 ColorG=*(lpData + lOffset+1); 獲取紅色分量 ColorR=*(lpData + lOffset+2); 計算灰度值 gray = (ColorG*50+ColorR*39+ColorB*11)/100;顯示灰度圖像 *(lpData + lOffset)=gray ; *(lpData + lOffset+1)=gray ; *(lpData + lOffset+2)=gray ;其中l(wèi)pData是圖片
38、數(shù)據(jù)區(qū),lOffset是圖片像素的偏移,gray 是圖像的灰度值 圖像灰度化效果圖:圖 4-3 圖像灰度化效果圖3、高斯平滑(1) 算法思想 在介紹高斯平滑前,先介紹模板操作。模板操作是數(shù)字圖像處理中經(jīng)常用到的一種運算方法,圖像的平滑、銳化以及細化、邊緣檢測都要用到模板操作。例如:有一種常見的平滑算法是將原圖中一個像素的灰度值和它周圍鄰近八個像素的灰度值相加,然后求得的平均值(除以9)作為新圖中該像素的灰度值,用如下方法來表示該操作: 1 1 11/9 1 1 1 1 1 1 上式類似于矩陣,我們通常稱之為模板。中間的黑點表示該元素中心元素,即該個元素是要進行處理的元素。如果模板是:1 1 1
39、1/9 1 1 11 1 1則該操作應(yīng)該描述為:將原圖中一個像素的灰度值和它右下鄰近的8個像素的灰度值相加,然后將求得的平均值9(除以9)作為新圖中該像素的灰度值。如果模板為 2 , 1則表示將自身灰度值的2倍加下邊的元素灰度值作為新值,而 2 則表示將自身 1灰度值加上邊元素灰度值的2倍作為新灰度值。通常模板不允許移出邊界,所以處理后的圖像會比原圖小,例如:當(dāng)模板是 1 0 原圖灰度值矩陣是 1 1 1 1 1 0 2 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 時,經(jīng)過模板操作后的圖像為 5 5 5 5 - 8 8 8 8 - 11 11 11 11 - - - - - -
40、 “-”表示邊界上無法進行模板操作的點,一般的做法是復(fù)制原圖的灰度值,不再進行任何其他的處理。模板操作實現(xiàn)了一種領(lǐng)域運算,即某個像素點的結(jié)果不僅和本像素灰度有關(guān),而且和其領(lǐng)域點的值有關(guān)。下面對平滑的用途和解決方法進行詳細介紹。在圖像的采集過程中,由于各種因素的影響,圖像中往往會出現(xiàn)一些不規(guī)則的隨機噪聲,如數(shù)據(jù)在傳輸、存儲時發(fā)生的數(shù)據(jù)丟失和損壞等,這些都會影響圖像的質(zhì)量。處理噪聲點的過程稱之為平滑,平滑可以降低圖像的視覺噪聲,同時除去圖像中的高頻部分后,那些本來不明顯的低頻成分更容易識別。而噪聲點一般是孤立的點,噪聲點的像素灰度與它們的近鄰像素有顯著的區(qū)別,即灰度變化總在這附近有突變高頻。平滑可
41、用卷積來實現(xiàn),平滑的頻率截止點由卷積核的大小及卷積系數(shù)決定。用于平滑濾波的卷積核叫做低通過濾波器,低通過濾波器具有如下的特征:1卷積核的行、列數(shù)為奇數(shù),通常為33的矩陣;2卷積系數(shù)以中心點為中心對稱分布;3所有的卷積系數(shù)都為正數(shù);4距離中心較遠的卷積系數(shù)的值較小或保持不變;5卷積后的結(jié)果不改變圖像的亮度。經(jīng)過卷積平滑后給隨后的水平投影、二值化提供了較好的圖像效果。水平投影的曲線顯得比較平滑,二值化后的圖像孤立點比較少。以下是幾個常用的卷積核:1/9 1/9 1/9 1/10 1/10 1/10 1/16 2/16 1/161/9 1/9 1/9 1/10 1/5 1/10 2/16 4/16
42、2/161/9 1/9 1/9 1/10 1/10 1/10 1/16 2/16 1/16L P1 LP2 LP3通常的處理是:將中心點周圍八個點的像素值乘于各自矩陣相應(yīng)的系數(shù)后相加得到一個值,然后將這個值乘上中心點的系數(shù),中心點的像素值賦為得到的最后值。一般來說,不同的噪聲有各自針對性的卷積算法。本文使用的卷積算法是高斯卷積核,亦即上面卷積核的LP3。高斯卷積是通過采樣2維高斯函數(shù)得到的。高斯平滑算法的優(yōu)點是平滑后圖像的失真少,算法更具備通用性,能去除不同的噪聲干擾。需要注意的是:在平滑處理時,圖像邊界點無法處理,因此循環(huán)范圍應(yīng)設(shè)定在圖像邊界內(nèi)。(2) 具體實現(xiàn)高斯平滑功能知道高斯平滑原理之
43、后,可進行編碼將其實現(xiàn): 編輯菜單IDR_MAINFRAM,在菜單“預(yù)處理”中添加一子菜單項,命名為“高斯平滑”并將其ID設(shè)為ID_READY_Template。 在類CFaceDetectView中添加“高斯平滑”菜單項的事件處理程序,其代碼如下: /進行模板操作 Template(tem ,3,3, xishu); Invalidate(TRUE); 其中tem是模板參數(shù),xishu是模板系數(shù);Template()函數(shù)是實現(xiàn)高斯平滑的主要函數(shù),其核心代碼是: for(m=i-(tem_h-1)/2);m=i+(tem_h-1)/2);m+) for(n=j-(tem_w-1)/2);n=j
44、+(tem_w-1)/2);n+) 注: 將以點(i,j)為中心,與模板大小相同的范圍內(nèi)的象素與模板對用位置的系數(shù)進行相乘并線形疊加 sum+=Graymn* tem(m-i+(tem_h-1)/2)*tem_w+n-j+(tem_w-1)/2); 將結(jié)果乘上總的模板系數(shù) sum=(int)sum*xishu; 計算絕對值 sum = fabs(sum); 如果小于0,強制賦值為0 if(sum255) sum=255; HeightTemplateij = sum; 高斯平滑效果圖:見下圖 4-4 圖4-4 高斯平滑效果圖4、灰度均衡(1)算法思想灰度均衡也稱直方圖均衡,目的是通過點運算使輸
45、入轉(zhuǎn)換為在每一灰度級上都有相同的像素點數(shù)的輸出圖像(即輸出的直方圖是平的)。這對于在進行圖像比較或分割之前將圖像轉(zhuǎn)化為一級的格式是十分有效的。按照圖像的概率密度函數(shù)(PDF,歸一化帶單位面積的直方圖)的定義:P(x) = * H(x)(式5)其中H(x)為直方圖,A0為圖像的面積,設(shè)轉(zhuǎn)換前圖像的概率密度函數(shù)為Pr(r),轉(zhuǎn)換后圖像的概率密度函數(shù)為Ps(S),轉(zhuǎn)換函數(shù)為s = f(r),由概率論知識,我們可以得到:Ps(S) = Pr(r)* (式6)這樣,如果想使轉(zhuǎn)換后圖像的概率密度函數(shù)為1(即直方圖是平的)則必須滿足:Pr(r)= (式45)等式兩邊積分,得: S = f(r)= 0 rP2
46、(u)du =0 r H(u)du (式7)該轉(zhuǎn)換式被稱為圖像的累積分布函數(shù)上面的式是被歸一化后推導(dǎo)的對于沒有歸一化的情況,只要求以最大的灰度值(DMax,對于灰度圖就是255)即可,灰度均衡的轉(zhuǎn)換式為:DB = f (DA)= H(u)du (式1)對于離散圖像轉(zhuǎn)換式為:DB = f(DA)= (式8) 式中Hi為第i級灰度的像素個數(shù)。(2)編程實現(xiàn)在灰度均衡操作同樣不需要改變DIB的調(diào)色板和文件夾,只要把指向DIB像素起始位置的指針和DIB高度、寬度信息傳遞給子函數(shù)就可以完成灰度均衡變換工作,其核心代碼如下: *(lpData + lOffset)=state ; /顯示灰度均衡*(lpD
47、ata + lOffset+1)=state ;*(lpData + lOffset+2)=state ;(3)效果圖 圖 4-5 灰度均衡效果圖5、圖像對比度增強算法思想:在對圖像均衡直方圖處理以后,便可對圖像進行對比度增強,進一步拉開對比度。它通過對圖像的灰度值進行統(tǒng)計,對于比最小設(shè)定值小的則認為是有關(guān)的信息,則將它作為黑色處理,比最大設(shè)定值大的則認為是一些無關(guān)的信息,將它們?nèi)サ?,而處于兩者之間的,則進行對比度增強,將他們在總的灰度值里面的比例作為新的像素信息保存起來。這個工作的主要目的是將圖像的特征一步一步顯現(xiàn)出來。(2) 編碼實現(xiàn): 編輯菜單IDR_MAINFRAM,在菜單“預(yù)處理”中
48、添加一子菜單項,命名為“實現(xiàn)圖像對比度增強”,并將其ID設(shè)為ID_READY_ContrastEnhance。 類CFaceDetectView中添加“實現(xiàn)圖像對比度增強”菜單項的事件處理程序,其代碼如下;lOffset = gDib.PixelOffset(i, j, gwBytesPerLine);獲取圖像灰度增強函數(shù)int state=IncreaseContrast(ZFTkk1, 100); 顯示灰度增強后的圖像*(lpData + lOffset ) = state ; *(lpData + lOffset+1) = state ;*(lpData + lOffset+2) = s
49、tate ;其中IncreaseContras()函數(shù)是實現(xiàn)圖像對比度增強的關(guān)鍵函數(shù),該根據(jù)參數(shù)n來調(diào)節(jié)對比度,n越大,對比越強烈,其核心是:如果數(shù)據(jù)很小,設(shè)置為0if(pByte=Low)return 0;獲得中間數(shù)據(jù),并進行對比增強處理else if (LowpByte)&(pByteHigh)return int(pByte-Low)/Grad);如果數(shù)據(jù)很大,設(shè)置為255elsereturn 255;效果圖圖4-6 對比度增強效果圖第三節(jié) 編程時的問題解決1、光線補償 由于要改變每一個像素的亮度,開始,我通過對數(shù)幅圖像使用一個固定的值進行測試,得到的效果都滿理想,但是當(dāng)對更多的圖像處理
50、時,該固定值就出現(xiàn)了明顯的不足,最后不得不采用全局統(tǒng)計的方法,才能得到比較理想的效果。 2、高斯平滑 高斯平滑用于消除圖片噪音,為了實現(xiàn)此功能,我們使用了模板操作,因此模板參數(shù)的選擇是最重要的。高斯平滑效果的好壞取決與模板參數(shù)。在編程的時候,試探性的進行參數(shù)的選擇,然后進行比較,看那組參數(shù)可以達到最好的效果。模板參數(shù)是 原先采用了 1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9 形式,但是,得到的效果卻是令人失望。 后來又用了 1/10 1/10 1/10 1/10 1/5 1/10 1/10 1/10 1/10 形式,但是,結(jié)果仍然是未能達到預(yù)期的效果。 直到最后采用
51、的 1/16 2/16 1/16 2/16 4/16 2/16 1/16 2/16 1/16 形式,才得到了比較合理的效果。3、 均衡直方圖 開始時,圖像的會度一直都處于很散的狀態(tài),而且圖像的特征不明顯,原本想經(jīng)過高斯平滑后進行灰度變換,但是并未能成功。經(jīng)過了一翻苦戰(zhàn),最終找到均衡直方圖的辦法,經(jīng)過多次嘗試,效果一直處于比較理想的狀態(tài)。 第五章 結(jié)構(gòu)設(shè)計在本系統(tǒng)中,起至關(guān)重要的類列舉如下,并將它們的成員函數(shù)及其成員函數(shù)的功能和參數(shù)都一一簡述:1、CFaceDetectView :該類是在編程的過程中自動生成的。菜單項中的事件處理程序都是在該類對應(yīng)的CFaceDetectView.h文件和CFa
52、ceDetectView.cpp文件中聲明和實現(xiàn)的。表71列出了該類所封裝的成員函數(shù)及其功能: 表71 類 CfaceDetectView的成員函 數(shù)功 能IncreaseContrast ()增強圖像對比度FixeEyes ()眼睛定位FixeNose()鼻子定位FixeMouth ()嘴巴定位GetEyesParameter ()獲取眼睛參數(shù)GetPartParameter()獲取臉部特征GetmouthParameter ()獲取嘴巴參數(shù)Centerofgravity()獲取眼、鼻子、嘴巴的重心AverageDeviation ()獲取平均值的標準偏差Template()對圖像進行模板操
53、作DrawCrossX ()畫十字標記 各成員函數(shù)解析函數(shù)名稱 : IncreaseContrast參數(shù) : int pByte - 圖像的灰度值 int n - 用于調(diào)節(jié)對比度的參數(shù)返回值 : int - 新的灰度值說明 : 該函數(shù)通過修圖像的灰度值來增強圖像的對比度函數(shù)名稱 : FixeEyes參數(shù) : 無返回值 : bool說明 : 該函數(shù)判斷圖片中是否有人臉,并對人臉圖片進行眼睛定位函數(shù)名稱 : FixeNose參數(shù) : 無返回值 : void 說明 : 該函數(shù)是在眼睛定位之后的前提下進行鼻子的定位函數(shù)名稱 : Fixeouth參數(shù) : 無返回值 : void 說明 : 該函數(shù)是在眼睛
54、和鼻子都定位之后的前提下再進行嘴巴的定位函數(shù)名稱 : GetEyesParameter參數(shù) : 無返回值 : void 說明 : 該函數(shù)分別獲取了眼睛、鼻子、嘴巴的重心之后,再根據(jù)兩眼間的角度、鼻眼鼻所形成的角、鼻嘴鼻所形成的角、兩個眼睛中心距與臉寬的比例來獲取眼睛參數(shù)。函數(shù)名稱 : GetPartParameter參數(shù) : 無返回值 : void 說明 : 該函數(shù)的功能是用于獲取整個臉部的特征函數(shù)名稱 : Centerofgravity參數(shù) : 無返回值 : void 說明 : 該函數(shù)的功能是找出眼睛、鼻子、嘴巴的重心并用十字將它們標記出來函數(shù)名稱 : AverageDeviation參數(shù)
55、: double NewData - 新獲取的數(shù)據(jù) double OldData - 以前的數(shù)據(jù)返回值 : double -平均值的標準偏差說明 : 該函數(shù)用于計算平均值的標準偏差函數(shù)名稱 : Template參數(shù) : double * tem - 指向模板的指針 HDIB hDIB - 圖像的句柄 int tem_w - 模板的寬度 int tem_h - 模板的高度 double xishu - 模板的系數(shù) 返回值 : 無說明 : 該函數(shù)對圖像進行模板操作,但為了方便起見,模板的高度和寬度都是用奇數(shù)。函數(shù)名稱 : DrawCrossX參數(shù) : int x int y 返回值 : 無說明 :
56、 該函數(shù)對已經(jīng)做好預(yù)處理的人臉圖像中的特征(眼睛、鼻子、嘴巴)用十字標記出來類ClikelyHood ,表7-2列出了該類所封裝的成員函數(shù)及其功能 表7-2 類ClikelyHood的成員函 數(shù)功 能CalLikeHood ()計算相似度CalBinary ()二值化圖像filter()實現(xiàn)濾波功能CalParameter ()訓(xùn)練參數(shù)各成員函數(shù)解析函數(shù)名稱 : CalLikeHood參數(shù) : 無 返回值 : 無說明 : 該函數(shù)用于計算相似度函數(shù)名稱 : CalBinary參數(shù) : 無 返回值 : bool說明 : 該函數(shù)用于將圖像二值化函數(shù)名稱 : filter參數(shù) : double* so
57、urce 返回值 : bool 說明 : 該函數(shù)的功能是實現(xiàn)中值濾波函數(shù)名稱 : CalParameter參數(shù) : DirectPath Bmp文件路徑返回值 : bool 說明 : 該函數(shù)的功能是對參數(shù)進行訓(xùn)練3 類CFaceDetectDoc 表7-3 類CFaceDetectDoc的成員函 數(shù)功 能CopyBitMap ()拷貝位圖MakeBitMap ()生成新的位圖DrawCross ()畫十字形標記Likehood ()計算相似度各成員函數(shù)解析函數(shù)名稱 : CopyBitMap參數(shù) : dest 目標位圖指針 Source 源位圖指針 返回值 : bool說明 : 該函數(shù)的功能是拷
58、貝位圖函數(shù)名稱 : MakeBitMap參數(shù) : 無 返回值 : 無說明 : 該函數(shù)的功能是生成一個新的位圖函數(shù)名稱 : DrawCross參數(shù) : pDCCDC指針 point要畫的點的坐標 crColor標記得顏色 返回值 : 無說明 : 該函數(shù)用于畫十字形標記函數(shù)名稱 : Likehood參數(shù) : int m_WndWidth 圖片高度 int m_WndHeight 圖片寬度 返回值 : 無說明 : 該函數(shù)用于計算相似度4、類DIB 函 數(shù)功 能CopyHandle()拷貝內(nèi)存塊ReadDIBFile()讀取位圖文件信息LightingCompensate()進行光線補償PixelOf
59、fset()修正像素值GetHeight()獲取DIB高度GetBiBitCount()獲取字節(jié)數(shù)表7-4 類Dib的成員各成員函數(shù)解析函數(shù)名稱 : CopyHandle參數(shù) : HANDLE hSrc 要拷貝的內(nèi)存區(qū)域 返回值 : HANDLE 拷貝后的新內(nèi)存區(qū)域說明 : 該函數(shù)拷貝指定的內(nèi)存區(qū)域,返回復(fù)制后的新內(nèi)存區(qū)域,出錯時返回NULL函數(shù)名稱 : ReadDIBFile 參數(shù) : HANDLE hFile 要讀取的文件hFile 返回值 : HDIB 成功返回DIB的句柄,否則返回NULL說明 : 該函數(shù)拷貝指定的內(nèi)存區(qū)域,返回復(fù)制后的新內(nèi)存區(qū)域,出錯時返回NULL函數(shù)名稱 : Pix
60、elOffset參數(shù) : int i,j WORD wBytePerLine 圖像每行的字節(jié)數(shù) 返回值 : long 圖像像素數(shù)據(jù)的偏移說明 : 該函數(shù)計算圖像像素數(shù)據(jù)的偏移函數(shù)名稱 : GetHeight參數(shù) : 無 返回值 : long 圖片高度說明 : 該函數(shù)返回圖像的高度函數(shù)名稱 : GetBitBitCount參數(shù) : 無 返回值 : int 圖片字節(jié)數(shù)說明 : 該函數(shù)返回圖片字節(jié)數(shù)第六章 測試測試是為了找出程序的錯誤。正如測試的規(guī)則所確定的一樣:測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程;好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案;成功的測試是發(fā)現(xiàn)了迄今為止尚未發(fā)現(xiàn)的
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- ERP系統(tǒng)選型教學(xué)課件
- 全媒體運營師崗位要求分析及試題及答案
- 全媒體運營師內(nèi)容規(guī)劃技能試題及答案
- 2024年陪診師考試的結(jié)構(gòu)性分析試題及答案
- 員工流失率分析與對策試題及答案
- 2024年陪診師考試護理記錄試題及答案
- 2024年人力資源管理師考試的應(yīng)考技巧試題及答案
- 2024監(jiān)理工程師題庫建設(shè)試題及答案
- 黑龍江省哈爾濱六十九重點名校2024-2025學(xué)年中考物理試題壓軸試卷含解析
- 黑龍江省哈爾濱第六中學(xué)2025屆高三假期自主綜合能力測試(三)語文試題含解析
- 2025年駐馬店全域礦業(yè)開發(fā)有限公司招聘27人筆試參考題庫附帶答案詳解
- DB32T 5013-2025鎘污染耕地土壤減污修復(fù)黏土礦物-四氧化三鐵-海藻酸鈉基功能材料制備技術(shù)規(guī)程
- 高中語文整本書閱讀教學(xué)研究
- 2025年全國質(zhì)量月活動總結(jié)參考(2篇)
- 中國近現(xiàn)代史綱要心得體會
- 縫紉培訓(xùn)課件
- 中建落地式腳手架施工方案
- 《中華人民共和國機動車駕駛?cè)丝颇恳豢荚囶}庫》
- 倪海廈天紀學(xué)習(xí)筆記以及講義
- 醫(yī)療安全不良事件報告制度培訓(xùn)
- 抗菌藥物的合理應(yīng)用培訓(xùn)
評論
0/150
提交評論