孔 秀 史金龍 高 璐
(江蘇科技大學計算機學院 鎮江 212003)
近年來,計算機科學發展迅猛,視覺圖像[1]作為人類接收信息的主要途徑受到了諸多關注。隨著發展的進步,基于立體視覺技術[2]的研究也越來越深入,并廣泛地應用到了生活的各個領域。如體育競技、數字化城市與三維地圖、醫療中的影像分析、航空中的衛星圖片、古代建筑三維數字化保護、VR&AR游戲、電影等[3]。
在球類比賽中,僅僅利用肉眼觀測和經驗推斷,已經不能滿足于體育競技的現階段要求。利用數字圖像技術檢測球類運動,并對運動軌跡進行跟蹤,能輔助教練與運動員進一步了解球的運動趨勢、速度和落點,從而制定改進的技術策略和訓練方案,進一步提升訓練效果。運動檢測與軌跡跟蹤[4]是計算機視覺中的研究重點,其過程是利用兩臺攝像機得到運動視頻序列,根據目標的特征來檢測匹配,從而獲取運動目標的三維運動序列,實現軌跡跟蹤。近些年,研究人員對于球類運動軌跡的跟蹤提出了一些觀點。文獻[5]利用斯諾克的顏色特征跟蹤彩球的運動軌跡,顏色特征是體育視頻分析中運用廣泛的特征之一。除此之外,國防科技大學提出基于語義單元(BSU)的視頻分割方法[6],利用顏色特征進行場景檢測;而文獻[7]則通過分析視頻對象的運動軌跡和相互運動關系分割足球比賽視頻[8]。
通過上述分析可以看出,體育視頻的內容復雜又多樣,目前體育視頻分析結果還不很理想,整個體育視頻分析仍處于初步研究階段。本文旨在提出一種針對于球狀物體運動的檢測識別和軌跡跟蹤的研究方法。以乒乓球為實驗對象,建立一套雙目運動捕捉系統[9],對運動中的乒乓球進行檢測和軌跡跟蹤,獲取球體的運動軌跡、落地點和不同時刻的運動速度,從而進行下一步的軌跡預測。利用標定好的兩臺攝像機拍攝乒乓球的運動過程,獲取視頻序列并將視頻逐幀分解,通過橢圓擬合方法從不同幀中檢測到乒乓球的位置。考慮到類似于斯諾克中球類顏色的多樣性,本文提出利用顏色來區分不同乒乓球目標。除此之外,當球類不存在明顯的紋理特征或者顏色特征時,利用物理特征[10]進行跟蹤的方式將不再適用,而傳統光流[11]不能夠對運動速度較快的乒乓球進行捕捉跟蹤。本文利用改進的大尺度光流跟蹤[12]的方法對運動目標進行軌跡跟蹤,避免了由于位移過大產生的跟蹤錯誤和丟失問題。最后將不同時刻的目標位置信息整合,利用非線性曲線擬合技術得到目標運動軌跡。結合三維軌跡數據,對目標的運動進行分析,從而獲取更多有效的物理信息。
如圖1(a)所示,實驗器材為兩臺索尼FDR-AX30 相機。實驗環境選在具有充分光源的室內,三腳架間距約20cm 平行放置,高度與焦距校準。如圖1(b)、圖1(c)所示,實驗對象分為彩色組與白色組,每組各有6只大小均勻的乒乓球。

圖1 實驗器材及實驗對象
實驗進行前,需要對兩臺相機進行標定,這里采用張正友標定法[13]。標定獲得相機的內外參數矩陣KL,KR,R,T,以及畸變系數DL,DR,以左相機為世界坐標系的原點,標定結果如下所示:

由于乒乓球在二維平面上呈現為圓形,且快速運動過程中會產生一定的形變,傳統的特征檢測算法不易獲取有效特征。本文采用最小二乘法擬合橢圓[14]對乒乓球進行目標檢測,擬合后獲取乒乓球的球心坐標。
橢圓方程是一種特殊形式的二次曲線,可以使用式(1)表述為

在式(1)中,a,b,c,d,e 是橢圓系數,(xi,yi)(i=1,2,3,…,n)為橢圓輪廓上的n(n≥5)個測量點坐標。最小二乘法的原理是使得測量擬合誤差的平方和最小化,由此所擬合的目標函數為式(2):

利用奇異值分解法解出方程系數a,b,c,d,e的值。根據橢圓的相關幾何知識,可以獲得橢圓的各個位置參數,包括二維圖像上的圓心坐標。

圖2 橢圓擬合前后對比
圖2 為彩色實驗組橢圓擬合前后對比效果。可以看出,該方法能夠精準地對目標乒乓球進行檢測擬合,滿足實驗要求。表1 為橢圓擬合檢測到的本幀上6顆乒乓球的球心位置。

表1 乒乓球球心二維坐標
完成目標檢測之后,需要進行目標點在左右視圖上的匹配。使用立體校正將非共面行對準的兩幅圖像校正成共面行對準。利用極線約束[15]將左右匹配由二維搜索降為一維搜索以減少匹配搜索范圍。
本文提出一種將立體校正與歐氏距離相結合對左右圖像上的球心進行匹配的方法。假設三維空間中存在點C(x,y,z),其在投影在左視圖上為Cl(xl,yl),投影在右視圖上為點Cr(xr,yr)。經過立體校正,Cl與Cr處于同一極線,尋找左視圖上點Cl在右視圖上的匹配點Cr,只需在對應極線上進行搜索。已知左右視圖在水平方向上的坐標差值為Δx,推算出Cl在右圖上的映射點Cl-r(xl+Δx,yl)。同一行上存在部分備選匹配點P1,P2,…,Pn,使用式(3)所示的歐氏距離方法剔除噪聲點,找出正確匹配點Cr。

分別計算點Cl-r與各個備選點之間的歐氏距離d,d 值最小者為最優匹配點Cr。連接左右匹配點,效果如圖3所示。
由匹配結果可以看出,本文提出的立體校正與歐氏距離相結合的匹配方法,匹配精準度較高。
經過橢圓擬合進行目標檢測、立體校正與歐氏距離結合進行左右球心匹配后,左右圖像上對應球心的二維坐標均可獲得。由標定時得到的相機內外參數,經三角測量法[16]可以將二維圖像坐標轉化為三維空間坐標。完成球心在空間上的重建,能夠立體的看到每顆乒乓球在不同幀上的不同位置。如圖4 所示,不同時刻6 顆球在同一幀上的運動位置。圖4(a)為該時刻攝像機拍攝到的乒乓球運動位置,圖4(b)為通過三維重建獲取的空間球心點在三維坐標中的位置。
對左右視圖中各個目標圓心點匹配后,為了獲取動態目標的運動軌跡,還要在前后幀時間序列上對目標進行跟蹤。
由于實驗環境具有較為穩定光源,當實驗對象為具有顏色特征的彩色乒乓球時,可以利用顏色特征對前后幀圖像上的球心進行目標跟蹤。前文通過橢圓擬合獲得左右圖像上的球心序列。取前一幀圖像上某一顆乒乓球的球心坐標,并得出該坐標點在圖像上呈現的RGB 值,由此判斷該球的顏色類別。考慮到光照和周圍環境對乒乓球色彩的影響,不同顏色的乒乓球RGB 值在一定的范圍內波動。通過后一幀圖像上的球心坐標序列,在后一幀圖像上尋找與之最為接近的RGB 值,即顏色特征相似,跟蹤成功。如組圖5 所示,連續30 幀中左圖像上跟蹤的彩色乒乓球的RGB值變化趨勢。

圖5 連續30幀球心的RGB變化
從組圖5 中數據可以看出,連續幀之間乒乓球顏色的RGB值差距甚微。在進行跟蹤時,先利用R值進行判斷色彩,當球心的R值不足以區分顏色時結合G 值和B 值,可以準確地對球心色彩進行分類。由此可以完成彩色乒乓球的目標跟蹤。如圖6所示為基于顏色特征所跟蹤到的6顆彩色乒乓球在連續兩幀間的運動方向示意圖。

圖6 連續兩幀乒乓球運動示意圖
當乒乓球不具有明顯的顏色特征作為跟蹤根據時,本文融合了大尺度光流算法和SIFT 方法,在傳統變分光流模型[17]中加入相似描述符的約束,結合使用前后幀對應點最小位移差,從而有效地跟蹤目標。
設待跟蹤的連續兩幀圖像分別為第I、I+1 幀,跟蹤步驟如圖7所示。

圖7 獲取光流值過程圖
重復以上過程,直至獲得I 幀和I+1 幀圖像的最后一層的光流值為止。令數組F 存有圖像上每個像素點的光流值。以獲得的I幀圖像上某個圓心坐標PI(px,py)為計算值,經光流數組F 在I+1 幀圖像上找到其對應點PI+1坐標為(F[px][py][1],F[px][py][2])。繼而以點PI+1跟蹤到I+2幀上的點PI+2……由此完成連續幀之間目標圓心點的跟蹤。
由于實驗環境復雜且跟蹤的目標對象為物理特征不明顯的乒乓球,實驗過程中有可能會出現部分跟蹤失誤。本文所用相機幀率為25幀/s,則目標乒乓球在連續的前后兩幀之間的運動極其微小,同一個乒乓球在連續兩幀之間的球心位移變化波動微弱,所以在連續前后幀之間運用最小歐氏距離進行點的跟蹤判斷。
假設第N 幀上i個圓心點均跟蹤到N+1幀上的圓心點(xn+1,yn+1),定義N 幀上i 個點的坐標為(xin,yin)(1≤i≤6),在N+1 幀上進行跟蹤搜索。利用式(4),i個疑似點中與點(xn+1,yn+1)距離Δd最小的即為正確跟蹤點。

由基于光流法跟蹤到一顆乒乓球在連續17 幀間的運動情況如圖8 所示,由跟蹤圖可以明顯看出乒乓球的下落彈跳運動。
由目標跟蹤獲得乒乓球運動過程中球心的三維坐標序列,可以利用Matlab 中的plot3 函數擬合出其運動軌跡。
如圖9所示為6只球在空間中的運動軌跡。實驗中,乒乓球上拋后自由下落,觸及水平桌面后進行彈跳運動,直至停止。從圖中可以明顯看出乒乓球的彈跳運動軌跡。

圖8 乒乓球在連續17幀間的運動示意圖

圖9 乒乓球運動軌跡
根據運動軌跡和相關數據,獲得乒乓球運動下落點、速度的變化,由此得知乒乓球的運動狀態。一顆乒乓球在30 幀圖像內落點3 次的空間位置分析結果如表2所示。

表2 乒乓球的落點位置變化
相機幀率為25幀/s,則連續兩幀之間的時間間距為0.04s。利用式(5)可以求出乒乓球球心在不同幀的瞬間速度v。

乒乓球在不同幀的瞬時速度為表3所示。

表3 乒乓球的瞬時速度變化
本文基于圖像三維重建系統,研究球狀物體運動的軌跡追蹤。使用橢圓擬合檢測獲取圖像上的球心,將立體校正和歐氏距離相結合完成左右視圖上對應球心的匹配。分別利用色彩特征和光流算法對乒乓球進行跟蹤,繼而重建各個目標點的三維數據,形成球狀物體的運動軌跡。經過實驗驗證,該方法復雜度低、穩定可靠,在今后仍有很好的研究和應用價值,適用于球類體育競技比賽及相關行業中。