#概要
コロナウイルスの影響で在宅ワークしているのですが、運動量が減って健康に悪いなと思い、簡単にヨガのポーズを診断してくれるものを作ってみました!
Teachable Machineでヨガポーズの学習させてみた。
— まえぷー@出窓菜園 BWG (@kmaepu) April 15, 2020
※ヨガ未経験です(~_~;)
#うちで作ろう #protoout pic.twitter.com/cr8B4wVuXj
今回は、Googleが提供している画像認識・機械学習のサービス「Teachable Machine」で学習モデル作る方法に触れます。
このTeachable Machine、何が良いかというと学習したモデルを、Node.jsやArduinoで使用できる状態でエクスポートできる ことです!
学習させたモデルを使う方法はこちらに書きました。
以下手順です。
- ポーズを決める
- 学習用画像の収集
- 学習の実行
- テスト
##ポーズを決める
どんなポーズを学習させるかですが、ヨガ未経験なので次のサイトを参考に簡単そうな「三角のポーズ」と「山のポーズ」の2つにしました。
ヨガポーズの参考サイト
##学習用の画像収集
学習のための画像収集ですが、Webカメラを使用しTeacable Machine上で行うことができます。画像収集の準備を進めていきます。
Teachable Machineを開くと3種類の入力パターンがありますが、今回は「Pose Project」を選びます。
次のような画面に移るので、「WebCam」をクリックしてWebカメラモードにします。
PCに備え付けのカメラを有効にするか問われるので、有効にします。その後、学習させたいポーズをとり「Record 6 Seconds」ボタンをクリックします。これで学習用の画像を6秒間撮影されます。
同じことをClass2の方でも行います。もちろんポーズは変えて。これで画像の準備は完了です!
ちなみに、ネットから拾ってきた画像でもいけるのでは?と思い試しましたが駄目でした...。私は機械学習に詳しくなく表現が難しいのですが、どうやら画像認識で棒人間がオーバーレイされた画像が対象のようです。
##学習の実行
画像が用意できたら、中央の「Train Model」ボタンをクリックし、学習を実行させます。画像の量やポーズの種類の多さによって時間がながくなります。
##テスト
学習が完了すると右側の「Preview」にカメラ画像が映し出され、どちらのポーズかバーで割合が表示されます。
#おわりに
ノンプログラミングでここまでできるとは...。次は学習したモデルをエクスポートして実際にアプリに使っていこうともいます。
蛇足ですが、ヨガポーズを調べていていろいろ試しまし、使っていない筋肉を伸ばすポーズばかりで「あぁ~伸びる~」と悶絶しながらやっていました(笑)