遲萬達 王士奇 張瀟 董爽 商方斌 范迪
摘要:針對傳統深度學習檢測模型精度高、結構復雜、參數量大,檢測速度慢,以及輕量級模型結構簡單參數量小,精度損失明顯的問題,提出了一種輕量化基于單步候選區回歸的目標檢測算法(SSD)的人臉檢測模型,兼顧檢測精度和檢測速度的需求?;趥鹘y模型特征圖所存在的冗余現象,設計了一種輕量化卷積,以線性變換代替部分卷積操作,既能保持特征圖的數量,又減少了模型參數和運算量。同時,采用性能更好的Hard_Swish激活函數,以加快收斂速度并提高模型精度。通過FDDB人臉數據集的測試結果可以看出,綜合考慮精度、參數量、速度等指標,輕量化模型在保持了人臉檢測精度的前提下,大大壓縮了模型體積、提高了模型的檢測速度,達到了影視實時性檢測要求。
關鍵詞:SSD模型;輕量化卷積;Hard_Swish函數;線性變換;人臉檢測
中圖分類號:TP391.4文獻標志碼:A文章編號:1008-1739(2021)05-69-5

0引言
人臉檢測是基于人臉信息處理的人機交互、表情分析、人證對比等研究的重要基礎,其結果對后續人臉跟蹤[1]、人臉面部特征點提取[2]、表情識別[3]及人臉識別[4]等研究和應用有重要作用和影響。
目前,主流的人臉檢測算法可分成基于人工設計的特征統計檢測方法[5-6]和自動提取特征的深度學習檢測方法[7-10]2類?;谌斯ぴO計特征的人臉檢測算法,特征表達能力有限,容易受外界環境(如光照、遮擋、尺度等)變化的影響,在復雜場景下檢測性能難有提升。隨著卷積神經網絡的發展,眾多基于卷積神經網絡的人臉檢測算法被提出。算法大多基于目標檢測框架,主要有Two-Stage和One-Stage的方法,如Ren S等[7]提出基于多步候選區回歸的目標檢測算法Faster R-CNN是Two-Stage的代表;Liu Wei[8]提出的SSD是One-Stage的代表,特點是速度較快、精度較高。近幾年,以SSD為基礎的檢測模型也得到了不斷改進[9-10];方帥等[9]對SSD進行了改進并用于多尺度人臉檢測,提高了小尺度人臉檢測的準確性;范迪等[10]提出的基于SSD的多尺度行人檢測算法,在模型的附加特征層中引入壓縮激勵模塊,提高了小尺寸目標的檢測能力。
傳統深度學習檢測技術對存儲和計算能力要求較高,是算法推廣應用的障礙,因此輕量型神經網絡架構得到了廣泛關注。典型方法主要分為三大類[11-14]:人工設計輕量化神經網絡模型、神經網絡搜索自動化設計和模型壓縮。谷歌[11]通過深度可分離卷積代替標準卷積提出了輕量級網絡架構MobileNet V1;Face++[12]通過逐點群卷積核通道混洗技術提出了ShuffleNet V1;NasNet[13]設計了基于塊的搜索空間,大大加快搜索速度;AMC[14]利用強化學習方法自動學習模型壓縮策略,可以更好地保持神經網絡的性能。人工設計輕量化模型通過設計高效的卷積方式,減少網絡參數的同時網絡精度損失小,是目前主流的模型輕量化方法。
輕量化的人臉檢測模型旨在保持檢測精度的基礎上,大幅減少參數量和計算量,達到實時性應用的要求。本文兼顧檢測精度和檢測速度,基于傳統SSD目標檢測網絡,設計了一種輕量級卷積操作代替原始卷積,通過使用輕量線性變換特征圖代替原卷積特征圖,輕量化設計所生成的特征圖數量與普通卷積網絡的相同,但參數少且運算簡單,減小了計算量;同時,將更加高效的Hard_Swish激活函數引入模型,提高模型性能,加快模型訓練的收斂速度。
1 SSD模型的輕量化
SSD網絡模型是One-Stage目標檢測網絡,設計思想主要是多尺度多長寬比的密集錨點設計和特征金字塔。該模型以VGG16的卷積層為基礎網絡,將VGG16最后的2個全連接層修改為卷積層,并在后面添加多個不同尺度的卷積層,實現不同尺度物體的檢測。SSD目標檢測模型采用不同尺度長寬比的預測框,均勻地在圖像的不同位置進行密集抽樣,特征提取、分類與回歸只需要一步,速度比Two-Stage快。
利用SSD目標檢測的優良性能,加入輕量化設計后,可在檢測精度和速度上得到較好的性能。設計的輕量化SSD的人臉檢測模型如圖1所示。模型前端是輕量化的VGG16,后端Conv6~Conv11是多個不同尺度的卷積層。輕量化的VGG16中,采用線性變換對原VGG中卷積層進行了輕量化改造,產生與原卷積層相同數量的特征圖。另外,在模型的多尺度卷積層選用Hard_Swish非線性激活函數取代ReLU激活函數,進一步提高網絡的檢測精度。

1.1輕量化卷積的設計
通常情況下,為了保證模型對輸入數據有全面的掌握,訓練好的深度學習網絡的特征圖有不少冗余,以達到較好的檢測識別等性能,但這需要更多的計算資源。有文獻研究表明,冗余的特征圖可由一部分特征圖通過相對簡單的線性操作變換獲得[15]。
本文以傳統卷積操作產生的特征圖冗余現象為出發點,設計了一種輕量級的線性變換代替原卷積,如圖2所示。首先對上一級特征圖進行卷積操作產生一部分特征圖,再對這部分特征圖一一進行線性變換生成新特征圖,卷積操作產生的特征圖和線性操作產生的特征圖一起用于后續人臉檢測任務。該操作以線性運算代替卷積,生成的特征圖數量與普通卷積層輸出相同,但參數量變少,需要的算力資源也比普通卷積層要低,能夠有效降低計算成本。


1.2 Hard_Swish非線性激活函數的引入
原SSD模型采用的是ReLU非線性激活函數,本文則采用Hard_Swish非線性激活函數。Hard_Swish激活函數的波形與ReLU相似,保持了ReLU的優點,而且Hard_Swish函數波形在0處可導,使得訓練更容易收斂,總體性能更好。

相較于Swish函數,Hard_Swish函數具有數值穩定性好、計算速度快等優點,二者圖形上很相似,如圖3(b)所示。實驗表明[17],對于分類任務,Hard_Swish函數可以顯著提高神經網絡的準確性。
2實驗及結果分析
2.1實驗環境及數據集
實驗基于Debian 9.13操作系統和NVIDIA Tesla V100(16 GB)獨立顯卡搭建實驗平臺,訓練時使用GPU加速,利用Pytorch開源框架和Python語言編程實現。
實驗時所用訓練集為Wider Face數據集,該數據集中有32 203張不同場景的圖片,標定了393 703幅人臉,所標人臉尺度不一、姿態各異,并存在不同程度的物體遮擋和光照差異,是目前人臉檢測領域廣為認可的基準數據集。實驗所用測試集為FDDB人臉數據集。FDDB人臉數據集共有2 845幅圖像和5 171幅人臉,受環境因素以及人臉姿態的影響,人臉的難度較大,有面部表情、雙下巴、光照變化、穿戴、夸張、發型、遮擋等難點,圖像分辨率較小,包括彩色和灰度2類圖像,是人臉檢測最常用的數據庫之一。
實驗過程中,利用Adam優化器進行梯度下降,由于無法使用預訓練模型,因此初始學習率設為1×10-3,權重衰減系數為1×10-8,動量參數為0.9;當進行50 000次迭代訓練后,學習率調整為1×10-4;80 000次迭代后,學習率調整為1×10-5,100 000次迭代后終止訓練。
2.2評價標準
搭建基于輕量化SSD的人臉檢測模型,主要思想是在保證檢測精度的前提下,減小模型參數量,提高模型檢測速度。因此,選取平均精度(Average Precision,AP)、參數量、檢測速度,以及設計的綜合指標對模型進行評價。
①AP指的是檢測出的目標中正確的目標所占比率,是以召回率(Recall,R)為橫坐標,準確率(Precision,P)為縱坐標作圖得到精度-召回率曲線與坐標軸圍成的面積,AP是不同置信度水平下檢測精度的平均值。
②參數量:參數量指的是模型所含參數的數量,直接決定模型文件的大小,也影響模型推斷時對內存的占用量。因此模型體積越小,也就意味著更少的參數量和更低的資源消耗。
③檢測速度:目前多數人臉應用中,都對檢測速度做出了要求,以實現實時檢測。檢測速度用幀率來表示。

式中,為平均精度值;為模型參數量;為歸一化幀率;按照電視電影幀率24幀/秒進行的歸一化;,,為歸一化權重因子。在模型能達到實時檢測的情況下,重點考慮模型檢測精度,因此檢測精度的權重因子設置為0.6,檢測速度的權重因子設置為0.2。同時,考慮到目前智能設備存儲能力較強,對百兆左右體積的模型存儲較為容易,因此模型參數量的權重設置為0.2。
2.3實驗結果對比及分析
實驗采用上述3個評價指標對模型性能進行評價,對比模型有Faster-RCNN模型、原始SSD模型和SSD-lite模型。圖4為輕量化模型和3種對比模型的精度P-召回率R曲線,由曲線可知4種模型的平均精度,具體結果如表1所示。

實驗結果表明,輕量化人臉檢測模型綜合評價指標是最優的,也就是從綜合精度、參數量及速度幾個方面看,模型性能有較大的優勢。就單項指標而言,模型的平均精度幾乎與Faster-RCNN差不多,但是參數量和檢測速度的提升非常顯著;與純輕量級檢測網絡SSD-lite模型相比,參數量和檢測速度與其差不多,但本文模型的平均精度比其高出近14%;與原SSD相比,本文模型的平均精度與之有4%的差距,但是在參數量和速度上有較強優勢。另外,實時視頻檢測要求幀率達到14幀/秒以上,電視電影要求幀率達到24幀/秒以上,本文模型滿足視頻檢測的要求,也滿足電視電影的播放要求。
本文選擇幾種不同場景、多尺度的人臉圖像進行對比實驗,效果如圖5所示。測試圖中,圖像光照不均且姿態各異如圖5(a)和圖5(b),存在遮擋如圖5(c)和圖5(d),場景復雜且人臉尺度不一如圖5(e)和圖5(f),與實際情景下的人臉檢測相似。其中,圖5(a)、圖5(c)和圖5(e)為原始SSD模型測試效果;圖5(b)、圖5(d)和圖5(f)為本文輕量化模型測試效果。由大量測試效果圖知,本文提出的輕量化模型能正確檢測出人臉,只在復雜場景下小尺度和遮擋人臉情況下出現了輕微的漏檢或誤檢現象,因此可以滿足自然場景下的人臉檢測要求。

3結束語
傳統深度學習檢測模型本身結構復雜、參數量大,雖然精度高但是檢測速度慢;輕量級的深度學習檢測網絡模型通過輕量級卷積方式極大地減小了參數量和計算量,但檢測精度也隨之下降。如何利用有限的計算資源進行模型訓練和實時檢測成為一個難點。本文兼顧檢測精度和檢測速度,將傳統深度學習目標檢測網絡與輕量級卷積方式相結合,搭建輕量化人臉檢測模型。選取經典深度學習目標檢測架構SSD模型作為基礎,并將輕量級卷積操作移植到SSD檢測模型中,搭建輕量化SSD人臉檢測架構。實驗表明,算法在保持了人臉檢測精度的前提下,大大壓縮了模型體積,同時提高了模型的檢測速度。
盡管本文模型可達到實時檢測的要求,檢測精度也保持在較高水平,但也存在一定的問題。模型測試過程中出現了輕微的對復雜場景下小尺度人臉、遮擋人臉的漏檢問題,主要原因是輕量級卷積操作的設計過程中,特征圖空間信息有所損失。未來可在模型結構設計和特征表達以及上下文信息利用等方面繼續研究,以提高模型的特征利用能力。
參考文獻
[1] YILIHAMU D, TUERXUN P, DAWUT A,et al. A Real-time Face Tracking and Recognition System Based on SeetaFace[J]. Journal of Physics: Conference Series,2020,1673(1):12-43.
[2]伍凱,朱恒亮,郝陽陽,等.級聯回歸的多姿態人臉配準[J].中國圖象圖形學報,2017,22(2):257-264.
[3] CHEN A, XING H, WANG F. A Facial Expression Recognition Method Using Deep Convolutional Neural Networks Based on Edge Computing[J]. IEEE Access, 2020(8):49741-49751.
[4] GAO yuan,MA Jiayi,YUILLE A L. Semi-Supervised Sparse Representation Based Classification for Face Recognition with Insufficient Labeled Samples[J]. IEEE Transactions on Image Processing, 2017, 26(5):2545-2560.
[5]張彩珍,張云霞,陳永剛,等.基于五幀差分和模板匹配的運動目標檢測識別[J].激光與紅外,2018,48(12):1554-1560.
[6]劉禹欣,朱勇,孫結冰,等.Haar-like特征雙閾值Adaboost人臉檢測[J].中國圖象圖形學報,2020,25(8):1618-1626.
[7] REN Shaoqing,HE Kaiming,Girshick R,et al.Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6):1137-1149.
[8] LIU W, ANGUELOV D, ERHAN D, et al. Single Shot Multibox Detector[C]// European Conference On Computer Vision.Amsterdam: Springer, Cham, 2016: 21-37.
[9]方帥,李永毅,劉曉欣,等.一種改進的基于SSD模型的多尺度人臉檢測算法[J].信息技術與信息化,2019(2):39-42.
[10] FAN Di,LIU Dawei, CHI Wanda,et al. Improved SSD-Based Multi-scale Pedestrian Detection Algorithm[M].Singapore: Springer,2020.
[11] HOWARD A G, ZHU M, CHEN B, et al.MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications[J].Computer Science,2017: 432-445.
[12] ZHANG X, ZHOU X, LIN M, et al. ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices[C]// IEEE Conference on Computer Vision and Pattern Recognition, 2018:6848-6856.
[13] ZOPH B, VASUDEVAN V, SHLENS J V. Le Q. Learning Transferable Architectures for Scalable Image Recognition[C]IEEE Conference on Computer Vision and Pattern Recognition.Salt Lake City:IEEE,2018: 8697-8710.
[14] HE Y,LIN J,LIU Z, et al.Amc: Automl for Model Compression and Acceleration on Mobile Devices[J].arXiv preprint arXiv:1802.03494,2018.
[15] ZHANG Q, JIANG Z, LU Q,et al. Split to Be Slim: An Overlooked Redundancy in Vanilla Convolution[J]. arXiv preprint arXiv: 2006.12085, 2020.
[16] RAMACHANDRAN P, ZOPH B, LE Q V. Swish: A Self-gated Activation Function[J]. arXiv preprint arXiv: 1710.05941v2, 2018.
[17] HOWARD A, SANDLER M, CHU G,et al. Searching for MobileNetV3[C]//International Conference on Computer Vision,Seoul: IEEE,2019:1314-1324.
[18] FAN Di,FANG Shuai,WANG Guangcai,et al.The Visual Human Face Super-resolution Reconstruction Algorithm based on Improved Deep Residual Network[J].Journal on Advances in Signal Processing,2019(1):1-10.