人臉識(shí)別概述:人臉識(shí)別,是基于人的臉部特征信息進(jìn)行身份識(shí)別的一種生物識(shí)別技術(shù)。人臉識(shí)別區(qū)別于其他生物特征識(shí)別方法的五項(xiàng)優(yōu)勢(shì),有非侵?jǐn)_性、便捷性、友好性、非接觸性、可擴(kuò)展性。
人臉識(shí)別技術(shù)原理:人臉識(shí)別的五大技術(shù)流程,包括人臉圖像的采集與預(yù)處理、人臉檢測(cè)、人臉特征提取、人臉識(shí)別和活體鑒別;目前人臉識(shí)別的主要方法,包括基于特征臉的方法、基于幾何特征的方法、基于深度學(xué)習(xí)的方法、基于支持向量機(jī)的方法和其他綜合方法。
2013 年,微軟亞洲研究院的研究者首度嘗試了 10 萬規(guī)模的大訓(xùn)練數(shù)據(jù),并基于高維 LBP 特征和 Joint Bayesian 方法在 LFW 上獲得了 95.17%的精度。這一結(jié)果表明:大訓(xùn)練數(shù)據(jù)集對(duì)于有效提升非受限環(huán)境下的人臉識(shí)別很重要。然而,經(jīng)典方法都難以處理大規(guī)模數(shù)據(jù)集的訓(xùn)練場(chǎng)景。
2014 年前后,隨著大數(shù)據(jù)和深度學(xué)習(xí)的發(fā)展,神經(jīng)網(wǎng)絡(luò)重受矚目,并在圖像分類、手寫 體識(shí)別、語音識(shí)別等應(yīng)用中獲得了遠(yuǎn)超經(jīng)典方法的結(jié)果。香港中文大學(xué)的 Sun Yi 等人提出 將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用到人臉識(shí)別上,采用 20 萬訓(xùn)練數(shù)據(jù),在 LFW 上第一次得到超過人類 水平的識(shí)別精度,這是人臉識(shí)別發(fā)展歷史上的一座里程碑。 自此之后,研究者們不斷改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu),同時(shí)擴(kuò)大訓(xùn)練樣本規(guī)模,將 LFW 上的識(shí)別精 度推到 99.5%以上。人臉識(shí)別發(fā)展過程中一些經(jīng)典的方法及其在 LFW 上的精度,都有一個(gè) 基本的趨勢(shì):訓(xùn)練數(shù)據(jù)規(guī)模越來越大,識(shí)別精度越來越高。
(1)人臉圖像的采集
采集人臉圖像通常情況下有兩種途徑,分別是既有人臉圖像的批量導(dǎo)入和人臉圖像的實(shí)時(shí)采集。一些比較先進(jìn)的人臉識(shí)別系統(tǒng)甚至可以支持有條件的過濾掉不符合人臉識(shí)別質(zhì)量要求或者是清晰度質(zhì)量較低的人臉圖像,盡可能的做到清晰精準(zhǔn)的采集。
既有人臉圖像的批量導(dǎo)入:即將通過各種方式采集好的人臉圖像批量導(dǎo)入至人臉識(shí)別系統(tǒng),系統(tǒng)會(huì)自動(dòng)完成逐個(gè)人臉圖像的采集工作。
人臉圖像的實(shí)時(shí)采集:即調(diào)用攝像機(jī)或攝像頭在設(shè)備的可拍攝范圍內(nèi)自動(dòng)實(shí)時(shí)抓取人臉圖像并完成采集工作。
(2)人臉圖像的預(yù)處理
人臉圖像的預(yù)處理的目的是在系統(tǒng)對(duì)人臉圖像的檢測(cè)基礎(chǔ)之上,對(duì)人臉圖像做出進(jìn)一步的處理以利于人臉圖像的特征提取。
人臉圖像的預(yù)處理具體而言是指對(duì)系統(tǒng)采集到的人臉圖像進(jìn)行光線、旋轉(zhuǎn)、切割、過濾、降噪、放大縮小等一系列的復(fù)雜處理過程來使得該人臉圖像無論是從光線、角度、距離、大小等任何方面來看均能夠符合人臉圖像的特征提取的標(biāo)準(zhǔn)要求。
在現(xiàn)實(shí)環(huán)境下采集圖像,由于圖像受到光線明暗不同、臉部表情變化、陰影遮擋等眾多外在因素的干擾,導(dǎo)致采集圖像質(zhì)量不理想,那就需要先對(duì)采集到的圖像預(yù)處理,如果圖像預(yù)處理不好,將會(huì)嚴(yán)重影響后續(xù)的人臉檢測(cè)與識(shí)別。
(3)人臉檢測(cè)
一張包含人臉圖像的圖片通常情況下可能還會(huì)包含其他內(nèi)容,這時(shí)候就需要進(jìn)行必要的人臉檢測(cè)。也就是在一張人臉圖像之中,系統(tǒng)會(huì)精準(zhǔn)的定位出人臉的位置和大小,在挑選出有用的圖像信息的同時(shí)自動(dòng)剔除掉其他多余的圖像信息來進(jìn)一步的保證人臉圖像的精準(zhǔn)采集。
人臉檢測(cè)是人臉識(shí)別中的重要組成部分。人臉檢測(cè)是指應(yīng)用一定的策略對(duì)給出的圖片或者視頻來進(jìn)行檢索,判斷是否存在著人臉,如果存在則定位出每張人臉的位置、大小與姿態(tài)的過程。人臉檢測(cè)是一個(gè)具有挑戰(zhàn)性的目標(biāo)檢測(cè)問題,主要體現(xiàn)在兩方面:
人臉目標(biāo)內(nèi)在的變化引起:(1)人臉具有相當(dāng)復(fù)雜的細(xì)節(jié)變化和不同的表情(眼、嘴的 開與閉等),不同的人臉具有不同的外貌,如臉形、膚色等;(2)人臉的遮擋,如眼鏡、頭發(fā)和頭部飾物等。
外在條件變化引起:(1)由于成像角度的不同造成人臉的多姿態(tài),如平面內(nèi)旋轉(zhuǎn)、深度旋轉(zhuǎn)以及上下旋轉(zhuǎn)等,其中深度旋轉(zhuǎn)影響較大;(2)光照的影響,如圖像中的亮度、對(duì)比度的變化和陰影等;(3)圖像的成像條件,如攝像設(shè)備的焦距、成像距離等。
人臉檢測(cè)的作用,便是在一張人臉圖像之中,系統(tǒng)會(huì)精準(zhǔn)的定位出人臉的位置和大小,在挑選出有用的圖像信息的同時(shí)自動(dòng)剔除掉其他多余的圖像信息來進(jìn)一步的保證人臉圖像的精準(zhǔn)采集。人臉檢測(cè)重點(diǎn)關(guān)注以下指標(biāo):
檢測(cè)率:識(shí)別正確的人臉/圖中所有的人臉。檢測(cè)率越高,檢測(cè)模型效果越好;
誤檢率:識(shí)別錯(cuò)誤的人臉/識(shí)別出來的人臉。誤檢率越低,檢測(cè)模型效果越好;
漏檢率:未識(shí)別出來的人臉/圖中所有的人臉。漏檢率越低,檢測(cè)模型效果越好;
速度:從采集圖像完成到人臉檢測(cè)完成的時(shí)間。時(shí)間越短,檢測(cè)模型效果越好。
(4)人臉特征提取
目前主流的人臉識(shí)別系統(tǒng)可支持使用的特征通??煞譃槿四樢曈X特征、人臉圖像像素統(tǒng)計(jì)特征等,而人臉圖像的特征提取就是針對(duì)人臉上的一些具體特征來提取的。特征簡(jiǎn)單,匹配算法則簡(jiǎn)單,適用于大規(guī)模的建庫(kù);反之,則適用于小規(guī)模庫(kù)。特征提取的方法一般包括基于知識(shí)的提取方法或者基于代數(shù)特征的提取方法。以基于知識(shí)的人臉識(shí)別提取方法中的一種為例,因?yàn)槿四樦饕怯裳劬?、額頭、鼻子、耳朵、下巴、嘴巴等部位組成,對(duì)這些部位以及它們之間的結(jié)構(gòu)關(guān)系都是可以用幾何形狀特征來進(jìn)行描述的,也就是說每一個(gè)人的人臉圖像都可以有一個(gè)對(duì)應(yīng)的幾何形狀特征,它可以幫助我們作為識(shí)別人臉的重要差異特征,這也是基于知識(shí)的提取方法中的一種。
(5)人臉識(shí)別
我們可以在人臉識(shí)別系統(tǒng)中設(shè)定一個(gè)人臉相似程度的數(shù)值,再將對(duì)應(yīng)的人臉圖像與系統(tǒng)數(shù)據(jù)庫(kù)中的所有人臉圖像進(jìn)行比對(duì),若超過了預(yù)設(shè)的相似數(shù)值,那么系統(tǒng)將會(huì)把超過的人臉圖像逐個(gè)輸出,此時(shí)我們就需要根據(jù)人臉圖像的相似程度高低和人臉本身的身份信息來進(jìn)行精確篩選,這一精確篩選的過程又可以分為兩類:其一是一對(duì)一的篩選,即對(duì)人臉身份進(jìn)行確認(rèn)過程;其二是一對(duì)多的篩選,即根據(jù)人臉相似程度進(jìn)行匹配比對(duì)的過程。
(6)活體鑒別
生物特征識(shí)別的共同問題之一就是要區(qū)別該信號(hào)是否來自于真正的生物體,比如,指紋識(shí)別系統(tǒng)需要區(qū)別帶識(shí)別的指紋是來自于人的手指還是指紋手套,人臉識(shí)別系統(tǒng)所采集到的人臉圖像,是來自于真實(shí)的人臉還是含有人臉的照片。因此,實(shí)際的人臉識(shí)別系統(tǒng)一般需要增加活體鑒別環(huán)節(jié),例如,要求人左右轉(zhuǎn)頭,眨眼睛,開開口說句話等。
人臉識(shí)別方法:
這里主要介紹基于深度學(xué)習(xí)的識(shí)別方法:
深度學(xué)習(xí)的出現(xiàn)使人臉識(shí)別技術(shù)取得了突破性進(jìn)展。人臉識(shí)別的最新研究成果表明,深度學(xué)習(xí)得到的人臉特征表達(dá)具有手工特征表達(dá)所不具備的重要特性,例如它是中度稀疏的、對(duì)人臉身份和人臉屬性有很強(qiáng)的選擇性、對(duì)局部遮擋具有良好的魯棒性。這些特性是通過大數(shù)據(jù)訓(xùn)練自然得到的,并未對(duì)模型加入顯式約束或后期處理,這也是深度學(xué)習(xí)能成功應(yīng)用在人臉識(shí)別中的主要原因。
深度學(xué)習(xí)在人臉識(shí)別上有 7 個(gè)方面的典型應(yīng)用:基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的人臉識(shí)別方法,深度非線性人臉形狀提取方法,基于深度學(xué)習(xí)的人臉姿態(tài)魯棒性建模,有約束環(huán)境中的全自動(dòng)人臉識(shí)別,基于深度學(xué)習(xí)的視頻監(jiān)控下的人臉識(shí)別,基于深度學(xué)習(xí)的低分辨率人臉識(shí)別及其他基于深度學(xué)習(xí)的人臉相關(guān)信息的識(shí)別。
其中,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)是第一個(gè)真正成功訓(xùn)練多層網(wǎng)絡(luò)結(jié)構(gòu)的學(xué)習(xí)算法,基于卷積神經(jīng)網(wǎng)絡(luò)的人臉識(shí)別方法是一種深度的監(jiān)督學(xué)習(xí)下的機(jī)器學(xué)習(xí)模型,能挖掘數(shù)據(jù)局部特征,提取全局訓(xùn)練特征和分類,其權(quán)值共享結(jié)構(gòu)網(wǎng)絡(luò)使之更類似于生物神經(jīng)網(wǎng)絡(luò),在模式識(shí)別各個(gè)領(lǐng)域都得到成功應(yīng)用。CNN 通過結(jié)合人臉圖像空間的局部感知區(qū)域、共享權(quán)重、在空間或時(shí)間上的降采樣來充分利用數(shù)據(jù)本身包含的局部性等特征,優(yōu)化模型結(jié)構(gòu),保證一定的位移不變性。
基于深度學(xué)習(xí)的人臉識(shí)別技術(shù)的廣泛應(yīng)用 :
目前主流的人臉識(shí)別技術(shù)大多都是針對(duì)輕量級(jí)的人臉圖像數(shù)據(jù)庫(kù),對(duì)于未來完全可預(yù)見的億萬級(jí)的人臉圖像數(shù)據(jù)庫(kù)則還不太成熟,因此需要重點(diǎn)研究基于深度學(xué)習(xí)的人臉識(shí)別技術(shù)。通俗意義上來講就是,目前國(guó)內(nèi)人口有十三億之多,由實(shí)力雄厚的人臉識(shí)別公司牽頭在不久的未來建立起一個(gè)覆蓋全國(guó)范圍的統(tǒng)一的人臉圖像數(shù)據(jù)庫(kù)也是可以預(yù)見的,那么該人臉圖像數(shù)據(jù)庫(kù)存儲(chǔ)的人臉圖像的容量可能會(huì)達(dá)到數(shù)十億甚至是數(shù)百億的級(jí)別,這時(shí)候可能就會(huì)存在大量表征相似、關(guān)鍵特征點(diǎn)相似的人臉,如果沒有基于深度學(xué)習(xí)的人臉識(shí)別技術(shù),建立更為復(fù)雜的多樣化的人臉模型,那么在實(shí)現(xiàn)精準(zhǔn)和快速的人臉識(shí)別就會(huì)比較困難。
基于深度學(xué)習(xí)人臉識(shí)別方法的細(xì)分類:
人臉的表達(dá)模型分為2D人臉和3D人臉。2D人臉識(shí)別研究的時(shí)間相對(duì)較長(zhǎng),方法流程也相對(duì)成熟,在多個(gè)領(lǐng)域都有使用,但由于2D信息存在深度數(shù)據(jù)丟失的局限性,無法完整的表達(dá)出真實(shí)人臉,所以在實(shí)際應(yīng)用中存在著一些不足,例如識(shí)別準(zhǔn)確率不高、活體檢測(cè)準(zhǔn)確率不高等。
3D人臉模型比2D人臉模型有更強(qiáng)的描述能力,能更好的表達(dá)出真實(shí)人臉,所以基于3D數(shù)據(jù)的人臉識(shí)別不管識(shí)別準(zhǔn)確率還是活體檢測(cè)準(zhǔn)確率都有很大的提高。
2D人臉識(shí)別模型比較有名的有FaceNet:
davidsandberg/facenetgithub.com
這個(gè)是Facenet的官方github代碼地址,里面人臉檢測(cè)使用的是MTCNN模型,具體的介紹可以稍微再參考下我的這篇文章:
天山老霸王:用Pyqt5開發(fā)的基于MTCNN、FaceNet人臉考勤系統(tǒng)
注意:此模型未包含活體檢測(cè),人臉提取特征是一個(gè)神經(jīng)網(wǎng)絡(luò),人臉檢測(cè)是一個(gè)神經(jīng)網(wǎng)絡(luò)。
3D人臉識(shí)別現(xiàn)狀:
目前3D人臉識(shí)別在市場(chǎng)上根據(jù)使用攝像頭成像原理主要分為:3D結(jié)構(gòu)光、TOF、雙目立體視覺。
3D結(jié)構(gòu)光
3D結(jié)構(gòu)光通過紅外光投射器,將具有一定結(jié)構(gòu)特征的光線投射到被拍攝物體上,再由專門的紅外攝像頭進(jìn)行采集。主要利用三角形相似的原理進(jìn)行計(jì)算,從而得出圖像上每個(gè)點(diǎn)的深度信息,最終得到三維數(shù)據(jù)。
基于3D結(jié)構(gòu)光的人臉識(shí)別已在一些智能手機(jī)上實(shí)際應(yīng)用,如國(guó)外使用了超過10億張圖像(IR和深度圖像)訓(xùn)練的FaceId;國(guó)內(nèi)自主研發(fā)手機(jī)廠商的人臉識(shí)別。
TOF
TOF簡(jiǎn)單的說就是激光測(cè)距,照射光源一般采用方波脈沖調(diào)制,根據(jù)脈沖發(fā)射和接收的時(shí)間差來測(cè)算距離。
采用TOF的方式獲取3D數(shù)據(jù)主要在Kinect上實(shí)現(xiàn),Kinect在2009年推出,目的是作為跟機(jī)器的交互設(shè)備,用在游戲方面。主要獲取并處理的是人體的姿態(tài)數(shù)據(jù)。
雙目立體視覺
雙目是基于視差原理并由多幅圖像獲取物體三維幾何信息的方法。由雙攝像機(jī)從不同角度同時(shí)獲得被測(cè)物的兩幅數(shù)字圖像,并基于視差原理恢復(fù)出物體的三維幾何信息,從而得出圖像上每個(gè)點(diǎn)的深度信息、最終得到三維數(shù)據(jù)。
由于雙目立體視覺成像原理對(duì)硬件要求比較高,特別是相機(jī)的焦距、兩個(gè)攝像頭的平面位置,應(yīng)用范圍相對(duì)3D結(jié)構(gòu)光TOF少。
相比2D人臉識(shí)別,可以簡(jiǎn)單理解為在RGB基礎(chǔ)上添加了深度信息,人臉的深度。
按深度信息使用的方法可以分為兩類:3D人臉識(shí)別、2D+人臉識(shí)別。
3D人臉識(shí)別
3D人臉識(shí)別處理的是3D的數(shù)據(jù),如點(diǎn)云、體素等,這些數(shù)據(jù)是完整的,立體的,能表達(dá)出物體各個(gè)角度的特征,不管一個(gè)人正臉還是側(cè)臉,理論上都是同一個(gè)人。但是因?yàn)辄c(diǎn)云等3D數(shù)據(jù)具有數(shù)據(jù)量大、而且點(diǎn)云數(shù)據(jù)具有無序性、稀疏性等特點(diǎn),3D人臉識(shí)別開發(fā)難度比較大。
2D+人臉識(shí)別
由于3D人臉識(shí)別開發(fā)難度比較大,于是有2D+人臉識(shí)別,其處理方式比較簡(jiǎn)單,只是將3D的人臉數(shù)據(jù)分為2D的RGB數(shù)據(jù)+深度數(shù)據(jù)。處理的方法為先采用2D的人臉識(shí)別方法處理2D的RGB數(shù)據(jù),然后再處理深度數(shù)據(jù)。這樣的處理實(shí)現(xiàn)起來就相對(duì)較快,因?yàn)槟壳暗?D人臉識(shí)別有一套比較成熟的方法,特別是CNN出現(xiàn)后,2D的人臉識(shí)別在各挑戰(zhàn)賽、數(shù)據(jù)集上識(shí)別的準(zhǔn)確率已經(jīng)達(dá)到甚至超過人類的識(shí)別精度。
2D+人臉識(shí)別的方法能比較好將2D人臉識(shí)別的方法遷移過來,但是這樣人為的將深度信息跟RGB信息分開處理不如3D人臉識(shí)別準(zhǔn)確率高。2D+人臉識(shí)別相對(duì)2D人臉識(shí)別準(zhǔn)確率提高不會(huì)很大,但是在活體檢測(cè)的準(zhǔn)確率上有一定的提高。
具體可以參考以下文章: