方瓊林, 郭志富
(1.集美大學(xué) 航海學(xué)院, 福建 廈門 361021; 2.東海航海保障中心 廈門航標(biāo)處, 福建 廈門 361000)
視頻目標(biāo)檢測跟蹤是計算機視覺領(lǐng)域中的一項研究內(nèi)容,是智能視頻監(jiān)控、智能交通、機器人導(dǎo)航和精確制導(dǎo)等領(lǐng)域的關(guān)鍵應(yīng)用技術(shù)。近年來,視頻跟蹤在交通視頻監(jiān)控、水面船舶監(jiān)控等方面得到了廣泛應(yīng)用。視覺跟蹤的研究方法有很多,如Kalman濾波、粒子濾波和CamShift等。目前,Kalman濾波器已廣泛應(yīng)用于控制和自動化領(lǐng)域中,如自適應(yīng)控制和系統(tǒng)識別。[1-7]
在自適應(yīng)分?jǐn)?shù)階Kalman濾波方面:楊超等[8]設(shè)計自適應(yīng)分?jǐn)?shù)階擴展Kalman濾波算法,實現(xiàn)對有色噪聲情況下連續(xù)時間非線性分?jǐn)?shù)階系統(tǒng)的狀態(tài)和參數(shù)的估計;ZHU等[9]研究基于分?jǐn)?shù)階自適應(yīng)擴展Kalman濾波器的鋰離子電池荷電狀態(tài)估計問題,結(jié)合分?jǐn)?shù)階模型和自適應(yīng)策略的優(yōu)點,開發(fā)自適應(yīng)分?jǐn)?shù)階擴展Kalman濾波算法。
在船舶視覺跟蹤方法研究方面:朱常凱[10]研究一種多特征融合的CamShift算法,利用顏色、紋理和邊緣等3個特征代替單一的顏色特征描述目標(biāo),利用各特征的貢獻度分配權(quán)重系數(shù),可準(zhǔn)確描述船舶,并與改進的目標(biāo)檢測融合算法相結(jié)合,實現(xiàn)對船舶的自動跟蹤;李曉飛等[11]設(shè)計基于雙目視覺的船舶跟蹤與定位系統(tǒng),算法分為攝像機標(biāo)定、目標(biāo)跟蹤、立體匹配和視差定位等4個模塊(其中:跟蹤模塊以目標(biāo)窗口的形式給出跟蹤結(jié)果;匹配模塊在跟蹤結(jié)果中進行左、右目立體匹配;定位模塊根據(jù)左、右目匹配點對的像素位置計算其在物理空間內(nèi)的坐標(biāo));史蓓蕾等[12]結(jié)合稀疏表示,提出通過不同角度的復(fù)雜采樣建立海上常見目標(biāo)的基函數(shù)字典,并提出一種對字典和測試樣本進行塊稀疏向量生成的方法,在塊之間相關(guān)性足夠小的情況下,采用塊正交匹配追蹤算法。
在基于Kalman濾波理論的船舶視覺跟蹤方法研究方面:黃椰等[13]提出一種基于雙目立體視覺的船舶軌跡跟蹤方法,建立船舶運動模型,利用強跟蹤卡爾曼濾波(Strong Tracking Kalman Filter,STKF)船舶軌跡跟蹤的方法跟蹤船舶軌跡并估算目標(biāo)船舶的運動狀態(tài);楊高星[14]在目標(biāo)區(qū)域提取出來的前提下,考慮到船舶因遮擋易丟失,采用Kalman算法實現(xiàn)目標(biāo)估計,進而持續(xù)跟蹤以防止船舶丟失。
目前,在基于分?jǐn)?shù)階Kalman濾波理論的跟蹤研究方面已取得不少成果,但仍存在一些挑戰(zhàn),如光照變化、物體遮擋和外觀變形等。[15-16]本文提出一種用于進行船舶視覺跟蹤的自適應(yīng)分?jǐn)?shù)Kalman濾波器,設(shè)計一種狀態(tài)噪聲協(xié)方差選擇的自適應(yīng)機制,證明其數(shù)學(xué)過程。試驗選取不同河流的CCTV(Closed Circnit Television)船舶監(jiān)控視頻,包括不同情況下的內(nèi)河船舶運動監(jiān)控。同時,針對不同船舶大小、復(fù)雜光照、不同明暗度、多船會遇和多船追越等情況進行船舶視覺跟蹤驗證新算法的準(zhǔn)確性和魯棒性。此外,對不同分?jǐn)?shù)階下不同濾波器的跟蹤誤差和準(zhǔn)確度進行分析,驗證分?jǐn)?shù)階Kalman濾波器具有更寬的參數(shù)選擇范圍和更高的跟蹤精度。
現(xiàn)有自適應(yīng)分?jǐn)?shù)階Kalman濾波方法難以使收斂速度和收斂精度同時得到保證。本文所述狀態(tài)噪聲協(xié)方差自適應(yīng)機制和傳統(tǒng)自適應(yīng)Kalman濾波理論的噪聲方差自適應(yīng)機制都與狀態(tài)噪聲協(xié)方差相關(guān)聯(lián),但計算公式更簡易。本文設(shè)計的分?jǐn)?shù)階Kalman濾波自適應(yīng)機制創(chuàng)新地設(shè)計一種狀態(tài)噪聲協(xié)方差選擇的自適應(yīng)機制:在達到穩(wěn)定狀態(tài)之前,選擇較大的狀態(tài)噪聲協(xié)方差加快收斂速度;在達到穩(wěn)定狀態(tài)后,選擇較小的狀態(tài)噪聲協(xié)方差提高收斂精度。
分?jǐn)?shù)階差分定義[16]為
(1)
(2)
式(1)和式(2)中:α為分?jǐn)?shù)階;h為采樣間隔;k為采樣的序號;γj為系數(shù)。
設(shè)系統(tǒng)的分?jǐn)?shù)階模型[16]為
Δαxk+1=Akxk+wk
(3)
(4)
zk=Gkxk+εk
(5)
式(3)~式(5)中:xk為第k時刻狀態(tài)變量,表示公路車速;zk為第k時刻的觀測輸出;wk為第k時刻系統(tǒng)的狀態(tài)噪聲;εk為第k時刻的觀測噪聲;Gk為第k時刻系統(tǒng)的輸出矩陣。
(6)
(7)
Qk為系統(tǒng)狀態(tài)噪聲wk-1的協(xié)方差,有
(8)
Rk為第k時刻觀測噪聲的協(xié)方差,有
(9)
(10)
(11)
當(dāng)狀態(tài)噪聲協(xié)方差較小時,收斂速度較慢,收斂精度較高。若狀態(tài)運動在短時間內(nèi)變化過快,則收斂速度慢很容易導(dǎo)致跟蹤失敗;當(dāng)狀態(tài)噪聲協(xié)方差較大時,收斂速度快,精度低。因此,在達到穩(wěn)定狀態(tài)之前,選擇較大的狀態(tài)噪聲協(xié)方差可加快收斂速度;在達到穩(wěn)定狀態(tài)后,選擇較小的狀態(tài)噪聲協(xié)方差可提高收斂精度。設(shè)計選擇狀態(tài)噪聲協(xié)方差的自適應(yīng)機制,有
(12)
式(12)中:λ>0為增益系數(shù)。
Kalman的增益Kk為
(13)
自適應(yīng)分?jǐn)?shù)階Kalman濾波算法的流程為
(14)
(15)
(16)
(17)
(18)
假設(shè)1:系統(tǒng)狀態(tài)噪聲wk的期望值為零,且與觀測輸出zk相對獨立,有
Ewk=0
(19)
(20)
Eεk=0
(21)
E[εkxk]=E[εk]E[xk]
(22)
(23)
定理1:對于由式(3)~式(5)描述的含系統(tǒng)狀態(tài)噪聲和觀測噪聲的離散系統(tǒng),式(12)選擇狀態(tài)噪聲協(xié)方差的自適應(yīng)機制,自適應(yīng)分?jǐn)?shù)階Kalman濾波算法按式(14)~式(18)計算。
證明:將式(3)代入式(4)可得
(24)
將式(24)代入式(6)可得
根據(jù)期望的定義可得
根據(jù)假設(shè)1,將式(20)代入式(26)可得
(27)
將式(19)代入式(27)可得
(28)
將式(28)代入式(25)可得
(29)
將式(10)代入式(27)可得
(30)
將式(10)代入式(28)可得
(31)
由此可知式(14)成立。
將式(24)代入式(7)可得
(32)
將式(14)代入式(32)可得
(33)
將式(11)代入式(33)可得
(34)
將式(12)代入式(34)可得
(35)
由此可知式(18)成立。
代價函數(shù)定義為
(36)
根據(jù)極小值的定義,式(36)對xk+1求導(dǎo)的結(jié)果為零,可得
(37)
由式(37)可得
(38)
將式(13)代入式(38)可得
(39)
由此可知式(16)成立。
將式(39)代入式(11)可得
(40)
將式(5)代入式(40)可得
將式(7)代入式(41)可得
將式(9)代入式(42)可得
根據(jù)假設(shè)2,將式(21)代入式(22)可得
E[εkxk]=0
(44)
將式(21)代入式(23)可得
(45)
將式(44)和式(45)代入式(43)可得
(46)
由此可知得式(17)成立。
將式(5)代入式(9)可得
(47)
將式(7)代入式(47)可得
(48)
將式(5)代入式(48)可得
(49)
將式(44)和式(45)代入式(49)可得
(50)
由此可知式(15)成立。
算法流程見圖1。
圖1 算法流程圖
該算法的創(chuàng)新性體現(xiàn)在:
1)設(shè)計一種狀態(tài)噪聲協(xié)方差選擇的自適應(yīng)機制,在達到穩(wěn)定狀態(tài)之前,選擇較大的狀態(tài)噪聲協(xié)方差可加快收斂速度;在達到穩(wěn)定狀態(tài)之后,選擇較小的狀態(tài)噪聲協(xié)方差可提高收斂精度。
2)將該算法應(yīng)用到船舶視頻跟蹤領(lǐng)域,針對不同船舶大小、復(fù)雜光照、不同明暗度、多船會遇和多船追越等多種情況進行船舶視覺跟蹤,顯示出了較強的準(zhǔn)確性和魯棒性。
設(shè)Xk為視頻第k幀圖像中船舶在x軸上的坐標(biāo);Yk為視頻第k幀圖像中船舶在y軸上的坐標(biāo);vxk為視頻第k幀圖像中船舶在x軸方向上的速度;vyk為視頻第k幀圖像中船舶在y軸方向上的速度;T為采樣周期;Wk為視頻第k幀圖像中的系統(tǒng)狀態(tài)噪聲;V(k)為視頻第k幀圖像中的觀測噪聲。系統(tǒng)的狀態(tài)方程和觀測方程分別表示為
(51)
(52)
基于自適應(yīng)分?jǐn)?shù)階Kalman濾波的船舶視覺跟蹤的步驟如下:
1)初始化系統(tǒng)參數(shù),令k。
2)計算船舶目標(biāo)的位置和誤差協(xié)方差。
3)用Kalman濾波預(yù)測目標(biāo)船在k+1幀時刻的狀態(tài)。
4)在k+1幀時刻觀測目標(biāo)船并計算位置和誤差協(xié)方差。
5)確定目標(biāo)船的跟蹤區(qū)域。
6)更新狀態(tài)矩陣。
7)判斷終止條件,不滿足則轉(zhuǎn)步驟2)。
采用中心位置誤差作為跟蹤算法準(zhǔn)確性的評價指標(biāo)。設(shè)N為船舶視頻圖像序列的總幀數(shù),(xk,yk)為視頻第k幀圖像跟蹤結(jié)果對應(yīng)的船舶中心位置。取船舶的跟蹤結(jié)果為包含船舶的矩形,中心位置為該矩形的幾何中心。中心位置誤差計算式為
(53)
為驗證基于自適應(yīng)分?jǐn)?shù)階Kalman濾波的船舶視覺跟蹤算法的有效性,試驗選取文獻[17]中的浙江溫州、廣東佛山、湖北武漢和安徽蕪湖等地的CCTV船舶監(jiān)控視頻。視頻包括不同船舶大小、復(fù)雜光照、不同明暗度、多船會遇和多船追越等情況下的內(nèi)河船舶運動監(jiān)控。
3.2.1不同大小船舶情況下的視覺跟蹤結(jié)果
小船、中船和大船的視覺跟蹤結(jié)果見圖2。圖2中:方框為所跟蹤船舶的位置;虛線為船舶中心點隨著船舶的運動軌跡。由圖2可知:基于自適應(yīng)分?jǐn)?shù)Kalman算法對不同大小船舶的視覺跟蹤都具備有效性。
a)小船 b)中船
c)大船
3.2.2不同光照情況下的船舶視覺跟蹤結(jié)果
復(fù)雜光照和均勻光照情況下的船舶視覺跟蹤結(jié)果見圖3,其中:方框為所跟蹤船舶的位置;虛線為船舶中心點隨著船舶的運動軌跡。由圖3可知:基于自適應(yīng)分?jǐn)?shù)Kalman算法對不同光照情況下的船舶視覺跟蹤都具有有效性。
a)復(fù)雜光照 b)均勻光照
3.2.3不同明暗度情況下的船舶視覺跟蹤結(jié)果
夜景和日照情況下的船舶視覺跟蹤結(jié)果見圖4,其中:方框為所跟蹤船舶的位置;虛線為船舶中心點隨著船舶的運動軌跡。由圖4可知:基于自適應(yīng)分?jǐn)?shù)Kalman算法對不同明暗度情況下的船舶視覺跟蹤都具備有效性。
a)夜景 b)日照
3.2.4多船會遇、追越情況下的船舶視覺跟蹤結(jié)果
兩船會遇、兩船追越和多船交匯情況下的船舶視覺跟蹤結(jié)果見圖5。圖5中:方框為所跟蹤船舶的位置;虛線為船舶中心點隨著船舶的運動軌跡。由圖5可知:基于自適應(yīng)分?jǐn)?shù)Kalman算法對多船會遇、兩船追越和多船交匯情況下的船舶視覺跟蹤都具備有效性。
a)兩船會遇 b)兩船追越
c)多船交匯
自適應(yīng)分?jǐn)?shù)Kalman濾波、分?jǐn)?shù)Kalman濾波器和Kalman濾波器的中心位置誤差見表1。將自適應(yīng)分?jǐn)?shù)階Kalman濾波器中的狀態(tài)噪聲協(xié)方差設(shè)為常數(shù),即得到分?jǐn)?shù)階Kalman濾波器;將分?jǐn)?shù)階Kalman濾波器中的分?jǐn)?shù)階設(shè)為整數(shù),即得到Kalman濾波器。
表1 不同算法的中心位置誤差 %
由表1可知:自適應(yīng)分?jǐn)?shù)Kalman濾波相比分?jǐn)?shù)Kalman濾波和Kalman濾波具有更小的中心位置誤差,跟蹤估計的目標(biāo)中心位置更接近真實目標(biāo)的位置;Kalman濾波和分?jǐn)?shù)Kalman濾波跟蹤目標(biāo)估計位置的中心坐標(biāo)與真實運動目標(biāo)位置的中心坐標(biāo)誤差大。與整數(shù)階濾波器相比,分?jǐn)?shù)階Kalman濾波器具有更寬的參數(shù)選擇范圍和更高的跟蹤精度。因此,基于自適應(yīng)分?jǐn)?shù)階Kalman濾波器的跟蹤估計的準(zhǔn)確性HO另外2種濾波器更高,具有魯棒性。
采用不同分?jǐn)?shù)階時小船視頻的自適應(yīng)分?jǐn)?shù)Kalman跟蹤誤差見表2,其他參數(shù)不變。由表2可知:跟蹤誤差隨Kalman濾波器分?jǐn)?shù)階的不同而變化。對于特定的船舶視頻,存在一個最合適的分?jǐn)?shù)階,以減小其跟蹤誤差。與整數(shù)階濾波器相比,分?jǐn)?shù)階Kalman濾波器具有更寬的參數(shù)選擇范圍和更高的跟蹤精度。
表2 采用不同分?jǐn)?shù)階時小船視頻的自適應(yīng)分?jǐn)?shù) Kalman跟蹤誤差 %
當(dāng)前我國部分漁船的船舶自動識別系統(tǒng)(Automatic Identification System,AIS)設(shè)備和船舶識別碼使用不規(guī)范,存在“船碼不符、一船多碼、一碼多船”等現(xiàn)象,給漁船安全航行和遇險搜救帶來了巨大的風(fēng)險和困難,已成為威脅漁民生命、財產(chǎn)安全的隱患。為提高未安裝AIS的漁船、挖泥船等船舶的航行安全性和航道安全性,本文對浮標(biāo)上監(jiān)控視頻的船舶軌跡進行標(biāo)定,將其軌跡在海圖上標(biāo)繪出來。本文主要研究的內(nèi)容如下:
1)提出一種用于船舶視覺跟蹤的自適應(yīng)分?jǐn)?shù)Kalman濾波器,設(shè)計一種狀態(tài)噪聲協(xié)方差選擇的自適應(yīng)機制,推導(dǎo)其數(shù)學(xué)過程。
2)試驗選取不同河流的CCTV船舶監(jiān)控視頻,利用本文所述算法,針對不同船舶大小、復(fù)雜光照、不同明暗度、多船會遇和多船追越等多種情況進行船舶視覺跟蹤,都具有較強的準(zhǔn)確性和魯棒性。
3)對分?jǐn)?shù)階對跟蹤誤差和準(zhǔn)確度的影響進行分析,結(jié)果表明:與整數(shù)階濾波器相比,分?jǐn)?shù)階Kalman濾波器具有更寬的參數(shù)選擇范圍和更高的跟蹤精度。