目標跟蹤方法的發展概述

2021-07-31 21:59:11 字數 3724 閱讀 7899

目標跟蹤是計算機視覺研究領域的熱點之一,過去幾十年以來,目標跟蹤的研究取得了長足的發展。從meanshift、粒子濾波(particle filter)和kalman filter等經典跟蹤方法,到基於檢測(track by detection)或相關濾波(correlation filter)的方法,到最近三年來出現的深度學習相關方法。每年在幾個主要跟蹤資料集上的競賽非常激烈,方法也越來越多。本期閱面科技資深研究員陳正華將以「目標跟蹤方法的發展概述」為主題給大家分享更多的內容。

目標跟蹤是計算機視覺研究領域的熱點之一,並得到廣泛應用。相機的跟蹤對焦、無人機的自動目標跟蹤等都需要用到了目標跟蹤技術。另外還有特定物體的跟蹤,比如人體跟蹤,交通監控系統中的車輛跟蹤,人臉跟蹤和智慧型互動系統中的手勢跟蹤等。

經典目標跟蹤方法

2023年以前,目標跟蹤領域大部分採用一些經典的跟蹤方法,比如meanshift、particle filter和kalman filter,以及基於特徵點的光流演算法等。meanshift方法是一種基於概率密度分布的跟蹤方法,使目標的搜尋一直沿著概率梯度上公升的方向,迭代收斂到概率密度分布的區域性峰值上。首先meanshift會對目標進行建模,比如利用目標的顏色分布來描述目標,然後計算目標在下一幀影象上的概率分布,從而迭代得到區域性最密集的區域。meanshift適用於目標的色彩模型和背景差異比較大的情形,早期也用於人臉跟蹤。由於meanshift方法的快速計算,它的很多改進方法也一直適用至今。

另外,經典的跟蹤方法還有基於特徵點的光流跟蹤,在目標上提取一些特徵點,然後在下一幀計算這些特徵點的光流匹配點,統計得到目標的位置。在跟蹤的過程中,需要不斷補充新的特徵點,刪除置信度不佳的特徵點,以此來適應目標在運動中的形狀變化。本質上可以認為光流跟蹤屬於用特徵點的集合來表徵目標模型的方法。

在深度學習和相關濾波的跟蹤方法出現後,經典的跟蹤方法都被捨棄,這主要是因為這些經典方法無法處理和適應複雜的跟蹤變化,它們的魯棒性和準確度都被前沿的演算法所超越,但是,了解它們對理解跟蹤過程是有必要的,有些方法在工程上仍然有十分重要的應用,常常被當作一種重要的輔助手段。

檢測與跟蹤相結合的方法

基於相關濾波的跟蹤演算法

相關濾波的跟蹤演算法始於2023年p.martins提出的csk方法,作者提出了一種基於迴圈矩陣的核跟蹤方法,並且從數學上完美解決了密集取樣(dense sampling)的問題,利用傅利葉變換快速實現了檢測的過程。在訓練分類器時,一般認為離目標位置較近的是正樣本,而離目標較遠的認為是負樣本。回顧前面提到的tld或struck,他們都會在每一幀中隨機地挑選一些塊進行訓練,學習到的特徵是這些隨機子視窗的特徵,而csk作者設計了乙個密集取樣的框架,能夠學習到乙個區域內所有影象塊的特徵。

密集取樣的過程可以通過作者提出的迴圈矩陣來實現,並且整個分類器的學習過程可以用快速傅利葉變換轉化成頻域內的計算,不受svm或boost等學習方法的限制。無論是用線性分類還是核分類,整個學習過程十分高效,證明過程完備,易於理解。在**中作者給出的演算法實現只需要十幾行**。利用快速傅利葉變換,csk方法的跟蹤幀率能達到100~400fps,奠定了相關濾波系列方法在實時性應用中的基石。

相關濾波系列的方法發展很快,比如csk作者引用的mosse方法,後續他又提出了基於hog特徵的kcf方法。後續還有考慮多尺度或顏色特徵(color name表)的方法以及用深度學習提取的特徵結合kcf的方法(比如deepsrdcf方法)等。從它的發展過程來看,考慮的尺度越來越多,特徵資訊也更加豐富,當然計算時間也會相應增加,但總體上說,相關濾波系列的跟蹤方法在實時性上優勢明顯,採用哪種改進版本的方法視具體的應用而定。相關濾波的方法也有一些缺陷,比如目標的快速移動,形狀變化大導致更多背景被學習進來等都會對cf系列方法造成影響。雖然後續的研究也有一些針對性的改進,比如改進邊界效應,改善背景更新策略或提高峰值響應圖的置信度等,但普適性還需要進一步研究,特別是對不同的應用針對性地調整。

基於深度學習的跟蹤方法

最近三年是深度學習技術的高速發展期,深度學習技術也被成功應用在計算機視覺的各個應用領域,跟蹤也不例外。在大資料背景下,利用深度學習訓練網路模型,得到的卷積特徵輸出表達能力更強。在目標跟蹤上,初期的應用方式是把網路學習到的特徵,直接應用到相關濾波或struck的跟蹤框架裡面,從而得到更好的跟蹤結果,比如前面提到的deepsrdcf方法。本質上卷積輸出得到的特徵表達,更優於hog或cn特徵,這也是深度學習的優勢之一,但同時也帶來了計算量的增加。目前很多研究跟蹤的框架和方法往往會同時比較兩種特徵,從而驗證跟蹤方法或框架的改進提高,一種是傳統的手工特徵,另一種就是深度網路學習的特徵。網路不同層的卷積輸出都可以作為跟蹤的特徵,對於如何有效地利用深度學習的特徵,martin.d也做了大量的工作,提出了一系列相關的方法,比如c-cot和eco等。

深度學習的另一大優勢是端到端的輸出,我們認為這為跟蹤開闢了一片光明的前景,這裡以goturn方法為例,介紹來自史丹福大學的d.held發表eccv2016上的文章,目前goturn方法已經整合在opencv 3.2.0的開發版本中。

從網路結構中可以看出,goturn先從輸入的影象對中分別提取前一幀和當前幀的卷積特徵,再送入三個全連線層,最後得到**的位置變化。其中卷積層是通過imagenet預訓練得到,並且在跟蹤網路訓練中固定這部分引數(防止過擬合),學習全連線層的引數。本質上說,goturn也利用了深度學習強大的特徵表達能力,但是,它建立了第乙個基於深度學習的端到端輸出的跟蹤框架,而且在gpu gtx680上跟蹤速度在能達到100fps。

基於深度學習的跟蹤框架目前還在不斷發展中,比如牛津大學的luca bertinetto提出的端到端的跟蹤框架,從siamesefc到今年的cfnet。雖然相比於相關濾波等傳統方法,在效能上還非常慢,但是這種端到端輸出可以與其他的任務一起訓練,特別是和檢測分類網路相結合,在實際應用中有著十分廣泛的前景。

特定目標的跟蹤

前面介紹的跟蹤方法都是對通用目標的跟蹤,沒有目標的類別先驗。在實際應用中,還有乙個重要的跟蹤是特定物體的跟蹤,比如人臉跟蹤、手勢跟蹤和人體跟蹤等。特定物體的跟蹤與前面介紹的方法不同,它更多地依賴對物體訓練特定的檢測器。人臉跟蹤由於它的明顯特徵,它的跟蹤就主要由檢測來實現,比如早期的viola-jones檢測框架和當前利用深度學習的人臉檢測或人臉特徵點檢測模型。手勢跟蹤在應用主要集中在跟蹤特定的手型,比如跟蹤手掌或者拳頭。設定特定的手型可以方便地訓練手掌或拳頭的檢測器。

另外,跟蹤的另乙個分支是多目標跟蹤(multiple object tracking)。多目標跟蹤並不是簡單的多個單目標跟蹤,因為它不僅涉及到各個目標的持續跟蹤,還涉及到不同目標之間的身份識別、自遮擋和互遮擋的處理,以及跟蹤和檢測結果的資料關聯等。從2023年開始,mot競賽每年會舉辦一次,在基於深度學習的目標檢測成功率大幅提高的背景下,mot的成功率也處於快速發展的通道中。

目標跟蹤方法 基於輪廓跟蹤

一 理論 該方法的基本思想是使用一組封閉的輪廓曲線來表徵目標,將曲線作為模板,在相鄰幀的邊緣影象中匹配並跟蹤該模板。該方法與基於區域的跟蹤方法相類似,都存在目標模板匹配和目標模板更新兩個環節,但是該方法是在二值化影象中匹配目標的輪廓模板,大大減小了計算量,提高了匹配的速度。主動輪廓模型方法是近些年來...

目標跟蹤方法 Mean Shift 演算法

一 概述 mean shift,即均值向量偏移,該理論是一種無引數密度估計演算法,最早由 fukunaga 等人於1975年提出。cheng等人對基本的 mean shift 演算法進行了改進,一方面將核函式引入均值偏移向量,使得隨著樣本與被偏移點的距離不同,對應的偏移量對均值偏移向量的貢獻也不同 ...

目標跟蹤方法 CamShift 演算法

一 概述 二 演算法流程 具體步驟如下 步驟二 根據獲得的顏色直方圖將原始輸入影象轉化成顏色概率分布影象,該過程稱為 反向投影 所謂直方圖反向投影,就是輸入影象在已知目標顏色直方圖的條件下的顏色概率密度分布圖,包含了目標在當前幀中的相干資訊。對於輸入影象中的每乙個畫素,查詢目標模型顏色直方圖,對於目...