歐琪 王劍雄 孫歌等
摘要:頭部姿勢估計是使用計算機視覺和模式識別技術來推斷數(shù)字圖像中人體頭部轉(zhuǎn)動方向的過程,文章提出的改進后的基于殘差網(wǎng)絡的頭部姿態(tài)估計模型在人臉檢測模塊的VGG16網(wǎng)絡不同大小的卷積層后面加入了3個小檢測模塊,每個小檢測模塊都會進行檢測和分類處理,間接實現(xiàn)了多尺度的人臉檢測;在歐拉角的計算過程中融入回歸和分類損失,利用交叉熵損失和均方差損失來計算模型估計的歐拉角,可以有效提高歐拉角的預測精度,從而提高頭部姿態(tài)估計的準確率,使其在應用中得到更加有效的結(jié)果。
關鍵詞:頭部姿態(tài)估計;歐拉角;殘差網(wǎng)絡;交叉熵損失
中圖法分類號:TP391 文獻標識碼:A
1 引言
近年來,計算機技術發(fā)展迅速,各種電子科技產(chǎn)品進入人們的日常生活,如何合理開發(fā)和應用計算機在各個領域的功能,成為當前重要的研究工作之一。
在計算機領域,計算機視覺技術(Computer Vision,CV)發(fā)展迅猛且應用廣泛,其中頭部姿態(tài)估計作為關鍵技術之一,也受到了廣泛的關注和研究[1] 。頭部姿勢可以傳達不同的信息,人的面部表情和頭部動作可以最直觀地表達一個人的想法或情緒。除了表達情緒和觀點外,面部方向、眼睛方向等也可以表達一個人當前的注意力集中位置。
另外,頭部姿勢估計也在不同的生命科學領域中取得了重大突破,如醫(yī)療、無人駕駛或疲勞駕駛、身份識別等領域[2] 。本文提出的改進的基于殘差網(wǎng)絡的頭部姿態(tài)估計模型,在牛津大學視覺幾何組(VGG)網(wǎng)絡上的人臉檢測模塊的不同大小的卷積層后面增加了3 個小檢測模塊,每個小檢測模塊將進行檢測和分類處理。通過檢測不同大小的特征圖,間接實現(xiàn)多尺度人臉檢測;在歐拉角的計算過程中融入回歸和分類損失,利用交叉熵損失和均方差損失來計算模型估計的歐拉角,經(jīng)過實驗結(jié)果分析,可以有效提高歐拉角的預測精度,從而提高頭部姿態(tài)估計的準確率,使其在應用中得到更加有效的結(jié)果。
2 VGG16 網(wǎng)絡與殘差網(wǎng)絡
2.1 VGG16 網(wǎng)絡
VGGNet 取得了2014 年ImageNet 圖像分類的好成績,其中VGG16 是VGGNet 中分類性能最好的網(wǎng)絡之一[3] 。為捕捉細節(jié)變化以獲得更好的非線性,減少參數(shù)數(shù)量,每個卷積層使用3×3 卷積核,使網(wǎng)絡結(jié)構(gòu)更加簡單,必要時3×3 卷積核的堆疊可以替代5×5 和7×7 等較大的卷積核。在5 個卷積段的尾部各連接一個最大池化層。這個池化層采用2×2 的池化核,可以減少卷積層參數(shù)誤差造成的估計平均值的偏移,更容易捕捉到圖像和梯度的變化,并有利于保留紋理等細節(jié)信息。
綜上所述,VGG16 網(wǎng)絡通過逐層抽象,能夠從低層到高層不斷學習特征,并且具有較強的非線性表達能力,能夠表達更豐富的特征,適合更復雜的輸入特征。另外,VGG16 網(wǎng)絡開始時有64 個3×3 的卷積核,隨著網(wǎng)絡的加深,卷積核的數(shù)量逐漸從64 個增加到128 個,256 個和512 個,從而使其具有更大的網(wǎng)絡寬度,這使網(wǎng)絡在每一層都能學習到更豐富的特征。
2.2 殘差網(wǎng)絡
殘差網(wǎng)絡(Residual Network,ResNet)[4] 是微軟亞洲研究院研究員何凱明等在2015 年繼AlexNet,GoogleNet,VGG 3 個經(jīng)典的卷積神經(jīng)網(wǎng)絡之后提出的具有影響力的網(wǎng)絡模型。
在深度神經(jīng)網(wǎng)絡的訓練過程中,梯度分散或爆炸的問題使得模型訓練難以收斂,但標準初始化和中間層正規(guī)化方法在一定程度上有效控制了這一問題,使深度神經(jīng)網(wǎng)絡能夠收斂。在模型訓練過程中,即使在相同的訓練水平下,退化網(wǎng)絡的錯誤率也要高于略淺層的網(wǎng)絡。隨著網(wǎng)絡深度的增加,模型會出現(xiàn)退化現(xiàn)象,這不是過擬合造成的,而是冗余網(wǎng)絡層的學習參數(shù)不是恒等映射的參數(shù)造成的。
通過對現(xiàn)有深度神經(jīng)網(wǎng)絡退化問題的了解,解決網(wǎng)絡模型不退化問題的根本方法是恒等映射。殘差網(wǎng)絡很好地解決了深度神經(jīng)網(wǎng)絡的網(wǎng)絡退化問題,取得了較好的結(jié)果。本文的頭部姿態(tài)估計框架是基于ResNet50 來設計的,一共有50 層,采用了殘差結(jié)構(gòu),將檢測到的人臉裁剪下來,經(jīng)過一系列的縮放裁剪調(diào)整尺寸,放入殘差網(wǎng)絡,最后網(wǎng)絡會輸入3 個方向的歐拉角,全程為端到端的實現(xiàn),十分便捷。
3 改進的頭部姿態(tài)估計模型
3.1 人臉檢測
本文提出的人臉檢測模塊是基于VGG16 網(wǎng)絡進行修改的,和多任務級聯(lián)網(wǎng)絡(Multi?task CascadedConvolutional Networks,MTCNN) 方法不同,本文只使用一張大小的圖像作為輸入,不需要分別對不同尺度的圖像進行預測。具體實現(xiàn)方法是在VGG 網(wǎng)絡的不同大小的卷積層后面增加3 個小檢測模塊(M1,M2,M3),每個小檢測模塊會進行一次檢測和分類。通過檢測不同大小的特征圖,間接實現(xiàn)多尺度人臉檢測。
圖1 為人臉檢測框架的示意圖。
根據(jù)圖1 所示,可以看到每個分支都會有1 個檢測模塊,為了獲得更大的感受,首先使用多重3×3 卷積代替7×7 卷積可以增加網(wǎng)絡深度,在一定條件下可以有效提高神經(jīng)網(wǎng)絡的效果。然后融合2 條路徑的特征圖,完成分類任務和回歸任務。最后,該模塊連接到VGG16 的3 個不同的卷積層,以對應不同大小的特征圖,從而有效提高網(wǎng)絡模型效果。
3.2 歐拉角
在計算機視覺中,頭部姿態(tài)估計可以解釋為人體頭部相對于相機的方向。人體頭部的姿勢受限于3個自由度,分別為俯仰角、旋轉(zhuǎn)角和偏轉(zhuǎn)角,它們統(tǒng)稱為歐拉角[5] ,如圖2 所示。
傳統(tǒng)的頭部姿態(tài)估計算法首先檢測2D 人臉的關鍵點,其次構(gòu)建3D 人臉匹配模型以獲得更全面的信息,然后計算3D 點與2D 點之間的變換關系,最后通過矩陣相關運算獲得關鍵值歐拉角的角度。但是,傳統(tǒng)的頭部姿勢估計方法對面部關鍵點提取的準確性要求較高,因此不適用于某些場景中的小臉,如教室場景下的人臉。
3.3 融入回歸和分類損失
本文提出的頭部姿態(tài)估計框架是基于ResNet50來設計的,一共有50 層,采用了殘差結(jié)構(gòu)。上文提出的人臉模塊得到的數(shù)據(jù)文件已經(jīng)保存了每個人臉的相關坐標,姿態(tài)估計模塊會依次讀取數(shù)據(jù)文件的每一列,通過縮放和裁剪來切割人臉區(qū)域,調(diào)整人臉的大小,進入下一層網(wǎng)絡。最后,網(wǎng)絡會計算并輸出3 個方向的歐拉角。整個過程是端到端的實現(xiàn), 非常便捷。
本文建立的改進后的頭部姿態(tài)估計模型為每個歐拉角設置了2 個損失函數(shù),以改進歐拉角的計算。
首先可以根據(jù)角度區(qū)間對頭部的歐拉角進行分類。
其次將分類結(jié)果轉(zhuǎn)換成度數(shù),將實際度數(shù)與標注度數(shù)進行比較,計算回歸損失。最后將回歸損失和分類損失相結(jié)合,得到最終損失。計算方法為:
其中,n 為批處理樣本數(shù),y 為真實值,y′為預測值。
當模型開始訓練時,會對一些數(shù)據(jù)進行數(shù)據(jù)過濾,然后選取不同角度的圖片作為訓練數(shù)據(jù)集。結(jié)合本文提出的回歸損失和分類損失相結(jié)合的計算方法,可以有效提高歐拉角的預測精度。
本文提出的改進后的頭部姿態(tài)估計框架基于pointing04 數(shù)據(jù)集上所訓練出來的模型,在分析人體頭部姿態(tài)估計的歐拉角中具有良好的性能,同時在其他的測試集上有著可擴展性和魯棒性。實驗結(jié)果如圖3 所示,在控制臺輸出了3 個方向的歐拉角。
4 結(jié)束語
頭部姿態(tài)估計在計算機視覺領域有著廣闊的應用前景。例如,在一些輔助駕駛系統(tǒng)中,需要估計駕駛員的頭部姿態(tài)來確定駕駛員是否有危險的駕駛行為,或者在一些在線教學系統(tǒng)中,以同樣的方式來確定學生的學習狀態(tài),并且它在人臉矯正中起著重要的作用。在VR 虛擬現(xiàn)實等相關研究中,根據(jù)頭部姿態(tài)估計可以判斷出體驗者的意圖從而有更好的體驗效果。本文提出的改進后的基于殘差網(wǎng)絡的頭部姿態(tài)估計模型在歐拉角的計算過程中融入回歸和分類損失,利用交叉熵損失和均方差損失來計算模型估計的歐拉角,經(jīng)過實驗結(jié)果分析,可以有效提高歐拉角的預測精度,從而提高頭部姿態(tài)估計的準確率,使其在應用中得到更加有效的結(jié)果。
參考文獻:
[1] 王鐵勝.計算機視覺技術的發(fā)展及應用[J].信息系統(tǒng)工程,2022(4):63?66.
[2] 柯澤冉.三維人臉重建及其在頭部姿態(tài)估計中的應用[D].武漢:華中師范大學,2021.
[3] 齊永鋒,馬中玉.基于深度殘差網(wǎng)絡的多損失頭部姿態(tài)估計[J].計算機工程,2020,46(12):247?253.
[4] HE K M,ZHANG X Y,REN S Q.Deep Residual Learning forImage Recognition[C]∥2016 IEEE Conference on ComputerVision and Pattern Recognition (CVPR),2016:27?30.
[5] 劉成攀,吳斌,楊壯.基于聯(lián)合損失和恒等映射的動態(tài)人臉識別[J].傳感器與微系統(tǒng),2021,40(9):153?156.
作者簡介:
歐琪(1998—),碩士,研究方向:人工智能。
王劍雄(1975—),碩士,教授,研究方向:人工智能( 通信作者)。