姚磊
(長江重慶航道工程局,重慶 400010)
傳統的目標檢測算法特征提取麻煩,一般需要手工制作特征,因此它的檢測精度低,速度慢。使用深度學習進行目標檢測的開創性工作來自 ICCV2015 的一種基于區域候選的卷積神經網絡(R-CNN)[1]。它首先是在圖像中篩選出所需的候選區域,接著將這些候選區域統一為指定大小,通過 CNN 網絡來提取出特征向量,最后通過SVM 分類器輸出相應的分類結果,并用 NMS消除不準確以及多余的檢測框。由于CNN 的輸入大小必須統一,對候選區域進行放大或者縮小操作都將會導致最終的檢測結果不 準確。因此何愷明等人[2]提出了 SPP-Net 層來解決輸入尺寸不統一的問題,通過增加SPP 層解決了輸入尺寸不統一的問題,而后就可以將網絡的輸入更變為任意尺寸而輸 出依然是一個固定維數的矢量。然后,又針對R-CNN 速度比較慢、訓練步驟多、需要額外的分類器等缺點,出現了Fast R-CNN 網絡框架,加入了ROI(Region of Interesting) 池化層進行尺寸變換。并且采用基于VGG16 的神經網絡來進行分類識別,直接對整張圖像進行卷積操作,與R-CNN 網絡框架比較,Fast R-CNN 的速度有了很大的進步。Faster R-CNN[3]是使用區域候選再加上 CNN 分類的目標檢測框架。檢測時就是通過滑動窗口對圖片進行遍歷,通過 RPN 網絡在最后的卷積層上遍歷一次,有效的代替了選 擇性搜索。區域推薦網絡替代選擇性搜索提取候選框,采用共享的計算,進一步加快目標檢測效率。另外一種深度學習目標檢測算法是通過端到端的方式,省去區域候選提名這一步驟,使用這種方式檢測速度快,采用回歸的思想能夠直接從圖像中檢測出指定的目標,YOLO 是比較典型的目標檢測框架,YOLO(You Only Look Once)采用了一種非常激進的檢測方法,完成了整個圖像 bounding box 和類別概率的預測。極大提高了系統的速度。
隨著計算機視覺技術的快速發展與完善,近年來越來越多的研究人員也將這項技術運用到船舶跟蹤識別這一領域。2010 年,AREL I 等[4]利用神經網絡對集裝箱船、客船、漁船、軍艦和帆船進行分類。2016 年,魏娜[5]將模板匹配和BP 神經網絡應用在了船舶的識別中。2017 年,肖志良[6]提出了基于有源RFIn 技術的船舶識別與控制終端系統研究。同年楊名[7]也提出了一種基于高速區域卷積神經網絡的船舶視頻檢測方法,王培玉則在復雜碼頭環境下對船舶進行了檢測與跟蹤。2018 年,劉寶龍在基于圖像分析和深度學習下,利用神經網絡對船名標識字符進行了精確的識別。2019 年,聞河優化了先前的檢測的神經網絡,提出了一種CNN 與ELM 相結合的船舶分類識別方法。
船舶自動識別系統(Automatic Identification System,簡稱AIS)是指一種應用在岸—船、船一船以及船一岸之間的海事安全與通信助航系統。船舶自動識別系統(AIS)設備能將本船的動態信息如經緯度、航速、航向等和靜態信息如海上移動業務標識MMSI (Maritime Mobile Service Identity)碼、船名、呼號等,經信息處理器處理后在VHF 信道向外播發,本船周圍船舶只要安裝了AIS 設備就可以自動接收這些船舶信息并顯示;同時,本船也可將其他船的識別信息和本船信息一起存儲并向范圍內其他目標船發送。
初始階段船舶自動識別系統(AIS)的應用是為了幫助識別船舶,協助跟蹤目標,簡化信息交換(如減少口頭必須的船舶報告),提供船舶附加信息有助于了解各方面的情況。為了防止航行船舶在狹窄的航道中交會時的碰撞,航行中的船舶彼此在了解了對方船舶的航向、航速、船型和位置后,可以迅速作出正確判斷,從而操作船舶避免碰撞,增加航行的安全系數。
近階段,由于無線電技術的不斷進步,制約無線數據交換的技術障礙被克服,AIS 系統由原先為防止船舶避碰目的而推出,到目前已延伸出對航行船舶的監管、航標和搜救等方面的應用。
在本文中船舶自動識別系統(AIS)運用在船舶要素的提取,輔助機器視覺對船舶的跟蹤識別。
YOLO(yolo only look once)是目標檢測領域的非常具有代表性的單階段卷積網絡目標檢測算法,是目前廣泛投入實際場景使用的很廣泛的單階段檢測算法。
YOLOv3 提出了Darknet53 特征提取網絡結構,Darknet53 借鑒了ResNet 的思想,采用殘差塊及殘差連接形成更深網絡層,緩解網絡的梯度消散并提升網絡的表征能力,網絡由一系列的1×1 和3×3 卷積核組成53個卷積層,包括5 次卷積層對特征圖進行每次尺寸縮小1/2 的降采樣。在特征圖檢測部分,YOLOv3 引入類似FPN(Feature Pyramid Networks)結構的上采樣特征融合實現多尺度檢測,對其中降采樣的13×13、26×26、52×52 的3 個尺度特征圖進行預測,對于13×13 特征圖是在第74 層網絡經過多層卷積之后,于第82 層進行檢測;對于26×26 特征圖通過第83 層連接79 層、第86 層網絡融合第61 層的特征圖與第85 層的上采樣特征圖進行檢測;對于52×52 特征圖,通過第95 層連接第91 層、第98 層網絡融合第36 層的特征圖與第97 層的上采樣特征圖后進行檢測。在損失函數方面,Yolov3的損失函數包括目標預測框定位損失coord、置信度損失obj、分類損失cls。
YOLOv3 根據不同的輸入目標尺寸,將包含深層特征和淺層特征單向融合,強化淺層特征的語義信息,特征圖尺寸分別為原始輸入的1/8、1/16、1/32,實現了不同尺度的目標檢測,但也導致在尺寸較小的目標的檢測上仍存在不足,易造成目標的漏檢,在港口場景船舶目標檢測問題上,多種船舶在姿態和尺度差異較大。原YOLOv3 的目標損失函數對預測框的寬高進行單獨的均方差損失計算,雖然能夠回歸大小合適的預測框,但使得網絡對港口目標尺度變化敏感,在考慮預測框與目標框的整體定位的準確性方面需優化。為了進一步增強對船舶視覺監測效果,滿足復雜港口場景的視覺監測任務需求,本文在原YOLOv3 模型基礎上進行了針對性的設計。
港口目標檢測算法的研究重要基礎是一定規模已標注的數據集,考慮到港口場景的多樣性,參考港口規范,本節通過收集多個港口場地的不同港口背景不同拍攝角度和距離、不同目標間位置關系以及盡可能收集實驗室的數據資料,共計整理2187 張圖片,并采用標注工具對數據集進行荷載目標的邊界標注,標注完成的數據集轉化為YOLOv3 算法所要求的YOLO 格式,該類格式包括了標注邊界框位置信息,并經過歸一化的轉換以實現模型網絡的圖像數據處理。YOLOv3 模型在訓練過程中隨機改變目標間的尺度和位置關系,降低模型對單一的港口場景下的圖像特征依耐性,從而提高模型在多個港口場景中目標的檢測識別的能力。
如何對港口的船舶進行視頻流的目標跟蹤是實現荷載位置獲取的第二步,在前面的港口船舶定位基礎上,處理港口視頻是已經能夠較好得檢測識別船舶目標,接下來采用了計算機視覺研究領域中研究應用較為廣泛的DeepSORT 算法,來對檢測的目標位置實現時空維度上的連續跟蹤。
在港口船舶的位置運動預測部分,卡爾曼濾波算法首先對目標的位置運動信息估計一方面估計得到一個確定的目標的位置信息,由YOLOv3 檢測到的荷載目標邊界框的中心坐標(),框的寬高比,高,以及各自的速度變化量,由8 維向量的位置運動信息表示為,然后這些信息對應了一個位置運動的協方差矩陣來表示荷載位置信息的不確定性,其具體的形式通過對角矩陣來表示,對角位置中數字與信息的不確定性程度相關。那么在具體的預測環節,預測基于前一個時刻的狀態來預測下一個時刻的狀態,對于變量的運算就包括將上一時刻的位置運動信息與狀態轉移矩陣相乘,其中狀態轉移矩陣中包括了是連續時刻幀之間的信息差值,運算過程矩陣運算展開后,可以得到關于位置橫縱坐標的考慮荷載勻速的模型。狀態量預測后,進一步通過所對應的協方差和設置的噪聲矩陣之間的運算來進一步預測時刻的位置信息。
在港口荷載目標跟蹤實現上主要是將港口視頻的前一幀畫面中的跟蹤邊界位置與經過YOLOv3 檢測器所得到的當前畫面中的檢測邊界回歸框進行一個匹配的關聯計算,對于關聯的指標而言,相較于基礎的SORT 算法,本文采用的方法的特點在于指標信息一方面是融入了帶有外觀信息的對比,這部分主要是通過重識別卷積網絡來對比像素視覺特征上的相似性來為跟蹤提供參考,另一方面是基于跟蹤邊界和檢測邊界的幾何維度的馬氏距離,該距離指標是基于兩框之間的位置交互程度的指標來計算代價矩陣,以計算在幾何位置上跟蹤與檢測結果的關聯性。
在港口場景的船舶的跟蹤過程中,本文基于DeepSORT 算法實現對船舶的連續穩定跟蹤,那么在這個基礎上,實現了連續的每個目標的位置信息的輸出,回顧整個DeepSORT 的算法可知,檢測器的檢測邊界框作為重要的輸入值,在整個跟蹤信息預測和匹配關聯的過程中,無論是外觀的圖像特征還是邊框位置,都直接關系到了軌跡預測和匹配的結果,因此,對于港口船舶的跟蹤重點仍然在于目標檢測器的性能。在計算機視覺的檢測和跟蹤環節,本文都是基于二維圖像數據的處理,因此得到的是圖像像素維度的二維位置信息,在實際的港口場景應用中,荷載的位置信息一般以空間位置的形式使用。
對于定位系統的構建,本文從港口平臺上的監控攝像機獲取港口船舶圖像,然后使用港口船舶檢測、港口船舶跟蹤和坐標變換來獲取港口船舶的空間和時間分布信息。監測系統訪問港區的視頻流后,本節的系統通過YOLOv3 快速獲取港口船舶的位置和類型,然后結合DeepSORT 方法跟蹤幀中的每個港口船舶對象,獲取每個港口船舶目標在時間段內的移動速度和方向,將跟蹤目標的像素坐標轉換為區域平面坐標,最后得到荷載空間位置信息。
在本文數據集涉及的各種場景的港口目標檢測中,多尺度的目標檢測效果通過實驗結果可知,在各種復雜視覺條件下的港口場景中,對于的小尺寸目標和畫面占比較大的大型機械荷載在圖像中分布較多的情況,這需要模型的多尺度檢測具備較強的魯棒性,此外YOLOv3通過預測框中心點和長寬大小差異損失函數計算網絡回傳梯度,這使得損失函數對目標尺度比較敏感。本文的模型通過圖像混疊增強使得網絡訓練出對于局部密集目標和遮擋存在時的抗干擾能力,加上對網絡檢測尺度的擴展,4 個尺度的雙向金字塔單元雙向特征融合,增加了特征圖8 倍下采樣小目標檢測尺度的同時也在一定程度上解決了低層特征語義信息不足分類不準確和高層特征位置信息不足定位誤差較大的問題,即擴展了多尺度檢測也增強了對小目標檢測精度。同時特征提取網絡Ghost 網絡模型的引入優化了模型的檢測速度。隨著進一步在預測層引入了DIoU 損失函數加入和對應的非極大值抑制方法后使得預測框定位加入了中心點距離懲罰項而更加合理,降低了網絡對目標框尺度變化的敏感性,緩解了目標遮擋時密集預測框之間的錯誤抑制,整體上使得模型對港口多尺度目標檢測準確性有較好的提升。