(57)【要約】【課題】仮想空間内において、精度のよいスイング軌道を表示することが可能なスイング解析システムを提供する。【解決手段】スイング解析システムは、打球具の仮想オブジェクトである仮想動作体を配置した仮想空間の３次元画像を表示するヘッドマウントディスプレイと、被験者の頭部の位置および姿勢を検出する位置検出手段と、打球具の任意の位置の姿勢情報および位置情報を取得する取得手段と、グリップエンド部の加速度データおよび角速度データを検出する検出手段と、グリップエンド部の加速度データおよび角速度データと、打球具の任意の位置の初期姿勢情報および初期位置情報とに基づいて、仮想動作体の軌道データを算出する演算手段と、仮想動作体の軌道データに基づいて仮想空間内での仮想動作体の軌道画像を生成し、被験者の頭部の位置および姿勢に対応する仮想空間内の視点位置からの軌道画像をヘッドマウントディスプレイのモニタに表示させる画像生成手段とを備える。【選択図】図１
2019187501.tif 000002
【特許請求の範囲】
【請求項１】
被験者の頭部に装着され、前記被験者が扱う打球具の仮想オブジェクトである仮想動作体を配置した仮想空間の３次元画像を表示するヘッドマウントディスプレイと、
前記被験者の頭部の位置および姿勢を検出する位置検出手段と、
前記打球具の任意の位置に取り付けられたマーカを撮像することにより、前記打球具の任意の位置の姿勢情報および位置情報を取得する取得手段と、
前記打球具のグリップエンド部に取り付けられ、前記グリップエンド部の加速度データおよび角速度データを検出する検出手段と、
前記グリップエンド部の前記加速度データおよび前記角速度データと、前記取得手段により取得された前記打球具の任意の位置の初期姿勢情報および初期位置情報とに基づいて、前記打球具の軌道データを算出し、当該算出結果に基づいて前記仮想動作体の軌道データを算出する演算手段と、
前記仮想動作体の軌道データに基づいて前記仮想空間内での前記仮想動作体の軌道画像を生成し、前記被験者の頭部の位置および姿勢に対応する前記仮想空間内の視点位置からの前記軌道画像を前記ヘッドマウントディスプレイのモニタに表示させる画像生成手段とを備える、スイング解析システム。
【請求項２】
前記打球具の任意の位置の初期姿勢情報および初期位置情報は、それぞれ、前記被験者が静止状態のときの前記打球具の任意の位置の姿勢情報および位置情報である、請求項１に記載のスイング解析システム。
【請求項３】
前記画像生成手段は、前記被験者に静止を促す情報を生成し、当該情報を前記モニタに表示させる、請求項１または２に記載のスイング解析システム。
【請求項４】
前記演算手段は、前記加速度データに基づいて、前記被験者が所定時間以上継続して静止状態であるか否かを判定し、
前記画像生成手段は、前記被験者が所定時間以上継続して静止状態である場合に、仮想飛翔体が放たれる映像を前記モニタに表示させる、請求項１〜３のいずれか１項に記載のスイング解析システム。
【請求項５】
前記演算手段は、
前記打球具の任意の位置の初期姿勢情報および初期位置情報に基づいて、前記グリップエンド部の初期姿勢情報および初期位置情報を算出し、
前記角速度データを用いた回転演算を実行して、前記グリップエンド部の初期姿勢からの姿勢の変化を時系列に算出し、
前記算出された姿勢情報に基づいて、前記加速度データをセンサ座標系からグローバル座標系に座標変換し、
グローバル座標系に座標変換された前記加速度データを時間積分することにより前記打球具の軌道データを算出する、請求項１〜４のいずれか１項に記載のスイング解析システム。
【請求項６】
頭部にヘッドマウントディスプレイを装着した被験者が扱う打球具のスイング解析方法であって、
前記ヘッドマウントディスプレイは、前記打球具の仮想オブジェクトである仮想動作体を配置した仮想空間の３次元画像を表示するように構成されており、
前記スイング解析方法は、
前記被験者の頭部の位置および姿勢を検出するステップと、
前記打球具の任意の位置に取り付けられたマーカを撮像することにより、前記打球具の任意の位置の姿勢情報および位置情報を取得するステップと、
前記打球具のグリップエンド部の加速度データおよび角速度データを検出するステップと、
前記グリップエンド部の前記加速度データおよび前記角速度データと、前記取得するステップにより取得された前記打球具の任意の位置の初期姿勢情報および初期位置情報とに基づいて、前記打球具の軌道データを算出し、当該算出結果に基づいて前記仮想動作体の軌道データを算出するステップと、
前記仮想動作体の軌道データに基づいて前記仮想空間内での前記仮想動作体の軌道画像を生成するステップと、
前記被験者の頭部の位置および姿勢に対応する前記仮想空間内の視点位置からの前記軌道画像を前記ヘッドマウントディスプレイのモニタに表示するステップとを含む、スイング解析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、打球具のスイングを解析するための技術に関する。
【背景技術】
【０００２】
野球のバットやテニスのラケットなどの打球具を用いて行なうスポーツにおいて、プレーヤーが打球具をスイングする能力は、試合などを有利に進める上で重要な指標である。そのため、プレーヤーのスイングの解析が適切に行なわれることによって、プレーヤーの技量の向上や打球具の研究開発にも寄与することが期待される。
【０００３】
例えば、特開２０１６−４７２１９号公報（特許文献１）は、時間や場所の制約を軽減でき、且つ、練習者が様々な視点から動作の軌道を即時に確認することができる身体動作の練習支援システムを開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−４７２１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、演算部が、バットのグリップ付近に取り付けられた角速度検出センサにより取得された角速度データに積分処理を施し、仮想空間内の座標と対応付けることにより仮想バットのスイング軌道データを算出している。
【０００６】
しかしながら、特許文献１は、単に、グリップ付近の角速度データによりスイング軌道データを算出することを開示しているに過ぎず、バットの初期姿勢および初期位置については何ら考慮されていないため、実空間内のスイング軌道を精度よく算出できない。結果として、仮想空間内において精度のよいスイング軌道を表示することができないと考えられる。
【０００７】
本開示のある局面における目的は、仮想空間内において、精度のよいスイング軌道を表示することが可能なスイング解析システムおよびスイング解析方法を提供することである。
【課題を解決するための手段】
【０００８】
ある実施の形態に従うスイング解析システムは、被験者の頭部に装着され、被験者が扱う打球具の仮想オブジェクトである仮想動作体を配置した仮想空間の３次元画像を表示するヘッドマウントディスプレイと、被験者の頭部の位置および姿勢を検出する位置検出手段と、打球具の任意の位置に取り付けられたマーカを撮像することにより、打球具の任意の位置の姿勢情報および位置情報を取得する取得手段と、打球具のグリップエンド部に取り付けられ、グリップエンド部の加速度データおよび角速度データを検出する検出手段と、グリップエンド部の加速度データおよび角速度データと、取得手段により取得された打球具の任意の位置の初期姿勢情報および初期位置情報とに基づいて、打球具の軌道データを算出し、当該算出結果に基づいて仮想動作体の軌道データを算出する演算手段と、仮想動作体の軌道データに基づいて仮想空間内での仮想動作体の軌道画像を生成し、被験者の頭部の位置および姿勢に対応する仮想空間内の視点位置からの軌道画像をヘッドマウントディスプレイのモニタに表示させる画像生成手段とを備える。
【０００９】
好ましくは、打球具の任意の位置の初期姿勢情報および初期位置情報は、それぞれ、被験者が静止状態のときの打球具の任意の位置の姿勢情報および位置情報である。
【００１０】
好ましくは、画像生成手段は、被験者に静止を促す情報を生成し、当該情報をモニタに表示させる。
【００１１】
好ましくは、演算手段は、加速度データに基づいて、被験者が所定時間以上継続して静止状態であるか否かを判定する。画像生成手段は、被験者が所定時間以上継続して静止状態である場合に、仮想飛翔体が放たれる映像をモニタに表示させる。
【００１２】
好ましくは、演算手段は、打球具の任意の位置の初期姿勢情報および初期位置情報に基づいて、グリップエンド部の初期姿勢情報および初期位置情報を算出し、角速度データを用いた回転演算を実行して、グリップエンド部の初期姿勢からの姿勢の変化を時系列に算出し、算出された姿勢情報に基づいて、加速度データをセンサ座標系からグローバル座標系に座標変換し、グローバル座標系に座標変換された加速度データを時間積分することにより打球具の軌道データを算出する。
【００１３】
他の実施の形態に従うと、頭部にヘッドマウントディスプレイを装着した被験者が扱う打球具のスイング解析方法が提供される。ヘッドマウントディスプレイは、打球具の仮想オブジェクトである仮想動作体を配置した仮想空間の３次元画像を表示するように構成されている。スイング解析方法は、被験者の頭部の位置および姿勢を検出するステップと、打球具の任意の位置に取り付けられたマーカを撮像することにより、打球具の任意の位置の姿勢情報および位置情報を取得するステップと、打球具のグリップエンド部の加速度データおよび角速度データを検出するステップと、グリップエンド部の加速度データおよび角速度データと、取得するステップにより取得された打球具の任意の位置の初期姿勢情報および初期位置情報とに基づいて、打球具の軌道データを算出し、当該算出結果に基づいて仮想動作体の軌道データを算出するステップと、仮想動作体の軌道データに基づいて仮想空間内での仮想動作体の軌道画像を生成するステップと、被験者の頭部の位置および姿勢に対応する仮想空間内の視点位置からの軌道画像をヘッドマウントディスプレイのモニタに表示するステップとを含む。
【発明の効果】
【００１４】
本開示によると、仮想空間内において、精度のよいスイング軌道を表示することが可能となる。
【図面の簡単な説明】
【００１５】
【図１】スイング解析システムの全体構成を説明するための図である。
【図２】スイング解析装置のハードウェア構成を示すブロック図である。
【図３】センサ装置のハードウェア構成を示すブロック図である。
【図４】スイング解析システムの動作を説明するためのフローチャートである。
【図５】キャリブレーション方式を説明するための図である。
【図６】投球直前にモニタに表示される３次元画像の一例を示す図である。
【図７】投球時にモニタに表示される３次元画像の一例を示す図である。
【図８】衝突判定方式を説明するための図である。
【図９】打球時にモニタに表示される３次元画像の一例を示す図である。
【図１０】スイング解析装置の機能構成例を示すブロック図である。
【図１１】インパクト位置を示す３次元画像である。
【図１２】仮想ボールおよび仮想バットの軌道を示す３次元画像である。
【図１３】仮想バットの軌道の多視点画像を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【００１７】
＜システムの全体構成＞
図１は、スイング解析システム１０００の全体構成を説明するための図である。図１を参照して、スイング解析システム１０００は、被験者２による打球具のスイングを解析し、解析結果を仮想空間内に表示するためのシステムである。
【００１８】
具体的には、スイング解析システム１０００は、スイング解析装置１０と、センサ装置２０と、撮像システム３０と、ヘッドマウントディスプレイ（以下、「ＨＭＤ」とも称する。）４０と、マーカ５０とを含む。本実施の形態では、「打球具」として野球、ソフトボールなどで用いられるバット８０を使用し、被験者２が右利きのバッターであるとする。また、本実施の形態では、例えば、店舗等に設けられたブース内で、被験者２（バッター）が打球具（バット８０）をスイングする場面を想定する。
【００１９】
スイング解析装置１０は、ラップトップ型のＰＣ（personal  Computer）で構成される。ただし、スイング解析装置１０は、種類を問わず任意の装置として実現できる。例えば、スイング解析装置１０は、スマートフォン、タブレット端末、デスクトップＰＣなどの機器であってもよい。
【００２０】
スイング解析装置１０は、無線通信方式を利用してセンサ装置２０と通信する。スイング解析装置１０は、有線通信方式を利用して撮像システム３０およびＨＭＤ４０と通信する。なお、スイング解析装置１０は、有線通信方式を利用してセンサ装置２０と通信してもよいし、無線通信方式を利用して撮像システム３０およびＨＭＤ４０と通信してもよい。
【００２１】
センサ装置２０は、互いに直交する３軸（Ｘ軸，Ｙ軸，Ｚ軸）まわりの角速度（以下「角速度情報」とも称する。）を検出可能な角速度センサと、互いに直交する３軸（Ｘ軸，Ｙ軸，Ｚ軸）方向の加速度（以下「加速度情報」とも称する。）を検出可能な加速度センサとを含む。
【００２２】
また、センサ装置２０は、自装置の加速度センサおよび角速度センサがバット振動の影響を受けにくいように、バット８０のグリップエンド部に取り付けられる。センサ装置２０は、バット８０のスイング中にも動かないように強固にグリップエンド部に固定される。例えば、センサ装置２０に含まれる加速度センサは、バット８０の長軸回りの回転による遠心加速度の影響を除外するため、バット８０の長軸上に配置される。これにより、センサ装置２０は、グリップエンド部の加速度データおよび角速度データを検出できる。センサ装置２０は、高サンプリング周波数（例えば、１０００Ｈｚ）で、加速度データおよび角速度データを検出できる。
【００２３】
撮像システム３０は、光学式モーションキャプチャシステムであり、バット８０のヘッド部に取り付けられたマーカ５０を撮像することにより、ヘッド部の位置情報および姿勢情報を取得する。具体的には、撮像システム３０は、ブース内の上方に配置された複数（例えば、３つ）の赤外線カメラを含む。各赤外カメラにはレンズの周囲に赤外ＬＥＤ（light  emitting  diode）が設けられている。
【００２４】
マーカ５０として、表面に再帰性反射材が塗布された球状のものを用いることにより、赤外線カメラ方向に赤外光の再帰性反射が生じる。これにより、赤外線カメラで撮影した画像内のマーカ５０の位置が取得できる。空間中の配置が既知である複数の赤外線カメラを用いることにより、各カメラ画像中のマーカ５０の位置から、マーカ５０の空間内での３次元的な位置が算出できる。また、バット８０のヘッド部に３つ以上のマーカ５０を配置してそれぞれのマーカ５０の位置を取得することにより、ヘッド部の位置および姿勢が取得できる。
【００２５】
撮像システム３０により取得されたバット８０のヘッド部の位置情報および姿勢情報は、スイング解析装置１０に送信される。なお、撮像システム３０のサンプリング周波数（例えば、１２０Ｈｚ）は、センサ装置２０のサンプリング周波数（例えば、１０００Ｈｚ）よりもかなり低い。撮像システム３０としては、例えば、ＯｐｔｉＴｒａｃｋ社提供のハードウェア、およびソフトウェア等が用いることができる。
【００２６】
ＨＭＤ４０は、被験者２の頭部に装着され、動作中に被験者２に対して奥行きを持った仮想空間の３次元画像を被験者２に提供し得る。具体的には、ＨＭＤ４０は、モニタ４２と、ＨＭＤセンサ４４とを含む。
【００２７】
モニタ４２は、例えば、非透過型の表示装置として実現される。モニタ４２は、被験者２の両目の前方に位置するようにＨＭＤ４０の本体に配置されており、右目用の画像および左目用の画像をそれぞれ表示する。被験者２の各目がそれぞれの画像を視認すると、被験者２は、両目の視差に基づき当該画像を３次元の画像として認識し得る。これにより、ＨＭＤ４０を頭部に装着した被験者２は、実世界に近い感覚を仮想空間内の３次元映像として体験することができる。
【００２８】
ＨＭＤセンサ４４は、被験者２の頭部の位置および姿勢を検出する。ＨＭＤセンサ４４は、角速度センサ、加速度センサ等によって、被験者２の頭部の絶対座標系における被験者２の頭部の位置および姿勢を検出し、その検出信号をスイング解析装置１０に出力する。ＨＭＤセンサ４４は、ＨＭＤ４０と一体として設けられているため、ＨＭＤ４０が被験者２の頭部に装着されることによって、被験者２の頭部の動きを追跡して位置および姿勢を検出することができる。そして、その検出結果をＨＭＤ４０が提示する仮想空間の３次元画像にフィードバックすることにより、被験者２の頭部の動きに応じた視点位置から見た３次元画像を被験者２に対して提示することができる。
【００２９】
このような構成を有するＨＭＤ４０としては、例えば、HTC Vive（登録商標）、Oculus Rift（登録商標）等を用いることができる。なお、本実施の形態では、ＨＭＤセンサ４４は、ＨＭＤ４０に一体として設けられているが、当該構成に限られない。ＨＭＤセンサ４４は、例えば、ＨＭＤ４０とは別に設けて、被験者２の頭部に装着されていてもよい。
【００３０】
＜ハードウェア構成＞
（スイング解析装置１０）
図２は、スイング解析装置１０のハードウェア構成を示すブロック図である。図２を参照して、スイング解析装置１０は、主たる構成要素として、ＣＰＵ（Central  Processing  Unit）１０２と、メモリ１０４と、入力装置１０６と、通信インターフェイス（Ｉ／Ｆ）１０８と、入出力インターフェイス（Ｉ／Ｆ）１１０と、ディスプレイ１１２とを含む。これらの各部は、互いにバスに接続される。
【００３１】
ＣＰＵ１０２は、メモリ１０４に記憶されたプログラムを読み出して実行することで、スイング解析装置１０の各部の動作を制御する。より詳細には、ＣＰＵ１０２は、当該プログラムを実行することによって、後述するスイング解析装置１０の処理（ステップ）の各々を実現する。
【００３２】
メモリ１０４は、ＲＡＭ（Random  Access  Memory）、ＲＯＭ（Read-Only  Memory）、ハードディスクなどによって実現される。メモリ１０４は、ＣＰＵ１０２によって実行されるプログラム、またはＣＰＵ１０２によって用いられるデータなどを記憶する。典型的には、メモリ１０４は、ＨＭＤ４０のモニタ４２に提示する映像等の生成、各種の演算処理等を行なうための処理プログラム等を格納する。
【００３３】
メモリ１０４は、モニタ４２に提示される仮想空間内に配置される各種の仮想オブジェクトを生成するためのオブジェクトデータが記憶される。例えば、被験者２が扱うバット８０の仮想オブジェクトである仮想バット（仮想動作体）、被験者２の仮想オブジェクトである仮想被験者、仮想空間内での被験者２の対戦相手となる仮想投手（仮想対戦相手）、仮想投手から放たれる仮想ボール（仮想飛翔体）、背景となる仮想ホームベース等をＣＰＵ１０２によって生成するための各種のオブジェクトデータが記憶される。
【００３４】
仮想投手の動作データとしては、例えば、予め実際の投手の投球動作をモーションキャプチャシステム等によって計測した動作データが用いられる。仮想ボールの飛翔軌道データとしては、例えば、予め実際の投手が投じたボールの投球軌道を複数台の高速度カメラで同期撮影して得られた画像からボールの位置を３次元ＤＬＴ（Direct  Linear  Transformation）法で算出した軌道データ等が用いられる。
【００３５】
入力装置１０６は、スイング解析装置１０に対する操作入力を受け付ける。入力装置１０６は、例えば、キーボード、ボタン、マウスなどによって実現される。また、入力装置１０６は、タッチパネルとして実現されていてもよい。
【００３６】
通信インターフェイス（Ｉ／Ｆ）１０８は、スイング解析装置１０とセンサ装置２０との間で各種データをやり取りするごとが可能である。なお、通信方式としては、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）、無線ＬＡＮなどによる無線通信方式が用いられる。なお、通信方式として、ＵＳＢ（Universal  Serial  Bus）などを利用した有線通信方式を用いてもよい。
【００３７】
入出力インターフェイス１１０は、撮像システム３０およびＨＭＤ４０との間で信号を通信する。典型的には、入出力インターフェイス１１０は、ＵＳＢ等の有線通信方式を用いてこれらの装置と通信する。
【００３８】
ディスプレイ１１２は、ＣＰＵ１０２からの信号に基づいて、表示画面に画像、テキスト、その他の情報を表示する。
【００３９】
（センサ装置２０）
図３は、センサ装置２０のハードウェア構成を示すブロック図である。図３を参照して、センサ装置２０は、主たる構成要素として、各種処理を実行するためのＣＰＵ２５２と、ＣＰＵ２５２によって実行されるプログラム、データなどを格納するためのメモリ２５４と、３軸方向の加速度を検出可能な加速度センサ２５６と、３軸のそれぞれのまわりの角速度を検出可能な角速度センサ２５８と、スイング解析装置１０と通信するための通信インターフェイス（Ｉ／Ｆ）２６０と、センサ装置２０の各種構成要素に電力を供給する蓄電池２６２とを含む。
【００４０】
＜システムの動作＞
図４は、スイング解析システム１０００の動作を説明するためのフローチャートである。スイング解析装置１０は、例えば、ブース内の店員により操作される。
【００４１】
図４を参照して、センサ装置２０と撮像システム３０との間のキャリブレーションが行なわれる（ステップＳ１０）。具体的には、撮像システム３０の座標系と、センサ装置２０の座標系との間のアライメント（座標合わせ）が行なわれる。なお、ＨＭＤ４０の座標系のアライメントも行なわれる。例えば、撮像システム３０にグローバル座標系を設定し、当該設定されたグローバル座標系にＨＭＤ４０の座標系をアライメントし、センサ装置２０のセンサ座標系を当該設定されたグローバル座標系にアライメントする。
【００４２】
図５は、キャリブレーション方式を説明するための図である。図５を参照して、キャリブレーションの手順について説明する。まず、バット８０のヘッド部に４つのマーカ５０を取り付け、バット８０のグリップエンド部にセンサ装置２０を取り付ける。
【００４３】
続いて、撮像システム３０の３次元空間の原点と軸を定義するためのキャリブレーションツールを用いて、撮像システム３０のＸ軸を、三塁ベースから一塁ベースへの線分に平行な方向に設定し、Ｙ軸をホームからピッチャーマウンドへの方向に設定し、Ｚ軸を鉛直方向に設定する。
【００４４】
次に、センサ装置２０が取り付けられた状態のバット８０を垂直に立てる。続いて、センサ装置２０のｙ軸を撮像システム３０のＹ軸と同一方向に設定し、センサ装置２０のｚ軸をバット８０の長手方向（すなわち、鉛直方向）に設定する。なお、バット８０を垂直に立てた状態におけるセンサ装置２０のｘ軸は、撮像システム３０のＸ軸と同一方向となる。このように、キャリブレーションが実行される。なお、図５には、被験者２がバット８０を構えた画像も参考に示している。
【００４５】
キャリブレーションが終了すると、店員は、被験者２にＨＭＤ４０を頭部に装着し、バット８０を持たせて、被験者２をブース内に用意されたバッターボックスに移動させる。このとき、ＨＭＤ４０のモニタ４２には、被験者２に対して仮想バット、仮想投手、仮想ボール等が配置されている仮想空間の３次元画像が表示される。ＨＭＤ４０に設けられるＨＭＤセンサ４４によって被験者２の頭部の位置および姿勢が検出され、その検出信号がスイング解析装置１０に出力される。ＣＰＵ１０２は、この検出信号に基づいて、被験者２の頭部の位置および姿勢に対応する仮想空間内の視点位置からの３次元画像をモニタ４２に表示させる。
【００４６】
スイング解析装置１０のＣＰＵ１０２は、入力装置１０６を介して、店員からバッティングの開始指示を受け付ける（ステップＳ１２）。ＣＰＵ１０２は、被験者２に対して静止を促す情報を報知する（ステップＳ１４）。典型的には、ＣＰＵ１０２は、静止を促す情報をＨＭＤ４０のモニタ４２に表示させる。例えば、モニタ４２には、「バットを構えて静止して下さい。」等の情報が表示される。
【００４７】
ＣＰＵ１０２は、被験者２が所定時間（例えば、１秒）以上の静止状態を継続しているか否かを判断する（ステップＳ１６）。具体的には、ＣＰＵ１０２は、センサ装置２０から取得した加速度データに基づいて、３軸方向の加速度単位ベクトルの値が安定している場合（例えば、各軸の加速度が所定閾値未満である場合）に静止状態であると判定し、当該静止状態が所定時間継続しているか否かを判断する。
【００４８】
静止状態が所定時間以上継続していない場合には（ステップＳ１６においてＮＯ）、ＣＰＵ１０２は、ステップＳ１４の処理に戻る。静止状態が所定時間以上継続している場合には（ステップＳ１６においてＹＥＳ）、ＣＰＵ１０２は、被験者２の静止期間（すなわち、静止状態が継続した所定時間）において、バット８０の初期姿勢および初期位置を取得する（ステップＳ１８）。
【００４９】
具体的には、ＣＰＵ１０２は、静止期間において撮像システム３０により取得されるバット８０のヘッド部の姿勢情報を、ヘッド部の初期姿勢情報として算出する。姿勢情報は、例えば、クォータニオン（四元数）などで表現することができる。また、ＣＰＵ１０２は、静止期間において撮像システム３０により取得されるバット８０のヘッド部の位置情報を、ヘッド部の初期位置情報として算出する。
【００５０】
さらに、ＣＰＵ１０２は、ヘッド部の初期姿勢情報および初期位置情報と、バット８０の長さとに基づいて、グリップエンド部の初期姿勢情報および初期位置情報を算出する。具体的には、バット８０は剛体であるため、グリップエンド部の初期姿勢情報は、ヘッド部の初期姿勢情報と同一であるとみなすことができる。また、バット８０の長手方向の長さをＬとしたときのベクトルｖ＝（０，０，−Ｌ）を定義する。そして、ＣＰＵ１０２は、ヘッド初期姿勢情報を示すクォータニオンを用いてベクトルｖを回転することで、ヘッド部の初期位置情報からグリップエンド部の初期位置情報を算出する。
【００５１】
ＣＰＵ１０２は、被験者２が所定時間以上継続して静止状態である場合に、仮想空間内において仮想ボールが放たれる（すなわち、投球が開始される）映像をモニタ４２に表示させる（ステップＳ２０）。具体的には、ＣＰＵ１０２は、図６に示すように、投球直前情報として、仮想投手５０２から放たれる仮想ボールの球種（例えば、フォーク）、スピード（例えば、１２０ｋｍ／ｈ）をモニタ４２に表示させる。ＣＰＵ１０２は、仮想ボールの予告飛翔軌道をモニタ４２に表示させてもよい。なお、仮想ボールの球種、スピード、飛翔軌道は、予め店員により設定されている。
【００５２】
続いて、ＣＰＵ１０２は、図７に示すように、仮想投手５０２から仮想ボール５０４が放たれる映像をモニタ４２に表示させる。具体的には、ＣＰＵ１０２は、メモリ１０４に記憶されている動作データに基づいて仮想投手５０２の投球動作の３次元映像を生成し、飛翔軌道データに基づいて仮想投手５０２から投じられる仮想ボール５０４の飛翔軌道の３次元映像を生成して、モニタ４２に表示させる。
【００５３】
ＣＰＵ１０２は、被験者２により、投球動作および飛翔軌道映像に合わせてバット８０がスイングされると、センサ装置２０から取得した加速度データおよび角速度データと、ステップＳ１８で取得されたバット８０の初期姿勢および初期位置とに基づいて、バット８０のスイング軌道データを算出する（ステップＳ２２）。具体的には、ＣＰＵ１０２は、角速度データを用いた回転演算によりグリップエンド部の初期姿勢の姿勢変化を時系列で算出する。ＣＰＵ１０２は、時系列の姿勢情報を用いて加速度データをグローバル座標系に座標変換し、座標変換された加速度データを２階積分してスイング軌道データを算出する。
【００５４】
ＣＰＵ１０２は、算出したバット８０のスイング軌道データを仮想空間内の座標と対応付けることにより仮想バットのスイング軌道データを算出する（ステップＳ２４）。このとき、ＣＰＵ１０２は、算出した仮想バットのスイング軌道データをメモリ１０４に記憶させる。
【００５５】
ＣＰＵ１０２は、仮想バットの軌道データと仮想ボール５０４の飛翔軌道データとに基づいて、仮想空間内で仮想バットと仮想ボール５０４とが衝突したか否かを判定する（ステップＳ２６）。
【００５６】
図８は、衝突判定方式を説明するための図である。図８（ａ）を参照して、仮想バット５０６の中心と仮想ボール５０４の中心までの距離をｄとし、仮想バット５０６の半径をＲとし、仮想ボール５０４の半径をｒとする。
【００５７】
ＣＰＵ１０２は、スイング中に距離ｄが仮想バット５０６の半径Ｒと仮想ボール５０４の半径ｒとの加算値（Ｒ＋ｒ）を下回った場合、仮想バット５０６と仮想ボール５０４とが衝突したと判定して、インパクト位置を算出する。一方、ＣＰＵ１０２は、スイング中に距離ｄが加算値（Ｒ＋ｒ）を上回った場合、仮想バット５０６と仮想ボール５０４とが衝突していないと判定して、スイング終了後にスイング中で仮想バット５０６と仮想ボール５０４とが最も近いときの距離を算出する。
【００５８】
次に、インパクト位置および仮想バット５０６と仮想ボール５０４との距離の算出方式について説明する。図８（ｂ）を参照して、仮想バット５０６の芯の位置を原点とし、グリップエンドからバットヘッドに向かうバット長軸を定義する。また、仮想バット５０６の進行方向軸およびバット長軸によって形成される平面上で、バット長軸に直交するバット短軸を定義する。
【００５９】
ＣＰＵ１０２は、バット長軸とバット短軸で構成される平面上に仮想ボール５０４を投影し、芯の座標および仮想ボール５０４の位置座標の長軸方向の差ｄｘと、短軸方向の差ｄｙを算出する。これにより、仮想バット５０６に対する仮想ボール５０４のインパクト位置が把握できる。
【００６０】
再び、図４を参照して、ＣＰＵ１０２は、仮想バット５０６と仮想ボール５０４とが衝突したと判定すると、図９に示すように、仮想バット５０６で仮想ボール５０４を打撃した（打ち返した）映像をモニタ４２に表示させる（ステップＳ２８）。
【００６１】
ＣＰＵ１０２は、被験者２のスイングのフィードバック情報（例えば、インパクト位置、スイング軌道等）をモニタ４２に表示させる（ステップＳ３０）。フィードバック情報の詳細については後述する。
【００６２】
上記によると、撮像システム３０により取得されたヘッド部の初期姿勢および初期位置を用いて、グリップエンド部の初期姿勢および初期位置を算出することにより、精度よくバット８０全体の初期姿勢および初期位置を算出できる。したがって、その後のスイング期間中のバット８０の位置および姿勢の変化が精度よく算出され、結果として、精度のよいスイング軌道を算出できる。具体的には、スイング軌道の向きを精度よく特定できる。また、スイング期間中の実際のバット８０の位置および姿勢を仮想空間における仮想バット５０６に精度よく対応付けることができる。
【００６３】
撮像システム３０は、実空間におけるバット８０の初期姿勢および初期位置（グローバル座標系）を精度よく取得できる。バット８０の初期姿勢および初期位置が把握できれば、その後のスイング軌道については、高分解能のセンサ装置２０により取得される加速度データおよび角速度データを用いて精度よく算出できる。このように、撮像システム３０の利点と、センサ装置２０との利点を上手く組み合わせることにより、バット８０のスイング軌道を精度よく見積もることができる。
【００６４】
また、撮像システム３０によるヘッド部の姿勢情報および位置情報は、バット８０の初期姿勢情報および初期位置情報を取得するためにのみ利用され、その後のスイング軌道の算出には用いられない。したがって、スイング軌道の算出において、撮像システム３０とセンサ装置２０との連携といった複雑な処理も不要となる。
【００６５】
＜機能構成＞
図１０は、スイング解析装置１０の機能構成例を示すブロック図である。図１０を参照して、スイング解析装置１０は、演算部２００と、画像生成部３００とを含む。演算部２００は、センサ情報入力部２０２と、情報入力部２０４と、算出部２０６と、座標変換部２０８と、軌道算出部２１０とを含む。演算部２００および画像生成部３００は、基本的には、スイング解析装置１０のＣＰＵ１０２がメモリ１０４に格納されたプログラムを実行し、スイング解析装置１０の構成要素へ指令を与えることなどによって実現される。
【００６６】
センサ情報入力部２０２は、バット８０に取り付けられたセンサ装置２０により検出された加速度データおよび角速度データの入力を受け付ける。本実施の形態では、センサ装置２０はバット８０のグリップエンド部に取り付けられている。そのため、センサ情報入力部２０２は、当該グリップエンド部の加速度データおよび角速度データの入力を受け付ける。具体的には、センサ情報入力部２０２は、通信インターフェイス１０８を介して、センサ装置２０から送信される加速度データおよび角速度データを受信する。
【００６７】
情報入力部２０４は、撮像システム３０により取得されたバット８０のヘッド部の位置情報および姿勢情報の入力を受け付ける。典型的には、情報入力部２０４は、入出力インターフェイス１１０を介して、ヘッド部の位置情報および姿勢情報を受信する。
【００６８】
算出部２０６は、グリップエンド部およびベッド部の姿勢を時系列で算出する。具体的には、算出部２０６は、センサ装置２０から取得されるグリップエンド部の加速度データに基づいて、被験者２が所定時間以上継続して静止状態か否かを判定する。算出部２０６は、例えば、３軸方向の加速度が所定閾値未満である場合に静止状態であると判定し、そうではない場合には静止状態ではないと判定する。算出部２０６は、情報入力部２０４により常時取得されるヘッド部の姿勢および位置のうち被験者２が静止状態のときのヘッド部の姿勢および位置を、それぞれヘッド部の初期姿勢および初期位置として算出する。
【００６９】
算出部２０６は、ヘッド部の初期姿勢および初期位置と、バット８０の長さとに基づいて、グリップエンド部の初期姿勢および初期位置を算出する。算出部２０６は、ヘッド部の初期姿勢をグリップエンド部の初期姿勢として算出する。また、算出部２０６は、ヘッド初期姿勢情報を用いてベクトルｖを回転することで、ヘッド部の初期位置情報からグリップエンド部の初期位置情報を算出する。
【００７０】
算出部２０６は、センサ装置２０から取得した角速度データを用いた回転演算を実行して、グリップエンド部の初期姿勢からの姿勢の変化を時系列に算出する。すなわち、算出部２０６は、グリップエンド部の時々刻々の姿勢情報を算出する。
【００７１】
座標変換部２０８は、グリップエンド部の姿勢情報に基づいて、センサ装置２０から取得したグリップエンド部の加速度データをセンサ座標系からグローバル座標系に座標変換する。これにより、グリップエンド部の時系列の加速度データ（グローバル座標系）が得られる。
【００７２】
軌道算出部２１０は、グローバル座標系に座標変換された加速度データを時間積分してグリップエンド部の速度データを算出する。すなわち、グリップエンド部の時系列の速度データ（グローバル座標系）が得られる。また、軌道算出部２１０は、グリップエンド部の速度データ（グローバル座標系）を時間積分することによりグリップエンド部の位置（変位）データ（グローバル座標系）を算出する。なお、グリップエンド部の初期位置には、算出部２０６により算出されたグリップエンド部の初期位置が用いられる。これにより、グリップエンド部の時系列の位置データ（すなわち、軌道データ）が得られる。
【００７３】
また、軌道算出部２１０は、グリップエンド部の軌道データに、ヘッド部の座標（グローバル座標系）を加算することにより、ヘッド部の軌道データを算出する。なお、ヘッド部の初期位置には、算出部２０６により算出されたヘッド部の初期位置が用いられる。軌道算出部２１０は、ヘッド部の軌道データを微分することによりヘッド速度を算出する。これにより、時系列のヘッド部の軌道データおよび速度データが得られる。
【００７４】
軌道算出部２１０は、算出されたヘッド部およびグリップエンド部の軌道データを、公知の手法を用いて仮想空間内の座標と対応付けることにより仮想バット５０６の軌道データを算出する。仮想バット５０６の軌道データは、メモリ１０４に記憶される。
【００７５】
画像生成部３００は、公知のコンピュータグラフィックス技術に基づいて、各種のオブジェクトデータを用いて各種の仮想オブジェクトが配置される仮想空間の３次元画像を生成し、生成した画像情報をＨＭＤ４０に送信し、モニタ４２に表示させる。画像生成部３００は、上述した図６，図７，図８に示す画像情報、および後述の図１１〜図１３に示す画像情報等を生成する。
【００７６】
ある局面では、画像生成部３００は、仮想バット５０６の軌道データに基づいて仮想空間内での仮想バット５０６の軌道画像を生成する。画像生成部３００は、被験者２の頭部の位置および姿勢を取得し、当該取得した位置および姿勢に対応する仮想空間内の視点位置からの軌道画像をＨＭＤ４０のモニタ４２に表示させる。他の局面では、画像生成部３００は、被験者２に静止を促す情報を生成し、当該情報をモニタ４２に表示させる。
【００７７】
さらに他の局面では、画像生成部３００は、被験者２のスイングのフィードバック情報としての画像情報を生成し、当該生成した画像情報をモニタ４２に表示させる。例えば、図１１〜図１３に示すようなフィードバック情報がモニタ４２に表示される。
【００７８】
図１１は、インパクト位置を示す３次元画像である。図１１を参照して、被験者２は、自身の身体動作によって、仮想バット５０６の芯の位置と仮想ボール５０４の中心とのずれ等（すなわち、仮想ボール５０４が仮想バット５０６のどの位置に衝突したのか等）をスイング毎に即時に確認することができる。インパクト位置の算出方式は、図８で説明した通りである。
【００７９】
図１２は、仮想ボール５０４および仮想バット５０６の軌道を示す３次元画像である。図１２を参照して、被験者２は、仮想投手から放たれた仮想ボール５０４に対してどのようにバット８０がスイングされたのかを把握することができる。また、仮想バット５０６の時々刻々の軌道を示す軌道オブジェクト５１０の各々を、当該軌道オブジェクト５１０に対応するヘッド速度ごとに色分けして表示してもよい。例えば、ヘッド速度が速い順に「高速」、「やや高速」、「標準」、「低速」の４段階に区分する。「高速」、「やや高速」、「標準」、および「低速」に対応する軌道オブジェクト５１０を、それぞれ「赤」、「黄」、「緑」、および「青」で表現してもよい。
【００８０】
図１３は、仮想バット５０６の軌道の多視点画像を示す図である。図１３（ａ）に示すように、ＨＭＤ４０を装着した被験者２は、バッターの対面（この場合、右のバッターボックス側）の視点からスイング軌道を確認できる。また、図１３（ｂ）に示すように、上からの視点でスイング軌道を確認したり、図１３（ｃ）に示すように、投手からの視点でスイング軌道を確認したりすることもできる。このように、被験者２は頭部を動かすことで、仮想空間内の様々な視点から仮想バット５０６のスイング軌道画像を確認することができる。
【００８１】
上記のように、撮像システム３０により取得されたヘッド部の初期姿勢および初期位置を用いて、バット８０全体の初期姿勢および初期位置を算出することにより、バット８０の時系列の姿勢情報および位置情報を精度よく算出できるため、結果として、精度のよいスイング軌道を算出できる。したがって、図１３に示すように、ＨＭＤ４０のモニタ４２には、高精度のスイング軌道が提示されるため、被験者２は様々な視点からスイングの修正点等を即時に把握することができる。
【００８２】
＜利点＞
本実施の形態によると、実空間上において高精度なスイング軌道を算出できるため、仮想空間内に高精度なスイング軌道を反映させることができる。これにより、被験者２は、スイング動作を容易かつ詳細に把握できる。
【００８３】
本実施の形態によると、被験者２はスイング動作後に、即時にスイング軌道画像を確認することができる。また、必要に応じて後から軌道画像を確認することもできる。さらに、被験者２は、頭部を動かすことで、仮想空間内の様々な視点からスイング軌道画像を確認することができる。
【００８４】
＜その他の実施の形態＞
（１）上述した実施の形態では、バット８０のヘッド部にマーカ５０を取り付ける構成について説明したが、当該構成に限られない。撮像システム３０によりマーカ５０を適切に撮像できる位置であれば、打撃部あるいはグリップエンド等の任意の位置にマーカ５０を取り付けてもよい。この場合、撮像システム３０は、マーカ５０が取り付けられた当該任意の位置の姿勢情報および位置情報を取得する。
【００８５】
なお、バット８０は剛体であるため、グリップエンド部の初期姿勢情報は、バット８０の任意の位置の初期姿勢情報と同一であるとみなすことができる。また、バット８０の長手方向において、グリップエンド部から当該任意の位置までの長さをＬ１としたときのベクトルｖ１＝（０，０，−Ｌ１）を定義する。ＣＰＵ１０２は、当該任意の位置の初期姿勢情報を示すクォータニオンを用いてベクトルｖ１を回転することで、当該任意の位置の初期位置情報からグリップエンド部の初期位置情報を算出する。なお、同様にして、当該任意の位置の初期位置情報からヘッド部の初期位置情報を算出してもよい。
【００８６】
（２）上述した実施の形態に係るスイング解析システム１０００では、打球具としてのバット８０を用いた野球の打撃練習の場合を例に説明しているが、これに限定されるものではなく、他のスポーツに対しても利用可能である。例えば、テニス、ゴルフの場合には、それぞれ、打球具としてのラケット、ゴルフクラブのグリップエンド部にセンサ装置２０を取り付け、打球具の任意の位置（例えば、ヘッド部）にマーカ５０を取り付けるようにすればよい。
【００８７】
（３）上述した実施の形態において、コンピュータを機能させて、上述のフローチャートで説明したような制御を実行させるプログラムを提供することもできる。このようなプログラムは、コンピュータに付属するフレキシブルディスク、ＣＤ−ＲＯＭ（Compact  Disk  Read  Only  Memory）、ＲＯＭ、ＲＡＭおよびメモリカードなどの一時的でないコンピュータ読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピュータに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【００８８】
プログラムは、コンピュータのオペレーティングシステム（ＯＳ）の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずＯＳと協働して処理が実行される。このようなモジュールを含まないプログラムも、本実施の形態にかかるプログラムに含まれ得る。
【００８９】
また、本実施の形態にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本実施の形態にかかるプログラムに含まれ得る。
【００９０】
上述の実施の形態として例示した構成は、本発明の構成の一例であり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、一部を省略する等、変更して構成することも可能である。
【００９１】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００９２】
２  被験者、１０  スイング解析装置、２０  センサ装置、３０  撮像システム、４２  モニタ、４４  ＨＭＤセンサ、５０  マーカ、８０  バット、１０２，２５２  ＣＰＵ、１０４，２５４  メモリ、１０６  入力装置、１０８  通信インターフェイス、１１０  入出力インターフェイス、１１２  ディスプレイ、２００  演算部、２０２  センサ情報入力部、２０４  情報入力部、２０６  算出部、２０８  座標変換部、２１０  軌道算出部、２５６  加速度センサ、２５８  角速度センサ、２６２  蓄電池、３００  画像生成部、５０２  仮想投手、５０４  仮想ボール、５０６  仮想バット、５１０  軌道オブジェクト、１０００  スイング解析システム。
【図１】
2019187501.tif 000003
【図２】
2019187501.tif 000004
【図３】
2019187501.tif 000005
【図４】
2019187501.tif 000006
【図５】
2019187501.tif 000007
【図６】
2019187501.tif 000008
【図７】
2019187501.tif 000009
【図８】
2019187501.tif 000010
【図９】
2019187501.tif 000011
【図１０】
2019187501.tif 000012
【図１１】
2019187501.tif 000013
【図１２】
2019187501.tif 000014
【図１３】
2019187501.tif 000015