王欣然,田啟川,張 東
1.北京建筑大學(xué) 電氣與信息工程學(xué)院,北京 100044 2.建筑大數(shù)據(jù)智能處理方法研究北京市重點(diǎn)實(shí)驗(yàn)室,北京 100044
自2019年12月以來,一場突如其來的新冠病毒傳播疫情在我國乃至全球大范圍蔓延并爆發(fā)。根據(jù)世衛(wèi)組織最新統(tǒng)計(jì)數(shù)據(jù)顯示,截至北京時間2021年10月19日,全球累計(jì)新冠肺炎確診病例已達(dá)240 260 449例,死亡病例4 890 424例。目前,全球疫情形勢依舊十分嚴(yán)峻,印度、越南等國家疫情的二次爆發(fā),不斷變異的病毒變種的出現(xiàn),為各國的防疫工作帶來了新的挑戰(zhàn)。呼吸道飛沫是新冠病毒的主要傳播途徑[1],因此正確佩戴口罩可以有效阻擋病毒的侵襲。全球各國政府都制定了政策,鼓勵或要求民眾在難以保持社交距離的地方佩戴口罩。但是,仍然有一部分人因?yàn)榇骺谡致闊?、佩戴時間長不舒服等原因不戴或者不規(guī)范佩戴口罩,極大增加了病毒傳播的風(fēng)險(xiǎn)。
為了監(jiān)管人員在人群密集的公共場所(如機(jī)場、車站等)中佩戴口罩,工作人員甚至專門被指派進(jìn)行是否佩戴口罩的檢查。然而這種人工監(jiān)督的方式不但會消耗大量的人力資源,還極易出現(xiàn)誤檢、漏檢等情況,不能實(shí)時準(zhǔn)確地監(jiān)控。利用監(jiān)控?cái)z像頭等設(shè)備采集圖像,再結(jié)合深度學(xué)習(xí)方法可以實(shí)現(xiàn)人臉口罩佩戴與否的自動檢測,對當(dāng)前的疫情防控具有重要的應(yīng)用價(jià)值和現(xiàn)實(shí)意義。
人員佩戴口罩后,人臉最重要的口鼻區(qū)域被這些形狀、顏色各異的口罩大面積遮擋,部分五官特征被隱藏,可提取的關(guān)鍵特征點(diǎn)大大減少。特征信息的缺失以及隨之出現(xiàn)的噪聲混疊等問題使得原本的人臉檢測網(wǎng)絡(luò)性能急速下降,無法準(zhǔn)確檢測出佩戴口罩的人臉目標(biāo),因此需要探尋新的方法解決口罩佩戴檢測問題。隨著深度學(xué)習(xí)在計(jì)算機(jī)視覺領(lǐng)域的飛速發(fā)展,利用深度網(wǎng)絡(luò)可以捕獲更多層次、復(fù)雜豐富的高級特征,達(dá)到更好的特征提取效果,因此受到了許多研究人員的青睞。在目標(biāo)檢測領(lǐng)域,深度學(xué)習(xí)發(fā)揮出了強(qiáng)大的作用,現(xiàn)有基于深度學(xué)習(xí)的目標(biāo)檢測模型無論在檢測準(zhǔn)確率亦或檢測速度方面都有了質(zhì)的提升。
近兩年,為了更好地進(jìn)行疫情防控工作,涌現(xiàn)出了大量口罩佩戴檢測[2]的研究成果??傮w來看,這些檢測算法根據(jù)應(yīng)用場景和目的的不同主要分為兩大類:一類是在卡口、門禁等位置進(jìn)行檢測,人員距離采集設(shè)備近,通過攝像頭獲取的圖像質(zhì)量較高,一張圖像中只含有一個人臉目標(biāo)。這種應(yīng)用場景被稱為主動場景,對檢測精度有一定的要求,通常采取特征提取+圖像分類[3]的思路,基于深度神經(jīng)網(wǎng)絡(luò)模型來實(shí)現(xiàn)。另一類則是應(yīng)用于人流量大、人群密集的公眾場合中。這種應(yīng)用場景被稱為被動場景,背景更加復(fù)雜,受到的干擾因素較多,檢測范圍廣、難度大,一張圖像中包含多種尺度的口罩人臉目標(biāo)且大部分為小尺度。為解決這類場景下的行人實(shí)時口罩佩戴檢測,研究人員借助了一些優(yōu)秀的通用目標(biāo)檢測模型,在其基礎(chǔ)上為適應(yīng)多尺度口罩人臉目標(biāo)檢測提出了對應(yīng)的改進(jìn)方法,取得了一定的進(jìn)展。
本文梳理了現(xiàn)階段國內(nèi)外有關(guān)人臉口罩佩戴檢測算法的研究工作和成果,依據(jù)其應(yīng)用的不同模型結(jié)構(gòu)歸類了相關(guān)算法,重點(diǎn)介紹和分析了各類算法的適用場景、優(yōu)缺點(diǎn)及改進(jìn)優(yōu)化策略。由于大部分研究都使用了深度學(xué)習(xí)方法,從網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì)、多尺度目標(biāo)檢測的處理和訓(xùn)練技巧等方面對其進(jìn)行了總結(jié)和歸納。然后,匯總了相關(guān)數(shù)據(jù)集,對比展現(xiàn)了各算法檢測性能,以期為后續(xù)的研究提供一些參考。最后,對現(xiàn)有研究中依然存在的問題和未來的發(fā)展方向進(jìn)行了討論和展望。
口罩佩戴檢測主要是利用圖像分析與處理技術(shù)對人臉目標(biāo)進(jìn)行口罩佩戴與否的檢測和分類,檢測的主要步驟包括圖像預(yù)處理、特征提取和目標(biāo)分類。根據(jù)應(yīng)用場景和需求的不同劃分為兩種研究思路:(1)主動場景下的口罩佩戴檢測流程如圖1所示,對于僅包含單一人臉目標(biāo)的圖像,利用深度卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取,再設(shè)計(jì)分類器對目標(biāo)進(jìn)行佩戴口罩和未佩戴口罩的分類。(2)被動復(fù)雜場景下的檢測流程如圖2所示,檢測算法需要定位圖像中所有出現(xiàn)的人臉目標(biāo)并同時對其進(jìn)行口罩佩戴與否的分類。
圖1 主動場景口罩佩戴檢測流程圖Fig.1 Flowchart of mask wearing detection in active scenario
圖2 被動場景口罩佩戴檢測流程圖Fig.2 Flowchart of mask wearing detection in passive scenario
卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)是深度學(xué)習(xí)構(gòu)建的基礎(chǔ),主要由多個卷積層及其包含的卷積核、池化層、全連接層等組成。CNN的出現(xiàn)使得計(jì)算機(jī)視覺多個領(lǐng)域都得到了突破性的發(fā)展,研究人員利用CNN解決了許多一直以來難以克服的技術(shù)難關(guān)。
2012年,Krizhevsky等人[4]提出:多隱藏層神經(jīng)網(wǎng)絡(luò)具有更好的特征學(xué)習(xí)能力。這是第一次有研究者明確具體提出了深度神經(jīng)網(wǎng)絡(luò)(deep neural networks,DNN)的概念。作者設(shè)計(jì)的首個DNN網(wǎng)絡(luò)AlexNet在當(dāng)年的ImageNet識別競賽(LSVRC)中大放異彩,以打破了歷史記錄的成績?nèi)〉昧水?dāng)時最好的分類結(jié)果,由此證明了深層網(wǎng)絡(luò)的有效性,揭開了深度學(xué)習(xí)的序幕。自此之后,深度學(xué)習(xí)發(fā)展迅速,出現(xiàn)了一代又一代優(yōu)秀的DNN網(wǎng)絡(luò)模型,對于圖像特征提取、分類與識別、目標(biāo)檢測等領(lǐng)域的快速發(fā)展起到了至關(guān)重要的作用。經(jīng)典的DNN網(wǎng)絡(luò)發(fā)展歷程如圖3所示。接下來具體介紹在口罩佩戴檢測中應(yīng)用的幾種代表性經(jīng)典網(wǎng)絡(luò)——VGGNet[5]、Inception系列網(wǎng)絡(luò)、殘差網(wǎng)絡(luò)(residual network,ResNet)[6]等。
圖3 深度神經(jīng)網(wǎng)絡(luò)的發(fā)展歷程Fig.3 Development history of deep neural networks
VGGNet是2014年由牛津大學(xué)提出的深層網(wǎng)絡(luò)模型,通過不斷加深卷積層的層數(shù)探索其網(wǎng)絡(luò)性能,以3×3卷積層和2×2最大池化層為基礎(chǔ)組件進(jìn)行堆疊,構(gòu)建了六種層深不同的結(jié)構(gòu)。VGGNet在圖像的特征提取以及分類識別上都表現(xiàn)出了優(yōu)異的性能,證明增加卷積網(wǎng)絡(luò)的深度以及使用小卷積核能夠有效提升模型性能,減少錯誤率。目前,VGG-16、VGG-19等網(wǎng)絡(luò)模型仍然被大量應(yīng)用。
隨著研究人員一味地不斷增加網(wǎng)絡(luò)深度,DNN存在的一些弊端,例如參數(shù)量過多、模型體量過大等問題逐漸顯現(xiàn),網(wǎng)絡(luò)訓(xùn)練愈發(fā)難以收斂,甚至出現(xiàn)了梯度爆炸的情況。2014年Google公司提出Inception模塊結(jié)構(gòu),如圖4所示,同時發(fā)表了首個基于該模塊的DNN模型——GoogleNet[7]。Inception模塊通過封裝不同卷積核的3個卷積層和1個最大池化層,利用模塊化體系一定程度上緩解了這些問題。GoogleNet是Inception系列的第一個版本,其采用平均池化取代了全連接層,提高了模型的準(zhǔn)確率。
圖4 Inception模塊結(jié)構(gòu)圖Fig.4 Structure of Inception module
隨后,Inception系列后續(xù)又發(fā)展出v2、v3、v4三個版本:Inception-v2[8]引入批量歸一化(batch normalization)和級聯(lián)結(jié)構(gòu),進(jìn)一步減少了參數(shù)量,增強(qiáng)了網(wǎng)絡(luò)的非線性表達(dá)能力。Inception-v3[9]利用RMSProp優(yōu)化算法和標(biāo)簽平滑技術(shù)[10],降低了模型錯誤率。而Inception-v4[11]結(jié)合最新殘差網(wǎng)絡(luò)的思想進(jìn)行網(wǎng)絡(luò)更新,獲得了最佳性能。
ResNet則是DNN網(wǎng)絡(luò)發(fā)展的一個重要里程碑,開創(chuàng)性提出的深度殘差框架從根本上解決了網(wǎng)絡(luò)層數(shù)深帶來的一系列問題,ResNet系列網(wǎng)絡(luò)最深層級高達(dá)152層。這種殘差結(jié)構(gòu)的思想極大地推動了深層網(wǎng)絡(luò)的發(fā)展,被廣泛用于各類深度學(xué)習(xí)算法中,大幅提升了算法的準(zhǔn)確率和效率。一般網(wǎng)絡(luò)與殘差網(wǎng)絡(luò)結(jié)構(gòu)對比如圖5所示,殘差網(wǎng)絡(luò)引入一個shortcut分支,將期待的輸出變?yōu)镠(x)=F(x)+x,從而減小擬合F(x)的難度。ResNet也有不同的層數(shù)版本,ResNet-50最常被應(yīng)用。
圖5 一般網(wǎng)絡(luò)與殘差網(wǎng)絡(luò)對比圖Fig.5 Comparison of normal network and residual network
DNN模型在與計(jì)算機(jī)視覺相關(guān)的模式識別任務(wù)中展現(xiàn)出了優(yōu)越的空間特征提取能力,因此得到了廣泛的應(yīng)用。與傳統(tǒng)的手工特征提取相比,應(yīng)用DNN對戴口罩的人臉目標(biāo)提取出更深層次的高級別特征,最終能實(shí)現(xiàn)更高精確度的檢測。因此,研究人員不約而同地選擇DNN模型完成提取特征,由此得到了一系列基于DNN模型的口罩佩戴檢測算法。
這類算法主要解決主動場景下人臉佩戴口罩與否的檢測。根據(jù)算法設(shè)計(jì)的不同,分類器類型又分為兩種實(shí)現(xiàn)策略。值得注意的是,DNN訓(xùn)練依賴從大量數(shù)據(jù)樣本中學(xué)習(xí)圖像特征,但當(dāng)前口罩人臉圖像數(shù)據(jù)集的數(shù)量不足以完全支撐深度學(xué)習(xí)的訓(xùn)練。而現(xiàn)階段也幾乎不存在大規(guī)模精確標(biāo)注的相關(guān)數(shù)據(jù)集。為了克服樣本不足的難題,研究人員引入了遷移學(xué)習(xí)技術(shù),將預(yù)先在ImageNet等大型數(shù)據(jù)集上訓(xùn)練好的DNN模型“遷移”到新的口罩佩戴檢測領(lǐng)域中,通過共享模型參數(shù)降低對口罩人臉圖像數(shù)據(jù)量的需求,同時還提高了訓(xùn)練的效率。事實(shí)證明,在口罩佩戴檢測中使用遷移學(xué)習(xí)是十分有效的方法。
2.2.1 DNN結(jié)合機(jī)器學(xué)習(xí)分類算法
近些年以來,利用機(jī)器學(xué)習(xí)方法解決分類問題成為了主流研究手段之一。主動場景下的口罩佩戴檢測實(shí)質(zhì)上是一種有監(jiān)督分類問題,可以利用DNN提取圖像特征,再結(jié)合機(jī)器學(xué)習(xí)分類算法完成。
Oumina等[12]首先提出了這種方法,他們選擇VGG-19、Xception[13]、MobileNet-v2[14]三種DNN模型,結(jié)合支持向量機(jī)[15]和K最近鄰分類[16]兩種分類器分別組合實(shí)驗(yàn),所有的組合準(zhǔn)確率均超過94%,有效證明了方法的可行性。經(jīng)過對比,MobileNet-v2+支持向量機(jī)的組合表現(xiàn)性能最佳。Loey等[17]則選擇了另一種DNN模型ResNet-50,分類器選用決策樹、支持向量機(jī)和集成學(xué)習(xí)[18],在混合了人臉佩戴真實(shí)口罩和模擬口罩的數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),同樣在使用支持向量機(jī)做分類器的模型中獲得了最高檢測準(zhǔn)確率。
這類方法在特征提取和目標(biāo)分類中分別使用不同模型構(gòu)建了兩階段口罩佩戴檢測網(wǎng)絡(luò),檢測準(zhǔn)確率良好,但是建模耗時較長,工序繁雜,計(jì)算量大,推理速度慢,訓(xùn)練數(shù)據(jù)較少時機(jī)器學(xué)習(xí)方法容易產(chǎn)生過擬合,對于一些復(fù)雜情況例如用手蒙面的類型不能快速反應(yīng),易發(fā)生誤識別。因此,有研究人員選擇直接優(yōu)化DNN模型的方法,端到端一步到位完成檢測。
2.2.2 端到端DNN模型
劉國明等[19]直接基于ResNet-34實(shí)現(xiàn)了佩戴口罩與否的檢測,主要研究了模型具體應(yīng)用過程中的訓(xùn)練技巧,探索了解決口罩佩戴檢測有效的預(yù)處理方法、最優(yōu)學(xué)習(xí)率和批數(shù)據(jù)量大小,改善了對小尺度目標(biāo)和戴口罩側(cè)臉人臉目標(biāo)漏檢的不足。Gathani等[20]則基于ResNet-50模型,同時借鑒候選區(qū)域生成網(wǎng)絡(luò)提高了檢測性能。劉啟剛等[21]利用GoogleNet搭建針對實(shí)時場景的單階段口罩檢測模型,采用1×1+3×3卷積層結(jié)構(gòu)改進(jìn)骨干網(wǎng)絡(luò)來簡化模型,設(shè)計(jì)了包含候選區(qū)域篩選與目標(biāo)分類兩個任務(wù)的多目標(biāo)優(yōu)化函數(shù),極大提升了檢測效率。Chowdary等[22]選擇優(yōu)化Inception-v3,刪除最后一層,增加平均池化層[23]和ReLU函數(shù)減小特征提取誤差,加入Dropout層[24]防止過擬合現(xiàn)象,最后通過softmax函數(shù)來完成口罩佩戴檢測任務(wù)。金映谷等[25]則基于MobileNet-v2提出了一種適用于便攜移動端設(shè)備的口罩佩戴識別算法。為探索不同DNN模型的口罩檢測應(yīng)用效果,Alawi等[26]分別對MobileNet-v2和DenseNet網(wǎng)絡(luò)進(jìn)行了實(shí)驗(yàn),準(zhǔn)確率均高達(dá)98.5%。
上述這些算法模型都取得了不錯的檢測效果,證明了端到端DNN模型在口罩佩戴檢測任務(wù)中的有效性。比起結(jié)合機(jī)器學(xué)習(xí)的兩階段網(wǎng)絡(luò),這類單階段模型在達(dá)到較高識別精度的同時具有更快的檢測速度。
然而,基于DNN模型的口罩佩戴檢測不能準(zhǔn)確顯示人臉位置,僅能完成單個目標(biāo)是否佩戴口罩的判別。DNN模型層數(shù)多,體量大,從現(xiàn)實(shí)防疫需求的角度考慮,應(yīng)用可行性較差,運(yùn)行會占用大量內(nèi)存,訓(xùn)練時間較長,在計(jì)算資源有限的情況下難以部署。實(shí)際上,隨著疫情形勢愈加嚴(yán)峻,僅完成主動場景下的檢測已然無法滿足需要,在難以保持距離的人群密集場所病毒傳播的風(fēng)險(xiǎn)更大,通過智能檢測手段及時發(fā)現(xiàn)未佩戴口罩的行人,對其進(jìn)行監(jiān)督和提醒才能做到最有效的防疫。
目標(biāo)檢測,通常是指在一幅圖像中找到所有感興趣的目標(biāo),并利用矩形邊界框來確定其位置和大小[27],同時輸出物體類別。目標(biāo)檢測是圖像識別中最重要的基礎(chǔ)任務(wù)之一,在自動駕駛[28]、目標(biāo)跟蹤[29]、視頻監(jiān)控[30]、遙感圖像分析[31]中都發(fā)揮了關(guān)鍵的作用。目標(biāo)檢測也經(jīng)歷了由傳統(tǒng)方法到基于深度學(xué)習(xí)的檢測方法[32]的演變過程。傳統(tǒng)目標(biāo)檢測算法基于手工特征提取,泛化性能差,魯棒性不高,檢測的精度和速度均不甚理想,遠(yuǎn)遠(yuǎn)達(dá)不到實(shí)際工業(yè)應(yīng)用的要求。2014年Girshick等人[33]最早提出了首個使用深度學(xué)習(xí)實(shí)現(xiàn)目標(biāo)檢測的模型——RCNN(regions with CNN features),一舉將檢測平均精度均值(mean average precision,mAP)由35.1%提升到了53.3%,獲得了極大的突破,從此開創(chuàng)了目標(biāo)檢測的深度學(xué)習(xí)新時代。
近些年,基于深度學(xué)習(xí)的目標(biāo)檢測模型逐步發(fā)展壯大,一系列性能優(yōu)異的算法相繼問世并得到了工業(yè)界的大規(guī)模應(yīng)用,發(fā)展歷程如圖6所示。這些模型主要分為兩大類:(1)基于候選區(qū)域的二階段檢測算法;(2)基于邊框回歸的一階段檢測算法。二階段算法將檢測分為兩步進(jìn)行:首先生成可能包含物體的候選區(qū)域,再對該區(qū)域做進(jìn)一步分類校準(zhǔn)得到最終結(jié)果,代表方法有RCNN系列。一階段算法則基于回歸思想,使用一階網(wǎng)絡(luò)直接對輸入圖像進(jìn)行分類和定位,速度極快,其代表方法有YOLO(you only look once)系列、SSD(single shot multibox detector)[34]、RetinaNet[35]等。
圖6 基于深度學(xué)習(xí)的目標(biāo)檢測模型發(fā)展歷程Fig.6 Development history of object detection models based on deep learning
基于目標(biāo)檢測模型的口罩佩戴檢測實(shí)現(xiàn)被動場景下人臉目標(biāo)定位的同時判斷是否佩戴口罩,這類應(yīng)用對算法實(shí)現(xiàn)多尺度目標(biāo)檢測和實(shí)時檢測的要求較高。根據(jù)應(yīng)用模型的類別不同也分為兩大類:基于二階段檢測模型改進(jìn)的算法檢測精度高,但檢測速度較慢,實(shí)時性較差;而基于一階段檢測模型改進(jìn)的算法速度快,可以滿足實(shí)時性要求,但檢測精度稍遜色。研究人員依據(jù)場景需求的不同在通用目標(biāo)檢測模型的基礎(chǔ)上優(yōu)化改進(jìn)以適應(yīng)口罩佩戴檢測,取得了豐碩的成果。
二階段檢測模型中,RCNN系列最適合用于口罩佩戴檢測。在遇到多尺度、小目標(biāo)、人群擁擠等較難場景的檢測時,RCNN系列在檢測的準(zhǔn)確率上依然具有較強(qiáng)的優(yōu)勢。在RCNN的基礎(chǔ)上,2015年Fast RCNN[36]首先通過卷積共享實(shí)現(xiàn)了端到端的檢測,隨后Faster RCNN[37]劃時代提出區(qū)域生成網(wǎng)絡(luò)(region proposal network,RPN)和“錨點(diǎn)”(Anchor)機(jī)制,取代了之前的選擇性搜索,使模型在保證高檢測精度的同時將檢測速度推向一個新的高峰,RCNN系列也終于走向了實(shí)時。Faster RCNN是該系列的集大成者,在VOC 2012數(shù)據(jù)集上實(shí)現(xiàn)了mAP值70.4%,檢測速度為17 FPS的優(yōu)越性能。直到現(xiàn)在,F(xiàn)aster RCNN仍然是主流應(yīng)用的框架之一,許多新型算法都是在其基礎(chǔ)上進(jìn)行改進(jìn)實(shí)現(xiàn)的。
口罩佩戴檢測也不例外,一些研究人員為了追求檢測的準(zhǔn)確性首選Faster RCNN作為基礎(chǔ)架構(gòu)建立檢測模型。Shylaja等[38]利用遷移學(xué)習(xí)思想,在該模型訓(xùn)練中載入預(yù)訓(xùn)練權(quán)重,對普通背景和復(fù)雜背景兩種口罩人臉數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),平均精度達(dá)到了98.5%。任鈺等[39]根據(jù)對比實(shí)驗(yàn)結(jié)果選擇使用層數(shù)更深且運(yùn)算量更小的ResNet-101替換原模型VGG特征提取網(wǎng)絡(luò),檢測精度和速度比原來有明顯提升,對場景變化和目標(biāo)遮擋重疊等情況的魯棒性也有所改善,但對小尺度目標(biāo)檢測依然不太理想。李澤琛等[40]則主要針對小尺度目標(biāo)檢測效果差的問題,在模型中加入殘差結(jié)構(gòu)和注意力機(jī)制[41],形成空間-通道注意力殘差模塊,通過深度融合深淺層特征保留更多輸入特征的空間結(jié)構(gòu)信息來有效抑制背景的干擾,提高了對小目標(biāo)的檢測精度,降低了漏檢率。萬子倫等[42]注意到傳統(tǒng)單一的RPN網(wǎng)絡(luò)在處理遠(yuǎn)距離口罩人臉小目標(biāo)時會發(fā)生誤檢,于是引入多個RPN進(jìn)行多任務(wù)增強(qiáng),又設(shè)置五種新尺度,將Anchor數(shù)量增加至15,改進(jìn)后模型對多尺度口罩人臉目標(biāo)的檢測能力有了明顯提升。
目前基于二階段檢測模型的口罩佩戴檢測重點(diǎn)關(guān)注多尺度目標(biāo)檢測能力的提高,利用多種優(yōu)化策略增強(qiáng)模型性能,以應(yīng)對被動場景下口罩人臉目標(biāo)排列無序、尺度不一甚至不同目標(biāo)發(fā)生重疊遮擋的情況。由于二階段模型本身檢測精度較高,在口罩佩戴檢測應(yīng)用中改進(jìn)模型的mAP值均表現(xiàn)突出。但兩階段結(jié)構(gòu)比較復(fù)雜,檢測步驟多,運(yùn)行消耗大,又為提高性能引入優(yōu)化模塊,進(jìn)一步加重了訓(xùn)練的成本負(fù)擔(dān),在速度方面表現(xiàn)不甚理想,無法實(shí)現(xiàn)實(shí)時檢測,也較難部署于便攜式或移動端設(shè)備上。針對以上問題,后續(xù)研究可嘗試?yán)幂p量級模塊或網(wǎng)絡(luò)做進(jìn)一步優(yōu)化,在保持高精度的前提下突破速度難關(guān)。而一階段檢測模型在速度上具有先天性優(yōu)勢,更適合于公共場所中實(shí)時監(jiān)督行人口罩佩戴情況的場景需求,其關(guān)注重點(diǎn)則是檢測精度的提高以及現(xiàn)實(shí)應(yīng)用對低成本部署和運(yùn)行的要求。
3.3.1 基于改進(jìn)YOLO的口罩佩戴檢測
一階段檢測模型中應(yīng)用最多的當(dāng)屬Redmon等提出的YOLO系列。YOLO憑借其強(qiáng)大的實(shí)時檢測性能真正推動目標(biāo)檢測走向了大規(guī)模落地應(yīng)用。YOLO系列直到Y(jié)OLOv3[43]版本才同時兼顧到檢測精度和速度兩方面性能,真正走向成熟。之后的YOLOv4[44]、YOLOv5雖然不再是一脈作者的延續(xù),但也表現(xiàn)出了不錯的性能。YOLO系列算法檢測速度極快,并且具有良好的檢測精度,適用于對實(shí)時性要求較高的被動場景下的口罩佩戴檢測。這其中,YOLOv3具備獨(dú)具特色的多尺度檢測框架,可以有效捕捉復(fù)雜背景下不同尺度的口罩人臉目標(biāo)。YOLOv4采用一系列優(yōu)化和訓(xùn)練技巧提升檢測性能,降低了模型的應(yīng)用成本。而YOLOv5則更加靈活小巧,易于部署,且保持了較高檢測精度的同時,進(jìn)一步加快了模型的推理速度,耗時更短,達(dá)成了目前該系列速度和性能的最佳平衡。YOLOv5共包含4個版本,即YOLOv5s、YOLOv5m、YOLOv5l和YOLOv5x,依次增加網(wǎng)絡(luò)結(jié)構(gòu)的深度和寬度,速度相對降低,但精度提升,以滿足不同實(shí)際應(yīng)用的需求。綜上,YOLO模型能夠?qū)崿F(xiàn)高速度與高精度并存的多尺度檢測,在現(xiàn)實(shí)場景的實(shí)時應(yīng)用上更具優(yōu)勢。但YOLO模型即便對類別數(shù)較多的檢測任務(wù)都具有很好的通用泛化性,對于口罩佩戴檢測任務(wù)只需檢測兩類目標(biāo),更需要做出針對性的優(yōu)化調(diào)整。
基于改進(jìn)YOLOv3的口罩佩戴檢測進(jìn)一步加強(qiáng)了模型對小尺度目標(biāo)的捕捉。王藝皓等[45]在原有模型框架上加入跨階段局部網(wǎng)絡(luò)[46]、空間金字塔池化[47],增強(qiáng)對淺層特征的提取,又利用特征融合策略實(shí)現(xiàn)特征復(fù)用,通過綜合局部和全局兩方面語義信息提升了小目標(biāo)檢測精度。曾成等[48]通過將3×3類金字塔結(jié)構(gòu)擴(kuò)建為4×4,對淺層特征提取部分增加一個新的預(yù)測分支,使模型對小目標(biāo)的檢測精度升高了7.2個百分點(diǎn)。張路達(dá)等[49]受此啟發(fā),增加4倍下采樣和104×104尺度特征圖,結(jié)合自上而下與自下而上的路徑增強(qiáng)策略達(dá)到了更好的效果。孫世丹等[50]預(yù)先使用加權(quán)核K-Means聚類算法重新選取更適合小目標(biāo)檢測的Anchor Box,而后又通過將4倍下采樣得到的特征圖進(jìn)行上采樣與上層特征信息相融合的操作,整體提高了小目標(biāo)檢測準(zhǔn)確率。曹城碩等[51]嵌入注意力機(jī)制模塊SENet[52],增加重要特征通道的加權(quán)比重,抑制無關(guān)干擾,明顯改善了對小目標(biāo)的檢測性能。而程可欣等[53]從改進(jìn)損失函數(shù)的角度優(yōu)化模型,選擇GIoU[54]計(jì)算邊界框回歸損失,該方法使小目標(biāo)漏檢率明顯降低。
基于YOLOv4的口罩佩戴檢測比較容易受到復(fù)雜光照的干擾而導(dǎo)致效果不佳。管軍霖等[55]建立了一種新型圖像高低頻成分融合法,應(yīng)用數(shù)總變分模型分別獲取高頻和低頻成分,采用最小二乘法來估計(jì)光照陰影的最佳重建系數(shù),利用這種光線正則化方法重構(gòu)均勻光照下的人臉圖像,以消除光照不均勻影響。而冉鵬飛[56]則選擇改進(jìn)模型框架,在YOLOv4主干網(wǎng)絡(luò)中嵌入卷積注意力模塊,重點(diǎn)關(guān)注復(fù)雜光照下圖像的特征表達(dá),獲取更多空間細(xì)節(jié)信息,實(shí)現(xiàn)了無論在光照偏強(qiáng)還是偏弱的條件下均表現(xiàn)良好的檢測效果。
基于YOLOv5的實(shí)時口罩佩戴檢測也具有很大的研究空間。談世磊等[57]將歸一化處理后的圖像送入YOLOv5中進(jìn)行訓(xùn)練,取得了優(yōu)異的檢測性能,證明了方法的可行性和實(shí)用性。肖博健等[58]則通過K-Means聚類算法重設(shè)初始候選框參數(shù)、利用可變形卷積修正特征圖、優(yōu)化特征函數(shù)等多方面對模型進(jìn)行改進(jìn),穩(wěn)定提升了模型的準(zhǔn)確率和召回率。
總體看來,YOLO模型改進(jìn)后實(shí)現(xiàn)了快速高效的口罩佩戴檢測,且對光照、遮擋、小尺度等難題都有了一定程度上的改善,檢測效果良好,目前已成為被動場景下口罩佩戴檢測實(shí)現(xiàn)的主要方式。但改進(jìn)后模型仍存在參數(shù)量大、結(jié)構(gòu)冗余的問題,依舊難以部署,甚至由于優(yōu)化策略反而加重了模型的復(fù)雜化。考慮到實(shí)際應(yīng)用需求的硬件部署和訓(xùn)練成本問題,改進(jìn)YOLO模型的輕量化研究也是不可或缺的一部分。
3.3.2 基于YOLO的輕量化口罩佩戴檢測
研究人員在YOLOv4框架基礎(chǔ)上進(jìn)行口罩佩戴檢測的輕量化研究。葉子勛等[59]將骨干特征提取網(wǎng)絡(luò)替換為MobileNet-v3[60],再利用自注意力機(jī)制和SiLU激活函數(shù)優(yōu)化檢測性能。改進(jìn)后模型參數(shù)量驟減,占用內(nèi)存從244 MB減小到44 MB,運(yùn)算量也減為之前的1/8,檢測速度提升了近一倍。羅禹杰等[61]同樣應(yīng)用了MobileNet,又采用自適應(yīng)空間特征融合方式[62]增強(qiáng)性能。丁培等[63]引入輕量級骨干網(wǎng)絡(luò)Light-CSPDarkNet,又利用輕量級特征增強(qiáng)模塊和多尺度注意力機(jī)制,使算法精度提高了3.55%,檢測速度由35 FPS增加至75 FPS,可以滿足實(shí)際應(yīng)用的需求。
另有研究人員則直接選用了YOLOv4-tiny進(jìn)行口罩佩戴檢測。YOLOv4-tiny是該系列的一個輕量化框架,架構(gòu)簡單,經(jīng)常被用于嵌入式平臺中進(jìn)行快速目標(biāo)檢測。但YOLOv4-tiny的特征提取能力相對較弱,為了提升檢測精度,王兵等[64]加入Max Moudle結(jié)構(gòu),分別用大中小不同尺度的窗口對卷積特征進(jìn)行最大池化,同時保留上層特征進(jìn)行特征通道融合。改進(jìn)后模型提取的特征圖能夠更好地表達(dá)輸入圖像的邊緣信息和主要特征,從而取得了不錯的效果。朱杰等[65]引入空間金字塔池化增強(qiáng)網(wǎng)絡(luò)感受野,又結(jié)合路徑聚合網(wǎng)絡(luò)提升特征表達(dá),并在訓(xùn)練時利用標(biāo)簽平滑技巧防止數(shù)據(jù)過擬合,對口罩目標(biāo)的檢測精度達(dá)到了94.7%,實(shí)時檢測速度提升至76.8 FPS。葉茂等[66]改進(jìn)殘差結(jié)構(gòu)簡化模型以達(dá)成實(shí)時檢測,增加多尺度輸出結(jié)構(gòu),增強(qiáng)低層特征層表達(dá),降低小目標(biāo)漏檢率,采用多層級交叉融合結(jié)構(gòu)提高特征利用率,改進(jìn)算法模型只要5.8 MB且mAP值提高了5.3%,CPU下處理時間加快了13 s,能夠滿足計(jì)算資源有限的條件下應(yīng)用的實(shí)時要求。
彭成等[67]基于YOLOv5模型設(shè)計(jì)了成本更低的GhostBottleneckCSP和ShuffleConv模塊,優(yōu)化后模型的參數(shù)量和計(jì)算量分別減少為原模型的34.24%和33.54%,使其更加容易部署在資源有限的嵌入式或移動端設(shè)備上,大幅提高了運(yùn)行速度。
整體來看,改進(jìn)YOLO模型實(shí)現(xiàn)輕量化口罩佩戴檢測實(shí)現(xiàn)了不錯的效果,同時也是未來人臉口罩佩戴檢測技術(shù)最大的發(fā)展趨勢。但輕量化改進(jìn)勢必會造成精度的損失,現(xiàn)階段多數(shù)算法彌補(bǔ)檢測精度的策略良莠不齊,在不同數(shù)據(jù)集上的實(shí)驗(yàn)效果無法統(tǒng)一。輕量化改進(jìn)是該領(lǐng)域一大重要研究熱點(diǎn),將成為理論走向現(xiàn)實(shí)場景應(yīng)用最重要的關(guān)鍵性環(huán)節(jié)。
3.3.3 其他模型在口罩佩戴檢測中的應(yīng)用
除了大量使用YOLO作為基礎(chǔ)框架解決口罩佩戴檢測問題之外,一階段檢測模型中SSD和RetinaNet也常被應(yīng)用。SSD結(jié)合了Faster RCNN的區(qū)域生成和YOLO的回歸思想,通過增加深度卷積層提高檢測精度,利用多層次特征圖實(shí)現(xiàn)了多尺度目標(biāo)檢測。而RetinaNet則是提出Focal Loss損失函數(shù),用以改善一階段檢測模型因正負(fù)樣本類別不均衡導(dǎo)致的檢測精度不理想的窘?jīng)r,效果顯著,其在COCO數(shù)據(jù)集上的平均檢測精度甚至超過了Faster RCNN。同時,RetinaNet利用特征金字塔[68]完成多尺度目標(biāo)預(yù)測。綜上,SSD和RetinaNet具有一階段檢測模型的快速檢測性能和良好的檢測精度,具備多尺度檢測能力,可以被應(yīng)用于口罩佩戴檢測任務(wù)。
研究人員基于SSD模型進(jìn)行改進(jìn),完成口罩佩戴檢測。李雨陽等[69]引入特征融合和協(xié)調(diào)注意力機(jī)制,結(jié)合Focal Loss損失函數(shù)調(diào)節(jié)正負(fù)樣本權(quán)重,改進(jìn)后算法精度提高了5.62%。阮士峰[70]引入多重閾值修正并增加特征融合層,結(jié)合數(shù)據(jù)集增廣方法,有效提高了對口罩人臉的檢測性能。Nagrath等[71]則首先使用SSD檢測口罩人臉,然后結(jié)合MobileNet-v2進(jìn)行分類,也得到了不錯的效果。毛曉波等[72]則將特征提取網(wǎng)絡(luò)直接替換為MobileNet-v3,選用計(jì)算量較小的H-Swish激活函數(shù)、輕量級注意力機(jī)制等優(yōu)化策略加快了檢測速度,提高了精度,在嵌入式設(shè)備Jetson Nano上進(jìn)行了應(yīng)用實(shí)驗(yàn),雖實(shí)際效果不佳,但前后對比實(shí)驗(yàn)證明了改進(jìn)方法的有效性。
鄧黃瀟[73]應(yīng)用RetinaNet進(jìn)行口罩佩戴檢測實(shí)驗(yàn),結(jié)果證明其對于小像素級目標(biāo)表現(xiàn)性能較為突出。2019年Deng等[74]將RetinaNet應(yīng)用于人臉檢測,提出了單階段人臉檢測器RetinaFace,實(shí)現(xiàn)了多任務(wù)訓(xùn)練。而口罩佩戴檢測也可以看作是一種特殊的人臉檢測任務(wù)。牛作東等[75]在RetinaFace模型中加入注意力機(jī)制模塊增強(qiáng)口罩人臉的特征表達(dá),又設(shè)計(jì)了多任務(wù)聯(lián)合損失提高訓(xùn)練效率。改進(jìn)算法在自然場景下對口罩人臉的檢測性能良好。基于以上研究,文獻(xiàn)[76]專門提出了一種高精度、高效率的專用人臉口罩檢測器RetinaFaceMask,雖然性能還有待提高,但是為后續(xù)研究提供了一個很好的研究思路。
綜上所述,基于一階段檢測模型的口罩佩戴檢測在檢測速度、實(shí)時性能上略勝一籌,但檢測精度相對較低,易受背景干擾。被動場景復(fù)雜多變,通過一系列優(yōu)化改進(jìn)策略可以有效提升算法的檢測精度和魯棒性。該類算法可以實(shí)現(xiàn)人臉目標(biāo)定位和佩戴口罩檢測并行多任務(wù)目的。目前,基于改進(jìn)YOLO的模型最受研究人員青睞,是當(dāng)前研究最多的主流方向,發(fā)展較為成熟,但后續(xù)還應(yīng)順應(yīng)趨勢,加強(qiáng)對模型輕量化壓縮和降低部署應(yīng)用成本的研究。而其他各類一階段檢測模型目前成果偏少,相對研究不充分,且從總體應(yīng)用效果來看略顯不足,還有待進(jìn)一步探索。
數(shù)據(jù)集是深度學(xué)習(xí)訓(xùn)練的基礎(chǔ),對于模型性能的提升和量化評估具有重大影響。但目前專門用于口罩佩戴檢測的相關(guān)數(shù)據(jù)集較少,一些大型遮擋人臉數(shù)據(jù)集,例如WiderFace[77]和MAFA[78],包含有佩戴口罩的人臉圖像樣本被研究人員關(guān)注到,他們從中對數(shù)據(jù)二次篩選,再重新清洗標(biāo)注形成自己的實(shí)驗(yàn)數(shù)據(jù)集。而后才逐漸出現(xiàn)了一些質(zhì)量良好的口罩佩戴檢測專用數(shù)據(jù)集,常被應(yīng)用的數(shù)據(jù)集主要有RMFD(real-world masked face dataset)[79]、AIZOO、MaskedFace-Net[80],詳細(xì)介紹如表1所示。
表1 常用口罩佩戴檢測數(shù)據(jù)集Table 1 Common datasets of face mask wearing detection
基于深度學(xué)習(xí)的口罩佩戴檢測已經(jīng)成為當(dāng)前計(jì)算機(jī)視覺領(lǐng)域備受矚目的熱點(diǎn)話題,具有廣闊的研究應(yīng)用前景[83]。上文分別對各檢測算法的改進(jìn)策略、適用場景、優(yōu)勢和局限性進(jìn)行了詳細(xì)介紹。為展現(xiàn)各類方法在口罩佩戴檢測任務(wù)中的最優(yōu)性能,對上述性能表現(xiàn)優(yōu)異的算法從關(guān)鍵改進(jìn)結(jié)構(gòu)、實(shí)驗(yàn)數(shù)據(jù)集和具體性能表現(xiàn)等角度進(jìn)行全面對比總結(jié)[84],如表2、表3所示,表4為各方法綜合定性分析結(jié)果。衡量這些檢測算法常用的性能評價(jià)指標(biāo)包括準(zhǔn)確率(Accuracy)、精確率(Precision)、召回率(Recall)、mAP、FPS。準(zhǔn)確率指正確預(yù)測的結(jié)果占全部樣本的比重,精確率指預(yù)測正樣本中實(shí)際正樣本的比重,召回率指預(yù)測正確的正樣本占實(shí)際正樣本的比重,定義為:
表2 基于深度神經(jīng)網(wǎng)絡(luò)的口罩佩戴檢測算法性能對比Table 2 Performance comparison of face mask wearing detection algorithms based on deep neural networks
表3 基于目標(biāo)檢測模型的口罩佩戴檢測算法性能對比Table 3 Performance comparison of face mask wearing detection algorithms based on object detection models
表4 口罩佩戴檢測算法性能定性對比Table 4 Qualitative comparison of mask wearing detection algorithm performance
其中,TP指正樣本被正確預(yù)測為正樣本;TN指負(fù)樣本被正確預(yù)測為負(fù)樣本;FP指負(fù)樣本被錯誤預(yù)測為正樣本;FN指正樣本被錯誤預(yù)測為負(fù)樣本。
平均準(zhǔn)確率(average precision,AP)、平均準(zhǔn)確率均值(mAP)常用于評價(jià)目標(biāo)檢測精度。定義為:
其中,P、R為精確率和召回率,P()R表示映射函數(shù)關(guān)系,n表示類別數(shù),i為某個單一類別。mAP為全部類別AP的均值,在口罩佩戴檢測中包含佩戴口罩和未佩戴口罩兩種類別,mAP反映整體檢測效果。
FPS指每秒傳輸檢測圖像的幀數(shù),常用于評價(jià)目標(biāo)檢測網(wǎng)絡(luò)的檢測速度。
表3(續(xù))
由上述分析可得,基于DNN模型的檢測算法總體檢測準(zhǔn)確率均較高,檢測精度良好,但速度方面表現(xiàn)不佳甚至無參考數(shù)據(jù),證明此類算法檢測速度慢,不能適用于實(shí)時性要求較高的場景?;谀繕?biāo)檢測模型的算法中,YOLO改進(jìn)算法在檢測精度和速度兩方面都明顯優(yōu)于其他模型,其中YOLOv4、YOLOv5的改進(jìn)模型在精度和速度之間達(dá)成了很好的平衡,YOLOv3改進(jìn)模型雖精度略勝,但速度稍遜。另外,最值得關(guān)注的當(dāng)屬YOLO輕量化改進(jìn)模型,性能表現(xiàn)突出,進(jìn)一步驗(yàn)證了輕量化模型研究的可行性和必要性。
從表中還可以看出,大部分算法的數(shù)據(jù)集都來源于遮擋人臉數(shù)據(jù)集的二次篩選,有些甚至直接利用網(wǎng)絡(luò)爬蟲收集。原因在于目前依舊缺乏具有代表性、質(zhì)量良好的真實(shí)場景下大型口罩人臉基準(zhǔn)數(shù)據(jù)集。這也是目前口罩佩戴檢測存在的最大問題。但從數(shù)據(jù)表現(xiàn)總體來看,基于成熟的深度網(wǎng)絡(luò)模型可以基本完成口罩佩戴檢測任務(wù),研究人員提出相應(yīng)的改進(jìn)算法也能有效增強(qiáng)對多尺度目標(biāo)的檢測能力,抑制復(fù)雜背景干擾,未來還需在更完整的數(shù)據(jù)集上探索更優(yōu)的性能。
本文圍繞國內(nèi)外現(xiàn)有的口罩佩戴檢測算法研究進(jìn)行了分類總結(jié),主要是主動場景下基于深度神經(jīng)網(wǎng)絡(luò)模型和被動場景下基于目標(biāo)檢測模型進(jìn)行檢測兩大類方法。總體來看,這些算法都是在成熟模型的基礎(chǔ)上改進(jìn)實(shí)現(xiàn)的,并采用了多種優(yōu)化策略以提升對口罩人臉圖像的處理能力。這些新型改進(jìn)算法在精度和速度上都有了長足的進(jìn)步,在面對小尺度、復(fù)雜光照、遮擋等較難問題時也有所改善,基本完成了檢測任務(wù)。但在具體應(yīng)用過程中依然存在著一些問題,未來還有很大的發(fā)展空間,對此提出以下幾點(diǎn)研究趨勢展望:
(1)口罩不規(guī)范佩戴情況識別。目前口罩佩戴檢測只解決了口罩佩戴與否的檢測問題,但是在實(shí)際生活中經(jīng)常出現(xiàn)行人不規(guī)范佩戴口罩的情況。例如,口罩只遮蓋了嘴巴、掛到下巴上等,無疑使防護(hù)措施失效,加重了疫情傳播的風(fēng)險(xiǎn)。因此,未來利用智能算法實(shí)現(xiàn)口罩不規(guī)范佩戴情況的識別也顯得尤為重要,值得深入研究。
(2)研究更輕型、易部署的算法??谡峙宕鳈z測作為防疫利器,僅在理論實(shí)驗(yàn)中實(shí)現(xiàn)是遠(yuǎn)遠(yuǎn)不夠的,更需要在現(xiàn)實(shí)場所中得到實(shí)際應(yīng)用。這就需要模型更加輕量化,應(yīng)用成本更低,且受硬件設(shè)備約束,這些模型大多都會被應(yīng)用于嵌入式、移動式設(shè)備中[85]。如何從理論研究走向落地應(yīng)用也是亟待解決的關(guān)鍵問題。
(3)弱監(jiān)督口罩佩戴檢測模型。從現(xiàn)有研究來看,口罩人臉相關(guān)數(shù)據(jù)集仍然稀缺,而DNN網(wǎng)絡(luò)和目標(biāo)檢測模型的應(yīng)用一般都基于監(jiān)督學(xué)習(xí),需要大量的標(biāo)注數(shù)據(jù)。樣本的缺少和大量繁雜的數(shù)據(jù)標(biāo)注工作也是目前制約口罩佩戴檢測發(fā)展的原因。因此,利用弱監(jiān)督學(xué)習(xí)方法,在標(biāo)注樣本較少的情況下設(shè)計(jì)口罩佩戴檢測模型可以成為未來研究的方向之一。
(4)口罩人臉識別。口罩遮擋下人臉識別的實(shí)現(xiàn)在檢測算法逐步發(fā)展完善的基礎(chǔ)上可以進(jìn)一步研究[86]。疫情常態(tài)化發(fā)展形勢下,人工智能技術(shù)如何在疫情防控中繼續(xù)發(fā)揮作用,也是未來應(yīng)繼續(xù)重點(diǎn)關(guān)注的話題。