天天看點

單目标跟蹤小結(2):算法

内容主要提取自 edX 平台上Chalmers的micromaster項目:Emerging Automotive Technologies: Sensor Fusion and Non-linear Filtering for Automotive Systems。

本文主要設計選通機制(gating),最近鄰濾波(Nearest Neighbour Filtering),權重融合濾波(Probabilistic data association filtering),高斯疊加濾波(Gaussian Sum Filtering)。

在單目标跟蹤小結(1):理論推導中,經過推導,假設,簡化後,對線性高斯模型,我們得到如下單目标跟蹤算法:

已知:

單目标跟蹤小結(2):算法

預測:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

更新:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

進而:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

我們發現,經過一個時間步後,

單目标跟蹤小結(2):算法

 的項數較上一個時刻增加

單目标跟蹤小結(2):算法

 倍,而我們希望

單目标跟蹤小結(2):算法

 與

單目标跟蹤小結(2):算法

 具有相同的形式,以友善遞歸計算。

1、選通機制(gating)

我們先介紹選通機制,此方法有助于我們減少 

單目标跟蹤小結(2):算法

  的項數。

考慮:

單目标跟蹤小結(2):算法

單目标跟蹤小結(2):算法

 ,即在雜波強度近似處處相等時,

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

可見,當:

單目标跟蹤小結(2):算法

越大時,

單目标跟蹤小結(2):算法

 越小,其對應的

單目标跟蹤小結(2):算法

 對 

單目标跟蹤小結(2):算法

 的貢獻就越小,這允許我們忽略其對

單目标跟蹤小結(2):算法

 的影響,進而減少

單目标跟蹤小結(2):算法

 的求和項數。

單目标跟蹤小結(2):算法

 稱為馬氏距離(Mahalanobis Distance),在這裡實際上計算了實際測量的

單目标跟蹤小結(2):算法

 與

單目标跟蹤小結(2):算法

 間的距離,距離越大,表明

單目标跟蹤小結(2):算法

 是對目标的測量的可能性就越小。

因為:

單目标跟蹤小結(2):算法

 ,是以:

單目标跟蹤小結(2):算法

 ,其中

單目标跟蹤小結(2):算法

 為

單目标跟蹤小結(2):算法

 的次元,這裡是卡方分布的自由度。我們可以選擇一個數值 G 作為 gate,則:

單目标跟蹤小結(2):算法

表示對目标的觀測落在

單目标跟蹤小結(2):算法

 範圍内的機率。進而,當我們選擇

單目标跟蹤小結(2):算法

 (有99.5%的把握認為

單目标跟蹤小結(2):算法

 外的觀測是雜波雜波)時,我們可以得到所需的 G。我們首先使用此方法來排除一些雜波點。

2、最近鄰濾波(Nearest Neighbour Filtering)

最近鄰濾波的思路十分簡單,即保留

單目标跟蹤小結(2):算法

 最大的

單目标跟蹤小結(2):算法

 作為

單目标跟蹤小結(2):算法

 的近似,此時更新之後,

單目标跟蹤小結(2):算法

 也僅有一項。事實上,

單目标跟蹤小結(2):算法

 最大的項,對應

單目标跟蹤小結(2):算法

 最小,是以稱之為最近鄰。

此算法計算量小,速度快,在簡單場景下效果好;但容易跟丢目标,複雜場景誤差大。

具體算法如下:

單目标跟蹤小結(2):算法

3、權重融合濾波(Probabilistic data association filtering)

我們記:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

 由多個高斯分布

單目标跟蹤小結(2):算法

 權重求和而得,在本算法中,我們用一個高斯分布來近似上述高斯權重和,近似後的均值和協方差計算如下:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

此算法也比較容易實作,适用于簡單場景,且效果略好于最近鄰濾波;在複雜場景中同樣表現不佳。

具體算法如下:

單目标跟蹤小結(2):算法

4、高斯疊加濾波(Gaussian Sum Filtering)

此算法僅保留

單目标跟蹤小結(2):算法

 中的若幹項,不超過上限

單目标跟蹤小結(2):算法

 。設此時

單目标跟蹤小結(2):算法

 是

單目标跟蹤小結(2):算法

 項高斯分布之和,即已知:

單目标跟蹤小結(2):算法

預測:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

即:相當于對每一項

單目标跟蹤小結(2):算法

 進行預測,權重保持不變,計算權重和:

單目标跟蹤小結(2):算法

更新:

單目标跟蹤小結(2):算法
單目标跟蹤小結(2):算法

即:相當于對預測結果中每一項

單目标跟蹤小結(2):算法

 進行更新,并計算權重和。由上述分析可見,當

單目标跟蹤小結(2):算法

 由若幹項疊加而成時,可對每一項進行預測-更新,最後再求權重和。我們提醒,此時總項數由  

單目标跟蹤小結(2):算法

 變成 

單目标跟蹤小結(2):算法

 。

具體算法如下:

單目标跟蹤小結(2):算法

高斯疊加濾波可以根據算力資源調整複雜度,比最近鄰濾波和權重融合濾波更為精确;但算法實作比較複雜,相比後兩者對算力要求高,通常在較複雜場景中才能顯示其精度優越性。當使用場景十分複雜時,三種算法都有可能失效。

下面通過一個簡單案例,實作高斯疊加濾波算法,參見:單目标跟蹤小結(3):MATLAB實踐

繼續閱讀