蔣甜甜,葉學(xué)義,李 剛,楊夢豪,陳華華
(杭州電子科技大學(xué) 通信工程學(xué)院,浙江 杭州 310018)
人們對自身安全問題的持續(xù)關(guān)注,促進(jìn)了在公共場所以及一些重點(diǎn)場所安檢技術(shù)的發(fā)展。傳統(tǒng)的安檢技術(shù)包括X 射線探測器、金屬探測器[1]以及人工檢測[2],它們在人體健康和隱匿目標(biāo)檢測方面存在一定限制。由于毫米波輻射是非電離輻射[3],對衣物穿透性強(qiáng)[4],能夠在不傷害人體情況下進(jìn)行安全檢查,因而毫米波安檢技術(shù)越發(fā)受到關(guān)注;且隨著成像技術(shù)和計(jì)算機(jī)視覺的飛速發(fā)展,毫米波安檢技術(shù)逐漸與人工智能方法相結(jié)合。因?yàn)橹鲃?dòng)毫米波(Active Millimeter Wave,AMMW)[5]圖像質(zhì)量要高于被動(dòng)毫米波(Passive Millimeter Wave,PMMW)[6],對AMMW 圖像(包括陣列和線掃毫米波成像設(shè)備)的隱匿目標(biāo)檢測逐漸成為主流。
當(dāng)前AMMW 圖像隱匿目標(biāo)檢測已經(jīng)進(jìn)行了較為深入的研究,根據(jù)采用的方法不同,毫米波圖像隱匿目標(biāo)檢測可以分為傳統(tǒng)方法和深度學(xué)習(xí)方法[7]。用傳統(tǒng)方法檢測毫米波圖像隱匿目標(biāo)[8-9],雖然可以達(dá)到對目標(biāo)有效檢測,但模型泛化能力弱。隨著深度學(xué)習(xí)在目標(biāo)檢測領(lǐng)域取得顯著成果,采用深度卷積神經(jīng)網(wǎng)絡(luò)對毫米波圖像隱匿目標(biāo)檢測逐漸增多?;谏疃染矸e神經(jīng)網(wǎng)絡(luò)目標(biāo)檢測方法主要有兩種模型:基于區(qū)域提取兩步(Regions with CNN features,R-CNN)模型和一步回歸(You Only Look Once,YOLO)模型。在基于區(qū)域提取兩步R-CNN 模型中,對毫米波圖像隱匿目標(biāo)檢測算法研究大多采用Faster-RCNN[10],通過改進(jìn)Faster-RCNN 解決小數(shù)據(jù)集問題以及提升對于小目標(biāo)的檢測[1,11-12],但實(shí)時(shí)性與YOLO模型相比具有明顯劣勢。為了提升檢測效率,近年來采用YOLO 模型對毫米波圖像隱匿目標(biāo)檢測逐漸增多,致力于在滿足安檢實(shí)時(shí)性的前提下,提高檢測性能[13-15]。由于注意力機(jī)制可以加強(qiáng)與任務(wù)相關(guān)的信息關(guān)注,在增加少量參數(shù)情況下達(dá)到良好的檢測結(jié)果,并且YOLO 模型不斷改進(jìn),YOLOv5 與注意力機(jī)制相結(jié)合的目標(biāo)檢測方法在其他目標(biāo)領(lǐng)域已經(jīng)取得了顯著優(yōu)勢[16-17]。
相較于YOLOv3[18]和YOLOv4[19],YOLOv5[20]具有更好的檢測性能和優(yōu)越的實(shí)時(shí)性。在YOLOv5 4 種模型中,YOLOv5s 參數(shù)量最少、實(shí)時(shí)性更強(qiáng)、模型更靈活。由于當(dāng)毫米波圖像中隱匿目標(biāo)與背景紋理區(qū)分度較低時(shí)容易漏檢,以及公共場所對安檢實(shí)時(shí)性要求,選擇YOLOv5s 作為毫米波圖像隱匿目標(biāo)檢測的基本模型,構(gòu)建并提出基于全局通道注意增強(qiáng)的毫米波圖像目標(biāo)檢測模型,具體創(chuàng)新點(diǎn)如下:
(1)全局通道注意力增強(qiáng)器(Global Channel Attention Booster,GCAB),在坐標(biāo)注意力(Coordinate Attention,CA)[21]位置方向上引入全局通道注意模塊,生成GCAB,并與YOLOv5s 有效結(jié)合,提升對與背景紋理區(qū)分度較低的隱匿目標(biāo)檢測。
(2)重新聚類生成錨框,利用K-means++聚類算法[22]根據(jù)毫米波圖像隱匿目標(biāo)尺寸重新聚類生成新錨框,解決了原有錨框?qū)εc人體相對較小隱匿目標(biāo)檢測不適問題。
基于全局通道注意增強(qiáng)的檢測模型整體框架如圖1所示,其中灰色方框?yàn)樘岢龅腉CAB 模塊。模型主要包含3 部分:主干、頸部和頭部。主干包含5 級特征層,除第一級特征層外,其余每級特征層皆由CBS 和C3 模塊組成。CBS 模塊由Conv、BN 和SiLU[23]構(gòu)成,通過下采樣,將語義信息由低級向高級轉(zhuǎn)化;C3 借鑒了跨階段區(qū)域網(wǎng)絡(luò)(Cross Stage Partial Network,CSPNet)[24],由CBS、BottleNeck 和Contact 組成,主要用于特征的提取。頸部借鑒了聚合路徑網(wǎng)絡(luò)(Path Aggragation Network,PANet)[25],融合了主干網(wǎng)絡(luò)的第3~5 級特征圖,以獲得更多的上下文信息。頭部采用3 個(gè)檢測頭,分別用來檢測大、中、小隱匿目標(biāo)。模型在主干和頸部C3 模塊之后加入GCAB模塊,通過對上一級特征層的隱匿目標(biāo)特征信息加強(qiáng),有利于下一級特征層對隱匿目標(biāo)特征提取。在主干和頸部連接處加入GCAB 模塊,加強(qiáng)淺層細(xì)節(jié)。由于原檢測部分對所有通道處理看似公平但不合理,因此在頭部檢測之前,利用GCAB 模塊來加強(qiáng)重要通道特征權(quán)值。
圖1 模型整體框架
通道數(shù)的增加導(dǎo)致通道間相互信息減少,而每個(gè)通道被看作是一個(gè)特征檢測器,因而加強(qiáng)通道信息關(guān)注有利于檢測目標(biāo)。同時(shí),位置信息也不可缺失。CA 注意力機(jī)制既能生成通道注意力,又能生成與方向相關(guān)的位置注意力。但CA 是在位置信息嵌入的基礎(chǔ)上進(jìn)行注意力生成的,減弱了全局通道注意力的生成。因此,提出在CA 與輸入特征進(jìn)行加權(quán)之前,加入全局通道特征注意,增強(qiáng)全局通道信息關(guān)注,生成GCAB 模塊。
GCAB 模塊包含CA 和全局通道特征注意兩部分。算法流程圖如圖2 所示,其中,灰色方框表示全局通道特征注意部分,其余方框表示CA 部分。對于CA 部分,輸入特征圖Fin∈RC×H×W分別在X(X為特征圖寬度方向)和Y(Y為特征圖高度方向)方向上進(jìn)行一維全局平均池化,定義池化后高度為h時(shí)輸出特征圖Zh(h)∈RC×1×1和寬度為w時(shí)輸出特征圖Zw(w)∈RC×1×1公式如下:
圖2 GCAB 計(jì)算流程
其中,C、H和W分別為特征圖的通道數(shù)、高度和寬度。Fin(h,i)和Fin(j,w)分別為輸入Fin在高度為h時(shí)和寬度為w時(shí)的局部特征。
式(1)和式(2)分別在X和Y方向上生成的聚合特征圖為Zw∈RC×1×W和Zh∈RC×H×1,然后Contact 拼接特征圖Zw和Zh,經(jīng)過Conv2d 的1×1 卷積將通道數(shù)減少為,從而減少計(jì)算量,再經(jīng)過BN 歸一化和非線性性激活,得到在X和Y方向特征圖Z∈R(C/r)×1×(W+H):
其中,[,]是級聯(lián)操作,F(xiàn)1是1×1 卷積操作,δ是非線性激活函數(shù),r是減少率。
隨后將Z按空間維度分解成X和Y方向上特征圖fw∈R(C/r)×1×W和fh∈R(C/r)×H×1,再由1×1 的卷積恢復(fù)通道數(shù)為C,最后經(jīng)過Sigmoid 激活函數(shù)分別得到對Y方向和X方向通道加強(qiáng)特征gh∈RC×H×1和gw∈RC×1×W:
其中,F(xiàn)h和Fw為1×1 卷積操作,σ為Sigmoid 激活函數(shù)。
全局通道特征注意模塊如圖3 所示。將CA 在X和Y方向上生成的通道加強(qiáng)特征作為此模塊輸入。由于在X和Y方向上處理相同,選擇只對其中一個(gè)方向作詳細(xì)描述。以X方向上的處理為例,首先對在X方向上通道加強(qiáng)特征gw進(jìn)行一維全局平均池化,得到特征圖g∈RC×1×1:
圖3 全局通道特征注意模塊計(jì)算流程
再經(jīng)過兩個(gè)1×1 的卷積,先壓縮通道數(shù)為原通道數(shù)的1/r,再恢復(fù)成原通道數(shù),最后經(jīng)過Sigmoid 激活函數(shù)得到以X方向?yàn)榛A(chǔ)的全局通道加強(qiáng)特征權(quán)重xw∈RC×1×1:
其中,F(xiàn)1為改變通道數(shù)為C/r的卷積操作,F(xiàn)2為恢復(fù)通道數(shù)為C的卷積操作,r與CA 中減少率相同。
最后將在X方向上通道加強(qiáng)特征gw和以X方向?yàn)榛A(chǔ)的全局通道加強(qiáng)特征權(quán)重xw相乘,得到在X方向上加強(qiáng)的全局通道特征權(quán)重X∈RC×1×W:
同理,得到在Y方向上加強(qiáng)的全局通道特征權(quán)重Y∈RC×H×1,最后將在X和Y方向上加強(qiáng)的全局通道特征權(quán)重X、Y和輸入特征圖Fin相乘,得到全局通道增強(qiáng)后特征圖Fout∈RC×H×W:
在YOLOv5s 中,采用錨框擬合真值標(biāo)簽框,并根據(jù)錨框偏移量計(jì)算得到預(yù)測框,所以錨框尺寸選擇是影響目標(biāo)檢測結(jié)果的一個(gè)因素。YOLOv5s 原始錨框是根據(jù)COCO 數(shù)據(jù)集[26]由K-means 算法[27]得到的,COCO 數(shù)據(jù)集中目標(biāo)可以分成小尺寸(分辨率小于32×32)、中尺寸(分辨率大于32×32 且小于96×96)和大尺寸(分辨率大于96×96)3 種。而毫米波數(shù)據(jù)集中隱匿目標(biāo)相對于人體較小,通常在COCO 數(shù)據(jù)集小中尺寸目標(biāo)范圍內(nèi)。因此,采用YOLOv5s 原錨框不適合對毫米波隱匿目標(biāo)檢測。
為了提高YOLOv5s 回歸盒的能力,采用K-means++聚類算法分別對陣列圖像數(shù)據(jù)集和線掃圖像數(shù)據(jù)集重新聚類生成新錨框,結(jié)果如表1 第一行和第二行所示,表1 第三行表示YOLOv5s 原始錨框。將表1 中前兩行與第三行對比可以看出,用K-means++聚類算法對毫米波圖像數(shù)據(jù)集聚類出新錨框尺寸在原始錨框檢測小中目標(biāo)范圍內(nèi),進(jìn)一步驗(yàn)證了毫米波數(shù)據(jù)集中隱匿目標(biāo)尺寸處于COCO 數(shù)據(jù)集小中尺寸目標(biāo)范圍以及原始錨框不適合對毫米波數(shù)據(jù)集隱匿目標(biāo)檢測。
表1 K-means++聚類新錨框尺寸與原錨框尺寸對比結(jié)果 (px)
為了驗(yàn)證本文方法對不同成像設(shè)備的毫米波數(shù)據(jù)集中隱匿目標(biāo)的檢測能力,實(shí)驗(yàn)采用兩種主動(dòng)毫米波數(shù)據(jù)集:陣列圖像數(shù)據(jù)集和線掃圖像數(shù)據(jù)集(分別來自目前僅有的兩種實(shí)際應(yīng)用的主動(dòng)毫米波圖像采集設(shè)備)。為了得到更好的模型性能,選擇訓(xùn)練集、驗(yàn)證集和測試集比例為8:1:1(即整個(gè)數(shù)據(jù)集中訓(xùn)練集占80%、驗(yàn)證集占10%、測試集占10%)。
陣列圖像數(shù)據(jù)集中每個(gè)模特通過陣列設(shè)備掃描產(chǎn)生正面和背面各一張圖像,圖像分辨率為1 024×2 048,如圖4 所示,實(shí)驗(yàn)選取24 700 張圖像,以正面或背面單張圖像劃分訓(xùn)練集、驗(yàn)證集和測試集。
圖4 陣列圖像數(shù)據(jù)集
線掃圖像數(shù)據(jù)集中每個(gè)模特由線掃設(shè)備旋轉(zhuǎn)掃描產(chǎn)生正面和背面各9 張不同角度的圖像,圖像分辨率為400×762,如圖5 所示,圖中方框?yàn)槟繕?biāo)真值框,其中(a)為模特正面的順時(shí)針成像9 張圖,(b)為模特背面的逆時(shí)針成像9 張圖。實(shí)驗(yàn)選取38 240 張圖像并將正面9 張圖像和背面9 張圖像各合為一組,然后再劃分訓(xùn)練集、驗(yàn)證集和測試集。
圖5 線掃圖像數(shù)據(jù)集
實(shí)驗(yàn)采用訓(xùn)練輪次為180,輸入圖片大小在訓(xùn)練中調(diào)整為640 px×640 px,批次大小為32,優(yōu)化器采用隨機(jī)梯度下降法。在實(shí)驗(yàn)中所用評估參數(shù)為精度(P)、召回率(R)和平均精度(mAP)。P表示在所有預(yù)測為真的時(shí)候,正確預(yù)測標(biāo)簽所占的比例。R表示預(yù)測為真當(dāng)中的正確預(yù)測占所有真實(shí)標(biāo)簽的比例。AP 表示在不同置信度閾值下精度和召回率圍成的面積,mAP 表示所有類別平均的平均精度,用來判斷模型優(yōu)劣。由于對毫米波圖像隱匿目標(biāo)檢測時(shí),不需要更精確的輪廓位置,當(dāng)預(yù)測框和目標(biāo)框面積的交并比(Intersection over Union,IOU)為0.5 時(shí)便判定檢測到目標(biāo),因而評價(jià)標(biāo)準(zhǔn)采用IOU=0.5 時(shí)指標(biāo)。
2.3.1 對比實(shí)驗(yàn)
為了驗(yàn)證本文方法有效性,將其與主流檢測模型在陣列毫米波圖像數(shù)據(jù)集上做對比實(shí)驗(yàn),包括Faster RCNN、YOLOv3、YOLOv4、YOLOV5s、YOLOv5m、YOLOv6[28]、YOLOv7[29]、YOLOv8[30]。對比的性能指標(biāo)有P、R、mAP@.5、模型參數(shù)量和平均單張圖像推理時(shí)間(表示圖像歸一化后輸入模型到得到輸出結(jié)果的時(shí)間,不包括非最大抑制比處理時(shí)間),實(shí)驗(yàn)結(jié)果如表2 所示。
表2 不同檢測模型實(shí)驗(yàn)對比結(jié)果
由表2 可得,本文方法與其他主流檢測模型相比,R和mAP@.5 均為最優(yōu),比最差的YOLOv3 分別增加了5.79% 和4.48%,比YOLOv5m 分別增加了0.64% 和0.39%。在參數(shù)量和單張圖像推理時(shí)間上比YOLOv3 分別少54.3 M(M 表示百萬)和2.8 ms,比YOLOv5m 少13.6 M 和0.8 ms。與后續(xù)的YOLOv6s、YOLOv7 和YOLOv8s 相比,本文方法在P、R和mAP@.5 上仍優(yōu)異。相比于原YOLOv5s,本文方法在增加0.2 M 參數(shù)量和0.2 ms的單張圖像推理時(shí)間基礎(chǔ)上,P、R和mAP@.5 分別增加了0.63%、1.37%和1.12%。上述結(jié)果表明,本文方法比原YOLOv5s 增加了隱匿目標(biāo)檢測數(shù)量,減少了誤檢數(shù)量且模型性能最好;在單張圖像推理時(shí)間上與現(xiàn)有主流檢測模型相比,實(shí)時(shí)性依然出色。
實(shí)驗(yàn)結(jié)果在毫米波圖像上表現(xiàn)如圖6 所示,其中行表示不同樣本,列分別表示標(biāo)簽圖、YOLOv5s 檢測結(jié)果圖、K-mean++聚類生成新錨框后檢測結(jié)果圖以及采用本文方法所得檢測結(jié)果圖。在標(biāo)簽圖上的方框表示隱匿目標(biāo)的真值框,在其余圖上方框表示隱匿目標(biāo)檢測框。從樣本1 到樣本4 檢測結(jié)果可以看出,本文方法在原YOLOv5s 檢測基礎(chǔ)上增加了隱匿目標(biāo)檢測,其中包含了與背景紋理區(qū)分較低的隱匿目標(biāo)。
圖6 陣列圖像數(shù)據(jù)集檢測結(jié)果
2.3.2 消融實(shí)驗(yàn)
為了驗(yàn)證K-means++聚類算法和GCAB 模塊有效性,在YOLOv5s 中融合CA 模塊、改進(jìn)后GCAB 模塊、Kmeans++聚類算法以及GCAB模塊+K-means++聚類算法進(jìn)行消融實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表3所示(加粗字體為每列最優(yōu)值)。
表3 消融實(shí)驗(yàn)對比結(jié)果
由表3 可知,改進(jìn)后GCAB 模塊的檢測性能優(yōu)于CA 模塊,P和mAP@.5 分別增加了0.49%和0.15%;且YOLOv5s 單獨(dú)融合K-means++聚類算法或GCAB 模塊后檢測性能得到提升,與之相比,同時(shí)融合GCAB 模塊和K-means++聚類算法后檢測性能得到進(jìn)一步提升,P、R和mAP@.5 比原YOLOv5s 分別增加了0.63%、1.37% 和1.12%。結(jié)合圖6 和表3 結(jié)果可知,融合Kmeans++聚類算法后,樣本1 和樣本2 增加了臀部和大腿處隱匿目標(biāo)檢測;在此基礎(chǔ)上融合GCAB 模塊后,在樣本1 和樣本2 上的檢測結(jié)果和融合K-means++聚類算法時(shí)檢測結(jié)果相同,同時(shí)增加了樣本3 和樣本4 在后腰和胸前與背景紋理區(qū)分較低的隱匿目標(biāo)檢測。說明GCAB 模塊增加了對與背景區(qū)分度較低的隱匿目標(biāo)檢測,K-means++聚類算法生成新錨框后增加了對隱匿目標(biāo)檢測,與YOLOv5s 原錨框相比更適合對與人體相對較小的隱匿目標(biāo)檢測。
在線掃圖像數(shù)據(jù)集上,分別采用本文方法與現(xiàn)有主流檢測模型作對比,包括YOLOv3、YOLOv4、YOLOv5s、YOLOv5m、YOLOv6s、YOLOv7、YOLOv8s。對比性能指標(biāo)有P、R、mAP@.5、模型參數(shù)量和平均單張圖像推理時(shí)間,實(shí)驗(yàn)結(jié)果如表4 所示(加粗字體為每列最優(yōu)值)。
表4 不同模型實(shí)驗(yàn)對比結(jié)果
由表4 可得,本文方法在P、R和mAP@.5 均優(yōu)于其他主流檢測模型,比最差的YOLOv3 分別增加了1.93%、5.67%和3.39%,比YOLOv5m 分別增加了0.02%、0.24% 和0.18%。在參數(shù)量和單張圖像推理時(shí)間上比YOLOv3 分別少54.3 M 和2.8 ms,比YOLOv5m 少13.6 M 和0.8 ms。與后續(xù)YOLOv6s、YOLOv7 以及YOLOv8s 相比,本文方法所得結(jié)果仍優(yōu)異。相比于原YOLOv5s,本文方法在增加0.2 M 參數(shù)量和0.2 ms 的單張圖像推理時(shí)間基礎(chǔ)上,P、R和mAP@.5 分別增加了1.08%、0.38%和0.68%。上述結(jié)果表明,本文方法比原YOLOv5s 增加了隱匿目標(biāo)檢測數(shù)量,減少了誤檢數(shù)量且模型性能最好;在單張圖像推理時(shí)間上與現(xiàn)有主流檢測模型相比,實(shí)時(shí)性依然出色。
實(shí)驗(yàn)結(jié)果在毫米波圖像上表現(xiàn)如圖7 所示,其中行表示不同樣本,列分別表示標(biāo)簽圖、YOLOv5s 檢測結(jié)果圖以及采用本文方法所得檢測結(jié)果圖。在標(biāo)簽圖上的方框表示隱匿目標(biāo)的真值框,其余圖上方框表示隱匿目標(biāo)檢測框。從樣本1 到樣本3 檢測結(jié)果可以看出,本文方法在原YOLOv5s 檢測基礎(chǔ)上,增加了在人體手腕、胳膊肘和腋下部位與背景紋理區(qū)分度較低的隱匿目標(biāo)檢測。
圖7 線掃圖像數(shù)據(jù)集檢測結(jié)果
本文將YOLOv5s 模型與GCAB 和K-means++聚類算法相結(jié)合,提出了基于全局通道注意力增強(qiáng)毫米波圖像目標(biāo)檢測方法。其中,通過GCAB 提升與背景紋理區(qū)分度較小時(shí)隱匿目標(biāo)的檢測能力,并利用K-means++聚類算法根據(jù)毫米波圖像數(shù)據(jù)集重新聚類生成更適合對與人體相對較小隱匿目標(biāo)檢測的新錨框。實(shí)驗(yàn)在陣列圖像數(shù)據(jù)集和線掃圖像數(shù)據(jù)集上的結(jié)果表明,與現(xiàn)有主流檢測模型相比較,本文方法在增加少量參數(shù)的基礎(chǔ)上,精度和召回率上表現(xiàn)較好且mAP@.5 最高,模型性能最好。平均單張圖像推理時(shí)間達(dá)到1 ms,與現(xiàn)有主流方法相比,實(shí)時(shí)性仍然優(yōu)異。由上述結(jié)果可知,本文方法在滿足實(shí)時(shí)性的情況下,提升了檢測性能。