?

增強邊緣梯度二值卷積神經網絡的人臉姿態識別

2022-05-10 08:45周麗芳
小型微型計算機系統 2022年5期
關鍵詞:卷積人臉編碼

周麗芳,高 劍

1(重慶郵電大學 軟件工程學院,重慶 400065)

2(重慶郵電大學 計算機科學與技術學院,重慶 400065)

3(三峽大學 湖北省水電工程智能視覺監測重點實驗室,宜昌 443002)

1 引 言

人臉姿態識別作為人臉識別的一個主要分支,近年來得到了廣泛和深入的研究,其中最常見的就是基于2D和3D的研究方法.2D方法包括:回歸模型、虛擬視圖重建、不變特征的提取;3D方法包含:基于像素的模型建立、基于標定點的模型建立.由于提取方式的不同,不變特征的提取又分為基于傳統特征和基于深度學習的方法.局部二值模式作為一類有效的紋理描述方法被視為經典的傳統特征廣泛地應用于人臉姿態識別當中,近年來一系列局部二值模式(Local Binary Pattern,LBP)的拓展方法[1-6]被先后提了出來,包括:基于拓撲結構角度、編碼角度、降噪角度、降維角度的擴展.這一類基于傳統特征的人臉姿態識別存在特征維度過大、編碼方式不魯棒、對方向信息敏感等缺陷,依然是一個具有挑戰性的項目.

深度學習在過去的十多年里取得了顯著的成功,面向不同問題的模型[7-11]被先后提出.深度學習作為不變特征的一類有效提取方法同樣被運用在人臉姿態識別中.由于深度網絡中不同卷積核和偏置的存在,這種學習機制會導致基于深度學習的人臉姿態識別計算量龐大、內存開銷大、易于過擬合.日常生活中的自動駕駛汽車、機器人、智能手機和智能攝像頭和智能穿戴設備為了部署這種可訓練卷積神經網絡,也會面臨這些問題.為了解決網絡大模型化帶來的缺點,一些用二值化權重取代實值權重的二值化版本神經網絡[12-14]被提出,與實值權重網絡相比在計算效率上有很大的提升.

為了讓人臉姿態識別更好的提取圖像邊緣梯度信息同時規避傳統方法和深度學習提取特征的缺陷,本文基于MGP(Modified Gradient Pattern)二值算子[15]和改進的DR-LDP(Dimensionality Reduced Local Directional Pattern)算子[16],提出了一種新的二值化卷積神經網絡,如圖1所示.所提網絡結構主要分為3層,第1層ROILBC在LBC[17](Local Binary Convolution)的基礎上增加了ROI(感興趣區域)判斷.MGP算子結合了局部鄰域中心像素,網絡第2層DR-MGPC將MGP和卷積神經網絡結合并進行特征降維,很好的提取了人臉姿態圖像邊緣梯度信息.DR-LDP考慮了局部鄰域方向響應值,網絡第3層Enhanced DR-LDPC在DR-LDP的基礎上提出增強DR-LDP并將其與卷積神經網絡進行結合提取人臉姿態圖像邊緣梯度方向信息,一定程度上解決了人臉姿態識別對圖像方向信息敏感的問題.本文提出的DR-MGPC和Enhanced DR-LDPC所提取的特征維度與傳統二值模式相比,縮小了4倍(網絡結構中池化層的作用),極大的減小了網絡計算復雜度.ROILBC和Enhanced DR-LDPC運用了預先定義好的非學習的卷積核,在網絡訓練過程中極大的減少了參數量,解決了深度學習人臉姿態識別中計算量過大、易于過擬合的問題.傳統二值模式只是簡單的用局部鄰域像素減去中心像素然后再用人為設定閾值的方法來對特征模式取值,本文所提網絡結構用卷積神經網絡來學習這個過程,有效的規避了基于傳統特征的人臉姿態識別中編碼方式過于簡單、無法挖掘人臉姿態深度信息的缺陷.

圖1 本文提出的二值化卷積神經網絡結構圖

2 ROILBC

ROILBC層運用改進的LBC在輸入人臉姿態圖像上提取深度局部二值特征并進行歸類,根據深度二值特征圖譜與輸入人臉姿態圖像的對比情況選擇圖像感興趣區域,作為后續網絡層的輸入.和LBC不同的是:為了保留原始局部鄰域灰度值,ROILBC采用權值為1的可變橢圓形卷積核.人臉重要組成部分(如眼睛、嘴巴)都是橢圓形結構,因此對于人臉圖像來說橢圓形感受野具有更強的識別能力.ROILBC中使用tanh激勵函數取代傳統手工閾值的設定,提取的局部二值特征更加魯棒.偏置bias的存在使得整個網絡在反向傳播過程中學習局部二值特征編碼的過程.傳統局部二值模式:

(1)

激勵函數和偏置bias的存在,使得ROILBC中局部二值模式變為LBCP(Local Binary Convolution Pattern):

(2)

A為激勵函數,b為偏置bias,pi為局部鄰域像素且pc為局部鄰域中心像素.

Ojala等人[18]提出統一局部二值模式(ULBP)只考慮了模式中0/1變換次數小于等于2的情況,忽略了模式中0/1變換次數大于4的情況.為了提升特征的魯棒性并降低特征維度,冀中等人[19]提出增強局部二值模式(ELBP),對特征模式進行重新歸類.具體如下:如果模式中0/1變換次數小于等于2,則各個模式單獨歸為一類,分為2+8×7共58種;如果模式中0/1變換次數等于4,根據包含1的個數進行歸類,將包含1的個數相同的歸為一類,共5種;最后將模式中0/1變換次數大于4的歸為一類,最終形成的特征維度為58+5+1共64維.

與ULBP、ELBP不同,本文通過直觀的數據對比,不同模式特征圖譜與輸入圖像的對比情況來對0/1跳變次數進行歸類.首先通過對CAS-PEAL-R1姿態數據集進行實驗分析可得:LBCP特征中0/1、1/0跳變次數為0和8的模式只占總模式的0.09%和0.1%,跳變次數為6的模式占3.85%,跳變次數為2和4的模式分別占比64.68%和31.28%,其它跳變次數占比均為0.通過不同跳變次數模式特征圖譜與輸入人臉姿態圖像的對比復原分析,跳變次數為2和4的模式對比原圖復原情況比較清晰.按照文獻[19]將跳變次數為2和4的特征模式按照其中包含1的個數相同的歸為一類.其中,跳變次數為2的情況下包含1的個數為3、4、5的模式下對應特征圖譜刻畫出輸入人臉姿態圖像的主體框架.同樣跳變次數為4的情況下包含1的個數為3、4、5的模式下對應特征圖譜刻畫出了原圖主體輪廓.

綜合以上分析最終將跳變次數為2包含1的個數為3、4、5的各個模式單獨歸為一類(每個模式由于1出現的位置不同又分為8種情況),分為3*8共24類.將跳變次數為4包含1的個數為3、4、5的各個模式單獨歸為一類共3類,最后將跳變次數大于4的歸為一類,最終形成的特征維數為24+3+1共28類.和文獻[19]相比特征維度從64維減少到28維,特征維度減少到一半,極大的減小了網絡的計算復雜度.傳統LBP中跳變次數為0的模式占總模式的10%,LBCP中只占0.09%是因為ROILBC層中偏置bias的存在,導致局部鄰域中心像素和鄰域像素的灰度值發生了一定的偏置而最終的二值編碼相應的發生了變化.

將跳變次數為2包含1的個數為3、4、5的模式統稱為CMT(Convert Mode Two),將跳變次數為4包含1的個數為3、4、5的模式統稱為CMF(Convert Mode Four),跳變次數大于4的模式統稱為CMO(Convert Mode Others),將以上模式的特征圖譜交叉融合作為輸入人臉姿態圖像的感興趣區域ROI,也就是ROILBC層的輸出RFMi(ROILBC Feature Map,i=1,2,…,9):

RFMi=α{β[LBCP(X)]}

(3)

α為特征圖譜交叉融合操作,β為特征模式歸類操作,X為網絡輸入人臉姿態圖像.RFMi由CMT中任意組合的2種模式和CMF中任意組合的2種模式加上CMO融合而成.CMT占輸入圖像信息的60%(除去邊、角模式)、CMF占30%(除去邊、角模式),CMO占3.85%,最終每一個RFMi都能捕獲到輸入人臉姿態圖像信息的65%.傳統卷積神經網絡經過第一層的卷積后只能采集到輸入圖像的邊、角、輪廓信息,遠遠達不到本文65%這么大比例的信息,這也是本文ROILBC層將傳統二值模式與卷積神經網絡結合的優勢之處.

3 DR-MGPC

傳統人臉姿態識別沒有考慮人臉姿態圖像的局部邊緣梯度信息,因此識別效果有一定的局限性.傳統二值模式的編碼角度擴展中,有一系列方法就考慮了圖像局部鄰域邊緣梯度信息.首先Jun與Kim提出了LGP算子[20],其基本思想是通過局部梯度進行定義如公式(4)所示:

gi=|pi-pc|

(4)

在LGP的基礎上,Choi與Kim進一步提出了MGP算子,MGP首先定義了局部鄰域像素灰度與局部鄰域像素灰度均值的差異mi,然后以該差異的均值為閾值將局部鄰域進行二值化.其次基于MCT(Modifies the Census Transform)變換[21],MGP算子將中心像素與鄰域像素一同考慮進行局部二值編碼,其定義如公式(5)所示:

(5)

圖2給出了在人臉姿態圖像瞳孔邊緣局部時LGP與MGP編碼的對比,從圖2可以看出,由于MGP在進行閾值設定時考慮了加入中心像素的鄰域灰度均值,所以MGP更好地描述了局部鄰域的梯度變化信息.為了進一步說明該問題,圖3給出了采用不同閾值時局部鄰域邊緣梯度提取效果的對比,可以看出同時考慮了中心像素與鄰域平均像素時邊緣梯度提取的效果最好.

圖2 MGP與LGP編碼對比

圖3 采用不同閾值的局部梯度提取效果對比

(6)

上式中A代表激勵函數,?代表卷積操作.ROILBC層的輸出RFMi作為DR-MGPC層的輸入,通過卷積、特征下采樣(Average Pooling)操作得到DR-MGPC層的輸出DR-MFMi(Dimensionality Reduced MGP Convolution Feature Map),其過程如公式(7)所示(K=5,DR表示特征下采樣):

(7)

DR-MGPC層的輸出DR-MFMi即提取包含圖像降維邊緣梯度信息的特征圖譜,如圖4(右圖為左圖局部放大效果)所示.可以明顯看出眼睛、鼻子、嘴巴的邊緣梯度信息已經被提取出來,在一定程度上說明DR-MGPC層充分地發揮了MGP的特點(將鄰域中心像素一同進行特征編碼,可以有效的提取圖像邊緣梯度特征).特征下采樣算法中kernel size取2×2將提取特征維度縮小4倍,有效的減輕了網絡的計算復雜度.

圖4 DR-MGPC層提取特征圖譜

4 Enhanced DR-LDPC

2010年,Jabid等人[5,6]提出了LDP(局部方向模式)特征描述方法,這種方法類似于LBP編碼方法,也為圖像的每個像素分配一個8位的二進制編碼,但進一步結合了邊緣特征的方向性,將圖像的邊緣信息融入所提取的特征中.對于局部方向模式,在描述圖像特征時,往往將圖像劃分為若干塊,然后將不同分塊的特征進行級聯作為最終的圖像特征,從而導致圖像特征維數較高.為此,Sriniva等人提出DR-LDP算子,其基本流程是:首先按照LDP的方法得到LDP編碼圖像;其次,將LDP編碼圖像劃分為3×3的鄰域;最后將鄰域內LDP值通過XOR編碼轉換為一個值,從而得到最終的編碼.DR-LDP的基本原理是在LDP的基礎上降低了圖像分辨率.

Enhanced DR-LDPC層運用卷積神經網絡操作取代Kirsch掩模卷積方式得到不同方向的響應值,LDP中Kirsch掩模為3×3大小的8個不同的方向,Enhanced DR-LDPC中將其拓展到可變形橢圓patch的16個不同的方向.所以在Enhanced DR-LDPC中LDP被重新定義為ELDP(Enhanced LDP),構造ELDP算子的基本步驟如下:

1)針對3×3的局部鄰域,首先將該鄰域分別與Kirsch模板(16個方向)進行卷積運算,得到16個方向的邊緣響應值;每個邊緣響應值分別體現了在不同方向上的重要性,在所有方向上的邊緣響應值的重要性并不等同.

2)構造原圖像的ELDP編碼圖像.對原圖像中的每個像素點對其16個方向的邊緣響應值進行排序,將邊緣相應絕對值排名前K位所在方向的二進制編碼設置為1,其余(16-K)方向的編碼設置為0.若相鄰兩位響應值的編碼相同則設置編碼1,不相同設置編碼0,從而構成了8位的二進制編碼,稱為ELDP編碼.

3)將ELDP編碼圖像的直方圖作為原圖像的ELDP特征.Kirsch模板包含了16個不同方向的邊緣梯度檢測信息,這16個不同方向的掩模算子集合為{M0,M1,…,M15}.16個Kirsch掩模分別表示16個方向所對應的16條邊,東向、西向、南向和北向分別對應直線邊,其余方向分別對應折線邊.應用16個掩模對圖像塊進行卷積運算,我們可以獲得中心像素的16個邊緣響應值{m0,m1,…,m15}.基于該16個響應值,ELDP的定義如公式(8)所示:

mi=I?Mi

(8)

上式中,?表示卷積,⊙表示判斷編碼是否相同,mi表示與Kirsch模板第i方向卷積運算后得到的邊緣梯度,{|m0|,|m1|,…,|m15|}表示邊緣響應值的絕對值,|mK|表示|mi|中第K大的邊緣響應值.

利用Kirsch掩模對圖像鄰域進行卷積運算,每個像素被分配一個8位的二進制編碼.與LBP算子不同的是,ELDP在LBP的基礎上融入了邊緣梯度方向信息,ELDP主要從方向性角度入手,不僅解決了LBP對中心像素點絕對依賴的不足,還能充分利用各鄰域像素之間的相互關系.相比LBP算子,ELDP算子對姿態、光照、表情和遮擋等噪聲影響的魯棒性更好.實驗表明加入卷積神經網絡和增強到16方向的Kirsch掩模使得最終提取的邊緣梯度方向信息更加具有魯棒性.由于Kirsch掩模在文中被增加到16個方向,所以本文實驗統一取K=8.與DR-LDP不同的是本文采用下采樣(Average Pooling)對提取的邊緣梯度方向特征進行降維,由于kernel size為2×2,所以提取的特征維度縮小4倍,減輕了網絡的計算復雜度.DR-MGPC層的輸出DR-MFMi作為輸入,經過卷積提取增強邊緣梯度方向特征ELDP、特征下采樣進行降維,得到最終的特征圖譜EDLFM.其過程如公式(9)所示(DR表示降維操作):

EDLFM=DR[ELDP(DR-MFMi)]

(9)

5 實驗及結果分析

5.1 實驗環境和數據描述

硬件環境:64位ubuntu16.04操作系統、Intel i9處理器、64GB內存和雙Geforce RTX2070 SUPER GPU的計算機.

開發環境:PyCharm.

編程語言:Python.

FERET數據集:FERET數據集為美國國防部發起為了促進人臉識別算法的研究和實用化.數據集包含994個個體的不同姿態的11338張面部圖片.

CAS-PEAL-R1數據集:CAS-PEAL-R1數據集為中國先進人機通信技術聯合實驗室的CAS-PEAL人臉數據集的子集,數據集包含1040個個體的30900張照片,每一個個體有21個不同人臉姿態的圖片,除此之外,還包含表情、穿戴物、光照不同影響因數的照片.

5.2 實驗設置

由于CAS-PEAL-R1姿態數據集分為兩部分(偏轉角度不同),所以本文在該數據集上進行兩次實驗.實驗1將CAS-PEAL-R1姿態數據集前101個個體的姿態圖片按偏轉角度進行實驗,實驗2將后939個個體的姿態圖片按偏轉角度進行實驗.本文將實驗1的前71個個體設置成訓練集,后30個個體設置為測試集.將實驗2的前639個個體設置成訓練集,后300個個體設置成測試集,每個實驗的訓練集與測試集的比例為7:3.實驗3在FERET數據集上按照人臉姿態圖片的偏轉角度進行實驗.為了探究網絡的訓練效果,本文將超參數Batch Size和Epoch取不同值時識別精度的結果如圖5所示.

圖5 實驗1、2超參數取不同值時識別率

從圖5可以看出實驗1中Batch Size取6、Epoch取300的時候識別精度最高,實驗2中Batch Size取50、Epoch取300的時候識別精度最高.

5.3 實驗結果及分析

實驗1的識別效果如表1所示,本文除了直方圖相似度來衡量識別精度,還用到了常態分布比對的巴氏距離法、卡方檢驗作為衡量依據.實驗1在Batch Size取6、實驗2在Batch Size取50時隨著Epoch的增長其卡方距離的變化情況如圖6所示.從圖6可以看出隨著Epoch的增長其卡方距離在逐漸減小,說明網絡學習到了不同人臉姿態間的差異,并通過隨機梯度下降法反向傳播來減小這種差異.

表1 實驗1識別精度

圖6 實驗1、2中卡方的變化情況

將不同姿態圖片經過本文所提網絡卷積計算后所得EDLFM特征圖譜進行全連接,再進行歐氏距離計算并作為整個網絡結構的誤差損失函數如公式(10)所示:

Err=Euc[Fcn(EDLFM1),Fcn(EDLFM2)]

(10)

實驗1在Batch Size取6、實驗2在Batch Size取50時隨著Epoch的增長其歐式距離的變化情況如圖7所示.通過圖像可以看出歐式距離在逐漸減小,從一定程度上說明面網絡學習到了不同姿態人臉圖像的區別并進行誤差反向傳播.

圖7 實驗1、2中歐式距離的變化情況

文獻[17,22-26]沒有很好的提取圖像邊緣梯度特征.為了驗證本文所提二值卷積神經網絡能夠有效地提取人臉姿態圖像邊緣梯度信息,同時有效地規避傳統二值模式與卷積神經網絡的缺陷,實驗2、實驗3本別在CAS-PEAL-R1數據集和FERET數據集與上述所提方法進行對比,對比情況如表2、表3所示.從表2和表3可以看出:傳統方法中Huffman-LBP識別效率和運算效率是最好的,p-CNN多任務學習的機制導致各個模塊相互促進使得在深度學習方法當中表現最好.基于深度學習的方法由于提取特征更全面,普遍比傳統方法表現優異,將二者結合的方法表現最好.本文所提方法結合傳統與深度學習來提取特征,ROILBC層和Enhanced DR-LDPC層使用了預定義非學習卷積核使得訓練單張圖片與其它方法相比耗時最短.除了計算復雜度有所減少,識別精度和其它方法相比也是最優異的,尤其是在大姿態偏轉角度時.

表2 本文所提方法和其它方法在CAS-PEAL-R1數據集上的實驗對比

表3 本文所提方法和其它方法在FERET數據集上的實驗對比

6 總 結

本文在提取特征時考慮了圖像邊緣梯度信息,利用傳統二值特征的特點構造了一系列預定義非學習的卷積核,減輕了網絡計算復雜度.將傳統二值模式與深度學習結合提高了特征編碼的魯棒性,同時提高了人臉姿態識別的識別精度和計算效率.目前關于二值模式與深度學習結合的研究還處于探索階段,本文為該方向提出了一種高效、可行的研究方法.

猜你喜歡
卷積人臉編碼
基于全卷積神經網絡的豬背膘厚快速準確測定
住院病案首頁ICD編碼質量在DRG付費中的應用
基于圖像處理與卷積神經網絡的零件識別
玻璃窗上的人臉
基于深度卷積網絡與空洞卷積融合的人群計數
智力考場:有趣的圖片測試
卷積神經網絡概述
高效視頻編碼幀內快速深度決策算法
“領家系”可愛臉VS“高冷系”美人臉
長得象人臉的十種動物
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合