【第9回】ゴルフの練習に使える!遅延再生フィードバックプログラムをつくってみた
2019年
あけましておめでとうございます!
昨年度は仮想通貨で大コケ、共同研究が消失、新歓コンペが3連続中止、ビアガーデンで大雨、など上げたらきりがないですが沢山の失敗をしでかしました。
裏を返せば、沢山チャレンジしたということ。
私は学生生活もあと1年少しとなってしまいまして、もっとチャレンジして悔いがない年にしていきたいと思っております。
普段よくお笑いライブやプロ野球の試合に観に行きます。
客側で観ることを言い換えるとインプット、対して演者側で演じることはアウトプット。
私の好きな小説の一説にこんな言葉が出てきます。
「死んでるみたいに生きたくない」
つまり、ライブやSNSで発信する尊敬する人たちは生きている証を表現しているのです。
ということで、2019年第一弾!
この世になにか残さなあかへんな編のスタートです!
遅延再生フィードバックプログラム
あるとき、練習をしてたら気づいたんです。
もう一つ目があったら自分のスイングチェックできるのにな~
じゃあプログラミングして作ったらええやん!
ということで、、、作っちゃいました!
こちらの動画を御覧ください。
わざと遅延再生をしてフィードバックが出来るようなプログラムを作ってみました!
— 大阪工業大学 ゴルフ部(枚方支部) (@oit_golf_ht) 2018年11月9日
今後は部活の練習にも活用してみようと考えております🌟 pic.twitter.com/XwogpUIlUd
解説
動画にも載せていますが、軽く解説。
【概要】
Python + OpenCV + ウェブカメラ を用いてあえて遅延させてスイングを確認できるように、遅延再生フィードバックシステムを構築しました。
現状ではリアルタイムで垂れ流しとなっています。
【環境】
Python と OpenCVは各自で環境を整えてください。
カメラの設定ですが、
cap = cv2.VideoCapture(1)←
ここの数字を変更すると、指定ができます。
内蔵カメラになってしまう人は調整してください。
【プログラムの流れ】
大まかなプログラムの流れです。
下記に記載しているソースコードをみながら、照らし合わせてください。
ある一定の時間サイズが格納できる配列を用意して、その中に映像を入れています。
遅延させるために初回にバッファ時間分を読み込みます。
その後、初回バッファを再生します。このときに、同時に読み込みをすることで遅延させることができます。
それを繰り返すと、遅延再生が可能となります。
プログラムイメージ図はこのようになります、ざっくりですがイラスト化してみました。
ソースコード
ソースコードは下記に載しておきます。
解説は事細かにコメントアウトしておりますのでご確認ください。
まとめ
これでスイングチェック出来るようになった!
現在、部内の練習にて絶賛活躍中です!
このシステムはゴルフだけではなく、いろいろなスポーツに使えると思います。
ノートPCとカメラさえあれば誰でも簡単にできて、なおかつフリーでできるので是非自分のスキルアップに使ってみてください~
(調べていたら、●万円で提供している企業さんもありました。)
動画でも載せていますが、今は垂れ流し状態でおもしろくありません。
今後はスイング検知やマーカー機能また録画機能などを搭載したいですね。
Python勉強してるって言ってた後輩に任そうかな~
(初代キャプテン・江村)