(57)【特許請求の範囲】
【請求項１】
複数のユーザが記憶させた画像情報であって前記ユーザが撮影した画像と、その画像を撮影した位置を前記ユーザの間で用いられる共通の座標によって表された撮影位置と、撮影するための撮影条件と、撮影した画像の画像属性とを含む画像情報と、前記座標によって表された範囲を有する仮想空間の領域であって前記撮影条件が所定の範囲内であること、及び撮影された画像の類似度が所定の範囲外であることを条件として前記撮影位置ごとにその撮影位置を含むように分割された領域と、を対応付けて記憶する画像データベースに通信可能に接続され、移動するユーザの視点に基づいて画像を処理する画像処理装置において、
ネットワークを介して通信を行い、データを受信するデータ受信手段と、
前記画像データベースから、前記データ受信手段により前記画像情報を取得する画像取得手段と、
前記視点を示す視点位置であって前記座標によって表された視点位置に相当する前記撮影位置を含む前記領域に対応付けられた前記画像情報を前記画像取得手段により取得し、取得した前記画像情報を、前記領域を視覚化するための表示空間に基づいてレンダリングする制御手段と、
前記表示空間に基づいてレンダリングされた画像データを表示する表示手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
画像をレンダリングする条件を受付ける受付手段をさらに備え、
前記制御手段は、前記画像取得手段により取得した前記画像情報を、前記受付手段により受付けた条件に基づいてレンダリングすることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記ユーザの間で共通の座標は、緯度及び経度であることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記制御手段は、前記視点位置を含む前記領域に対応付けられた前記画像情報を前記画像取得手段により取得できない場合には、前記視点位置を含む前記領域に隣接する前記領域に対応付けられた前記画像情報を前記画像取得手段により取得し、取得した前記画像情報に基づいて補間し、レンダリングすることを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記撮影条件は、撮影距離を含み、
前記制御手段は、前記視点位置を含む前記領域に対応付けられた一の前記画像情報を前記画像取得手段により取得し、さらに前記視点位置を含む前記領域に隣接する前記領域に対応付けられた二の画像情報を前記画像取得手段により取得し、取得した前記一の画像情報及び前記二の画像情報に含まれる前記撮影距離に応じてレンダリングすることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記撮影条件は、撮影時刻を含み、
前記制御手段は、前記受付手段により受付けた撮影時刻に基づいて、前記視点位置を含む前記領域に対応付けられた前記画像情報のうち前記撮影時刻を有する前記画像情報をレンダリングすることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
請求項１に記載の画像処理装置が画像を処理する画像処理方法において、
前記データ受信手段が、ネットワークを介して通信を行い、データを受信するデータ受信ステップと、
前記画像取得手段が、前記画像データベースから、前記データ受信ステップにより前記画像情報を取得する画像取得ステップと、
前記制御手段が、前記視点を示す視点位置であって前記座標によって表された視点位置に相当する前記撮影位置を含む前記領域に対応付けられた前記画像情報を前記画像取得ステップにより取得し、取得した前記画像情報を、前記領域を視覚化するための表示空間に基づいてレンダリングする制御ステップと、
前記表示手段が、前記表示空間に基づいてレンダリングされた画像データを表示する表示ステップと、
を備えることを特徴とする画像処理方法。
【請求項８】
請求項２に記載の画像処理装置が画像を処理する画像処理方法において、
前記受付手段が、画像をレンダリングする条件を受付ける受付ステップをさらに備え、
前記制御ステップは、前記画像取得ステップにより取得した前記画像情報を、前記受付ステップにより受付けた条件に基づいてレンダリングすることを特徴とする請求項７に記載の画像処理方法。
【請求項９】
前記ユーザの間で共通の座標は、緯度及び経度であることを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
前記制御ステップは、前記視点位置を含む前記領域に対応付けられた前記画像情報を前記画像取得ステップにより取得できない場合には、前記視点位置を含む前記領域に隣接する前記領域に対応付けられた前記画像情報を前記画像取得ステップにより取得し、取得した前記画像情報に基づいて補間し、レンダリングすることを特徴とする請求項９に記載の画像処理方法。
【請求項１１】
前記撮影条件は、撮影距離を含み、
前記制御ステップは、前記視点位置を含む前記領域に対応付けられた一の前記画像情報を前記画像取得ステップにより取得し、さらに前記視点位置を含む前記領域に隣接する前記領域に対応付けられた二の画像情報を前記画像取得ステップにより取得し、取得した前記一の画像情報及び前記二の画像情報に含まれる前記撮影距離に応じてレンダリングすることを特徴とする請求項１０に記載の画像処理方法。
【請求項１２】
前記撮影条件は、撮影時刻を含み、
前記制御ステップは、前記受付ステップにより受付けた撮影時刻に基づいて、前記視点位置を含む前記領域に対応付けられた前記画像情報のうち前記撮影時刻を有する前記画像情報をレンダリングすることを特徴とする請求項１１に記載の画像処理方法。
【請求項１３】
請求項７から請求項１２のいずれか１項に記載の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間を構築するための画像処理方法、装置に関する。より詳しくは、撮影した画像を表示空間に基づいてレンダリングする、仮想空間を構築するための画像処理方法、装置に関する。
【背景技術】
【０００２】
従来より、現実世界を再現した仮想空間を構築しユーザに提供するコンピュータシステムが知られている。この仮想空間に、仮想世界（Ｖｉｒｔｕａｌ  Ｗｏｒｌｄ）を生成し、アバタと呼ばれる自分の分身を登場させるゲームや、調査、解析又は予測などのシミュレーションを行うシステムなどが存在する。
【０００３】
これらのＶｉｒｔｕａｌ  Ｗｏｒｌｄの生成において、現実世界を再現した仮想空間を構築するには、現実世界で撮影された写真を使用し、ユーザを含む空間内部にそれらの写真を貼り付ける（テクスチャ・マッピング）ことで擬似的な仮想空間を構築するＰｈｏｔｏ−ｂａｓｅｄ  Ｒｅｎｄｅｒｉｎｇ（画像作成）技術がある。
【０００４】
このＰｈｏｔｏ−ｂａｓｅｄ  Ｒｅｎｄｅｒｉｎｇ技術を用いたものとして、Ｖｉｒｔｕａｌ  Ｗｏｒｌｄの生成を目的として、専用の撮影システムにおいて、同時にシーケンシャルに撮影した複数の実写をそれら撮影した位置情報とともに効率よく画像データベースシステムに記憶し、再生時には任意の位置からリアルタイムに画像を再生し表示するシステムが知られている（特許文献１参照）。
【０００５】
また、Ｐｈｏｔｏ−ｂａｓｅｄ  Ｒｅｎｄｅｒｉｎｇに関する技術として、注視点方向が異なる複数の高精細画像及び複数の背景画像をそれぞれの注視点方向を検索インデックスとして記録媒体に記録しておき、再生時に観察者の視線方向を検出し画像処理により合成し表示する技術（特許文献２参照）や、位置及び姿勢を利用した電子工学式視覚システム（特許文献３参照）や、全天周方向に向けて配置したカメラから得られた複数の画像から天周画像を補間生成する方法（特許文献４参照）などが知られている。
【０００６】
一方、現実世界を撮影するカメラとして、コンピュータにデジタルデータによる精密な画像を提供することができるデジタルカメラが存在する。このデジタルカメラにＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）と方位センサーあるいは３次元ジャイロセンサーを取り付けて撮影位置、撮影方向、撮影仰角を記録することができるデジタルカメラが知られている（特許文献５参照）。
【特許文献１】特開平１１−１６８７５４号公報
【特許文献２】特開平７−２３６１１３号公報
【特許文献３】特表平９−５０５１３８号公報
【特許文献４】特開２００２−９２５９７号公報
【特許文献５】特開２００４−０８０３５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、現実世界を再現した仮想空間を生成するには、現実世界に存在する“もの”の３次元形状モデル及び属性情報（テクスチャ、色、材質など）を構築し、Ｐｈｏｔｏ−ｒｅａｌｉｓｔｉｃにレンダリングする方法もあるが、このための３次元形状モデルの構築、及びその形状の面ごとの属性情報としてデジタルカメラによって撮影された画像を準備することは、膨大な労力と時間がかかり現実的でない。また、特許文献１では、広大な現実世界をシーケンシャルに撮像する必要があり、これも現実的ではない。また、特許文献２〜４は個々の表示技術であって、仮想空間の構築の基礎となる技術ではない。
【０００８】
一方、忠実に現実世界をＰｈｏｔｏ−ｂａｓｅｄ  Ｒｅｎｄｅｒｉｎｇ技術によって再現するためには、さまざまな場所から実際に撮影した膨大な数の写真を収集する必要があり、大勢の人たちの協力を必要とする。また、これらの膨大な数の写真を利用するために撮影条件や、属性情報などを備えた画像として記憶し、管理する必要もある。
【０００９】
そこで、現実世界を忠実に再現した仮想世界を迅速に生成するために、大勢の人たちの協力が得られ、誰もが自由に画像として登録するという共同作業によって仮想世界を生成できるシステムが求められている。
【００１０】
本発明は、自由に参加した多くの人たちによって撮影された画像を記憶する画像データベースに基づいて、撮影された画像を用いた仮想世界（Ｐｈｏｔｏ−ｂａｓｅｄ  Ｖｉｒｔｕａｌ  Ｗｏｒｌｄ）を生成する装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、複数のユーザが記憶させた画像情報と、仮想空間の領域とを対応付けて記憶する画像データベースから、視点位置の座標に基づいて画像情報を取得し、表示空間に基づいてレンダリングする。より詳細には本発明は、次の特徴を備える。
【００１２】
本発明の画像処理装置は、座標によって表された視点位置を含む領域に対応付けられた画像情報を、画像データベースからネットワークを介して取得し、領域を視覚化するための表示空間に基づいてレンダリングし、表示手段に表示する。画像情報は、複数のユーザが撮影した画像と、ユーザの間で用いられる共通の座標によって表された撮影位置と、撮影するための撮影条件と、撮影した画像の画像属性とを含み、画像データベースは、仮想空間の領域と、その領域に含まれる撮影位置を有する画像情報とを対応付けて記憶する。
【００１３】
このことにより、本発明は、複数のユーザが撮影した画像情報を視点位置の座標に基づいて取得し、表示空間に基づいてレンダリングする。よって、自由に参加した多くの人たちが撮影した画像に基づいて、現実世界を忠実に再現した仮想空間を迅速に構築することができる。
【００１４】
さらに、本発明は、画像を処理する条件を受付け、制御手段は、取得した画像情報を、受付けた条件に基づいてレンダリングする。よって、現実世界を忠実に再現した仮想空間を構築することができる。
【００１５】
さらに、本発明において、ユーザの間で用いられる共通の座標は、緯度及び経度であることを特徴とする。このことにより、共通の座標として緯度及び経度を用いるので、多くの人たちが自由に参加し、提供した画像を仮想空間の構築のために利用することができる。
【００１６】
さらに、本発明において、制御手段は、視点位置を含む領域に対応付けられた画像情報を取得できない場合には、視点位置を含む領域に隣接する領域に対応付けられた画像情報を取得し、表示空間に基づいて取得した１つあるいは複数の画像情報を補間してレンダリングする。このことにより、領域に対応する画像情報がない場合には、領域に隣接した領域に対応する画像情報を利用することができる。よって、隣接する領域の画像を流用することで、現実世界に対して粗い近似ではあるが迅速に仮想世界として運用でき、また、運用期間が長くなるにつれ、近似の精度が向上する。
【００１７】
さらに、本発明において、撮影条件は、撮影距離を含み、制御手段は、視点位置を含む領域に対応付けられた一の画像情報を取得し、視点位置を含む領域に隣接する領域に対応付けられた二の画像情報を取得する。そして、取得した一の画像情報及び二の画像情報に含まれる撮影距離に応じて表示空間に基づいてレンダリングする。よって、自由に参加した多くの人たちが撮影した画像に基づいて、現実世界を忠実に再現した仮想空間を構築することができる。
【００１８】
さらに、本発明において、撮影条件は、撮影時刻を含み、制御手段は、受付手段が受付けた撮影時刻の指定に基づいて、視点位置を含む領域に対応付けられた画像情報を表示空間に基づいてレンダリングする。よって、自由に参加した多くの人たちが撮影した画像に基づいて、現実世界を忠実に再現した仮想空間を構築することができる。
【発明の効果】
【００１９】
本発明によれば、撮影された画像に基づいて現実世界を忠実に再現した仮想世界の構築がネットワークを通じて大勢の人たちによる自由参加型でできるようになる。これにより、仮想世界の広範囲な場所を早期に構築できるようになり、しかもその情報は大勢の人たちによって常に更新され得る。また、更新された履歴などを記録することで、過去の世界を再現することもできる。
【００２０】
さらに、領域分割手段によって分割された領域に撮影された画像を記憶し、画像の再生時に、画像が記憶されていない領域については、隣接する領域の画像によって補間できる。よって、必要最小限の領域で撮影された画像のみを記憶すれば足りる。
【００２１】
また、撮影した写真の内容が不明である場合に、その撮影位置、撮影方向、撮影仰角などの情報を仮想空間の表示内容と照合することにより明瞭にすることが可能である。
【００２２】
本発明によれば、自由に参加した多くの人たちによって撮影された画像を記憶する画像データベースに基づいて、撮影された画像を用いた仮想世界（Ｐｈｏｔｏ−ｂａｓｅｄ  Ｖｉｒｔｕａｌ  Ｗｏｒｌｄ）を生成する装置を提供することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明の実施形態について述べる。
【００２４】
仮想空間を構築するための画像は、仮想空間の領域と対応付けるための撮影位置情報を有する。撮影位置情報は、参加した多くの人の間で用いられる共通の座標（例えば、緯度及び経度）で表される。また、参加した多くの人が提供する画像は、それらの画像を接合したり、合成したり、障害物を除去したりすることができるために実際に現実世界を撮影した画像である。本実施形態では、例えば、デジタルカメラにより撮影された画像を対象とする。この画像の撮影位置は、デジタルカメラ内臓のＧＰＳ機能などにより求められた緯度及び経度情報が好ましいが、別途画像データに追加入力された位置情報（例えば、入力された緯度及び経度）であってもよい。
【００２５】
参加した多くの人が提供する画像の撮影条件として、撮影位置の他に、撮影方向、撮影仰角、撮影距離、撮影日時（日付、時刻）などがある。また、属性情報として、画像サイズ、解像度、シャッター速度、レンズ口径焦点距離などがある。これらの情報は、デジタルカメラの性能により自動的に画像に付加される場合や、別装置において追加入力されることにより付加される場合がある。このように、実際に撮影された画像であって位置情報、撮影条件、属性情報を有する画像を実写画像という。
【００２６】
参加した多くの人が提供する実写画像は、実写画像の撮影位置に基づいて仮想空間の領域と対応付けて記憶される。撮影位置は、例えば、緯度及び経度によって表され、仮想空間の領域の範囲は、例えば、緯度及び経度の範囲によって定められる。よって、撮影位置と、撮影位置を含む仮想空間の領域とを対応付けることができる。そして、撮影された画像と、仮想空間の領域とを対応付けて記憶することにより画像データベース（ＤＢ）に登録される。
【００２７】
登録は、次の様に行われる。撮影位置を含む仮想空間の領域に画像が登録されていない場合には、その画像をその領域に対応させて登録する。撮影位置を含む仮想空間の領域に画像が登録されている場合は、登録されている画像と比較判定する。比較判定し、撮影条件（撮影方向、撮影仰角など）が所定の範囲外であることを条件として、同じ領域に登録される。また、撮影条件（撮影方向、撮影仰角など）が所定の範囲内であること、及び画像の類似度が所定の範囲内であることを条件として、その画像は同様に、同じ領域に登録される。一方、比較判定し、撮影条件（撮影方向、撮影仰角など）が所定の範囲内であること、及び画像の類似度が所定の範囲外であることを条件として、仮想空間の領域を分割し、その画像は、異なる領域に登録される。領域の分割と比較判定とは、その画像を登録する条件が満たされるまで繰り返し行われる。
【００２８】
仮想空間の領域に対応付けて登録された実写画像は、仮想空間で画像を見る視点位置及び視点方向に基づいてレンダリングされる。すなわち、視点位置に基づいて視点位置に相当する撮影位置を含む領域が求められ、求められた領域に対応付けられた実写画像のうち視点方向に相当する撮影方向の実写画像が取得される。そして取得された実写画像は表示空間に基づいてレンダリングされることにより仮想空間が構築される。
【００２９】
以下、図に従って説明する。
【００３０】
図１は、本発明の実施形態に係る発明の概要を示す図である。画像データベースから取得した実写画像に基づいて仮想空間を構築することを説明している。
【００３１】
図１（１）は、仮想空間を構成する表示空間５０１を、ユーザが表示空間５０１の外から眺めた場合を示している図である。図１（２）は、表示空間５０１をユーザが移動し、視線方向５３１の表示空間内を見ていることを示している図である。この表示空間内は、ユーザの視点位置の座標に基づいて、画像データベースから取得された実写画像がレンダリングされている。よって、ユーザは移動することによって現実世界を忠実に再現した仮想世界を感じることができる。
【００３２】
図２は、本実施形態に係るシステムの概要を示す図である。実写画像を撮影位置に基づいて仮想空間の領域に登録し、画像データベース（ＤＢ）及びパノラマ画像データベース（ＤＢ）を生成する。生成した画像ＤＢに登録されている実写画像に基づいて表示空間を構築し仮想空間を生成することを説明している。
【００３３】
現実の世界において撮影された実写画像は、撮影された撮影位置、撮影方向、撮影条件、パノラマ用画像情報（パノラマ用画像の登録も可能にする連続画像フラグなど）などの情報を含んでいる。画像ＤＢ３２１生成において、領域分割処理３０１は、類似度判定処理３０２の判定結果に基づいて、仮想空間の領域を分割する。画像管理処理３０３は、分割された領域に、実写画像を撮影方向、撮影条件（撮影日時、焦点距離）などに分類し、画像ＤＢ３２１に登録する。一方、レンダリング処理において、表示空間設定３０６（仮想空間における位置、移動軌跡、視線方向）と、表示条件設定３０７（表示条件として、例えば、表示モード、季節、時間帯など）とに基づいて、表示空間生成３０８を行う。表示空間生成３０８には、パネル壁面表示３０９、パネル焦点位置表示３１０、パノラマ画像表示３１１に必要な空間（円柱、半球、全球などの形状やパネルを貼り付ける形状など）が生成される。また、パノラマ画像生成処理においては、画像ＤＢ３２１に基づいて、画像合成処理３０４によってパノラマ画像生成３０５を行い、パノラマ画像ＤＢ３２２を生成する。
【００３４】
図３は、撮影位置、撮影条件を説明する図である。
【００３５】
図３（１）は、ある撮影位置からある撮影方向の現実の風景の写真を撮影していることを示す図である。このようにして撮影された実写画像は、撮影位置、撮影方向などの撮影条件を備える。
【００３６】
図３（２）は、撮影方向を８方向（Ｎｏｒｔｈ（Ｎ）、ＮｏｒｔｈＥａｓｔ（ＮＥ）、Ｅａｓｔ（Ｅ）、ＳｏｕｔｈＥａｓｔ（ＳＥ）、Ｓｏｕｔｈ（Ｓ）、ＳｏｕｔｈＷｅｓｔ（ＳＷ）、Ｗｅｓｔ（Ｗ）、ＮｏｒｔｈＷｅｓｔ（ＮＥ））に分類した例を示す図である。８方向に分類した場合には、例えば、撮影方向３３１は、撮影方向Ｎの範囲に含まれる。撮影方向は１６方向、３２方向などとすることも可能である。
【００３７】
図３（３）は、撮影仰角を５方向（上方（Ｕ）、斜め上方（ＵＨ）、水平（Ｈ）、斜め下方（ＤＨ）、下方（Ｄ））に分類した例を示す図である。５方向に分類した場合には、例えば、撮影仰角３４１は、撮影仰角の範囲Ｈに含まれる。撮影仰角は９方向などとすることも可能である。
【００３８】
図４は、４分岐ツリー（Ｑｕａｄｔｒｅｅ）で領域管理する例を示す図である。仮想空間の領域を４分割し、分割した領域に実写画像を登録することを説明している。
【００３９】
図４（１）は、領域Ｓの分割結果の例を示している。領域ＩＤとして、Ｓ−１〜Ｓ−４を時計回りに付し、さらにＳ−１の分割結果をＳ−１１〜Ｓ−１４、Ｓ−３をＳ−３１〜Ｓ−３４に分割していることを示している。領域の分割は、緯度及び経度によって定められる範囲を４つに分割することにより行われる。そして、撮影位置を含む分割した領域に登録されている画像との比較判定を行い所定の要件を満たすことを条件として同じ領域に登録される。領域の分割は、画像を登録することができる要件が満たされるまで繰り返し行われる。
【００４０】
図４（２）は、分割した領域を４分岐ツリー（Ｑｕａｄｔｒｅｅ）で領域管理していることを示している。領域Ｓが４分割され領域ＩＤとして、Ｓ―１〜Ｓ―４となり、Ｓ―１がさらに分割されＳ―１１〜Ｓ―１４となっている。同様に、Ｓ−１２がＳ−１２１〜Ｓ−１２４と分割され、Ｓ−３がＳ−３１〜Ｓ−３４、Ｓ−３３がＳ−３３１〜Ｓ−３３４となっていることを示している。したがって、撮影位置から、撮影位置を含む領域を求めることができる。なお、分割を縦方向、横方向と順次２分割し、２分岐（Ｂｉｎａｒｙｔｒｅｅ）で管理することも可能である。
【００４１】
図５は、障害物が存在する場合の例を示す図である。障害物が存在する場合の領域の分割と、分割した領域に実写画像を登録することを説明している。
【００４２】
図５（１）は撮影位置Ｐ１と撮影位置Ｐ２との間に障害物４０１が存在する場合を示している。図５（２）は、撮影位置Ｐ１で撮影された画像は、撮影位置Ｐ１を含む仮想空間の領域Ｓに登録されることを示している。図５（３）は、撮影位置Ｐ１で撮影された画像が登録された後に、撮影位置Ｐ２で撮影された画像は、撮影位置Ｐ２を含む仮想空間の領域Ｓに登録されている画像とは異なるので、領域Ｓを撮影位置Ｐ１とＰ２とが別の領域に含まれるようになるまで繰り返し分割し、撮影位置Ｐ２を含む仮想空間の分割された領域Ｓ−１に登録され、撮影位置Ｐ１で撮影された画像は、撮影位置Ｐ１を含む仮想空間のＳ−３に登録し直されることを示している。
【００４３】
図６は、４分岐ツリーで領域管理する画像データベースの例を示す図である。分割した領域ごとに実写画像のデータと、撮影条件及び画像属性とを分類して登録した画像データベースの構成の概要を示している。
【００４４】
領域Ｓは、Ｓ−１〜Ｓ−４に分割され、さらにＳ−１がＳ−１１〜Ｓ−１４に分割されている。そして、分割された領域ごとに、データ管理用情報（領域の座標、領域数、下位、上位ノードへのポインタ、領域ＩＤなど）を備え、サーチ処理の高速化のためのデータ（撮影方向のデータが存在する情報など）を備えている。さらに、撮影条件管理情報として撮影方向ごとに、撮影時刻などが記憶され、撮影時刻ごとに画像及び画像属性情報（画像サイズ、解像度、その他カメラの属性情報など）が記憶され、分類管理される。さらに、パノラマ画像ＤＢへのポインタを備えている。
【００４５】
例えば、所定の範囲の撮影方向ごとに実写画像のデータを備えている。撮影方向ごとの実写画像データは、例えば８方向ごとのポインタで示される。さらに実写画像は、例えば、撮影時刻（季節、朝昼夜、時間など）に分類管理される。さらに、フォーカスのあった対象物までの距離データがあればさらに対象物までの距離によって分類管理される。
【００４６】
現実の世界を撮影する場合、同じ場所、同じ方向の写真でも、季節や一日の時間帯によって画像が異なるので、時間軸上において画像の類似度をチェックし、類似度が所定の範囲内でない場合には時間空間を分割してコンテンツを管理する。すなわち、撮影時刻などの時間帯に分類して領域に登録する。
【００４７】
画像データを検索する方法は、画像データベースの構成に基づいて行われる。すなわち、画像を登録する場合に、撮影位置に基づいて、撮影位置を含む仮想空間の領域を求め、領域に登録された実写画像を取得することができる。すなわち、仮想空間の領域は４分岐ツリー構造で領域管理されているので、ツリー構造をたどり、領域の範囲の座標と比較することにより撮影位置を含む領域を求めることができる。
【００４８】
例えば、位置Ｐ（Ｘ、Ｙ）が与えられた場合、ツリー構造をたどり、領域の座標（（Ｘ０、Ｙ０）、（Ｘ１、Ｙ１））と比較し、Ｘ０≦Ｘ≦Ｘ１かつＹ０≦Ｙ≦Ｙ１を満たす領域を求めることができる。そして、求めた領域に登録されている実写画像を取得することができる。さらに、実写画像を再生（レンダリング）し、仮想的な表示空間を構成する場合において、表示空間を眺める視点位置及び視線方向を、実写画像の撮影位置及び撮影方向として画像データベースを検索し、取得した実写画像をレンダリングすることにより、現実世界を忠実に再現した仮想的な表示空間を構築することができる。
【００４９】
ある位置から眺めた全方位の実写画像を再生する場合に、その位置を含む領域に全ての方向の実写画像が登録されていない場合がある。その場合に、隣接する領域に、該当する撮影方向の実写画像が登録されていればそれを代用することによって類似の画像を生成できる可能性が高い。この場合、４分岐ツリー構造でデータを管理することにより、明快なサーチルールによって隣接する領域の画像を取得することができる。
【００５０】
例えば、Ｓ−１３の領域に隣接する領域は、領域が均質に分割されている場合は、北から時計回りにＳ−１２、Ｓ−２１、Ｓ−２４、Ｓ−３１、Ｓ−４２、Ｓ−４１、Ｓ−１４、Ｓ−１１である（図４において、Ｓ−１２、Ｓ−２１、Ｓ−２４、Ｓ−４１，Ｓ−４２を補って参照）。しかし、領域の分割は均質に行われるとは限らないので、ツリー構造に領域が管理されていない場合は上位の領域が隣接領域となる。すなわち、Ｓ−２１、Ｓ−２４は、Ｓ−２が、Ｓ−４２、Ｓ−４１はＳ４が隣接領域となる。
【００５１】
上述した隣接領域の探索について領域のラベルを２進数で表現する方法で説明する。左下端を（０，０）、右上を（１，１）とした正規化空間に対して、再帰的に４分割を行い、領域を分割する。ｎ回均等に４分割を繰り返すと、２ｎ×２ｎ個の領域に分割される。その場合の領域の左下端及び右上端の座標は、それぞれ（ｋ／２ｎ、ｊ／２ｎ）及び（（ｋ＋１）／２ｎ、（ｊ＋１）／２ｎ）となる。ここで、０≦ｋ、ｊ＜２ｎの整数値である。すなわち、分割の度合ｎ、位置ｋ、ｊの３変数で識別される。例えば、領域の２進数のラベルとして（０、０）は、領域ＩＤのＳ−４、（１、１）はＳ−２、（００、００）は（Ｓ−４４）にそれぞれ対応する。
【００５２】
そして、領域（ｋ（１／２）ｎ、ｊ（１／２）ｎ）の隣接領域は、均等に分割されている場合、次のようにして求めることができる。
Ｎｏｒｔｈ側の隣接領域は、（ｋ（１／２）ｎ、（ｊ＋１）（１／２）ｎ）、ｊ＜２ｎ−１で表される。ここで、ｊ＝２ｎ−１の場合は最北端の領域であり、隣接領域は存在しない。
ＮｏｒｔｈＥａｓｔ側の隣接領域は、（（ｋ＋１）（１／２）ｎ、（ｊ＋１）（１／２）ｎ）、ｋ＜２ｎ−１かつｊ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１又はｊ＝２ｎ−１の場合は最北端又は最東端の領域であり、隣接領域は存在しない。
Ｅａｓｔ側の隣接領域は、（（ｋ＋１）（１／２）ｎ、ｊ（１／２）ｎ）、ｋ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１の場合は最東端の領域であり、隣接領域は存在しない。
ＳｏｕｔｈＥａｓｔ側の隣接領域は、（（ｋ＋１）（１／２）ｎ、（ｊ−１）（１／２）ｎ）、ｋ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１又はｊ＝０の場合は最南端又は最東端の領域であり、隣接領域は存在しない。
Ｓｏｕｔｈ側の隣接領域は、（ｋ（１／２）ｎ、（ｊ−１）（１／２）ｎ）、ｊ＞０で表される。ここで、ｊ＝０の場合は最南端の領域であり、隣接領域は存在しない。
ＳｏｕｔｈＷｅｓｔ側の隣接領域は、（（ｋ−１）（１／２）ｎ、（ｊ−１）（１／２）ｎ）、ｋ＞０かつｊ＞０で表される。ここで、ｋ＝０又はｊ＝０の場合は最南端又は最西端の領域であり、隣接領域は存在しない。
Ｗｅｓｔ側の隣接領域は、（（ｋ−１）（１／２）ｎ、ｊ（１／２）ｎ）、ｋ＞０で表される。ここで、ｋ＝０の場合は最西端の領域であり、隣接領域は存在しない。
ＮｏｒｔｈＷｅｓｔ側の隣接領域は、（（ｋ−１）（１／２）ｎ、（ｊ＋１）（１／２）ｎ）、ｋ＞０かつｊ＜２ｎ−１で表される。ここで、ｋ＝０又はｊ＝２ｎ−１の場合は最北端又は最西端の領域であり、隣接領域は存在しない。
【００５３】
さらに、領域（ｋ（１／２）ｎ、ｊ（１／２）ｎ）の隣接領域は、均等に分割されていない場合であって、分割の度合が粗い場合（ｍ≦ｎ）は、次のようにして求めることができる。ただし、ｉｎｔ（）は、小数点以下を切り捨て整数値とする関数である。
Ｎｏｒｔｈ側の隣接領域は、（ｉｎｔ（ｋ／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（（ｊ＋１）／２ｎ−ｍ）（１／２）ｍ）、ｊ＜２ｎ−１で表される。ここで、ｊ＝２ｎ−１の場合は最北端の領域であり、隣接領域は存在しない。
ＮｏｒｔｈＥａｓｔ側の隣接領域は、（ｉｎｔ（（ｋ＋１）／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（（ｊ＋１）／２ｎ−ｍ）（１／２）ｍ）、ｋ＜２ｎ−１かつｊ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１又はｊ＝２ｎ−１の場合は最北端又は最東端の領域であり、隣接領域は存在しない。
Ｅａｓｔ側の隣接領域は、（ｉｎｔ（（ｋ＋１）／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（ｊ／２ｎ−ｍ）（１／２）ｍ）、ｋ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１の場合は最東端の領域であり、隣接領域は存在しない。
ＳｏｕｔｈＥａｓｔ側の隣接領域は、（ｉｎｔ（（ｋ＋１）／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（（ｊ−１）／２ｎ−ｍ）（１／２）ｍ）、ｋ＜２ｎ−１かつｊ＞０で表される。ここで、ｋ＝２ｎ−１又はｊ＝０の場合は最南端又は最東端の領域であり、隣接領域は存在しない。
Ｓｏｕｔｈ側の隣接領域は、（ｉｎｔ（ｋ／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（（ｊ−１）／２ｎ−ｍ）（１／２）ｍ）、ｊ＞０で表される。ここで、ｊ＝０の場合は最南端の領域であり、隣接領域は存在しない。
ＳｏｕｔｈＷｅｓｔ側の隣接領域は、（ｉｎｔ（（ｋ−１）／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（（ｊ−１）／２ｎ−ｍ）（１／２）ｍ）、ｋ＞０かつｊ＞０で表される。ここで、ｋ＝０又はｊ＝０の場合は最南端又は最西端の領域であり、隣接領域は存在しない。
Ｗｅｓｔ側の隣接領域は、（ｉｎｔ（（ｋ−１）／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（ｊ／２ｎ−ｍ）（１／２）ｍ）、ｋ＞０で表される。ここで、ｋ＝０の場合は最西端の領域であり、隣接領域は存在しない。
ＮｏｒｔｈＷｅｓｔ側の隣接領域は、（ｉｎｔ（（ｋ−１）／２ｎ−ｍ）（１／２）ｍ、ｉｎｔ（（ｊ＋１）／２ｎ−ｍ）（１／２）ｍ）、ｋ＞０かつｊ＜２ｎ−１で表される。ここで、ｋ＝０又はｊ＝２ｎ−１の場合は最北端又は最西端の領域であり、隣接領域は存在しない。
【００５４】
さらに、領域（ｋ（１／２）ｎ、ｊ（１／２）ｎ）の隣接領域は、均等に分割されていない場合であって、分割の度合が細かい場合（ｍ≧ｎ）は、次のようにして求めることができる。ここで、Ｎｏｒｔｈ，  Ｅａｓｔ，  Ｓｏｕｔｈ，  Ｗｅｓｔの場合は、分割の度合いが同じ又は異なる複数の領域と隣接することになり、最も分割の度合の細かい領域の分割の度合をｍとした場合、０≦ｓ＜２ｍ−ｎの全てのｓが対象である。ただし、分割の度合は隣接領域によって異なりｍ分割の領域が存在しない部分には、上位の領域を利用する。
Ｎｏｒｔｈ側の隣接領域は、（ｋ×２ｍ−ｎ＋ｓ）（１／２）ｍ、（ｊ＋１）×２ｍ−ｎ）（１／２）ｍ）、ｊ＜２ｎ−１で表される。ここで、ｊ＝２ｎ−１の場合は最北端の領域であり、隣接領域は存在しない。
ＮｏｒｔｈＥａｓｔ側の隣接領域は、（（ｋ＋１）×２ｍ−ｎ）（１／２）ｍ、（（ｊ＋１）×２ｍ−ｎ）（１／２）ｍ）、ｋ＜２ｎ−１かつｊ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１又はｊ＝２ｎ−１の場合は最北端又は最東端の領域であり、隣接領域は存在しない。
Ｅａｓｔ側の隣接領域は、（（ｋ＋１）×２ｍ−ｎ）（１／２）ｍ、（ｊ×２ｍ−ｎ＋ｓ）（１／２）ｍ）、ｋ＜２ｎ−１で表される。ここで、ｋ＝２ｎ−１の場合は最東端の領域であり、隣接領域は存在しない。
ＳｏｕｔｈＥａｓｔ側の隣接領域は、（（ｋ＋１）×２ｍ−ｎ）（１／２）ｍ、（ｊ×２ｍ−ｎ−１）（１／２）ｍ）、ｋ＜２ｎ−１かつｊ＞０で表される。ここで、ｋ＝２ｎ−１又はｊ＝０の場合は最南端又は最西端の領域であり、隣接領域は存在しない。
Ｓｏｕｔｈ側の隣接領域は、（（ｋ×２ｍ−ｎ＋ｓ）（１／２）ｍ、（（ｊ×２ｍ−ｎ−１）（１／２）ｍ）、ｊ＞０で表される。ここで、ｊ＝０の場合は最南端の領域であり、隣接領域は存在しない。
ＳｏｕｔｈＷｅｓｔ側の隣接領域は、（（ｋ×２ｍ−ｎ−１）（１／２）ｍ、（ｊ×２ｍ−ｎ−１）（１／２）ｍ）、ｋ＞０かつｊ＞０で表される。ここで、ｋ＝０又はｊ＝０の場合は最南端又は最西端の領域であり、隣接領域は存在しない。
Ｗｅｓｔ側の隣接領域は、（（ｋ×２ｍ−ｎ−１）（１／２）ｍ、（ｊ×２ｍ−ｎ＋ｓ）（１／２）ｍ）、ｋ＞０で表される。ここで、ｋ＝０の場合は最西端の領域であり、隣接領域は存在しない。
ＮｏｒｔｈＷｅｓｔ側の隣接領域は、（（ｋ×２ｍ−ｎ−１）（１／２）ｍ、（ｊ＋１）×２ｍ−ｎ）（１／２）ｍ）、ｋ＞０かつｊ＜２ｎ−１で表される。ここで、ｋ＝０又はｊ＝２ｎ−１の場合は最北端又は最西端の領域であり、隣接領域は存在しない。
【００５５】
図７は、撮影方向ごとに領域を管理することも可能であることを示す図である。実写画像を登録するために、撮影方向ごとに領域を管理する。この場合は、８方向（Ｎ，ＮＥ，Ｅ，ＳＥ，Ｓ，ＳＷ，Ｗ，ＮＷ）の撮影方向ごとに４分岐ツリーで領域が構成されている。ある撮影方向の画像がないケースが多ければ、その方向の領域分割がなされずにすむ。
【００５６】
図８は、実写画像が登録されている表示空間が仮想世界の中でどこに存在するかを示すための、表示空間の外部表現の一例を示す図である。
【００５７】
ユーザが、仮想空間を構成する表示空間を、その表示空間の外から眺めた場合の形態として、本実施形態では、４種類ある。すなわち、本実施形態における代表的な表示空間の外部表現は、円柱（ｃｙｌｉｎｄｒｉｃａｌ  ｓｈａｐｅ）、半球（ｓｅｍｉ−ｓｐｈｅｒｅ）、全球（ｓｐｈｅｒｅ）、及びパーティクル（ｐａｒｔｉｃｌｅ）（雲状）がある。なお、表示空間は、ある領域に対して生成することも、複数の領域（例えば、４分岐ツリー構造の上位領域）から表示空間を生成することも可能である。なお、パノラマ表示の場合には、予め画像が登録された時点でパノラマ画像空間は、円柱、半球、全球の形状が決定されている。これらの表示空間の表現方法は、１つの形状として単色でレンダリングしたり、空間に登録されている１つあるいは複数の代表の実写画像をテクスチャ・マッピングしたりなどができる。
【００５８】
図８（１）は、表示空間が円柱５０１である場合を示す図である。図８（２）は、表示空間が半球５０２である場合を示す図である。図８（３）は、表示空間が全球５０３である場合を示す図である。図８（４）は、表示空間がパーティクル５０４である場合を示す図である。仮想空間はこれらの表示空間から構成され、これらの表示空間を移動することにより仮想空間内を移動することになる。
【００５９】
これらの表示空間の表示条件の１つである透明度には、可視（ｖｉｓｉｂｌｅ、透過度０％）、不可視（ｉｎｖｉｓｉｂｌｅ、透過度１００％）、半透明（ｔｒａｎｓｌｕｃｅｎｔ）を設けている。可視（ｖｉｓｉｂｌｅ）は、その表示空間を表示することをいうが、前景に可視の表示空間があれば隠れて見えなくなり、前景に半透明の表示空間があれば透けてみえる。不可視（ｉｎｖｉｓｉｂｌｅ）は、その表示空間を完全に表示しないことをいう。半透明（ｔｒａｎｓｌｕｃｅｎｔ）は、その背景にある表示空間を透かして見せるようにする。
【００６０】
半透明表示の方法として、手前の面の画像の光の強度をＩ１、その後方の面の光の強度をＩ２とすると、光の強度は、Ｉ＝αＩ２＋（１−α）Ｉ１となる。ここで、α（０≦α≦１．０）は透過率であり、α＝１の時は完全透明、α＝０の時は完全不透明となる。
【００６１】
表示条件の変更方法には、予めユーザにより設定されるパラメータ設定、対話的にコマンドなどによるパラメータ設定、ユーザの振る舞いにより動的に変更するパラメータ設定（コンテキスト・アウエアネスによるパラメータ設定）がある。
【００６２】
このコンテキスト・アウエアネスによるパラメータ設定では、例えば、ユーザが注視している時間によって表示条件を変更する。すなわち、ユーザがある一定時間以上注視していると前景の半透明であった表示空間がより明瞭に「可視」として表示される。また、コンテキスト・アウエアネスによるパラメータ設定では、ユーザの移動に伴って、見える表示空間の切り替えをフェードイン、フェードアウトするように表示条件を変更する。
【００６３】
表示空間の内部表現、すなわち、実写画像をレンダリングする表示空間の内部に移動し、レンダリングされた画像を見た場合の表現として、パノラマ表示（ｐａｎｏｒａｍｉｃ  ｄｉｓｐｌａｙ）、パネル壁面表示（ｐａｎｅｌ  ｄｉｓｐｌａｙ  ｏｎ  ｗａｌｌ）、パネル焦点位置表示（ｐａｎｅｌ  ｄｉｓｐｌａｙ  ｏｎ  ｆｏｃａｌ  ｄｉｓｔａｎｃｅ）と、それらの表示方法の混在表示がある。
【００６４】
パノラマ表示（ｐａｎｏｒａｍｉｃ  ｄｉｓｐｌａｙ）は、表示空間（円柱、半球、全球、パーティクル）の内側の面に実写画像をマッピングし、表示する。
【００６５】
パネル壁面表示（ｐａｎｅｌ  ｄｉｓｐｌａｙ  ｏｎ  ｗａｌｌ）は、表示空間の壁面に、重ね合わせ、スクロールなどの多重表示技術を活用して表示する。すなわち、視線方向の画像の中から手前の空間の画像を見ることができる。
【００６６】
パネル焦点位置表示（ｐａｎｅｌ  ｄｉｓｐｌａｙ  ｏｎ  ｆｏｃａｌ  ｄｉｓｔａｎｃｅ）は、視点位置から撮影距離だけ離れた場所に画像を配置し、表示する。
【００６７】
それらの表示方法の混在表示では、実写画像の属性、表示空間の特徴などから、表示方法を混在させ表示空間の内部を生成する。
【００６８】
また、実写画像の表示条件の１つである透明度には、可視（ｖｉｓｉｂｌｅ、透明度０％）、不可視（ｉｎｖｉｓｉｂｌｅ、透明度１００％）、半透明（ｔｒａｎｓｌｕｃｅｎｔ）を設けている。可視（ｖｉｓｉｂｌｅ）は、その実写画像を表示することをいうが、前景に可視の実写画像があれば隠れて見えなくなり、前景に半透明の実写画像があれば透けてみえる。不可視（ｉｎｖｉｓｉｂｌｅ）は、その実写画像を完全に表示しないことをいう。半透明（ｔｒａｎｓｌｕｃｅｎｔ）は、その背景にある実写画像を透かして見せるようにする。なお、実写画像が未登録で存在しない場合には、「無地一色」の画像としてこれらの表示条件の下に表示される。
【００６９】
実写画像の表示条件には、属性の条件設定として、例えば、撮影時刻（朝・夕、季節など）の設定を設けている。設定された撮影時刻により、朝昼夜や時間ごとの現実世界を忠実に再現することができる。また、隣接領域の画像の表示・非表示の設定を設けている。隣接領域の表示には、隣接領域からの画像表示であることを明示する設定をも設けている。画像が未登録の領域であることを知らせ、ユーザに画像の登録を促すことができる。さらに、例えば、撮影日の設定を設けている。実写画像は撮影日時を有しているので、例えば、再現する撮影日を設定すれば、新しい建物などが建設されることにより現実の世界が更新されていても、設定された撮影日以前の実写画像により過去の状態を再現することもできる。
【００７０】
実写画像の表示条件の変更には、予めユーザにより設定されるパラメータ設定、対話的にコマンドなどによるパラメータ設定、ユーザの振る舞いにより動的に変更するパラメータ設定（コンテキスト・アウエアネスによるパラメータ設定）がある。
【００７１】
このコンテキスト・アウエアネスによるパラメータ設定では、例えば、ユーザが注視している時間によって表示条件を変更する。すなわち、ユーザがある一定時間以上注視していると前景の半透明であった画像がより明瞭に「可視」として表示される。また、コンテキスト・アウエアネスによるパラメータ設定では、ユーザの移動に伴って、見える画像の切り替えをフェードイン、フェードアウトするように表示条件を変更する。
【００７２】
図９は、パノラマ画像表示の例を示す図である。例えば、円柱の内側の面に画像をマッピングすることによって、パノラマ画像表示が可能となる。ユーザはその空間の内部から画像を見ることができる。図９において、ｖは表示空間の高さを示し、ｕは表示空間の中心からの視野角を示している。そして、ユーザの移動により、例えば、表示空間内の視点位置５１１から、ユーザはマッピングされた画像の内の一部５１２を見ることができる。
【００７３】
図１０は、実写画像が登録されている表示空間が仮想世界の中でどこに存在するかを示す図である。
【００７４】
図１０（１）は、仮想世界を構成する表示空間が円柱５０１であって、表示空間の外から眺めた場合を示している図である。図１０（２）は、表示空間をユーザが移動し、視線方向５３１の表示空間内を見ていることを示している図である。パノラマ表示空間（円柱、半球、全球、パーティクル）の中に入ると、その空間内の例えば、パノラマ画像を見ることができ、ユーザは移動することによって仮想世界を感じることができる。
【００７５】
図１１は、パネル壁面表示の概念を示す図である。領域に登録された実写画像は、撮影位置、撮影方向、撮影仰角などの情報を有している。領域は座標による範囲を有している。よって、領域に登録された実写画像を、領域の範囲に、例えば、半球の壁面があるものとして、撮影方向の壁面にマッピングすることにより実写画像をレンダリングすることができる。
【００７６】
図１１において、矢印線５５１、５５２、５５３により、現実空間の山すそを歩いて撮影した写真を、仮想空間の表示空間Ａ，Ｂ、Ｃにパネル壁面表示していることを、それぞれ、概念的に表している。表示空間へのパネル壁面表示によって、アバタが破線５３２に沿って、表示空間Ａから表示空間Ｂへ移動し、さらに表示空間Ｃへ移動すると、アバタの位置に基づいて表示空間の壁面の画像が異なる。表示空間Ａにおいては遠くの山５６１が、表示空間Ｂにおいては山５６３の前景に樹木５６２をともない、さらに表示空間Ｃにおいては頂上付近の風景５６４となるのであたかも現実に移動し、風景が異なるかのように感じられる。また、表示空間内では、パネル壁面に沿う全壁面に、重ね合わせ、スクロールなどの多重表示技術を活用してレンダリングされるので、あたかも現実の空間のなかにいるように感じられる。
【００７７】
図１２は、パネル焦点位置表示の概念を示す図である。領域に登録された実写画像は、撮影位置、撮影方向、撮影仰角の他に撮影距離の情報も有している。よって、視点位置に基づいて取得した領域に登録された実写画像を、表示空間内の視点位置から、撮影距離に応じた距離に壁面を想定しマッピングすることにより実写画像をレンダリングすることができる。
【００７８】
図１２において、矢印線５７１、５７２、５７３により表示空間Ａに、矢印線５７４、５７５により表示空間Ｂに、矢印線５７５により表示空間Ｃにパネル焦点位置表示していることを、それぞれ、概念的に表している。
【００７９】
図１３は、表示空間Ａにおけるパネル焦点位置表示の概念を示す図である。表示空間へのパネル焦点位置表示によって、アバタ５８０が破線５３２に沿って、表示空間Ａへ移動すると、アバタ５８０の位置に基づいて表示空間Ａのパネル焦点位置表示がされる。その結果、表示空間Ａにおいては近くの山５８１と、近くの樹木５８２、遠くの山５８３、５８４とが撮影距離に応じて見える。
【００８０】
図１４は、表示空間Ｂにおけるパネル焦点位置表示の概念を示す図である。表示空間へのパネル焦点位置表示によって、アバタ５８０が破線５３２に沿って、表示空間Ｂへ移動すると、アバタ５８０の位置に基づいて表示空間Ｂのパネル焦点位置表示がされる。その結果、表示空間Ｂにおいては近くの草花５８７、近くの樹木５８８、近くの山５８９、遠くの山５８５、遠くの樹木５８６とが撮影距離に応じて見える。
【００８１】
図１５は、表示空間Ｃにおけるパネル焦点位置表示の概念を示す図である。表示空間へのパネル焦点位置表示によって、アバタ５８０が破線５３２に沿って、表示空間Ｃへ移動すると、アバタ５８０の位置に基づいて表示空間Ｃのパネル焦点位置表示がされる。その結果、表示空間Ｃにおいては近くの山５８５、近くの樹木５８６とが撮影距離に応じて見える。
【００８２】
図１６〜図２０は、実写画像の表示方法の一例を示す図である。
【００８３】
図１６は、表示空間の中に包含された別の表示空間が存在する場合の表示方法を示す図である。パノラマ画像の例で示す。表示空間６０１内のユーザが見ている視野角内に、その空間に包含される別の表示空間６０２が存在する場合、その表示空間６０２を可視（Ｖｉｓｉｂｌｅ），不可視（Ｉｎｖｉｓｉｂｌｅ），半透明（Ｔｒａｎｓｌｕｃｅｎｔ）などの表示条件で表示する。内包される別の表示空間６０２が半透明に表示され、かつ、コンテキスト・アウエアネス・モードであれば、ユーザがある一定時間以上注視している場合には、その表示空間６０２は半透明から不可視となって、後方の表示空間６０１が明瞭に表示される。
【００８４】
図１７は、表示空間の中に別の表示空間が完全に含まれる場合の表示方法を示す図である。パノラマ画像の例で示す。表示空間内のユーザがいる表示空間６１２が、別の表示空間６１１に完全に内包されている場合、一番、内側の表示空間６１２の画像を表示する。表示空間６１２の画像が半透明に表示され、後方の表示空間６１１が透けて表示され、かつ、コンテキスト・アウエアネス・モードであれば、ユーザがある一定時間以上注視している場合には、手前にある表示空間６１２の画像が半透明から明瞭な可視の表示となる。
【００８５】
図１８は、表示空間が別の表示空間と交差している場合の表示方法を示す図である。パノラマ画像の例で示す。表示空間６２１と別の表示空間６２２とが交差している場合には、表示空間の交差面に対して、その空間の中心側に属する表示空間内の画像を表示する。表示画像を半透明表示し、もう一方の表示空間の画像を表示することも可能である。
【００８６】
ユーザが表示空間の間を移動する場合、予測した通過時間ｔに応じて、手前の画像をフェードアウトし、次の空間の後方の画像をフェードインする表示も可能である。また、交差面積が大きい場合は、フェードイン・フェードアウトの画像切り替えを、交差面積全体で行うのでなく、交差面積の中心部分の領域（交差中央領域）のみで行うことにしてもよい。さらに、交差面積が大きい場合で、交差面で画像切り替えあるいは交差中央領域で画面のフェードイン・フェードアウト画像切り替えする際に、緩衝領域の設定あるいはヒステリシス特性のあるフェードイン・フェードアウトの導入をすることで、移動のじぐざぐやゆらぎの際に過敏な画面変化を抑制できる。
【００８７】
図１９は、表示空間が交差している場合であって、ユーザが移動した場合の表示方法を示す図である。表示空間同士の緩衝領域ｃを設け、緩衝領域ｃを境にして表示する表示空間の画像を切り替えるが、緩衝領域ｃにおいては移動の方向により直前の画像を表示する。例えば、ユーザがａからｂへ移動し、ｂから緩衝領域ｃへ移動したとすると、Ａの表示空間から緩衝領域ｃに移動したので、緩衝領域ｃでの表示画像は直前のＡの表示空間の画像を表示する。そして、緩衝領域ｃからｄに移動したことによりｄでの表示画像はＢの表示空間の画像となる。したがって、例えばａ−＞ｂ−＞ｃ−＞ｄ−＞ｃ−＞ｂ−＞ｃ−＞ｄ−＞ｅのように移動したとすると、表示される世界はＡ−＞Ａ−＞Ａ−＞Ｂ−＞Ｂ−＞Ａ−＞Ａ−＞Ｂ−＞Ｂのように変化する。緩衝領域ｃにおいては、直前世界の画像Ａ又はＢが表示される。
【００８８】
図２０は、フェードイン・フェードアウトのヒステリシスを示す図である。フェードイン・フェードアウトにおいて、透過率αは時間ｔの関数α（ｔ）であらわされる。
【００８９】
図２０（１）は、例えば、α（ｔ）が時間ｔに対して線形に変化する場合を表す図である。図２０（２）は、透過率αを空間移動率βの関数α（β）として表した場合のαとβの関係を示す図である。例えば、α（β）は移動率の連続した増加あるいは減少が緩衝範囲の１／２をする時に、移動率βの２割の範囲で線形に増加するような場合の透過率αの変化を表している。図２０（３）は、図２０（２）の場合に、緩衝領域を移動する空間移動率βを示している図である。空間移動率βは、ａにおいて０．４、ｂにおいて０．５、ｃにおいて０．２、ｄにおいて０．２、ｅにおいて０．６、ｆにおいて０．６５、ｇにおいて０．５、ｈにおいて０．６、ｉにおいて０．７、ｊにおいて０．５を示している。したがって、図２０（２）の透過率αは、ａにおいて０．０、ｂにおいて０．２、ｃにおいて０．２、ｄにおいて０．１、ｅにおいて０．１、ｆにおいて０．９、ｇにおいて０．９、ｈにおいて０．９、ｉにおいて１．０、ｊにおいて１．０となることを示している。
【００９０】
以下、図２１〜図３３を用いて、実写画像を記憶し、記憶した実写画像に基づいて仮想空間を構成する表示空間にレンダリングするシステムの実施例を図面ごとに説明する。本実施例において、画像データベース装置１において、データ受信手段１０４０と、画像記憶手段（図２４で説明する画像情報のデータ構成、ハード・ディスク１０７４）と、領域記憶手段（図２５で説明する領域情報のデータ構成、ハード・ディスク１０７４）と、登録記憶手段（図２５で説明する領域情報の画像へのポインタ、ハード・ディスク１０７４）と、判定手段（図２７のステップＳ１１５）と、領域分割手段（図２７のステップＳ１１６）と、制御手段（図２７の画像登録処理）と、を備えている。また、画像処理装置１１において、データ受信手段２０４０と、受付手段（図２９のステップＳ２０２）、画像取得手段（図３１のステップＳ２２４）、制御手段（図２９のメイン処理）、表示装置２０２２とを備えている。
【００９１】
図２１は、画像データベース装置１の動作環境を示す図である。画像データベース装置１、画像処理装置１１ａ、１１ｂ、１１ｃがネットワーク１０（インターネット、ＬＡＮ、ＷＡＮなど）を介して接続されていることを示している。
【００９２】
画像データベース装置１は、画像処理装置１１からネットワーク１０を介して送信された実写画像を、実写画像に付加された撮影位置に基づいて記憶する。画像処理装置１１は、表示する位置を画像データベース装置１にネットワーク１０を介して送信し、位置に基づいて検索された実写画像をネットワーク１０を介して受信し、表示する。
【００９３】
図２２は、画像データベース装置１のハードウェア構成を示す図である。以下は、コンピュータを典型とする情報処理装置として全般的な構成を説明するが、専用機や組み込み型装置の場合、その環境に応じて必要最小限な構成を選択できることはいうまでもない。
【００９４】
画像データベース装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１０、バスライン１００５、通信Ｉ／Ｆ１０４０、メインメモリ１０５０、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）１０６０、パラレルポート１０８０、ＵＳＢポート１０９０、グラフィック・コントローラ１０２０、ＶＲＡＭ１０２４、Ｉ／Ｏコントローラ１０７０、ならびにキーボード及びマウス・アダプタなど１１００の入力手段を備える。Ｉ／Ｏコントローラ１０７０には、ハード・ディスク１０７４及びバックアップ用ハード・ディスク１０７５、光ディスク・ドライブ１０７６、半導体メモリ１０７８、などの記憶手段を接続することができる。グラフィック・コントローラ１０２０には、表示装置１０２２が接続されている。
【００９５】
ＢＩＯＳ１０６０は、画像データベース装置１の起動時にＣＰＵ１０１０が実行するブートプログラムや、画像データベース装置１のハードウェアに依存するプログラムなどを格納する。
【００９６】
光ディスク・ドライブ１０７６としては、例えば、ＤＶＤ−ＲＯＭドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＡＭドライブ、ＣＤ−ＲＡＭドライブを使用することができる。この際は各ドライブに対応した光ディスク１０７７を使用する必要がある。光ディスク・ドライブ１０７６は光ディスク１０７７からプログラム又はデータを読み取り、Ｉ／Ｏコントローラ１０７０を介してメインメモリ１０５０又はハード・ディスク１０７４に提供することもできる。
【００９７】
画像データベース装置１に提供されるコンピュータ・プログラムは、フレキシブル・ディスク１０７１、光ディスク１０７７、又はメモリカードなどの記録媒体に格納されて利用者によって提供される。このコンピュータ・プログラムは、Ｉ／Ｏコントローラ１０７０を介して、記録媒体から読み出され、又は通信Ｉ／Ｆ１０４０を介してダウンロードされることによって、画像データベース装置１にインストールされ実行される。コンピュータ・プログラムが情報処理装置に働きかけて行わせる動作は、既に説明した装置における動作と同一であるので省略する。
【００９８】
上述のコンピュータ・プログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としてはフレキシブル・ディスク１０７１、光ディスク１０７７、又はメモリカードの他に、ＭＤなどの光磁気記録媒体、テープ媒体を用いることができる。また、専用通信回線やインターネットに接続されたサーバシステムに設けたハード・ディスク又は光ディスク・ライブラリなどの記憶装置を記録媒体として使用し、通信回線を介してコンピュータ・プログラムを画像データベース装置１に提供してもよい。
【００９９】
図２３は、画像処理装置１１のハードウェア構成を示す図である。以下は、コンピュータを典型とする情報処理装置として全般的な構成を説明するが、専用機や組み込み型装置の場合、その環境に応じて必要最小限な構成を選択できることはいうまでもない。
【０１００】
画像処理装置１１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１０、バスライン２００５、通信Ｉ／Ｆ２０４０、メインメモリ２０５０、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）２０６０、パラレルポート２０８０、ＵＳＢポート２０９０、グラフィック・コントローラ２０２０、ＶＲＡＭ２０２４、Ｉ／Ｏコントローラ２０７０、ならびにキーボード及びマウス・アダプタなど２１００の入力手段を備える。Ｉ／Ｏコントローラ２０７０には、フレキシブル・ディスク（ＦＤ）ドライブ２０７２、ハード・ディスク２０７４、光ディスク・ドライブ２０７６、半導体メモリ２０７８、などの記憶手段を接続することができる。グラフィック・コントローラ２０２０には、表示装置２０２２が接続されている。
【０１０１】
ＢＩＯＳ２０６０は、画像処理装置１１の起動時にＣＰＵ２０１０が実行するブートプログラムや、画像処理装置１１のハードウェアに依存するプログラムなどを格納する。ＦＤドライブ２０７２は、フレキシブル・ディスク２０７１からプログラム又はデータを読み取り、Ｉ／Ｏコントローラ２０７０を介してメインメモリ２０５０又はハード・ディスク２０７４に提供する。
【０１０２】
光ディスク・ドライブ２０７６としては、例えば、ＤＶＤ−ＲＯＭドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＡＭドライブ、ＣＤ−ＲＡＭドライブを使用することができる。この際は各ドライブに対応した光ディスク２０７７を使用する必要がある。光ディスク・ドライブ２０７６は光ディスク２０７７からプログラム又はデータを読み取り、Ｉ／Ｏコントローラ２０７０を介してメインメモリ２０５０又はハード・ディスク２０７４に提供することもできる。
【０１０３】
画像処理装置１１に提供されるコンピュータ・プログラムは、フレキシブル・ディスク２０７１、光ディスク２０７７、又はメモリカードなどの記録媒体に格納されて利用者によって提供される。このコンピュータ・プログラムは、Ｉ／Ｏコントローラ２０７０を介して、記録媒体から読み出され、又は通信Ｉ／Ｆ２０４０を介してダウンロードされることによって、画像処理装置１１にインストールされ実行される。コンピュータ・プログラムが情報処理装置に働きかけて行わせる動作は、既に説明した装置における動作と同一であるので省略する。
【０１０４】
上述のコンピュータ・プログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としてはフレキシブル・ディスク２０７１、光ディスク２０７７、又はメモリカードの他に、ＭＤなどの光磁気記録媒体、テープ媒体を用いることができる。また、専用通信回線やインターネットに接続されたサーバシステムに設けたハード・ディスク又は光ディスク・ライブラリなどの記憶装置を記録媒体として使用し、通信回線を介してコンピュータ・プログラムを画像処理装置１１に提供してもよい。
【０１０５】
図２４は、画像情報のデータ構成を示す図である。１つの画像データとともに、画像ＩＤ、撮影位置データ、その他の撮影条件（撮影方向、撮影仰角など）データ、属性情報（撮影日時など）データ、領域へのポインタを備えている。
【０１０６】
図２５は、領域情報のデータ構成を示す図である。１つの領域は、領域ＩＤ、領域の座標、ツリー構造のための分割レベル、上位ノードへのポインタ、下位ノードへのポインタ、画像へのポインタ、パノラマ画像へのポインタを備えている。分割レベルは、ノードの最大分割レベル数を記憶する。画像へのポインタは、撮影方向ごと、撮影仰角ごと、撮影時刻ごとなどのポインタからなり、実写画像データは、撮影方向ごと、撮影仰角ごと、撮影時刻ごとなどに分類して記憶される。
【０１０７】
図２６は、画像データベース装置１のメインのフローチャートである。
【０１０８】
ＣＰＵ１０１０は、ステップＳ１０１において、初期化処理を行い、処理をステップＳ１０２に移す。ステップＳ１０２において、ＣＰＵ１０１０は、ネットワーク１０を介して画像処理装置１１からデータの受信処理を行い、処理をステップＳ１０３に移し、受信したデータは画像登録のためのデータか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ１０７に移し、ＮＯの場合は処理をステップＳ１０４に移す。ステップＳ１０４において、ＣＰＵ１０１０は、受信したデータが画像要求か否かを判断し、この判断がＹＥＳの場合は、処理をステップＳ１０５に移し、ＮＯの場合は、処理を終了する。ステップＳ１０５において、ＣＰＵ１０１０は、受信したデータに基づき画像検索処理を行い、処理をステップＳ１０６に移し、検索した画像データの送信処理を行い処理を終了する。
【０１０９】
ステップＳ１０７において、ＣＰＵ１０１０は、画像登録処理を行い、その後処理を終了する。
【０１１０】
図２７は、画像データベース装置１の画像登録処理のフローチャートである。
【０１１１】
ＣＰＵ１０１０は、ステップＳ１１１において、受信した画像データの撮影位置から領域を取得し、処理をステップＳ１１２に移し、取得した領域に他の画像が登録されているか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ１１３に移し、ＮＯの場合は処理をステップＳ１１９に移す。ステップＳ１１３において、ＣＰＵ１０１０は、受信した画像データの撮影方向と、領域に登録されている画像データの撮影方向とが同じか否かを判断し、この判断がＹＥＳの場合は、処理をステップＳ１１４に移し、ＮＯの場合は、処理をステップＳ１１９に移す。ステップＳ１１４において、ＣＰＵ１０１０は、受信した画像データの撮影仰角と、領域に登録されている画像データの撮影仰角とが同じか否かを判断し、この判断がＹＥＳの場合は、処理をステップＳ１１５に移し、ＮＯの場合は処理をステップＳ１１９に移す。ステップＳ１１５において、ＣＰＵ１０１０は、受信した画像データと、領域に登録されている画像データとの比較判定を行い、類似度が所定の範囲内か否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ１１９に移し、ＮＯの場合は処理をステップＳ１１６に移す。ステップＳ１１６において、ＣＰＵ１０１０は、領域を分割し、処理をステップＳ１１８に移し、分割した領域に画像が登録されているか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ１１３に移し、ＮＯの場合は処理をステップＳ１１９に移す。
【０１１２】
ステップＳ１１９において、ＣＰＵ１０１０は、撮影条件に分類して受信した画像データを登録し、本処理を終了し処理をメイン処理に戻す。
【０１１３】
ここで、ステップＳ１１５における、登録されている画像との比較判定は、撮影条件や類似度をＣＰＵ１０１０が自動的に判定するが、対話型（ＣＰＵ１０１０が判定を要求し、入力に応じて判定する）や、半自動（自動と対話型の組合せ）による判定も可能である。
【０１１４】
図２８は、画像データベース装置１の画像検索処理のフローチャートである。
【０１１５】
ＣＰＵ１０１０は、ステップＳ１２１において、隣接領域の画像データか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ１２４に移し、ＮＯの場合は処理をステップＳ１２２に移す。ステップＳ１２２において、ＣＰＵ１０１０は、領域の画像検索を行い、処理をステップＳ１２３に移す。
【０１１６】
ステップＳ１２３において、ＣＰＵ１０１０は、検索した画像データを取得し、本処理を終了し処理をメイン処理に戻す。
【０１１７】
ステップＳ１２４において、ＣＰＵ１０１０は、隣接領域の画像を検索し、処理をステップＳ１２３に移す。
【０１１８】
図２９は、画像処理装置１１のメインのフローチャートである。
【０１１９】
ＣＰＵ２０１０は、ステップＳ２０１において、初期化処理を行い、処理をステップＳ２０２に移す。ステップＳ２０２において、ＣＰＵ２０１０は、処理条件を受付ける受付処理を行い、処理をステップＳ２０３に移す。ステップＳ２０３において、ＣＰＵ２０１０は、処理すべき内容が画像登録か否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２０４に移し、ＮＯの場合は処理をステップＳ２０５に移す。ステップＳ２０４において、ＣＰＵ２０１０は、画像登録処理を行い、その後処理を終了する。
【０１２０】
ステップＳ２０５において、ＣＰＵ２０１０は、画像表示処理を行い、その後処理を終了する。
【０１２１】
図３０は、画像処理装置１１の画像登録処理のフローチャートである。
【０１２２】
ＣＰＵ２０１０は、ステップＳ２１１において、画像取込み処理を行い、処理をステップＳ２１２に移す。ステップＳ２１２において、ＣＰＵ２０１０は、撮影条件などのユーザによる入力を受付け、ユーザが入力した撮影条件などを記憶し、処理をステップＳ２１３に移す。ステップＳ２１３において、ＣＰＵ２０１０は、画像属性などのユーザによる入力を受付け、ユーザが入力した画像属性などを記憶し、処理をステップＳ２１４に移す。ステップＳ２１４において、ＣＰＵ２０１０は、記憶した画像データ、撮影条件、画像属性などの情報をインターネットを介して画像データベース装置１に送信し、本処理を終了しメイン処理に戻る。
【０１２３】
図３１は、画像処理装置１１の画像表示処理のフローチャートである。
【０１２４】
ＣＰＵ２０１０は、ステップＳ２２１において、アバタの位置検出を行い、処理をステップＳ２２２に移す。ステップＳ２２２において、ＣＰＵ２０１０は、検出した位置が表示空間内か否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２２６に移し、ＮＯの場合は処理をステップＳ２２３に移す。ステップＳ２２３において、ＣＰＵ２０１０は、位置データをネットワーク１０を介して画像データベース装置１へ送信し、処理をステップＳ２２４に移す。ステップＳ２２４において、ＣＰＵ２０１０は、ネットワーク１０を介して画像データベース装置１から受信した画像データを取得し、処理をステップＳ２２５に移す。ステップＳ２２５において、ＣＰＵ２０１０は、表示空間の内部表現処理を行い、その後処理を終了し処理をメイン処理に戻す。
【０１２５】
ステップＳ２２６において、ＣＰＵ２０１０は、表示空間の外部表現処理を行い、その後本処理を終了し処理をメイン処理に戻す。
【０１２６】
図３２は、画像処理装置１１の表示空間の内部表現処理のフローチャートである。
【０１２７】
ＣＰＵ２０１０は、ステップＳ２３１において、１つ以上の空間の中にいるか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２３２に移し、ＮＯの場合は処理をステップＳ２４０に移す。ステップＳ２３２において、ＣＰＵ２０１０は、２つ以上空間が交差するか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２３３に移し、ＮＯの場合は処理をステップＳ２３４に移す。ステップＳ２３３において、ＣＰＵ２０１０は、表示モードを設定し、処理をステップＳ２３５に移す。
【０１２８】
ステップＳ２３４において、ＣＰＵ２０１０は、表示モードを設定し、処理をステップＳ２３５に移す。
【０１２９】
ステップＳ２３５において、ＣＰＵ２０１０は、視野角内に画像が存在するか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２４３に移し、ＮＯの場合は処理をステップＳ２３６に移す。ステップＳ２３６において、ＣＰＵ２０１０は、隣接領域の画像を利用するか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２３７に移し、ＮＯの場合は処理をステップＳ２４４に移す。ステップＳ２３７において、ＣＰＵ２０１０は、ネットワーク１０を介して画像データベース装置１から隣接領域の画像を取得し、処理をステップＳ２３８に移す。ステップＳ２３８において、ＣＰＵ２０１０は、隣接領域からの画像であることを明示するか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２３９に移し、ＮＯの場合は処理をステップＳ２４５に移す。ステップＳ２３９において、ＣＰＵ２０１０は、画像の明度、色相、彩度を変更して表示モードに応じて表示処理を行い、その後本処理を終了し処理を画像表示処理に戻す。
【０１３０】
ステップＳ２４０において、ＣＰＵ２０１０は、包含された別の空間があるか否かを判断する。この判断がＹＥＳの場合は、処理をステップＳ２４１に移し、ＮＯの場合は処理をステップＳ２４２に移す。ステップＳ２４１において、ＣＰＵ２０１０は、表示モードを設定し、処理をステップＳ２３５に移す。
【０１３１】
ステップＳ２４２において、ＣＰＵ２０１０は、表示モードを設定し、処理をステップＳ２３５に移す。
【０１３２】
ステップＳ２４３において、ＣＰＵ２０１０は、表示モードに応じて表示処理を行い、その後本処理を終了し処理を画像表示処理に戻す。
【０１３３】
ステップＳ２４４において、ＣＰＵ２０１０は、予め登録された色やテクスチャの画像を表示モードに応じて表示処理を行い、その後本処理を終了し処理を画像表示処理に戻す。
【０１３４】
ステップＳ２４５において、ＣＰＵ２０１０は、表示モードに応じて表示処理を行い、その後本処理を終了し処理を画像表示処理に戻す。
【０１３５】
図３３は、画像処理装置１１における、表示空間内のパノラマ画像の例を示す図である。アバタの位置に基づいて、インターネットを介して受信した実写画像データを表示空間にレンダリングし、表示装置２０２２に表示していることを示している。表示された画像は、視点位置を含む領域に対応付けられた視点方向の実写画像と、視点位置を含む領域の隣接領域に対応付けられた視点方向に対応する実写画像との重ね合わせ、スクロールなどの多重表示技術を活用して得られる。
【０１３６】
図３４は、隣接領域の探索についての例を示す図である。上述の図６で説明した、領域のラベルを２進数で表現する方法で示している。すなわち、左下端を（０，０）、右上を（１，１）とした正規化空間に対して、再帰的に４分割を行い、領域を分割する。例えば、ｎ＝３とし、３回均等に４分割を繰り返すと、２３×２３個＝６４個の領域に分割される。その場合の領域の左下端及び右上端のラベルは、それぞれ（０（１／２）３、０（１／２）３）＝（０００、０００）及び（７（１／２）３、（７（１／２）３）＝（１１１、１１１）となる。図において、数値はそれぞれの領域のラベルを示している。例えば、分割の度合ｎ＝３、位置ｋ＝３、ｊ＝５の領域（３（１／２）３、５（１／２）３）＝（０１１、１０１）の隣接領域を具体的に求めてみる。ここで、領域（０１１、１０１）は、領域ＩＤのＳ−１３２に対応する。
【０１３７】
図３４（１）において、領域（０１１、１０１）の隣接領域は、上述の図６で示した式によれば、均等に分割されている場合、次のラベルの領域として表される。
Ｎｏｒｔｈ側の隣接領域は、（３（１／２）３、（５＋１）（１／２）３）＝（０１１、１１０）で表される。
ＮｏｒｔｈＥａｓｔ側の隣接領域は、（（３＋１）（１／２）３、（５＋１）（１／２）３）＝（１００、１１０）で表される。
Ｅａｓｔ側の隣接領域は、（（３＋１）（１／２）３、５（１／２）３）＝（１００、１０１）で表される。
ＳｏｕｔｈＥａｓｔ側の隣接領域は、（（３＋１）（１／２）３、（５−１）（１／２）３）＝（１００、１００）で表される。
Ｓｏｕｔｈ側の隣接領域は、（３（１／２）３、（５−１）（１／２）３）＝（０１１、１００）で表される。
ＳｏｕｔｈＷｅｓｔ側の隣接領域は、（（３−１）（１／２）３、（５−１）（１／２）３）＝（０１０、１００）で表される。
Ｗｅｓｔ側の隣接領域は、（（３−１）（１／２）３、５（１／２）３）＝（０１０、１０１）で表される。
ＮｏｒｔｈＷｅｓｔ側の隣接領域は、（（３−１）（１／２）３、（５＋１）（１／２）３）＝（０１０、１１０）で表される。
【０１３８】
図３４（２）において、領域（０１１、１０１）の隣接領域は、均等に分割されていない（分割の度合が粗い）場合、次のラベルの領域として表される。
Ｎｏｒｔｈ側の隣接領域は、例えば分割の度合ｍ＝２である場合、（ｉｎｔ（３／２３−２）（１／２）２、ｉｎｔ（（５＋１）／２３−２）（１／２）２）＝（ｉｎｔ（３／２３−２）（１／２）２、ｉｎｔ（（５＋１）／２３−２）（１／２）２）＝（１（１／２）２、３（１／２）２）＝（０１、１１）で表される。
ＮｏｒｔｈＥａｓｔ側の隣接領域は、例えば分割の度合ｍ＝２である場合、（ｉｎｔ（（３＋１）／２３−２）（１／２）２、ｉｎｔ（（５＋１）／２３−２）（１／２）２）＝（２（１／２）２、３（１／２）２）＝（１０、１１）で表される。
Ｅａｓｔ側の隣接領域は、例えば分割の度合ｍ＝２である場合、（ｉｎｔ（（３＋１）／２３−２）（１／２）２、ｉｎｔ（５／２３−２）（１／２）２）＝（２（１／２）２、２（１／２）２）＝（１０、１０）で表される。
ＳｏｕｔｈＥａｓｔ側の隣接領域は、例えば分割の度合ｍ＝２である場合、（ｉｎｔ（（３＋１）／２３−２）（１／２）２、ｉｎｔ（（５−１）／２３−２）（１／２）２）＝（２（１／２）２、２（１／２）２）＝（１０、１０）で表される。
Ｓｏｕｔｈ側の隣接領域は、例えば分割の度合ｍ＝３である場合、（ｉｎｔ（３／２３−３）（１／２）３、ｉｎｔ（（５−１）／２３−３）（１／２）３）＝（３（１／２）３、４（１／２）３）＝（０１１、１００）で表される。
ＳｏｕｔｈＷｅｓｔ側の隣接領域は、例えば分割の度合ｍ＝３である場合、（ｉｎｔ（（３−１）／２３−３）（１／２）３、ｉｎｔ（（５−１）／２３−３）（１／２）３）＝（２（１／２）３、４（１／２）３）＝（０１０、１００）で表される。
Ｗｅｓｔ側の隣接領域は、例えば分割の度合ｍ＝３である場合、（ｉｎｔ（（３−１）／２３−３）（１／２）３、ｉｎｔ（５／２３−３）（１／２）３）＝（２（１／２）３、５（１／２）３）＝（０１０、１０１）で表される。
ＮｏｒｔｈＷｅｓｔ側の隣接領域は、分割の度合ｍ＝２である場合、（ｉｎｔ（（３−１）／２３−２）（１／２）２、ｉｎｔ（（５＋１）／２３−２）（１／２）２）＝（１（１／２）２、３（１／２）２）＝（０１、１１）で表される。
【０１３９】
図３５（３）において、領域（０１１、１０１）の隣接領域は、均等に分割されていない（分割の度合が細かい）場合、次のラベルの領域として表される。
Ｎｏｒｔｈ側の隣接領域は、例えば分割の度合ｍ＝４である場合、ｓが０≦ｓ＜２４−３の全ての値、すなわち０、１であるので次の２領域となる。すなわち、（（３×２４−３＋０）（１／２）４、（（５＋１）×２４−３）（１／２）４）＝（６（１／２）４、１２（１／２）４）＝（０１１０、１１００）と、（（３×２４−３＋１）（１／２）４、（（５＋１）×２４−３）（１／２）４）＝（７（１／２）４、１２（１／２）４）＝（０１１１、１１００）と、で表される。
ＮｏｒｔｈＥａｓｔ側の隣接領域は、例えば分割の度合ｍ＝４である場合、（（３＋１）×２４−３）（１／２）４、（（５＋１）×２４−３）（１／２）４）＝（８（１／２）４、１２（１／２）４）＝（１０００、１１００）で表される。
Ｅａｓｔ側の隣接領域は、例えば分割の度合ｍ＝４である場合、ｓが０≦ｓ＜２４−３の全ての値、すなわち０、１であるので次の２領域となる。すなわち、（（３＋１）×２４−３）（１／２）４、（５×２４−３＋０）（１／２）４）＝（８（１／２）４、１０（１／２）４）＝（１０００、１０１０）と、（（３＋１）×２４−３）（１／２）４、（５×２４−３＋１）（１／２）４）＝（８（１／２）４、１１（１／２）４）＝（１０００、１０１１）とで表される。
ＳｏｕｔｈＥａｓｔ側の隣接領域は、例えば分割の度合ｍ＝４である場合、（（３＋１）×２４−３）（１／２）４、（５×２４−３−１）（１／２）４）＝（８（１／２）４、９４）＝（１０００、１００１）で表される。
Ｓｏｕｔｈ側の隣接領域は、例えば分割の度合ｍ＝４である場合、ｓが０≦ｓ＜２４−３の全ての値、すなわち０、１であるので次の２領域となる。すなわち、（（３×２４−３＋０）（１／２）４、（５×２４−３−１）（１／２）４）＝（６（１／２）４、９（１／２）４）＝（０１１０、１００１）と、（（３×２４−３＋１）（１／２）４、（５×２４−３−１）（１／２）４）＝（７（１／２）４、９（１／２）４）＝（０１１１、１００１）とで表される。
ＳｏｕｔｈＷｅｓｔ側の隣接領域は、例えば分割の度合ｍ＝４である場合、（（３×２４−３−１）（１／２）４、（５×２４−３−１）（１／２）４）＝（５（１／２）４、９（１／２）４）＝（０１０１、１００１）で表される。
Ｗｅｓｔ側の隣接領域は、例えば分割の度合ｍ＝４である場合、ｓが０≦ｓ＜２４−３の全ての値、すなわち０、１であるので次の２領域となる。すなわち、（（３×２４−３−１）（１／２）４、（５×２４−３＋０）（１／２）４）＝（５（１／２）４、１０（１／２）４）＝（０１０１、１０１０）と、（（３×２４−３−１）（１／２）４、（５×２４−３＋１）（１／２）４）＝（５（１／２）４、１１（１／２）４）＝（０１０１、１０１１）とで表される。
ＮｏｒｔｈＷｅｓｔ側の隣接領域は、例えば分割の度合ｍ＝４である場合、（（３×２４−３−１）（１／２）４、（（５＋１）×２４−３）（１／２）４）＝（５（１／２）４、１２（１／２）４）＝（０１０１、１１００）で表される。
【０１４０】
実施例によれば、本発明の画像処理装置１１は、仮想空間の領域の中の、座標によって表された視点位置５１１を含む領域に対応付けられた画像情報を、視点位置５１１の座標に基づいて画像データベース装置１からネットワーク１０を介して取得し、受付手段（図２９のステップＳ２０２の処理）により受付けた条件に応じて、領域を視覚化するための表示空間５０１，５０２，５０３，５０４に基づいてレンダリングし、表示装置２０２２に表示する。画像データベース装置１は、複数のユーザが撮影した画像と、その画像を撮影した位置をユーザの間で用いられる共通の座標によって表された撮影位置と、撮影するための撮影条件と、撮影した画像の画像属性とを画像情報（図２４）として記憶し、座標によって表された範囲を有する仮想空間の領域と、その領域に含まれる撮影位置を有する画像情報とを対応付けて記憶する（図２５）。
【０１４１】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施例に記載されたものに限定されるものではない。
【図面の簡単な説明】
【０１４２】
【図１】本発明の実施形態に係る発明の概要を示す図である。
【図２】本発明の実施形態に係るシステムの概要を示す図である。
【図３】撮影位置、撮影条件を説明する図。
【図４】４分岐ツリーで領域管理する例を示す図である。
【図５】障害物が存在する場合の例を示す図である。
【図６】４分岐ツリーで領域管理する画像データベースの例を示す図である。
【図７】撮影方向ごとに領域を管理する場合の一例を示す図である。
【図８】表示空間の外部表現の一例を示す図である。
【図９】パノラマ画像表示の例を示す図である。
【図１０】実写画像による仮想世界を示す図である。
【図１１】パネル壁面表示の概念を示す図である。
【図１２】パネル焦点位置表示の概念を示す図である。
【図１３】表示空間Ａにけるパネル焦点位置表示の概念を示す図である。
【図１４】表示空間Ｂにけるパネル焦点位置表示の概念を示す図である。
【図１５】表示空間Ｃにおけるパネル焦点位置表示の概念を示す図である。
【図１６】表示空間の中に包含された別の表示空間が存在する場合の表示方法を示す図である。
【図１７】表示空間の中に別の表示空間が完全に含まれる場合の表示方法を示す図である。
【図１８】表示空間が別の表示空間と交差している場合の表示方法を示す図である。
【図１９】表示空間が交差している場合であって、アバタが移動した場合の表示方法を示す図である。
【図２０】フェードイン・フェードアウトのヒステリシスを示す図である。
【図２１】画像データベース装置の動作環境を示す図である。
【図２２】画像データベース装置のハードウェア構成を示す図である。
【図２３】画像処理装置のハードウェア構成を示す図である。
【図２４】画像情報のデータ構成を示す図である。
【図２５】領域情報のデータ構成を示す図である。
【図２６】画像データベース装置のメインのフローチャートである。
【図２７】画像データベース装置の画像登録処理のフローチャートである。
【図２８】画像データベース装置の画像検索処理のフローチャートである。
【図２９】画像処理装置のメインのフローチャートである。
【図３０】画像処理装置の画像登録処理のフローチャートである。
【図３１】画像処理装置の画像表示処理のフローチャートである。
【図３２】画像処理装置の表示空間の内部表現処理のフローチャートである。
【図３３】表示空間内のパノラマ画像の例を示す図である。
【図３４】隣接領域の探索についての例を示す図（１）、（２）である。
【図３５】隣接領域の探索についての例を示す図（３）である。
【符号の説明】
【０１４３】
１      画像データベース装置
１０    ネットワーク
１１    画像処理装置
５０１  表示空間の円柱
５０２  表示空間の半球
５０３  表示空間の全球
５０４  表示空間のパーティクル
【図１】
0005044817.tif 000002
【図２】
0005044817.tif 000003
【図３】
0005044817.tif 000004
【図４】
0005044817.tif 000005
【図５】
0005044817.tif 000006
【図６】
0005044817.tif 000007
【図７】
0005044817.tif 000008
【図８】
0005044817.tif 000009
【図９】
0005044817.tif 000010
【図１０】
0005044817.tif 000011
【図１１】
0005044817.tif 000012
【図１２】
0005044817.tif 000013
【図１３】
0005044817.tif 000014
【図１４】
0005044817.tif 000015
【図１５】
0005044817.tif 000016
【図１６】
0005044817.tif 000017
【図１７】
0005044817.tif 000018
【図１８】
0005044817.tif 000019
【図１９】
0005044817.tif 000020
【図２０】
0005044817.tif 000021
【図２１】
0005044817.tif 000022
【図２２】
0005044817.tif 000023
【図２３】
0005044817.tif 000024
【図２４】
0005044817.tif 000025
【図２５】
0005044817.tif 000026
【図２６】
0005044817.tif 000027
【図２７】
0005044817.tif 000028
【図２８】
0005044817.tif 000029
【図２９】
0005044817.tif 000030
【図３０】
0005044817.tif 000031
【図３１】
0005044817.tif 000032
【図３２】
0005044817.tif 000033
【図３３】
0005044817.tif 000034
【図３４】
0005044817.tif 000035
【図３５】
0005044817.tif 000036