• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      改進(jìn)YOLO的口罩佩戴實時檢測方法

      2023-01-04 08:09:42程長文陳勁宏
      電子科技 2023年2期
      關(guān)鍵詞:錨定口罩效率

      程長文,陳 瑋,陳勁宏,尹 鐘

      (上海理工大學(xué) 光電信息與計算機(jī)工程學(xué)院,上海 200093)

      隨著全球新冠疫情的爆發(fā),公共場合口罩佩戴檢測的效率就顯得尤為重要。圖像檢測任務(wù)的核心是特征提取。相較于傳統(tǒng)方法,基于深度神經(jīng)網(wǎng)絡(luò)方法的特征提取具備更加豐富和完整的信息,因此本文使用深度學(xué)習(xí)的方法搭配深度學(xué)習(xí)模型來提高口罩佩戴檢測的效率。目前用于目標(biāo)檢測和臉部識別的模型存在一些缺點(diǎn),例如文獻(xiàn)[1]提出的One-stage檢測的R-CNN(Region-based Convolutional Neural Network)以及文獻(xiàn)[2]提出的Faster R-CNN雖然檢測精度良好,但是檢測效率不理想,以至于其使用場景有限;文獻(xiàn)[3]提出的EfficientDet和文獻(xiàn)[4]提出的EfficientNet都是目標(biāo)檢測模型,主要優(yōu)點(diǎn)在于模型自身具有自適應(yīng)縮放的功能,但是其模型的精度和效率在識別任務(wù)中表現(xiàn)不理想;文獻(xiàn)[5]提出的RetinaFace面部識別模型,會捕捉到冗余的臉部特征,造成算力資源的浪費(fèi)。

      針對當(dāng)下疫情發(fā)展的實際需求,本文對于上述模型特點(diǎn)進(jìn)行了總結(jié):(1)大部分模型都是基于目標(biāo)檢測任務(wù)的特點(diǎn),整體效率和精度受限于機(jī)器的性能和檢測的目標(biāo)大??;(2)重疊的目標(biāo)以及體積小的目標(biāo)會導(dǎo)致上述分類模型的識別精度下降[6]。基于以上原因,若將上述模型運(yùn)用到口罩檢測任務(wù)中,口罩佩戴檢測的場所人流密度較大、圖像采集點(diǎn)較遠(yuǎn)、目標(biāo)重合度和大小較復(fù)雜等背景特點(diǎn)會降低模型的效率和精度。

      為此,本文提出了一種改進(jìn)的YOLO[7](You Only Look Once)口罩佩戴實時檢測方法。本文模型在文獻(xiàn)[8]提出的YOLOv4模型的基礎(chǔ)上進(jìn)行了優(yōu)化。YOLO模型的特點(diǎn)是采用單個神經(jīng)網(wǎng)絡(luò)可以一起完成對物品邊界和類別概率的預(yù)測,從而實現(xiàn)端到端的物品檢測。因此,使用YOLO模型可以在保持合理精度的同時提高檢測效率,使其成為真正意義上的實時檢測器。本文主要從3個方面優(yōu)化YOLOv4模型,從而提高模型對人臉口罩佩戴檢測的效率和精度:(1)在檢測效率上,本文在中間層和隱藏層使用了SiLU激活函數(shù),相較于文獻(xiàn)[9]提出的YOLOv3模型中選用的Leaky ReLU激活函數(shù),以及YOLOv4模型中使用的Mish激活函數(shù),SiLU激活函數(shù)提升了模型的運(yùn)算效率。本文模型還添加了Focus結(jié)構(gòu)和自適應(yīng)圖片縮放的策略。其中Focus結(jié)構(gòu)的添加可對3層普通下采樣卷積進(jìn)行參數(shù)量的優(yōu)化,減少參數(shù)量,從而達(dá)到提速的效果。自適應(yīng)縮放有助于加快方法的檢測效率;(2)在泛化性上,本文采用了自適應(yīng)錨定框(Auto Learning Bounding Box Anchors)和優(yōu)化的數(shù)據(jù)增強(qiáng)(Data Augmentation)[10],自適應(yīng)錨定框可以基于不同的數(shù)據(jù)集自動地學(xué)習(xí)分析,從而為每個數(shù)據(jù)集計算出適合的預(yù)設(shè)錨定框。數(shù)據(jù)增強(qiáng)可對解決模型訓(xùn)練過程中的“小對象問題”有著明顯的優(yōu)化,兩者相結(jié)合可提升模型的泛化能力;(3)在特征融合能力的提升上,本文方法將現(xiàn)有YOLOv4中Neck部分的CBL(卷積)替換為CSPNet模型中的CSP2。新的Neck部分的添加,提高了模型融合特征能力。

      圖1為本文所提出的改進(jìn)YOLO模型的框架。圖2為改進(jìn)YOLO檢測方法的訓(xùn)練和檢測流程。

      圖1 改進(jìn)YOLO檢測方法的訓(xùn)練和檢測流程Figure 1. Training and detection process of improved-YOLO detection method

      圖2 改進(jìn)YOLO模型框架Figure 2. Improved-YOLO model framework

      1 YOLO目標(biāo)檢測

      1.1 YOLO的發(fā)展歷程

      YOLO系列是從YOLO、YOLOv2 、YOLOv3和YOLOv4不斷發(fā)展而來的目標(biāo)檢測模型。其與Faster R-CNN單例檢測器將目標(biāo)檢測劃分為一元回歸有所不同。YOLO的框架如圖3所示,其主要思想是將輸入的圖像分割成N×N的網(wǎng)格。該模型對每個網(wǎng)格都進(jìn)行單獨(dú)的檢測,對每個單元格都進(jìn)行邊界框預(yù)測和預(yù)測框的置信度計算。置信度可以反映物體存在于網(wǎng)格中的概率,若存在概率高,則相應(yīng)的置信度就高,反之一樣。置信度的計算式為

      (1)

      每個網(wǎng)格都能預(yù)測目標(biāo)對象的存在概率C??偣差A(yù)測6(5+C)個值,即 (x,y,w,h)以及置信度C。其中(x,y)代表網(wǎng)格的中心坐標(biāo),(w,h)代表網(wǎng)格的寬度和高度。

      受Faster R-CNN的啟發(fā),YOLOv2借鑒了先驗框的思想進(jìn)行檢測,可以簡化問題并簡化網(wǎng)絡(luò)的學(xué)習(xí)過程。除了先驗框外,YOLOv2還引入了批處理的歸一化[11]和跳躍連接[12],顯著提升了定位和回溯的能力。

      圖3 YOLO的模型預(yù)測Figure 3. YOLO modelprediction

      基于YOLOv2,研究人員又提出了更優(yōu)的目標(biāo)檢測框架YOLOv3。受文獻(xiàn)[13]提出的特征金字塔框架的推動,YOLOv3主要升級了檢測的維度。其分別在3個不同的維度檢測,有效地解決了檢測對象大小變化的問題。與以往的基于區(qū)域識別的檢測器相比,YOLO模型使用了3個主要的模塊,本文將在以下章節(jié)逐個說明。

      1.2 主干網(wǎng)絡(luò)部分(Backbone)

      CSPDenseNet的前饋傳遞和權(quán)重更新計算式分別如式(2)~式(7)所示

      (2)

      (3)

      (4)

      (5)

      (6)

      (7)

      式中,*表示卷積操作;[·]表示堆疊;k表示密集層個數(shù);f表示權(quán)重更新的函數(shù)??梢园l(fā)現(xiàn),Dense Layers的梯度是各自積分的,X″0是獨(dú)立積分的。

      1.3 Neck部分(SPP模塊和FPN+PAN模塊)

      Neck部分主要是為了更好地提取融合特征,從而提高模型性能。其中,Spatial Pyramid Pooling(SPP)[17]模塊使用了最大池化,將不同尺度的特征圖進(jìn)行Concat操作,具體實現(xiàn)如式(4)和式(5)所示。另外,F(xiàn)eature Pyramid Network(FPN)[18]特征金字塔網(wǎng)絡(luò)其實就是不同尺度的特征融合預(yù)測。PAN部分主要借鑒了圖像分割領(lǐng)域PANet[19]。YOLOv4在PAN部分運(yùn)用了其拆分的思想,從而進(jìn)一步提高特征提取的能力。Neck部分的模型結(jié)構(gòu)如圖4所示。

      (8)

      (9)

      (11)

      (12)

      (13)

      (14)

      (15)

      式中,Kh表示核的高度;Sh表示高度方向的步長;Ph表示高度方向的填充數(shù)量,需要乘以2;ceil(·)函數(shù)表示向上取整,用于核和步長的計算;floor(·)函數(shù)表示向下取整,用于Padding的計算。

      圖4 Neck部分的模型結(jié)構(gòu)Figure 4. Model structure ofthe Neck part

      1.4 Head網(wǎng)絡(luò)輸出層

      FPN輸出的3個分支,通過兩層卷積輸出預(yù)測的Head。錨定框的應(yīng)用是網(wǎng)絡(luò)輸出層的主要特點(diǎn)。Head層的最終輸出向量包含對象得分、類概率和包圍框。YOLOv3、YOLOv4與本文模型都是使用一樣結(jié)構(gòu)的Head層。不同大小的物體在模型中需要使用不同縮放尺寸的Head來檢測,其中每個Head一共使用3×(2個類+1個概率+4個坐標(biāo))個錨定框,一共18個Channels。

      2 改進(jìn)YOLO的檢測方法

      2.1 輸入層優(yōu)化

      現(xiàn)有的YOLOv4模型使用了標(biāo)準(zhǔn)的馬賽克增強(qiáng)(Mosaic Augmentation)。Mosaic Augmentation參考了CutMix[20]數(shù)據(jù)增強(qiáng)方式。CutMix數(shù)據(jù)增強(qiáng)的原理就是將兩張圖片按照一定比例地混合合成一張新的圖片,以此來有效地利用訓(xùn)練像素并保留區(qū)域信息來維持正則化效果。Mosaic數(shù)據(jù)增強(qiáng)的改進(jìn)在于,一次性讀取4張圖片,并將4張圖片進(jìn)行相應(yīng)的翻轉(zhuǎn)、縮放和色域變化之后按照比例混合輸出一張圖片。這樣做的優(yōu)勢在于豐富了檢測物體的背景,提高了模型對于不同背景的泛化能力。

      本文的方法優(yōu)化了數(shù)據(jù)增強(qiáng)模塊,添加了圖像的視角變換,色域變換方面拆分為色度、飽和度和明度3個方向調(diào)整。添加了相應(yīng)參數(shù)的設(shè)置文件,可以依據(jù)不同數(shù)據(jù)集手動調(diào)整相應(yīng)變換的概率。表1顯示了可以調(diào)整的參數(shù)清單。

      表1 數(shù)據(jù)增強(qiáng)可以調(diào)整的參數(shù)

      在自適應(yīng)錨定框的計算方面,對于不同的數(shù)據(jù)集和檢測目標(biāo),在YOLO模型中需要初始設(shè)定適合訓(xùn)練數(shù)據(jù)集的錨定框尺寸。在模型進(jìn)行訓(xùn)練中,模型會在初始的錨定框上輸出預(yù)測框,從而和數(shù)據(jù)集中標(biāo)注的真實框進(jìn)行對比,計算兩者的置信度,再來反向更新預(yù)測框,從而優(yōu)化網(wǎng)絡(luò)的參數(shù)。所以采用多尺度預(yù)測目標(biāo)區(qū)域和類別信息[21]對模型的優(yōu)化尤為重要,圖5所示就是針對本文數(shù)據(jù)集計算得出的錨定框。

      圖5 本文數(shù)據(jù)集計算得出的初始化錨定框Figure 5. Boundingbox anchors from the data set in this study

      現(xiàn)有的YOLOv3和YOLOv4初始化錨定框的設(shè)定需要通過單獨(dú)的kmeans_for_anchors.py程序單獨(dú)計算。本文將錨定框的計算放置到訓(xùn)練代碼中,從而實現(xiàn)每次訓(xùn)練時能夠自適應(yīng)地計算不同數(shù)據(jù)集的最優(yōu)錨定框。

      在常見的目標(biāo)檢測模型中,自適應(yīng)圖片縮放對輸入模型的圖片尺寸有著長寬的要求。為了能夠盡可能地利用不同尺寸的數(shù)據(jù)集,模型需要對數(shù)據(jù)集中不同圖片的尺寸進(jìn)行調(diào)整以適應(yīng)模型的輸入要求。在YOLO模型中,常用的檢測尺寸有416×416和608×608。本文模型訓(xùn)練的是608×608。如圖6所示為對800×600長寬的圖像進(jìn)行縮放的過程。然而,現(xiàn)有的YOLO模型無論訓(xùn)練還是檢測都是將圖片強(qiáng)制縮放到指定的尺寸。本文對此進(jìn)行了優(yōu)化,在訓(xùn)練時對數(shù)據(jù)集全部縮放到預(yù)定的尺寸,但在方法檢測時采用np.mod(X,32)的計算方式縮減黑邊,從而提高模型檢測的效率。

      圖6 自適應(yīng)圖片縮放的過程Figure 6. The process of adaptive image scaling

      本文方法在檢測圖像中使用自適應(yīng)縮放的具體實現(xiàn)如圖7所示。

      圖7 自適應(yīng)圖片縮放優(yōu)化步驟Figure 7. Adaptiveimage scaling optimization steps

      自適應(yīng)縮放的優(yōu)化主要分為3步:(1)計算得出最小的縮放系數(shù);(2)由最小的縮放系數(shù)確定圖像縮放的比例;(3)通過函數(shù)np.mod(X,32)確定填充的高度,從而得到變換后的圖片。本文方法的網(wǎng)絡(luò)經(jīng)歷了5次下采樣,故將函數(shù)的第2個參數(shù)設(shè)置為32,即25=32,所以用32進(jìn)行取余操作。

      2.2 Neck部分優(yōu)化

      在YOLOv4的Neck部分中,使用的是CBL。本文為了加強(qiáng)模型的特征融合能力,參考了CSPNet模型中的CSP2結(jié)構(gòu),將Neck部分的CBL部分替換為CSP2。具體的模型框架如圖8所示。

      圖8 Neck部分優(yōu)化結(jié)構(gòu)Figure 8. Neck partially optimized structure

      2.3 激活函數(shù)優(yōu)化

      本文使用SiLU(Sigmoid-Weighted Liner Unit, SiLU)激活函數(shù)替換YOLOv4現(xiàn)有的Mish激活函數(shù)。Mish函數(shù)的數(shù)學(xué)表達(dá)式如式(16)所示。SiLU也稱為Swish激活函數(shù),最初是由Google Brain所提出的,實際上是Sigmoid函數(shù)的改進(jìn)版本。SiLU的表達(dá)式及其導(dǎo)數(shù)表達(dá)式如式(17)和式(18)。

      (16)

      (17)

      (18)

      2.4 添加Focus結(jié)構(gòu)

      在YOLOv3和YOLOv4模型中并沒有Focus結(jié)構(gòu)。本文在輸入層之后添加Focus結(jié)構(gòu),主要是進(jìn)行切片操作,對3層普通下采樣卷積進(jìn)行改進(jìn)。改進(jìn)后參數(shù)量減少,可以達(dá)到提速的效果。圖9展示的是Focus結(jié)構(gòu)中的切片示意圖,4×4×3的特征圖像經(jīng)過切片之后轉(zhuǎn)變?yōu)?2×12的特征圖像。

      圖9 Focus切片示意圖Figure 9. Schematic diagram of Focus slice

      本文方法輸入的尺寸為608×608×3,將其輸入到Focus結(jié)構(gòu)中,對其進(jìn)行切片操作,先變換為304×304×12的特征圖像,隨后輸入到模型經(jīng)過72個卷積核的卷積操作,最終變換為304×304×72的特征圖像。

      3 實驗與分析

      3.1 數(shù)據(jù)集的獲取

      本文數(shù)據(jù)集主要來源于MAFA(Masked Faces)[22]data set(基本都是戴口罩的圖片)和WIDER FACE data set(基本都是不戴口罩的圖片)。數(shù)據(jù)集總共7 859張,其中包含6 120張訓(xùn)練集和1 839張驗證集。訓(xùn)練集包含來自MAFA的3 006張圖片以及WIDER Face的3 114張圖片,驗證集包含MAFA的1 059張圖片以及WIDER Face的780張圖片。圖10顯示了不同數(shù)據(jù)集不同場景的數(shù)據(jù)圖片。

      圖10 數(shù)據(jù)集圖片類別 (a)室外口罩佩戴 (b)多人未佩戴口罩 (c)室內(nèi)佩戴口罩 (d)白色口罩佩戴 (e)充足光線未佩戴口罩Figure 10. Data set image category(a)Wearing mask outdoors (b)Many people without masks (c)Wearing mask indoors (d)Wearing a white mask (e)Sufficient light and mask is not wearing

      本文數(shù)據(jù)集的圖片由不同尺寸的圖片組成,由訓(xùn)練機(jī)器的顯存大小決定經(jīng)過Letterbox處理成416×416或者608×608。本文數(shù)據(jù)集標(biāo)注采用了LabelImg軟件,數(shù)據(jù)集的Label分布如圖11所示。

      圖11 本文數(shù)據(jù)集Label

      3.2 實驗環(huán)境

      為驗證本文改進(jìn)YOLO方法的準(zhǔn)確性和有效性,在表2所示參數(shù)的環(huán)境平臺下進(jìn)行實驗。

      表2 本文實驗環(huán)境及配置

      3.3 實驗參數(shù)和評價指標(biāo)

      本文實驗優(yōu)化后的模型配置參數(shù)如表3所示。在主要參數(shù)相同的情況下驗證不同模型的檢測效果,用以驗證本文方法的有效性和準(zhǔn)確性。

      表3 模型的參數(shù)設(shè)置

      本文實驗屬于二分類模型,主要的評價指標(biāo)分為召回率(Recall)、精確率(Precision)、F1-Score、平均精度(mean Average Precision,mAP)和幀率(Frames Per Second,F(xiàn)PS)。二分類評價M指標(biāo)的計算依賴于混淆矩陣,具體放入結(jié)構(gòu)如表4所示。

      表4 二分類混淆矩陣

      不同評價指標(biāo)的計算式如式(19)~式(21)所示。

      (19)

      (20)

      (21)

      mAP的計算方式為所有分類的AP進(jìn)行平均所得。AP的計算方式為Recall和Precision的曲線(RP曲線)與坐標(biāo)軸構(gòu)成圖形的面積。FPS為每秒傳輸幀數(shù),主要用來衡量方法的檢測效率。

      3.4 對比實驗

      目前已有多種口罩佩戴檢測的方法,而過去主要嘗試的檢測模型為RetinaFace[23],該模型僅在少量的數(shù)據(jù)集上進(jìn)行了實驗,數(shù)據(jù)集僅有3 000張,并且模型也進(jìn)行了更多的無用面部特征點(diǎn)的檢測,消耗算力且降低效率。DFS[24]模型實現(xiàn)的核心在于人臉檢測。該方法運(yùn)用了特征融合、語義分割和注意力學(xué)習(xí),在口罩佩戴的檢測中主要依賴模型結(jié)構(gòu)。此外,該模型訓(xùn)練費(fèi)時,檢測效果對圖像質(zhì)量依賴度較大,所以效果不太理想。RetinaNet[25]模型的實驗受限于數(shù)據(jù)集和模型的特點(diǎn),檢測精度和檢測效率都不高,檢測精度低于90%且單張圖片的檢測檢測時間超過200 ms。本文改進(jìn)YOLO方法在本文數(shù)據(jù)集中的檢測精度和效率上都有所提高。本文數(shù)據(jù)集場景較多,能夠使訓(xùn)練出來的模型適應(yīng)不同的環(huán)境。單張圖片的檢測使用本文方法在NVIDIA GTX1080Ti(11 GB)上的檢測耗時低于30 ms,F(xiàn)PS大于25就可以歸為實時檢測。本文模型檢測的FPS一般維持在30,且檢測分類的判別數(shù)值也相對較高,對于一些復(fù)雜場景和目標(biāo)重疊的情況也有較好的識別精度。

      表5 不同方法和不同數(shù)據(jù)集檢測效果對比

      3.5 消融實驗

      消融實驗主要用來分析不同網(wǎng)絡(luò)模型對整個方法的影響,該實驗方法常用于深度學(xué)習(xí)領(lǐng)域。

      本文研究了YOLOv4、YOLOv4-tiny和改進(jìn)YOLO的消融效果。實驗的數(shù)據(jù)集包含7 959張圖片,訓(xùn)練和檢測的比例為9∶1。圖12顯示了改進(jìn)YOLO模型的消融實驗檢測效果。對所有人臉進(jìn)行檢測,戴口罩和未佩戴口罩檢測出的標(biāo)簽不同,其中face_mask是佩戴口罩的標(biāo)簽,face是未佩戴口罩的標(biāo)簽。表6顯示了實驗的一些數(shù)據(jù),這些數(shù)據(jù)表示當(dāng)置信閾值等于0.5時獲得的一些數(shù)據(jù)值。從表中可以看出,新的數(shù)據(jù)增強(qiáng)方案、CSP2結(jié)構(gòu)的引入和Focus結(jié)構(gòu)的添加以及新的激活函數(shù)等優(yōu)化顯著提高了方法的查全率和查準(zhǔn)率,從而使F1的分?jǐn)?shù)從97.02%提高到97.35%。另外,自適應(yīng)圖片縮放在于保證準(zhǔn)確率的情況下提高了檢測效率,這對于使用工程化建設(shè)有一定的幫助。表6的參數(shù)證明了本文一些優(yōu)化的有效性,它提供了口罩以及小目標(biāo)檢測的解決方案。圖13顯示了3種不同模型的查準(zhǔn)率和召回率曲線,曲線已進(jìn)行歸一化操作,可以看出本文模型具有一定的優(yōu)勢。

      圖12 改進(jìn)YOLO的消融實驗檢測效果Figure 12.Improved-YOLO ablation experiment detection effect

      表6 YOLOv4、YOLOv4-tiny和改進(jìn)YOLO的消融實驗

      圖13 YOLOv4、YOLOv4-tiny和改進(jìn)YOLO的查準(zhǔn)率和召回率曲線Figure 13. Precision andrecall curves of YOLOv4, YOLOv4-tiny and improved-YOLO

      4 結(jié)束語

      本文提出了一種基于YOLOv4分割模型的人臉口罩佩戴實時檢測模型的實現(xiàn)方法。該方法可以在性能較低的設(shè)備上保證視頻流的實時檢測,并且檢測精度具有優(yōu)勢。優(yōu)化之后的方法在LabelImg工具手工標(biāo)注的數(shù)據(jù)集進(jìn)行了離線訓(xùn)練。此外,方法的自適應(yīng)圖片縮放提高了工程化的能力。該方法可以擴(kuò)展到多種檢測場景,例如信號燈[26]、安全帽、護(hù)目鏡、工牌等。本文方法還擁有進(jìn)一步優(yōu)化的空間,例如繼續(xù)優(yōu)化數(shù)據(jù)集的增強(qiáng)方法,優(yōu)化模型層級適應(yīng)不同檢測需求,優(yōu)化小樣本的方法效果等,從而提高檢測精度和效率。

      猜你喜歡
      錨定口罩效率
      錨定目標(biāo)任務(wù) 譜寫嶄新篇章
      錨定三個聚焦 深化專項整治
      南京浦口區(qū)錨定消險除患 強(qiáng)化兩個根本
      COF-42:一種理想的鋰硫電池錨定材料
      提升朗讀教學(xué)效率的幾點(diǎn)思考
      甘肅教育(2020年14期)2020-09-11 07:57:42
      戴口罩的苦與樂
      意林(2020年9期)2020-06-01 07:26:22
      因為一個口罩,我決定離婚了
      海峽姐妹(2020年4期)2020-05-30 13:00:08
      霧霾口罩
      要戴口罩的霧霾天
      跟蹤導(dǎo)練(一)2
      中西区| 伊川县| 淮安市| 偏关县| 凤山县| 泗洪县| 桃园县| 牟定县| 平潭县| 阿坝| 南城县| 和硕县| 夏邑县| 乌鲁木齐市| 珠海市| 运城市| 钟山县| 太仓市| 若尔盖县| 鹤岗市| 英山县| 墨竹工卡县| 鄂州市| 宜宾市| 阜平县| 抚远县| 焦作市| 台山市| 阿尔山市| 阳信县| 江津市| 叙永县| 泸西县| 麻栗坡县| 万全县| 天祝| 伊宁县| 伊吾县| 阜康市| 阜宁县| 固阳县|