李啟明,闕祖航
(上海海事大學(xué)信息工程學(xué)院,上海 201306)
交通網(wǎng)絡(luò)的密集化和巨大的客流量給安檢任務(wù)帶來嚴(yán)峻的挑戰(zhàn)。對(duì)危險(xiǎn)品的甄別工作目前主要由人工完成,安檢質(zhì)量很大程度上受工作人員的狀態(tài)影響,長時(shí)間的工作容易出現(xiàn)漏檢誤檢等問題,導(dǎo)致安檢精度和效率降低。因此,計(jì)算機(jī)輔助或自動(dòng)安檢成為該領(lǐng)域的研究熱點(diǎn)。X射線技術(shù)已被廣泛應(yīng)用于公共安檢領(lǐng)域,與普通光學(xué)成像原理不同,主流的雙能X光透視成像技術(shù)能夠根據(jù)不同材質(zhì)、厚度的物體對(duì)高低能射線的吸收系數(shù)不同的特點(diǎn)來獲取物體的輪廓信息進(jìn)而實(shí)現(xiàn)物體的區(qū)分,但該技術(shù)仍存在物體重疊、細(xì)節(jié)特征丟失等固有缺陷。此外,同類物品由于擺放角度和位置各異,導(dǎo)致它們的透視成像形態(tài)發(fā)生嚴(yán)重變化,增大了檢測(cè)難度,影響安檢人員對(duì)危險(xiǎn)品的辨別。
危險(xiǎn)品檢測(cè)是一種特殊的目標(biāo)檢測(cè),其方法主要可分為基于傳統(tǒng)機(jī)器學(xué)習(xí)和基于深度學(xué)習(xí)兩類。早期機(jī)器學(xué)習(xí)主要使用手工特征和分類器進(jìn)行分類,使用滑動(dòng)窗口來捕獲目標(biāo)的位置信息。王華君等[1]采用尺度不變特征變換(scale invariant feature transform,SIFT)方法獲取了對(duì)姿態(tài)變化具有魯棒性的特征,并利用這些特征構(gòu)建目標(biāo)的隱式形狀模型(implict shape model,ISM),通過判斷輸入圖像的描述符是否匹配ISM模型來實(shí)現(xiàn)危險(xiǎn)品的檢測(cè);丁靜文等[2]提出了結(jié)合狀態(tài)回溯的啟發(fā)式Q學(xué)習(xí)的主動(dòng)視覺方法來獲取最佳的視覺估計(jì),提高危險(xiǎn)品檢測(cè)性能和檢測(cè)速度。但以上兩種方法都希望在未來工作中進(jìn)一步提升對(duì)槍械等形狀不規(guī)則物體的檢測(cè)效果。
近年來,深度卷積神經(jīng)網(wǎng)絡(luò)推動(dòng)了目標(biāo)檢測(cè)、語義分割等計(jì)算機(jī)視覺任務(wù)的進(jìn)步,面向X射線圖像的危險(xiǎn)品檢測(cè)也隨之取得一系列成果。Akcay等[3]首次將深度學(xué)習(xí)引入到X射線安檢圖像分類檢測(cè)?;谏疃葘W(xué)習(xí)的目標(biāo)檢測(cè)方法大體可以分為one-stage和two-stage兩類?;趖wo-stage的檢測(cè)方法首先提出候選區(qū)域(region proposal),再基于候選區(qū)域進(jìn)行二次修正實(shí)現(xiàn)目標(biāo)檢測(cè),代表性算法如更快的基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(faster region convolutional neural network,F(xiàn)aster R-CNN)系列。楊子固等[4]在Faster R-CNN的基礎(chǔ)上引入預(yù)分類模塊和興趣區(qū)域?qū)R模塊,使得模型能夠更好地學(xué)習(xí)圖像的高級(jí)語義特征,進(jìn)而提高模型檢測(cè)性能。康佳楠等[5]提出了一種基于多通道區(qū)域建議網(wǎng)絡(luò),通過設(shè)計(jì)一種多分支膨脹卷積模塊來增大感受野,增強(qiáng)對(duì)小目標(biāo)的檢測(cè)能力。但基于two-stage的檢測(cè)方法在實(shí)時(shí)檢測(cè)方面普遍稍遜于基于one-stage的主流算法。
基于one-stage的檢測(cè)算法的實(shí)現(xiàn)原理是直接在圖像上經(jīng)過計(jì)算得到目標(biāo)的檢測(cè)框和類別,包括SSD(single-shot multibox detector)[6]、YOLO(you only look once)系列等算法。王昱曉等[7]提出了基于改進(jìn)SSD的多尺度特征融合檢測(cè)網(wǎng)絡(luò)(multi-scale feature fusion network,MFFNet),將SSD的VGG-16骨干網(wǎng)絡(luò)替換為更深的RestNet-101網(wǎng)絡(luò)來更好地提取特征,并新增輕量級(jí)特征融合模塊生成新的特征金字塔,盡管改進(jìn)模型在SIXray數(shù)據(jù)集[8]上的檢測(cè)精度有比較明顯的提升,但檢測(cè)速度下降近3倍。唐浩漾等[9]在SSD的基礎(chǔ)上同樣構(gòu)建了特征金字塔來融合淺層特征圖的位置信息和深層特征圖的語義信息,同時(shí)引入可形變卷積模塊自適應(yīng)地獲取目標(biāo)的形狀和尺度信息,有效地提高了小目標(biāo)危險(xiǎn)品的檢測(cè)能力,但存在參數(shù)量和計(jì)算量較多等問題。
盧官有等[10]提出了改進(jìn)YOLOv3[11]網(wǎng)絡(luò)模型,通過K-means聚類算法計(jì)算出更適應(yīng)目標(biāo)物體尺度的先驗(yàn)框,通過減少預(yù)測(cè)邊界框提高檢測(cè)速度。吳海濱等[12]使用空洞卷積對(duì)YOLOv4[13]網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行優(yōu)化,引入空間金字塔池化模型增大感受野,增強(qiáng)對(duì)小目標(biāo)危險(xiǎn)品的檢測(cè)能力,在SIXray數(shù)據(jù)集表現(xiàn)出mAP為85.23%的檢測(cè)性能。Tao等[14]提出了由雙向傳播架構(gòu)和邊緣激活模塊構(gòu)成的側(cè)抑制模型,并將該模型嵌入到主流目標(biāo)檢測(cè)網(wǎng)絡(luò)中,能夠有效解決復(fù)雜場(chǎng)景下遮擋干擾的問題,在HIXray數(shù)據(jù)集[14]和OPIXray數(shù)據(jù)集[15]的危險(xiǎn)品檢測(cè)任務(wù)中取得出色的效果。Zhang等[16]在YOLOv5的主干網(wǎng)絡(luò)中插入壓縮激活模塊(squeeze and excitation,SE)[17]消除大量無效的通道信息,降低模型錯(cuò)誤率進(jìn)而提高檢測(cè)性能。董乙杉等[18]提出了一種改進(jìn)的YOLOv5網(wǎng)絡(luò)模型,引入卷積塊注意力機(jī)制[19](convolutional block attention module,CBAM)增強(qiáng)網(wǎng)絡(luò)對(duì)目標(biāo)的特征提取能力,此外作者在測(cè)試階段采用加權(quán)邊框融合算法優(yōu)化預(yù)測(cè)框。在YOLO系列中,YOLOv4和YOLOv5都是在YOLOv3的基礎(chǔ)上改進(jìn)增強(qiáng),檢測(cè)效果取得很大的進(jìn)步,由于YOLOv5在模型訓(xùn)練時(shí)收斂速度遠(yuǎn)遠(yuǎn)優(yōu)于YOLOv4,所提算法也在YOLOv5的基礎(chǔ)上進(jìn)行改進(jìn)。
綜上所述,隨著各種算法的提出和改進(jìn),對(duì)于X射線圖像危險(xiǎn)品的檢測(cè)性能不斷取得顯著提升,但在這些優(yōu)秀的算法中,如YOLO系列的改進(jìn)算法,相較于原算法,在提升檢測(cè)精度的同時(shí),或多或少會(huì)增加模型大小和參數(shù)量。為此,提出了基于改進(jìn)YOLOv5的檢測(cè)算法,首先使用傳統(tǒng)數(shù)據(jù)增強(qiáng)與Mixup數(shù)據(jù)增強(qiáng)策略[20]相結(jié)合的方式進(jìn)行數(shù)據(jù)擴(kuò)充,然后通過利用輕量型Ghost模塊[21]替換YOLOv5中的部分模塊達(dá)到降低模型大小和參數(shù)量的效果,最后引入坐標(biāo)注意力(coordinate attention,CA)[22]機(jī)制減少背景干擾,提高檢測(cè)精度。研究成果為X射線圖像安檢場(chǎng)景中改善危險(xiǎn)品檢測(cè)效果的研究進(jìn)一步提供了科學(xué)依據(jù)。
YOLOv5是一種one-stage目標(biāo)檢測(cè)算法,已在各種應(yīng)用場(chǎng)景表現(xiàn)出優(yōu)異的性能。在Ultralytics官方推出的4個(gè)版本網(wǎng)絡(luò)模型中,結(jié)合檢測(cè)速度和精度兩方面因素進(jìn)行權(quán)衡,最終選取YOLOv5s做為所提改進(jìn)算法的原模型。YOLOv5由輸入端、Backbone、Neck和檢測(cè)層組成。
輸入端主要包括自適應(yīng)錨框計(jì)算、圖片尺寸處理以及Mosaic數(shù)據(jù)增強(qiáng)[14]。Backbone層主要包含BottleneckCSP模塊,該模塊在增強(qiáng)網(wǎng)絡(luò)學(xué)習(xí)能力的同時(shí)大幅度減少了計(jì)算量。與之前發(fā)布版本相比,新模型采用內(nèi)核為6、步長為2、填充為2的普通卷積層代替了Focus層,便于模型的導(dǎo)出,將快速空間金字塔池化層(spatial pyramid pooling fast,SPPF)代替原來的空間金字塔池化層(spatial pyramid pooling,SPP),并放在主干末端。Neck層采用特征金字塔網(wǎng)絡(luò)結(jié)構(gòu)(feature pyramid network,F(xiàn)PN)和路徑聚合特征金字塔(path aggregation network,PAN)結(jié)構(gòu)進(jìn)行特征融合,該組合模塊增強(qiáng)了網(wǎng)絡(luò)模型對(duì)不同縮放尺度對(duì)象的檢測(cè)能力,改善低層特征的傳播,使模型能夠獲取更加豐富的特征信息。檢測(cè)層由三個(gè)模塊組成,用于檢測(cè)不同尺寸的目標(biāo)對(duì)象。
主流卷積神經(jīng)網(wǎng)絡(luò)在生成大量冗余的中間特征圖時(shí)計(jì)算成本過高,GhostNet的提出有效解決了這個(gè)問題。如圖1所示,Ghost模塊將原始卷積層分為兩部分,首先通過少量的卷積核生成原始特征圖,然后在原始特征圖的基礎(chǔ)上通過簡單的線性操作高效生成更多的特征圖,最后將上述兩步驟生成的特征圖進(jìn)行拼接。
假設(shè)輸入特征圖尺寸為h×w×c,輸出特征圖尺寸為h′×w′×n,則直接通過內(nèi)核大小為k×k普通卷積(k為內(nèi)核的高度或?qū)挾?生成特征圖的計(jì)算量為nh′w′ckk,參數(shù)量為nckk。如圖1所示,Ghost模塊首先通過普通卷積(內(nèi)核大小為k×k)生成具有m個(gè)通道的原始特征圖f1,計(jì)算量為mh′w′ckk, 參數(shù)量為mckk;然后對(duì)f1中的每一個(gè)特征應(yīng)用廉價(jià)的線性運(yùn)算Φi(采用內(nèi)核大小為d×d的普通卷積,d為內(nèi)核的高度或?qū)挾?生成具有m(s-1)個(gè)通道數(shù)Ghost特征圖f2,計(jì)算量為mh′w′(s-1)dd, 參數(shù)量為m(s-1)dd;最后將特征圖f1和f2進(jìn)行拼接,得到輸出特征圖,Identity表示原始特征圖f1的恒等映射,其中s表示特征圖f1中每一層特征進(jìn)行映射的次數(shù)(1次恒等映射,s-1次線性運(yùn)算),且n=ms。
h和h′分別為輸入特征圖和輸出特征圖的高度;w和w′分別為輸入特征圖和輸出特征圖的寬度;c、m、n為通道數(shù);Conv為卷積;Identity為恒等映射;Φi為第i個(gè)線性運(yùn)算
式(1)、式(2)分別描述了Ghost模塊優(yōu)化普通卷積的加速比rs和參數(shù)壓縮比rc的理論推導(dǎo)過程,其中d×d的幅度和k×k相似,且s遠(yuǎn)小于c。
≈s
(1)
(2)
利用Ghost模塊能夠有效減少參數(shù)量和計(jì)算量的優(yōu)勢(shì),對(duì)YOLOv5的Neck層進(jìn)行模型剪枝優(yōu)化,具體操作是將該層的普通卷積和C3模塊分別替換為GhostConv和C3Ghost模塊,模塊結(jié)構(gòu)如圖2所示。Han等[21]建議一個(gè)Ghost模塊應(yīng)使用相同大小的線性運(yùn)算,本實(shí)驗(yàn)將其內(nèi)核大小設(shè)置為5。
c1、c2為通道數(shù);n為GhostBottleneck模塊的堆疊數(shù)目;Conv為卷積;DWConv為深度可分離卷積;Concat為特征圖通道數(shù)相加;Add為特征圖相加
當(dāng)前,注意力機(jī)制已被廣泛應(yīng)用在神經(jīng)網(wǎng)絡(luò)中,它將有限的計(jì)算資源分配到更為重要的任務(wù)中,改善模型性能。在X射線安檢圖像危險(xiǎn)品檢測(cè)場(chǎng)景中,已有學(xué)者在原模型合適的位置上加入SE、有效注意力機(jī)制[23](efficient channel attention,ECA)、CBAM等模塊,抑制圖像內(nèi)由于物品遮擋、背景干擾等問題所產(chǎn)生的大量無效特征,增強(qiáng)更為關(guān)鍵的有效特征,從而提高任務(wù)處理的效率和準(zhǔn)確性。但上述注意力機(jī)制仍存在一些不可忽視的問題,SE注意力機(jī)制只考慮了通道間的編碼而忽視了空間信息的重要性,ECA在SE模塊的基礎(chǔ)上提出了一種不降維的局部跨信道交互策略從而提升性能,CBAM雖然融合了通道和空間信息,但只能捕獲局部信息。本文模型引入的坐標(biāo)注意力機(jī)制不僅能捕獲通道間的依賴,還能捕獲具有精確位置信息的空間長程依賴,有助于網(wǎng)絡(luò)更加準(zhǔn)確地定位感興趣目標(biāo),其結(jié)構(gòu)如圖3所示。
H和h為高度;W和w為寬度;C為通道數(shù);r為壓縮比例;F1、Fh和Fw為卷積操作;Residual為殘差結(jié)構(gòu);Avg Pool為平均池化;Conv2d為卷積;Concat為特征圖通道數(shù)相加;Re-weight為計(jì)算權(quán)重;BatchNorm為歸一化處理;No-linear為非線性激活函數(shù);Sigmoid為Sigmoid激活函數(shù)
坐標(biāo)注意力機(jī)制模塊利用精確的位置信息對(duì)通道關(guān)系和長程依賴編碼,包含坐標(biāo)信息嵌入和坐標(biāo)注意力生成。
(3)
(4)
在坐標(biāo)注意力生成過程中,首先對(duì)上一步嵌入坐標(biāo)信息的通道分別沿著兩個(gè)空間方向進(jìn)行特征聚合生成特征圖zh和zw,對(duì)這兩個(gè)特征圖沿著空間維度進(jìn)行連接操作,利用1×1卷積進(jìn)行通道壓縮,再經(jīng)過歸一化操作和非線性激活函數(shù)處理后,生成具有水平和垂直兩個(gè)方向的空間信息的中間特征圖f∈RC/r×1×(W+H),其中r為壓縮比例。然后沿著空間維度將中間特征圖f再拆分成兩個(gè)單獨(dú)的張量fh∈RC/r×H和fw∈RC/r×W,對(duì)這兩個(gè)張量分別使用1×1卷積進(jìn)行通道擴(kuò)充,使得生成的特征圖通道維度與輸入特征圖X的通道維度保持相同,經(jīng)過sigmoid激活函數(shù)處理得到兩個(gè)張量gh∈RC×H×1和gw∈RC×1×W。最后對(duì)gh和gw進(jìn)行擴(kuò)展并作為注意力權(quán)重,得到輸出特征圖Y∈RC×H×W。坐標(biāo)注意力機(jī)制模塊實(shí)現(xiàn)過程的表達(dá)式為
f=δ[F1([zh,zw])]
(5)
gh=σ[Fh(fh)]
(6)
gw=σ[Fw(fw)]
(7)
(8)
式中:F1、Fh和Fw為使用內(nèi)核大小為1×1的卷積操作;δ為非線性運(yùn)算;σ為sigmoid函數(shù);[·,·]為連接運(yùn)算。
鑒于該注意力機(jī)制具有能夠有效捕獲通道間關(guān)系、適用于輕量型網(wǎng)絡(luò)、簡單高效等優(yōu)點(diǎn),本文算法是在主干網(wǎng)絡(luò)的中間層、中下層和底層三個(gè)位置分別添加一個(gè)CA模塊,使得模型對(duì)感興趣目標(biāo)能夠更好地提取特征,提高模型的檢測(cè)性能。
改進(jìn)模型如圖4所示,假設(shè)輸入圖像尺寸為640×640×3,首先在Backbone層中提取3個(gè)有效特征層F3∈R80×80×256,F(xiàn)4∈R40×40×512,F(xiàn)5∈R20×20×1 024;其次,在Neck層中利用這3個(gè)特征層構(gòu)建特征金字塔,有利于提取更好的特征,具體操作如下,將F5經(jīng)過1×1卷積壓縮通道后得到特征層P5∈R20×20×512,P5上采樣后與F4結(jié)合,經(jīng)過C3Ghost模塊特征提取后得到特征層P′5∈R40×40×512,P′5經(jīng)過1×1卷積壓縮通道后得到特征層P4∈R40×40×256,P4上采樣后與F4結(jié)合,經(jīng)過C3Ghost模塊特征提取后得到輸出特征層P″3,P″3經(jīng)過3×3卷積下采樣后與P4沿通道維度進(jìn)行堆疊,再經(jīng)過C3Ghost模塊特征提取后得到輸出特征層P″4,P″4經(jīng)過3×3卷積下采樣后與P5沿通道維度進(jìn)行堆疊,再經(jīng)過C3Ghost模塊特征提取后得到輸出特征層P″5,其中P″3、P″4、P″5分別適合于尺度為小、中、大的目標(biāo)檢測(cè);最后,將這3個(gè)加強(qiáng)特征層送入Detect模塊獲得檢測(cè)結(jié)果。
Conv為卷積;CA為坐標(biāo)注意力機(jī)制;Concat為特征圖通道數(shù)相加:Upsample為上采樣;Detect為檢測(cè)塊;SPPF為快速空間金字塔池化;C3為C3模塊;GhostConv為GhostConv模塊;C3Ghost為C3Ghost模塊
在計(jì)算機(jī)視覺領(lǐng)域中,數(shù)據(jù)增強(qiáng)旨在通過數(shù)據(jù)擴(kuò)充的方式來彌補(bǔ)訓(xùn)練數(shù)據(jù)集不足,可以分為同類增強(qiáng)和混類增強(qiáng)兩種方式,前者具體有翻轉(zhuǎn)、隨機(jī)裁剪、移位等操作,而所采用的Mixup數(shù)據(jù)增強(qiáng)策略屬于后者,如圖5所示,該方法能將不同類之間的圖像進(jìn)行混合以達(dá)到數(shù)據(jù)擴(kuò)充的目的,其原理如式(9)~式(11)所示。
圖5 Mixup數(shù)據(jù)增強(qiáng)效果圖
λ=Beta(α,β)
(9)
(10)
(11)
為了提高模型的泛化能力和魯棒性,最終采取同類增強(qiáng)和混合增強(qiáng)相結(jié)合的方式進(jìn)行數(shù)據(jù)擴(kuò)充。
此外,對(duì)于經(jīng)過數(shù)據(jù)增強(qiáng)后的圖像,雖然其背景愈加復(fù)雜,物品遮擋愈加嚴(yán)重,但在加大網(wǎng)絡(luò)學(xué)習(xí)難度的同時(shí),能使其不局限于簡單樣本的學(xué)習(xí),還能促進(jìn)網(wǎng)絡(luò)從困難樣本中獲取到更具有價(jià)值的知識(shí),提高模型的泛化能力和魯棒性,以此應(yīng)對(duì)更為復(fù)雜的應(yīng)用場(chǎng)景。
本實(shí)驗(yàn)環(huán)境為Ubuntu 20.04.3 LTS,CPU為Intel Xeon E5-2680 v4,內(nèi)存16 G,GPU為TITAN Xp(顯存12 G),通過Pytorch 1.10搭建網(wǎng)絡(luò)模型,使用CUDA 11.3計(jì)算架構(gòu)。
實(shí)驗(yàn)使用SIXray和 OPIXray數(shù)據(jù)集。SIXray數(shù)據(jù)集有8 929張圖片,包含扳手、手槍、刀、鉗子、剪刀五類危險(xiǎn)品,按8∶1∶1比例將數(shù)據(jù)集劃分為訓(xùn)練集、驗(yàn)證集、測(cè)試集。OPIXray共有8 885張圖片,包含折刀、直刀、剪刀、美工刀、多功能刀五類危險(xiǎn)品,其中6 398張圖片作為訓(xùn)練集,711張圖片作為驗(yàn)證集,1 776張圖片作為測(cè)試集。
訓(xùn)練批次設(shè)置為16,訓(xùn)練周期為300,初始學(xué)習(xí)率為0.01,mixup為0.243,圖像分辨率固定為640×640。實(shí)驗(yàn)采用平均精度(AP)、平均精度均值(mAP)、參數(shù)量(Params)、計(jì)算量(FLOPs)、模型大小(Size)等對(duì)各個(gè)模型性能進(jìn)行對(duì)比。
為了減少模型的參數(shù)量和計(jì)算量,嘗試?yán)肕oblilev3[24]、Ghost、Shufflenetv2[25]等輕量型模塊對(duì)原模型的Backbone或Neck層進(jìn)行剪枝。在均使用同類增強(qiáng)和Mixup增強(qiáng)相結(jié)合的方式進(jìn)行數(shù)據(jù)擴(kuò)充的情況下,實(shí)驗(yàn)結(jié)果如表1所示??梢钥闯?,相比于原模型YOLOv5s,雖然各個(gè)模型的檢測(cè)精度均有所降低,但模型體量改善明顯。其中,結(jié)構(gòu)為C3+Ghost的模型的mAP為90.5%,明顯高于其他方式,其原因在于該模型在主干層保留了C3結(jié)構(gòu),能夠充分發(fā)揮原模型優(yōu)秀的特征提取能力。因此,在有效減少模型的參數(shù)量和計(jì)算量的前提下優(yōu)先考慮模型的精度,將以Backbone層為C3模塊、Neck層為Ghost模塊作為后續(xù)實(shí)驗(yàn)的基礎(chǔ)模型。
表1 模型剪枝實(shí)驗(yàn)結(jié)果
為了進(jìn)一步提升性能,在基礎(chǔ)模型中分別加入不同注意力機(jī)制并進(jìn)行對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果如表2所示,引入坐標(biāo)注意力機(jī)制的模型性能顯著優(yōu)于其他模型,mAP達(dá)到91.4%,較于基礎(chǔ)模型提升了0.9%。盡管基礎(chǔ)模型在引入坐標(biāo)注意力機(jī)制后,其參數(shù)量和模型大小有所增加,分別為5.808 M、12.0 M,但以上兩個(gè)值仍遠(yuǎn)遠(yuǎn)低于原模型YOLOv5s,滿足模型輕量化的要求。
表2 改進(jìn)過程實(shí)驗(yàn)結(jié)果
最終,確定了所提的改進(jìn)網(wǎng)絡(luò)模型,即在Backbone層引入坐標(biāo)注意力機(jī)制,使用GhostConv和C3Chost模塊分別替換Neck層中的Conv和C3模塊。
為了驗(yàn)證改進(jìn)模型在危險(xiǎn)品檢測(cè)任務(wù)中的性能表現(xiàn),選取其他YOLO系列模型與本文模型在SIXray數(shù)據(jù)集上進(jìn)行性能對(duì)比,對(duì)比結(jié)果如表3[11-13,18,26-27]所示。由于改進(jìn)模型繼承了YOLOv5的主要優(yōu)點(diǎn),其檢測(cè)性能明顯優(yōu)于YOLOv3、YOLOv4,mAP分別提升了12.1%、8.3%。在數(shù)據(jù)增強(qiáng)策略的作用下,改進(jìn)模型在YOLOv5的基礎(chǔ)上結(jié)合CA注意力機(jī)制,在網(wǎng)絡(luò)訓(xùn)練過程中能夠更加準(zhǔn)確地聚焦感興趣目標(biāo),使得模型對(duì)5種危險(xiǎn)品的檢測(cè)平均精度分別提升了0.5%、1.4%、2.4%、0.4%、6.8%,mAP提升了2.3%,且優(yōu)于其他基于YOLOv5的改進(jìn)模型。不同于以往anchor-based的YOLO系列模型,曠世科技所提出的基于anchor-free的YOLOX[26]不需要預(yù)設(shè)錨框而只需對(duì)特征圖的目標(biāo)中心點(diǎn)和寬高直接進(jìn)行預(yù)測(cè),減少了計(jì)算量,檢測(cè)速度是該類模型的最大優(yōu)勢(shì),但是anchor-based的模型能夠更好提取特征進(jìn)而能夠取得更好的檢測(cè)精度,因此盡管改進(jìn)模型檢測(cè)速度稍遜于YOLOX,但檢測(cè)精度明顯優(yōu)于YOLOX及其改進(jìn)模型,mAP分別高出5%和1.7%。
表3 改進(jìn)模型在SIXray數(shù)據(jù)集上與其他模型的對(duì)比實(shí)驗(yàn)結(jié)果
此外,為了驗(yàn)證改進(jìn)模型的泛化性,在OPIXray數(shù)據(jù)集上與其他模型進(jìn)行對(duì)比。如表4所示,改進(jìn)模型能夠達(dá)到93.5%的mAP,較于原模型提高了5.7%,相比于文獻(xiàn)[14, 15, 18]所提出的基于YOLOv5的其他改進(jìn)模型分別高出5.5%、2.9%、1.9%,由此可以說明所提模型在其他數(shù)據(jù)集上仍能保持較好的檢測(cè)效果。綜上所述,所提出的改進(jìn)模型對(duì)常見類別的X光安檢圖像危險(xiǎn)品的檢測(cè)更為準(zhǔn)確。
表4 改進(jìn)模型在OPIXray數(shù)據(jù)集上與其他模型的對(duì)比實(shí)驗(yàn)結(jié)果
模型檢測(cè)效果如圖6所示,其中圖6(a)為待檢測(cè)的圖像。由圖6(b)可以發(fā)現(xiàn),使用原模型檢測(cè)時(shí)會(huì)出現(xiàn)違禁品漏檢的問題,漏檢物體使用白色圓圈標(biāo)注,而使用改進(jìn)模型能夠檢測(cè)出所有違禁品,如圖6(c)所示。此外,盡管所提模型經(jīng)過輕量化處理,但從第二行圖中可以發(fā)現(xiàn),改進(jìn)模型仍然可以有效地檢測(cè)出嚴(yán)重遮擋的危險(xiǎn)品,能夠達(dá)到原模型的檢測(cè)效果。
圖6 檢測(cè)結(jié)果圖
為探討不同改進(jìn)模塊對(duì)算法性能優(yōu)化的影響,在SIXray數(shù)據(jù)集上設(shè)計(jì)了消融實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表5所示。首先Ghost模塊對(duì)網(wǎng)絡(luò)起到有效的剪枝作用,同時(shí)也保證了性能基本無損失,參數(shù)量減少了20%,模型大小減少了18.9%。在此基礎(chǔ)上,僅增加少量參數(shù)量和推理時(shí)間的情況下,其他模塊的添加均對(duì)模型表現(xiàn)呈現(xiàn)正向優(yōu)化,分別貢獻(xiàn)了1.4%、1%的mAP。最后,組合3個(gè)改進(jìn)模塊的模型表現(xiàn)最優(yōu),并且滿足實(shí)時(shí)檢測(cè)要求。
表5 本文算法在SIXray數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果
為進(jìn)一步提升X光圖像中危險(xiǎn)品檢測(cè)的性能,提出了一種基于YOLOv5的改進(jìn)模型。通過實(shí)驗(yàn)可以得出以下結(jié)論。
(1)引入坐標(biāo)注意力機(jī)制來提高背景與前景的可辨別性,有助于網(wǎng)絡(luò)更加準(zhǔn)確地定位感興趣目標(biāo)并捕獲更有效的特征信息,增強(qiáng)模型對(duì)危險(xiǎn)品的識(shí)別能力。
(2)采用Ghost模塊對(duì)YOLOv5s進(jìn)行輕量化處理,對(duì)資源嚴(yán)格受限的設(shè)備更加友好。
(3)采用傳統(tǒng)數(shù)據(jù)增強(qiáng)和Mixup數(shù)據(jù)增強(qiáng)策略相結(jié)合的方式進(jìn)行數(shù)據(jù)擴(kuò)充,在豐富數(shù)據(jù)集的同時(shí)也增加了網(wǎng)絡(luò)訓(xùn)練過程中的學(xué)習(xí)難度,提高模型的訓(xùn)練效果和魯棒性。
雖然所提出的改進(jìn)模型在SIXray和OPIXray數(shù)據(jù)集上均取得可觀的檢測(cè)效果,mAP分別達(dá)到91.4%、93.5%,優(yōu)于現(xiàn)有大部分檢測(cè)方法,具有較好的實(shí)踐意義。但在現(xiàn)實(shí)生活中危險(xiǎn)品類別數(shù)目遠(yuǎn)遠(yuǎn)多于模型訓(xùn)練時(shí)所涉及的類別數(shù)目,且除了不同類別危險(xiǎn)品相互遮擋外,同類別危險(xiǎn)品遮擋現(xiàn)象同樣對(duì)檢測(cè)性能帶來不可忽視的影響,此外,盡管所提模型的檢測(cè)速度滿足實(shí)時(shí)要求,但仍具有相當(dāng)大的提升空間。在深度學(xué)習(xí)領(lǐng)域中,許多小模型可以通過知識(shí)蒸餾和遷移學(xué)習(xí)相結(jié)合的方式使其具備同大模型相當(dāng)?shù)男阅鼙憩F(xiàn),因此下一步我們將采用該方式來降低模型推理時(shí)間,繼續(xù)提升模型的綜合性能。