曹曉明, 高宏力, 張 潔
在拍攝過程中,與足球、乒乓球不同,羽毛球外形輪廓在一直變化,白顏色較背景差異較小,故在運動檢測的方法和策略的選取上必然會有一些差別。現階段,羽毛球運動在工業和機器人領域也有了一定的研究成果。蘇振陽等人針對羽毛球裁判系統提出了基于機器視覺的系統設計研究方案,提高了羽毛球落點判定效率[1]。陳兵琪等人對羽毛球進行單相機實時采集,基于羽毛球運動特性進行復雜背景的運動檢測,并分析羽毛球的運動類型[2]。廖之健等人通過研究羽毛球各種類型球運動參數,設計了羽毛球自動發球機的控制系統。
本文對羽毛球動態軌跡進行采集與處理,對比分析了幾種常用運動檢測算法的效果和差異,基于三幀差算法對羽毛球運動軌跡進行檢測,并根據輪廓外接矩形面積,檢測幀間隔,羽毛球運動特性,軌跡點數量改進檢測策略,實現了對羽毛球運動單次軌跡的有效提取。通過對Basler雙目相機進行基于硬件觸發的同步曝光、采集、處理,基于雙目標定結果進行羽毛球運動的三維測量并擬合出運動軌跡[3],通過落點位置的測量對本文方法進行了實驗驗證與精度分析。
視覺硬件搭建方式如圖1所示。對雙目Basler工業相機采用硬件觸發的方式進行同步曝光,獲取左右相機拍得的羽毛球運動圖像序列。Basler相機型號為Aca2040,90 μm,分辨率最高可達2 048像素×2 048像素,幀率在最高分辨率的情況下可達到90幀/s,完全可以滿足運動檢測的需求,鏡頭選取KOWA的6 mm大視場短焦鏡頭,相機接口為USB3.0,可接入電腦進行采集處理。

圖1 視覺硬件系統
本文采用Basler相機pylon SDK在VS2013環境下對相機進行硬件觸發模式的調用,并將獲取的圖像轉換為Mat類圖像,便于后續處理。羽毛球軌跡檢測流程如圖2所示。基于三幀差算法進行檢測,根據輪廓信息、外接矩形面積、幀間隔、運動特性、軌跡點數量統計獲取羽毛球各次運動軌跡。

圖2 羽毛球軌跡檢測流程
雙目視覺獲取羽毛球空間軌跡的流程如圖3。使用平行式雙目視覺模型,基于左右相機檢測坐標,計算出羽毛球的空間坐標,從而獲得空間軌跡。

圖3 羽毛球空間軌跡檢測流程
由于光流法的實時性相較較差,故本文針對背景差法、幀間差分法、三幀間差分法進行比較分析[4,5]。對于羽毛球的檢測效果如圖4所示。可見背景差算法對羽毛球的提取最為完整,幀差法和三幀差法的提取效果相近。但背景差算法檢測到的干擾較多,三幀差算法檢測到的干擾較少。

圖4 運動目標檢測算法對比
幀間差法運算量小,但對較大和顏色一致的運動目標檢測時容易產生重影和空洞。三幀差算法是基于幀差算法的改進,對第k-1,k,k+1幀的三幀差分圖F(x,y)表示為
(1)
(2)
F(x,y)=F1(x,y)∩F2(x,y)
(3)
本文采用基于三幀差算法進行羽毛球運動檢測。
由于檢測目標為視場中運動的羽毛球,故對圖像進行截取,只檢測圖像中上部分。基于中值濾波降低圖像噪聲。基于圖像差分與運算后,進行輪廓提取,獲取各輪廓的外接矩形。針對羽毛球目標小的特點,先對提取前景進行基于矩形框面積的篩選,即圖2中Thresh1和Thresh2,分別表示面積Area篩選的下限和上限。將識別的最小外接矩形框中心作為羽毛球測量的圖像坐標,以此為圓心繪制圓至第一幀圖像上,顯示效果如圖5。可以看出,羽毛球的運動軌跡通過疊加后顯示明顯,但需要對單次軌跡進行提取,并剔除偽軌跡和干擾點。

圖5 三幀差初步效果
在實際檢測過程中,需要對羽毛球單次軌跡進行獲取,引入幀間隔Δf概念,表示當前幀序號和上一次識別到運動目標幀序號的差。當幀間隔超過閾值Thresh5時,則視為一次運動軌跡完成。但還需要對短序列軌跡的干擾進行剔除,故需要統計軌跡目標個數Fnum。當Fnum超過設定閾值Thresh6時才將軌跡視為待檢軌跡。前4次軌跡獲取效果如圖6所示。可以看出,每次軌跡提取狀況良好,但在第二次和第四次軌跡中,可看到明顯的干擾點,第三次軌跡則直接為人進入場中產生的干擾軌跡。所以需要根據羽毛球的運動特性對軌跡檢測進一步優化[6]。

圖6 前4次軌跡檢測效果
由于羽毛球在空中運動,相鄰幀間運動的羽毛球相距較近,其他干擾與其相距較遠,故當相鄰運動幀都檢測到多個運動點時,獲取當前幀檢測點和上一幀檢測點間距離最短的兩個點作為兩幀中羽毛球的坐標點。并基于羽毛球的運動速度,基于閾值Thresh3和Thresh4,將不符合運動距離的點剔除。由于羽毛球運動橫向是朝一個方向運動的,縱向上升和下降過程的運動方向也是一致的,故基于Δx2·Δx1和Δy2·Δy1判斷運動方向是否一致。其中Δx2表示當前檢測幀和前一檢測幀檢測坐標的橫向差值,Δx1表示前一檢測幀和前兩檢測幀檢測坐標的橫向差值。Δy1和Δy2則對應縱向差值。最終檢測流程如圖2所示,檢測效果如圖7。

圖7 軌跡檢測優化
獲取到羽毛球運動目標后,便可根據左右相機目標坐標進行三維軌跡重建[7]。平行式雙目視覺模型,如圖8所示。

圖8 平行式雙目視覺模型
設空間點P在左、右相機的圖像點為p,p′。其三維坐標計算如式(4)。圖中B為基線距離,f為焦距,xR,yR為點P在左圖像中的橫、縱圖像坐標值,xT,yT為點P在右圖像中的橫、縱圖像坐標值,D為左右圖像視差[8]
(4)
通過雙目相機對羽毛球運動進行檢測[9],得到其空間軌跡,和實際情況進行對比,分析軌跡的測量精度。為了實驗的方便,從相機同側發球,羽毛球向相機對面運動。出于實時性和測試的考慮,相機采集圖像分辨率設置為640像素×480像素,觸發信號為30 Hz的方波。
使用MALTAB工具箱進行相機標定[10],得到雙目標定結果如表1。

表1 左右相機內參數標定結果
根據獲取的左右目標坐標信息和雙目標定結果,獲取各次軌跡的空間坐標[11],并對空間軌跡進行擬合,效果如圖9所示。

圖9 3次運動軌跡
定性分析:3次軌跡羽毛球落點區域如圖10所示。由圖9和圖10可以看出,羽毛球的軌跡得到了較好的重現,并且符合3次運動的空間位置,當羽毛球落地后,處在同一水平面上。

圖10 羽毛球落點區域
定量分析:通過實際直接測量每次羽毛球最終落點的信息,比對使用雙目視覺測量得到的結果,對測量結果進行定量分析。3次落點的測量結果、實際結果、測量誤差如表2。

表2 3次軌跡最終落點的測量結果 mm
可以看出,檢測誤差均在5.2 cm以內,平均誤差為2.973 cm,測量精度較為良好。
基于三幀差算法對羽毛球運動進行檢測,并對軌跡檢測進行了改進優化,可有效地提取羽毛球的單次軌跡。使用雙目工業相機進行硬件觸發,同步獲取羽毛球的左右像素坐標,基于雙目標定結果最終獲取羽毛球的運動空間軌跡。通過對測量結果進行定性和定量的分析,說明了視覺測量運動目標空間軌跡的可行性和有效性。
參考文獻:
[1] 應文杰,徐 開,徐少平.羽毛球機器人機械臂運動軌跡多目標規劃[J].計算機工程與應用,2017,53(3):258-265.
[2] 陳兵旗.機器視覺技術及應用實例詳解[M].北京:化學工業出版社,2014.
[3] 王婷婷,李 戈,趙 杰,等.基于雙目視覺的運動目標檢測跟蹤與定位[J].機械與電子,2015(6):73-76.
[4] 黃成都,黃文廣,閆 斌.基于Codebook背景建模的視頻行人檢測[J].傳感器與微系統,2017,36(3):144-146.
[5] 呂嘉卿,劉立程,郝祿國,等.基于視覺背景提取的自適應運動目標提取算法[J].計算機應用,2015,35(7):2029-2032.
[6] 張遠輝.基于實時視覺的乒乓球機器人標定和軌跡跟蹤技術研究[D].杭州:浙江大學,2009.
[7] 王 琳,趙健康,夏 軒,等.基于雙目立體視覺技術的橋梁裂縫測量系統[J].計算機應用,2015,35(3):901-194.
[8] 張 娟,潘建壽,吳亞鵬,等.基于雙目視覺的運動目標跟蹤與測量[J].計算機工程與應用,2009,45(25):191-194.
[9] 張 梁,徐錦法.基于雙目視覺的無人飛行器目標跟蹤與定位[J].計算機工程與應用,2014,50(24):27-31.
[10] 蔡 琿.視覺測量中的攝像機標定與三維重建方法研究[D].哈爾濱:哈爾濱工業大學,2013.
[11] 王耀東,余祖俊,石井抱.高速立體視覺與機械運動異常動作三維檢測[J].儀器儀表學報,2013,34(10):2161-2169.