李 震, 毛麗娟, 盛 斌, 孟 夏
(1. 上海體育學(xué)院 體育教育訓(xùn)練學(xué)院,上海 200438;2. 上海交通大學(xué) 計算機科學(xué)與工程系,上海 200240)
足球比賽中運動員的體能是影響運動表現(xiàn)的主要因素,如何對比賽中運動員移動距離進(jìn)行分析記錄是揭示運動員體能特征的關(guān)鍵。相對徑賽項目,足球比賽中運動員的活動方式多種多樣,無明顯的規(guī)律性。基于足球比賽中多影響因素的復(fù)雜性,許多研究試圖通過評估比賽中運動員跑動的距離和強度的變化對體能的要求進(jìn)行闡述[1-3]。早期足球比賽中的體能分析以時間-運動分析法(time-motion analysis)為主[1-2,4-5]。隨著科技的進(jìn)步,新的評價足球比賽中運動員跑動距離的方法開始出現(xiàn),其中包括了多角度錄像跟蹤系統(tǒng)[3,6-8]和GPS系統(tǒng)[9-11]。
1990年以后,影像處理跟蹤系統(tǒng)開始出現(xiàn),它是通過采取固定的攝像頭覆蓋整個球場記錄影像數(shù)據(jù)的[12]。該跟蹤系統(tǒng)最初僅僅是通過場地標(biāo)記后的x、y軸獲取運動員的位置,并通過相對x、y軸的平移計算移動距離。首個商業(yè)化的跟蹤系統(tǒng)Amisco在1998年由Vediosports公司發(fā)布,之后通過影像處理的跟蹤系統(tǒng)得到了快速發(fā)展。目前,跟蹤系統(tǒng)多采用調(diào)頻連續(xù)波(frequency modulated continuous wave,F(xiàn)MCW)技術(shù)進(jìn)行位置跟蹤,其中最具代表性的是GPS系統(tǒng)。該系統(tǒng)基于運動員身上攜帶的信號發(fā)射器,通過場外特定系統(tǒng)進(jìn)行信號接收確定運動員的位置。Edgecomb等[10]對GPS系統(tǒng)和基于視頻跟蹤系統(tǒng)進(jìn)行比較發(fā)現(xiàn),在一場比賽中,GPS系統(tǒng)統(tǒng)計運動員移動距離的誤差為4.8%,而錄像跟蹤系統(tǒng)的誤差為5.8%。盡管FMCW系統(tǒng)的精確性更高,接收速度更快,但國際足聯(lián)規(guī)定它只能用于訓(xùn)練,不能用于正式比賽。本文從提高錄像跟蹤系統(tǒng)的目標(biāo)跟蹤準(zhǔn)確性出發(fā),提出了一種新的算法,分析每名運動員的動作行為和相互關(guān)系,以提高對每位隊員位置錄像定位跟蹤的精確性,從而達(dá)到準(zhǔn)確分析運動員活動方式及距離的目的。
在計算機視覺領(lǐng)域,目標(biāo)跟蹤是一個熱點研究領(lǐng)域,然而優(yōu)秀的算法非常稀少。這是因為跟蹤目標(biāo)的外形、運動狀態(tài)、背景、遮擋等方面的變化范圍太廣泛,既要保證處理的速度,又要保證算法的強大性及準(zhǔn)確性非常困難。在早期,跟蹤算法未與目標(biāo)檢測等結(jié)合,導(dǎo)致跟蹤目標(biāo)在遮擋丟失之后很難跟蹤準(zhǔn)確。經(jīng)過改造的背景差分方法可以在背景變化非常微小的情況下準(zhǔn)確識別目標(biāo),但要在視頻中連續(xù)識別目標(biāo)才能達(dá)到跟蹤的效果。由于足球比賽場地的開闊性及室外場地的特性,陽光、云層導(dǎo)致球場背景變化幅度很大,使得該算法在這種場景下的效果一般。在Tracking-Learning-Detection算法[13]出現(xiàn)后,計算機跟蹤算法中融入實時目標(biāo)檢測的算法,使得跟蹤精確度和抗遮擋能力進(jìn)一步加強。目前,目標(biāo)跟蹤算法比較主流的思想還是基于目標(biāo)檢測跟蹤,而在以目標(biāo)為中心的基礎(chǔ)上提取正樣本,然后基于目標(biāo)周邊的圖像提取負(fù)樣本,即正樣本標(biāo)簽為1,負(fù)樣本標(biāo)簽為0。標(biāo)記正負(fù)樣本方法的局限性在于無法區(qū)分負(fù)樣本的權(quán)重,因為負(fù)樣本統(tǒng)一為0的情況下將離目標(biāo)遠(yuǎn)處的樣本和近處的樣本同等對待:離目標(biāo)越近,權(quán)重就越接近1;離目標(biāo)越遠(yuǎn),就越接近0。核化相關(guān)濾波器算法(kernelized correlation filter,KCF)[14]就采用了這種方法,該標(biāo)記方法相對簡單地定義負(fù)樣本為0有更好的效果。KCF算法采用快速傅里葉變換等傅式空間的操作,能大幅提高運算速度。其測試樣本集時通常采用的方法是最小二乘法:
(1)
式中:ω為權(quán)重系數(shù)(列向量),可通過最小二乘法求解;λ用于控制系統(tǒng)的結(jié)構(gòu)復(fù)雜性,即VC維以保證分類器的泛化性能。
最小二乘法能夠做到快速處理信息,同時結(jié)合貝葉斯方法不斷地用新的觀測值和信息予以修正:
(2)
式中:事件A的概率為P(A);事件B的概率為P(B);事件B已發(fā)生條件下事件A的概率為P(A|B);事件A發(fā)生條件下事件B的概率為P(B|A)。
將目標(biāo)跟蹤問題看作一個對目標(biāo)可能位置的概率估計問題,預(yù)測跟蹤框(bounding-box)的位置。在KCF算法基礎(chǔ)上進(jìn)行改進(jìn)的Hierarchical Convolutional Features算法[15],即CF2算法,結(jié)合了KCF運算快速的優(yōu)點,并且采用深度學(xué)習(xí)框架來提取特征,進(jìn)一步提高了跟蹤精度。
在足球錄像跟蹤系統(tǒng)中采用的跟蹤算法,必須要具有以下特點:①有一定的跟蹤速度,對于單目標(biāo)而言,TLD算法[13]的處理速度為28幀/s,而應(yīng)用到針對22個球員和球的多目標(biāo)跟蹤時,它的處理速度還遠(yuǎn)遠(yuǎn)達(dá)不到系統(tǒng)的要求。②對于多目標(biāo)跟蹤而言,算法需要對多個目標(biāo)同時進(jìn)行跟蹤,且在目標(biāo)相互接近時的干擾容易使機器學(xué)習(xí)算法學(xué)習(xí)到錯誤的負(fù)樣本,因此,相似干擾對多目標(biāo)跟蹤的效果也非常顯著。Henriques等[14]提出的KCF算法雖然在速度上有了很大提升,且在同樣的測試集上,準(zhǔn)確率高于struck和TLD,但它也存在一定的缺點,即運動過程中出現(xiàn)的大量遮擋過程不可避免,在多目標(biāo)比較相似時會出現(xiàn)一定的漂移。因此,本文采用結(jié)合了KCF算法和深度學(xué)習(xí)的CF2算法,并將KCF中的采樣部分替換為卷積神經(jīng)網(wǎng)絡(luò)(CNN)[16]特征,以提高跟蹤精度。結(jié)合KCF算法以及深度學(xué)習(xí)改進(jìn)的CF2算法,針對足球比賽視頻的特殊情況,將算法擴(kuò)展成了多目標(biāo)跟蹤的算法,并且結(jié)合了多視角的優(yōu)勢,利用多視點采集的信息進(jìn)一步提高對球員跟蹤的精準(zhǔn)度以及抗遮擋能力。
對于比賽中的球而言,其在球場中顏色固定,形狀也并不會因為旋轉(zhuǎn)而改變,相對背景也有著較好的分離性和辨識度。因此,跟蹤足球的難度不大。對于足球運動員而言,情況則會發(fā)生改變。足球運動員在足球賽場上并不是一個剛體目標(biāo),他會有許多不同的動作與狀態(tài),導(dǎo)致跟蹤過程中其形態(tài)不斷變化。由于球員并不總是朝向某一個方向,因此,需要考慮到球員360°旋轉(zhuǎn)體態(tài)與姿勢問題。早年的目標(biāo)跟蹤算法,由于缺乏機器自我學(xué)習(xí)的特性,對于實際的可形變物品的跟蹤一直不能很好地進(jìn)行。后來采用機器學(xué)習(xí)的方法才得以改進(jìn),此類方法對于物品的形變、背景的變化有著較好的穩(wěn)定性。由于足球比賽數(shù)據(jù)的處理與分析需要一定的時效性,以及足球比賽中錄像跟蹤系統(tǒng)賽后即時提供數(shù)據(jù)的實踐需求,作為整個系統(tǒng)最消耗處理時間的部分,目標(biāo)跟蹤算法的處理速度顯得格外重要,并且必須足夠準(zhǔn)確,因此單目標(biāo)跟蹤主要采用了KCF算法。從速度與準(zhǔn)確度進(jìn)行綜合考慮,KCF算法是最好的選擇。本算法跟蹤效果好、速度快,符合快速開發(fā)的要求。
2.1 一般目標(biāo)跟蹤算法的步驟 (1) 在It幀中,在當(dāng)前位置Pt附近采樣,訓(xùn)練一個回歸器。該回歸器能計算一個小窗口采樣的響應(yīng)。
(2) 在It+1幀中,在前一幀位置Pt附近采樣,用前述回歸器判斷每個采樣的響應(yīng)。
(3) 將響應(yīng)最強的采樣作為本幀位置Pt+1。
2.2 KCF算法步驟 訓(xùn)練采用脊回歸,設(shè)訓(xùn)練樣本集為(xi,yi),則其線性回歸函數(shù)為
f(xi)=ωTxi(3)
則該算法的優(yōu)化可通過最小二乘法求解
λ‖ω‖2
(4)
其矩陣形式為
λ‖ω‖2
(5)
其中X的每一行分別表示一個向量,y是列向量。令導(dǎo)數(shù)為0,可得
ω=(XTX+λI)-1XTy
(6)
式中,I為單位矩陣。
KCF中所有的訓(xùn)練樣本都是基于目標(biāo)樣本循環(huán)位移得到的,如圖1所示采樣窗口的位移。
圖1 樣本循環(huán)位移Figure 1 Samples’cycling displacement
(7)
經(jīng)過一系列變換,可得:
(8)
而根據(jù)傅式空間變換,有如下公式:
式中,F(xiàn)-1為反變換。
單視角下的多目標(biāo)跟蹤在一定程度上能夠緩解不同球員的遮擋性問題。在實際運用中會由于足球比賽的同場對抗性而出現(xiàn)多人擁擠在狹小空間的畫面內(nèi),球員之間相互遮擋,個人與場地的區(qū)分不夠明顯。因此,僅用單視角的比賽視頻實時跟蹤會大大降低跟蹤的準(zhǔn)確性。基于此,采用了多視角下(多攝像頭)的跟蹤方式,一旦在某個方向看上去的視頻中球員出現(xiàn)遮擋,則通過另外的角度跟蹤隊員。多視角只是單視角比賽跟蹤的一種擴(kuò)展,通過avgPoint方法把2個視角的數(shù)據(jù)結(jié)合起來,可以提高跟蹤的準(zhǔn)確度,進(jìn)一步加強跟蹤的穩(wěn)定性。研究所采用的多個視角如圖2所示。
圖2 不同視角同時刻的球員爭搶Figure 2 Different viewpoints of seizing control at same moment
在圖2(a)視角中,隊員在畫面里產(chǎn)生了重疊,即便跟蹤算法能夠準(zhǔn)確跟蹤,也是跟蹤在距離攝像機較近的隊員身上,因此會導(dǎo)致一定的誤差。由圖2(b)和圖2(c)中可見,在這2個視角下球員不會產(chǎn)生重疊。因此,本文利用avgPoint方法,基于多視角的優(yōu)勢,將遮擋情況進(jìn)行抵消(圖3)。
圖3 多視角綜合定位Figure 3 Comprehensive positioning in multi-view
由圖3可見,在進(jìn)行了二維平面坐標(biāo)轉(zhuǎn)換之后,采用了與距離成反比例的加權(quán)平均法,用以整合多視點跟蹤坐標(biāo)數(shù)據(jù),因此計算球員加權(quán)平均位置的算法流程如下所示:
for 每個視角視頻中的A球員位置Pangle;
計算得到攝像機離A球員的距離:
至此,可以得到經(jīng)過加權(quán)平均之后的球員坐標(biāo)位置,該位置是二維平面圖上球員的最終位置,從而得出運動員在場上的精確位置。
單視角下多目標(biāo)跟蹤采用的KCF算法的最大優(yōu)點是處理速度快,其較高的準(zhǔn)確率能夠滿足多目標(biāo)跟蹤的需要;但是,僅依靠普通機器學(xué)習(xí)方法,利用圖像的RGB信息處理遮擋問題,作用有限,對于多目標(biāo)重疊、遮擋嚴(yán)重的情況,跟蹤準(zhǔn)確率會有所降低。因此,本文采用基于深度學(xué)習(xí)的目標(biāo)跟蹤算法CF2進(jìn)一步優(yōu)化多目標(biāo)跟蹤的準(zhǔn)確率。
通常的圖像檢索方法是采用HOG特征,KCF便是從灰度特征轉(zhuǎn)變到采用HOG特征進(jìn)行優(yōu)化的。由于算法跟蹤框為矩形,勢必會包括其他像素點,當(dāng)追蹤框內(nèi)的目標(biāo)外觀變化較大時,顏色特征與模型差異變大,背景可能會造成干擾,容易導(dǎo)致跟蹤失敗。在目標(biāo)檢測領(lǐng)域中,采用卷積神經(jīng)網(wǎng)絡(luò)(CNN)[16]提取的物體特征具有較好的性能,因此,將CNN引入Tracking領(lǐng)域中。
CF2算法的基本跟蹤框架即KCF,而主要區(qū)別是把KCF中使用的HOG特征換成了深度卷積神經(jīng)網(wǎng)絡(luò)。隨著深度增加,使用CNN提取的特征,其語義信息加強,但空間信息減弱。因此,在CF2算法中,將CNN的3、4、5層卷積層作為特征,本算法中使用的特征和其他常用CNN算法不同,沒有使用全連接層輸出作為特征提取層,而是只使用了中間3層,然后對3個置信圖融合得到最終目標(biāo)位置。
在該算法中,相比于KCF算法,添加5層卷積層。首先利用第1幀的已知數(shù)據(jù)進(jìn)行采樣,得到對應(yīng)的Conv3、Conv4、Conv5的目標(biāo)位置的特征,訓(xùn)練得到3個相關(guān)濾波器。在之后的第t幀,以t-1幀的預(yù)測結(jié)果為中心,獲取該位置的Conv3、Conv4、Conv5,將特征做插值并通過3個相關(guān)濾波器預(yù)測出二維的置信分?jǐn)?shù),從Conv5層的濾波器結(jié)果開始,算出confidence score上最大的響應(yīng)點,作為第t幀時預(yù)測的位置,之后以該位置約束下一層的搜索范圍,逐層向下做更細(xì)粒度的位置預(yù)測,以最低層的預(yù)測結(jié)果作為最后輸出。因此,CF2跟蹤算法基本流程如下所示:input 目標(biāo)初始位置p0
output 估測跟蹤目標(biāo)位置pt=(xt,yt)
for 視頻序列的每一幀圖像:
以第t幀跟蹤目標(biāo)(xt-1,yt-1)為中心搜索窗口;
提取具有空間信息的卷積特征;
利用公式插值計算;
for 每層卷積層的特征:
計算置信度fi;
end
粗略估計在響應(yīng)圖集{fi}中的新位置(xi,yi) ;
設(shè)置新的pt=(xt,yt)為中心;
用插值提取卷積特征;
for 每個卷積層:
end
end
該算法是基于KCF算法的跟蹤框架進(jìn)行改進(jìn)的,因此也繼承了KCF算法的優(yōu)點,如相比其他深度學(xué)習(xí)算法,處理速度大大提升。由于使用了深度學(xué)習(xí)框架優(yōu)化特征選擇,具有更明顯的特征。因此,效果也較為出眾;在跟蹤單一目標(biāo)時不會出現(xiàn)漂移現(xiàn)象,并且及時調(diào)整的跟蹤框位置也能較好地在后續(xù)幀圖中對目標(biāo)進(jìn)行精準(zhǔn)跟蹤。
5.1 跟蹤速度測試 運用KCF算法和CF2算法對單目標(biāo)和多目標(biāo)(以跟蹤3個目標(biāo)為基準(zhǔn))跟蹤的信息處理速度進(jìn)行測試,設(shè)備包括顯卡(英偉達(dá)1080)、CPU(i7-6700k)。測試實驗錄像視頻時長4 s,共100幀,測試結(jié)果如下:進(jìn)行單目標(biāo)跟蹤時,KDF方法消耗20 s,平均每幀為0.2 s,處理1 s比賽視頻需要5 s;CF2方法消耗93 s,平均每幀0.93 s,處理1 s比賽視頻需要23 s。進(jìn)行多目標(biāo)跟蹤時,KDF方法消耗22 s,平均每幀為0.22 s,處理1 s比賽視頻需要5.5 s;CF2方法消耗178 s,平均每幀1.78 s,處理1 s比賽視頻需要44.5 s。
從測試結(jié)果看,在單目標(biāo)跟蹤時,KCF的跟蹤速度具有絕對性的優(yōu)勢,因為不需要加載權(quán)重,且計算次數(shù)較少,同時與兩者所在的平臺有關(guān)。在單目標(biāo)與多目標(biāo)的速度測試對比中發(fā)現(xiàn),由于CF2算法屬于深度學(xué)習(xí)算法,對于計算機性能要求較高且計算次數(shù)較多,因此,速度顯著慢于KCF算法。隨著計算機技術(shù)的更新及硬件配置的升級,輔之GPU加速、并行運算等技術(shù),CF2算法的速度有望得到大幅提高。
5.2 跟蹤框范圍影響測試 在實驗測試中,依據(jù)跟蹤框的實際大小進(jìn)行控制變量測試,測試實驗錄像視頻共4 s,100幀,測量了3組單個球員和3組發(fā)生遮擋的2名攻守球員。
對100幀視頻進(jìn)行不同跟蹤范圍(圖4)的單目標(biāo)跟蹤,結(jié)果顯示:對于小范圍(30 mm×43 mm)目標(biāo),KCF的跟蹤準(zhǔn)確率為79%,CF2的跟蹤準(zhǔn)確率為77%;對于中等范圍(35 mm×91 mm)目標(biāo),KCF的跟蹤準(zhǔn)確率為70%,CF2的跟蹤準(zhǔn)確率為68%;對于大范圍(52 mm×117 mm)目標(biāo),KCF的跟蹤準(zhǔn)確率為86%,CF2的跟蹤準(zhǔn)確率為87%。
圖4 測試跟蹤有效區(qū)域比較Figure 4 Comparison of tracking effective area
對100幀視頻選擇2名球員進(jìn)行不同跟蹤范圍的多目標(biāo)跟蹤。KCF算法對小范圍(30 mm×43 mm)目標(biāo)的平均跟蹤準(zhǔn)確率為51%,對中等范圍(35 mm×91 mm)目標(biāo)的平均跟蹤準(zhǔn)確率為63%,對大范圍(52 mm×117 mm)目標(biāo)的平均跟蹤準(zhǔn)確率為89.7%。CF2算法對小范圍(30 mm×43 mm)目標(biāo)的平均跟蹤準(zhǔn)確率為98%,對中等范圍(35 mm×91 mm)目標(biāo)的平均跟蹤準(zhǔn)確率為100%,對大范圍(52 mm×117 mm)目標(biāo)的平均跟蹤準(zhǔn)確率為100%。
從測試結(jié)果中可見,跟蹤框范圍對于單目標(biāo)跟蹤而言精確度有一定提升,而多目標(biāo)跟蹤會進(jìn)一步提升系統(tǒng)的抗遮擋能力。這是因為如果跟蹤框很大,就會將球員及球員周邊更多的區(qū)域當(dāng)作正樣本區(qū)域,當(dāng)球員移動時,其背景區(qū)域也就被納入特征中,能夠很好地規(guī)避因球員快速移動而造成的漂移問題,對于抗遮擋能力也同樣會有提升。
5.3 跟蹤準(zhǔn)確率測試 通過研究3組球員遮擋時的跟蹤框跟蹤情況以及針對目標(biāo)跟蹤的抗漂移能力、抗遮擋能力和抗相似干擾能力的測試發(fā)現(xiàn):KCF算法對攻守球員的跟蹤準(zhǔn)確幀數(shù)分別為287和202,平均為81.5%;而CF2算法對攻守球員的跟蹤準(zhǔn)確幀數(shù)分別為300和197,平均為83%。
從以上結(jié)果看,KCF算法已經(jīng)擁有比較高的準(zhǔn)確率,而基于KCF算法并融合深度學(xué)習(xí)的CF2算法準(zhǔn)確率也有所提高,但是由于每次測試中均有部分時間兩跟蹤目標(biāo)重疊,因此沒有一個算法可達(dá)到100%的跟蹤準(zhǔn)確率。
研究多種跟蹤算法,且擴(kuò)展成了多目標(biāo)跟蹤,跟蹤效果較好,能夠減少漂移次數(shù)。KCF算法融入了實時目標(biāo)檢測的算法,使得跟蹤精確度和抗遮擋能力進(jìn)一步增強,與以往目標(biāo)跟蹤采用的背景差分及TLD方法相比效果較好,能夠減少漂移次數(shù)。依據(jù)足球比賽的多人數(shù)對抗特征結(jié)合多視角跟蹤,對比賽中的遮擋情況進(jìn)行多視角平均,能夠緩沖遮擋帶來的誤差。改進(jìn)后的深度學(xué)習(xí)跟蹤算法CF2能夠更好地解決跟蹤框的易漂移問題。研究還存在需要改進(jìn)之處,例如:KCF算法在應(yīng)對單目標(biāo)跟蹤時效果較好,在擴(kuò)展成多目標(biāo)跟蹤之后,具有一定的處理速度上的優(yōu)勢;但當(dāng)發(fā)生遮擋時,特別是在同隊隊員互相遮擋時,會導(dǎo)致跟蹤精度降低。今后可通過調(diào)整學(xué)習(xí)率的方式,設(shè)置訓(xùn)練器學(xué)習(xí)的閾值,改善抗遮擋能力。此外,由于KCF算法訓(xùn)練器需要通過正負(fù)樣本訓(xùn)練,以提高目標(biāo)跟蹤的準(zhǔn)確率,球場上的跟蹤框大小也對KCF算法的準(zhǔn)確率有一定影響。相較而言,CF2算法能夠較好地解決多目標(biāo)的遮擋問題,但在運算速度上有著一定的局限性。隨著計算機技術(shù)的更新及硬件配置的升級,輔之GPU加速、并行運算等技術(shù)的改進(jìn),CF2算法的速度有望得到進(jìn)一步提高。