(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-28
(45)【発行日】2024-01-12
(54)【発明の名称】プログラム、情報処理装置、および情報処理方法
(51)【国際特許分類】
A61B 5/11 20060101AFI20240104BHJP
A61B 5/22 20060101ALI20240104BHJP
A63B 69/00 20060101ALI20240104BHJP
A63B 71/06 20060101ALI20240104BHJP
G06T 7/20 20170101ALI20240104BHJP
G06T 7/00 20170101ALI20240104BHJP
【FI】
A61B5/11 230
A61B5/22 110
A63B69/00 A
A63B71/06 J
G06T7/20 300Z
G06T7/00 350B
(21)【出願番号】P 2023509558
(86)(22)【出願日】2022-08-22
(86)【国際出願番号】 JP2022031632
(87)【国際公開番号】W WO2023027046
(87)【国際公開日】2023-03-02
【審査請求日】2023-02-09
(31)【優先権主張番号】P 2021137960
(32)【優先日】2021-08-26
(33)【優先権主張国・地域又は機関】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】520513875
【氏名又は名称】株式会社CaTe
(74)【代理人】
【識別番号】110002815
【氏名又は名称】IPTech弁理士法人
(72)【発明者】
【氏名】寺嶋 一裕
【審査官】北島 拓馬
(56)【参考文献】
【文献】特開2018-026131(JP,A)
【文献】国際公開第2020/218368(WO,A1)
【文献】特開2019-071963(JP,A)
【文献】中国特許出願公開第108114405(CN,A)
【文献】特開2019-025134(JP,A)
【文献】国際公開第2021/132426(WO,A1)
【文献】特表2007-500547(JP,A)
【文献】特開2001-017565(JP,A)
【文献】米国特許出願公開第2015/0146918(US,A1)
【文献】林 秀和,Kinectを用いた自転車トレーニングシステムに関する研究-移動手段における自転車利用促進に向けて-,愛知県立大学情報科学部 平成26年度卒業論文要旨,日本,2015年,[Online],[検索日 2023/08/23]
【文献】櫻庭 彬生 等,モーションセンサを利用した作業姿勢分析システムの提案,公益社団法人 日本経営工学会2016年秋季大会予稿集,2016年10月28日,第174-175頁
(58)【調査した分野】(Int.Cl.,DB名)
A61B 5/00 - 5/398
A63B 1/00 -26/00
A63B 69/00 -69/40
A63B 71/00 -71/16
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
運動中のユーザの写ったユーザ動画を取得する手段、
前記ユーザ動画に基づいて、前記ユーザの脚の回転数に関する推定を行う手段
として機能させ、
前記ユーザ動画は、ペダルを漕いでいる前記ユーザを撮影した動画であ
り、
前記脚の回転数に関する推定を行う手段は、前記ユーザ動画に基づく入力データに、推定モデルを適用することで、前記ユーザの脚の回転数に関する推定を行う、
プログラム。
【請求項2】
前記推定モデルは、運動中の被験者の写った被験者動画に関するデータを含む入力データと、当該入力データの各々に関連付けられた正解データとを含む教師データセットを用いた教師あり学習により作成された学習済みモデル、または当該学習済みモデルの派生モデルもしくは蒸留モデルに相当する、
請求項1に記載のプログラム。
【請求項3】
前記推定モデルを適用される入力データは、前記ユーザの骨格に関するデータを含む、
請求項1または請求項2に記載のプログラム。
【請求項4】
前記推定モデルを適用される入力データは、基準点から前記ユーザの各部位までの深度に関するデータにさらに基づく、
請求項1乃至請求項3のいずれかに記載のプログラム。
【請求項5】
前記脚の回転数に関する推定を行う手段は、脚の累積回転数、回転速度、回転加速度、または脚の累積回転数から換算した走行距離の少なくとも1つを推定する、
請求項1乃至
請求項4のいずれかに記載のプログラム。
【請求項6】
前記ユーザ動画は、少なくとも前記ユーザの下半身が撮影範囲に含まれるように当該ユーザを撮影した動画である、
請求項1乃至
請求項5のいずれかに記載のプログラム。
【請求項7】
前記コンピュータを、前記ユーザの脚の回転数に関する推定の結果に基づく情報を提示する手段としてさらに機能させる、
請求項1乃至
請求項6のいずれかに記載のプログラム。
【請求項8】
前記脚の回転数に関する推定を行う手段は、脚の回転数に関する評価指標を推定し、
前記提示する手段は、前記評価指標を提示する、
請求項7に記載のプログラム。
【請求項9】
前記提示する手段は、前記評価指標の経時的変化を提示する、
請求項8に記載のプログラム。
【請求項10】
運動中のユーザの写ったユーザ動画を取得する手段と、
前記ユーザ動画に基づいて、前記ユーザの脚の回転数に関する推定を行う手段と
を具備し、
前記ユーザ動画は、ペダルを漕いでいる前記ユーザを撮影した動画であ
り、
前記脚の回転数に関する推定を行う手段は、前記ユーザ動画に基づく入力データに、推定モデルを適用することで、前記ユーザの脚の回転数に関する推定を行う、
情報処理装置。
【請求項11】
コンピュータが、
運動中のユーザの写ったユーザ動画を取得する
ステップと、
前記ユーザ動画に基づいて、前記ユーザの脚の回転数に関する推定を行う
ステップと
を具備し、
前記ユーザ動画は、ペダルを漕いでいる前記ユーザを撮影した動画であ
り、
前記脚の回転数に関する推定を行うステップでは、前記ユーザ動画に基づく入力データに、推定モデルを適用することで、前記ユーザの脚の回転数に関する推定を行う、
方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、情報処理装置、および情報処理方法に関する。
【背景技術】
【0002】
有酸素運動は、例えば、ダイエット、心臓リハビリテーションにおける運動療法、などにおいて中心的な役割を果たしている。有酸素運動に該当する運動種目として、フィットネスバイク、ジョギング、ウォーキング、水泳、エアロビクスダンス、などが知られている。特に、フィットネスバイクは、家庭内の限られたスペースであっても設置できる、膝への負担が小さい、などの利点がある。フィットネスバイクのユーザは、脚でペダルを漕ぐことでサイクリングと同様の運動を行うことができる。ユーザの脚の回転数は、フィットネスバイクのユーザの運動負荷量の評価指標の1つである。
【0003】
特許文献1には、操作者によるペダル部の回転操作に基づく情報に基づいて、HMD(Head Mounted Display)に表示する画像の内容を変化させることが記載されている。特許文献1では、ペダル装置内の磁気検出素子が、ペダル部の単位時間あたりの回転を検知し、検知結果を情報処理装置へ出力する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1の技術は、例えば磁気検出素子のような回転を検知する手段と、回転の検知結果を情報処理装置へ出力する手段とを備えたペダル装置への適用が前提とされている。つまり、特許文献1では、かかる手段を備えていない通常のフィットネスバイクについて、ユーザの脚の回転数の情報をいかにして取得するかは検討されていない。
【0006】
本開示の目的は、多様な状況下で人間の脚の回転数に関する推定を行うことである。
【課題を解決するための手段】
【0007】
本開示の一態様のプログラムは、コンピュータを、運動中のユーザの写ったユーザ動画を取得する手段、ユーザ動画に基づいて、ユーザの脚の回転数に関する推定を行う手段として機能させる。
【発明の効果】
【0008】
本開示によれば、多様な状況下で人間の脚の回転数に関する推定を行うことができる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態の情報処理システムの構成を示すブロック図である。
【
図2】本実施形態のクライアント装置の構成を示すブロック図である。
【
図3】本実施形態のサーバの構成を示すブロック図である。
【
図5】本実施形態の教師データセットのデータ構造を示す図である。
【
図6】本実施形態の情報処理のフローチャートである。
【
図7】本実施形態の情報処理において表示される画面例を示す図である。
【
図8】変形例1の教師データセットのデータ構造を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明の一実施形態について、図面に基づいて詳細に説明する。なお、実施形態を説明するための図面において、同一の構成要素には原則として同一の符号を付し、その繰り返しの説明は省略する。
【0011】
(1)情報処理システムの構成
情報処理システムの構成について説明する。
図1は、本実施形態の情報処理システムの構成を示すブロック図である。
【0012】
図1に示すように、情報処理システム1は、クライアント装置10と、サーバ30とを備える。
クライアント装置10及びサーバ30は、ネットワーク(例えば、インターネット又はイントラネット)NWを介して接続される。
【0013】
クライアント装置10は、サーバ30にリクエストを送信する情報処理装置の一例である。クライアント装置10は、例えば、スマートフォン、タブレット端末、又は、パーソナルコンピュータである。
【0014】
サーバ30は、クライアント装置10から送信されたリクエストに応じたレスポンスをクライアント装置10に提供する情報処理装置の一例である。サーバ30は、例えば、Webサーバである。
【0015】
(1-1)クライアント装置の構成
クライアント装置の構成について説明する。
図2は、本実施形態のクライアント装置の構成を示すブロック図である。
【0016】
図2に示すように、クライアント装置10は、記憶装置11と、プロセッサ12と、入出力インタフェース13と、通信インタフェース14とを備える。クライアント装置10は、ディスプレイ15と、カメラ16と、深度センサ17とに接続される。
【0017】
記憶装置11は、プログラム及びデータを記憶するように構成される。記憶装置11は、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、及び、ストレージ(例えば、フラッシュメモリ又はハードディスク)の組合せである。
【0018】
プログラムは、例えば、以下のプログラムを含む。
・OS(Operating System)のプログラム
・情報処理を実行するアプリケーション(例えば、ウェブブラウザ、リハビリアプリ、またはフィットネスアプリ)のプログラム
【0019】
データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理を実行することによって得られるデータ(つまり、情報処理の実行結果)
【0020】
プロセッサ12は、記憶装置11に記憶されたプログラムを起動することによって、クライアント装置10の機能を実現するコンピュータである。プロセッサ12は、例えば、以下の少なくとも1つである。
・CPU(Central Processing Unit)
・GPU(Graphic Processing Unit)
・ASIC(Application Specific Integrated Circuit)
・FPGA(Field Programmable Gate Array)
【0021】
入出力インタフェース13は、クライアント装置10に接続される入力デバイスから情報(例えば、ユーザの指示、画像、音)を取得し、かつ、クライアント装置10に接続される出力デバイスに情報(例えば、画像、コマンド)を出力するように構成される。
入力デバイスは、例えば、カメラ16、深度センサ17、マイクロホン、キーボード、ポインティングデバイス、タッチパネル、センサ、又は、それらの組合せである。
出力デバイスは、例えば、ディスプレイ15、スピーカ、又は、それらの組合せである。
【0022】
通信インタフェース14は、クライアント装置10と外部装置(例えば、サーバ30)との間の通信を制御するように構成される。
具体的には、通信インタフェース14は、サーバ30との通信のためのモジュール(例えば、WiFiモジュール、移動通信モジュール、またはそれらの組み合わせ)を含むことができる。
【0023】
ディスプレイ15は、画像(静止画、または動画)を表示するように構成される。ディスプレイ15は、例えば、液晶ディスプレイ、または有機ELディスプレイである。
【0024】
カメラ16は、撮影を行い、画像信号を生成するように構成される。
【0025】
深度センサ17は、例えばLIDAR(Light Detection And Ranging)である。深度センサ17は、当該深度センサ17から周囲の物体(例えば、ユーザ)までの距離(深度)を測定するように構成される。
【0026】
(1-2)サーバの構成
サーバの構成について説明する。
図3は、本実施形態のサーバの構成を示すブロック図である。
【0027】
図3に示すように、サーバ30は、記憶装置31と、プロセッサ32と、入出力インタフェース33と、通信インタフェース34とを備える。
【0028】
記憶装置31は、プログラム及びデータを記憶するように構成される。記憶装置31は、例えば、ROM、RAM、及び、ストレージの組合せである。
【0029】
プログラムは、例えば、以下のプログラムを含む。
・OSのプログラム
・情報処理を実行するアプリケーションのプログラム
【0030】
データは、例えば、以下のデータを含む。
・情報処理において参照されるデータベース
・情報処理の実行結果
【0031】
プロセッサ32は、記憶装置31に記憶されたプログラムを起動することによって、サーバ30の機能を実現するコンピュータである。プロセッサ32は、例えば、以下の少なくとも1つである。
・CPU
・GPU
・ASIC
・FPGA
【0032】
入出力インタフェース33は、サーバ30に接続される入力デバイスから情報(例えば、ユーザの指示)を取得し、かつ、サーバ30に接続される出力デバイスに情報を出力するように構成される。
入力デバイスは、例えば、キーボード、ポインティングデバイス、タッチパネル、又は、それらの組合せである。
出力デバイスは、例えば、ディスプレイである。
【0033】
通信インタフェース34は、サーバ30と外部装置(例えば、クライアント装置10)との間の通信を制御するように構成される。
【0034】
(2)実施形態の概要
本実施形態の概要について説明する。
図4は、本実施形態の概要の説明図である。
【0035】
図4に示すように、クライアント装置10のカメラ16は、運動中のユーザUS1の外観(例えば全身)を撮影する。
図4の例では、ユーザUS1がペダルを漕ぐ運動(例えば、フィットネスバイク、エルゴメーター、自転車)を行う例を示しているが、ユーザUS1は脚の回転(つまり、周期的な動き)を伴う任意の運動(有酸素運動、または無酸素運動)を行うことができる。
【0036】
一例として、カメラ16は、ユーザUS1の外観を、正面または斜め前から撮影する。深度センサ17は、当該深度センサ17からユーザUS1の各部位までの距離(深度)を測定する。なお、例えばカメラ16によって生成される動画データ(2次元)と、例えば深度センサ17によって生成される深度データとを組み合わせることで、3次元動画データを生成することも可能である。
【0037】
クライアント装置10は、少なくとも、カメラ16から取得した動画データを参照し、運動中のユーザの骨格を解析する。クライアント装置10は、運動中のユーザの骨格をより適切に解析するために、深度センサ17から取得した深度データをさらに参照してもよい。クライアント装置10は、動画データ(或いは、動画データおよび深度データ)の解析結果に基づく、運動中のユーザUS1の骨格に関するデータ(以下、「ユーザ骨格データ」という)をサーバ30へ送信する。
【0038】
サーバ30は、取得したユーザ骨格データに、学習済みモデルLM1(「推定モデル」の一例)を適用することで、ユーザUS1の脚の回転数に関する推定を行う。サーバ30は、推定結果(例えば、単位時間あたりのユーザUS1の脚の回転数を示す数値)をクライアント装置10へ送信する。
【0039】
このように、情報処理システム1は、運動中のユーザUS1の動画(或いは、動画および深度)に基づいて、当該ユーザUS1の脚の回転数に関する推定を行う。故に、この情報処理システム1によれば、脚の回転数を検知する手段、または検知結果を出力する手段を備えていないトレーニング機器を用いてユーザUS1が運動を行った場合であっても、当該ユーザの脚の回転数を推定することができる。つまり、多様な状況下で人間の脚の回転数に関する推定を行うことができる。
【0040】
(3)教師データセット
本実施形態の教師データセットについて説明する。
図5は、本実施形態の教師データセットのデータ構造を示す図である。
【0041】
図5に示すように、教師データセットは、複数の教師データを含む。教師データは、対象モデルの訓練または評価に用いられる。教師データは、サンプルIDと、入力データと、正解データとを含む。
【0042】
サンプルIDは、教師データを識別する情報である。
【0043】
入力データは、訓練時または評価時に対象モデルに入力されるデータである。入力データは、対象モデルの訓練時または評価時に用いられる例題に相当する。一例として、入力データは、被験者の骨格データを含む。被験者の骨格データは、運動中の被験者の骨格に関するデータ(例えば特徴量)である。
【0044】
被験者は、情報処理システム1の運用時に脚の回転数に関する推定が行われるユーザと同一人物であってもよいし、異なる人物であってもよい。被験者およびユーザを同一人物とすることで、対象モデルがユーザの個性を学習し、推定精度が向上する可能性がある。他方、被験者がユーザと異なる人物であることを許容することは、教師データセットの豊富化が容易となる利点がある。また、被験者は、ユーザを含む複数人、またはユーザを含まない複数人により構成されてもよい。
【0045】
骨格データは、例えば、被験者の各部位の速度、または加速度に関するデータ(被験者が使用する筋肉の部位の変化、または被験者の体感のぶれに関するデータを含み得る)を含む。
【0046】
骨格データの少なくとも一部は、被験者動画データ(或いは、被験者動画データおよび被験者深度データ)を参照して運動中の被験者の骨格を解析することで取得可能である。一例として、iOS(登録商標) 14のSDKであるVision、または他の骨格検知アルゴリズムが骨格の解析に利用可能である。或いは、教師データセット向けの骨格データは、例えば、被験者の各部位に動きセンサを装着した状態で運動を行わせることで取得可能である。
【0047】
被験者動画データは、運動中の被験者の写った被験者動画に関するデータである。被験者動画は、典型的には、少なくとも被験者の下半身(具体的には、被験者の脚)が撮影範囲に含まれるように、当該被験者を撮影した動画である。被験者動画データは、例えば、運動中の被験者の外観(例えば全身)を正面または斜め前(例えば、45度前方)からカメラ(一例として、スマートフォンに搭載されたカメラ)で撮影することで取得可能である。
【0048】
被験者深度データは、深度センサから運動中の被験者の各部位(典型的には脚)までの距離(深度)に関するデータである。被験者深度データは、被験者動画の撮影時に、深度センサを動作させることで取得可能である。
【0049】
正解データは、対応する入力データ(例題)に対する正解に相当するデータである。対象モデルは、入力データに対して正解データにより近い出力を行うように訓練(教師あり学習)される。一例として、正解データは、脚の回転数の評価指標、または当該評価指標を決定するための材料となる指標、の少なくとも1つを含む。一例として脚の回転数の評価指標は、以下の少なくとも1つを含むことができる。
・累積回転数
・単位時間あたりの回転数(つまり回転速度)
・回転速度の時間微分(つまり回転加速度)
ただし、脚の回転数の指標は、脚の回転(つまり、周期的な動き)を定量的に把握するための任意の指標であってよく、ここに例示した指標に限定されない。脚の回転数の指標は、走行距離(累積回転数(ケイデンス)とペダル1回転あたりの走行距離との積)、運動負荷量のように上記指標に基づいて算出可能な指標を含んでもよい。
【0050】
運動負荷量は、運動の負荷を定量的に評価するための指標である。運動負荷は、以下の少なくとも1つを用いて数値により表すことができる。
・エネルギー(カロリー)消費量
・酸素消費量
・心拍数
【0051】
正解データは、例えば、被験者動画撮影時の被験者の脚の回転数を適切なセンサ(例えばケイデンスセンサ)により実測することで取得可能である。或いは、正解データは、脚に動きセンサ(例えば加速度センサ)を装着した状態で被験者に運動させ、動きセンサによるセンシング結果に基づき所定のアルゴリズム、または学習済みモデルにより被験者の脚の回転数に関する推定を行うことによっても取得可能である。或いは、被験者動画を視聴した人間が被験者の脚の回転数を計測することで正解データを付与してもよい。
【0052】
(4)推定モデル
サーバ30によって用いられる推定モデルは、教師データセット(
図5)を用いた教師あり学習により作成された学習済みモデル、または当該学習済みモデルの派生モデルもしくは蒸留モデルに相当する。
【0053】
(5)情報処理
本実施形態の情報処理について説明する。
図6は、本実施形態の情報処理のフローチャートである。
図7は、本実施形態の情報処理において表示される画面例を示す図である。
【0054】
情報処理は、例えば以下の開始条件のいずれかの成立に応じて開始する。
・他の処理によって情報処理が呼び出された。
・ユーザが情報処理を呼び出すための操作を行った。
・クライアント装置10が所定の状態(例えば、所定のアプリの起動)になった。
・所定の日時が到来した。
・所定のイベントから所定の時間が経過した。
【0055】
図6に示すように、クライアント装置10は、センシング(S110)を実行する。
具体的には、クライアント装置10は、カメラ16の動作を有効にすることで、運動中のユーザの動画(以下、「ユーザ動画」という)の撮影を開始する。ユーザ動画は、典型的には、少なくともユーザの下半身(具体的には、ユーザの脚)が撮影範囲に含まれるように、当該ユーザを撮影した動画である。
【0056】
また、クライアント装置10は、深度センサ17の動作を有効にすることで、当該深度センサ17から運動中のユーザの各部位までの距離(以下、「ユーザ深度」という)の計測を開始する。
【0057】
ステップS110の後に、クライアント装置10は、データの取得(S111)を実行する。
具体的には、クライアント装置10は、ステップS110において有効とした各種センサによって生成されたセンシング結果を取得する。例えば、クライアント装置10は、カメラ16からユーザ動画データを取得し、深度センサ17からユーザ深度データを取得する。
【0058】
ステップS111の後に、クライアント装置10は、リクエスト(S112)を実行する。
具体的には、クライアント装置10は、ステップS111において取得したデータを参照し、リクエストを生成する。クライアント装置10は、生成したリクエストをサーバ30へ送信する。リクエストは、例えば、以下の少なくとも1つを含むことができる。
・ステップS111において取得したデータ(例えば、ユーザ動画データ、またはユーザ深度データ)
・ステップS111において取得したデータを加工したデータ
・ステップS111において取得したユーザ動画データ(或いは、ユーザ動画データおよびユーザ深度データ)を解析することで取得したユーザ骨格データ
【0059】
ステップS112の後に、サーバ30は、脚の回転数に関する推定(S130)を実行する。
具体的には、サーバ30は、クライアント装置10から取得したリクエストに基づいて、推定モデルの入力データを取得する。入力データは、教師データと同様に、ユーザ骨格データを含む。サーバ30は、入力データに推定モデルを適用することで、ユーザの脚の回転数に関する推定を行う。一例として、サーバ30は、ユーザの脚の回転数に関する評価指標の少なくとも1つを推定する。
【0060】
ステップS130の後に、サーバ30は、レスポンス(S131)を実行する。
具体的には、サーバ30は、ステップS130における推定の結果に基づくレスポンスを生成する。サーバ30は、生成したレスポンスをクライアント装置10へ送信する。一例として、レスポンスは以下の少なくとも1つを含むことができる。
・脚の回転数に関する推定の結果に相当するデータ
・脚の回転数に関する推定の結果を加工したデータ(例えば、クライアント装置10のディスプレイ15に表示されるべき画面のデータ、または当該画面を生成するために参照されるデータ)
【0061】
クライアント装置10は、ステップS131の後に、情報提示(S113)を実行する。
具体的には、クライアント装置10は、サーバ30から取得したレスポンス(つまり、ユーザの脚の回転数に関する推定の結果)に基づく情報をディスプレイ15に表示させる。
ただし、情報は、ユーザの代わりに、またはユーザに加えて、ユーザの指導者(例えば、医療関係者、またはトレーナー)向けに当該指導者の使用する端末に提示されてもよい。或いは、情報として、ユーザの運動体験を演出するコンテンツ(例えば、脚の回転数に関する推定の結果に応じて制御される風景またはビデオゲームの映像)が提示されてもよい。かかるコンテンツは、ディスプレイ15の代わりに、HMDなどの外部装置のディスプレイ、または他の出力装置を介して提示されてもよい。
【0062】
一例として、クライアント装置10は、画面P10(
図7)をディスプレイ15に表示させる。画面P10は、表示オブジェクトA10、および操作オブジェクトB10を含む。
操作オブジェクトB10は、表示オブジェクトA10に表示させる脚の回転数に関する評価指標を指定する操作を受け付ける。
図7の例では、操作オブジェクトB10は、チェックボックスに相当する。
表示オブジェクトA10は、上記評価指標を推定した結果の経時的変化を表示する。
図7の例では、表示オブジェクトA10は、操作オブジェクトB10において指定されている評価指標である回転速度(rpm)を5秒毎に推定した結果の経時的変化を示すグラフを表示する。
操作オブジェクトB10において複数の評価指標が指定されている場合に、表示オブジェクトA10には、複数の評価指標を推定した結果の経時的変化を示すグラフを重畳して表示してもよいし、これらのグラフを個別に表示してもよい。
【0063】
ステップS113の後に、クライアント装置10は、情報処理(
図6)を終了する。ただし、ユーザの脚の回転数に関する推定を当該ユーザの運動中にリアルタイムに実施する場合に、クライアント装置10は、ステップS113の後にデータの取得(S111)に戻ってもよい。
【0064】
(6)小括
以上説明したように、実施形態の情報処理システム1は、運動中のユーザの動画に基づいて当該ユーザの脚の回転数に関する推定を行う。これにより、脚の回転数を検知する手段、または検知結果を出力する手段を備えていないトレーニング機器を用いてユーザが運動を行った場合であっても、当該ユーザの脚の回転数を推定することができる。つまり、多様な状況下で人間の脚の回転数に関する推定を行うことができる。
【0065】
情報処理システム1は、運動中のユーザの動画に基づく入力データに、推定モデルを適用することで、当該ユーザの脚の回転数に関する推定を行ってもよい。これにより、ユーザの脚の回転数に関する統計的な推定を短時間で行うことができる。さらに、推定モデルは、前述の教師データセット(
図5)を用いた教師あり学習により作成された学習済みモデル、または当該学習済みモデルの派生モデルもしくは蒸留モデルに相当してもよい。これにより、推定モデルを効率的に構築することができる。推定モデルを適用される入力データは、運動中のユーザの骨格に関するデータを含んでもよい。これにより、推定モデルの精度を向上させることができる。推定モデルを適用される入力データは、ユーザ動画の撮影時における、基準点(つまり、深度センサ17)からユーザの各部位までの深度に関するデータ(つまり、ユーザ深度データ)を含んでもよい。これにより、推定モデルの精度を向上させることができる。
【0066】
情報処理システム1は、ユーザの脚の累積回転数、回転速度、回転加速度、または脚の累積回転数から換算した走行距離の少なくとも1つを推定してもよい。これにより、ユーザの脚の回転数(リアルタイムの回転数を含み得る)を適切に評価することができる。
【0067】
ユーザ動画は、少なくともユーザの下半身(好ましくは、ユーザの脚)が撮影範囲に含まれるように当該ユーザを撮影した動画であってもよい。これにより、推定モデルの精度を向上させることができる。
【0068】
ユーザ動画は、ペダルを漕いでいるユーザを撮影した動画であってもよい。これにより、推定モデルの精度を向上させることができる。
【0069】
情報処理システム1は、ユーザの脚の回転数に関する推定の結果に基づく情報を提示してもよい。これにより、ユーザ、またはその指導者に、ユーザの脚の回転数に関する情報を知らせたり、ユーザの運動体験を演出するためのコンテンツ(例えば、風景またはビデオゲームの映像)を制御したりすることができる。第1例として、情報処理システム1は、ユーザの脚の回転数の評価指標を提示してもよい。これにより、情報の受け手が、ユーザの脚の回転数を適切に把握することができる。第2例として、情報処理システム1は、ユーザの脚の回転数の評価指標の経時的変化に関する情報を提示してもよい。これにより、情報の受け手が、ユーザの脚の回転数の経時的変化を把握することができる。
【0070】
(7)変形例1
変形例1について説明する。変形例1は、推定モデルに対する入力データを変形する例である。
【0071】
(7-1)変形例1の概要
【0072】
変形例1の概要について説明する。本実施形態では、ユーザ動画に基づく入力データに推定モデルを適用する例を示した。変形例1は、ユーザ動画およびユーザの健康状態の双方に基づく入力データに推定モデルを適用することで、当該ユーザの脚の回転数に関する推定を行う例である。
【0073】
健康状態は、以下の少なくとも1つを含む。
・年齢
・性別
・身長
・体重
・体脂肪率
・筋肉量
・骨密度
・現病歴
・既往歴
・内服歴
・手術歴
・生活歴(例えば、喫煙歴、飲酒歴、日常生活動作(ADL)、フレイルスコア、など)
・家族歴
・呼吸機能検査の結果
・呼吸機能検査以外の検査結果(例えば、血液検査、尿検査、心電図検査(ホルター心電図検査を含む)、心臓超音波検査、X線検査、CT検査(心臓形態CT・冠動脈CT含む)、MRI検査、核医学検査、PET検査、などの結果)
・心臓リハビリテーション施行中に取得されたデータ(Borg指数含む)
【0074】
(7-2)教師データセット
変形例1の教師データセットについて説明する。
図8は、変形例1の教師データセットのデータ構造を示す図である。
【0075】
図8に示すように、変形例1の教師データセットは、複数の教師データを含む。教師データは、対象モデルの訓練または評価に用いられる。教師データは、サンプルIDと、入力データと、正解データとを含む。
【0076】
サンプルIDおよび正解データは、本実施形態において説明したとおりである。
【0077】
入力データは、訓練時または評価時に対象モデルに入力されるデータである。入力データは、対象モデルの訓練時または評価時に用いられる例題に相当する。一例として、入力データは、被験者の骨格データ(つまり、相対的に動的なデータ)、および被験者の健康状態に関するデータ(つまり、相対的に静的なデータ)である。被験者の骨格データは、本実施形態において説明したとおりである。
【0078】
被験者の健康状態に関するデータは、様々な方法で取得可能である。被験者の健康状態に関するデータは、被験者の運動中、または運動前もしくは運動後(安静時を含む)のいずれのタイミングで取得されてもよい。被験者の健康状態に関するデータは、被験者、またはその担当医からの申告に基づいて取得されてもよいし、医療情報システムにおいて被験者に紐づけられている情報を抽出することで取得されてもよいし、被験者のアプリ(例えばヘルスケアアプリ)経由で取得されてもよい。
【0079】
(7-3)推定モデル
変形例1において、サーバ30によって用いられる推定モデルは、教師データセット(
図8)を用いた教師あり学習により作成された学習済みモデル、または当該学習済みモデルの派生モデルもしくは蒸留モデルに相当する。
【0080】
(7-4)情報処理
変形例1の情報処理について
図6を用いて説明する。
【0081】
変形例1において、クライアント装置10は
図6と同様に、センシング(S110)を実行する。
【0082】
ステップS110の後に、クライアント装置10は、データの取得(S111)を実行する。
具体的には、クライアント装置10は、ステップS110において有効とした各種センサによって生成されたセンシング結果を取得する。例えば、クライアント装置10は、カメラ16からユーザ動画データを取得し、深度センサ17からユーザ深度データを取得する。
【0083】
さらに、クライアント装置10は、ユーザの健康状態に関するデータ(以下、「ユーザ健康状態データ」という)を取得する。例えば、クライアント装置10は、ユーザ、またはその担当医による操作(申告)に基づいてユーザ健康状態データを取得してもよいし、医療情報システムにおいてユーザに紐づけられている情報を抽出することでユーザ健康状態データを取得してもよいし、ユーザのアプリ(例えばヘルスケアアプリ)経由でユーザ健康状態データを取得してもよい。ただし、クライアント装置10は、ステップS111とは異なるタイミング(例えば、ステップS110よりも前、ステップS110と同じタイミング、ステップS111よりも後のタイミング)で、ユーザ健康状態データを取得してもよい。
【0084】
ステップS111の後に、クライアント装置10は、リクエスト(S112)を実行する。
具体的には、クライアント装置10は、ステップS111において取得したデータを参照し、リクエストを生成する。クライアント装置10は、生成したリクエストをサーバ30へ送信する。リクエストは、例えば、以下の少なくとも1つを含むことができる。
・ステップS111において取得したデータ(例えば、ユーザ動画データ、ユーザ深度データ、またはユーザ健康状態データ)
・ステップS111において取得したデータを加工したデータ
・ステップS111において取得したユーザ動画データ(或いは、ユーザ動画データおよびユーザ深度データ)を解析することで取得したユーザ骨格データ
【0085】
ステップS112の後に、サーバ30は、脚の回転数に関する推定(S130)を実行する。
具体的には、サーバ30は、クライアント装置10から取得したリクエストに基づいて、推定モデルの入力データを取得する。入力データは、教師データと同様に、ユーザ骨格データ、およびユーザ健康状態データを含む。サーバ30は、入力データに推定モデルを適用することで、脚の回転数に関する推定を行う。一例として、サーバ30は、ユーザの脚の回転数に関する評価指標の少なくとも1つを推定する。
【0086】
ステップS130の後に、サーバ30は
図6と同様に、レスポンス(S131)を実行する。
ステップS131の後に、クライアント装置10は
図6と同様に、情報提示(S113)を実行する。
【0087】
(7-5)小括
以上説明したように、変形例1の情報処理システム1は、ユーザ動画およびユーザの健康状態の双方に基づく入力データに推定モデルを適用することで、当該ユーザの脚の回転数に関する推定を行う。これにより、ユーザの健康状態をさらに考慮して、高精度な推定を行うことができる。例えば、ユーザの健康状態と、教師データの元となった被験者の健康状態との間に差異がある場合であっても、妥当な推定を行うことができる。
【0088】
(8)その他の変形例
記憶装置11は、ネットワークNWを介して、クライアント装置10と接続されてもよい。ディスプレイ15は、クライアント装置10に内蔵されてもよい。記憶装置31は、ネットワークNWを介して、サーバ30と接続されてもよい。
【0089】
実施形態および変形例1の情報処理システムを、クライアント/サーバ型のシステムによって実装する例を示した。しかしながら、実施形態および変形例1の情報処理システムは、スタンドアロン型のコンピュータによって実装することもできる。一例として、クライアント装置10が単独で、推定モデルを用いて、脚の回転数に関する推定を行ってもよい。
【0090】
上記の情報処理の各ステップは、クライアント装置10及びサーバ30の何れでも実行可能である。一例として、クライアント装置10の代わりにサーバ30が、ユーザ動画(或いは、ユーザ動画およびユーザ深度)を解析することでユーザ骨格データを取得してもよい。
【0091】
上記説明では、クライアント装置10のカメラ16を用いてユーザ動画を撮影する例を示した。しかしながら、ユーザ動画は、カメラ16とは別のカメラを用いて撮影されてもよい。クライアント装置10の深度センサ17を用いてユーザ深度を計測する例を示した。しかしながら、ユーザ深度は、深度センサ17とは別の深度センサを用いて計測されてもよい。
【0092】
本実施形態および変形例1の情報処理システム1は、プレイヤーの身体の動き(例えば脚の回転数)に応じてゲーム進行が制御されるビデオゲームにも適用可能である。一例として、情報処理システム1は、ゲームプレイ中に、ユーザの脚の回転数に関する推定を行い、当該推定の結果に応じて、以下のいずれか1つを決定してもよい。これにより、ビデオゲームがユーザの健康増進に与える効果を高めることができる。
・ユーザに与えられる、ビデオゲームに関する課題(例えば、ステージ、ミッション、クエスト)の質(例えば難易度)、または量
・ユーザに与えられる、ビデオゲームに関する特典(例えば、ゲーム内通貨、アイテム、ボーナス)の質(例えば種類)、または量
【0093】
クライアント装置10に搭載されたマイクロホン、またはクライアント装置10に接続されたマイクロホンが、ユーザ動画の撮影時(つまり、ユーザの運動中)にユーザが発する音波を受信し、音データを生成してもよい。音データは、ユーザ骨格データとともに推定モデルに対する入力データを構成し得る。ユーザが発する音は、例えば以下の少なくとも1つである。
・ユーザの脚の回転により発する音波(例えば、ペダル、またはペダルに接続された駆動部から生じる音)
・ユーザの呼吸、または発声に伴って生じる音
【0094】
推定モデルに対する入力データの一部として加速度データを用いることも可能である。或いは、加速度データを参照してユーザの骨格を解析してもよい。加速度データは、例えば、ユーザ動画の撮影時(つまり、ユーザの運動中)にユーザに加速度センサを備えたクライアント装置10またはウェアラブルデバイスをユーザに携行または装着させることで取得可能である。
【0095】
上記説明では、ペダル漕ぎによる足の回転を例示した。しかしながら、脚の回転は、ペダル漕ぎのような円運動に限らず、足踏みのような周期的運動全般を含み得る。要するに、脚の回転数は、足踏み、または歩数として適宜読み替えることもできる。
【0096】
変形例1では、健康状態に基づく入力データに推定モデルを適用する例を示した。しかしながら、被験者の健康状態(の少なくとも一部)に基づいて、複数の推定モデルを構築することも可能である。この場合に、ユーザの健康状態(の少なくとも一部)が、推定モデルを選択するために参照されてもよい。このさらなる変形例において、推定モデルの入力データは、ユーザの健康状態に基づかないデータであってもよいし、ユーザの健康状態およびユーザ動画に基づくデータであってもよい。
【0097】
以上、本発明の実施形態および変形例について詳細に説明したが、本発明の範囲は上記の実施形態および変形例に限定されない。また、上記の実施形態および変形例は、本発明の主旨を逸脱しない範囲において、種々の改良や変更が可能である。また、上記の実施形態及び変形例は、組合せ可能である。
【符号の説明】
【0098】
1 :情報処理システム
10 :クライアント装置
11 :記憶装置
12 :プロセッサ
13 :入出力インタフェース
14 :通信インタフェース
15 :ディスプレイ
16 :カメラ
17 :深度センサ
30 :サーバ
31 :記憶装置
32 :プロセッサ
33 :入出力インタフェース
34 :通信インタフェース