1 of 49

1

2 of 49

チームメンバー

海老原 祐輔

東京大学工学部 4

三田研究室

懸垂バー買ったけど�やってない

山本 恒輔

東京大学工学部 4

川原研究室

アプリ開発してるはずが

気づくと筋肉痛です

下島 銀士

東京大学工学部 4

矢谷研究室

これきっかけで筋トレ

腹筋ローラーやばい

2

3 of 49

プロジェクト概要

1

4 of 49

背景

筋トレを始めると、細かい不便がたくさんある

・何をやればいいかわからない

・やった記録が残らない、成果が見えない

 楽しくない継続しない

4

インストールは

こちらから →

5 of 49

背景

それ、記録をつけることで解決します!

5

インストールは

こちらから →

6 of 49

背景

Q. 何をやればいいかわからない

A. 最初は、検索・動画・アプリの提案

それ以降は、前回の記録を参考に、

  自分に合う筋トレを考えていける

6

インストールは

こちらから →

7 of 49

背景

Q. やった記録が残らない、成果が見えない

A. 例えば、ダイエットの時は体重を測る

  筋トレの記録をつけることで、

  成長が数値で確認できる

7

インストールは

こちらから →

8 of 49

筋トレ友達10人に聞いてみた

Q. 筋トレの記録は大事?

8

No

1人

Yes

9人

インストールは

こちらから →

9 of 49

筋トレ友達10人に聞いてみた

Q. 実際に記録をつけている?

9

No

8人

Yes

2人

インストールは

こちらから →

10 of 49

なぜ記録をつけない?

筋トレ毎に記録は手間

10

参考:最強の筋トレ管理アプリ

-筋トレMemo

参考:筋トレ カレンダー

筋トレ記録アプリ

1

筋トレが終わったときには、

回数は忘れている

内容を覚えていても、

アプリへの入力が煩雑

3

2

インストールは

こちらから →

11 of 49

これが欲しい!!!

ユーザーがストレスフリー

自動記録をつけるアプリが欲しい

11

インストールは

こちらから →

12 of 49

プロジェクト概要

12

全自動筋トレ記録システム

インストールは

こちらから →

13 of 49

13

14 of 49

アプリ紹介

15 of 49

アプリのコンセプト

筋トレ以外に

頭を使わない

15

インストールは

こちらから →

16 of 49

16

17 of 49

アプリの使い方

17

1タップして運動するだけ

1

自動記録

種別・回数の記録はアプリにお任せ

心置きなく筋トレだけに集中できる

インストールは

こちらから →

18 of 49

アプリの使い方

18

RAW

集めたデータは自動で分析

2

自動分析

記録の処理もアプリにお任せ

筋トレ結果の煩わしい分析は不要

インストールは

こちらから →

19 of 49

アプリ機能紹介

ホーム画面

19

ステータス

筋肉痛の目安を表示

最近鍛えていない部位が一目でわかる

最近の履歴

直近の履歴を表示

すぐ振り返りができる

インストールは

こちらから →

20 of 49

アプリ機能紹介

自動判別画面

20

記録済の運動

すでにアプリで

自動記録された運動

記録中でも簡単に

振り返りができる

判別中の運動

特に大きく表示

記録中でも見やすく

※ バックグラウンドで動作

  画面を閉じていてもOK

インストールは

こちらから →

21 of 49

アプリ機能紹介

記録修正画面

21

記録の修正

自動記録内容の

修正が可能

記録

停止

自動判別画面

インストールは

こちらから →

22 of 49

アプリ機能紹介

履歴画面

22

カレンダー

月毎の運動時間が

わかりやすい

時系列に沿った詳細な記録が見られる

筋トレごと

これまでの記録の

統計がわかる

リスト

・運動日数

・最高回数

・運動頻度

 などなど

インストールは

こちらから →

23 of 49

アプリ機能紹介

修正・手動追加画面

23

ユーザーによる入力

自動判別結果の修正や

記録の手動入力が可能

これらの結果も記録統計に反映

インストールは

こちらから →

24 of 49

アプリリリース

App Storeにて配信中

インストールはこちら↓

24

インストールは

こちらから →

25 of 49

システム説明

26 of 49

システム概要

26

収集データ

機械学習などの

アルゴリズム

判別結果

インストールは

こちらから →

27 of 49

データの収集

カメラによるデータ収集

  データの解析が容易

  姿が収まるようアングル調整が必要

プライバシーの心配

モーションセンサ(加速度など)によるデータ収集

設置の手間がかからない

データの解析が困難

27

使い勝手を優先し、モーションセンサを採用

カメラを用いた例

参考:家トレ-AI筋トレカウンター

インストールは

こちらから →

28 of 49

データの収集

9軸データ加速度・角速度・磁気)を�iPhoneApple Watchモーションセンサから取得

28

ポケットに

iPhone

腕に

Apple Watch

9データ

インストールは

こちらから →

29 of 49

機械学習による判別

Appleの機械学習フレームワーク「CoreML」を利用し、iPhone内部で判定処理を行う

オフラインでも判定が可能

種類判別回数認識でそれぞれ�アルゴリズムを作成

29

CoreML

インストールは

こちらから →

30 of 49

筋トレの種類判別

筋トレ判別にはCNNを用いた

30

腹筋

3秒分の9データ(50Hz)

CNNモデル

腕立て

スクワット

筋トレ種別

インストールは

こちらから →

31 of 49

筋トレの回数認識

筋トレ種別ごとにアルゴリズムを選択し、回数を認識

31

腹筋

腕立て

スクワット

:

筋トレ種別

特徴軸を選択

CNN / ルールベース

アルゴリズム

回数

1回

2回

3回

:

9軸データ

phone.gravity.x

phone.gravity.y

phone.gravity.y

:

インストールは

こちらから →

32 of 49

機械学習のためのデータ作成

学習データとして、「9軸データ」と「運動名」の組み合わせが必要

→自分たちで筋トレをしてデータ収集

32

スクワット

腕立て伏せ

腹筋

インストールは

こちらから →

33 of 49

機械学習のためのデータ作成

手動でラベリングを行ったデータ

※デバッグのための総筋トレ回数 � 約5000回(体感)(+150回の予定)

33

総筋トレ回数

1684

インストールは

こちらから →

34 of 49

機械学習のためのデータ作成

精度向上のためにはさらに学習データが必要

ユーザーが訂正したデータを学習に活用�以後の判別精度向上に活用

34

インストールは

こちらから →

35 of 49

機械学習モデルの改善

35

アプリへダウンロード

学習したモデルを

アップロード

学習用PC

サーバー

インストールは

こちらから →

36 of 49

機械学習モデルの改善

継続的なモデル改善が可能

36

筋トレの

自動判別

ユーザーによる

訂正

機械学習による

モデル改善

インストールは

こちらから →

37 of 49

プロジェクトのまとめ

44

38 of 49

今後の展望

アプリの改善

  • 筋トレ判別AIの精度向上(学習データの拡充など)
  • 機械学習の個人最適化
  • Apple Watchを用いないアルゴリズムの作製
  • UI改善、機能追加(実績やシェア機能など)

38

インストールは

こちらから →

39 of 49

今後の展望

ジムのマシンとの連携

  • ジムでの筋トレはマシンと対応
  • Bluetoothビーコンなどを用い、�マシンを区別・認識

39

インストールは

こちらから →

40 of 49

まとめ

  • 筋トレの記録は大事だが面倒
  • 自動で筋トレの記録をする�システムを開発
    • 筋トレ以外に頭を使わない
    • モーションセンサーから�筋トレを判別

40

全自動筋トレ記録システム

41 of 49

41

42 of 49

[補足] 対応筋トレ

42

スクワット

腹筋

背筋

腕立て伏せ

腹筋ローラー

インストールは

こちらから →

43 of 49

[補足] 筋トレ判別CNN

判別種別8種類(休憩含む)

精度0.9017857142857143

43

インストールは

こちらから →

44 of 49

[補足] 筋トレの回数認識

腕立て伏せの重力の波形

上がポケットのスマホ

下がApple Watch

上のの部分がずれている

疲れてが下がるのが遅い

波形のずれから疲れを検知したい

44

インストールは

こちらから →

45 of 49

[補足] 何を基準に自動判別?

筋トレは微妙な周期波形

・人によってペースが異なる

・筋トレ中にもペースが変わる(遅くなる)

・筋トレの勢いなどで振れ幅の変化や、ドリフトも

・波形が M から ^(単純な山)になることもしばしば

45

インストールは

こちらから →

46 of 49

[補足] 回数CNN判定の詳細

46

standing,

sitting,

push-up,

push-up,

...

筋トレ判別CNN

入力:データ最新3秒分

出力:筋トレ種別

9軸データ

50Hzで補間

筋トレ別回数判定CNN

入力:データ最新2秒分

出力:筋トレ開始フラグ

推定履歴+冗長化

 判別推定結果

推定履歴+冗長化

 回数判定

モデル自動切替

※判別種目数だけCNNが存在する

0100110...

インストールは

こちらから →

47 of 49

[補足] 筋トレの回数認識

47

インストールは

こちらから →

48 of 49

[補足] メニュー機能

メニュー画面

48

次の筋トレ

次に予定されている

筋トレを表示

次の筋トレをスムーズに開始

目標回数

目標回数を表示

達成度がすぐわかる

※本機能は現在開発中です。

インストールは

こちらから →

49 of 49

[補足] 筋トレの回数認識

1回分ごとにデータを「前半」「後半」「平坦」に分割

平らな休憩部分を検出することで、

正確な運動周期が測定出来そう

49

インストールは

こちらから →