管紓玥,狄 嵐,梁久禎
1(江南大學(xué) 人工智能與計算機(jī)學(xué)院,江蘇 無錫 214122) 2(常州大學(xué) 計算機(jī)與人工智能學(xué)院,江蘇 常州 213164)
人臉特征點(diǎn)定位,又稱人臉關(guān)鍵點(diǎn)檢測或人臉對齊,是指在人臉圖像上找出眼睛、鼻子、嘴巴等特征點(diǎn)的坐標(biāo).它是人臉識別、人臉重建、頭部姿態(tài)估計等計算機(jī)視覺任務(wù)的重要環(huán)節(jié).雖然深度學(xué)習(xí)技術(shù)極大提高了人臉特征點(diǎn)定位的準(zhǔn)確性,但在實際應(yīng)用中姿態(tài)、表情、光照、遮擋、模糊等因素仍使得人臉特征點(diǎn)定位面臨巨大挑戰(zhàn).由于新冠疫情的發(fā)展,遮擋人臉在實際生活中變得越來越普遍,研究遮擋人臉的特征點(diǎn)定位變得更加迫切.
針對人臉特征點(diǎn)定位的遮擋問題,目前已取得了不少的進(jìn)展.2013年Burgos-Artizzu等人[1]提出RCPR(Robust Cascaded Pose Regression)依賴有遮擋標(biāo)簽的訓(xùn)練集,將人臉分成不同的塊,利用遮擋先驗預(yù)測對應(yīng)特征點(diǎn)的遮擋概率.在此基礎(chǔ)上,2021年Tong等人[2]提出TSCPR(Two-Stage Cascaded Pose Regression)算法,使用原始圖像和鏡像圖像的定位差異來預(yù)測特征點(diǎn)是否遮擋.2019年Zhu等人[3]提出ODN(Occlusion-adaptive Deep Networks)算法,使用蒸餾模塊生成遮擋概率圖作為權(quán)重減少遮擋影響,獲得干凈的人臉特征表示,使用幾何感知模塊挖掘人臉幾何特征輔助低秩模塊更好恢復(fù)丟失特征.2020年,Wan等人[4]提出CRD(Cascaded Regression and Deocclusion)算法,使用編解碼器檢測遮擋并逐步恢復(fù)遮擋部分圖像.同年Kumar等人[5]則在Stracked Dense U-Net[6]的基礎(chǔ)上提出了LUVLi損失來評估特征點(diǎn)的位置可信度和可見度.
現(xiàn)有的人臉遮擋定位算法,或依賴大量的遮擋標(biāo)注區(qū)分遮擋點(diǎn)與非遮擋點(diǎn),或需添加額外模塊進(jìn)行遮擋特征提取或祛除,進(jìn)而減輕特征點(diǎn)定位過程中遮擋帶來的影響.除COFW外,300W、WFLW等人臉特征點(diǎn)定位數(shù)據(jù)集均未提供特征點(diǎn)的遮擋標(biāo)簽.為特征點(diǎn)定位模塊添加遮擋輔助模塊則會增加模型的計算成本,輔助模塊與整個定位算法高度耦合,移植性較差.
損失函數(shù)是深度模型的重要組成部分,熱圖回歸模型通常選用L2損失(也稱MSE損失).L2損失使得在訓(xùn)練過程中人臉圖像上所有像素具有相同的損失和權(quán)重,忽視了遮擋等因素的影響,最終產(chǎn)生較大的定位誤差.
對人臉圖像進(jìn)行隨機(jī)矩形擦除能夠模擬遮擋,在一定程度上提升模型的魯棒性.2018年Dong 等人[7]提出SAN(Style Aggregated Network)算法,將一張人臉圖像經(jīng)由GAN網(wǎng)絡(luò)生成多張不同風(fēng)格的圖像,有效提升了過亮過暗的人臉圖像上特征點(diǎn)定位結(jié)果.2021年Yan等人[8]采用在圖像上隨機(jī)位置生成隨機(jī)大小的橢圓的方式解決遮擋問題.但遮擋是不規(guī)則的、隨機(jī)的和復(fù)雜的,人臉的任何部分都可能被任意對象遮擋,上述方法不能有效模擬現(xiàn)實中的遮擋.
特征點(diǎn)定位模型一般僅輸入3通道的人臉圖像.2018年Wu等人[9]提出LAB(Look At Boundary)算法,使用邊界生成器生成邊界圖,將邊界熱圖與原圖融合后輸入特征點(diǎn)定位模塊,增強(qiáng)特征點(diǎn)之間的幾何聯(lián)系,獲得更好的定位效果.2019年Wang等人[10]提出AWing(Adaptive Wing loss)算法輸出額外通道預(yù)測特征點(diǎn)的邊界圖.2021年P(guān)ark H等人[11]所提的ACN(Attentional Combination of heterogeneous regression Networks)算法使用特征金字塔生成注意力掩碼,消除遮擋造成的特征中斷.以上算法證明了,邊熱圖、掩碼圖有助于模型更好的提取特征.
以HRNet[12]為基礎(chǔ),本文提出了一種遮擋自適應(yīng)權(quán)重的人臉特征點(diǎn)定位算法occHRNet(occlusion_High-Resolution Network),減輕遮擋對人臉定位的影響,主要貢獻(xiàn)包括以下3個方面:
1)設(shè)計了一種遮擋自適應(yīng)權(quán)重的損失函數(shù).添加遮擋預(yù)測輔助模塊,利用主干網(wǎng)絡(luò)的特征提取結(jié)果預(yù)測特征點(diǎn)的遮擋度,對遮擋度進(jìn)行線性變換作為特征點(diǎn)定位的損失權(quán)重,減輕遮擋點(diǎn)的影響.
2)提出了一種遮擋人臉生成及標(biāo)注算法,來解決人臉特征點(diǎn)遮擋標(biāo)簽不足的問題.充分考慮遮擋的復(fù)雜性,生成隨機(jī)大小、形狀、紋理、透明度的遮擋物進(jìn)行人臉遮擋;使用GAN網(wǎng)絡(luò)生成諸如胡子、眼鏡等具有實際意義的不規(guī)則遮擋;并對遮擋圖進(jìn)行特征點(diǎn)批量遮擋標(biāo)注.
3)提出了一種復(fù)合特征圖生成及融合方案.根據(jù)人臉特征點(diǎn)的預(yù)測坐標(biāo),生成人臉的點(diǎn)特征圖、邊特征圖、區(qū)域特征圖以及裁剪圖,將特征圖與原圖相融合,從點(diǎn)線面三層次幫助網(wǎng)絡(luò)更好的提取人臉特征.
本算法在COFW、300W數(shù)據(jù)集上進(jìn)行了測試,遮擋人臉特征點(diǎn)定位的精度取得了有效的提升,同時無遮擋人臉的定位效果仍能與HRNet相持平.
人臉特征點(diǎn)定位算法可以分為基于傳統(tǒng)的定位算法和基于深度的定位算法.
傳統(tǒng)的人臉特征點(diǎn)定位算法包括主動形狀模型(Active Shape Model,ASM)[13]和主動表觀模型(Active Appearance Model,AAM)[14],主要通過調(diào)整模型的參數(shù)來不斷優(yōu)化誤差函數(shù),進(jìn)而進(jìn)行形狀估計,但對遮擋人臉往往定位效果不佳.
關(guān)于基于深度學(xué)習(xí)的人臉特征點(diǎn)定位一般分為兩種:1) 坐標(biāo)回歸模型(Coordinate-Based Regression,CBR);2) 熱圖回歸模型(Heatmap-Based Regression,HBR).坐標(biāo)回歸模型,是直接輸出N維向量作為特征點(diǎn)對應(yīng)的預(yù)測坐標(biāo),而熱圖回歸模型則是輸出N通道的熱圖,再將熱圖按公式(1)映射出特征點(diǎn)的坐標(biāo).一般來說熱圖回歸模型的效果優(yōu)于坐標(biāo)回歸模型.
p(x,y)=arg maxx,yh(x,y)
(1)
其中,h(x,y)為特征點(diǎn)所對應(yīng)的熱圖,p(x,y)為特征點(diǎn)所對應(yīng)的坐標(biāo).
熱圖回歸模型最為常用的骨干網(wǎng)絡(luò)為沙漏網(wǎng)絡(luò)模型(Hourglass Net)[15]、U-Net.沙漏網(wǎng)絡(luò)、U-Net網(wǎng)絡(luò)采用對稱的網(wǎng)絡(luò)架構(gòu),前半部分進(jìn)行下采樣,后半部分進(jìn)行上采樣,實現(xiàn)從低分辨率到高分辨率的恢復(fù),但在下采樣的過程中往往會損失原始尺度的信息.HRNet始終保持高分辨率,并行連接從高分辨率到低分辨率的多個分辨率的卷積結(jié)果,且在并行卷積的過程中多次進(jìn)行多尺度融合.HRNet共4個階段;第一階段為一個單獨(dú)的分支,其通道為18,分辨率為64×64;其余階段保留上一階段已有分支,并添加一個分辨率為上一階段最低分辨率一半的新分支;第4階段共4個分支,每個分支生成的特征的通道與分辨率分別為18×64×64、36×32×32、72×16×16、144×8×8;最后對不同分辨率的特征經(jīng)過上采樣輸入熱圖生成模塊,生成分辨率為64×64的熱圖.HRNet在下采樣提取特征的同時保留高分辨表征,即避免了高分辨率特征的損失.與沙漏網(wǎng)絡(luò)、U-Net網(wǎng)絡(luò)相比,HRNet在人臉回歸任務(wù)中取得了更好的定位效果,且HRNet輸出多種分辨率特征,下采樣融合后可以更好的預(yù)測特征點(diǎn)遮擋度,故本文選擇HRNet作為本算法的骨干網(wǎng)絡(luò).
損失函數(shù)是深度回歸模型的重要組成部分.特征點(diǎn)定位模型常用的損失函數(shù)是L2損失,計算過程為:
(2)
2019年Guo等人[16]使用輔助網(wǎng)絡(luò)預(yù)測人臉的偏轉(zhuǎn)角度,將姿態(tài)幾何信息集成到損失函數(shù)中,減輕姿態(tài)對特征點(diǎn)定位的影響.2022年P(guān)ourramezan等人[17]提出ARC損失(adaptive coordinate-based regression loss)以人臉圖像中特征點(diǎn)位置到該點(diǎn)在平均臉位置的距離為該點(diǎn)定位的難度,根據(jù)特征點(diǎn)的難度水平自適應(yīng)地修改損失函數(shù)權(quán)重,提高特征點(diǎn)定位的準(zhǔn)確性.上述損失函數(shù)提升了模型的預(yù)測效果,但并未將遮擋與損失函數(shù)相關(guān)聯(lián).
為了解決遮擋帶來的人臉特征點(diǎn)定位不準(zhǔn)確問題,本文提出了一種基于自適應(yīng)遮擋權(quán)重的人臉特征點(diǎn)回歸算法occHRNet,occHRNet的框架如圖1所示.
圖1 occHRNet框架圖Fig.1 occHRNet framework
從圖1(a)自適應(yīng)遮擋區(qū)域可以看到,本算法添加了一個遮擋預(yù)測的輔助模塊.將預(yù)測的遮擋度經(jīng)由線性變換后作為熱圖回歸任務(wù)的自適應(yīng)權(quán)重,設(shè)計了遮擋自適權(quán)重?fù)p失函數(shù).如圖1(b)數(shù)據(jù)集擴(kuò)增區(qū)域所示,生成具有不同形狀、大小、紋理和透明度的遮擋人臉并標(biāo)注特征點(diǎn)的遮擋度,豐富數(shù)據(jù)集的遮擋信息.在圖1(c)特征生成及融合區(qū)域所示,生成人臉點(diǎn)特征圖、邊特征圖、區(qū)域特征圖以及裁剪圖的復(fù)合特征圖,并于與原圖融合后輸入主干網(wǎng)絡(luò).
假設(shè)數(shù)據(jù)集一共包含N個樣本,采用M點(diǎn)標(biāo)注法,則圖像Ia上對應(yīng)特征點(diǎn)坐標(biāo)標(biāo)簽Pa為:
Pa=[(xa0,ya0),(xa1,ya1),…,(xa(m-1),ya(m-1))]
(3)
(4)
特征點(diǎn)遮擋標(biāo)簽Oa為:
Oa=[oa0,oa1,…,oa(m-1)]
(5)
(6)
熱圖回歸網(wǎng)絡(luò)常用的L2損失使得所有的像素具有相同的權(quán)重和梯度,未考慮遮擋對于特征點(diǎn)定位的影響.
特征點(diǎn)的遮擋概率Oa與權(quán)重wa之間存在線性關(guān)系:
(7)
其中,θ為一個偏置量,本文中定為0.5.
遮擋自適應(yīng)權(quán)重?fù)p失函數(shù):
(8)
簡記為:
Locc=wa×L2
(9)
(10)
遮擋自適應(yīng)權(quán)重?fù)p失函數(shù)則為:
(11)
簡記為:
(12)
如公式(13)所示使用任務(wù)權(quán)重γ調(diào)整特征點(diǎn)定位任務(wù)和遮擋預(yù)測任務(wù)間平衡問題.
(13)
簡記為:
(14)
在常用人臉特征點(diǎn)定位數(shù)據(jù)集300W中缺少特征點(diǎn)的遮擋標(biāo)簽,而COFW數(shù)據(jù)集僅提供了1345張訓(xùn)練圖像,圖像數(shù)量偏少.經(jīng)由統(tǒng)計COFW訓(xùn)練集中遮擋圖像約占40%,而測試集則達(dá)到90%;訓(xùn)練集遮擋點(diǎn)占10%的,測試集中占20%.對訓(xùn)練集進(jìn)行遮擋生成,來解決COFW中遮擋點(diǎn)與未遮擋點(diǎn)數(shù)據(jù)分布不均,遮擋預(yù)測誤差較大的問題.數(shù)據(jù)擦除僅生成隨機(jī)大小的灰色矩形塊來模擬遮擋對原圖像數(shù)據(jù)的影響,忽略了遮擋的復(fù)雜性.實際應(yīng)用中,遮擋的形狀、大小、顏色、紋理、透明度等屬性均無法確定.
針對遮擋點(diǎn)不足、遮擋具有復(fù)雜性和不確定性的問題,本文提出一中遮擋生成及標(biāo)注算法,將遮擋的形狀、大小、顏色、紋理、透明度納入考量,保留原數(shù)據(jù)集的同時,對原數(shù)據(jù)集進(jìn)行遮擋生成,根據(jù)遮擋區(qū)域及其透明度標(biāo)注特征點(diǎn)的遮擋度.根據(jù)遮擋生成的流程細(xì)節(jié),將遮擋生成分為隨機(jī)幾何遮擋生成、隨機(jī)實物遮擋生成和語義遮擋生成,具體流程如圖2所示.
3.2.1 隨機(jī)遮擋生成
隨機(jī)幾何遮擋算法如圖2(a)所示.
第1步.隨機(jī)生成形狀掩碼m,其中白色部分像素值為1,黑色部分為0,可生成矩形、圓形和多邊形.使用python的opencv庫繪制矩形、圓形.對于n多邊形生成本算法提供兩種繪制方案.方案1,隨機(jī)生成中心點(diǎn)(x,y).對第i個點(diǎn)pi生成半徑ri、角度θi,經(jīng)公式(15)得到邊界點(diǎn)pi(xi,yi).方案2,隨機(jī)生成i個點(diǎn),調(diào)用opencv庫的內(nèi)置多邊形繪制函數(shù)進(jìn)行多邊形繪制.
(15)
第2步.遮擋元素圖If機(jī)形變.對掩碼m進(jìn)行輪廓提取,計算輪廓最小外接矩形Rm的長wr、寬hr和最小坐標(biāo)點(diǎn)pr(xmin,ymin).當(dāng)遮擋元素圖If的長wf>wr或?qū)抙f>hr時,對If進(jìn)行長寬等比例放大.在遮擋元素圖上裁取Rm大小的遮擋內(nèi)容If-r.I′f與掩碼m大小一致,I′f從(xmin,ymin)到(xmin+wr,ymin+hr)為If-r,其余部分像素值為0.
(16)
(17)
(18)
現(xiàn)實中遮擋往往不是簡單的幾何圖形,而是形狀不規(guī)則紋理各異的實物.語義分割數(shù)據(jù)集提供了實物掩碼,即圖2中元素標(biāo)簽圖Il.隨機(jī)實物遮擋算法如圖2(b)所示,與隨機(jī)幾何遮擋算法類似.
3.2.2 GAN網(wǎng)絡(luò)遮擋生成
遮擋具有不可預(yù)測性,常見遮擋除了外物遮擋,還有與人臉部位緊密貼合的遮擋類型,如妝容、胡子等.這類遮擋使用傳統(tǒng)的圖像融合技術(shù)不能得到很好的生成圖像,在此使用GAN生成妝容、胡子、眼鏡等遮擋.如圖2(c)所示,人臉特征生成的GAN網(wǎng)絡(luò)僅對人臉區(qū)域進(jìn)行特征生成,為了得到更好的遮擋圖對人臉進(jìn)行裁剪后輸入GAN網(wǎng)絡(luò)生成器進(jìn)行遮擋特征生成.
使用BeautyGAN[18]生成妝容遮擋圖.StarGAN[19]在Celeba人臉多特征標(biāo)注數(shù)據(jù)集提取多種遮擋特征——妝容、胡子、模糊、眼鏡,并生成相關(guān)特性的遮擋圖.其中妝容遮擋僅改變?nèi)四樀膴y容風(fēng)格,不改變圖像中特征點(diǎn)的遮擋性;胡子遮擋使得嘴部特征點(diǎn)被遮擋;眼鏡使得雙眼的特征點(diǎn)被遮擋;模糊使得全部特征點(diǎn)均被遮擋.
3.2.3 遮擋標(biāo)簽
COFW數(shù)據(jù)集標(biāo)注特征點(diǎn)位置信息的同時標(biāo)注了每個特征點(diǎn)的遮擋情況,1表示遮擋,0未遮擋.使用公式(19)進(jìn)行遮擋圖像遮擋標(biāo)注.
(19)
其中,oo為原始圖像上特征點(diǎn)的初始遮擋度,oadd為遮擋生成算法對特征點(diǎn)新增的遮擋度,o′為最終特征點(diǎn)所對應(yīng)的遮擋度.
參考COFW數(shù)據(jù)集,oadd進(jìn)行01標(biāo)注,對遮擋點(diǎn)標(biāo)注1,未遮擋點(diǎn)標(biāo)注0.對于隨機(jī)幾何遮擋和隨機(jī)實物遮擋,對特征點(diǎn)p(x,y)檢測掩碼m在(x,y)處的值m(x,y)是否為0.若m(x,y)為0,則該點(diǎn)未遮擋,其標(biāo)簽為0;否則其標(biāo)簽為1.GAN遮擋根據(jù)遮擋類型進(jìn)行遮擋標(biāo)注,眼鏡遮擋將眼睛特征點(diǎn)全部標(biāo)注為1,其余特征點(diǎn)標(biāo)簽為0;胡子遮擋將嘴巴特征點(diǎn)全部標(biāo)注為1,其余特征點(diǎn)標(biāo)簽為0;妝容遮擋和模糊遮擋所有點(diǎn)均為0.
隨機(jī)遮擋中遮擋物具有不同的透明度,對特征點(diǎn)使用01標(biāo)注忽視了遮擋物的透明度,將遮擋物的透明度af作為遮擋度對oadd進(jìn)行軟標(biāo)注.對于隨機(jī)幾何遮擋和隨機(jī)實物遮擋,對特征點(diǎn)p(x,y)檢測掩碼m在(x,y)處的值m(x,y)是否為0.若m(x,y)為0,則該點(diǎn)未遮擋,其標(biāo)簽為0;否則其標(biāo)簽為遮擋物的透明度af.GAN遮擋根據(jù)遮擋類型進(jìn)行遮擋標(biāo)注,眼鏡遮擋將眼睛特征點(diǎn)全部標(biāo)注為0.7,其余特征點(diǎn)標(biāo)簽為0;胡子遮擋將嘴巴特征點(diǎn)全部標(biāo)注為0.7,其余特征點(diǎn)標(biāo)簽為0;妝容遮擋和模糊遮擋所有點(diǎn)均為0.3.以0.5為閾值,當(dāng)o′>0.5則點(diǎn)被遮擋,否則該點(diǎn)未遮擋.
保留COFW訓(xùn)練集原圖并增加1倍灰色矩形擦除遮擋圖,構(gòu)成遮擋數(shù)據(jù)集COFW-Gray(*2).保留COFW訓(xùn)練集原圖并增加1倍遮擋圖,每張圖像的遮擋圖從其對應(yīng)的模糊遮擋圖、眼鏡遮擋圖、妝容遮擋圖、胡須遮擋圖、局部遮擋圖、全局遮擋圖中隨機(jī)挑選一張,構(gòu)成數(shù)據(jù)集COFW-EC(*2),增加訓(xùn)練集中的遮擋點(diǎn),使遮擋點(diǎn)的占比與測試集相持平.
LAB、ACN等驗證了人臉邊界熱圖、人臉掩碼等特征圖對于特征點(diǎn)的定位具有積極作用.基于以上實驗方案,本文提出了一種復(fù)合特征融合模塊,協(xié)助模型對原圖進(jìn)行特征提取.考慮到對于測試圖已知信息僅有圖像,如何得到可靠的特征圖、得到何種特征圖、如何進(jìn)行特征融合是值得研究的問題.
Pt=Pt-1+ΔPt
(20)
輸入圖像為255×255的三通道彩色圖像,部分特征圖如圖3所示.
圖3 人臉特征圖Fig.3 Features of face
從圖3可見,3行為人臉特征點(diǎn)定的3種不同標(biāo)注方式即29點(diǎn),68點(diǎn)和98點(diǎn)的預(yù)測坐標(biāo)及對應(yīng)的特征圖.其中,第1行為COFW數(shù)據(jù)集的29點(diǎn)標(biāo)注法,第2行為300W數(shù)據(jù)集的68點(diǎn)標(biāo)注法,第3行為WFLW數(shù)據(jù)集的98點(diǎn)標(biāo)注法.在訓(xùn)練過程中對圖像進(jìn)行隨機(jī)縮放、旋轉(zhuǎn)、翻轉(zhuǎn)增加模型的魯棒性,故而圖3中的原圖具有不同的大小、角度和方向.其中第1列為原圖及數(shù)據(jù)集提供的真實坐標(biāo),第2列為預(yù)測坐標(biāo),第3列為單通道圖像,第4~第6列分別為裁剪圖、點(diǎn)特征圖、總邊特征圖和總區(qū)域特征圖.
裁剪特征圖(cpk):MTCNN[20]、CRD[4]算法截取特征點(diǎn)周圍區(qū)域提取局部信息,減少遮擋對未遮擋點(diǎn)的影響.第n張圖像的第m特征點(diǎn)pmn(x,y)的裁剪掩碼cmknm以該點(diǎn)為中心,2k為邊長,將m個特征點(diǎn)的裁剪掩碼相加得該圖像的裁剪掩碼cmkn,其中k選擇4和16.k為16的裁剪圖(cm16n)如圖3中第4列所示.
邊特征圖(hb):參照LAB將邊特征圖作為輸入信息,為了得到更為準(zhǔn)確的預(yù)測結(jié)果,將邊界圖拆分為多通道的單邊特征圖.COFW可拆分成14通道的單邊特征圖,其中總邊特征圖(hb_sum)如圖3中第6列所示.
區(qū)域特征圖(ha):ACN使用特征金字塔提取多尺度特征生成人臉未遮擋區(qū)域的注意力掩碼,過濾非人臉信息和遮擋部分的無用局部特征.根據(jù)特征點(diǎn)的語義生成區(qū)域特征圖,可以將人臉與背景部分分離,減少背景干擾;同時可將眼口鼻與面部區(qū)域分離,減少部分遮擋對無遮擋區(qū)域影響.COFW可拆分成5通道的單區(qū)域特征圖,其中總區(qū)域特征圖(ha_sum)如圖3中第7列所示.
特征圖融合:COFW數(shù)據(jù)集原始圖像I具有3通道,點(diǎn)線面熱圖有22通道,裁剪圖有2通道.使用公式(21)將3通道原始圖像壓縮為1通道圖像I′,如圖3第3列所示.
(21)
將圖像I′與裁剪掩碼cmk進(jìn)行點(diǎn)乘可得裁剪圖cpk,將圖像I′與cpk進(jìn)行通道拼接,得到μ通道裁剪特征圖組crop_zoo(簡記為cz).
cpk=cmk?I′
(22)
cz=cpk0⊕cpk1⊕I′
(23)
其中,?表示面向元素的點(diǎn)積操作,⊕表示面向通道的連接操作.
ν通道熱圖特征組heatmap_zoo(簡記為hz)如公式(24)所示由單通道特征點(diǎn)熱圖hp、多通道邊界熱圖hb、多通道區(qū)域熱圖ha進(jìn)行通道拼接而成.
hz=hp⊕hb⊕ha
(24)
將I、cz和hz按公式(26)進(jìn)行融合拼接得到最終的z通道輸入inp.
z=3+μ+μ×ν
(25)
(26)
本文實驗環(huán)境為64位window10操作系統(tǒng),GPU為 6G顯存的 NVIDIA GeForce GTX 1060s,使用Pytorch框架,在PyCharm上編程實現(xiàn).
對訓(xùn)練數(shù)據(jù)集進(jìn)行隨機(jī)翻轉(zhuǎn)、旋轉(zhuǎn)、縮放,進(jìn)行樣本擴(kuò)充.使用HRNet作為主干網(wǎng)絡(luò),沿用HRNet參數(shù)設(shè)置,學(xué)習(xí)率為0.001,batch_size 為 8,訓(xùn)練60個批次.
本文使用COFW數(shù)據(jù)集[21]和300W數(shù)據(jù)集[22]進(jìn)行實驗效果評估,使用WFLW數(shù)據(jù)集[10]進(jìn)行人臉特征圖生成,使用Celeba數(shù)據(jù)集[23]、ZJU-Leaper 紡織品瑕疵數(shù)據(jù)集[24]和VOC2010 語義分割數(shù)據(jù)集[25]進(jìn)行遮擋生成.
COFW數(shù)據(jù)集:使用29個特征點(diǎn)標(biāo)注,并對每一個特征點(diǎn)進(jìn)行了遮擋標(biāo)注.訓(xùn)練集1345張,測試集507張.29點(diǎn)人臉標(biāo)注包括,眉毛8個點(diǎn),眼睛10個點(diǎn)(含2個眼中心點(diǎn)),鼻子4個點(diǎn),嘴巴6點(diǎn),邊緣輪廓1個點(diǎn).
COFW-68[26]對測試集標(biāo)注68個點(diǎn)的位置和遮擋情況,其特征點(diǎn)位置標(biāo)注與300W的標(biāo)注方式一致.
300W數(shù)據(jù)集:具有68個特征點(diǎn)標(biāo)注.訓(xùn)練集3148張,測試集分為普通測試集和挑戰(zhàn)集,普通集中主要是正面人臉,而挑戰(zhàn)集中涵蓋大姿態(tài)、遮擋、強(qiáng)光等難度較大的人臉圖像.全集由普通集和挑戰(zhàn)集一同組成,共689張圖像.68點(diǎn)人臉標(biāo)注包括邊緣輪廓16個點(diǎn),眉毛10個點(diǎn),鼻子9個點(diǎn),眼睛12點(diǎn),嘴巴20點(diǎn).
Masked 300W[27]數(shù)據(jù)集是在300W測試集上添加一個口罩遮擋.
為了使定位算法具有更廣泛的應(yīng)用性,根據(jù)特征點(diǎn)標(biāo)簽的語義進(jìn)行跨數(shù)據(jù)映射.圖4展示了COFW(29點(diǎn))和300W(68點(diǎn))數(shù)據(jù)集的特征點(diǎn)定位標(biāo)簽,以及根據(jù)特征點(diǎn)的相同語義,進(jìn)行不同標(biāo)注方式的映示意圖.
(a) 29點(diǎn)映射68點(diǎn) (b) 68點(diǎn)映射29點(diǎn)圖4 人臉特征點(diǎn)標(biāo)注及映射示意圖Fig.4 Label and map of face landmark
如圖4(a)為COFW的29點(diǎn)標(biāo)注映射到300W的68點(diǎn)標(biāo)注示意圖,68點(diǎn)標(biāo)注圖中空心點(diǎn)可由29點(diǎn)標(biāo)注映射得到,從而更新68點(diǎn)中部分點(diǎn)的預(yù)測結(jié)果.圖4(b)為300W的采用68點(diǎn)標(biāo)注映射到COFW的29點(diǎn)標(biāo)注示意圖.29點(diǎn)標(biāo)注圖中空心點(diǎn)可由68點(diǎn)標(biāo)注映射得到,從而更新29點(diǎn)中部分點(diǎn)的預(yù)測結(jié)果.
為了評價特征點(diǎn)定位的效果,采用歸一化平均誤差(Normalized Mean Error,NME)、失敗率(Failure Rate,FR)和累積誤差分布(Cumulative Error Distribution,CED)曲線作為評價指標(biāo).使用準(zhǔn)確率(accuracy,acc)、精確率(precision,pre)、召回率(recall,rec)作為遮擋檢測任務(wù)的評價指標(biāo).使用與交叉熵類似的自適應(yīng)權(quán)重雙任務(wù)評價指標(biāo),通過賦予兩個任務(wù)不同權(quán)重計算的最終得分,評價兩個任務(wù)的最終效果.其中NME和FR是occHRNet的核心任務(wù)特征點(diǎn)定位的評價指標(biāo).
1)歸一化平均誤差(NME)是主流人臉特征點(diǎn)定位算法的主要的評價指標(biāo).NME對每一張圖像計算所有點(diǎn)的預(yù)測坐標(biāo)p與真實坐標(biāo)gt之間的歐式距離,再除以外眼角之間的距離進(jìn)行歸一化,對整個測試集求其平均值.具體運(yùn)算如公式(27)所示:
(27)
其中,N是樣本總量,L是人臉特征點(diǎn)數(shù)量,pi和gti分別為第i個樣本的特征點(diǎn)位置的預(yù)測值和真實值,di是第i個樣本雙眼中心點(diǎn)或外眼角點(diǎn)之間的歐式距離.NME值越小,特征點(diǎn)定位越準(zhǔn)確.
2)失敗率(FR),是特征點(diǎn)定位的重要指標(biāo).特征點(diǎn)定位失敗指當(dāng)特征點(diǎn)的NME值大于閾值δ,則該點(diǎn)認(rèn)為特征點(diǎn)定位失敗.失敗率是指預(yù)測失敗的特征點(diǎn)數(shù)在總預(yù)測點(diǎn)數(shù)中所占的百分比.FR值越小,說明特征點(diǎn)定位越準(zhǔn)確.閾值δ設(shè)為0.08和0.10,使用失敗率FR0.08和FR0.10對特征點(diǎn)定位進(jìn)行評價.
3)累積誤差分布(CED)曲線,橫軸表示NME值,縱軸表示測試樣本中對應(yīng)NME占總樣本的比例,NME取值范圍為0.00到0.15.
4)準(zhǔn)確率(acc)、精確率(pre)、召回率(rec)是分類任務(wù)的重要指標(biāo),遮擋預(yù)測可視為二分類問題.真實值為真且預(yù)測值為真,記為TP;真實值為真且預(yù)測值為假,記為FN;真實值為假且預(yù)測值為真,記為FP;真實值為假且預(yù)測值為假,記為TN,具體運(yùn)算如公式(28)所示.精確率即查準(zhǔn)率,召回率即查全率.精確率和召回率在0和1之間,數(shù)值越接近1,其分類效果越好.經(jīng)由數(shù)據(jù)統(tǒng)計知COFW測試集中77.13%點(diǎn)未遮擋,22.90%的點(diǎn)遮擋,即假設(shè)所點(diǎn)未遮擋準(zhǔn)確率可達(dá)到77.13%.準(zhǔn)確率小于77.13%,判定遮擋檢測任務(wù)失敗,僅考慮定位任務(wù)結(jié)果.
(28)
5)多任務(wù)評價
使用公式(29)評價兩個任務(wù)的最終效果(score,s),本文將特征點(diǎn)定位任務(wù)作為主要任務(wù)(計為Tm),將遮擋預(yù)測視為輔助任務(wù)(計為Ta).對主要任務(wù)賦予任務(wù)權(quán)重wtask,則次要任務(wù)權(quán)重為1-wtask.其中,特征點(diǎn)定位任務(wù)的評價指標(biāo)NME值越小,特征點(diǎn)定位越準(zhǔn)確,則Tm的計算見公式(30).
s=wtask×Tm+(1-wtask)×Ta
(29)
Tm=1-NME
(30)
不同的損失函數(shù)選擇的相關(guān)消融實驗,均使用COFW-EC(*2)數(shù)據(jù)集及img+COFW-72特征融合方式,實驗結(jié)果見表1,表中實驗數(shù)據(jù)分別為均一化平均誤差NME(%)、失敗率FR0.08(%)和FR0.10(%)、遮擋檢測的準(zhǔn)確率occAcc(%).
表1 不同損失函數(shù)的評估結(jié)果Table 1 Evaluation with different loss
圖5 定位任務(wù)與遮擋預(yù)測任務(wù)評價統(tǒng)計圖Fig.5 Evaluation of facial landmark detection and occlusion prediction
4.3.2 隨機(jī)遮擋數(shù)據(jù)集效果評估
1)隨機(jī)遮擋生成結(jié)果
圖6展示了遮擋生成的效果.隨機(jī)幾何遮擋和隨機(jī)實物遮擋的部分效果圖見圖6(a).
圖6 遮擋效果示意圖Fig.6 Results of occlusion
圖6(a)包含了不同的形狀、大小、顏色、紋理、透明度的遮擋物,確保了遮擋的不確定性和復(fù)雜性.
圖6(b)展示了一張圖像所有遮擋效果圖,其中第1行第1列為原圖.第2行第1列灰色矩形擦除遮擋圖,即數(shù)據(jù)集COFW-Gray(*2)的遮擋示意圖.第2列和第3列均為GAN網(wǎng)絡(luò)生成的緊貼人臉結(jié)構(gòu)的遮擋圖;第2列為模糊遮擋圖和眼鏡遮擋圖,第3列為妝容遮擋圖和胡子遮擋圖.模糊、眼鏡和胡子由StarGAN生成,妝容遮擋由BeautyGAN生成.第4列為局部隨機(jī)遮擋和全局隨機(jī)遮擋.
2)不同遮擋數(shù)集和遮擋標(biāo)注的評估
表2 不同遮擋數(shù)據(jù)集評估結(jié)果Table 2 Evaluation on different dataset
如表2所示,第1組遮擋標(biāo)注o′的原始標(biāo)注oo均使用COFW數(shù)據(jù)集提供的特征點(diǎn)遮擋標(biāo)簽,其中COFW-h表示對COFW數(shù)據(jù)集遮擋標(biāo)注o′采用01標(biāo)注;COFW-EC(*2)-s表示COFW-EC(*2)的遮擋標(biāo)注o′采用軟標(biāo)注.對比第1組的實驗結(jié)果,COFW-Gray(*2)和COFW-EC(*2)對特征點(diǎn)定位效果的提升均有幫助.由表2可知COFW-EC(*2),-s 的NME、FR0.08及FR0.10均取得最小值,其定位效果最佳,且遮擋檢測的準(zhǔn)確率與COFW-h僅相差0.1%.COFW數(shù)據(jù)集上的其余實驗中均采用COFW-EC(*2)-s.
考慮到300W等常用人臉定位數(shù)據(jù)集不存在特征點(diǎn)遮擋標(biāo)簽,第2組實驗?zāi)M原始標(biāo)注oo不可知的情況,COFW-EC(*2)-1和COFW-EC(*2)-0-s分別將所有特征點(diǎn)的原始標(biāo)注oo設(shè)為1和0,再對繼續(xù)進(jìn)行軟標(biāo)注得到o′;COFW-EC(*2)-nme 則將每個特征點(diǎn)的NME值映射為o′.在第2組所有的occAcc均小于77.13%,判定遮擋檢測任務(wù)失敗,故此僅考慮定位任務(wù).COFW-EC(*2)-1的NME和失敗率最小,表明其特征點(diǎn)定位效果最佳.在沒有遮擋標(biāo)注的300W數(shù)據(jù)集上,將所有特征點(diǎn)均標(biāo)注為遮擋,提高特征點(diǎn)定位的準(zhǔn)確性.
4.3.3 復(fù)合特征融合效果評估
表3 不同特征圖的評估結(jié)果Table 3 Evaluation with different features
如表3所示,第1組實驗證明了點(diǎn)線面3種特征圖中,邊特征圖能夠幫助網(wǎng)絡(luò)更好的提取特征點(diǎn)特征.第2組實驗,可知采用img+COFW-66-noba-sum,即舍去總邊特征圖和總區(qū)域特征圖,可以得到最好的定位效果.第3組可知,使用300W的68點(diǎn)標(biāo)注法能夠更好的提取面部特征,由圖3第1和2行對比,可知COFW的29點(diǎn)標(biāo)注缺乏面部輪廓點(diǎn),而68點(diǎn)則可以很好的描述人臉的輪廓,進(jìn)而提升了邊特征圖組和區(qū)域特征圖組的準(zhǔn)確性.考慮到跨數(shù)據(jù)集的計算量提升,后續(xù)實驗仍舊選擇img+COFW-66-noba-sum作為COFW數(shù)據(jù)集的特征融合方案.
本節(jié)中將occHRNet與ACR(2022)、LAB(2018)、ODN(2019)等算法在COFW數(shù)據(jù)集和300W數(shù)據(jù)集上進(jìn)行比較,主要是基于深度網(wǎng)絡(luò)的高斯熱圖回歸算法,實驗數(shù)據(jù)來自算法原文章或相關(guān)文章.
4.4.1 COFW數(shù)據(jù)集上的效果評估
表4 COFW-29數(shù)據(jù)集上評估結(jié)果Table 4 Evaluation on COFW-29
表4中包含3個組,第1組算法僅關(guān)注特征點(diǎn)的定位效果,第2組為結(jié)合遮擋檢測的人臉特征點(diǎn)定位算法,第3組為occHRNet的實驗結(jié)果.表中實驗數(shù)據(jù)分別為均一化平均誤差NME(%)、失敗率FR0.10(%)、遮擋檢測的精確率和召回率(pre/rec,%/%).
從表4中可以看出,與第1組算法比較,本文算法occHRNet的NME僅次于PIPNet和HRNet,但其失敗率低于其他所有算法,包括HRNet.與第2組算法對比,可以發(fā)現(xiàn)occHRNet的遮擋檢測精確率為80%時召回率達(dá)到53.4%,作為輔助任務(wù)的遮擋檢測結(jié)果雖只達(dá)到中等水平,但關(guān)鍵性任務(wù)特征點(diǎn)定位的評價指標(biāo)NME和失敗率均取得最小值,證明了occHRNet在特征點(diǎn)定位任務(wù)上的優(yōu)越性.為了更好的展示occHRNet對于遮擋點(diǎn)的定位效果,分別對遮擋點(diǎn)和未遮擋點(diǎn)計算NME,實驗結(jié)果見圖7.
圖7 COFW數(shù)據(jù)集上特征點(diǎn)的定位誤差統(tǒng)計圖Fig.7 NME on the COFW dataset
從圖7可知,與 HRNet比較,雖然occHRNet對于未遮擋點(diǎn)定位誤差提高了0.01%,但在遮擋點(diǎn)上的NME降低了0.23%,最終使得整體的NME降低了0.04%.由此可知,occHRNet對遮擋特征點(diǎn)具有魯棒性.
HRNet和occHRNet在COFW測試集上部分圖像上的定位結(jié)果和遮擋檢測結(jié)果如圖8(a)所示.
圖8 COFW數(shù)據(jù)集測試結(jié)果示意圖Fig.8 Result on COFW
圖8中,各列為測試集中不同圖像在各算法上的定位結(jié)果.當(dāng)特征點(diǎn)的遮擋預(yù)測結(jié)果與數(shù)據(jù)集提供遮擋標(biāo)簽一致使用黑色,不一致時使用白色,圖中白色點(diǎn)越多,則該圖的遮擋預(yù)測錯誤越多.黑色圓點(diǎn)表示未遮擋點(diǎn)預(yù)測出不遮擋,白色十字表示未遮擋點(diǎn)預(yù)測為遮擋,黑色叉號表示遮擋點(diǎn)預(yù)測出遮擋,白色三角形表示遮擋點(diǎn)預(yù)測為不遮擋.為了更直觀的比較方案的優(yōu)劣,提供了單張圖片的的NME和occAcc.NME為該圖像的所有特征點(diǎn)均一化平均誤差,值越低越好.occAcc為圖中特征點(diǎn)的遮擋預(yù)測正確所占百分比,值越大越好.
圖8(a)中3行可以看到occHRNet在完成定位任務(wù)的同時提供了特征點(diǎn)的遮擋信息.通過比較第2、3行圖中的occAcc值,occHRNet的遮擋檢測結(jié)果優(yōu)于HRNet,證明了occHRNet的遮擋檢測任務(wù)的有用性,而比較圖中的NME值可以直觀的看出occHRNet的定位效果優(yōu)于HRNet.
4.4.2 300W數(shù)據(jù)集和COFW-68測試集
表5 300W 和 COFW-68上評估結(jié)果Table 5 Evaluation on 300W and COFW-68
從表5中,可以看出對于300W的全集和普通集,相較于HRNet,occHRNet并未取得明顯的提升效果,但對于300W的挑戰(zhàn)集,occHRNet的定位誤差降低了 0.08%,而對于存在眾多遮擋的COFW的測試集定位誤差降低了0.91%,NME值達(dá)到最小.HRNet-29在COFW上的實驗結(jié)果相較于HRNet(復(fù)現(xiàn))誤差降低了0.23%,說明了occHRNet在COFW數(shù)據(jù)集上的訓(xùn)練模型對于遮擋人臉具有魯棒性.
圖9為表5 中部分算法在COFW-68測試集上的CED曲線圖.
圖9 COFW-68數(shù)據(jù)集上CED曲線圖Fig.9 CED on COFW-68
從圖9可以看出 occHRNet 在其他曲線上方,其AUC值最大,由圖9可知occHRNet算法NME低于10%的樣本占比最高,證明了該算法的失敗率較低.
圖8(b)展示了在COFW-68測試集上部分圖像上的定位結(jié)果.圖像標(biāo)注方案與圖8(a)一致.從圖8(b)定位效果和NME值可以看出occHRNet定位優(yōu)于其他對比算法.比較HRNet和occHRNet所在行的第3列,可以發(fā)現(xiàn)HRNet對于嚴(yán)重遮擋不具有魯棒性,而occHRNet則能夠較為準(zhǔn)確的定位出遮擋點(diǎn).HRNet和HRNet-29比較,可以發(fā)現(xiàn)使用29點(diǎn)映射68點(diǎn),不僅可以獲得部分特征點(diǎn)的遮擋預(yù)測結(jié)果,還提升了特征點(diǎn)的定位結(jié)果.occHRNet和occHRNet-29比較發(fā)現(xiàn)特征點(diǎn)的定位準(zhǔn)確性下降,證明了300W上的occHRNet模型定位性能優(yōu)于COFW上的occHRNet.再次證明occHRNet在遮擋人臉定位問題上的有效性.
為了進(jìn)一步驗證occHRNet對遮擋特征點(diǎn)的魯棒,在Masked 300W數(shù)據(jù)集上進(jìn)行測試,其NME(%)值如表6所示.
表6 Masked 300W上評估結(jié)果Table 6 Evaluation on Masked 300W
表6中,occHRNet-random為無預(yù)測坐標(biāo),通過隨機(jī)生成預(yù)測坐標(biāo)的方式構(gòu)建特征圖,旨在模擬特征點(diǎn)定位算法實際應(yīng)用流程,即僅知人臉圖片時進(jìn)行特征點(diǎn)定位的情況.其在3個測試集上的實驗結(jié)果仍舊優(yōu)于HRNet(復(fù)現(xiàn)),再次證明了occHRNet 對于遮擋特征點(diǎn)定位的有效性.occHRNet則是利用occHRNet-random的定位結(jié)果進(jìn)行第一次特征圖生成,進(jìn)行循環(huán)迭代至定位誤差不再減小.occHRNet相較于occHRNet-random在挑戰(zhàn)集上NME降低了2.33%.occHRNet-noocc則是使用了對應(yīng)無遮擋300W數(shù)據(jù)集的預(yù)測結(jié)果進(jìn)行特征圖生成,即特征圖更貼合標(biāo)簽,得到了最好的定位結(jié)果,說明了高質(zhì)量特征圖對特征點(diǎn)定位具有積極作用,如何獲得遮擋人臉的高質(zhì)量特征圖是值得研究的.
本文提出了一種針對遮擋人臉的特征點(diǎn)回歸算法occHRNet,以HRNet為基礎(chǔ),添加遮擋檢測模塊,將特征點(diǎn)遮擋度作為定位任務(wù)的權(quán)重優(yōu)化損失函數(shù),在進(jìn)行特征點(diǎn)定位的同時預(yù)測特征點(diǎn)的遮擋度.充分考慮遮擋的形狀、紋理、透明度等特性,生成遮擋圖像及對應(yīng)的標(biāo)簽進(jìn)行數(shù)據(jù)集增強(qiáng).將點(diǎn)特征圖、邊特征圖、區(qū)域特征圖和分割圖與原圖進(jìn)行融合幫助骨干網(wǎng)絡(luò)更好的提取特征.本算法在COFW數(shù)據(jù)集上進(jìn)行了詳細(xì)的實驗驗證了該算法的定位和遮擋檢測任務(wù)有效性,同時在300W和COFW68數(shù)據(jù)集上其定位效果同樣有所提升.本算法僅修改了骨干網(wǎng)絡(luò)的輸入和輸出模塊,未添加復(fù)雜的遮擋處理模塊,降低了網(wǎng)絡(luò)模型的運(yùn)算成本,下一步可通過替換更為先進(jìn)的骨干網(wǎng)絡(luò)或?qū)ΜF(xiàn)有骨干網(wǎng)絡(luò)進(jìn)行結(jié)構(gòu)優(yōu)化,進(jìn)一步提升模型的性能.