人臉識別演算法初次了解在寫此文之前,先扯點東西。我一直在找乙個東西,讓我思考,讓我久久的深陷其中,永久的,不斷的思考。如今,我意識到,這個東西即是演算法。我一直在找一家合適的公司,能讓我的興趣無比放肆的,自由馳騁。
ok,因為在一家公司的面試過程中,面試官提到過這個人臉識別演算法,由於在此之前,未曾有過了解,所以,特作此番學習與研究。有任何問題,歡迎不吝指正。謝謝。
人臉識別,特指利用分析比較人臉視覺特徵資訊進行身份鑑別的計算機技術。
概述
廣義的人臉識別實際包括構建人臉識別系統的一系列相關技術,包括人臉影象採集、人臉定位、人臉識別預處理、身份確認以及身份查詢等;而狹義的人臉識別特指通過人臉進行身份確認或者身份查詢的技術或系統。
人臉識別是一項熱門的計算機技術研究領域,它屬於生物特徵識別技術,是對生物體(一般特指人)本身的生物特徵來區分生物體個體。生物特徵識別技術所研究的生物特徵包括臉、指紋、手掌紋、虹膜、視網膜、聲音(語音)、體形、個人習慣(例如敲擊鍵盤的力度和頻率、簽字)等,相應的識別技術就有人臉識別、指紋識別、掌紋識別、虹膜識別、視網膜識別、語音識別(用語音識別可以進行身份識別,也可以進行語音內容的識別,只有前者屬於生物特徵識別技術)、體形識別、鍵盤敲擊識別、簽字識別等。
人臉識別的優勢在於其自然性和不被被測個體察覺的特點。
所謂自然性,是指該識別方式同人類(甚至其他生物)進行個體識別時所利用的生物特徵相同。例如人臉識別,人類也是通過觀察比較人臉區分和確認身份的,另外具有自然性的識別還有語音識別、體形識別等,而指紋識別、虹膜識別等都不具有自然性,因為人類或者其他生物並不通過此類生物特徵區別個體。
不被察覺的特點對於一種識別方法也很重要,這會使該識別方法不令人反感,並且因為不容易引起人的注意而不容易被欺騙。人臉識別具有這方面的特點,它完全利用可見光獲取人臉影象資訊,而不同於指紋識別或者虹膜識別,需要利用電子壓力感測器採集指紋,或者利用紅外線採集虹膜影象,這些特殊的採集方式很容易被人察覺,從而更有可能被偽裝欺騙。
困難
雖然人臉識別有很多其他識別無法比擬的優點,但是它本身也存在許多困難。人臉識別被認為是生物特徵識別領域甚至人工智慧領域最困難的研究課題之一。人臉識別的困難主要是人臉作為生物特徵的特點所帶來的。人臉在視覺上的特點是:
不同個體之間的區別不大,所有的人臉的結構都相似,甚至人臉器官的結構外形都很相似。這樣的特點對於利用人臉進行定位是有利的,但是對於利用人臉區分人類個體是不利的。
人臉的外形很不穩定,人可以通過臉部的變化產生很多表情,而在不同觀察角度,人臉的視覺影象也相差很大,另外,人臉識別還受光照條件(例如白天和夜晚,室內和室外等)、人臉的很多遮蓋物(例如口罩、墨鏡、頭髮、鬍鬚等)、年齡等多方面因素的影響。
在人臉識別中,第一類的變化是應該放大而作為區分個體的標準的,而第二類的變化應該消除,因為它們可以代表同乙個個體。通常稱第一類變化為類間變化(inter-class difference),而稱第二類變化為類內變化(intra-class difference)。對於人臉,類內變化往往大於類間變化,從而使在受類內變化干擾的情況下利用類間變化區分個體變得異常困難。
技術細節
一般來說,人臉識別系統包括影象攝取、人臉定位、影象預處理、以及人臉識別(身份確認或者身份查詢)。系統輸入一般是一張或者一系列含有未確定身份的人臉影象,以及人臉資料庫中的若干已知身份的人臉圖象或者相應的編碼,而其輸出則是一系列相似度得分,表明待識別的人臉的身份。
目前人臉識別的演算法可以分類為:
應用
人臉識別的應用主要有:
門禁系統:受安全保護的地區可以通過人臉識別辨識試圖進入者的身份。
攝像監視系統:在例如銀行、機場、體育場、商場、超級市場等公共場所對人群進行監視,以達到身份識別的目的。例如在機場安裝監視系統以防止****登機。
網路應用:利用人臉識別輔助信用卡網路支付,以防止非信用卡的擁有者使用信用卡等。
學生考勤系統:香港及澳門的中、小學已開始將智慧卡配合人臉識別來為學生進行每天的出席點名記錄。
相機:新型的數位相機已內建人臉辨識功能以輔助拍攝人物時對焦。
特徵臉
特徵臉方法利用主分量分析進行降維和提取特徵。主分量分析是一種應用十分廣泛的資料降維技術,該方法選擇與原資料協方差矩陣前幾個最大特徵值對應的特徵向量構成一組基,以達到最佳表徵原資料的目的。因為由主分量分析提取的特徵向量返回成影象時,看上去仍像人臉,所以這些特徵向量被稱為「特徵臉」。
在人臉識別中,由一組特徵臉基圖象張成乙個特徵臉子空間,任何一幅人臉圖象(減去平均人臉後)都可投影到該子空間,得到乙個權值向量。計算此向量和訓練集中每個人的權值向量之間的歐式距離,取最小距離所對應的人臉影象的身份作為測試人臉影象的身份。
下圖給出了主分量分析的應用例子。圖中最左邊的為平均臉,其他的為對應 7 個最大特徵值的特徵向量。
主分量分析是一種無監督學習方法,主分量是指向資料能量分布最大的軸線方向,因此可以從最小均方誤差意義下對資料進行最優的表達。但是就分類任務而言,由主分量分析得到的特徵卻不能保證可以將各個類別最好地區分開來。
線性鑑別分析是一種著名的模式識別方法,通過將樣本線性變換到乙個新的空間,使樣本的類內散布程度達到最小,同時類間散布程度達到最大,即著名的 fisher 準則。
標準特徵臉
同乙個人不同影象之間的的特徵臉
不同人的影象之間的特徵臉
lades 等人針對畸變不變性的物體識別問題提出了一種基於動態連線結構的彈性圖匹配方法,並將其應用於人臉識別。所有人臉影象都有相似的拓撲結構。人臉都可表示成圖,圖中的節點是一些基準點(如眼睛,鼻尖等),圖中的邊是這些基準點之間的連線。
每個節點包含 40 個 gabor 小波(一種數碼訊號變換方法)係數,包括相位和幅度,這些係數合起來稱為乙個 jet ,這些小波係數是原始影象和一組具有 5 個頻率、 8 個方向的 gabor 小波卷積(一種數字訊號處理運算元)得到的。這樣每幅圖就像被貼了標籤一樣,其中的點被 jets 標定,邊被點之間的距離標定。所以一張人臉的幾何形狀就被編碼為圖中的邊,而灰度值的分布被編碼為圖中的節點。如下圖所示:
彈性圖匹配方法中人臉的彈性束圖表示
為了識別一張新的人臉,需要從該人臉中找到基準點,提取出乙個人臉圖,這可用彈性圖匹配得到。彈性圖匹配的目的是在新的人臉中找到基準點,並且提取出一幅圖,這幅圖和現有的人臉束圖之間的相似度最大。經過彈性圖匹配後,新的人臉的圖就被提取出來了,此圖就表徵了新的人臉,用它作為特徵進行識別。進行識別時,計算測試人臉和現有人臉束圖中的所有人臉之間的相似度,相似度最大的人臉的身份即為測試人臉的身份。
由於該方法利用 gabor 小波變換來描述面部特徵點的區域性資訊,因此受光照影響較小。此外,在彈性匹配的過程中,網格的形狀隨著特徵點的搜尋而不斷變化,因此對姿態的變化也具有一定的自適應性。該方法的主要缺點是搜尋過程中代價函式優化的計算量巨大,因而造成識別速度較慢,導致該方法的實用性不強。
3d 形態模型
人臉本質上是 3d 空間中的乙個表面,所以原則上用 3d 模型能更好地表徵人臉,特別是處理人臉的各種變化,如姿勢、光照等。 blanz 等人提出了一種基於 3d 形態模型的方法,該方法將形狀和紋理用模型引數編碼,同時提出了乙個能從單張人臉影象還原模型引數的演算法。形狀和紋理引數可用來進行人臉的識別。為了處理由於這些引數導致的影象之間差異的極端情形,通常是預先產生乙個通用的模型。而進行影象分析時,給定一張新的影象,一般的做法是用通用模型去擬合新的影象,從而根據模型來引數化新的影象。
跟蹤 - 然後 - 識別,這類方法首先檢測出人臉,然後跟蹤人臉特徵隨時間的變化。當捕捉到一幀符合一定標準(大小,姿勢)的影象時,用基於靜態影象的人臉識別演算法進行識別。這類方法中跟蹤和識別是單獨進行的,時間資訊只在跟蹤階段用到。識別還是採用基於靜態影象的方法,沒用到時間資訊。
跟蹤 - 且 - 識別,這類方法中,人臉跟蹤和識別是同時進行的,時間資訊在跟蹤階段和識別階段都用到。
這個東西,由於剛剛接觸,還不知怎麼實現。不過,倒是,有人做了個人臉檢測與特徵定位的程式,效果圖如下:
人臉識別演算法初次了解
在寫此文之前,先扯點東西。我一直在找乙個東西,讓我思考,讓我久久的深陷其中,永久的,不斷的思考。如今,我意識到,這個東西即是演算法。我一直在找一家合適的公司,能讓我的興趣無比放肆的,自由馳騁。ok,因為在一家公司的面試過程中,面試官提到過這個人臉識別演算法,由於在此之前,未曾有過了解,所以,特作此番...
人臉識別演算法初次了解
人臉識別演算法初次了解在寫此文之前,先扯點東西。我一直在找乙個東西,讓我思考,讓我久久的深陷當中,永久的,不斷的思考。現在,我意識到,這個東西即是演算法。我一直在找一家合適的公司,能讓我的興趣無比放肆的,自由馳騁。ok,由於在一家公司的面試過程中,面試官提到過這個人臉識別演算法,由於在此之前,未曾有...
人臉識別演算法初次了解
人臉識別演算法初次了解在寫此文之前,先扯點東西。我一直在找乙個東西,讓我思考,讓我久久的深陷當中,永久的,不斷的思考。現在,我意識到,這個東西即是演算法。我一直在找一家合適的公司,能讓我的興趣無比放肆的,自由馳騁。ok,由於在一家公司的面試過程中,面試官提到過這個人臉識別演算法,由於在此之前,未曾有...