本發明屬于模式識別領域,具體涉及計算機視覺、模式識別等相關理論知識,用于人臉識別系統。
背景技術:
隨著人們對快速有效的自動身份驗證的迫切需求,促使了生物特征識別技術的不斷發展,促進了以指紋識別,虹膜識別,人臉識別等為主的生物特征識別技術的飛速發展。
生物特征識別技術是指通過計算機與光學、聲學、生物傳感器和生物統計學原理等高科技手段密切結合,利用人體固有的生理特性和行為特征來進行個人身份鑒定的新型技術。現階段用于生物識別的生物特征主要有手形、指紋、臉形、虹膜、視網膜、脈搏、耳廓等,基于這些特征,隨著現代電子技術和各種硬件技術的發展,生物特征采集器械和計算分析器械生產成本的明顯減少,而其精度和速度都成數量級地不斷提升,生物特征識別技術在取得了長足的發展的同時也得到了廣泛的應用。不僅如此,隨著生物特征識別技術的不斷發展,與生物特征識別技術相關領域的數字圖像處理、計算機視覺、模式識別、傳感器技術等領域也迎來了新的發展研究。
目前,生物特征識別技術應用最廣泛的是指紋識別、虹膜識別,人臉識別。其中人臉識別由于無侵犯性、低成本、易安裝、無人工參與等優點使得人臉識別技術得到了廣泛的研究與應用。
在人臉識別的實際過程中,由于待檢測的人臉圖像常常受光照,遮擋,表情以及人臉偏轉角度等一些非穩定性因素的影響,使得人臉識別的精準度不太理想;同時由于提取的人臉特征是后面人臉匹配的關鍵性數據,直接關系到整個識別系統的可行性,因而一個面對復雜場景下,魯棒性好,準確率高,實時性好的人臉識別算法顯得尤為重要。
經過幾十年的研究,研究者們提出了大量人臉識別算法,其中比較主要的識別算法有:
一、基于幾何特征的方法。幾何特征最早是用于人臉側面輪廓的描述與識別,首先根據側面輪廓曲線確定若干顯著點,并由這些顯著點導出一組用于識別的特征度量如距離、角度等,然后由正面灰度圖中線附近的積分投影模擬側面輪廓圖。采用幾何特征進行正面人臉識別一般是通過提取人眼、口、鼻等重要特征點的位置和眼睛等重要器官的幾何形狀作為分類特征。然而這種方法存在兩個問題,一是能量函數中各種代價的加權系數只能由經驗確定,難以推廣,二是能量函數優化過程十分耗時,難以實際應用。
二、特征臉方法(Eigenface或PCA),也稱為基于主成分分析(principal component analysis,簡稱PCA)的人臉識別方法。其基本思想是:從統計的觀點,尋找人臉圖像分布的基本元素,即人臉圖像樣本集協方差矩陣的特征向量,以此近似地表征人臉圖像。這些特征向量稱為特征臉(Eigenface)。特征臉反映了隱含在人臉樣本集合內部的信息和人臉的結構關系。將眼睛、面頰、下頜的樣本集協方差矩陣的特征向量稱為特征眼、特征頜和特征唇,統稱特征子臉。特征子臉在相應的圖像空間中生成子空間,稱為子臉空間。計算出測試圖像窗口在子臉空間的投影距離,若窗口圖像滿足閾值比較條件,則判斷其為人臉。特征臉方法是一種簡單、快速、實用的基于變換系數特征的算法,但由于它在本質上依賴于訓練集和測試集圖像的灰度相關性,而且要求測試圖像與訓練集比較像,所以它有著很大的局限性。
三、神經網絡方法(Neural Networks,Net)。神經網絡方法在人臉識別上的應用比起前述幾類方法來有一定的優勢,因為對人臉識別的許多規律或規則進行顯性的描述是相當困難的,而神經網絡方法則可以通過學習的過程獲得對這些規律和規則的隱性表達,它的適應性更強,一般也比較容易實現。神經網絡方法通常需要將人臉作為一個一維向量輸入,因此輸入節點龐大,其識別重要的一個目標就是降維處理。
以上的人臉識別算法都已日趨成熟,但對于光照,表情,環境變化,偏轉角度等復雜場景下的魯棒性還有待提高,同時其識別的精度和算法運行的速度這一矛盾性問題也有待改善。
技術實現要素:
本發明的發明目的在于:針對上述存在的問題,提供一種適用于復雜場景且計算復雜度低的基于PCANet的人臉特征提取的人臉識別方法。
PCANet可以被看作是最簡單的卷積深度學習網絡,PCANet的核心是利用PCA(特征臉方法)來學習多階段的濾波器。PCANet提取輸入圖像的圖像特征的過程可以分為三部分:PCA濾波器,二值哈希,分塊直方圖。其中PCA被用于學習多級濾波器,然后用binary hashing和block histograms分別做索引和合并,最后得出每一張輸入圖像的圖像特征,即將每幅圖像的特征化為1x n維的圖像特征向量。
本發明的基于PCANet的人臉識別方法包括下列步驟:
步驟1:圖像預處理。
對待識別圖像進行灰度轉化,然后對得到的灰度圖進行灰度增強處理,如利用直方圖均衡和圖像平滑去噪進行灰度增強處理,灰度增強處理主要針對光線太暗和光照太強的圖片,從而削弱光照對后續結果的影響。
步驟2:人臉檢測。
對圖像預處理后的待識別圖像,進行多角度人臉檢,以判斷當前圖像是否存在人臉,以便于判斷是否進行后續步驟。例如采用基于Adaboost方式的多角度人臉檢測,,盡可能的把不同角度不同姿勢條件的人臉區域得到一個準確的劃分,提供一個精確和高效的人臉定位,以提高后續識別步驟的效率。和傳統的人臉檢測方法相比,本發明可以準確檢測到同一圖像幀里的多張人臉,并且基于Adaboost方式(角度范圍為0~45°)的多角度人臉檢測,可以準確有效的檢測到30度偏轉范圍內的人臉,甚至是在45度偏轉范圍內都有高效準確的檢測結果,從而在很大程度上克服了傳統方法在多人臉檢測中不能準確處理人臉角度偏轉的問題。
步驟3:人臉校正。
基于眉毛、眼睛、鼻子、嘴巴為基準,從標準正面人臉圖形中選取多個人臉特征點,以所選取的人臉特征點的位置分布信息構建人臉特征點的標準位置信息。可以通過大量標準正面人臉圖形的人臉特征點的位置分布信息統計,得到人臉特征點的標準位置信息。
在比對檢測到的人臉過程中,以人臉特征點的標準位置信息進行旋轉重建,實現人臉的校正,使得多角度人臉檢測的情況下得到正面人臉,從而使得后續的人臉匹配變得更加準確高效;另外,基于構建的標準位置信息進行人臉校正的處理方式,和傳統的人臉校正模式相比,在很大程度上也減輕了本發明在人臉校正過程中的數據處理量。
步驟4:人臉匹配。
在步驟3處理后,得到了標準的人臉圖形(正面人臉圖像),然后再根據PCANet的特征提取方式,對待識別人臉圖像(正面人臉圖像)進行特征提取。在特征提取時,與現有的對整幅圖像直接采用PCANet的方式不同,本發明先對待識別人臉圖像基于面部器官對待識別人臉圖像進行圖像分塊,將其劃分為不同的人臉區域,然后再使用PCANet分別提取各圖像塊(人臉區域)的人臉特征,由同一待識別人臉圖像的所有圖像塊的人臉特征構成待識別圖像的人臉特征數據,簡稱待識別人臉特征數據。
采用遍歷匹配的方式,將待識別人臉特征數據與人臉數據庫中的人臉特征數據進行人臉匹配,取最優匹配作為人臉識別結果。例如取人臉數據庫中的所有人臉特征數據中,與待識別人臉特征數據的卡方距離最小的作為最優匹配。其中,人臉數據庫中的人臉特征數據也是基于分塊的方式得到,即先將人臉圖像基于面部器官進行圖像分塊,再使用PCANet分別提取各圖像塊的人臉特征得到各人臉圖像的人臉特征數據。且人臉數據庫中的人臉特征數據的讀寫方式為:序列化的寫和反序列化的讀,即采用google開源的protocol buffer交換技術。對人臉數據庫中的人臉特征數據進行序列化處理,使得在匹配過程中,直接進行二進制流的讀寫,從而減少了原始數據到字節流數據轉換過程中的時間開銷。
另外,為了進一步的保證識別的精度,通過預設閾值(經驗值,取決于實際應用場合),當最優匹配與與待識別人臉特征數據的卡方距離小于或等于預設閾值時,則認為匹配準確,將最優匹配作為人臉識別結果;否則,認為人臉識別失敗,即當前待識別人臉圖像無法識別。
本發明在提取圖像特征時的,基于分塊思想的PCANet處理模式,可以針對不同的人臉區域提取更具表達性的人臉特征,從而得到更加高的識別率,同時由于多次對不同人臉區域使用PCA降維技術最后得到的特征數據維度比現有的人臉識別方法更低,很大程度上減少了識別處理的計算時間和存儲空間的開銷。同時在人臉匹配的過程中,由于每一個比對人臉的特征數據信息保存為一個1*n的矩陣數據,而n的取值通常都在104或以上數量級,所以數據庫中用于匹配待識別人臉特征數據的人臉的數據量非常龐大,本發明在確保人臉匹配的高準確率的同時,通過對所有數據庫中的人臉特征數據在讀寫人臉特征數據文件時采用google開源的protocol buffer交換技術,進一步減少了匹配處理的時間開銷,加快識別速度,從而使得整個人臉匹配過程時間的開銷達到毫秒級別的水平。
綜上所述,由于采用了上述技術方案,本發明的有益效果是:
(1)本發明采用散列化的特征提取方式(在不同的人臉區域分別使用PCANet進行人臉特征提取),可以針對不同的人臉區域提取更具表達性的人臉特征;同時由于多次對不同人臉區域使用PCA降維技術,使得最后得到的特征數據維度比現有的對整幅圖像直接采用PCANet的特征提取方式更低,降低了識別處理的時間和存儲空間開銷;
(2)在人臉檢測過程中,采用多角度的人臉檢測方式,同時為了確保后續識別的高準確性,加入了基于眼睛、鼻子、嘴巴的標準正面人臉位置校正方式,使得整個識別處理更加貼合于實際應用。
(3)在匹配時,對數據庫的人臉特征數據采用序列化的寫和反序列化的讀,進一步降低了識別處理的時間開銷,使得本發明的識別處理的時間效率達到毫秒級的水平。
附圖說明
圖1是本發明的實現流程圖;
圖2是本發明的人臉特征點標注示意圖。
具體實施方式
為使本發明的目的、技術方案和優點更加清楚,下面結合實施方式和附圖,對本發明作進一步地詳細描述。
參見圖1,本發明的基于PCANet的人臉識別方法主要包括:圖像預處理、人臉檢測、人臉校正、人臉特征提取、人臉匹配。
對于輸入的待識別圖像(前端視頻流或是圖片集的輸入數據)首先進行圖像預處理后,進行人臉檢測,若存在人臉,則進一步判斷其是否為正面人臉圖像,若是,則直接進行人臉特征提取;否則,先進行旋轉校正后再進行人臉特征提取。
在在進行人臉校正處理時,本發明基于標準正面人臉圖像的面部器官特征點的位置分布信息,構建人臉特征點的標準位置信息。如圖2所示,共設置有49個面部器官特征點,左右眉毛分別設置5個特征點:眉頭、眉尾、標識眉毛的3個特征點,左右眼睛分別設置6個特征點:2個眼角、標識上下眼瞼的2個特征點,鼻子設置9個特征點:標識鼻梁的4個特征點、標識鼻頭的5個特征點,嘴巴設置18個特征點:左右嘴角、上下嘴唇輪廓分別設置8個特征點。圖2中的嘴巴特征點為張開狀態,若為閉合狀態,可以對應減少特征點個數,即閉合狀態時,標識上下嘴唇內輪廓的特征點可能存在重疊,則可去冗余,以減少特征點個數。
然后將非正面的待識別人臉圖像,基于49個人臉特征點的標準位置信息,進行旋轉校正,得到正面的待識別人臉圖像。
然后對待識別人臉圖像,先劃分為不同的人臉區域,如分別包括眉毛、眼睛、鼻子、嘴巴的人臉子區域,然后對人臉子區域采用PCANet方式進行人臉特征提取后,與本地數據庫中的人臉特征數據進行匹配比對,得到識別結果。
例如,從Purdue大學的AR人臉庫中隨機選取100個人,每人14張在不同光照,不同表情的人臉圖片作為測試集,即測試集為100*14。本地數據庫的規模為100*7,即目標對象100人,每人有7張目標匹配圖像。
通過本發明的PCANet的人臉識別方法,對上述測試集進行測試驗證,其測試結果為:
識別總人數:700,識別失敗人數:36,識別率:95%;識別總時間:218秒,識別平均時間:0.311429秒;因此,本發明識別準確率高,魯棒性和識別效率良好。
以上所述,僅為本發明的具體實施方式,本說明書中所公開的任一特征,除非特別敘述,均可被其他等效或具有類似目的的替代特征加以替換;所公開的所有特征、或所有方法或過程中的步驟,除了互相排斥的特征和/或步驟以外,均可以任何方式組合。