2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

渋野日向子プロのスイングを機械学習してみた

Last updated at Posted at 2019-09-08

話題の渋野日向子プロのスイングを、TensorflowJS・Mobilenetで機械学習(転移学習)してみました。

##機械学習とは
ゴルフファンのために、「機械学習」について優しく説明します。
我々の目でゴルフスイングを見ると、「〇〇プロ」ってわかりますよね?これは、過去に自分が見た色んなプロのスイングを記憶していて、その特徴から「〇〇プロ」と判断しています。

同じく、色んなプロのスイング画像をコンピュータに記憶させ、人間の脳の構造に近い「ニューラルネット」という技術で特徴を分類・計算し、「〇〇プロ」と判断出来る頭脳をコンピューターで作成することが出来ます。この一連の作業を「機械学習」と言い、AI(人工知能)の基礎部分となります。車における自動運転で、カメラに映る映像から人や車、センターラインを見分ける技術と基本的には同じです。

おそらく、どんなに優秀なレッスンプロの目よりも正確にスイングを把握し、その相違まで示唆することが可能となります。ただし、矯正方法はレッスンプロのアドバイスを聞いて下さいね。

##転移学習
TensorFlowJSのサイトに、具体的な手口が記載されているので、これを改良。
https://www.tensorflow.org/js/tutorials/transfer/image_classification?hl=ja

サンプルではWebcamから転移学習する方法なので、これをmp4からの動画取り込みに変更。
videoタグに、src=""でmp4本体を記載し、await setupWebcam();をコメントアウト。)

あとは、3クラス分類になっている部分を、
「Shibuno」、「Not Shibuno」
の2クラスに変更。

あとはほぼ変更なしです。Youtubeから適当な動画を拾って、ブラウザで動画再生〜ポーズしながらバシバシとボタンを押して、時間を掛けて学習します。

##成果
ドライバーショット。右上に「Shibuno !」と表示されました。
スクリーンショット 2019-09-08 20.30.52.png
スクリーンショット 2019-09-08 20.31.26.png
スクリーンショット 2019-09-08 20.31.59.png

アイアンショットです。右上に「Shibuno !」と表示されました。
スクリーンショット 2019-09-08 20.32.55.png

パッティングです。スイングを学習したので、パッティングは「Not Shibuno ><」となっています。
スクリーンショット 2019-09-08 20.34.02.png

原英莉花プロです。もちろん「Not Shibuno ><」。
スクリーンショット 2019-09-08 20.34.49.png

##何に使う?
自分自身のゴルフスイングを機械学習(AI化)させておけば、調子の悪い時、しっくり来ない時に、AIに尋ねてヒントをもらうことが出来るようになるかも知れません。
専属コーチがAIになる時代も、もうそこまで来ているのかも。

渋野プロのスイングはコンピュータに記憶されているので、調子が悪くなった時は、ぜひお尋ね下さい!!

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?