以下、本発明の各実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る学習支援装置が使用される場面の様子を示す図である。実施の形態1は、本発明を、ゴルフクラブのスィングの学習を支援する学習支援装置に適用した例である。
図1に示すように、学習支援装置10は、ヘッドマウントディスプレイ(head mounted display:HMD)110、3軸加速度センサ120、および制御端末130により構成される。制御端末130は、ゴルフクラブのスィングを練習するユーザ150の近くに据え置かれている。ヘッドマウントディスプレイ110は、ユーザ150の頭部に装着されている。3軸加速度センサ120は、ユーザ150の目標となる運動を学習するにあたってユーザ150が着目する運動器具や体の部位(以下「学習対象」という)に着脱自在に取り付けられる。ここでは、学習対象として、ゴルフクラブのクラブヘッド160が選択された例を示しており、3軸加速度センサ120は、クラブヘッド160に取り付けられている。
ヘッドマウントディスプレイ110は、光学式シースルー型の表示装置であり、ユーザ150の目の前のゴルフボール170やクラブヘッド160などの実視界の画像に、制御端末130から送られてくる情報に基づいてコンピュータ生成された画像を光学的に重ね合わせて表示させる。
具体的には、ヘッドマウントディスプレイ110は、マウントディスプレイ110に固定された描画面に、制御端末130から送られてきた後述する描画情報に基づいて描画を行う。また、ヘッドマウントディスプレイ110は、ユーザ150の視線の起点である視点と、ユーザ150の頭の位置および姿勢を計測し、制御端末130に送信する。ここで、視点は、ユーザ150の瞳孔の位置であり、姿勢とは、物体の向きや傾きをいうものとする。
3軸加速度センサ120は、自己の加速度をアナログ値で計測し、計測データをディジタル値である加速度データに変換して、制御端末130に送信する。
制御端末130は、ユーザ150の目標となるスィングにおける、クラブヘッド160の目標となる軌道(以下「目標軌道」という)および目標軌道の各位置におけるヘッド面の向きなどの所定の物理量(目標軌道および所定の物理量が示す動作並びにこの動作を示す情報を、以下「目標動作」と総称する)を取得する。そして、制御端末130は、ヘッドマウントディスプレイ110からの情報に基づいて、取得した目標動作をユーザ150の視界に適合させて描画するための画像データである描画情報を作成し、ヘッドマウントディスプレイ110に送信する。
更に、制御端末130は、3軸加速度センサ120から送られてくる情報に基づいて、クラブヘッド160の実際の軌道(以下「実軌道」という)および実軌道の各位置におけるヘッド面の向きなどの所定の物理量(実軌道および所定の物理量が示す動作並びにこの動作を示す情報を、以下「実動作」と総称する)を取得する。そして、制御端末130は、実動作を目標動作と比較し、比較結果をユーザ150の視界に適合させて描画するための描画情報を作成して、ヘッドマウントディスプレイ110に送信する。
このような学習支援装置10を用いることにより、ユーザ150の視界に適合した位置で、目標動作が描画される。これにより、ユーザ150は、スィング学習において、クラブヘッド160の目標動作を目で確認しながらスィング練習を行うことができるとともに、クラブヘッド160の実動作を目標動作との比較でチェックすることができる。このような学習支援装置10を用いて繰り返し練習することにより、ユーザ150は、自身のスィング運動を目標となるスィング運動に近づけることができる。
次に、学習支援装置10の詳細な構成について説明する。
図2は、学習支援装置10の詳細な構成を示すブロック図である。
図2に示す学習支援装置10において、ヘッドマウントディスプレイ110は、視界情報計測部111、位置姿勢情報計測部112、および画像表示部113を有する。3軸加速度センサ120は、運動情報計測部121を有する。制御端末130は、目標動作情報格納部131、学習対象取得部132、視界情報取得部133、位置姿勢情報取得部134、目標動作作成部135、目標動作描画部136、運動情報取得部137、および通過判定部138を有する。
目標動作情報格納部131は、それぞれ異なる部位に対応する複数のオブジェクト情報131a−1、131a−2、・・・、131a−N(Nは自然数)を予め格納する。オブジェクト情報131aは、学習対象の目標動作を算出するための基礎情報である。具体的には、オブジェクト情報131aは、学習対象の目標軌道を構成する1つまたは複数の位置に、上記した所定の物理量を視覚的に示すためのシンボルであるオブジェクトを定義する。
図3は、クラブヘッド(以下適宜「クラブ」という)に対応するオブジェクト情報131aの内容の一例を示す図である。
図3に示すように、オブジェクト情報131aは、部位名201、オブジェクト番号202、直前のオブジェクト番号203、直後のオブジェクト番号204、ポイント重要度205、位置座標206、大きさ207、加速度208、およびその他情報209から構成される。これらの情報は、部位の目標軌道を構成する位置ごとに記述される。
部位名201には、他の各情報がどの部位に関する情報であるかが記述される。オブジェクト番号202には、位置の識別情報としてオブジェクトの番号が記述される。直前のオブジェクト番号203には、目標軌道における直前の位置に対応する他のオブジェクトの番号が記述される。直後のオブジェクト番号204には、部位の目標軌道における直後の位置に対応する他のオブジェクトの番号が記述される。ポイント重要度205には、オブジェクトのポイントとしての重要度が記述される。位置座標206には、制御端末130に固定された座標系(以下「基準座標系」という)で位置を表した位置座標(x,y,z)が記述される。大きさ207には、オブジェクトの大きさを指定する情報が記述される。加速度208には、対応する位置における部位の加速度が記述される。その他情報209には、目標となる運動に関連する加速度以外の所定の物理量や、オブジェクトを描画する際の視覚的な情報が記述される。
目標となる運動に関連する所定の物理量としては、例えば、加速度、姿勢、速度、回転速度、回転加速度、学習対象に対してユーザ150が掛ける力が記述されてもよい。また、オブジェクトを描画する際の視覚的な情報としては、オブジェクトの形状、解像度、色、透明度、輝度、密度、グラデーションなどの属性が記述される。
図2の学習対象取得部132は、オブジェクト情報131a−1、131a−2、・・・、131a−Nが対応するクラブヘッド160や手などの複数の部位を、学習対象の選択肢としてユーザ150に提示し、選択結果を示す学習対象情報を、目標動作作成部135に出力する。具体的には、学習対象取得部132は、液晶タッチパネル(図示せず)に、学習対象の選択を含めた各種操作を受け付けるための制御パネルを表示させて、ユーザ150の学習対象の選択を受け付ける。
図4は、学習対象取得部132が表示させる制御パネルの外観の一例を示す図である。
制御パネル210には、運動の学習のための処理の開始および終了、表示メニューの切り替え、音量の切り替えの操作を受け付けるためのボタンなどが配置される。図4は、学習対象を選択するためのメニューが表示されているときの制御パネル210の外観を示している。
制御パネル210では、学習レベルを選択するためのメニューなど、他の各種設定を行うための画面を更に表示するようにしてもよい。ここで、学習レベルとは、例えば、オブジェクトをなぞるべき順序で順に表示させるなどして実動作の先導を行う場合に、目標動作をなぞる速度によって区分されるレベルのことである。
なお、制御パネル210での選択操作ではなく、ディジタルカメラでユーザ150を撮影し、ユーザ150のジェスチャに基づいて、学習対象の選択や学習レベルの選択を受け付けるようにしてもよい。この場合には、学習対象取得部132は、各選択肢と特定のジェスチャとの対応付けを予め設定しておき、ディジタルカメラで撮像されたユーザ150の画像を解析して、予め設定されたジェスチャとのマッチングを行う。
例えば、腕組みのジェスチャをメニュー選択開始に、指差しのジェスチャを対象部位の選択に、そして再度の腕組みのジェスチャを選択終了にそれぞれ対応付けて設定することができる。この場合、ユーザ150は、腕組みを数秒間行ってから学習対象となる部位を指で数秒間示し、再度腕組みをするといったジェスチャを行うことによって、学習支援装置10から離れた練習ポジションのままで、学習対象の選択や学習レベルの選択を行うことができる。
図2の視界情報計測部111は、光源、ミラー、および小型ディジタルカメラを備えた視点検出装置(図示せず)を有し、視点検出装置を用いて、ユーザ150の視点を単位時間ごとに検出する。具体的には、視界情報計測部111は、光源からの光を角膜に当て、反射像をミラーで反射させて小型ディジタルカメラで捉えることにより眼球運動を検出する角膜反射法を用いる。視界情報計測部111は、検出した視線方向をヘッドマウントディスプレイ110本体に固定された座標系(以下「HMD座標系」という)で表した情報を、視界情報として取得する。そして、視界情報計測部111は、無線通信により、単位時間ごとの時系列データとして視界情報を制御端末130に送信する。
視界情報取得部133は、視界情報計測部111から送られてくる視界情報を受信し、目標動作作成部135に出力する。
位置姿勢情報計測部112は、ヘッドマウントディスプレイ110本体に固定された磁気センサ(図示せず)を有する。磁気センサの位置および姿勢は、位置姿勢情報取得部134により取得される。
位置姿勢情報取得部134は、位置姿勢情報計測部112に備えられた磁気センサの位置および姿勢を取得し、磁気センサの位置および姿勢を基準座標系で表した情報を、位置姿勢情報として目標動作作成部135に出力する。
なお、磁気センサはヘッドマウントディスプレイ110本体に固定されているため、位置姿勢情報から、基準座標系におけるヘッドマウントディスプレイ110の位置および姿勢とヘッドマウントディスプレイ110に設けられた描画面の位置とを取得することが可能である。また、HMD座標系242もヘッドマウントディスプレイ110本体に固定されているため、視界情報および位置姿勢情報から、基準座標系におけるユーザ150の視線方向を取得することが可能である。各座標系の関係については、後に別図を用いて説明する。
目標動作作成部135は、学習対象情報が示す部位に対応するオブジェクト情報131aを、目標動作情報格納部131から取得する。目標動作作成部135は、取得したオブジェクト情報131aの記述内容に従い、視界情報および位置姿勢情報から、ヘッドマウントディスプレイ110の描画面にオブジェクトの画像により目標動作を描画するための描画情報を作成する。そして、目標動作作成部135は、作成した描画情報を目標動作描画部136に出力する。
また、目標動作作成部135は、取得したオブジェクト情報131aを、通過判定部138に出力する。そして、目標動作作成部135は、通過判定部138から出力される通過判定情報に基づいて、新たな描画情報を作成して目標動作描画部136に出力する。通過判定情報は、学習対象の実動作と目標動作との比較結果を示す情報であり、学習対象の実軌道が学習対象の目標軌道をなぞることができたか否かを示す通過判定結果を含む。
目標動作描画部136は、目標動作作成部135で作成された描画情報を、無線通信によりヘッドマウントディスプレイ110の画像表示部113に送信する。
画像表示部113は、描画面(図示せず)を有し、制御端末130から送られてくる描画情報に基づいてオブジェクトを描画面に描画する。ユーザ150は、描画面に描画されたオブジェクトの画像と実視界のゴルフボール170やクラブヘッド160などを同時に見ながら、スィングの練習を行うことができる。
図5は、ヘッドマウントディスプレイ110における描画面の様子の一例を示す図である
図5に示すように、描画面230には、制御端末130から送られてきた描画情報に基づいて、実視界の画像231に重ねて、二次元画像または三次元画像であるオブジェクト画像232を表示する。ここでは、オブジェクトのデフォルトのシンボルが球体であり、図3に示すオブジェクト番号A1〜A3に対応するオブジェクト画像232が、大きさ207の記述内容に応じた大きさで描画されたときの描画面230を図示している。なお、ここでは、オブジェクト画像232の内部にオブジェクト番号を付加して図示しているが、必ずしもオブジェクト画像232にオブジェクト番号を付加する必要は無い。
なお、オブジェクトの描画の手法は、上記内容に限定されるものではない。例えば、実世界の映像とコンピュータ生成映像とを融合させたもの画像をディスプレィに表示するビデオ式シースルー型、低出力レーザを用いてコンピュータ生成の映像を網膜に直接描画する網膜ディスプレィ型、またはコンピュータ生成の情報を直接投影する投影型などの表示機器を用いてもよい。
運動情報計測部121は、3軸加速度センサ120で計測された3軸方向の加速度を基準座標系で表した加速度データを、運動情報として単位時間ごとに取得する。そして、運動情報計測部121は、無線通信により、単位時間ごとの時系列データとして運動情報を制御端末130に送信する。
運動情報取得部137は、3軸加速度センサ120の運動情報計測部121から送られてきた運動情報(加速度データ)を受信し、通過判定部138に出力する。
通過判定部138は、運動情報から、学習対象(ここではクラブヘッド160)の実動作を取得する。通過判定部138は、取得した実動作と、オブジェクト情報131aに定義された学習対象の目標動作とを比較解析し、上記した通過判定結果を含む通過判定情報を作成する。そして、通過判定部138は、作成した通過判定情報を目標動作作成部135に出力する。目標動作作成部135では、上述したように、通過判定情報に基づいて、通過判定結果をユーザ150に対してフィードバックするための描画情報が作成される。
なお、学習対象の実動作の取得の仕方は、上記内容に限定されるものではない。例えば、学習対象に圧力センサを取り付けて加速度データを取得したり、学習対象に取り付けたマーカの動きをカメラで撮影し撮影画像を解析するなどしてもよい。
制御端末130およびヘッドマウントディスプレイ110は、例えば、CPU(central processing unit)、制御プログラムを格納したROM(read only memory)などの記憶媒体、RAM(random access memory)などの作業用メモリ、および通信回路をそれぞれ備える。この場合、CPUが制御プログラムを実行することで、制御端末130およびヘッドマウントディスプレイ110の上記各部の機能は実現される。
ここで、学習支援装置10における各座標系の関係およびオブジェクトの描画位置の算出の原理について説明する。
図6は、各座標系の関係およびオブジェクトの描画位置の算出の原理を示す図である。
図6において、基準座標系241(Xh,Yh,Zh)は、制御端末130の位置および姿勢に固定された、位置姿勢情報取得部134を原点とする座標系である。制御端末130の位置姿勢情報取得部134は、ヘッドマウントディスプレイ110に固定された磁気センサの位置および姿勢を、基準座標系241で計測する。
HMD座標系242(Xe,Ye,Ze)は、視点検出装置112に固定された、ヘッドマウントディスプレイ110の描画面230上の所定の位置を原点とした座標系である。ヘッドマウントディスプレイ110に固定された視点検出装置112は、ユーザ150の視点243の位置を、HMD座標系242で検出する。
なお、説明の簡便化のため、ここでは、描画面230上の座標系がHMD座標系242に一致するものとする。
HMD座標系242における磁気センサ111aの位置および姿勢は、予め測定される。または、HMD座標系242における磁気センサ111aの位置および姿勢が予め定められた位置および姿勢となるように、磁気センサ111aおよび視点検出装置112は固定される。これにより、HMD座標系242と基準座標系241との間で、位置座標やベクトルを変換することができる。
また、HMD座標系242における描画面230の位置および姿勢は、予め測定される。または、HMD座標系242における描画面230の位置および姿勢が予め定められた位置および姿勢となるように、視点検出装置112は固定される。これにより、HMD座標系242と描画面230上の座標系との間で、位置座標やベクトルを変換することができる。
すなわち、ユーザ150の視点243および描画面230上の位置は、基準座標系241でも表すことができる。
更に、オブジェクト情報131aに定義されているオブジェクト250の位置座標は、基準座標系241の値であり、基準座標系241において、視点243とオブジェクト250とを結ぶ直線251の描画面230との交点を容易に求めることができる。この交点は、ユーザ150が描画面230を通してオブジェクト250を見たときの、描画面230上のオブジェクト250の画像の位置である。
このように、学習支援装置10では、基準座標系241と、他の座標系との幾何学的整合が取られている。
目標動作作成部135は、上記した各座標系の関係を用いて、ユーザ150の視点243、描画面230の位置、およびオブジェクト250の三次元的な位置に基づいて、描画面230上におけるオブジェクト画像232の描画すべき位置および姿勢を求める。これにより、学習支援装置10は、例えば、オブジェクト情報131aに基準座標系241で定義されているオブジェクト250の三次元的な目標軌道252を、描画面230におけるオブジェクト画像232の二次元的な目標軌道253に変換して、表示することができる。
但し、描画面230の領域は有限であるため、視点243からみて描画面230の範囲外の領域に位置するオブジェクト250bに対応して描画されるはずのオブジェクト画像232bは、実際には描画されないことになる。
また、学習支援装置10は、オブジェクト情報131aが定義する目標動作を実現する際の運動、つまり目標となる運動においてユーザ150が取るべき基本姿勢の立ち位置と向きを、予め記憶している。この記憶された立ち位置と向きに、基本姿勢を取るユーザ150の立ち位置や向きが合致するように、制御端末130とゴルフボール170の相対位置は設定されている。このような設定と、上記座標系の変換とにより、ユーザ150が目標となる運動を行った場合のユーザ150の視界における目標動作を、ユーザ150の視界に適合させて描画することができる。
なお、ゴルフボール170の初期位置に対するユーザ150の立ち位置は、ボールを打つべき方向との関係で定まることから、ゴルフボール170の初期位置を基準に基準座標系261(Xw,Yw,Zw)を設定してもよい。具体的には、例えば、ゴルフボール170の初期位置を原点とし、制御端末130からゴルフボール170へと向かうベクトルをX軸、垂直方向をZ軸、X軸とZ軸の外積方向をY軸とする座標系を、基準座標系261(Xw,Yw,Zw)とする。この場合には、地面または床面262上に、制御端末130に対して予め定められた距離および方向にゴルフボール170の初期位置が位置するように、制御端末130を設置すればよい。または、ゴルフボール170にマーカを取り付け、制御端末130に備えられたディジタルカメラの撮影画像から、マーカの位置および方向を特定するなどして、ゴルフボール170の初期位置を原点とする基準座標系261を設定してもよい。
また、ユーザ150の胴体などの位置および姿勢を基準に、基準座標系260を設定してもよい。この場合には、例えば、ユーザ150の体の所定の位置に磁気センサを取り付け、制御端末130でこの磁気センサの位置および姿勢を検出する。これにより、移動や大きな動きを伴う運動についても、ユーザ150の視界に適合させて目標動作を描画することができる。
次に、通過判定部138による通過判定の原理の一例について説明する。
図7は、通過判定部138による通過判定の原理の一例を示す図である。
通過判定部138は、3軸加速度センサ120からの加速度データを2重積分し、学習対象(ここではクラブヘッド160)の三次元位置の初期位置に対する相対変化を求めることにより、学習対象の実動作を算出する。具体的には、通過判定部138は、例えばクラブヘッド160のヘッド面をゴルフボールに沿わせた状態を学習対象の初期位置および初期姿勢として取得する。そして、通過判定部138は、学習対象のある時点での加速度からオイラー法などにより微小時間後の運動を求める処理を反復することにより、運動結果の時系列を逐次的に求めていく。
学習対象の実軌道270のどの時点の位置271を、どのオブジェクト250と比較すべきかを判断することは難しい。そこで、本実施の形態では、学習対象の実軌道270のうち、あるオブジェクト250との距離が最小となる位置271を、そのオブジェクト250と比較すべき位置とする。そして、その学習対象の位置271とオブジェクト250の位置との距離(以下「ずれ量」という)が所定の閾値より小さい場合には、成功したものと判定し、ずれ量が所定の閾値以上である場合には、失敗したものと判定する。
ここで、成功とは、学習対象の実軌道270が、目標軌道に位置するオブジェクト250を通過したことをいい、失敗とは、学習対象の実軌道270が、目標軌道に位置するオブジェクト250を通過しなかったことをいう。
通過判定部138は、微少時間ごとの学習対象の位置271を算出する。ある時間における学習対象の位置(x,y,z)が微小時間後に位置(x+Δx,y+Δy,z+Δz)に変位したとする。通過判定部138は、変位後のずれ量d'が変位前のずれ量dよりも大きくなった時点における変位前の位置(x,y,z)を、オブジェクト250との距離が最小となる位置と判定する。
具体的には、通過判定部138は、まず、オブジェクト250の位置(xa,ya,za)に対して、以下の式(1)が成立するか否かを逐次判定する。
オブジェクト250が多数存在する場合には、全てのオブジェクト250に対して上記演算を行うと処理負荷が高くなる。そこで、通過判定部138は、オブジェクト情報131aに定義されたオブジェクトの順序に従って、1つずつ順に通過判定を行う。例えば、図7に示すように、オブジェクト番号A1に対応するオブジェクト250−A1と、次のオブジェクト番号であるオブジェクト番号A2に対応するオブジェクト250−A2が存在したとする。この場合、通過判定部138は、まず、オブジェクト250−A1についてのみ式(1)を用いた判定を実行し、式(1)が成立してから、次のオブジェクト250−A2について式(1)を用いた判定を実行すればよい。
学習対象は、図7に示す位置271−1〜271−3を、この順序で通過したものとする。オブジェクト250−A2について式(1)の判定を実行している場合において、例えば、図7に示す位置271−1を(x,y,z)と置いたとき、学習対象はオブジェクト250−A2に近付く方向で移動しているので、式(1)は成立しない。一方、図7に示す位置271−2、271−3をそれぞれ(x,y,z)、(x+Δx,y+Δy,z+Δz)と置いたとき、学習対象はオブジェクト250−A2から遠ざかる方向で移動しているので、式(1)は成立する。
通過判定部138は、式(1)が成立したと判定したとき、その時点の学習対象の位置(x,y,z)から、オブジェクト250の位置に対する学習対象の実軌道270の最小のずれ量dを、例えば以下の式(2)を用いて算出する。
そして、通過判定部138は、算出したずれ量dを所定の閾値と比較し、成功であるか否かを判定する。
また、通過判定部138は、式(1)が成立したと判定したとき、その時点の学習対象の姿勢(ここではクラブヘッド160のヘッド面の法線ベクトル)を、オブジェクト情報131aに定義されたオブジェクトの姿勢と比較する。
具体的には、通過判定部138は、例えば、学習対象の姿勢を示すベクトルとオブジェクト情報131aが定義するベクトルとが成す角(以下「ずれ角」という)を算出する。そして、通過判定部138は、ずれ角の絶対値が所定の閾値より小さい場合には、姿勢が正しいと判定し、ずれ角の絶対値が所定の閾値以上である場合には、姿勢が正しくないと判定する。
更に、通過判定部138は、通過判定部138は、式(1)が成立したと判定したとき、その時点の学習対象の加速度を、オブジェクト情報131aに定義されたオブジェクト250の加速度と比較する。
具体的には、通過判定部138は、例えば、学習対象の加速度とオブジェクト情報131aが定義する加速度との差を算出し、算出結果の絶対値が所定の閾値より小さい場合には、加速度が適正であると判定し、算出結果の絶対値が所定の閾値以上である場合には、加速度が適正でないと判定する。
また、あるオブジェクト250の位置を通過するときの加速度を基準に、他の各オブジェクト250の位置を通過するときの加速度の比率を算出し、比率の大きさによって加速度が適正か否かを判定してもよい。この場合には、相対的な加速度の変化を捉えながら、スローモーションの動きで目標動作をなぞる動作を行うことができる。
なお、実動作と目標動作との間で比較を行う物理量は、上記に限定されるものではない。但し、比較を行おうとする物理量を、目標動作を構成する1つの要素として、オブジェクト情報131aに予め定義しておく必要がある。
次に、図2に示す構成を有する学習支援装置10の動作について、詳細に説明する。
図8は、学習支援装置10の動作の流れを示すフローチャートである。
まず、ステップS1100で、学習対象取得部132は、ユーザが希望する学習対象を示す学習対象情報を取得し、取得した学習対象情報を、目標動作作成部135に出力する。ここでは、「クラブ」が選択されるため、クラブヘッド160を学習対象とする学習対象情報が出力される。
そして、ステップS1200で、目標動作作成部135は、学習対象情報が示す部位に対応するオブジェクト情報131aを、目標動作情報格納部131から、目標動作情報として取得する。ここでは、クラブヘッド160が学習対象であるため、図3に示す、部位名201に「クラブ」が設定されているオブジェクト情報131aが取得される。また、目標動作作成部135は、取得したオブジェクト情報131aを、通過判定部138に出力する。
そして、ステップS1300で、目標動作作成部135は、取得したオブジェクト情報131aに記述された位置座標206を、位置姿勢情報取得部134で取得された位置姿勢情報および視界情報取得部133で取得された視界情報から、HMD座標系242に変換する。そして、目標動作作成部135は、描画対象となるオブジェクト250を取捨選択する描画対象計算を実施した後、目標動作を可視化して表現するための画像データ(以下単に「目標動作」という)を作成し、描画情報として目標動作描画部136に出力する。
例えば、学習の開始時において、描画対象がオブジェクト番号A1、A2、A3のオブジェクト250であり、図3に示す位置座標P1、P2、P3をHMD座標系242で表した位置座標がP−1、P−2、P−3であるとする。この場合、目標動作作成部135は、オブジェクト番号A1のオブジェクト250のオブジェクト画像232を、位置座標P−1に大きさS1で描画し、オブジェクト番号A2のオブジェクト250のオブジェクト画像232を、位置P−2に大きさS3で描画し、オブジェクト番号A3のオブジェクト250のオブジェクト画像232を、位置P−3に大きさS3で描画するための描画情報を作成する。
また、上記した描画対象計算の詳細は、下記の通りである。まず、目標動作作成部135は、オブジェクト情報131aのオブジェクト番号202、直前のオブジェクト番号203、および直後のオブジェクト番号204から、ユーザがなぞるべきオブジェクト250の順序を判断する。そして、目標動作作成部135は、ユーザ150の視点243と各オブジェクト250の位置とを結ぶ直線と、画像表示部113の描画面230との交点が、描画面230の内部に属するか否かを、なぞる順番に従って計算により判断する。そして、目標動作作成部135は、上記交点が描画面230の内部に属さないオブジェクトが現れた段階で計算を一時停止し、上記交点が描画面230の内部に属するオブジェクト250を描画対象として選択し、目標動作描画部136に描画対象の描画を依頼する。
そして、ステップS1400で、目標動作描画部136は、目標動作作成部135の描画指示に基づいて、図5に示すように、ヘッドマウントディスプレイ110の描画面230に目標動作を描画する。具体的には、目標動作描画部136は、目標動作作成部135から入力された描画情報を、無線通信によりヘッドマウントディスプレイ110の画像表示部113に送信する。
このように、図8のステップS1100〜S1400の処理により、学習対象の目標軌道に沿って、オブジェクト画像232が、描画面230上の対応する位置で表示される。ユーザ150は、オブジェクト画像232を見ながら、実物の学習対象(ここではクラブヘッド160)を目標動作になぞらせるように運動する。
図9は、オブジェクト画像232をなぞるように学習対象を動作させる様子を示す図である。ここでは、学習対象が手であり、オブジェクト250が球と円板とその他の立体図形との組み合わせによりシンボル化させている場合を図示している。
図9に示すように、学習対象である手の目標軌道に沿って、オブジェクト画像232−1〜232−3が表示される。ユーザ150は、自己の手281の手がオブジェクト画像232−1〜232−3をなぞるように運動する。例えば、円板の平面が手のひらの向き、三角錐や円柱が加速または減速およびその大きさを示している。これらのシンボルの意味を予めユーザ150に通知しておくことにより、ユーザ150は、目標軌道に加えて、手のひらの向きや力加減といった目標となる運動に関連する物理量をも確認しながら、運動することができる。
図10は、オブジェクト250の具体例を示す図である。
図10(A)に示すように、オブジェクト250は、例えば、フェース面282および後続オブジェクト方向指示部283から成るシンボルである。フェース面282は、所定の大きさの平面であり、ヘッド面の位置および姿勢を表現する。後続オブジェクト方向指示部283は、フェース面282を底辺とする円錐であり、円錐の高さによってヘッド面の加速度の大きさを、フェース面282の中心から頂点に向かう方向によってヘッド面の移動方向を表現する。あるオブジェクト250−1と次のオブジェクト250−2が存在している場合、図10(A)に示すように、オブジェクト250−1の後続オブジェクト方向指示部283は、次のオブジェクト250−2の位置の方向を示す。
また、図10(A)に示すように、後続オブジェクト方向指示部283の円錐を縮小した相似形の円錐284を図示し、後続オブジェクト方向指示部283と円錐284で挟まれた部分の厚さ285で、クラブヘッド160に掛ける力加減を表現してもよい。
このようなオブジェクト250を用いることにより、ユーザ150に対して、ヘッド面の位置だけでなく、姿勢や加えるべき力の加減を、感覚的に伝えることができる。
ゴルフのスィングにおいては、ユーザ150の手前から奥に部位を動かす場面は無いため、図10(A)に示すシンボルで差し支え無い。ところが、格闘技のパンチのように手前から奥に手を動かす動作がある場合には、後続オブジェクト方向指示部283の形状を把握しづらくなる可能性がある。
そこで、このような場合には、図10(B)に示すように、頂点の部分を切り取る形で、後続オブジェクト方向指示部283に穴286を設けるようにしてもよい。
このようなオブジェクト250を用いることにより、ユーザ150に対して、オブジェクト250がどのような姿勢にあっても、穴286の位置や大きさによって、次のオブジェクト250の方向や加速度などを感覚的に伝えることができる。
このように、学習シーンや学習したい内容によって、種々のシンボルをオブジェクトとして使用できる。また、サイズ、解像度、色、透明度、輝度、密度、グラデーション、形状など、各種の属性を用いることにより、より多くの種類の物理量を表現できるとともに、物理量の大きさを細かに表現することが可能となる。
図8のステップS1500で、運動情報取得部137は、スィング動作(なぞり動作)を開始したユーザの運動情報の取得を開始する。また、通過判定部138は、通過判定のための演算を開始する。具体的には、運動情報取得部137は、運動情報計測部121から単位時間ごとに送られてくる加速度データを受信し、通過判定部138に出力する。通過判定部138は、加速度データから、逐次、学習対象の実動作を計測する。そして、通過判定部138は、オブジェクト情報131aに定義されるオブジェクト250のうち、描画対象となっているオブジェクト250を順序に従って1つ選択し、2回目以降の実動作の計測が行われると、図7で説明した手順により、選択されているオブジェクト250に対する学習対象の実軌道270のずれ量dを求める。
そして、ステップS1600で、通過判定部138は、図7で説明した手法を用いて、求めたずれ量dと所定の閾値との比較により、学習対象の目標軌道の通過を判定する。具体的には、通過判定部138は、学習対象の通過が成功したか否か、および学習対象の姿勢が正しいか否か、学習対象の加速度が適正か否かなどの判定を行う。ここでは、クラブヘッド160が正しい位置を通過したか否か、通過時のヘッド面の向きは正しいか否か、およびクラブヘッド160に加える力加減は適正か否かが判定される。
そして、ステップS1700で、通過判定部138は、各判定結果を判定結果情報として目標動作作成部135に出力し、判定結果を蓄積するように目標動作作成部135に対して指示する。
そして、ステップS1800で、目標動作作成部135は、判定結果情報の内容に応じて、選択されているオブジェクト画像232の属性の変更を目標動作描画部136に依頼し、描画面230にオブジェクト画像232を再描画させる。具体的には、例えば、目標動作作成部135は、学習対象が通過に成功した場合、既に目標動作描画部136に渡した描画情報を、該当するオブジェクト250の属性を変更した描画情報で差し替え、新たな描画情報に基づいた画像を描画面230に描画させる。
なお、目標動作作成部135は、学習対象の現在位置に対応して、次になぞるべきオブジェクト画像232を、マーカを付けたり、サイズを変更したり、点滅させるなどして、強調してユーザに通知するようにしてもよい。これにより、学習対象の動きを先導することができ、ユーザが目標軌道を直感的に捉え易くすることができる。
また、運動に伴い、ユーザの頭部の位置や姿勢は変化し、ヘッドマウントディスプレイ110の描画面230を通して見える実視界も変化する。したがって、このことを考慮して、ステップS1800において上記した描画対象計算を再度行い、描画対象の取捨選択からやり直すようにしてもよい。
そして、ステップS1900で、目標動作作成部135は、描画対象となっている全てのオブジェクト250について処理を終了したか否かを判断する。目標動作作成部135は、未処理のオブジェクト250が残っている場合には(S1900:NO)、ステップS1500に戻り、次の描画対象となっているオブジェクト250を選択し直し、以降の処理を繰り返す。ステップS1500〜S1900の処理は、予め決められた時間ごとに実行してもよいし、ユーザ150の視点243の位置やヘッドマウントディスプレイ110の位置変位が所定の閾値よりも大きくなったタイミングで実行するようにしてもよい。
図11は、目標動作の再描画によりオブジェクト画像232のシンボルが変化する様子の一例を示す図である。ここでは、ユーザ150の視界に入る画像のうち、オブジェクト画像232−1〜232−3とクラブヘッド160のみを図示している。
ここで、目標動作作成部135は、ステップS1800におけるオブジェクト画像232の属性の変更として、通過が成功したオブジェクト250のオブジェクト画像232を、一定時間経過すると消滅する爆発の画像に置き換える処理を実行するものとする。
図11に示すように、時刻t1で、オブジェクト画像232−1が示すオブジェクト250について通過が成功すると、時刻t2で、オブジェクト画像232−1に代えて爆発の画像290が描画される。また、時刻t3で、オブジェクト画像232−2が示すオブジェクト250について通過が成功すると、時刻t4で、オブジェクト画像232−2に代えて爆発の画像290が描画される。
一方、時刻t5で、オブジェクト画像232−3が示すオブジェクト250について通過が失敗した場合には、爆発の画像290が描画されず、オブジェクト画像232−3がそのまま残る。これにより、ユーザ150は、目標軌道に配置されたオブジェクト画像232を学習対象が通過したか否かを、運動をしながら、リアルタイムにかつ直感的に確認することができる。
なお、クラブヘッド160が、オブジェクト画像232−1に対応する位置を時刻t1に通過するとして、次のオブジェクト画像232−2に対応する位置に到達する時刻t2よりも前に、オブジェクト画像232−1についての通過の成否がユーザ150に通知されることが望ましい。
すなわち、クラブヘッド160が前後するオブジェクト画像232−1、232−2に対応する位置の近傍を時刻t1、t2に通過する場合、再描画の基となるクラブヘッド160の位置計測が行われてから再描画が完了するまでの時間(図8のステップS1500〜S1800の処理に要する時間)を△tとすると、以下の式(3)が成立することが望ましい。
このことから、目標動作作成部135は、式(3)を満たすように、描画対象の取捨選択を行ってもよい。具体的には、目標動作作成部135は、例えば、クラブヘッド160の移動速度に基づいて、またはユーザ150が選択した速度レベルに基づいて、オブジェクト情報131aに定義されたオブジェクト250を間引き、予め即時の結果通知が可能なオブジェクトを優先して描画対象に選択する。
図12は、目標動作の再描画によりオブジェクト画像232のシンボルが変化した後の様子の一例を示す図である。
ここで、学習対象取得部132は、ポイント重要度205が大となっているオブジェクトをポイントオブジェクトとして、ポイント重要度205が小となっているオブジェクトを一般オブジェクトとして、それぞれ取り扱うものとする。ポイントオブジェクトとは、正しくなぞれたか否かの通過判定結果に基づいて形状を変化させるオブジェクトである。また、一般オブジェクトとは、判定結果に関係なく形状を一定とするオブジェクトである。
また、学習対象取得部132は、ステップS1800におけるオブジェクト画像232の属性の変更として、通過が失敗したオブジェクト250がポイントオブジェクトである場合には、オブジェクト画像232のサイズを大きくする処理を実行するものとする。
図3に示すように、オブジェクト番号A1、A4のオブジェクト250のポイント重要度205は大であり、オブジェクト番号A2、A3のオブジェクト250のポイント重要度205は小である。
したがって、オブジェクト番号A1〜A4に対応するオブジェクト250の全てにおいて通過が失敗した場合、図12(A)に示す目標動作291−1のように、ポイントオブジェクト、つまりポイント重要度205が大であるオブジェクト番号A1、A4に対応するオブジェクト画像232のみ、大きなサイズに変更される。このように、ポイントオブジェクトと一般オブジェクトとが混在することにより、ユーザ150は、意識するポイントを直感的に認識することができる。
また、例えば、図12(B)に示す目標動作291−2のように、順序が隣り合うオブジェクト250を結ぶオブジェクト250の画像として、点線状のオブジェクト画像232を配置するようにしてもよい。このオブジェクト250を結ぶオブジェクト250も、一般オブジェクトの一種として取り扱うことができる。
なお、オブジェクト情報131aのポイント重要度205において、大中小などより多くの段階のポイント重要度を記述し、重要度「大」をポイントオブジェクト、重要度「中」を一般オブジェクト、重要度「小」を点線で表示する一般オブジェクトとしてもよい。
また、ユーザ150に対して、より滑らかになぞりの動作を行わせようとする場合には、ポイントオブジェクトの間により多くの一般オブジェクトを配置すればよい。更に、目標動作作成部135の計算能力や目標動作描画部136の描画能力に応じて、これらの装置部に対する処理負荷を軽減すべく、一般オブジェクトの図示を省略するようにしてもよい。
また、図12(A)、(B)に示すオブジェクト画像232の表示手法を、再描画後ではなく、当初の目標動作の描画に適用してもよいことは勿論である。
目標動作作成部135は、図8のステップS1500〜S1900の処理を繰り返して、描画対象となっている全てのオブジェクト250について処理を終了した場合には(S1900:YES)、ステップS2000に進む。
ステップS2000で、学習支援装置10は、目標動作と実動作とを重ねて表示し、一連の処理を終了する。具体的には、通過判定部138は、時間経過に伴う学習対象の初期位置からの変位を、学習対象の実動作として、目標動作作成部135に出力する。目標動作作成部135は、学習対象の実動作に目標動作を重ねて表示するための描画情報を作成し、目標動作描画部136に出力する。
図13は、学習対象の実動作に目標動作を重ねて表示した状態を示す図である。
図13に示すように、ヘッドマウントディスプレイ110の描画面230には、学習対象の実軌道292に重ねて、実動作と目標動作との比較結果を示すオブジェクト画像232が表示される。ここでは、オブジェクト画像232に対して、ずれ方向に色が濃くなるようなグラデーションを施した例を図示している。このような比較結果の表示により、ユーザ150は、目標動作に対する実動作の、運動の全体的な流れの中でのずれを、即時に認識し、自己の運動の全体的な流れを効率良く改善することができる。
以上説明したように、本実施の形態によれば、学習支援装置10は、ユーザに対し、ユーザの目標となる運動に関連する、学習対象の姿勢や加速度といった所定の物理量を、学習対象の目標軌道上の対応する位置で提示する。また、このような目標動作の提示を、三次元的に目標軌道に重ならない位置での描画によって行う。これにより、たとえば上級者の運動といった目標となる運動における学習対象の動作をなぞることができ、目標となる運動を体感しながら学習することができる。したがって、ユーザに対して、目標となる運動の確実な学習を促すことができる。
すなわち、従来のように、テキストや動画などからユーザ自身が頭の中で目標動作を空間的にイメージして、見様見真似で運動を学習する場合に比べて、短時間での運動の上達を図ることができる。特に、学習対象分野の知識が少ないユーザや、イメージ作成が苦手な初心者または初級者に対しては、目標動作を容易かつ正確に認知できることから、学習効率を著しく向上させることができる。
また、ユーザの実際の運動における学習対象の軌道や所定の物理量を計測し、目標となる運動における学習対象の軌道や所定の物理量と比較して、比較結果をフィードバックする。これにより、ユーザが自己の運動を目標となる運動に近づけるために有効な情報を得ることができ、学習効率を更に向上させることができる。
また、他人の運動における学習対象の軌道などを体感することができるので、エンターティメント性に富んだ学習支援を行うことができる。
なお、目標動作の表示の手法には、上記内容以外の様々なバリエーションを適用し得る。どのような手法を適用するかは、例えば、目標動作作成部135の計算能力や、目標動作描画部136の描画能力に応じて決定すればよい。または、目標動作作成部135で複数の手法を選択できるようにしておき、ユーザ150の学習レベルやチェックしたい内容に応じて、適用する手法を切り替えるようにしてもよい。
また、計測されたユーザの運動における学習対象の軌道および各位置における所定の物理量から、オブジェクト情報を作成して記憶しておき、このオブジェクト情報の内容を、目標となる運動の基礎情報として用いてもよい。これにより、ユーザは、自分の運動を目標となる運動として他人に提供したり、他人の任意の運動を目標となる運動として取得することができ、コミュニケーション性に富んだ学習支援をも行うことができる。すなわち、ユーザに対し、単なる運動の学習支援以上の幅広い貢献が可能である。
(実施の形態2)
実施の形態2では、学習対象の通過判定結果と、ユーザの運動の習熟度に応じて、オブジェクトの属性を変更する場合について説明する。
図14は、本発明の実施の形態2に係る学習支援装置の詳細な構成を示すブロック図であり、実施の形態1の図2に対応するものである。図2と同一部分には同一符号を付し、これについての説明を省略する。
図14に示すように、学習支援装置30は、図2の制御端末130に代えて、制御端末330を有する。
制御端末330は、学習対象の目標動作を取得し、目標動作をヘッドマウントディスプレイ110の対応する位置に表示させる。また、制御端末330は、学習対象の実動作を計測し、目標動作と実動作との比較結果からユーザ150の習熟度を推定し、習熟度に応じて目標動作の表示を変化させる。
制御端末330は、図2の目標動作作成部135に代えて目標動作作成部335を有し、更に、習熟度推定部339を有する。
目標動作作成部335は、取得したオブジェクト情報131aの記述内容に基づいて、描画情報を作成するための作成計画であるオブジェクト描画計画を作成し、作成した描画情報を目標動作描画部136に出力する。オブジェクト描画計画は、図3に示すオブジェクト情報131aと同様の構成を有するが、HMD座標系242の座標情報でオブジェクト250の位置座標を定義する。
また、目標動作作成部335は、通過判定部138から出力される通過判定情報を習熟度推定部339に出力し、習熟度推定部339からの指示に従って、オブジェクト描画計画を変更する。そして、目標動作作成部335は、変更されたオブジェクト描画計画に基づいて、目標動作の表示を変化させた新たな描画情報を作成する。
図15は、習熟度推定部339に入力される通過判定情報の構成の一例を示す図である。
図15に示すように、通過判定情報410は、階層構造を有する。通過判定情報410は、1つまたは複数の部位単位結果411から構成される。各部位単位結果411は、部位名412と、1つまたは複数のオブジェクト単位結果413とから構成される。各オブジェクト単位結果413は、オブジェクト番号414と、失敗数415と、1つまたは複数のずれ説明416とから構成される。各ずれ説明416は、項目名417、ずれ内容418、およびずれ差分419から構成される。
部位単位結果411は、部位ごとの目標動作と実動作との比較結果を示す。
部位名412は、実施の形態1の図3に示すオブジェクト情報131aにおける部位名201に対応しており、学習対象を示す。オブジェクト単位結果413は、オブジェクトごとの目標動作と実動作との比較結果を示す。オブジェクト番号414は、オブジェクト情報131aにおけるオブジェクト番号202に対応しており、目標動作と実動作との間でなんらかのずれが発生したオブジェクトのオブジェクト番号を示す。失敗数415は、目標動作と実動作との間でずれがあった項目の数を示す。ずれ説明416は、項目ごとのずれの内容を示し、失敗数415に記述された数だけ連続的に記述される。
ずれ説明416において、項目名417は、目標動作と実動作との間でずれがあった項目であって、チェックすべき項目を示す。ずれ内容418は、ずれの具体的内容を示す。ずれ差分419は、ずれの大きさを示す。ずれ内容418やずれ差分419に記述される値の単位は、項目名417の種別ごとに予め定められている。
図14の習熟度推定部339は、入力される通過判定情報410が示す判定結果を蓄積し、蓄積された判定結果から、ユーザ150の習熟度を推定し、習熟度に応じて、目標動作作成部335に対してオブジェクト画像の表示の変更を指示する。具体的には、習熟度推定部339は、習熟度に応じた目標動作の表示の修正についてのポリシを定めた修正ポリシ情報をあらかじめ保持している。
図16は、修正ポリシ情報の内容の一例を示す図である。
図16に示すように、修正ポリシ情報420は、判定結果内容421、および変更依頼内容422から構成される。判定結果内容421には、通過判定情報410のずれ説明416に記述され得る内容が記述される。変更依頼内容422は、判定結果内容421に記述された内容に、通過判定情報410のずれ説明416に記述される内容が当てはまるときに、目標動作作成部335に対して依頼すべき目標動作の表示の変更の内容が記述される。
例えば、「ずれ内容:内側」という判定結果内容421に対して、「色:内側の色を濃く、大きさ:内側に拡大」という変更依頼内容422が記述されている。これは、通過判定情報410のずれ内容418に、実軌道が目標軌道の内側にずれている旨が記述されている場合には、オブジェクト250に対して、内側の色を濃くするとともに大きさを内側に拡大させる変化を与えるべきであることを示す。これにより、ユーザ150は、オブジェクトのグラデーションから、実軌道の修正すべき方向を直感的に捉えることができる。
また、「ずれ内容:内側または外側、かつ、ずれ差分:所定の閾値より大」という判定結果内容421に対して、「軌道を実軌道側に修正」という変更依頼内容421が記述されている。これは、通過判定情報410において、ずれ内容418に、実起動が目標方法軌道の内側または外側にずれている旨が記述されており、かつ、ずれ差分419に記述された値が所定の閾値よりも大きい場合には、オブジェクト250に対して、目標軌道を実軌道側に移動させる変化を与えるべきであることを示す。これにより、ユーザ150は、より到達し易い目標軌道を用いて学習を行うことができ、最終的な目標動作を段階的に学習することができる。
図14に示す習熟度推定部339は、一連の実動作について計測が完了するごとに、ユーザ150の習熟度を推定して適宜オブジェクト画像232の表示の変更を依頼する習熟度推定処理を実行する。
習熟度推定処理において、習熟度推定部339は、習熟度が低いと推定した場合には、修正ポリシ情報420に従って、オブジェクト画像232の表示の変更の具体的内容を記述した変更依頼情報を作成し、作成した変更依頼情報を、目標動作作成部335に出力する。
なお、修正ポリシ情報420には、例えば、描画対象とするオブジェクト250の数の増加、輝度やグラデーションの変更といったオブジェクト250の属性の変更など、各種の変更依頼内容を記述できる。
図17は、習熟度推定部339が作成する変更依頼情報の構成の一例を示す図である。
図17に示すように、変更依頼情報430は、階層構造を有する。変更依頼情報430は、1つまたは複数の部位単位変更依頼431から構成される。各部位単位変更依頼431は、部位名432と、1つまたはオブジェクト単位変更依頼433とから構成される。各オブジェクト単位変更依頼433は、オブジェクト番号434と、変更依頼数435と、1つまたは複数の変更説明436から構成される。各変更説明436は、項目名437、および変更内容438から構成される。
各部位単位変更依頼情報431は、部位ごとの目標動作の変更依頼内容を示す。
部位名432は、実施の形態1の図3に示すオブジェクト情報131aにおける部位名201に対応しており、変更の対象を示す。オブジェクト単位変更依頼433は、オブジェクトごとの変更内容を示す。オブジェクト番号434は、オブジェクト情報131aにおけるオブジェクト番号202に対応しており、変更の対象となるオブジェクトのオブジェクト番号を示す。変更依頼数435は、変更を依頼する項目の数を示す。変更説明436は、項目ごとの変更を依頼する内容を示し、変更依頼数435に記述された数だけ連続的に記述される。
変更説明436において、項目名437は、変更を依頼する項目を示す。変更内容438は、変更の具体的内容を示す。変更内容438に記述される値の単位は、項目名437の種別ごとに予め定められている。
以下、習熟度推定部339で実行される習熟度推定処理について、詳細に説明する。
図18は、習熟度推定部339が実行する習熟度推定処理の流れを示すフローチャートである。習熟度推定部339は、例えば、実施の形態1の図8のステップS2000の直前に、以下に説明する習熟度推定処理を実行する。
まず、ステップS1910で、習熟度推定部339は、目標動作作成部335を介して、通過判定部138から、図15に示す通過判定情報410を入力する。
図19は、通過判定情報410の内容の具体例を示す図であり、図15に対応するものである。
図19に示すように、通過判定情報410aには、「クラブ」という部位名412a、「Am」というオブジェクト番号414a、「2」という失敗数415a、「位置」という項目名417a−1に対応付けられた「内側」というずれ内容418a−1および「a」というずれ差分419a−1、「加速度」という項目名417a−2に対応付けられた「遅い」というずれ内容418a−2および「b」というずれ差分419a−2が記述されている。これは、クラブヘッド160が学習対象であり、オブジェクト番号Amにおいて、位置が内側にaだけずれたという失敗と、加速度がbだけ遅いという失敗があったということを示す。
そして、図18に示すステップS1920で、習熟度推定部339は、入力された通過判定情報410が示す判定結果を、使用可能な最大メモリ容量の範囲内で蓄積する。または、習熟度推定部339は、予め定められた数の通過判定情報410に対応する判定結果を、新しい情報を優先させて蓄積する。
そして、ステップS1930で、習熟度推定部339は、蓄積された判定結果から、学習対象の実動作が学習対象の目標動作を通過した確率(以下「通過確率」という)を算出する。
ここで、目標動作の通過とは、学習対象の通過の成功のみならず、学習対象の姿勢が正しいこと、学習対象の加速度が適正であることなど、目標動作を構成する各種要素ごとの目標動作に対する一致を含むものとする。
また、通過確率とは、ユーザが正しくなぞれたかを判断するための指標である。通過確率としては、過去数回分の判定結果の数に対する通過の数の比を採用してもよいし、直前の試行結果のみならず、過去何回かにおける失敗の頻度や傾向などランダム性をふまえた分析結果を採用してもよい。
そして、ステップS1940で、習熟度推定部339は、各オブジェクト250について、算出した通過確率が所定の閾値以上であるか否かを判断する。具体的には、例えば、習熟度推定部339は、過去10回分の判定結果において5回以上失敗し、かつ3回以上連続して失敗しているという条件を閾値とした場合、各オブジェクト250について、過去10回分の判定結果から失敗数と連続失敗数の最大値を通過確率として算出し、算出結果と閾値とを比較する。習熟度推定部339は、通過確率が所定の閾値以上であるオブジェクト250については(S1940:YES)、該当するオブジェクトをユーザ150が苦手なポイントと判断して、ステップS1950に進む。一方、習熟度推定部339は、通過確率が所定の閾値未満であるオブジェクト250については(S1940:NO)、該当するオブジェクトをユーザ150が苦手なポイントではないと判断して、ステップS1950には進まずに、そのまま図8のステップS2000の処理に戻る。
ステップS1950で、習熟度推定部339は、目標動作作成部335に対してオブジェクト描画計画の変更を依頼し、図8のステップS2000の処理に戻る。具体的には、習熟度推定部339は、図16に示す修正ポリシ情報420を参照して、ユーザ150が苦手なポイントであると判断されたオブジェクト250に対して施すべき修正内容を取得する。そして、各オブジェクト250について取得した修正内容から、図17に示す変更依頼情報430を作成し、作成した変更依頼情報430を目標動作作成部335に出力する。
図20は、図19に示す通過判定情報410aから作成される変更依頼情報430の内容の具体例を示す図である。
通過判定情報410aに記述されたずれ差分aは小さいものとする。この場合、図16に示す修正ポリシ情報420において、通過判定情報410aの内容に合致する判定結果内容421は、「ずれ内容:内側」であり、対応する変更依頼内容422は、「色:内側の色を濃く、大きさ:内側に拡大」である。
したがって、図20に示すように、変更依頼情報430aには、「クラブ」という部位名432a、「Am」というオブジェクト番号434a、「2」という変更依頼数435a、「色」という項目名437a−1に対応付けられた「内側の色を濃く」という変更内容438a−1、「大きさ」という項目名437a−2に対応付けられた「内側に拡大」という変更内容438a−2が記述される。これは、クラブヘッド160のオブジェクト番号Amのオブジェクト250に対して、内側の色を濃くするとともに、大きさを内側に拡大させる変化を与えることを依頼するものである。
変更依頼情報430を受け取った目標動作作成部335は、その内容に従って、オブジェクト描画計画の内容を更新する。例えば、図19に示す通過判定情報410aを受け取った場合、目標動作作成部335は、現状のオブジェクト描画計画のうち、クラブヘッド160のオブジェクト番号Amのオブジェクト250に対して、内側の色を濃くし、大きさを内側に拡大させる変化を与える。そして、更新後のオブジェクト描画計画に基づいて描画情報を作成し、作成した描画情報を目標動作描画部136に出力する。
以上の習熟度推定処理の結果、図8のステップS2000では、ユーザ150の習熟度および目標動作に対する実動作のずれの内容に応じて、属性が変化した目標動作が表示される。
このように、本実施の形態によれば、蓄積したユーザの試行結果から、ユーザの習熟度を推定し、習熟度に応じて、目標動作の表示を変更する。これにより、ユーザが苦手とするポイントの学習を補強することができる。
同じことの繰り返しや、できないことの繰り返しによる練習は、ユーザにとって飽きやすい。したがって、このような習熟度を考慮した変化のある繰り返しは、ユーザの練習意欲を増進させることができ、運動の上達に効果的である。また、ユーザは、描画された目標動作を見るだけで苦手な部分とそれ以外の部分とを明確に区別して認識することができる。これにより、ユーザに対して高い課題意識を持たせることができるだけでなく、ユーザにアドバイスを行う第三者に対してユーザの動作の特徴の把握を容易ならしめる。更に、例えば、前回の練習から長時間が経過した後の練習では、前回の練習で会得した技術は、ユーザにとって曖昧な記憶となるが、本実施の形態の学習支援装置30を用いることにより、未習熟のポイントをより正確に認識できるため、ユーザが会得した技術の再現性を向上させることができる。
(実施の形態3)
実施の形態3では、複数の部位の運動を、これら複数の部位の関連性と併せて表示させる場合について説明する。
目標動作は、複数の部位がバランスよく連動していることが多い。つまり、部位間の位置関係、動き出すタイミングなどに狂いが生じると目的の動作を実現することが困難になる。そこで、本実施の形態に係る学習支援装置では、学習対象の動作のみならず、複数の学習対象の間の位置関係および動き出すタイミング(以下単に「関連性」という)を表示する。
図21は、本発明の実施の形態3に係る学習支援装置の詳細な構成を示すブロック図であり、実施の形態1の図2に対応するものである。図2と同一部分には同一符号を付し、これについての説明を省略する。
図21に示すように、学習支援装置50は、図2の制御端末130に代えて、制御端末530を有する。制御端末530は、図2の目標動作作成部135および通過判定部138に代えて、関連性判定部539を備えた目標動作作成部535と、通過判定部538とを有する。また、本実施の形態の制御端末530における目標動作情報格納部131は、目標動作における複数のタイミングについて、どのタイミングに各オブジェクト情報131aに定義されたどのオブジェクトが関連するかを記述したオブジェクト関連情報131bを、更に格納している。
図22は、オブジェクト関連情報131bの内容の一例を示す図である。
図22に示すように、オブジェクト関連情報131bは、「手、足、クラブ、腰、・・・」という部位名441のそれぞれに対応付けて、「t1、t2、t3、・・・、tn」という複数のタイミング442ごとに、オブジェクト番号が記述されている。部位名441は、図3に示すオブジェクト情報131aの部位名201に対応している。タイミング442の数は、オブジェクト情報131aに定義されたオブジェクトの数に対応している。記述されているオブジェクと番号は、オブジェクト情報131aのオブジェクト番号202に対応している。
同一のタイミング442に対応して記述された複数のオブジェクト番号は、該当するオブジェクト250のそれぞれが示す部位の動作が連動していることを示す。例えば、図22に示すように、「t1」というタイミングに対応して、「クラブ」という部位名441の「A1」というオブジェクト番号と、「手」という部位名441の「C1」というオブジェクト番号とが記述されている。これは、オブジェクト番号A1のオブジェクトが示すクラブヘッド160の動作と、オブジェクト番号C1のオブジェクトが示す手の動作とが、目標動作において同一のタイミングに実現される連動した動作であるということを示す。
このような同一のタイミングで連動しているオブジェクトの組または連動しているオブジェクトのオブジェクト番号の組を、以下、「連動オブジェクト組」という。また、例えば、オブジェクト番号A1、B2、C1の各オブジェクトが連動オブジェクト組である場合に、適宜、(A1、B1、C1)と表記する。
図21の制御端末530は、学習対象の目標動作を取得し、目標動作をヘッドマウントディスプレイ110の対応する位置に表示させる。また、制御端末530は、複数の部位が学習対象として選択されているときには、各々の学習対象の動作およびこれらの関連性を表示させる。
目標動作作成部535は、取得したオブジェクト情報131aの記述内容に従って描画情報を作成し、作成した描画情報を目標動作描画部136に出力する。また、目標動作作成部535は、複数の部位が学習対象として選択されたときには、関連性判定部539を用いて、複数の学習対象の関連性を判定する。具体的には、関連性判定部539において、目標動作情報格納部131のオブジェクト関連情報131bに基づいて複数の学習対象の関連性を判定し、連動オブジェクト組を出力する、関連性判定処理を実行する。そして、目標動作作成部535は、判定した関連性を示す新たなオブジェクト(以下「関連性オブジェクト」という)を追加した描画情報を作成する。
また、目標動作作成部535は、複数の部位が学習対象として選択されたときには、対応する複数のオブジェクト情報131aと、連動オブジェクト組とを、通過判定部538に出力する。
通過判定部538は、運動情報取得部137を介して取得した実動作と、オブジェクト情報131aに定義された学習対象の目標動作とを比較解析して、通過判定情報を作成し、作成した通過判定情報を目標動作作成部135に出力する。また、通過判定部538は、複数のオブジェクト情報131aと連動オブジェクト組とを目標動作作成部135から受け取った場合には、複数の学習対象の動作の関係性を考慮して実動作と目標動作との比較解析を行う。
以下、関連性判定部539で実行される関連性判定処理について、詳細に説明する。
図23は、関連性判定部539が実行する関連性判定処理の流れを示すフローチャートである。例えば、実施の形態1の図8のステップS1100で、図4に示す制御パネル210において「手」および「クラブ」という2つの部位が学習対象として選択された場合、目標動作作成部535は、対応する2つのオブジェクト情報131aを取得する。このように、目標動作作成部535で複数のオブジェクト情報131aが所得された場合に、関連性判定部539は、例えば、図8のステップS1200の直後に、以下に説明する関連性判定処理を実行する。
まず、ステップS1210で、関連性判定部539は、複数のオブジェクト情報131aから1つを選択し、選択したオブジェクト情報131aから全てのオブジェクト番号202を抽出する。
そして、ステップS1220で、関連性判定部539は、オブジェクト関連情報131bを参照し、ステップS1210で抽出した個々のオブジェクト番号202について、同一のタイミング442に対応付けられた他の部位のオブジェクト番号を抽出する。そして、関連性判定部539は、オブジェクト番号202とこれに対応して抽出された他の部位のオブジェクト番号とを、連動オブジェクト組に設定する。
そして、ステップS1230で、関連性判定部539は、ステップS1220で設定された連動オブジェクト組を目標動作作成部535に出力して、図8のステップS1300の処理に戻る。
目標動作作成部535は、図8のステップS1300で、図8のステップS1100で取得した複数のオブジェクト情報131aと、関連性判定部539から出力された連動オブジェクト組とを、通過判定部538に出力する。通過判定部538の処理については後述する。
また、目標動作作成部535は、連動オブジェクト組を構成する複数のオブジェクトのそれぞれについて、描画対象計算を実施する。また、関連性判定部539から出力される連動オブジェクト組のうち、オブジェクトの全てが描画対象となっているものを、関連性オブジェクトの描画の対象として決定する。
例えば、あるタイミングで、描画面230の内部に属するオブジェクト250のオブジェクト番号が、「クラブ」という部位名441に関してはオブジェクト番号A2、A3であり、「手」という部位名441に関してオブジェクト番号C1、C2、C3であったとする。この場合、連動オブジェクト組(A2、C2)、(A3、C3)は、全て描画対象として揃っているが、連動オブジェクト組(A1、C1)は、全て描画対象として揃っていない。したがって、目標動作作成部535は、連動オブジェクト組(A2、C2)、(A3、C3)を関連性オブジェクトの描画対象として決定する。
そして、目標動作作成部535は、描画対象に決定されたオブジェクトおよび関連性オブジェクトを描画するための描画情報を作成し、目標動作描画部136に出力する。
図24は、目標動作作成部535で作成される描画情報のうち、描画対象を示すデータ部分である描画対象データの内容の一例を示す図である。ここでは、関連性オブジェクトとして、オブジェクトを結ぶ線が使用される場合を例示している。
図24に示すように描画対象データ450には、描画対象となるオブジェクトの、オブジェクト番号、位置座標、大きさ、および色が記述されている。オブジェクトに関して記述される情報は、元のオブジェクト情報131aの記述内容に対応している。また、描画対象データ450には、関連性オブジェクトに関する情報が記述されている。
ここでは、描画対象のオブジェクト250のオブジェクト番号がA2、A3、C1、C2、およびC3である場合を図示している。この場合、上述したように、関連性オブジェクトの描画対象となるのは、連動オブジェクト組(A2、C2)、(A3、C3)である。したがって、描画対象データ450には、関連性オブジェクトとして、連動オブジェクト組(A2、C2)、(A3、C3)を結ぶ線を描画する旨が記述されている。
なお、目標動作作成部535は、オブジェクト情報131aの記述内容にそのまま従うのではなく、学習対象ごとに異なる色を割り当てるなど、オブジェクトの種類ごとにシンボルが異なるような描画対象データ450を作成してもよい。
図25は、図24に示す描画対象データ450に基づいて描画が行われたときの描画面230の様子の一例を示す図である。
図25に示すように、描画面230には、オブジェクト番号A2、A3、C1、C2、C3に対応するオブジェクト画像232が描画される。また、描画面230には、連動オブジェクト組(A2、C2)、(A3、C3)をそれぞれ結ぶ線460−2、460−3が、関連性オブジェクトの画像として描画される。
このような関連性オブジェクトの画像を表示した描画面230を見ながら練習することにより、ユーザは、複数の部位の関連性を確認しながら個々の部位の動作を学習することができる。
なお、一部のオブジェクト250のみが描画面230内に存在している連動オブジェクト組に対しても、関連性オブジェクトの画像を描画するようにしてもよい。この場合には、全てのオブジェクトについて連動オブジェクト組の設定を行った後に、描画対象となるオブジェクトの取捨選択を行うとともに、設定された連動オブジェクトの画像から描画面の内部に位置する部分のみを抜き出して描画対象とするようにすればよい。
図26は、一部のオブジェクト250のみが描画面230内に存在している連動オブジェクト組に対しても関連性オブジェクトの画像を描画した場合の描画面230の様子の一例を示す図であり、図25に対応するものである。
図26に示すように、線460−2、460−3だけでなく、一方のオブジェクト250が描画面230の外部に位置する連動オブジェクト組(A1、C1)を結ぶ線460−1も、外部に位置するオブジェクト250の存在する方向に向かう形で描画される。
次に、通過判定以降の動作について説明する。
通過判定部538は、図8のステップS1600で、各実施の形態1と同様の通過判定を行う。また、通過判定部538は、複数のオブジェクト情報131aと連動オブジェクト組とを目標動作作成部135から受け取った場合には、連動オブジェクト組のそれぞれについて、オブジェクト250の位置を一番早く通過した部位と、その後に通過した部位との時間差を記録した時間差情報を作成する。そして、通過判定部538は、作成した時間差情報を、目標動作作成部635に出力する。
目標動作作成部635は、時間差情報を受け取ると、それぞれの連動オブジェクト組について、最も早く実軌道が通過したオブジェクト250を始点とし、他のオブジェクト250を終点とした矢印を、追加で描画する描画情報を作成する。そして、目標動作作成部635は、既に目標動作描画部136に渡した描画情報を、矢印を追加した描画情報で差し替え、新たな描画情報に基づいた画像を描画面230に描画させる。
なお、目標動作作成部635は、矢印の太さで時間差の大きさを表現するような描画情報を作成してもよい。これにより、複数の学習対象の動作の関係性を含めた実動作と目標動作との比較結果が、描画面230に表示される。
図27は、複数の学習対象の動作の関係性を含めた実動作と目標動作との比較結果が描画されたときの描画面230の様子の一例を示す図であり、図25に対応するものである。
ここでは、オブジェクト番号A2、A3についての実軌道の通過時刻が遅れており、かつ、オブジェクト番号A2の遅れが大きい場合を例示している。この場合、図27に示すように、オブジェクト番号C2のオブジェクト画像232からオブジェクト番号A2のオブジェクト画像232に向けて太い矢印461−2が描画され、オブジェクト番号C3のオブジェクト画像232からオブジェクト番号A3のオブジェクト画像232に向けて細い矢印461−3が描画される。これは、「手がクラブより先に動き、その差が縮まった」ということを示す。ユーザ150は、このような複数の学習対象の動作の関係性を含めた比較結果を見ることによって、目標動作における複数部位の連動のバランスと実動作における複数部位の連動のバランスとの差を直感的に捉えることができる。
このように、本実施の形態によれば、目標動作における複数の部位の関連性を表示するので、ユーザの運動時の部位間のずれに対する直感な理解を促すことができ、複数部位間のバランスを考慮した効果的な学習を実現できる。したがって、初心者や初級者は、体全体の使い方を効率的に学習できる。また、熟練者も、複数部位の連動のバランスが崩れていることにより技術の向上が停滞しているような場合に、原因を特定することができ、更なる技術の向上を図ることができる。
なお、通過判定の際、実動作と目標動作との比較の基準となる学習対象を設定し、基準に設定された学習対象以外の学習対象については、どの時点の位置をどのオブジェクトと比較すべきかの判断を、基準に設定された学習対象を基準にして決定するようにしてもよい。
具体的には、例えば、通過判定部は、学習対象に予め優先順位を設定しておき、受け取った複数のオブジェクト情報が対応する学習対象の中で最も優先順位の高いものを、上記比較の基準に設定する。そして、通過判定部は、基準に設定された学習対象のオブジェクト情報については、実施の形態1と同様の比較解析を行い、一方、他のオブジェクト情報については、基準に設定された学習対象の実動作の各計測時刻と、それぞれの実動作について比較の対象となったオブジェクトが対応する各タイミングとの間で、実動作と目標動作との比較を行うようにすればよい。
また、連動オブジェクト組は、3つ以上のオブジェクトから構成されてもよいことはもちろんである。また、オブジェクトそのものを線や棒状の形状とし、1つのオブジェクトに複数のポイントを設定して、複数の部位の関連性を単一のオブジェクトで表現し、それぞれのポイントについて実動作との比較を行うようにしてもよい。
(実施の形態4)
実施の形態4では、描画面に描画する情報量を状況に応じて最適化する場合について説明する。
例えば、目標動作をなぞるスピードが速くなったユーザ150にとっては、オブジェクト画像232や比較結果が表示するまでの時間が遅く感じられる場合がある。このような場合、描画面230に描画する情報量を低減することで、処理負荷を軽減し、オブジェクト画像232や比較結果が表示するまでの時間を短縮することができる。そこで、本実施の形態に係る学習支援装置では、オブジェクト情報131aに定義されたオブジェクト250の一部を描画対象から除外して、描画面に描画する情報量を最適化する。
図28は、本発明の実施の形態4に係る学習支援装置の詳細な構成を示すブロック図であり、実施の形態3の図21に対応するものである。図21と同一部分には同一符号を付し、これについての説明を省略する。
図28に示すように、学習支援装置60は、図21の制御端末530に代えて、制御端末630を有する。制御端末630は、図21の目標動作作成部535および通過判定部538に代えて、目標動作作成部635と、関連性判定部539を備えた通過判定部638とを有し、更に、情報量制御部639を有する。
目標動作作成部635は、取得したオブジェクト情報131aの記述内容に従って、どの位置にどのようなオブジェクトを配置するかを規定するオブジェクト配置計画を作成し、作成したオブジェクト配置計画を情報量制御部639に出力する。そして、目標動作作成部635は、情報量制御部639から描画許可を受け取った場合には、作成したオブジェクト配置計画に沿ってそのまま描画情報を作成し、作成した描画情報を目標動作描画部136に出力する。一方、情報量制御部639からオブジェクト配置計画の修正を命令するオブジェクト配置計画修正命令を受け取った場合には、目標動作作成部635は、オブジェクト配置計画の内容を修正し、修正後のオブジェクト配置計画に基づいて描画情報を作成する。また目標動作作成部635は、受け取ったオブジェクト配置計画修正命令を、通過判定部638に出力する。
図29は、オブジェクト配置計画の内容の一例を示す図である。
図29に示すように、オブジェクト配置計画470は、部位名471、オブジェクト番号472、ポイント重要度473、位置座標474、大きさ475、その他情報476、およびタイミング477により構成される。部位名471、オブジェクト番号472、ポイント重要度473、位置座標474、大きさ475、およびその他情報476は、それぞれ、図3に示すオブジェクト情報131aの、部位名201、オブジェクト番号202、ポイント重要度205、位置座標206、大きさ207、およびその他情報209にそれぞれ対応している。ただし、オブジェクト配置計画470の位置座標474には、HMD座標系242の座標情報が記述される。また、タイミング477は、図22に示すオブジェクト関連情報131bのタイミング442に対応している。
ここでは、「手」、「足」、「クラブ」という3つの部位が学習対象として選択されており、あるタイミングにおける描画対象の取捨選択が完了している場合の例を図示している。また、説明の便宜上、後述するオブジェクト配置計画修正命令の対象外となる情報には下線を付している。
情報量制御部639は、情報量を低減するための方針を定めた制御指示書を予め格納する。情報量制御部639は、目標動作作成部635からオブジェクト配置計画を受け取ると、オブジェクト配置計画修正命令を適宜作成して情報量の最適化を行う情報量最適化処理を実行する。
具体的には、情報量制御部639は、ユーザに提示される情報の情報量を示す値(以下単に「情報量」)を算出する。そして、情報量制御部639は、算出した情報量が所定の閾値以下である場合には、目標動作作成部635に描画許可を出力する。一方、算出した情報量が所定の閾値を超える場合には、情報量制御部639は、制御指示書に従ってオブジェクト配置計画修正命令を作成し、作成したオブジェクト配置計画修正命令を目標動作作成部635に出力する。情報量最適化処理の詳細については後述する。
図30は、情報量制御部639が格納する制御指示書の内容の一例を示す図である。
図30に示すように、制御指示書480には、情報量を減らすためにオブジェクト配置計画470に施すべき修正の方針が記述されている。ここでは、例えば、「1:一般オブジェクトを削除/ただし、ポイントオブジェクトの間に複数ある場合には、間引く」と記述されている。これは、原則として一般オブジェクトを削除し、オブジェクト番号472が示す順序においてポイントオブジェクトの間に複数の一般オブジェクトがある場合には、複数の一般オブジェクトのうち一部を削除するという方針を示す。また、「2:周辺部のオブジェクトを削除」と記述されている。これは、描画面230を中央付近とその周辺部とに区分したときに、周辺部に位置するオブジェクトを削除するという方針を示す。
図28の通過判定部638は、運動情報取得部137を介して取得した実動作と、オブジェクト情報131aに定義された学習対象の目標動作とを比較解析して、通過判定情報を作成し、作成した通過判定情報を目標動作作成部135に出力する。また、通過判定部638、複数のオブジェクト情報131aを目標動作作成部135から受け取った場合には、関連性判定部538を用いて連動オブジェクト組を取得し、複数の学習対象の動作の関係性を考慮して実動作と目標動作との比較解析を行う。また、目標動作作成部635からオブジェクト配置計画修正命令を受け取った場合には、オブジェクト配置計画修正命令の内容に従って、実動作と目標動作との比較解析の対象となるオブジェクト250を削減する。
以下、情報量制御部639で実行される情報量最適化処理について、詳細に説明する。
図31は、情報量制御部639が実行する情報量最適化処理の流れを示すフローチャートである。情報量制御部639は、例えば、図8のステップS1300の直後に、目標動作作成部635からオブジェクト配置計画470を受け取った場合、以下に説明する情報量最適化処理を実行する。
まず、ステップS1310で、情報量制御部639は、受け取ったオブジェクト配置計画470からそのまま描画情報を作成した場合の情報量を算出する。ただし、後述する処理によってオブジェクト配置計画命令を既に作成している場合には、情報量制御部639は、作成したオブジェクト配置計画修正命令に従って描画情報を作成した場合の情報量を算出する。
情報量の定義の仕方や算出手法は、各種の定義および算出手法を採用できる。例えば、情報量は、ユーザ150の視界内の、オブジェクト画像232の総数や、視界にほぼ一致するとみなすことができる描画面230に対するオブジェクト画像232が占める面積比、オブジェクト画像232が集積する密度とすればよい。また、視界の中央付近に配置された画像を注視する傾向があるという人間の特性を考慮して、描画面230の中央付近により高い重み付けを行って、上記面積比や密度を算出し、算出結果を情報量として採用してもよい。
ここでは、全ての学習対象について重要度ごとのオブジェクト画像232の面積が共通であるものとし、一般オブジェクト250の表示面積を示す点数が「1」、ポイントオブジェクト250の表示面積を示す点数が「3」、関連性オブジェクトの表示面積を示す点数が「2」であるものとする。また、描画面230上の中央付近の所定の範囲に位置する場合の重み係数を「3」とし、その他の範囲に位置する場合の重み係数を「1」とする。情報量制御部639は、このようなオブジェクトに対する点数の設定と重み付けとにより、描画面230の状態を簡易モデル化して、情報量を算出する。
具体的には、k個目のオブジェクトの点数をPk、位置に対応する重み係数をWkと置くと、オブジェクト配置計画470に規定された、関連オブジェクトを含むオブジェクトの個数がm個のとき、情報量制御部639は、例えば以下の式(4)を用いて情報量Qを算出する。
そして、ステップS1320で、情報量制御部639は、ステップS1330で算出した情報量が、所定の閾値を超えるか否かを判断する。所定の閾値は、ユーザ150のレベルに応じて複数用意されていることが望ましい。この場合、情報量制御部639は、制御パネル210を介してレベルの入力を受け付け、入力されたレベルに対応する閾値を使用すればよい。情報量制御部639は、算出した情報量が所定の閾値を超えている場合には(S1320:YES)、ステップS1330に進む。
ステップS1330で、情報量制御部639は、図30に示す制御指示書480に従い、オブジェクト配置計画修正命令を作成し、既にオブジェクト配置計画修正命令を作成している場合には、削除対象となるオブジェクトを指定する情報を追加する。そして、情報量制御部639は、ステップS1310に戻り、オブジェクト配置計画修正命令について情報量を算出する。ステップS1310〜S1330の処理は、情報量が所定の閾値以下となるまで繰り返される。これにより、オブジェクト配置計画修正命令は、最終的に、情報量を所定の閾値以下に制御する内容となる。
算出した情報量が所定の閾値以下となった場合、または元のオブジェクト配置計画470で情報量が所定の閾値以下であった場合には(S1320:NO)、ステップS1340に進む。
ステップS1340で、情報量制御部639は、オブジェクト配置計画修正命令が作成された場合には、オブジェクト配置計画修正命令を目標動作作成部635に出力し、オブジェクト配置計画修正命令が作成されなかった場合には、描画許可を目標動作作成部635に出力する。そして、図8のステップS1400の処理に戻る。
図32は、オブジェクト配置計画修正命令の内容の一例を示す図である。
図32に示すように、オブジェクト配置計画修正命令471は、図29に示すオブジェクト配置計画470と同様の構成であり、オブジェクト配置計画470のうち残すべき部分を示した内容となっている。
目標動作作成部635は、オブジェクト配置計画修正命令471に記述された内容をオブジェクト配置計画470に反映し、反映後のオブジェクト配置計画470基づいて、描画情報を作成する。これにより、描画面230に描画される情報量は削減される。
図33は、あるオブジェクト配置計画470に基づいて描画が行われたときの描画面230の様子の一例を示す図である。
図33に示すように、ここでは、大きい楕円で示されるポイントオブジェクトの画像232aと、小さい円で示される一般オブジェクトの画像232bと、関連性オブジェクトとしてオブジェクト画像232を結ぶ直線で示される線460とが描画されている。また、高い重み付けを行う中央エリア472の内部に、7つのポイントオブジェクトの画像232aと、4つの一般オブジェクトの画像232bと、5つの線460が表示され、中央エリア472の周辺部に、1つのポイントオブジェクトの画像232aが表示されている。
このような描画面230の元となるオブジェクト配置計画470から算出される情報量は、3×(3×7+1×4+2×5)+1×(3×1)=108と算出される。図31のステップS1320で使用される閾値が例えば80の場合、算出された情報量は閾値を超えるため、情報量制御部639でオブジェクト配置計画修正命令が作成され、描画面230の情報量は削減される。
図34は、図33に示す描画面230の元となるオブジェクト配置計画470に対して情報量制御部639の命令による修正が行われたときの描画面230の様子の一例を示す図である。
図33に示す描画面230と比較すると、図34に示す描画面230では、中央エリア472の周辺部の1つのポイントオブジェクトの画像232aと、3つの一般オブジェクトの画像232bと、2つの線460が削減されており、よりすっきりした画面となっている。
このような描画面230の元となるオブジェクト配置計画470から算出される情報量は、3×(3×6+1×1+2×3)=75と算出される。つまり、算出された情報量が閾値以下とすることにより、より見易い画面が表示されることが分かる。
このように、本実施の形態によれば、情報量制御部639が、制御指示書480に従ってオブジェクト配置計画を修正し、描画面に描画される情報量を削減する。これにより、処理負荷を軽減し、オブジェクト画像232や比較結果が表示するまでの時間を短縮することができる。また、重要度の低い情報を削減する形で情報量を削減するので、ユーザのレベルによっては、かえって必要な情報を捉え易くすることができる。
また、オブジェクトとして立体図形を用いたり、強調の効果を目的として回転、膨張、縮小などの動的変化をオブジェクトに与えるような場合には、ちらつき防止など、より高い視覚的効果を得ることができる。例えば、指や関節など、更に細分化した単位の部位について学習を行う場合には表示されるオブジェクト多くなり、情報過多となる可能性があるが、このような情報量削減により情報過多の防止と学習単位の細分化とを両立させることができる。
同時に複数の部位を学習したり、個々のオブジェクトが単なる通過点ではなく、物理量の変化などを示すなどの意味を持っていたりする場合には、ユーザがなぞる対象を探し、認識するまでの反応時間は長くなる傾向にある。反応時間に時間がかかりすぎて運動の滑らかさに支障が出ることは、運動学習として望ましくない。また、一般的に、眼球運動が高速になればなるほど視力は低下し、視野も狭くなることが知られている。特に、複数の部位をチェックするために頻繁に頭を動かす場合には、眼球運動も高速になり、表示されている情報の正確な認識が困難となる。その点、本実施の形態によれば、反応時間や情報認識の正確さに影響を与える情報量を制限することができ、より質の高い運動学習支援を行うことができる。
(実施の形態5)
実施の形態5では、描画面の外部の領域など、ユーザの死角の領域に位置する目標動作部分を、ユーザの視界内に再配置する場合について説明する。
ユーザ150の視界や描画面230の大きさには制限があることから、ユーザ150が運動の際に体を曲げたり、反らせたり、ねじれさせたりしても、ユーザ150が視認することができない領域が存在する。以下このような領域を「死角」と定義する。ここで、死角は、運動のフォームを犠牲にしなければ見られない領域や、理想とするフォームにおける望ましい視線方向(視界)では視界に入らない領域を含む。具体的には、例えば、ゴルフにおけるトップの位置にあるクラブヘッド160や、サッカーにおける蹴り上げ足は、死角に位置する運動動作に該当する。
このような死角に位置する目標動作部分(以下「死角動作」という)の情報についても、動作の流れや方向を感覚的に習得するために、描画面230に描画することが望ましい。ところが、このような死角動作は、学習対象の目標動作の本来表示すべき位置とは異なる位置に描画されることになり、そのまま描画を行うと、本来の位置なのか否かについてユーザ150の混乱を招く。
そこで、本実施の形態の学習支援装置70は、死角動作をユーザの視界内に擬似的に表示するとともに、死角動作の画像には、死角動作に関する画像であることを示す情報を併せて表示する。
図35は、本発明の実施の形態5に係る学習支援装置の詳細な構成を示すブロック図であり、実施の形態1の図2に対応するものである。図2と同一部分には同一符号を付し、これについての説明を省略する。
図35に示すように、学習支援装置70は、図2の制御端末130に代えて、制御端末730を有する。制御端末730は、図2の目標動作作成部135に代えて、死角描画指示書739を予め格納した目標動作作成部735を有する。また、本実施の形態の制御端末730における目標動作情報格納部131は、目標動作のどの部分が死角動作であるかを示す死角情報を含むオブジェクト情報131cを格納している。
図36は、オブジェクト情報131cの内容の一例を示す図である。
図36に示すように、オブジェクト情報131cは、実施の形態1の図3に示すオブジェクト情報131aと同様の構成を有し、更に、死角に関連する各位置に該当するか否かを示す死角情報481を有する。死角情報481には、オブジェクト番号202に対応付けて、「死角開始直前点」、「死角開始点」、「死角点」、および「死角終了点」などの情報が記述されている。
ここで、死角開始直前点は、目標動作が死角に入る直前のオブジェクト250の位置である。死角開始点は、死角に入る最初のオブジェクト250の位置である。死角点は、死角に入っているオブジェクト250の位置である。そして、死角終了点は、死角から出る最初のオブジェクトの位置である。また、死角開始点から死角終了点までの目標動作部分、つまり死角動作における学習対象の軌跡を、「死角軌跡」というものとする。
ここでは、図36に示すように、オブジェクト番号A3のオブジェクト250が、目標動作が死角に入る直前のオブジェクト250であり、オブジェクト番号A4のオブジェクト250が、視界に入る最初のオブジェクト250である。また、オブジェクト番号A5〜A7までのオブジェクト250が、死角に入っているオブジェクト250であり、オブジェクト番号A8のオブジェクト250が、死角から出る最初のオブジェクト250である。
図35の目標動作作成部735は、オブジェクト情報131cの記述内容に従って、例えば実施の形態4の図29に示すオブジェクト配置計画470と同様の構成を有するオブジェクト描画計画を作成し、作成した描画情報を目標動作描画部136に出力する。このとき、目標動作作成部735は、死角描画指示書739に従って、オブジェクト情報131cの死角情報481に基づいて、死角動作を描画面230内に描画するとともに死角動作の画像であることを示す各種情報を描画する描画情報を作成する。ここでは、目標動作作成部735は、各オブジェクト250をオブジェクト情報131cに規定された順序に従って順に表示させるように描画情報を作成するものとする。また、目標動作作成部735は、通過判定部138から入力される通過判定情報に基づいて、実軌道が通過したオブジェクト250のオブジェクト画像232を、逐次、描画面230から消去させる。
図37は、死角描画指示書739の内容の一例を示す図である。
死角描画指示書739には、死角動作の描画や、死角動作の画像であることを示す各種情報の描画に関する条件482と描画に関する指示内容483とが規定されている。
ここでは、死角動作の画像であることを示す情報として、予め定められた死角開始情報および死角終了情報を用いる。死角開始情報は、死角開始点および死角点のオブジェクト画像232をどの領域に描画するかを示す情報である。死角終了情報は、死角終了点をどの領域に描画するかを示す情報である。
ここでは、死角描画指示書739には、例えば、「死角開始直前点より2個前のオブジェクトを実軌道が通過したタイミングから死角開始点より2個後のオブジェクトを実軌道が通過したタイミングまで」という条件482に対応して、「所定の位置に死角開始情報を描画する」という指示内容483が記述されている。また、「死角開始直前点より1個前のオブジェクトを実軌道が通過したタイミングから、死角終了点より1個前のオブジェクトを実軌道が通過したタイミングまで」という条件482に対応して、「所定の位置に、死角動作と、死角動作をなぞる順序を示す矢印とを描画する」という指示内容483が記述されている。また、「死角終了点より3個前のオブジェクトを実軌道が通過したタイミングから、死角終了点のオブジェクトを実軌道が通過したタイミングまで」という条件482に対応して、「所定の位置に、死角終了情報を描画する」という指示内容483が記述されている。なお、他にも、例えば、「死角開始直前点から所定の距離の範囲内に実軌道が入ったタイミングから、死角終了点より1個後のオブジェクトの位置から所定の距離の範囲内に実軌道が入ったタイミングまで」という条件に対応して、「所定の位置に死角動作を描画する」という指示内容を記述してもよい。
なお、死角動作が複数のオブジェクト画像232で表示される場合には、目標動作作成部735は、これら複数のオブジェクト画像232の相対位置を、本来の目的動作における相対位置に対応させる。また、目標動作作成部735は、死角開始情報を描画する所定位置を、死角開始点のオブジェクト画像232の近傍とし、死角終了情報を描画する所定位置を、死角終了点のオブジェクト画像232の近傍とする。
図38は、図36に示すオブジェクト情報131cから図37に示す死角描画指示書739に基づいて描画が行われたときの描画面230の様子の一例を示す図である。
図38(A)は、実軌道がオブジェクト番号A1のオブジェクト250を通過するタイミングにおける描画面230の様子を示す。この場合、死角描画指示書739の「死角開始直前点より2個前のオブジェクトを実軌道が通過したタイミングから死角開始点より2個後のオブジェクトを実軌道が通過したタイミングまで」という条件482に該当する。したがって、図38(A)に示すように、死角開始情報484が、死角開始点の近傍に描画される。ここでは、死角開始情報484として、矢印と「死角開始」の文字列とが描画される場合を図示している。
図38(B)は、実軌道がオブジェクト番号A2のオブジェクト250を通過するタイミングにおける描画面230の様子を示す。この場合、死角描画指示書739の「死角開始直前点より1個前のオブジェクトを実軌道が通過したタイミングから、死角終了点より1個前のオブジェクトを実軌道が通過したタイミングまで」という条件482に該当する。したがって、図38(B)に示すように、死角開始情報484と、死角動作のオブジェクト画像232と、死角動作をなぞる順序を示す矢印485とが描画される。
死角動作では、目標動作における本来の位置とは異なる位置にオブジェクト画像232を配置することになるため、本来の位置をイメージしにくい。したがって、上記した矢印485を表示することで、ユーザ150が本来の軌跡をイメージするのを助けることができる。
図38(C)は、実軌道がオブジェクト番号A6のオブジェクト250を通過するタイミングにおける描画面230の様子を示す。この場合、死角描画指示書739の「死角終了点より3個前のオブジェクトを実軌道が通過したタイミングから、死角終了点のオブジェクトを実軌道が通過したタイミングまで」という条件482に該当する。したがって、図(C)に示すように、死角終了情報486が、死角終了点の近傍に描画される。ここでは、死角終了情報486として、矢印と「死角終了」の文字列とが描画される場合を図示している。
図38(D)は、実軌道がオブジェクト番号A7のオブジェクト250を通過するタイミングにおける描画面230の様子を示す。この場合も、死角描画指示書739の「死角終了点より3個前のオブジェクトを実軌道が通過したタイミングから、死角終了点のオブジェクトを実軌道が通過したタイミングまで」という条件482に該当するため、死角終了情報486が描画されたままの状態となる。
このように、本実施の形態によれば、死角動作の画像を、死角動作に関する画像であることを示す情報と併せて、描画面に表示する。これにより、ユーザに対して、死角動作における学習対象の軌跡の動きや所定の物理量を、本来の軌跡の位置とは区別して提示することができる。したがって、ユーザは、必要以上に無理に体を動かして目標動作を視界に入れる努力をすることなく、目標動作の学習ができる。これにより、従来、勘に頼らざるを得なかった見えない部分のトレーニングを、より正確に行うことができる。
なお、各実施の形態では、目標動作や比較結果を、ヘッドマウントディスプレイを利用して擬似的に表示する場合について説明したが、これに限定されるものではない。3D(dimension)ホログラムなどの立体映像技術や、空間中にレーザ光によりプラズマ化した輝点を連続して生成し三次元映像を描画する立体描画技術を、目標動作や比較結果の表示に用いてもよい。このような技術を活用した場合には、描画対象の制約が少なくなり、目標動作のより多くの部分を表示することが可能となる。
また、各実施の形態では、本発明をゴルフクラブのスィングの学習に適用した場合について説明したが、体の一部や運動器具などの部位の動作を定義または計測できる各種の運動の学習に適用できることは勿論である。例えば、本発明は、テニス、格闘技、野球などの各種スポーツだけでなく、楽器演奏、リハビリテーションなど、様々な分野における運動の学習にも適用できる。更に、本発明を、学習目的ではなく、他人や自分の運動をなぞって楽しむゲームなど、エンターティメント目的の用途に適用してもよい。