蔣凌云,楊金龍
江南大學(xué) 人工智能與計算機(jī)學(xué)院,江蘇 無錫214122
圖像處理在近幾年飛速發(fā)展且發(fā)展方向廣,其中文獻(xiàn)[1]代表了地質(zhì)科學(xué)方向。視頻多目標(biāo)跟蹤是目標(biāo)跟蹤方向的一個重要分支,由于存在新生目標(biāo)數(shù)量與出生位置的不確定性、遮擋或交叉導(dǎo)致的標(biāo)簽頻繁跳動、目標(biāo)特征建模困難等問題,使得視頻多目標(biāo)跟蹤一直是目標(biāo)跟蹤領(lǐng)域中的研究熱點和難點。不同算法在各問題上提出優(yōu)化方案。如對于處理跟蹤算法中的實時性以及標(biāo)簽跳變問題,文獻(xiàn)[2]對檢測與跟蹤算法同時提出優(yōu)化,檢測方面構(gòu)建精簡的模型以提高檢測速度,跟蹤方面利用長短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM)來減小預(yù)測誤差以減少標(biāo)簽跳變;對于處理數(shù)據(jù)關(guān)聯(lián)的不確定性和外觀特征難以表達(dá)的問題,文獻(xiàn)[3]提出了基于軌跡置信度的分層數(shù)據(jù)關(guān)聯(lián)方式和過程融合的特征提取網(wǎng)絡(luò);對于算法魯棒性以及數(shù)據(jù)關(guān)聯(lián)的問題,文獻(xiàn)[4]提出將卡爾曼濾波的預(yù)測框和檢測器的檢測框作為模型的選擇,融合目標(biāo)多種特征信息完成多目標(biāo)之間的數(shù)據(jù)關(guān)聯(lián)。
在檢測新生目標(biāo)方面:近些年,隨機(jī)有限集(random finite sets,RFS)[5-11]濾波得到了廣泛關(guān)注,文獻(xiàn)[12-17]也將隨機(jī)有限集應(yīng)用到視頻跟蹤中,但由于新生目標(biāo)的隨機(jī)性未知,給該方法的使用帶來一定的困難。在隨機(jī)有限集濾波方法中,如傳統(tǒng)的多伯努利濾波(multi-Bernoulli filter,MBF)和概率假設(shè)密度(probability hypothesis density,PHD)算法需要建立新生模型(新生目標(biāo)可能出現(xiàn)的位置、狀態(tài)以及概率)來捕獲新生目標(biāo),在這種情況下,通常預(yù)先了解場景信息。但在真實的視頻多目標(biāo)中,由于新生目標(biāo)的多變性,很難建立符合場景的新生模型,視頻中新生目標(biāo)可能從邊緣進(jìn)入,或被遮擋后重新出現(xiàn),或從某建筑物出現(xiàn)等。文獻(xiàn)[18]提出了量測驅(qū)動目標(biāo)新生模型,給定新生目標(biāo)新生概率,將檢測值作為高斯分量的均值,直接去除了低置信度的檢測值。
在目標(biāo)建模與重識別方面:Deepsort通過級聯(lián)匹配以及新軌跡確認(rèn)機(jī)制來進(jìn)行目標(biāo)的重識別。文獻(xiàn)[19]在網(wǎng)路特征圖中提取人物特征向量,采用一階段多任務(wù)學(xué)習(xí),將人物特征向量與人物檢測框共同輸出,在精度差不多的情況提高了算法運算速度。
在標(biāo)簽維持及關(guān)聯(lián)方面:多數(shù)方法在數(shù)據(jù)關(guān)聯(lián)方面利用預(yù)測得出的目標(biāo)建模信息與下一幀所獲取的檢測信息進(jìn)行相似度比較,并利用匈牙利或最大全匹配(Kuhn-Munkres algorithm,KM)算法進(jìn)行檢測框與目標(biāo)框的關(guān)聯(lián)。如MYL-Deepsort、Sort[20]、IOU17[21]將框與框之間的交并比(intersection-over-union,IOU)作為關(guān)聯(lián)算法的依據(jù),運算速度較快。文獻(xiàn)[1]則是利用特征與IOU 相結(jié)合的方式進(jìn)行關(guān)聯(lián),準(zhǔn)確度較高但是運算量大。
本文提出的主要問題在新生目標(biāo)以及數(shù)據(jù)關(guān)聯(lián)方面,主要貢獻(xiàn)概括如下:
(1)檢測自適應(yīng)新生模型。在傳統(tǒng)的標(biāo)簽多伯努利濾波中,需要在目標(biāo)可能出現(xiàn)的位置自定義新生模型,由于視頻多目標(biāo)跟蹤新生目標(biāo)的不確定性,本文將定義與檢測置信度相關(guān)的新生模型。由于檢測器檢測結(jié)果的置信度會有高低之分,相比直接去除低置信度的檢測方法,本文將檢測置信度與目標(biāo)新生概率結(jié)合,將低置信度的檢測加入到標(biāo)簽多伯努利的濾波中,提高目標(biāo)識別率的同時避免誤檢以及漏檢,為跟蹤提供良好的檢測數(shù)據(jù)。
(2)融入標(biāo)簽多伯努利算法。在大部分多目標(biāo)跟蹤中,通過目標(biāo)模板以及檢測數(shù)據(jù)進(jìn)行關(guān)聯(lián)來實現(xiàn)多目標(biāo)跟蹤,這些方法在多目標(biāo)跟蹤中有很好的效果,但在維持軌跡方面有所欠缺,標(biāo)簽多伯努利不同于傳統(tǒng)復(fù)雜的數(shù)據(jù)關(guān)聯(lián)方法,在檢測數(shù)目變化較多的情況下,仍然可以較好地估計目標(biāo)的數(shù)目以及目標(biāo)的狀態(tài),即使目標(biāo)被遮擋后,也能較好地維持相應(yīng)目標(biāo)的軌跡。
(3)提出新的目標(biāo)重識別以及目標(biāo)特征提取策略。標(biāo)簽多伯努利算法在估計目標(biāo)數(shù)目以及目標(biāo)狀態(tài)的同時,還可以估計目標(biāo)的標(biāo)簽狀態(tài),本文將結(jié)合目標(biāo)特征以及標(biāo)簽多伯努利所估計的標(biāo)簽狀態(tài)來進(jìn)行目標(biāo)重識別。
假設(shè)一個伯努利有限集是空的概率為1-r,是一個以p(·)為空間概率密度分布的概率為r,則伯努利的勢分布可表示為:
此概率密度函數(shù)可以理解為,加和符號將所有的伯努利隨機(jī)有限集的排列組合全部相加,即每個隨機(jī)集都是二項分布,計算M個有限集的排列組合。不是空集的伯努利隨機(jī)集i1,i2,…,in則會有具體的函數(shù)值x1,x2,…,xn。若為空集?,則概率密度的表達(dá)式可以表示為π=。如果將上式的空間密度分布忽略,則多伯努利的勢分布可表示為:
標(biāo)簽多伯努利隨機(jī)集與多伯努利隨機(jī)集不同的是,在狀態(tài)x∈X中增加了標(biāo)簽l∈L這一狀態(tài)維,以估計在多目標(biāo)場景中某一個目標(biāo)的標(biāo)簽或軌跡,標(biāo)簽通常從離散標(biāo)簽空間L={αi:i∈N}中提取,αi是互不相同的同時標(biāo)簽空間N是一系列的正整數(shù)。
每個目標(biāo)的標(biāo)簽被定義為l=(k,i),其中k表示目標(biāo)從k時刻新生,i∈N是為了區(qū)分在同一時刻其他新生目標(biāo),因此每個目標(biāo)的標(biāo)簽是獨有的并且固定的。在k時刻新目標(biāo)的標(biāo)簽空間可表示為Lk,同時{k}×N。在k時刻新生目標(biāo)的狀態(tài)為x∈X×Lk,所有在k時刻的存活以及新生目標(biāo)的標(biāo)簽空間為L0:k,迭代表達(dá)形式L0:k=L0:k-1?LK。
和多伯努利隨機(jī)集一樣,標(biāo)簽多伯努利隨機(jī)集也可以用參數(shù)集表示為{(r(ζ),p(ζ)):ζ∈Ψ},Ψ是標(biāo)簽索引集合。當(dāng)一個伯努利分量(r(ζ),p(ζ))返回非空集合時,則會把標(biāo)簽α(ζ)附加到狀態(tài)集中。
方便起見,標(biāo)簽多伯努利隨機(jī)有限集(labelled multi-Bernoulli random finite sets,LMBRFS)的密度簡寫為π={r(l),p(l)}l∈L,更緊湊的形式為:
廣義標(biāo)簽多伯努利隨機(jī)集(generalized labelled multi-Bernoulli,GLMB)的分布是由一個在狀態(tài)空間X以及離散標(biāo)簽空間L的標(biāo)簽多伯努利隨機(jī)集根據(jù)以下公式產(chǎn)生的:
其中,C代表離散索引集合,權(quán)重ω(c)(L)和空間分布p(c)滿足歸一化條件:
標(biāo)簽多伯努利是廣義多伯努利的特例:
由于貝葉斯多目標(biāo)濾波器更新過程中數(shù)據(jù)關(guān)聯(lián)的不確定性,在GLMB 中迭代標(biāo)簽時標(biāo)簽索引集合將會有多種假設(shè)進(jìn)行向后的迭代,涉及到不同的軌跡標(biāo)簽集合。
δ廣義標(biāo)簽多伯努利隨機(jī)集(δ-generalized labelled multi-Bernoulli,δ-GLMB)是在狀態(tài)空間X以及標(biāo)簽空間L的GLMB的一種特例:
其中,Ξ是一個離散空間,ξ為空間里的具體狀態(tài),I代表所有軌跡標(biāo)簽的一個集合。在目標(biāo)跟蹤的實際應(yīng)用中,離散空間Ξ通常為軌跡與量測關(guān)聯(lián)的歷史記錄。因此,δ-GLMB RFS 是GLMB RFS 的一個特例,在目標(biāo)跟蹤應(yīng)用中,δ-GLMB RFS的索引空間具有特殊結(jié)構(gòu)。δ-GLMB RFS的密度函數(shù)表示為:
勢分布為:
標(biāo)簽多伯努利濾波器是完全后驗遞歸的近似,算法流程如圖1所示。
圖1 LMB濾波器流程圖Fig. 1 LMB filter flow chart
LMB 是可以直接將所有量測更新的,但是這會造成不必要的計算并且造成計算資源的浪費,因此需要加入Gating 和Grouping 步驟,此步驟把在參數(shù)空間內(nèi)距離目標(biāo)比較近的量測進(jìn)行分割與歸類,在目標(biāo)進(jìn)行量測更新時,只與一定范圍內(nèi)的量測進(jìn)行比較更新,以此可以顯著減少計算資源的浪費,同時可以進(jìn)行并行計算,加快算法運算速度。
假設(shè)后驗分布是具有狀態(tài)空間X和有限標(biāo)簽空間L的LMB分布,表示為:
在獲取下一次測量前的預(yù)測遵循狀態(tài)空間為X,有限標(biāo)簽空間為L+=L?B的LMB分布:
該式中第一個集合表示的是上一時刻存活軌跡的LMB RFS,第二個集合表示為新生的LMB 分量,在LMB中該分量需要事先設(shè)定先驗分布。對于存活軌跡,預(yù)測的標(biāo)簽與上一時刻的標(biāo)簽相同,并且預(yù)測的存在概率和空間分布是由存活概率和轉(zhuǎn)移密度計算加權(quán)推出。對于新出生的軌跡,l∈B是新的與存活軌跡不同的標(biāo)簽。
在給出了LMB 的預(yù)測后,可以直接將所有的量測進(jìn)行δ-GLMB的更新,獲得與預(yù)測似然最高的一個量測值并進(jìn)行更新。但正如前文所述,利用空間信息更有效地對目標(biāo)和量測進(jìn)行分組,可以實現(xiàn)每一組的更新并行進(jìn)行。Gating 和Grouping 策略在不減少準(zhǔn)確度的情況下大大減少了算法時間復(fù)雜度。分組后,預(yù)測之后的LMB 參數(shù)集可以劃分為相互獨立的子集??梢员硎緸椋菢?biāo)簽集合L+=L?B的分割子集,即:
其中,當(dāng)n≠m時Z(n)?Z(m)=?,Z(0)集合表示的集合為沒有被分配給任何目標(biāo)的量測集合,Z(n)集合則是與目標(biāo)相對應(yīng)的集合關(guān)聯(lián)上的量測集合。
因此對于每一個標(biāo)簽伯努利分量,任何落在分量預(yù)測的距離閾值內(nèi)閾值相關(guān)的量測則可表示為:
當(dāng)集合之間都沒有相同的量測時,融合分類算法完成。最后一共分成了N個關(guān)于軌跡的集合g(1),g(2),…,g(N),每個集合中包含與之相關(guān)聯(lián)的量測。因此可以得出,多目標(biāo)預(yù)測之后的概率密度為:
(1)對于每一個分組來說預(yù)測之后的密度形式都為LMB,在更新前需要先把LMB 形式轉(zhuǎn)換為δ-GLMB,對于包含所對應(yīng)的目標(biāo)標(biāo)簽以及量測G(i)=的第i個分組,δ-GLMB 形式可轉(zhuǎn)換為:
(2)對于每一個分組i,δ-GLMB更新如下式所示:
式中,ΘI+表示索引空間,即包含θ:I+→{0,1,…,|Z(i)|},意味著當(dāng)θ(l)=θ(l′)>0時,l=l′。
(3)將更新后得到的δ-GLMB 轉(zhuǎn)化為LMB,對于第i個分組,LMB 形式可表示為:
最終得出的目標(biāo)狀態(tài)的后驗概率密度分布為:
在得出LMB 形式的目標(biāo)狀態(tài)后,當(dāng)軌跡的存在概率小于事先設(shè)定的閾值時,該軌跡則被刪除,當(dāng)軌跡的存在概率大于設(shè)定的閾值時,則提?。?/p>
式中:
閾值?設(shè)定過高時,會減少因為雜波而誤估計的軌跡,但這將同時造成新生軌跡的延遲出現(xiàn)。
當(dāng)閾值?設(shè)定過低時,新生目標(biāo)則會立即被估計出軌跡,但代價是會估計出大量的雜波軌跡。
如何減少背景的干擾,提取具有很高區(qū)分度的視頻目標(biāo)特征,并同時保持較低的時間復(fù)雜度一直是學(xué)術(shù)界研究的重要課題。本文引入文獻(xiàn)[22]中的特征提取方式,能保持較高的區(qū)分度,同時采用了矩陣學(xué)習(xí)來降低目標(biāo)特征維度。該方法主要分為LOMO(look more than once)提取目標(biāo)特征和XQDA(crossview quadratic discriminant analysis)矩陣學(xué)習(xí)降維兩大部分。
3.1.1 處理光照變化
對于描述一張人物圖片來說,顏色是一個很重要的特征,然而在實際工程中,由于攝像頭所在場景光照分布不均勻,會導(dǎo)致同一個人在同一個視頻中的特征有相當(dāng)大的特征區(qū)別,如圖2所示。
圖2 不同角度人物特征區(qū)別Fig. 2 Differences in character characteristics from different angles
本文采用了Retinex 算法[23-24]預(yù)處理檢測圖片,Retinex 算法的基本理論為:物體的顏色是由物體對長波(紅色)、中波(綠色)、短波(藍(lán)色)的反射能力決定的,并不是通過反射光強(qiáng)度絕對值來決定的,從而可以得出物體的色彩不受光照的影響,具有一致性。Retinex 算法具有色感一致性、顏色恒常性。不同于一些只能對圖像的某一類特征進(jìn)行增強(qiáng)的算法,Retinex算法可以在邊緣增強(qiáng)、動態(tài)范圍壓縮以及顏色恒常三方面進(jìn)行優(yōu)化和均衡,因此可以用于不同類型圖像的增強(qiáng)。經(jīng)過增強(qiáng)的圖片如圖3所示。
圖3 圖像增強(qiáng)后的對比Fig. 3 Contrast after image enhancement
3.1.2 形態(tài)變化處理
同一個行人在一個視頻中,隨著時間的變化,會導(dǎo)致人的變大縮小,或者當(dāng)一個行人一開始是向前走,但經(jīng)過拐彎后開始側(cè)著走,都會導(dǎo)致人的形態(tài)發(fā)生較大變化,進(jìn)而導(dǎo)致圖像特征發(fā)生較大的變化。
本文提出的處理方法為用滑動窗口來描述一個目標(biāo)的局部細(xì)節(jié)。如一張128×48 大小的行人圖片,可以定義一個10×10 的窗口,用5 個像素的滑動間距遍歷整張圖片。對于每一次遍歷,提取兩個尺度的SILTP 直方圖(和)和一個8×8×8的顏色模型(hue,saturation,value,HSV)直方圖。遍歷一張圖片的同一水平位置,并且最大化這些滑動窗口計算各部分的值。最后得到的直方圖能夠?qū)θ梭w在形態(tài)上的變化有一定的不變性,進(jìn)而捕捉到人局部區(qū)域的細(xì)節(jié)特征。圖4為LOMO特征提取方法。
圖4 人物特征提取方法Fig. 4 Character feature extraction method
為了進(jìn)一步提取多尺度的圖片信息,算法對圖片進(jìn)行了三層金字塔的特征表示,即對128×48 的圖片進(jìn)行3 次2×2 的平均池化得到3 個不同尺度的特征圖,最后對每一個特征圖進(jìn)行特征提取,并將所有的特征向量拼接成一個向量,該向量有(8×8×8+34×2)×(24+11+5)=26 960 個維度。最后用log 函數(shù)減弱數(shù)值差異較大所帶來的影響,同時對HSV 和SILTP 特征進(jìn)行歸一化。提出算法只用了HSV 以及SILTP特征,時間復(fù)雜度較低。
3.1.3 特征相似度比較
假設(shè)同一個目標(biāo)特征之間的差別為Δ=xi-xj(ifyi=yj),記作ΩI,不同目標(biāo)特征之間的差別為Δ=xi-xj(ifyi≠yj),記作ΩE,因此,可將識別某一張人物圖片是否屬于同一個人的問題轉(zhuǎn)化為二分類問題,即用QDA 模型對ΩI和ΩE進(jìn)行二分類。文獻(xiàn)[13]則用對數(shù)似然比來計算兩個高斯分布之間的差異,將之用在了Re-Id中。
Bayesian face 和KISSME 算法如下所示,在零均值的高斯分布下,ΩI和ΩE的差異Δ的似然被定義為:
其中,ΣI和ΣE為ΩI和ΩE的協(xié)方差矩陣,在下文中,nI和nE分別表示在這兩個類別中樣本的個數(shù)?;谪惾~斯規(guī)則和對數(shù)似然比,差異化函數(shù)被定義為:
最終兩個特征xi和xj之間的距離可表示為:
一般來說,人物圖片經(jīng)過特征提取后的向量維度d很大,需要對其進(jìn)行降維獲得一個低維度的向量空間Rr(r<d),提高分類的準(zhǔn)確性和算法效率,文獻(xiàn)[25]分別對ΣI和ΣE進(jìn)行了矩陣分解來降低維度。文獻(xiàn)[13]則用主成分分析(principal component analysis,PCA)進(jìn)行降維,矩陣ΣI和ΣE在PCA子空間上求近似。然而,這兩種方法在降維時沒有考慮距離矩陣的學(xué)習(xí),因此都不是最佳方式。
提出算法中,將用度量學(xué)習(xí)來對Bayesianface 和KISSME 算法進(jìn)行優(yōu)化。算法將用Re-Id數(shù)據(jù)集訓(xùn)練出子空間W=(w1,w2,…,wr)∈Rd×r,同時訓(xùn)練出距離度量方程用來計算在維度r上兩個樣本之間的相似度。假設(shè)有訓(xùn)練集{X,Z},其中X=(x1,x2,…,xn)∈Rd×n,包含在同一個視野中的n個維度為d的樣本,Z=(z1,z2,…,zm)∈Rd×m,包含其他視野角度的m個維度為d的樣本,在同一個場景中,Z和X是相等的。
在維度為r的子空間W中,距離方程可表示為:
由于ΩI和ΩE是零均值的,給定一個投影方程w,投影過后的樣本依然是零均值的,但有不一樣的方差。由于兩類樣本為零均值,不能用線性判別分析(latent Dirichlet allocation,LDA)進(jìn)行優(yōu)化,但是由于方差的不同,依然可以用方差σI、σE對兩類樣本進(jìn)行分類。因此,需要優(yōu)化投影方向w,從而使σE(w)/σI(w)最大化,需要注意的是,σE(w)=wTΣEw,σI(w)=wTΣIw,因此σE(w)/σI(w)可表示為:
J(w)的最大值等價于:
本文通過標(biāo)簽多伯努利、新的數(shù)據(jù)驅(qū)動新生模型和目標(biāo)重識別方法,減少了碎片軌跡、標(biāo)簽切換問題,目標(biāo)被遮擋后無法繼續(xù)跟蹤的情況也有所減少,算法流程如圖5所示。
圖5 視頻多目標(biāo)跟蹤流程圖Fig. 5 Flow chart of video multi-target tracking
在標(biāo)簽多伯努利中,需要運動模型用來估計k時刻軌跡的狀態(tài)。算法中設(shè)置目標(biāo)的運動模型為隨機(jī)游走模型,目標(biāo)i運動狀態(tài)表示為mi=(x,y,w,h,x˙,y˙,w˙,h˙),目標(biāo)的特征可表示為ai,標(biāo)簽為?,其中,x和y表示軌跡目標(biāo)框左上角坐標(biāo),w表示目標(biāo)框?qū)挾龋琱表示目標(biāo)框高度,x˙和y˙表示目標(biāo)框左上角坐標(biāo)在x方向、y方向上的變化率,w˙和h˙表示目標(biāo)框?qū)挾纫约案叨鹊淖兓省?/p>
在獲得視頻每一幀對應(yīng)的檢測框后,需要對新生目標(biāo)進(jìn)行識別,在傳統(tǒng)的標(biāo)簽多伯努利或其他伯努利方法下,檢驗新生目標(biāo)需要先驗知識,即在目標(biāo)可能出現(xiàn)的區(qū)域設(shè)定新生模型。由于新生目標(biāo)會在接下來的時間內(nèi)持續(xù)產(chǎn)生檢測,進(jìn)而目標(biāo)的后驗概率密度增加,從而識別出新生目標(biāo)。
為了解決傳統(tǒng)新生目標(biāo)檢測有延遲的問題,本文提出了量測驅(qū)動的新生目標(biāo)檢測算法,同時將目標(biāo)檢測置信度融入到算法中,置信度高的存在概率越大,從而一定程度上能減少雜波對算法精度帶來的影響。
4.2.1 新生目標(biāo)識別
需要注意的是,當(dāng)k=1 時,還未出現(xiàn)軌跡,算法將所有的檢測都加入軌跡。
4.2.2 目標(biāo)重識別
新生目標(biāo)識別后需要對新生目標(biāo)進(jìn)行標(biāo)簽分類,進(jìn)而盡量減少標(biāo)簽跳變數(shù),標(biāo)簽多伯努利只能減少目標(biāo)軌跡在運動時的標(biāo)簽跳變數(shù)。本文提出特征池思想,通過將新生目標(biāo)特征與特征池里的歷史特征進(jìn)行特征比較,將相似度較高的歷史特征所對應(yīng)的標(biāo)簽賦值給新生標(biāo)簽多伯努利分量。
其中,Σ-1為XQDA 矩陣學(xué)習(xí)出的正交矩陣,同時對f和p進(jìn)行了降維,得出相似度矩陣S:
新生目標(biāo)所對應(yīng)的標(biāo)簽數(shù)即為相似度矩陣S中每行最小值所對應(yīng)的標(biāo)簽。
提出算法中采用高斯混合來對標(biāo)簽多伯努利濾波進(jìn)行閉合求解。
標(biāo)簽多伯努利隨機(jī)集是由多個標(biāo)簽伯努利隨機(jī)集組成的,表示為:
識別出新生目標(biāo)之后,需要對新生目標(biāo)狀態(tài)初始化,即用標(biāo)簽多伯努利對新生目標(biāo)進(jìn)行建模:
標(biāo)簽多伯努利濾波更新、預(yù)測、狀態(tài)提取等過程與多伯努利濾波過程類似,并且在新生時確定目標(biāo)標(biāo)簽后,目標(biāo)的預(yù)測與更新是不會改變目標(biāo)標(biāo)簽狀態(tài)的。
4.3.1 標(biāo)簽多伯努利預(yù)測
標(biāo)簽多伯努利的預(yù)測可表示為:
式中,LMBM表示標(biāo)簽多伯努利參數(shù)集,δx為狄拉克函數(shù)。LMBMk|k(xk)表示在k時刻標(biāo)簽多伯努利狀態(tài)密度表示,后驗概率參數(shù)可表示為:
式中,hk表示為標(biāo)簽多伯努利所對應(yīng)的假設(shè)序號,Hk為總假設(shè)個數(shù)。
LMBMk+1|k(xk)表示預(yù)測后的先驗標(biāo)簽多伯努利狀態(tài)密度集合,表示為:
式中,i′為k時刻表示后驗密度的伯努利分量標(biāo)號,i″表示k時刻根據(jù)新生模型新生的伯努利分量標(biāo)號,對于每一個伯努利,預(yù)測過后依然為伯努利:
假設(shè)存活概率為常數(shù),表示為:
當(dāng)用高斯混合對式子進(jìn)行求解時,運動方程的狀態(tài)轉(zhuǎn)移分布表示為:
預(yù)測后的參數(shù)為:
4.3.2 標(biāo)簽多伯努利更新
標(biāo)簽多伯努利的更新可表示為:
在進(jìn)行標(biāo)簽多伯努利更新前首先要進(jìn)行Gating和Grouping操作,將量測進(jìn)行分類,讓預(yù)測后的目標(biāo)與之距離較近的量測進(jìn)行更新,此操作不僅能夠極大減少算法時間復(fù)雜度,在準(zhǔn)確率上也會因為減少不相關(guān)量測的干擾而提高。
預(yù)測后得到的多伯努利參數(shù)為:
多伯努利的更新是基于目標(biāo)與Gating 和Grouping之后的檢測進(jìn)行更新運算,計算出狀態(tài)以及權(quán)重,再根據(jù)權(quán)重篩選出最優(yōu)的假設(shè),更新算法流程為:
計算多伯努利的后驗概率密度參數(shù)
對于計算代價矩陣,假設(shè)有m個量測,一個多伯努利集合h有Nh個伯努利分量,則對應(yīng)的代價矩陣為:
算出代價矩陣后,用Murty算法計算出檢測與目標(biāo)最匹配的假設(shè)。
多伯努利更新后得到的參數(shù)為:
假設(shè)目標(biāo)i與檢測j相關(guān)聯(lián),即θi=j,則對于該假設(shè)參數(shù)更新為:
對于沒有檢測與之關(guān)聯(lián)的假設(shè),即θi=0,則第i個伯努利更新為:
用高斯混合對以上式子求解:
4.3.3 標(biāo)簽多伯努利狀態(tài)提取
經(jīng)過多伯努利更新,得到標(biāo)簽多伯努利參數(shù)集:
4.4.1 特征選取
在標(biāo)簽多伯努利更新結(jié)束后,可以得到每個目標(biāo)的目標(biāo)位置參數(shù)(x,y,w,h,l),在更新后對θi進(jìn)行判斷,如果θi=0,則表明在該幀沒有檢測與之匹配,為了防止該目標(biāo)被遮擋導(dǎo)致的模板污染,此時,不對該目標(biāo)進(jìn)行特征提取,即:
4.4.2 特征池
建立特征池,大小設(shè)為tp=tnum×T,T代表第一幀中新生目標(biāo)的數(shù)目,tnum為自定義大小。構(gòu)建大小為tp=NUM×T的隊列(即先進(jìn)先出模式)。
考慮到目標(biāo)被遮擋后會導(dǎo)致目標(biāo)特征提取不正確的問題,本文僅僅將高置信度檢測框所對應(yīng)的圖像特征以及對應(yīng)匹配上的ID放入特征池中。
在目標(biāo)進(jìn)行特征提取之后,包含標(biāo)簽信息的特征加入特征池,以便在目標(biāo)重識別時對標(biāo)簽進(jìn)行判別,是否為之前的目標(biāo)P={p1,p2,…}。
為了驗證提出算法的有效性,在公開數(shù)據(jù)集MOT17 上與類似算法Sort[26]、GMPHD_RD、IOU17[27]、PHD_LMP[25]進(jìn)行對比實驗。
5.1.1 數(shù)據(jù)集
MOT17[28]中,采用了三種不同的檢測器FRCNN(faster region-based convolutional neural network)、DPM(deformable part model)、SDP(scale-dependent pooling),本文算法將三種檢測器的檢測結(jié)果帶入到提出的跟蹤算法中,驗證提出算法的有效性。
不同檢測器有不同的檢測精度與檢測特性。FRCNN 與SDP 檢測器的檢測精度較高,同時在實際跟蹤過程中,可能會產(chǎn)生較多的雜波或碎片跟蹤軌跡。DPM 檢測器雖然召回率較高,然而會產(chǎn)生較多虛假檢測。表1為數(shù)據(jù)集中每個視頻人群特點。
表1 場景序列Table 1 Scene sequence
可以看出,序列05、10、11、13 中攝像機(jī)是移動的,序列02亮度較暗,在數(shù)據(jù)集中對目標(biāo)遮擋的處理以及交叉運動的處理對結(jié)果的影響較大。
5.1.2 評價算法
本文算法所使用的評價指標(biāo)為MOT17公共數(shù)據(jù)集評價算法,評價指標(biāo)分別為:多目標(biāo)跟蹤正確度(multiple object tracking accuracy,MOTA)、多目標(biāo)跟蹤精度(multiple object tracking precision,MOTP)、誤跟數(shù)(false positive,F(xiàn)P)、漏跟數(shù)(false negative,F(xiàn)N)和標(biāo)簽跳變數(shù)(ID switch,IDS)。
(1)實驗環(huán)境
處理器:Intel Core i7-8700 3.2 GHz
內(nèi)存:16 GB
顯卡:NVIDIA GeForce GTX 1080 Ti
軟件:Matlab R2019b
(2)實驗參數(shù)
目標(biāo)狀態(tài):(x,y,w,h,x˙,y˙,w˙,h˙,l)
量測:(x,y,w,h)
5.3.1 目標(biāo)緊鄰、遮擋
在MOT17-09視頻數(shù)據(jù)集中,商店門口有較為復(fù)雜的行人交叉走動的情況,在Sort、GMPHD_RD、IOU17、PHD_LMP等跟蹤算法中,當(dāng)兩個目標(biāo)交叉運動時,跟蹤器不能很好地跟蹤上被遮擋的目標(biāo)。而提出算法中,利用標(biāo)簽多伯努利的預(yù)測,即使在短時間內(nèi)沒有目標(biāo)的檢測,也能很好地維持目標(biāo)軌跡,如圖6所示,所在幀為405、409、412、417、420、424。
圖6 MOT17-09數(shù)據(jù)集目標(biāo)被遮擋實驗結(jié)果Fig. 6 Experimental results of target occlusion of MOT17-09 dataset
從實驗結(jié)果可以看出,提出算法在處理行人被遮擋后,仍然可以根據(jù)標(biāo)簽多伯努利預(yù)測維持目標(biāo)軌跡,同時在目標(biāo)移動過程中維持標(biāo)簽的不變性。在目標(biāo)重新出現(xiàn)后,其他對比算法雖能再次識別目標(biāo),但其標(biāo)簽發(fā)生了跳變,被當(dāng)成了新生目標(biāo)。
視頻數(shù)據(jù)集MOT17-10的場景為夜晚,由于攝像頭拍攝不固定,會導(dǎo)致場景灰暗以及目標(biāo)模糊的狀態(tài)。與MOT17-09 數(shù)據(jù)集相比,不僅人數(shù)較多,而且較為密集,存在很多由于行人交叉運動而導(dǎo)致的目標(biāo)遮擋問題。由于采用了Gating和Grouping,算法依然有很好的穩(wěn)定性。實驗對應(yīng)的視頻數(shù)據(jù)集MOT17-10的幀數(shù)為227、235、245、252、258,如圖7所示。
圖7 昏暗模糊場景下目標(biāo)被遮擋Fig. 7 Target occlusion in dim blurred scene
從實驗結(jié)果圖7 中可以看出,當(dāng)標(biāo)簽為77 的目標(biāo)走來時,可以在遮擋的情況下維持標(biāo)簽不變,同時能準(zhǔn)確估計出目標(biāo)狀態(tài),而其他對比算法在目標(biāo)被遮擋的情況下難以較好地跟蹤目標(biāo)。
5.3.2 標(biāo)簽維持
視頻數(shù)據(jù)集MOT17-04 為夜晚燈光人群密集的場景,在多目標(biāo)跟蹤中,如何保持標(biāo)簽長時間以及長距離不變是研究的難點。在人群密集時,當(dāng)目標(biāo)與另一個或幾個目標(biāo)緊鄰時,會出現(xiàn)標(biāo)簽切換。在提出算法中,目標(biāo)的標(biāo)簽是在目標(biāo)新生時分配的,算法迭代運行過程中,會根據(jù)目標(biāo)歷史狀態(tài)賦予目標(biāo)標(biāo)簽,即使有多個目標(biāo)相鄰運動,考慮到每個目標(biāo)的速度大小以及速度方向,在復(fù)雜的場景中仍然能夠維持目標(biāo)軌跡以及標(biāo)簽狀態(tài)。
圖8 為各算法在MOT17-04 視頻數(shù)據(jù)集的179、204、214、222、266、314幀中所得的跟蹤結(jié)果,在提出的算法中,標(biāo)簽為21的目標(biāo)在179到314幀中一直維持自己的標(biāo)簽狀態(tài)以及目標(biāo)狀態(tài),而在其他算法中,目標(biāo)不僅出現(xiàn)了跟丟時刻,同時出現(xiàn)了多次標(biāo)簽變換。
圖8 昏暗模糊場景下密集人群下的目標(biāo)軌跡維護(hù)Fig. 8 Target trajectory maintenance under dense crowd in dim and blurred scene
5.3.3 低分辨率漏跟
與其余1 920×1 080 數(shù)據(jù)集不同,視頻數(shù)據(jù)集MOT17-05 的分辨率為640×480,同時該視頻數(shù)據(jù)集為移動攝像頭拍攝的,在跟蹤過程中常有目標(biāo)被漏跟蹤的情況。
圖9 為算法在MOT17-05 數(shù)據(jù)集306、309、310、311、312 幀的跟蹤結(jié)果,在提出的算法結(jié)果中,由于標(biāo)簽多伯努利在更新的過程中會考慮到目標(biāo)是否漏檢測的情況,當(dāng)目標(biāo)在之前的歷史幀中維持了較長的軌跡,存在概率較大,當(dāng)目標(biāo)在之后的幀數(shù)中即使丟失檢測,也能夠在一定時間內(nèi)持續(xù)跟蹤目標(biāo),當(dāng)某一時刻又重新獲得檢測時,存在概率較高未剪掉的軌跡重新與檢測關(guān)聯(lián),從而解決了目標(biāo)漏跟問題。
圖9 算法對漏跟情況的處理Fig. 9 Algorithm processing for missing track
提出的算法中,標(biāo)簽為55 的目標(biāo)在這一時間段中持續(xù)被跟蹤上。在其他算法中,該目標(biāo)處于漏跟狀態(tài)。
5.3.4 處理誤檢測
公共檢測器FRCNN、SDP、DPM中,DPM檢測器性能最差,在檢測結(jié)果中經(jīng)常有誤檢測框,即在沒有目標(biāo)的地方檢測出有目標(biāo),誤檢測框并不是在每一幀中都存在,同時誤檢測框的狀態(tài)也是非常不穩(wěn)定的。在標(biāo)簽多伯努利中,本文算法對誤檢測框進(jìn)行了雜波的泊松分布建模,由于誤檢測框的不穩(wěn)定性,在預(yù)測以及更新的過程中,在算法中不會將是雜波的檢測框當(dāng)作檢測,進(jìn)而避免目標(biāo)誤跟蹤。
圖10 為數(shù)據(jù)集MOT17-02 在DPM 檢測器下第46、49、56、61、67、77幀的跟蹤結(jié)果??梢钥闯?,在提出的算法中,很好地解決了誤跟蹤框的情況,而在其他對比算法中,由于誤檢測跟蹤結(jié)果中出現(xiàn)了較多的跟蹤錯誤。
圖10 算法對誤檢測的處理Fig. 10 Algorithm processing for error detection
5.4.1 未使用特征的方法
表2 給出了提出算法和對比算法在MOTA、FP、FN、IDs、MOTP 指標(biāo)上統(tǒng)計結(jié)果。本文的跟蹤結(jié)果都是基于3個公共檢測器DPM、FRCNN、SDP的檢測結(jié)果來跟蹤的。
表2 MOT17訓(xùn)練集上未使用特征的方法比較Table 2 Comparison of methods on MOT17 training set without feature
從表2 中可以看出,提出算法在MOT17 訓(xùn)練集上與沒有使用圖像特征的算法進(jìn)行比較,取得了較好的效果。與Sort相比,MOTA提高了4.1,效果提升了9.2%;與IOU17相比,MOTA提高了4.2,效果提升了9.3%。
本文在沒有用圖像特征信息的情況下使用了標(biāo)簽多伯努利算法來估計和更新目標(biāo)的位置信息,在攝像機(jī)位置固定的情況下可以較好地處理目標(biāo)被遮擋的情況。從表2中可以看出,提出算法的FN(漏跟蹤目標(biāo)數(shù))指標(biāo)相比其他算法降低很多,相比Sort 算法降低了9.3%,相比IOU17 算法降低了6.7%。與此同時,存在概率較大也會帶來反作用,使得FP 增加,因為當(dāng)存活目標(biāo)消失的時候,依然會有較高的存在概率,算法會認(rèn)為該目標(biāo)可能還存在,導(dǎo)致誤跟目標(biāo)數(shù)的增加,也間接導(dǎo)致了IDs的增加。由于目標(biāo)被誤跟,被誤跟的目標(biāo)也會分配給額外的標(biāo)簽,導(dǎo)致IDs的增長。
5.4.2 MOT17濾波方法比較
表3 為提出算法與其他運用濾波方法的算法比較,本文算法在IDs 也減少了許多,相比其他對比算法,提出算法有著更好的表現(xiàn)。雖然本文算法在FP與FN的指標(biāo)上沒有提升,但是相較于對比算法達(dá)到了一個相對平衡的狀態(tài)。加入圖像特征后,每一幀都把檢測與軌跡的歷史特征進(jìn)行相似度比較,將剔除匹配不上檢測的軌跡,能一定程度上解決目標(biāo)消失之后的誤跟蹤問題,進(jìn)而FP 指標(biāo)有一定程度的下降。由于FP 指標(biāo)的下降,在標(biāo)簽多伯努利預(yù)測以及更新的過程中將會防止很多誤檢測對算法精確度的影響,F(xiàn)N指標(biāo)也會隨之下降。IDs的減少有兩方面的原因:一方面是目標(biāo)重識別的加入,在目標(biāo)標(biāo)簽分配前,先進(jìn)行特征相似度比較,將已出現(xiàn)過的目標(biāo)分配舊標(biāo)簽;另一方面則是由于FN 的減少,標(biāo)簽多伯努利的標(biāo)簽估計和更新更加精確。
表3 MOT17上濾波方法比較Table 3 Comparison of filtering methods on MOT17 dataset
5.4.3 目標(biāo)數(shù)目變化明顯情況下方法比較
本文算法在數(shù)據(jù)集MOT17-05 上的跟蹤結(jié)果要優(yōu)于其他算法,MOT17-05數(shù)據(jù)集為移動相機(jī)在繁忙街道的拍攝,在拍攝時會出現(xiàn)人物對攝像頭進(jìn)行大面積遮擋的情況,會導(dǎo)致目標(biāo)數(shù)目變化明顯。同時在上文定性分析中分析了該算法對于漏跟情況的解決,避免了碎片化軌跡的造成。根據(jù)實驗結(jié)果可以看出,相對于其他四種方法,提出的算法在MOTA指標(biāo)上有著更好的表現(xiàn)。由于FN、FP、IDs三方面的均衡優(yōu)化,本文算法在MOT17 數(shù)據(jù)集上有著較好的效果,如表4所示。
表4 MOT17-05序列SDP檢測器各種方法比較Table 4 Comparison of various methods using SDP detector in MOT17-05
5.4.4 人數(shù)密集情況下方法比較
MOT17-04數(shù)據(jù)集為人數(shù)最密集的場景,在檢測器SDP下各對比算法的跟蹤結(jié)果如表5所示。FN指標(biāo)有所提高,可能是由于目標(biāo)數(shù)目過多,標(biāo)簽多伯努利總數(shù)很多,導(dǎo)致當(dāng)目標(biāo)消失,目標(biāo)存在概率衰減慢而導(dǎo)致誤檢為目標(biāo)仍然存在,已在上文定性分析中分析了該算法在密集場景下標(biāo)簽維持的能力。
表5 MOT17-04數(shù)據(jù)集SDP檢測器各種方法比較Table 5 Comparison of various methods using SDP detector in MOT17-04 dataset
5.4.5 算法消融實驗與時間復(fù)雜度分析
(1)算法消融實驗
消融實驗算法的結(jié)果如表6所示,可以看出:
表6 消融實驗對比Table 6 Comparison of ablation experiments
Our_1(傳統(tǒng)標(biāo)簽多伯努利新生模型),由于需要在固定位置建立新生模型,在每一時刻都會將預(yù)先定義的新生模型伯努利分量加入到算法的更新中,會極大地增加算法復(fù)雜度。即使真實新生目標(biāo)在初始幀就出現(xiàn),當(dāng)所定義的新生標(biāo)簽多伯努利分量距離新生目標(biāo)比較遠(yuǎn)時,仍不能判定該檢測為新生目標(biāo)檢測,進(jìn)而導(dǎo)致FN(漏檢數(shù))的上升。
Ours_2(將置信度低的檢測移除),本文低置信度的檢測框加入到標(biāo)簽多伯努利的算法中進(jìn)行預(yù)測更新,同時進(jìn)行消融實驗對比。由于直接去除了較多的檢測框,在時間復(fù)雜度上有較多的提升,但是在檢測精度上有所下降。
Ours_3(不使用目標(biāo)重識別),判斷出新的目標(biāo)新生后,會與最近30幀置信度高的檢測框進(jìn)行匹配,進(jìn)一步推出該檢測為哪個軌跡的檢測,從而推出標(biāo)簽重識別。因此在FN、FP指標(biāo)上幾乎毫無變動,IDs略微下降。由于加入了特征的提取與匹配,導(dǎo)致了FPS的下降。
(2)復(fù)雜度分析
在目標(biāo)跟蹤算法中,算法運行復(fù)雜度很大程度上是由視頻中每一幀的檢測數(shù)量影響的,在本文中定義平均每幀數(shù)量Avgdet來描述視頻中的檢測數(shù)量:
式中,Numdet為每個數(shù)據(jù)集總檢測數(shù),Numframe為每個數(shù)據(jù)集總幀數(shù)。
對SDP檢測器的檢測結(jié)果進(jìn)行算法時間復(fù)雜度分析,考慮到本文算法是基于模型推理的濾波算法,同時不需要進(jìn)行訓(xùn)練,在運算復(fù)雜度上具有一定的劣勢。
如表7 所示,當(dāng)人數(shù)較少時,標(biāo)簽多伯努利所對應(yīng)的高斯分量就比較少,因此計算量較少。當(dāng)人數(shù)急劇增加時,會導(dǎo)致算法復(fù)雜度的急劇上升,這也是今后科研需要解決的問題。
表7 不同人數(shù)下的時間復(fù)雜度分析Table 7 Time complexity analysis under different number of persons
5.4.6 算法結(jié)果
表8為提出算法在MOT17數(shù)據(jù)集上采用不同檢測器的跟蹤結(jié)果,可以看出,提出算法在檢測效果最差的DPM 到檢測效果最好的SDP 都有著較好的跟蹤結(jié)果。在相機(jī)固定的場景中和移動的復(fù)雜環(huán)境中,都具有較好的跟蹤結(jié)果。
表8 不同視頻中MOT17方法的比較Table 8 Comparison of MOT17 methods in different videos
本文提出了基于標(biāo)簽多伯努利的視頻多目標(biāo)跟蹤方法,在使用公共檢測器的基礎(chǔ)上,首先采用量測驅(qū)動新生模型的思想,解決傳統(tǒng)標(biāo)簽多伯努利新生模型收斂慢的問題;同時采用特征池的思想進(jìn)行目標(biāo)重識別,一定程度上減少了目標(biāo)標(biāo)簽切換次數(shù),從而使IDs減小。此外,借助于標(biāo)簽多伯努利的預(yù)測以及更新,可以有效地解決由于檢測器性能差而導(dǎo)致的目標(biāo)丟失問題,減少了碎片化軌跡。標(biāo)簽多伯努利濾波過程中,根據(jù)目標(biāo)狀態(tài)對標(biāo)簽進(jìn)行估計,對標(biāo)簽(航跡)的維持起到了很大的作用。最后通過實驗驗證,提出算法能夠在各種復(fù)雜場景下實現(xiàn)對多目標(biāo)較好的跟蹤。