張廣耀,宋純鋒*
(1.中國科學院大學 人工智能學院,北京 100049;2.中國科學院自動化研究所 智能感知與計算研究中心,北京 100190)
隨著互聯(lián)網(wǎng)視頻內容的快速增長,基于視頻的視覺內容分析成了計算機視覺中的一個熱門研究話題。多目標跟蹤是計算機視覺中的一個基礎任務,它的目的是在一段連續(xù)的視頻中關聯(lián)特定類別的同一身份的檢測框,從而形成多條軌跡。高度優(yōu)化的多目標跟蹤模型可以應用于視頻監(jiān)控、動作識別、自動駕駛等。
近些年來,隨著深度神經(jīng)網(wǎng)絡的應用,多目標跟蹤任務已經(jīng)得到了長足的發(fā)展。其中,基于兩步法的多目標跟蹤[1]在大部分的通用場景下表現(xiàn)優(yōu)異。然而,在極度擁擠的場景下,兩步法多目標跟蹤常常會失效。這是因為行人之間的互相遮擋會阻止行人的有效檢出以及有判別力的行人表觀特征提?。?]。
一些現(xiàn)有的工作試圖通過學習一個對于漏檢和有噪聲的行人表觀特征更加魯棒的跟蹤器[3]來減少漏檢和幀間關聯(lián)混淆,為了實現(xiàn)這一目標,這類工作一般會設計更加有效的跟蹤片段管理方式[3],或對軌跡進行全局的優(yōu)化[4];然而,此類模型需要利用未來幀的信息,因此無法滿足實際場景中在線跟蹤的要求。另一部分工作試圖解決漏檢問題以及對遮擋下的行人表觀特征去噪聲[2,5],本文的工作就屬于這一類別。在嚴重擁擠的情況下,行人的全身目標框之間互相遮擋嚴重,但行人頭部之間的遮擋相對較少,因此文獻[2]中提出了一種行人頭部跟蹤的模型HeadHunter-T 和基準數(shù)據(jù)集Head Tracking 21(HT21)。這一范式引起了人們的廣泛關注。然而,為了在被遮擋之后保有同樣的身份,文獻[2]中只考慮了行人頭部的表觀特征,并沒有考慮其他的跟蹤線索。直覺上來說,行人頭部表觀特征非常魯棒,易于提取,是良好的行人頭部跟蹤的線索;但本文中的實驗結果表明,行人頭部的表觀特征在擁擠場景下可能并不是最優(yōu)的,特別是在遠距離的情況下,行人頭部會出現(xiàn)嚴重的模糊,因此無法提取有效的表觀特征。實驗結果顯示,行人全身的表觀特征相較于行人頭部的表觀特征更加具有判別力,能夠更好地幫助行人頭部的跟蹤問題。為了能夠利用全身的表觀特征線索幫助行人頭部跟蹤,本文提出了一種融合全身表觀特征的行人頭部跟 蹤模型 HT-FF(Head Tracking with Full-body Features)。該模型首先檢測頭框,然后利用頭框動態(tài)生成全身框,最后利用全身框的表觀特征幫助頭框的跟蹤。為了能夠通過行人頭部的目標框(頭框)生成精準全身的目標框(全身框),受到R-CNN(Region-CNN)[6]的啟發(fā),本文利用一個回歸分支對使用固定比例生成的錨框(Anchor)進行修正,能得到更加精確的全身框。此外,為了能夠使全身的表觀特征更好地輔助行人頭部的跟蹤,本文設計了一種使用人體姿態(tài)估計生成熱力圖來引導身體表觀特征提取的模型。本文的HT-FF 模型在行人頭部跟蹤的基準數(shù)據(jù)集HT21 上取得了最好的結果;此外,通過對固定比例的全身框進行回歸,該模型還可以得到行人全身目標框的結果,進而在全身跟蹤的基準數(shù)據(jù)集上提交結果進行測試。
本文的主要工作包括:
1)設計了一種融合行人全身表觀特征的行人頭部跟蹤模型HT-FF,可以同時利用具有更好判別力的全身表觀特征線索和更少遮擋的行人頭部框運動線索。
2)為了能夠通過行人頭部的目標框來提取全身表觀特征,設計了一種從固定比例全身目標錨框進行回歸的動態(tài)全身目標框生成模型和用人體姿態(tài)估計引導去噪聲的表觀特征提取模型。
3)本文模型HT-FF 可以同時完成行人頭部跟蹤和行人全身跟蹤的任務,并在HT21 數(shù)據(jù)集上面取得了最好的性能。
多目標跟蹤的目的是在一段視頻序列中,檢測特定類別的所有目標框,并關聯(lián)同一身份的目標框,形成多條軌跡。為了評估多目標跟蹤模型的性能,最常用的指標是CLEAR Metric[7],其中MOTA(Multiple Object Tracking Accuracy)是一個綜合性的指標,這一指標綜合考慮了IDs(ID switch)、FP(False Positive)和FN(False Negative);另一個常見指標是IDF1(ID F1 Score)[8],它刻畫了成功匹配的軌跡在所有的軌跡真值的占比。在實踐過程中,MOTA 更多地會傾向于給檢測性能好的跟蹤器高分,IDF1 會傾向于給檢測和跟蹤性能都比較好的跟蹤器較高的分數(shù)。為了評估不同場景下不同類別多目標跟蹤算法的性能,有許多的數(shù)據(jù)集陸續(xù)被提出來。其中MOT Challenge[8]提供了行人跟蹤的一系列數(shù)據(jù)集。KITTI[9]和Waymo[10]提供了自動駕駛場景下的行人和車輛跟蹤的基準數(shù)據(jù)集。
多目標跟蹤問題的常見范式是兩步法,即“先檢測,后關聯(lián)”,總共分為四個基本步驟[11]:目標檢測、軌跡預測、親和矩陣計算、關聯(lián)結果生成。兩步法的經(jīng)典的工作有Deep Sort[1]、JDE(Joint Detector and Embedding)[16]、FairMOT(Fair detection and re-identification MOT)[17]和GM-Trakcker(Graph Matching Tracker)[18]等。Deep SORT[1]提供了一種非常簡單但是有效的方式:通過卡爾曼濾波[12]和深度行人重識別網(wǎng)絡分別進行運動預測和表觀特征提取,然后通過匈牙利匹配對軌跡進行關聯(lián)。后續(xù)的工作基本上是對于Deep SORT 的改進[13-18]:JDE 使用同一個骨干網(wǎng)絡生成目標檢測框和行人重識別的特征,使整個多目標跟蹤的算法獲得了接近實時的性能。FairMOT 分析了檢測和行人重識別問題之間的沖突,并提出了針對性的解決方案:降低表觀特征復雜度并使用基于Center Point 的目標檢測模型。GM-Tracker 將多目標跟蹤問題建模成一個圖匹配的問題,并且提出了一種可微分的多目標跟蹤算法。
在密集場景中,普通的多目標跟蹤模型常常會得到較差的跟蹤結果,這是因為行人之間的遮擋會導致很多的漏檢;此外,檢測得到的全身框之間的重疊會導致提取到的行人重識別特征存在很多噪聲。MOT20[19]是評估密集場景下的行人跟蹤的基準數(shù)據(jù)集。一些模型試圖在存在大量漏檢和表觀特征噪聲的情況下通過全局優(yōu)化[4]的方式優(yōu)化跟蹤結果;另一些模型試圖解決漏檢問題,以及對表觀特征進行去噪聲的處理[2,5]。在這之中,文獻[2]中設計了一種新的行人頭部跟蹤的范式,通過跟蹤密集場景中的遮擋較少的行人頭部,自然地解決了漏檢的問題。
文獻[2]中提供了行人頭部跟蹤的基準數(shù)據(jù)集HT21,該數(shù)據(jù)集共有4 段訓練集和5 段測試集,為了能夠和全身跟蹤的模型進行對比,HT21 中的部分訓練集和測試集是從MOT20 的數(shù)據(jù)中重新標注得到的。此外,文獻[2]中還提供了一種行人頭部跟蹤的模型HeadHunter-T,這是一種基于粒子濾波的速度模型和基于行人頭部的色彩直方圖的表觀特征的行人頭部跟蹤模型。
多目標跟蹤的目標是獲取特定類別的物體的多條軌跡。在行人頭部跟蹤的任務中,類別指的是行人的頭部。本文首先介紹通用行人頭部跟蹤的基本流程,然后介紹如何提取具有判別力的表觀特征。
2.1.1 行人頭部檢測
多種目標檢測器都可以用來檢測行人的頭部,比如Faster R-CNN[20]、RetinaNet[21]等。在這些 檢測中,CenterNet[22]是一種一階段的目標檢測器,這一檢測器可以利用DLA(Deep Layer Aggregation)[23]網(wǎng)絡作為骨干網(wǎng)絡。DLA網(wǎng)絡比較小的下采樣率以及CenterNet 一階段的特性使CenterNet 特別適合用來進行實時的行人頭部檢測。本文將會使用CenterNet 作為默認的行人頭部目標檢測模型。
2.1.2 幀間行人頭部關聯(lián)
第t幀的檢測框di∈Dt可以在第t幀使用CenterNet 檢出。為了簡化模型,本文使用了Deep SORT[1]中的通用流程,介紹如下。
為了建模同一物體在視頻中的時間連續(xù)性,本文使用了卡爾曼濾波[12]來建模行人頭部的運動。當新的一幀出現(xiàn)時,卡爾曼濾波可以預測過去的跟蹤在當前幀的位置。利用位置信息和表觀特征可以計算兩個親和矩陣m(1)和m(2),其中:
其中:dj是當前幀檢出的目標框的位置;yi是已跟蹤的目標的位置;是yi在各個方向上的標準差是 第k個行人在第t幀的表觀特征;為第i個檢測框的表觀特征??柭鼮V波在每一幀可以分為兩個步驟:預測和更新。預測時計算每一個Tracklet 在當前幀的位置;更新時先通過兩個親和矩陣進行匹配,然后將預測的位置和檢測得到的位置進行加權得到最終的位置預測。
為了能夠處理行人頭部消失和新的行人頭部出現(xiàn),本文設置了兩個閾值t1和t2。當m(1)(i,j) <t1或者m(2)(i,j) <t2時,認為新的目標出現(xiàn)。最終的親和矩陣設置為這兩個矩陣的加權求和m(i,j)=λm(1)(i,j) +m(2)(i,j),在計算得到最終的親和矩陣之后,對親和矩陣進行二分圖匹配可以得到最終的分配結果。如果一個已跟蹤的目標沒有被分配新的檢測框,則通過恒定的速度更新目標的位置。如果此目標在連續(xù)的Td幀都沒有檢測框分配,這一目標被認為是已經(jīng)離開了監(jiān)測區(qū)域并且將會被刪除。在本文的模型中,表觀特征和將使用全身的表觀特征進行計算。
盡管行人頭部檢測框表觀特征穩(wěn)定而且易于提取,但是實驗結果表明行人頭部框的表觀特征不具備足夠的判別力,這會損失行人頭部跟蹤的性能,特別是在遠距離的情況下。為了能夠得到更精確的跟蹤結果,本文嘗試了多種跟蹤線索,最后發(fā)現(xiàn)全身的表觀特征對行人頭部跟蹤來說是一個具有良好判別力的特征。
然而,利用全身的表觀特征進行行人頭部的跟蹤具有兩個難點:如何利用頭框得到精準的全身框;如何從嚴重遮擋的行人全身框中提取去噪聲的表觀特征。針對這兩個問題,本文接下來將詳細介紹所提出的模型。
2.2.1 錨框引導的動態(tài)全身目標框生成
相較于頭框的特征,全身框的特征更富有紋理而且對距離不敏感,這使它成為行人頭部跟蹤的合適的特征。然而,在擁擠場景下檢測全身框十分困難,這是因為全身框彼此之間的相互遮擋帶來了大量的漏檢[2],而行人頭部之間的遮擋較少,漏檢也因此更少,這啟發(fā)了本文利用頭框來動態(tài)地生成全身框。
為了使生成的目標框更加精確,本文采用了兩階段法來得到全身框:第一階段,利用固定的比例生成全身錨框(Anchor);第二階段,利用R-CNN[6]的回歸分支對全身錨框進行修正,進而得到一個更精確的全身框的預測。實驗表明,相較于單純的用固定的比例生成全身框,利用R-CNN 的回歸分支可以精確地修正全身框。
給定第t幀的頭框檢測結果dj∈Dt,dj=(xj,yj,wj,hj),其中:xj,yj表示頭框左上角的坐標,wj,hj表示頭框的寬度和高度。本文用表示用固定比例生成的錨框,固定的比例設置為:
在得到這個錨框之后,本文從圖像中裁剪出全身框,將它調整到128×224 大小之后輸入神經(jīng)網(wǎng)絡預測回歸值。為了提升速度,本文采用Resnet-18 作為錨框修正的骨干網(wǎng)絡,在將裁剪出的圖像界入Resnet-18 之后經(jīng)過一個全連接層可以得到邊框回歸的值。與R-CNN[6]的做法相同,本文利用網(wǎng)絡輸出的回歸值對固定比例生成的錨框進行修正,可以得到最終預測的精確的全身框。
2.2.2 去噪聲的全身表觀特征提取
表觀特征是行人頭部跟蹤問題中十分重要的線索,精確的表觀特征是行人頭部被遮擋后保持身份的關鍵線索。然而,在擁擠情形下,行人的全身框之間會存在相互覆蓋的問題,這導致提取的表觀識別的特征存在大量噪聲。為了解決這一問題,本文利用了人體姿態(tài)估計[24]的結果來對表觀特征進行去噪聲,人體姿態(tài)估計為找到行人未被遮擋的部分提供了天然的掩碼。
本文使用了Alpha-pose[25]來預測人體姿態(tài)特征點。使用Alpha-pose 可以在每個行人的全身框中得到18 個姿態(tài)關鍵點的位置和置信度。本文認為低置信度的產(chǎn)生來源于遮擋,因此設置了一個閾值s來篩除掉置信度過低的關鍵點,對第t幀第m個行人目標框,最后只留下關鍵點pi∈Ptm。為了將姿態(tài)估計的結果映射到原圖,本文以行人關鍵點的預測為中心,生成二維的高斯分布的熱力圖。生成的熱力圖記為Htm。每一個熱力圖可以通過下采樣來保持與特征圖大小一致。生成二維的高斯分布的熱力圖的方式如下:
其中,σ是超參數(shù)供后續(xù)調整。
生成的熱力圖表征了原圖中的可見的未被遮擋的部分,通過下采樣可以得到與特征圖大小相同的熱力圖。本文采用了雙線性插值的方式對熱力圖進行下采樣,使熱力圖和特征圖采樣為同樣大小。本文希望下采樣之后的結果可以幫助引導生成去噪聲的行人重識別特征。如圖1 所示,首先圖像通過Resnet-50[26]網(wǎng)絡得到行人重識別的特征圖Ftm,對特征圖進行平均池化操作可以得到全局的行人重識別特征fg,本文將下采樣之后的熱力圖Htm與Ftm相乘,然后進行平均池化可以得到姿態(tài)引導的行人重識別特征fp。實驗結果表明,同時考慮這兩個特征將帶來最好的效果。連接這兩個特征可以得到fcat,即本文所使用的姿態(tài)引導的行人重識別的全身特征。
圖1 本文模型的流程Fig.1 Flow of the proposed model
Head Tracking 21(HT21)[2]是擁擠場景下行人頭部跟蹤的基準數(shù)據(jù)集。該數(shù)據(jù)集中,每一幀的平均頭部數(shù)量達到了178,因此非常適合評估擁擠場景下的行人頭部跟蹤。與MOT Challenge[8]的其他數(shù)據(jù)集一樣,該測試集的標注也不開放,因此只能在官方提供的服務器上提交測試。與HT21 相同,本文采用了誤檢數(shù)(False Positive,F(xiàn)P)和漏檢數(shù)(False Negative,F(xiàn)N)來評估檢測性能指標,并利用IDs(ID switch)數(shù)量來評估多目標跟蹤器跟蹤性能指標;此外,為了綜合評估檢測和跟蹤性能,還使用了MOTA[7]和IDF1[8]對模型進行綜合評估。為了評價動態(tài)全身框生成的性能,本文不僅采用了平均精度均值(mean Average Precision,mAP)指標,還計算了動態(tài)全身框生成的AP50 和AP75,這是因為AP50 和AP75只有在預測值與真實值IOU 大于0.5 和0.75 時才作為一次命中,因此能夠更準確地刻畫所生成檢測框的緊致程度。
本文使用了DLA-34[23]作為頭部檢測器的骨干網(wǎng)絡,模型的參數(shù)首先在Crowdhuman 數(shù)據(jù)集[27]進行訓練作為初始化,然后在Head Tracking 21 的訓練集上面訓練了30 個epoch進行微調,模型的批處理大小設置為12。對于姿態(tài)引導的行人重識別網(wǎng)絡,采用Resnet-50 作為骨干網(wǎng)絡,使用Alphapose[25]生成人體姿態(tài)估計結果。本文在CrowdHuman 數(shù)據(jù)集訓練動態(tài)行人全身框生成網(wǎng)絡,這是因為CrowdHuman 數(shù)據(jù)集有對同一個人的行人頭部和全身框的標注。為了加快推理,本文使用Resnet-18 作為R-CNN 的骨干網(wǎng)絡。使用Adam[28]訓練器并且采用0.000 1 的學習率訓練8 個epoch 之后收斂。在跟蹤模型中,本文發(fā)現(xiàn)λ=0 可以得到最好的結果,這意味著在親和矩陣的計算中,只使用表觀特征就可以得到最好的結果。這是因為行人的頭部位置波動較大,因此在采用較好的位置閾值之后就無需再使用位置作為關聯(lián)的親和矩陣的計算。本文設置Td=30 來得到最佳的關聯(lián)的性能。
為了驗證全身特征相較于行人頭部特征的優(yōu)越性,本文設計了以下消融實驗:使用行人頭部的行人重識別特征來作為跟蹤的線索。此外,使用全身特征引入了兩個模塊:動態(tài)的全身框的生成和姿態(tài)引導的行人重識別特征生成。本文分別對這兩個模塊進行了消融實驗。
3.3.1 全身特征與行人頭部特征
如表1 所示,與使用行人頭部的行人重識別的特征相比,HT-FF 使用了全身的重識別特征,有更少的IDs,意味著本文的模型更不容易丟失同一身份的目標框。盡管行人頭部的表觀特征更加符合直覺,本文的實驗結果表明全身的表觀特征更加魯棒,能夠在困難的跟蹤場景下保有身份信息。
表1 消融實驗結果Tab.1 Ablation experimental results
3.3.2 姿態(tài)引導的表觀特征
如表1 所示,不使用姿態(tài)作為引導,而是直接提取的表觀特征的跟蹤模型獲得了更差的跟蹤結果,這是因為在密集場景下,行人的全身框之間存在大量的相互覆蓋,進而給行人重識別帶來了更多噪聲,使用姿態(tài)可以更好地消除這些噪聲,使模型關注行人的可見區(qū)域。
3.3.3 動態(tài)生成全身框
如表1 所示,采用固定比例生成的全身框相較于動態(tài)的全身框生成的結果也會帶來更多的IDs。在接下來的一節(jié)中,本文將會詳細講述固定比例生成全身框的模型,并且展示動態(tài)生成行人全身框相較于固定比例生成全身框在生成精度上面的優(yōu)越性。
動態(tài)生成全身框的模塊首先會通過一個固定的比例來生成一個錨框,然后通過R-CNN 的回歸分支對錨框進行修正。本文報告了所提出的模型在CrowdHuman 驗證集上的檢測精度。為了驗證本文使用的回歸分支對于行人全身框的生成確實有幫助,本文也測試了通過固定比例生成的目標框在CrowdHuman 驗證集上的精度。經(jīng)過調優(yōu),本文發(fā)現(xiàn)如下的固定比例生成的全身框具有最好的檢測精度:
如表2 所示,本文設計的動態(tài)生成全身框的模型可以輸出更加精確的目標框,固定比例生成全身框的模型得到的MAP 值低于動態(tài)生成的MAP 值。此外,本文模型在AP75 上遠高于固定比例模型,AP75 只有在預測與GT(Ground Truth)的交并比(Intersetion Over Union,IOU)大于0.75 時才算命中,這意味著本文模型可以生成緊致地包圍身體邊緣的全身框。
表2 固定比例生成全身框與動態(tài)生成全身框的精度對比 單位:%Tab.2 Precision comparison between fixed ratio full-body bounding box generation and adaptive full-body bounding box generation unit:%
與其他MOT challenge 上的數(shù)據(jù)集相同,HT 21 的測試集并不公開,因此只能提交到服務器進行測試。如表3 所示,本文模型在MOTA 和IDF1 上超過了對比模型,說明本文模型相較于前人模型更有效。
表3 不同模型在Head Tracking 21測試集上的結果對比Tab.3 Results comparison of different models on Head Tracking 21 test set
表3 為使用不同的行人頭部檢測模型的結果,這可能給MOTA 和IDF1 的指標帶來不公平的對比。為了說明融合全身信息的行人頭部跟蹤模型的有效性,本文使用了同樣的檢測結果輸入不同的跟蹤器中。與文獻[2]相同,本文在訓練集上對這些結果進行對比。如表4 所示,在使用同樣的檢測結果的前提下,本文模型超過了SORT(Simple Online and Realtime Tracking)[29]和HeadHunter-T[2],驗證了本文設計的跟蹤模型的有效性。
表4 使用同樣的行人頭部檢測結果的跟蹤結果Tab.4 Tracking result based on same detection results
3.7.1 動態(tài)生成全身框
為了直觀展示本文模型子模塊的有效性,在圖2 可視化了動態(tài)的全身框生成結果??梢钥吹?,本文模型可以生成緊致地包圍身體邊緣的目標框。
圖2 動態(tài)生成全身框結果Fig.2 Results of dynamic full-body bounding box generation
3.7.2 人體姿態(tài)估計熱力圖的可視化
本文可視化了人體姿態(tài)估計得到的熱力圖,如圖3 所示,熱力圖很好地刻畫了全身框在遮擋情況下的可見區(qū)域。
圖3 姿態(tài)估計熱力圖的可視化結果Fig.3 Visualization results of pose estimation heatmaps
3.7.3 行人頭部跟蹤結果
此外,圖4 將HeadHunter-T[2]模型與本文模型的結果進行了可視化。由于HeadHunter-T 只利用了頭框的表觀特征作為特征,可以看到,在距離較遠的情況下,HeadHunter-T 更容易發(fā)生ID switch,因而跟蹤結果較差。
圖4 本文模型與HeadHunter-T對比(圖中幀選自序列HT21-01)Fig.4 Comparison of the proposed model and HeadHunter-T(frames on image are selected from sequence HT21-01)
3.7.4 全身跟蹤結果
圖5 展示了本文設計的模型在MOT20 上提交的結果,MOT20 是密集場景下行人全身跟蹤的基準數(shù)據(jù)集,利用頭框動態(tài)生成全身框,可以得到全身跟蹤的結果。
圖5 本文模型在MOT20測試集上的結果Fig.5 Results of the proposed model on MOT20 test set
本文提出了一種新型的融合全身表觀特征的行人頭部跟蹤模型HT-FF,設計了動態(tài)的全身檢測框生成網(wǎng)絡和姿態(tài)引導的表觀特征提取網(wǎng)絡,實現(xiàn)了利用行人全身檢測框內的全局表觀特征為線索進行行人頭部的跟蹤。所設計的模型在行人頭部跟蹤的基準數(shù)據(jù)集上驗證了有效性并達到了當前最好的效果。
本文提出的全身表觀特征引導的行人頭部跟蹤HT-FF與傳統(tǒng)模型的本質區(qū)別是使用了不同部件的位置與特征線索分別建模運動與表觀特征,這是行人多目標跟蹤中的一個新的范式。在未來,將會探究如何找到更全面的線索,以及設計如何自動發(fā)掘這些有用線索的機制。