讀 「Multi-target tracking by lagrangian relaxation to min-cost network flow, CVPR,2013」小結。node
昨晚老闆讓看一下這篇文章寫幾句總結給他,因此就看了看,今天順便簡單總結一下這篇文章。算法
這篇文章模型的核心依然是網絡流算法,但和通常網絡流算法不一樣點在於:通常方法在構建圖時直接將每個observation做爲node,而observation之間的相互關係使用edge表示,這樣每一個edge表示的時相連node之間的類似度或者關聯程度;而這篇文章所提模型中,在構建圖時使用的是candidate pair做爲node,而後pair of candidate pairs之間存在這edge,經過這種方式,可以將連續三幀之間的高階信息,好比連續三幀之間速度近似恆定,融入到模型中。而正是因爲不一樣的構圖方式,致使必須引入一些附加的約束以知足多目標跟蹤中 track-detection之間的一對一關係。對於提出的模型,經過適當的拉格朗日鬆弛能夠轉化爲通常的網絡流算法有效求解。數據庫
使用一個簡單的例子清楚的闡述了模型的構圖方式。
假設如今有連續的三幀圖像的observations。第一幀有3個表示爲1,2,3,第二幀有兩個表示爲4,5,第三幀3個表示爲6,7,8.通常網絡流算法的構圖方式以下(這裏沒有添加源點和匯點)網絡
形式化表述模型。svg
現有長度爲的圖像序列,第幀中有個observations,其集合表示爲, 表示第k幀的第i個目標。
相鄰幀之間可能的匹配對是一個二元組,表示爲,這些可能的匹配能夠由表觀類似度,距離類似度等得到。 幀k與k+1之間全部可能的匹配個數表示爲,其集合表示爲。 那麼整個序列中nodes個數爲,其總的集合表示爲.spa
由圖2進一步細化的圖以下:G=(V,E),其中V包含源點s和匯點t,以及每個match連接的兩個observations,稱爲incoming node和outgoing node。.
將每一個match表示成兩個nodes有兩個好處:
1.因爲每條邊的流量最大爲1和流量平衡約束,那麼離開outgoing點的流量最多隻能爲1,由於只有一條進入的link
2.這麼作能夠將通常網絡流算法中unary和binary約束直接添加到match內部的link上,而高階信息都放在了match與match之間deges上了。3d
整個模型表示以下orm
其中表示邊ij的代價,(1)表示最小代價,(2)表示二值約束,(3)表示流量平衡約束,(4)表示附加的用於一一對應的約束。(1)(2)(3)就是通常的網絡流算法模型,針對於約束(4),表示第s個由outgoing和incoming點重合的matches構成的集合,整個序列總共有q個這種集合。blog
爲了求解該模型,將約束(4)經過拉格朗日鬆弛放到目標式中,而後就能夠轉換爲通常的網絡流算法模型進行求解。ip
其中表示拉格朗日乘子
由於一些約束可能自己過強,始終不可能知足,因此迭代過程可能一直不收斂,這是採用限制最大迭代次數的方式終止算法。
對迭代獲得的結果進一步後處理:
鏈接選中的matches組成tracks
將存在衝突的track拎出來放到一個「competing tracks」的list中
在conflicted tracks中選擇lowest cost的track做爲正確的track取出
針對於conflicted tracks剩下的tracks,剔除衝突的match看其是否依然可以知足軌跡的條件,好比先後光滑,長度等,知足則建立新的軌跡,不知足就扔掉。
文中分別在psu,TUD和ETHMS數據庫上進行了實驗,具體實驗結果參見論文。
1.該模型相對於通常的網絡流算法使用了更高階的信息 2.但這裏的更高階也僅僅是3階的信息,如今有一些利用更高階信息的方法提出,比基於如張量秩一近似的多目標跟蹤。 3.模型經過拉格朗日鬆弛能夠有效的轉化爲通常的網絡流算法求解。 4.針對於算法不收斂的情形,採用了一種貪婪算法做爲強制算法結束的補