(57)【要約】【課題】利用者の運動動作が分かりやすい方向から撮影された動画を生成する。【解決手段】運動する利用者を撮影するための複数のカメラと接続される運動支援装置であって、三次元仮想空間に配置される仮想物の複数の運動動作を、三次元仮想空間に配置される複数の仮想カメラのうち少なくとも何れかで撮影される仮想動画を所定の表示手段に表示させる制御手段と、表示手段による表示に用いられる仮想動画を撮影する仮想カメラが、仮想物による複数の運動の進行に沿って切り替わったとき、複数のカメラのうち、切り替え先の仮想カメラの三次元仮想空間における位置に対応するカメラを、複数のカメラの中から特定する特定手段と、仮想カメラの切り替えごとに特定手段により特定されたカメラにより撮影された動画を繋げて一続きの動画を生成する生成手段と、を備える。【選択図】図５
2014068685.tif 000002
【特許請求の範囲】
【請求項１】
運動する利用者を撮影するための複数のカメラと接続される運動支援装置であって、
三次元仮想空間に配置される仮想物の複数の運動動作を、前記三次元仮想空間に配置される複数の仮想カメラのうち少なくとも何れかで撮影される仮想動画を所定の表示手段に表示させる制御手段と、
前記表示手段による表示に用いられる前記仮想動画を撮影する仮想カメラが、前記仮想物による複数の運動の進行に沿って切り替わったとき、前記複数のカメラのうち、切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラを、前記複数のカメラの中から特定する特定手段と、
仮想カメラの切り替えごとに前記特定手段により特定されたカメラにより撮影された動画を繋げて一続きの動画を生成する生成手段と、
を備えることを特徴とする運動支援装置。
【請求項２】
前記特定手段により切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラが、前記複数のカメラの中から複数特定された場合、前記特定手段により特定された複数のカメラの位置から見える前記利用者の所定の身体部位の移動量を取得する取得手段と、
前記取得手段により取得された前記移動量が大きいカメラを決定する決定手段と、を更に備え、
前記生成手段は、前記決定手段により決定されたカメラにより撮影された動画を用いて一続きの動画を生成することを特徴とする請求項１に記載の運動支援装置。
【請求項３】
前記制御手段は、所定の出力手段により楽曲を出力させるとともに、前記楽曲の進行に従って前記仮想物が運動動作する前記仮想動画を前記表示手段に表示させ、
前記特定手段は、前記楽曲の進行に沿って仮想カメラが切り替わったとき、切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラを、前記複数のカメラの中から特定することを特徴とする請求項１又は２に記載の運動支援装置。
【請求項４】
前記運動支援装置はカラオケ装置であることを特徴とする請求項３に記載の運動支援装置。
【請求項５】
運動する利用者を撮影するための複数のカメラと接続される運動支援装置に含まれるコンピュータに、
三次元仮想空間に配置される仮想物の複数の運動動作を、前記三次元仮想空間に配置される複数の仮想カメラのうち少なくとも何れかで撮影される仮想動画を所定の表示手段に表示させる制御ステップと、
前記表示手段による表示に用いられる前記仮想動画を撮影する仮想カメラが、前記仮想物による複数の運動の進行に沿って切り替わったとき、前記複数のカメラのうち、切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラを、前記複数のカメラの中から特定する特定ステップと、
仮想カメラの切り替えごとに前記特定ステップにより特定されたカメラにより撮影された動画を繋げて一続きの動画を生成する生成ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、運動する利用者を撮影するための複数のカメラと接続される運動支援装置の技術分野に関する。
【背景技術】
【０００２】
例えば、特許文献１には、運動の種類を表す複数の運動情報から構成された運動リスト情報を生成し、運動リスト情報を構成する運動情報に対応する運動映像情報を出力する技術が開示されている。
【０００３】
特許文献２には、トレーニングしている人物を撮像する複数のカメラを備えるトレーニングマシーンにおいて、人物からの切り替え指示により、複数のカメラからの映像を切り替えて表示部に表示する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１０７８１７号公報
【特許文献１】特開２０１１−１９６２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
運動を行う利用者は、利用者の運動動作が分かりやすい動画を見たい場合がある。しかしながら、複数のカメラからの映像を切り替えて表示することが可能であっても、利用者は、どの方向のカメラを選択すれば、運動動作が分かりやすい動画が得られるかが分からない。
【０００６】
本発明は、以上の点に鑑みてなされたものであり、利用者の運動動作が分かりやすい方向から撮影された動画を生成することができる運動支援装置及びプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の発明は、運動する利用者を撮影するための複数のカメラと接続される運動支援装置であって、三次元仮想空間に配置される仮想物の複数の運動動作を、前記三次元仮想空間に配置される複数の仮想カメラのうち少なくとも何れかで撮影される仮想動画を所定の表示手段に表示させる制御手段と、前記表示手段による表示に用いられる前記仮想動画を撮影する仮想カメラが、前記仮想物による複数の運動の進行に沿って切り替わったとき、前記複数のカメラのうち、切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラを、前記複数のカメラの中から特定する特定手段と、仮想カメラの切り替えごとに前記特定手段により特定されたカメラにより撮影された動画を繋げて一続きの動画を生成する生成手段と、を備えることを特徴とする。
【０００８】
請求項２に記載の発明は、前記特定手段により切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラが、前記複数のカメラの中から複数特定された場合、前記特定手段により特定された複数のカメラの位置から見える前記利用者の所定の身体部位の移動量を取得する取得手段と、前記取得手段により取得された前記移動量が大きいカメラを決定する決定手段と、を更に備え、前記生成手段は、前記決定手段により決定されたカメラにより撮影された動画を用いて一続きの動画を生成することを特徴とする。
【０００９】
請求項３に記載の発明は、前記制御手段は、所定の出力手段により楽曲を出力させるとともに、前記楽曲の進行に従って前記仮想物が運動動作する前記仮想動画を前記表示手段に表示させ、前記特定手段は、前記楽曲の進行に沿って仮想カメラが切り替わったとき、切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラを、前記複数のカメラの中から特定することを特徴とする。
【００１０】
請求項４に記載の発明は、前記運動支援装置はカラオケ装置であることを特徴とする。
【００１１】
請求項５に記載の発明は、運動する利用者を撮影するための複数のカメラと接続される運動支援装置に含まれるコンピュータに、三次元仮想空間に配置される仮想物の複数の運動動作を、前記三次元仮想空間に配置される複数の仮想カメラのうち少なくとも何れかで撮影される仮想動画を所定の表示手段に表示させる制御ステップと、前記表示手段による表示に用いられる前記仮想動画を撮影する仮想カメラが、前記仮想物による複数の運動の進行に沿って切り替わったとき、前記複数のカメラのうち、切り替え先の仮想カメラの前記三次元仮想空間における位置に対応するカメラを、前記複数のカメラの中から特定する特定ステップと、仮想カメラの切り替えごとに前記特定ステップにより特定されたカメラにより撮影された動画を繋げて一続きの動画を生成する生成ステップと、を実行させることを特徴とする。
【発明の効果】
【００１２】
請求項１又は５に記載の発明によれば、仮想カメラの切り替えごとに切り替え先の仮想カメラの三次元仮想空間における位置に対応するカメラで撮影された動画を用いて一続きの動画が生成される。そのため、利用者の運動動作が分かりやすい方向から撮影された動画を生成することができる。
【００１３】
請求項２に記載の発明によれば、より利用者の運動動作が分かりやすい方向から撮影された動画を生成することができる。
【００１４】
請求項３に記載の発明によれば、楽曲に合わせて利用者が行う運動動作が分かりやすい方向から撮影された動画を生成することができる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態の運動コンテンツ生成システム１の概要構成例を示す図である。
【図２】（Ａ）は、三次元仮想空間９０の様子の一例を示す図であり、運動リスト情報の構成例を示す図であり、（Ｂ）は、近さ順位表の構成例を示す図である。
【図３】（Ａ）は、近さ順位表において、切り替わり先の仮想カメラから近い現実カメラが特定される様子の一例を示す図であり、（Ｂ）は、三次元仮想空間９０内で利用者４１が運動していると仮定した場合に、加速度センサＳＮ１〜ＳＮ４の位置の例を示す図であり、（Ｃ）は、位置情報の構成例を示す図である。
【図４】（Ａ）は、モーション−仮想カメラ対応情報の構成例を示す図であり、（Ｂ）は、運動重視コンテンツの運動リスト情報の構成例を示す図であり、（Ｃ）は、楽曲重視コンテンツの運動リスト情報の構成例を示す図である。
【図５】運動コンテンツ生成システム１の処理例を示すシーケンス図である。
【図６】出力端末５のＣＰＵ５１のカメラ選択処理の処理例を示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、運動を支援するための運動コンテンツを生成する運動コンテンツ生成システムに本発明を適用した場合の実施形態である。運動コンテンツは、運動を支援するための映像及び音声を含む。
【００１７】
［１．運動コンテンツ生成システム１の構成］
始めに、図１を参照して、本実施形態の運動コンテンツ生成システム１の構成について説明する。図１は、本実施形態の運動コンテンツ生成システム１の概要構成例を示す図である。図１に示すように、運動コンテンツ生成システム１は、配信サーバ２と１つ以上の出力端末５とを含んで構成されている。配信サーバ２と出力端末５とは、ネットワーク１０を介して接続可能になっている。ネットワーク１０は、例えば、インターネットを含む。配信サーバ２には、データベース３が接続されている。データベース３には、運動に関する情報や楽曲に関する情報が登録されている。配信サーバ２は、データベース３に登録されている情報等を、定期的に又は出力端末５からの要求に応じて出力端末５に配信する。
【００１８】
出力端末５は、例えば、施設４に設置される端末装置である。出力端末５は、本発明の運動支援装置の一例である。出力端末５は、施設４の利用者４１により利用される。施設４は、例えば、スポーツ施設であってもよい。利用者４１は、スポーツ施設において、運動レッスンを受ける。運動レッスンは、複数の運動動作から構成されるレッスンである。この場合の出力端末５は、例えばパーソナルコンピュータであってもよい。施設４は、例えば、カラオケ店舗であってもよい。カラオケ店舗において、利用者４１は、カラオケの楽曲を歌唱する。この場合の出力端末５は、例えば、カラオケ装置である。以下では、施設４がスポーツ施設である場合を例にして説明する。スポーツ施設とカラオケ店舗とで異なる点については、適宜説明する。
【００１９】
出力端末５は、モニタ５７と接続可能である。モニタ５７は、複数のスピーカ６４とディスプレイ６７とを備える表示装置であってもよい。この場合、出力端末５は、ディスプレイ６７と接続可能である。また、出力端末５は、スピーカ６４と接続可能である。ディスプレイ６７は、本発明の表示手段の一例である。出力端末５がモニタ５７へ音声信号を出力することにより、スピーカ６４により楽曲等が出力される。出力端末５がモニタ５７へ映像信号を出力することにより、ディスプレイ６７に運動動画等が表示される。運動動画は、運動動作を行うフィギュア８３を映し出した動画である。フィギュア８３は、例えば、人、動物、仮想上の生き物、ロボット等のかたちをした仮想物である。運動動画は、本発明における仮想動画の一例である。出力端末５は、スピーカ６４から出力される楽曲と、ディスプレイ６７に表示されるフィギュア８３の動きとが同期するように、信号を出力する。楽曲と運動動画とを出力することは、運動コンテンツを出力することの一例である。利用者４１は、スピーカ６４により出力される楽曲を聴きながら、ディスプレイ６７に表示されるフィギュア８３を見て、運動を行うことができる。施設４がカラオケ店舗である場合、ディスプレイ６７には、例えば、カラオケの楽曲に対応した踊りの動作を行うフィギュア８３が表示される。この場合、利用者４１は、スピーカ６４により出力される楽曲に合わせて歌唱しながら、ディスプレイ６７に表示されるフィギュア８３を見て、踊りを踊ることができる。操作者４２は、リモコン６６等を用いて出力端末５を操作することができる。利用者４１と操作者４２とは同一人物であってもよい。施設４がスポーツ施設である場合、操作者４２は、例えば、インストラクターであってもよい。
【００２０】
出力端末５は、現実カメラＲＣ１〜ＲＣ４と接続可能である。現実カメラＲＣ１〜ＲＣ４は、運動動作を行う利用者４１を撮影するためのビデオカメラである。現実カメラは、スポーツ施設の室内に配置される。出力端末５は、運動の進行に沿って、現実カメラＲＣ１〜ＲＣ４の中から、利用者４１を撮影する現実カメラを切り替える制御を行う。利用者４１の運動動作を撮影する場合、利用者４１は、３軸の加速度センサＳＮ１〜ＳＮ４を装着することができる。加速度センサＳＮ１〜ＳＮ４は、利用者４１の所定の身体部位が動く際の加速度を検出する。例えば、利用者４１は、両手首と両足首にＳＮ１〜ＳＮ４を装着する。出力端末５は、加速度センサＳＮ１〜ＳＮ４により検出された加速度に基づいて、各身体部位の移動量を計算する。そして、出力端末５は、計算した移動量に基づいて、現実カメラＲＣ１〜ＲＣ４の中から切り替え先の現実カメラを決定する。切り替え先の現実カメラを決定する方法については後述する。なお、利用者４１が装着する加速度センサの数は４に限られない。利用者４１は、少なくとも１つ以上の加速度センサを装着すればよい。また、利用者４１を撮影する現実カメラの台数は４に限られない。少なくとも２台以上の現実カメラが配置されればよい。
【００２１】
出力端末５は、切り替え先の現実カメラから、撮影された動画を表す動画データを受信する。運動レッスンが終わると、出力端末５は、各現実カメラにより撮影された動画データを繋げて、一続きの動画データを生成する。生成される一続きの動画データを、利用者運動動画データという。利用者運動動画データは、実際に行われた運動の進行と同じ進行で利用者４１が運動動作する動画を表した動画データである。施設４がカラオケ店舗である場合、出力端末５は、楽曲が再生されている間、マイク６８に入力された利用者４１の歌唱音声の音声データをマイク６８から受信する。楽曲の再生が終了すると、出力端末５は、音声データを含む利用者運動動画データを生成する。
【００２２】
出力端末５は、例えば利用者４１の操作に基づいて、利用者運動動画データを再生する。これにより、出力端末５は、利用者４１が運動動作を行う動画をディスプレイ６７に表示させる。また、出力端末５は、利用者運動動画データを配信サーバ２へアップロードし、配信サーバ２は、利用者運動動画データをデータベース３に登録してもよい。例えばパーソナルコンピュータ等の端末装置を利用者４１が操作することにより、端末装置は、配信サーバ２から利用者運動動画データをダウンロードして再生することができる。
【００２３】
［２．運動コンテンツ］
施設４がスポーツ施設である場合、利用者４１は、運動レッスンに用いる運動コンテンツを選択することができる。選択可能な運動コンテンツの種類として、運動重視コンテンツと楽曲重視コンテンツとがある。
【００２４】
運動重視コンテンツは、楽曲よりも運動が重視される運動コンテンツである。運動重視コンテンツは、利用者４１の身体の訓練を主目的とする。運動重視コンテンツにおいては、運動が動作される運動テンポに従って楽曲が出力される。運動重視コンテンツの内容を決定する場合、例えば、楽曲よりも先に運動動作が選択される。例えば、利用者４１又は操作者４２が、所望する運動動作を選択する。そして、例えば、選択された運動動作又は選択された運動動作の運動テンポに応じて楽曲が選択される。運動テンポは、利用者４１が運動動作を行う速度を表す。例えば、利用者４１が運動動作ごとに運動テンポを設定する。運動重視コンテンツでは、運動テンポに従った再生速度でスピーカ６４により楽曲が出力される。また、運動テンポに従った速度で運動動作を行うフィギュア８３の運動動画がディスプレイ６７に表示される。そのため、利用者４１は運動テンポに従って運動を行う。利用者４１の運動動作に適した運動テンポが設定されることで、利用者４１は、効果的な運動を行うことができる。また、運動重視コンテンツでは、楽曲を構成する複数の演奏パートのうち、一部の演奏パートのみが所定回数繰り返し出力される。例えば、楽曲のサビ部分が繰り返し出力されたり、イントロ部分とサビ部分とが繰り返し出力されたりする。
【００２５】
運動重視コンテンツにおいて選択可能な運動動作は、例えば、体操の動作である。体操は、例えば、健康の増進、体力の増強、筋力の強化等のために行われる運動である。体操の種類として、例えば、有酸素運動、無酸素運動、ストレッチ等がある。有酸素運動の運動動作として、例えば、マーチ、フロントランジ等がある。無酸素運動の運動動作として、例えば、ショルダープレス、チェストプレス等がある。ストレッチの運動動作として、例えば、上腕部ストレッチ、首ストレッチ等がある。
【００２６】
楽曲重視コンテンツは、運動よりも楽曲が重視される運動コンテンツである。楽曲重視コンテンツにおいても、利用者４１の身体を訓練することができる。しかしながら、利用者４１が運動を楽しむことの方が重視される。楽曲重視コンテンツにおいては、楽曲のオリジナルのテンポに従って楽曲が出力される。楽曲重視コンテンツの内容を決定する場合、例えば、運動動作よりも先に楽曲が選択される。例えば、利用者４１又は操作者４２が、所望する楽曲を選択する。例えば、利用者４１又は操作者４２が、所望する運動動作を選択する。そして、選択された楽曲の演奏パートごとに運動動作が選択される。楽曲重視コンテンツでは、楽曲のオリジナルのテンポに従った速度で運動動作を行うフィギュア８３の運動動画がディスプレイ６７に表示される。また、楽曲重視コンテンツにおいては、楽曲の構成に従ったパートの順で、楽曲が出力される。例えば、イントロ、Ａメロ、Ｂメロ、サビ、Ａメロ、Ｂメロ、サビ、間奏、サビ、エンディング等の順で、楽曲が出力される。利用者４１は、楽曲に適したテンポで楽曲の構成に従って出力される楽曲を聴きながら運動を行うことで、楽曲を楽しむことができる。
【００２７】
楽曲重視コンテンツにおいて選択可能な運動動作として、体操の動作と、楽曲に対応する踊りの動作とがある。踊りの動作は、楽曲に合わせて踊るために楽曲に対して振り付けられた動作である。例えば、楽曲のサビ部分では踊りの動作が選択され、サビ部分と異なる演奏パートでは、体操の動作が選択される。楽曲のサビ部分以外の演奏パートについても、踊りの動作が選択されてもよい。楽曲に応じた踊りを踊ることにより、利用者４１は、運動を楽しむことができる。
【００２８】
施設４がカラオケ施設である場合の運動コンテンツについて説明する。この場合、利用者４１は、歌唱する楽曲を選択する。そして、選択された楽曲に対応する運動コンテンツとして、楽曲重視コンテンツが出力される。カラオケの楽曲の運動コンテンツにおいては、運動動作は予め定められている。具体的に、楽曲の演奏パートごとに、演奏パートに対応した踊りの動作が対応付けられている。
【００２９】
［３．利用者４１を撮影する現実カメラの決定］
次に、図２及び図３を参照して、現実カメラＲＣ１〜ＲＣ４の中から利用者４１を撮影する現実カメラを切り替えるときの現実カメラの決定方法について説明する。運動コンテンツ生成システム１においては、３ＤＣＧ（3 Dimensional Computer Graphics）により、出力端末５が、三次元仮想空間９０に配置されたフィギュア８３が運動動作を行う運動動画を生成する。図２（Ａ）は、三次元仮想空間９０の様子の一例を示す図である。図２（Ａ）に示すように、三次元仮想空間９０には、フィギュア８３が配置される。また、三次元仮想空間９０には、仮想カメラＶＣ１〜ＶＣ８が配置される。仮想カメラＶＣ１〜ＶＣ８は、三次元仮想空間９０内の映像を撮影する。仮想カメラＶＣ１〜ＶＣ８は、三次元仮想空間９０内の物体を投影面に写すための視点及び視線の方向を表す。投影面に映った映像が、運動動画になる。出力端末５は、三次元仮想空間９０におけるフィギュア８３の複数の運動動作が、仮想カメラＶＣ１〜ＶＣ８のうち少なくとも何れかの仮想カメラで撮影される運動動画を、ディスプレイ６７に表示させる。仮想カメラＶＣ１〜ＶＣ８の位置は視点に対応する。仮想カメラＶＣ１〜ＶＣ８は、通常、フィギュア８３に向けられている。仮想カメラＶＣ１〜ＶＣ８のうち、例えば仮想カメラＶＣ１は、フィギュア８３の正面に配置される。なお、仮想カメラの台数は８に限られない。少なくとも２台以上の仮想カメラが配置されればよい。
【００３０】
本実施形態においては、運動動作ごとに、仮想カメラＶＣ１〜ＶＣ８のうちフィギュア８３を撮影する仮想カメラが予め定められている。例えば、運動コンテンツ生成システム１の管理者が、三次元仮想空間９０において、フィギュア８３の運動動作が最も分かりやすい位置からフィギュア８３を撮影可能な仮想カメラを、運動動作に対応付けてもよい。実際のスポーツ施設では、現実カメラＲＣ１〜ＲＣ４が、運動する利用者４１を撮影する。利用者４１は、利用者運動動画データを再生して利用者４１が運動している動画を見るとき、運動動作が分かりやすい動画を見たい場合がある。そのためには、現実カメラＲＣ１〜ＲＣ４のうち、利用者４１の運動動作が分かりやすい位置から利用者４１を撮影可能な現実カメラが、利用者４１を撮影することが良い。そこで、運動動作が切り替わることによって、フィギュア８３を撮影する仮想カメラが切り替わったとき、出力端末５は、三次元仮想空間９０において、切り替わり先の仮想カメラの位置に近い位置にある現実カメラを、利用者４１を撮影する現実カメラに決定する。
【００３１】
具体的に、図２（Ａ）に示すように、現実カメラＲＣ１〜ＲＣ４が三次元仮想空間９０内に配置されているものと仮定して、三次元仮想空間９０内における現実カメラＲＣ１〜ＲＣ４の位置が定義される。例えば、出力端末５及び現実カメラＲＣ１〜ＲＣ４を設置した業者が、出力端末５に、三次元仮想空間９０内における現実カメラＲＣ１〜ＲＣ４の座標や撮影方向を入力してもよい。撮影方向は、例えば、三次元仮想空間９０においてＸ軸と撮影方向とがなす方位角と、ＸＹ平面と撮影方向とがなす仰角とで表される。例えば、運動が行われる部屋において、利用者４１が立つべき位置及び利用者４１の正面が向くべき方向が決められているとする。業者は、利用者４１の位置から各現実カメラまでの距離や方向等を測定する。業者は、三次元仮想空間９０内に配置されたフィギュア８３が立つ位置及び向きを、利用者４１が立つ位置及び向きであると仮定する。そして、業者は、測定した距離や方向等に基づいて、現実カメラＲＣ１〜ＲＣ４の座標や撮影方向を入力する。図２（Ａ）に示すように、現実カメラＲＣ１〜ＲＣ４の位置と、仮想カメラＶＣ１〜ＶＣ８の位置とが異なってもよい。例えば、現実カメラＲＣ１が利用者４１の正面に配置される現実カメラである場合、三次元仮想空間９０においてフィギュア８３から見た仮想カメラＶＣ１の方向と、現実カメラＲＣ１の方向とが一致するように、業者は座標を入力する。
【００３２】
出力端末５は、三次元仮想空間９０における現実カメラＲＣ１〜ＲＣ４の位置及び仮想カメラＶＣ１〜ＶＣ８の位置に基づいて、現実カメラＲＣ１〜ＲＣ４のそれぞれについて、現実カメラから仮想カメラＶＣ１〜ＶＣ８までの距離を計算する。出力端末５は、現実カメラＲＣ１〜ＲＣ４のそれぞれについて、距離が近い順に仮想カメラＶＣ１〜ＶＣ８に順位を付ける。この順位を近さ順位という。そして、出力端末５は、順位付けの結果を、近さ順位表として記憶する。図２（Ｂ）は、近さ順位表の構成例を示す図である。図２（Ｂ）に示すように、近さ順位表には、現実カメラＲＣ１〜ＲＣ４のそれぞれごとに、仮想カメラの仮想カメラＩＤが、距離の近い順に並べて設定されている。仮想カメラＩＤは、仮想カメラの識別情報である。例えば、現実カメラＲＣ１から１番目に近い仮想カメラは仮想カメラＶＣ１であり、２番目に近い仮想カメラは仮想カメラＶＣ５である。また例えば、現実カメラＲＣ２から１番目に近い仮想カメラは仮想カメラＶＣ２であり、２番目に近い仮想カメラは仮想カメラＶＣ６である。
【００３３】
ディスプレイ６７による表示に用いられる運動動画を撮影する仮想カメラが、フィギュア８３による運動の進行に沿って切り替わったとする。このとき、出力端末５は、近さ順位表に基づいて、現実カメラＲＣ１〜ＲＣ４のうち、切り替え先の仮想カメラの位置に対応する現実カメラを、切り替え先の候補として特定する。切り替え先の候補の現実カメラの台数は、例えば、運動コンテンツ生成システム１の管理者により予め設定されている。出力端末５は、近さ順位表において、切り替わり先の仮想カメラの近さ順位が高い順に、所定数の現実カメラを特定する。図３（Ａ）は、近さ順位表において、切り替わり先の仮想カメラから近い現実カメラが特定される様子の一例を示す図である。図２（Ｂ）の例において、切り替え先の仮想カメラが仮想カメラＶＣ７であるとする。この場合、図３（Ａ）に示すように、出力端末５は、現実カメラＲＣ１〜ＲＣ４のそれぞれごとに、仮想カメラＶＣ７の順位を特定する。現実カメラＲＣ１〜ＲＣ４のそれぞれにおいて、仮想カメラＶＣ７の順位は、８位、６位、２位、４位である。切り替え先の候補の台数が、例えば２台である場合、出力端末５は、現実カメラＲＣ３及びＲＣ４を、切り替え先の候補として特定する。なお、切り替え先の候補の台数は２台に限られない。出力端末５は、現実カメラＲＣ１〜ＲＣ４のうち一部の現実カメラを特定すればよい。出力端末５が１台の現実カメラのみを切り替え先の候補として特定した場合、出力端末５は、特定した現実カメラを、切り替え先の現実カメラとして決定する。また、切り替え先の候補の特定方法は、上述の方法に限られない。例えば、出力端末５は、三次元仮想空間９０において、切り替え先の仮想カメラからの距離が所定距離以下である現実カメラを切り替え先の候補としてもよい。
【００３４】
出力端末５が切り替え先の候補として複数の現実カメラを特定したとする。この場合、出力端末５は、特定した複数の現実カメラのうち、利用者４１の運動動作が最も分かりやすい動画を撮影することができると考えられる位置に配置されている現実カメラを、切り替え先の現実カメラとして決定する。運動動作する利用者４１に対する現実カメラの位置によって、撮影された動画において利用者４１の運動動作の見え方が変わる。利用者４１の身体部位が激しく動いている動画であるほど、利用者４１の運動動作が分かりやすい動画である蓋然性が高い。そこで、出力端末５は、利用者４１の身体部位の移動量が最も大きい現実カメラを、切り替え先の現実カメラとして決定する。これにより、より利用者４１の運動動作が分かりやすい方向から撮影された利用者運動動画データを生成することができる。
【００３５】
利用者４１の身体部位の移動量を取得するため、出力端末５は、利用者４１が装着した加速度センサＳＮ１〜ＳＮ４により検出される加速度を用いる。出力端末５は、三次元仮想空間９０内に利用者４１が立っていると仮定した場合に、三次元仮想空間９０における加速度センサＳＮ１〜ＳＮ４の位置を特定する。例えば、利用者４１は、予め利用者４１の性別、身長等の情報を出力端末５に入力する。運動レッスンを開始する前、出力端末５は、例えば、現実カメラＲＣ１の正面に利用者４１が立つようにする指示を、ディスプレイ６７に表示させる。利用者４１が現実カメラＲＣ１の正面に立った場合、三次元仮想空間９０内で、利用者４１が仮想カメラＶＣ１の正面に立ったと仮定される。この仮定に基づいて、出力端末５は、入力された性別や身長等の情報に基づいて、三次元仮想空間９０における利用者４１両手首及び両足首の位置を決定する。例えば、性別と身長との組み合わせごとに、両手首及び両足首の位置が予め設定されていてもよい。両手首及び両足首の位置が、加速度センサＳＮ１〜ＳＮ４の位置である。また、出力端末５は、三次元仮想空間９０における加速度センサＳＮ１〜ＳＮ４の向きを決定する。加速度センサの向きは、例えば、加速度センサが加速度を検出する方向として、加速度センサに対するＸ軸方向、Ｙ軸方向、Ｚ軸方向のうち何れかの方向であってもよい。
【００３６】
運動レッスンが開始されると、利用者４１は、運動の進行に従って運動動作を行う。加速度センサＳＮ１〜ＳＮ４のそれぞれは、加速度センサに対するＸ軸方向、Ｙ軸方向及びＺ軸方向の加速度を検出する。加速度センサＳＮ１〜ＳＮ４は、検出した加速度を加速度センサ情報として、無線により所定時間間隔ごとに出力端末５へ送信する。この時間間隔を、送信間隔という。出力端末５は、加速度センサ情報に基づいて、三次元仮想空間９０における加速度センサＳＮ１〜ＳＮ４の位置を、送信間隔ごとに計算する。図３（Ｂ）は、三次元仮想空間９０内で利用者４１が運動していると仮定した場合に、加速度センサＳＮ１〜ＳＮ４の位置の例を示す図である。一方、出力端末５は、切り替え先の候補の現実カメラごとに、三次元仮想空間９０における投影面９１を定義する。例えば、出力端末５は、投影面９１の中心を、三次元仮想空間９０における現実カメラの位置と一致させ、投影面の法線の方向を、三次元仮想空間９０における現実カメラの撮影方向と一致させる。図３（Ｂ）に示す投影面９１は、現実カメラＲＣ３に対応する投影面である。出力端末５は、加速度センサＳＮ１〜ＳＮ４の三次元仮想空間９０における位置を、投影面９１に垂直投影させる。つまり、出力端末５は、加速度センサの三次元仮想空間９０における位置を通る投影線が投影面９１と垂直に交わるように投影する。垂直投影によって投影面９１上に変換される加速度センサＳＮ１〜ＳＮ４の位置を、位置Ｌ１〜Ｌ４とする。出力端末５は、投影面９１上における位置Ｌ１〜Ｌ４のそれぞれのＸ座標及びＹ座標を計算する。出力端末５は、切り替え先の候補の現実カメラごとに、送信間隔ごとの位置Ｌ１〜Ｌ４の座標を、投影面９１における位置情報として記録する。図３（Ｃ）は、送信間隔が６０ミリ秒である場合の位置情報の構成例を示す図である。
【００３７】
出力端末５は、仮想カメラが切り替わった後、一定時間、切り替え先の候補の現実カメラごとに、投影面９１における位置情報を記録する。例えば、出力端末５は、２０００ミリ秒の間記録してもよい。そして、出力端末５は、記録した位置情報に基づいて、切り替え先の候補の現実カメラごとに、一定時間の間の投影面９１上における位置Ｌ１〜Ｌ４の移動量を計算する。出力端末５は、位置Ｌ１〜Ｌ４の移動量の合計値を計算し、切り替え先の候補の現実カメラのうち、移動量の合計値が最も大きい現実カメラを、切り替え先の現実カメラとして決定する。
【００３８】
［４．各装置の構成］
次に、図１及び図４を参照して、運動コンテンツ生成システムに含まれる各装置の構成について説明する。
【００３９】
［４−１．配信サーバ２の構成］
図１に示すように、配信サーバ２は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、バス２４、Ｉ／Ｏインタフェイス２５、表示制御部２６、ディスクドライブ２８、ネットワーク通信部３０及びＨＤＤ（ハードディスクドライブ）３７を備える。ＣＰＵ２１は、バス２４を介して、ＲＯＭ２２、ＲＡＭ２３、バス２４及びＩ／Ｏインタフェイス２５に接続されている。ＣＰＵ２１は、ＲＯＭ２２やＨＤＤ３７に記憶されプログラムを実行することにより、配信サーバ２の各部を制御する。Ｉ／Ｏインタフェイス２５には、データベース３、表示制御部２６、ディスクドライブ２８、ネットワーク通信部３０、キーボード３１、マウス３２及びＨＤＤ３７が接続されている。ＣＰＵ２１は、Ｉ／Ｏインタフェイス２５を介してデータベース３にアクセスする。表示制御部２６は、ＣＰＵ２１の制御に基づいて映像信号をモニタ５７に出力する。ディスクドライブ２８は、記録媒体２９に対するデータの書き込み及び読み出しを行う。ネットワーク通信部３０は、配信サーバ２がネットワーク１０に接続するための制御を行う。ＨＤＤ３７には、ＯＳや各種制御プログラム等が記憶されている。
【００４０】
データベース３には、モーションデータ、楽曲データ、仮想カメラ位置情報、モーション−仮想カメラ対応情報等のデータが登録されている。モーションデータは、三次元仮想空間９０におけるフィギュア８３の運動動作を定義するデータである。モーションデータは、ディスプレイ６７にフィギュア８３の運動動作を表示させるためのデータである。モーションデータは、運動動作の進行に応じたフィギュア８３の身体の各部の座標を含む。モーションデータは、モーション情報と対応付けて登録される。モーション情報は、運動動作を示す識別情報である。体操の動作を示すモーション情報として、例えば、「ハーフ・スクワット」、「マーチ」等がある。踊りの動作を示すモーション情報として、例えば、「楽曲ＸのＡメロ」、「楽曲ＸのＢメロ」、「楽曲Ｘのサビ」、「楽曲ＹのＡメロ」等がある。
【００４１】
楽曲データは、スピーカ６４により楽曲を出力するための演奏データである。楽曲データは、例えば、ＭＩＤＩ（Musical Instrument Digital Interface）形式のデータであってもよい。楽曲データは、楽曲ＩＤ、楽曲名、アーティスト名、オリジナルのテンポ、楽曲の演奏パートの構成、歌詞等の情報を含む。楽曲ＩＤは、楽曲の識別情報である。また、楽曲データは、演奏パートの切り替わりのタイミング、歌詞テロップの表示タイミング、歌詞テロップの色を変化させるタイミング等を規定する。例えば、楽曲データがＭＩＤＩ形式のデータである場合、楽曲データには、実際の演奏データとしてのＭＩＤＩメッセージに加えて、メタメッセージを含めることができる。メタメッセージとしては、例えば、演奏パートを示すマーカーメッセージ、歌詞メッセージ等がある。そのため、演奏パートを識別するパートＩＤや歌詞をメッセージとして楽曲データに記述することが可能である。例えば、出力端末５には、後述のミュージックシーケンサがインストールされている。出力端末５は、ミュージックシーケンサを実行することにより、楽曲データを再生するとともに、楽曲データからメタメッセージ等を読み出すと、読み出したメッセージを出力する。例えば、マーカーメッセージが出力されるタイミングが、そのマーカーメッセージが示す演奏パートが開始されるタイミングとなる。本実施形態においては、マーカーメッセージを、演奏パート開始メッセージという。演奏パート開始メッセージは、演奏パートの演奏開始を通知するメッセージである。
【００４２】
仮想カメラ位置情報は、仮想カメラＶＣ１〜ＶＣ８の三次元仮想空間９０における位置及び撮影方向を示す情報である。例えば、仮想カメラ位置情報には、仮想カメラＶＣ１〜ＶＣ８のそれぞれの仮想カメラＩＤ、座標、方位角、仰角等が設定される。
【００４３】
モーション−仮想カメラ対応情報は、仮想カメラＶＣ１〜ＶＣ８の中からフィギュア８３を撮影する仮想カメラを、運動動作ごとに定義する情報である。図４（Ａ）は、モーション−仮想カメラ対応情報の構成例を示す図である。図４（Ａ）に示すように、モーション−仮想カメラ対応情報には、運動動作ごとに、モーション情報と仮想カメラＩＤとが対応付けて設定される。例えば、フィギュア８３がマーチの動作を行うとき、仮想カメラＶＣ１が撮影を行う。また例えば、フィギュア８３が楽曲ＸのＡメロの踊りの動作を行うとき、仮想カメラＶＣ２が撮影を行う。
【００４４】
［４−２．出力端末５の構成］
図１に示すように、出力端末５は、ＣＰＵ５１、ＲＯＭ５２、ＲＡＭ５３、バス５４、Ｉ／Ｏインタフェイス５５、表示制御部５６、ディスクドライブ５８、ネットワーク通信部６０、音声出力部６３、信号受信部６５、センサ情報受信部６９及びＨＤＤ７を備える。ＣＰＵ５１は、バス５４を介して、ＲＯＭ５２、ＲＡＭ５３、バス５４及びＩ／Ｏインタフェイス５５に接続されている。ＣＰＵ５１は、ＲＯＭ５２やＨＤＤ７に記憶されプログラムを実行することにより、出力端末５の各部を制御する。Ｉ／Ｏインタフェイス５５には、ＨＤＤ７、表示制御部５６、音声出力部６３、ディスクドライブ５８、ネットワーク通信部６０、キーボード６１、マウス６２、マイク６８、信号受信部６５、センサ情報受信部６９及び現実カメラＲＣ１〜ＲＣ４が接続されている。表示制御部５６は、ＣＰＵ５１の制御に基づいて映像信号をモニタ５７に出力する。音声出力部６３は、ＣＰＵ５１の制御に基づいて音声信号をモニタ５７に出力する。ディスクドライブ５８は、記録媒体５９に対するデータの書き込み及び読み出しを行う。信号受信部６５は、リモコン６６から出力される信号を受信する。リモコン６６は、操作者４２が出力端末５を操作するためのものである。センサ情報受信部６９は、加速度センサＳＮ１〜ＳＮ４から送信される加速度センサ情報を受信する。
【００４５】
ＨＤＤ７には、配信サーバ２から配信されたモーションデータ、楽曲データ、仮想カメラ位置情報、モーション−仮想カメラ対応情報等が記憶される。また、ＨＤＤ７には、生成された利用者運動動画データが記憶される。また、ＨＤＤ７には、近さ順位表、運動リスト情報が記憶される。運動リスト情報は、運動レッスンの構成を定めた情報である。出力端末５が運動リスト情報を生成する。
【００４６】
図４（Ｂ）は、運動重視コンテンツの運動リスト情報の構成例を示す図である。運動重視コンテンツの運動リスト情報は、複数のモーション情報を含む。モーション情報は、運動動作が行われる順に並べられている。運動重視コンテンツの運動リスト情報は、同一のモーション情報を複数含んでいてもよい。また、運動リスト情報においては、モーション情報と、運動テンポ及び楽曲ＩＤとが、運動動作ごとに対応付けられている。楽曲ＩＤは、楽曲を示す識別情報である。モーション情報に対応付けられる楽曲ＩＤは、モーション情報が示す運動動作を行うときに出力される楽曲を示す。複数の運動動作に対して同一の楽曲が対応付けられてもよい。
【００４７】
運動重視レッスンが開始すると、ＣＰＵ５１は、運動リスト情報から、運動レッスンを構成する複数の運動動作のうち、１番目に行われる運動動作のモーション情報、運動テンポ及び楽曲ＩＤを取得する。ＣＰＵ５１は、運動リスト情報から取得した楽曲ＩＤに対応する楽曲データを取得する。そして、ＣＰＵ５１は、運動リスト情報から取得した運動テンポに従って、楽曲データの一部の演奏パートを繰り返し再生する。また、ＣＰＵ５１は、運動リスト情報から取得したモーション情報に対応する仮想カメラＩＤを、モーション−仮想カメラ対応情報から取得する。ＣＰＵ５１は、仮想カメラＩＤに対応する仮想カメラ位置情報を取得する。また、ＣＰＵ５１は、モーション情報に対応するモーションデータを取得する。ＣＰＵ５１は、モーションデータ及び仮想カメラＩＤに基づいて、モーション情報が示す運動動作を行うフィギュア８３を、仮想カメラＩＤが示す仮想カメラが撮影する運動動画を生成する。そして、ＣＰＵ５１は、生成した運動動画をディスプレイ６７に表示させる。ＣＰＵ５１は、一部の演奏パートの繰り返し再生が完了すると、運動リスト情報から、次に行われる運動動作のモーション情報、運動テンポ及び楽曲ＩＤを取得する。そして、ＣＰＵ５１は、取得した情報に基づいて、楽曲データの再生及び運動動画の生成を行う。
【００４８】
図４（Ｃ）は、楽曲重視コンテンツの運動リスト情報の構成例を示す図である。楽曲重視コンテンツの運動リスト情報は、１つの楽曲ＩＤを含む。この楽曲ＩＤは、楽曲重視レッスンが行われている間に出力される楽曲を示す。また、楽曲重視コンテンツの運動リスト情報は、複数のパートＩＤを含む。複数のパートＩＤは、楽曲ＩＤが示す楽曲の演奏パートの構成を示す。複数のパートＩＤは、演奏パートの演奏順に並べられている。また、楽曲重視コンテンツの運動リスト情報においては、パートＩＤとモーション情報とが、演奏パートごとに対応付けられている。パートＩＤに対応付けられるモーション情報は、パートＩＤが示す演奏パートが出力されるときに行われる運動動作を示す。基本的に、サビ部分に対しては、サビ部分の踊りの動作が対応付けられる。また、サビ部分と異なる演奏パートに対しては、体操の動作又は踊りの動作が対応付けられる。同一の演奏パートが２回以上演奏される場合があってもよい。この場合、同一の演奏パートのパートＩＤに対しては、同一のモーション情報が対応付けられる。従って、同一の演奏パートでは同一の運動動作が行われる。なお、同一の演奏パートであっても、演奏回数に応じて運動動作が異なってもよい。
【００４９】
楽曲重視レッスンが開始すると、ＣＰＵ５１は、運動リスト情報から楽曲ＩＤを取得する。ＣＰＵ５１は、運動リスト情報から取得した楽曲ＩＤに対応する楽曲データを取得する。そして、ＣＰＵ５１は、楽曲データ内に設定されているオリジナルのテンポに従って、楽曲データを再生する。ＣＰＵ５１は、ミュージックシーケンサから演奏パート開始メッセージを受信すると、運動リスト情報から、演奏パート開始メッセージに含まれるパートＩＤに対応するモーション情報を取得する。ＣＰＵ５１は、モーション情報に対応する仮想カメラＩＤを、モーション−仮想カメラ対応情報から取得する。ＣＰＵ５１は、仮想カメラＩＤに対応する仮想カメラ位置情報を取得する。また、ＣＰＵ５１は、モーション情報に対応するモーションデータを取得する。ＣＰＵ５１は、モーションデータ及び仮想カメラＩＤに基づいて、モーション情報が示す運動動作を行うフィギュア８３を、仮想カメラＩＤが示す仮想カメラが撮影する運動動画を生成する。そして、ＣＰＵ５１は、生成した運動動画をディスプレイ６７に表示させる。
【００５０】
運動重視コンテンツ及び楽曲重視コンテンツに共通して、運動リスト情報は、コンテンツＩＤ、コンテンツ名、コンテンツ種別等を含む。コンテンツＩＤは、運動コンテンツの識別情報である。コンテンツ種別は、運動コンテンツが運動重視コンテンツ及び楽曲重視コンテンツの何れであるかを示す情報である。
【００５１】
出力端末５がカラオケ装置である場合、運動リスト情報の構成は、楽曲重視コンテンツの運動リスト情報の構成と基本的に同じである。ただし、全ての演奏パートにおいて、パートＩＤに対応付けられるモーション情報は、楽曲ＩＤが示す楽曲の演奏パートに対応する踊りの動作のモーション情報である。
【００５２】
ＨＤＤ７には、更に、ＯＳ、運動支援プログラム、３Ｄエンジン、ミュージックシーケンサ等の各種プログラム等が記憶されている。運動支援プログラムは、利用者４１の運動を支援するためのプログラムである。運動支援プログラムは、コンピュータとしてのＣＰＵ５１に、制御ステップ、特定ステップ及び生成ステップを少なくとも実行させる。３Ｄエンジンは、モーションデータに基づいて、三次元仮想空間で運動動作するフィギュア８３を二次元平面に投影した画像を生成するためのプログラムである。画像を生成する処理は、射影変換、クリッピング、隠面消去、シェーディング、テクスチャマッピング等を含む。ＣＰＵ５１は、３Ｄエンジンを実行して、静止画像を順次生成する。生成された静止画像をＣＰＵ５１が表示制御部５６へ順次出力することで、ディスプレイ６７には、運動動画が表示される。
【００５３】
ミュージックシーケンサは、楽曲データを再生するためのプログラムである。ＣＰＵ５１は、ミュージックシーケンサを実行することにより、楽曲データに対応する音声信号を生成する。また、ＣＰＵ５１は、ミュージックシーケンサを実行することにより、各種のメッセージ（イベント）を発生させる。メッセージとして、例えば、テンポに応じて所定時間間隔で発生するメッセージがある。このメッセージは、ＭＩＤＩクロックや同期メッセージと呼ばれる。また、メッセージとして、例えば、演奏パート開始メッセージや歌詞メッセージがある。また、メッセージとして、演奏終了メッセージがある。演奏終了メッセージは、楽曲全体の演奏の終了を示すメッセージである。
【００５４】
各種プログラムは、例えば、配信サーバ２等のサーバからネットワーク１０を介してダウンロードされるようにしてもよい。また、各種プログラムは、記録媒体５９に記録されてディスクドライブ５８を介して読み込まれるようにしてもよい。なお、３Ｄエンジンやミュージックシーケンサは、プログラムではなく、専用のハードウェアであってもよい。そして、出力端末５は、ハードウェアとしての３Ｄエンジンやミュージックシーケンサを備えてもよい。
【００５５】
ＣＰＵ５１は、設定されたテンポに従って、楽曲データに対応する音声信号を音声出力部６３へ出力させるとともに、生成した画像に対応する映像信号を表示制御部５６から出力させる。ＣＰＵ５１は、同期メッセージに基づいて、楽曲の音声信号の出力タイミングと運動動画の映像信号の出力タイミングとを同期させる。これにより、スピーカ６４から出力される楽曲に同期して運動動作を行うフィギュア８３がディスプレイ６７に表示される。また、ＣＰＵ５１は、演奏パート開始メッセージに基づいて、楽曲の演奏パートの切り替わり及び演奏が開始される演奏パートを検出する。ＣＰＵ５１は、楽曲の演奏パートの切り替わりを検出することにより、運動動作の切り替わりをも検出することができる。
【００５６】
［５．運動コンテンツ生成システム１の動作］
次に、図５及び図６を参照して、運動コンテンツ生成システム１の動作を説明する。図５は、運動コンテンツ生成システム１の処理例を示すシーケンス図である。施設４がスポーツ施設である場合、操作者４２は、キーボード６１、マウス６２、リモコン６６の何れかを操作して、運動レッスンの実行を選択する。すると、出力端末５のＣＰＵ５１は、ＨＤＤ７に記憶された運動リスト情報に基づいて、運動コンテンツの一覧をディスプレイ６７に表示させる。操作者４２は、一覧の中から所望の運動コンテンツを選択する。ＣＰＵ５１は、操作者４２により選択された運動コンテンツの運動リスト情報をＨＤＤ７から取得する。施設４がカラオケ店舗である場合、操作者４２は、例えばリモコン６６を操作して、歌唱する楽曲を選択する。リモコン６６は、選択された楽曲の楽曲ＩＤを出力端末５へ送信する。ＣＰＵ５１は、受信した楽曲ＩＤに対応する運動リスト情報をＨＤＤ７から取得する（ステップＳ１）。
【００５７】
ＣＰＵ５１は、操作者４２からの開始操作に応じて、利用者４１に対する指示を、ディスプレイ６７に表示させる（ステップＳ２）。ディスプレイ６７には、例えば、「センサを装着して、カメラＲＣ１の正面に立ってください。」といった指示が表示される。表示された指示を見た利用者４１は、加速度センサＳＮ１〜ＳＮ４を装着して、現実カメラＲＣ１の正面に立つ（ステップＳ３）。ＣＰＵ５１は、例えば、利用者４１に対する指示の表示から所定時間が経過したタイミングで、三次元仮想空間９０における加速度センサＳＮ１〜ＳＮ４の位置及び向きを初期化する（ステップＳ４）。具体的に、ＣＰＵ５１は、
予め入力されている利用者４１の性別、身長に対応する加速度センサＳＮ１〜ＳＮ４の座標をＨＤＤ７から読み出し、ＲＡＭ５３に記憶させる。
【００５８】
次いで、ＣＰＵ５１は、ＨＤＤ７から取得した運動リスト情報に基づいて、ミュージックシーケンサによる楽曲の出力を開始する。また、ＣＰＵ５１は、運動リスト情報に基づいて、３Ｄエンジンによる運動動画の生成及びディスプレイ６７への表示を開始する（ステップＳ５）。ＣＰＵ５１は、取得した運動リスト情報に設定されたコンテンツ種別に基づいて、運動コンテンツが運度重視コンテンツ及び楽曲重視コンテンツの何れであるかを判定する。ＣＰＵ５１は、４−２項で説明した方法により、楽曲の出力及び運動動画の生成を行う。スピーカ６４から楽曲が出力され、ディスプレイ６７に運動動画が表示されるので、利用者４１は運動を開始する（ステップＳ６）。
【００５９】
４−２項で説明したように、ＣＰＵ５１は、運動リスト情報から取得したモーション情報に対応する仮想カメラＩＤを、モーション−仮想カメラ対応情報から取得する。ＣＰＵ５１は、ＨＤＤ７に記憶されている近さ順位表に基づいて、現実カメラＲＣ１〜ＲＣ４の中から、仮想カメラＩＤが示す仮想カメラの近さ順位が最も高い現実カメラを特定する。そして、ＣＰＵ５１は、現実カメラＲＣ１〜ＲＣ４に、特定した現実カメラのカメラＩＤを含む撮影開始命令を送信する（ステップＳ７）。カメラＩＤは、現実カメラの識別情報である。撮影開始命令を受信した現実カメラＲＣ１〜ＲＣ４のうち、撮影開始命令に設定されたカメラＩＤが示す現実カメラは、利用者４１の撮影を開始する（ステップＳ８）。そして、撮影を開始した現実カメラは、撮影した動画を表す動画データを出力端末５へ送信する（ステップＳ９）。ＣＰＵ５１は、受信した動画データをＨＤＤ７に記憶させる。例えば、ＣＰＵ５１は、動画データを、動画データの受信時刻と対応付けて記憶させる。
【００６０】
加速度センサＳＮ１〜ＳＮ４は、送信間隔ごとに加速度を計測し、加速度センサ情報を出力端末５へ送信する（ステップＳ１０）。ＣＰＵ５１は、加速度センサ情報を受信するごとに、加速度センサ情報に基づいて、三次元仮想空間９０における加速度センサＳＮ１〜ＳＮ４のそれぞれの座標を計算する。ＣＰＵ５１は、計算した座標をＲＡＭ５３に記憶させる（ステップＳ１１）。
【００６１】
次いで、ＣＰＵ５１は、フィギュア８３を撮影する仮想カメラが切り替わったか否かを判定する（ステップＳ１２）。操作者４２に選択された運動コンテンツが運動重視コンテンツである場合、ＣＰＵ５１は、以下の方法で判定を行う。現在の運動動作に対応する楽曲の一部の演奏パートの繰り返し再生が終わると、ＣＰＵ５１は、運動リスト情報から、次に行われる運動動作のモーション情報、運動テンポ及び楽曲ＩＤを取得する。このときに、ＣＰＵ５１は、仮想カメラが切り替わったと判定する。操作者４２に選択された運動コンテンツが楽曲重視コンテンツである場合、ＣＰＵ５１は、以下の方法で判定を行う。ミュージックシーケンサから演奏パート開始メッセージを受信したときに、仮想カメラが切り替わったと判定する。ＣＰＵ５１は、仮想カメラが切り替わったと判定した場合には（ステップＳ１２：ＹＥＳ）、ステップＳ１３に進む。一方、ＣＰＵ５１は、仮想カメラが切り替わっていないと判定した場合には（ステップＳ１２：ＮＯ）、ステップＳ１７に進む。
【００６２】
ステップＳ１３において、ＣＰＵ５１は、カメラ選択処理を実行する。図６は、出力端末５のＣＰＵ５１のカメラ選択処理の処理例を示すフローチャートである。図６に示すように、ＣＰＵ５１は、ＨＤＤ７に記憶されている近さ順位表に基づいて、現実カメラＲＣ１〜ＲＣ４の中から、切り替わり先の仮想カメラの近さ順位が高い順に、Ｎ個の現実カメラを切り換え先の候補として特定する（ステップＳ３１）。次いで、ＣＰＵ５１は、ステップＳ３２に進む。Ｎの値は、ＨＤＤ７に記憶されている。なお、Ｎの値が１である場合、ＣＰＵ５１は、特定した現実カメラを、切り換え先の現実カメラとして選択する。そして、ＣＰＵ５１は、カメラ選択処理を終了させる。
【００６３】
ステップＳ３２において、ＣＰＵ５１は、仮想カメラが切り替わってから一定時間、加速度センサＳＮ１〜ＳＮ４の投影面９１における座標を記録する。送信間隔ごとに加速度センサＳＮ１〜ＳＮ４のそれぞれから加速度センサ情報が送信されてくる。そのため、ＣＰＵ５１は、図５のステップＳ１１と同様に、加速度センサ情報が受信されるごとに、三次元仮想空間９０における加速度センサの座標を計算する。ＣＰＵ５１は、加速度センサの三次元空間９１における位置の座標を、切り換え先の候補の現実カメラに対応する投影面９１における座標に変換する。そして、ＣＰＵ５１は、投影面９１における加速度センサの座標をＲＡＭ５３に記憶させる。
【００６４】
次いで、ＣＰＵ５１は、一定時間の間の加速度センサＳＮ１〜ＳＮ４のそれぞれの投影面９１における移動距離を、切り換え先の候補の現実カメラごとに計算する。そして、ＣＰＵ５１は、切り換え先の候補の現実カメラごとに、加速度センサＳＮ１〜ＳＮ４の移動距離の合計値を、移動量として計算する。（ステップＳ３３）次いで、ＣＰＵ５１は、切り換え先の候補の現実カメラのうち、移動量の合計値が最も大きい現実カメラを、切り換え先の現実カメラとして選択する（ステップＳ３４）。そして、ＣＰＵ５１は、カメラ選択処理を終了させる。
【００６５】
カメラ選択処理が終了すると、図５に示すように、ＣＰＵ５１は、選択した切り換え先の現実カメラのカメラＩＤを含むカメラ切替命令を、現実カメラＲＣ１〜ＲＣ４に送信する（ステップＳ１４）。現実カメラＲＣ１〜ＲＣ４のうち、カメラ切替命令に設定されたカメラＩＤが示す現実カメラは、利用者４１の撮影を開始する（ステップＳ１５）。そして、撮影を開始した現実カメラは、撮影した動画を表す動画データを出力端末５へ送信する（ステップＳ１６）。ＣＰＵ５１は、受信した動画データをＨＤＤ７に記憶させる。例えば、ＣＰＵ５１は、動画データを、動画データの受信時刻と対応付けて記憶させる。カメラ切替命令に設定されたカメラＩＤが示す現実カメラと異なる現実カメラのうち、今まで撮影を行っていた現実カメラは、撮影を停止する。
【００６６】
次いで、ＣＰＵ５１は、運動レッスンが終了したか否かを判定する（ステップＳ１７）。操作者４２に選択された運動コンテンツが運動重視コンテンツである場合、ＣＰＵ５１は、以下の方法で判定を行う。ＣＰＵ５１は、運動リスト情報に設定されている全ての楽曲ＩＤに対応する楽曲の再生処理が終了した場合に、運動レッスンが終了したと判定する。操作者４２に選択された運動コンテンツが楽曲重視コンテンツである場合、ＣＰＵ５１は、以下の方法で判定を行う。ＣＰＵ５１は、ミュージックシーケンサから演奏終了メッセージを受信したときに、運動レッスンが終了したと判定する。ＣＰＵ５１は、運動レッスンが終了していないと判定した場合には（ステップＳ１７：ＮＯ）、ステップＳ９に進む。そして、ＣＰＵ５１は、切り換え先の現実カメラからの動画データの受信、及び、加速度センサＳＮ１〜ＳＮ４からの加速度センサ情報の受信を継続する。一方、ＣＰＵ５１は、運動レッスンが終了したと判定した場合には（ステップＳ１７：ＹＥＳ）、ステップＳ１９に進む。施設４がカラオケ店舗である場合、ＣＰＵ５１は、ステップＳ１７において、楽曲の再生が終了したか否かを判定する。この場合、ＣＰＵ５１は、ミュージックシーケンサから演奏終了メッセージを受信したときに、楽曲の再生が終了したと判定する。
【００６７】
運動レッスンが終了すると、利用者４１は、運動を終了させる（ステップＳ１８）。ステップＳ１９において、ＣＰＵ５１は、仮想カメラの切り換えごとに特定された現実カメラから受信した動画データに基づいて、利用者運動動画データを生成する。例えば、ＣＰＵ５１は、ＨＤＤ７に記憶された各動画データを、動画データに対応付けられた受信時間の古い順に接続する。これにより、ＣＰＵ５１は、一続きの利用者運動動画データを生成する。そして、ＣＰＵ５１は、生成した利用者運動動画データをＨＤＤ７に記憶させる。
【００６８】
以上説明したように、本実施形態によれば、表示に用いられる運動動画を撮影する仮想カメラがフィギュア８３による運動の進行に沿って切り替わったとき、ＣＰＵ５１が、現実カメラＲＣ１〜ＲＣ４のうち、切り替え先の仮想カメラの位置に対応する現実カメラを特定する。そして、ＣＰＵ５１が、仮想カメラの切り替えごとに特定した現実カメラにより撮影された動画データを繋げて、一続きの利用者運動動画データを生成する。そのため、利用者４１の運動動作が分かりやすい方向から撮影された動画を生成することができる。
【００６９】
なお、上記実施形態においては、運動動作の切り替わりに応じて、又は、演奏パートの切り替わりに応じて、仮想カメラが切り替わっていた。しかしながら、別の方法で仮想カメラが切り替わってもよい。例えば、運動コンテンツ生成システム１の管理者は、所望のタイミングでキューポイントイベントが出力されるように、楽曲データにキューポイントイベントを設定してもよい。キューポイントイベントには、仮想カメラの仮想カメラＩＤが含まれる。ＣＰＵ５１は、図５のステップＳ１２において、ミュージックシーケンサからキューポイントイベントを受信したときに、仮想カメラが切り替わったと判定する。そして、ＣＰＵ５１は、キューポイントイベントに含まれる仮想カメラＩＤが示す仮想カメラを、切り換え先の仮想カメラとして特定する。
【００７０】
また、上記実施形態においては、運動レッスンが行われている間、フィギュア８３による運動の進行に沿って仮想カメラが切り替わったときに、ＣＰＵ５１が、利用者４１を撮影する現実カメラを切り替えていた。しかしながら、ＣＰＵ５１は、現実カメラの切り替えを行わなくてもよい。利用者運動動画データが再生される際に、利用者４１の運動の進行に沿って動画が切り替わればよい。動画が切り替わるとは、或る現実カメラで撮影された動画から、別の現実カメラで撮影された動画に、動画の表示が切り替わることである。例えば、ＣＰＵ５１は、運動レッスンが行われている間を通して、全ての現実カメラＲ１〜Ｒ４に撮影を実行させてもよい。ＣＰＵ５１は、現実カメラＲ１〜Ｒ４のそれぞれから送信されてくる動画データをそれぞれＨＤＤ７に記憶させてもよい。そして、ＣＰＵ５１は、ＨＤＤ７に記憶された各動画データから必要な部分を抽出し、抽出した部分を繋げて一続きの利用者運動動画データを生成してもよい。ＣＰＵ５１は、例えば、以下の方法で必要な部分を特定してもよい。ＣＰＵ５１は、図５のステップＳ１３において切り換え先の現実カメラとを選択すると、運動レッスンが開始されてから、切り替え先の現実カメラを選択したときまでの経過時間を取得する。例えば、ＣＰＵ５１は、運動レッスンが開始された以降にミュージックシーケンサから同期メッセージを受信した回数をカウントすることにより、経過時間を取得する。ＣＰＵ５１は、切り換え先の現実カメラのカメラＩＤと経過時間とを対応付けて、ＲＡＭ５３に記憶させる。運動レッスンが終了すると、ＣＰＵ５１は、切り換え先の現実カメラのカメラＩＤに対応付けられた経過時間を、動画データにおいて動画が切り替わる再生位置とする。再生位置は、動画データの再生開始からの時間的な位置である。ＣＰＵ５１は、切り換え先の現実カメラのカメラＩＤと、動画が切り替わる再生位置とに基づいて、各動画データにおいて必要な部分を特定する。
【００７１】
また、上記実施形態においては、ＣＰＵ５１は、加速度センサＳＮ１〜ＳＮ４からの加速度センサ情報を用いて、利用者４１の身体部位の移動量を計算していた。しかしながら、ＣＰＵ５１は、例えば、現実カメラＲＣ１〜ＲＣ４により撮影される動画に基づいて、移動量を計算してもよい。ＣＰＵ５１は、仮想カメラが切り替わったとき、切り換え先の仮想カメラの位置に対応する複数の現実カメラのそれぞれにより、一定時間撮影を実行させる。そして、ＣＰＵ５１は、各現実カメラから動画データを受信する。ＣＰＵ５１は、動画データを構成する静止画のフレームごとに、フレームから利用者４１の映像を認識する。ＣＰＵ５１は、公知の画像認識技術を用いることで、利用者４１の映像を認識することができる。ＣＰＵ５１は、例えば、フレーム内における利用者４１の手首の位置及び足首の位置を特定する。ＣＰＵ５１は、連続するフレーム間で、フレーム内における利用者４１の手首の位置及び足首の位置の移動量を計算する。そして、ＣＰＵ５１は、一定時間における移動量の合計を計算する。
【符号の説明】
【００７２】
１  運動コンテンツ生成システム
２  配信サーバ
３  データベース
５  出力端末
７  ＨＤＤ
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５６  表示制御部
６０  ネットワーク通信部
６３  音声出力部
６８  マイク
５７  モニタ
６４  スピーカ
６７  ディスプレイ
６９  センサ受信部
Ｒ１〜Ｒ４  現実カメラ
ＳＮ１〜ＳＮ４  加速度センサ
【図１】
2014068685.tif 000003
【図２】
2014068685.tif 000004
【図３】
2014068685.tif 000005
【図４】
2014068685.tif 000006
【図５】
2014068685.tif 000007
【図６】
2014068685.tif 000008