周 燕,項(xiàng) 楊,曾凡智,鄒 磊
(佛山科學(xué)技術(shù)學(xué)院 計(jì)算機(jī)系,廣東 佛山 528000)
近年來(lái)大數(shù)據(jù)、人工智能與傳統(tǒng)行業(yè)緊密結(jié)合,已經(jīng)成為推動(dòng)工業(yè)、醫(yī)療、教育、金融、通信等各個(gè)領(lǐng)域發(fā)展的重要力量.而基于圖像的人臉識(shí)別技術(shù)經(jīng)過(guò)多年的研究已日趨成熟,并且廣泛應(yīng)用于門禁、安全檢測(cè)等諸多領(lǐng)域[1]當(dāng)中,基于高分辨(High-Resolution,HR)圖像的傳統(tǒng)人臉識(shí)別技術(shù)已相對(duì)成熟.
但對(duì)限制環(huán)境下小尺寸的人臉進(jìn)行識(shí)別的技術(shù)還不夠成熟,特別是人群密集環(huán)境下的低分辨率人臉沒(méi)有足夠的細(xì)節(jié)特征,還可能存在模糊的情況,對(duì)這種環(huán)境下的人臉進(jìn)行識(shí)別來(lái)判斷人物身份依然存在待突破的技術(shù)瓶頸.特別是由于監(jiān)控環(huán)境下人數(shù)眾多,通過(guò)攝像機(jī)捕捉到的人臉?lè)直媛瘦^低,適用于較高分辨率環(huán)境下的普通人臉識(shí)別技術(shù),無(wú)法滿足限制環(huán)境下人臉識(shí)別所需的精度要求.因此,能夠在密集環(huán)境下對(duì)微小人臉進(jìn)行檢測(cè)和識(shí)別,有效認(rèn)證限制場(chǎng)景下的人物身份是當(dāng)前的研究熱點(diǎn)之一.本文通過(guò)對(duì)密集環(huán)境下的微小人臉進(jìn)行檢測(cè),重建微小人臉,對(duì)重建后的人臉進(jìn)行識(shí)別,該算法主要涉及到人臉檢測(cè)、超分辨率重建和人臉識(shí)別三個(gè)方面.
人臉檢測(cè)算法.人臉檢測(cè)技術(shù)是人臉識(shí)別算法的第一步,也是非常重要的一步,人臉識(shí)別需要檢測(cè)出人臉位置才能對(duì)檢測(cè)出的人臉進(jìn)行識(shí)別,如果不能高效的定位人臉位置,則不能進(jìn)行后續(xù)的人臉識(shí)別.人臉檢測(cè)技術(shù)主要分為兩類:第一類是采用傳統(tǒng)特征檢測(cè)人臉位置,第二類是利用神經(jīng)網(wǎng)絡(luò)對(duì)人臉和非人臉進(jìn)行分類,達(dá)到檢測(cè)人臉位置的效果.基于傳統(tǒng)特征的人臉檢測(cè)方法[2]通常利用一個(gè)固定大小的滑動(dòng)檢測(cè)器在圖像上滑動(dòng),用分類器來(lái)判斷滑動(dòng)窗口部分是否為人臉.Viola[3]提出了一種訓(xùn)練多個(gè)弱分類器組成一個(gè)強(qiáng)分類器的算法.該算法使用Haar-like傳統(tǒng)特征提取滑動(dòng)窗口特征,隨后使用AdaBoost級(jí)聯(lián)分類器進(jìn)行人臉檢測(cè).采用傳統(tǒng)算法,例如Haar特征來(lái)描述人臉,其根據(jù)區(qū)域亮度變化來(lái)描述人臉,對(duì)于背景的計(jì)算較少,因此往往分類速度很快.但是這類特征由于沒(méi)有考慮角度、遮擋、環(huán)境和光照等情況,因此在復(fù)雜場(chǎng)景下的人臉檢測(cè)效果比較一般.同時(shí)由于人臉大小不同,因此需要不同大小的人臉檢測(cè)框來(lái)進(jìn)行訓(xùn)練和檢測(cè),所以目前的傳統(tǒng)人臉檢測(cè)方法在多尺度人臉的檢測(cè)上效果一般.基于神經(jīng)網(wǎng)絡(luò)進(jìn)行人臉檢測(cè)方法,利用神經(jīng)網(wǎng)絡(luò)的魯棒性,彌補(bǔ)了傳統(tǒng)特征在角度、遮擋和廣州等非線性環(huán)境下檢測(cè)人臉的不足.同時(shí),利用多尺度特征圖的方法利用滑動(dòng)模塊在神經(jīng)網(wǎng)絡(luò)的不同特征圖(Feature Map)上進(jìn)行分類,并通過(guò)訓(xùn)練學(xué)習(xí)人臉特征可以提高人臉檢測(cè)的能力.該方法能夠克服人臉的復(fù)雜性、姿態(tài)變化和環(huán)境光照等影響,但對(duì)于微小人臉檢測(cè)效果有限,本文提出一種利用多特征圖和圖像金字塔結(jié)合的方法提升微小人臉檢測(cè)效果的算法.
超分辨重建技術(shù)已被廣泛應(yīng)用于醫(yī)學(xué)圖像處理[4],安防監(jiān)控[5]和衛(wèi)星圖像[6]等領(lǐng)域.圖像超分辨率重建方法主要分為兩類:基于重建的方法[7,8]和基于學(xué)習(xí)的方法[9,10].深度學(xué)習(xí)技術(shù)對(duì)超分辨率方法帶來(lái)了性能的提升,受到科研人員的青睞.基于深度學(xué)習(xí)的超分辨率重建方法通過(guò)學(xué)習(xí)低分辨率圖像與高分辨率間的對(duì)應(yīng)關(guān)系,將低分辨率圖像直接重建成高分辨率圖像.SRCNN[11]是首次用于解決圖像超分辨率重建問(wèn)題的深度學(xué)習(xí)模型.但是由于該網(wǎng)絡(luò)結(jié)構(gòu)的感受野較小,在低分辨率圖像上采樣成高分辨率圖片時(shí)增加了時(shí)間成本,同時(shí)限制了重建效率.ESPCN[12]和FSRCNN[13]對(duì)SRCNN進(jìn)行了改進(jìn).和SRCNN需要將低分辨率圖像上采樣到高分辨率圖像不同,ESPCN可以直接在低分辨率圖像上利用亞像素卷積層重建,該方案大大提升了重建效率;FSRCNN超分辨率重建算法則是在SRCNN和ESPCN的基礎(chǔ)上,利用漏斗結(jié)構(gòu)的卷積網(wǎng)絡(luò),映射低維空間,使用反卷積層進(jìn)行放大,該算法大大提升了圖像重建算法的效率和速度.Hu[14]等人提出了一種Meta-SR重建方法,只需使用一個(gè)模型,利用縮放因子將低分辨圖像重建成任意倍數(shù)的高分辨率圖像,簡(jiǎn)單實(shí)用.在人臉的超分辨率重建方面,由于人臉的復(fù)雜性,上述的重建方法不能針對(duì)人臉的共性進(jìn)行重建,本文探索一種基于先驗(yàn)信息的人臉超分辨率重建方法,提高人臉圖片的重建效果.
人臉識(shí)別[15,16]是根據(jù)人的面部特征來(lái)進(jìn)行身份認(rèn)證的技術(shù),從深度卷積神經(jīng)網(wǎng)絡(luò)(Deep Convolutional Neural Networks,DCNNs)被運(yùn)用到人臉識(shí)別算法后,人臉識(shí)別的準(zhǔn)確性能被不斷刷新.Yaniv Taigman[17]等人設(shè)計(jì)了一個(gè)九層的神經(jīng)網(wǎng)絡(luò),神經(jīng)網(wǎng)絡(luò)最后一層得到的向量作為人臉面部特征,使用三維模型進(jìn)行對(duì)齊和無(wú)約束環(huán)境下的人臉表示,該方法有效地克服了人臉對(duì)齊方法局限性,提高了人臉識(shí)別準(zhǔn)確率.Deng[18]等人提出了一個(gè)附加的角邊緣損失來(lái)獲得人臉識(shí)別的高分辨特征,其具有清晰的幾何解釋,并且可以很容易地實(shí)現(xiàn).對(duì)于高分辨率的人臉識(shí)別技術(shù)相對(duì)成熟,盧濤[19]等人提出一種基于圖像超分辨率極限學(xué)習(xí)機(jī)的低分辨人臉識(shí)別,利用圖像稀疏表達(dá)字典重建高分辨率圖像,通過(guò)構(gòu)建ELM模型預(yù)測(cè)輸入極低人臉圖像的類別屬性.薛杉[20]等人針對(duì)監(jiān)控中的目標(biāo)人臉,通過(guò)聚類算法將單目標(biāo)識(shí)別問(wèn)題轉(zhuǎn)換為多目標(biāo)識(shí)別問(wèn)題,利用迭代標(biāo)簽傳播算法不斷優(yōu)化待識(shí)別樣本的歸屬類型,按照置信概率估計(jì)每個(gè)類別的人臉確認(rèn)閾值.綜合來(lái)說(shuō),基于圖像對(duì)高分辨率的人臉識(shí)別方法非常多且精度較高,而對(duì)于低分辨率人臉識(shí)別的研究還不太成熟,沒(méi)有考慮到采用超分辨率重建的方法將低分辨率人臉識(shí)別的問(wèn)題轉(zhuǎn)換為高分辨率人臉識(shí)別的問(wèn)題,增加低分辨率的人臉細(xì)節(jié)特征,可以有效提高密集環(huán)境下低分辨率人臉識(shí)別的精度.
本文提出了一種基于超分辨率的人臉識(shí)別算法,本算法包括三個(gè)主要階段:首先,研究圖像金字塔和殘差網(wǎng)絡(luò)融合的微小人臉檢測(cè)算法,利用人臉檢測(cè)模板尺寸對(duì)人臉檢測(cè)準(zhǔn)確率的影響,對(duì)不同圖像金字塔層采用合適的尺寸模板檢測(cè)解決模板冗余的問(wèn)題.其次,構(gòu)建一種基于面部先驗(yàn)信息的超分辨率重建網(wǎng)絡(luò),通過(guò)超分辨率重建中引入人臉先驗(yàn)知識(shí),提升人臉重建的效果,恢復(fù)小尺寸人臉的面部細(xì)節(jié)特征.最后,提取重建后的人臉圖像的512維面部特征向量,計(jì)算提取的人臉特征和預(yù)存人臉特征的相似度完成人臉識(shí)別過(guò)程.通過(guò)實(shí)驗(yàn)證明本文提出的算法對(duì)小尺寸人臉的識(shí)別準(zhǔn)確率有一定的提升,能解決密集環(huán)境下微小人臉檢測(cè)和識(shí)別準(zhǔn)確率低的問(wèn)題.
隨著基于深度神經(jīng)網(wǎng)絡(luò)的人臉檢測(cè)算法的發(fā)展和深入,開(kāi)始逐步取代基于傳統(tǒng)特征的人臉檢測(cè)算法.近年來(lái),越來(lái)越多的基于神經(jīng)網(wǎng)絡(luò)的人臉檢測(cè)技術(shù)被提出并在實(shí)際應(yīng)用中取得了不錯(cuò)的效果,例如MTCNN[21]和Faceness[22],但是這些人臉檢測(cè)技術(shù)在密集環(huán)境下對(duì)離相機(jī)較遠(yuǎn)的微小人臉檢測(cè)效果有待提高,為改善微小人臉的檢測(cè)效果,本文提出了一種結(jié)合圖像金字塔和殘差網(wǎng)絡(luò)(ResNet)的微小人臉檢測(cè)算法,并設(shè)計(jì)一種合理利用不同大小模板的模板選擇方法,提高圖像金字塔和多特征圖結(jié)合進(jìn)行人臉檢測(cè)的效率.
圖1 微小人臉檢測(cè)算法Fig.1 Tiny face detection algorithm
本文設(shè)計(jì)的微小人臉檢測(cè)流程如圖1所示,將圖片輸入網(wǎng)絡(luò)后,首先創(chuàng)建一個(gè)圖像金字塔;然后,將縮放后的圖片通過(guò)Resnet101網(wǎng)絡(luò)得到不同感受野下的幾個(gè)特征圖;其次,針對(duì)圖像金字塔得到不同分辨率的圖像,在其對(duì)應(yīng)的ResNet101網(wǎng)絡(luò)特征圖上采用不同大小的模板集合進(jìn)行檢測(cè),模板區(qū)域進(jìn)行分類會(huì)產(chǎn)生候選框(Candidate Bound)的集合;最后,將得到的候選框用非極大值抑制(Non-Maximum Suppression,NMS)的方法去掉冗余的框,獲得最終的人臉檢測(cè)結(jié)果.
基于深度學(xué)習(xí)的人臉檢測(cè)方法通過(guò)將圖片通過(guò)卷積網(wǎng)絡(luò),得到待檢測(cè)圖片不同卷積層輸出的特征圖,再利用人臉檢測(cè)模板在特征圖上進(jìn)行檢測(cè).例如上文中提到的MTCNN和Faceness都是利用神經(jīng)網(wǎng)絡(luò)進(jìn)行人臉檢測(cè),該方法具有良好的檢測(cè)效率和性能,得到了廣泛應(yīng)用.但是由于小尺寸的人臉面部特征信息較少,所以該類網(wǎng)絡(luò)在微小的人臉檢測(cè)方面效果一般.因此本文利用圖像金字塔得到不同尺寸的人臉,再結(jié)合深度神經(jīng)網(wǎng)絡(luò)進(jìn)行人臉檢測(cè),解決小尺寸人臉檢測(cè)精度不高的問(wèn)題.
圖像金字塔是通過(guò)上下采樣將圖片用金字塔層級(jí)排列的概念結(jié)構(gòu),主要用于各種圖像處理技術(shù)的預(yù)處理.本文通過(guò)上采樣和降采樣分別得到待檢測(cè)圖片的高分辨率和低分辨率圖片,采樣達(dá)到某個(gè)終止條件停止,最后得到待檢測(cè)圖片的圖像金字塔.
構(gòu)建圖像金字塔之后,需要將不同分辨率的圖片通過(guò)神經(jīng)網(wǎng)絡(luò)得到不同的特征圖,在特征圖上使用人臉檢測(cè)模板獲得人臉候選框,本文的網(wǎng)絡(luò)結(jié)構(gòu)采用ResNet[23]殘差網(wǎng)絡(luò).
理論上卷積網(wǎng)絡(luò)隨著網(wǎng)絡(luò)層數(shù)的增多,特征提取能力也會(huì)隨之增強(qiáng).然而實(shí)驗(yàn)中發(fā)現(xiàn)隨著網(wǎng)絡(luò)層數(shù)的深入,網(wǎng)絡(luò)層數(shù)的增加可能會(huì)帶來(lái)梯度消失和梯度下降等問(wèn)題,導(dǎo)致網(wǎng)絡(luò)性能的降低.2015年殘差網(wǎng)絡(luò)的出現(xiàn)解決了這一問(wèn)題,殘差網(wǎng)絡(luò)提出了殘差塊(Residual Block)的思想,殘差塊通過(guò)跳躍連接的方式讓高層特征圖同時(shí)也包含了底層的特征信息,通過(guò)1×1的卷積讓殘差塊返回主路徑的值和下一個(gè)殘差塊的尺寸相同.殘差塊結(jié)構(gòu)如公式(1)所示:
F(x)=W2σ(W1x)
(1)
其中x表示輸入,F(xiàn)(x)表示殘差塊在第二層激活函數(shù)之前的輸出,W1和W2表示第一層和第二層的權(quán)重,σ表示ReLU激活函數(shù),最后的輸出H(x)的公式(2)所示:
H(x)=F(x)+x
(2)
通過(guò)這種跳躍連接的方式,可以有效解決深層網(wǎng)絡(luò)訓(xùn)練中產(chǎn)生的梯度消失和梯度下降的問(wèn)題,從而使得通過(guò)增加網(wǎng)絡(luò)深度來(lái)提升神經(jīng)網(wǎng)絡(luò)性能的方法得以實(shí)現(xiàn).ResNet網(wǎng)絡(luò)包括五種深度,分別是18層、34層、50層、101層和152層,其中50層和101層使用最廣泛,一般被稱為ResNet50和ResNet101,本文使用ResNet101網(wǎng)絡(luò),包括6個(gè)部分,分別是Conv_1,Conv2_x,Conv3_x,Conv4_x,Conv5_x和平均池化層.其中Conv_1主要用來(lái)調(diào)整圖片到固定的尺寸;平均池化層主要用來(lái)做分類或者提取需要的圖片特征;Conv5_x輸出的特征圖大小為7×7,該部分丟失較多淺層信息,不利于用來(lái)進(jìn)行人臉檢測(cè).因此本文的人臉檢測(cè)模板在Conv2_x,Conv3_x和Conv4_x的特征圖上進(jìn)行檢測(cè).
由于人臉尺寸大小不固定,采用單一模板在特征圖上進(jìn)行檢測(cè)會(huì)導(dǎo)致漏檢問(wèn)題,因此目前基于深度神經(jīng)網(wǎng)絡(luò)的檢測(cè)方法大多采用多尺度模板進(jìn)行檢測(cè),但采用圖像金字塔和多特征圖檢測(cè)的方法雖然能提高人臉檢測(cè)的效果但是會(huì)導(dǎo)致檢測(cè)時(shí)間較長(zhǎng).假設(shè)本文圖片構(gòu)建了5層特征金字塔,每層圖片在Conv2_x,Conv3_x,Conv4_x這3個(gè)特征圖上檢測(cè),如果使用25個(gè)人臉檢測(cè)模板,則每個(gè)模板需要在15個(gè)特征圖上進(jìn)行檢測(cè),一共檢測(cè)375次,造成大量冗余的計(jì)算.因此本文針對(duì)圖像金字塔的不同層,選取合適的模板進(jìn)行檢測(cè).人臉檢測(cè)模板通常采用ImageNet[24]數(shù)據(jù)集進(jìn)行訓(xùn)練,我們首先將ImageNet數(shù)據(jù)集圖片縮放到224×224大小,對(duì)人臉像素統(tǒng)計(jì)發(fā)現(xiàn)人臉?lè)直媛手饕性?0~140之間,因?yàn)槿四槞z測(cè)訓(xùn)練集主要訓(xùn)練這個(gè)像素的人臉,因此模板對(duì)于像素高度在40~140的人臉更易于檢測(cè).
本文通過(guò)人臉檢測(cè)預(yù)訓(xùn)練集的特點(diǎn),找到最容易檢測(cè)到人臉的模板尺寸區(qū)間,在圖像金字塔的不同層上根據(jù)縮放大小選擇最適合檢測(cè)的模板尺寸,減少每層圖像金字塔的模板數(shù)量,減少冗余計(jì)算,對(duì)模板數(shù)量的合理分配.用t(h,w,σ)來(lái)描述一個(gè)模板,其中h和w表示模板的高和寬,σ表示圖片縮放的倍數(shù).該模板用來(lái)檢測(cè)t(h/σ,w/σ)大小的人臉.如果檢測(cè)一個(gè)31×25的小尺度人臉,那么在兩倍分辨率的金字塔圖像上采用(62,50,2)的模板比在原圖像上采用(31,25,1)的模板效果更優(yōu);同理,若檢測(cè)一個(gè)250×200的人臉則在0.5倍分辨率圖像上采用(125,100,0.5)的模板檢測(cè)效果更優(yōu).因此,本文在上采樣圖片上主要檢測(cè)高度大于140的人臉;在原圖中主要檢測(cè)高度在40~140的人臉;在下采樣的圖片中主要檢測(cè)高度小于40的人臉.因此,本文針對(duì)不同縮放尺度圖片的模板選擇由公式(3)表示:
(3)
該公式中,h表示模板的高度,σ表示圖片的縮放尺寸.通過(guò)給圖像金字塔不同層的圖片分配不同大小模板的方法,在一定程度上解決了圖像金字塔檢測(cè)方法和神經(jīng)網(wǎng)絡(luò)檢測(cè)方法融合所帶來(lái)的計(jì)算量過(guò)大的問(wèn)題.
人臉檢測(cè)模板在特征圖上進(jìn)行人臉檢測(cè)時(shí),模板框會(huì)通過(guò)分類器得到該區(qū)域的得分,得分越大越接近人臉,保留其中得分較高的區(qū)域,會(huì)形成一個(gè)人臉候選框(Candidate Bound)的集合.這些候選框有很多冗余,所以需要通過(guò)非極大值抑制(Non-Maximum Suppresion,NMS)的方法來(lái)去掉多余的框.首先選取分類得分最高的人臉候選框,然后計(jì)算該候選框和其它候選框的交并比(Intersection-Over-Union,IOU),計(jì)算公式如公式(4)所示:
(4)
其中A為得分最高的候選框,B為其余的候選框.當(dāng)A和某個(gè)候選框的IOU大于某個(gè)閾值時(shí),將B從候選框集合中刪除.非極大值抑制偽代碼如算法1所示.
算法1.非極大值抑制算法
輸入:候選框集合B={b1,b2…,bN}、候選框得分集合S={S1,S2,…,SN}、閾值Nt.
1.創(chuàng)建一個(gè)存放最優(yōu)框的集合H,將候選框集合B按得分從高往低排序.
2.在候選框集合B找到得分最高的候選框h,將h移到集合H.
3.遍歷集合B中的框,與框h計(jì)算交并比,如果交并比大于閾值Nt,將此框從集合H中移除.
4.重復(fù)步驟2和步驟3,直到集合B為空集.
輸出:最優(yōu)框集合H.
非極大值抑制通過(guò)多模板對(duì)每層圖像金字塔進(jìn)行人臉檢測(cè),會(huì)得到多個(gè)候選框,通過(guò)非極大值抑制的方法將多余的候選框去除,得到人臉識(shí)別的最終結(jié)果.
心之所向,素履以往。生如逆旅,一葦以航。陳老師是平凡的追夢(mèng)者,也是不凡的造夢(mèng)者。他總是用充滿期待的愛(ài),滋潤(rùn)“路途勞累”的莘莘學(xué)子。正如德國(guó)哲學(xué)家雅斯貝爾斯說(shuō)過(guò):教育意味著一棵樹(shù)搖動(dòng)另一棵樹(shù),一朵云推動(dòng)另一朵云,一個(gè)靈魂喚醒另一個(gè)靈魂。
本小節(jié)的人臉識(shí)別算法包括超分辨率重建和人臉識(shí)別兩部分.本文的人臉識(shí)別算法采用超分辨率重建來(lái)增加小尺度人臉的面部細(xì)節(jié)特征,再將重建后的高分辨率人臉?biāo)腿胩卣魈崛【W(wǎng)絡(luò)提取面部特征向量,最后進(jìn)行人臉比對(duì)確定人臉身份.其算法結(jié)構(gòu)圖如圖2所示.
圖2 人臉識(shí)別算法結(jié)構(gòu)圖Fig.2 Structure diagram of face recognition algorithm
本文通過(guò)將面部先驗(yàn)信息融合到超分辨率重建網(wǎng)絡(luò),通過(guò)面部先驗(yàn)知識(shí)可以更好地重建人臉圖像,該超分辨率重建網(wǎng)絡(luò)由4個(gè)部分組成:粗糙的SR網(wǎng)絡(luò)、編碼網(wǎng)絡(luò)、人臉先驗(yàn)信息和解碼器網(wǎng)絡(luò).
我們首先使用一個(gè)粗糙的SR網(wǎng)絡(luò)將低分辨率圖片恢復(fù)成一個(gè)128×128的高分辨率圖片.先將低分辨率圖片上采樣至128×128的高分辨率圖片,再通過(guò)3×3,步長(zhǎng)為1的卷積核將圖片卷積成64個(gè)特征圖,再通過(guò)三個(gè)殘差塊,最后再用3×3,步長(zhǎng)為1的的卷積核重建出一個(gè)粗糙的高分辨率圖片.
我們利用面部先驗(yàn)信息來(lái)提升重建的人臉圖片的質(zhì)量,本文的面部先驗(yàn)信息采用面部特征點(diǎn),Dlib機(jī)器學(xué)習(xí)工具箱為我們提供了練好的模型“shape_predictor_68 _face_landm-arks.dat”,該面部關(guān)鍵點(diǎn)提取網(wǎng)絡(luò)可以提取68個(gè)面部特征點(diǎn).超分辨率編碼器則利用12個(gè)殘差塊進(jìn)行特征提取,為了減少計(jì)算,我們將先驗(yàn)特征圖和粗糙的SR網(wǎng)絡(luò)重建的高分辨率圖片降采樣到64×64.超分辨率編碼器先用步長(zhǎng)為2的3×3卷積核將特征圖降采樣到64×64,特征圖數(shù)量為64,然后經(jīng)過(guò)12個(gè)殘差塊,最后用一個(gè)3×3,步長(zhǎng)為1的卷積核提取編碼特征圖.
超分辨率解碼器將面部先驗(yàn)特征圖和編碼特征圖串聯(lián)起來(lái)作為解碼器的輸入.然后使用3×3步長(zhǎng)為1的卷積核將特征圖的數(shù)量由128減少到64個(gè),再利用3 ×3的反卷積層將特征圖上采樣到128×128.隨后用3個(gè)殘差塊對(duì)特征圖進(jìn)行解碼.最后使用一個(gè)3×3步長(zhǎng)為1的卷積核將特征圖恢復(fù)成128×128的高分辨率圖片.
超分辨率重建網(wǎng)絡(luò)的損失函數(shù)如公式(5)所示.
(5)
(6)
其中s表示規(guī)模參數(shù),分類分類正確的標(biāo)簽值為es(cos(θyi+m)),m表示平移距離,一般小于1,又因?yàn)橛嘞液瘮?shù)在輸入范圍內(nèi)是遞減函數(shù),因此該損失函數(shù)充分考慮了角度距離比余弦距離對(duì)角度的影響更直接.
面部特征提取網(wǎng)絡(luò)提取到的512維面部特征和預(yù)存的人臉特征進(jìn)行歐氏距離計(jì)算,根據(jù)距離判斷該人臉的身份,歐式距離計(jì)算公式如(7)所示:
(7)
其中,xik和xjk分別表示i向量和j向量的第k個(gè)數(shù).計(jì)算待識(shí)別人臉特征和預(yù)存的所有人臉id對(duì)應(yīng)特征的距離,找到其中最近的人臉id,再通過(guò)設(shè)置閾值的方式,如果和最近的人臉特征的距離小于閾值,則識(shí)別為此人臉id的身份;如果最小距離大于閾值,則無(wú)法識(shí)別.根據(jù)我們實(shí)際研發(fā)工程項(xiàng)目的經(jīng)驗(yàn),我們將閾值設(shè)置為1.05,在此閾值下能確保準(zhǔn)確識(shí)別的同時(shí)也不會(huì)有太高的拒識(shí)率.
本實(shí)驗(yàn)在Windows 10操作系統(tǒng)下采用Python開(kāi)發(fā)語(yǔ)言,采用OpenCV進(jìn)行圖像處理,使用TensorFlow、MXNet等深度學(xué)習(xí)框架實(shí)現(xiàn)深度學(xué)習(xí)算法,顯卡為NVIDIA 2080,顯存8G,CPU為Intel(R)Core(TM)i7-8750H,內(nèi)存32G.
本文采用WIDER FACE[26]數(shù)據(jù)集作為人臉檢測(cè)訓(xùn)練集,此訓(xùn)練集包含了不同大小、姿態(tài)、遮擋、表情和光照環(huán)境下的人臉,是目前開(kāi)放數(shù)據(jù)集上使用最為廣泛的數(shù)據(jù)集,它包含62種環(huán)境下的12880張訓(xùn)練圖片.
人臉檢測(cè)數(shù)據(jù)集采用FDDB[27]進(jìn)行測(cè)試.FDDB數(shù)據(jù)集有2845張圖像,共包含5171張人臉,是目前最常用的人臉測(cè)試數(shù)據(jù)集.
超分辨率重建訓(xùn)練集采用Helen[28]人臉數(shù)據(jù)集,該數(shù)據(jù)庫(kù)訓(xùn)練集包括了2000張人臉圖片,測(cè)試集包括100張人臉圖片,所有人臉都被標(biāo)注了68個(gè)特征點(diǎn).
本文人臉識(shí)別測(cè)試集采用自建的課堂人臉識(shí)別數(shù)據(jù)集ClassRecognition,其中包括40名同學(xué)的正面照片,如圖3(a)所示;以及采用4k攝像頭從不同角度拍攝的班級(jí)視頻,提取其中20幀圖片進(jìn)行人臉識(shí)別測(cè)試,共包含759張人臉,如圖3(b)所示.
本文人臉檢測(cè)的評(píng)價(jià)指標(biāo)是采用受試者工作特征曲線來(lái)表示,在人臉檢測(cè)任務(wù)中,根據(jù)樣本的正負(fù)和模型給出的判斷
圖3 人臉識(shí)別測(cè)試集Fig.3 Face recognition test set
結(jié)果,可以進(jìn)一步定義真正率(True Positive Rate,TPR)和假正類率(False Positive Rate,FPR),分別見(jiàn)公式(8)和公式(9).
(8)
(9)
其中TP為真正類,F(xiàn)N為假負(fù)類,F(xiàn)P為假正類.
超分辨重建采用峰值信噪比(Peak Signal to Noise Ratio,PSNR)評(píng)價(jià)方法進(jìn)行評(píng)價(jià),公式如(10)所示:
(10)
公式中X表示重建圖像,Y表示原高分辨率圖像,MSE表示均方誤差.
本文算法在公共數(shù)據(jù)集FDDB上進(jìn)行測(cè)試,首先采用本文的微小人臉檢測(cè)算法對(duì)FDDB數(shù)據(jù)集包含5171個(gè)人臉的2845張圖片進(jìn)行檢測(cè),部分檢測(cè)結(jié)果如圖4所示.
圖4 FDDB部分檢測(cè)結(jié)果Fig.4 FDDB part test results
本文根據(jù)微小人臉檢測(cè)算法檢測(cè)到的人臉框位置,和FDDB數(shù)據(jù)集標(biāo)注的人臉框位置計(jì)算交并比(Intersection-over-Union,IOU),閾值設(shè)置為0.5,當(dāng)檢測(cè)到的人臉框和數(shù)據(jù)集標(biāo)注人臉框的IOU大于0.5時(shí),判定檢測(cè)結(jié)果為真正類,即正確檢測(cè)到人臉目標(biāo);當(dāng)檢測(cè)到的人臉框和數(shù)據(jù)集標(biāo)注人臉框的IOU小于0.5時(shí),判定檢測(cè)結(jié)果為假正類,即將非人臉檢測(cè)為人臉.統(tǒng)計(jì)假正類數(shù)量并計(jì)算真正類率繪制受試者工作特征曲線(ROC,Receiver Operating Characteristic Curve)如圖5所示.
本文算法采用ROC曲線與MTCNN[21]、Faceness[22]、Joint Cascade[30]、CCF[31]人臉檢測(cè)算法進(jìn)行比對(duì).圖5的ROC曲線橫坐標(biāo)FP即假正類,是將負(fù)樣本判定為正樣本的數(shù)量,縱坐標(biāo)TPR表示真正類率,即召回率,表示正樣本中正確判定的比例.本文節(jié)設(shè)計(jì)的微小人臉檢測(cè)算法的真正類率達(dá)到97.78%,優(yōu)于MTCNN的95.04%,F(xiàn)aceness的90.99%,Joint Cascade的展示出較好的人臉檢測(cè)性能.
圖5 FDDB測(cè)試集上的受試者工作特征曲線Fig.5 FDDB test set receiver operating characteristic curve
我們將本文的超分辨率重建方法與雙三次插值和SRResNet[29]方法進(jìn)行比較.先將原圖降采樣到16×16大小,然后分別通過(guò)上述3種方法重建到128×128大小,采用主觀評(píng)價(jià)和客觀評(píng)價(jià)兩種方式評(píng)價(jià)超分辨率重建算法的效果.主觀評(píng)價(jià)即根據(jù)人眼的視覺(jué)感受評(píng)價(jià)算法的效果,重建效果對(duì)比如圖6所示.
圖6 重建效果對(duì)比圖Fig.6 Reconstruction effect contrast diagram
從主觀評(píng)價(jià)來(lái)看,采用雙三次插值的方法對(duì)輸入的低分辨率圖片重建的效果很差,不能反映人臉信息,而現(xiàn)在的人臉識(shí)別方法多采用該方法將輸入人臉調(diào)整到人臉識(shí)別網(wǎng)絡(luò)設(shè)定的輸入大小;SRResNet方法恢復(fù)得到的人臉效果較優(yōu)于雙三次插值的方法,但是仍然不能很好的恢復(fù)面部細(xì)節(jié)特征;從重建效率對(duì)比圖可以看出本文結(jié)合人臉先驗(yàn)信息進(jìn)行人臉重建的方法能恢復(fù)更多的面部細(xì)節(jié),優(yōu)于前兩種方法.
客觀評(píng)價(jià)采用峰值信噪比評(píng)價(jià)方法進(jìn)行評(píng)價(jià).峰值信噪比反映了圖像的退化或受噪音影響的程度.該方法在圖像壓縮、重建領(lǐng)域經(jīng)常使用,是在重建領(lǐng)域中一個(gè)非常重要的評(píng)價(jià)指標(biāo),值越大表示圖像的重建效果越好.表1展示了Helen數(shù)據(jù)集重建圖像的PSNR對(duì)比效果,從表中可以看出本文方法的客觀評(píng)價(jià)指標(biāo)結(jié)果優(yōu)于雙三次插值和SRResNet重建算法.
表1 Helen測(cè)試集實(shí)驗(yàn)結(jié)果Table 1 Helen test set experimental results
本文通過(guò)融合人臉先驗(yàn)信息的超分辨率重建方法與雙三次插值和SRResNet方法在自建課堂人臉識(shí)別數(shù)據(jù)集ClassRecognition上進(jìn)行識(shí)別比對(duì).
首先采集班級(jí)40名同學(xué)的人臉特征,用來(lái)和教室圖片中采集到人臉進(jìn)行比對(duì).特征采集首先對(duì)ClassRecognition數(shù)據(jù)集的每名同學(xué)的照片先進(jìn)行人臉檢測(cè),然后提取特征,將提取的512維特征向量和對(duì)應(yīng)的學(xué)生id存入數(shù)據(jù)庫(kù)的人臉特征表.
對(duì)ClassRecognition數(shù)據(jù)集的20張4K分辨率照片進(jìn)行人臉識(shí)別測(cè)試.首先進(jìn)行人臉檢測(cè),之后將圖片中的人臉用超分辨率重建的方法進(jìn)行人臉重建,接著提取人臉面部特征和預(yù)存的學(xué)生特征計(jì)算歐氏距離,找到距離最近的特征,如果和歐氏距離最近的特征之間的距離小于閾值1.05,則返回該人臉特征對(duì)應(yīng)的學(xué)生id,根據(jù)標(biāo)注了學(xué)生id的圖片,人工統(tǒng)計(jì)識(shí)別的準(zhǔn)確性,并和現(xiàn)有未使用超分辨率重建的人臉識(shí)別算法進(jìn)行比對(duì),識(shí)別準(zhǔn)確率(%)如表2所示.
表2 ClassRecognition測(cè)試集人臉識(shí)別實(shí)驗(yàn)結(jié)果Table 2 ClassRecognition test set face recognition experiment results
通過(guò)和雙三次插值、SRResNet超分辨率重建算法結(jié)合本文人臉識(shí)別算法進(jìn)行識(shí)別準(zhǔn)確率比對(duì),分別統(tǒng)計(jì)三種超分辨率重建算法和本文的人臉識(shí)別算法結(jié)合的識(shí)別準(zhǔn)確率(%),如表3所示.
表3 ClassRecognition測(cè)試集超分辨率重建人臉識(shí)別實(shí)驗(yàn)結(jié)果Table 3 ClassRecognition test set super-resolution reconstruction face recognition experiment results
通過(guò)實(shí)驗(yàn)的數(shù)據(jù)比對(duì)可以看出采用本文的超分辨率重建和人臉識(shí)別結(jié)合的方法可以提高密集環(huán)境下人臉識(shí)別的準(zhǔn)確率.盡管采用4k攝像頭來(lái)拍攝,班級(jí)環(huán)境下后排的同學(xué)人臉仍然會(huì)丟失很多細(xì)節(jié)信息,導(dǎo)致人臉識(shí)別準(zhǔn)確率的降低.人臉識(shí)別算法通常采用雙三次插值將圖片重建成深度人臉識(shí)別網(wǎng)絡(luò)需要的高分辨率圖片,該方法并不能恢復(fù)丟失的人臉細(xì)節(jié)信息.本文通過(guò)基于人臉先驗(yàn)信息重建課堂低分辨率人臉,可以在一定程度上恢復(fù)丟失的人臉細(xì)節(jié)信息,提高密集環(huán)境下人臉識(shí)別的準(zhǔn)確率.
在本文中,作者提出了一種基于超分辨率的人臉識(shí)別算法,本算法包括人臉檢測(cè)、超分辨率重建和人臉識(shí)別三個(gè)階段.首先,研究圖像金字塔和殘差網(wǎng)絡(luò)融合的微小人臉檢測(cè)算法,利用人臉檢測(cè)模板尺寸對(duì)人臉檢測(cè)準(zhǔn)確率的影響,對(duì)不同圖像金字塔層采用合適的尺寸模板檢測(cè)解決模板冗余的問(wèn)題.其次,構(gòu)建一種基于面部先驗(yàn)信息的超分辨率重建網(wǎng)絡(luò),通過(guò)超分辨率重建中引入人臉先驗(yàn)知識(shí),提升人臉重建的效果,恢復(fù)小尺寸人臉的面部細(xì)節(jié)特征.最后,提取重建后的人臉圖像的512維面部特征向量,計(jì)算提取的人臉特征和預(yù)存人臉特征的相似度完成人臉識(shí)別過(guò)程.通過(guò)實(shí)驗(yàn)證明本文提出的基于超分辨率的微小人臉識(shí)別算法能夠提升小尺寸人臉識(shí)別的準(zhǔn)確率,能解決密集環(huán)境下微小人臉檢測(cè)和識(shí)別準(zhǔn)確率低的問(wèn)題.