JP2011067435A - 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体 - Google Patents

情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体 Download PDF

Info

Publication number
JP2011067435A
JP2011067435A JP2009221420A JP2009221420A JP2011067435A JP 2011067435 A JP2011067435 A JP 2011067435A JP 2009221420 A JP2009221420 A JP 2009221420A JP 2009221420 A JP2009221420 A JP 2009221420A JP 2011067435 A JP2011067435 A JP 2011067435A
Authority
JP
Japan
Prior art keywords
player
movement
information processing
exercise
processor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2009221420A
Other languages
English (en)
Inventor
Shoji Okabe
祥志 岡部
Hiroshi Uejima
拓 上島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SSD Co Ltd
Original Assignee
SSD Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SSD Co Ltd filed Critical SSD Co Ltd
Priority to JP2009221420A priority Critical patent/JP2011067435A/ja
Publication of JP2011067435A publication Critical patent/JP2011067435A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Position Input By Displaying (AREA)

Abstract

【課題】 適切な運動のスピードやペースをプレイヤに伝えることができ、プレイヤの運動のスピードやペースが適切か否かを評価することができる情報処理システム及び情報処理方法を提供する
【解決手段】 テレビジョンモニタ100に映像を表示し、プレイヤに運動を指示するための情報処理システムであって、画面上に軸201を表示する手段と、軸201と常に一点で交わる線オブジェクト203及び/又は軸201と常に一点で交わる線上に配置された玉オブジェクト205を表示する手段と、前記オブジェクトを、軸201に向かって移動するように表示を制御する。軸201とオブジェクト203及び/又は205との交点の位置が変化するので、プレイヤは当該交点の変化に合わせて運動を行える。
【選択図】 図11

Description

本発明は、表示装置に映像を表示して、プレイヤに運動を指示するための情報処理システム、情報処理方法及びそれらの関連技術に関する。
特許文献1には、表示装置に映像を表示して、ステップ運動のタイミングを指示する方法が開示されている。特許文献1に記載された方法は、足で踏んで操作する4つのボタンに対応した応答オブジェクトと、応答オブジェクト毎に用意された経路に沿って移動する移動オブジェクトとを表示する。そして、この装置は、移動オブジェクトと応答オブジェクトが重なるタイミングによって、各ボタンを踏むタイミングをプレイヤに指示する。
特表2007−536942号公報
特許文献1の装置及び方法は、ステップの位置とタイミングをプレイヤに指示することができる。しかし、ボタンの押し方までは指示されなかった。また、押すタイミングさえ同じであれば、途中の動き方に関係なく、コンピュータはプレイヤに対して同じ評価を行う。
本発明の目的は、適切な運動のスピードやペースをプレイヤに伝えることができ、プレイヤの運動のスピードやペースが適切か否かを評価することができる情報処理システム及び情報処理方法を提供することである。
本発明の第一の観点によれば、情報処理システムは、表示装置に映像を表示し、プレイヤに運動を指示するための情報処理システムであって、画面上に所定軸を表示する所定軸表示手段と、前記所定軸と常に一点で交わる線状のオブジェクト及び/又は前記所定軸と常に一点で交わる線上に配置されたオブジェクトを表示するオブジェクト表示手段と、前記オブジェクトを、前記所定軸に向かって移動するように表示を制御する手段と、を備える。
この構成によれば、表示装置に表示される前記オブジェクトと前記所定軸との交点の位置が時間とともに変化する。このため、プレイヤは当該交点の位置の変化を参考にして運動を行うことができる。例えば交点の高さの変化に合わせてプレイヤの体やプレイヤが動かす道具を動かすように指示することができる。
ここで、前記所定軸と常に一点で交わる線は、周期的な波形を描いた線であってもよい。この構成によれば、前記オブジェクトと前記所定軸との交点の位置の変化も周期的なものとなる。つまり、プレイヤに対して周期的な運動を指示することができる。
この情報処理システムにおいて、音声を再生する音楽再生手段をさらに備え、前記オブジェクト表示手段は、前記所定軸と常に一点で交わる線上に配置された前記オブジェクトと前記所定軸とが重なるタイミングの間隔を、前記音声の拍と一致するように前記オブジェクトの表示を制御するようにしてもよい。
この構成によれば、前記オブジェクトは、音声の拍に合わせて前記所定軸と重なるため、プレイヤに対して一定の速度で動く運動を指示する際に、プレイヤが当該一定の速度を把握しやすくなる。また、プレイヤの運動のリズムが音楽の拍と一致するため、プレイヤは楽しく運動をすることができる。
上記の情報処理システムにおいて、プレイヤの動き又はプレイヤが動かす道具の動きを検出する検出手段と、前記検出した動きに応じて、前記所定軸上を移動するカーソルの表示を制御するカーソル制御手段と、をさらに備えてもよい。
この構成によれば、プレイヤは前記カーソルが前記交点と重なっているかを確かめることで、自分が指示通りに運動できているかを確認することができる。また、運動支援システムは前記カーソルが前記交点と重なっているかを確認することで、プレイヤが指示通りに運動できているかを評価することができる。
この情報処理システムに、前記オブジェクトと前記カーソルとが重なった場合に、演出表示や効果音を発生させる演出制御手段をさらに備えてもよい。この構成によれば、プレイヤが指示通りに運動を行えた場合に、演出表示や効果音が発生するので、プレイヤは楽しみながら運動をおこなうことができる。上記線上に配置されたオブジェクトが上記所定軸と重なるタイミングの間隔が、上記音声の拍と一致するように表示を制御させる場合は、上記演出表示や上記効果音の発生するタイミングが上記音声の拍と一致するため、プレイヤはより運動を楽しむことができる。
前記検出手段は、プレイヤ又はプレイヤが動かす道具を撮像する撮像手段と、前記撮像手段の撮像結果を解析することによってプレイヤの動き又はプレイヤが動かす道具の動きを解析する撮像結果解析手段と、を備えてもよい。
この構成によれば、撮像によって解析したプレイヤの運動に連動したカーソルの制御を実現することができる。
前記検出手段が撮像手段である場合、プレイヤ又はプレイヤが動かす道具に取り付ける再帰反射体と、前記再帰反射体に対して光を照射する手段と、をさらに含むようにしてもよい。
この構成によれば、照射光を反射する再帰反射体が撮像結果に写りこむため、当該再帰反射体の動きを検出することにより、間接的にプレイヤの運動に連動したカーソルの制御を実現することができる。
再帰反射体は照射光を反射し目立つため、撮像結果から再帰反射体の像だけを抽出しやすい。このため、撮像結果から直接プレイヤ又はプレイヤが動かす道具の動きを解析する場合と比較して簡単な処理で、プレイヤの運動に連動したカーソルの制御を実現することができる。
また、照射光を反射する再帰反射体の像は、点灯時に写り、消灯時に写らない。このため、点灯時と消灯時の差分を取ることにより、簡単な処理で精度よく撮像結果から再帰反射体の像だけを抽出しやすくすることができる。
前記検出手段は、加速度センサ、傾きセンサ、振動センサ、回転センサ、ジャイロスコープ及び重力センサのうち、一つまたは任意の組み合わせからなるセンサユニットと、前記センサユニットからの出力によって、プレイヤの動き又はプレイヤが動かす道具の動きを解析するセンサ出力解析手段と、を備えるものであってもよい。
この構成によれば、プレイヤの運動によって変化するセンサユニットからの出力の変化によって、プレイヤの運動に連動したカーソルの制御を実現することができる。
本発明の第二の観点によれば、情報処理方法は、表示装置に映像を表示し、プレイヤに運動を指示するための情報処理方法であって、画面上に所定軸を表示するステップと、前記所定軸と常に一点で交わる線状のオブジェクト及び/又は前記所定軸と常に一点で交わる線上に配置されたオブジェクトを表示するステップと、前記オブジェクトを、前記所定軸に向かって移動するように表示を制御するステップと、を含む。
この情報処理方法において、前記表示を制御するステップは、前記所定軸と常に一点で交わる線上に配置された前記オブジェクトと前記所定軸とが重なるタイミングの間隔を、前記音声の拍と一致するように表示を制御することを特徴とする。
上記の情報処理方法は、プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップと、前記検出した動きに応じて前記所定軸上を移動するカーソルの表示を制御するステップと、をさらに含む。
ここで、前記プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップは、撮像手段を制御してプレイヤ又はプレイヤが動かす道具を撮像するステップと、前記撮像の結果を解析することによって、プレイヤの動き又はプレイヤが動かす道具の動きを解析するステップと、を含む。
前記プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップは、プレイヤ又はプレイヤが動かす道具に取り付けられる再帰反射体に対して光を照射するステップをさらに含む。
または、前記プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップは、加速度センサ、傾きセンサ、振動センサ、回転センサ、ジャイロスコープ及び重力センサのうち、一つまたは任意の組み合わせからなるセンサユニットからの出力を受信するステップと、前記センサユニットからの出力によって、プレイヤの動き又はプレイヤが動かす道具の動きを解析するステップを含む。
以上本発明の第二の観点によれば、本発明の第一の観点による情報処理システムと同様の効果を得られる。
本発明の第二の観点によれば、コンピュータプログラムは、本発明の第2の観点による情報処理方法をコンピュータに実行させるコンピュータプログラムである。
この構成によれば、本発明の第二の観点による情報処理方法と同様の効果を奏する。
本発明の第四の観点によれば、情報記憶媒体は、本発明の第三の観点によるコンピュータプログラムを記憶する情報記憶媒体である。
この構成によれば、本発明の第二の観点による情報処理方法と同様の効果を奏する。
、本発明の実施の形態による運動支援システム(情報処理システム)の全体構成を示す図 (a)図1のバーベル1に着脱自在に取り付けられる再帰反射体2の説明図(b)再帰反射体2のバーベル1への取り付け方の一例を示す図 図1のカメラユニット3を搭載したコンピュータ5の説明図 図3のコンピュータ5の電気的構成を示すブロック図 差分画像DIの説明図 図1の運動支援システムが提供する運動メニューの構成の一例を説明する図 図1のテレビジョンモニタ100に表示されるセクション開始画面の例示図 図1のテレビジョンモニタ100に表示される道具指示画面の例示図 図1のテレビジョンモニタ100に表示される調整画面の例示図 図1のテレビジョンモニタ100に表示される運動説明画面の例示図 図1のテレビジョンモニタ100に表示される運動指示画面の例示図 図1のテレビジョンモニタ100に表示される運動指示画面の他の例示図 図1のテレビジョンモニタ100に表示されるインターバル画面の例示図 図1のテレビジョンモニタ100に表示される運動指示画面のさらに他の例示図 図1のテレビジョンモニタ100に表示される運動指示画面のさらに他の例示図 プロセッサ61が実行する処理の全体的な流れを示すフローチャート 図16のステップS3のアプリケーションプログラムが実行する処理の1つである撮影処理を示すフローチャート 図16のステップS3のアプリケーションプログラムが実行する処理の1つである注目点抽出処理を示すフローチャート 図18のステップS57の2点抽出処理を示すフローチャート プロセッサ61がプログラムに従って実行する画面表示の、状態遷移図 図16のステップS3のアプリケーションで実行されるフラグセット処理の流れを示すフローチャート 図16のステップS3のアプリケーションで実行されるオブジェクト描画設定処理の流れを示すフローチャート
以下、本発明の実施の形態について、図面を参照しながら説明する。なお、図中、同一または相当部分については同一の参照符号を付してその説明を援用する。
図1は、本発明の実施の形態による運動支援システム(情報処理システム)の全体構成を示す図である。図1に示すように、この運動支援システムは、バーベル1、カメラユニット3を搭載したコンピュータ5、及びテレビジョンモニタ100を備える。コンピュータ5は、AVケーブル7により、テレビジョンモニタ100に接続される。
図2(a)は、図1のバーベル1に着脱自在に取り付けられる再帰反射体2の説明図である。図2(b)は、再帰反射体2のバーベル1への取り付け方の一例を示す図である。図2(a)を参照して、再帰反射体2は、再帰反射シートに覆われた本体部21と、本体部21の両端部に配置された面ファスナー23とから構成される。本体部21には柔らかい布製で、ミシン目25で折り曲げると、丸まって面ファスナー23で固定できるようになっている。図2(b)に示すように、再帰反射体2は、本体部21の再帰反射シートが外側を向くように、バー11の両端(ディスク13の近く)にまきつけ、面ファスナー23で固定して使用する。
図1に戻って、再帰反射体2はカメラユニット3によって撮像される。コンピュータ5は撮像結果に応じて、バーベル1の動きを解析・検知することができる。
図3は図1のカメラユニット3を搭載したコンピュータ5の説明図である。図3を参照して、コンピュータ5は平たい直方体形状を有する。コンピュータ5の前面左側には、電源スイッチ51及びリセットスイッチ53が設けられる。また、コンピュータ5の表面の前縁近傍には、方向キー55a〜55dが設けられる。さらに、方向キー55aの左側には、キャンセルキー57が設けられ、方向キー55dの右側には、決定キー59が設けられる。コンピュータ5には、後述のプロセッサ61及びメモリ63等が内蔵されている。図示は省略するが、コンピュータ5はACアダプタを有し、外部から電源の供給を受ける。
コンピュータ5の本体上面には、カメラユニット3が取り付けられる。この場合、カメラユニット3の表面が、コンピュータ5の上面に対して所定角度(例えば40度)傾斜するように取り付けられる。カメラユニット3の表面中央部には、円形の赤外線フィルタ31が取り付けられ、それを取り囲むように、4個の赤外発光ダイオード33が配置される。赤外線フィルタ31は、赤外線以外の光線を遮断する役割を果たす。赤外線フィルタ31の背面側に後述のイメージセンサ35が配置される。
図4は、図3のコンピュータ5の電気的構成を示すブロック図である。図4に示すように、コンピュータ5は、プロセッサ61、イメージセンサ35、赤外発光ダイオード33、メモリ63、EEPROM(electrically erasable programmable read only memory)65、RTC(real time clock)67、及びバス69(アドレスバス及びデータバスを含む。)を含む。
プロセッサ61は、バス69を通じて、メモリ63にアクセスできる。従って、プロセッサ61は、メモリ63に格納されたプログラムを実行でき、また、メモリ63に格納されたデータをリードして処理することができる。このメモリ63に、各処理を行うプログラム、画像データ、及び音声データ等が予め格納される。メモリ63は、例えば、ROM(read only memory)やフラッシュメモリ等の任意のメモリを使用できる。
EEPROM65は、プロセッサ61から、クロック信号が与えられると共に、データの読み書きが行われる。RTC67は、水晶発信器(図示せず)に基づいて計時を行い、時刻情報を生成して、プロセッサ61に与える。
プロセッサ61の内部構成を簡単に説明する。プロセッサ61は、図示しないが、中央演算処理装置(以下、「CPU」と呼ぶ。)、グラフィックスプロセシングユニット(以下、「GPU」と呼ぶ。)、サウンドプロセシングユニット(以下、「SPU」と呼ぶ。)、ジオメトリエンジン(以下、「GE」と呼ぶ。)、外部インタフェースブロック、上記のメモリインタフェース、メインRAM、及びA/Dコンバータ(以下、「ADC」と呼ぶ。)などを具備する。
CPUは、メモリ63に格納されたプログラムを実行して、各種演算やシステム全体の制御を行う。グラフィックス処理に関するCPUの処理として、メモリ63に格納されたプログラムを実行して、各オブジェクトの拡大・縮小、回転、及び/又は平行移動のパラメータ、視点座標(カメラ座標)、並びに視線ベクトルの算出等を行う。
ここで、1または複数のポリゴン又は1又は複数のスプライトから構成され、同じ拡大・縮小、回転、及び平行移動の変換が適用される単位を「オブジェクト」と呼ぶ。
GPUは、ポリゴン及びスプライトから構成される三次元イメージをリアルタイムに生成し、アナログのコンポジットビデオ信号に変換する。
SPUは、PCM(pulse code modulation)波形データ、アンプリチュードデータ、及びメインボリュームデータを生成し、これらをアナログ乗算して、アナログオーディオ信号を生成する。
GEは、三次元イメージを表示するための幾何演算を実行する。具体的には、GEは、行列積、ベクトルアフィン変換、ベクトル直交変換、透視投影変換、頂点明度/ポリゴン明度計算(ベクトル内積)、及びポリゴン裏面カリング処理(ベクトル外積)などの演算を実行する。
外部インタフェースブロックは、周辺装置とのインタフェースであり、24チャンネルのプログラマブルなデジタル入出力(I/O)ポートを含む。また、後述のカウンタを含む。
ADCは、4チャンネルのアナログ入力ポートに接続され、これらを介して、アナログ入力装置から入力されたアナログ信号をデジタル信号に変換する。
メインRAMは、CPUのワーク領域、変数格納領域、および仮想記憶機構管理領域等として利用される。
メモリインタフェースは、バス69を介して、メモリ63からのデータの読み出し、及びメモリ63へのデータの書き込みを司る。また、メモリインタフェースは、DMA(Direct Memory Access)機能も有している。
プロセッサ61の外部インタフェースブロックは、周辺装置(本実施の形態ではイメージセンサ35及び赤外発光ダイオード33)とのインタフェースである。プロセッサ61のADCは、アナログ入力装置(本実施の形態ではイメージセンサ35)から入力されたアナログ信号をデジタル信号に変換する。
プロセッサ61は、ストロボ撮影を行うべく、4つの赤外発光ダイオード33を間欠的に駆動し、間欠的に赤外光を発光させる。赤外発光ダイオード33からの赤外光は、再帰反射体2により反射され、赤外線フィルタ31を介してイメージセンサ35に入力される。したがって、イメージセンサ35からは再帰反射体2含む画像信号(赤外光点灯時)がプロセッサ61へ出力される。赤外発光ダイオード33は間欠的に駆動されるので、イメージセンサ35からは赤外光消灯時の画像信号も出力される。
イメージセンサ35からのこれらのアナログ画像信号はプロセッサ61に内蔵されたADCによってデジタル画像信号に変換される。プロセッサ61は、赤外光点灯時のデジタル画像信号と消灯時のデジタル画像信号との差分を求めて、この差分信号DI(差分画像DI)を基に、再帰反射体2の動き(図1のバーベル1の上下運動に相当)を解析する。このように、差分を求めることで、再帰反射体2からの反射光以外の光によるノイズを極力除去でき、精度良く再帰反射体2を検出できる。
図5は、差分画像DIの説明図である。図5を参照して、この差分画像DIは、再帰反射体2を両端に取り付けたバーベル1がカメラユニット3によって撮像された場合の例である。この実施の形態では、64×64ピクセル分の輝度値を出力するイメージセンサ35を使用している。このため、差分画像DIは、64×64ピクセル分の輝度値の集合である。図5の差分画像DIには、周辺より輝度値の高いピクセル領域が2箇所存在している。これらは、赤外光を反射した再帰反射体2の像113及び115である。プロセッサ61は、これらの像を用いて再帰反射体2の動きを解析する。(後述)
プロセッサ61は、再帰反射体2の動きの解析結果に基づいて、その他の演算、グラフィック処理、及びサウンド処理等を実行し、ビデオ信号およびオーディオ信号を出力する。この実施の形態では、プロセッサ61は、像113及び115の中で、最も輝度値の高いピクセルをそれぞれ選択し、当該ピクセルの差分画像DI上での座標の値を処理に利用する。以下、差分画像DI上の座標を説明する場合、左上角を原点O、水平右方向をX軸の正、垂直下方向をY軸の正とし、各ピクセルを1単位とするXY座標として説明する。
プロセッサ61が生成したビデオ信号およびオーディオ信号は、AVケーブル7を介して、テレビジョンモニタ100に与えられる。テレビジョンモニタ100は当該ビデオ信号に従って映像を表示し、当該オーディオ信号に従ってスピーカ(図示せず)から音声を出力する。この運動支援システムは、当該映像及び音声によって、プレイヤに適切な運動指示を与えることを一つの目的としている。
図6は、図1の運動支援システムが提供する運動メニューの構成の一例を説明する図である。図6を参照して、運動支援システムは、運動の単位として、セッション、セクション及びブロックを使用する。1セッションは5つのセクションから構成される。また、1セクションは20のブロックから構成される。各セクションには、胸、腕、足等、重点的に鍛える体の部位が割り当てられている。1セクションは5分間で、1ブロックは15秒である。なお、この段落で説明した数字は一例であり、適宜変更が可能である。
図1の運動支援システムのプログラムには、プレイヤが鍛えたい体の部位に応じて様々な運動パターンデータのセットが用意されている。各ブロックには一つ又は複数の運動パターンデータが割り当てられており、プロセッサ61は運動パターンデータに従って後述する運動指示画面を再生・表示する。プレイヤは当該運動指示画面に従って運動を行う。連続するブロック間で同じ運動パターンデータが割り当てられていることもあれば、異なる運動パターンデータが割り当てられていることもある。また、運動パターンデータではなく、小休止のためのインターバルが割り当てられたブロックもある。ただ、同一のセクションに属するブロックは、全てそのセクションに割り当てられた部位を鍛えるための運動パターンデータが割り当てられる。
プログラム中、セッションは複数用意されており、全身を満遍なく鍛えられるように体の各部位が割り当てられたセクションがセットになったセッションもあれば、特定の部位を集中的に鍛えられるように、特定の部位が割り当てられたセクションが連続するセッションもある。
図示はしないが、プロセッサ61は、プレイヤが希望するセッションを選択するための画面を表示する。プレイヤの選択に応じて、プロセッサ61はその日のセッションを決定する。
また、図示はしないが、予めセクション及びブロックが決定された既存セッションの他に、プレイヤがセクション及びブロックを選択して自由に組み立てたフリーセッションモードもある。
さらに、図示はしないが、日替わりでセッションを自動的に決定する機能も用意されている。この場合、セッションのローテーションは、筋肉の超回復を考慮して、同じ部位の筋力トレーニングが毎日連続しないように設定される。
続いて、図を用いて、プロセッサ61がセッション中にテレビジョンモニタに表示する画面について説明する。
図7は、図1のテレビジョンモニタ100に表示されるセクション開始画面の例示図である。図7を参照して、プロセッサ61は、これから始まるセクションに割り当てられた部位、すなわちプレイヤが鍛える部位を表示する。図7は胸が割り当てられたセクションの開始画面である。プロセッサ61は、胸の部分の色を周りの部位と変え、文字と合わせて胸部のトレーニングが開始されることを表示する。
図8は、図1のテレビジョンモニタ100に表示される道具指示画面の例示図である。プロセッサ61は、セクション開始画面に続いて、この道具指示画面を表示する。道具指示画面は、プレイヤが使用する道具と、再帰反射体2の取り付け位置とを表示するための画面である。
図8の例では、プロセッサ61は、指示部101で両端に再帰反射体2を取り付けたバーベル1を使用することを表示し、指示部103で5Kgのディスク13を使用することを表示し、指示部105で運動中プレイヤが背中を曲げないようにアドバイスするためのテキストを表示している。
図1の運動支援システムは、バーベル1を使用した運動、バー11のみを使用した運動(図示せず)、ディスク13のみを使用した運動(図示せず)、道具を使用しない運動の運動パターンデータを内蔵する。プロセッサ61が指示部103、105及び107で表示するデータは、これから開始されるセクションの各ブロックに割り当てられた運動パターンデータに含まれる。例えば再帰反射体2の取り付け方や取り付け位置は、運動パターンや使用する道具によってそれぞれ異なる。
図9は、図1のテレビジョンモニタ100に表示される調整画面の例示図である。この調整画面は、再帰反射体2とカメラユニット3を使用し、プレイヤの動きを検出する場合に、コンピュータ5がプレイヤに対して適切な立ち位置を指示するための画面である。図9を参照して、調整画面はプレイヤ位置キャラクタ107、指示位置キャラクタ109及び矢印111を含む。
プロセッサ61は、図3のカメラユニット3の撮像結果である図5の差分画像DIから、再帰反射体2の像113及び115の像のY座標をそれぞれ算出し、さらにその平均値Yavを算出する。
本運動支援システムのプログラムは、プレイヤがカメラユニット3から1.3メートル離れて運動することを想定してプログラミングされている。また、プログラムは、身長Htセンチメートルのプレイヤが、地面に置かれたカメラユニット3から1.3メートル離れ、図7の道具指示画面で示した持ち方でバーベル1を持った場合のY座標の値(以下理想値Yidとして説明する)を算出する式を含む。なお、このYidを算出する式は、運動パターンデータ毎に用意される。なぜならば、同じ道具を使用する運動であっても、道具を使用する位置や動かす量は様々なパターンが存在し、理想値Yidも運動パターンによって異なるためである。例えば、バーベル1を上下に動かす運動であっても、腰の高さで動かす場合もあれば、頭の上で動かす運動もある。
これらの理想値Yidを算出する式は、予め計測によって決定されたものである。
図示はしないが、本運動支援システムには、プレイヤのプロフィールを設定するオプション画面が存在し、そこでプレイヤは自分の身長を入力する。プロセッサは当該オプション画面で入力された数値を、身長Htの値として使用し、理想値Yidを算出する。
プロセッサ61は、理想値Yidと平均値Yavとの比によって、プレイヤ位置キャラクタ107の画面中の表示位置を決定する。カメラユニット3はコンピュータ5に対して40度の角度をつけて設けられている。このため、プレイヤがカメラユニット3に近い位置に立つと、像113及び像115は大きく、差分画像DI上の上方に写る。つまり、Yavの値は小さくなる。逆に、プレイヤがカメラユニット3から離れた位置に立つと、像113及び像115は小さく、差分画像DI上の下方に写る。つまり、Yavの値は大きくなる。
プロセッサ61は、YavがYidより大きい場合、プレイヤ位置キャラクタ107を指示位置キャラクタ109より右側に、YavがYidより小さい場合、プレイヤ位置キャラクタ107を指示位置キャラクタ109より左側に表示する。
プロセッサ61は矢印111の向きによって、プレイヤがカメラユニット3に対して近づくべきか離れるべきかを指示する。
そして、プロセッサ61は、平均値Yavと理想値Yidとが実質的に等しくなった場合、プレイヤ位置キャラクタ107は、指示位置キャラクタ109と重ねて表示する。
このようにして、プロセッサ61は調整画面によって、プレイヤをプログラムが想定する立ち位置(カメラユニット3から1.3メートル離れた位置)に誘導する。プレイヤは、調整画面を見ながら、プレイヤ位置キャラクタ107と位置指示キャラクタ109とが重なるように、カメラユニット3に対して前後に移動するだけで、プログラムが想定する適切な位置に立つことができる。
プロセッサ61は、プレイヤ位置キャラクタ107と指示位置キャラクタ109とが3秒間重なった状態が保たれれば、調整画面を終了し次の画面へと進む。
なお、本システムには、再帰反射体2を利用しない運動パターンも存在する。この場合、プロセッサ61はコンピュータ5から1.3メートル離れた位置で運動するように表示を行うのみで、上記のようなカメラ位置の調整のための処理は行わない。
図10は、図1のテレビジョンモニタ100に表示される運動説明画面の例示図である。プロセッサ61は、これからプレイヤに指示する運動をアニメーションで表示し、アドバイスをテキストで表示する。
図11は、図1のテレビジョンモニタ100に表示される運動指示画面の例示図である。図9の例は、プレイヤに対して、一定の速度で所定の高さまでバーベル1を上げ、同じ速度で元の位置までバーベル1を下ろす運動を指示することを目的とする。
図11を参照して、プロセッサ61は、画面右側から左側に線オブジェクト203及び線オブジェクト203上に一定の間隔で配置された玉オブジェクト205a及び205b(以下まとめて玉オブジェクト205と説明する場合がある。)を画面右から画面左に向かって一定の速度でスクロールするように表示を行う。
プロセッサ61は、波線型の線オブジェクト203の各頂点に、玉オブジェクト205bよりも大きい玉オブジェクト205aを表示する。
線オブジェクト205は、軸207と常に1点で交わる線である。この図9の画面では、線オブジェクト205は正弦波状の線であるため、スクロールによって軸207との交点の位置が周期的に変化する。このため、プレイヤは軸207と線オブジェクト203との交点の位置の変化を目安にバーベルを上下させれば、一定の速度及びリズムでバーベルの上下運動を行うことができる。
また、プロセッサ61は、カメラユニット3の撮像結果(差分画像DI)から解析した再帰反射体2の動きに応じて、カーソル201を軸207上で上下に移動させる。つまり、カーソル201の画面100上での動きは、再帰反射体2の動き(図11の例ではプレイヤのバーベル1の動き)と連動する。
この実施の形態では、コンピュータ5は地面に置かれ、カメラユニット3は斜上を向いている。このため、バーベル1が上下し、再帰反射体2が上下に移動した場合、差分画像DI上の再帰反射体2の像113及び115も上下方向(Y軸方向)に移動する。すなわち、像113及び115のY座標の平均値Yavの値が変化する。このため、プロセッサ61は、平均値Yavの値に基づいて、カーソル201を軸207上で上下に移動させる。
プレイヤはカーソル201が軸207と線オブジェクト203との交点の位置に来る様にバーベル1を上下させることで、正確に一定の移動量、速度及びリズムでバーベルの上下運動を行うことができる。また、プロセッサ61は、カーソル201が線オブジェクト203及び玉オブジェクト205と重なっているか否かによって、プレイヤが適切な移動量、速度及びリズムでバーベル運動を行っているかを判定することができる。
再び図11を参照して、プロセッサ61は、玉オブジェクト205とカーソル207が重なった場合、点数を加算する。この時、プロセッサ61は、効果音を発生させ、カーソル201と重なった玉オブジェクト205が消滅する演出を行う。後述するが、プロセッサ61は、BGM(バックグラウンドミュージック)の拍と同期して波オブジェクト203や玉オブジェクト205の出現及び移動量等の描画を制御している。図11の例では、プロセッサ61は、BGMの1拍に1つのペースで玉オブジェクト205を表示する。
これによって、カーソル201が線オブジェクト203及び玉オブジェクト205と重なると、上記効果音及び玉オブジェクト205の消滅演出がBGMの拍と重なる。プロセッサこれによってプレイヤは運動のリズムを掴むことができ、音と映像を楽しみながら運動を行うことができる。
運動名表示部209には、プレイヤが行う運動の名前が表示される。
リズム表示部213にはプレイヤが行うべき運動のリズムが表示される。この実施の形態では、「4−4」は、バーベルを8拍で上げ8拍で下げる速度が一定の運動であることを意味する。「4−4」の他にも、2拍で上げ6拍で下げる「1−3」や、6拍で上げ2拍で下げる「3−1」や、2拍で上げて2拍で下げる「1−1」等が用意されている。
手本表示部213には、プレイヤが行うべき運動が、手本としてアニメーションによって表示される。図11の例では、線オブジェクト203の頂点(玉オブジェクト205aが配置される点)が軸207を通過する際に線オブジェクト203が立ち上がりの場合はバーベルを持ち上げるアニメーションが開始され、立ち上がりの場合はバーベルを下ろすアニメーションが開始される。
時間表示部217には、1セッションの残り時間がカウントダウンされる。今回の実施の形態では5分間の1セクションを1セッションとしているため、25分間からカウントダウンされる。
点数表示部219には、これまでの点数が表示される。この点数はカーソル201が玉オブジェクト205と重なる毎に加算される。
運動量表示部221には、プレイヤが行った運動量がカロリーとして表示される。
回数表示部223には、このセクションにおけるプレイヤが行う上下運動の残り回数を表示している。線オブジェクト203一個分が軸207を通過すると、自動的に回数がカウントアップされる。撮像結果を解析して実際にプレイヤが運動を行った回数を計測するようにしてもよい。
アイコン表示部211は、現在の運動で使用する道具の種類がアイコンとして表示される。図11の画面では、バーベルを表現したアイコンと、再帰反射体を表現したRの字のアイコンが表示されている。図示はしないが、本システムでは、バーベル1の他に、バー11やディスク13に再帰反射体2を取り付けて使用する運動や、道具も再帰反射体2も使用しない運動を行うモードも用意されているため、モードによってアイコンも異なる。
この段落で説明した各表示部は、他の図で説明する運動指示画面にも表示されるが、役割は同じであるため、以後の図では説明は省略する。
図12は、図1のテレビジョンモニタ100に表示される運動指示画面の他の例示図である。図12を参照して、線オブジェクト203は、立ち上がり時が急で、立ち下り時が緩やかな鋸波型の形状をしている。
図12の運動指示画面も、プレイヤにバーベル1の上下運動を指示するための運動である。但し、図12の運動指示画面は、2拍で素早くバーベルを上げて、6拍でゆっくりバーベルを下ろす「1−3」の運動をプレイヤに指示する。このように、線オブジェクト203の形状又は玉オブジェクト205の配置を変える事によって、プレイヤに指示する運動の移動量、速度又はリズム等を変化させることができる。
軸207と線オブジェクト203との交点の位置の変化量は、プレイヤに指示される運動の移動量に対応する。また、軸207と線オブジェクト203との交点の位置の変化速度は、プレイヤに指示される運動の速度に対応する。さらに、軸207と線オブジェクト203との交点の位置の変化の周期性は、プレイヤに指示される運動の周期性に対応する。
図13は、図1のテレビジョンモニタ100に表示されるインターバル画面の例示図である。ブロックとブロックとの間に、インターバルが挟まれることがある。このインターバルもブロックの一部であり、運動時間のカウントは進んでいる。画面右上にインターバルの残り時間が表示され、残り時間終了後、再び運動指示画面に遷移する。
プロセッサ61は、5分間が経過し、インターバルを含め20ブロック分の運動パターンデータの再生が終了すると、第1セクションを終了し、第2セクションへと移行する。
プロセッサ61は、第2セクションにおける重点的に鍛える部位、使用する道具、再帰反射体の有無、各ブロックに割り当てられた運動パターンデータ等のデータをメモリ63から読み出す。そしてプロセッサ61は、読み出した第2セクションのデータに応じて図7〜図10で説明したようなセクション開始画面、道具指示画面及び調整画面を表示する。そしてプロセッサ61は、第2セクションの各ブロックに割り当てられた運動パターンデータに対応した運動指示画面を表示する。
図14は、図1のテレビジョンモニタ100に表示される運動指示画面のさらに他の例示図である。図14の例では、ボールオブジェクト205の代わりに、バーオブジェクト231a及び231bが表示される。以下バーオブジェクト231a及び231bをまとめてバーオブジェクト231と説明する場合がある。プロセッサ61は、プロセッサ61は、平均値Yavの変化によって、バーベル1の上下運動を検出するが、カーソル201は表示しない。
プロセッサ61は、線オブジェクト201の下向きの頂点にバーオブジェクト231aを、線オブジェクト201の上向きの頂点にバーオブジェクト231bを表示する。
プロセッサ61は、バーオブジェクト231aが軸207を通過すると、「UP」という音声を再生し、手本表示部215にバーベルを上げるアニメーションを開始する。このときに、平均値Yavの値が所定値以上小さくなると、プロセッサ61はバーベル1が持ち上げられたと判定し、効果音を鳴らし、点数を加算する。
また、プロセッサ61は、バーオブジェクト231bが軸207を通過すると、「DOWN」という音声を再生し、手本表示部215にバーベルを下ろすアニメーションを開始する。このときに、平均値Yavの値が所定値以上大きくなると、プロセッサ61はバーベル1が下げられたと判定し、効果音を鳴らして点数を加算する。
プロセッサ61は、バーオブジェクト231の出現もBGMの拍と同期して軸207に到達するように制御する。このため、プレイヤが画面の指示通りに運動を行えば、BGMのリズムに合わせて効果音が再生される。
図14の運動指示画面は、プレイヤが仰向けになりバーベル1を上下させる運動を指示するための画面である。このように、プレイヤが常にテレビジョンモニタ5を見るのが難しい体勢での運動を指示する場合、プロセッサ61は、バーオブジェクト231及び音声指示を使用した運動指示画面を表示する。
図15は、図1のテレビジョンモニタ100に表示される運動指示画面のさらに他の例示図である。図14のような運動指示画面は、バーベル1やディスク13のような道具を使用せず、再帰反射体2をどこにもつけずに行う場合に表示される。図15の例は、プレイヤに腹筋運動を指示する画面の例である。
プロセッサ61は、図11の運動指示画面と同様に、BGMの拍と同期して線オブジェクト203を表示する。しかしプロセッサ61は、玉オブジェクト205やバーオブジェクト231に相当するオブジェクトや、カーソル201を表示しない。また、図15の例では、プロセッサ61は、カメラユニット3による動作解析を行わない。
プロセッサ61は、線オブジェクト201の下向きの頂点が軸207を通過した場合、UPという音声を再生し、手本表示部215に上体を起こすアニメーションを表示する。また、プロセッサ61は、線オブジェクト201の上向きの頂点が軸207を通過した場合、DOWNという音声を再生し、手本表示部215に上体を下ろすアニメーションを表示する。
プレイヤは音声及び線オブジェクト203の動きに従って、ペースを保ちながら腹筋運動を行うことができる。
プロセッサ61は、このセッションにおける最終セクションである第5セクションが終了すると、結果表示画面(図示せず)に移行する。結果表示画面では、このセッションで鍛えた部位やプレイヤが獲得した点数などが各種方法で表示される。また、その日までの運動記録をグラフ等により表示する。セッションの途中であっても、キャンセルキー57がプレイヤによって押された場合、プロセッサ61はセッションを終了し、結果表示画面に移行する。
次に、プロセッサ61が行う各種処理の一部を、フローチャートを用いて説明する。まず、本システムにおいて、再帰反射体2の動きを検出する処理について説明する。
図16は、プロセッサ61が実行する処理の全体的な流れを示すフローチャートである。図16を参照して、電源スイッチ(図示せず)がオンされると、ステップS1にて、プロセッサ61は、システムの初期設定を実行する。この処理で、各種変数や各種カウンタがクリア(0)される。ステップS3にて、プロセッサ61は、メモリ63に格納されたアプリケーションプログラムに従った処理を実行する。このアプリケーションプログラムは、複数のプログラムを含む。ステップS5にて、プロセッサ61は、ビデオ同期信号による割り込みが発生するまで待機する。つまり、プロセッサ61は、ビデオ同期信号による割り込みが発生していない場合は、同じステップS5に戻り、ビデオ同期信号による割り込みが発生した場合は、ステップS7に進む。例えば、ビデオ同期信号による割り込みは、1/60秒ごとに発生する。この割り込みに同期して、ステップS7及びステップS9にて、プロセッサ61は、テレビジョンモニタ100に表示する画像を更新すると共に、音声の再生を行う。そして、プロセッサ61は、ステップS3に戻る。
図17は、図16のステップS3のアプリケーションプログラムが実行する処理の1つである撮影処理を示すフローチャートである。図17を参照して、ステップS21において、プロセッサ61は、赤外発光ダイオード33を点灯する。ステップS23で、プロセッサ61は、イメージセンサ35から、赤外光点灯時の画像データを取得して、内部メモリに格納する。
ここで、本実施の形態では、イメージセンサ35として、64ピクセル×64ピクセルのイメージセンサを使用する。従って、イメージセンサ35からは、画像データとして、64ピクセル×64ピクセルのピクセルデータが出力される。このピクセルデータは、A/Dコンバータにより、デジタルデータに変換されて、内部メモリ上の二次元配列P1[X][Y]の要素として格納される。
ステップS25で、プロセッサ61は、赤外発光ダイオード33を消灯する。ステップS27にて、プロセッサ61は、イメージセンサ35から、赤外光消灯時の画像データ(64ピクセル×64ピクセルのピクセルデータ)を取得して、内部メモリに格納する。この場合、このピクセルデータは、内部メモリ上の二次元配列P2[X][Y]の要素として格納される。
以上のようにして、ストロボ撮影が行われる。なお、ピクセルデータは各ピクセルの輝度値のことである。よって、差分画像DIも、便宜のために正方形の画像として説明したが、実際は各ピクセルの輝度値である。
プロセッサ61は、撮影ルーチンによる撮影結果から、差分画像DIを算出して、差分画像DIから2つの注目点(第1注目点及び第2注目点)を抽出する。ここで、差分画像DIに再帰反射体2が写りこんでいるときは、その部分の輝度値は、他の部分より大きくなるので、経験的に定めた所定の閾値Thを超える輝度値を持つピクセルの領域を、再帰反射シートの像とする。そして、その像を形成するピクセルのうち、最大輝度値を持つピクセルを注目点とする。
図18は、図16のステップS3のアプリケーションプログラムが実行する処理の1つである注目点抽出処理を示すフローチャートである。図18を参照して、ステップS41にて、プロセッサ61は、イメージセンサ35からの、赤外光点灯時のピクセルデータと、赤外光消灯時のピクセルデータと、の差分を算出して、配列Dif[X][Y]の要素として格納する。ここで、実施の形態では、64ピクセル×64ピクセルのイメージセンサ35を用いているため、X=0〜63、Y=0〜63、である。ステップS43にて、プロセッサ61は、変数nに「0」を代入する。
ステップS45にて、プロセッサ61は、配列の要素Dif[n][0]〜Dif[n][63]をスキャンして、最大値を検出する。ステップS47にて、プロセッサ61は、検出した最大値が、所定の閾値Thより大きい場合は、ステップS49に進み、所定の閾値Th以下の場合は、ステップS51に進む。ステップS49では、プロセッサ61は、配列の要素max[n]として、所定の閾値Thを超えた最大値を代入する。一方、ステップS51にて、プロセッサ61は、配列の要素max[n]として、所定値(例えば、「0」)を代入する。
ステップS53では、プロセッサ61は、変数nを1つインクリメントする。ステップS53にて、プロセッサ61は、変数nが「64」の場合、ステップS57に進み、そうでない場合は、ステップS45に戻る。このようにして、64ピクセル×64ピクセルの要素Dif[X][Y]に対して、列単位(64ピクセル)のスキャンを64回繰り返して、列毎に最大値を求め、配列の要素max[0]〜max[64]に格納する。そして、ステップS57にて、プロセッサ61は、2点抽出処理を実行する。
図19は、図18のステップS57の2点抽出処理を示すフローチャートである。図8を参照して、ステップS71にて、プロセッサ61は、配列の要素max[0]〜max[63]をスキャンして、最大値を検出する。ステップS73にて、プロセッサ63は、検出した最大値を持つピクセルの座標を第1注目点の座標として保存する。ステップS75にて、プロセッサ61は、配列の要素max[0]〜max[63]のうち、ステップS73で検出した最大値を中心に所定範囲をマスクする。
ステップS77にて、プロセッサ61は、配列の要素max[0]〜max[63]のうち、マスクされた所定範囲を除いてスキャンを実行し、最大値を検出する。ステップS79にて、プロセッサ61は、ステップS77で検出した最大値を持つピクセルの座標を第2注目点の座標として保存する。
ステップS81にて、プロセッサ61は、X座標が小さい方を第1注目点の座標とし、X座標が大きい方を第2注目点の座標として、再設定する。つまり差分画像DI上で、左の注目点を第1注目点とし、右の注目点を第2注目点とする。ステップS83にて、プロセッサ61は第1注目点及び第2注目点の座標から、2点のY座標の平均値Yavを算出する。
図20は、プロセッサ61がプログラムに従って実行する画面表示の、状態遷移図である。図20を参照して、プロセッサ61は、ステップS101で運動モードかオプションモードかを選択するモード選択画面を表示する。運動モードが選択された場合はステップS103に進み、オプションモードが選択された場合はステップS105にオプション画面(図示せず)を表示する。
オプション画面はプレイヤの身長等のデータを入力するための画面である。オプション画面で各種データを入力せず、初期値のままで運動モードを開始しても構わない。しかし、身長等のデータを入力しておくことで、より正確にコンピュータ5にプレイヤの運動を解析させることができる。
ステップS103で、プロセッサ61は、セッション選択画面(図示せず)を表示し、プレイヤにその日のセッションを選択させる。そして、プロセッサ61は、選択されたセッションに含まれる各セクション及びブロックのデータをメモリ63から読み出す。
ステップS107へ進み、プロセッサ61は、図7で説明したようなセクション開始画面を表示する。
ステップS109に進み、プロセッサ61は、図8で説明したような道具指示画面を表示する。
ステップS111に進み、プロセッサ61は、図9で説明したような調整画面を表示する。
ステップS113に進み、プロセッサ61は、図10で説明したような運動説明画面を表示する。
そして、ステップS115に進み、プロセッサ61は、図11、12、14又は15で説明したような運動指示画面を表示する。この運動指示画面において、ブロック単位で運動パターンの再生が行われる。運動パターンの再生が一つ終了すると、プロセッサ61は、ステップS117に進む。
ステップS117で、プロセッサ117は、あるセクションにおける全ブロック分の運動パターンデータの再生が終了したかをチェックする。Yesであればプロセッサ61はステップS117に進み、NoであればステップS119に進む。
プロセッサ61は、ステップS119で、図13で説明したインターバル画面を所定時間表示し、ステップS113に戻って、次の運動パターンデータの再生を開始する。
ステップS117からステップS119に進むと、プロセッサ61はあるセッションにおける全てのセクションの処理が終了したかをチェックする。プロセッサ61は、YesであればステップS123に進み、NoであればステップS107に戻って次のセクションの処理を開始する。
ステップS123に進むと、プロセッサ61は、プレイヤに続けるか終了するかを選択させ、続ける場合はステップS101のモード選択画面に戻り、終了する場合は処理を終了する。
次に、図21及び図22を用いて、プロセッサ61が運動指示画面において、BGMの拍と合致した線オブジェクト203及び玉オブジェクト205を表示する処理について説明する。
図21は、図16のステップS3のアプリケーションで実行されるフラグセット処理の流れを示すフローチャートである。図21を参照して、プロセッサ61は、セッション開始時に、プログラムに内蔵された楽譜データに基づいてBGMを再生する。この際プロセッサ61は、BGMの再生に合わせて、ステップS131で、BGMの楽譜データ及びテンポデータから、BGMの拍を取得し、1拍毎に拍フラグを設定する。例えば、BGMのテンポが128BPM(Beat Per Minute)であれば、5分間の1セッションの間に、640拍分の拍フラグが設定される。また、拍を基に1小節(例えば4拍分)や1ブロック(32拍分)の長さも計算され、その終点で小節終了フラグ、ブロック終了フラグが設定される。
ステップS133に進んで、プロセッサ61は、現在のブロックにおいて再生すべき運動パターンデータを、メモリ63から読み込む。
ステップS135に進み、プロセッサ61は、運動パターンデータに従い、ステップS131で設定した拍フラグに同期させて、運動指示画面を表示するための各種フラグをセットする。
運動パターンデータとは運動指示画面に含まれる各種表示を行うためのデータである。運動パターンデータは、以下の情報を含む。
「ID」…運動パターンデータの種類を識別するためのID番号である。
「NAME」…運動パターンの名前である。運動名表示部209等に表示に使用する。
「WAVE」…線オブジェクト203を描画する数を示すデータである。このシステムでは波形の1周期分を単位として線オブジェクト203を描画している。
「TYPE」…線オブジェクト203上に配置されるオブジェクトのタイプを示すデータである。ボールオブジェクト205、バーオブジェクト231又は何もなしの3種類を現すコードがある。
「READY」、「GO」、「NEXT」、「FINISH」…画面上にそれぞれの文字を表示するタイミング(何番目の拍フラグか)を示すデータである。ある運動パターンデータの線オブジェクト203が出現する前に、「READY」と「GO」が表示される。そして、運動パターンデータの再生が終了するときに、「NEXT」が表示される。このとき当該運動パターンデータの再生でそのセクションが終了する場合は、「FINISH」が表示されるように設定されている。
「SPEED COUNT」…前述の「1−1」、「2−2」、「1−3」、「3−1」及び「4−4」の何れかを示すデータである。つまり、「SPEED COUNT」のデータに基づいて、描画される線オブジェクト203の形状及び玉オブジェクト205の配置が決定される。「1−1」は1小節分、「2−2」、「1−3」及び「3−1」は2小節分、「4−4」は4章節分の長さが有る。
図22は、図16のステップS3のアプリケーションで実行されるオブジェクト描画設定処理の流れを示すフローチャートである。図22のフローチャートは、線オブジェクト203及び玉オブジェクト205を描画する際の処理を説明するものである。
ステップS151で、プロセッサ61は線オブジェクト203及び玉オブジェクト205とが画面中に表示されているか否かをチェックし、YesであればステップS153に進み、NoであればステップS163に進む。
ステップS153で、プロセッサ61は、表示中の線オブジェクト203及び玉オブジェクト205を一定の速度で移動させるための処理を行う。この速度は、画面右端に線オブジェクト203及び玉オブジェクト205が出現してから6拍目に軸207に到達する速度で設定されている。
ステップS155に進み、プロセッサ61は、カーソル201と何れかの玉オブジェクト205とが重なったか否かをチェックし、YesであればステップS157へ進み、NoであればステップS159へ進む。
ステップS157で、プロセッサ61は、玉オブジェクト205が弾けて消滅する演出の設定と、効果音を発生させるように設定し、ステップS159へ進む。
なお、プロセッサ61は、図16のステップS7で画像の更新を、ステップS9で音声の再生を行うため、ここで言う設定とは、図16のステップS7及びステップS9で行われる画像の更新及び音声の再生を決定するための設定である。
ステップS159で、プロセッサ61は、画面左端へ到達したの線オブジェクト203又は玉オブジェクト205があるかをチェックする。プロセッサ61は、YesであればステップS161でオブジェクトの表示を消す設定を行ってからステップS163へ進み、Noであれば直接ステップS163に進む。
ステップS163で、プロセッサ61は、運動パターンデータの内、「SPEED COUNT」を変更する拍か否かをチェックし、YesであればステップS165へ進み、Noであればオブジェクト描画設定処理を終了する。
ステップS165で、プロセッサ61は、「SPEED COUNT」のコードを受け取ると、波オブジェクト203一つ分の描画を開始するように設定する。また、プロセッサ61は、線オブジェクト203上に所定の間隔で玉オブジェクト205を配置するように設定する。玉オブジェクト205は、拍フラグ毎に一つずつ配置される。設定が終了すると、プロセッサ61はオブジェクト描画設定処理を終了する。
バーオブジェクト231を使用した運動指示画面では、プロセッサ61は、ほぼ同様のオブジェクト描画設定処理を実行する。但し、カーソル201が存在しないので、ステップS155に相当する処理において、プロセッサ61は、バーオブジェクト231が軸207に到達したときに、平均値Yavの値の変化をチェックし、対応する変化があればステップS157に相当する演出及び効果音の設定処理を行う。
また、プロセッサ61は、ステップS165に相当する処理において、線オブジェクト203の描画を設定する際に、その頂点毎に一つずつの割合でバーオブジェクト231を配置するように設定する。
また、線オブジェクト203だけを使用する運動指示場面では、プロセッサ61は、ステップS155、S157に相当する処理は行わない。
さて、以上のように、本実施の形態によれば、テレビジョンモニタ100に表示される線オブジェクト203と軸207との交点の位置が時間とともに変化する。このため、プレイヤは当該交点の位置の変化を参考にして運動を行うことができる。例えば交点の高さの変化に合わせてプレイヤの体やプレイヤが動かすバーベル1、バー11又はディスク13を動かすように指示することができる。
線オブジェクト203を波状の線にすることにより、線オブジェクト203と軸207との交点の位置の変化も周期的なものとなる。つまり、プレイヤに対して周期的な運動を指示することができる。例えば線オブジェクト203の頂点が軸207に到達するタイミングで腹筋運動やバーベルの上下運動を行うように指示がなされるので、プレイヤは一定のリズムで運動を行える。
玉オブジェクト205又はバーオブジェクト231は、BGMの拍に合わせて軸207と重なるため、プレイヤに対して一定の速度で動く運動を指示する際に、プレイヤが当該一定の速度を把握しやすくなる。また、プレイヤの運動のリズムがBGMのリズムと一致するため、プレイヤは楽しく運動をすることができる。
プレイヤはカーソル201が線オブジェクト203と軸207との交点と重なっているかを確かめることで、自分が指示通りに運動できているかを確認することができる。また、プロセッサ61はカーソル201が上記交点と重なっているかを確認することで、プレイヤが指示通りに運動できているかを評価することができる。
プレイヤが指示通りに運動を行えた場合に、玉オブジェクト205が弾ける演出表示や効果音が発生するので、プレイヤは楽しみながら運動をおこなうことができる。
特に、玉オブジェクト205が軸207と重なるタイミングの間隔が、BGMの拍と一致するように制御されるので、上記演出表示や上記効果音の発生するタイミングがBGMのリズムと一致し、プレイヤはより運動を楽しむことができる。
本実施の形態では、カメラユニット3によって、再帰反射体2の動きを検出することにより、間接的にプレイヤの運動に連動したカーソル201の制御を実現している。
再帰反射体2は赤外発光ダイオード33を反射し目立つため、撮像結果から再帰反射体2の像だけを抽出しやすい。このため、撮像結果から直接プレイヤ又はプレイヤが動かす道具の動きを検出する場合と比較して簡単な処理で、プレイヤの運動に連動したカーソル201の制御を実現することができる。
また、プロセッサ61が制御する赤外発光ダイオード33の点灯時と消灯時の撮像結果の差分を取ることにより、より精度よく撮像結果から再帰反射体2の像だけを抽出しやすくなる。
なお、本発明は、上記の実施の形態に限られるものではなく、その要旨を逸脱しない範囲で種々の態様において実施することが可能であり、例えば、以下のような変形も可能である。
(1)上記の実施の形態では、プレイヤ又はプレイヤが動かすバーベル1やディスク13の動きを検出するために、再帰反射体2、赤外線によるストロボ撮影及び差分処理を使用した。これらは簡単な処理で動きの検出を行うことができる一例であり、本発明に必須の構成要件というわけではない。各種カメラによってプレイヤ又はプレイヤが動かす道具を撮像し、撮像結果を解析して動きを検出する方法は、モーションキャプチャーや画像解析技術、画像から動体のみを検出する技術等、様々な周知技術が存在する。
また、上記実施の形態ではプロセッサ61がカメラユニット61からアナログデータを取得し、各種解析を行うことによって再帰反射体2の実空間中の位置に対応したデータであるXY座標を取得していたが、カメラユニットによっては内蔵されたMCU(Micro Computer Unit)によって被写体の動きを解析し、XY座標に相当するデータの算出及び出力まで行うようなものも存在するため、そのようなカメラユニットを使用してもよい。つまり、全ての画像解析処理をプロセッサで処理せずに、処理を分散しても構わない。
(2)また、プレイヤ又はプレイヤが動かす道具の動きを検出する方法は、撮像による解析に限られない。例えば、加速度センサ、傾きセンサ、振動センサ、回転センサ、ジャイロスコープ及び重力センサのうち、一つまたは任意の組み合わせからなるセンサユニットを、プレイヤ又はプレイヤが動かす道具に取り付けたり、道具の場合は予め内蔵させたりしてもよい。そして、センサユニットからの出力に基づいて、プレイヤ又はプレイヤが動かす道具の動きを検出する方法がある。上記のようなセンサユニットによってプレイヤ又はプレイヤが動かす道具の動きを検出する方法は、様々な周知技術が存在する。
(3)図示はしないが、線オブジェクト203は周期的な波型でなくてもよい。例えば、直線の組み合わせからなる非周期的な折れ線型であってもよい。この場合運動パターンデータに線オブジェクト203の形状を指定するデータが別途必要である。例えば軸207と垂直に交わる直線型の線オブジェクト203をスクロールさせた場合、プレイヤに対して、一定時間中軸207と線オブジェクト203との交点の高さでバーベル1を維持するような運動を指示することができる。
(4)本実施の形態では、バーベル1、バー11及びディスク13等を使用する運動を指示するための運動支援システムを紹介したが、当然本発明は他の道具を使用した運動を指示するための運動支援システムに応用可能である。特に一定のリズムで周期的な運動を行う筋力トレーニングマシンに適している。例えば、上記実施の形態で説明したような運動指示画面を表示しつつ、筋力トレーニングマシンの可動部の動きを各種手段で検出して、それに応じてカーソルを動かすような構成であってもよい。
(5)上記の実施の形態では、道具を使用しない腹筋運動において、カメラユニット3による動作の解析を行わない例を示した。しかし、道具を使用しない運動であっても、プレイヤの体が動く部位の動きを解析し、解析結果に応じてカーソルを軸上で移動させ、線オブジェクトや玉オブジェクトに相当するものとカーソルとが重なるように運動を指示することは可能である。
本発明は、プレイヤに対して表示装置に表示する映像を用いて、適切な運動を指示することに利用できる。また、運動の指示以外にも、例えばカーソルをオブジェクトに合わせて動かし、うまく動かせれば演出や効果音が発生するようなビデオゲーム等に応用可能である。
1…バーベル、2…再帰反射体、3…カメラユニット、5…コンピュータ、7…AVケーブル、100…テレビジョンモニタ、201…カーソル、203…線オブジェクト、205…玉オブジェクト、231…バーオブジェクト、207…軸、209…運動名表示部、211…アイコン、213…リズム表示部、215…手本表示部、217…時間表示部、219…点数表示部、221…運動量表示部、223…回数表示部

Claims (14)

  1. 表示装置に映像を表示し、プレイヤに運動を指示するための情報処理システムであって、
    画面上に所定軸を表示する所定軸表示手段と、
    前記所定軸と常に一点で交わる線状のオブジェクト及び/又は前記所定軸と常に一点で交わる線上に配置されたオブジェクトを表示するオブジェクト表示手段と、
    前記オブジェクトを、前記所定軸に向かって移動するように表示を制御する手段と、を備える情報処理システム。
  2. 音声を再生する音楽再生手段をさらに備え、
    前記オブジェクト表示手段は、前記所定軸と常に一点で交わる線上に配置された前記オブジェクトと前記所定軸とが重なるタイミングの間隔を、前記音声の拍と一致するように前記オブジェクトの表示を制御することを特徴とする、請求項1記載の情報処理システム。
  3. プレイヤの動き又はプレイヤが動かす道具の動きを検出する検出手段と、
    前記検出した動きに応じて、前記所定軸上を移動するカーソルの表示を制御するカーソル制御手段と、をさらに備える、請求項1又は2の何れかに記載の情報処理システム。
  4. 前記検出手段は、プレイヤ又はプレイヤが動かす道具を撮像する撮像手段と、前記撮像手段の撮像結果を解析することによってプレイヤの動き又はプレイヤが動かす道具の動きを解析する撮像結果解析手段と、を備える、請求項3に記載の情報処理システム。
  5. プレイヤ又はプレイヤが動かす道具に取り付ける再帰反射体と、
    前記再帰反射体に対して光を照射する手段と、をさらに備える請求項4に記載の情報処理システム。
  6. 前記検出手段は、加速度センサ、傾きセンサ、振動センサ、回転センサ、ジャイロスコープ及び重力センサのうち、一つまたは任意の組み合わせからなるセンサユニットと、前記センサユニットからの出力によって、プレイヤの動き又はプレイヤが動かす道具の動きを解析するセンサ出力解析手段と、を備える請求項3に記載の情報処理システム。
  7. 表示装置に映像を表示し、プレイヤに運動を指示するための情報処理方法であって、
    画面上に所定軸を表示するステップと、
    前記所定軸と常に一点で交わる線状のオブジェクト及び/又は前記所定軸と常に一点で交わる線上に配置されたオブジェクトを表示するステップと、
    前記オブジェクトを、前記所定軸に向かって移動するように表示を制御するステップと、を含む、情報処理方法。
  8. 音声を再生するステップをさらに含み、
    前記表示を制御するステップは、前記所定軸と常に一点で交わる線上に配置された前記オブジェクトと前記所定軸とが重なるタイミングの間隔を、前記音声の拍と一致するように表示を制御することを特徴とする、請求項7記載の情報処理方法。
  9. プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップと、
    前記検出した動きに応じて前記所定軸上を移動するカーソルの表示を制御するステップと、をさらに含む、請求項7又は8の何れかに記載の情報処理方法。
  10. 前記プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップは、撮像手段を制御してプレイヤ又はプレイヤが動かす道具を撮像するステップと、前記撮像の結果を解析することによって、プレイヤの動き又はプレイヤが動かす道具の動きを解析するステップと、を含む、請求項8に記載の情報処理方法。
  11. 前記プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップは、プレイヤ又はプレイヤが動かす道具に取り付けられる再帰反射体に対して光を照射するステップをさらに含む、請求項10に記載の情報処理方法。
  12. 前記プレイヤの動き又はプレイヤが動かす道具の動きを検出するステップは、加速度センサ、傾きセンサ、振動センサ、回転センサ、ジャイロスコープ及び重力センサのうち、一つまたは任意の組み合わせからなるセンサユニットからの出力を受信するステップと、前記センサユニットからの出力によって、プレイヤの動き又はプレイヤが動かす道具の動きを解析するステップを含む、請求項9に記載の情報処理方法。
  13. 請求項7から12の何れか一つに記載の情報処理方法をコンピュータに実行させるコンピュータプログラム。
  14. 請求項13に記載のコンピュータプログラムを記憶した情報記憶媒体。
JP2009221420A 2009-09-25 2009-09-25 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体 Pending JP2011067435A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009221420A JP2011067435A (ja) 2009-09-25 2009-09-25 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009221420A JP2011067435A (ja) 2009-09-25 2009-09-25 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2011067435A true JP2011067435A (ja) 2011-04-07

Family

ID=44013357

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009221420A Pending JP2011067435A (ja) 2009-09-25 2009-09-25 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体

Country Status (1)

Country Link
JP (1) JP2011067435A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016067519A (ja) * 2014-09-29 2016-05-09 ブラザー工業株式会社 情報処理装置及びプログラム
JP2021010740A (ja) * 2019-07-05 2021-02-04 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP2021010739A (ja) * 2019-07-05 2021-02-04 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP2021010561A (ja) * 2019-07-05 2021-02-04 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP2021029857A (ja) * 2019-08-28 2021-03-01 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP2021035464A (ja) * 2019-08-30 2021-03-04 任天堂株式会社 情報処理システム、情報処理プログラム、および、情報処理方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016067519A (ja) * 2014-09-29 2016-05-09 ブラザー工業株式会社 情報処理装置及びプログラム
JP2021010740A (ja) * 2019-07-05 2021-02-04 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP2021010739A (ja) * 2019-07-05 2021-02-04 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP2021010561A (ja) * 2019-07-05 2021-02-04 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
US11311809B2 (en) 2019-07-05 2022-04-26 Nintendo Co., Ltd. Storage medium having information processing program stored therein, information processing system, information processing apparatus, and information processing method
US11771995B2 (en) 2019-07-05 2023-10-03 Nintendo Co., Ltd. Storage medium having information processing program stored therein, information processing system, information processing apparatus, and information processing method
US11771994B2 (en) 2019-07-05 2023-10-03 Nintendo Co., Ltd. Storage medium having information processing program stored therein, information processing system, information processing apparatus, and information processing method
JP7373472B2 (ja) 2019-07-05 2023-11-02 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
US11865454B2 (en) 2019-07-05 2024-01-09 Nintendo Co., Ltd. Storage medium having information processing program stored therein, information processing system, information processing apparatus, and information processing method
JP2021029857A (ja) * 2019-08-28 2021-03-01 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP2021035464A (ja) * 2019-08-30 2021-03-04 任天堂株式会社 情報処理システム、情報処理プログラム、および、情報処理方法

Similar Documents

Publication Publication Date Title
US7367887B2 (en) Game apparatus, storage medium, and computer program that adjust level of game difficulty
US5616078A (en) Motion-controlled video entertainment system
JP6770145B1 (ja) 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP4928482B2 (ja) ゲーム装置及び情報記憶媒体
JP5760286B2 (ja) 仮想ゴルフシミュレーション装置及びその方法(apparatusforvirtualgolfsimulationandmethodforthesame)
WO2007069752A1 (ja) 運動支援方法、運動器具、及び情報処理装置
JP2011067435A (ja) 情報処理システム、情報処理方法、コンピュータプログラム及び記憶媒体
EP1970104A1 (en) Training method, training device, and coordination training method
JP2011110215A (ja) リハビリテーション用システム、プログラム、およびプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2008018287A (ja) ゲーム装置及び情報記憶媒体
JP2007143748A (ja) 画像認識装置、フィットネス支援装置、フィットネス支援システム、フィットネス支援方法、制御プログラムおよび可読記録媒体
JP5519591B2 (ja) 情報表示装置、情報表示方法、ならびに、プログラム
JP6691258B1 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP4136251B2 (ja) ゲーム装置および情報記憶媒体
JP5425940B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
EP2540360A1 (en) Game device, control method for game device, information recording medium and program
JP2010172442A (ja) ゲーム装置、操作評価方法、および、プログラム
JP2014023745A (ja) ダンス教習装置
US20130172081A1 (en) Game device, game control method, and game control program, for controlling picture drawing game
JP5055548B2 (ja) 運動支援装置及びコンピュータプログラム
JP2010253322A (ja) ゲーム装置及び情報記憶媒体
JP5746644B2 (ja) ゲーム装置及びプログラム
JP6625467B2 (ja) シミュレーション制御装置及びシミュレーション制御プログラム
JP2013153847A (ja) 心臓マッサージ支援装置および心臓マッサージ支援用コンピュータプログラム
JP2001232061A (ja) ゲーム装置および情報記憶媒体