終わりなき旅~自律神経失調症と生きる~

自立神経失調症と生きるミスチル好きの普通のサラリーマン。雑記ブログ

【超簡単】短距離走のスピード曲線を作成するアプリ

スマホ動画から簡単にスピード解析!

短距離ランナーのスピードをビジュアル化してみませんか?今回紹介するプログラムを使えば、スピード曲線を作成し、走行データを直感的に解析できます。

スタートから加速していく様子を捉えることで、自分の加速状態を簡単に知ることができます。

なぜ、こんなものを作ったかというと、娘の短距離向上のために加速状態を簡単に測れないかなと思ったところからスタートしました。短距離の加速状態を測定しようと思うと、いくつもの機材を等間隔において、区間ごとのタイムをセンサにより測定をする必要があるなど、かなり大掛かりになります。普通の人が簡単に自分の加速スピードを測定しようと思ったら簡単にはいきません。なので、それを簡単にスマホの動画から測定できたらいいなぁなんて思い、解析ソフトを作ってみることにしました。

いつものようにPythonを用いてますが、今回は、かなり楽に作ることができました。Copilotと共同作成しました。

スマホの動画から簡単にスピード曲線を描くことができるプログラムです。

主な特徴

  • 動画からランナーの動きをトラッキングし、スピード曲線を自動生成!

  • 距離や速度の補正機能付き。特に、短距離走のような高速な動きの解析に対応。

  • 出力データをExcelで簡単に整理し、グラフとして視覚化可能。

使用方法

・アプリをダウンロードする(保存場所は任意)

drive.google.com

分析したい動画を用意する。

スマホの動画でOK。(mp4ファイル)。カメラは固定して撮影してください。

長めの距離を計測したい場合100mとかだと、かなり遠いところから全体を撮影するような感じが良いと思います。テスト動画は、10m走の動画をサンプルとして例にとりたいと思います。できれば真横から撮影が良いです。走る人の進行方向に対して、カメラは、垂直方向から撮影が一番誤差が小さくなります。同じ条件で、測定すれば、絶対的な加速度は精度は低いかもしれませんが、自分の走り方の変化は捉えられると思います。どう走ったらより速く加速するかなど研究できるといいなと思います。

真横から撮影するイメージ

真上から見た撮影時の位置イメージ

走る方向に対して、垂直でない位置から撮影すると、誤差が大きくなります。(上の図の×と印がある角度はNGです。〇の位置が良い)

 

今回サンプルにした動画


www.youtube.com

exeファイルを実行する。

下記GUIがでてくるので、解析したい動画ファイルを「参照」ボタンを押して選択する。その後実行ボタンを押すと、保存先を指定する画面になるので、任意の場所を指定する。

 

GUIが出てくる

パラメータ入力が画面

パラメータの入力

コマンドプロンプト画面がでてくるので、

そこに必要な情報を入力する。

・スタート時間:速度解析したい動画のはじめの時間を指定。

→今回の動画では、10秒と入力。

 

・ゴール時間:速度解析したい動画の終わりの時間を指定。

→今回の動画では、13秒と入力。

 

・ランナーの身長を入力してください

→1.5メートル(150cm)と入力。

 

・ゴール地点までの距離を入力

→動作開始時刻(測定開始)と終了時刻(測定終了)の間に実際動いた距離を入力。この数値が正確にわかっている場合は、より速度が正確に出力されます(補正後データ)。

 

・サンプリング周波数の入力

速度を測定する間隔です。画面に結果を表示する時間間隔の指定なので、適当でよいです。エクセル上には、カメラで作成された動画の情報をすべてデータとして出力されます。

 

ランナーの範囲指定

・速度を測りたいランナーをドラッグで指定。

→ランナーをカーソルで指定したサイズです。そのサイズから画像の実サイズを予測し、移動した距離と時間からおおよその速度を自動計算します(補正前データ)。

カーソル指定

 

測定時の様子

数値のグラフ化

エクセルに出力されたデータをグラフ化します。

ここまで自動化すれば良かったですが、好みもあるし、数値の出力のみにしました。

今回は、この動画の2人の解析を行ってグラフ化してみました。

 

補正前データ:カーソルサイズからゴールまでの距離を推測し、人が動くのにかかる時間をトラッキングして、速度計算(身長入力で推測)

→スタートからゴールの距離がわからないのであればこちらのデータをグラフ化。

画像上のカーソルサイズが実際いくつかをできるだけ正確に入れる必要あり。

 

補正後データ:スタートからゴールの距離がわかっているなら、そこの情報と、人が動くのにかかる時間を用いて速度計算。

→距離が正確にわかるなら、こっちのデータでグラフ化するのがより正確になる。

エクセルでグラフ化

特に短距離競技では、わずかなスピードの変化が大きな差を生むことがあります。本プログラムを活用して、スピード曲線をより正確に可視化し、トレーニングなどに使えるといいなと思います。

 

別の動画から、作成したグラフも載せます。

これは、走る方向の真横から撮った動画から作成しました。かなりデータが安定して、速度曲線を比較できました。

テスト比較

Coplilotでやりとりしながら、こんなプログラムも簡単に作れてしまうなんて、本当に便利になったなと感じました。コードを書く力より、AIにうまく指示をだす力をつけることが、今後必要になるスキルの1つかもしれません。

 

娘のトレーニングにどこまで活用できるかわかりませんが、しばらく使ってみようと思います!いつのまにか、このアプリを作ることに夢中になって楽しんでしまいました。