本發(fā)明涉及機(jī)器視覺與人臉檢索領(lǐng)域,具體涉及基于深度學(xué)習(xí)的人臉檢索系統(tǒng)及方法。
背景技術(shù):
自從krizhevsky等人提出基于深度學(xué)習(xí)理論的深度卷積神經(jīng)網(wǎng)絡(luò)Alexnet后,圖像識別領(lǐng)域進(jìn)入了新的紀(jì)元。深度卷積神經(jīng)網(wǎng)絡(luò)通過卷積運(yùn)算由淺入深的提取圖像的不同層次的特征,并通過學(xué)習(xí)算法使網(wǎng)絡(luò)自動的調(diào)節(jié)卷積核的參數(shù)進(jìn)行學(xué)習(xí),在圖像分類和識別上已經(jīng)取得了顯著效果。
目前的人臉檢索系統(tǒng)主要由人臉圖像的預(yù)處理、特征提取和特征匹配三個步驟組成。預(yù)處理過程需要對人臉進(jìn)行檢測,這一部分的技術(shù)已較為成熟,這里不再贅述。特征提取就是從圖像中把圖像自身的內(nèi)容信息提取出來,完成圖像的量化,使用戶可以據(jù)此進(jìn)行圖像檢索。目前常用的圖像特征有SIFT、SURF和PCA-SIFT等。但是在不同的光照、人物姿態(tài)、表情影響之下,人臉信息在模式上變化較大;有些人物由于臉部戴有裝飾物,如胡須、眼鏡等,造成人臉信息扭曲;人臉圖像的拍攝角度往往多種多樣,同一個人臉在不同角度拍攝條件下得到的圖像差別很大。這些手工特征不能很好的表征上述情況下的圖像。此外,上述提取到的特征維度往往較高,很容易造成維度災(zāi)難,這樣會大大較低人臉檢索的速度,不能實(shí)時(shí)返回查詢的結(jié)果。
與本發(fā)明最相近的方法有汪昀[1]等人提出的方法,其首先提取人臉圖像的特征,通過建立投影矩陣將特征從歐幾里德空間映射到漢明空間實(shí)現(xiàn)降維,采用改進(jìn)的多比特編碼方法對降維后的特征進(jìn)行編碼并生成圖像簽名,以曼哈頓距離取代漢明距離衡量簽名之間的相似度;然后根據(jù)圖像庫中每張圖像的簽名構(gòu)建倒排索引表;最后通過倒排索引表高效地查找與查詢圖像相近的圖像作為檢索結(jié)果。
[1]汪昀.海量人臉圖像快速檢索方法研究與實(shí)現(xiàn)[D].中國科學(xué)技術(shù)大學(xué),2014.
[2]Wu X,He R,Sun Z,et al.A Light CNN for Deep Face Representation with Noisy Labels[J].Computer Science,2016.
[3]Sun Y,Wang X,Tang X.Deep Learning Face Representation from Predicting 10,000Classes[J].2014:1891-1898.
[4]Lin K,Yang HF,Hsiao JH,et al.Deep learning of binary hash codes for fast image retrieval[C]//IEEE Conference on Computer Vision and Pattern Recognition Workshops.2015:27-35.
[5]王利卿,黃松杰.基于多尺度卷積神經(jīng)網(wǎng)絡(luò)的圖像檢索算法[J].軟件導(dǎo)刊,2016,15(2):38-40.
[6]楊之光,艾海舟.基于聚類的人臉圖像檢索及相關(guān)反饋[J].Acta Automatica Sinica,2008,34(9):1033-1039.
[7]劉洋.基于深度學(xué)習(xí)的圖像檢索技術(shù)研究[D].華中科技大學(xué),2015.
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺點(diǎn)與不足,針對這些問題,本系統(tǒng)使用了卷積神經(jīng)網(wǎng)絡(luò)提取到的特征,表征性強(qiáng),對不同環(huán)境下的人臉有很好的表征能力;維度低,可以加快檢索速度。此外,本系統(tǒng)采用了粗檢索和細(xì)檢索的特征匹配方式,大大加快了人臉圖像的檢索速度。
本發(fā)明方法涉及機(jī)器視覺與人臉檢索,即通過攝像頭捕獲圖像,然后利用卷積神經(jīng)網(wǎng)絡(luò)提取圖像特征,最后利用這些特征找到數(shù)據(jù)庫中類似的圖像的過程。
一種基于深度學(xué)習(xí)的人臉檢索方法,其特征在于包含以下步驟:
檢索模型的訓(xùn)練:使用caffe深度學(xué)習(xí)框架訓(xùn)練模型,采用梯度下降的方式優(yōu)化模型參數(shù),得出檢索模型;
人臉特征的提?。合葘⒂?xùn)練集中所有人的圖片喂到神經(jīng)網(wǎng)絡(luò)中,進(jìn)行前饋過程,保存第一個全連接層和第二個全連接層的輸出;
人臉注冊:充分提取注冊者在不同光照,不同姿態(tài)下的特征向量和哈希編碼;
人臉檢索:提取出待檢索人臉圖像的哈希編碼和特征向量,然后將其與訓(xùn)練集中的圖片進(jìn)行比對,采用哈希編碼粗檢索和特征向量細(xì)檢索相結(jié)合的檢索方式,經(jīng)過粗檢索和細(xì)檢索后得到最相似的人臉圖像,并輸出對應(yīng)的相似度值。
所述步驟二中將第一個全連接層的輸出作為人臉圖像的特征向量用于細(xì)檢索,將第二個全連接層的輸出作為人臉圖像的哈希編碼用于粗檢索。
一種基于所述人臉檢索方法的人臉檢索系統(tǒng),可將其應(yīng)用于人臉識別,陌生人報(bào)警領(lǐng)域。
本發(fā)明的有益效果是:利用深層神經(jīng)網(wǎng)絡(luò)的分類模型的隱含層輸出作為人臉圖像的特征表示。此外,本發(fā)明還從卷積網(wǎng)中提取到人臉圖像的哈希編碼,先利用其進(jìn)行人臉圖像的粗檢索,得到若干候選相似人臉圖像。再用人臉的特征向量進(jìn)行細(xì)檢索,得到最終相似的人臉圖像。實(shí)驗(yàn)證明,本發(fā)明采用的檢索方法具有速度快,檢索質(zhì)量高等優(yōu)點(diǎn)。同時(shí)本檢索系統(tǒng)也可以用于人臉識別,陌生人報(bào)警等領(lǐng)域。
附圖說明
圖1為人臉檢索方法的流程圖;
圖2為人臉檢索模型圖;
圖3a為特征輸入圖;
圖3b為第一個卷積層的特征圖;
圖3c為第四個卷積層的特征圖;
圖3d為第五個卷積層的特征圖;
圖4為人臉注冊流程圖;
圖5a為待檢索圖像;
圖5b為粗檢索得到的候選集;
圖5c為細(xì)檢索得到的相似圖像;
圖6為人臉檢測結(jié)果;
圖7為檢索結(jié)果;
圖8為人臉檢索系統(tǒng)的流程框圖。
具體實(shí)施方式
以下結(jié)合附圖對本發(fā)明進(jìn)行詳細(xì)說明:
一種深度學(xué)習(xí)的人臉檢索方法,圖1為人臉檢索方法的流程圖,主要包括以下步驟:
一、檢索模型的訓(xùn)練
本系統(tǒng)采用的檢索模型是基于吳翔的lightened CNN模型進(jìn)行訓(xùn)練,與之不同的是在網(wǎng)絡(luò)的倒數(shù)第二層插入了哈希編碼層。最終的模型一共包括14個卷積層和3個全連接層。其中的卷積層用來逐級提取人臉圖像的特征,全連接層用于最終的分類。因?yàn)橛?xùn)練神經(jīng)網(wǎng)絡(luò)需要大量的數(shù)據(jù),所以我們使用了CASIA-WebFace結(jié)合我們自己采集數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)。最終的訓(xùn)練數(shù)據(jù)一共包含10228人的494414張標(biāo)準(zhǔn)化人臉圖片。本系統(tǒng)使用了caffe深度學(xué)習(xí)框架訓(xùn)練模型,采用梯度下降的方式優(yōu)化模型參數(shù),訓(xùn)練集的bacth設(shè)為64,驗(yàn)證集的batch設(shè)為32,學(xué)習(xí)率的更新策略使用“inv”即
lr=base_lr*(1+gamma*iter)^(-power)
其中l(wèi)r是當(dāng)前迭代的學(xué)習(xí)率,base_lr是基礎(chǔ)學(xué)習(xí)率設(shè)為0.01,gamma和power都是常量,分別設(shè)為0.000005和0.75。模型一共迭代了五百萬次,最終在測試集上達(dá)到98.7%的準(zhǔn)確率。這說明我們的模型有一定的實(shí)用性。
二、人臉特征的提取
模型訓(xùn)練完成后,需要在神經(jīng)網(wǎng)絡(luò)中抽取若干層當(dāng)作人臉圖像的特征表達(dá),完成圖像向量化,便于后面的人臉檢索。
神經(jīng)網(wǎng)絡(luò)是逐級提取人臉特征,即從底層的圖像特征如梯度、顏色塊等到人臉局部特征再到人臉的全局特征。越到高層,提取的特征越抽象,特征的表征能力越強(qiáng)。各層提取到的特征圖如圖3所示。為了完成人臉檢索系統(tǒng),需要先將訓(xùn)練集中所有人的圖片喂到神經(jīng)網(wǎng)絡(luò)中,進(jìn)行前饋過程,保存第一個全連接層和第二個全連接層的輸出。在本檢索系統(tǒng)中,將第一個全連接層的輸出作為人臉圖像的特征向量用于細(xì)檢索,將第二個全連接層的輸出作為人臉圖像的哈希編碼用于粗檢索。
三、人臉注冊
本系統(tǒng)主要用于安保機(jī)器人上面。安保機(jī)器人在公司內(nèi)進(jìn)行巡邏,需要判斷某個人是不是本公司的員工。對于新來員工需要提取其對應(yīng)的特征向量和哈希編碼。具體操作過程如圖4所示。
為了提高檢索的成功率,必須充分提取注冊者在不同光照,不同姿態(tài)下的特征向量和哈希編碼。
四、人臉檢索
將訓(xùn)練集中所有人臉圖像的哈希編碼和特征向量保存完以后,本檢索系統(tǒng)采用哈希編碼粗檢索和特征向量細(xì)檢索相結(jié)合的檢索方式。
在最近鄰搜索問題中,給定一張待查詢的人臉圖像,模型需要返回與之相似的候選圖像。這里的相似指的是外觀上看的近。傳統(tǒng)的方法就是用特征向量來表示每張圖像(比如神經(jīng)網(wǎng)絡(luò)中某一層的輸出),然后通過計(jì)算查詢待查詢圖像和數(shù)據(jù)庫中圖像在特征空間中的歐氏距離,并按照距離從小到大的順序,返回?cái)?shù)據(jù)庫中與待查詢圖像類似的圖像。上述方法雖然看上去很簡單有效,但是隨著人臉庫中的圖像越來越多,這種方法的短板也體現(xiàn)的淋漓盡致——存儲空間消耗大,檢索速度慢。具體來說,假設(shè)使用4096維的特征向量表征一張人臉圖像,那么表示一百萬張圖像就需要大約156B的存儲空間(單精度浮點(diǎn)數(shù)),而計(jì)算查詢圖像和數(shù)據(jù)庫中每張圖像的距離,則需要8192次加法操作和4096次乘法操作,遍歷完所有的一百萬張圖像再返回結(jié)果的話,用的時(shí)間過長,難以投入到實(shí)際使用。
在哈希算法中,將樣本表示成一串固定長度的二值編碼,通常使用0,1或者-1,1表示其中的每一位,使得相似的樣本具有相似的二值碼,這樣就可以使用漢明距離度量二值碼之間的相似性。這樣可以大大加快圖像的檢索速度,但是哈希算法同樣有自己的缺點(diǎn)如表征能力差等。
本檢索系統(tǒng)充分利用哈希編碼計(jì)算速度快和特征向量表征能力強(qiáng)的優(yōu)點(diǎn),并利用深度學(xué)習(xí)的方法學(xué)習(xí)圖像的哈希編碼,避免了手工設(shè)計(jì)編碼的繁瑣。在實(shí)際的使用過程中,對于待查詢的圖像,首先通過模型提取其的哈希編碼和特征向量,然后利用圖像的哈希編碼計(jì)算待查詢圖像與人臉庫中圖像的漢明距離,選取距離最近的50張圖像作為候選集。最后利用圖像的特征向量計(jì)算待查詢圖像與候選集圖像的余弦相似度(如圖所示),選取相似度最大的10張圖像作為最終的輸出圖像。詳細(xì)過程如圖5所示。
n代表特征向量的維度,Ai代表待查詢圖像的特征向量,Bi代表候選集中圖像的特征向量。
假定需要返回10張類似人臉圖像,相比直接使用特征向量檢索耗時(shí)0.27414s,采用本檢索方式僅需耗時(shí)0.005175s(粗檢索0.003175s,細(xì)檢索0.002s)。由此可見,本檢索方式大大提高了檢索速度。
以下為實(shí)際驗(yàn)證的過程:
運(yùn)行程序,通過攝像頭捕獲一幀圖像并通過人臉檢測算法,檢測出人臉圖像,如圖6所示。
將人臉圖像灰度化后,喂到訓(xùn)練好的模型中去,提取人臉圖像的哈希編碼和特征向量。然后將其與訓(xùn)練集中的圖片進(jìn)行比對,經(jīng)過粗檢索和細(xì)檢索后得到10張最相似的人臉圖像,并輸出對應(yīng)的相似度值。如圖7所示。
圖8為人臉檢索系統(tǒng)的流程框圖。主要包括人臉檢測,圖像預(yù)處理,人臉特征提取,哈希編碼粗檢索和特征向量細(xì)檢索五個步驟。
本發(fā)明的有益效果是:
針對目前人臉檢索系統(tǒng)檢索速度慢的情況,采用哈希編碼和特征向量匹配相結(jié)合的方式進(jìn)行人臉檢索,大大提高了圖像的檢索速度。
針對目前人臉檢索系統(tǒng)檢索質(zhì)量低的情況,采用深度學(xué)習(xí)方法,利用卷積神經(jīng)網(wǎng)絡(luò)模型學(xué)習(xí)圖像的特征向量,維度低,表征性強(qiáng)。
針對目前哈希編碼手工標(biāo)定的繁瑣,采用深度學(xué)習(xí)方法,利用卷積神經(jīng)網(wǎng)絡(luò)模型自動學(xué)習(xí)圖像的哈希編碼。
針對人臉?biāo)巿鼍暗亩鄻有?,在不同光照,不同姿態(tài),不同光照下采集人臉圖像的哈希編碼和特征向量。
上述實(shí)施例為本發(fā)明較佳的實(shí)施方式,但本發(fā)明的實(shí)施方式并不受上述實(shí)施例的限制,其他的任何未背離本發(fā)明的精神實(shí)質(zhì)與原理下所作的改變、修飾、替代、組合、簡化,均應(yīng)為等效的置換方式,都包含在本發(fā)明的保護(hù)范圍之內(nèi)。