1. 程式人生 > >論文筆記:目標追蹤-CVPR2014-Adaptive Color Attributes for Real-time Visual Tracking

論文筆記:目標追蹤-CVPR2014-Adaptive Color Attributes for Real-time Visual Tracking

exploit orm dom ons tail red 最好 早期 形式化

基於自適應顏色屬性的目標追蹤

Adaptive Color Attributes for Real-Time Visual Tracking

基於自適應顏色屬性的實時視覺追蹤

3月講的第一篇論文,個人理解,存在非常多問題,歡迎交流!


這是CVPR2014年的文章。

名字翻譯為基於自適應選擇顏色屬性的實時視覺跟蹤。首先理解什麽是Adaptive color attributes,文章中colorattributes把顏色分為11類,就是將RGB三種顏色細化為黑、藍、棕、灰、綠、橙、粉、紫、紅、白和黃共11種。

那麽怎樣做到adaptive(自適應)?就是實時的選擇比較顯著的顏色,這個選擇的過程是一種類似PCA(主成分分析)中降維的思想,將11維特征降為2 維(代碼裏使用的就是2)。文章重點之中的一個就是這個。

主成分分析:主要用於特征的降維。

PCA是指它能夠從多元事物中解析出主要影響因素,揭示事物的本質,簡化復雜的問題,是尋找最小均方意義下、最能代表原始數據的投影方法。主成分分析的主要思想是尋找到數據的主軸方向,由主軸構成一個新的坐標系,這裏的維數能夠比原維數低,然後數據由原坐標系向新的坐標系投影。這個投影的過程就是降維的過程。

摘要

視覺跟蹤在計算機視覺中是一個非常有挑戰性的問題,如今最好的(state-of-art) 視覺跟蹤器或者依賴於光照信息或是使用簡單的顏色表示來描寫敘述圖片。與視覺跟蹤不同的是,在目標識別和檢測問題中,結合光照信息和復雜的顏色特征能夠提供非常好的表現。因為跟蹤問題的復雜性,所須要的顏色特征應該被有效的計算而且擁有一定的光學不變形同一時候保持較高的辨別力。

這篇文章研究基於檢測的跟蹤(tracking-by-detection)結構下顏色屬性的貢獻值。我們的結果表明顏色屬性對於視覺跟蹤問題具有優越的表現。我們進而提出一種自適應低維顏色屬性的轉化。

用41個有挑戰性的基準顏色序列進行基於量化和屬性評估方法的評價。該方法比基於光照強度的跟蹤器提升了24%的距離精度。此外。能夠得到我們的方法勝過最先進的追蹤方法,而且速度可達到100fps以上。

1. Introduction

目標跟蹤就是在圖片序列中找到目標的位置。(目標是提前標明的。即在第一幀給出),在計算機視覺中是最優挑戰性的問題。在很多應用中扮演了至關關鍵的數據,比方。人機交互,視頻監控,機器人。跟蹤問題之所以復雜是由於。跟蹤過程中可能發生光照改變,遮擋,背景幹擾。跟蹤目標發生形變。本文調查了怎樣使用顏色信息來減小上述問題的影響。

如今最先進的跟蹤器或是使用光照強度(RGB值)或是使用紋理信息。雖然如今在視覺跟蹤方面已經取得了非常大的進展。可是對於顏色信息的使用還是僅限於簡單的顏色空間轉換。和視覺跟蹤不同的是,在目標檢測方面,復雜的,巧妙設計的顏色特征顯示了非常好的效果。而利用顏色信息做視覺跟蹤是一件非常難的事情。顏色測量結果在整個圖片序列中變化非常大。原因包含光照改變,陰影,相機和目標幾何位置的變化。對於彩色圖像在上述情況下魯棒性的評價已經用在 圖像分類,行為識別上,因此我們使用如今的評價方法來評價對目標跟蹤這個問題的顏色轉換的方法。

如今處理視覺跟蹤問題的方法有兩種,叫生成方法和判別方法(看過機器學習的人應該非常熟)。生成方法不斷去搜索和目標最相似的區域。這類方法或者基於模板匹配或是基於子空間模型(子空間這個概念有點唬人,我認為就是將原始的目標。分為好多層,就像ps裏的圖層一樣)。判別方法旨在將目標從背景中區分出來。就是將跟蹤問題變為二分類問題。

生成方法僅僅使用了目標的信息,而判別方法既使用目標信息也使用背景的信息,找到一個將目標區分出來的分類界限。這樣的方法在非常多基於tracking by detection框架的算法中使用。即使用目標和目標附近的環境訓練出一個online的分類器。在前幾年有個對如今比較優秀跟蹤器的評價,(能夠看cvpr2013年的一個benchmark),裏面有個csk的跟蹤器,排在前十名,並且擁有非常高的速度。這樣的跟蹤器發現了一個密度採樣的策略,就是對一幀中多個子窗體的處理,能夠歸為對一個循環矩陣的處理,因為csk良好的表現和高速,我們的方法是基於csk跟蹤器。

貢獻:本文使用顏色屬性擴展了csk跟蹤器。並取得了良好的表現。csk的模型更新機制在處理多通道信號時。是次優的,為此我們調整了原來csk的更新機制,在實驗中證明了新機制在多通道跟蹤中的有效性。高維的顏色屬性導致計算復雜度上的添加。可能限制跟蹤器在實時應用和機器人中的使用,為此我們提出了自適應的維度下降方法,將原始的11維下降到2維。這樣跟蹤器的幀率就能夠達到100fps以上而且不影響準確度。最後我們做了大量的評價證明了。

2. The CSK Tracker

CSK是在一個單獨的圖像碎片中從目標中得到核心的最小方形分類器。首先,這篇文章使用的決策函數是一個結構風險最小化的函數:

技術分享技術分享

文章中:

技術分享

技術分享

技術分享

技術分享

詳細的細節後面再說。

Vapnik等人在多年研究統計學習理論基礎上對線性分類器提出了還有一種設計最佳準則。

其原理也從線性可分說起。然後擴展到線性不可分的情況。

甚至擴展到使用非線性函數中去,這樣的分類器被稱為支持向量機(Support Vector Machine,簡稱SVM)。

支持向量機的提出有非常深的理論背景。

支持向量機方法是在近年來提出的一種新方法。

SVM的主要思想能夠概括為兩點:⑴它是針對線性可分情況進行分析。對於線性不可分的情況,通過使用非線性映射算法將低維輸入空間線性不可分的樣本轉化為高維特征空間使其線性可分,從而 使得高維特征空間採用線性算法對樣本的非線性特征進行線性分析成為可能;

這裏主要說代碼的思路。

首先:讀入視頻文件,得到groundtruth信息。也就得到了object的位置和大小的信息;然後得到一個在目標框圖內目標的分布函數(高斯的分布。這一點我不是非常明確,和公式裏面不一樣)。

接下來: 讀入第一張圖片,轉化為灰度圖,對框內的數據進行窗體濾波的處理。得到一個邊緣效應比較小的數據。

而且這個數據是被歸一化到-0.5~0.5的;

然後: 通過以上數據求得核函數K;然後利用K再求出f(x)須要用到的 alpha(就是上面公式裏面的c);(值得註意的是這裏對於這兩個重要的參數的求解都是從FourierDomain求得的,這裏是本文的一個創新點,也是速度如此快的原因)

接下來: 對於後面的每一幀圖像, 先轉化為灰度圖像。然後用hann窗預處理好輸入的數據。接下來結合上一幀圖像的信息再次計算K。然後由如今的alpha和K來計算出響應值。選出響應值最大的位置。(值得註意的是這裏計算的出來的響應值是待處理的Frame裏面的每個可能的目標區域)

最後: 依據響應值最大的位置來計算如今的K,然後更新alpha。然後處理下一幀圖像。(同一時候也要看到,計算響應值和更新alpha所用到的K的計算的方式是不一樣的。代碼裏面,計算響應值的K是目標和待檢測的目標img進行卷積的,而更新的時候是目標和自己卷積的)

l 高斯函數

高斯函數的形式為:

技術分享技術分享

當中 a、b 與 c 為實數常數 ,且a > 0.

c2 = 2 的高斯函數是傅立葉變換的特征函數。

這就意味著高斯函數的傅立葉變換不不過還有一個高斯函數,並且是進行傅立葉變換的函數的標量倍。

在計算機視覺中,有時也簡稱為高斯函數高斯函數具有五個重要的性質,這些性質使得它在早期圖像處理中特別實用.這些性質表明。高斯平滑濾波器不管在空間域還是在頻率域都是十分有效的低通濾波器,且在實際圖像處理中得到了project人員的有效使用.高斯函數具有五個十分重要的性質。它們是:

(1)二維高斯函數具有旋轉對稱性,即濾波器在各個方向上的平滑程度是同樣的.一般來說,一幅圖像的邊緣方向是事先不知道的,因此,在濾波前是無法確定一個方向上比還有一方向上須要很多其它的平滑.旋轉對稱性意味著高斯平滑濾波器在興許邊緣檢測中不會偏向任一方向.

(2)高斯函數是單值函數.這表明,高斯濾波器用像素鄰域的加權均值來取代該點的像素值。而每一鄰域像素點權值是隨該點與中心點的距離單調增減的.這一性質是非常重要的。由於邊緣是一種圖像局部特征,假設平滑運算對離算子中心非常遠的像素點仍然有非常大作用。則平滑運算會使圖像失真.

(3)高斯函數的傅立葉變換頻譜是單瓣的.正如以下所看到的。這一性質是高斯函數付立葉變換等於高斯函數本身這一事實的直接推論.圖像常被不希望的高頻信號所汙染(噪聲和細紋理).而所希望的圖像特征(如邊緣),既含有低頻分量。又含有高頻分量.高斯函數付立葉變換的單瓣意味著平滑圖像不會被不須要的高頻信號所汙染,同一時候保留了大部分所需信號.

(4)高斯濾波器寬度(決定著平滑程度)是由參數σ表征的,並且σ和平滑程度的關系是很easy的.σ越大,高斯濾波器的頻帶就越寬。平滑程度就越好.通過調節平滑程度參數σ,可在圖像特征過分模糊(過平滑)與平滑圖像中因為噪聲和細紋理所引起的過多的不希望突變量(欠平滑)之間取得折衷.

(5)因為高斯函數的可分離性。大高斯濾波器能夠得以有效地實現.二維高斯函數卷積能夠分兩步來進行,首先將圖像與一維高斯函數進行卷積,然後將卷積結果與方向垂直的同樣一維高斯函數卷積.因此,二維高斯濾波的計算量隨濾波模板寬度成線性增長而不是成平方增長.

l 希爾伯特空間

完備的內積空間,在一個復數向量空間上的給定的內積能夠依照例如以下的方式導出一個範數norm

此空間稱為是一個希爾伯特空間,假設其對於這個範數來說是完備的。這裏的完備性是指,不論什麽一個柯西列都收斂到此空間中的某個元素,即它們與某個元素的範數差的極限。不論什麽一個希爾伯特空間都是巴拿赫空間,可是反之未必

l 離散傅裏葉變換和高速傅裏葉變換

l 高斯RBF內核(高斯徑向基核函數)

所謂徑向基函數 (Radial Basis Function簡稱 RBF),就是某種沿徑向對稱的標量函數。通常定義為空間中任一點x到某一中心xc之間歐氏距離單調函數 ,可記作 k(||x-xc||),其作用往往是局部的 ,即當x遠離xc時函數取值非常小。最經常使用的徑向基函數是高斯核函數 ,形式為k(||x-xc||)=exp{- ||x-xc||^2/(2*σ^2) }當中xc為核函數中心為函數的寬度參數 , 控制了函數的徑向作用範圍

l 核函數(Kernels

將核函數形式化定義,假設原始特征內積是。映射後為,那麽定義核函數(Kernel)為

因為計算的是內積,我們能夠想到IR中的余弦相似度,假設x和z向量夾角越小,那麽核函數值越大,反之,越小。因此,核函數值是和的相似度。

SVM的核函數怎樣選取

1. Linear核:主要用於線性可分的情形。

參數少。速度快,對於一般數據,分類效果已經非常理想了。
2. RBF
核:主要用於線性不可分的情形。

參數多,分類結果非常依賴於參數。有非常多人是通過訓練數據的交叉驗證來尋找合適的參數。只是這個過程比較耗時。

我個人的體會是:使用libsvm。默認參數,RBF核比Linear核效果稍差。

通過進行大量參數的嘗試,一般能找到比linear核更好的效果

3. 顏色視覺追蹤

為了能合並顏色信息。我們通過定義一個合適的內核K來擴展CSK追蹤不起到多維顏色特征。

1. a Hann Window

漢寧窗又稱升余弦窗,漢寧窗能夠看作是3個矩形時間窗的頻譜之和,或者說是 3 sinct)型函數之和。而括號裏的兩項相對於第一個譜窗向左、右各移動了 π/T。從而使旁瓣互相抵消,消去高頻幹擾和漏能。能夠看出。漢寧窗主瓣加寬並減少。旁瓣則顯著減小。從減小泄漏觀點出發,漢寧窗優於矩形窗.但漢寧窗主瓣加寬,相當於分析帶寬加寬。頻率分辨力下降。

技術分享

2. 低維度自適應顏色屬性

提出一種自適應維度降低的方法,它可以存儲實用信息的同一時候大大降低顏色維度的數量,從而使得速度有了顯著的提升。

Adaptivecolor attributes:

文章中colorattributes把顏色分為11類,就是將RGB三種顏色細化為11種基本顏色(black,blue。brown,grey。green。orange,pink,purple,red。white。yellow)。

怎樣做到adaptive(自適應)?就是實時的選擇比較顯著的顏色,這個選擇的過程是一種類似PCA(主成分分析)中降維的思想,將11維特征降為2 維(代碼裏使用的就是2) 。

對於CN(color name)映射有兩種規範化技術:

1.將11個顏色容器中各減去1/11,CN將變為10維子空間

2.將CN投影到10維子空間的標準正交基上。(效果更好)

l 基於顏色特征拓展CSK分類器:

目標模型由兩部分組成:

學習目標外觀(thelearned target appearance) && 變換的分類器參數A

1)CSK tracker 線性插值:

(並不是前面全部的幀都同一時候用於更新當前的數據)

2)文獻4 MOSSE tracker:在更新方案中計算當前幀的同一時候考慮前面全部幀(本文所用的方法)

(但僅用於一維,我們須要將方法用於多維顏色特征)

更新分類器:

l 最小代價函數:

技術分享

技術分享

技術分享

l 低維自適應顏色屬性:

方法:通過最小代價函數,為當前幀P找到一個適合的降維映射。

技術分享

技術分享

4. 實驗

三個評估參數:

CLE中心位置誤差:目標的預計中心位置與真實地面的平均歐氏距離;

DP距離精度:中心誤差小於一個給定閾值的幀的相對數量;

OP反復精度:邊界框重疊的地方超過一個閾值的百分比。

實驗圖見論文

1.顏色特征的評估

技術分享

2.更新方案

技術分享

3.低維自適應顏色屬性

技術分享

4.與最先進方法比較


結論:

CN和CN2得到較好的結果。CN2速度要快,本文提出的的方法較好!

總結:

本文提出使用顏色屬性來進行視覺追蹤。而且將CSK追蹤器的學習方案擴展到多通道顏色特征,提出基於顏色屬性的低維自適應擴展。終於能夠得到結論:文章中提出的方法在100FPS的速度的同一時候保持最高的準確度。

解釋:

Struck:Structuredoutput tracking with kernels基於內核的結構化輸出跟蹤

EDFT:Enhanced distribution fieldtracking using channel representations基於通道表示的增強分布場追蹤

CSK:Exploiting the circulantstructure of tracking-by-detection with kernels

LSHT:Visual tracking via localitysensitive histograms基於局部敏感直方圖的目標跟蹤算法

有相應源代碼和論文

存在的問題(慢慢的解決掉):

1‘ 一直沒有對a裏面的y進行更新的原因?(事實上和位置無關,僅僅和框的大小有關?)

2. 為什麽用響應值來代表?

3. hann窗對數據處理的原因?難點是濾波?

4.關於A,k的更新,貌似不是一個函數更新,可是更新是在當前幀還是下一幀?

5.降維得到的投影矩陣和協方差矩陣是怎樣用在CSK中的?

6.csk中假設求導來得到其最大值和最小值會不會更easy,速度更快?

本文的參考文獻:

1.CSK :J.Henriques, R.Caseiro, P. Martins, and J. Batista. Exploitingthecirculant structure oftracking-by-detection with kernels. InECCV, 2012.

2. J. van deWeijer, C.Schmid, J. J.Verbeek, and D.Larlus. Learning color namesfor real-world applications.TIP,18(7):1512–1524,2009.


參考博客:http://blog.csdn.net/ikerpeng/article/details/40144497

論文筆記:目標追蹤-CVPR2014-Adaptive Color Attributes for Real-time Visual Tracking