?

基于DeR-FCN模型的車輛檢測算法

2020-11-02 11:52李厚博孫爽滋
計算機工程與設計 2020年10期
關鍵詞:卷積精度特征

王 玲,李厚博,王 鵬,孫爽滋

(長春理工大學 計算機科學技術學院,吉林 長春 130022)

0 引 言

傳統的車輛檢測方法通常將特征提取算法與分類器結合進行檢測[1-4],這類方法嚴重依賴人工特征提取,針對復雜多變的環境模型泛化能力較差。隨著深度學習的發展,人們發現卷積神經網絡可以自主地提取圖像特征,對于復雜場景的適應性更強。Ross Girshick提出目標檢測算法R-CNN[5],將CNN應用于目標檢測,使得檢測精度得到大幅度提升。但通過Selective Search提取的每一個候選框依次進入CNN網絡,存在冗余特征提取、冗余存儲和計算復雜度大的問題。針對上述問題,Fast R-CNN[6]使用卷積特征共享、多任務損失函數的方式,顯著提高了檢測的速度與精度;Faster R-CNN[7]用RPN網絡取代Selective Search,并整合區域建議與卷積神經網絡,不僅速度得到大大提高而且還獲得了更加精確的結果,真正實現了端到端的目標檢測框架;R-FCN[8]算法引入全卷積操作,將位置敏感得分圖加入FCN,充分利用分類任務的平移不變性及檢測任務的平移可變性,解決網絡中全連接層計算復雜度較高的問題,大大提升了檢測的效率。上述檢測框架主要由區域建議和檢測網絡兩部分組成,為典型的基于區域建議的目標檢測算法。還有研究者提出將分類和檢測任務統一的基于回歸的目標檢測算法如YOLO[9]、SSD[10,11]、YOLOv2[12]等?;诨貧w的目標檢測算法與基于區域建議的目標檢測算法相比,其在通用目標檢測數據集上的檢測速度得到了大幅度提高,但也造成了檢測精度的下降。

綜上所述,R-FCN的全卷積操作不僅適用于不同尺寸圖像的輸入,顯著減少了算法計算復雜度,而且在檢測精度和效率上較為平衡,但仍無法滿足實際生活中對車輛目標檢測高準確率的要求。本文對R-FCN的車輛檢測算法進行改進,通過特征級聯的方式有效結合底層特征的位置及邊緣信息和高層特征的語義信息;引入維度分解區域提議(DeRPN)[13]網絡代替RPN網絡,使用靈活的錨鏈機制獲得更加精準的候選框;預測階段使用軟化非極大值抑制算法(soft-NMS)解決重疊目標漏檢問題。這樣,提出的DeR-FCN可以有效優化實際場景中車輛的漏檢及誤檢,顯著提高模型檢測精度。

1 相關研究

1.1 R-FCN檢測框架

R-FCN模型首先通過RPN網絡在特征圖上提取候選區域,然后使用RoI子網絡對候選區域進行分類識別,從而實現目標檢測。R-FCN總體架構如圖1所示。

圖1 R-FCN模型架構

1.1.1 RPN網絡

RPN網絡的主要功能是提取候選區域。RPN使用默認大小為128×128、256×256、512×512,長寬比為1∶1、1∶2、2∶1的9種固定尺寸的錨框,在特征圖上通過滑動窗口產生搜索框。對每個搜索框進行分類與回歸操作,然后通過非極大值抑制法將高度重疊的區域剔除掉,解決候選區域過多帶來的冗余問題,最后將剩余的候選區域用于RoI子網絡訓練。

1.1.2 RoI子網絡

將每個RoI分割為k2個部分,每個部分映射到一張Score Map上,最終得到k2個Score Map,分類的種類有C個類,背景為1個類,所以每一個Map通道數為C+1,最終得到通道數為k2(C+1)的輸出層。然后通過RoI pool即位置敏感池化操作,針對上面的其中一個Score Map執行池化操作,重新排列成大小為k2的得分圖。在計算k2個得分圖時,假設每個RoI區域大小為w×h,則每個小區域(bin)大小為w/k×h/k,每個bin得分計算如式(1)所示

(1)

公式各參數詳情請參見文獻[8]。

然后對k2個得分圖進行投票,生成C+1維向量,利用softmax函數計算每一類的置信度。

1.2 深度殘差網絡

2015年何凱明等在圖像識別大賽上提出一種卷積神經網絡,命名為深度殘差網絡(ResNet)[14],該網絡通過采用殘差學習的思想對多層的殘差映射進行擬合來解決傳統網絡的退化問題,殘差單元如圖2所示。

圖2 殘差單元

x為當前殘差塊的入口,F(x)表示殘差單元第二層的輸出,H(x)為當前殘差塊的期望映射,通過使用激活函數來縮短學習周期。

從圖2中可以看出,殘差單元通過“快捷通道”的方式,直接將輸入x傳遞到輸出目標值H(x),為實現H(x)與x之間的恒等映射,即H(x)=x,將學習目標改變為目標值H(x)和x的差值,即殘差F(x)=H(x)-x,因此訓練目標就是要將F(x)結果逼近于0,實現隨著網絡加深,準確率不下降。

2 改進的R-FCN模型的車輛檢測

本文提出的DeR-FCN車輛檢測方法實現架構如圖3所示。

圖3 DeR-FCN模型架構

主要由3部分構成,第一部分是由5個卷積模塊conv1~conv5組成的特征提取部分,用于提取圖片的特征;第二部分是以DeRPN區域建議網絡為主的區域建議部分,用于生成區域候選框;第三部分是由RoI位置敏感得分圖及softmax分類器組成的RoI子網絡部分,用于車輛目標分類和定位。

2.1 深度特征融合

圖像的信息在網絡不斷的卷積操作中被逐步提取,卷積得到的特征圖尺寸也逐漸變小,這意味著網絡對原圖像的感受野逐漸變大,因此網絡的底層特征提取器更好地抓住了圖像的位置和細節信息,但由于經過的卷積較少,提取到的特征語義信息較低,噪聲較多;網絡的高層特征提取器更好地抓住了圖像的語義信息,但提取到的特征分辨率很低,對細節的感知能力較差。為解決特征圖中包含信息不充分的問題,DeR-FCN模型以ResNet 101為基礎網絡,去掉網絡中原有的全局平均池化層和最后的全連接層,只使用卷積層計算特征圖,并使用特征融合模塊將包含豐富位置及細節信息的底層特征和包含語義信息的高層特征進行拼接得到最終的特征圖。DeR-FCN模型有一個特征融合模塊,即Conv3-b3、Conv4-b22與Conv5-c的特征融合模塊,融合模塊結構如圖4所示。

圖4 特征融合模塊

為了將Conv3-b3、Conv4-b22與Conv5-c的特征圖進行融合,本文選用不同尺度特征直接級聯預測的方式(Concat)進行特征融合。假設Conv3-b3輸出尺度為28×28×512,則Conv4-b22與Conv5-c的輸出尺度分別為14×14×1024和14×14×2048,所以進行特征級聯操作之前需要對Conv3-b3的特征圖進行下采樣,模塊Conv3-b3首先通過卷積核大小為2×2的平均下采樣層,輸出通過激活函數層(ReLU)得到14×14× 512的特征圖。Conv3-b3經過下采樣層的輸出與Conv4-b22及Conv5-c的輸出依據層次前后進行特征級聯操作,合并之后傳入ReLU層得到14×14×3584的特征圖。然后添加一個卷積核為1×1通道數為1024的卷積層,降低輸入特征圖的維度,最后在一個ReLU層之后實現融合功能。

2.2 維度分解的候選區域提取方法

區域建議方法作為兩階段檢測算法的重要組成部分,對最終檢測結果有重要影響。近年來基于區域的檢測方法絕大多數都使用RPN來生成區域提議。但RPN中采用的錨箱非常敏感,限制了對變體對象的適應性。在一些特殊的目標檢測模型中直接使用RPN作為區域提議方法,不能產生應有的效果,且性能會顯著縮減,所以許多用于特殊場景檢測的方法強調手動錨箱的設計[15,16]。但是,手動設置錨箱很麻煩,很難保證最佳性能。盡管Redmon和Farhadi提出了一種基于K均值聚類的算法來預先計算錨箱,但改進仍然有限。因此,本文采用維數分解的思想來解決錨箱敏感的問題,通過維度分解機制,使用靈活的錨邊,生成具有高召回率和更精準的區域提案,從而提高模型的檢測精度,圖5為DeRPN示意圖。

圖5 DeRPN

DeRPN網絡將Conv4-b22模塊輸出的特征圖作為輸入,輸出大小不一的矩形區域候選框。DeRPN網絡的操作流程如圖6所示,主要包含了維度分解和維度重組兩個步驟。

圖6 DeRPN流程

維度分解引入錨邊(anchor strings)機制,讓目標的寬高獨立地與錨邊進行匹配,以尋求最佳的回歸參考,如圖6(a)所示,粗線代表匹配良好的錨邊。匹配最佳錨邊實現如式(2)所示

(2)

其中,Mj表示第j個目標的匹配錨邊的索引集,ej是目標的寬度或高度,ai是第i個錨邊。

接下來對錨邊進行分類和回歸操作,如圖6(b)所示,實線代表分類回歸后高概率的錨邊,錨邊回歸預測如式(3)所示

(3)

然后將所預測的線段經過維度重組恢復成二維的候選區域框,如圖6(c)所示。DeRPN網絡采用了像素組合的維度重組算法,可以精確地召回檢測目標,實現如式(4)所示

(4)

最后過濾掉重疊的以及得分較低的邊界框,從而得到高概率目標區域候選框,如圖6(d)所示。

2.3 軟化非極大值抑制

R-FCN模型在預測階段會產生大量冗余候選框,加入非極大值抑制算法(NMS)能夠準確剔除重疊的候選框,保留目標最佳坐標,提高模型的平均精度。NMS算法在目標與目標相距較遠的情況下有著較好的檢測定位效果,但當不同的目標在重疊區域出現時,則導致對目標的檢測失敗,從而影響模型的檢出率。因此DeR-FCN引入Soft-NMS[17]代替傳統NMS算法。Soft-NMS算法如式(5)所示

(5)

Soft-NMS算法各參數詳情請參見文獻[17]。

Soft-NMS算法對IoU大于閾值的窗口,進行得分加權處理,并非直接置為0,從而有效避免漏檢重疊區域目標,并且Soft-NMS算法對剔除冗余檢測結果有較好的效果,有效提升了模型的檢測精度。

在模型訓練過程中,DeR-FCN圖像輸入尺寸設置為600、850、1100,每張圖像被隨機分配一種尺寸輸入到網絡進行訓練,從而實現模型的多尺度訓練,增強模型對不同尺度目標的特征提取能力及模型的泛化能力。同時為解決模型學習樣本不均衡的問題,加入在線難例挖掘算法,挑選出訓練過程中損失值最大的k個目標區域作為難例加入網絡進行訓練,計算損失,并反向傳播累計梯度來更新整個網絡的參數,從而提高網絡對數據集中難樣本或與正樣本相似的混淆負樣本的識別效果。

3 實驗與結果分析

3.1 實驗平臺

實驗運行環境見表1。

表1 實驗運行環境

3.2 實驗數據集

為驗證本文改進算法在真實場景中的實用性,選用包含高速公路、城市道路和鄉村道路等真實場景圖像的KITTI數據集,人為對原數據集進行篩選,保留包含Car,Van,Truck和Tram類別標簽的6820張圖像作為實驗數據,同時根據實驗框架需求將其轉化為PASCAL VOC2007數據集格式,其中80%劃分為訓練集,20%劃分為測試集。并且為了驗證DeR-FCN針對不同物體檢測的有效性,本文在開源的數據集PASCAL VOC2012上對DeR-FCN與常用的目標檢測算法進行對比評估,該數據集包括20個不同的對象類別,以及17 125張圖片。實驗前隨機將數據的60%劃分為訓練集,40%劃分為測試集。

3.3 模型評價指標

本文使用AP和mAP作為模型的評價指標,AP由精度和召回率兩部分組成。

(1)精度P(precision)指被判定為正例中真正的正例樣本的比重,精度計算如式(6)所示

(6)

(2)召回率R(recall)指被判定的真正的正例樣本占總的正例樣本的比重,召回率計算如式(7)所示

(7)

其中,TP為模型預測正確的正樣本個數,FP為模型預測錯誤的負樣本個數,FN為模型預測錯誤的正樣本個數。

首先以每一類的精度和召回率為坐標繪制曲線,得到該類的R-P曲線,然后計算每一類R-P曲線與坐標軸之間面積得到該類的AP,最后再對所有類別的AP求平均值,即可求得mAP。

3.4 模型訓練參數

實驗模型訓練參數見表2。

表2 模型訓練參數

DeR-FCN模型在KITTI數據集上訓練時總共迭代110 000次,經過 80 000 次迭代學習率降為原來的0.1,模型訓練的損失收斂情況如圖7所示。

從圖7中可以看出,模型訓練損失曲線隨迭代次數的增加呈下降趨勢,當模型訓練次數達到100 000次之后,損失值總體下降趨勢趨于平緩,不再有大幅度下降,至此模型訓練結束。

3.5 實驗結果與分析

3.5.1 不同模型在KITTI數據集上檢測效果對比

利用基于回歸的檢測算法YOLOv2、SSD以及基于區域建議的檢測算法Faster R-CNN、R-FCN、DeR-FCN對KITTI中的測試集圖像進行檢測,各算法的類別檢測結果如圖8所示。

圖7 損失曲線

圖8 不同模型的檢測準確率對比

從圖8中可以看出,DeR-FCN算法在各類別上的檢測精度均高于其它算法,且與原算法相比各類別的檢測精度都有很大的提升,這是因為DeR-FCN網絡結構融合了低層特征的位置和邊緣信息和高層特征的語義信息,使得模型在保持原有檢測精度的前提下對小目標檢測具有更強的適應性;引入DeRPN網絡提高了模型對變體對象的適應性,獲得更加貼合目標的候選框;預測階段使用軟化非極大值抑制算法有效避免重疊區域車輛漏檢;訓練階段使用在線難例挖掘算法有效提高模型對難識別樣本或與正樣本相似的混淆負樣本的識別效果,從而提高了模型的檢出率。

表3是Faster R-CNN、YOLOv2、SSD、R-FCN與本文提出的DeR-FCN算法在KITTI數據集進行測試的實驗結果。從表中可以看到,本文提出的DeR-FCN獲得了86.06%的mAP和0.184 s/張的檢測速度,在精度方面優于所有其它算法,但在檢測速度方面遜色于基于回歸的檢測模型YOLOv2和SSD,與原R-FCN算法相比本文提出的方法檢測精度提高了8.96個百分點,由于改進后算法網絡結構更加復雜每張圖像檢測時長增加了0.008 s,但也基本滿足實時檢測的要求。

表3 不同模型在KITTI數據集上檢測結果對比

圖9顯示了DeR-FCN方法在KITTI數據集上檢測的效果。

圖9 模型檢測結果展示

從圖9中可以看出,本文提出的模型對復雜環境中遮擋車輛及小目標車輛檢測具有較好的魯棒性。

3.5.2 不同模型在PASCAL VOC數據集上檢測效果對比

DeR-FCN算法與其它算法在PASCAL VOC數據集進行訓練與測試的實驗結果見表4。從表中可以看到,本文改進后的DeR-FCN對20個不同物體類別的mAP為71.5%,與改進前的R-FCN模型相比提高了2.6個百分點,實驗結果表明,改進后的DeR-FCN模型適用于一般物體的目標檢測。

表4 不同模型在PASCAL數據集上檢測結果對比

4 結束語

針對復雜城市環境下車輛檢測遮擋、小目標漏檢、誤檢等精度低下問題,本文提出了DeR-FCN算法,考慮特征提取階段不同卷積層的特征圖具有不同圖像信息的特點,加入深度特征融合模塊,并使用維度分解區域提議網絡生成更加精準的區域候選框,同時在預測階段引入軟化非極大值抑制算法,顯著提高模型對遮擋目標的檢出率。在公共數據集上的實驗結果表明,本文提出的DeR-FCN車輛檢測算法在檢測精度上具有較為明顯的優勢,且適用于其它物體的目標檢測。未來考慮在保證模型檢測精度的基礎上,裁剪優化基礎網絡,提升網絡的實時性能,以便更好應用于現實生活中。

猜你喜歡
卷積精度特征
根據方程特征選解法
離散型隨機變量的分布列與數字特征
熱連軋機組粗軋機精度控制
基于3D-Winograd的快速卷積算法設計及FPGA實現
卷積神經網絡的分析與設計
超高精度計時器——原子鐘
從濾波器理解卷積
不忠誠的四個特征
分析誤差提精度
基于DSPIC33F微處理器的采集精度的提高
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合