研究討論

  本專題中,主要使用OpenPose[16]、TracknetV2[13]、Canny[6]、HoughLine[3]、透視轉換[9]……等方法對影片中的人物、羽球、場地進行偵測,並生成初始資料。接著,使用Arima[12]、軌跡平滑[14]、KNN去對資料進行修正。並用修正後的資料產生新變數,去預測擊球方、擊球點、球路及得分方,預測擊球方時,使用了六種模型,分別是XGBoost、SVM(支援向量機)、Perceptron(感知器) 、Decision Tree(決策樹)、Logistic Regression(邏輯斯回歸)、Random Decision Forests(隨機森林),並用多數決決定預測結果,預測出的準確率高達95%,使用多模型預測不僅讓結果更加準確,也讓其可信度更高。

  擊球點的預測,主要是建立在擊球方的基礎上,去分隔擊球的時間段,再使用羽球的角度變化量去預測其打擊點,讓每個擊球時間段都有一個打擊點。但因為資料具有偵測誤差,雖有進行校正,但吻合度仍不可能達到百分百,故偵測出的擊球點會有大約±5的誤差。因此在這個區塊很難定義其準確度,故我們並沒有在這個項目計算準確度,僅是確保每個擊球時間段都具有擊球點,且和原數據的誤差不要大於±5。

  球路預測是在本專題中最為複雜的一部分,我們為其新增許多變數,也嘗試過許多模型,因為某些類型之間的差異微不足道,很難明確劃分它們,雖然僅有幾個種類的準確度很低,也因為該種類的資料筆數少,所以可能需要在判斷時給予更多條件和變數,或是增加資料筆數,才有機會藉此提高其準確率。

  最後,是整局最重要的得分方,在判斷得分方時,僅用肉眼就可以輕鬆的判斷出誰得分,但使用模型去判斷時,卻有重重因素導致其判斷上有誤差,像是在最後落地時剛好被選手或其他物品遮住時,便沒有辦法偵測其路徑,這種情況就只能將其刪除。我們也將可以偵測到的球,用其路徑分為兩類情況處理,最後其總準確率高達92%。

  在製作本專題時,使用很多不同的方式去偵測資料,產出許多變數和使用不同的模型去進行預測,希望可以提高其準確率。在各項目上,預測出的效果除了球路準確率有點差強人意,擊球點無法進行預測外,其餘準確率都很高。而我們也將預測出的資料和原本的影片進行結合輸出,達成想要讓大家用另一個視角去觀看羽球競賽這個目標。

應用與討論

  本次的研究主旨在透過AI去辨識羽球競賽影片。我們在製作時使用很多方式去偵測初始資料,也因為初始資料偵測有許多的誤差,導致在後續使用資料時會有偏誤,縱使使用進行了資料校正,但在最終使用時仍導致了預測的偏差。所以希望找到更好的方式對資料進行偵測,降低資料誤差,以提高我們的準確度。

  而我們最終輸出的影片,包含了我們所預測出的各項目,但還是希望未來可以製作出一個網頁,讓用戶自行輸入影片,透過網頁偵測影片內容後,再次輸出給用戶,讓用戶可以透過這樣的方式,去研究或是學習自己想要鑽研的競賽影片。也希望這樣的方式可以提供一些簡易的選手研究,以利於教練和選手去進行技術研究和探討。