高 曦 徐得志 鄧志華
(武漢交通職業(yè)學(xué)院,湖北 武漢 430065)
長江內(nèi)河航運作為我國貫穿東西的黃金水道,在《國家綜合立體交通網(wǎng)規(guī)劃綱要》國家戰(zhàn)略部署下,正在經(jīng)歷以“安全、高效、綠色、智能”為特征的新一代航運系統(tǒng)[1]偉大變革。以船舶交通管理系統(tǒng)(Vessel Traffic Service,VTS)為基礎(chǔ),國內(nèi)外積極開發(fā)智慧海事監(jiān)管平臺,致力于由“人盯死守”的傳統(tǒng)海事監(jiān)管方式向以智慧管理為核心的現(xiàn)代方式轉(zhuǎn)變[2]。利用船舶自動識別系統(tǒng)(Automatic Identification System,AIS)、雷達、閉路電視(Closed Circuit Television,CCTV)等感知方式實時、精準(zhǔn)掌握船舶動態(tài)信息,及時采取合理措施有效引導(dǎo)船舶航行行為,可實現(xiàn)船舶的自動跟蹤和碰撞預(yù)警。
AIS作為一種船舶廣播式應(yīng)答系統(tǒng),能夠自動向外發(fā)送本船的靜態(tài)和動態(tài)信息的同時,不斷接收周圍他船發(fā)送的此類信息,是最常見的船舶定位跟蹤設(shè)備。雷達、CCTV是VTS用于水路交通監(jiān)管的主要工具,對交通密集區(qū)域、進出航道和高風(fēng)險水域的船舶實時動態(tài)監(jiān)測。Kalman濾波、粒子濾波、相關(guān)濾波、深度學(xué)習(xí)以及其他衍生濾波器是常用的目標(biāo)跟蹤方法[3]。目前針對雷達和AIS信息融合的研究還比較有限,實際應(yīng)用中還有許多值得進一步研究的問題[4]?,F(xiàn)階段國內(nèi)外研究熱點集中在航跡關(guān)聯(lián),主要從統(tǒng)計學(xué)角度和模糊隸屬角度涉及關(guān)聯(lián)算法,并取得了豐富的研究成果。方瓊林等[5]針對復(fù)雜場景中船舶視覺跟蹤問題提出一種自適應(yīng)分?jǐn)?shù)Kalman濾波算法,有效降低了跟蹤器的漂移效應(yīng)。王群朋等[6]采用Kalman濾波算法對夜間航行船舶在視頻圖像中形成的多個光斑進行跟蹤,并根據(jù)光斑變化規(guī)律實現(xiàn)船舶檢測和跟蹤?;诙嘣串悩?gòu)數(shù)據(jù)融合的船舶跟蹤方法與傳統(tǒng)單一監(jiān)測手段相比,具有更好的環(huán)境適用性和檢測精度。潘泉等[7]針對目標(biāo)跟蹤聯(lián)合優(yōu)化問題,綜述了數(shù)據(jù)融合在多目標(biāo)跟蹤方面的研究進展。陳永利[8]提出一種多船舶雷達信息的軌跡融合算法,利用本船和他船的雷達信息,提升目標(biāo)探測精度。陳信強等[9]針對多目標(biāo)船舶跟蹤問題,提出一種多維特征融合機制和尺度變化估計的跟蹤框架,引入位置濾波器判定視覺圖像中的船舶位置。馬瑞鑫等[10]提出一種正態(tài)性隸屬度函數(shù)計算模糊矩陣的方法,對激光點云與AIS數(shù)據(jù)進行融合,用于船舶的動態(tài)跟蹤。多目標(biāo)跟蹤步驟主要分為目標(biāo)初始化、運動預(yù)測、數(shù)據(jù)關(guān)聯(lián)和狀態(tài)估計。目標(biāo)初始化是對場景中出現(xiàn)的新對象進行建模,并為其定義一個新的跟蹤ID。文成宇等[11]從多假設(shè)跟蹤、網(wǎng)絡(luò)流、深度學(xué)習(xí)、主題發(fā)現(xiàn)四類方法綜述了多目標(biāo)跟蹤目標(biāo)初始化方法。數(shù)據(jù)關(guān)聯(lián)負(fù)責(zé)多目標(biāo)跟蹤過程中多個觀測和多個目標(biāo)之間的關(guān)聯(lián),不僅需要判斷觀測信息是來源于真實目標(biāo)還是環(huán)境干擾,還應(yīng)識別出對應(yīng)哪個目標(biāo)的觀測。蔡秀梅等[12]和龔軒等[13]分別綜述了包括最近鄰法、聯(lián)合概率、粒子濾波等在內(nèi)的經(jīng)典數(shù)據(jù)關(guān)聯(lián)算法。動態(tài)復(fù)雜的水上環(huán)境使得雷達檢測系統(tǒng)存在大量漏檢和虛警現(xiàn)象,這便導(dǎo)致多目標(biāo)跟蹤算法性能下降[14]。
AIS和雷達是VTS重要的信息獲取方式,前者能提供靜態(tài)信息、安全信息和航次相關(guān)信息[15]等動靜態(tài)數(shù)據(jù),然而數(shù)據(jù)質(zhì)量和實時性不高,后者能夠?qū)崟r、準(zhǔn)確地提供監(jiān)控范圍內(nèi)船舶的動態(tài)信息。兩者既有共同信息,在性能方面也能夠互相彌補。因此,AIS與雷達數(shù)據(jù)融合對提升船舶航跡跟蹤精度,實現(xiàn)智能航行和智能航保具有重要價值。本文以長江某航段為對象,研究基于AIS與雷達數(shù)據(jù)融合的多船舶航跡跟蹤方法,設(shè)計一種多船舶跟蹤框架,包括數(shù)據(jù)關(guān)聯(lián)、目標(biāo)初始化、運動預(yù)測和狀態(tài)估計四個核心組成部分。同時,對AIS、雷達原始數(shù)據(jù)進行重采樣、時空對齊等預(yù)處理,確保符合輸入要求。最后,開展實驗評價,分析所提方法的跟蹤性能,包括跟蹤精度和計算代價。
目前,AIS與雷達的信息數(shù)據(jù)融合方式可分為集中式、分布式、混合式三種,其中分布式以實時性強、可靠性高分布式應(yīng)用最為廣泛。本文設(shè)計一種基于分布式AIS與雷達數(shù)據(jù)融合的多船舶跟蹤框架:首先將AIS、雷達原始數(shù)據(jù)進行預(yù)處理(AIS解析、降噪),并經(jīng)過時空配準(zhǔn)轉(zhuǎn)換至同一個坐標(biāo)系當(dāng)中;其次,利用運動特征相似度將雷達數(shù)據(jù)與跟蹤軌跡進行關(guān)聯(lián);隨后,建立運動方程對船舶運動進行預(yù)測,以關(guān)聯(lián)的雷達或AIS數(shù)據(jù)作為觀測信息,利用Kalman濾波對船舶當(dāng)前時刻的運動狀態(tài)進行更新,實現(xiàn)最優(yōu)估計。該多船舶跟蹤框架主要包括四部分:預(yù)處理、數(shù)據(jù)關(guān)聯(lián)、運動預(yù)測和狀態(tài)更新,如圖1所示。該方法可以實現(xiàn)以下目標(biāo):(1)不同(雷達、AIS)坐標(biāo)系統(tǒng)下同一目標(biāo)的數(shù)據(jù)關(guān)聯(lián),快速識別雷達系統(tǒng)中的船舶與非船舶目標(biāo);(2)雷達與AIS數(shù)據(jù)融合可以獲得更高質(zhì)量的船舶航跡,確保航行安全。
圖1 基于AIS與雷達數(shù)據(jù)融合的多船舶跟蹤框架
AIS提供的船舶動態(tài)數(shù)據(jù)是基于大地經(jīng)緯度坐標(biāo)系,同一艘船的AIS動態(tài)信息發(fā)送時間間隔與自身運動狀態(tài)相關(guān),約2~12 s之間,停泊船舶為3 min。雷達數(shù)據(jù)建立在以雷達為原點的極坐標(biāo)系下,檢測周期為2~4 s。AIS和雷達數(shù)據(jù)不在同一個空間坐標(biāo)系下,時間上也是異步的。為實現(xiàn)兩者的關(guān)聯(lián)和融合,本文須將其轉(zhuǎn)換至同一個空間坐標(biāo)系,時間上也需要對準(zhǔn),即時空配準(zhǔn)。
(1)坐標(biāo)轉(zhuǎn)換
假設(shè)雷達坐標(biāo)系(r,θ),AIS坐標(biāo)系(L,B)??臻g配準(zhǔn)就是將雷達和AIS的信息數(shù)據(jù)融合到同一坐標(biāo)系統(tǒng)下,本文選用以雷達為原點的直角坐標(biāo)系為系統(tǒng)坐標(biāo)系。假設(shè)O為雷達位置,x、y分別指向東經(jīng)和北緯方向。雷達和AIS捕獲同一個目標(biāo),對應(yīng)參數(shù)分別為(r,θ)和(L,B),則雷達目標(biāo)在系統(tǒng)坐標(biāo)系O-xy的位置(xr,yr)可表示為
AIS所獲位置信息是由GPS提供,采用墨卡托投影方法將大地坐標(biāo)的經(jīng)緯度變換成平面直角坐標(biāo),如公式(2)~(5)所示。
式中:r0為基準(zhǔn)緯度圈半徑,為常數(shù);q為等量維度,a為地球長半徑,e為橢球的第一偏心率,N0為墨卡托基準(zhǔn)緯度卯酉圈曲率半徑,φ0為墨卡托投影變換的基準(zhǔn)緯度。(L,B)為墨卡托變換輸出的WGS-84經(jīng)緯度,(xa,ya)則是墨卡托直角坐標(biāo)。
(2)時間對準(zhǔn)
由于雷達的掃描周期較AIS來說相對固定,所以采用雷達的采樣時刻作起始時間基準(zhǔn),建立閾值為
式中:ta是AIS信號掃描周期,tr是雷達信號掃描周期,C為閾值。
數(shù)據(jù)關(guān)聯(lián)包含航跡關(guān)聯(lián),是AIS和雷達信號數(shù)據(jù)融合的關(guān)鍵,目前關(guān)聯(lián)算法主要有統(tǒng)計法和模糊數(shù)學(xué)法,其目的是將無序的雷達和AIS數(shù)據(jù)作為觀測信息來判定是否為同一目標(biāo),是則關(guān)聯(lián)分配到某個目標(biāo)進行跟蹤,否則將作為噪聲被丟棄。本文采用基于聚類的數(shù)據(jù)關(guān)聯(lián)方法,其基本思想是將雷達m個觀測數(shù)據(jù)分配至當(dāng)前跟蹤目標(biāo),使得整體距離相似度最小??紤]到雷達數(shù)據(jù)的點云特征,多個雷達數(shù)據(jù)允許被判定為同一目標(biāo)的觀測數(shù)據(jù)。
假設(shè)某一采樣時刻雷達獲取的位置數(shù)據(jù)為[xr,1,xr,2,…,xr,m],當(dāng)前跟蹤目標(biāo)有n個,可表示為[xt,1,xt,2,…,xt,n],以當(dāng)前跟蹤目標(biāo)狀態(tài)為中心,計算每一個雷達數(shù)據(jù)xr,i到某一類中心xt,j的歐式距離
式中:xr,ik表示雷達觀測向量xr,i的第k個屬性,同理xt,jk。雷達觀測與跟蹤目標(biāo)之間的數(shù)據(jù)關(guān)聯(lián)可以通過兩者歐式距離之和最小化實現(xiàn),具體計算公式如下所示:
式中:Ci(i=1,…,n)表示雷達數(shù)據(jù)的關(guān)聯(lián)序號,取值范圍為當(dāng)前跟蹤目標(biāo)數(shù)量以及-1。-1表示該雷達數(shù)據(jù)遠離于所有的跟蹤目標(biāo),屬于干擾噪聲或者新目標(biāo)。
目標(biāo)初始化是對當(dāng)前跟蹤目標(biāo)進行初始化,根據(jù)數(shù)據(jù)關(guān)聯(lián)結(jié)果對當(dāng)前跟蹤的目標(biāo)進行更新,新增或者刪除跟蹤目標(biāo)。
當(dāng)多船舶跟蹤系統(tǒng)在1 min內(nèi)連續(xù)收到同一艘船舶的AIS數(shù)據(jù)時,且該船舶不在當(dāng)前的跟蹤列表中,則為其定義一個新的跟蹤目標(biāo),其目標(biāo)狀態(tài)定義為
式中:i為該目標(biāo)的跟蹤序號,x,y分別為該目標(biāo)的絕對坐標(biāo),s是相應(yīng)的對地速度,c表示對地航向。
假設(shè)當(dāng)前的跟蹤列表X=[x1;x2;…;xn](i=1,…,n),如果其中某目標(biāo)xi超過1 min沒有關(guān)聯(lián)新的觀測數(shù)據(jù)(AIS或雷達),則將其從跟蹤列表X中刪除,表示該目標(biāo)已經(jīng)消失或者跟蹤結(jié)束。
以Kalman濾波為融合框架,建立船舶狀態(tài)轉(zhuǎn)移方程,對船舶運動狀態(tài)進行預(yù)測,將關(guān)聯(lián)后的雷達或AIS數(shù)據(jù)作為觀測信息,對目標(biāo)船舶的狀態(tài)進行更新,通過多源數(shù)據(jù)融合,實現(xiàn)多船舶在線跟蹤。
假設(shè)船舶在短時間內(nèi)近似勻速運動,那么單個船舶運動狀態(tài)轉(zhuǎn)移方程可以表示為
式中:xk()、xk-1( )分別表示時刻k和k-1的船舶運動狀態(tài)向量,包括位置坐標(biāo)(單位:m)、航速(單位:m/s);F為4×4大小的狀態(tài)轉(zhuǎn)移矩陣,可用公式(11)表示;W表示4×1的系統(tǒng)噪聲向量,符合標(biāo)準(zhǔn)正態(tài)分布。
式中:Δt為狀態(tài)轉(zhuǎn)移時長(單位:s)。
隨后,利用關(guān)聯(lián)的雷達或AIS數(shù)據(jù),建立狀態(tài)觀測方程,如公式(12)所示:
式中:z(k)、x(k)分別表示時刻k的船舶運動觀測向量和預(yù)測向量;H為4×2大小的觀測矩陣,可用公式(13)表示;Q表示2×1的系統(tǒng)噪聲向量,符合標(biāo)準(zhǔn)正態(tài)分布。
根據(jù)Kalman濾波器工作原理,計算船舶運動狀態(tài)的最優(yōu)估計:
式中:Kk為時刻k的Kalman增益,與預(yù)測向量、預(yù)測協(xié)方差相關(guān)。由于線性假設(shè),可以通過公式(10~13)擴展,可同步實現(xiàn)多船舶運動預(yù)測和狀態(tài)更新。
值得注意的是,基于AIS與雷達數(shù)據(jù)融合的多船舶跟蹤可分為以下幾種情況。當(dāng)前時刻有AIS或雷達數(shù)據(jù)時,跟蹤過程包括運動預(yù)測和狀態(tài)更新;當(dāng)前時刻AIS和雷達數(shù)據(jù)都不可得時,跟蹤過程僅包括運動預(yù)測。當(dāng)連續(xù)缺少AIS或雷達數(shù)據(jù)作為觀測信息時,目標(biāo)初始化模塊將停止對該目標(biāo)的跟蹤,意味該目標(biāo)跟蹤結(jié)束。
天氣良好情況下,利用長江某航段AIS、雷達數(shù)據(jù)開展實驗,驗證所提多船舶跟蹤方法的有效性。
首先,對該航段的AIS報文進行解析,提取船舶的動、靜態(tài)信息,本文主要利用船舶的MMSI碼、經(jīng)緯度位置等數(shù)據(jù)。然后,將AIS、雷達提取到的船舶動態(tài)數(shù)據(jù)轉(zhuǎn)換至同一空間坐標(biāo)系,并根據(jù)時間戳信息進行同步,如圖2所示。圖2(a)為AIS數(shù)據(jù),不同的船舶位置信息用不同顏色標(biāo)識,并使用MMSI作為船舶身份識別碼;圖2(b)為對應(yīng)時空條件下的原始雷達檢測信號。經(jīng)統(tǒng)計可知,該場景共包含25個船舶目標(biāo),累計觀測時長2個小時。
圖2 船舶動態(tài)數(shù)據(jù)
使用預(yù)處理后的AIS、雷達數(shù)據(jù)對多船舶跟蹤方法進行測試,結(jié)果如圖3所示。雷達數(shù)據(jù)實際刷新時間為4~10 s,AIS數(shù)據(jù)受接收帶寬限制,同一個船舶的數(shù)據(jù)刷新時長也被大大延長。因此,所提的多船舶跟蹤方法的計算周期設(shè)置為2 s,即每2 s對所有目標(biāo)的狀態(tài)進行預(yù)測和更新。當(dāng)一個新的目標(biāo)船舶AIS數(shù)據(jù)連續(xù)兩次可得時,此時目標(biāo)初始化模塊啟動一個新的跟蹤線程加入到多船舶跟蹤框架當(dāng)中。隨后,利用不同時刻得到的AIS或雷達數(shù)據(jù)作為觀測信息,并結(jié)合該目標(biāo)船舶的運動預(yù)測,對其進行持續(xù)在線跟蹤,直到長時間(超過40 s)內(nèi)無法獲得新的觀測信息。目標(biāo)初始化模塊在每一個跟蹤周期內(nèi)負(fù)責(zé)對所有跟蹤線程進行判定,刪除不適合繼續(xù)跟蹤的目標(biāo),增加符合跟蹤條件的目標(biāo)。對圖3中目標(biāo)的跟蹤結(jié)果分析可得,所提方法的平均誤差為45.3 m,最大誤差為82 m。引起誤差的原因主要在于雷達觀測數(shù)據(jù)受大型船舶體積影響導(dǎo)致存在偏置誤差,AIS觀測數(shù)據(jù)的實時性不高,對機動性較強的小型船舶效果較低。
圖3 多船舶跟蹤結(jié)果
為驗證所提方法的實時性,本文在多船舶跟蹤程序執(zhí)行過程中加入了時間計算函數(shù)。本文開展實驗的計算平臺配置:CPU i7-10510U,8 G內(nèi)存。所提方法在跟蹤不同數(shù)量目標(biāo)時的時間消耗如圖4所示。所提方法在實現(xiàn)多目標(biāo)跟蹤過程中,是將所有目標(biāo)狀態(tài)置于一個跟蹤矩陣當(dāng)中進行同步處理,而不是跟蹤線程迭代,因此消耗時間并不是單純地疊加。當(dāng)目標(biāo)數(shù)量逐漸增加后,計算機要處理的矩陣維度也會隨之增大,導(dǎo)致多船舶跟蹤所消耗的時間成本逐漸加大。由圖4可知,盡管所提方法在同時跟蹤25個船舶目標(biāo)時,消耗時間為0.06 s,但仍遠低于多船舶跟蹤方法的執(zhí)行周期(2 s),滿足實時性要求。
圖4 多船舶跟蹤方法的時間成本統(tǒng)計
基于AIS和雷達數(shù)據(jù)融合的多船舶跟蹤能夠為智能航行和智能航保提供基礎(chǔ)技術(shù)支持。所提方法利用基于聚類的數(shù)據(jù)關(guān)聯(lián)、基于Kalman濾波的運動預(yù)測與狀態(tài)更新,在將AIS、雷達數(shù)據(jù)進行融合的過程中,實現(xiàn)多船舶航跡的在線跟蹤。良好天氣情況下,以長江某航段為對象,開展了相關(guān)實驗,結(jié)果證明了提出的多船舶跟蹤方法在內(nèi)河航道場景中具有量好的精度和實時性。在未來研究工作中,引入航道航行時空特征以及船舶物理特征因素,構(gòu)建先驗知識為條件的船舶運動預(yù)測模型,實現(xiàn)對船舶航跡預(yù)測和跟蹤的精準(zhǔn)掌控。