尉晨陽(yáng),楊大為,張宇堃
(沈陽(yáng)理工大學(xué)信息科學(xué)與工程學(xué)院,沈陽(yáng)110159)
多目標(biāo)跟蹤技術(shù)日漸成為計(jì)算機(jī)視覺(jué)領(lǐng)域的重點(diǎn)研究對(duì)象,特別是單目二維視頻的多目標(biāo)跟蹤更是一個(gè)被廣泛研究的問(wèn)題,廣泛應(yīng)用于監(jiān)控、行為、動(dòng)作分析等與生活息息相關(guān)的領(lǐng)域。近年來(lái),目標(biāo)跟蹤的方法大多基于深度學(xué)習(xí)[1-4],根據(jù)學(xué)習(xí)特征進(jìn)行跟蹤,如表觀(guān)特征的深度學(xué)習(xí)、相似性度量的深度學(xué)習(xí)、高階特征匹配的深度學(xué)習(xí)等。這些方法雖然可以準(zhǔn)確跟蹤目標(biāo),提高算法的準(zhǔn)確性,但模型的過(guò)度復(fù)雜會(huì)導(dǎo)致跟蹤算法無(wú)法滿(mǎn)足實(shí)時(shí)性。
當(dāng)前流行的多目標(biāo)跟蹤方法大多遵循檢測(cè)跟蹤框架。隨著目標(biāo)檢測(cè)算法性能的不斷提高,遵循檢測(cè)跟蹤框架的跟蹤算法也得到了改進(jìn)。通常,被跟蹤對(duì)象的軌跡是在一個(gè)全局優(yōu)化方法下進(jìn)行批處理的,而批處理無(wú)法使目標(biāo)身份在每個(gè)時(shí)間段里進(jìn)行更新。更傳統(tǒng)的數(shù)據(jù)關(guān)聯(lián)技術(shù)如多假設(shè)跟蹤(MHT)和聯(lián)合概率數(shù)據(jù)關(guān)聯(lián)(JPDA)在頂級(jí)的在線(xiàn)跟蹤器或者批量跟蹤器中雖然有突出地位,但當(dāng)遇到對(duì)象分配具有較高的不確定性時(shí),這些方法的計(jì)算量會(huì)隨著跟蹤對(duì)象的數(shù)量呈指數(shù)級(jí)增長(zhǎng),在計(jì)算的可處理性和可實(shí)現(xiàn)上遇到困難。最近,Rezatofighi等人重新研究了JPDA 公式,想通過(guò)高效近似于JPDA 方式解決復(fù)雜性問(wèn)題。類(lèi)似地,Kim 等人通過(guò)使用目標(biāo)的外觀(guān)模型來(lái)完善MHT 方法,以實(shí)現(xiàn)最先進(jìn)性能。但是,這些方法仍然存在決策延遲問(wèn)題,不適合在線(xiàn)跟蹤。
針對(duì)這種現(xiàn)狀,在此提出一種實(shí)時(shí)與準(zhǔn)確平衡的跟蹤算法,將MOT 問(wèn)題視為一個(gè)簡(jiǎn)單的關(guān)聯(lián)問(wèn)題,旨在解決視頻序列幀之間的數(shù)據(jù)如何進(jìn)行關(guān)聯(lián)?;跈z測(cè)跟蹤框架的算法,使用卡爾曼濾波在圖像空間上對(duì)目標(biāo)進(jìn)行運(yùn)動(dòng)信息的建模,預(yù)測(cè)出跟蹤目標(biāo)的下一幀位置。研究打破了GIoU 僅作為損失函數(shù)應(yīng)用于檢測(cè)算法這一常規(guī)操作,首次嘗試將GIoU方法應(yīng)用于多目標(biāo)跟蹤算法中,讓其作為距離度量去計(jì)算邊界框之間重疊的相似性,從而生成關(guān)聯(lián)度量矩陣。再應(yīng)用匈牙利方法逐幀進(jìn)行數(shù)據(jù)關(guān)聯(lián),在MOT 基準(zhǔn)測(cè)試上進(jìn)行評(píng)估。
在多目標(biāo)跟蹤技術(shù)的研究當(dāng)中,基于整個(gè)視頻的檢測(cè)結(jié)果(批處理),已提出了多種方法。一種趨于普遍的做法是通過(guò)使用網(wǎng)絡(luò)流[5]、圖切[6]、MCMC[7]和最小分組[8]等方法,將檢測(cè)結(jié)果建模為圖形。而在逐幀輸入的情況下,匈牙利匹配[9]、貪心匹配[10]和遞歸神經(jīng)網(wǎng)絡(luò)[11]是序列預(yù)測(cè)(在線(xiàn)處理)的常用模型,對(duì)于使用的關(guān)聯(lián)度量函數(shù)包括了時(shí)空關(guān)聯(lián)等方法。時(shí)空關(guān)聯(lián)的可視化方法廣受研究,被提出的基本方法包括檢測(cè)之間使用交并比(IoU)或通過(guò)使用卡爾曼濾波器加入速度模型。速度模型也有通過(guò)遞歸神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)[12],通過(guò)結(jié)合頭/關(guān)節(jié)檢測(cè)器[13]、分割[14]、活動(dòng)識(shí)別[15]或關(guān)鍵點(diǎn)軌跡[16]等方法來(lái)實(shí)現(xiàn),但這也進(jìn)一步增加了分配成本的復(fù)雜性。最近出現(xiàn)的方法是利用物體檢測(cè)[17]或單目標(biāo)跟蹤[18],依賴(lài)其外觀(guān)特征的預(yù)訓(xùn)練邊界框回歸器,以在下一幀中使邊界框進(jìn)行回歸。
早期工作在最小成本流數(shù)據(jù)關(guān)聯(lián)框架中執(zhí)行端到端學(xué)習(xí)。最近,文獻(xiàn)[19]和[20]中所用的方法分別通過(guò)引入匈牙利匹配和聚類(lèi)公式的可微形式來(lái)實(shí)現(xiàn)端到端優(yōu)化。并行工程試圖在單一網(wǎng)絡(luò)中同時(shí)執(zhí)行目標(biāo)檢測(cè)、數(shù)據(jù)關(guān)聯(lián)和重新識(shí)別。特別是,Center Track 能夠只使用靜止圖像的增強(qiáng)來(lái)訓(xùn)練檢測(cè)器。這些涉及聯(lián)合檢測(cè)和跟蹤的方法在實(shí)時(shí)速度上提供了高性能,但需要較高的注釋成本。
許多在線(xiàn)跟蹤方法是通過(guò)建立目標(biāo)的外觀(guān)、運(yùn)動(dòng)等模型或通過(guò)在線(xiàn)學(xué)習(xí)建立一個(gè)全局模型,以幫助檢測(cè)與軌跡之間進(jìn)行關(guān)聯(lián)。當(dāng)只考慮一對(duì)一建模進(jìn)行匹配時(shí),可以使用全局最優(yōu)解,如Geiger 等人采用的匈牙利算法[21]。該算法分兩步進(jìn)行,先通過(guò)關(guān)聯(lián)相鄰幀上的檢測(cè)形成軌跡,其中的關(guān)聯(lián)矩陣是通過(guò)幾何和外觀(guān)線(xiàn)索結(jié)合所形成;然后再次使用幾何和外觀(guān)線(xiàn)索進(jìn)行軌跡之間的關(guān)聯(lián)。受此兩步關(guān)聯(lián)方法的啟發(fā),在此將基本模型關(guān)聯(lián)簡(jiǎn)化為單個(gè)階段。
以現(xiàn)有檢測(cè)結(jié)果為基礎(chǔ),提取其檢測(cè)對(duì)象的數(shù)據(jù)。隨后通過(guò)卡爾曼濾波對(duì)目標(biāo)的下一幀位置、運(yùn)動(dòng)等信息進(jìn)行預(yù)測(cè)。將得到的預(yù)測(cè)框與檢測(cè)框之間通過(guò)距離度量得到成本矩陣。最終利用匈牙利算法對(duì)成本矩陣進(jìn)行全局最優(yōu)選擇。
卡爾曼濾波是一種以狀態(tài)和觀(guān)測(cè)方程為基礎(chǔ),結(jié)合遞歸方法來(lái)預(yù)測(cè)目標(biāo)變化的方法。它由預(yù)測(cè)和校正兩部分組成。預(yù)測(cè)階段濾波器通過(guò)使用上一狀態(tài)信息,做出對(duì)當(dāng)前狀態(tài)的預(yù)測(cè);校正階段濾波器通過(guò)對(duì)預(yù)測(cè)階段獲得的預(yù)測(cè)值進(jìn)行修正,從而獲得更接近真實(shí)值的新預(yù)測(cè)值??柭鼮V波通過(guò)以下公式進(jìn)行預(yù)測(cè),計(jì)算過(guò)程如下:
預(yù)測(cè):
校正:
更新協(xié)方差估計(jì):
其中,xk 為真實(shí)值, 為卡爾曼估計(jì)值,Pk 為卡爾曼估計(jì)誤差協(xié)方差矩陣,為預(yù)測(cè)值,Pk'為預(yù)測(cè)誤差協(xié)方差矩陣,Kk 為卡爾曼增益, 為測(cè)量余量。為預(yù)測(cè)出目標(biāo)下一幀的位置、速度等跟蹤信息,此處為卡爾曼濾波創(chuàng)建一個(gè)運(yùn)動(dòng)模型。設(shè)每個(gè)目標(biāo)模型的狀態(tài)如下式所示:
其中y、w分別代表檢測(cè)目標(biāo)的中心橫坐標(biāo)、縱坐標(biāo),s、r 分別代表目標(biāo)框尺寸的大小和比例為卡爾曼濾波器預(yù)測(cè)軌跡下一幀觀(guān)測(cè)狀態(tài)的表示。
相似度矩陣選用廣義交并比GIoU(Generalized Intersection over Union)作為度量指標(biāo)進(jìn)行構(gòu)建,用于表達(dá)預(yù)測(cè)框和檢測(cè)框之間的重疊程度。在SORT 算法中使用交并比IoU 作為兩框之間的距離度量指標(biāo)。然而,該方法無(wú)法很好地表達(dá)出兩框之間的相鄰程度以及不相交程度,特別地,當(dāng)IoU=0 時(shí),無(wú)法反映出兩框之間的重合度。檢測(cè)框與預(yù)測(cè)框重疊情況如圖1 所示。
圖1 檢測(cè)框與預(yù)測(cè)框重疊情況示意圖
對(duì)于兩框而言,若使用IoU 作為距離度量的評(píng)價(jià)指標(biāo),上圖三種情況得到的數(shù)值結(jié)果是一樣的。但對(duì)于人直觀(guān)的感覺(jué)和后續(xù)相似度矩陣的產(chǎn)生而言,需要表達(dá)的效果應(yīng)有不同。亦即:選取IoU 作為距離度量指標(biāo),會(huì)因其無(wú)法精確反映出檢測(cè)框和跟蹤框之間的重合度大小而影響目標(biāo)跟蹤效果。
為克服IoU 的缺點(diǎn),在此使用GIoU 作為兩框之間的距離度量指標(biāo)。在以往的研究中,GIoU 作為回歸損失函數(shù)應(yīng)用于先進(jìn)的目標(biāo)檢測(cè)算法中(例如mask R-CNN、yolo v3 等),并在一定程度上改進(jìn)了檢測(cè)器的性能。作為距離度量,GIoU 方法保留IoU方法優(yōu)勢(shì)的同時(shí)還對(duì)IoU 算法進(jìn)行了擴(kuò)展,使得當(dāng)兩框之間完全重合的情況下,IoU 值與GIoU 值相等。但在GIoU 方法中,將對(duì)稱(chēng)區(qū)間范圍由[0,1]改為[-1,1],區(qū)間范圍的改動(dòng)會(huì)讓兩框無(wú)任何交集且距離無(wú)限遠(yuǎn)的時(shí)候取最小值。亦即:為了能夠更準(zhǔn)確表達(dá)出兩框之間的重合度,應(yīng)選取GIoU 方法。該方法關(guān)注兩框重疊區(qū)域的同時(shí),對(duì)非重合區(qū)域也進(jìn)行了最大程度的關(guān)注。GIoU 作為距離度量設(shè)計(jì)如下:
其中,A、B 表示為檢測(cè)框與跟蹤框,C 為兩框間的最小閉包區(qū)域面積。
對(duì)于分配指派問(wèn)題,此處采用匈牙利算法對(duì)相似度矩陣求解最優(yōu)分配。另外,對(duì)于目標(biāo)重疊小于閾值δGIoU的情況下,直接拒絕分配。
為充分體現(xiàn)本算法的實(shí)用性,在視頻數(shù)據(jù)集選擇上,選取了幾個(gè)具有挑戰(zhàn)性的行人跟蹤序列進(jìn)行試驗(yàn),如頻繁的遮擋、擁擠的場(chǎng)景、序列在不同的視角、攝像機(jī)運(yùn)動(dòng)等。首先,對(duì)2DMOT2015 中具有代表性數(shù)據(jù)集進(jìn)行跟蹤測(cè)試,如TUD-Stadtmitte 數(shù)據(jù)集視角低,相互遮擋嚴(yán)重,有完全遮擋的情況;TUDCampus 是側(cè)視行人的數(shù)據(jù)集;PETS09-S2L1 數(shù)據(jù)集主要挑戰(zhàn)在于目標(biāo)移動(dòng)在高速非線(xiàn)性模式下,目標(biāo)遮擋較為頻繁;ETH-Sunnyday 是在一個(gè)移動(dòng)的平臺(tái)上拍攝的數(shù)據(jù)集。
在評(píng)估方面,由于多目標(biāo)跟蹤性能僅通過(guò)一個(gè)分?jǐn)?shù)來(lái)判定好壞是不準(zhǔn)確的,故此采用了文獻(xiàn)[22]中定義的評(píng)估度量,以及標(biāo)準(zhǔn)的MOT 度量[23]。特別地,對(duì)于MOT17 數(shù)據(jù)集,新增一個(gè)度量標(biāo)準(zhǔn)Recall,用來(lái)表示正確匹配的檢測(cè)目標(biāo)數(shù)ground truth 給出的目標(biāo)數(shù)。
MOT15 閾值設(shè)置為:當(dāng)δGIoU與 IoU 取值同為 0.3時(shí)效果最好。實(shí)驗(yàn)結(jié)果如表1 所示。
表1 基于MOT15 數(shù)據(jù)集序列的跟蹤結(jié)果
實(shí)驗(yàn)選用的視頻數(shù)據(jù)測(cè)試也包含了另外兩個(gè)具有挑戰(zhàn)性的跟蹤基準(zhǔn),即MOT16 和MOT17。其中MOT16 使用的檢測(cè)器是DPM,視頻環(huán)境比MOT15中視頻環(huán)境更為復(fù)雜多變,人數(shù)增多、遮擋以及攝像機(jī)運(yùn)動(dòng)等問(wèn)題更為全面。而MOT17 視頻環(huán)境雖然同樣復(fù)雜,但它是在兩套公開(kāi)流行的檢測(cè)器(即FRCNN 和SDP)下進(jìn)行檢測(cè),相對(duì)于MOT16 中的檢測(cè)水平更加精確。
按照常規(guī),MOT16/MOT17 中包括MOT16/17-02、MOT16/17-04 等一系列序列,以下的評(píng)估度量值取值皆為MOT16/MOT17 所包含的序列度量值的平均值。
MOT16 的閾值設(shè)置為:當(dāng) δGIoU取值為 0.3,IoU取值為0.2 時(shí),兩者的跟蹤效果最為明顯。實(shí)驗(yàn)結(jié)果如表2 所示。
MOT17 的閾值設(shè)置為:對(duì)于SDP 檢測(cè)器,當(dāng)δGIoU取值為0.1,IoU 取值為0.3 時(shí),兩者的跟蹤效果最為明顯。對(duì)于FRCNN 檢測(cè)器,當(dāng)δGIoU與IoU 取值均為0.2 時(shí)效果最好。實(shí)驗(yàn)結(jié)果如表3 所示。
由上述實(shí)驗(yàn)結(jié)果可知,環(huán)境復(fù)雜性和檢測(cè)水平一般,如MOT15,結(jié)果會(huì)出現(xiàn)顯著提升,且跟蹤效果良好;環(huán)境復(fù)雜但檢測(cè)性能一般,如MOT16,結(jié)果也有所提升;當(dāng)環(huán)境復(fù)雜但檢測(cè)精度較高時(shí),如MOT17,跟蹤效果良好,無(wú)論FRCNN 還是SDP 檢測(cè)器,檢測(cè)出的MOTA 值均達(dá)到80%以上,在Recall 方面的表現(xiàn)也有明顯改善。
表2 基于MOT16 數(shù)據(jù)集序列的跟蹤結(jié)果
表3 基于MOT17 數(shù)據(jù)集序列的跟蹤結(jié)果
提出一種基于檢測(cè)的多目標(biāo)跟蹤算法,目的在于達(dá)到跟蹤準(zhǔn)確率和速率之間的平衡。利用最近檢測(cè)算法質(zhì)量的提高,檢測(cè)目標(biāo)的結(jié)果通過(guò)卡爾曼濾波進(jìn)行預(yù)測(cè),大致得到目標(biāo)下一幀的位置等信息。對(duì)于兩框之間關(guān)聯(lián)問(wèn)題,嘗試了以GIoU 作為距離度量應(yīng)用于MOT 算法中,用其進(jìn)行相似度矩陣的構(gòu)建,結(jié)合實(shí)驗(yàn)結(jié)果可知,作為距離度量的GIoU,在跟蹤問(wèn)題上產(chǎn)生了不錯(cuò)的效果。