亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        YOLOv4口罩檢測算法的輕量化改進

        2021-09-07 00:48:22葉子勛張紅英
        計算機工程與應用 2021年17期
        關鍵詞:特征提取口罩卷積

        葉子勛,張紅英

        1.西南科技大學 信息工程學院,四川 綿陽621010

        2.西南科技大學 特殊環(huán)境機器人技術四川省重點實驗室,四川 綿陽621010

        自2019年12月新型冠狀病毒肺炎(COVID-19)爆發(fā)以來,疫情迅速蔓延到世界各國,逐漸成為全球性瘟疫。不同程度地影響著人們的生活方式和社會經濟的發(fā)展,人類的生命健康受到了嚴重的威脅。在外部環(huán)境不斷變化的情況下,我國的疫情控制和預防工作仍然面臨嚴峻挑戰(zhàn)。目前學術界認為新型冠狀病主要通過呼吸道傳播和飛沫傳播,但是不能排除其通過氣溶膠傳播的可能。理論上,使用醫(yī)用外科口罩可以有效降低呼吸道暴露在病毒中的概率,它能阻止病原體通過飛沫傳播,具有雙向的隔離和保護作用。開發(fā)一套人臉口罩佩戴檢測系統(tǒng)對于公眾防范新型冠狀病毒感染,降低感染風險和維持人體基本健康具有重要意義[1]。

        至今為止,目標檢測領域有著很多優(yōu)秀的算法。它們在方法步驟上可以分為兩類,一類是以YOLO[2-5]系列和SSD[6]系列為代表的基于回歸的One-Stage算法,另一類是以Fast-CNN[7]和Faster-CNN[8]為代表的基于候選區(qū)域的Two-Stage算法。One-Stage算法檢測速度快,但檢測精度低。相反,Two-Stage具有更好的檢測精度,然而,由于其復雜的網絡結構,其檢測速度較差。從YOLOv1到YOLOv4[9],YOLO算法在經過了數次的迭代之后,它逐漸彌補了許多缺陷,同時兼顧了準確度和實時性能。在保持速度優(yōu)勢的前提下,還在檢測精度上有了明顯進步。尤其是在微型目標的檢測中表現(xiàn)得更加敏感。鄧黃瀟[10]提出了運用遷移學習和Retina Net網絡對口罩佩戴檢測,驗證集下mAP到達86.5%。肖俊杰[11]運用了YOLOv3和YCrCb方法,口罩佩戴檢測AP達89%,同時正確佩戴識別AP達82.5%。王兵等[12]增加Max Moudle結構和自下而上的多尺度融合提出了一種改進的YOLOv4-tiny輕量化網絡,驗證集下mAP達96.2%。雖然他們在網絡模型上做出了一定的優(yōu)化,但是沒有考慮到更加復雜的應用場景,如光照條件的不充足。張修寶等[13]提出了一種使用了特征融合和分割監(jiān)督的全天候自然場景下口罩識別算法,在自建數據集上取得了99.50%的識別準確率。但其測試集數據基本為手機拍攝的網約車內部環(huán)境,背景單調、乘客數量較少,沒有考慮到人流量較大的公共場合多人檢測應用場景。

        本文針對上述問題,提出了一種適應暗光環(huán)境下多人檢測的改進型輕量化YOLOv4-Lite人臉口罩識別算法。主要改進如下:

        (1)針對YOLOv4主干特征提取網絡參數量大和特征提取不充分的問題,使用了MobileNetv3輕量化網絡進行替換,降低了模型運算量。引入了自注意力機制,提升了檢測精度。

        (2)針對YOLOv4的加強特征提取網絡模型卷積塊運算量龐大的問題,提出了使用深度可分離卷積塊進行替換,極大地提升了檢測速度。

        (3)使用了SiLU激活函數代替MobileNetv3淺層網絡中的ReLU激活函數,進一步提升了算法的檢測精度,優(yōu)化了模型訓練的收斂效果。

        (4)數據增強方面,在馬賽克數據算法的基礎上,引入了圖片伽馬變換將圖片高亮度部分進行非線性灰度值壓縮,減少圖片亮部細節(jié),以達到模擬暗光環(huán)境的目的,使得算法適應更加復雜的現(xiàn)實場景。

        1 本文網絡結構

        改進后的輕量化YOLOv4-Lite人臉口罩識別網絡主要包含了以下三部分:

        (1)第一部分是由優(yōu)化后MobileNetv3構成的主干特征提取模塊,這一部分的功能是對輸入圖片數據集進行初步特征提取。經初步特征提取后可以得到三個有效特征層。分別為52×52的大目標特征層、26×26的中目標特征層和13×13的小目標特征層。

        (2)第二部分是由SPPNet和PANet構成的特征加強提取模塊,這一部分的功能是對經過主干特征提取網絡提取到的三個初步特征層進行特征融合,從而得到更有泛化性的三個優(yōu)化特征層。

        (3)第三部分是由根據輸入特征進行分類和回歸預測的YOLO-Head預測模塊。這一部分的功能是對經特征加強提取后得到的優(yōu)化特征層使用3×3和1×1的卷積塊組合來獲得最終的預測結果。

        整體網絡結構如圖1所示,下面將對網絡結構的設計和參數設置分模塊闡述。

        圖1 整體網絡結構圖Fig.1 Overall network structure diagram

        1.1 主干特征提取網絡

        Howard等[14]在2017年提出了一種適應移動和嵌入式視覺應用的輕量級模型MobileNetv1。MobileNetv1采用了流線型的架構,使用深度可分離的卷積并引入了兩個簡單的全局超參數,使得其可以有效地平衡實時性和準確性。這些超參數允許模型構建者根據問題的約束條件或是應用場景量身打造適合自己的深度學習模型。MobileNet在短時間內迅速衍生了MobileNetv1、MobileNetv2[15]、MobileNetv3[16]三個版本。作為MobileNet系列的新成員。MobileNetv3有兩個版本,v3-Large和v3-Small,適合不同的資源需求。在Imagenet分類任務中,v3-Small比MobileNetv2提高了約3.2%的準確率和15%的檢測速度。v3-Large比MobileNetv2提高了約4.6%的準確率,和5%的檢測速度。與使用MobileNetv2相比,它在COCO數據集上能達到同樣的精度,且速度提升了25%。

        表1給出了MobileNetv3的整體結構。此表共有5列:

        (1)第一列Input Shape代表輸入特征層的尺度。如表1所示,經過8個卷積層后,特征層的尺度變成了282×40,其中28代表了輸入特征層的長度和寬度,40代表通道數(Channel),將這一層標記為out1傳入YOLO的加強特征提取網絡中,并分別將12層和14層的輸出標記為out2、out3重復上述操作。

        表1 MobileNetv3結構Table 1 Structure of MobileNetv3

        (2)第二列Operator代表卷積核的類型與大小,conv2d,n×n表示大小為n×n的一般卷積,n×n則表示使用了深度可分離卷積代替一般卷積。

        (3)第三列SE(Squeeze and Excitation)用來表明此層網絡是否引入了輕量注意力機制。

        (4)第四列AF(Activation Function)表示使用激活函數的類型,HS代表hard-swish激活函數,RE代表ReLU6激活函數。

        (5)第五列Stride代表每次卷積的步長,如果步長為2,下一個特征層的寬高尺寸將是上一個特征層的一半。

        1.1.1 深度可分離卷積

        MobileNetv3使用深度可分離卷積(DepthWise Separable Conv)來代替一般卷積塊,深度可分離卷積由一個空間濾波能力較強的深度卷積(DepthWise Conv)和一個起到線性組合作用的點卷積(PointWise Conv)組合而成。這樣做可以極大地減少模型的理論參數量(Params)和運算量(Floating Point Operations,F(xiàn)LOPs)。

        標準卷積層將win×hin×cin特征層in作為輸入,并生成wout×hout×cout輸出特征層out,其中hin、win分別對應輸入特征層的高度和寬度,cin是輸入特征層的通道數,hout、wout分別對應輸出特征層的高度和寬度,cout為輸出特征層的通道數。

        標準卷積塊使用的是大小為k×k×cin×cout的卷積核K,其中k是卷積核的寬、高,cin是輸入通道數,cout是輸出通道數。標準卷積塊設置步長和填充均為1進行一般卷積的計算方式如下:

        參數量Params直接決定了深度學習模型的大小,可以等效為算法的空間復雜度。當前先進目標檢測算法的Params量級分布在幾百萬到幾千萬之間。分別使用一般卷積和深度可分離卷積的參數量計算公式為:

        FLOPs指的是深度學習模型在計算過程中的浮點數運算量,可以等效為算法的時間復雜度,運算量直接關系到目標檢測算法的實時檢測性能。輕量化目標檢測算法的運算量約為幾十MB,一些復雜的深度學習模型運算量單位甚至能達到GB。分別使用一般卷積和深度可分離卷積的運算量計算公式為:

        與標準卷積相對比,使用深度可分離卷積的運算量減少比例可達:

        若采用3×3的卷積核進行卷積運算,則替換為深度可分離卷積后的運算量將減少到原來的1/8至1/9。

        標準卷積和深度可分離卷積的圖解如圖2所示。

        圖2 深度可分離卷積圖示Fig.2 Graph of DepthWise Conv

        1.1.2 殘差倒置結構

        殘差倒置結構可以將輸入特征拓展到更高的維度,以增加在每個通道上的非線性變化。MobileNetv3有一個非常重要的特點就是使用了殘差倒置結構(Inverted resblock),整個MobileNetv3都由殘差倒置結構所組成。傳統(tǒng)的殘差網絡(Residual block)是block的中間通道數少,而兩端的通道數多。與之不同的是,殘差倒置結構則是block的中間通道數多,而兩端的通道數少。MobileNetv3中的殘差倒置結構如圖3所示。

        見圖3的左半部分可知,MobileNetv3中的殘差倒置結構可以分為三部分:

        圖3 Inverted resblock圖示Fig.3 Graph of Inverted resblock

        (1)第一部分首先對輸入特征層進行1×1的一般卷積實現(xiàn)升維。然后使用批次標準化處理層(Batch Normalization Layer)對特征進行歸一化處理。經過大量實驗數據的證明,在激活函數之前添加批次標準化處理可以有效地使損失函數更加平滑且有利于梯度下降。

        (2)第二部分使用3×3的深度可分離卷積,然后接上批次標準化處理層和ReLU6激活函數。而傳統(tǒng)的殘差結構在這一部分使用的是3×3的一般卷積。Mobile-Netv3設置升維超參數Channel=6,也就是在此處將通道數變成上一層的6倍。使得倒置殘差網絡看起來中間粗,兩頭細。

        (3)第三部分使用1×1的一般卷積實現(xiàn)降維,然后接上批次標準化處理層。與傳統(tǒng)殘差網絡不同的是,倒置殘差結構在這一部分去除了最后的ReLU6激活函數。

        見圖3的右半部分可知,殘差倒置網絡使輸入部分與左半部分直接融合而作為殘差邊。

        1.1.3 注意力機制

        MobileNetv3將擠壓和激勵輕量級注意機制引入到了自己的線性瓶頸結構中。與傳統(tǒng)殘差網絡(ResNet)不同的是,輕量級注意機制放置被放置在深度卷積(DepthWise Conv)之后,只有這樣才能最大限度地發(fā)揮其的作用。

        擠壓和激勵輕量級注意機制如圖4所示,此輕量注意力機制通過兩個關鍵操作,擠壓(Squeeze)和激勵(Excitation)來獲取每個輸入特征通道的重要程度,然后使用重要程度去給每一個特征通道賦予一個權值,從而讓卷積網絡重點關注某些特征通道,即激勵對識別任務有用的特征通道,并抑制對識別任務無用的特征通道。

        圖4 輕量注意力機制Fig.4 Squeeze and excitation attention

        如圖4所示,輸入一個特征層X,其特征通道數為C1,經過卷積等一般變換后得到一個通道數為C的特征層U。與傳統(tǒng)卷積網絡不同的是,接下來將通過三步引入輕量注意力機制。

        (1)第一步為擠壓(Fsq),通過全局池化(Global Pooling),將每個通道的二維特征H×W壓縮為一個值,由于這個值是根據二維特征所有數值計算出來的,所以具有全局的感受野,擠壓操作之后的特征層通道數保持不變,其大小為1×1×C。

        (2)第二步為激勵(Fex),給每個通道分別生成不同的權值,在圖4中使用不同的顏色代表這些權值,以使得這個過程更加直觀。在MobileNetv3中這一步還需要插入一個全連接層接上ReLU激活函數以及一個全連接層接上sigmoid激活函數。

        (3)第三步為縮放(Fscale),將第二步得到的權值逐通道與特征層U相乘,最終得到帶注意力機制的特征層X2。

        Hu等[17]經過大量實驗證明,在分類任務中使用此輕量化注意力機制都會帶來一定的性能提升。此外,MobileNetv3提出一種新的激活函數swish。該函數具有無上界、有下界、平滑、非單調的特點,在網絡模型深層部分的表現(xiàn)上優(yōu)于ReLU激活函數。swish激活函數的計算公式為:

        但是swish計算消耗巨大,于是使用其近似函數hard-swish代替。swish和hard-swish激活函數如圖5所示,hard-swish的計算公式為:

        圖5 swish和hard-swish激活函數圖示Fig.5 Graph of swish and hard-swish

        在此近似函數中使用ReLU6,有兩個原因:

        (1)大量實驗數據證明使用ReLU6或ReLU激活函數在分類實驗中在準確性沒有明顯差異,但是從軟件部署角度來看,近乎所有的硬件和軟件框架都提供了ReLU6的優(yōu)化實現(xiàn)。

        (2)其次使用ReLU6激活函數可以消除使用sigmoid的不同近似激活函數而引起的潛在精確度損失風險。實驗也表明,用基于ReLU6實現(xiàn)的hard-swish激活函數可以使模型的推理速度增加近15%。

        1.1.4優(yōu)化后的MobileNetv3

        MobileNetv3淺層部分網絡使用ReLU作為激活函數。其計算公式如下:

        與sigmoid和tanh系列的激活函數相比,ReLU具有以下特點:

        (1)使用梯度下降法時,模型的收斂速度更快。

        (2)不同于sigmoid和tanh系列激活函數需要進行指數運算,ReLU只需提供一個閾值就能繪制出,因此模型的運算量(FLOPs)得以降低。

        (3)當輸入值為負時,ReLU輸出始終為0,其一階導數也始終為0,這樣會導致神經元不能更新參數,這種現(xiàn)象叫做“Dead Neuron”。

        本文優(yōu)化后的MobileNetv3特征提取網絡采用SiLU(Sigmoid Weighted Liner Unit)代替ReLU成為淺層部分網絡的激活函數。SiLU和其一階導數的計算公式如下:

        在輸入值大于0時,SiLU與ReLU激活函數大致相等(詳見圖6)。在輸入值小于0時,激活函數趨近于0。與ReLU(以及其他常用的激活函數,如sigmoid和tanh)不同,SiLU激活函數并不是單調增加的(詳見圖7),它有一個全局最小值約為?0.28。SiLU的另一個特點是它具有更好的穩(wěn)定性,Elfwing等[18]在實驗中證明了這一點:深層的卷積神經網絡往往會遇到梯度爆炸(Gradient exploding problem)的問題,當權值過大時,在激活函數的作用下,大于1的值將不斷相乘,梯度在迭代中呈指數級增長,最終導致梯度爆炸。在導數為零的情況下,全局最小值可起到“軟底”的作用,它可以抑制大權值的更新,從而避免梯度爆炸。

        圖6 ReLU和SiLU激活函數圖示Fig.6 Graph of ReLU and SiLU

        圖7 ReLU和SiLU激活函數一階導數圖示Fig.7 Graph of ReLU-grad and SiLU-grad

        表2給出了改進后的MobileNetv3結構,在第四列AF中,用SI代替RE,其中SI表示使用SiLU激活函數。

        表2 改進MobileNetv3結構Table 2 Structure of improved MobileNetv3

        1.2 加強特征提取網絡

        1.2.1 SPPNet

        由于后續(xù)的YOLO-Head預測網絡模塊需要輸入固定大小的矩陣。當神經卷積網絡需要預測形態(tài)大小各異的圖片數據集時,直接經過裁剪或縮放等一系列操作會導致圖片幾何變形,從而丟失一些原有信息,預測網絡的置信度也會因此受到影響。SPPNet(Spatial Pyramid Pooling Network)可以使輸入圖片不經過直接裁剪或縮放也可以得到固定大小的輸出,其結構如圖8所示,實現(xiàn)流程如下:

        圖8 SPPNet結構圖Fig.8 SPPNet structure diagram

        (1)首先對MobileNetv3特征提取網絡中的out3特征層連續(xù)進行三次Conv2D_BN_Leaky卷積。

        (2)將經過三次卷積之后的特征分別進行四個不同尺度的最大池化(Max pooling)處理,四種池化核的大小分別是5×5、9×9、13×13和1×1。其中1×1池化就是對輸入特征不進行任何處理。

        (3)將經過四種不同尺度最大池化后的特征層進行特征融合。然后再次進行三次Conv2D_BN_Leaky卷積,并將最終特征層輸入到后續(xù)的PANet特征提取金字塔中。

        1.2.2 PANet

        PANet是實例分割算法(Instance segmentation algorithm)中的一種,圖9為本文優(yōu)化后的PANet網絡結構,與YOLOv4原版PANet不同的是,其輸入特征層的尺寸有所變化。圖9中(a)部分是一般的特征金字塔結構,在完成特征金字塔從下到上的特征提取后,還需要實現(xiàn)(b)部分從上到下的特征提取,這就使得PANet在結構上類似于一個金字塔和倒置金字塔的并列組合。

        圖9 優(yōu)化后PANet結構圖Fig.9 Improved PANet structure diagram

        本文將經過主干特征提取網絡得到的out1、out2和經過SPPNet加強特征提取得到的特征層接入PANet結構中,這樣可以更有效地增加感受野。

        1.3 預測網絡

        YOLO-Head利用從PANet結構獲取到多尺度的特征進行回歸與分類預測。在這部分中,PANet分別提供了三個特征層,尺寸分別為76×76×256、38×38×512、19×19×1 024對應中、中下和下層預測框。YOLO-Head輸出矩陣尺度分別是76×76×255、38×38×255、19×19×255。第三個維度是255,是因為它可以拆分為3×(80+5)。80是COCO數據集中的樣本分類數,5又可以拆分為1+1+1+1+1,分別表示預測框的x軸偏移量、y軸偏移量、高度H和寬度W、置信度、分類結果。當有了預測結果之后,就能直接在原圖片上繪制預測框。

        預測出的三種輸出尺度矩陣還需要結果解碼,原圖片會被分解為76×76、38×38、19×19大小的矩陣。每個矩陣點加上它對應的x軸偏移量和y軸偏移量就可以得到預測框的中心,然后再利用先驗框和預測高度H、寬度W計算出預測框的長寬并最終在原圖像上繪制出預測框。

        1.4 模型對比

        為進一步減少網絡參數量,本文使用深度可分離卷積代替YOLOv4加強特征提取網絡中用到的所有一般卷積。表3為各種網絡模型參數量的對比。第一列代表修改后的網絡模型名稱,其中YOLOv4代表沒有做任何修改的原版網絡;YOLOv4-MobileNetv3表示只使用MobileNetv3代替YOLOv4主干特征提取網絡但沒有使用深度可分離卷積的模型。YOLOv4-Lite為本文優(yōu)化的模型。具體改動如下:

        表3 網絡結構參數量對比Table 3 Comparison of network structure parameter

        (1)將3×3一般卷積替換為深度可分離卷積。此3×3一般卷積位于PANet網絡中的三次卷積塊和五次卷積塊中。此部分替換前的參數量為4 718 592,替換后變?yōu)閰盗繛? 608的深度卷積加上參數量為524 288的點卷積,運算量縮減為之前的1/8到1/9之間(具體計算過程見1.1.1小節(jié))。

        (2)將預測網絡YOLO-Head中的3×3一般卷積替換為深度可分離卷積。

        (3)將兩次下采樣中的3×3一般卷積替換為深度可分離卷積。

        替換后的YOLOv4-Lite網絡模型參數量由39 989 933減少到11 729 069,可見網絡優(yōu)化效果明顯。

        第二列Params直接決定了網絡模型的大小。也影響推斷時對內存的占用量。第三列理論模型大小是指網絡模型的占用內存的大小。從表3可以看出,YOLOv4占用內存244 MB,而本文優(yōu)化后的輕量化網絡YOLOv4-Lite只需44 MB,大大節(jié)約了內存空間。

        2 數據預處理

        2.1 馬賽克數據增強

        YOLOv4提出了參考CutMix數據增強方式而誕生的Mosaic數據增強方式,它們在理論上有一定的相似。CutMix數據增強每次只讀取兩張圖片。而Mosaic數據增強方式利用了四張圖片。其步驟如下:

        (1)依次讀取四張圖片。

        (2)通過翻轉、縮放和改變色域的方式更改四張圖片,并將它們分別放置在四個方位。

        (3)進行圖片和標注框的結合。

        2.2 伽馬變換

        在實驗中發(fā)現(xiàn),僅使用馬賽克數據增強雖然提升了檢測精度,但模型在檢測暗光環(huán)境圖片時的表現(xiàn)差強人意。于是本文在馬賽克數據增強方式的基礎上提出了增加圖片伽馬變換的新數據增強方式。圖片伽馬變換是圖片灰度變化領域中的一種非線性變化方式,其為:

        其中,c為灰度縮放系數,通常情況下取1,r作為輸入圖像的灰度值,其取值范圍為[]0,1。γ則是灰度縮放因子,其控制了灰度變換的縮放程度。當γ<1時,圖像灰度級較高的部分會被壓縮,灰度級較低的部分會被拉伸,從而加強圖像的低灰度區(qū)的對比度;當γ>1時,圖像灰度級較高的部分會被拉伸,灰度級較低的部分會被壓縮,從而加強圖像的高灰度區(qū)的對比度;當γ=1時,圖像灰度區(qū)不會發(fā)生改變。本文γ從1、2.2、4.0中隨機取值用于模擬暗光環(huán)境下的人臉口罩佩戴圖片,以達到數據增強的目的。圖10為使用了伽馬變換的前后效果對比,圖11為本文提出的數據增強流程演示。

        圖10 伽馬變換效果Fig.10 Demonstration of Gamma transformation

        圖11 數據增強流程Fig.11 Data enhancement process

        2.3 標簽平滑

        過擬合和概率校正(Probability Calibration)是深度學習模型訓練中的兩個常見問題。過擬合指的是深度學習模型在訓練集上表現(xiàn)優(yōu)異,但是在沒有參與訓練的測試集上卻表現(xiàn)不理想,魯棒性太差,拿到新樣本后沒有辦法去準確地預測。模型訓練過程中,神經網絡將促進自身向正確標注和錯誤標注之間差異最大的方向學習。在數據集樣本太少或者樣本特征提取不足的情況下,網絡會很容易過擬合。

        標簽平滑(Label Smoothing)采用如下思路解決這個問題:在訓練時即假設標簽可能存在錯誤,避免過度相信訓練樣本的標簽。以二分類樣本為例,訓練樣本為

        (xi,yi),其中yi為樣本標簽。當采用交叉熵來描述損失函數時,對于每一個樣本i,損失函數為:

        經過標簽隨機化之后,新標簽有λ的概率與原標簽不同,有1-λ的概率與原標簽相同。采用隨機化新標簽的損失函數有1-λ的概率與損失函數Li相同,有λ的概率為:

        將公式(14)、(15)進行加權平均后可以得到新公式:

        當輸入標簽為0時,用一個比較小的近似數λ進行替換;當輸入標簽為1時,用近似數1-λ進行替換。

        由公式可知,在交叉熵模型中,因為模型會不斷增加權值w,使得預測輸出盡可能逼近0或1而不能達到。如果將標簽0和1分別替換為λ和1-λ,當模型的輸出達到這個值之后就不會繼續(xù)優(yōu)化,從而達到標簽平滑的效果。

        2.4 學習率余弦退火衰減

        目前的深度學習模型都采用梯度下降算法來優(yōu)化模型的收斂效果,隨著epoch的不斷增加,可以調整學習率來優(yōu)化損失函數Loss的下降效果。Hutter等[19]提出了帶熱重啟的隨機梯度下降算法(Stochastic Gradient Descent with warm Restarts,SGDR)。梯度下降過程中有許多局部最優(yōu)解,但是如何才能在其中找到全局最優(yōu)解?SGDR算法可以在學習率不斷下降的過程中周期性重啟,以達到學習率突然跳躍性的增加從而實現(xiàn)躍出局部最優(yōu)解,更加逼近全局最優(yōu)解的目的。本文使用了PyTorch框架提供的余弦退火衰減算法,可以使學習率以余弦函數進行周期性變化。設置學習率的最小值為10-5,且每10個epoch變化一次。當總epoch為50時,學習率的變化曲線如圖12所示。

        圖12 學習率變化曲線Fig.12 Learning rate curve

        3 實驗與結果分析

        實驗基于第2章的數據預處理,以PyTorch深度學習框架為平臺,設置初始學習率為10-3,最小批次為16,總epoch為75。計算機操作系統(tǒng)為Win10,CPU為AMD Ryzen 5 3600 4.2 GHz;內存為12 GB;GPU為NVIDIA GeForce GTX1060 6G;PyTorch版本為1.7.0;Cuda版本為10.1;Python版本為3.8.5。

        3.1 人臉口罩數據集

        實驗數據集來源于網絡公開的MAFA Dataset和Wider Face Dataset。Wider Face Dataset是目前 人 臉識別模型使用最多的檢測數據集,圖片數約為30 000張,其中大約有400 000個人臉。Ge等[20]制作了MAFA Dataset遮擋人臉數據集,包含約30 000張圖片,其中約有35 000個被遮擋人臉,一部分遮擋物是口罩、圍巾、手等。本實驗從這兩個公開數據集取出共7 957張圖片,其中人臉圖片有3 894張,人臉遮擋圖片有4 063張。分別使用face(人臉)、face_mask(佩戴口罩人臉)進行樣本標注,部分圖像如圖13所示。按比例將數據隨機劃分為驗證集和測試集,測試集共737張圖片,其中共有標注人臉框691個,口罩遮擋人臉框389個,其分布如圖14所示。

        圖13 部分數據集展示Fig.13 Partial data set display

        圖14 測試集標注分布Fig.14 Test set distribution

        3.2 消融實驗

        在口罩佩戴檢測數據集中,如圖15所示。分別在關閉和開啟學習率余弦退火衰減時,觀察訓練過程中損失函數下降曲線。在前50個epoch,未使用學習率余弦退火衰減算法的Loss曲線收斂更快。在50至75個epoch范圍內,使用了學習率余弦退火衰減算法的Loss曲線以余弦函數下降并能達到更低值,說明可以有效地跳出局部最優(yōu)解。雖然曲線在不斷波動,但整體上已經沒有下降趨勢,此時可認為Loss已經收斂。

        圖15 學習率余弦退火衰減效果Fig.15 Effect of cosine annealing LR

        消融實驗分別對YOLOv4復現(xiàn)網絡和本文所提出的三種修改的輕量化網絡做出對比驗證,以此證明本文網絡設計所帶來的性能提升。消融實驗的設計如表4所示,所有實驗中均使用了馬賽克數據增強、標簽平滑和學習率余弦退火衰減算法。模型訓練過程中的Loss損失函數下降曲線如圖16所示。

        圖16 消融實驗的Loss訓練曲線Fig.16 Loss training curve of ablation experiment

        如表4所示,第一列的曲線代表各種模型的編號,①代表了YOLOv4復現(xiàn)網絡;②代表使用了MobileNetv3作為主干特征提取網絡的初步優(yōu)化模型;③代表使用了MobileNetv3作為主干特征提取和使用深度可分離卷積替換加強特征提取網絡中一般卷積的YOLOv4-Lite輕量化網絡模型;④代表在③網絡模型的基礎上使用SiLU激活函數替換MobileNetv3淺層網絡中的ReLU激活函數得到的進一步優(yōu)化網絡模型。

        表4 消融實驗設計Table 4 Design of ablation experiment

        如圖16所示,由于使用了余弦退火衰減算法,Loss曲線以余弦函數下降,在50個eopch之后整體呈波浪形,但最低值不再下降,此時可認為已經收斂。

        如表5所示,分別以平均精度均值(mAP)、召回率(Recall)、精確率(Precision)、召回率和精確率的加權值(F1)和模型每秒可識別的圖像數量(FPS)指標對四種模型進行性能評測。

        表5 消融實驗結果Table 5 Result of ablation experiment

        召回率和精確率的加權值(F1)綜合考量了Recall和Precision指標,其計算公式為:

        為了評測模型的實時性,本實驗使四種模型對同一張高清圖(分辨率為1 280×720)進行預測,并計算預測所消耗的時間,最終通過此時間計算出每秒可識別出的圖像數量(FPS),當FPS大于24時,人眼認為是實時的,F(xiàn)PS參數可以準確地衡量算法的檢測速度,且FPS值越大,檢測速度越快。

        對比①與②兩種模型在FPS上的表現(xiàn)可知,模型②的FPS從12.65增加到20.37,提升了61%,說明檢測速度的進步十分明顯,但FPS仍然沒有達到24,還不能滿足實時性的要求;觀察mAP可知,模型②的mAP從95.08%下降到94.04%,降低了1.04個百分點,說明精度有所降低;犧牲了很小的精確度,卻帶來了檢測速度的極大提升,在人臉口罩佩戴檢測的應用場景中是可以接受的。從理論上分析:YOLOv4中的主干特征提取網絡CSPDarkNet53包含了53層卷積網絡,模型內存占用高達244 MB,計算量龐大。替換為MobileNetv3之后模型占用152 MB,因此檢測速率有所提升。由于MobileNetv3中引入了擠壓和激勵注意力機制,替換之后的模型精確度沒有受到太大影響。

        對比②與③兩種模型在FPS上的表現(xiàn)可知,模型③的FPS從20.37增加到35.47,提升了74%,F(xiàn)PS達到了35,滿足了實時性的要求;觀察mAP可知,模型②的mAP從94.04%降低到93.35%,下降了0.69個百分點,說明精度有略微的下降;分析Recall和Precision可以看出,模型②精度下降主要是因為預測框漏檢或誤檢的概率有所提升。從理論上分析:使用深度可分離卷積代替一般卷積使得模型內存占用從152 MB下降到44 MB,因此檢測效率得到進一步提升。

        對比③與④兩種模型可知,后者的mAP從93.35%增加到93.40%,提升了0.05個百分點,說明精度有所提高。加權衡量指標F1也有一定的提升,F(xiàn)PS值幾乎一致,說明檢測速度沒有受到影響。從理論上分析,這是因為:SiLU具有如ReLU的正值特性,一樣可以緩解梯度消失問題,而且SiLU還有負值,可以讓激活單元輸出的均值更接近0,其方差也更接近單位方差1,進一步達到正則化效果,從而提升模型收斂速度,且SiLU的負值計算使用的是線性函數,對輸入變換或噪聲的魯棒性更好。

        根據網絡模型大小和檢測精度兩方面綜合考慮,模型④滿足了口罩佩戴任務實時檢測的性能要求,同時兼顧了檢測精度,在所有優(yōu)化模型中的綜合表現(xiàn)最好。

        3.3 全天候環(huán)境實驗

        在后續(xù)的檢測算法實際應用中發(fā)現(xiàn),本文模型和YOLOv4復現(xiàn)模型在暗光環(huán)境下的檢測精度降低明顯,通常表現(xiàn)為預測框漏檢或誤檢。為解決此問題,本文提出了在模型④基礎上使用了基于馬賽克數據增強算法和伽馬變換算法(詳見2.2節(jié)伽馬變換)后得到的模型⑤。為了驗證模型⑤在全天候環(huán)境下的性能表現(xiàn),本文采集了963張全天候自然環(huán)境圖片(包括一部分暗光環(huán)境圖片)作為測試集,其中共有標注人臉框757個,口罩遮擋人臉框512個。全天候環(huán)境測試集部分圖像如圖17所示,包含了夜間、室內燈光、室外陰影、室外強光環(huán)境等,背景更加復雜。在對比實驗中,分別測試了YOLOv4復現(xiàn)網絡模型①和本文提出的模型⑤在全天候環(huán)境下的各方面性能。兩種模型的Loss訓練曲線如圖18所示。

        圖17 全天候環(huán)境數據集展示Fig.17 All weather environmental data set display

        圖18 全天候環(huán)境下Loss訓練曲線Fig.18 Loss training curve under all weather conditions

        觀察表6可知,模型⑤在全天候環(huán)境下的mAP從88.60%增加到90.18%,提升了1.58個百分點,加權衡量指標F1分別從0.84、0.95提升至0.85、0.97。檢測精度得到了明顯的提升;FPS從12.65增加到35.45,提升了約180%,檢測速度得到了極大的提升。綜上所述,模型⑤在光照、背景復雜的環(huán)境(如夜間、室內燈光、室外陰影、室外強光)下仍能取得一個較好的檢測精度和速度,說明本模型對環(huán)境變化不敏感,具有一定的穩(wěn)定性。本文模型還可以檢測出一些手部遮擋人臉,并將其標注為face類別如圖19所示。為了更加直觀地體現(xiàn)本文模型在各種光照環(huán)境下檢測效果的表現(xiàn),分別取用模型①、⑤對暗光環(huán)境圖片進行檢測對比。結果如圖20所示,可見模型⑤在暗光環(huán)境下有效降低了漏檢率、誤檢率,仍有很好的檢測效果。除此以外,為了體現(xiàn)本文模型在全天候場景下的檢測效果,取多張不同光照環(huán)境且背景復雜的圖片進行測試,結果如圖21所示。

        圖20 真實圖片檢測效果對比Fig.20 Real picture detection effect comparison

        圖21 全天候場景檢測效果Fig.21 All weather scene detection effect

        表6 全天候環(huán)境實驗結果Table 6 All weather environment results

        圖19 其他遮擋物檢測效果Fig.19 Detection effect of other obstructions

        本次實驗的結果可知,本文提出的輕量化口罩檢測網絡在檢測速度方面提升很大,滿足了實時檢測的性能要求,同時兼顧了檢測精度,考慮到了現(xiàn)實應用場景下更加復雜的光照環(huán)境,可以避免其他遮擋物對結果的影響,能良好地完成口罩佩戴實時檢測任務。

        4 結束語

        本文針對YOLOv4目標檢測網絡提出了一種輕量化改進方式。使用適用于嵌入式和移動平臺的Mobile-Netv3網絡代替CSPDarkNet53作為主干特征提取網絡,降低了參數量,在此基礎上使用深度可分離卷積代替加強特征提取網絡中的一般卷積,進一步降低參數量,使用SiLU激活函數代替MobileNetv3淺層網絡部分的ReLU激活函數,提升了檢測精度,優(yōu)化了Mosaic數據增強方法,提升模型在現(xiàn)實復雜環(huán)境下的泛化能力,引入了標簽平滑和學習率余弦退火算法,增強了模型的收斂效果。實驗結果表明,在口罩檢測任務中,本文模型在犧牲了1.68%mAP的情況下,將檢測速度(FPS)提升了約180%,檢測速度的提升使得本文模型更好地勝任人臉口罩佩戴檢測任務。但本文模型仍有改進的空間,如何使輕量化網絡在保證精度不降低的情況下達到如此的檢測速度,并適用于更豐富的檢測場景是接下來待解決的問題。

        猜你喜歡
        特征提取口罩卷積
        基于3D-Winograd的快速卷積算法設計及FPGA實現(xiàn)
        戴口罩的苦與樂
        意林(2020年9期)2020-06-01 07:26:22
        因為一個口罩,我決定離婚了
        海峽姐妹(2020年4期)2020-05-30 13:00:08
        從濾波器理解卷積
        電子制作(2019年11期)2019-07-04 00:34:38
        霧霾口罩
        基于Daubechies(dbN)的飛行器音頻特征提取
        電子制作(2018年19期)2018-11-14 02:37:08
        基于傅里葉域卷積表示的目標跟蹤算法
        Bagging RCSP腦電特征提取算法
        要戴口罩的霧霾天
        基于MED和循環(huán)域解調的多故障特征提取
        98在线视频噜噜噜国产| 91超精品碰国产在线观看| 精品无码国产一区二区三区麻豆 | 亚洲avav天堂av在线网毛片| 久久国产精品波多野结衣av| 久久99亚洲网美利坚合众国| 99久久婷婷国产精品综合网站 | 亚洲中文字幕高清在线视频一区 | 亚洲加勒比无码一区二区在线播放| 一二三四在线观看韩国视频| 精品人妻伦一二三区久久| a级毛片高清免费视频就| 男人的天堂在线无码视频| 女同视频网站一区二区| 男女无遮挡高清性视频| 久久久久波多野结衣高潮| 国产美女在线精品亚洲二区| 天堂av中文在线官网| 亚洲最大av免费观看| 日本免费久久高清视频| 午夜免费啪视频| 欧美黑人又粗又大久久久| aa视频在线观看播放免费| 日本超级老熟女影音播放| 人妻熟女一区二区三区app下载| h国产视频| 亚洲天堂av大片暖暖| 麻豆精品国产av在线网址| 亚洲精品无码不卡在线播放he| 欧洲亚洲第一区久久久| 亚洲av熟女天堂久久天堂| 久久久亚洲欧洲日产国码二区| 一本久久a久久精品亚洲| 美女裸体无遮挡免费视频国产| 97精品熟女少妇一区二区三区| av综合网男人的天堂| 欧美日韩综合网在线观看| 午夜在线观看一区二区三区四区| 日日碰日日摸日日澡视频播放 | 亚洲欧美成人a∨| 人妻精品人妻一区二区三区四五|