論文筆記
發(fā)表時(shí)間:2020
期刊會(huì)議:ECCV
方向分類: 目標(biāo)跟蹤
研究內(nèi)容
做了什么:
本文提出了一個(gè)能夠在視頻序列中傳播目標(biāo)附近場景信息的跟蹤結(jié)構(gòu),這種場景信息被用來實(shí)現(xiàn)提高目標(biāo)預(yù)測的場景感知能力。
解決了什么問題:
已存在的跟蹤器只依靠外觀來跟蹤,沒有利用任何周圍場景中的信息,容易被相似的物體干擾。
現(xiàn)狀不足
- 已存在的跟蹤器只依靠外觀來跟蹤,沒有利用任何周圍場景中的信息;
- 在線更新模板的方法雖然也利用了已跟蹤的幀,但是這樣的策略不能捕捉到場景中其他目標(biāo)的位置和特點(diǎn)。
創(chuàng)新點(diǎn)
- 提出了一個(gè)新的跟蹤結(jié)構(gòu),能捕捉場景信息,并將其表示為一個(gè)位置狀態(tài)向量(state vector);
- 提出了一個(gè)傳播模塊,該模塊能將上一幀中目標(biāo)附近的對(duì)象位置狀態(tài)映射到后續(xù)幀;
- 提出了一個(gè)預(yù)測器模塊,該模塊能夠有效的融合目標(biāo)外觀模型的輸出與場景信息對(duì)目標(biāo)位置進(jìn)行預(yù)測;
- 使用RNN網(wǎng)絡(luò)模塊來更新新的場景信息。
總體架構(gòu)
四個(gè)模塊:1.Propagation Module;2.Appearance Model;3.Target Predictor;4.State Update
總體思路:在傳統(tǒng)的跟蹤流程中增加一個(gè)state vector(傳統(tǒng)跟蹤是指僅使用appearance model和predictor),作用是保存上一幀中目標(biāo)附近的場景信息并映射到當(dāng)前幀。實(shí)際上,這個(gè)向量表示了上一幀中當(dāng)前位置是屬于背景、目標(biāo)還是相似干擾物。
跟蹤流程:使用兩個(gè)線索進(jìn)行跟蹤:1)目標(biāo)的外觀,2)場景信息(目標(biāo)附近其他對(duì)象的位置信息)。對(duì)于目標(biāo)的外觀,使用正常的跟蹤流程即可得到。例如DiMP中預(yù)測一個(gè)目標(biāo)外觀模型,然后使用這個(gè)模型在測試幀上進(jìn)行卷積得到最后的響應(yīng)圖
s
t
s_t
st?。對(duì)于場景信息,由state vector得到。給定前一幀的場景信息
h
t
?
1
h_{t-1}
ht?1? ,通過Propagation 模塊得到當(dāng)前幀的場景信息
h
^
t
?
1
{\hat h_{t - 1}}
h^t?1?,和
h
^
t
?
1
{\hat h_{t - 1}}
h^t?1?中每個(gè)位置的值的置信度
ξ
t
{\xi _t}
ξt?。最后將通過外觀模型得到的響應(yīng)圖
s
t
s_t
st?,當(dāng)前幀的場景信息
h
^
t
?
1
{\hat h_{t - 1}}
h^t?1?,以及置信度
ξ
t
{\xi _t}
ξt?輸入到最后的預(yù)測模塊中得到最后的位置響應(yīng)圖。
模塊細(xì)節(jié)
- State 向量的構(gòu)造
- 為了知道目標(biāo)周圍的場景信息,本文為目標(biāo)附近的每個(gè)區(qū)域維持了一個(gè)state 向量。具體的,對(duì)于深度特征 x t x_t xt?中的每個(gè)空間位置 r ∈ Ω r \in \Omega r∈Ω,作者設(shè)置了一個(gè)S維的state向量 h r h^r hr,即 h ∈ R W × H × S h \in {\mathbb{R}^{W \times H \times S}} h∈RW×H×S。這些state向量包含了有益于單目標(biāo)跟蹤的信息,例如他包含了這個(gè)位置對(duì)應(yīng)的是目標(biāo),背景還是相似干擾物的信息。
- 在首次跟蹤時(shí),使用一個(gè)包含了兩個(gè)卷積層的小網(wǎng)絡(luò) Υ \Upsilon Υ來初始化state向量,這個(gè)網(wǎng)絡(luò)使用初始幀中目標(biāo)標(biāo)注 B 0 B_0 B0?作為輸入,生成一個(gè)特定目標(biāo)位置的單通道標(biāo)簽圖。
- 在傳播過程中,給定測試幀 t t t,使用propagation模塊將state向量 h t ? 1 h_{t-1} ht?1?從前一幀的位置轉(zhuǎn)換到當(dāng)前幀的位置,即 ( h ^ t ? 1 , ξ t ) = Π ( x t , x t ? 1 , h t ? 1 ) ({\hat h_{t - 1}},{\xi _t}) = \Pi ({x_t},{x_{t - 1}},{h_{t - 1}}) (h^t?1?,ξt?)=Π(xt?,xt?1?,ht?1?). 其中 ξ t {\xi _t} ξt?表示傳播后每個(gè)位置的state向量的置信度。
- 在更新過程中,使用最后得到的位置響應(yīng)圖 ? t {\varsigma _t} ?t?和外觀模型預(yù)測得到的響應(yīng)圖 s t s_t st?來更新state向量。簡單來說就是使用當(dāng)前幀的響應(yīng)圖信息來更新場景信息,例如重新設(shè)置不正確的信息,將新進(jìn)入的對(duì)象標(biāo)記為干擾物。
- State 傳播模塊
這一部分對(duì)應(yīng)于propagation module,作用是將上一幀中目標(biāo)附近各個(gè)位置對(duì)應(yīng)的場景信息傳播到當(dāng)前幀。
輸入:前一幀的深度特征 x t ? 1 x_{t-1} xt?1?,當(dāng)前幀的深度特征 x t x_t xt?,前一幀的場景信息 h t ? 1 h_{t-1} ht?1?.(注意這里的深度特征與外觀模型中使用的深度特征不一定相同)過程:目的是計(jì)算兩幀之間的密集對(duì)應(yīng)性,并將這種對(duì)應(yīng)性表示為一種概率分布,其中 p ( r ′ ∣ r ) p(r'|r) p(r′∣r)表示在已知當(dāng)前幀位置r的情況下,該位置的目標(biāo)對(duì)應(yīng)于上一幀位置r’處的目標(biāo)的概率。
- 對(duì)于當(dāng)前幀的所有像素點(diǎn)我們可以得到一個(gè)4D的 CV ∈ R W × H × W × H {\text{CV}} \in {\mathbb{R}^{W \times H \times W \times H}} CV∈RW×H×W×H(cost volume),他表示了當(dāng)前幀中每個(gè)位置與上一幀中每個(gè)位置的匹配損失。CV中每個(gè)元素 CV ( r ′ , r ) {\text{CV}}(r',r) CV(r′,r)的計(jì)算方法是:上一幀特征中以位置r’為中心的3x3窗口與當(dāng)前幀特征中以位置r為中心的3x3窗口計(jì)算互相關(guān)。為了計(jì)算的高效性,不計(jì)算所有像素點(diǎn)之間的對(duì)應(yīng)關(guān)系,只計(jì)算離目標(biāo)一定距離( d m a x d_{max} dmax?)之內(nèi)的像素點(diǎn)之間的對(duì)應(yīng)關(guān)系。
- 下一步對(duì)這個(gè)對(duì)應(yīng)關(guān)系CV進(jìn)行處理。將CV切片 C V r ′ ( r ) ∈ R W × H {\text{C}}{{\text{V}}_{r'}}(r) \in {\mathbb{R}^{W \times H}} CVr′?(r)∈RW×H(表示上一幀位置r’與當(dāng)前幀所有位置的對(duì)應(yīng)關(guān)系)通過兩個(gè)卷積塊得到處理后的匹配損失 ? ( r ′ , r ) \phi (r',r) ?(r′,r)(r’是一個(gè)常數(shù),表示上一幀的位置),然后使用softmax對(duì) ? ( r ′ , r ) \phi (r',r) ?(r′,r)進(jìn)行處理得到初始對(duì)應(yīng)關(guān)系 ? ′ ( r ′ , r ) = exp ? ( ? ( r ′ , r ) ) ∑ r ′ ′ ∈ Ω exp ? ( ? ( r ′ , r ′ ′ ) ) \phi' (r',r) = \frac{{\exp (\phi (r',r))}}{{\sum\nolimits_{r'' \in \Omega }{\exp (\phi (r',r''))}}} ?′(r′,r)=∑r′′∈Ω?exp(?(r′,r′′))exp(?(r′,r))?。softmax操作聚合當(dāng)前幀維度上的信息,并提供兩個(gè)幀之間位置的軟關(guān)聯(lián)。類似的,為了聚合上一幀的位置信息,將 ? ’ \phi’ ?’通過兩個(gè)更多的卷積塊并在前一幀的位置維度上使用softmax。然后我們就得到了上一幀位置r’處的場景信息在當(dāng)前幀每個(gè)位置r處的概率分布** p ( r ′ ∣ r ) p(r'|r) p(r′∣r)。
- 最后就是在上一幀state向量的基礎(chǔ)上根據(jù) p ( r ′ ∣ r ) p(r'|r) p(r′∣r)來計(jì)算當(dāng)前幀的state向量(當(dāng)前幀位置r處的state向量應(yīng)該是與上一幀中對(duì)應(yīng)關(guān)系最高的state向量)。
h ^ t ? 1 r = ∑ r ′ ∈ Ω h t ? 1 r ′ p ( r ′ ∣ r ) \hat h_{t - 1}^r = \sum\limits_{r' \in \Omega } {h_{t - 1}^{r'}p(r'|r)} h^t?1r?=r′∈Ω∑?ht?1r′?p(r′∣r)- 在使用 h ^ t ? 1 r \hat h_{t - 1}^r h^t?1r?進(jìn)行目標(biāo)定位時(shí)我們有必要知道由上一幀傳播得到的當(dāng)前幀位置r處的場景信息是否正確,因此針對(duì)當(dāng)前幀每個(gè)位置r處的概率分布 p ( r ′ ∣ r ) p(r'|r) p(r′∣r)估計(jì)一個(gè)置信度 ξ t r {\xi _t^r} ξtr?。 p ( r ′ ∣ r ) p(r'|r) p(r′∣r)中的值表示我們對(duì)當(dāng)前幀位置r對(duì)應(yīng)于上一幀某個(gè)位置的自信程度,正常情況下應(yīng)該是呈正態(tài)分布。但當(dāng) p ( r ′ ∣ r ) p(r'|r) p(r′∣r)呈均勻分布時(shí),這在另一方面體現(xiàn)出的是一種不確定性,這時(shí)上述公式計(jì)算的是 h t ? 1 r ′ h_{t-1}^{r'} ht?1r′?的均值,計(jì)算出的 h ^ t ? 1 r \hat h_{t - 1}^r h^t?1r?是不可信的。為此本文使用 p ( r ′ ∣ r ) p(r'|r) p(r′∣r)的負(fù)香農(nóng)熵來得到 h ^ t ? 1 r \hat h_{t -1}^r h^t?1r?的置信度(感覺就是計(jì)算與均勻分布的相似程度,越相似越不可信):
ξ t r = ∑ r ′ ∈ Ω p ( r ′ ∣ r ) log ? ( p ( r ′ ∣ r ) ) \xi _t^r = \sum\limits_{r' \in \Omega } {p(r'|r)\log (p(r'|r))} ξtr?=r′∈Ω∑?p(r′∣r)log(p(r′∣r))
這個(gè) ξ t r \xi _t^r ξtr?隨后會(huì)被用來決定是否信任 h ^ t ? 1 r \hat h_{t - 1}^r h^t?1r?用來計(jì)算最后的目標(biāo)置信分?jǐn)?shù)。輸出:當(dāng)前幀的每個(gè)位置r處的state向量 h ^ t ? 1 r \hat h_{t - 1}^r h^t?1r?,當(dāng)前幀每個(gè)位置r處state向量的置信度 ξ t r \xi _t^r ξtr?
- Target Confidence Score 預(yù)測
這一部分對(duì)應(yīng)于Predictor模塊,預(yù)測當(dāng)前幀中目標(biāo)的位置。
輸入:場景信息 h ^ t ? 1 \hat h_{t-1} h^t?1?,場景信息置信度 ξ t {\xi _t} ξt?,外觀模型的預(yù)測輸出 s t s_t st?。( s t s_t st?對(duì)該位置進(jìn)行背景與目標(biāo)的分類, h ^ t ? 1 \hat h_{t-1} h^t?1?包含了該位置在上一幀的背景與目標(biāo)的分類信息, ξ t {\xi _t} ξt?表達(dá)了場景信息中每個(gè)位置的置信度)
過程:將三個(gè)輸入在通道維度上進(jìn)行concatenate,然后經(jīng)過兩個(gè)卷積塊,一個(gè)sigmoid層,最終得到中間的位置響應(yīng)圖 ξ t {\xi _t} ξt?。但這個(gè)響應(yīng)圖在目標(biāo)與其他物體交錯(cuò)時(shí)變得不可靠,為了處理這個(gè)情況,對(duì)響應(yīng)圖進(jìn)行了進(jìn)一步的處理。具體的,設(shè)定一個(gè)閾值 μ \mu μ,使用一個(gè)指示函數(shù)將響應(yīng)圖中小于這個(gè)閾值的全部mask掉。注意mask操作是可微操作。
輸出:最終的位置響應(yīng)圖 ? t {\varsigma _t} ?t?.
- State更新
這一部分對(duì)應(yīng)于State Update模塊,根據(jù)當(dāng)前幀的信息更新State向量。
輸入: s t s_t st?, ? t {\varsigma _t} ?t?, h ^ t ? 1 \hat h_{t-1} h^t?1?
過程:具體的功能是標(biāo)記新的干擾物,修正錯(cuò)誤的state向量。模塊包含一個(gè)卷積門控循環(huán)單元(ConvGRU,是一種RNN網(wǎng)絡(luò))。首先將 s t s_t st?與 ξ t {\xi_t} ξt?的最大值concatenate到一起得到ConvGRU的輸入 f t ∈ R W × H × 4 {f_t} \in {\mathbb{R}^{W \times H \times 4}} ft?∈RW×H×4,并將 h ^ t ? 1 \hat h_{t-1} h^t?1?作為ConvGRU前一個(gè)時(shí)間步的隱藏狀態(tài)(hidden states)。然后ConvGRU使用輸入的 f t f_t ft?更新 h ^ t ? 1 \hat h_{t-1} h^t?1?的狀態(tài)得到 h t h_t ht?。
輸出:新的state向量 h t h_t ht?
- 訓(xùn)練方式
輸入:一個(gè)視頻序列
處理:采樣 N t r a i n N_{train} Ntrain?幀用來構(gòu)造外觀模型,再采樣一個(gè)包含 N s e q N_{seq} Nseq?幀的子序列,用來對(duì)模型進(jìn)行訓(xùn)練
過程:文章來源:http://www.zghlxwxcb.cn/news/detail-856634.html
- 正常跟蹤訓(xùn)練:首先使用初始幀初始化一個(gè)state向量 h 0 h_0 h0?,然后傳播給下一幀得到 h ^ 0 \hat h_0 h^0?,并預(yù)測目標(biāo) ξ 1 {\xi_1} ξ1?,最后使用預(yù)測得到的目標(biāo)分?jǐn)?shù)對(duì)state向量進(jìn)行更新得到$ h_1$。重復(fù)這個(gè)過程直至序列結(jié)束。
- 為了保證propagation模塊能夠得到學(xué)習(xí),添加了一個(gè)小的網(wǎng)絡(luò)頭來預(yù)測state向量是屬于目標(biāo)還是背景。
- 因?yàn)橥庥^模型預(yù)測的 s t s_t st?在大部分情況下是準(zhǔn)確的,因此predictor模塊有可能只是 s t s_t st?的恒等變換,無法利用state向量。為了避免這種情況,訓(xùn)練期間在 s t s_t st?上隨機(jī)加上一些干擾峰,激勵(lì)預(yù)測器去利用場景信息來排除干擾。
損失計(jì)算:文章來源地址http://www.zghlxwxcb.cn/news/detail-856634.html
- 計(jì)算最終的 ξ t {\xi _t} ξt?與標(biāo)簽之間的均方差損失 L t p r e d L_t^{pred} Ltpred?
L t p r e d = ∥ ? t ? z t ∥ 2 L_t^{pred} = {\left\| {{\varsigma _t} - {z_t}} \right\|^2} Ltpred?=∥?t??zt?∥2- 這里 z t z_t zt?是高斯函數(shù)生成的標(biāo)簽
- 計(jì)算predictor預(yù)測的原始 ξ t {\xi _t} ξt?與標(biāo)簽之間的損失 L t p r e d , r a w L_t^{pred,raw} Ltpred,raw?
- 計(jì)算網(wǎng)絡(luò)頭對(duì)傳播前的state向量分類的損失 L t s t a t e L_t^{state} Ltstate?,使用二分類交叉熵?fù)p失計(jì)算
- 計(jì)算網(wǎng)絡(luò)頭對(duì)傳播后的state向量分類的損失 L t s t a t e , p r o p L_t^{state,prop} Ltstate,prop?,使用二分類交叉熵?fù)p失計(jì)算
總損失如下:
L = 1 N s e q ? 1 ∑ t = 1 N s e q ? 1 L t p r e d + α L t p r e d , r a w + β ( L t s t a t e + L t s t a t e , p r o p ) L = \frac{1}{{{N_{seq}} - 1}}\sum\limits_{t = 1}^{{N_{seq}} - 1} {L_t^{pred} + \alpha L_t^{pred,raw} + \beta (L_t^{state} + L_t^{state,prop})} L=Nseq??11?t=1∑Nseq??1?Ltpred?+αLtpred,raw?+β(Ltstate?+Ltstate,prop?)
到了這里,關(guān)于【論文閱讀】Know Your Surroundings: Exploiting Scene Information for Object Tracking的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!