?

改進Cascade RCNN的水下目標檢測

2022-07-23 06:35廣州海洋地質調查局海洋技術方法研究所何水原
電子世界 2022年1期
關鍵詞:精度神經網絡特征

廣州海洋地質調查局海洋技術方法研究所 林 宇 何水原

近年來海洋觀測技術快速發展,水下目標檢測在軍事防御、水下資源勘探、海洋環境保護以及水產養殖、漁業等海洋經濟領域發揮了重要作用。在水下目標檢測領域,常用檢測模型對尺度差異大的目標檢測效果較差。針對這個問題,本文提出采用改進Cascade RCNN算法對水下目標進行檢測。該算法在深度網絡Cascade RCNN的基礎上,選用殘差神經網絡ResNet50作為模型的骨干網絡、特征金字塔網絡(FPN)作為特征提取方式,并通過隨機搜索的方法調整超參數,顯著提升了下水下目標檢測的精度。實驗結果表明,相同參數下本文算法與基線網絡模型Faster RCNN對比,能夠將平均準確率從54.9%提升至73.1%,精確率從64.0%提升到84.1%,召回率從58.2%提升到70.5%;超參數調優后,平均準確率提升到83.7%,精確率提升到89.1%,召回率提升到84.5%。

目標檢測是利用計算機視覺和圖像處理領域相關的技術,對數字圖像和視頻中某一類語義對象進行檢測,是當前人工智能領域的研究熱點。水下目標檢測是目標檢測的分支,是指利用目標檢測技術,從水下圖像中檢測出感興趣的物體,并確定它們的位置和大小。近年來海洋觀測技術快速發展,水下目標檢測在軍事防御、水下資源勘探、海洋環境保護以及水產養殖、漁業等海洋經濟領域發揮了重要作用。水下圖像是海洋信息的重要載體,水下目標檢測可以結合水下機器人,利用其攜帶的水下攝像機對感興趣的目標進行監測和搜尋,具有重要的研究價值和應用前景。但水下目標檢測也有獨特的難點:由于水下檢測目標種類眾多、尺度差別大且小目標居多,使檢測任務變得困難重重。

傳統目標檢測算法主要有Viola Jones Detectors、HOG Detector以及Deformable Part-based Model等。用于水下目標檢測的典型算法有2010年由Oliver等人提出的利用哈里斯和黑暗森林檢測器的方法對水下目標進行區域檢測和匹配。2013年由Fabic提出的通過斑點計數和形狀分析的方法,對水下視頻序列中的魚類種群進行分類。傳統目標檢測算法需要人工設計圖像提取特征,針對性強但不具有普適性,對于多樣的目標沒有很好的魯棒性。

2013年,Ross Girshick提出RCNN(區域卷積神經網絡模型),這是一種兩階段檢測算法,首先通過傳統圖像算法Selective Search對圖像產生候選區域,再利用CNN(卷積神經網絡)對候選區域進行分類并預測目標物體位置。RCNN首次將深度學習算法應用在目標檢測任務上,并取得了極大的成功。隨后Ross Girshick對RCNN進行了改進,提出了效率更高的Fast RCNN,并被后人繼續改進為Faster RCNN。2015年,Joseph Redmon和Liu Wei分別提出了單階段檢測算法YOLOv1和SSD。單階段檢測算法只使用一個網絡就能同時產生候選區域并預測出物體的類別和位置,因此具有較快的推理速度,而兩階段檢測算法則具有較高的定位和目標檢測精度。

目前針對水下目標檢測的研究多以圖像增強為主:2019年Lin Wei Hong提出一種名為RolMix的圖像增強方法,為重疊、遮擋、模糊的水下目標構建了泛化性更好的模型;2020年Chen Long由高分辨率和語義豐富的超特征圖組成的SWIPENet,同時采用了反向多類Adaboost(IMA)樣本重加權算法,提升了水下小目標樣本的檢測精度;2020年Liu Hong提出一種WQT水質轉移數據增強方法,通過DG-YOLO網絡挖掘語義信息,對水質較差的小型水下數據集檢測精度有所提升。

超參數是深度神經網絡在訓練開始前設置的參數,包括學習率、權重衰減、錨框尺度、錨框高寬比等。各水下目標檢測網絡已經表現出了較好的性能,通過對超參數進行合理調優,可以有效地提高檢測精度。最基礎的調參方法是網格搜索,該方法采用窮舉法的思路,遍歷所有可能的超參數組合,因而只適用于小規模超參數優化問題。2012年Bergstra提出隨機搜索,該方法能更高效地搜索重要參數,適用于少數超參數起決定作用的模型。此外還有通過對隨機初始超參數的指標結果擬合概率模型來推斷最佳超參數的貝葉斯優化算法以及基于種群概念,通過并行優化多個超參數并進行篩選最終輸出最佳超參數的遺傳算法等,這些算法對算力和數據量有很高的要求,并且可能陷入局部最優解。

本文針對常用檢測模型對尺度差異大的目標檢測效果較差的問題,提出采用改進的Cascade RCNN算法對水下目標進行檢測,該算法在深度網絡Cascade RCNN的基礎上,選用殘差神經網絡ResNet50作為模型的骨干網絡、特征金字塔網絡(FPN)作為特征提取方式,并通過隨機搜索的方法調整超參數,然后在相同參數下與基線網絡模型Faster RCNN進行對比,驗證該算法對提高尺度差異大的水下目標檢測效果的有效性。

1 改進的Cascade RCNN算法

本文采用的改進的Cascade RCNN算法網絡結構如圖1所示。該算法在深度網絡Cascade RCNN的基礎上,選用殘差神經網絡ResNet50作為模型的骨干網絡、特征金字塔網絡(FPN)作為特征提取方式。

圖1 改進Cascade RCNN網絡結構

1.1 Cascade RCNN

目標檢測模型網絡采用交并比(IOU)來定義正樣本和負樣本,當交并比較低時會產生檢測噪聲,而提高交并比又會因為過擬合和訓練/推理的交并比不匹配導致檢測表現變差。Cascade RCNN采用多級聯檢測結構,通過一系列可以不斷提高交并比閾值的檢測器,解決了檢測框準度低、容易出現噪聲干擾的問題,減低近似檢測錯誤的概率。在逐步改進閾值的同時通過重采樣來保證所有的檢測器都有等效的正樣本,減少了過擬合的問題。并且在推理階段也采用相同的多級聯結構,防止因為與訓練階段的交并比不匹配而使檢測表現變差。

Cascade RCNN模型損失函數包括位置損失函數和分類損失函數,總體損失如公式1所示。公式1中,位置損失函數Lloc為smoothL1損失函數,其中b為帶有目標對象的圖像塊上預測的目標邊界框坐標,g為人工標注的目標邊界框,通過回歸函數f(x,b)實現損失函數的最小化;分類損失函數Lcls為softmax函數,式中y為對應類別的標簽,通過分類函數h(x)將圖像塊x分配為M+1個類別之一(類別0為背景),分類損失函數對模型影響更大。

1.2 殘差神經網絡

在目標檢測領域,卷積神經網絡的深度對檢測結果的精度有重要意義,但隨著網絡層數的加深又會帶來梯度彌散或梯度爆炸的問題,并引起精度下降。殘差神經網絡是目標分類領域廣泛使用的網絡結構,其將殘差學習的思想加入到傳統卷積神經網絡中,解決了深層網絡容易梯度彌散和精度下降的問題。ResNet50是常用的殘差神經網絡之一,它具有50層的深度(如表1所示),其中第一層為7*7*64的卷積,然后連接3個、4個、6個、3個共16個結構單元,每個單元為3層,共48層,加上最后一層全連接層,共50層。ResNet50網絡結構如表1所示。

表1 ResNet50網絡結構

1.3 特征金字塔網絡

檢測目標尺寸差異大是目標檢測領域的常見問題,目前常用的解決方法是采用特征圖像金字塔進行多尺度測試來提高檢測精度,但這種方法會占用大量計算能力和內存,且檢測效率降低了4倍,在實際生產作業中并不實用。為了解決水下目標檢測任務存在檢測目標尺寸差異大的問題,采用特征金字塔網絡作為特征提取的方法,該網絡結構能夠在增加少量計算量的同時優化目標檢測中的多尺度變化問題。

特征金字塔網絡利用卷積網絡特征層的金字塔結構,通過自上而下的路徑和橫向連接將低分辨率、語義強的特征于高分辨率、語義弱的特征相結合,構成不同特征層均具有豐富的語義信息的特征金字塔。特征金字塔網絡對平均精度和平均召回率有顯著的改善,是一種實用準確的多尺度目標檢測解決方案。

特征金字塔網絡結構包括自下而上的路徑、自上而下的路徑和橫向連接(如圖2所示)。在ResNet50中,自下而上的卷積層2至卷積層5使用最后一個殘差塊輸出的特征激活,而卷積層1由于占用內存過大,不包括含在特征金字塔中。然后通過橫向連接將其與自上而下路徑的同尺寸特征圖融合,從而得到不同分辨率且語義豐富的特征圖。

圖2 特征金字塔網絡結構圖

2 基于隨機搜索的網絡超參數調優

超參數調優是模型設計的最后一步,也是訓練神經網絡的第一步。訓練過程中對權重影響更大的超參數通常對神經網絡的精度影響也更大,然而如何確定哪個超參數對最終的精度更重要,更多時候還是由經驗決定。

2.1 主要的超參數

超參數可分為用于訓練的超參數和用于模型設計的超參數。與模型訓練相關的超參數對神經網絡的收斂速度和模型性能,而模型設計的超參數則用于調整神經網絡的結構,如隱藏層的數量和寬度等。對超參數調優即選擇合適的超參數λ,使泛化誤差最小,其數學表達如式2所示:

學習率是在隨機梯度下降過程中確定步長的正標量。較小的學習率會導致模型收斂緩慢,而過大的學習率則可能導致模型無法收斂。學習率通常在訓練期間采用手動調整,也可以采用在訓練過程中自適應可變的學習率。

權重衰減系數是在做梯度運算時,當前權重減去的比例大小,是神經網絡正則化的方法,其作用是降低權重值,使模型整體權重接近零,減少模型對輸入中噪聲的敏感度,避免模型出現過擬合,提高模型泛化能力。

錨框的概念最早出現在Faster RCNN網絡中,是指目標檢測中用于表示目標的邊框,以坐標的形式表示。錨框尺度和錨框高寬比是關于錨框的超參數,分別表示目標的大小和形狀,在Faster RCNN中定義的尺度為8、16、32,高寬比為0.5、1、2,組合出9中不同形狀大小的邊框。

2.2 隨機搜索

隨機搜索調優算法是對可能的超參數在可能的范圍進行隨機搜索,搜索預算(如時長、算力)根據設置的時間或達到所需的精度為止。

3 實驗及研究結果

實驗基于PaddlePaddle深度學習框架,在TeslaGPU P40,24G顯存單卡,12核CPU,40G內存環境中運行,采用公開數據集對Cascade RCNN網絡模型進行預訓練,然后用數據處理后的數據集對網絡進行訓練,從平均準確率、精確率、召回率三個角度分析訓練后網絡對水下目標的檢測能力,并和基線網絡Faster RCNN網絡做了詳細的對比,最后采用隨機搜索對Cascade RCNN網絡進行超參數調優,驗證改進Cascade RCNN網絡在水下目標檢測任務中的有效性。

3.1 實驗數據及預處理

本文采用2020年全國水下機器人大賽數據集(如圖3所示),該數據集為真實水下環境拍攝圖像,共有5543幅訓練圖像。數據集包含海參、扇貝和海膽以及海星共4類檢測目標且以單個類別聚集為主,除此以外還包含大量復雜背景信息和干擾目標(如海草、魚類等)。數據劃分為訓練集、測試集和驗證集,比例約為8:1:1,其中驗證集用于超參數的調整。

圖3 水下目標檢測部分數據樣本

3.2 網絡訓練

試驗中,首先利用公開數據集ImageNet數據集對特征提取網絡模型進行預訓練,然后將水下目標數據集中的訓練圖像對改進的Cascade RCNN網絡進行訓練,最后用測試圖像對模型檢測精度進行檢測。

初始學習率為0.02,權重衰減系數為0.0001,錨框尺度為32、64、128、256、512,錨框高寬比為0.5、1、2,每次訓練時選取的樣本數為2,最大訓練次數為90000,每訓練10000次進行一次預測。

使用隨機搜索超參數調優,設置最大搜索時長24h,最大搜索次數10次,數據采樣比例70%,最高平均準確率為90%。搜索搜索結果顯示學習率約為0.001630,權重衰減系數約為0.00008,錨框尺度為5,錨框高寬比為2。

3.3 結果分析

訓練完成后改進Cascade RCNN網絡檢測效果如圖4所示。實驗以Faster RCNN網絡為基準,與Cascade RCNN網絡和調優后網絡做了詳細對比,各網絡實驗結果如表2所示。實驗結果表明,相同參數下本文算法與Faster RCNN網絡模型相比,能夠將平均準確率從54.9%提升至73.1%,精確率從64.0%提升到84.1%,召回率從58.2%提升到70.5%;超參數調優后,平均準確率提升到83.7%,精確率提升到89.1%,召回率提升到84.5%。

圖4 部分檢測結果

表2 本文方法的實驗結果

本文采用改進的Cascade RCNN算法對水下目標進行檢測,該算法在深度網絡Cascade RCNN的基礎上,選用殘差神經網絡ResNet50作為模型的骨干網絡、特征金字塔網絡(FPN)作為特征提取方式,改善了常用模型對水下目標檢測任務中小尺寸目標檢測效果差的問題,有效提高了模型檢測精度。通過隨機搜索的方式調整超參數,防止由于數據樣本量少導致模型過擬合,進一步提高模型檢測精度。實驗結果表明,模型的平均準確率、精確率、召回率相比基線網絡模型Faster RCNN均有較大幅度的提升。

猜你喜歡
精度神經網絡特征
根據方程特征選解法
基于遞歸模糊神經網絡的風電平滑控制策略
離散型隨機變量的分布列與數字特征
熱連軋機組粗軋機精度控制
超高精度計時器——原子鐘
神經網絡抑制無線通信干擾探究
不忠誠的四個特征
分析誤差提精度
基于神經網絡的中小學生情感分析
基于DSPIC33F微處理器的采集精度的提高
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合