数字が1つ増えるとき、スマホは何を見ているのか
スクワットを1回すると、画面の数字が1つ増えます。
カメラは向いていない。ボタンも押していない。それでもアプリは「いまのは1回」と判断しています。
これはどうやっているのか。答えは、運動の知識ではなく、スマホのセンサーと判定のアルゴリズムの側にあります。この記事では、足鍛帳が実際にどうスクワットを数えているのかを、開発した本人が順番に解説します。
測っているのは「加速度」
足鍛帳が見ているのは、映像でも歩数でもなく、加速度です。
iPhoneには加速度センサーが入っていて、端末がどう動いたかを1秒間に何十回も感じ取れます。足鍛帳はこれを1秒あたり50回読み取っています。
ただし、生の加速度をそのまま使うわけではありません。iPhoneは動きの加速度と、常にかかっている重力を分けて教えてくれます。この2つを分けて扱えることが、後の話の土台になります。
向きが変わっても「上下」が分かる
ここが、いちばん大事で、いちばん誤解されやすいところです。
スマホは、手に持つ人もいれば、ポケットに入れる人もいます。角度はバラバラです。にもかかわらず、しゃがむ・立ち上がるという上下の動きだけを取り出せる。なぜでしょうか。
やっているのは、動きの加速度を重力の向きへ射影することです。
重力は必ず真下を指しています。だから、動きの加速度のうち「重力と同じ向きの成分」を取り出せば、それがそのまま垂直方向の動きになります。スマホがどんな角度でも、真下という基準は変わらないので、向きに依存せず上下を読めるわけです。
足鍛帳では、この垂直成分が正のときを「しゃがむ」、負のときを「立ち上がる」として扱っています。ポケットでも手持ちでも同じ軸で読めるのは、この射影のおかげです。
「揺れ」と「スクワット」をどう区別するか
上下の動きが読めても、まだ問題が残ります。歩いても、かがんでも、スマホを持ち直しても、上下の値は動きます。その中からスクワットだけを1回として取り出す必要があります。
足鍛帳は、固定のしきい値を使いません。人によって動きの大きさは違うし、場面によってノイズも違うからです。代わりに、直近の動きから基準を作ります。
- 直近3秒ほどの動きから、平均と「ばらつきの大きさ(標準偏差)」を計算する
- 平均を中心に、ばらつきに応じた幅の「ノイズ帯」を引く
- この帯の中に収まる小さな揺れは、はじめから無視する
そのうえで、帯を大きく越える動きだけを候補として、次の順番をたどれたときに初めて1回と数えます。
待機 → 沈む → 底 → 上がる → カウント
それぞれの段階には最短の時間があります。ほんの一瞬の揺れは「沈む」を満たせず、途中で崩れれば待機へ戻ります。底では、いちばん深く沈んだところを追いかけ、そこからちゃんと戻ってきたか(反転したか)まで見ます。こうして、ハーフスクワットや小刻みな揺れが1回として数えられないようにしています。
しきい値の幅はユーザーの感度設定でも調整できます。数えすぎると感じたら厳しく、数え漏れると感じたら緩く、という具合です。
使うほど、あなたのペースに合う
スクワットの速さは人それぞれです。ゆっくり深く沈む人もいれば、テンポよく刻む人もいます。
足鍛帳は、最初の数回のスクワットから、沈む・底・上がるにかかった時間を少しずつ学習します。そして、判定の最短時間をその人のペースへ寄せていきます。
学習は緩める方向にだけ働きます。基準を勝手に厳しくして数え漏れを増やすことはせず、「あなたはこのくらいのテンポだから、この速さまでは1回として認める」という調整だけを行います。学習した内容は端末内に保存され、次に開いたときにも引き継がれます。
だから、使い始めより少し使い込んだあとのほうが、自分の動きになじんできます。
それでも間違えるとき
正直に書きます。自動カウントは完璧ではありません。
スクワットに似た大きな上下動をすれば、近い動きとして拾ってしまうことはあります。逆に、極端に浅い・速いスクワットは、揺れとの区別がつきにくくなります。
足鍛帳は、こうした誤りをできるだけ減らすために、いくつかの仕掛けを持っています。
- ポケットへの出し入れのような強い衝撃を感じたら、その瞬間はカウントを止めて基準を作り直す
- スクワット中の激しい値でノイズ帯を汚さないよう、落ち着いているときだけ基準を更新する
- どこかの段階で長く止まったら、状態をリセットして待機へ戻す
それでも、動きには個人差があり、環境にもばらつきがあります。だからこそ、感度設定で自分に合わせられるようにしています。「絶対に間違えない魔法」ではなく、「あなたの動きに寄せながら、できるだけ正確に数える道具」だと思ってください。
実際に、数えてみる
仕組みが分かると、数字の増え方の見え方が少し変わるかもしれません。
足鍛帳 は、ここで説明した加速度センサーと判定アルゴリズムで、スクワットを自動で数えるアプリです。手を止めて回数をメモする必要がないので、動きに集中できます。数えた回数は、その日の達成や連続記録として積み上がっていきます。
そもそも「なぜ回数を記録すると続くのか」から知りたい人は、スクワットが続かない人に足りないのは、やる気より記録かもしれない を先に読むとつながりやすいです。
まとめ
スマホがスクワットを1回と数えるまでには、いくつもの判断があります。
- 見ているのは映像ではなく加速度(1秒に50回)
- 動きの加速度を重力へ射影して、向きに依存せず上下を読む
- 直近の動きからノイズ帯を作り、帯を越えて沈む→底→上がると進んだときだけ数える
- 最初の数回で、あなたのペースに合わせて学習する
- 強い衝撃や不安定な値は、意図的に無視して基準を守る
運動としてのスクワットは単純です。でも、それを機械が正しく1回と数えるには、こうした地味な工夫が積み重なっています。
スクワットそのものの始め方や続け方から知りたい人は、スクワットまとめ から関連記事へ進めます。