IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特許7484293アニメーション生成装置、アニメーション生成方法及びプログラム
<>
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図1
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図2
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図3
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図4
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図5
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図6
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図7
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図8
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図9
  • 特許-アニメーション生成装置、アニメーション生成方法及びプログラム 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-08
(45)【発行日】2024-05-16
(54)【発明の名称】アニメーション生成装置、アニメーション生成方法及びプログラム
(51)【国際特許分類】
   G06T 13/40 20110101AFI20240509BHJP
   A63B 69/00 20060101ALI20240509BHJP
   A63B 71/06 20060101ALI20240509BHJP
   A61B 5/11 20060101ALI20240509BHJP
【FI】
G06T13/40
A63B69/00 C
A63B71/06 J
A61B5/11 200
A61B5/11 230
【請求項の数】 12
(21)【出願番号】P 2020054541
(22)【出願日】2020-03-25
(65)【公開番号】P2021157289
(43)【公開日】2021-10-07
【審査請求日】2023-03-15
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】100095407
【弁理士】
【氏名又は名称】木村 満
(72)【発明者】
【氏名】佐々木 雅昭
【審査官】中田 剛史
(56)【参考文献】
【文献】特開2013-188293(JP,A)
【文献】特開2019-187878(JP,A)
【文献】国際公開第2017/154894(WO,A1)
【文献】特開2014-124448(JP,A)
【文献】特開2011-078753(JP,A)
【文献】国際公開第2019/049298(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 13/40
A63B 69/00
A63B 71/06
A61B 5/11
(57)【特許請求の範囲】
【請求項1】
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類手段と、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類手段により分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得手段と、
前記特徴パラメータ取得手段により取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成手段と、
を備えるアニメーション生成装置。
【請求項2】
前記特徴パラメータ取得手段は、前記特徴パラメータと、前記ユーザ運動状態パラメータのうちの前記特徴パラメータ以外のユーザ運動状態パラメータである他のユーザ運動状態パラメータとを取得し、
前記生成手段は、前記ユーザアニメーションへの前記特徴パラメータの反映度合が、前記ユーザアニメーションへの前記他のユーザ運動状態パラメータの反映度合よりも大きくなるように、前記ユーザアニメーションを生成する、
請求項1に記載のアニメーション生成装置。
【請求項3】
前記生成手段は、複数の人間の各々の運動状態を表す複数の運動状態パラメータと、前記複数の人間の各々の運動中のフォームを表すアニメーションデータと、を対応付けて記憶するデータベースから、取得された前記特徴パラメータに基づいて前記アニメーションデータを取得し、前記取得したアニメーションデータに基づいて、前記ユーザアニメーションを生成する、
請求項1または2に記載のアニメーション生成装置。
【請求項4】
前記データベースは、人間の運動中のフォームのタイプと、前記複数の人間の各々の運動中のフォームを表すアニメーションデータと、を対応付けて記憶し、
前記生成手段は、前記データベースから、前記分類手段により分類された前記ユーザの運動中のフォーム及び前記特徴パラメータに基づいて、前記アニメーションデータを取得する、
請求項3に記載のアニメーション生成装置。
【請求項5】
前記複数の人間の各々の運動中のフォームを表すアニメーションデータは、前記アニメーションデータに対応付けられた運動状態パラメータを閾値に基づいて分類された前記複数のタイプ、または前記複数のタイプの各々の代表アニメーションと類似するか否かにより分類された前記複数のタイプのいずれかに対応付けられている、
請求項4に記載のアニメーション生成装置。
【請求項6】
前記分類手段は、予め設定した分類条件に基づいて、前記ユーザの運動中のフォームを前記複数のタイプのいずれかに分類する、
請求項1から5のいずれか1項に記載のアニメーション生成装置。
【請求項7】
前記分類条件は、前記複数のタイプの各々に対応する複数の運動状態パラメータ毎に設定された閾値を含み、前記複数のタイプの各々に対して設定されている、
請求項6に記載のアニメーション生成装置。
【請求項8】
前記生成手段は、前記分類されたユーザの運動中のフォームのタイプに対応付けられた複数のアニメーションデータを取得し、前記特徴パラメータと前記アニメーションデータに対応付けられた運動状態パラメータとに基づいて前記アニメーションデータにそれぞれ重み付けを設定し、設定した重み付けに基づき、前記取得した複数のアニメーションデータを合成することによって、前記ユーザアニメーションを生成する、
請求項1から7のいずれか1項に記載のアニメーション生成装置。
【請求項9】
前記分類手段は、前記ユーザの運動中のフォームを、第1タイプと、前記第1タイプとは異なる第2タイプとに分類し、
前記特徴パラメータ取得手段は、前記分類手段により分類された前記ユーザの運動中のフォームが前記第1タイプである場合に、前記特徴パラメータとして第1の特徴パラメータを取得し、前記分類手段により分類された前記ユーザの運動中のフォームが前記第2タイプである場合に、前記第1の特徴パラメータとは異なる第2の特徴パラメータを前記特徴パラメータとして取得する、
請求項1から8のいずれか1項に記載のアニメーション生成装置。
【請求項10】
前記ユーザ運動状態パラメータは、ランニング中の前記ユーザの運動状態を表すパラメータであり、接地時間率、走行速度、腰の上下動、沈み込み量、前方への加速度、腰の回転角度、腰の前傾角度、腕の振り、ピッチ及びストライドの少なくとも1つのパラメータを含み、
前記分類手段は、前記少なくとも1つのパラメータに基づいて、前記ユーザの運動中のフォームを分類する、
請求項1から9のいずれか1項に記載のアニメーション生成装置。
【請求項11】
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類ステップと、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類ステップにより分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得ステップと、
前記特徴パラメータ取得ステップにより取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成ステップと、
を備えるアニメーション生成方法。
【請求項12】
コンピュータを、
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類手段、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類手段により分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得手段、
前記特徴パラメータ取得手段により取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アニメーション生成装置、アニメーション生成方法及びプログラムに関する。
【背景技術】
【0002】
ユーザが運動時の実際の運動姿勢を知るために、胴体や手足に装着した加速度センサ等により運動中に取得した情報を用いて、ユーザの運動姿勢を再現する技術が提案されている。
【0003】
特許文献1には、運動中の人体の動作状態に関連するデータを取得するセンサ機器により取得されたデータに基づいて、運動中の人体の姿勢を反映したスケルトンモデルによるアニメーションを生成するアニメーション生成装置が開示されている。このアニメーション生成装置は、分析結果に含まれる指標に対応付けて、予め、スケルトンアニメーションの単位画像データが多数保存されたデータベース(以下「db」という)を備えている。また、運動情報生成システムでは、ユーザのランニング中におけるユーザの動作がセンサで検出され、その検出結果を分析することによって得られたユーザのピッチやストライド、体幹のブレ、接地時間などの複数のユーザ指標と一致又は近似する指標に対応する単位画像データを、上記のdbから読み出す。そして、読み出した単位画像データに基づいて、ユーザのランニング中の運動状態を反映したユーザアニメーションを生成する。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2014-124448号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
人間のランニングフォームは千差万別であるため、指標が上記の複数のユーザ指標の一部について一致又は近似している場合であっても、その指標に対応するdb内のアニメーションがユーザのランニングフォームを適切に表しているとは限らない。このため、従来の運動フォームデータ生成システムでは、ユーザアニメーションを適切に生成できないおそれがある。
【0006】
本発明は、上記のような課題を解決するためになされたものであり、ユーザの運動中のフォームを表すユーザアニメーションを適切に生成できるアニメーション生成装置、アニメーション生成方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の目的を達成するため、本発明に係るアニメーション生成装置の一様態は、
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類手段と、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類手段により分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得手段と、
前記特徴パラメータ取得手段により取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成手段と、
を備える。
【発明の効果】
【0008】
本発明によれば、ユーザの運動中のフォームを表すユーザアニメーションを適切に生成できるアニメーション生成装置、アニメーション生成方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0009】
図1】本発明の実施の形態に係るフォーム情報表示システムを示す図である。
図2】本発明の実施の形態に係るフォーム情報表示装置の構成を示すブロック図である。
図3】本発明の実施の形態に係るフォーム情報表示装置のデータベースに記憶されたデータを示す図である。
図4】本発明の実施の形態に係る運動状態パラメータをプロットした図である。
図5】本発明の実施の形態に係るウエストセンサの構成を示すブロック図である。
図6】本発明の実施の形態に係る分類条件作成処理を示すフローチャートである。
図7】本発明の実施の形態に係る分類条件および特徴パラメータを示すテーブルである。
図8】本発明の実施の形態に係る運動データ送信処理を示すフローチャートである。
図9】本発明の実施の形態に係る表示処理を示すフローチャートである。
図10】本発明の実施の形態に係るアニメーション作成処理を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明を実施するための形態に係るフォーム情報表示システム及びフォーム情報表示装置について図面を参照しながら説明する。
【0011】
本実施の形態に係るフォーム情報表示システム1は、図1に示すように、フォーム情報表示装置(アニメーション生成装置)100と、ウエストセンサ200と、を備える。ウエストセンサ200は、ベルト10によりユーザの腰に装着され、ユーザの運動状態を表す複数のユーザ運動状態パラメータを取得(検出)し、取得した複数のユーザ運動状態パラメータをフォーム情報表示装置100に送信する。フォーム情報表示装置100は、ウエストセンサ200から送信された複数のユーザ運動状態パラメータを取得し、ユーザの運動中のフォームを表すユーザアニメーションを生成し、生成したユーザアニメーションを表示する。ここでは、ユーザがランニングする場合に、ユーザのランニングフォームを表すユーザアニメーションを生成し、生成したユーザアニメーションを表示する例について説明する。なお、ランニングとは、両足を同時に接地せず、少なくとも右足又は左足の何れか一方が地面から離れて、歩行速度より速く移動することである。
【0012】
フォーム情報表示装置100は、図2に示すように、制御部110と、通信部120と、ディスプレイ130と、操作部140と、ROM(Read Only Memory)150と、RAM(Random Access Memory)160と、を備える。フォーム情報表示装置100は、例えば、スマートフォンやタブレットPC(Personal Computer)から構成される。ROM150は、フラッシュメモリ等の不揮発性メモリから構成され、スケルトンアニメーションデータを格納するデータベースDB、及び、制御部110が各種機能を実現するためのプログラムを記憶する。RAM160は、揮発性メモリから構成され、制御部110が各種処理を行うためのプログラムを実行するための作業領域として用いられる。
【0013】
データベースDBは、図3に示すように、複数の人間の各々の運動状態が反映されたスケルトンアニメーションデータと、ウエストセンサ200を複数の人間の各々に装着した場合にこのウエストセンサ200により取得(検出)された複数の人間の各々の運動状態を表す複数の運動状態パラメータと、を対応付けて記憶する。スケルトンとは、一般に、動物や人間の全体的骨格を指すもので、スケルトンそのもので動作を表現したり、コンピュータグラフィックにてバインドしたモデルをアニメートしたりするために用いられ、可動部であるジョイント(関節)と、剛体であるボーンから構成される。具体的には、被験者nにウエストセンサ200を取り付け、複数(N)人の被験者nがランニングしているとき、ウエストセンサ200により取得された複数の運動状態パラメータと、モーションキャプチャを用いて作成されたスケルトンアニメーションデータと、をそれぞれ取得する。なお、nは、1からNまでの自然数である。データベースDBには、取得した各被験者nの複数の運動状態パラメータP1~P10と、スケルトンアニメーションデータと、が対応付けて記憶される。ここでは、N人の被験者のデータが記憶される。複数の運動状態パラメータP1~P10は、例えばそれぞれ、各被験者nの接地時間率、被験者nの走行速度、被験者nの腰の上下動、被験者nの沈み込み量、被験者nの前方への加速度、被験者nの腰の回転角度、被験者nの腰の前傾角度、被験者nの腕の振り、被験者nのピッチ(1歩にかかる時間)及び、被験者nのストライド(歩幅)を含む。接地時間率は、接地時間をピッチで除したものであり、接地時間は、被験者の片足が接地している時間である。沈み込み量は、被験者nが接地した瞬間における被験者nの腰の上下方向の座標をゼロとしたときに、このゼロから被験者nの腰の沈み込みの最下点までの距離を、被験者nの身長で除したものである。腰の回転角度は、上下方向を軸としたときの腰の最大回転角度である。なお、スケルトンアニメーションについては、特開2018-26149号公報に詳細に記載されている。
【0014】
図2に示す制御部110は、CPU(Central Processing Unit)等から構成される。制御部110は、ROMに記憶されたプログラムを実行することにより、分類部111、特徴パラメータ取得部112、及び生成部113として機能する。
【0015】
分類部111は、被験者nとは異なるユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する。また、分類部111は、ユーザの運動中のフォームを分類するための閾値を含む分類条件を予め作成する。分類条件の作成は、例えば次のようにして行われる。分類部111は、被験者nのスケルトンアニメーションに対応する複数の運動状態パラメータをタイプ1~4の基準閾値と比較する。基準閾値は、それぞれのタイプ毎に予め設定される。次に、分類部111は、被験者nのスケルトンアニメーションをタイプ1~4の何れかに分類し、データベースDBに記憶する。次に、データベースDBに記憶された被験者のランニングフォームのタイプと運動状態パラメータとに基づいて、タイプmに分類された複数の被験者の運動状態パラメータを平均化することによって、最終的な閾値を算出し、算出した最終的な閾値に基づく分類条件を作成する。他の方法として、予めデータベースDBに記憶した複数の被験者nの各々のスケルトンアニメーションに対応付けられた運動状態パラメータをタイプ1~4の代表アニメーションに対応付けられた閾値に基づいて、各被験者のスケルトンアニメーションをタイプ1からタイプ4の何れかに分類してもよい。スケルトンアニメーションは、各被験者に装着されたモーションキャプチャ装置により各被験者の運動中に取得したモーションキャプチャデータに基づいて、作成する。類似度は、スケルトンアニメーションのフレーム数のそれぞれで、腰、両膝、足首の空間位置の差を計算し、その差の大きさで評価する。下半身に限定して類似度を判定することで、下半身の動きに特徴があるランニングフォームを反映するタイプ分けが可能となる。複数のデータでこの差を評価することで、差の大きさから閾値を作成し、類似度を決めることができる。なお、スケルトンアニメーションデータに対応付けられた運動状態パラメータと閾値との比較結果に基づいて、スケルトンアニメーションをそれぞれのタイプに分類してもよい。この閾値は、データベースDBの作成者により予め設定されてもよい。また、データベースDBの作成者により、スケルトンアニメーションがそれぞれのタイプに分類されてもよい。また、予めデータベースDBに記憶した複数の被験者nの各々のスケルトンアニメーションをタイプ1~4の代表アニメーションと類似度を判断し、各被験者のスケルトンアニメーションをタイプ1からタイプ4の何れかに分類してもよい。次に、分類部111は、それぞれのタイプ内の全ての運動状態パラメータの組み合わせを用いて、それぞれのタイプの閾値を含む分類条件を作成する。
【0016】
また、分類部111は、ウエストセンサ200から送信された複数のユーザ運動状態パラメータを受信し、複数のユーザ運動状態パラメータは、RAM160に保存される。ユーザ運動状態パラメータは、ユーザの接地時間率、ユーザの走行速度、ユーザの腰の上下動、ユーザの沈み込み量、ユーザの前方への加速度、ユーザの腰の回転角度、ユーザの腰の前傾角度、ユーザの腕の振り、ユーザのピッチ及び、ユーザのストライドを含む。次に、分類部111は、RAM160に保存された複数のユーザ運動状態パラメータと、分類条件とに基づいて、ユーザのランニングフォームをタイプ1からタイプ4に分類する。
【0017】
特徴パラメータ取得部112は、分類部111により分類されたユーザのランニングフォームの特徴を表す特徴パラメータを、RAM160に保存された複数のユーザ運動状態パラメータから特定し、取得する。特徴パラメータは、複数のユーザ運動状態パラメータのうち、それぞれのタイプに分類されたフォームの特徴を表すパラメータであり、それぞれのタイプに対応付けて予め設定されている。例えば、タイプ1に分類されたユーザの特徴パラメータは、ユーザの腰の回転角度と沈み込み量と前方への加速度である。タイプ2に分類されたユーザの特徴パラメータは、ユーザの前方への加速度と腰の上下動と腰の回転角度である。タイプ3に分類されたユーザの特徴パラメータは、ユーザの腰の前傾角度とストライドと腕の振りである。タイプ4に分類されたユーザの特徴パラメータは、ユーザのピッチとストライドと前方への加速度である。
【0018】
生成部113は、データベースDBから、特徴パラメータ取得部112により取得された特徴パラメータに基づいて、スケルトンアニメーションデータを取得する。また、生成部113は、取得したスケルトンアニメーションデータに基づいて、ユーザの運動状態を反映したユーザアニメーションを生成し、生成したユーザアニメーションをディスプレイ130に表示する。
【0019】
具体的には、生成部113は、データベースDBにおけるそれぞれのスケルトンアニメーションデータに対応する複数の運動状態パラメータおよびユーザに対応する特徴パラメータを図4に示すR次元空間にプロットし、ユーザの特徴パラメータを示す点SYから最も近い、スケルトンアニメーションデータに対応する運動状態パラメータを示す点S1を、特定する。この場合、図4に示す運動状態パラメータ1~3は、ユーザの互いに異なる3つの特徴パラメータ1~3と同じ種類である(例えば、特徴パラメータ1がストライドなら、運動状態パラメータ1もストライド)。次に、生成部113は、点SYと点S1についてR次元空間のR個の運動状態パラメータ毎の差を求め、最も近い運動状態パラメータを検索する。次に、生成部113は、R個の運動状態パラメータの中から最も近い運動状態パラメータをのぞいたR-1次元空間において、点SYから最も近いS2を探す。同様にして、最も差の小さい運動状態パラメータを除いたR-2次元空間にて、点SYと最も近い点S3を求める。以下同様に、点Srを予め決められた数、検索すると、生成部113は、検索した点Srに対応する複数のスケルトンアニメーションをデータベースDBから取得し、取得した複数のスケルトンアニメーションを合成することによって、ユーザアニメーションを生成する。
【0020】
ただし、上記の点SYと点Srの間の距離については、特定の閾値を用いて評価し、相対的に距離が近い点であっても、閾値以上の距離が離れているならば、その点に対応するスケルトンアニメーションは、ユーザアニメーションの生成に用いない。距離の近いスケルトンアニメーションに対応する点をS1、S2・・・Srとし、点SYから点S1までの距離をD1、点SYから点S2までの距離をD2、点SYから点Srまでの距離をDrとしたとき、ユーザアニメーションの合成のためにスケルトンアニメーションを合成する際の重み付けは、距離D1~Drに基づいて設定される。次に、生成部113は、生成したユーザアニメーションをディスプレイ130に表示する。
【0021】
通信部120は、ウエストセンサ200から送信されたユーザ運動状態パラメータを受信する。通信部120は、無線LAN(Local Area Network)、Bluetooth(登録商標)などの無線通信モジュールから構成される。
【0022】
ディスプレイ130は、ユーザの運動状態を反映したユーザアニメーションや操作に必要な画像を表示するものであり、LCD(Liquid Crystal Display)または有機EL(Electro-Luminescence)などから構成される。
【0023】
操作部140は、ユーザによる操作を受け付けるものである。なお、操作部140とディスプレイ130とは、タッチパネルディスプレイ装置を構成する。
【0024】
ウエストセンサ200は、図5に示すように、制御部210と、通信部220と、操作部230と、加速度センサ240、ジャイロセンサ250、GPS(Global Positioning System)センサ260、ROM270、RAM280と、を備える。ウエストセンサ200は、図1に示すベルト10によりユーザの腰に取り付けられ、ユーザの腰の動きを取得(検出)する。ROM270は、フラッシュメモリ等の不揮発性メモリから構成され、制御部210が各種機能を実現するためのプログラムを記憶する。RAM280は、揮発性メモリから構成され、制御部210が各種処理を行うためのプログラムを実行するための作業領域として用いられる。また、RAM280は、情報を記憶する。
【0025】
制御部210は、CPU等から構成される。制御部210は、ROM270に記憶されたプログラムを実行することにより、運動データ取得部211と、運動データ送信部212として機能する。
【0026】
運動データ取得部211は、加速度センサ240、ジャイロセンサ250及びGPSセンサ260により検出された、後述する各種のデータに基づいて、ユーザ運動状態パラメータを算出し、取得する。運動状態パラメータは、接地時間率、走行速度、腰の上下動、沈み込み量、前方への加速度、腰の回転角度、腰の前傾角度、腕の振り、ピッチ及びストライドを含む。例えば、運動データ取得部211は、着地したときの加速度と足が地面から離れたときの加速度を加速度センサ240により検出し、着地してから地面から足が離れる時間を着地してから次に足が着地するまでの時間で除すことで、接地時間率を取得する。また、運動データ取得部211は、GPSセンサ260により検出された移動速度データを、ユーザの走行速度として取得する。
【0027】
運動データ送信部212は、通信部220を介して、ユーザ運動状態パラメータをフォーム情報表示装置100に送信する。ここでは、ユーザ運動状態パラメータは、接地時間率、走行速度、腰の上下動、沈み込み量、前方への加速度、腰の回転角度、腰の前傾角度、腕の振り、ピッチ及びストライドを含む。
【0028】
通信部220は、フォーム情報表示装置100にユーザ運動状態パラメータを送信する。通信部220は、上述した通信部120と同様に、無線LAN、Bluetooth(登録商標)などの無線通信モジュールから構成される。
【0029】
操作部230は、ユーザによる開始と終了を受け付けるボタンを有し、ユーザによるこのボタン操作に基づいて、ユーザ運動状態パラメータの取得(測定)の開始及び終了を受け付けるものである。
【0030】
加速度センサ240は、ピエゾ抵抗型3軸加速度センサ、静電容量型3軸加速度センサ、熱検知型3軸加速度センサ等の周知の方式で加速度を検出するセンサである。加速度センサ240は、互いに直交するX軸方向、Y軸方向及びZ軸方向(例えばそれぞれ前後方向、上下方向、左右方向)の加速度を検出し、検出された各方向の加速度データを制御部210に出力する。この場合、加速度センサ240がユーザの腰に装着されているため、ユーザの運動中、制御部210には、ユーザの腰の各方向の加速度のデータが入力される。入力された加速度データは、RAM280に保存される。
【0031】
ジャイロセンサ250は、ピエゾ抵抗型ジャイロセンサ、静電容量型ジャイロセンサ、圧電型ジャイロセンサ等の周知の方式で角速度を検出するセンサである。ジャイロセンサ250は、上記のX軸、Y軸及びZ軸を軸心とする角速度を検出し、検出された角速度データを制御部210に出力する。この場合、ジャイロセンサ250が加速度センサ240と同様にユーザの腰に装着されているため、ユーザの運動中、制御部210には、ユーザの腰の各軸を中心とする角速度データが入力される。ここでは、ローリング、ピッチング及びヨーイングの角速度データが入力される。入力された角速度データは、RAM280に保存される。
【0032】
GPSセンサ260は、複数のGPS衛星からの電波を受信することにより、緯度、経度情報に基づく地理的な位置、及び、その位置の高度(標高)を検出して、検出した位置データ及び高度データを制御部210に出力する。また、GPSセンサ260は、GPS衛星からの電波のドップラーシフト効果を利用して、ユーザの移動速度を検出し、検出した移動速度データを制御部210に出力する。制御部210に入力された位置データや移動速度データは、RAM280に保存される。
【0033】
次に、図6を参照しながら、以上の構成を有するフォーム情報表示装置100及びウエストセンサ200が実行する分類条件作成処理について説明する。
【0034】
フォーム情報表示装置100は、ユーザによる処理を開始させるための操作部140の操作に応答し、図6に示す分類条件作成処理を開始する。以下、フォーム情報表示装置100が実行する分類条件作成処理を、図面を参照しながら説明する。なお、分類条件作成処理は、データベースDBを作成する他の情報処理装置により予め実行され、分類条件等がデータベースDBに予め記憶されていてもよい。
【0035】
分類条件作成処理が開始されると、分類部111は、因数n=1に設定する(ステップS101)。次に、被験者nのスケルトンアニメーションに対応する複数の運動状態パラメータをタイプ1~4の基準閾値と比較する(ステップS102)。例えば、タイプ1は、ストライドが小さく、腰の上下動が小さいタイプであり、タイプ2は、ストライドが小さく、走行速度が速いタイプである。また例えば、タイプ3は、片足の接地時間が長く、走行速度が速いタイプであり、タイプ4は、走行速度が速く、沈み込み量が小さいタイプである。ここでは、タイプ1~4に分類する例について説明するが、さらに多数のタイプに分類されてもよく、予め定められたタイプに属さないタイプを一つのタイプとして有していてもよい。基準閾値は、それぞれのタイプ毎に予め設定される。次に、分類部111は、被験者nのスケルトンアニメーションをタイプ1~4の何れかに分類し、データベースDBに記憶する(ステップS103)。これにより、図3に示すように、被験者1~Nの属するタイプと運動状態パラメータとが対応付けられて記憶される。なお、1つのタイプに複数の被験者が該当する。次に、n=Nであるか否かを判定する(ステップS104)。n=Nでないと判定すると(ステップS104;No)、nをインクリメントし(ステップS105)、ステップS102に戻り、ステップS102からステップS105を繰り返す。
【0036】
次に、n=Nであると判定すると(ステップS104;Yes)、分類部111は、因数m=1に設定する(ステップS106)。次に、分類部111は、タイプmの分類条件を作成する(ステップS107)。分類条件は、ユーザの運動状態パラメータを用いてユーザのフォームのタイプを分類するものである。例えば、データベースDBに記憶された被験者のランニングフォームのタイプと運動状態パラメータとに基づいて、タイプmに分類された複数の被験者の運動状態パラメータを平均化することによって、最終的な閾値を算出し、算出した最終的な閾値に基づく分類条件を作成する。例えば、タイプ1の分類条件は、図7に示すように、ストライド2.0以下で、かつ、腰の上下動3.5以上であり、タイプ2の分類条件はストライド3.4以下で、かつ、走行速度4.3以上である。タイプ3の分類条件は接地時間2.2以上で、かつ、走行速度4.2以上である。タイプ4の分類条件は沈み込み量3.5以下で、かつ、走行速度2.4以上である。
【0037】
その後、m=Mであるか否かを判定する(ステップS108)。Mはタイプの合計数であり、ここではM=4である。m=Mでないと判定されると(ステップS108;No)、mをインクリメントし(ステップS109)、ステップS107に戻り、ステップS107からステップS109を繰り返す。m=Mであると判定されると(ステップS108;Yes)、分類条件作成処理を終了する。
【0038】
次に、ウエストセンサ200が実行する運動データ送信処理、及びフォーム情報表示装置100が実行する表示処理を説明する。
【0039】
ユーザによる処理を開始させるための操作部230の操作に応答し、ウエストセンサ200は、図8に示す運動データ送信処理を開始する。フォーム情報表示装置100は、ユーザによる処理を開始させるための操作部140の操作に応答し、図9に示す表示処理を開始する。以下、ウエストセンサ200が実行する運動データ送信処理、及びフォーム情報表示装置100が実行する表示処理を、図8及び図9をそれぞれ参照しながら説明する。
【0040】
図8に示す運動データ送信処理が開始されると、運動データ取得部211は、ユーザにより操作部230に計測開始の操作がなされたか否かを判定する(ステップS301)。計測開始の操作がなされていないと判定されると(ステップS301;No)、ステップS301を繰り返す。
【0041】
計測開始の操作がなされると(ステップS301;Yes)、運動データ取得部211は、ユーザ運動状態パラメータを取得する(ステップS302)。詳細には、運動データ取得部211は、加速度センサ240、ジャイロセンサ250及びGPSセンサ260により検出された各種のデータに基づき、前述したようにして、ユーザ運動状態パラメータを取得する。運動状態パラメータは、接地時間率、走行速度、腰の上下動、沈み込み量、前方への加速度、腰の回転角度、腰の前傾角度、腕の振り、ピッチ及びストライドを含む。
【0042】
次に、運動データ取得部211は、取得したユーザ運動状態パラメータをRAM280に記憶する(ステップS303)。次に、運動データ取得部211は、ユーザにより計測を終了する操作が操作部230になされたか否かを判定する(ステップS304)。計測を終了する操作がなされていない場合(ステップS304;No)、ステップS302に戻り、ステップS302~ステップS304を繰り返す。計測を終了する指示が入力された場合(ステップS304;Yes)、ユーザ運動状態パラメータをフォーム情報表示装置100に送信する(ステップS305)。運動状態パラメータは、前述したように接地時間率などを含む。その後、運動データ送信処理を終了する。
【0043】
フォーム情報表示装置100により図9に示す表示処理が開始されると、分類部111は、ウエストセンサ200から送信された複数のユーザ運動状態パラメータを受信する(ステップS401)。受信された複数のユーザ運動状態パラメータはRAM160に保存される。次に、分類部111は、因数m=1に設定する(ステップS402)。次に、分類部111は、RAM160に保存した複数のユーザ運動状態パラメータから、ユーザのフォームをタイプmに分類するための分類条件を取得する(ステップS403)。例えば、タイプ1では、ユーザ運動状態パラメータのうちのストライド2.0以下、腰の上下動3.5以上を分類条件として取得する。
【0044】
次に、分類部111は、ユーザのランニングフォームがタイプmに該当するか否かを分類条件に基づいて判定する(ステップS404)。例えば、ストライド2.0以下、腰の上下動3.5以上でなければ、タイプ1に該当しないと判定し(ステップS404;No)、mをインクリメントし(ステップS405)、ステップS403に戻り、ステップS403からステップS405を繰り返す。
【0045】
ユーザのランニングフォームがタイプmに該当すると判定されると(ステップS404;Yes)、分類部111は、ユーザのランニングフォームをタイプmに分類する(ステップS406)。例えば、タイプ1は、ストラドが小さく、上下動が小さいタイプであり、タイプ2は、ストライドが小さく、走行速度が速いタイプである。また、例えば、タイプ3は、片足の接地時間が長く、走行速度が速いタイプであり、タイプ4は、走行速度が速く、沈み込み量が小さいタイプである。なお、ここでのタイプ1から4は、データベースDBに記憶されたタイプ1から4と同じである。
【0046】
次に、特徴パラメータ取得部112は、RAM160に保存した複数のユーザ運動状態パラメータから、分類部111により分類されたユーザの運動中のフォームの特徴を表す特徴パラメータを特定し、取得する(ステップS407)。それぞれのタイプに分類されたユーザの特徴パラメータの一例は、図7に示される。
【0047】
次に、生成部113は、データベースDBからユーザのランニングフォームのタイプに属するスケルトンアニメーションデータに対応する運動状態パラメータを取得する(ステップS408)。次に、生成部113は、アニメーション作成処理を実行する(ステップS409)。
【0048】
図10に示すアニメーション作成処理が開始されると、生成部113は、データベースDBに記憶された複数のスケルトンアニメーションデータの各々に対応する複数の運動状態パラメータおよびユーザに対応する複数の特徴パラメータを、特徴パラメータの数と同じ数の次元空間にプロットする(ステップS501)。ここで用いる運動状態パラメータは、特徴パラメータと同じ種類のものである。例えば、R個の特徴パラメータを用いる場合、R次元空間にプロットする。具体的には、特徴パラメータに対応する(と同じ種類の)運動状態パラメータが3つである場合、図4に示すように、運動状態パラメータ1をx軸、運動状態パラメータ2をy軸、運動状態パラメータ3をz軸として、3次元空間にプロットする。それぞれの点がスケルトンアニメーションまたはユーザに対応する。
【0049】
次に、生成部113は、因数r=1に設定する(ステップS502)。因数rは、ユーザの特徴パラメータを示す点SYから近い運動状態パラメータを示す点の順番を示す。次に、生成部113は、ユーザの特徴パラメータを示す点SYから最も近いアニメーションデータに対応する運動状態パラメータを示す点S1を決定する(ステップS503)。例えば、複数の運動状態パラメータに対応する複数の点から、点SYからユークリッド距離で最も近い点S1を決定する。この場合、まず、複数の点の各々の点Srが示すR次元の運動状態パラメータの座標を(G1r、G2r、・・・GRr)とし、点SYが示すユーザの特徴パラメータの座標を(G1Y、G2Y、・・・GRY)とした場合、R次元空間における点SYと点Srの間の距離は、Dr=SQRT((G1Y-G1r)・(G1Y-G1r)+(G2Y-G2r)・(G2Y-G2r)+…+(GRY-GRr)・(GRY-GRr))となる。ただし、距離Drについては、特定の閾値を用いて評価し、相対的に距離が近い点Srであっても、閾値以上の距離が離れているならば、ユーザアニメーション生成用のスケルトンアニメーションとして用いない。
【0050】
次に、距離Drに基づいて選択された点Srのうち、生成部113は、点SYと点SrについてR次元空間のR個の運動状態パラメータ毎の差を求め、最も近い運動状態パラメータを検索する(ステップS504)。具体的には、単純なユークリッド距離を用いて最も近い点を判定する。点SYに最も近い点S1の運動状態パラメータの座標は(G11、G21、・・・GR1)となる。(G1y-G11)・(G1y-G11)、(G2y-G21)・(G2y-G21)・・・(GRy-GR1)・(GRy-SR1)にて運動状態パラメータ毎に、ユーザの特徴パラメータとの差を評価して、点SYと点S1で、R個の運動状態パラメータの中から、ユーザの特徴パラメータとの差が最も小さい運動状態パラメータを検索する。
【0051】
次に、生成部113は、R個の特徴パラメータの中からステップS504で特定された運動状態パラメータをのぞいたR-1次元空間においてSYから最も近いS(1+r)を検索する(ステップS505)。例えば、ステップS504で特定された運動状態パラメータが運動状態パラメータ1であれば、運動状態パラメータ2および3で規定される3-1=2次元空間において、SYから最も近いS(1+r)を検索する。次に、生成部113は、rをインクリメント、Rをデクリメントする(ステップS506)。次に、生成部113は、所定数の点Srを検索したか否かを判定する(ステップS507)。所定数は、R個の運動状態パラメータに基づいて、アニメーションデータを抽出する場合好ましくは、R以下である。所定数の点Srを検索していないと判定すると(ステップS507;No)、ステップS504に戻り、ステップS504からステップS507を繰り返す。これにより、最も差の小さい特徴パラメータを除いたR-1次元空間にて、点SYと最も近い点S2を求める。同様にして、SYとS2で、R-1個の特徴パラメータの中から最も差の小さい特徴パラメータを検索し、最も差の小さい特徴パラメータを除いたR-2次元空間にて、点SYと最も近い点S3を求める。
【0052】
所定数の点Srを検索したと判定すると(ステップS507;Yes)、生成部113は、検索した点Sr(複数の点)に対応付けられた複数のスケルトンアニメーションをデータベースDBから取得する(ステップS508)。つぎに、生成部113は、スケルトンアニメーションを合成する (ステップS509)。スケルトンアニメーションの合成は、例えば次のようにして行われる。すなわち、距離の近いr点のスケルトンアニメーションに対応する点S1、S2・・・Srとし、点SYから点S1までの距離をD1、点SYから点S2までの距離をD2、点SYから点Srまでの距離をDrとしたとき、点S1~点Srにそれぞれ対応するスケルトンアニメーションM1~Mrを、距離D1~距離Drに基づく重み付けで合成することによって、ユーザアニメーションを生成する。例えばr=4のときの点SY、点S1、点S2、点S3、点S4の関係は、図4のようになる。合成計算は、(SY1/r-1)・((D2+D3+…Dr)/(D1+D2+…Dr))・(S1+1/r-1)・((D1+D3+…Dr)/(D1+D2+…Dr)・S2)+・・・+(1/r-1)・((D1+D2+…Dr-1)/(D1+D2+…Dr)・Sr)で表される。以上のように、距離D1~Drが小さいほど、対応する複数のスケルトンアニメーションの各々の重み付けをより大きな値に設定し、設定した重み付けに基づいて複数のスケルトンアニメーションを合成することにより、ユーザアニメーションを生成する。
【0053】
その後、アニメーション作成処理を終了し、図9に示す表示処理に戻る。次に、生成部113は、生成したアニメーションをディスプレイ130に表示する(ステップS410)。次に、生成部113は、ユーザにより表示処理を終了する操作が操作部140になされたか否かを判定する(ステップS411)。表示処理を終了する操作がなされていない場合(ステップS410;No)、ステップS401に戻り、ステップS401~ステップS411を繰り返す。終了する操作がなされた場合(ステップS411;Yes)、表示処理を終了する。
【0054】
以上のように、本実施の形態のフォーム情報表示システム1及びフォーム情報表示装置100によれば、ユーザのランニングフォームを分類条件により分類し、分類されたユーザのランニングフォームの特徴を表す特徴パラメータを特定し、特定した特徴パラメータに基づいてユーザアニメーションが生成される。
【0055】
これに対して、本実施形態の場合と異なり、ユーザのランニングフォームを分類せずに、複数のユーザ運動状態パラメータを互いに同等に用いてユーザアニメーションを生成した場合には、対応する運動状態パラメータが特徴パラメータ以外のユーザ運動状態パラメータに一致又は近似し、かつ、特徴パラメータには近似しないスケルトンアニメーションデータ、すなわち、フォームの特徴を表さないスケルトンアニメーションデータが選択されることによって、ユーザのランニングフォームを表すユーザアニメーションを適切に生成できないおそれがある。
【0056】
本実施形態によれば、ユーザのランニングフォームの分類結果に基づいて特徴パラメータを特定し、特定した特徴パラメータに基づいて、ユーザのランニングフォームを表すユーザアニメーションを適切に生成することができる。
【0057】
また、生成部113が、複数の人間の各々の運動状態を表す複数の運動状態パラメータと、これらの複数の人間の各々の運動状態が反映されたスケルトンアニメーションデータと、を対応付けて記憶するデータベースDBから、特徴パラメータに応じた運動状態パラメータに対応するスケルトンアニメーションデータを、ユーザアニメーションを生成するためのデータとして取得することで、上述した効果をより有効に得ることができる。
【0058】
また、生成部113は、フォームのタイプと、複数の人間の各々の運動状態が反映されたスケルトンアニメーションデータと、を対応付けて記憶するデータベースDBから、スケルトンアニメーションデータを取得することで、各種のフォームのタイプのスケルトンアニメーションデータを効率的に取得することができる。また、特徴パラメータは、それぞれのタイプに分類されたフォームの特徴を表すパラメータであり、それぞれのタイプに対応付けて予め設定されていることで、ユーザアニメーションを適切に生成できるという効果を、さらに有効に得ることができる。
【0059】
また、ユーザ運動状態パラメータは、ランニング中のユーザの運動状態を表すパラメータであり、接地時間率、走行速度、腰の上下動、沈み込み量、前方への加速度、腰の回転角度、腰の前傾角度、腕の振り、ピッチ及びストライド含むことで、ユーザアニメーションにおいて、ユーザのランニングフォームを多面的に表現することができる。また、フォーム情報表示システム1は、ユーザの身体に装着され、ユーザ運動状態パラメータをフォーム情報表示装置100に送信するウエストセンサ200を備えることで、ユーザの動きを適切に検出できる。
【0060】
(変形例)
上述の実施の形態では、ユーザの特徴パラメータに近い特徴パラメータを有するスケルトンアニメーションを複数選択し、選択したスケルトンアニメーションを合成する例について説明した。生成部113は、ユーザアニメーションを生成することができればよく、例えば、タイプ1から4ごとに、基準スケルトンアニメーションをそれぞれ1つだけデータベースDBに記憶しておき、基準スケルトンアニメーションを特徴パラメータに基づいて変形させて、ユーザアニメーションを生成してもよい。この場合の変形は、基準スケルトンアニメーションに対応するユーザ運動状態パラメータと特徴パラメータとの差(以下「第1の差」)、及び、基準スケルトンアニメーションに対応する運動状態パラメータと特徴パラメータ以外のユーザ運動状態パラメータとの差(以下「第2の差」)、に基づいて、基準スケルトンアニメーションのそれぞれの間接の座標位置等を変形させてもよい。この場合、第1の差については、より強調するために、実際の差よりも大きく変形させることで、ユーザに自己のフォームの特徴を強調して認識させるようにしてもよい。また、生成部113は、ユーザアニメーションへの特徴パラメータの反映度合が、ユーザアニメーションへの他のユーザ運動状態パラメータの反映度合よりも大きくなるように、ユーザアニメーションを生成してもよい。
【0061】
上述の実施の形態では、運動状態パラメータが、接地時間率、走行速度、腰の上下動等を含む例について説明した。運動状態パラメータは、これらに限定されず、滞空時間、滞空時間率(滞空時間/ピッチ)、ブレーキ時間(加速度が進行方向の逆から反転するまでの時間)、沈み込み時間、けり上げ時間、ストライド身長比(ストライド/身長)、片足接地からその足が離地までの進行方向移動距離、離地から逆足が接地までの進行方向移動距離、左右動、上下動振幅、浮き上がり量などを含んでもよい。沈み込み時間は、左足または右足接地~左足または右足離地~逆足の接地までにおいて、最初の接地から離地までの間の体が沈み込んでいく動作をする時間である。また、けり上げ時間は、沈み込みが終わってから離地までの間の体が上昇していく動作をする時間である。浮き上がり量は、沈み込みの最下点から、離地して体が宙にうき、最上点までの上下の移動量である。また、運動状態パラメータは、加速度センサ240、ジャイロセンサ250及びGPSセンサ260により測定された実測値を含んでもよい。
【0062】
上述の実施の形態では、ユーザのフォームを運動状態パラメータから選択された分類条件により分類する例について説明したが、ユーザのフォームを分類することができればよく、運動状態パラメータ以外から選択された分類条件を用いてもよい。例えば、分類条件は、加速度センサ240、ジャイロセンサ250及びGPSセンサ260により測定された実測値を含んでもよい。また、分類条件の数は、1つでもよく複数でもよく特に限定されない。
【0063】
上述の実施の形態では、生成部113が、特徴パラメータ取得部112により取得された特徴パラメータのみに基づいて、ユーザの運動中のフォーム表すユーザアニメーションを生成する例について説明した。生成部113は、ユーザの運動中のフォーム表すユーザアニメーションを生成することができればよく、生成部113は、ユーザアニメーションへの特徴パラメータの反映度合が、ユーザアニメーションへの他のユーザ運動状態パラメータの反映度合よりも大きくなるように、特徴パラメータと特徴パラメータ以外の他のユーザ運動状態パラメータとに基づいて、ユーザアニメーションを生成してもよい。この場合、特徴パラメータ取得部112は、特徴パラメータに加えて、ユーザ運動状態パラメータのうちの特徴パラメータ以外のユーザ運動状態パラメータである他のユーザ運動状態パラメータを取得する。特徴パラメータのみに基づいて、ユーザアニメーションを生成する場合、特徴パラメータの反映度合いが大きい。これに対し、特徴パラメータと特徴パラメータ以外の他のユーザ運動状態パラメータとに基づいて、ユーザアニメーションを生成する場合、特徴パラメータ以外の運動状態パラメータも反映されるため、より多くのパラメータが反映されたユーザアニメーションを得ることができる。
【0064】
上述の実施の形態では、それぞれのタイプごとに、ユーザの運動中のフォームの特徴を表す特徴パラメータを3つ有する例について説明した。特徴パラメータは、それぞれのタイプ毎に少なくとも1つ有すればよく、2つ有してもよく、4以上有してもよい。また、特徴パラメータは、加速度センサ240、ジャイロセンサ250及びGPSセンサ260により測定された実測値を含んでもよい。このようにすることで、分類部111は、ユーザの運動状態を表す運動状態パラメータのうち、1または複数の運動状態パラメータに基づいて、ユーザの運動中のフォームを分類することができ、ユーザのフォームをより正確に分類することができる。
【0065】
上述の実施の形態では、特徴パラメータ取得部112が、フォームの分類結果に応じて、図7に示すように、それぞれのタイプについて何れのユーザ運動状態パラメータを特徴パラメータとして用いるのかを予め決めるについて説明した。特徴パラメータ取得部112は、複数のユーザの運動状態パラメータを取得しておいて、その中から特徴パラメータを選択するようにしてもよい。
【0066】
上述の実施の形態では、分類部111が、分類条件に基づいて、ユーザのフォームを分類する例について説明した。分類部111は、ディープラーニングを含む機械学習等のアルゴリズムに基づいて、ユーザのフォームを分類してもよい。この場合、特徴パラメータ取得部112は、同様にディープラーニング等により得られたアルゴリズムに基づいて、それぞれに分類されたユーザのフォームに応じた特徴パラメータを取得してもよい。
【0067】
上述の実施の形態では、モーションセンサとしてウエストセンサ200を用いる例について説明した。モーションセンサは、ユーザの腰以外の身体に装着するものであってもよい。例えば、ユーザの運動中の動きを検出することができればよく、ユーザの胸、腕、手首または足等に取り付けられてもよい。また、モーションセンサは、2つ以上装着されてもよく、ウエストセンサ200に加えて、腕時計型のモーションセンサを腕に装着してもよい。また、モーションセンサを、ユーザの腰と、両手首及び両足に取り付けてもよい。このようにすることで、より正確なユーザの動きを検出することができる。
【0068】
上述の実施の形態では、ユーザがランニングする場合に、フォーム情報表示装置100が、ユーザのランニングフォームを表すユーザアニメーションを生成する例について説明したが、フォーム情報表示装置100は、ユーザの運動中のフォームを表すユーザアニメーションを生成できればよい。フォーム情報表示装置100は、ランニングに限らず、ウオーキング、ジョギング、野球のピッチングやバッティング、サッカーのドリブルやシュート、ヨガや空手などユーザの動きを伴うものについて、ユーザアニメーションを生成してもよい。
【0069】
また、CPU、RAM、ROM等から構成されるフォーム情報表示装置100が実行する表示処理を行う中心となる部分は、専用のシステムによらず、通常の情報携帯端末(スマートフォン、タブレットPC)、パーソナルコンピュータなどを用いて実行可能である。たとえば、上述の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)等)に格納して配布し、このコンピュータプログラムを情報携帯端末などにインストールすることにより、上述の処理を実行する情報端末を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置にこのコンピュータプログラムを格納しておき、通常の情報処理端末などがダウンロード等することで情報処理装置を構成してもよい。
【0070】
また、フォーム情報表示装置100は、OS(Operating System)とアプリケーションプログラムとの分担、またはOSとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【0071】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。例えば、通信ネットワーク上の掲示板(BBS:Bulletin Board System)にこのコンピュータプログラムを掲示し、ネットワークを介してこのコンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行できるように構成してもよい。
【0072】
以上、本発明の好ましい実施の形態について説明したが、本発明は係る特定の実施の形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲とが含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0073】
(付記)
(付記1)
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類手段と、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類手段により分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得手段と、
前記特徴パラメータ取得手段により取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成手段と、
を備えるアニメーション生成装置。
【0074】
(付記2)
前記特徴パラメータ取得手段は、前記特徴パラメータと、前記ユーザ運動状態パラメータのうちの前記特徴パラメータ以外のユーザ運動状態パラメータである他のユーザ運動状態パラメータとを取得し、
前記生成手段は、前記ユーザアニメーションへの前記特徴パラメータの反映度合が、前記ユーザアニメーションへの前記他のユーザ運動状態パラメータの反映度合よりも大きくなるように、前記ユーザアニメーションを生成する、
付記1に記載のアニメーション生成装置。
【0075】
(付記3)
前記生成手段は、複数の人間の各々の運動状態を表す複数の運動状態パラメータと、前記複数の人間の各々の運動中のフォームを表すアニメーションデータと、を対応付けて記憶するデータベースから、取得された前記特徴パラメータに基づいて前記アニメーションデータを取得し、前記取得したアニメーションデータに基づいて、前記ユーザアニメーションを生成する、
付記1または2に記載のアニメーション生成装置。
【0076】
(付記4)
前記データベースは、人間の運動中のフォームのタイプと、前記複数の人間の各々の運動中のフォームを表すアニメーションデータと、を対応付けて記憶し、
前記生成手段は、前記データベースから、前記分類手段により分類された前記ユーザの運動中のフォーム及び前記特徴パラメータに基づいて、前記アニメーションデータを取得する、
付記3に記載のアニメーション生成装置。
【0077】
(付記5)
前記複数の人間の各々の運動中のフォームを表すアニメーションデータは、前記アニメーションデータに対応付けられた運動状態パラメータを閾値に基づいて分類された前記複数のタイプ、または前記複数のタイプの各々の代表アニメーションと類似するか否かにより分類された前記複数のタイプのいずれかに対応付けられている、
付記4に記載のアニメーション生成装置。
【0078】
(付記6)
前記分類手段は、予め設定した分類条件に基づいて、前記ユーザの運動中のフォームを前記複数のタイプのいずれかに分類する、
付記1から5のいずれか1つに記載のアニメーション生成装置。
【0079】
(付記7)
前記分類条件は、前記複数のタイプの各々に対応する複数の運動状態パラメータ毎に設定された閾値を含み、前記複数のタイプの各々に対して設定されている、
付記6に記載のアニメーション生成装置。
【0080】
(付記8)
前記生成手段は、前記分類されたユーザの運動中のフォームのタイプに対応付けられた複数のアニメーションデータを取得し、前記特徴パラメータと前記アニメーションデータに対応付けられた運動状態パラメータとに基づいて前記アニメーションデータにそれぞれ重み付けを設定し、設定した重み付けに基づき、前記取得した複数のアニメーションデータを合成することによって、前記ユーザアニメーションを生成する、
付記1から7のいずれか1つに記載のアニメーション生成装置。
【0081】
(付記9)
前記分類手段は、前記ユーザの運動中のフォームを、第1タイプと、前記第1タイプとは異なる第2タイプとに分類し、
前記特徴パラメータ取得手段は、前記分類手段により分類された前記ユーザの運動中のフォームが前記第1タイプである場合に、前記特徴パラメータとして第1の特徴パラメータを取得し、前記分類手段により分類された前記ユーザの運動中のフォームが前記第2タイプである場合に、前記第1の特徴パラメータとは異なる前記第2の特徴パラメータを前記特徴パラメータとして取得する、
付記1から8のいずれか1つに記載のアニメーション生成装置。
【0082】
(付記10)
前記ユーザ運動状態パラメータは、ランニング中の前記ユーザの運動状態を表すパラメータであり、接地時間率、走行速度、腰の上下動、沈み込み量、前方への加速度、腰の回転角度、腰の前傾角度、腕の振り、ピッチ及びストライドの少なくとも1つのパラメータを含み、
前記分類手段は、前記少なくとも1つのパラメータに基づいて、前記ユーザの運動中のフォームを分類する、
付記1から9の何れか1つに記載のアニメーション生成装置。
【0083】
(付記11)
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類ステップと、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類ステップにより分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得ステップと、
前記特徴パラメータ取得ステップにより取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成ステップと、
を備えるアニメーション生成方法。
【0084】
(付記12) コンピュータを、
ユーザの運動中のフォームを互いに異なる複数のタイプのいずれかに分類する分類手段、
前記ユーザの運動状態を表すユーザ運動状態パラメータのうち、前記分類手段により分類された前記ユーザの運動中のフォームの特徴を表す特徴パラメータを取得する特徴パラメータ取得手段、
前記特徴パラメータ取得手段により取得された前記特徴パラメータに基づいて、前記ユーザの運動中のフォームを表すユーザアニメーションを生成する生成手段、
として機能させるプログラム。
【符号の説明】
【0085】
1…フォーム情報表示システム、10…ベルト、100…フォーム情報表示装置、110、210…制御部、111…分類部、112…特徴パラメータ取得部、113…生成部、120、220…通信部、130…ディスプレイ、140、230…操作部、150…ROM、160…RAM、200…ウエストセンサ、240…加速度センサ、250…ジャイロセンサ、260…GPSセンサ、270…ROM、280…RAM、211…運動データ取得部、212…運動データ送信部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10