以下、図面を用いて、本発明の実施形態について説明する。
〔実施形態の概略〕
<全天球パノラマ画像の生成方法>
図1乃至図7を用いて、全天球パノラマ画像の生成方法について説明する。
まず、図1を用いて、撮影装置1の外観を説明する。撮影装置1は、3次元の全天球(360°)パノラマ画像の元になる撮影画像を得るための全天球(デジタル)カメラである。なお、図1(a)は撮影装置の左側面図であり、図1(b)は撮影装置の正面図であり、図1(c)は撮影装置の平面図である。
図1(a)に示されているように、撮影装置1は、人間が片手で持つことができる大きさである。また、図1(a),図1(b),図1(c)に示されているように、撮影装置1の上部には、正面側(前側)に撮像素子103a及び背面側(後側)に撮像素子103bが設けられている。これら撮像素子(画像センサ)103a,103bは、半球画像(画角180°以上)の撮影が可能な光学部材(例えば、後述する魚眼レンズ102a,102b)と併せて用いられる。また、図1(b)に示されているように、撮影装置1の正面側と反対側の面には、シャッターボタン等の操作部115が設けられている。
次に、図2を用いて、撮影装置1の使用状況を説明する。なお、図2は、撮影装置の使用イメージ図である。撮影装置1は、図2に示されているように、例えば、ユーザが手に持ってユーザの周りの被写体を撮影するために用いられる。この場合、図1に示されている撮像素子103a及び撮像素子103bによって、それぞれユーザの周りの被写体が撮像されることで、2つの半球画像を得ることができる。
次に、図3及び図4を用いて、撮影装置1で撮影された画像から全天球パノラマ画像が作成されるまでの処理の概略を説明する。なお、図3(a)は撮影装置で撮影された半球画像(前側)、図3(b)は撮影装置で撮影された半球画像(後側)、図3(c)はメルカトル図法により表された画像(以下、「メルカトル画像」という)を示した図である。図4(a)はメルカトル画像で球を被う状態を示した概念図、図4(b)は全天球パノラマ画像を示した図である。
図3(a)に示されているように、撮像素子103aによって得られた画像は、後述の魚眼レンズ102aによって湾曲した半球画像(前側)となる。また、図3(b)に示されているように、撮像素子103bによって得られた画像は、後述の魚眼レンズ102bによって湾曲した半球画像(後側)となる。そして、半球画像(前側)と、180度反転された半球画像(後側)とは、撮影装置1によって合成され、図3(c)に示されているように、メルカトル画像が作成される。
そして、OpenGL ES(Open Graphics Library for Embedded Systems)が利用されることで、図4(a)に示されているように、メルカトル画像が球面を覆うように貼り付けられ、図4(b)に示されているような全天球パノラマ画像が作成される。このように、全天球パノラマ画像は、メルカトル画像が球の中心を向いた画像として表される。なお、OpenGL ESは、2D(2-Dimensions)および3D(3-Dimensions)のデータを視覚化するために使用するグラフィックスライブラリである。なお、全天球パノラマ画像は、静止画であっても動画であってもよい。
以上のように、全天球パノラマ画像は、球面を覆うように貼り付けられた画像であるため、人間が見ると違和感を持ってしまう。そこで、全天球パノラマ画像の一部の所定領域(以下、「所定領域画像」という)を湾曲の少ない平面画像として表示することで、人間に違和感を与えない表示をすることができる。これに関して、図5及び図6を用いて説明する。
なお、図5は、全天球パノラマ画像を三次元の立体球とした場合の仮想カメラ及び所定領域の位置を示した図である。仮想カメラICは、三次元の立体球として表示されている全天球パノラマ画像に対して、その画像を見るユーザの視点の位置に相当するものである。
図5は、全天球パノラマ画像を3次元の立体球とした場合の仮想カメラ及び所定領域の位置を示した図である。図6は、球座標による3次元ユークリッド空間内の点を示した図である。中心点CPを球面極座標系で表現したときの位置座標を(r、θ、φ)とする。(r、θ、φ)は、それぞれ動径、極角、方位角である。動径rは、全天球パノラマ画像を含む三次元の仮想空間の原点から中心点CPまでの距離であるため、fに等しい。図17(撮影装置方向・位置管理テーブル(ビデオ会議端末3))は、仮想カメラICの極角、方位角(θ、φ)を用いて説明する。なお、「ビデオ会議端末3」は、後述のビデオ会議端末3a~3fの総称である。
図7は、仮想空間の移動手段の1つである「ルームスケール」に関する構成図である。
ルームスケールでは位置センサを通常2つ以上使用する。ここでは、位置センサ(1)300と位置センサ(2)301を配置し、参加者Acのプレイエリア400内の位置を特定する。
参加者Acの仮想空間の移動手段は「ワープ」や「十字キー」でもよく、その場合はルームスケールを使用しない。
PC7は、ヘッドマウントディスプレイ端末8への表示処理や、ビデオ会議端末へ接続するための処理を行う。PC7は通信端末の一例であり、ヘッドマウントディスプレイと位置センサ(1)300,位置センサ(2)301が接続されている。ヘッドマウントディスプレイ端末8は、参加者Acが装着する。
ルームスケールは参加者Acのヘッドマウントディスプレイの位置を検知する。その範囲は、プレエリア400で表される。ここで、プレイエリアの縦軸横軸をX方向、Y方向とする。
ヘッドマウントディスプレイ端末8は、PC7と、有線通信又は無線通信が可能であり、ヘッドマウントディスプレイ端末8はとPC7を2つ合わせてVR端末を構築する。但し、ヘッドマウントディスプレイ端末8とPC7の2つの代わりにスマートフォン1つであってもよい。ヘッドマウントディスプレイ端末8は、位置センサ(1)300、位置センサ(2)301と赤外線通信をする。
通信管理システム5は、ビデオ会議端末3a乃至3f、及びVR端末とのやり取りを仲介する。P2P(Peer to Peer)通信の場合は、通信管理システム5を仲介せずビデオ会議端末3a乃至3fがVR端末の方向・位置情報を送受信してもよい。
図8は、ある展示会場で5台のビデオ会議システムと全天球カメラを使用し、別の展示会場では、1台のビデオ会議システムと全天球カメラを使用した例である。展示会場には、展示会場501と展示会場502の2つがあり、図18のセッションIDが異なる。
なお、下記撮影装置1a~1fは、撮影装置1の一例である。クレードル2a~2fは、クレードル2の一例である。ビデオ会議端末3a~3fは、ビデオ会議端末3の一例である。ディスプレイ4a~4fは、ディスプレイ4の一例である。ブースBa~Bfは、ブースBの一例である。解説者Ca~Cfは、解説者Cの一例である。
以下、展示会場501の説明である。ブースBaには、解説者Caがおり、ディスプレイ4a、ビデオ会議端末3が置かれている。ビデオ会議端末3aは撮影装置1a(全天球カメラでも通常のカメラでも、半球のパノラマカメラでもよい)が接続されている。ビデオ会議端末3a~3eは設営者Eaが配置する。設置するのは解説者Ca~Ceであってもよい。各ビデオ会議端末からマッピング位置の情報入力は設営者Eaと設営者Ebが
行う。各ビデオ会議端末からマッピング位置の情報入力は設営者Eaと設営者Ebの代わりに、解説者Ca~Cfが行っても良い。ビデオ会議端末3a~3fはインターネットを介した通信ネットワーク100を通して、通信管理システム5と接続されている。
以下、展示会場502の説明である。ブースBfには、解説者Cfがおり、ディスプレイ6f、ビデオ会議端末3fが置かれている。ビデオ会議端末3fは撮影装置1f(全天球カメラでも通常のカメラでも、半球のパノラマカメラでもよい)が接続されている。ビデオ会議端末3fは解説者6fが配置する。ビデオ会議端末3fからマッピング位置の情報入力は解説者Cfが行う。ビデオ会議端末3fはインターネット等の通信ネットワーク100を介して、ビデオ会議端末3a~3eと接続されている。
以下、拠点Aの説明である。離れた場所である拠点Aの展示会への参加者Acは、ヘッドマウントディスプレイ端末8を付け、PC7から通信管理システム5へ接続する。PC7には撮影装置1gとクレードル2gが接続されている。
展示会場501と展示会場502を図24(通信セッション(仮想の会議室)の選択画面を示した図)で選択することができる。選択した展示会場に応じて、図30(マッピング部40に関するフローチャート)に従い自動的に仮想空間が作成され、選択した展示会場にある撮影装置の位置情報がマッピングされる。
<<実施形態のハードウェア構成>>
次に、図9乃至13を用いて、本実施形態の撮影装置1、ビデオ会議端末3乃至6、通信管理システム5、PC7又はスマートフォン、ヘッドマウントディスプレイのハードウェア構成を詳細に説明する。
<撮影装置1のハードウェア構成>
まず、図9を用いて、撮影装置1のハードウェア構成を説明する。図9は、撮影装置1のハードウェア構成図である。以下では、撮影装置1は、2つの撮像素子を使用した全天球(全方位)撮影装置とするが、撮像素子は2つ以上いくつでもよい。また、必ずしも全方位撮影専用の装置である必要はなく、通常のデジタルカメラやスマートフォン等に後付けの全方位撮影ユニットを取り付けることで、実質的に撮影装置1と同じ機能を有するようにしてもよい。
図9に示されているように、撮影装置1は、撮像ユニット101、画像処理ユニット104、撮像制御ユニット105、マイク108、音処理ユニット109、CPU(Central Processing Unit)111、ROM(Read Only Memory)112、SRAM(Static Random Access Memory)113、DRAM(Dynamic Random Access Memory)114、操作部115、ネットワークI/F116、通信部117、及びアンテナ117aによって構成されている。
このうち、撮像ユニット101は、各々半球画像を結像するための180°以上の画角を有する広角レンズ(いわゆる魚眼レンズ)102a,102bと、各広角レンズに対応させて設けられている2つの撮像素子103a,103bを備えている。撮像素子103a,103bは、魚眼レンズ102a,102bによる光学像を電気信号の画像データに変換して出力するCMOSセンサやCCD(Charge Coupled Device)センサなどの画像センサ、この画像センサの水平又は垂直同期信号や画素クロックなどを生成するタイミング生成回路、この撮像素子の動作に必要な種々のコマンドやパラメータなどが設定されるレジスタ群などを有している。
撮像ユニット101の撮像素子103a,103bは、各々、画像処理ユニット104とパラレルI/Fバスで接続されている。一方、撮像ユニット101の撮像素子103a,103bは、撮像制御ユニット105とは別に、シリアルI/Fバス(I2Cバス等)で接続されている。画像処理ユニット104及び撮像制御ユニット105は、バス110を介してCPU111と接続される。さらに、バス110には、ROM112、SRAM113、DRAM114、操作部115、ネットワークI/F116、通信部117、及び電子コンパス118なども接続される。
画像処理ユニット104は、撮像素子103a,103bから出力される画像データをパラレルI/Fバスを通して取り込み、それぞれの画像データに対して所定の処理を施した後、これらの画像データを合成処理して、図3(c)に示されているようなメルカトル画像のデータを作成する。
撮像制御ユニット105は、一般に撮像制御ユニット105をマスタデバイス、撮像素子103a,103bをスレーブデバイスとして、I2Cバスを利用して、撮像素子103a,103bのレジスタ群にコマンド等を設定する。必要なコマンド等は、CPU111から受け取る。また、撮像制御ユニット105は、同じくI2Cバスを利用して、撮像素子103a,103bのレジスタ群のステータスデータ等を取り込み、CPU111に送る。
また、撮像制御ユニット105は、操作部115のシャッターボタンが押下されたタイミングで、撮像素子103a,103bに画像データの出力を指示する。撮影装置1によっては、ディスプレイ(例えば、ビデオ会議端末3aのディスプレイ)によるプレビュー表示機能や動画表示に対応する機能を持つ場合もある。この場合は、撮像素子103a,103bからの画像データの出力は、所定のフレームレート(フレーム/分)によって連続して行われる。
また、撮像制御ユニット105は、後述するように、CPU111と協働して撮像素子103a,103bの画像データの出力タイミングの同期をとる同期制御手段としても機能する。なお、本実施形態では、撮影装置1には表示部(ディスプレイ)が設けられていないが、表示部を設けてもよい。
マイク108は、音を音(信号)データに変換する。音処理ユニット109は、マイク108から出力される音データをI/Fバスを通して取り込み、音データに対して所定の処理を施す。
CPU111は、撮影装置1の全体の動作を制御すると共に必要な処理を実行する。ROM112は、CPU111のための種々のプログラムを記憶している。SRAM113及びDRAM114はワークメモリであり、CPU111で実行するプログラムや処理途中のデータ等を記憶する。特にDRAM114は、画像処理ユニット104での処理途中の画像データや処理済みのメルカトル画像のデータを記憶する。
操作部115は、種々の操作ボタンや電源スイッチ、シャッターボタン、表示と操作の機能を兼ねたタッチパネルなどの総称である。ユーザは操作ボタンを操作することで、種々の撮影モードや撮影条件などを入力する。
ネットワークI/F116は、SDカード等の外付けのメディアやパーソナルコンピュータなどとのインターフェース回路(USBI/F等)の総称である。また、ネットワークI/F116としては、無線、有線を問わない。DRAM114に記憶されたメルカトル画像のデータは、このネットワークI/F116を介して外付けのメディアに記録されたり、必要に応じてネットワークI/F116を介してビデオ会議端末3a等の外部装置に送信されたりする。
通信部117は、撮影装置1に設けられたアンテナ117aを介して、Wi-FiやNFC(Near Field Communication)等の近距離無線技術によって、ビデオ会議端末3a等の外部装置と通信を行う。この通信部117によっても、メルカトル画像のデータをビデオ会議端末3aの外部装置に送信することができる。
電子コンパス118は、地球の磁気から撮影装置1の方位及び傾き(Roll回転角)を算出し、方位・傾き情報を出力する。この方位・傾き情報はExifに沿った関連情報(メタデータ)の一例であり、撮影画像の画像補正等の画像処理に利用される。なお、関連情報には、画像の撮影日時、及び画像データのデータ容量の各データも含まれている。
<ビデオ会議端末のハードウェア構成>
次に、図10を用いて、ビデオ会議端末3のハードウェア構成を説明する。図10は、ビデオ会議端末のハードウェア構成図である。図10に示されているように、ビデオ会議端末3は、CPU301、ROM302、RAM303、フラッシュメモリ304、SSD305、メディアI/F307、操作ボタン308、電源スイッチ309、バスライン310、ネットワークI/F311、カメラ312、撮像素子I/F313、マイク314、スピーカ315、音入出力I/F316、ディスプレイI/F317、外部機器接続I/F318、近距離通信回路319、近距離通信回路319のアンテナ319aを備えている。
これらのうち、CPU301は、ビデオ会議端末3全体の動作を制御する。ROM302は、IPL(Initial Program Loader)等のCPU301の駆動に用いられるプログラムを記憶する。RAM303は、CPU301のワークエリアとして使用される。フラッシュメモリ304は、通信用プログラム、画像データ、及び音データ等の各種データを記憶する。SSD(Solid State Drive)305は、CPU301の制御にしたがってフラッシュメモリ304に対する各種データの読み出し又は書き込みを制御する。なお、SSDに代えてHDDを用いてもよい。メディアI/F307は、フラッシュメモリ等の記録メディア306に対するデータの読み出し又は書き込み(記憶)を制御する。操作ボタン308は、ビデオ会議端末3の宛先を選択する場合などに操作されるボタンである。電源スイッチ309は、ビデオ会議端末3の電源のON/OFFを切り換えるためのスイッチである。
また、ネットワークI/F311は、インターネット等の通信ネットワーク100を利用してデータ通信をするためのインターフェースである。カメラ312は、CPU301の制御に従って被写体を撮像して画像データを得る内蔵型の撮像手段の一種である。撮像素子I/F313は、カメラ312の駆動を制御する回路である。マイク314は、音声を入力する内蔵型の集音手段の一種である。音入出力I/F316は、CPU301の制御に従ってマイク314及びスピーカ315との間で音信号の入出力を処理する回路である。ディスプレイI/F317は、CPU301の制御に従って外付けのディスプレイ4に画像データを送信する回路である。外部機器接続I/F318は、各種の外部機器を接続するためのインターフェースである。近距離通信回路319は、NFC(登録商標)、Bluetooth(登録商標)等の通信回路である。
また、バスライン310は、図10に示されているCPU301等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
ディスプレイ4は、被写体の画像や操作用アイコン等を表示する液晶や有機ELによって構成された表示手段の一種である。また、ディスプレイ4は、ケーブル40cによってディスプレイI/F317に接続される。このケーブル40cは、アナログRGB(VGA)信号用のケーブルであってもよいし、コンポーネントビデオ用のケーブルであってもよいし、HDMI(High-Definition Multimedia Interface)(登録商標)やDVI(Digital Video Interactive)信号用のケーブルであってもよい。
なお、カメラ312は、レンズや、光を電荷に変換して被写体の画像(映像)を電子化する固体撮像素子を含み、固体撮像素子として、CMOSセンサや、CCDセンサ等が用いられる。外部機器接続I/F318には、USB(Universal Serial Bus)ケーブル等によって、外付けカメラ、外付けマイク、及び外付けスピーカ等の外部機器がそれぞれ接続可能である。外付けカメラが接続された場合には、CPU301の制御に従って、内蔵型のカメラ312に優先して、外付けカメラが駆動する。同じく、外付けマイクが接続された場合や、外付けスピーカが接続された場合には、CPU301の制御に従って、それぞれが内蔵型のマイク314や内蔵型のスピーカ315に優先して、外付けマイクや外付けスピーカが駆動する。
また、記録メディア306は、ビデオ会議端末3に対して着脱自在な構成となっている。また、CPU301の制御にしたがってデータの読み出し又は書き込みを行う不揮発性メモリであれば、フラッシュメモリ304に限らず、EEPROM(Electrically Erasable and Programmable ROM)等を用いてもよい。
<通信管理システム、PCのハードウェア構成>
次に、図11を用いて、通信管理システム5及びPC7のハードウェア構成を説明する。図11は、通信管理システム及びPCのハードウェア構成図である。なお、通信管理システム5及びPC7は、ともにコンピュータで同じ構成を有しているため、以下では、通信管理システム5の構成について説明し、PC7の構成の追加で説明する。
通信管理システム5は、通信管理システム5全体の動作を制御するCPU501、IPL等のCPU501の駆動に用いられるプログラムを記憶したROM502、CPU501のワークエリアとして使用されるRAM503、通信管理システム5用のプログラム等の各種データを記憶するHD504、CPU501の制御にしたがってHD504に対する各種データの読み出し又は書き込みを制御するHDD(Hard Disk Drive)505、フラッシュメモリ等の記録メディア506に対するデータの読み出し又は書き込み(記憶)を制御するメディアドライブ507、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示するディスプレイ508、通信ネットワーク100を利用してデータ通信するためのネットワークI/F509、文字、数値、各種指示などの入力のための複数のキーを備えたキーボード511、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行うマウス512、着脱可能な記録媒体の一例としてのCD-RW(Compact Disc -ReWritable)513に対する各種データの読み出しを制御するCD-RWドライブ514、及び、上記各構成要素を図11に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン510を備えている。
以下に、PC7の追加の説明をする。
PC7はマイク515、スピーカ516、音声入出I/F517と、外部機器接続I/Fを備えている。マイク515とスピーカ516は音声入出力I/F517に接続され、ネットワークI/F509を通してビデオ会議端末3a乃至3fとの音声によるコミュニケーションを行える。外部機器接続には撮影装置1aとヘッドマウントディスプレイ端末 8が接続される。ネットワークI/F509を通して、ビデオ会議端末3a乃至3fと映像によるコミュニケーションを行える。
<スマートフォンのハードウェア構成>
PC7(通信端末)とヘッドマウントディスプレイ端末8によって、VR端末が構成されている。なお、PC7(通信端末)とヘッドマウントディスプレイ端末8は、スマートフォン1台で代替することが可能である。ここで、図12を用いて、スマートフォンのハードウェアについて説明する。図12は、スマートフォンのハードウェア構成図である。図15に示されているように、スマートフォン9は、CPU901、ROM902、RAM903、EEPROM904、撮像素子I/F913a、CMOSセンサ905、加速度・方位センサ906、メディアI/F908、GPS受信部909を備えている。
これらのうち、CPU901は、スマートフォン9全体の動作を制御する。ROM902は、IPL等のCPU901の駆動に用いられるプログラムを記憶する。RAM903は、CPU901のワークエリアとして使用される。EEPROM904は、CPU901の制御にしたがって、スマートフォン用プログラム等の各種データの読み出し又は書き込みを行う。CMOSセンサ905は、CPU901の制御に従って被写体(主に自画像)を撮像し画像データを得る。撮像素子I/F913bは、CMOSセンサ905の駆動を制御する回路である。加速度・方位センサ906は、地磁気を検知する電子磁気コンパスやジャイロコンパス、加速度センサ等の各種センサである。メディアI/F908は、フラッシュメモリ等の記録メディア907に対するデータの読み出し又は書き込み(記憶)を制御する。GPS受信部909は、GPS衛星からGPS信号を受信する。
また、スマートフォン9は、遠距離通信回路911、CMOSセンサ912、撮像素子I/F913、マイク914、スピーカ915、音入出力I/F916、ディスプレイ917、外部機器接続I/F918、近距離通信回路919、近距離通信回路919のアンテナ919a、及びタッチパネル921を備えている。
これらのうち、遠距離通信回路911は、通信ネットワーク100を介して、他の機器と通信する回路である。CMOSセンサ912は、CPU901の制御に従って被写体を撮像して画像データを得る内蔵型の撮像手段の一種である。撮像素子I/F913bは、CMOSセンサ912の駆動を制御する回路である。マイク914は、音声を入力する内蔵型の集音手段の一種である。音入出力I/F916は、CPU901の制御に従ってマイク914及びスピーカ915との間で音信号の入出力を処理する回路である。ディスプレイ917は、被写体の画像や各種アイコン等を表示する液晶や有機ELなどの表示手段の一種である。この場合、スマートフォン9には、後述の図13に示されているヘッドマウントディスプレイ端末8における表示部808L,808Rの替わりに、ディスプレイ508が2つの領域に分けられる。
外部機器接続I/F918は、各種の外部機器を接続するためのインターフェースである。近距離通信回路919は、NFCやBluetooth等の通信回路である。タッチパネル921は、利用者がディスプレイ917を押下することで、スマートフォン9を操作する入力手段の一種である。
また、スマートフォン9は、バスライン910を備えている。バスライン910は、CPU901等の各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
なお、上記各プログラムが記憶されたCD-ROM、HD等の記録媒体は、プログラム製品(Program Product)として、国内又は国外へ提供されることができる。
<ヘッドマウントディスプレイのハードウェア構成>
図13は、ヘッドマウントディスプレイのハードウェア構成図である。ヘッドマウントディスプレイ端末8は、信号送受信部801、信号処理プロセッサ802、VRAM(Video Random Access Memory)803、パネルコントローラ804、ROM805、CPU806、表示部808R,808L、ROM809、RAM810、音声DAC811、スピーカ812R,812L、ユーザ操作部820、装着センサ821、加速度センサ822、及び輝度センサ830を備えている。また、ヘッドマウントディスプレイ端末8は、電源供給を行う電源部830、及び、電源部830の電源供給を行ったり停止したりすることができる電源スイッチ831を備えている。
これらのうち、信号送受信部801は、図11に示されるPC7の外部機器接続I/F518と接続するケーブルを介して、AV信号を受信したり、CPU206(後述)で処理された情報信号を送信したりする。本実施形態では、AV(Audio Visual)信号はケーブルを介してシリアル転送されるので、信号送受信部201では受信信号のシリアル・パラレル変換が行なわれる。
信号処理プロセッサ802は、信号送受信部801で受信したAV信号を映像信号と音声信号に分離して、それぞれに対して映像信号処理並びに音声信号処理を行なう。
信号処理プロセッサ802では、映像信号処理として、輝度レベル調整やコントラスト調整、その他の画質改善が行なわれる。 また、信号処理プロセッサ802は、CPU806からの指示により、本来の映像信号に対して各種の処理を適用する。例えば、文字及び図形の少なくとも一方で構成されるOSD(On Screen Display)情報を生成して、本来の映像信号に重畳する。ROM805には、OSD情報の生成に必要な信号パターンが格納されており、信号処理プロセッサ802はROM805に格納されている情報を読み出す。
本来の映像情報に重畳されるOSD情報の一例は、画面及び音声の出力調整などのためのGUI(Graphical User Interface)である。そして、映像信号処理を経て生成された画面情報は、VRAM803に一時的に格納される。PC7の外部機器接続I/F518から供給された映像信号が立体視映像信号等左右で映像信号が異なるときには、信号処理プロセッサ802は左右の映像信号に分離して、画面情報を生成する。
左右の表示部808L,808Rはそれぞれ、有機EL(Electro-Luminescence)素子からなる表示パネルと、表示パネルを駆動するゲート・ドライバー及びデータ・ドライバーからなる。また、左右の表示部808L,808Rにはそれぞれ広視野角を持つ光学系が装備される。但し、図13では光学系を省略している。
パネル・コントローラ804は、所定の表示周期毎にVRAM803から画面情報を読み出して、各表示部808L,808Rへ入力するための信号に変換するとともに、ゲート・ドライバー及びデータ・ドライバーの動作に用いられる、水平同期信号、垂直同期信号などのパルス信号を生成する。
CPU806は、ROM809からRAM810にロードされたプログラムを実行して、ヘッドマウントディスプレイ端末8全体の動作を統括的に制御する。また、CPU806は、信号送受信部801を介して、PC7の外部機器接続I/F518との情報信号の送受信を制御する。
ヘッドマウントディスプレイ端末8本体には、ユーザが指などで操作可能な1以上の操作子を備えたユーザ操作部820が装備されている。操作子は、図示しないが、例えば上下左右のカーソルキーと、中央の決定キーの組み合わせからなる。また、本実施形態では、ヘッドフォン812L,812Rの音量を増大する「+」ボタンと、音量を低下させる「-」ボタンもユーザ操作部820に含まれるものとする。CPU806は、ユーザ操作部820から入力されたユーザの指示に従って、表示部808R,808Lからの映像出力やヘッドフォン812L,812Rからの音声出力などに関する処理を信号処理プロセッサ802に対して指示する。また、ユーザ操作部820から映像の再生、停止、早送り、早戻しなどのコンテンツ再生に関する操作が指示されると、CPU806は、信号送受信部801からPC7の外部機器接続I/F518へ、指示内容を通知するための情報信号を送信する。
また、本実施形態では、ヘッドマウントディスプレイ端末8は、装着センサ821、加速度センサ822、輝度センサ823などの複数のセンサを装備している。これらのセンサ出力は、CPU806に入力される。
装着センサ821は、例えば機械スイッチなどからなる。CPU806は、このセンサ出力によってヘッドマウントディスプレイ端末8がユーザに装着されているかどうか、すなわち、ヘッドマウントディスプレイ端末8が現在使用中であるかどうかを判定することができる。
加速度センサ822は、例えば3軸で構成され、ヘッドマウントディスプレイ端末8に加わる加速度の大きさ及び方向を検出する。CPU806は、取得した加速度情報に基づいて、ヘッドマウントディスプレイ端末8を装着したユーザの頭部の移動をトラッキングすることができる。
輝度センサ823は、ヘッドマウントディスプレイ端末8が現在置かれている環境における輝度を検出する。CPU806は、輝度センサ823は、取得した輝度情報に基づいて、映像信号に対して適用する輝度レベル調整を制御するようにしてもよい。
また、CPU806は、必要に応じて、各センサ821~823から取得したセンサ情報を、信号送受信部811からPC7の外部機器接続I/F518に送信することもできる。
電源部830は、PC7から供給される駆動電力を、図13中の破線で囲まれた各回路部品へ供給する。また、ヘッドマウントディスプレイ端末8本体には、ユーザが指などで操作可能な電源スイッチ831が装備されている。電源部830は、電源スイッチ831が操作されたことに応じて、回路部品への給電のオン/オフを切り替えるようになっている。
なお、電源スイッチ831で電源オフにした状態は、電源部830は給電状態で待機している、ヘッドマウントディスプレイ端末8の「スタンバイ」状態とする。また、PC7側では、電源部830と接続される信号線の電圧レベルの変化に基づいて、各回路部品が給電され動作している状態すなわち使用状態か、非使用状態かを判別することができる。
〔実施形態の機能構成〕
続いて、図14乃至図21を用いて、本実施形態の機能構成について説明する。
<撮影装置の機能構成>
まずは、図9及び図14を用いて、撮影装置1の各機能構成について詳細に説明する。図14に示されているように、撮影装置1は、受付部12、撮像部13、集音部14、通信部18、及び記憶・読出部19を有している。これら各部は、図9に示されている各構成要素のいずれかが、SRAM113からDRAM114上に展開された撮影装置用のプログラムに従ったCPU111からの命令によって動作することで実現される機能又は手段である。
また、撮影装置1は、図9に示されているROM112、SRAM113、及びDRAM114によって構築される記憶部1000を有している。記憶部1000には、自装置のGUID(Globally Unique Identifier)が記憶されている。
(撮影装置の各機能構成)
次に、図9及び図14を用いて、撮影装置1の各機能構成について更に詳細に説明する。
撮影装置1の受付部12は、主に、図9に示されている操作部115及びCPU111の処理によって実現され、利用者からの操作入力を受け付ける。
撮像部13は、主に、図9に示されている撮像ユニット101、画像処理ユニット104、及び撮像制御ユニット105、並びにCPU111の処理によって実現され、風景等を撮像し、撮影画像データを得る。
集音部14は、図9に示されているマイク108及び音処理ユニット109、並びにCPU111の処理によって実現され、撮影装置1の周囲の音を集音する。
通信部18は、主に、CPU111の処理によって実現され、ビデオ会議端末3の通信部38と、NFC規格、BlueTooth、Wi-Fi等による近距離無線通信技術によって通信することができる。
記憶・読出部19は、主に、図9に示されているCPU111の処理によって実現され、記憶部1000に各種データ(または情報)を記憶したり、記憶部1000から各種データ(または情報)を読み出したりする。
<ビデオ会議端末の機能構成>
次に、図10及び図14を用いて、ビデオ会議端末3の各機能構成について詳細に説明する。図14には、ビデオ会議端末3の機能構成が示されている。なお、他のビデオ会議端末3b~3fの機能構成は、ビデオ会議端末3と同様の機能構成であるため、これらの説明を省略する。
図14に示されているように、ビデオ会議端末3は、送受信部31、受付部32、画像・音処理部33、表示制御部34、判断部35、作成部36、撮影装置位置情報入力部37、通信部38、及び記憶・読出部39を有している。これら各部は、図11に示されている各構成要素のいずれかが、フラッシュメモリ304からRAM303上に展開されたビデオ会議端末3用プログラムに従ったCPU301からの命令によって動作することで実現される機能又は手段である。
また、ビデオ会議端末3は、図10に示されているROM302、RAM303、及びフラッシュメモリ304によって構築される記憶部3000を有している。この記憶部3000には、画像種類管理DB3001、撮影装置管理DB3002、及び撮影装置方向・位置情報管理DB3003が構築されている。これらのうち、画像種類管理DB3001は、図15に示されている画像種類管理テーブルによって構成されている。撮影装置管理DB3002は、図16に示される撮影装置管理テーブルによって構成されている。撮影装置方向・位置情報管理DB3003は、図17に示されている撮影装置方向・位置情報管理テーブルによって構成されている。
(画像種類管理テーブル)
<画像種類管理テーブル>
図15は、画像種類管理テーブルを示す概念図である。この画像種類管理テーブルでは、画像データID、送信元端末の宛先の一例であるIPアドレス、及びソース名が関連付けて記憶されて管理されている。これらのうち、画像データIDは、ビデオ通信を行なう際の画像データを識別するための画像データ識別情報の一例である。同じ送信元端末から送信される画像データには、同じ画像データIDが付加されている。これにより、送信先端末(受信側の通信端末)は、受信した画像データの送信元端末を特定することができる。送信元端末のIPアドレスは、関連付けられている画像データIDで示される画像データを送信する通信端末のIPアドレスを示す。ソース名は、関連付けられている画像データIDで示される画像データを出力する撮影装置を特定するための名称であり、画像種類情報の一例である。このソース名は、所定の名称の命名規則に従って、ビデオ会議端末3a等の各通信端末によって作成された名称である。
例えば、IPアドレスがそれぞれ「1.2.1.3」、「1.2.2.3」、「1.3.1.3」、「1.2.1.4」、「1.3.1.4」の5つの通信端末は、それぞれ、画像データID「RS001」、「RS002」、「RS003」、「RS004」、「RS005」によって示される画像データを送信していることが表されている。更に、各通信端末のソース名によって示される画像の種類は、「Video_Theta」、「Video_Theta」、「Video」、「Video」、「Video_Theta」であり、これらは順に画像種類が「特殊画像」、「特殊画像」、「一般画像」、「一般画像」、「特殊画像」である旨を示している。なお、特殊画像は、ここでは、全天球パノラマ画像である。
なお、画像データ以外のデータについても、画像データIDと関連付けて管理してもよい。画像データ以外のデータは、例えば、音データ、画面共有時の資料データである。また、画像データ以外のデータについても、画像データIDと関連付けて管理してもよい。画像データ以外のデータは、例えば、音データ、画面共有時の資料データである。
(撮影装置管理テーブル)
図16は、撮影装置管理テーブルを示す概念図である。この撮影装置管理テーブルでは、全天球パノラマ画像の元になる2つの半球画像を得ることができる撮影装置のGUIDのうちのベンダIDとプロダクトIDが記憶されて管理されている。GUIDとしては、例えば、USBデバイスで利用されるベンダーID(VID)とプロダクトID(PID)が利用できる。このベンダIDとプロダクトIDは、ビデオ会議端末等の通信端末の工場出荷時から記憶されているが、工場出荷後に追加で記憶してもよい。
(方向・位置情報管理テーブル)
図17は、ビデオ会議端末で管理されている方向・位置情報管理テーブルを示す概念図である。この方向・位置情報管理テーブルでは、解説者が入力する情報と入力後にビデオ会議端末3の撮影装置管理DB3002から取得された情報とにより構成された撮影装置の方向・位置情報が管理されている。この撮影装置情報は、画像データID、仮想空間内の左上端位置(Top,Left)、仮想空間内の右下端位置(Bottom,Right)、ヘッドマウントディスプレイ内の表示方向(Θ,Φ)、及び、仮想空間内のヘッドマウントディスプレイのマッピング位置(x,y,z)が関連づけられた情報である
これらのうち、画像データIDは、撮影装置管理DB3002から取得された画像データIDである。
図28に示すように、仮想空間Topは、撮影装置1の位置をマッピングする仮想空間の領域のTopを示す。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
仮想空間Leftは、撮影装置1の位置をマッピングする仮想空間の領域のLeftを示す。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
仮想空間Bottomは、撮影装置1の位置をマッピングする仮想空間の領域のBottomを示す。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
仮想空間Rightは、撮影装置1の位置をマッピングする仮想空間の領域のRightを格納する。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
なお、仮想空間内の左上端位置(Top,Left)、仮想空間内の右下端位置(Bottom,Right)は、撮影装置1ではなく、撮影装置1に接続されたビデオ会議端末3の位置を示すようにしてもよい。
方向Θ(極角)は、撮影装置1の撮影方向Θを示す(図6、図30参照)。方向Φ(方位角)は、撮影装置1の撮影方向Φ(図6、図30参照)。
マッピング位置xは、撮影装置1の実空間の展示会場の位置を仮想空間にマッピングしたときのX軸の位置を示す。マッピング位置yは、撮影装置1の実空間の展示会場の位置を仮想空間にマッピングしたときのY軸の位置を示す。マッピング位置zは、撮影装置1の実空間の展示会場の位置を仮想空間にマッピングしたときのZ軸の位置を示す(以下の説明では常に0とし、省略する)。
なお、仮想空間Top~マッピング位置zまでの項目は、展示会場で映像配信を行うビデオ会議端末3と撮影装置1がある場合に入力を行う。VR端末のように参加者側である場合は展示会場にない端末と区別するため、特別な値を格納する。図20のセッションID「se101」・画像データID「RS010」の例のように、null値を入れてもよい。
(ビデオ会議端末の各機能構成)
次に、図10及び図14を用いて、ビデオ会議端末3の各機能構成について更に詳細に説明する。
ビデオ会議端末3の送受信部31は、主に、図10に示されているネットワークI/F311及びCPU301の処理によって実現され、通信ネットワーク100を介して、通信管理システム5と各種データ(または情報)の送受信を行う。
受付部32は、主に操作ボタン308及びCPU301による処理によって実現され、利用者から各種の選択又は入力を受け付ける。また、操作ボタン308だけでなく、他の入力手段としてタッチパネル等を用いてもよい。
画像・音処理部33は、CPU301からの命令によって実現され、カメラ312が被写体を撮像して得た画像データに対して画像処理を行なう。また、画像・音処理部33は、マイク314によって利用者の音声が音声信号に変換された後、この音声信号に係る音データに対して音声処理を行なう。
更に、画像・音処理部33は、表示制御部34がディスプレイ4に画像を表示させるため、ソース名等の画像種類情報に基づき、他の通信端末から受信された画像データに対して画像処理を行なう。具体的には、画像種類情報が特殊画像である旨を示す場合には、画像・音処理部33は、画像データ(例えば、図3(a),(b)に示されているような各半球画像のデータ)に基づいて、図4(b)に示されているような全天球パノラマ画像データに変換することで全天球パノラマ画像データを作成し、更に、所定領域画像を作成する。また、画像・音処理部33は、他の通信端末から通信管理システム5を介して受信された音データに係る音声信号をスピーカ315に出力し、スピーカ315から音声を出力させる。
表示制御部34は、主にディスプレイI/F317及びCPU301の処理によって実現され、ディスプレイ4に各種画像や文字等を表示させるための制御を行う。
判断部35は、主にCPU301の処理によって実現され、例えば、撮影装置1aから受信された画像データに係る画像種類を判断する。
作成部36は、主にCPU301の処理によって実現され、判断部35によって、一般画像又は特殊画像(ここでは、全天球パノラマ画像)と判断された結果に基づき、上述の命名規則に従って、画像種類情報の一例であるソース名を作成する。例えば、判断部35が、一般画像であると判断した場合には、作成部36は、一般画像である旨を示すソース名「Video」を作成する。一方、判断部35が、特殊画像であると判断した場合には、作成部36は、特殊画像である旨を示すソース名「Video_Theta」を作成する。
撮影装置位置情報入力部37は、解説者Ca~Cfもしくは設営者Eaが、撮影装置方向・位置管理DB3003への仮想空間Top、仮想空間Bottom、仮想空間Right、方向θ(極角)、方向(方位角)、マッピング位置x、マッピング位置y、マッピング位置zを、図10の操作ボタン308とディスプレイ4で入力するための処理部を有する。
通信部38は、主に、近距離通信回路319、アンテナ318a、及びCPU301の処理によって実現され、撮影装置1aの通信部18aと、NFC、BlueTooth、Wi-Fi等による近距離無線技術によって通信することができる。なお、通信部38と送受信部31とは通信ユニットを別個に有する構成で説明したが、共用構成であってもよい。
記憶・読出部39は、主に、図11に示されているCPU301の処理によって実現され、記憶部3000に各種データ(または情報)を記憶したり、記憶部3000から各種データ(または情報)を読み出したりする。
<通信管理システムの機能構成>
次に、図11及び図14を用いて、通信管理システム5の各機能構成について詳細に説明する。通信管理システム5は、送受信部51、判断部55、生成部56、撮影装置位置情報・セッション処理部57、及び記憶・読出部59を有している。これら各部は、図11に示されている各構成要素のいずれかが、HD504からRAM503上に展開された通信管理システム5用プログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。
また、通信管理システム5は、図11に示されているRAM503、及びHD504によって構築される記憶部5000を有している。この記憶部5000には、セッション管理DB5001、画像種類管理DB5002、及び撮影装置方向・位置情報一覧管理DB5003が構築されている。このうち、セッション管理DB5001は、図18に示されているセッション管理テーブルによって構成されている。画像種類管理DB5002は、図19に示される画像種類管理テーブルによって構成されている。方向・位置情報一覧管理DB5003は、図20に示されている方向・位置情報一覧管理テーブルによって構成されている。
(セッション管理テーブル)
図18は、セッション管理テーブルを示す概念図である。このセッション管理テーブルでは、セッションID、及び参加した通信端末のIPアドレスが関連付けて記憶されて管理されている。このうち、セッションIDは、映像通話を実現する通信セッションを識別するためのセッション識別情報の一例であり、仮想の会議室ごとに生成される。セッションIDは、ビデオ会議端末3a等の各通信端末でも管理されており、各通信端末において通信セッションの選択の際に利用される。参加した通信端末のIPアドレスは、関連付けられているセッションIDで示される仮想の会議室に参加した通信端末のIPアドレスを示している。
(画像種類管理テーブル)
図19は、画像種類管理テーブルを示す概念図である。図19に示されている画像種類管理テーブルは、図19に示されている画像種類管理テーブルで管理されている各情報に加え、セッション管理テーブルで管理されているセッションIDと同じセッションIDが関連付けて管理されている。ここでは、同じセッションID「se101」で示される仮想の会議室には、IPアドレスがそれぞれ「1.2.1.3」、「1.2.2.3」、「1.3.1.3」、「1.2.1.4」、「1.3.1.4」、「1.7.1.4」の6つの通信端末が参加していることが示されている。なお、通信管理システム5において、ビデオ会議端末3a等の通信端末で管理される、画像データID、送信元端末のIPアドレス、及び画像種類情報を同じものを管理するのは、新たな通信端末が仮想の会議室に入る場合等に、既に映像通話中の通信端末と新たに参加した通信端末に、画像種類情報等を送信するためである。これにより、既に映像通話中の通信端末と新たに参加した通信端末との間で、画像種類情報等の送受信を行なう必要がない。
(撮影装置方向・位置情報一覧管理テーブル)
図20は、撮影装置方向・位置情報一覧管理テーブルを示す概念図である。この撮影装置方向・位置情報一覧管理テーブルは、各ビデオ会議端末で管理されている撮影装置方向・位置情報管理テーブルの情報の全てを一元管理するためのテーブルである。更に、セッション管理DB5001及び画像種類管理DB5002と関連付けるために、セッションIDも関連付けられている。
これらのうち、セッションIDは、セッション管理DB5001から取得したセッションIDであ。画像データIDは、画像種類管理DB3001から取得された画像データIDである。送信元端末IPアドレスは、送信元(自端末)のIPアドレスである。
図28に示すように、仮想空間Topは、撮影装置1の位置をマッピングする仮想空間の領域のTopを示す。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
仮想空間Leftは、撮影装置1の位置をマッピングする仮想空間の領域のLeftを示す。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
仮想空間Bottomは、撮影装置1の位置をマッピングする仮想空間の領域のBottomを示す。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
仮想空間Rightは、撮影装置1の位置をマッピングする仮想空間の領域のRightを格納する。参加しているビデオ会議5台の端末のうち、1つ設定していればよい(複数設定しても最大領域をとる処理がある)。
なお、仮想空間内の左上端位置(Top,Left)、仮想空間内の右下端位置(Bottom,Right)は、撮影装置1ではなく、撮影装置1に接続されたビデオ会議端末3の位置を示すようにしてもよい。
方向Θ(極角)は、撮影装置1の撮影方向Θを示す(図6参照)。方向Φ(方位角)は、撮影装置1の撮影方向Φ(図6参照)。
マッピング位置xは、撮影装置1の現実世界の実位置を仮想空間にマッピングしたときのX軸の位置を示す。マッピング位置yは、撮影装置1の現実世界の実位置を仮想空間にマッピングしたときのY軸の位置を示す。マッピング位置zは、撮影装置1の現実世界の実位置を仮想空間にマッピングしたときのZ軸の位置を示す(以下の説明では常に0とし、省略する)。
なお、仮想空間Top~マッピング位置zまでの項目は、展示会場で映像配信を行うビデオ会議端末3と撮影装置1がある場合に入力を行う。VR端末のように参加者側である場合は展示会場にない端末と区別するため、特別な値を格納する。図20のセッションID「se101」・画像データID「RS010」の例のように、null値を入れてもよい。
(通信管理システムの各機能構成)
次に、図11及び図14を用いて、通信管理システム5の各機能構成について詳細に説明する。
通信管理システム5の送受信部51は、主に、図11に示されているネットワークI/F509及びCPU501の処理によって実現され、通信ネットワーク100を介してビデオ会議端末3、又はPC7と各種データ(または情報)の送受信を行う。
判断部55は、主にCPU501の処理によって実現され、各種判断を行なう。
生成部56は、主にCPU501の処理によって実現され、画像データIDを生成する。
撮影装置位置情報・セッション処理部57は、主にCPU501の処理によって実現され、方向・位置情報管理DB3003と画像種類管理DB5002の各情報と、ビデオ会議端末3の撮影装置方向・位置情報管理DB3003から取得された撮影装置の方向・位置情報から、方向・位置情報一覧管理DB5003の情報を作成する処理部である。具体的には、ビデオ会議端末3から方向・位置情報入力部37で入力された方向・位置情報管理DB撮像画像の撮影装置情報を送受信部31から通信ネットワーク100経由で送受信部61から受信し、セッション管理DB5001及び画像種類管理DB5002の各情報とあわせて方向・位置情報一覧管理DB5003へ格納する処理である。以下の説明は例として、撮影装置1を全天球カメラとしている。ここで、全天球カメラは、通常のカメラでも、2次元のパノラマカメラであってもよい。
記憶・読出部59は、主に、図11に示されているHDD505、及びCPU501の処理によって実現され、記憶部5000に各種データ(または情報)を記憶したり、記憶部5000から各種データ(または情報)を読み出したりする。
<PCの機能構成>
次に、図11及び図14を用いて、PC7の機能構成について詳細に説明する。PC7は、基本的にビデオ会議端末3と共通の機能を有している。即ち、図14に示されているように、PC7は、送受信部71、受付部72、画像・音処理部73、表示制御部74、判断部75、作成部76、通信部78、及び記憶・読出部79を有している。これら各部は、図11に示されている各構成要素のいずれかが、HD504からRAM503上に展開されたPC7用プログラムに従ったCPU501からの命令によって動作することで実現される機能又は手段である。
更に、PC7は、マッピング部40、画像データID選択部41、仮想最大空間記憶部43、ヘッドマウントディスプレイ方向・位置記憶部44、及びセッションID記憶部45を有している。
また、PC7は、図11に示されているROM502、RAM503、及びHD504によって構築される記憶部7000を有している。この記憶部7000には、画像種類管理DB7001、撮影装置管理DB7002、及び撮影装置方向・位置情報一覧管理DB7003が構築されている。なお、画像種類管理DB7001、撮影装置管理DB7002、及び撮影装置方向・位置情報一覧管理DB7003は、それぞれ画像種類管理DB3001、撮影装置管理DB3002、及び方向・位置情報一覧管理DB5003同じ構成であるため説明を省略する。
(PCの各機能構成)
PC7の送受信部71は、主に、図11に示されているネットワークI/F509及びCPU501の処理によって実現され、送受信部31と同様の機能を実現する。
受付部72は、主にキーボード511、マウス512及びCPU501の処理によって実現され、受付部32と同様の機能を実現する。
画像・音処理部73は、主にCPU501からの命令によって実現され、画像・音処理部33と同様の機能を実現する。
表示制御部74は、主にCPU501の処理によって実現され、表示制御部34と同様の機能を実現する。
判断部75は、主にCPU501の処理によって実現され、判断部35と同様の機能を実現する。
作成部76は、主にCPU501の処理によって実現され、作成部36と同様の機能を実現する。
通信部78は、主に、CPU501の処理によって実現され、通信部38と同様の機能を実現する。
記憶・読出部79は、CPU501の処理によって実現され、記憶部7000に各種データ(または情報)を記憶したり、記憶部7000から各種データ(または情報)を読み出したりする。
更に、マッピング部40は、CPU501の処理によって実現され、後述のマッピング情報を処理する(図30のフローチャート参照)。
画像データID選択部41は、CPU501の処理によって実現され、位置情報からヘッドマウントディスプレイ端末8へ表示する(図31のフローチャート参照)。
仮想最大空間記憶部43は、ROM809及びRAM810によって実現され、マッピング部40によって計算された値を示す仮想最大空間情報を格納する。ビデオ会議端末3a~3eで入力された仮想空間Top, Left, Bottom, Rightの値から仮想空間が最大となる値を格納する。
図21は、仮想最大空間記憶部に記憶された仮想最大空間情報の概念図である。これらのうち、仮想最大空間Topは、マッピングされる仮想空間のTopを示す。仮想最大空間Leftは、マッピングする仮想空間のLeftを示す。仮想最大空間Bottomは、マッピングする仮想空間のBottomを示す。仮想最大空間Rightは、マッピングする仮想空間のRightを示す。
Scale Xは、実空間(図29参照)に対する仮想空間(図28参照)のプレイエリアのX軸の比率(倍)を示す。Scale Yは、実空間(図29参照)に対する仮想空間(図28参照)のプレイエリアのY軸の比率(倍)を示す。仮想空間とプレイエリアのY軸の比を格納する。Scale Zは、実空間(図29参照)に対する仮想空間(図28参照)のプレイエリアのY軸の比率(倍)を示す(以下の説明では常に0とし、省略する)。
ヘッドマウントディスプレイ方向・位置記憶部44は、ROM809及びRAM810によって実現され、ルームスケールがある場合、図22に示されているルームスケールの位置情報を格納する。ルームスケールではない場合は、空の値を入れる。
図22は、ヘッドマウントディスプレイ方向・位置記憶部44に記憶されたヘッドマウントディスプレイ情報の概念図である。図14に示されている画像データID選択部41で使用され、マッピングに使用する領域情報が格納される。
これらのうち、方向Θ(極角)は、ヘッドマウントディスプレイ端末8の方向Θを示す(図6、図30参照)。方向Φ(方位角)は、ヘッドマウントディスプレイ端末8の方向Φ(図6、図30参照)。位置Xは、実空間における会議室のルームスケールにおけるヘッドマウントディスプレイ端末8のX軸の位置を示す。位置Yは、実空間における会議室のルームスケールにおけるヘッドマウントディスプレイのY軸の位置を示す。位置Zは、実空間における会議室のルームスケールにおけるヘッドマウントディスプレイのZ軸の位置(以下の説明では常に0とし、省略する)。
セッションID記憶部45は、ROM809及びRAM810によって実現され、特定の通信セッションへの参加処理で選択されたセッションIDを記憶する。
<ヘッドマウントディスプレイ端末の機能構成>
次に、図13及び図14を用いて、ヘッドマウントディスプレイ端末8の各機能構成について詳細に説明する。ヘッドマウントディスプレイ端末8は、音出力部81、表示部82、ユーザ操作部83、主制御部84、装着センサ部85、加速度センサ部86、音制御部87、及び通信部88を有している。これら各部は、図11に示されている各構成要素のいずれかが、ROM805からVRAM803上、又はROM809からRAM810上に展開されたヘッドマウントディスプレイ端末8用プログラムに従ったCPU806からの命令によって動作することで実現される機能又は手段である。
(<ヘッドマウントディスプレイ端末の各機能構成)
音出力部81は、主にCPU806の処理、及びスピーカ812R,812Lによって実現され、装着者(参加者)へ音を伝える。表示部82は、主にCPU806の処理、及び表示部808R,808Lによって実現され、選択した画像を表示する。主制御部84は、主にCPU806によって実現され、ヘッドマウントディスプレイの処理に必要な処理を表す。
装着センサ部85は、主にCPU806の処理、及び装着センサ821によって実現され、参加者がヘッドマウントディスプレイ端末8を装着しているかを調べる処理を行う。加速度センサ部86は、主にCPU806の処理、及び加速度センサ822によって実現され、ヘッドマウントディスプレイ端末8の移動を検知する処理を行う。
音制御部87は、主にCPU806の処理、及び音声DAC811によって実現され、ヘッドマウントディスプレイ端末8から音を出す処理を制御する。
通信部88は、主に、CPU806の処理、及び信号送受信部801によって実現され、通信部78と通信するために通信部78と同様の機能を有する。
〔実施形態の処理又は動作〕
続いて図23乃至図36を用いて、本実施形態の処理又は動作について説明する。
<参加の処理>
まず、図23及び図24を用いて、特定の通信セッションへの参加処理について説明する。図23は、特定の通信セッションへの参加処理を示したシーケンス図である。図24は、通信セッション(仮想の会議室)の選択画面を示した図である。
まず、の利用者(例えば、解説者Ca)が、ビデオ会議端末3aにおいて、通信セッション(仮想の会議室)の選択画面の表示を行なう操作をすると、受付部32aが選択画面を表示する操作を受け付け、表示制御部34aがディスプレイ4aに、図24に示されているような選択画面を表示する(ステップS21)。この選択画面には、選択対象である各展示会場501、502及び会議室R3等を示す選択ボタンb1,b2,b3等が表示されている。また、各選択ボタンb1等には、各セッションIDが関連付けられている。
ここで、利用者Caが仮想の会議室の所望の選択ボタン(ここでは選択ボタンb2)を選択すると、受付部32aは、通信セッションの選択を受け付ける(ステップS22)。そして、送受信部31aは、通信管理システム5に対して、展示会場501への参加要求を送信する(ステップS23)。この参加要求には、ステップS22で選択を受け付けられた通信セッションを示すセッションID、及び要求元端末であるビデオ会議端末3aのIPアドレスが含まれている。これにより、通信管理システム5の送受信部61は、参加要求を受信する。
次に、記憶・読出部69は、セッション管理DB5001(図23参照)において、ステップS23で受信されたセッションIDと同じセッションIDのレコードにおける参加端末IPアドレスのフィールドに、ステップS23で受信されたIPアドレスを追加することで、通信セッションへの参加処理を行なう(ステップS24)。そして、送受信部61は、ビデオ会議端末3aに対して、参加要求応答を送信する(ステップS25)。この参加要求応答には、ステップS23によって受信されたセッションID、及び参加処理結果が含まれている。これにより、ビデオ会議端末3aの送受信部31aは、参加要求応答を受信する。
図24は、通信セッション(仮想の会議室)の選択画面を示した図である。通信セッションの選択画面はVRの展示会場を選択する。通常のビデオ会議への選択項目があってよい。
選択ボタンb1,b2は、展示会場に設置されている他のビデオ会議端末と通信する場合に押下されるボタンである。この選択ボタンb1,b2が押下されると、それぞれセッションID「se101」,「se102」で示される通信セッションが確立される。また、選択ボタンb3は、仮想空間を利用したマッピングの処理を行わず、通常の映像通信を行う場合に押下されるボタンである。この選択ボタンb3が押下されると、セッションID「se103」で示される通信セッションが確立される。このように、仮想空間を利用したマッピングの処理と通常の映像通信の処理の両方の選択を一つの画面で行うことができる。
以降、参加処理が成功した場合について説明する。
<画像種類情報の管理処理>
続いて、図25を用いて、画像種類情報の管理処理を説明する。図25は、画像種類情報の管理処理を示すシーケンス図である。
まず、拠点Aの利用者(例えば、利用者A1)が、ビデオ会議端末3に、撮影装置1aが取り付けられた状態のクレードル1aのUSBケーブルを接続すると、撮影装置1aの記憶・読出部19が記憶部1000に記憶されている自装置(撮影装置1a)のGUIDを読み出し、通信部11がビデオ会議端末3aの通信部38に対して自装置のGUIDを送信する(ステップS51)。これにより、ビデオ会議端末3の通信部38は、撮影装置1aのGUIDを受信する。
次に、ビデオ会議端末3の判断部35は、撮影装置管理DB3002a(図16参照)において、ステップS51によって受信されたGUID中のベンダID及びプロダクトIDと、同じベンダID及びプロダクトIDが管理されているか否かを判断することで、画像種類を判断する(ステップS52)。具体的には、撮影装置管理DB3002において、同じベンダID及びプロダクトIDが管理されている場合には、判断部35は、撮影装置1aが特殊画像(ここでは、全天球パノラマ画像)を撮影する撮影装置であると判断する。これに対して、撮影装置管理DB3002において、同じベンダID及びプロダクトIDが管理されていない場合には、判断部35は、撮影装置1aが一般画像を撮影する撮影装置であると判断する。
次に、記憶・読出部39は、画像種類管理DB3001(図15参照)に対して、送信元端末である自端末(ビデオ会議端末3a)のIPアドレスと、ステップS52で判断された判断結果である画像種類情報とを関連付けて記憶する(ステップS53)。この状態では、画像データIDは関連付けられていない。画像種類情報は、例えば、所定の命名規則に従って定められたソース名や、画像種類(一般画像、特殊画像)である。
次に、送受信部31は、通信管理システム5に対して、画像種類情報の追加要求を送信する(ステップS54)。この画像種類情報の追加要求には、ステップS53で記憶した送信元端末である自端末のIPアドレス、及び画像種類情報が含まれている。これにより、通信管理システム5の送受信部61は、画像種類情報の追加要求を受信する。
次に、通信管理システム5の記憶・読出部69は、ステップS54によって受信された送信元端末のIPアドレスを検索キーとして、セッション管理DB5001(図18参照)を検索することにより、対応するセッションIDを読み出す(ステップS55)。
次に、生成部66は、固有の画像データIDを生成する(ステップS56)。そして、記憶・読出部59は、画像種類管理DB6002(図24参照)に、新たなレコードとして、ステップS55で読み出されたセッションID、ステップS56で生成された画像データID、並びに、ステップS54で受信された送信元端末のIPアドレス及び画像種類情報を関連付けて記憶する(ステップS57)。そして、送受信部61は、ビデオ会議端末3aに対して、ステップS56で生成された画像データIDを送信する。これにより、ビデオ会議端末3aの送受信部31は、画像データIDを受信する(ステップS58)。
次に、ビデオ会議端末3の記憶・読出部39は、画像種類管理DB3001(図17参照)に、上記ステップS53で記憶しておいた送信元端末である自端末(ビデオ会議端末3)のIPアドレス及び画像種類情報に関連づけて、ステップS58で受信された画像データIDを記憶する(ステップS59)。
一方、通信管理システム5の送受信部61は、他の通信端末(ここでは、PC7)に対して、画像種類情報の追加通知を送信する(ステップS60)。この画像種類情報の追加通知には、ステップS56で生成された画像データID、並びに、ステップS53で記憶された送信元端末である自端末(ビデオ会議端末3a)のIPアドレス及び画像種類情報が含まれている。これにより、PC7の送受信部71は、画像種類情報の追加通知を受信する。なお、送受信部61の送信先は、セッション管理DB5001(図23参照)で、ビデオ会議端末3aのIPアドレスと同じセッションIDに関連付けられている他のIPアドレスである。即ち、送信先は、ビデオ会議端末3aと同じ仮想の会議室に入っている他の通信端末である。
次に、PC7の記憶・読出部79は、画像種類管理DB7001(図15参照)に、新たなレコードとして、ステップS60で受信された、画像データID、送信元端末のIPアドレス、及び画像種類情報を関連付けて記憶する(ステップS61)。同じように、他の通信端末であるビデオ会議端末3b~3f及びPC7にも画像種類情報の追加通信が送信され、ビデオ会議端末3b~3f及びPC7でも、それぞれ画像種類管理DB3001,7001に記憶される。以上より、各通信端末では、各画像種類管理DB3001,5002,7001で同じ情報を共有することができる。
<撮影装置方向・位置情報管理の管理処理を示したシーケンス図>
図26は、撮影装置方向・位置情報管理の管理処理を示したシーケンス図である。
カメラの方向・位置情報を入力するのは設営者Eaである。
その後、ビデオ会議端末3から通信管理システム5で自動的にリストを作成し、PC7へ送信される。その過程で、カメラの映像を識別するため、画像データIDと、参加しているビデオ会議を識別するためのセッションIDが追加される。
以下、順番に説明する。
解説者Caがビデオ会議端末3に撮影装置方向・位置情報DB3003に格納するための仮想空間、方向及びマッピング位置の情報を入力することで、受付部32が、仮想空間、方向及びマッピング位置の情報の入力を受け付ける(ステップS701)。入力されるカラムは以下の通りである。
・仮想空間Top, 仮想空間Left, 仮想空間Bottom, 仮想空間Right, 方向Θ(極角), 方向Φ(方位角), マッピング位置X,マッピング位置Y,(マッピング位置Z)
なお、マッピング位置Zは説明簡略化のため以下の説明では省略し、すべて0とする。
次に、記憶・読出部39は、画像種類管理DB3001から画像データIDを取得する(ステップS702)。記憶・読出部39は、ステップS702で所得した画像データIDと、ステップS701で受け付けられた仮想空間、方向及びマッピング位置の情報とを、撮影装置情報として撮影装置方向・位置情報管理DB3003へ記憶する(ステップS703)。
次に、送受信部31は、通信管理システム5の送受信部51に、撮影装置方向・位置情報DB3003の撮影装置情報と、送信端末であるビデオ会議端末3a(自端末)のIPアドレスと、画像データIDを送信する(ステップS704)。
次に、通信管理システム5の記憶・読出部59は、セッション管理DB5001から、セッションIDを読み出す(ステップS705)。そして、記憶・読出部59は、ステップS704で受信された情報に、ステップS705で読み出されたセッションIDを加え、撮影装置方向・位置情報一覧管理DB5003へ記憶する(ステップS706)。送受信部51は、PC7の送受信部71に、撮影装置方向・位置情報一覧管理DB5003の情報をPC7の送受信部71に送信する(ステップS707)。この場合、PC7へは、PC7が参加しているセッションIDのみ絞って送信してよい。
次に、PC7では、記憶・読出部79が、ステップS707で受信された各情報を、撮影装置方向・位置情報一覧管理DB7003に記憶する(ステップS708)。
<マッピング処理>
次に、実空間(現実世界)の撮影装置1(ビデオ会議端末3)を仮想空間(仮想世界)にマッピングするマッピング処理について説明する。
なお、マッピング処理を説明する前に、図27乃至図29を用いて、実世界と仮想世界のエリアについて説明する。
(実空間内の位置関係)
図27は、実空間の展示会場におけるテレビ会議端末(撮影装置)の位置を示す図である。ここでは、展示会場501にビデオ会議端末を5つ置いた例と展示会場502にビデオ会議端末3つ置いた例が示されている。
ビデオ会議端末3a~3eにはぞれぞれ、撮影装置1a~1eが接続されており、位置rp1~rp5は、撮影装置1a~1eの位置とする。
位置と会場情報(Top, Left, Bottom, Right)は物理的な位置で、ここでは単位をmとする。設営者Ea又は設営者Ebは、この部地理位置を参考に撮影装置方向・位置情報の図34のマッピング情報を入力する。
以降、「ビデオ会議端末3に接続された撮影装置で撮影された画像の画像データID」を「ビデオ会議端末3の画像データID」と示すこととする。また、「ビデオ会議端末の画像データID」を選択することは、画像データIDが決まるとビデオ会議端末が決まるため、コミュニケーションを行うビデオ会議端末を選択しているのと同じことである。
(仮想空間内の位置関係)
図28は、仮想区間の展示会場におけるテレビ会議端末(撮影装置)の位置を示す図である。ここでは、展示会場とビデオ会議端末(撮影装置)の設置位置」の物理的な位置を参考に、撮影装置方向・位置情報を仮想空間にマッピングした例を示す。図28の位置rp1~rp5はマッピング位置vp1~vp5にマッピングされている。この例では、1mを1単位として、仮想空間上にマッピングしている。入力するのは設営者Eaであり、入力端末は、各ビデオ会議端末である。なお、入力するのは解説者Ca~Ceであってもよい。
マッピング位置は、必ずしも物理的名位置を模している必要はなく、図33(b)ではY軸方向にマッピング位置を配置している例を示す。
最初に、参加者Acは仮想空間上にはプレイヤーPbとして配置し、移動した位置を位置(x,y)とする。
仮想空間領域情報は、会場領域情報を参考に設定した仮想空間の領域のこととする。各ビデオ会議端末から入力する。1つだけ入力されていればよいが、複数入力されている場合は、後述の図30のマッピング部40によるフローチャートの処理で、撮影装置方向・位置情報一覧管理DB7003から最大領域となるように値を算出する。仮想空間領域情報は、ルームスケールの場合にScaleを算出するのに使用する。
(ルームスケール)
図29は、実空間における会議室のルームスケールを示す図である。ここでは、展示会場をマッピングした仮想空間」を移動するための1つの手段である「ルームスケール」の例である。また、参加者Acは、2m四方のルームスケールのプレイエリアを動くことで、仮想空間上のプレイヤーを移動する。
仮想空間の単位と、プレイエリアは、図30のマッピング部40によるフローチャートの処理で比率が計算される。ここでは、200単位と2mであるため、その比率は100となる。参加者が0.01m右へ動くと、仮想空間上のプレイヤーは右に1m動く。
参加者の移動後は、図31の画像データID選択部41によるフローチャートの処理で、最も近くにマッピングされたカメラの位置情報の画像データIDを取得し、VR端末にその画像データIDの画像を表示する。
(マッピング部の処理)
図30は、マッピング部40が実行する処理を示すフローチャートである。即ち、下記S801~S811の処理の主体は、マッピング部40であるため、主体の説明を省略する。
S801:開始する。
S802:VR端末の自端末のセッションIDを取得する。
S803:撮影装置方向・位置情報一覧管理DB7003から自端末と同じセッションIDの撮影装置方向・位置情報一覧の情報を取得する(撮影装置方向・位置情報一覧DB5003は、図26でVR端末のPC7に送信済み)。
S804:「VR端末を示すnull値」(図20参照)を除外した撮影装置方向・位置情報一覧を作成する。
S805:S804で作成した撮影装置方向・位置情報一覧から、仮想空間Top, Left, Bottom, Rightの値を取得し、領域が最大になるようにTop, Left, Bottom, Rightを決める。具体的には、最小のTop, Leftの値、最大のBottom, Rightの値を検索する。
S806:S803で取得した値を「仮想空間最大領域メモリ部43」へ格納する。
S807:仮想空間の移動手段がルームスケールかどうかを判断する。ヘッドマウントディスプレイ方向・位置情報メモリ部42に値があればルームスケールと判断する。ルームスケールでない場合、Scaleの情報は必要ないため、修了となる。
S808:仮想空間領域情報(Top, Left, Bottom, Right)と、プレイエリア領域情報(Top, Left, Bottom, Right)の値からScaleを計算する。以下に式1,2を示す。
ScaleX = (仮想空間領域情報 Right - 仮想空間領域情報 Left) / (プレイエリア領域情報 Right - プレイエリア情報 Left )・・・(式1)
ScaleY = (仮想空間領域情報 Bottom - 仮想空間領域情報Top) / (プレイエリア領域情報 Bottom - プレイエリア情報 Top)・・・(式2)
S809:S808で算出したScale X, Scale Yの情報を仮想最大空間記憶部43に格納する。
S810:撮影装置方向・位置情報一覧を仮想空間にマッピングする。
S811:終了となる。
(画像データID選択部の処理)
図31は、画像データID選択部41が実行する処理を示すフローチャートである。なお、図35でイメージ図を表している。即ち、下記S821~S830の処理の主体は、画像データID選択部41であるため、主体の説明を省略する。
S821:処理開始。
S822:ヘッドマウントディスプレイ方向・位置情報記憶部43からプレイエリアの位置に基づき仮想空間上の位置を取得する。ここで、仮想空間上を移動し、位置情報の取得する手段はワープ、又は十字キーでもよい。
S823:プレイヤーが仮想空間を移動したかどうかを判断する。移動した場合はS824に進み、移動してない場合はS822へ戻る。
S824:全てのマッピング位置とプレイヤーの距離を算出する。
S825:S824で計算した距離で最小のマッピング位置を探す。マッピング位置の情報には画像データIDが含まれているので、距離が最小のマッピング位置の画像データIDを取得する。
S826:表示中の画像データIDと距離が採用の画像データIDを比較し、異なっているかどうかを判定する。異なっている場合はS827へ進み、同じ場合はS828へ進む。
S827:距離が最小の画像データIDをVR端末に表示する。
S828:画像データIDのビデオ会議端末とコミュニケーションを行う。画像データIDが分かると、その画像データIDの送信元のビデオ会議端末を特定できるため、そのビデオ会議端末の周囲にいる解説者とコミュニケーションを行うことができる。また、撮影装置方向・位置情報一覧管理DB7003から、画像データIDと一致するレコードの「送信元端末IPアドレス」を取得し、ビデオ会議端末を特定する。ビデオ会議端末とVR端末でコミュニケーションを開始する。撮影装置1単体では映像を送信することしかできないが、ビデオ会議端末3にはマイク、スピーカ及びカメラが備わっているため、VR端末としては、音声と映像によるコミュニケーションを行うことができる。
S829:ビデオ会議を終了するかどうかを判定し、終了しない場合は、S822の位置の取得へ戻る。ビデオ会議を終了する場合は、S830の終了へ進む。
(展示会場の位置を仮想空間にマッピングするイメージ図)
図32は展示会場の位置を仮想空間にマッピングするイメージ図である。ここでは、実空間の展示会場500の位置rp1~rp5を仮想空間600のマッピング位置vp1~vp5へマッピングした例を示す。図32では、それぞれ、位置rp1~位置rp5と、マッピング位置vp1~vp5に対応する。
展示会場500は、中心を(0,0)として、展示会場500と各ブースの位置を表した例である。展示会場500の数値の単位は(m)とし、仮想空間上の数値の単位は仮想のものであるため、(単位)という呼ぶこととする。この図では、展示会場の物理的名位置をそのまま仮想空間上に反映し、1m=1単位とし、実際の位置をそのまま反映している。プレイヤーPbは仮想空間上の参加者Acの位置を表し、初期配置の位置は(0,0)とする。
(マッピング情報作成からビデオ会議端末(撮影装置)自動選択)
図33は、展示会場の位置を仮想空間にマッピングするイメージ図である。図33では、実空間の展示会場500の位置rp1~rp5を仮想空間600aのマッピング位置vp1~vp5へ、実際の位置を模さずにマッピングした例を示す。マッピングは必ずしも物理的な位置を反映しなくてよい。
また、設営者Eaがマッピング位置をどのように反映させるかは自由でよい。例えば、仮想空間600aのように、マッピング位置vp1~vp5をY軸方向に並べてしまってもよい。
この例が役に立つシーンは、例えば、日本の各会場で展示会を行っている場合などである。宮城、東京、名古屋、大阪、北九州の5箇所にビデオ会議端末が5台配置されている場合、物理的な位置をマッピングするよりも、地理的に北から順番にマッピングし、プレイエリアをY軸方向(前後)に動いてビデオ会議端末からの画像を切り替えられたほうが分かりやすい。また、プレイエリアではなく、ワープや十キーで移動する場合も、前後に移動するだけで、5つの会場のビデオ会議端末の画像を切り替えることができるため、都合がよい。
(仮想空間上の移動手段であるルームスケールと仮想空間)
図34は、仮想空間上の移動手段であるルームスケールと仮想空間のイメージ図である。ここでは、想空間を移動するために、ルームスケールと仮想空間の関係示している。ルームスケールはプレイエリア400内の移動を検知し、Sacleの値をかけて仮想空間上のプレイヤーPbの位置へ反映する。初期配置は(0,0)である。
図34の仮想空間領域情報(-100,-100)及び(100,100)と、プレイエリア領域情報(-1,-1)及び(1,1)と図30のマッピング100のフローチャートからScale(100,100)が計算される。仮想空間600上の単位は、仮想の値である。
プレイエリア400の単位は(m)で、ここの例ではScaleが100であるため、100単位=1mとなる。ここで、マッピング位置vp1~vp5の説明は図32と同じである。
(仮想空間上の移動からビデオ会議端末と撮影装置の自動選択(1))
図35は仮想空間上の移動からビデオ会議端末と撮影装置により生成された画像の自動選択までイメージ図である。ここでは、プレイエリアを移動することで、仮想空間上のプレイヤーが移動し、マッピング位置のビデオ会議端末の画像データIDを自動選択するイメージを示す。ここで、参加者Acがプレイエリア400を移動し、位置(0.8, 0.8) に移動したものとする
Scaleは図32で(100, 100)と算出されているため、仮想空間600のプレイヤーの位置は(-80, -80)となる。
図31のフローチャートのように、全マッピング位置とプレイヤーPbの距離を計算し、最小となるマッピング位置を選択する。
仮想空間上のプレイヤーの位置と全マッピング位置との距離を計算S824で距離を計算すると、マッピング位置2の14.14の値が最小であるため、マッピング位置2が選択される。
撮影装置方向・位置情報一覧管理DB7003には、マッピング位置の情報とともにビデオ会議端末2の画像データIDが入っているため、ビデオ会議端末3の画像データIDを取得することができる。これより、参加者AcのVR端末にはビデオ会議端末2の画像に切り替えられ、表示される。
ここで、画像データIDからビデオ会議端末が判別するため、ビデオ会議端末を選択し、図31のS828の処理の解説者とのコミュニケーションを行うことができる。
(仮想空間上の移動からビデオ会議端末と撮影装置の自動選択(2))
図36は仮想空間上の移動からビデオ会議端末と撮影装置により生成された画像の自動選択までイメージ図である。ここでは、仮想空間600aに示すようにマッピングした場合、プレイエリアを移動することで、仮想空間上のプレイヤーが移動し、マッピング位置のビデオ会議端末の画像データIDを自動選択する。また、参加者Acがプレイエリア400を移動し、位置(0.4, 0.4) に移動したものとする。
Scaleは、図32で(100, 100)と算出されているため、仮想空間600のプレイヤーの位置は(-40, -40)となる。
図31のフローチャートのように、全マッピング位置とプレイヤーPbの距離を計算し、最小となるマッピング位置を選択する。
仮想空間上のプレイヤーの位置と全マッピング位置との距離を計算S824で距離を計算すると、マッピング位置3の40.31の値が最小であるため、マッピング位置3が選択される。
撮影装置方向・位置情報一覧管理DB5003には、マッピング位置の情報とともにビデオ会議端末3の画像データIDが入っているため、ビデオ会議端末3の画像データIDを取得することができる。これより、参加者AcのVR端末にはビデオ会議端末3の画像に切り替えられ、表示される。
ここで、画像データID画像種類管理テーブル(図19参照)からカメラ、スピーカ及びマイクを備えたビデオ会議端末を判別し、ビデオ会議端末を選択し、図31のS828の解説者とのコミュニケーションを行うことができる。
以上説明したように本実施形態によれば、ビデオ会議端末3等の通信端末は、画像データと共に送られて来る画像データIDに基づき、対応する画像種類情報によって、全天球パノラマ画像を作成し、更に所定領域画像を作成することができる。これにより、前側の半球画像と後側の半球画像を表示してしまうことを防止することができるという効果を奏する。
〔本実施形態の主な効果〕
以上説明したように本実施形態によれば、実空間の展示会場に、撮影装置とこの撮影装置の映像(画像)の通信用に用いるビデオ会議端末をセットで複数設置しておく(図8、図27参照)。一方、実空間の会議室等のプレイアリアに位置センサ301,301を設置しておき、参加者がヘッドマウントディスプレイ8を装着してPC7と通信できる状態にしておく(図8、図29参照)。そして、各ビデオ会議端末からの画像は通信管理システム経由でPCに送られている。この状態で、参加者がプレイエリア内を移動すると、この移動位置に対応する展示会場の位置に設置されているビデオ会議端末から送られている画像が参加者のヘッドマウントディスプレイに表示されることができる。
また、実空間の展示会場内の位置と実空間のプレイアリア内の位置を仮想空間を介して関連付ける(図28参照)。これにより、展示会場における各撮影装置の所定の配列を複数の撮影装置の配列とは異なり、VR端末が使用される実空間におけるVR端末の移動可能経路に合わせることができる。例えば図33に示されているように、展示会場500内の撮影装置の配列と仮想空間600内の配列を変更することで、参加者がプレイエリア内を図33(b)の順に移動すれば、展示会場では図33(a)のような順に移動したことにできる。これにより、プレイエリアが狭くて参加者の移動に制限があり、真っ直ぐしか移動できない場合でも、参加者は、展示会場の各所を移動したように展示会場の各所の画像を見ることができる。
また、複数ある現実の撮影装置(カメラ)を仮想空間にマッピングし、仮想空間を移動することで現実カメラの映像を切り替え、雰囲気だけを知るのではなく、切り替えた撮影装置の前にいる展示会場の人とコミュニケーションをとるためにカメラとマイクとスピーカをセットで選択することができる。