卜華雨,楊國平
(201620 上海市 上海工程技術大學 機械與汽車工程學院)
對于綠化隔離帶的識別可分為對隔離帶路肩的識別與對隔離帶中綠化種類的識別,根據檢測識別出的不同綠化植被進行不同方式的澆灌。目前基于自動駕駛對于目標識別的研究大多針對行人、車輛、車道線等安全因素開展。國內外當前主流研究方法分為單階段和雙階段2 種。雙階段指檢測算法需要分2 步完成,首先需要獲取候選區域,然后進行分類,比如R-CNN 系列;單階段檢測可以理解為一步到位,不需要單獨尋找候選區域,典型的有SSD 和YOLO 算法等[1]。
本文研究了一種對公路隔離帶綠化進行識別的結合不感興趣區域的Faster-RCNN 改進算法,使用改進的RPN 網絡替代原有網絡以及不感興趣區域,可實現對不同綠化進行識別,為無人駕駛澆灌車轉換澆灌模式提供支持。經驗證,該改進算法可有效完成檢測任務。
Ross 等2014 年提出的基于區域的卷積神經網絡方法 RCNN[2],成為基于區域提議方式進行識別的典型方案。在檢測階段,RCNN 分4 個步驟:(1)使用視覺方法(如 Selective Search)生成大量候選區域;(2)對每個候選區域用CNN 進行特征提取,形成高維特征向量;(3)將這些特征量送入一個線性分類器計算屬于某個類別的概率,用于判斷所包含對象;(4)對目標外圍框的位置和大小進行精細回歸[3]。
傳統的Faster R-CNN 首先需要經過VGG-16網絡,通過卷積網絡中各個卷積層卷積核的卷積后將生成的具有一系列特征的特征層輸入到RPN 網絡中[4]。如圖1 所示,傳統的Faster R-CNN 中的RPN 網絡有5 個特征層(Feature Layer),各自又有不同的高度、寬度和厚度。其中最深層的特征層L5 通過3×3 卷積后最終得到了候取框提取層Lc,最后通過1×1 的卷積送入Softmax 分類器并進行邊框回歸。

圖1 傳統RPN 網絡結構Fig.1 Traditional RPN network structure
本研究面向的對象是澆灌養護車輛,需要保證識別精度,而傳統RPN 網絡的特征提取因為要保證速度,所以大大削弱了其特征細節以及其包含的信息量,這也使得最深層輸出特征層包含的圖像精度以及信息細節丟失過多,影響對目標的識別以及定位。故本研究的思路是通過將次最深特征層進行處理后與最深層特征層進行結合,得到新的候取框提取層,從而提高目標識別精確度以及定位的可信度。
本研究通過將次最深特征層同樣進行3×3 的卷積并進行L2正則化得到新的特征層Lc2,如圖2所示。L2正則化可理解為它對于大數值的權重向量進行嚴厲懲罰,傾向于更加分散的權重向量[5]。進行L2正則化處理的目的是提高模型的泛化能力,降低由于特征細節過多導致在訓練中過擬合現象的發生風險[6]。新得到的特征層Lc2將與最深層特征層卷積生成的特征層Lc1的特征信息進行融合,從而得出新的候取框提取層Lc3[7]。這種方法既可以將淺層次特征層與深層次特征層的特征信息進行融合,也不會增加特征選取框候取層的厚度。

圖2 改進的RPN 網絡結構Fig.2 Improved RPN network structure
在模型訓練過程中,在候取框提取層使用劃窗處理提取特征框,根據Faster R-CNN 中所述,使用不同大小的錨點框(Anchor box)對檢測目標進行框取,并計算其與目標真實選框的交并比(IoU),將其中大于0.7 的定為正樣本,反之定為負樣本進行訓練[8]。

式中:Sdetection——檢測框區域面積;Ssetting——標定框區域面積;Sdetection∩Ssetting——檢測框與標定框所交區域面積。
在驗證模型訓練成果時,模型將會檢測出許多測試圖片集中圖片所包含的眾多感興趣區域(ROI),每個待檢測目標也會生成多個感興趣區域,因而為了使得模型針對某一目標最終檢測輸出的感興趣區域精準且唯一,大多目標檢測模型都使用了非極大值抑制(Non-Maximum Suppression,NMS)的方法進行篩選。但其算法有一大缺點,由于其將與得分最高ROI 交并比,大于某個閾值的所有ROI 都直接打零分,所以其篩選過程較為粗暴。由于本研究針對檢測對象及檢測角度的背景,使檢測出的不同目標框往往有較多重合,這意味著其交并比會較大,故使用非極大值抑制會導致目標檢測的不全面,產生漏檢、少檢現象,故本文選擇了高斯非極大值抑制(Soft NMS)進行感興趣區域的篩選,該算法相較于NMS,舍棄了將大于閾值的ROI 分數歸零的操作,取而代之的是以稍低的分數代替。其算法流程見表1。

表1 Soft NMS 算法流程圖Tab.1 Flow chart of Soft NMS algorithm
Soft NMS 打分標準函數為:

式中:si——ROI 的得分;M——當前得分最高的ROI;bi——第i個待篩選ROI;σ——高斯權重,通常取0.3。
目前Faster-RCNN 大部分運用在車輛識別以及行人識別,其檢測效果得到廣泛驗證。本研究主要針對城市公路中央綠化隔離帶,運用Faster-RCNN 進行目標檢測與識別,通過對不同綠化植物的識別,達到澆灌車輛的澆灌方式控制。
本研究數據集的采集,駕車行駛于上海松江區某公路,使用攝像機對沿途中央綠化隔離帶進行攝錄,最后通過基于Python 語言Tensorflow 平臺下OpenCV 進行圖像提取,獲得一份數量可觀的數據集。通過OpenCV 軟件截取的圖片取自高清攝像機,需要對圖片數據進行預處理,適當縮小圖片像素及圖片大小,最后制作完成一份合格、合適的圖像數據。
實驗硬件采用Z390 搭配Intel i9-9900k CPU,32 G 內存以及NVIDIA2070 顯卡,操作系統為Windows 10;編程采用Tensorflow1.8,使用Python語言編譯。實驗的樣本數據來自作者使用OpenCV對本地公路中央綠化隔離帶錄像的截取圖像,并隨機將其中75%的數據作為訓練集,剩余25%數據作為測試集。在訓練中需要提前將訓練集圖像中的各個檢測目標用矩形框進行框取,本文主要對象為樹木(tree)、灌木(bush)以及花卉(flower)。如圖3 所示,在迭代次數達到5 000 次后,mAP 曲線震蕩幅度減小,趨于穩定。

圖3 mAP 隨迭代次數的變化曲線Fig.3 mAP variation curve with the number of iterations
此外,由于道路兩旁行道樹對隔離帶植被檢測存在干擾,故根據圖像集合中中央綠化隔離帶位于圖片所在位置以及誤檢測行道樹的位置,選擇將攝像頭所攝圖像左上角灰色矩形區域設置為不感興趣區域(Region of non-interest,RONI),如圖4 所示。

圖4 不感興趣區域(RONI)Fig.4 Region of No Interest (RONI)
圖5 為采用改進RPN 網絡以及不感興趣區域(RONI)的Faster R-CNN 算法對測試集中圖像進行目標識別的結果,圖6 為僅使用了改進的RPN網絡的Faster R-CNN 算法對測試集中圖像進行目標識別的結果。

圖5 未使用不感興趣區域的目標識別結果Fig.5 Target recognition result without using regions of no interest

圖6 使用了不感興趣區域的目標識別結果Fig.6 Target recognition results using regions of no interest
結果顯示,使用了不感興趣區域的改進的Faster R-CNN 算法在對中央綠化隔離帶植被的檢測中很好地避開了道路兩旁的行道樹干擾,同時對植被種類的識別也較為準確且定位精準。表2 對比了二者與傳統Faster R-CNN 算法的檢測準確率和召回率,不難看出,使用了RONI 的模型準確率得到了提升,降低了誤檢率。

表2 3 種方法的檢測準確率和召回率Tab.2 Detection accuracy and recall rate of the three methods
本文提出了結合不感興趣區域(RONI)的改進Faster R-CNN 算法對城市公路中央綠化隔離帶的識別方法。試驗表明,該模型相較于傳統Faster R-CNN 算法對于指定目標在犧牲一定檢測時間的代價下得到了檢測精度的一定提升。但針對城市公路中央綠化隔離帶,目前僅可對較少的幾個常見綠化植被進行識別,面對更為復雜的識別環境時,模型的檢測類別以及添加更多類別后的識別精度還有待提高。