石瑞姣,陳后金,李居朋,李艷鳳,李 豐,萬成凱
(1.北京交通大學 電子信息工程學院, 北京 100044;2.北京世紀瑞爾技術股份有限公司, 北京 100085)
鐵路運輸兼顧貨運和客運,是關乎國計民生的運輸大動脈?,F(xiàn)階段鐵路運輸無法做到全封閉運行,因鐵路基礎防護設施薄弱而導致的鐵路交通事故時有發(fā)生。其中,鐵路關鍵區(qū)域行人入侵是影響鐵路行車安全的重要因素,對鐵路區(qū)域進行實時行人檢測對于保障行車安全具有重要意義。近年來,利用深度學習進行行人檢測取得了飛速發(fā)展。相較于傳統(tǒng)算法,深度學習可以自動學習行人高級語義特征,具有更高的檢測精度和更強的泛化能力。
現(xiàn)有基于深度學習的行人檢測算法主要分為三類[1]:第一類是一階段檢測算法,將整個檢測環(huán)節(jié)作為一個回歸及分類問題處理,檢測速度快但準確性低,代表性算法有SSD[2]、YOLO系列[3-6]、RetinaNet[7]等;第二類是二階段檢測算法,利用區(qū)域候選網(wǎng)絡產(chǎn)生候選區(qū)域,在候選區(qū)域分類和回歸輸出檢測結果,準確度高但檢測速度慢,代表性算法有Faster R-CNN[8]、Mask R-CNN[9]等;第三類是多階段檢測算法,通過迭代二階段檢測器逐步提高網(wǎng)絡檢測的準確度,檢測精度高于二階段檢測網(wǎng)絡,但檢測速度明顯變慢,主要包括Cascade R-CNN[10]、級聯(lián)全卷積神經(jīng)網(wǎng)絡[11]等算法。目前基于深度學習的目標檢測算法在大、中尺度行人目標上取得了較高的檢測精度,但由于小尺度行人本身像素點少,攜帶特征信息不足,且經(jīng)卷積神經(jīng)網(wǎng)絡多次降采樣后部分行人信息丟失,因此針對小尺度行人的檢測仍面臨巨大挑戰(zhàn)。
現(xiàn)有小尺度行人檢測算法多是在通用行人檢測算法上進行改進,以提升算法對于行人尺度變化的魯棒性,從而提高小尺度行人檢測精度。其中,針對小目標檢測最通用且最有效的改進方式為高、低層特征融合,充分利用低層特征圖的位置信息和高層特征圖的語義信息提高小目標檢測精度。2016年,Liu等[2]提出的SSD算法第一次嘗試利用不同層級特征圖進行不同尺度目標的檢測,但由于低層特征圖感受野小、包含語義信息不足,導致SSD算法對小目標檢測精度低。為解決SSD算法存在的缺點,2017年,特征金字塔網(wǎng)絡(Feature Pyramid Networks,F(xiàn)PN)[12]被提出,通過自頂向下的路徑和橫向連接實現(xiàn)高、低層特征圖融合,得到兼具高分辨率和高語義性的特征圖,對小目標的檢測精度有了明顯提高,但該方法在網(wǎng)絡中引入額外的網(wǎng)絡層,增大了計算量,影響了檢測的實時性。為此,文獻[13]提出尺度變換模塊,在不增加額外參數(shù)的前提下獲得不同尺度的語義特征。2017年,DSSD[14]算法被提出,將SSD的基礎網(wǎng)絡由VGG替換為ResNet-101,同時在SSD的輔助卷積層之后添加反卷積層形成“寬-窄-寬”的沙漏結構,增強低層特征圖的語義信息,顯著提升了小目標檢測精度。2018年,YOLOv3[5]算法被提出,借鑒FPN的思想,融合3個不同層的特征圖分別對不同尺度目標進行檢測。文獻[15]利用FPN提取多尺度融合特征,同時利用在線困難樣本挖掘篩選出困難樣本重新送入網(wǎng)絡訓練,解決了正負樣本不均衡的問題。2019年,Golnaz等[16]提出基于自動架構搜索的FPN結構,利用強化學習訓練控制器在給定的搜索空間中選擇最優(yōu)的模型架構,具有良好的靈活性和較高的檢測性能。
上述基于FPN的多尺度目標檢測器顯著提升了網(wǎng)絡對于小目標的檢測性能,但直接將高、低層特征融合忽略了低層特征圖中背景噪聲的干擾。低層特征圖感受野小、語義信息弱,包含大量背景噪聲,直接與上采樣后的高層特征圖融合易將背景噪聲向后傳播,影響檢測精度。
為有效解決大視場中小尺度行人檢測精度低的問題,本文以YOLOv3為主干網(wǎng)絡提出一種注意力機制引導下的多級特征融合網(wǎng)絡模型(Attention Multi-Level Feature Fusion Network,AMFF-Net)。首先,通過將注意力機制引導下的特征融合與YOLOv3網(wǎng)絡相結合,抑制背景噪聲向后傳播;其次,針對多次降采樣后小尺度行人特征信息丟失的問題,設計四倍降采樣預測分支,利用高分辨率特征圖進行小尺度行人檢測;最后,將CIoU損失函數(shù)作為目標框回歸損失函數(shù),解決均方誤差用于目標框回歸時存在的優(yōu)化不一致及尺度敏感問題。在私有數(shù)據(jù)集和Caltech公開數(shù)據(jù)集的測試結果表明,本文算法相較于原始YOLOv3具有更低的對數(shù)平均漏檢率。
YOLOv3網(wǎng)絡由特征提取和多尺度預測兩階段組成。特征提取階段,YOLOv3將Darknet-53作為特征提取網(wǎng)絡,該網(wǎng)絡由53個卷積層組成,通過改變卷積核滑動步長完成張量尺寸的變化,避免了因池化造成的小尺度行人特征信息丟失,同時引入殘差塊結構,在增加網(wǎng)絡深度的同時降低產(chǎn)生過擬合的風險。多尺度預測階段,YOLOv3網(wǎng)絡借鑒FPN的思想,融合3個不同層特征圖以提升目標檢測性能。多尺度預測結構示意見圖1。
圖1 多尺度預測結構示意
YOLOv3損失函數(shù)分三部分:目標框預測損失、置信度預測損失和類別預測損失。其中,目標框預測采用均方誤差(Mean Square Error,MSE)損失函數(shù),置信度預測和類別預測采用交叉熵損失函數(shù)。損失函數(shù)計算方式為
(1)
利用YOLOv3網(wǎng)絡進行小尺度行人檢測存在以下問題:
(1)YOLOv3網(wǎng)絡利用八倍降采樣后的特征圖進行小目標檢測,小尺度行人特征信息嚴重丟失。
(2)低層特征圖語義信息弱,包含大量背景噪聲,直接與上采樣后的高層特征圖融合導致背景噪聲向后傳播,干擾后續(xù)行人目標預測。圖2中融合前后特征圖對比證實了這一觀點。
圖2 YOLOv3網(wǎng)絡高低層特征融合前后對比
(3)目標檢測任務通用距離測量標準為交并比(Intersection over Union,IoU),其計算方式為
(2)
式中:P、G分別為預測框和真實框;IPG為P與G的交并比。使用均方誤差作為目標框回歸損失函數(shù)存在優(yōu)化不一致的問題,且均方誤差對目標框尺度敏感,不具有尺度不變性。
針對上述基于YOLOv3網(wǎng)絡的小尺度行人檢測所存在的問題,本文從多尺度目標預測、注意力機制引導下的特征融合、損失函數(shù)優(yōu)化3個方面對YOLOv3作出改進,提出小尺度行人檢測模型AMFF-Net。
為避免多次降采樣后小尺度行人特征信息丟失,設計了四分支目標檢測網(wǎng)絡。四分支YOLOv3網(wǎng)絡結構見圖3。將YOLOv3中用于小目標預測的八倍降采樣特征圖進行二倍上采樣后與Darknet-53特征提取網(wǎng)絡第2個殘差模塊輸出的特征圖進行融合,構建四倍降采樣分支進行小目標檢測。
圖3 四分支YOLOv3網(wǎng)絡結構
圖4 引入注意力機制抑制低層特征圖中背景噪聲實現(xiàn)流程
CSAM用于注意力模塊中權重系數(shù)生成的網(wǎng)絡結構見圖5。圖5中:上分支為通道注意力模塊(Channel Attention Module,CAM),采用SENet網(wǎng)絡[17]的權重生成方式,維度為w×h×c的輸入特征圖首先通過全局平均池化(Global Average Pooling,GAP)將維度壓縮為1×1×c,然后經(jīng)過兩次全連接層(fully connected layers,F(xiàn)C)生成通道注意力權重;下分支為空間注意力模塊(Spatial Attention Module,SAM),采用CBAM網(wǎng)絡[18]的空間注意力權重生成方式,維度為w×h×c的輸入特征圖分別進行全局平均池化和全局最大池化(Global Max Pooling,GMP)輸出兩幅維度為w×h×1的特征圖,將兩幅特征圖橫向連接后經(jīng)過7×7卷積得到空間注意力權重;通道注意力權重與空間注意力權重經(jīng)過Sigmoid歸一化后點乘生成CSAM注意力權重。
圖5 CSAM注意力網(wǎng)絡結構
針對均方誤差用于目標框回歸所存在的優(yōu)化不一致及尺度敏感問題,本文基于比值的概念重新設計具有尺度不變性的目標框回歸損失函數(shù)——CIoU損失函數(shù),其具體計算方式為
LCIoU=1-IPG+RCIoU
(3)
(4)
(5)
(6)
式中:b、bgt分別為兩框的中心點;ρ為兩中心點間歐式距離;c為同時覆蓋預測框和目標框的最小矩形的對角線距離;w、h為預測框的寬、高;wgt、hgt為真實框的寬、高;v為用來衡量預測框和目標框之間寬高比例的一致性;α為用于平衡比例的參數(shù)。從α參數(shù)的定義可以看出,CIoU損失函數(shù)更傾向于向重疊區(qū)域增多的方向優(yōu)化。
CIoU損失函數(shù)以IoU損失函數(shù)為主體,有效解決了均方誤差作為目標框回歸損失函數(shù)時的優(yōu)化不一致及尺度敏感問題。在此基礎上加入懲罰項RCIoU,用于對預測框形狀以及距真實框中心點的距離進行約束。
CIoU損失函數(shù)中充分考慮到影響目標框回歸效果的3個重要幾何因素:重疊面積、中心點距離和寬高比。通過在IoU損失函數(shù)基礎上引入中心點歸一化距離以及寬高比例因子,有效改善IoU損失函數(shù)無法優(yōu)化真實框和預測框不相交的情況,以及在兩框相交時無法區(qū)分其相對位置的缺陷,使得回歸過程更穩(wěn)定。
為滿足實際應用需求,使算法更好地契合鐵路場景,構建了Railway私有數(shù)據(jù)集(以下簡稱“Railway數(shù)據(jù)集”),并與Microsoft COCO Dataset數(shù)據(jù)集(以下簡稱“COCO數(shù)據(jù)集”)共同構成聯(lián)合數(shù)據(jù)集進行網(wǎng)絡模型訓練。Railway數(shù)據(jù)集中圖像采集區(qū)域主要包括火車站臺、鐵路道口及鐵路沿線等,為保證數(shù)據(jù)集中圖像多樣性,對采集到的視頻每秒抽取一幀構成最終數(shù)據(jù)集。Railway數(shù)據(jù)集相關屬性信息見表1,不同場景下行人圖像示例見圖6。
表1 Railway數(shù)據(jù)集屬性信息
圖6 Railway數(shù)據(jù)集不同場景下行人圖像示例
從圖6中可以看出,由于鐵路沿線監(jiān)控位點距離行人較遠,采集到的圖像多為大場景下的小尺度行人(本文將小尺度行人具體定義為寬度小于20像素的行人)。
將COCO、Railway數(shù)據(jù)集的訓練集合并作為聯(lián)合數(shù)據(jù)集的訓練集,Railway數(shù)據(jù)集的測試集作為聯(lián)合數(shù)據(jù)集的測試集。
為了更加客觀地對算法檢測性能進行評價,本文將通用的行人檢測評價指標——對數(shù)平均漏檢率LAMR作為算法性能定量評價標準。LAMR根據(jù)MissRate-FPPI曲線計算得出,MissRate-FPPI曲線橫坐標為每張圖像的誤檢率FPPI,縱坐標為漏檢率MissRate。在MissRate-FPPI曲線橫坐標的(10-2,100)區(qū)間上以0.25為間隔取9個點,9個點對應漏檢率對數(shù)的平均值作為e的指數(shù)獲得LAMR,具體計算方式為
(7)
(8)
(9)
式中:FN為假陰性,表示漏檢行人數(shù)量;NP為測試集中行人總數(shù);FP為假陽性,代表誤檢行人數(shù)量;NI為測試集中包含的圖像數(shù)量。
Railway數(shù)據(jù)集中圖像分辨率為1 920×1 080,YOLOv3網(wǎng)絡輸入尺寸為608×608,為避免圖像輸入網(wǎng)絡時因過度縮放而造成小尺度行人信息丟失,將1 920×1 080分辨率的圖像左右重疊拆分為兩張分辨率為1 080×1 080的圖像,兩張圖像之間有重疊,可有效應對行人剛好位于圖像正中間的情況。將拆分后的1 080×1 080分辨率的圖像等比例縮放至608×608送入網(wǎng)絡訓練。
3.3 鋼纖維再生混凝土的軸心抗拉強度與鋼纖維含量特征值呈線性增長的關系,劈裂抗拉強度基本呈三段式線性增長的關系。鋼纖維的含量特征值在0.2~0.4之間時,劈裂抗拉強度增長較快,含量特征值在0.5時達到頂峰。但是,鋼纖維對再生混凝土軸心抗拉強度的影響系數(shù)遠小于鋼纖維對再生混凝土劈裂抗拉強度的影響系數(shù)。
網(wǎng)絡基于Tensorflow框架實現(xiàn),操作系統(tǒng)為Ubuntu 16.04,服務器顯卡配置為GeForce GTX 1080 Ti。訓練所需超參數(shù)設置為:batchsize設置為32,subdivisions為16,動量為0.9,權重衰減為0.000 5,初始學習率為0.001,迭代30 000次,訓練至20 000和25 000次時分別對當前學習率進行0.1倍的衰減。
3.3.1 Railway數(shù)據(jù)集測試結果
(1)加入注意力機制前后檢測結果對比
在特征融合階段加入CSAM注意力模塊對低層特征圖中背景噪聲進行抑制,定性說明注意力機制對于背景噪聲的抑制作用。加入注意力機制前后特征圖可視化結果對比見圖7。
圖7 加入注意力機制前后特征圖可視化結果對比
由圖7(b)可以看出:低層特征圖中包含大量背景噪聲;如不對背景噪聲進行抑制而直接與高層特征圖融合,會導致融合后特征圖存在背景噪聲干擾,見圖7(c);引入CSAM注意力后背景噪聲得到有效抑制,見圖7(d),從而說明了改進的有效性。
(2)綜合改進檢測結果對比
依次將CIoU損失函數(shù)、四倍降采樣預測分支、通道-空間注意力機制加入YOLOv3網(wǎng)絡,在Railway數(shù)據(jù)集測試改進前后算法檢測性能。網(wǎng)絡綜合改進前后測試結果對比見表2。
表2 網(wǎng)絡綜合改進前后測試結果對比
由表2可以看出:將CIoU損失函數(shù)用于訓練過程中目標框回歸時,使YOLOv3在不改變參數(shù)量和計算量的前提下對數(shù)平均漏檢率降低了3.2%;在此基礎上增加四倍降采樣分支,運行速度降低了1.93 fps,對數(shù)平均漏檢率進一步降低了6%;在特征融合階段引入通道注意力和空間注意力均可以提高網(wǎng)絡檢測精度,兩種注意力疊加使用時檢測精度進一步提高,對數(shù)平均漏檢率降低了1.85%,檢測速度略有降低。
圖8 改進前后算法測試結果對比
改進前后算法在Railway數(shù)據(jù)集的檢測結果示例見圖9。圖9(a)中紅色框為人工標記的真實框,圖9(b)和圖9(c)中藍色框為改進前后網(wǎng)絡預測框。由圖9中可見,使用YOLOv3檢測時漏檢的行人通過本文算法成功被檢出。
圖9 改進前后算法在Railway數(shù)據(jù)集檢測結果示例
為進一步驗證本文算法的優(yōu)越性,將本文算法與現(xiàn)階段其他小目標檢測算法進行對比。不同算法訓練所用數(shù)據(jù)集及實驗環(huán)境配置相同,其在Railway數(shù)據(jù)集測試結果對比見表3。
表3 不同算法在Railway數(shù)據(jù)集測試結果對比
從表3中可以看出,本文算法在檢測精度上具有明顯優(yōu)勢,相較于原始YOLOv3網(wǎng)絡對數(shù)平均漏檢率降低了11.31%,相較于其他改進YOLOv3算法仍具有更高的檢測精度。但由于本文算法在原始YOLOv3網(wǎng)絡基礎上增加了四倍降采樣分支以及CSAM注意力機制,網(wǎng)絡層數(shù)增加增大了網(wǎng)絡的參數(shù)量及運算量,致使檢測速度有所降低。
3.3.2 Caltech公開數(shù)據(jù)集測試結果
為驗證本文算法泛化性能以及與現(xiàn)階段主流算法進行對比,在Caltech公開數(shù)據(jù)集上對算法檢測性能進行評估。Caltech數(shù)據(jù)集采集自10 h的車載視頻,分辨率為640×480。按照常規(guī)劃分,set00~set05子集中每3幀取一幀構成訓練集,set06~set10子集中每30幀取一幀構成測試集,網(wǎng)絡輸入為608×608。
由于本文將小尺度行人定義為寬度小于20像素的行人,因此在Caltech數(shù)據(jù)集的“Scale=Far”(行人寬度為0~12像素)和“Scale=Medium”(行人寬度為12~32像素)子集上測試本文算法對小尺度行人的檢測性能。同時,為進一步驗證本文算法對所有尺度行人的普適性,在“Reasonable”和“All”子集上對算法進行測試。不同算法在Caltech數(shù)據(jù)集測試結果對比見表4。
表4 不同算法在Caltech數(shù)據(jù)集測試結果對比
從表4可以看出,本文算法在“Reasonable”子集的對數(shù)平均漏檢率與SDS-RCNN算法存在2.34%的差距,但在“All”“Scale=Medium”“Scale=Far”子集相較于其他算法均具有更高的檢測精度,對數(shù)平均漏檢率明顯降低。在檢測速度方面,本文算法相較于SA-FastRCNN等網(wǎng)絡檢測速度較快,但由于網(wǎng)絡層數(shù)增加致使本文算法相較于原始YOLOv3檢測速度有所降低。
(1)本文針對使用YOLOv3網(wǎng)絡進行小尺度行人檢測時存在的不足,從多尺度預測、特征融合、損失函數(shù)優(yōu)化三方面對網(wǎng)絡作出改進,提出了一種基于注意力和多級特征融合的鐵路場景小尺度行人檢測網(wǎng)絡AMFF-Net。
(2)通過在Railway私有數(shù)據(jù)集和Caltech公開數(shù)據(jù)集上測試,本文算法相較于原始YOLOv3網(wǎng)絡雖然運行速度有所降低,但檢測精度明顯提升,在Railway數(shù)據(jù)集上對數(shù)平均漏檢率降低了11.3%,在Caltech數(shù)據(jù)集的不同子集中對數(shù)平均漏檢率均有明顯降低。在后續(xù)研究中可通過將網(wǎng)絡輕量化進一步加快算法檢測速度。