• 
    

    
    

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

      基于改進Faster RCNN 的目標檢測算法?

      2022-03-18 06:20:08孫順遠
      計算機與數(shù)字工程 2022年12期
      關鍵詞:候選框卷積神經網(wǎng)絡

      孫順遠 楊 鎮(zhèn)

      (1.江南大學輕工過程先進控制教育部重點實驗室 無錫 214122)(2.江南大學物聯(lián)網(wǎng)工程學院 無錫 214122)

      1 引言

      過去很長一段時間各類識別任務都是建立在對SIFT[1](Scale Invariant Feature Transform)、HOG[2](Histogram of Oriented Gradient)等特征的使用之上的。20世紀80年代,F(xiàn)ukushima第一次提出一個多層神經認知機Neocognitron。1998 年,Yann LeCun提出用于識別手寫字的LeNet網(wǎng)絡[3]奠定了由卷積層、池化層、全連接層組成的現(xiàn)代卷積神經網(wǎng)絡基本結構。卷積神經網(wǎng)絡因此得以廣泛使用,然而之后又隨著支持向量機等手工設計特征模型的崛起而淡化。隨著圖形處理器GPU(Graphics Process?ing Unit)性能的巨幅進步以及大數(shù)據(jù)帶來的歷史機遇,深度卷積神經網(wǎng)絡在2012 年迎來了重大的突破。AlexNet[4]首先把卷積神經網(wǎng)絡的基本結構應用到很深很寬的網(wǎng)絡中去,將LeNet 的思想發(fā)揚光大,首次在卷積神經網(wǎng)絡中應用了非線性激活函數(shù)ReLU[5],并且通過數(shù)據(jù)增強、隨機失活Dropout[6]等方法防止訓練過擬合。得益于飛漲的GPU 性能和百萬級的ImageNet圖像數(shù)據(jù)集[7],Geoffrey Hinton和Alex Krizhevsky 憑 借AlexNet 在ILSVRC 2012(ImageNet Large Scale Visual Rec-ognition Challenge)挑戰(zhàn)賽中奪冠。此后各類應用于圖像分類的深度卷 積 神 經 網(wǎng) 絡 如VGG 網(wǎng) 絡[8]、Inception 網(wǎng) 絡[9]、ResNet網(wǎng)絡[10]等如雨后春筍般出現(xiàn)。

      與圖像分類不同,檢測還要在圖像中定位目標具體位置。Ross Girshick 等提出的R-CNN(region with CNN features)[11]首次將卷積神經網(wǎng)絡運用于目標檢測。R-CNN 使用選擇性搜索[12]替代傳統(tǒng)的滑窗搜索來提取候選區(qū)域。由于每張圖片提取出的候選區(qū)域中有大量的重復,且都需要進行神經網(wǎng)絡的前向傳播導致檢測速度過慢。鑒于此,Ross Girshick 團隊借助于SPP-Net(Spatial Pyramid Pool?ing Network)[13]提 出 了R-CNN 的 改 進 版Fast R-CNN[14]。Fast R-CNN 直接對整張圖片做特征提取,候選區(qū)域在特征圖之后再做提取,不需要對所有候選區(qū)域進行單獨的神經網(wǎng)絡的前向傳播,避免了特征的重復提取。采用了深度學習中常見的softmax 分類器代替SVM 分類器,通過多任務損失函數(shù)進行邊框回歸,一定程度上提升了模型的訓練和檢測速度。但由于Fast R-CNN 仍舊使用選擇性搜索來提取候選框使得模型無法滿足實時性檢測的需求。于是任少卿等繼續(xù)提出了Fast R-CNN 的改進版Faster R-CNN[15],使用區(qū)域生成網(wǎng)絡RPN(Region Proposal Network)代替選擇性搜索方法,更高效地生成候選區(qū)域。

      以上這些網(wǎng)絡模型都需要先生成一系列的候選區(qū)域,再通過卷積神經網(wǎng)絡進行分類。Joseph Redmon 等提出的YOLO(You Only Look Once)[16]網(wǎng)絡模型取消了區(qū)域生成網(wǎng)絡,直接回歸目標的類別概率和位置坐標值,犧牲了一定的精度但大大提高了模型的速度。劉偉等提出了融合了Faster R-CNN 錨框思想整體仍然采用一步法架構的SSD(Single Shot Detector)[17]網(wǎng)絡,既考慮到了模型的精度又照顧了模型的速度,使實時高精度的目標檢測成為可能。

      2 Faster R-CNN網(wǎng)絡結構描述

      Faster R-CNN 分別使用了ZF 模型(Zeiler and Fergus model)[18]和VGG16 模 型(Simonyan and Zisserman model)作為基礎骨干網(wǎng)絡,如圖1所示為使用VGG16 作為骨干網(wǎng)絡的Faster R-CNN 網(wǎng)絡整體結構。整個網(wǎng)絡首先使用一組基礎的卷積神經網(wǎng)絡來提取輸入圖像的特征圖,該特征圖被用于后續(xù) 的RPN 層 和RoI Pooling(region of interest pool?ing)層。RPN 層通過Softmax 函數(shù)先判別生成的錨框(anchor)屬于正樣本或負樣本,再利用邊框回歸(bounding box regressin)修正錨框的位置,從而獲得精確的基于原圖的區(qū)域提案(region proposals)。RoI Pooling 層綜合RPN 層輸出的區(qū)域提案和CNN層輸出的特征圖后,提取出基于特征圖的區(qū)域提案(feature map proposals)。最后利用基于特征圖的區(qū)域提案計算proposal 的類別,同時使用bbox-reg獲得檢測框的最終精確位置。

      圖1 Faster R-CNN網(wǎng)絡框架

      3 改進的Faster RCNN算法

      為了提高算法性能,同時兼顧模型的運算速度,進行了如下幾點的改進。用DIoU(Distance In?tersection over Union)[19]作為評價預測框和目標框的距離指標,并將其作為損失函數(shù),使得邊框回歸更加收斂。將區(qū)域特征聚集方式從候選區(qū)域池化RoI Pooling 改進為效果更好的候選區(qū)域校準RoI Align[20],減小了誤差,使得檢測結果中的預測框位置 更 加 精 確。 使 用Soft-NMS[21]替 換NMS(Non-Maximum Suppression),提高了錨框的檢測率,從而有效地提升目標檢測的精度而又不影響速度。

      3.1 損失函數(shù)

      損失函數(shù)是用于目標檢測任務中評價模型性能的常用指標,F(xiàn)aster R-CNN 中采用的IoU Loss 就是最為常用的損失函數(shù)。相較于Fast RCNN 中的Smooth L1 Loss,它解決了4點坐標不具有一定相關性的問題和相同大小Loss 的檢測框IoU 差異過大的問題。但是它也帶來了相應的問題:只是降低了相同大小Loss 的檢測框IoU 過大的差異,實際上差異仍然存在;如圖2 所示,它無法反映兩個檢測框之間的實際距離,不能反映兩個檢測框是如何相交的;當真實框與預測框重合,此時IoU 為0,損失函數(shù)不可導,模型無法優(yōu)化進行有效訓練。

      圖2 相同IoU的位置效果

      基于此,提出使用DIoU 改進原算法。DIoU 定義如下:

      式(1)中:A代表預測框的面積,B代表目標框的面積。如圖3 所示,作為懲罰項的式(2)中:b是預測框的中心點位置,bgt是目標框的中心點位置,ρ是預測框和目標框中心點的歐氏距離。c是能夠同時包含預測框和目標框的最小閉包區(qū)域的對角距離。

      圖3 目標真實位置與預測位置效果示意圖(綠色為預測框,黑色為真實框,灰色為兩者的最小閉包矩形框)

      和IoU Loss 相比,DIoU Loss 具有尺度不變性;考慮了重疊面積和中心點距離,對模型精度更加有利;通過直接最小化預測框和目標框之間的歸一化距離,使模型更加收斂。

      3.2 RoI Pooling

      RoI Pooling是用于將RPN提取的Proposal結合特征圖進一步提取得到統(tǒng)一大小的特征圖。由于RPN 網(wǎng)絡提取到的RoI 坐標是針對輸入圖像大小的,所以第一步就是將RoI 坐標縮放到輸出特征對應的大小,第二步將取整后的RoI 劃分為h*w個小區(qū)域,最后采用最大池化處理每個小區(qū)域,最終輸出h*w大小的RoI 特征。通過以上步驟可以發(fā)現(xiàn),整個RoI Pooling中包含兩次取整量化,又由于縮放操作,導致兩次量化的誤差進一步放大。

      針對兩次量化操作引起的誤差,提出取消量化操作,使用雙線性內插的方法獲得坐標為浮點數(shù)的像素點上的圖像數(shù)值,這樣就將特征聚集過程變成了一個連續(xù)的操作,這樣有效地避免了由于取整量化操作帶來的誤差。如圖4 所示,假設采樣點數(shù)為4,對于每個小區(qū)域平分四份,每份取采用雙線性插值法計算出的中心點位置,取四個像素中最大值為這塊區(qū)域的像素值,重復操作,這樣就能夠得到固定維度的特征輸出。

      圖4 RoI Align的反向傳播

      3.3 NMS

      目標檢測過程中在同一位置會產生大量的候選框,這些候選框之間會相互重疊,這時就需要利用NMS 找到最佳的目標邊界框。非極大值抑制(Non-Maximum Suppression)就是對檢測后的結果進行去冗余操作,通過搜索局部最大值,抑制極大值。通常的做法是將候選框按照對應的分類劃分為不同的集合;然后在每個集合內根據(jù)得分高低降序排列,將得分最高的候選框和剩下的其他候選框進行交并比計算,若大于一個人為設定的閾值則剔除,最終保留該得分最高的候選框并從集合中取出;將原得分第二的候選框即現(xiàn)得分第一的候選框重復按照上述步驟迭代操作,直至集合中所有候選框都完成篩選;最后對每個集合中的候選框重復上述步驟,直至所有集合都完成篩選。NMS算法直接粗暴地將計算后的IoU 值大于閾值的候選框直接刪除,特別是當兩個目標物體靠近或者部分重疊時,分數(shù)較低的候選框就會因為和分數(shù)較高的候選框的重疊面積過大而被優(yōu)化刪除,這導致了對該物體的檢測失敗,并且降低了算法的平均檢測率。

      基于這樣的問題,提出使用Soft-NMS 改進原有算法。如式(4)所示:

      Si代表了每個候選框的得分,M為當前得分最高的候選框,bi為剩余待處理的候選框的某一個,Nt為人為設定的閾值??梢钥闯霎擨oU 大于設定的閾值時,該候選框得分直接置零,候選框被舍棄,無法參加后續(xù)的迭代,從而可能造成目標的漏檢。如式(5)所示:

      改進的NMS 算法的得分重置函數(shù)采用線性加權形式,這是一種較二值化得分重置函數(shù)更為穩(wěn)定、連續(xù)的改進形式。它不是直接粗暴地對候選框得分置零刪除候選框,而是降低當前候選框的得分,使得它能進入到下一輪的迭代,這能夠有效地提升目標檢測的精度,而又不會影響運算的速度。

      4 實驗結果對比分析

      4.1 訓練方法

      本文實驗環(huán)境為Ubuntu 16.04 穩(wěn)定版、CUDA v10.1、cuDNN v7.5、NVIDIA GeForce GTX1080 顯卡,深度學習框架使用Pytorch,具體版本為torch v1.3.1、python v3.7。

      評估指標使用平均精度均值mAP(mean Aver?age Precision)。測試集使用PASCAL VOC 2007,訓練集使用PASCAL VOC 2007、2012 和MS COCO 數(shù)據(jù)集[22]以及它們的聯(lián)合數(shù)據(jù)集。本文使用ImageN?et預訓練的模型初始化網(wǎng)絡的權值,采用交替優(yōu)化訓練的方式,在VGG16、ZF 兩種訓練模型下進行了訓練。交替優(yōu)化訓練步驟如下:首先網(wǎng)絡使用Ima?geNet 的預訓練模型進行RPN 網(wǎng)絡的初始化,通過反向傳播和隨機梯度下降SGD(stochastic gradient descent)訓練。對于60k 的小批量數(shù)據(jù)使用0.001的學習率,對于20k 的小批量數(shù)據(jù)使用0.0001 的學習率,權重衰減設置為0.0005。并針對區(qū)域提議任務進行微調。接著使用由上一步RPN 網(wǎng)絡生成的候選建議框由卷積神經網(wǎng)絡訓練單獨的檢測網(wǎng)絡。然后使用檢測網(wǎng)絡來初始化RPN 網(wǎng)絡的訓練,但是只修正共享的卷積層,且只針對RPN 特有層進行微調。這樣這兩個網(wǎng)絡就共享了卷積層。最后對卷積神經網(wǎng)絡的特有層進行微調,這樣兩個單獨的子網(wǎng)絡就共享了相同的卷積層,構成了統(tǒng)一的網(wǎng)絡。

      4.2 對比分析

      從表1 中可以看出,不管是選擇ZF 還是VGG作為基礎骨干網(wǎng)絡,RPN 方法都較SS 方法的mAP更高。在使用VGG 模型和RPN 方法的系統(tǒng)下也即是Faster R-CNN 網(wǎng)絡下,單獨添加每項改進,可以發(fā)現(xiàn)檢測結果有1%~3%的微小提升。組合各項改進后的系統(tǒng)的檢測結果較Faster R-CNN提升近6%效果明顯,而且運行速度較原算法也有提升。從表1 中還可發(fā)現(xiàn),在使用相同系統(tǒng)的情況下,使用VOC2007 和VOC2012 的聯(lián)合訓練集的效果比單獨使用VOC2007 數(shù)據(jù)集的效果更好,說明更大的訓練集對于網(wǎng)絡的訓練是有利的??紤]到MS COCO數(shù)據(jù)集在類別上是PASCAL VOC 數(shù)據(jù)集類別的超類,實驗中忽略掉COCO 數(shù)據(jù)集專有的類別,soft?max 層只在VOC 數(shù)據(jù)集專有的類別上執(zhí)行,從表1中可以發(fā)現(xiàn),在COCO 和VOC2007、2012 聯(lián)合數(shù)據(jù)集地訓練之下,改進后的Faster R-CNN 算法在VOC2007測試集上的mAP達81.3%,檢測精度高。

      表1 PASCAL VOC2007測試集下的檢測結果

      5 結語

      本文提出一種改進的Faster R-CNN 算法,引入DIoU 評價指標,關注了預測框和目標框的距離而不單單關注預測框和目標框的重疊面積;將候選區(qū)域池化方法改進為一種區(qū)域特征聚集方式,規(guī)避了區(qū)域池化方法帶來的量化誤差;使用Soft-NMS替代原有的非極大值抑制,有效地提升了目標檢測精度。實驗結果表明,改進后的Faster R-CNN 算法檢測結果很好,基于一種聯(lián)合數(shù)據(jù)集訓練后在VOC2007 測試集上的檢測結果達81.3mAP。后續(xù)將針對算法檢測速度相對較慢的缺陷繼續(xù)優(yōu)化模型,提高整個系統(tǒng)的運行與檢測速度。

      猜你喜歡
      候選框卷積神經網(wǎng)絡
      重定位非極大值抑制算法
      面向自然場景文本檢測的改進NMS算法
      基于3D-Winograd的快速卷積算法設計及FPGA實現(xiàn)
      基于Soft-NMS的候選框去冗余加速器設計*
      神經網(wǎng)絡抑制無線通信干擾探究
      電子制作(2019年19期)2019-11-23 08:42:00
      從濾波器理解卷積
      電子制作(2019年11期)2019-07-04 00:34:38
      基于傅里葉域卷積表示的目標跟蹤算法
      一種針對特定目標的提議算法
      基于神經網(wǎng)絡的拉矯機控制模型建立
      重型機械(2016年1期)2016-03-01 03:42:04
      復數(shù)神經網(wǎng)絡在基于WiFi的室內LBS應用
      泗洪县| 明溪县| 壶关县| 柳河县| 盈江县| 咸阳市| 澜沧| 崇仁县| 江油市| 义乌市| 禹城市| 德化县| 陆川县| 增城市| 钦州市| 余庆县| 孝感市| 东安县| 邵东县| 镇巴县| 龙陵县| 北海市| 炎陵县| 中牟县| 莲花县| 丰镇市| 舟曲县| 乃东县| 临沂市| 沛县| 大姚县| 滨州市| 临猗县| 曲周县| 镇雄县| 连城县| 富川| 仙桃市| 宝坻区| 上蔡县| 武功县|