滑板者可以輕鬆辨識其他滑板者表演的技巧。我們這個計畫的目標是教導電腦辨識滑板技巧。給定一個滑板技巧的視頻,計算機能否以高概率對該技巧進行分類?我們開發了一個資料集和一個機器學習模型,可以區分兩種最常見的滑板技巧:ollies 和 kickflips。
我們首先收集了 200 多個踢腿翻轉和奧利動作的短片(1 到 2 秒)。我們將《使用 Tensorflow 進行電腦視覺實踐》中所描述的方法改編為我們的新資料集。資料從影片開始,然後透過卷積神經網路 (CNN)、長短期記憶 (LSTM) 模型,最後輸出影片描述每一類技巧的機率。
例如,這裡史蒂芬執行了踢腳翻:
該模型以 0.9 的機率預測這是一個踢腿翻轉,因此效果良好。我們發現,能看到滑板者全身的清晰影片比只看到滑板者腿部的影片效果更好。我們還發現,即使所有訓練資料都是平地上的技巧,該模型也能夠正確預測樓梯上的踢腿翻轉。這表明該模型能夠泛化到新的不同情況。
為了進一步進行這項工作,我們可以添加 kickflip 和 ollies 以外的更多技巧,以及技巧的組合,例如 backside 180 kickflip。透過更多的訓練數據和更多的模型調整,該模型可以變得足以與人類滑板運動員相媲美。
感謝 Justin Wang 和 Vessela Ensberg 對這個計畫的幫助。
帶有標籤的視訊資料位於該儲存庫的Tricks
目錄中。有兩個子目錄: Ollie
,其中包含 108 個滑板運動員表演 ollie 的影片;以及Kickflip
,其中包含 114 個滑板運動員表演 kickflip 的影片。這些目錄中的每個檔案都是一個短片,大約 2 秒,採用.mov
格式 (QuickTime)。若要使用此資料進行監督機器學習,請使用Tricks
目錄中的資料訓練模型,並使用子目錄作為標籤。
只要您引用這項工作,您就可以自由地將這些數據用於學術目的。
滑板技巧分類
這個項目用最簡單的語言對滑板技巧進行了分類。我們正在嘗試使用機器學習來對每個滑板技巧進行分類。滑板技巧有很多,我們選擇其中兩個進行分類。我們在 Ollie 和 Kickflip 之間做出了選擇。
因此,演算法將採用如上所示的輸入,並輸出其是 ollie 或 kickflip 的確定機率。
6 月 16 日待辦事項:
6 月 23 日待辦事項:
6 月 30 日待辦事項:
7 月 7 日:
7 月 15 日:
7 月 21 日:
7 月 28 日:
8 月 4 日:
我們的目標是為 1-2 秒的影片剪輯提出合理的技巧分類器。我們計劃使用任何最方便、最有效的方法來實現這一目標。
我們預處理資料的計劃是將視訊採樣到一致的幀數和解析度。例如,每個影片可以由 30 個影格組成,每個影格都是 480 x 360 (360p) 影像,因此每個影片都成為尺寸為 480 x 360 x 30 的 3d 陣列(或張量)。 。顏色對於技巧分類並不重要,因此我們也可以轉換為黑白。
整體思路是建立一個卷積神經網路(CNN),大致遵循影像分類的方法。
影像 CNN 使用卷積濾波器組合來自附近像素的空間局部資訊。我們是否應該對時間上接近的像素做同樣的事情?谷歌的教程使用了二維卷積。我們有什麼理由不能用 3d 卷積嗎?當然,張量流有一個。有許多流行的學術論文正是這樣做的。希望我們能夠以這些想法為基礎。