仮想空間提供サーバ、仮想空間提供システム及びコンピュータプログラム
【課題】本発明の仮想スタジアムサーバでは、ユーザは所望の選手のアバターを選択し、その選手の視点から試合を見ることができる。
【解決手段】
各選手7には、複数の無線タグ9が設けられている。実位置管理部6は、無線タグ9とアンテナ5との通信状態に基づいて、各選手7及びボール8の実位置を検出し、仮想空間提供サーバ1に送信する。仮想空間提供サーバ1は、実位置のデータに基づいて、実スタジアム3内で行われた試合の様子を、仮想スタジアム1A内にアバター7Aの動きによって再現する。ユーザが所望の選手7の視点を選択すると、仮想空間提供サーバ1は、選択された選手7の視点から見える試合状態を生成して、クライアントコンピュータ2に送信する。
【解決手段】
各選手7には、複数の無線タグ9が設けられている。実位置管理部6は、無線タグ9とアンテナ5との通信状態に基づいて、各選手7及びボール8の実位置を検出し、仮想空間提供サーバ1に送信する。仮想空間提供サーバ1は、実位置のデータに基づいて、実スタジアム3内で行われた試合の様子を、仮想スタジアム1A内にアバター7Aの動きによって再現する。ユーザが所望の選手7の視点を選択すると、仮想空間提供サーバ1は、選択された選手7の視点から見える試合状態を生成して、クライアントコンピュータ2に送信する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想空間を提供するサーバ、システム及びコンピュータプログラムに関する。
【背景技術】
【0002】
ネットワーク上に設けられたサーバ内に仮想的な空間を生成し、この仮想空間内で、ユーザを象徴するキャラクタ(アバター)を操作することができるようにしたシステムは、知られている(特許文献1)。この文献に記載の従来技術では、サーバ内の仮想空間でスポーツ試合や映画を放送し、複数のユーザが視聴できるようになっている。
【0003】
また、各選手から見える映像情報を各選手毎に予め用意しておき、これら各選手毎の映像情報を各チャネルにそれぞれ割り当てて、放送するようにした3次元映像の送受信システムも知られている(特許文献2)。この3次元映像の送受信システムでは、視聴者は、所望の選手を選択し、この選手の視線から見える映像をディスプレイに表示させることができる。
【特許文献1】特開2005−100053号公報
【特許文献2】特開2001−028765号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
上記第1の文献に記載の従来技術では、複数のユーザがアバターを介して、仮想空間内のスポーツ試合等を楽しむことができるが、通常の視聴者と同様に、観客の視点または映像の編集者の視点からスポーツ試合を観戦するだけである。従って、臨場感に乏しく、また、選手の立場でスポーツ試合を追体験等することができない。
【0005】
これに対し、上記第2の文献に記載の従来技術では、選手の視点から試合を視聴することができ、臨場感溢れる映像を楽しむことができる。しかし、この従来技術では、選手の視線から見える映像を各選手毎に予めそれぞれ用意する必要があり、編集作業に手間とコストがかかる。また、各選手の視線に応じた映像を多重化して放送する必要があるため、送信側及び受信側のデータ処理も複雑化し、データ通信量も大幅に増大する。
【0006】
そこで、本発明の目的は、対象者の視線で見える状況を、比較的簡易な構成で仮想空間に再現できる仮想空間提供サーバ、仮想空間提供システム及びコンピュータプログラムを提供することにある。本発明の更なる目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【0007】
上記課題を解決すべく、本発明の一つの観点に従う仮想空間提供サーバは、対象者の実空間における実位置に基づいて、前記対象者を象徴するキャラクタを仮想空間内に表示させる仮想空間提供サーバであって、ユーザにより操作されるクライアントコンピュータと通信ネットワークを介して双方向通信するための通信手段と、対象者が存在する実空間を模した仮想空間を生成するための仮想空間生成手段と、対象者の実位置に応じて、キャラクタの仮想空間における座標を決定するための座標決定手段と、対象者の実空間における視線として予め設定されている仮想視線及びキャラクタの座標に応じて、キャラクタから見える仮想空間の状態を、通信手段を介してクライアントコンピュータに送信し、クライアントコンピュータの画面に表示させるための仮想空間表示手段と、を備える。
【0008】
本発明の実施形態では、実空間には、複数の対象者が存在し、ユーザは、各対象者のうちいずれか一つの対象者に関するキャラクタを選択可能となっている。
【0009】
本発明の実施形態では、ユーザは、仮想視線または仮想空間の外部から仮想空間を見る外部視線のうちいずれか一方を選択することができ、仮想空間表示手段は、仮想視線または外部視線のうちユーザにより選択された視線とキャラクタの座標に応じて、仮想空間の状態を表示させる。
【0010】
本発明の実施形態では、対象者の動作を検出するための動作検出手段をさらに設け、仮想空間表示手段は、動作検出手段により検出された動作に応じて、キャラクタの動作を制御する。
【0011】
本発明の実施形態では、対象者には複数の無線タグが予め設けられており、かつ、実空間には各無線タグと交信するための複数のアンテナが予め設けられており、各無線タグとアンテナとの交信状態に基づいて、対象者の位置が検出される。
【0012】
本発明の実施形態では、対象者は競技者であり、仮想空間は競技者が競技を行う実スタジアムを模した仮想的なスタジアムとして構成される。
【0013】
本発明の他の観点に従う仮想空間提供システムは、通信ネットワークを介して接続されたクライアントコンピュータに、競技者による競技を仮想的に表示させる仮想空間を提供する仮想空間提供システムであって、競技者の実空間における実位置を検出するための実位置検出手段と、検出された実位置に応じて、競技者を象徴するキャラクタを仮想空間に表示させる仮想空間提供サーバとを備え、実位置検出手段は、競技者に予め設けられた複数の無線タグと、これら各無線タグと交信するための複数のアンテナと、これら各アンテナと各無線タグとの交信状態に基づいて、競技者の実位置を測定するための測定手段と、この測定手段により測定された競技者の実位置を仮想空間提供サーバに送信するための通信手段と、を備えており、仮想空間提供サーバは、ユーザにより操作されるクライアントコンピュータ及び実位置検出手段と通信ネットワークを介してそれぞれ通信するための通信手段と、競技者が存在する実空間を模した仮想空間を生成するための仮想空間生成手段と、競技者の実位置に応じて、キャラクタの仮想空間における座標を決定するための座標決定手段と、競技者の実空間における視線として予め設定されている仮想視線及びキャラクタの座標に応じて、キャラクタから見える仮想空間の状態を、通信手段を介してクライアントコンピュータに送信し、クライアントコンピュータの画面に表示させるための仮想空間表示手段と、を備える。
【0014】
本発明のさらに別の観点に従うコンピュータプログラムは、通信ネットワークを介してクライアントコンピュータに接続されるサーバコンピュータに、対象者の存在する実空間をもした仮想空間を生成するための仮想空間生成手段と、対象者の実空間における実位置に基づいて、対象者を象徴するキャラクタの仮想空間における座標を決定するための座標決定手段と、対象者の実空間における視線として予め設定されている仮想視線及びキャラクタの座標に応じて、キャラクタから見える仮想空間の状態をクライアントに送信して表示させるための仮想空間表示手段と、をそれぞれ実現させる。
【発明を実施するための最良の形態】
【0015】
以下、図面に基づき、本発明の実施の形態を説明する。図1は、本実施形態の全体概念を示す説明図である。本実施形態では、サーバ1の内部に仮想スタジアム1Aを形成し、仮想スタジアム1A内に選手を模したアバター7Aを配置させる。仮想空間としての仮想スタジアム1Aを提供するサーバ1のことを、以下、仮想空間提供サーバと呼ぶ。
【0016】
仮想空間提供サーバ1は、例えば、仮想スタジアム制御部1Bと、選手アバター制御部1Cと、座標変換部1Dとを備えることができる。仮想スタジアム制御部1Bは、仮想スタジアム1Aを生成し、ユーザにより選択された視線から見える仮想スタジアムの状態をクライアントコンピュータ2に提供するものである。選手アバター制御部1Cは、仮想スタジアム1Aに各選手のアバター7A及びボール画像8Aをそれぞれ配置し、動作させるものである。座標変換部1Dは、後述の実位置管理部6から受信した位置データを、仮想スタジアム1Aの座標に変換するものである。
【0017】
実際のスタジアムである実スタジアム3には、複数のアンテナ5及び実位置管理部6が設けられている。実位置管理部6は、例えば、インターネット等の通信ネットワーク4を介して、仮想空間提供サーバ1と接続されている。
【0018】
例えば、サッカー等のスポーツ試合に参加する各選手7及びボール8には、それぞれ無線タグ9が予め設けられている。選手7には、例えば、その上半身及び左右両脚に無線タグ9がそれぞれ設けられる。上半身に設けられる無線タグ9によって、その選手の実位置を検出することができる。また、左右の両脚、例えば、左右のシンガードに設けられた無線タグによって、その選手の脚の動きを検出することができる。ボール8には、例えば、その中心に無線タグ9が1つ設けられる。各無線タグ9には、それぞれを識別するための情報や設置場所に関する情報が予め記憶されている。なお、後述の実施例からも明らかとなるように、選手7及びボール8に限らず、主審や副審等にも無線タグ9を設け、仮想スタジアム1A内に主審や副審等のアバターを表示させることもできる。各アンテナ5は、その通信圏内に位置する各無線タグ9とそれぞれ交信し、その通信状態や通信結果を実位置管理部6に送信する。
【0019】
実位置管理部6は、例えば、位置測定部6A及び位置データ生成部6Bを備える。位置測定部6Aは、各アンテナ5から得られた情報に基づいて、選手7及びボール8の実位置を算出する。実位置とは、実スタジアム3内における位置を示す。簡単には、各アンテナ5が各無線タグ9からそれぞれ受信する電波の強度等に基づいて、実スタジアム3内における位置を検出可能である。位置データ生成部6Bは、位置測定部6Aで算出された実位置に基づいて位置データを生成し、この生成された位置データを仮想空間提供サーバ1に送信する。
【0020】
仮想空間提供サーバ1の座標変換部1Dは、実位置管理部6から受信した位置データ(実位置データ)を、仮想スタジアム1A内の座標に変換する。実スタジアム3の物理的構成(建物の各部の寸法等)は既知であり、仮想スタジアム1Aは実スタジアム3に似せて構築されている。仮想スタジアム1Aの各座標と実スタジアム3の実位置との対応関係は予めマッピングテーブル等で定義することができる。従って、実位置管理部6から受信した実位置を仮想スタジアム1Aの座標に変換することができる。
【0021】
選手アバター制御部1Cは、変換された座標位置に、選手7のアバター7Aやボール8の画像(以下、便宜上ボールのアバターと呼ぶ)8Aを表示させる。各アバター7A,8Aの画像は、予め仮想空間提供サーバ1内に記憶されている。選手アバター制御部1Cは、選手7やボール8の実位置及び移動速度に応じた画像を選択し、仮想スタジアム1Aに表示させることができる。
【0022】
仮想スタジアム制御部1Bは、仮想スタジアム1Aの全体を制御する。仮想スタジアム制御部1Bは、ユーザからの要求に応じて、ユーザにより選択された視点から見える仮想スタジアム1Aの状態をクライアントコンピュータ2に送信する。
【0023】
クライアントコンピュータ2は、例えば、ウェブブラウザや仮想スタジアム表示用クライアントソフトウェア等のような操作部2Aを備えている。ユーザは、操作部2Aを介して、所望の視点を選択することができる。選択された視点は、通信ネットワーク4を介して仮想空間提供サーバ1に送信される。
【0024】
仮想空間提供サーバ1は、複数種類の視点を提供することができる。一つの種類の視点は内部視点であり、他の一つの種類の視点は外部視点である。内部視点とは、仮想スタジアム1A内から仮想スタジアム1Aの状況を見るための視点である。例えば、ユーザは、所望の選手7をいずれか一人選択し、この選択された選手7の視点で仮想スタジアム1Aの状況(即ち、試合の状況等)を見ることができる。各選手7の視線は、進行方向(前方向)を向いているものとして予め設定されている。外部視点とは、仮想スタジアム1Aの外部から仮想スタジアム1Aの状況を見るための視点である。例えば、ユーザは、テレビジョン放送等で視聴する場合と同様に、試合の状況を見ることもできる。
【0025】
このように構成される本実施形態では、実スタジアム3内における各選手7等の視点から見える仮想スタジアム1Aの状態をクライアントコンピュータ2に表示させることができる。従って、ユーザは、所望の選手の視点で試合を楽しむことができ、戦術分析等を行うこともできる。
【0026】
本実施形態では、各選手7やボール8に無線タグ9を予め設けておき、無線タグ9とアンテナ5との通信状態に基づいて実位置を検出し、実位置を仮想スタジアム1Aの座標に変換して、アバター7A,8Aを表示させる。従って、前記第2の文献に記載された従来技術のように、各選手毎の視点から見た映像データを予め用意しておく必要がなく、仮想空間提供サーバ1のデータ処理負荷を大幅に低減することができる。
【0027】
また、本実施形態では、実際の映像データではなく、ユーザの選択した視点から見える仮想スタジアム1Aの状態のみを仮想空間提供サーバ1からクライアントコンピュータ2に送信する。従って、仮想空間提供サーバ1からクライアントコンピュータ2に送信するデータ量を大幅に低減することができる。
【0028】
本実施形態では、選手7の両脚にも無線タグ9をそれぞれ設け、選手7の実位置及び両脚の実位置に基づいて、選手7の動作状態を判別し、この判別された動作状態をアバター7Aに反映させることができる。従って、簡易なデータ処理でアバター7Aの動作を制御することができ、仮想空間提供サーバ1のデータ処理負荷及びデータ量をより一層低減させることができる。以下、本実施形態をより詳細に説明する。
【実施例1】
【0029】
図2は、本実施例による仮想空間提供システムの全体構成を示す説明図である。仮想空間提供システムは、例えば、仮想空間提供サーバとしての仮想スタジアムサーバ10と、実位置検出手段としての実位置解析サーバ20と、ウェブサーバ30及びクライアントコンピュータ40とを備えて構成される。これら各コンピュータ10,20,30,40は、インターネット等のような通信ネットワークCNを介して接続されている。
【0030】
仮想スタジアムサーバ10は、そのコンピュータ内部に仮想空間としての仮想スタジアムを構築し、複数のクライアントコンピュータ40にそれぞれ提供するものである。仮想スタジアムサーバ10は、例えば、一つまたは複数のサーバコンピュータから構成することができる。仮想スタジアムサーバ10を複数のサーバコンピュータから構成する場合、複数のサーバコンピュータによってクラスタを形成し、負荷を分散させることができる。仮想スタジアムサーバ10の詳細は図8と共に後述する。
【0031】
実位置解析サーバ20は、実際のスタジアムでスポーツ試合を行っている選手(競技者)や審判及びボールの位置をリアルタイムに解析し、スタジアム内における実際の位置に関する情報を仮想スタジアムサーバ10に提供するものである。実位置解析サーバ20については、図3と共に後述する。
【0032】
ウェブサーバ30は、クライアントコンピュータ40との間で情報を交換するためのものである。ウェブサーバ30は、仮想スタジアムサーバ10と同一のサーバコンピュータ上に設けることもできる。仮想スタジアムサーバ10により生成される仮想スタジアムは、ウェブサーバ30を介して、各クライアントコンピュータ40に提供される。従って、仮想スタジアムは、クライアントコンピュータ40に設けられているウェブブラウザに表示される。なお、ウェブブラウザとは別の専用のソフトウェアをクライアントコンピュータ40にインストールし、この専用ソフトウェアによって仮想スタジアムにアクセスする構成でもよい。この場合は、ウェブサーバ30を廃止することができる。
【0033】
クライアントコンピュータ40は、ユーザによって使用されるコンピュータであり、典型的には、パーソナルコンピュータとして構成される。これに限らず、例えば、携帯電話や携帯情報端末等のように構成することもできる。
【0034】
図3は、実位置解析サーバ20の構成を簡略化して示す説明図である。ここでは、サッカースタジアムを例に挙げて説明する。実際の試合が行われる実スタジアム50内には、例えば、サッカーコート51の四隅にそれぞれアンテナ52が設けられている。各アンテナ52は、図4及び図5と共に後述する無線タグ60と交信する。
【0035】
実位置解析サーバ20は、例えば、制御部200と、記憶部210と、信号処理部220及び通信部230とを備えて構成される。制御部200は、例えば、位置測定部201及び位置データ生成部202を備える。位置測定部201は、各アンテナ52と各無線タグ60との通信状態に基づいて、実スタジアム50内の測定対象物である選手70,審判80及びボール90の実位置を測定する。実位置は、実スタジアム50のX,Y,Zの各軸方向の値として、即ち三次元空間の座標値として測定される。そして、位置データ生成部202は、測定された実位置に基づいて位置データを生成する。生成された位置データは、通信部230から通信ネットワークCNを介して、仮想スタジアムサーバ10に送信される。
【0036】
記憶部210には、例えば、基準配置情報211及び実位置情報212がそれぞれ記憶されている。基準配置情報211には、例えば、サッカーコート51の縦横の寸法、ベンチの位置、観客席の位置、アンテナ52の設置位置等のような実スタジアム50の構成に関する情報が含まれている。実位置情報212には、選手70,審判80,ボール90の実位置に関する情報及び検出された時刻の情報が含まれている。実位置情報212は、実際の試合に基づいてリアルタイムで生成され、蓄積されていく。試合開始から試合終了までの実位置情報212を用いることにより、過去に行われた試合であっても仮想スタジアムに当時の様子を再現することができる。
【0037】
図4は、無線タグ60の取付方法を模式的に示す説明図である。本実施例では、追跡対象物の性質に応じて、無線タグ60の取付方法を変える。図4(a)は、選手70に無線タグ60を取り付ける様子を示す。各選手70には、例えば、3個の無線タグ60がそれぞれ予め取り付けられる。一つ目の無線タグ60は、選手70の位置検出に使用されるもので、例えば、選手70の上半身のユニフォーム71に設けられる。二つ目及び三つ目の各無線タグ60は、選手70の両脚の位置を検出するもので、例えば、左右のシンガード72に設けられる。
【0038】
図4(b)は、審判に無線タグ60を取り付ける様子を示す。審判80には、少なくとも上半身のユニフォーム81に無線タグ60が設けられる。この無線タグ60は、審判80の位置を検出するためのものである。審判80が旗83を所持する場合は、旗83にも無線タグ60が設けられる。この無線タグ60は、旗83の位置を検出するためのものである。なお、ボール90には、例えば、その中心部に無線タグ60が設けられる。
【0039】
図5は、無線タグ60の構成例を示すブロック図である。図5(a)は、無線タグ60の基本的な構成を示す。無線タグ60は、例えば、アンテナ61と、無線インターフェース(図中「I/F」)部62と、制御部63及び記憶部64を備えて構成される。
【0040】
アンテナ61は、スタジアム50に設置されたアンテナ52から発信された電波を受信したり、電波を送信するために使用される。無線インターフェース部62は、無線通信を担当する回路である。制御部63は、無線タグ60の動作を制御する回路である。記憶部64は、例えば、フラッシュメモリ等のような書換可能な不揮発性メモリから構成することができる。
【0041】
記憶部64には、例えば、数十バイト程度のシステムエリアと、数百〜数千バイト程度のユーザエリアとを設けることができる。システムエリアには、例えば、各無線タグ60を世界で一意に特定するためのユニークID等が記憶される。ユーザエリアには、無線タグ60が設けられる対象物(選手70,審判80,ボール90)を識別するための無線タグID等を予め記憶させる。
【0042】
無線タグ60の動作を先に説明する。スタジアム50に設置されたアンテナ52からは、制御信号を含んだ電波が発信される。無線タグ60のアンテナ61は、アンテナ52から発信された電波を受信する。無線インターフェース部62は、例えば、電磁誘導等を利用することにより、受信した電波を電源電圧に変換する。制御部63は、この電源電圧によって作動する。制御部63は、受信電波に含まれている制御信号に応じて、記憶部64から無線タグIDを読み出し、アンテナ61から送信させる。無線タグ60から送信された無線タグIDは、アンテナ52によって受信される。なお、無線タグ60から送信する情報には、無線タグID以外の情報を含めてもよい。また、無線タグ60内に、例えば、小型電池や熱電変換素子、光電変換素子等の内蔵電源を設ける構成でもよい。
【0043】
図5(b)は、無線タグ60の別の構成例を示すブロック図である。無線タグ60には、姿勢検出センサ65を設けることもできる。姿勢検出センサ65とは、対象物の姿勢、即ち、向いている方向や運動(傾きや回転)を検出するものである。姿勢検出センサ65は、例えば、3軸加速度センサや3軸磁気センサ等から構成することができる。姿勢検出センサ65を無線タグ60に内蔵した場合、姿勢検出センサ65からの検出信号及び無線タグIDをアンテナ61から送信させることができる。これにより、実位置解析サーバ20は、対象物の位置のみならず、その姿勢についても知ることができる。
【0044】
図6には、実位置解析サーバ20及び仮想スタジアムサーバ10が、各無線タグ60に関する情報を管理するためのテーブルT1が示されている。各無線タグ60には、タグ属性と、データ種別と、無線タグIDと、値とが対応付けられる。「タグ属性」とは、その無線タグ60が設けられている対象物の種類を示す。選手70に設けられる無線タグ60には、各選手70を識別するための情報(選手1−1,1−n,2−1,2−n)がタグ属性として対応付けられる。審判80に設けられる無線タグ60には、審判80を識別するための情報(主審,副審1,副審2)がタグ属性として対応付けられる。ボール90に設けられる無線タグ60には、ボール90を識別するための情報(ボール)がタグ属性として対応付けられる。
【0045】
「データ種別」とは、各無線タグ60に関連づけられるデータの種別を示す。各無線タグ60には、その設置場所に応じたデータが関連づけられる。ボール属性または主審属性の各無線タグ60には、位置データが関連づけられる。即ち、ボールや主審に設けられた無線タグ60との通信状態によって、ボールや主審の位置が測定される。副審属性を有する無線タグ60のうち、審判80のユニフォーム81に設けられている無線タグ60には位置データが関連づけられ、旗83に設けられている無線タグ60には旗83の動作を示すフラッグデータが関連付けられる。選手属性を有する無線タグ60の場合、選手70のユニフォーム71に設けられている無線タグ60には位置データが、左右のシンガード72に設けられている無線タグ60には脚の位置データが、それぞれ関連づけられる。
【0046】
「無線タグID」とは、各無線タグ60をそれぞれ識別するための情報である。無線タグIDは、仮想スタジアムシステムの運営者等が自由に設定することができる。「値」とは、その無線タグ60に関して実位置解析サーバ20が管理するデータの型を示す。「xyz」とは、実スタジアム50のX軸方向、Y軸方向及びZ軸方向の三次元の位置座標であることを示す。「1/0」とは、旗83の上げ下げ状態を示す。「1」の場合は旗83が上げられた状態を、「0」の場合は旗83が下げられた状態を、それぞれ示す。
【0047】
図7は、実位置解析サーバ20から仮想スタジアムサーバ10に送信される位置データの構成を模式的に示す説明図である。この位置データは、例えば、D1〜Dnの複数のパケットから構成することができる。各パケットには、無線タグID及びデータの値とが含まれている。仮想スタジアムサーバ10は、テーブルT1を参照することにより、そのパケットに含まれているデータが、どの対象物に関するデータであるのかを直ちに特定することができる。
【0048】
図8は、仮想スタジアムサーバ10の構成例を示すブロック図である。仮想スタジアムサーバ10は、例えば、制御部100と、記憶部120及び通信部130を備えて構成される。
【0049】
制御部100は、例えば、少なくとも一つ以上のCPU(Central Processing Unit)等を備えて構成されている。制御部100は、ROM(Read Only Memory)等に予め記憶されたプログラムを読み込んで実行することにより、仮想スタジアムを構築し、ユーザにより選択された視点から見える状態をクライアントコンピュータ40に送信する。
【0050】
記憶部120は、例えば、RAM(Random Access Memory)やフラッシュメモリ、ハードディスク等の記憶デバイスから構成される。記憶部120には、例えば、ユーザ管理情報121と、仮想スタジアム管理情報122及び選手等アバター管理情報123とがそれぞれ記憶されている。
【0051】
通信部130は、通信ネットワークCNを介して、実位置解析サーバ20やクライアントコンピュータ40と双方向通信を行うものである。なお、図8では、ウェブサーバ30の図示を省略している。
【0052】
制御部100の実現する機能を説明する。制御部100は、例えば、ユーザ管理部101と、仮想スタジアム管理部102と、仮想スタジアム提供部103と、選手位置管理部104と、をそれぞれ備えることができる。
【0053】
ユーザ管理部101は、仮想スタジアムを利用する複数のユーザを管理するための機能である。ユーザ管理部101は、クライアントコンピュータ40から入力された情報を記憶部120内のユーザ管理情報121に記憶させる。また、ユーザ管理部101は、ユーザが仮想空間提供サービスにログインする場合、ユーザ認証を行う。ユーザ管理情報121の内容は、図12と共に後述する。
【0054】
選手位置管理部104は、実位置解析サーバ20から受信した位置データを仮想スタジアムの座標に変換して管理する機能である。
【0055】
仮想スタジアム管理部102は、サーバ10内に仮想スタジアムを生成し、仮想スタジアムの状態を管理するための機能である。即ち、仮想スタジアム管理部102は、仮想スタジアム管理情報122に基づいて、一つまたは複数のマップを備える仮想的なスタジアムを生成し、この仮想スタジアム内に各選手70,審判80及びボール90のアバターをそれぞれの実位置に応じて配置する。
【0056】
仮想スタジアム管理部102は、選手等アバター管理情報123に基づいて、各アバターの画像を制御する。詳細は後述するが、選手等アバター管理情報123には、各選手70等の動作状態に応じた画像データが予め記憶されている。仮想スタジアム管理部102は、実位置解析サーバ20から受信したデータに基づいて、選手や審判の動作状態に応じた画像データを読出し、アバターの表示を制御する。
【0057】
仮想スタジアム提供部103は、仮想スタジアム管理部102により生成され管理されている仮想スタジアムを、各クライアントコンピュータ40に提供する機能である。仮想スタジアム提供部103は、例えば、ウェブサーバとして構成することができる。この場合、図2中に示すウェブサーバ30は、仮想スタジアム提供部103に該当する。
【0058】
図8の下側にはクライアントコンピュータ40の構成も簡略化されて示されている。クライアントコンピュータ40は、例えば、通信部41及びクライアントソフトウェア42を備えている。通信部41は、通信ネットワークCNを介して、仮想スタジアムサーバ10と通信を行うためのものである。クライアントソフトウェア42は、仮想スタジアム提供サービスを利用するためのものである。仮想スタジアムがウェブサーバを介して提供される場合、クライアントソフトウェア42は、ウェブブラウザとして構成される。これ以外に、クライアントソフトウェア42を、仮想スタジアムサービスの専用クライアントとして構成することもできる。
【0059】
図9は、ユーザが仮想スタジアムを利用する際の視点設定を行う画面を示す。ユーザが仮想スタジアムサーバ10にログインすると、図9に示すような視点設定用のメニュー画面がクライアントコンピュータ40の画面に表示される。図9の上側には外部視点を選択する際のメニュー画面が、図9の下側には内部視点を選択する際のメニュー画面が、それぞれ示されている。
【0060】
外部視点メニューから先に説明する。外部視点とは、仮想スタジアムの外部に設定されている視点を意味する。外部視点をユーザが選択した場合、ユーザは、テレビジョン放送等を視聴する場合と同様に、仮想スタジアムの外部から試合の様子を視聴する。
【0061】
外部視点メニューには、例えば、3D表示ボタンB11と、平面表示ボタンB12と、全て表示ボタンB13と、選択表示ボタンB14と、スタートボタンB15及び再生位置調整部B16とを設けることができる。
【0062】
3D表示ボタンB11は、仮想スタジアム内の様子を三次元で表示させるためのボタンである。ユーザが3D表示ボタンB11を操作すると、3D表示の設定となり、選手70等の位置や動作状態が三次元のアバターで表示される。
【0063】
平面表示ボタンB12は、仮想スタジアム内の様子を二次元で表示させるためのボタンである。ユーザが平面表示ボタンB12を操作すると、平面表示の設定となり、選手70等の位置が例えば円状のシンボル等で二次元表示される。
【0064】
全て表示ボタンB13は、全ての対象物、即ち、各選手70,各審判80及びボール90を仮想スタジアム内に全て表示させるためのボタンである。選択表示ボタンB14は、表示可能な全対象物のうち仮想スタジアム内に表示させる対象物を選択するためのボタンである。選択表示ボタンB14には、さらに個別選択ボタンB14A,B14B,B14C,B14Dが設けられている。いずれか一方のチームの選手のみを仮想スタジアムに表示させる場合は、一側チーム選択ボタンB14Aまたは他側チーム選択ボタンB14Bのいずれかを操作すればよい。また、審判80のみを仮想スタジアムに表示させる場合は、審判選択ボタンB14Cを操作すればよい。さらに、特定の一人または複数の選手70のみを仮想スタジアムに表示させる場合は、選手指定ボタンB14Dを操作し、所望の選手名や背番号を指定すればよい。
【0065】
ユーザがスタートボタンB15を操作すると、仮想スタジアム内にユーザにより設定された条件で試合が再現される。ユーザは、再生位置調整部B16を操作することにより、所望の場面まで試合を早送りしたり巻き戻したりすることができる。
【0066】
内部視点メニューについて説明する。内部視点とは、仮想スタジアムの内部に設定されている視点を意味する。即ち、ユーザは、仮想スタジアムに表示可能な各対象物のうちいずれか一つの対象物の視点で、仮想スタジアム内の様子を見ることができる。
【0067】
内部視点メニューには、例えば、一側チーム選択ボタンB21と、他側チーム選択ボタンB22と、審判選択ボタンB23と、ボール選択ボタンB24と、スタートボタンB25及び再生位置調整部B26が設けられる。そして、一側チーム選択ボタンB21には個別選択ボタンB21A〜B21Nが、他側チーム選択ボタンB22には個別選択ボタンB22A〜B22Nが、審判選択ボタンB23には個別選択ボタンB23A〜B23Nが、それぞれ対応付けられている。これにより、ユーザは、所望の選手70,審判80またはボール90のいずれか一つの視点で、試合を見ることができる。
【0068】
図10は、外部視点で仮想スタジアムを平面表示させた場合の例を簡略化して示す説明図である。図10(a)は、全ての選手70,審判80及びボール90を仮想スタジアムに二次元表示させた様子を示す。視点E1は、仮想スタジアムの外部に位置する。符号80(cj)は主審を、符号80(lm)は副審をそれぞれ示す。また、符号70Aは一側チームの選手を、符号70Bは他側チームの選手をそれぞれ示す。
【0069】
図10(b)は、外部視点E1のままで、一側チームの選手のみを表示させた状態を示している。このように、ユーザは、所望のチームや選手のみを仮想スタジアムに表示させて、その動きを楽しんだり研究したりすることができる。
【0070】
図11は、内部視点で仮想スタジアムを視聴する場合の例を示す説明図である。図11(a)に示すように、ユーザは、他側チームに属する特定の選手70B(1)の視点E2を選択できる。この場合、クライアントコンピュータの画面には、図11(b)に示すように、特定の選手70B(1)の視点から見える仮想スタジアムが表示される。
【0071】
図12は、仮想スタジアムサーバ10により使用される各管理情報121〜123の構成を示す説明図である。ユーザ管理情報121から先に説明する。ユーザ管理情報121は、仮想スタジアム提供サービスを利用する各ユーザをそれぞれ管理するものである。ユーザ管理情報121は、例えば、ユーザIDと、パスワードと、選択されている視点と、内部視点を指定されたターゲット(対象物)と、現在時刻と、ワールドIDと、空間ID及びターゲットの座標とを対応付けて管理している。
【0072】
ユーザIDとは、各ユーザをそれぞれ識別するための情報である。パスワードとは、仮想スタジアムサーバ10にログインする際の認証情報の一部である。視点とは、ユーザにより選択された視点の種別を示す。ターゲットとは、内部視点として選択された対象物を特定する情報である。時刻とは試合の再生時刻を示す。ワールドIDとは、ユーザがログインしているサーバを特定するための情報である。空間IDとは、ワールド内の仮想スタジアムを識別するための情報である。即ち、一つのワールド内に複数の仮想スタジアムを設けることができる。座標とは、内部視点として選択されているターゲットの位置を示す情報である。
【0073】
仮想スタジアム管理情報122は、仮想スタジアムの構成について管理するための情報である。仮想スタジアム管理情報122は、例えば、空間IDと、空間名と、構成ファイル名と、試合IDと、ワールドIDとを対応付けて管理する。空間名とは、仮想スタジアムの名称である。構成ファイル名とは、その仮想スタジアムの構成を定義したファイルを特定するための情報である。試合IDとは、仮想スタジアムで再現されるスポーツ試合を識別するための情報である。これにより、どの仮想スタジアムがどのファイルによって定義されており、かつ、どの試合が再現されているかを判別することができる。
【0074】
選手等アバター管理情報123は、選手70,審判80及びボール90の各アバターを管理するための情報である。選手等アバター管理情報123は、例えば、アバター属性と、無線タグIDと、動作種別と、アバターデータと、時刻及び座標とを対応付けて管理している。アバター属性とは、仮想スタジアムに表示されるアバターの種別を示す。動作種別とは、そのアバターの動作の種別を示す。
【0075】
ボール及び主審のアバターは、仮想スタジアム内で位置だけが管理されるため、動作の区分は設定されない。副審のアバターには、例えば、「通常」及び「旗揚げ」の二種類の動作が設定される。「通常」とは旗83を下げている状態を示し、「旗揚げ」とは旗83を上げている状態を示す。各選手のアバターには、例えば、「通常」、「走行」、「シュート」及び「歩行」の複数種類の動作が設定される。「通常」とは停止している状態を、「走行」とは走っている状態を、「シュート」とはシュートしている状態を、「歩行」とは歩いている状態をそれぞれ示す。そして、各動作種別毎にそれぞれアバターデータが予め定義されている。なお、各アバターには、それぞれの視点が予め設定されている。簡単には、各アバターの視線は、前方を向いているものとして予め設定される。前方とは、移動する方向である。
【0076】
図13は、仮想スタジアム提供サービスの全体動作を示すフローチャートである。図中、ステップを「S」と略記する。実位置解析サーバ20は、選手70等に設けられた各無線タグ60とアンテナ52を介してそれぞれ交信し(S11)、その通信状態に基づいて各無線タグ60の実スタジアム50内における位置をそれぞれ算出する(S12)。
【0077】
実位置解析サーバ20は、算出された各実位置をそれぞれ記憶し(S13)、仮想スタジアムサーバ10に位置データを送信する(S14)。送信される位置データの構成は、図6及び図7と共に説明した通りである。
【0078】
一方、ユーザは、クライアントコンピュータ40を介して、仮想スタジアムサーバ10にログインし、メニューを選択する(S15)。仮想スタジアムサーバ10は、ユーザ認証を行い(S16)、ユーザにより選択された視点をセットする(S17)。仮想スタジアムサーバ10は、実位置解析サーバ20から受信した位置データに基づいて、選手70等の実位置を仮想スタジアム内の座標に変換する(S18)。
【0079】
仮想スタジアムサーバ10は、各選手70の両脚の位置やボール90との距離等を解析して、各選手の動作状態をそれぞれ判別する(S19)。動作を判別する一例については、図14と共に後述する。仮想スタジアムサーバ10は、各選手70等の座標及び動作状態に応じて、仮想スタジアムにアバターを配置し表示する(S20)。
【0080】
仮想スタジアムサーバ10は、ユーザによって選択された視点で、仮想スタジアムの様子を表示し(S21)、この表示状態を通信ネットワークCNを介してクライアントコンピュータ40に送信する(S22)。
【0081】
クライアントコンピュータ40は、仮想スタジアムサーバ10から受信したデータに基づいて仮想スタジアムを端末画面に表示させる(S23)。ユーザが視点の切替等を操作すると(S24)、この操作内容は仮想スタジアムサーバ10に送信され、仮想スタジアムの表示状態に反映される(S17)。
【0082】
図14は、図13中にS19で示された動作判別処理の一例を示すフローチャートである。仮想スタジアムサーバ10は、選手等の位置の変化に基づいて速度Vを算出し(S31)、算出された速度Vが予め設定されている停止判定速度V1以上であるか否かを判定する(S32)。選手等の速度Vが停止判定速度V1よりも小さい場合(S32:NO)、仮想スタジアムサーバ10は、その選手等が停止状態にあると判定する(S33)。停止状態であると判定された場合、仮想スタジアムサーバ10は、対象物が停止している状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。
【0083】
選手等の速度Vが停止判定速度V1以上の場合(S32:YES)、仮想スタジアムサーバ10は、選手等の速度Vが予め設定されている走行判定速度V2以上であるか否かを判定する(S34)。選手等の速度Vが走行判定速度V2以上の場合(S34:YES)、仮想スタジアムサーバ10は、その選手等が走行状態であると判定する(S35)。走行状態であると判定した場合、仮想スタジアムサーバ10は、対象物が走行している状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。なお、本実施例では、走行状態のアバターデータが用意されているのは、選手70のアバターのみであるが、審判80にも用意することはできる。
【0084】
選手等の速度Vが走行判定速度V2未満の場合(S34:NO)、仮想スタジアムサーバ10は、その選手等が歩行状態であると判定する(S36)。歩行状態であると判定した場合、仮想スタジアムサーバ10は、対象物が歩行している状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。なお、前記同様に、本実施例では、歩行状態のアバターデータは選手70についてのみ用意されているが、審判80にも歩行状態のアバターデータを用意する構成でもよい。
【0085】
次に、仮想スタジアムサーバ10は、動作状態の判別対象が選手70であるか否かを判定する(S37)。選手70の場合(S37:YES)、仮想スタジアムサーバ10は、両脚の位置が所定値以上変化したか否か、その選手70とボール90との位置が所定範囲内にあるか否かを判定する(S38)。例えば、選手70の位置とボール90との位置が近接しており、左右の脚の位置の差が所定値以上離れており、その後、ボール90の速度が所定値以上増加したような場合には、その選手70がシュートした場合であると判定することができる(S38)。シュート状態であると判定した場合、仮想スタジアムサーバ10は、シュート状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。なお、シュート状態に対応するアバターデータは、選手70についてのみ用意されている。
【0086】
一方、動作状態の判別対象が選手70ではないと判定した場合(S37:NO)、その判別対象が副審であるか否かを判定する(S40)。副審である場合(S40:YES)、仮想スタジアムサーバ10は、旗83の上げ下げ状態を示すフラッグデータが”1”に設定されているか否かを判定する(S41)。
【0087】
フラッグデータに1が設定されている場合(S41:YES)、仮想スタジアムサーバ10は、副審が旗83を上げている状態であると判定する(S42)。この場合、仮想スタジアムサーバ10は、旗上げ状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示させる。なお、本実施例では、旗上げ状態に対応付けられるアバターデータは、副審についてのみ用意されている。
【0088】
動作状態の判別対象が選手でも副審でもない場合(S40:NO)、及び、副審が旗83を下げている場合(S41:NO)、仮想スタジアムサーバ10は、本処理を終了する。
【0089】
本実施例は、上述のように構成されるので、以下の効果を奏する。本実施例では、各選手70,審判80,ボール90について予め設定されている仮想的な視線によって、ユーザは、仮想スタジアムの状態を見ることができる。従って、ユーザは、選手等の立場で試合を追体験することができ、試合を楽しむことができる。
【0090】
本実施例では、対象物である選手70等の実位置を無線タグ60によって検出し、検出された実位置を仮想スタジアムの座標に変換してアバターを表示させる。従って、実位置解析サーバ20は、実位置に関する情報のみを仮想スタジアムサーバ10に送信すればよく、仮想スタジアムサーバ10は、速やかに選手70等のアバターを仮想スタジアムに配置して動かすことができる。これにより、仮想スタジアムサーバ10や実位置解析サーバ20のデータ処理負荷を低減することができる。
【0091】
本実施例では、実際の映像データではなく、アバターを用いた三次元のグラフィックスデータをクライアントコンピュータ40に送信する。従って、仮想スタジアムサーバ10から各クライアントコンピュータ40に送信するデータ量を低減することができる。
【0092】
本実施例では、各選手70に複数の無線タグ60を設けることにより、各選手70の動作状態を判別し、各動作状態に予め対応付けられているアバターデータを用いて、仮想スタジアムを表示させる。従って、比較的簡易なデータ処理で、選手70のアバターを動作させることができる。
【0093】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、図13に示すフローチャートでは、実際の試合をリアルタイムで仮想スタジアムに再現するような場合を示したが、これに限らず、既に蓄積されている実位置データを用いることにより、過去の試合であっても仮想スタジアムに再現することができる。
【図面の簡単な説明】
【0094】
【図1】本発明の実施形態の概念を示す説明図である。
【図2】仮想スタジアム提供システムの全体構成を示す説明図である。
【図3】実スタジアム及び実位置解析サーバの構成を示す説明図である。
【図4】無線タグを選手等に取り付ける方法を示す説明図である。
【図5】無線タグの構成を示す説明図である。
【図6】実位置解析サーバ及び仮想スタジアムサーバによるデータの管理方法を示すテーブルである。
【図7】実位置解析サーバから仮想スタジアムサーバに送信される位置データの構成を示す説明図である。
【図8】仮想スタジアムサーバの構成を示す説明図である。
【図9】仮想スタジアムの見え方を選択するためのメニュー画面を示す説明図である。
【図10】外部視点から見える仮想スタジアムを示す説明図である。
【図11】内部視点から見える仮想スタジアムを示す説明図である。
【図12】仮想スタジアムサーバで使用される各管理情報の構成を示す説明図である。
【図13】仮想スタジアム提供スタジアムの全体動作を示すフローチャートである。
【図14】図13中のS19で示す動作判別処理の詳細を示すフローチャートである。
【符号の説明】
【0095】
1…仮想空間提供サーバ、1A…仮想スタジアム、1B…仮想スタジアム制御部、1C…選手アバター制御部、1D…座標変換部、2…クライアントコンピュータ、2A…操作部、3…実スタジアム、4…通信ネットワーク、5…アンテナ、6…実位置管理部、6A…位置測定部、6B…位置データ生成部、7…選手、7A…アバター、8…ボール、8A…ボール画像(アバター)、9…無線タグ、10…仮想スタジアムサーバ、20…実位置解析サーバ、30…ウェブサーバ、40…クライアントコンピュータ、41…通信部、42…クライアントソフトウェア、50…実スタジアム、51…サッカーコート、52…アンテナ、60…無線タグ、61…アンテナ、62…無線インターフェース部、63…制御部、64…記憶部、65…姿勢検出センサ、70,70A,70B…選手、71…ユニフォーム、72…シンガード、80…審判、81…ユニフォーム、83…旗、90…ボール、CN… 通信ネットワーク、100…制御部、101…ユーザ管理部、102…仮想スタジアム管理部、103…仮想スタジアム提供部、104…選手位置管理部、120…記憶部、121…ユーザ管理情報、122…仮想スタジアム管理情報、123…選手等アバター管理情報、130…通信部、200…制御部、201…位置測定部、202…位置データ生成部、210…記憶部、211…基準配置情報、212…実位置情報、220…信号処理部、230…通信部
【技術分野】
【0001】
本発明は、仮想空間を提供するサーバ、システム及びコンピュータプログラムに関する。
【背景技術】
【0002】
ネットワーク上に設けられたサーバ内に仮想的な空間を生成し、この仮想空間内で、ユーザを象徴するキャラクタ(アバター)を操作することができるようにしたシステムは、知られている(特許文献1)。この文献に記載の従来技術では、サーバ内の仮想空間でスポーツ試合や映画を放送し、複数のユーザが視聴できるようになっている。
【0003】
また、各選手から見える映像情報を各選手毎に予め用意しておき、これら各選手毎の映像情報を各チャネルにそれぞれ割り当てて、放送するようにした3次元映像の送受信システムも知られている(特許文献2)。この3次元映像の送受信システムでは、視聴者は、所望の選手を選択し、この選手の視線から見える映像をディスプレイに表示させることができる。
【特許文献1】特開2005−100053号公報
【特許文献2】特開2001−028765号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
上記第1の文献に記載の従来技術では、複数のユーザがアバターを介して、仮想空間内のスポーツ試合等を楽しむことができるが、通常の視聴者と同様に、観客の視点または映像の編集者の視点からスポーツ試合を観戦するだけである。従って、臨場感に乏しく、また、選手の立場でスポーツ試合を追体験等することができない。
【0005】
これに対し、上記第2の文献に記載の従来技術では、選手の視点から試合を視聴することができ、臨場感溢れる映像を楽しむことができる。しかし、この従来技術では、選手の視線から見える映像を各選手毎に予めそれぞれ用意する必要があり、編集作業に手間とコストがかかる。また、各選手の視線に応じた映像を多重化して放送する必要があるため、送信側及び受信側のデータ処理も複雑化し、データ通信量も大幅に増大する。
【0006】
そこで、本発明の目的は、対象者の視線で見える状況を、比較的簡易な構成で仮想空間に再現できる仮想空間提供サーバ、仮想空間提供システム及びコンピュータプログラムを提供することにある。本発明の更なる目的は、後述する実施形態の記載から明らかになるであろう。
【課題を解決するための手段】
【0007】
上記課題を解決すべく、本発明の一つの観点に従う仮想空間提供サーバは、対象者の実空間における実位置に基づいて、前記対象者を象徴するキャラクタを仮想空間内に表示させる仮想空間提供サーバであって、ユーザにより操作されるクライアントコンピュータと通信ネットワークを介して双方向通信するための通信手段と、対象者が存在する実空間を模した仮想空間を生成するための仮想空間生成手段と、対象者の実位置に応じて、キャラクタの仮想空間における座標を決定するための座標決定手段と、対象者の実空間における視線として予め設定されている仮想視線及びキャラクタの座標に応じて、キャラクタから見える仮想空間の状態を、通信手段を介してクライアントコンピュータに送信し、クライアントコンピュータの画面に表示させるための仮想空間表示手段と、を備える。
【0008】
本発明の実施形態では、実空間には、複数の対象者が存在し、ユーザは、各対象者のうちいずれか一つの対象者に関するキャラクタを選択可能となっている。
【0009】
本発明の実施形態では、ユーザは、仮想視線または仮想空間の外部から仮想空間を見る外部視線のうちいずれか一方を選択することができ、仮想空間表示手段は、仮想視線または外部視線のうちユーザにより選択された視線とキャラクタの座標に応じて、仮想空間の状態を表示させる。
【0010】
本発明の実施形態では、対象者の動作を検出するための動作検出手段をさらに設け、仮想空間表示手段は、動作検出手段により検出された動作に応じて、キャラクタの動作を制御する。
【0011】
本発明の実施形態では、対象者には複数の無線タグが予め設けられており、かつ、実空間には各無線タグと交信するための複数のアンテナが予め設けられており、各無線タグとアンテナとの交信状態に基づいて、対象者の位置が検出される。
【0012】
本発明の実施形態では、対象者は競技者であり、仮想空間は競技者が競技を行う実スタジアムを模した仮想的なスタジアムとして構成される。
【0013】
本発明の他の観点に従う仮想空間提供システムは、通信ネットワークを介して接続されたクライアントコンピュータに、競技者による競技を仮想的に表示させる仮想空間を提供する仮想空間提供システムであって、競技者の実空間における実位置を検出するための実位置検出手段と、検出された実位置に応じて、競技者を象徴するキャラクタを仮想空間に表示させる仮想空間提供サーバとを備え、実位置検出手段は、競技者に予め設けられた複数の無線タグと、これら各無線タグと交信するための複数のアンテナと、これら各アンテナと各無線タグとの交信状態に基づいて、競技者の実位置を測定するための測定手段と、この測定手段により測定された競技者の実位置を仮想空間提供サーバに送信するための通信手段と、を備えており、仮想空間提供サーバは、ユーザにより操作されるクライアントコンピュータ及び実位置検出手段と通信ネットワークを介してそれぞれ通信するための通信手段と、競技者が存在する実空間を模した仮想空間を生成するための仮想空間生成手段と、競技者の実位置に応じて、キャラクタの仮想空間における座標を決定するための座標決定手段と、競技者の実空間における視線として予め設定されている仮想視線及びキャラクタの座標に応じて、キャラクタから見える仮想空間の状態を、通信手段を介してクライアントコンピュータに送信し、クライアントコンピュータの画面に表示させるための仮想空間表示手段と、を備える。
【0014】
本発明のさらに別の観点に従うコンピュータプログラムは、通信ネットワークを介してクライアントコンピュータに接続されるサーバコンピュータに、対象者の存在する実空間をもした仮想空間を生成するための仮想空間生成手段と、対象者の実空間における実位置に基づいて、対象者を象徴するキャラクタの仮想空間における座標を決定するための座標決定手段と、対象者の実空間における視線として予め設定されている仮想視線及びキャラクタの座標に応じて、キャラクタから見える仮想空間の状態をクライアントに送信して表示させるための仮想空間表示手段と、をそれぞれ実現させる。
【発明を実施するための最良の形態】
【0015】
以下、図面に基づき、本発明の実施の形態を説明する。図1は、本実施形態の全体概念を示す説明図である。本実施形態では、サーバ1の内部に仮想スタジアム1Aを形成し、仮想スタジアム1A内に選手を模したアバター7Aを配置させる。仮想空間としての仮想スタジアム1Aを提供するサーバ1のことを、以下、仮想空間提供サーバと呼ぶ。
【0016】
仮想空間提供サーバ1は、例えば、仮想スタジアム制御部1Bと、選手アバター制御部1Cと、座標変換部1Dとを備えることができる。仮想スタジアム制御部1Bは、仮想スタジアム1Aを生成し、ユーザにより選択された視線から見える仮想スタジアムの状態をクライアントコンピュータ2に提供するものである。選手アバター制御部1Cは、仮想スタジアム1Aに各選手のアバター7A及びボール画像8Aをそれぞれ配置し、動作させるものである。座標変換部1Dは、後述の実位置管理部6から受信した位置データを、仮想スタジアム1Aの座標に変換するものである。
【0017】
実際のスタジアムである実スタジアム3には、複数のアンテナ5及び実位置管理部6が設けられている。実位置管理部6は、例えば、インターネット等の通信ネットワーク4を介して、仮想空間提供サーバ1と接続されている。
【0018】
例えば、サッカー等のスポーツ試合に参加する各選手7及びボール8には、それぞれ無線タグ9が予め設けられている。選手7には、例えば、その上半身及び左右両脚に無線タグ9がそれぞれ設けられる。上半身に設けられる無線タグ9によって、その選手の実位置を検出することができる。また、左右の両脚、例えば、左右のシンガードに設けられた無線タグによって、その選手の脚の動きを検出することができる。ボール8には、例えば、その中心に無線タグ9が1つ設けられる。各無線タグ9には、それぞれを識別するための情報や設置場所に関する情報が予め記憶されている。なお、後述の実施例からも明らかとなるように、選手7及びボール8に限らず、主審や副審等にも無線タグ9を設け、仮想スタジアム1A内に主審や副審等のアバターを表示させることもできる。各アンテナ5は、その通信圏内に位置する各無線タグ9とそれぞれ交信し、その通信状態や通信結果を実位置管理部6に送信する。
【0019】
実位置管理部6は、例えば、位置測定部6A及び位置データ生成部6Bを備える。位置測定部6Aは、各アンテナ5から得られた情報に基づいて、選手7及びボール8の実位置を算出する。実位置とは、実スタジアム3内における位置を示す。簡単には、各アンテナ5が各無線タグ9からそれぞれ受信する電波の強度等に基づいて、実スタジアム3内における位置を検出可能である。位置データ生成部6Bは、位置測定部6Aで算出された実位置に基づいて位置データを生成し、この生成された位置データを仮想空間提供サーバ1に送信する。
【0020】
仮想空間提供サーバ1の座標変換部1Dは、実位置管理部6から受信した位置データ(実位置データ)を、仮想スタジアム1A内の座標に変換する。実スタジアム3の物理的構成(建物の各部の寸法等)は既知であり、仮想スタジアム1Aは実スタジアム3に似せて構築されている。仮想スタジアム1Aの各座標と実スタジアム3の実位置との対応関係は予めマッピングテーブル等で定義することができる。従って、実位置管理部6から受信した実位置を仮想スタジアム1Aの座標に変換することができる。
【0021】
選手アバター制御部1Cは、変換された座標位置に、選手7のアバター7Aやボール8の画像(以下、便宜上ボールのアバターと呼ぶ)8Aを表示させる。各アバター7A,8Aの画像は、予め仮想空間提供サーバ1内に記憶されている。選手アバター制御部1Cは、選手7やボール8の実位置及び移動速度に応じた画像を選択し、仮想スタジアム1Aに表示させることができる。
【0022】
仮想スタジアム制御部1Bは、仮想スタジアム1Aの全体を制御する。仮想スタジアム制御部1Bは、ユーザからの要求に応じて、ユーザにより選択された視点から見える仮想スタジアム1Aの状態をクライアントコンピュータ2に送信する。
【0023】
クライアントコンピュータ2は、例えば、ウェブブラウザや仮想スタジアム表示用クライアントソフトウェア等のような操作部2Aを備えている。ユーザは、操作部2Aを介して、所望の視点を選択することができる。選択された視点は、通信ネットワーク4を介して仮想空間提供サーバ1に送信される。
【0024】
仮想空間提供サーバ1は、複数種類の視点を提供することができる。一つの種類の視点は内部視点であり、他の一つの種類の視点は外部視点である。内部視点とは、仮想スタジアム1A内から仮想スタジアム1Aの状況を見るための視点である。例えば、ユーザは、所望の選手7をいずれか一人選択し、この選択された選手7の視点で仮想スタジアム1Aの状況(即ち、試合の状況等)を見ることができる。各選手7の視線は、進行方向(前方向)を向いているものとして予め設定されている。外部視点とは、仮想スタジアム1Aの外部から仮想スタジアム1Aの状況を見るための視点である。例えば、ユーザは、テレビジョン放送等で視聴する場合と同様に、試合の状況を見ることもできる。
【0025】
このように構成される本実施形態では、実スタジアム3内における各選手7等の視点から見える仮想スタジアム1Aの状態をクライアントコンピュータ2に表示させることができる。従って、ユーザは、所望の選手の視点で試合を楽しむことができ、戦術分析等を行うこともできる。
【0026】
本実施形態では、各選手7やボール8に無線タグ9を予め設けておき、無線タグ9とアンテナ5との通信状態に基づいて実位置を検出し、実位置を仮想スタジアム1Aの座標に変換して、アバター7A,8Aを表示させる。従って、前記第2の文献に記載された従来技術のように、各選手毎の視点から見た映像データを予め用意しておく必要がなく、仮想空間提供サーバ1のデータ処理負荷を大幅に低減することができる。
【0027】
また、本実施形態では、実際の映像データではなく、ユーザの選択した視点から見える仮想スタジアム1Aの状態のみを仮想空間提供サーバ1からクライアントコンピュータ2に送信する。従って、仮想空間提供サーバ1からクライアントコンピュータ2に送信するデータ量を大幅に低減することができる。
【0028】
本実施形態では、選手7の両脚にも無線タグ9をそれぞれ設け、選手7の実位置及び両脚の実位置に基づいて、選手7の動作状態を判別し、この判別された動作状態をアバター7Aに反映させることができる。従って、簡易なデータ処理でアバター7Aの動作を制御することができ、仮想空間提供サーバ1のデータ処理負荷及びデータ量をより一層低減させることができる。以下、本実施形態をより詳細に説明する。
【実施例1】
【0029】
図2は、本実施例による仮想空間提供システムの全体構成を示す説明図である。仮想空間提供システムは、例えば、仮想空間提供サーバとしての仮想スタジアムサーバ10と、実位置検出手段としての実位置解析サーバ20と、ウェブサーバ30及びクライアントコンピュータ40とを備えて構成される。これら各コンピュータ10,20,30,40は、インターネット等のような通信ネットワークCNを介して接続されている。
【0030】
仮想スタジアムサーバ10は、そのコンピュータ内部に仮想空間としての仮想スタジアムを構築し、複数のクライアントコンピュータ40にそれぞれ提供するものである。仮想スタジアムサーバ10は、例えば、一つまたは複数のサーバコンピュータから構成することができる。仮想スタジアムサーバ10を複数のサーバコンピュータから構成する場合、複数のサーバコンピュータによってクラスタを形成し、負荷を分散させることができる。仮想スタジアムサーバ10の詳細は図8と共に後述する。
【0031】
実位置解析サーバ20は、実際のスタジアムでスポーツ試合を行っている選手(競技者)や審判及びボールの位置をリアルタイムに解析し、スタジアム内における実際の位置に関する情報を仮想スタジアムサーバ10に提供するものである。実位置解析サーバ20については、図3と共に後述する。
【0032】
ウェブサーバ30は、クライアントコンピュータ40との間で情報を交換するためのものである。ウェブサーバ30は、仮想スタジアムサーバ10と同一のサーバコンピュータ上に設けることもできる。仮想スタジアムサーバ10により生成される仮想スタジアムは、ウェブサーバ30を介して、各クライアントコンピュータ40に提供される。従って、仮想スタジアムは、クライアントコンピュータ40に設けられているウェブブラウザに表示される。なお、ウェブブラウザとは別の専用のソフトウェアをクライアントコンピュータ40にインストールし、この専用ソフトウェアによって仮想スタジアムにアクセスする構成でもよい。この場合は、ウェブサーバ30を廃止することができる。
【0033】
クライアントコンピュータ40は、ユーザによって使用されるコンピュータであり、典型的には、パーソナルコンピュータとして構成される。これに限らず、例えば、携帯電話や携帯情報端末等のように構成することもできる。
【0034】
図3は、実位置解析サーバ20の構成を簡略化して示す説明図である。ここでは、サッカースタジアムを例に挙げて説明する。実際の試合が行われる実スタジアム50内には、例えば、サッカーコート51の四隅にそれぞれアンテナ52が設けられている。各アンテナ52は、図4及び図5と共に後述する無線タグ60と交信する。
【0035】
実位置解析サーバ20は、例えば、制御部200と、記憶部210と、信号処理部220及び通信部230とを備えて構成される。制御部200は、例えば、位置測定部201及び位置データ生成部202を備える。位置測定部201は、各アンテナ52と各無線タグ60との通信状態に基づいて、実スタジアム50内の測定対象物である選手70,審判80及びボール90の実位置を測定する。実位置は、実スタジアム50のX,Y,Zの各軸方向の値として、即ち三次元空間の座標値として測定される。そして、位置データ生成部202は、測定された実位置に基づいて位置データを生成する。生成された位置データは、通信部230から通信ネットワークCNを介して、仮想スタジアムサーバ10に送信される。
【0036】
記憶部210には、例えば、基準配置情報211及び実位置情報212がそれぞれ記憶されている。基準配置情報211には、例えば、サッカーコート51の縦横の寸法、ベンチの位置、観客席の位置、アンテナ52の設置位置等のような実スタジアム50の構成に関する情報が含まれている。実位置情報212には、選手70,審判80,ボール90の実位置に関する情報及び検出された時刻の情報が含まれている。実位置情報212は、実際の試合に基づいてリアルタイムで生成され、蓄積されていく。試合開始から試合終了までの実位置情報212を用いることにより、過去に行われた試合であっても仮想スタジアムに当時の様子を再現することができる。
【0037】
図4は、無線タグ60の取付方法を模式的に示す説明図である。本実施例では、追跡対象物の性質に応じて、無線タグ60の取付方法を変える。図4(a)は、選手70に無線タグ60を取り付ける様子を示す。各選手70には、例えば、3個の無線タグ60がそれぞれ予め取り付けられる。一つ目の無線タグ60は、選手70の位置検出に使用されるもので、例えば、選手70の上半身のユニフォーム71に設けられる。二つ目及び三つ目の各無線タグ60は、選手70の両脚の位置を検出するもので、例えば、左右のシンガード72に設けられる。
【0038】
図4(b)は、審判に無線タグ60を取り付ける様子を示す。審判80には、少なくとも上半身のユニフォーム81に無線タグ60が設けられる。この無線タグ60は、審判80の位置を検出するためのものである。審判80が旗83を所持する場合は、旗83にも無線タグ60が設けられる。この無線タグ60は、旗83の位置を検出するためのものである。なお、ボール90には、例えば、その中心部に無線タグ60が設けられる。
【0039】
図5は、無線タグ60の構成例を示すブロック図である。図5(a)は、無線タグ60の基本的な構成を示す。無線タグ60は、例えば、アンテナ61と、無線インターフェース(図中「I/F」)部62と、制御部63及び記憶部64を備えて構成される。
【0040】
アンテナ61は、スタジアム50に設置されたアンテナ52から発信された電波を受信したり、電波を送信するために使用される。無線インターフェース部62は、無線通信を担当する回路である。制御部63は、無線タグ60の動作を制御する回路である。記憶部64は、例えば、フラッシュメモリ等のような書換可能な不揮発性メモリから構成することができる。
【0041】
記憶部64には、例えば、数十バイト程度のシステムエリアと、数百〜数千バイト程度のユーザエリアとを設けることができる。システムエリアには、例えば、各無線タグ60を世界で一意に特定するためのユニークID等が記憶される。ユーザエリアには、無線タグ60が設けられる対象物(選手70,審判80,ボール90)を識別するための無線タグID等を予め記憶させる。
【0042】
無線タグ60の動作を先に説明する。スタジアム50に設置されたアンテナ52からは、制御信号を含んだ電波が発信される。無線タグ60のアンテナ61は、アンテナ52から発信された電波を受信する。無線インターフェース部62は、例えば、電磁誘導等を利用することにより、受信した電波を電源電圧に変換する。制御部63は、この電源電圧によって作動する。制御部63は、受信電波に含まれている制御信号に応じて、記憶部64から無線タグIDを読み出し、アンテナ61から送信させる。無線タグ60から送信された無線タグIDは、アンテナ52によって受信される。なお、無線タグ60から送信する情報には、無線タグID以外の情報を含めてもよい。また、無線タグ60内に、例えば、小型電池や熱電変換素子、光電変換素子等の内蔵電源を設ける構成でもよい。
【0043】
図5(b)は、無線タグ60の別の構成例を示すブロック図である。無線タグ60には、姿勢検出センサ65を設けることもできる。姿勢検出センサ65とは、対象物の姿勢、即ち、向いている方向や運動(傾きや回転)を検出するものである。姿勢検出センサ65は、例えば、3軸加速度センサや3軸磁気センサ等から構成することができる。姿勢検出センサ65を無線タグ60に内蔵した場合、姿勢検出センサ65からの検出信号及び無線タグIDをアンテナ61から送信させることができる。これにより、実位置解析サーバ20は、対象物の位置のみならず、その姿勢についても知ることができる。
【0044】
図6には、実位置解析サーバ20及び仮想スタジアムサーバ10が、各無線タグ60に関する情報を管理するためのテーブルT1が示されている。各無線タグ60には、タグ属性と、データ種別と、無線タグIDと、値とが対応付けられる。「タグ属性」とは、その無線タグ60が設けられている対象物の種類を示す。選手70に設けられる無線タグ60には、各選手70を識別するための情報(選手1−1,1−n,2−1,2−n)がタグ属性として対応付けられる。審判80に設けられる無線タグ60には、審判80を識別するための情報(主審,副審1,副審2)がタグ属性として対応付けられる。ボール90に設けられる無線タグ60には、ボール90を識別するための情報(ボール)がタグ属性として対応付けられる。
【0045】
「データ種別」とは、各無線タグ60に関連づけられるデータの種別を示す。各無線タグ60には、その設置場所に応じたデータが関連づけられる。ボール属性または主審属性の各無線タグ60には、位置データが関連づけられる。即ち、ボールや主審に設けられた無線タグ60との通信状態によって、ボールや主審の位置が測定される。副審属性を有する無線タグ60のうち、審判80のユニフォーム81に設けられている無線タグ60には位置データが関連づけられ、旗83に設けられている無線タグ60には旗83の動作を示すフラッグデータが関連付けられる。選手属性を有する無線タグ60の場合、選手70のユニフォーム71に設けられている無線タグ60には位置データが、左右のシンガード72に設けられている無線タグ60には脚の位置データが、それぞれ関連づけられる。
【0046】
「無線タグID」とは、各無線タグ60をそれぞれ識別するための情報である。無線タグIDは、仮想スタジアムシステムの運営者等が自由に設定することができる。「値」とは、その無線タグ60に関して実位置解析サーバ20が管理するデータの型を示す。「xyz」とは、実スタジアム50のX軸方向、Y軸方向及びZ軸方向の三次元の位置座標であることを示す。「1/0」とは、旗83の上げ下げ状態を示す。「1」の場合は旗83が上げられた状態を、「0」の場合は旗83が下げられた状態を、それぞれ示す。
【0047】
図7は、実位置解析サーバ20から仮想スタジアムサーバ10に送信される位置データの構成を模式的に示す説明図である。この位置データは、例えば、D1〜Dnの複数のパケットから構成することができる。各パケットには、無線タグID及びデータの値とが含まれている。仮想スタジアムサーバ10は、テーブルT1を参照することにより、そのパケットに含まれているデータが、どの対象物に関するデータであるのかを直ちに特定することができる。
【0048】
図8は、仮想スタジアムサーバ10の構成例を示すブロック図である。仮想スタジアムサーバ10は、例えば、制御部100と、記憶部120及び通信部130を備えて構成される。
【0049】
制御部100は、例えば、少なくとも一つ以上のCPU(Central Processing Unit)等を備えて構成されている。制御部100は、ROM(Read Only Memory)等に予め記憶されたプログラムを読み込んで実行することにより、仮想スタジアムを構築し、ユーザにより選択された視点から見える状態をクライアントコンピュータ40に送信する。
【0050】
記憶部120は、例えば、RAM(Random Access Memory)やフラッシュメモリ、ハードディスク等の記憶デバイスから構成される。記憶部120には、例えば、ユーザ管理情報121と、仮想スタジアム管理情報122及び選手等アバター管理情報123とがそれぞれ記憶されている。
【0051】
通信部130は、通信ネットワークCNを介して、実位置解析サーバ20やクライアントコンピュータ40と双方向通信を行うものである。なお、図8では、ウェブサーバ30の図示を省略している。
【0052】
制御部100の実現する機能を説明する。制御部100は、例えば、ユーザ管理部101と、仮想スタジアム管理部102と、仮想スタジアム提供部103と、選手位置管理部104と、をそれぞれ備えることができる。
【0053】
ユーザ管理部101は、仮想スタジアムを利用する複数のユーザを管理するための機能である。ユーザ管理部101は、クライアントコンピュータ40から入力された情報を記憶部120内のユーザ管理情報121に記憶させる。また、ユーザ管理部101は、ユーザが仮想空間提供サービスにログインする場合、ユーザ認証を行う。ユーザ管理情報121の内容は、図12と共に後述する。
【0054】
選手位置管理部104は、実位置解析サーバ20から受信した位置データを仮想スタジアムの座標に変換して管理する機能である。
【0055】
仮想スタジアム管理部102は、サーバ10内に仮想スタジアムを生成し、仮想スタジアムの状態を管理するための機能である。即ち、仮想スタジアム管理部102は、仮想スタジアム管理情報122に基づいて、一つまたは複数のマップを備える仮想的なスタジアムを生成し、この仮想スタジアム内に各選手70,審判80及びボール90のアバターをそれぞれの実位置に応じて配置する。
【0056】
仮想スタジアム管理部102は、選手等アバター管理情報123に基づいて、各アバターの画像を制御する。詳細は後述するが、選手等アバター管理情報123には、各選手70等の動作状態に応じた画像データが予め記憶されている。仮想スタジアム管理部102は、実位置解析サーバ20から受信したデータに基づいて、選手や審判の動作状態に応じた画像データを読出し、アバターの表示を制御する。
【0057】
仮想スタジアム提供部103は、仮想スタジアム管理部102により生成され管理されている仮想スタジアムを、各クライアントコンピュータ40に提供する機能である。仮想スタジアム提供部103は、例えば、ウェブサーバとして構成することができる。この場合、図2中に示すウェブサーバ30は、仮想スタジアム提供部103に該当する。
【0058】
図8の下側にはクライアントコンピュータ40の構成も簡略化されて示されている。クライアントコンピュータ40は、例えば、通信部41及びクライアントソフトウェア42を備えている。通信部41は、通信ネットワークCNを介して、仮想スタジアムサーバ10と通信を行うためのものである。クライアントソフトウェア42は、仮想スタジアム提供サービスを利用するためのものである。仮想スタジアムがウェブサーバを介して提供される場合、クライアントソフトウェア42は、ウェブブラウザとして構成される。これ以外に、クライアントソフトウェア42を、仮想スタジアムサービスの専用クライアントとして構成することもできる。
【0059】
図9は、ユーザが仮想スタジアムを利用する際の視点設定を行う画面を示す。ユーザが仮想スタジアムサーバ10にログインすると、図9に示すような視点設定用のメニュー画面がクライアントコンピュータ40の画面に表示される。図9の上側には外部視点を選択する際のメニュー画面が、図9の下側には内部視点を選択する際のメニュー画面が、それぞれ示されている。
【0060】
外部視点メニューから先に説明する。外部視点とは、仮想スタジアムの外部に設定されている視点を意味する。外部視点をユーザが選択した場合、ユーザは、テレビジョン放送等を視聴する場合と同様に、仮想スタジアムの外部から試合の様子を視聴する。
【0061】
外部視点メニューには、例えば、3D表示ボタンB11と、平面表示ボタンB12と、全て表示ボタンB13と、選択表示ボタンB14と、スタートボタンB15及び再生位置調整部B16とを設けることができる。
【0062】
3D表示ボタンB11は、仮想スタジアム内の様子を三次元で表示させるためのボタンである。ユーザが3D表示ボタンB11を操作すると、3D表示の設定となり、選手70等の位置や動作状態が三次元のアバターで表示される。
【0063】
平面表示ボタンB12は、仮想スタジアム内の様子を二次元で表示させるためのボタンである。ユーザが平面表示ボタンB12を操作すると、平面表示の設定となり、選手70等の位置が例えば円状のシンボル等で二次元表示される。
【0064】
全て表示ボタンB13は、全ての対象物、即ち、各選手70,各審判80及びボール90を仮想スタジアム内に全て表示させるためのボタンである。選択表示ボタンB14は、表示可能な全対象物のうち仮想スタジアム内に表示させる対象物を選択するためのボタンである。選択表示ボタンB14には、さらに個別選択ボタンB14A,B14B,B14C,B14Dが設けられている。いずれか一方のチームの選手のみを仮想スタジアムに表示させる場合は、一側チーム選択ボタンB14Aまたは他側チーム選択ボタンB14Bのいずれかを操作すればよい。また、審判80のみを仮想スタジアムに表示させる場合は、審判選択ボタンB14Cを操作すればよい。さらに、特定の一人または複数の選手70のみを仮想スタジアムに表示させる場合は、選手指定ボタンB14Dを操作し、所望の選手名や背番号を指定すればよい。
【0065】
ユーザがスタートボタンB15を操作すると、仮想スタジアム内にユーザにより設定された条件で試合が再現される。ユーザは、再生位置調整部B16を操作することにより、所望の場面まで試合を早送りしたり巻き戻したりすることができる。
【0066】
内部視点メニューについて説明する。内部視点とは、仮想スタジアムの内部に設定されている視点を意味する。即ち、ユーザは、仮想スタジアムに表示可能な各対象物のうちいずれか一つの対象物の視点で、仮想スタジアム内の様子を見ることができる。
【0067】
内部視点メニューには、例えば、一側チーム選択ボタンB21と、他側チーム選択ボタンB22と、審判選択ボタンB23と、ボール選択ボタンB24と、スタートボタンB25及び再生位置調整部B26が設けられる。そして、一側チーム選択ボタンB21には個別選択ボタンB21A〜B21Nが、他側チーム選択ボタンB22には個別選択ボタンB22A〜B22Nが、審判選択ボタンB23には個別選択ボタンB23A〜B23Nが、それぞれ対応付けられている。これにより、ユーザは、所望の選手70,審判80またはボール90のいずれか一つの視点で、試合を見ることができる。
【0068】
図10は、外部視点で仮想スタジアムを平面表示させた場合の例を簡略化して示す説明図である。図10(a)は、全ての選手70,審判80及びボール90を仮想スタジアムに二次元表示させた様子を示す。視点E1は、仮想スタジアムの外部に位置する。符号80(cj)は主審を、符号80(lm)は副審をそれぞれ示す。また、符号70Aは一側チームの選手を、符号70Bは他側チームの選手をそれぞれ示す。
【0069】
図10(b)は、外部視点E1のままで、一側チームの選手のみを表示させた状態を示している。このように、ユーザは、所望のチームや選手のみを仮想スタジアムに表示させて、その動きを楽しんだり研究したりすることができる。
【0070】
図11は、内部視点で仮想スタジアムを視聴する場合の例を示す説明図である。図11(a)に示すように、ユーザは、他側チームに属する特定の選手70B(1)の視点E2を選択できる。この場合、クライアントコンピュータの画面には、図11(b)に示すように、特定の選手70B(1)の視点から見える仮想スタジアムが表示される。
【0071】
図12は、仮想スタジアムサーバ10により使用される各管理情報121〜123の構成を示す説明図である。ユーザ管理情報121から先に説明する。ユーザ管理情報121は、仮想スタジアム提供サービスを利用する各ユーザをそれぞれ管理するものである。ユーザ管理情報121は、例えば、ユーザIDと、パスワードと、選択されている視点と、内部視点を指定されたターゲット(対象物)と、現在時刻と、ワールドIDと、空間ID及びターゲットの座標とを対応付けて管理している。
【0072】
ユーザIDとは、各ユーザをそれぞれ識別するための情報である。パスワードとは、仮想スタジアムサーバ10にログインする際の認証情報の一部である。視点とは、ユーザにより選択された視点の種別を示す。ターゲットとは、内部視点として選択された対象物を特定する情報である。時刻とは試合の再生時刻を示す。ワールドIDとは、ユーザがログインしているサーバを特定するための情報である。空間IDとは、ワールド内の仮想スタジアムを識別するための情報である。即ち、一つのワールド内に複数の仮想スタジアムを設けることができる。座標とは、内部視点として選択されているターゲットの位置を示す情報である。
【0073】
仮想スタジアム管理情報122は、仮想スタジアムの構成について管理するための情報である。仮想スタジアム管理情報122は、例えば、空間IDと、空間名と、構成ファイル名と、試合IDと、ワールドIDとを対応付けて管理する。空間名とは、仮想スタジアムの名称である。構成ファイル名とは、その仮想スタジアムの構成を定義したファイルを特定するための情報である。試合IDとは、仮想スタジアムで再現されるスポーツ試合を識別するための情報である。これにより、どの仮想スタジアムがどのファイルによって定義されており、かつ、どの試合が再現されているかを判別することができる。
【0074】
選手等アバター管理情報123は、選手70,審判80及びボール90の各アバターを管理するための情報である。選手等アバター管理情報123は、例えば、アバター属性と、無線タグIDと、動作種別と、アバターデータと、時刻及び座標とを対応付けて管理している。アバター属性とは、仮想スタジアムに表示されるアバターの種別を示す。動作種別とは、そのアバターの動作の種別を示す。
【0075】
ボール及び主審のアバターは、仮想スタジアム内で位置だけが管理されるため、動作の区分は設定されない。副審のアバターには、例えば、「通常」及び「旗揚げ」の二種類の動作が設定される。「通常」とは旗83を下げている状態を示し、「旗揚げ」とは旗83を上げている状態を示す。各選手のアバターには、例えば、「通常」、「走行」、「シュート」及び「歩行」の複数種類の動作が設定される。「通常」とは停止している状態を、「走行」とは走っている状態を、「シュート」とはシュートしている状態を、「歩行」とは歩いている状態をそれぞれ示す。そして、各動作種別毎にそれぞれアバターデータが予め定義されている。なお、各アバターには、それぞれの視点が予め設定されている。簡単には、各アバターの視線は、前方を向いているものとして予め設定される。前方とは、移動する方向である。
【0076】
図13は、仮想スタジアム提供サービスの全体動作を示すフローチャートである。図中、ステップを「S」と略記する。実位置解析サーバ20は、選手70等に設けられた各無線タグ60とアンテナ52を介してそれぞれ交信し(S11)、その通信状態に基づいて各無線タグ60の実スタジアム50内における位置をそれぞれ算出する(S12)。
【0077】
実位置解析サーバ20は、算出された各実位置をそれぞれ記憶し(S13)、仮想スタジアムサーバ10に位置データを送信する(S14)。送信される位置データの構成は、図6及び図7と共に説明した通りである。
【0078】
一方、ユーザは、クライアントコンピュータ40を介して、仮想スタジアムサーバ10にログインし、メニューを選択する(S15)。仮想スタジアムサーバ10は、ユーザ認証を行い(S16)、ユーザにより選択された視点をセットする(S17)。仮想スタジアムサーバ10は、実位置解析サーバ20から受信した位置データに基づいて、選手70等の実位置を仮想スタジアム内の座標に変換する(S18)。
【0079】
仮想スタジアムサーバ10は、各選手70の両脚の位置やボール90との距離等を解析して、各選手の動作状態をそれぞれ判別する(S19)。動作を判別する一例については、図14と共に後述する。仮想スタジアムサーバ10は、各選手70等の座標及び動作状態に応じて、仮想スタジアムにアバターを配置し表示する(S20)。
【0080】
仮想スタジアムサーバ10は、ユーザによって選択された視点で、仮想スタジアムの様子を表示し(S21)、この表示状態を通信ネットワークCNを介してクライアントコンピュータ40に送信する(S22)。
【0081】
クライアントコンピュータ40は、仮想スタジアムサーバ10から受信したデータに基づいて仮想スタジアムを端末画面に表示させる(S23)。ユーザが視点の切替等を操作すると(S24)、この操作内容は仮想スタジアムサーバ10に送信され、仮想スタジアムの表示状態に反映される(S17)。
【0082】
図14は、図13中にS19で示された動作判別処理の一例を示すフローチャートである。仮想スタジアムサーバ10は、選手等の位置の変化に基づいて速度Vを算出し(S31)、算出された速度Vが予め設定されている停止判定速度V1以上であるか否かを判定する(S32)。選手等の速度Vが停止判定速度V1よりも小さい場合(S32:NO)、仮想スタジアムサーバ10は、その選手等が停止状態にあると判定する(S33)。停止状態であると判定された場合、仮想スタジアムサーバ10は、対象物が停止している状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。
【0083】
選手等の速度Vが停止判定速度V1以上の場合(S32:YES)、仮想スタジアムサーバ10は、選手等の速度Vが予め設定されている走行判定速度V2以上であるか否かを判定する(S34)。選手等の速度Vが走行判定速度V2以上の場合(S34:YES)、仮想スタジアムサーバ10は、その選手等が走行状態であると判定する(S35)。走行状態であると判定した場合、仮想スタジアムサーバ10は、対象物が走行している状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。なお、本実施例では、走行状態のアバターデータが用意されているのは、選手70のアバターのみであるが、審判80にも用意することはできる。
【0084】
選手等の速度Vが走行判定速度V2未満の場合(S34:NO)、仮想スタジアムサーバ10は、その選手等が歩行状態であると判定する(S36)。歩行状態であると判定した場合、仮想スタジアムサーバ10は、対象物が歩行している状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。なお、前記同様に、本実施例では、歩行状態のアバターデータは選手70についてのみ用意されているが、審判80にも歩行状態のアバターデータを用意する構成でもよい。
【0085】
次に、仮想スタジアムサーバ10は、動作状態の判別対象が選手70であるか否かを判定する(S37)。選手70の場合(S37:YES)、仮想スタジアムサーバ10は、両脚の位置が所定値以上変化したか否か、その選手70とボール90との位置が所定範囲内にあるか否かを判定する(S38)。例えば、選手70の位置とボール90との位置が近接しており、左右の脚の位置の差が所定値以上離れており、その後、ボール90の速度が所定値以上増加したような場合には、その選手70がシュートした場合であると判定することができる(S38)。シュート状態であると判定した場合、仮想スタジアムサーバ10は、シュート状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示する。なお、シュート状態に対応するアバターデータは、選手70についてのみ用意されている。
【0086】
一方、動作状態の判別対象が選手70ではないと判定した場合(S37:NO)、その判別対象が副審であるか否かを判定する(S40)。副審である場合(S40:YES)、仮想スタジアムサーバ10は、旗83の上げ下げ状態を示すフラッグデータが”1”に設定されているか否かを判定する(S41)。
【0087】
フラッグデータに1が設定されている場合(S41:YES)、仮想スタジアムサーバ10は、副審が旗83を上げている状態であると判定する(S42)。この場合、仮想スタジアムサーバ10は、旗上げ状態に対応付けられているアバターデータを読み出して、仮想スタジアムに表示させる。なお、本実施例では、旗上げ状態に対応付けられるアバターデータは、副審についてのみ用意されている。
【0088】
動作状態の判別対象が選手でも副審でもない場合(S40:NO)、及び、副審が旗83を下げている場合(S41:NO)、仮想スタジアムサーバ10は、本処理を終了する。
【0089】
本実施例は、上述のように構成されるので、以下の効果を奏する。本実施例では、各選手70,審判80,ボール90について予め設定されている仮想的な視線によって、ユーザは、仮想スタジアムの状態を見ることができる。従って、ユーザは、選手等の立場で試合を追体験することができ、試合を楽しむことができる。
【0090】
本実施例では、対象物である選手70等の実位置を無線タグ60によって検出し、検出された実位置を仮想スタジアムの座標に変換してアバターを表示させる。従って、実位置解析サーバ20は、実位置に関する情報のみを仮想スタジアムサーバ10に送信すればよく、仮想スタジアムサーバ10は、速やかに選手70等のアバターを仮想スタジアムに配置して動かすことができる。これにより、仮想スタジアムサーバ10や実位置解析サーバ20のデータ処理負荷を低減することができる。
【0091】
本実施例では、実際の映像データではなく、アバターを用いた三次元のグラフィックスデータをクライアントコンピュータ40に送信する。従って、仮想スタジアムサーバ10から各クライアントコンピュータ40に送信するデータ量を低減することができる。
【0092】
本実施例では、各選手70に複数の無線タグ60を設けることにより、各選手70の動作状態を判別し、各動作状態に予め対応付けられているアバターデータを用いて、仮想スタジアムを表示させる。従って、比較的簡易なデータ処理で、選手70のアバターを動作させることができる。
【0093】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。例えば、図13に示すフローチャートでは、実際の試合をリアルタイムで仮想スタジアムに再現するような場合を示したが、これに限らず、既に蓄積されている実位置データを用いることにより、過去の試合であっても仮想スタジアムに再現することができる。
【図面の簡単な説明】
【0094】
【図1】本発明の実施形態の概念を示す説明図である。
【図2】仮想スタジアム提供システムの全体構成を示す説明図である。
【図3】実スタジアム及び実位置解析サーバの構成を示す説明図である。
【図4】無線タグを選手等に取り付ける方法を示す説明図である。
【図5】無線タグの構成を示す説明図である。
【図6】実位置解析サーバ及び仮想スタジアムサーバによるデータの管理方法を示すテーブルである。
【図7】実位置解析サーバから仮想スタジアムサーバに送信される位置データの構成を示す説明図である。
【図8】仮想スタジアムサーバの構成を示す説明図である。
【図9】仮想スタジアムの見え方を選択するためのメニュー画面を示す説明図である。
【図10】外部視点から見える仮想スタジアムを示す説明図である。
【図11】内部視点から見える仮想スタジアムを示す説明図である。
【図12】仮想スタジアムサーバで使用される各管理情報の構成を示す説明図である。
【図13】仮想スタジアム提供スタジアムの全体動作を示すフローチャートである。
【図14】図13中のS19で示す動作判別処理の詳細を示すフローチャートである。
【符号の説明】
【0095】
1…仮想空間提供サーバ、1A…仮想スタジアム、1B…仮想スタジアム制御部、1C…選手アバター制御部、1D…座標変換部、2…クライアントコンピュータ、2A…操作部、3…実スタジアム、4…通信ネットワーク、5…アンテナ、6…実位置管理部、6A…位置測定部、6B…位置データ生成部、7…選手、7A…アバター、8…ボール、8A…ボール画像(アバター)、9…無線タグ、10…仮想スタジアムサーバ、20…実位置解析サーバ、30…ウェブサーバ、40…クライアントコンピュータ、41…通信部、42…クライアントソフトウェア、50…実スタジアム、51…サッカーコート、52…アンテナ、60…無線タグ、61…アンテナ、62…無線インターフェース部、63…制御部、64…記憶部、65…姿勢検出センサ、70,70A,70B…選手、71…ユニフォーム、72…シンガード、80…審判、81…ユニフォーム、83…旗、90…ボール、CN… 通信ネットワーク、100…制御部、101…ユーザ管理部、102…仮想スタジアム管理部、103…仮想スタジアム提供部、104…選手位置管理部、120…記憶部、121…ユーザ管理情報、122…仮想スタジアム管理情報、123…選手等アバター管理情報、130…通信部、200…制御部、201…位置測定部、202…位置データ生成部、210…記憶部、211…基準配置情報、212…実位置情報、220…信号処理部、230…通信部
【特許請求の範囲】
【請求項1】
対象者の実空間における実位置に基づいて、前記対象者を象徴するキャラクタを仮想空間内に表示させる仮想空間提供サーバであって、
ユーザにより操作されるクライアントコンピュータと通信ネットワークを介して双方向通信するための通信手段と、
前記対象者が存在する前記実空間を模した前記仮想空間を生成するための仮想空間生成手段と、
前記対象者の前記実位置に応じて、前記キャラクタの前記仮想空間における座標を決定するための座標決定手段と、
前記対象者の前記実空間における視線として予め設定されている仮想視線及び前記キャラクタの座標に応じて、前記キャラクタから見える前記仮想空間の状態を、前記通信手段を介して前記クライアントコンピュータに送信し、前記クライアントコンピュータの画面に表示させるための仮想空間表示手段と、
を備えた仮想空間提供サーバ。
【請求項2】
前記実空間には、複数の対象者が存在し、前記ユーザは、前記各対象者のうちいずれか一つの対象者に関する前記キャラクタを選択可能である請求項1に記載の仮想空間提供サーバ。
【請求項3】
前記ユーザは、前記仮想視線または前記仮想空間の外部から前記仮想空間を見る外部視線のうちいずれか一方を選択することができ、前記仮想空間表示手段は、前記仮想視線または前記外部視線のうち前記ユーザにより選択された視線と前記キャラクタの座標に応じて、前記仮想空間の状態を表示させる請求項1に記載の仮想空間提供サーバ。
【請求項4】
前記対象者の動作を検出するための動作検出手段をさらに設け、前記仮想空間表示手段は、前記動作検出手段により検出された動作に応じて、前記キャラクタの動作を制御する請求項1に記載の仮想空間提供サーバ。
【請求項5】
前記対象者には複数の無線タグが予め設けられており、かつ、前記実空間には前記各無線タグと交信するための複数のアンテナが予め設けられており、前記各無線タグと前記アンテナとの交信状態に基づいて、前記対象者の位置が検出される請求項1に記載の仮想空間提供サーバ。
【請求項6】
前記対象者は競技者であり、前記仮想空間は前記競技者が競技を行う実スタジアムを模した仮想的なスタジアムとして構成される請求項1に記載の仮想空間提供サーバ。
【請求項7】
通信ネットワークを介して接続されたクライアントコンピュータに、競技者による競技を仮想的に表示させる仮想空間を提供する仮想空間提供システムであって、
前記競技者の実空間における実位置を検出するための実位置検出手段と、検出された実位置に応じて、前記競技者を象徴するキャラクタを前記仮想空間に表示させる仮想空間提供サーバとを備え、
前記実位置検出手段は、前記競技者に予め設けられた複数の無線タグと、これら各無線タグと交信するための複数のアンテナと、これら各アンテナと前記各無線タグとの交信状態に基づいて、前記競技者の実位置を測定するための測定手段と、この測定手段により測定された前記競技者の実位置を前記仮想空間提供サーバに送信するための通信手段と、を備えており、
前記仮想空間提供サーバは、
ユーザにより操作される前記クライアントコンピュータ及び前記実位置検出手段と通信ネットワークを介してそれぞれ通信するための通信手段と、
前記競技者が存在する前記実空間を模した前記仮想空間を生成するための仮想空間生成手段と、
前記競技者の前記実位置に応じて、前記キャラクタの前記仮想空間における座標を決定するための座標決定手段と、
前記競技者の前記実空間における視線として予め設定されている仮想視線及び前記キャラクタの座標に応じて、前記キャラクタから見える前記仮想空間の状態を、前記通信手段を介して前記クライアントコンピュータに送信し、前記クライアントコンピュータの画面に表示させるための仮想空間表示手段と、
を備える仮想空間提供システム。
【請求項8】
通信ネットワークを介してクライアントコンピュータに接続されるサーバコンピュータに、
対象者の存在する実空間をもした仮想空間を生成するための仮想空間生成手段と、
前記対象者の前記実空間における実位置に基づいて、前記対象者を象徴するキャラクタの前記仮想空間における座標を決定するための座標決定手段と、
前記対象者の前記実空間における視線として予め設定されている仮想視線及び前記キャラクタの座標に応じて、前記キャラクタから見える前記仮想空間の状態を前記クライアントに送信して表示させるための仮想空間表示手段と、
をそれぞれ実現させるコンピュータプログラム。
【請求項1】
対象者の実空間における実位置に基づいて、前記対象者を象徴するキャラクタを仮想空間内に表示させる仮想空間提供サーバであって、
ユーザにより操作されるクライアントコンピュータと通信ネットワークを介して双方向通信するための通信手段と、
前記対象者が存在する前記実空間を模した前記仮想空間を生成するための仮想空間生成手段と、
前記対象者の前記実位置に応じて、前記キャラクタの前記仮想空間における座標を決定するための座標決定手段と、
前記対象者の前記実空間における視線として予め設定されている仮想視線及び前記キャラクタの座標に応じて、前記キャラクタから見える前記仮想空間の状態を、前記通信手段を介して前記クライアントコンピュータに送信し、前記クライアントコンピュータの画面に表示させるための仮想空間表示手段と、
を備えた仮想空間提供サーバ。
【請求項2】
前記実空間には、複数の対象者が存在し、前記ユーザは、前記各対象者のうちいずれか一つの対象者に関する前記キャラクタを選択可能である請求項1に記載の仮想空間提供サーバ。
【請求項3】
前記ユーザは、前記仮想視線または前記仮想空間の外部から前記仮想空間を見る外部視線のうちいずれか一方を選択することができ、前記仮想空間表示手段は、前記仮想視線または前記外部視線のうち前記ユーザにより選択された視線と前記キャラクタの座標に応じて、前記仮想空間の状態を表示させる請求項1に記載の仮想空間提供サーバ。
【請求項4】
前記対象者の動作を検出するための動作検出手段をさらに設け、前記仮想空間表示手段は、前記動作検出手段により検出された動作に応じて、前記キャラクタの動作を制御する請求項1に記載の仮想空間提供サーバ。
【請求項5】
前記対象者には複数の無線タグが予め設けられており、かつ、前記実空間には前記各無線タグと交信するための複数のアンテナが予め設けられており、前記各無線タグと前記アンテナとの交信状態に基づいて、前記対象者の位置が検出される請求項1に記載の仮想空間提供サーバ。
【請求項6】
前記対象者は競技者であり、前記仮想空間は前記競技者が競技を行う実スタジアムを模した仮想的なスタジアムとして構成される請求項1に記載の仮想空間提供サーバ。
【請求項7】
通信ネットワークを介して接続されたクライアントコンピュータに、競技者による競技を仮想的に表示させる仮想空間を提供する仮想空間提供システムであって、
前記競技者の実空間における実位置を検出するための実位置検出手段と、検出された実位置に応じて、前記競技者を象徴するキャラクタを前記仮想空間に表示させる仮想空間提供サーバとを備え、
前記実位置検出手段は、前記競技者に予め設けられた複数の無線タグと、これら各無線タグと交信するための複数のアンテナと、これら各アンテナと前記各無線タグとの交信状態に基づいて、前記競技者の実位置を測定するための測定手段と、この測定手段により測定された前記競技者の実位置を前記仮想空間提供サーバに送信するための通信手段と、を備えており、
前記仮想空間提供サーバは、
ユーザにより操作される前記クライアントコンピュータ及び前記実位置検出手段と通信ネットワークを介してそれぞれ通信するための通信手段と、
前記競技者が存在する前記実空間を模した前記仮想空間を生成するための仮想空間生成手段と、
前記競技者の前記実位置に応じて、前記キャラクタの前記仮想空間における座標を決定するための座標決定手段と、
前記競技者の前記実空間における視線として予め設定されている仮想視線及び前記キャラクタの座標に応じて、前記キャラクタから見える前記仮想空間の状態を、前記通信手段を介して前記クライアントコンピュータに送信し、前記クライアントコンピュータの画面に表示させるための仮想空間表示手段と、
を備える仮想空間提供システム。
【請求項8】
通信ネットワークを介してクライアントコンピュータに接続されるサーバコンピュータに、
対象者の存在する実空間をもした仮想空間を生成するための仮想空間生成手段と、
前記対象者の前記実空間における実位置に基づいて、前記対象者を象徴するキャラクタの前記仮想空間における座標を決定するための座標決定手段と、
前記対象者の前記実空間における視線として予め設定されている仮想視線及び前記キャラクタの座標に応じて、前記キャラクタから見える前記仮想空間の状態を前記クライアントに送信して表示させるための仮想空間表示手段と、
をそれぞれ実現させるコンピュータプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2008−117042(P2008−117042A)
【公開日】平成20年5月22日(2008.5.22)
【国際特許分類】
【出願番号】特願2006−297560(P2006−297560)
【出願日】平成18年11月1日(2006.11.1)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
【公開日】平成20年5月22日(2008.5.22)
【国際特許分類】
【出願日】平成18年11月1日(2006.11.1)
【出願人】(000155469)株式会社野村総合研究所 (1,067)
【Fターム(参考)】
[ Back to top ]