• 
    

    
    

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

      基于改進SSD的魯棒小目標(biāo)檢測算法

      2023-12-21 06:14:38李學(xué)偉劉宏哲
      關(guān)鍵詞:卷積局部特征

      秦 振,李學(xué)偉,劉宏哲

      (1.北京聯(lián)合大學(xué)北京市信息服務(wù)工程重點實驗室,北京 100101;2.北京聯(lián)合大學(xué)機器人學(xué)院,北京 100101)

      0 引言

      目標(biāo)檢測是計算機視覺領(lǐng)域中一項基礎(chǔ)的任務(wù),被廣泛應(yīng)用于車輛檢測、行人檢測、交通燈檢測等系統(tǒng)中.隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,基于傳統(tǒng)手工特征的目標(biāo)檢測算法逐漸被淘汰,基于深度學(xué)習(xí)的方法由于能夠同時處理特征提取和分類,以其優(yōu)越的性能而被廣泛使用.基于深度學(xué)習(xí)的目標(biāo)檢測方法可以分為一階段和兩階段方法.以R-CNN系列[1-3]為代表的兩階段方法首先在圖像上生成候選區(qū)域,然后對每一個候選區(qū)域依次進行分類與邊界回歸.而單階段方法能夠在單個步驟中完成目標(biāo)的定位和分類,其檢測精度有所損失,但運行速度快,滿足自動駕駛系統(tǒng)等現(xiàn)實應(yīng)用對目標(biāo)檢測算法的實時性要求[4].

      YOLO[5]和SSD[6]是目前最流行的單階段目標(biāo)檢測算法.YOLO將輸入圖像分成S×S個方格,物體中心點落在某個方格內(nèi),就由該方格負責(zé)預(yù)測物體.YOLOv2[7]從原始YOLO中刪除了全連接層,并應(yīng)用錨框來提升算法的檢測精度.YOLO和YOLOv2對于小對象的檢測效果不理想,為了解決這個問題,YOLOv3[8]采用多尺度特征圖進行檢測,提高算法對小目標(biāo)的檢測準(zhǔn)確率.YOLOv4[9]并未進行理論創(chuàng)新,而是在原始YOLO的基礎(chǔ)上采用優(yōu)化策略來提升檢測準(zhǔn)確率.

      SSD算法的速度與YOLO相當(dāng),它的檢測精度與Faster R-CNN相當(dāng).SSD算法通過卷積神經(jīng)網(wǎng)絡(luò)提取多尺度特征,可以預(yù)測多尺度目標(biāo)對象.基于SSD的各種研究的特征金字塔結(jié)構(gòu)對多尺度對象的魯棒性不強,為了提高SSD算法對多尺度對象的魯棒性,對特征金字塔進行了重構(gòu).SD-SSD[10]通過分段反卷積重新設(shè)計了融合結(jié)構(gòu),豐富底層特征圖語義信息,提高小目標(biāo)檢測精度.FD-SSD[11]采用空洞卷積獲得特征的多尺度上下文信息,同時在通道方向上將深層特征與淺層特征進行連接,增強底層特征的語義信息來提高小目標(biāo)的檢測精度.文獻[12]提出新的特征融合模塊來豐富細節(jié)信息,同時引入注意力機制突出特征圖中的關(guān)鍵信息.DF-SSD[13]使用DenseNet作為特征提取主干,同時引入了多尺度特征層的融合機制,將網(wǎng)絡(luò)結(jié)構(gòu)中的淺層視覺特征和深層語義特征有機地結(jié)合起來.最后,在目標(biāo)預(yù)測之前建立一個殘差塊,以進一步提高模型性能.文獻[14]采用基于可變形卷積的ResNet50作為特征提取網(wǎng)絡(luò),通過特征融合與引入注意力機制來提高檢測性能.TTB-SSD[15]提出一種結(jié)合PANet多尺度特征融合網(wǎng)絡(luò)和自上向下特征融合路徑的改進算法,使得深層特征能夠準(zhǔn)確地對小目標(biāo)進行定位,強化淺層特征對小目標(biāo)檢測的準(zhǔn)確率.但在自動駕駛等現(xiàn)實應(yīng)用場景中,受到雨雪、光照、遮擋等情況的影響,現(xiàn)有算法對小目標(biāo)的檢測精度明顯降低,魯棒性不強.

      因此,本文提出一種基于改進SSD的魯棒小目標(biāo)檢測算法.提出了一種新穎的特征金字塔結(jié)構(gòu),該結(jié)構(gòu)通過連接SSD的相鄰特征層來生成,有效地利用上下文信息提高小目標(biāo)檢測精度.設(shè)計了非局部特征增強模塊,用于提取不同大小的非局部特征之間的關(guān)系,增強特征映射.在公開數(shù)據(jù)集PASCAL VOC和KITTI上的實驗結(jié)果表明,本文方法提升了SSD算法的小目標(biāo)檢測準(zhǔn)確率,且比現(xiàn)有方法具有更好的小目標(biāo)檢測性能.

      1 改進SSD算法

      通過融合SSD相鄰的特征圖,同時設(shè)計非局部特征增強模塊,提高網(wǎng)絡(luò)對小目標(biāo)的魯棒性,圖1為基于改進SSD的整體模型圖.

      圖1 改進SSD的整體結(jié)構(gòu)

      1.1 整體結(jié)構(gòu)

      本文方法的基本框架基于SSD算法,采用VGG16作為骨干網(wǎng)絡(luò)進行特征提取,將VGG16中的全連接層FC6和FC7通過權(quán)重采樣變成卷積層Conv6和Conv7.SSD中卷積層Conv4、Conv7、Conv8、Conv9、Conv10與Conv11生成不同分辨率的特征圖,通過所提出的特征融合模塊將這些特征進行融合.選擇將相鄰的特征圖進行融合,對上下文具有魯棒性,而不會丟失細節(jié)信息.表1為融合后特征層的詳細信息.

      表1 融合特征的詳細信息

      從表1中可以看出,本文方法將原始SSD的Conv4層每個單元錨框的數(shù)量由4個增加到6個,允許更多的錨框作為小目標(biāo)的輸出,提高小目標(biāo)的檢測性能.同時這些特征圖具有連續(xù)遞減的空間分辨率和遞增的感受野,更低層的特征層由于感受野較小,可以關(guān)聯(lián)小尺度的錨框,用于檢測小目標(biāo).因此,本文方法在最底層的兩個特征層中應(yīng)用提出的非局部特征增強模塊,更專注于小目標(biāo)檢測.

      本文方法的中間特征層Conv8和Conv9是由RFB生成的.如圖2所示,RFB通過將給定的特征圖分為3個具有不同感受野的特征圖,并將它們再次合并,形成了與人類視覺相似的感受野模型,提高了特征圖的辨識度和魯棒性.而最頂層的特征圖由于分辨率太低,無法應(yīng)用特征增強模塊,即Conv10和Conv11層的特征圖并沒有使用特征增強.

      圖2 RFB模塊結(jié)構(gòu)

      本文方法共輸出11 620錨框,比原始SSD的8 732個錨框多出2 888個.其中,Conv4和Conv7的兩個特征圖主要用于小目標(biāo)檢測,分別產(chǎn)生8 664和2 166個錨框.將不同特征圖獲得的錨框結(jié)合起來,經(jīng)過非極大值抑制方法來抑制掉一部分重疊或者不正確的錨框,得到最終的檢測結(jié)果.

      1.2 特征融合模塊

      提出的特征融合模塊通過一次反卷積、一次批歸一化、一次ReLU和兩次卷積運算設(shè)計了特征融合模塊,如圖3所示.該模塊相較于其他融合方法結(jié)構(gòu)簡單,但能夠?qū)⑸舷挛男畔鬟f到融合特征中.

      圖3 特征融合模塊

      反卷積用于提升特征圖的大小,使低分辨率特征圖和高分辨率特征圖的大小保持一致.每個卷積層都對輸入特征圖進行變換,使融合后的特征圖既有上下文信息又有詳細的融合特征信息.批歸一化層是對特征進行歸一化.在逐元素求和與ReLU操作之后,生成輸出特征.

      1.3 非局部特征增強模塊

      在融合后的Conv4和Conv7層的特征圖中應(yīng)用非局部特征增強,以提高對小目標(biāo)的檢測性能.NLNN提取通過1×1卷積從特征圖分支生成新的特征圖之間的非局部關(guān)系來增強特征,但NLNN只能計算相同尺寸的特征關(guān)系,不能推導(dǎo)出不同尺寸的特征之間的關(guān)系.RFB通過融合具有不同感受野的特征圖來考慮不同大小的語義特征,但它只是一種局部方法.因此,本文提出的非局部特征增強模塊使用了具有不同感受野的特征圖的非局部關(guān)系,其結(jié)構(gòu)如圖4所示.

      圖4 多尺度非局部特征增強模塊

      根據(jù)卷積核的大小和空洞卷積的擴張率,將一個輸入特征圖分支為3個感受野不同的特征圖.這3個特征圖具有相同的空間大小,但它們的網(wǎng)格單元具有不同大小的感受野,所以它們的語義大小也不同.

      3個不同大小的卷積核被用來產(chǎn)生不同大小的感受野.圖4中最左邊的分支,通過1×1卷積,輸入通道被降低到1/4.為了有效降低其他兩個分支的計算復(fù)雜度,通過前面的1×1卷積,將輸入通道降低到1/8,通過應(yīng)用3×3和5×5卷積,將輸入通道大小降為1/4的特征圖作為輸出.然后將空洞卷積應(yīng)用到每個分支特征圖中.空洞卷積可以在不增加計算成本的情況下,通過調(diào)整核內(nèi)的間隔來擴展感受野.在3個分支的特征圖上分別應(yīng)用擴張率為1,3和5的空洞卷積.

      使用不同大小的卷積核和空洞卷積,生成3個不同感受野的特征圖,然后將它們同時輸入到多尺度非局部塊中,提取不同分支特征之間的非局部關(guān)系,并反映在最終的特征圖上.圖5為多尺度非局部塊的結(jié)構(gòu).多尺度非局部塊可以獲得具有不同感受野的多個特征圖的非局部關(guān)系.在圖5中,x1,x2和x3是3個具有不同感受野的特征圖,x1是用于特征增強的目標(biāo)特征圖.

      圖5 多尺度非局部塊結(jié)構(gòu)

      首先通過1×1卷積(θ1,θ2,θ3,φ)將可學(xué)習(xí)參數(shù)嵌入到每個特征圖中,并將通道降低到1/2以減少計算量.對寬度W、高度H和通道C的特征圖進行φ卷積的結(jié)果重新排列為C/2×WH,對θ卷積的結(jié)果重新排列為WH×C/2,并將φ卷積的特征圖與3個θ卷積的特征圖進行內(nèi)積運算,得到所有可能的配對關(guān)系,即3張WH×WH大小的關(guān)系圖.然后將Softmax函數(shù)應(yīng)用于關(guān)系圖的和,產(chǎn)生一個概率圖p,它代表了目標(biāo)特征圖x1和其他特征圖x2和x3之間的非局部關(guān)系.

      概率圖p通過與目標(biāo)特征圖x1進行1×1卷積(φ)的結(jié)果進行內(nèi)積運算反映在目標(biāo)特征圖x1上.因此,通過概率圖p可以得到包含非局部關(guān)系的特征圖y,公式為

      (1)

      其中,F表示CNN的權(quán)重參數(shù),使用歸一化指數(shù)函數(shù)Softmax將輸入轉(zhuǎn)換為概率分布.非局部特征增強模塊的最終輸出z是由x1和y融合產(chǎn)生的.對于自適應(yīng)融合,如式(2)所示,對y進行1×1卷積(Fz),并將其結(jié)果加到x1中.

      z=Fzy+x1.

      (2)

      (2)式的特征圖增強作用是通過可學(xué)習(xí)的參數(shù)來平衡兩個特征圖,從而獲得一個更有效的特征圖用于目標(biāo)檢測.

      具有不同感受野的目標(biāo)特征圖x1,x2和x3通過非局部特征模塊得到非局部特征增強的特征圖z1,z2和z3,將z1,z2和z3在通道方向通過級聯(lián)疊加并融合成單個分支特征圖,如圖4所示.然后將融合的分支特征圖添加到包含可學(xué)習(xí)參數(shù)的原始特征圖中.為了自適應(yīng)整合,對原始特征圖進行了1×1卷積并使用其結(jié)果.最后,通過ReLU激活函數(shù)生成非局部特征增強模塊的輸出,最終輸出的大小與原始特征圖相同.非局部特征增強模塊產(chǎn)生的多尺度非局部特征之間的關(guān)系提供了與小目標(biāo)相關(guān)的各種尺寸的上下文信息,從而增強了對小目標(biāo)的檢測能力.

      2 實驗結(jié)果與分析

      2.1 實驗數(shù)據(jù)集

      使用了2個具有代表性的目標(biāo)檢測數(shù)據(jù)集PASCAL VOC和KITTI.其中,VOC2007由9 963張RGB圖和每個圖的標(biāo)注信息組成,分為包含5 011幅圖的訓(xùn)練數(shù)據(jù)集和包含4 952幅圖的測試數(shù)據(jù)集.VOC2012的訓(xùn)練和驗證數(shù)據(jù)集包含11 540幅圖,共包含20個檢測類別,如圖6(a)所示.

      圖6 數(shù)據(jù)集示例

      KITTI是一個用于道路駕駛中物體檢測的數(shù)據(jù)集,如圖6(b)所示,包含7 481張訓(xùn)練圖和7 518張測試圖,其中僅有訓(xùn)練圖包含標(biāo)注信息.為了對本文方法進行定量分析,從KITTI訓(xùn)練數(shù)據(jù)集中選取748幅帶有標(biāo)注信息的圖作為測試數(shù)據(jù)集,訓(xùn)練數(shù)據(jù)集中剩余的6 733幅圖用于訓(xùn)練.KITTI數(shù)據(jù)集比VOC數(shù)據(jù)集少了9個檢測類別,但是額外提供了僅有邊界框信息的其他類.本文實驗中使用KITTI數(shù)據(jù)集,是因為在道路環(huán)境中,小目標(biāo)的檢測性能非常重要,其準(zhǔn)確性直接關(guān)系到駕駛的安全性.

      2.2 評價指標(biāo)

      本文采用所有類別的平均精度(mean Average Precision,mAP)作為目標(biāo)檢測模型性能的衡量標(biāo)準(zhǔn).對于單個類別準(zhǔn)確率(P)和召回率(R)的計算公式為:

      (3)

      (4)

      其中:TTP為分類正確的正樣本,TFP為分類錯誤的正樣本,TFN為分類錯誤的負樣本.單類別的平均精度(AAP)即為單類別P-R曲線下的面積,其計算公式為

      (5)

      本文所采用的所有類別平均精度AmAP則是計算所有類別P-R曲線下面積的平均值.

      2.3 實驗配置

      實驗操作系統(tǒng)使用Ubuntu16.04,編程語言為Python,深度學(xué)習(xí)框架為Pytorch0.4.1,關(guān)鍵計算硬件為GeForce GTX Titan X顯卡進行加速運算.

      骨干網(wǎng)絡(luò)使用ImageNet進行預(yù)訓(xùn)練,并根據(jù)實驗數(shù)據(jù)集進行微調(diào).網(wǎng)絡(luò)輸入圖像大小固定為300×300像素,數(shù)據(jù)增強策略與SSD相同.批大小(Batch Size)設(shè)置為32.初始學(xué)習(xí)率和L2正則化的權(quán)重衰減值分別被設(shè)定為4×10-3和5×10-4.優(yōu)化器為SGD,動量為0.9,學(xué)習(xí)周期總數(shù)為300.

      2.4 對比實驗結(jié)果

      將本文方法與SSD[6]和文獻[12-15]進行比較.將PASCAL VOC 2007和2012的訓(xùn)練和驗證數(shù)據(jù)集合并為VOC數(shù)據(jù)集,所有方法使用一個通用的訓(xùn)練數(shù)據(jù)集.其中DF-SSD和文獻[14]分別使用DenseNet和ResNet50作為特征提取骨干網(wǎng)絡(luò),其他方法均使用VGG-16作為骨干網(wǎng)絡(luò).表2列出了在VOC數(shù)據(jù)集上各方法的AmAP值.

      表2 VOC數(shù)據(jù)集上各方法AmAP值

      通常,輸入圖像的大小會直接影響檢測性能,輸入圖像越大,圖像中物體像素越多,越有利于小目標(biāo)的檢測.從表2可以看出,本文方法與其他方法一樣,具有最小的輸入圖像大小,但本文方法的AmAP值最高,達到了81.3%,證明了本文方法在小目標(biāo)檢測中具有較好的魯棒性.

      由于本文方法是基于SSD框架,且特征融合模塊與非局部特征增強模塊分別參照DSSD的DM模塊與RFB-Net的RFB模塊設(shè)計,因此,在KITTI數(shù)據(jù)集上對SSD、DSSD、RFB-Net與本文方法進行比較.表3為在KITTI數(shù)據(jù)集上各方法的AmAP值.

      表3 KITTI數(shù)據(jù)集上各方法的AmAP值

      由表3可見,本文方法的AmAP最高,達到了80.6%,證明本文設(shè)計的特征融合模塊與非局部特征增強模塊相較于DM模塊與RFB模塊能夠有效提升目標(biāo)檢測性能.

      本文參照COCO數(shù)據(jù)集進行目標(biāo)尺寸分類,在該數(shù)據(jù)集中,將小于32×32像素的物體定義為小目標(biāo),將大于32×32像素小于96×96像素的物體定義為中目標(biāo),將大于96×96像素的物體定義為大目標(biāo).本文同樣根據(jù)邊界框的大小對物體進行分類,如表4所示.由于邊界框比目標(biāo)對象本身大,因此判別參考值略有增加.根據(jù)表4中的標(biāo)準(zhǔn),KITTI數(shù)據(jù)集有1 055個小目標(biāo)、2 004個中目標(biāo)和882個大目標(biāo).

      表4 目標(biāo)尺寸分類

      在KITTI數(shù)據(jù)集上對本文方法和其他方法進行定量比較,實驗結(jié)果如表5所示.從表5中看出在大目標(biāo)上,本文方法僅略微領(lǐng)先于其他方法,大目標(biāo)檢測性能提高了1.3%.但是本文方法在中、小目標(biāo)檢測性能上相較于其他方法有著明顯的提升,AmAP值分別達到了80.1%與61.8%,分別提升了2%和4.2%.由于KITTI數(shù)據(jù)集中小目標(biāo)占比高達26.8%,其檢測結(jié)果的提升更能說明本文方法在小目標(biāo)檢測上的有效性.

      表5 KITTI數(shù)據(jù)集不同尺寸目標(biāo)AmAP的檢測結(jié)果 %

      2.5 消融研究

      為驗證本文方法中各模塊對提高小目標(biāo)檢測性能的有效性,在KITTI數(shù)據(jù)集上對本文方法的各個模塊進行消融實驗,實驗結(jié)果如表6所示.

      表6 每個模塊對檢測結(jié)果的增益效果的AmAP值 %

      從表6中可以看出,本文所提的特征融合方法與非局部特征增強模塊對于小目標(biāo)檢測的提高有著明顯的效果,有效提高小目標(biāo)檢測的魯棒性,從而有效提高整體的目標(biāo)檢測性能.

      2.6 結(jié)果可視化

      為了直觀地展示本文方法在小目標(biāo)檢測上相較于傳統(tǒng)SSD的性能優(yōu)越性,對部分結(jié)果進行可視化對比.PASCAL VOC 2007數(shù)據(jù)集上本文方法與傳統(tǒng)SSD的檢測結(jié)果可視化對比見圖7.從圖7中可以明顯看出,本文所提的方法在小目標(biāo)檢測上效果要明顯好于傳統(tǒng)SSD,其中,第一行中傳統(tǒng)SSD方法將兩個sheep類對象錯檢為dog類與cow類,且漏檢了上方像素較少的sheep類對象,而本文方法則沒有出現(xiàn)漏檢錯檢的情況;第二行中傳統(tǒng)SSD則完全忽略了上方的cow類小目標(biāo),本文方法則成功檢測出cow類的小目標(biāo);第三行中本文方法相較于傳統(tǒng)SSD成功檢測出每一個person類小目標(biāo);第四行中本文方法成功檢測出左側(cè)的car類小目標(biāo),而傳統(tǒng)SSD方法則未檢測出小目標(biāo).

      圖7 VOC數(shù)據(jù)集檢測結(jié)果可視化對比

      圖8為KITTI數(shù)據(jù)集上本文方法與傳統(tǒng)SSD的檢測結(jié)果可視化對比,其中左側(cè)為傳統(tǒng)SSD的檢測結(jié)果,右側(cè)為本文方法的檢測結(jié)果.從圖8中可以明顯看出,無論是在道路還是窄巷的交通場景中,本文方法在小目標(biāo)檢測上明顯優(yōu)于傳統(tǒng)SSD.如圖8(a)所示,在道路的場景中,傳統(tǒng)SSD對于遠處的汽車以及交通信號燈等小目標(biāo)出現(xiàn)了明顯的漏檢情況,而本文方法則成功的檢測出遠處的車輛以及交通信號燈,可以更好地保證自動駕駛的安全性.在窄巷的場景中,傳統(tǒng)SSD同樣對于遠處停放的小目標(biāo)車輛出現(xiàn)了漏檢的情況,而本文方法則成功檢測出遠處的小目標(biāo)車輛,如圖8(b)所示.

      圖8 KITTI數(shù)據(jù)集檢測結(jié)果可視化對比

      圖9和圖10給出了本文方法對VOC數(shù)據(jù)集和KITTI數(shù)據(jù)集的檢測結(jié)果示例,每張圖片都包含一個或多個小目標(biāo),可以明顯看出,本文方法能夠有效地檢測出不同場景圖像中各種類型的小目標(biāo).

      3 結(jié)論

      本文提出一種基于新的特征融合方法與特征增強模塊的改進SSD小目標(biāo)檢測算法,通過將SSD中的相鄰特征融合來有效利用上下文信息,然后通過不同尺寸特征之間的非局部關(guān)系來增強特征映射,從而提高對小目標(biāo)的檢測精度.實驗結(jié)果表明,本文算法提升了SSD算法的小目標(biāo)檢測準(zhǔn)確率,且比現(xiàn)有方法具有更好的小目標(biāo)檢測性能,對于自動駕駛等應(yīng)用有著現(xiàn)實意義.本文所提的算法在小目標(biāo)檢測精度上還有進一步提升空間,下一步工作將針對真實駕駛場景對算法做進一步的優(yōu)化,以提升真實駕駛環(huán)境中算法對小目標(biāo)的檢測性能.

      猜你喜歡
      卷積局部特征
      局部分解 巧妙求值
      基于3D-Winograd的快速卷積算法設(shè)計及FPGA實現(xiàn)
      非局部AB-NLS方程的雙線性B?cklund和Darboux變換與非線性波
      如何表達“特征”
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      不忠誠的四個特征
      基于傅里葉域卷積表示的目標(biāo)跟蹤算法
      抓住特征巧觀察
      局部遮光器
      吳觀真漆畫作品選
      县级市| 广水市| 敦化市| 班戈县| 内黄县| 苏尼特左旗| 会泽县| 如皋市| 张家界市| 青铜峡市| 玛沁县| 宁晋县| 海门市| 万宁市| 涟源市| 宜阳县| 万宁市| 普定县| 革吉县| 鲁甸县| 平昌县| 广昌县| 略阳县| 阿克| 平谷区| 河北区| 科技| 井陉县| 昭觉县| 临漳县| 罗源县| 耒阳市| 苏尼特左旗| 济宁市| 隆德县| 特克斯县| 昭平县| 东源县| 清新县| 黔西县| 巨野县|