DataTennis. NET

データテニス ドットネット

【OpenPoseを用いたテニスのサーブフォーム解析2】ハイスピードカメラを使ってみた

公開日:
最終更新日:2019/07/22

      2019/07/22

先日の記事で、姿勢推定技術(OpenPose)を用いたサーブフォーム分析について紹介しました。
「AI技術(Openpose)を使ったテニスのサーブフォーム解析」

前回の動画は30fpsの動画で解析していました。

低フレームレートで撮影すると速い動作はぶれた画像になる

30fpsは1秒間に30フレーム(0.033秒間隔)のフレームレートですが、この間隔より速い動作の動画を撮影するとぶれた画像となります。
↓はサーブインパクト時の画像ですが、右肘から先(赤い囲い部)がぶれてしまっており、関節点検出もうまくいっていません。

そこでもっと細かいフレームレートで撮影できるハイスピードカメラでサーブ動画を撮影し、姿勢推定でサーブ分析をしてみました。

ハイスピードカメラで撮影&関節点検出

使用したハイスピードカメラは「CASIO EX-ZR400」です。
http://arch.casio.jp/dc/products/ex_zr400/

240fps(1秒間に240フレーム)のフレームレートで撮影しました。
1000fpsでも撮影できますが、光量が足りず暗い画像となるため、240fpsにしました。

OpenPoseで関節点検出した動画はこちらになります。

ぶれが改善し、関節点検出もましにはなっているが

インパクト時の写真をみてみましょう。

上の30fpsの画像と比べると、インパクト前後で右肘から先がぶれて映っていたのが改善されていることがわかります。
ラケットのぶれもありませんし、この画像では右肘と右手首と関節点が検出できていることがわかります。

しかし、フレームを進めていくと、所々で右腕付近の関節点検出ができていないフレームが。

おそらく、こういった特殊な姿勢で学習させていないからかと思われます。
解析で用いた学習済みモデルは、スポーツシーンの動画があまり含まれていないんじゃないでしょうか。

テニスのフォームに適した画像で学習させればこうした動画でも関節点をちゃんと検出してくれるかもしれません。

肘、手首を左右逆に検出してしまう現象も

↓の動画、右手首の位置を追跡した動画になります。

静止画も貼り付けておきます。

左手首を右手首と間違えて検出しているフレームが多くあることがわかります。

これも上述したように、特殊な姿勢で学習させていない影響かと思います。
テニスのフォームに特化したデータセットをつくって学習していく必要がありそうです。

はやくフォーム分析したいです。。

 - blog, スポーツ画像解析, フォーム解析