莫偉龍,劉佳男,王迪,尹偉石
(長春理工大學(xué) 數(shù)學(xué)與統(tǒng)計學(xué)院,長春 130022)
2020年突如其來的肺炎疫情波及全世界,世界衛(wèi)生組織在Situation report-220中提出截至到2020年9月10日,全世界已經(jīng)有超過3 060萬COVID-19病例和95萬死亡病例。為有效控制疫情蔓延,各地政府要求群眾外出必須佩戴口罩,但是不少行人存在僥幸心理,不佩戴或者錯誤佩戴口罩。為了改善這種情況,有必要對外出群眾的口罩佩戴情況進(jìn)行檢測,降低因不佩戴或者錯誤佩戴口罩而造成的病毒傳染風(fēng)險。
目前對于公眾場所人群口罩佩戴情況的檢測主要依靠于人工排查,但該方法勞動量大、排查效率低、傳染風(fēng)險高,并且不能長期有效地提高人群佩戴口罩的自覺意識,因此如何智能高效地解決口罩的檢測問題成為了提高公共衛(wèi)生安全的關(guān)鍵。近年來,隨著深度學(xué)習(xí)的不斷發(fā)展與完善,很多企業(yè)及研究人員提出了一系列基于深度學(xué)習(xí)對口罩佩戴問題的目標(biāo)檢測算法。百度首先開源了PyramidBox算法[1],這是一種上下文輔助的單步檢測算法,該算法原本用于人臉檢測,但在口罩佩戴問題上也取得了良好的檢測效果。滴滴出行科技有限公司提出了一種基于DFS的口罩佩戴檢測算法[2],該算法先使用DFS定位人臉,再通過Attention機(jī)制關(guān)注口罩區(qū)域,對該區(qū)域進(jìn)行檢測進(jìn)而判斷是否佩戴口罩。AIZOO提出一種基于SSD的輕量級口罩佩戴檢測算法[3],并對網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行優(yōu)化。UAI團(tuán)隊[4]結(jié)合人臉檢測、關(guān)鍵點定位和口罩實例分割算法實現(xiàn)對口罩佩戴問題的智能識別檢測。上述算法雖然均能夠?qū)崿F(xiàn)對口罩佩戴問題的檢測識別,但無法檢測口罩佩戴是否正確。
目前基于深度學(xué)習(xí)的目標(biāo)檢測算法主要分兩類,一類是雙步目標(biāo)檢測算法,例如:Fast-RCNN[5];另一類是單步目標(biāo)檢測算法,例如:AFE-SSD[6]、YOLO[7]等,其中 YOLO v3 是一種優(yōu)秀的單步目標(biāo)檢測算法。該算法能夠滿足實際生活中的實時檢測需求,與此同時,YOLO v3又融合了先驗框、特征融合金字塔等策略,極大程度上提高了檢測準(zhǔn)確率。官網(wǎng)數(shù)據(jù)表明在COCO檢測集上,相較于RetinaNet-101在198 ms內(nèi)mAP達(dá)到57.5%的檢測效果,YOLO v3僅用了51 ms,性能相當(dāng),速度卻快了3.7倍。YOLO v3以其檢測性能的優(yōu)越性,受到了諸多研究者的青睞。陳詠秋等人[8]提出基于YOLO v3算法的輸電線路鳥類檢測模型,該方法有效地解決了傳統(tǒng)驅(qū)鳥器啟停策略的弊端。郭進(jìn)祥等人[9]將YOLO v3算法應(yīng)用于機(jī)場場面飛機(jī)檢測領(lǐng)域,并將特征提取網(wǎng)絡(luò)中的卷積層改為空洞卷積,進(jìn)而有效地提高了檢測準(zhǔn)確率。施輝等人[10]提出一種基于改進(jìn)YOLO v3算法的安全帽佩戴檢測方法,并結(jié)合特征融合金字塔、多尺度訓(xùn)練等策略實現(xiàn)了安全帽佩戴檢測問題的實時性和準(zhǔn)確性。張浩等人[11]引用Inception網(wǎng)絡(luò)思想,通過改進(jìn)YOLO v3將其運用于目標(biāo)識別與抓取。雖然YOLO v3被廣泛地應(yīng)用于實際生活中,但目前還沒有學(xué)者將其運用于檢測人臉是否正確佩戴口罩這一場景下。
本文以YOLO v3算法為主體,將其運用于面部口罩佩戴情況的檢測,并針對口罩佩戴問題中出現(xiàn)的難以檢測的細(xì)節(jié)問題進(jìn)行以下改進(jìn):(1)為了提高網(wǎng)絡(luò)對細(xì)節(jié)目標(biāo)語義信息的提取能力,對YOLO v3檢測網(wǎng)絡(luò)最終輸出的8倍降采樣特征圖再進(jìn)行2倍上采樣,并與特征提取網(wǎng)絡(luò)的第二個殘差塊中輸出的4倍降采樣特征圖進(jìn)行連接;(2)為了提高網(wǎng)絡(luò)對細(xì)節(jié)目標(biāo)位置信息的提取能力,在Darknet-53網(wǎng)絡(luò)的第二個殘差塊中增加至4個殘差單元;(3)為增強(qiáng)網(wǎng)絡(luò)梯度,取消原YOLO v3檢測網(wǎng)絡(luò)輸出層前的卷積操作,將其改為2個卷積和2個殘差單元的組合;(4)為增強(qiáng)網(wǎng)絡(luò)召回率,將YOLO v3檢測網(wǎng)絡(luò)的輸出層合并為一個最終檢測輸出;(5)本文使用多尺度訓(xùn)練的策略以提高網(wǎng)絡(luò)對輸出圖片尺寸的穩(wěn)健性。
本文從Github及各大開源數(shù)據(jù)集上搜索、下載佩戴口罩人物圖片,并結(jié)合學(xué)校附近實拍圖片對圖片集進(jìn)行篩選、歸類,制作成口罩圖片檢測數(shù)據(jù)集,最后通過實驗,對面部口罩佩戴問題進(jìn)行檢測,觀察改進(jìn)后YOLO v3的檢測性能。
相比于YOLO v2使用Darknet-19網(wǎng)絡(luò)對輸入圖片進(jìn)行特征提取,YOLO v3采用新的特征提取網(wǎng)絡(luò)DarkNet-53。具體網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 Darknet-53網(wǎng)絡(luò)結(jié)構(gòu)
由圖1知,Darknet-53中添加了5個殘差塊,每個殘差塊分別有 1、2、8、8、4個殘差單元,在每個殘差單元中,通過輸入與兩個conv單元進(jìn)行殘差操作,如圖2(a)所示。與此同時每個conv單元又包含了卷積、歸一化處理、LeakyReLU激活函數(shù),如圖2(b)所示,因此在增大網(wǎng)絡(luò)深度的同時又有效地避免了梯度消失。
圖2 Darknet-53中單元結(jié)構(gòu)
特征提取網(wǎng)絡(luò)Darknet-53最終將輸出三種不同尺度大小的特征圖,并將其輸入至YOLO v3的檢測網(wǎng)絡(luò)中。由于低層特征具有豐富的細(xì)節(jié)和定位信息,高層特征具有豐富的語義特征,因此YOLO v3檢測網(wǎng)絡(luò)通過上采樣將低層特征與高層特征進(jìn)行融合,得到不同尺度的特征圖來對目標(biāo)的位置和類別進(jìn)行預(yù)測。具體結(jié)構(gòu)如圖3所示。
圖3 YOLO v3檢測網(wǎng)絡(luò)
由于YOLO v3模型在COCO數(shù)據(jù)集上預(yù)測得到的9個先驗框位置大小能適用于本文的檢測目標(biāo),因此本文沿用了原網(wǎng)絡(luò)定義的先驗框大小,以下介紹具體的YOLO v3檢測算法。
該算法將YOLO v3檢測網(wǎng)絡(luò)輸出的特征圖片劃分成N×N個網(wǎng)格。如果當(dāng)某個網(wǎng)格中存在檢測目標(biāo)的中心,那么這個網(wǎng)格將負(fù)責(zé)預(yù)測該目標(biāo),如圖4所示。
圖4 圖像劃分示意圖
在檢測的過程中,每個網(wǎng)格都會產(chǎn)生3個先驗框,每個先驗框都會預(yù)測邊界框位置信息(x,y,w,h)和置信度C,其中置信度計算公式如下:
其中,P(obj)為邊界框所含目標(biāo)的可能性,若網(wǎng)格中存在某個檢測目標(biāo),P(obj)=1,否則P(obj)=0;IOU為預(yù)測邊界框與真實標(biāo)注框的交并比。
本文共引入沒有佩戴口罩、正確佩戴口罩和錯誤佩戴口罩三種目標(biāo)類別。因此當(dāng)引入類別屬性后,可用P(classi|obj)表示包含目標(biāo)的每個網(wǎng)格中各個類別屬性的概率大小,同時為了得到每個邊界框的分類信息,將邊界框所屬網(wǎng)格的類別概率與邊界框的置信度相乘得到置信度評分,計算公式如下:
置信度評分代表了邊界框中目標(biāo)屬于某個類的概率。
最后,先將邊界框的各個類別的置信度評分按高到低排序,將得分小于閾值的置為0,再用非極大值抑制算法(NMS)去掉重復(fù)率較大的邊界框,最后每一個邊界框只保留置信度評分大于0且最高的類,從而檢測出各類目標(biāo)。
本文主要研究對面部口罩佩戴問題的檢測,但考慮到原始的YOLO v3網(wǎng)絡(luò)只能實現(xiàn)對口罩是否佩戴問題的檢測,而不能檢測出是否正確佩戴,因此需要改進(jìn)原始的YOLO v3網(wǎng)絡(luò),使改進(jìn)后的YOLO v3網(wǎng)絡(luò)能夠滿足對是否正確佩戴口罩問題的檢測。
口罩佩戴問題中很多細(xì)節(jié)錯誤屢見不鮮,例如:鼻夾條按壓不到位、漏出口鼻等,相對于一般較大的目標(biāo)識別,這些細(xì)節(jié)本身像素點少、特征不夠明顯,再考慮隨著網(wǎng)絡(luò)層數(shù)不斷增加,過多的降采樣使得目標(biāo)分辨率不斷下降,語義特征嚴(yán)重丟失,原始的YOLO v3網(wǎng)絡(luò)對這些細(xì)節(jié)問題的檢測存在明顯的困難,因此為了使網(wǎng)絡(luò)獲取口罩佩戴時更多細(xì)節(jié)的特征信息,提高對細(xì)節(jié)目標(biāo)的檢測準(zhǔn)確率,需要改變原有的輸出方式,因此本文建立如下的特征融合目標(biāo)檢測層:
(1)為提高網(wǎng)絡(luò)對細(xì)節(jié)目標(biāo)語義信息的提取能力,對YOLO v3檢測網(wǎng)絡(luò)輸出的8倍降采樣特征圖再進(jìn)行2倍上采樣,并與特征提取網(wǎng)絡(luò)的第二個殘差塊中輸出的4倍降采樣特征圖進(jìn)行連接。
(2)為了提高網(wǎng)絡(luò)對細(xì)節(jié)目標(biāo)位置信息的提取能力,在Darknet-53網(wǎng)絡(luò)的第二個殘差塊中增加至4個殘差單元。
(3)為增強(qiáng)網(wǎng)絡(luò)梯度,取消原YOLO v3檢測網(wǎng)絡(luò)輸出層前的卷積操作,將其改為2個卷積(conv unit)和2個殘差單元(ResNet unit)的組合。
通過上述方法,可建立輸出為4倍降采樣的特征融合目標(biāo)檢測層,它提高了對微小錯誤的信息提取能力。除此之外,為增強(qiáng)網(wǎng)絡(luò)召回率,將YOLO v3檢測網(wǎng)絡(luò)的輸出層合并為一個最終檢測輸出。改進(jìn)后的網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。
圖5 改進(jìn)后的YOLO v3網(wǎng)絡(luò)
YOLO v3算法采用卷積神經(jīng)網(wǎng)絡(luò)來提取特征,最后通過全連接層來對目標(biāo)類別進(jìn)行預(yù)測。由于全連接層的存在,網(wǎng)絡(luò)對輸入圖片的尺寸不具備穩(wěn)健性。為增強(qiáng)網(wǎng)絡(luò)對輸入圖片尺寸的穩(wěn)健性,本文采取多尺度訓(xùn)練的策略,然而多尺度訓(xùn)練僅對全卷積網(wǎng)絡(luò)有效,因此本文將全連接層改為全卷積操作。
例如,當(dāng)輸入圖片尺寸為512×512×3時,經(jīng)過Darknet-53網(wǎng)絡(luò)后,輸出特征圖大小為16×16×1 024。圖6(a)通過一個包含4 096個神經(jīng)元的全連接層后,得到了一組4 096×1的特征圖;圖6(b)使用一組 16×16×4 096的卷積核,最終得到1×1×4 096的特征圖。然而當(dāng)輸入特征圖尺寸大小發(fā)生改變時,圖6(a)中的全連接層需要相應(yīng)修改參數(shù)個數(shù)才能使網(wǎng)絡(luò)繼續(xù)正常運行下去,而圖6(b)改為全卷積操作后網(wǎng)絡(luò)能夠正常運行。除此之外,網(wǎng)絡(luò)在進(jìn)行前向傳播運算時,對于 圖 6(a)共需要計算16×16×1 024×4 096+1=1 073 741 825個參數(shù),而對于圖6(b)則只需要計算(16×16+1)×4 096=1 052 672個參數(shù)。由此可見,將全連接層改為全卷積操作后,能夠有效減少參數(shù)個數(shù),提高網(wǎng)絡(luò)運算效率。
圖6 全連接層轉(zhuǎn)化為全卷積層
實驗訓(xùn)練集是網(wǎng)絡(luò)訓(xùn)練中必不可少的條件,而對于口罩佩戴檢測任務(wù)一直沒有開源的訓(xùn)練集可供直接使用,因此,本文自制了一套口罩佩戴訓(xùn)練集,具體包含以下四方面:數(shù)據(jù)的拍攝與收集、數(shù)據(jù)的預(yù)處理、數(shù)據(jù)的篩選和數(shù)據(jù)的標(biāo)記。
(1)數(shù)據(jù)的拍攝與收集
口罩佩戴訓(xùn)練集的數(shù)據(jù)主要來源于兩部分:網(wǎng)絡(luò)搜集和行人隨機(jī)抓拍。網(wǎng)絡(luò)搜集為主要數(shù)據(jù)來源,行人隨機(jī)抓拍為次要數(shù)據(jù)來源。
本文從Github及各大開源數(shù)據(jù)集上搜索、下載佩戴口罩人物圖片。同時,為保證訓(xùn)練集的豐富性,本文通過架設(shè)照相機(jī),在長春理工大學(xué)及其附近主要街道對行人進(jìn)行隨機(jī)抓拍,獲取不同時間段、不同地點的照片數(shù)據(jù),并進(jìn)行保存。
(2)數(shù)據(jù)的預(yù)處理
由于YOLO v3采用DarkNet-53網(wǎng)絡(luò)對圖片進(jìn)行特征提取,DarkNet-53網(wǎng)絡(luò)中下采樣倍率為32,所以需要對圖片集進(jìn)行預(yù)處理,將口罩佩戴圖片集中,圖片分辨率大小分為一系列32倍數(shù)的值。
(3)數(shù)據(jù)的篩選
從相機(jī)抓拍得到的圖片數(shù)據(jù),有一部分圖片沒有出現(xiàn)行人以及口罩等主體,這部分圖片對本文研究沒有實際意義,所以將該部分圖片進(jìn)行刪除,本文只使用有行人的圖片作為訓(xùn)練集。為體現(xiàn)改進(jìn)后的網(wǎng)絡(luò)能檢測出口罩佩戴中微小錯誤的優(yōu)勢,本文主要保留目標(biāo)較小的佩戴口罩的行人照片。
最終共篩選出8 000張圖片作為訓(xùn)練集樣本,其中是否佩戴口罩圖片各3 000張、是否正確佩戴口罩圖片各1 000張;同時,按照訓(xùn)練集:測試集=9∶1的比例選取相應(yīng)數(shù)量圖片作為測試集。
(4)數(shù)據(jù)的標(biāo)記
本文采用labelImg工具對圖片進(jìn)行標(biāo)記,利用該標(biāo)記工具,在人工操作過程中只需要在圖片中標(biāo)記出自定義的各種目標(biāo),該工具將會自動生成相對應(yīng)的xml文件可供網(wǎng)絡(luò)讀入。其中l(wèi)abelImg操作界面如圖7所示。
圖7 labelImg操作界面
針對佩戴口罩、未佩戴口罩、正確佩戴口罩及錯誤佩戴口罩,本文有以下規(guī)定:
(1)佩戴口罩:若人臉部分出現(xiàn)口罩即認(rèn)為佩戴口罩,如圖8(a)所示。
(2)未佩戴口罩:若人臉部分沒有出現(xiàn)口罩即認(rèn)為未佩戴口罩,如圖8(b)所示。
(3)正確佩戴口罩:若人臉部分的口、鼻完全被口罩遮擋住即認(rèn)為正確佩戴口罩,如圖8(c)所示。
(4)錯誤佩戴口罩:在佩戴口罩的前提下若人臉部分的口或鼻裸露即認(rèn)為錯誤佩戴口罩,如圖8(d)所示。
圖8 口罩佩戴情況
3.3.1 實驗平臺
由于本文所使用的神經(jīng)網(wǎng)絡(luò)層數(shù)較多,參數(shù)訓(xùn)練較復(fù)雜,對硬件環(huán)境要求較高,需要使用GPU進(jìn)行運算,表1為本實驗硬件配置情況。同時,在計算機(jī)上搭建了用于本實驗的環(huán)境,包括Linux、CUDA、python、OpenCV、anaconda等。
表1 實驗硬件配置情況
3.3.2 網(wǎng)絡(luò)訓(xùn)練
本文使用YOLO v3官網(wǎng)上提供的部分參數(shù)對網(wǎng)絡(luò)進(jìn)行初始化,并隨機(jī)使用訓(xùn)練集中圖片讓網(wǎng)絡(luò)進(jìn)行參數(shù)學(xué)習(xí),經(jīng)過不斷地迭代更新,最終網(wǎng)絡(luò)檢測效果達(dá)到最優(yōu),部分實驗參數(shù)如表2所示。
表2 網(wǎng)絡(luò)參數(shù)表
本文是在原始YOLO v3算法的基礎(chǔ)上對其網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行修改,得到改進(jìn)型YOLO v3算法。該網(wǎng)絡(luò)不僅能識別人臉是否佩戴口罩,還能夠檢測口罩是否佩戴正確。為了體現(xiàn)改進(jìn)型YOLO v3的優(yōu)越性,本文將原始YOLO v3和改進(jìn)型YOLO v3進(jìn)行比較,即分別使用原始YOLO v3和改進(jìn)型YOLO v3對是否佩戴口罩和是否正確佩戴口罩兩種情況進(jìn)行檢測識別,通過對比最終的實驗結(jié)果,分析YOLO v3改進(jìn)前后性能情況。
3.4.1 Loss函數(shù)曲線
在訓(xùn)練過程中,通過繪制損失(Loss)函數(shù)曲線能夠直觀地觀察到預(yù)測值與真實值的偏差程度。本文使用二元交叉熵?fù)p失函數(shù),圖9為對應(yīng)的Loss函數(shù)曲線,其中橫坐標(biāo)表示訓(xùn)練迭代次數(shù),縱坐標(biāo)表示訓(xùn)練過程中的Loss值。
圖9 Loss函數(shù)曲線
由圖9可觀察到,在訓(xùn)練一開始Loss值下降較為迅速,當(dāng)?shù)?xùn)練10次后,Loss值下降較為緩慢,隨后在0.033附近上下浮動,且隨著迭代次數(shù)的增加,浮動范圍越來越小,因此可近似認(rèn)為:當(dāng)?shù)?00次時,Loss值收斂至0.033,結(jié)束訓(xùn)練,所以本文選取迭代100次為最優(yōu)迭代次數(shù)。
3.4.2 網(wǎng)絡(luò)改進(jìn)前后檢測性能對比
本文將檢測任務(wù)分為兩類,一類為檢測是否佩戴口罩,記為Y/N,另一類為檢測是否正確佩戴口罩,記為R/W。圖10為兩類檢測任務(wù)的結(jié)果對比,從圖中可清楚直觀地看出網(wǎng)絡(luò)改進(jìn)前后檢測性能優(yōu)劣。
圖10 網(wǎng)絡(luò)改進(jìn)前后檢測性能對比
由圖10可知,對于檢測是否佩戴口罩,YO?LO v3改進(jìn)前后均有良好的檢測效果,但改進(jìn)型YOLO v3更勝一籌;而對于檢測是否正確佩戴口罩,原始YOLO v3存在明顯的檢測困難,但改進(jìn)型YOLO v3有更優(yōu)的檢測性能。因此,改進(jìn)型YOLO v3網(wǎng)絡(luò)除了能檢測出是否佩戴口罩,還能夠檢測是否正確佩戴口罩。
為了更加具體清晰地突出改進(jìn)型YOLO v3的優(yōu)越性,本文從召回率R(Recall)、精確率P(Precision)、平均精確率(mAP)和Loss值四個方面,針對上述兩種不同的檢測任務(wù),對原始YO?LO v3和改進(jìn)型YOLO v3進(jìn)行對比。實驗結(jié)果如表3、表4所示。
表3 是否佩戴口罩結(jié)果對比表
表4 是否正確佩戴口罩結(jié)果對比表
3.4.3 結(jié)果分析
從實驗結(jié)果可以看出,對于是否佩戴口罩的識別問題,改進(jìn)型YOLO v3的召回率(Recall)、平均精確率(mAP)明顯優(yōu)于原始YOLO v3,雖然精確率(Precision)不及原始YOLO v3,但是兩者相差無幾,除此之外,改進(jìn)型YOLO v3的損失函數(shù)值比原始YOLO v3更低,因此對于是否佩戴口罩的識別問題,改進(jìn)型YOLO v3明顯優(yōu)于原始YOLO v3。對于是否正確佩戴口罩的識別問題,改進(jìn)型YOLO v3在召回率(Recall)、精確率(Precision)、平均精確率(mAP)和Loss值上均優(yōu)于原始YOLO v3。并且就召回率(Recall)和平均精確率(mAP)兩方面,改進(jìn)型YOLO v3的結(jié)果較原始YOLO v3有較大的提升。
3.4.4 網(wǎng)絡(luò)改進(jìn)前后實驗效果對比
為了更加直觀地感受網(wǎng)絡(luò)修改前后的區(qū)別,本文尋找了一些距離相對較遠(yuǎn)的小目標(biāo)進(jìn)行測試,并對檢測圖像進(jìn)行對比分析,具體檢測效果如圖11所示,其中左側(cè)圖片為原始YOLO v3檢測效果,右側(cè)圖片為改進(jìn)型YOLO v3檢測效果。
圖11 檢測效果對比圖
對于圖11中(a),原始YOLO v3識別不出而改進(jìn)型YOLO v3能正確識別;對于圖11(b),原始YOLO v3僅僅識別出是否佩戴口罩,而沒有檢測出是否正確佩戴口罩,但是改進(jìn)型YOLO v3能正確識別口罩佩戴情況;對于圖11(c),原始YOLO v3存在明顯的錯誤識別,而改進(jìn)型YOLO v3均能正確識別。上述例子可以說明改進(jìn)型YOLO v3能夠?qū)嚯x相對較遠(yuǎn)的微小目標(biāo)實現(xiàn)正確的分類識別,而原始YOLO v3網(wǎng)絡(luò)卻存在明顯的檢測困難。
根據(jù)上述實驗結(jié)果可以看到,對于口罩佩戴情況的檢測任務(wù)而言,改進(jìn)型YOLO v3有著更優(yōu)的網(wǎng)絡(luò)性能,因此可以使用改進(jìn)型YOLO v3先檢測面部是否佩戴口罩,再在佩戴口罩的基礎(chǔ)上檢測是否正確佩戴口罩,檢測效果如圖12所示。
圖12 改進(jìn)型YOLO v3檢測效果圖
通過圖12可以看出,改進(jìn)型YOLO v3能夠完成口罩佩戴情況的檢測任務(wù)。
為進(jìn)一步研究干擾改進(jìn)型YOLO v3網(wǎng)絡(luò)檢測結(jié)果的潛在因素,本文又選取檢測中常見的干擾因素,例如檢測視覺、光照強(qiáng)度和人臉膚色進(jìn)行實驗說明,實驗結(jié)果如圖13所示。
圖13 不同干擾因素檢測效果圖
如圖13(a)所示,即使人臉在檢測時存在傾斜角度,改進(jìn)型YOLO v3網(wǎng)絡(luò)依然能檢測出人臉錯誤佩戴口罩;由圖13(b)又可以知道,在夜間或者光線微弱的情況下,網(wǎng)絡(luò)依然有出色的檢測結(jié)果;最后,對于圖13(c),當(dāng)面部膚色較黑且佩戴淺色口罩近距離檢測時,改進(jìn)型YOLO v3網(wǎng)絡(luò)能正確識別,而對于面部膚色較黑又佩戴深色口罩遠(yuǎn)距離檢測時,盡管網(wǎng)絡(luò)提高了對細(xì)節(jié)目標(biāo)語義信息的提取能力,也無法正確檢測。
本文提出了一種基于改進(jìn)YOLO v3算法的面部口罩佩戴檢測算法,針對口罩佩戴問題中常見的細(xì)節(jié)錯誤,原始YOLO v3網(wǎng)絡(luò)難以檢測,本文通過改變YOLO v3網(wǎng)絡(luò)結(jié)構(gòu),建立輸出為4倍降采樣的特征融合目標(biāo)檢測層,提高網(wǎng)絡(luò)對口罩佩戴問題中微小錯誤的召回率和檢測的準(zhǔn)確率;除此之外,采用多尺度訓(xùn)練策略,提高網(wǎng)絡(luò)對輸入圖片尺寸的穩(wěn)健性。實驗結(jié)果表明,改進(jìn)后的YOLO v3算法無論在檢測是否佩戴口罩還是在檢測是否正確佩戴口罩的檢測任務(wù)上均有較高檢測準(zhǔn)確率。最后,本文又對檢測中可能出現(xiàn)的干擾因素進(jìn)行研究,發(fā)現(xiàn)對于不同檢測角度、微弱光線強(qiáng)度下,改進(jìn)型YOLO v3均能正確檢測,而對于面部較黑的檢測者,只有當(dāng)其佩戴淺色口罩近距離檢測時才能被檢測出。綜上所述,改進(jìn)型YOLO v3網(wǎng)絡(luò)能夠滿足口罩佩戴問題的檢測需求。