(57)【特許請求の範囲】
【請求項１】
所定の経路に沿って移動する視点から見た任意方向の視界を表示する自由視点映像表示装置であって、
前記経路に沿って移動しながら全方位カメラを用いて撮影した３６０°の視界をもつ全方位画像を、フレーム単位で格納する全方位画像格納部と、
前記経路を構成する複数のノードの各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成されるルート情報を格納するルート情報格納部と、
前記全方位画像格納部に格納されている全方位画像の個々のフレームと、前記ルート情報格納部に格納されている前記ルート情報におけるノードもしくはブランチ上の１点と、の対応関係を示す対応関係情報を格納する対応関係情報格納部と、
前記経路上の現在地を示す現在地データを格納する現在地データ格納部と、
視線方向を示す視線方向データを格納する視線方向データ格納部と、
ユーザの入力操作に基づいて、前記現在地が前記経路上で移動するように前記現在地データを更新する現在地更新処理と、前記視線方向が変化するように前記視線方向データを更新する視線方向更新処理と、を行うデータ更新部と、
前記現在地データによって示される現在地に対応する現在地フレームを、前記対応関係情報を参照することにより認識し、前記全方位画像格納部から前記現在地フレームの全方位画像を読み出し、読み出した全方位画像から、前記視線方向データによって示される視線方向の視界を構成する視野画像を切り出す画像切出部と、
前記現在地データおよび前記視線方向データに基づいて、前記経路の平面図に、現在地を示す現在地指標と視線方向を示す視線方向指標とを重畳したルートマップを作成するルートマップ作成部と、
前記視野画像と前記ルートマップとを並べて表示する画像表示部と、
を備え、
前記視線方向指標は、視線方向を示す視線ベクトルを中心線とする扇形の図形であり、その頂点が前記現在地指標上に配置されていることを特徴とする自由視点映像表示装置。
【請求項２】
請求項１に記載の自由視点映像表示装置において、
全方位画像格納部が、魚眼レンズもしくは全方位ミラーを装着した全方位カメラを用いて、所定の水平面より上方に位置する半球状視界を撮影して得られる歪曲円形画像から、仰角が所定の基準値以下の領域を切り出し、これに歪み補正を施すことにより得られる矩形状のパノラマ画像を全方位画像として格納することを特徴とする自由視点映像表示装置。
【請求項３】
請求項１に記載の自由視点映像表示装置において、
全方位画像格納部が、仮想の経路を示す三次元ＣＧ画像に基づいて作成された矩形状のパノラマ画像を全方位画像として格納することを特徴とする自由視点映像表示装置。
【請求項４】
請求項１〜３のいずれかに記載の自由視点映像表示装置において、
ルート情報格納部が、二次元座標系上における個々のノードの座標値を示す位置情報と、全ノード中の任意の２ノードの組み合わせについて、それぞれ相互間を接続する直線状のブランチが存在するか否かを示す接続情報と、によって構成されるルート情報を格納し、
現在地データ格納部が、前記二次元座標系上における現在地の座標値を示す現在地データを格納することを特徴とする自由視点映像表示装置。
【請求項５】
請求項４に記載の自由視点映像表示装置において、
視線方向データ格納部が、二次元座標系の所定の基準軸に対する方位角φ（０°≦φ＜３６０°）を視線方向データとして格納し、
画像切出部が、読み出した全方位画像から、方位角「φ−Δ／２」〜「φ＋Δ／２」の範囲内の視界（ただし、Δは所定の切出角度）を構成する視野画像を切り出すことを特徴とする自由視点映像表示装置。
【請求項６】
請求項１〜５のいずれかに記載の自由視点映像表示装置において、
全方位画像格納部が、一連のフレーム番号が付与されたフレーム単位の画像を格納し、
対応関係情報格納部が、個々のノードに対応するフレームのフレーム番号を特定する対応関係情報を格納し、
画像切出部が、現在地がノードである場合には、当該ノードに対応するフレーム番号が付与されたフレームを現在地フレームと認識し、現在地がブランチ上の中間地点である場合には、当該ブランチの両端に位置する一対のノードに対応する一対のフレーム番号に基づく線形補間により求めたフレーム番号が付与されたフレームを現在地フレームと認識することを特徴とする自由視点映像表示装置。
【請求項７】
請求項１〜６のいずれかに記載の自由視点映像表示装置において、
データ更新部が、
前進ボタンと、後退ボタンと、左向きボタンと、右向きボタンと、を有するコントローラを備え、
前記前進ボタンが押されている間、現在地が経路上を所定の進行方向に所定速度で移動するように現在地データを更新し、前記後退ボタンが押されている間、現在地が経路上を前記進行方向とは逆方向に所定速度で移動するように現在地データを更新し、前記左向きボタンが押されている間、視線方向が所定速度で左向きに変化するように視線方向データを更新し、前記右向きボタンが押されている間、視線方向が所定速度で右向きに変化するように視線方向データを更新することを特徴とする自由視点映像表示装置。
【請求項８】
請求項７に記載の自由視点映像表示装置において、
データ更新部が、
現在地を含むブランチの始点ノードから終点ノードに至る進行方向ベクトルを設定する機能を有し、前記進行方向ベクトルが示す方向を進行方向として現在地更新処理を行い、
現在地がいずれかのノードに到達したときに、現在地更新処理を一時停止し、到達ノードを始点とする新たなブランチをユーザに選択させ、前記到達ノードを始点ノード、選択されたブランチのもう一方の端点を終点ノードとする新たな進行方向ベクトルの設定を行ってから現在地更新処理を再開することを特徴とする自由視点映像表示装置。
【請求項９】
請求項８に記載の自由視点映像表示装置において、
データ更新部が、現在地がいずれかのノードに到達したときに、視野画像上に到達ノードを始点とする新たなブランチの方向を示す方向マーカを表示させ、
コントローラが、特定の方向マーカを選択する操作を行うためのマーカ選択ボタンを更に有し、
データ更新部が、前記マーカ選択ボタンによって選択された方向マーカに対応するブランチを、ユーザが選択したブランチとすることを特徴とする自由視点映像表示装置。
【請求項１０】
所定の経路に沿って移動する視点から見た任意方向の視界を表示する自由視点映像表示装置であって、
前記経路に沿って移動しながら全方位カメラを用いて撮影した３６０°の方位角で示される視界をもつ全方位画像を、フレーム単位で格納する全方位画像格納部と、
前記経路を構成する複数のノードの各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成されるルート情報を格納するルート情報格納部と、
前記全方位画像格納部に格納されている全方位画像の個々のフレームと、前記ルート情報格納部に格納されている前記ルート情報におけるノードもしくはブランチ上の１点と、の対応関係を示す対応関係情報を格納する対応関係情報格納部と、
前記経路上の現在地を示す現在地データを格納する現在地データ格納部と、
視線方向を示す視線方向データを格納する視線方向データ格納部と、
ユーザの入力操作に基づいて、前記現在地が前記経路上で移動するように前記現在地データを更新する現在地更新処理と、前記視線方向が変化するように前記視線方向データを更新する視線方向更新処理と、を行うデータ更新部と、
前記現在地データによって示される現在地に対応する現在地フレームを、前記対応関係情報を参照することにより認識し、前記全方位画像格納部から前記現在地フレームの全方位画像を読み出し、読み出した全方位画像から、前記視線方向データによって示される視線方向の視界を構成する視野画像を切り出す画像切出部と、
前記現在地データおよび前記視線方向データに基づいて、前記経路の平面図に、現在地および視線方向を示す指標を重畳したルートマップを作成するルートマップ作成部と、
前記視野画像と前記ルートマップとを並べて表示する画像表示部と、
を備え、
前記データ更新部が、
前進ボタンと、後退ボタンと、左向きボタンと、右向きボタンと、を有するコントローラを有しており、
前記前進ボタンが押されている間、現在地が経路上を所定の進行方向に所定速度で移動するように現在地データを更新し、前記後退ボタンが押されている間、現在地が経路上を前記進行方向とは逆方向に所定速度で移動するように現在地データを更新し、前記左向きボタンが押されている間、視線方向が所定速度で左向きに変化するように視線方向データを更新し、前記右向きボタンが押されている間、視線方向が所定速度で右向きに変化するように視線方向データを更新し、
現在地を含むブランチの始点ノードから終点ノードに至る進行方向ベクトルを設定する機能を有し、前記進行方向ベクトルが示す方向を進行方向として現在地更新処理を行い、
現在地がいずれかのノードに到達したときに、現在地更新処理を一時停止し、到達ノードを始点とする新たなブランチをユーザに選択させ、前記到達ノードを始点ノード、選択されたブランチのもう一方の端点を終点ノードとする新たな進行方向ベクトルの設定を行ってから現在地更新処理を再開し、
前記ルート情報格納部が、直線状のブランチの集合によって構成される経路を示すルート情報を格納しており、
前記データ更新部が、第１のブランチから第２のブランチへ進んだときに、進行方向ベクトルを基準とした視線方向が一定となるように、前記第１のブランチと前記第２のブランチのなす角度θと、前記第１のブランチを進行中の視線方向を示す方位角φ１と、に基づいて、前記第２のブランチを進行する際の視線方向を示す方位角φ２を求めることにより、視線方向データを更新する処理を行うことを特徴とする自由視点映像表示装置。
【請求項１１】
請求項１〜１０のいずれかに記載の自由視点映像表示装置としてコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自由視点映像表示装置に関し、特に、所定の経路に沿って移動する視点から見た任意方向の視界を表示する技術に関する。
【背景技術】
【０００２】
魚眼レンズや全方位ミラーを装着したカメラを用いると、周囲３６０°の視界をもつ全方位画像を撮影することができる。予め、このような全方位画像を用意しておけば、視聴者の希望する任意の視点位置から任意の方向を観察した画像を提示するサービスを提供することができる。
【０００３】
たとえば、下記の特許文献１には、情報提供センターに全方位画像を用意しておき、視聴者の求めに応じて、端末装置の画面上に任意視点から任意方向を観察した画像を表示させるための画像データを送信する技術が開示されている。また、グーグル株式会社（本社：米国カリフォルニア州のGoogle Inc. ）は、「ストリートビュー」と称して、インターネットを利用して道路上の任意視点から任意方向を観察した景色を表示するサービスを提供している。
【０００４】
一方、特許文献２には、一般的なデジタルカメラを用いて撮影された複数の画像をつなぎ合わせて全方位画像を作成する装置において、個々の画像の撮影方向をリアルタイムで検知し、撮影された画像をリアルタイムで読み出して表示する技術が開示されている。この装置を利用すれば、撮影者は、全方位の空間のうち、どの領域が撮影済みであり、どの領域が未撮影であるかを、リアルタイムで認識することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−００８２３２号公報
【特許文献２】特開２０１０−１９９９７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
全方位画像を利用した従来の画像表示装置は、あくまでも静止画像を提示することを目的とした装置であり、ユーザが任意の視点を指定し、任意の視線方向を指定すると、指定に応じた静止画像が提示されるものである。すなわち、ユーザは、希望どおりの視点位置から希望どおりの方向を眺めた画像を得ることが可能であるが、提示されるのはあくまでも静止画像である。もちろん、グーグル社の「ストリートビュー」などでは、道路に沿って視点位置を移動させることも可能であるが、視点位置は道路上に離散的に設定された特定点に限定されるため、ユーザに提示されるのは、離散的な視点から見た複数の静止画像にすぎない。
【０００７】
このように、全方位画像を利用した画像表示を行ったとしても、表示される画像が静止画像である限り、ユーザに十分な臨場感を与えることはできない。ユーザの立場からは、あくまでも特定の視点から撮影した静止画像を眺めているだけであり、「自分が実際にその景色の中に存在する」という臨場感を味合うことはできない。
【０００８】
そこで本発明は、所定の経路に沿って移動する視点から見た任意方向の視界を動画として提示し、ユーザに高い臨場感を与えることが可能な自由視点映像表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
(1)   本発明の第１の態様は、所定の経路に沿って移動する視点から見た任意方向の視界を表示する自由視点映像表示装置において、
経路に沿って移動しながら全方位カメラを用いて撮影した３６０°の視界をもつ全方位画像を、フレーム単位で格納する全方位画像格納部と、
経路を構成する複数のノードの各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成されるルート情報を格納するルート情報格納部と、
全方位画像格納部に格納されている全方位画像の個々のフレームと、ルート情報格納部に格納されているルート情報におけるノードもしくはブランチ上の１点と、の対応関係を示す対応関係情報を格納する対応関係情報格納部と、
経路上の現在地を示す現在地データを格納する現在地データ格納部と、
視線方向を示す視線方向データを格納する視線方向データ格納部と、
ユーザの入力操作に基づいて、現在地が経路上で移動するように現在地データを更新する現在地更新処理と、視線方向が変化するように視線方向データを更新する視線方向更新処理と、を行うデータ更新部と、
現在地データによって示される現在地に対応する現在地フレームを、対応関係情報を参照することにより認識し、全方位画像格納部から現在地フレームの全方位画像を読み出し、読み出した全方位画像から、視線方向データによって示される視線方向の視界を構成する視野画像を切り出す画像切出部と、
現在地データおよび視線方向データに基づいて、経路の平面図に、現在地を示す現在地指標と視線方向を示す視線方向指標とを重畳したルートマップを作成するルートマップ作成部と、
視野画像とルートマップとを並べて表示する画像表示部と、
を設け、
視線方向指標として、視線方向を示す視線ベクトルを中心線とする扇形の図形を用い、その頂点を現在地指標上に配置するようにしたものである。
【００１０】
(2)   本発明の第２の態様は、上述の第１の態様に係る自由視点映像表示装置において、
全方位画像格納部が、魚眼レンズもしくは全方位ミラーを装着した全方位カメラを用いて、所定の水平面より上方に位置する半球状視界を撮影して得られる歪曲円形画像から、仰角が所定の基準値以下の領域を切り出し、これに歪み補正を施すことにより得られる矩形状のパノラマ画像を全方位画像として格納するようにしたものである。
【００１１】
(3)   本発明の第３の態様は、上述の第１の態様に係る自由視点映像表示装置において、
全方位画像格納部が、仮想の経路を示す三次元ＣＧ画像に基づいて作成された矩形状のパノラマ画像を全方位画像として格納するようにしたものである。
【００１２】
(4)   本発明の第４の態様は、上述の第１〜第３の態様に係る自由視点映像表示装置において、
ルート情報格納部が、二次元座標系上における個々のノードの座標値を示す位置情報と、全ノード中の任意の２ノードの組み合わせについて、それぞれ相互間を接続する直線状のブランチが存在するか否かを示す接続情報と、によって構成されるルート情報を格納し、
現在地データ格納部が、二次元座標系上における現在地の座標値を示す現在地データを格納するようにしたものである。
【００１３】
(5)   本発明の第５の態様は、上述の第４の態様に係る自由視点映像表示装置において、
視線方向データ格納部が、二次元座標系の所定の基準軸に対する方位角φ（０°≦φ＜３６０°）を視線方向データとして格納し、
画像切出部が、読み出した全方位画像から、方位角「φ−Δ／２」〜「φ＋Δ／２」の範囲内の視界（ただし、Δは所定の切出角度）を構成する視野画像を切り出すようにしたものである。
【００１４】
(6)   本発明の第６の態様は、上述の第１〜第５の態様に係る自由視点映像表示装置において、
全方位画像格納部が、一連のフレーム番号が付与されたフレーム単位の画像を格納し、
対応関係情報格納部が、個々のノードに対応するフレームのフレーム番号を特定する対応関係情報を格納し、
画像切出部が、現在地がノードである場合には、当該ノードに対応するフレーム番号が付与されたフレームを現在地フレームと認識し、現在地がブランチ上の中間地点である場合には、当該ブランチの両端に位置する一対のノードに対応する一対のフレーム番号に基づく線形補間により求めたフレーム番号が付与されたフレームを現在地フレームと認識するようにしたものである。
【００１５】
(7)   本発明の第７の態様は、上述の第１〜第６の態様に係る自由視点映像表示装置において、
データ更新部が、
前進ボタンと、後退ボタンと、左向きボタンと、右向きボタンと、を有するコントローラを備え、
前進ボタンが押されている間、現在地が経路上を所定の進行方向に所定速度で移動するように現在地データを更新し、後退ボタンが押されている間、現在地が経路上を進行方向とは逆方向に所定速度で移動するように現在地データを更新し、左向きボタンが押されている間、視線方向が所定速度で左向きに変化するように視線方向データを更新し、右向きボタンが押されている間、視線方向が所定速度で右向きに変化するように視線方向データを更新するようにしたものである。
【００１６】
(8)   本発明の第８の態様は、上述の第７の態様に係る自由視点映像表示装置において、
データ更新部が、
現在地を含むブランチの始点ノードから終点ノードに至る進行方向ベクトルを設定する機能を有し、進行方向ベクトルが示す方向を進行方向として現在地更新処理を行い、
現在地がいずれかのノードに到達したときに、現在地更新処理を一時停止し、到達ノードを始点とする新たなブランチをユーザに選択させ、到達ノードを始点ノード、選択されたブランチのもう一方の端点を終点ノードとする新たな進行方向ベクトルの設定を行ってから現在地更新処理を再開するようにしたものである。
【００１７】
(9)   本発明の第９の態様は、上述の第８の態様に係る自由視点映像表示装置において、
データ更新部が、現在地がいずれかのノードに到達したときに、視野画像上に到達ノードを始点とする新たなブランチの方向を示す方向マーカを表示させ、
コントローラが、特定の方向マーカを選択する操作を行うためのマーカ選択ボタンを更に有し、
データ更新部が、マーカ選択ボタンによって選択された方向マーカに対応するブランチを、ユーザが選択したブランチとするようにしたものである。
【００１８】
(10)  本発明の第１０の態様は、所定の経路に沿って移動する視点から見た任意方向の視界を表示する自由視点映像表示装置において、
経路に沿って移動しながら全方位カメラを用いて撮影した３６０°の方位角で示される視界をもつ全方位画像を、フレーム単位で格納する全方位画像格納部と、
経路を構成する複数のノードの各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成されるルート情報を格納するルート情報格納部と、
全方位画像格納部に格納されている全方位画像の個々のフレームと、ルート情報格納部に格納されているルート情報におけるノードもしくはブランチ上の１点と、の対応関係を示す対応関係情報を格納する対応関係情報格納部と、
経路上の現在地を示す現在地データを格納する現在地データ格納部と、
視線方向を示す視線方向データを格納する視線方向データ格納部と、
ユーザの入力操作に基づいて、現在地が経路上で移動するように現在地データを更新する現在地更新処理と、視線方向が変化するように視線方向データを更新する視線方向更新処理と、を行うデータ更新部と、
現在地データによって示される現在地に対応する現在地フレームを、対応関係情報を参照することにより認識し、全方位画像格納部から現在地フレームの全方位画像を読み出し、読み出した全方位画像から、視線方向データによって示される視線方向の視界を構成する視野画像を切り出す画像切出部と、
現在地データおよび視線方向データに基づいて、前記経路の平面図に、現在地および視線方向を示す指標を重畳したルートマップを作成するルートマップ作成部と、
視野画像とルートマップとを並べて表示する画像表示部と、
を設け、
データ更新部が、
前進ボタンと、後退ボタンと、左向きボタンと、右向きボタンと、を有するコントローラを有しており、
前進ボタンが押されている間、現在地が経路上を所定の進行方向に所定速度で移動するように現在地データを更新し、後退ボタンが押されている間、現在地が経路上を進行方向とは逆方向に所定速度で移動するように現在地データを更新し、左向きボタンが押されている間、視線方向が所定速度で左向きに変化するように視線方向データを更新し、右向きボタンが押されている間、視線方向が所定速度で右向きに変化するように視線方向データを更新し、
現在地を含むブランチの始点ノードから終点ノードに至る進行方向ベクトルを設定する機能を有し、進行方向ベクトルが示す方向を進行方向として現在地更新処理を行い、
現在地がいずれかのノードに到達したときに、現在地更新処理を一時停止し、到達ノードを始点とする新たなブランチをユーザに選択させ、到達ノードを始点ノード、選択されたブランチのもう一方の端点を終点ノードとする新たな進行方向ベクトルの設定を行ってから現在地更新処理を再開し、
ルート情報格納部が、直線状のブランチの集合によって構成される経路を示すルート情報を格納しており、
データ更新部が、第１のブランチから第２のブランチへ進んだときに、進行方向ベクトルを基準とした視線方向が一定となるように、第１のブランチと第２のブランチのなす角度θと、第１のブランチを進行中の視線方向を示す方位角φ１と、に基づいて、第２のブランチを進行する際の視線方向を示す方位角φ２を求めることにより、視線方向データを更新する処理を行うようにしたものである。
【００１９】
(11)  本発明の第１１の態様は、上述の第１〜第１０の態様に係る自由視点映像表示装置を、コンピュータに専用のプログラムを組み込むことにより構成したものである。
【発明の効果】
【００２０】
本発明に係る自由視点映像表示装置によれば、所定の経路に沿って移動する視点から見た任意方向の視界を動画として提示することができる。ユーザは、データ更新部に対する入力操作により、経路上を自由に動きまわることができ、視線方向を自由に変更することができる。このため、ユーザには、当該経路に沿って実際に自分が移動しているような高い臨場感を与えることが可能になる。また、現在地および視線方向に応じた画像とともに、現在地および視線方向を示すルートマップが表示されるため、ユーザは、自分の現在地と視線方向を容易に認識することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の基本的な実施形態に係る自由視点映像表示装置の構成を示すブロック図である。
【図２】図１に示す装置による提示対象となる美術館の平面図である（ハッチングは壁面を示す）。
【図３】図２に示す美術館の参観経路を構成するノードとブランチを示す平面図である。
【図４】図３に示すノードとブランチをＸＹ二次元座標上に表した例を示す平面図である。
【図５】図１に示す装置におけるルート情報格納部１３０内に格納されるルート情報Ｒの一例を示す図である。
【図６】図５に示すルート情報Ｒを実フォーマットで示す図である。
【図７】図１に示す全方位画像格納部１１０内に格納される全方位画像の撮影装置の一例を示す側面図である。
【図８】図７に示す撮影装置を用いて撮影された歪曲円形画像の平面図である。
【図９】図７に示す撮影装置を用いて撮影された歪曲円形画像に基づいて作成された矩形状のパノラマ画像（全方位画像）の一例を示す平面図である。
【図１０】図１に示す装置における対応関係情報格納部１２０内に格納される対応関係情報の役割を示す図である。
【図１１】ブランチ上の中間地点について、対応するフレームを決定する線形補間プロセスを示す平面図である。
【図１２】図１に示す装置における対応関係情報格納部１２０内に格納される対応関係情報Ｃの一例を示す図である。
【図１３】図１２に示す対応関係情報Ｃを実フォーマットで示す図である。
【図１４】図３の経路上に現在地Ｐおよび視線方向φ（方位角）を定義した例を示す平面図である。
【図１５】図１４に示す現在地Ｐに対応するフレームＦ０４５２から、方位角φ＝９０°の視線方向に対応する視野画像Ｑ（Ｐ，φ）を切り出す作業を示す平面図である。
【図１６】図１に示す装置における画像表示部１９０によって表示された画像の一例を示す平面図である。
【図１７】図１６に示す画像における現在地を示す指標Ｉおよび視線方向を示す指標Ｊの拡大図である。
【図１８】図１に示す装置におけるデータ更新部１７０の一部を構成するコントローラの上面図である。
【図１９】図３の経路上をノードＮ５からノードＮ２に向かって移動している状態を示す平面図である。
【図２０】現在地が図１９に示すノードＮ２に到達した際に、視野画像表示領域Ｇ２内に方向マーカが表示された状態を示す平面図である（Ｇ２内の視野画像自身は表示を省略）。
【図２１】図１に示す装置におけるデータ更新部１７０が保持する進行方向ベクトルの設定変更例を示す図である。
【図２２】進行方向ベクトルの設定変更とともに視線方向を更新する実施例を示す平面図である。
【発明を実施するための形態】
【００２２】
以下、本発明を図示する実施形態に基づいて説明する。
【００２３】
＜＜＜  §１．  基本的な実施形態に係る装置の構成  ＞＞＞
図１は、本発明の基本的な実施形態に係る自由視点映像表示装置の構成を示すブロック図である。図示のとおり、この装置は、全方位画像を格納する全方位画像格納部１１０、対応関係情報を格納する対応関係情報格納部１２０、ルート情報を格納するルート情報格納部１３０、全方位画像から視野画像を切り出す画像切出部１４０、現在地データを格納する現在地データ格納部１５０、視線方向データを格納する視線方向データ格納部１６０、現在地データおよび視線方向データを更新するデータ更新部１７０、ルートマップを作成するルートマップ作成部１８０、視野画像とルートマップとを表示する画像表示部１９０によって構成されている。
【００２４】
もっとも、実際には、これらの各構成要素はコンピュータおよびその周辺機器を利用して構成することができる。すなわち、各格納部１１０，１２０，１３０，１５０，１６０は、コンピュータ用のメモリやディスク装置などの記憶装置によって構成することができ、画像切出部１４０およびルートマップ作成部１８０は、所定のプログラムに基づいて動作するコンピュータのプロセッサによって構成することができ、データ更新部１７０は、当該プロセッサおよびユーザインターフェイスを備えたコンピュータ用の入力装置によって構成することができ、画像表示部１９０は、コンピュータ用のディスプレイ装置およびその制御装置によって構成することができる。したがって、実用上は、この自由視点映像表示装置は、コンピュータ機器に所定のプログラムを組み込むことによって構成される。
【００２５】
この装置は、所定の経路に沿って移動する視点から見た任意方向の視界を表示する機能を有する装置であり、表示対象となる経路は、屋外であっても、屋内であってもかまわない。したがって、この装置は、たとえば、様々な史跡や観光地の景色をディスプレイ画面上に提示し、ユーザに、あたかも当該史跡や観光地内を自由に歩き回って見学しているような体験をさせることが可能である。以下の説明では、便宜上、図２に示すような平面図で示される間取りをもった美術館の館内をユーザに提示する単純な例について、上記各構成要素の機能を述べることにする。
【００２６】
ここでは、この図２に示す美術館が、絵画と彫刻を展示するための実在の施設であり、図示のとおり、入口から入館した参観者は、内部の回廊を自由に歩き回りながら展示物を鑑賞し、出口から退館するものとしよう。図２にハッチングを施した部分は、回廊の壁面を示しており、絵画は、この壁面に展示されているものとする。また、回廊の床には、適宜、彫刻が置かれているものとする。図１に示す自由視点映像表示装置は、基本的には、この実在の美術館の館内を撮影した画像をユーザに提示するための装置ということになるが、ユーザが、館内を自由に歩き回りながら、視線を任意の方向に向けて観察した状態をシミュレートし、動画として提示する機能を有している。
【００２７】
そのために、本発明では、提示対象となる施設の経路を、ノードとブランチとによって表現し、ルート情報として取り扱うことにする。図３は、図２に示す美術館の参観経路を構成するノードとブランチを示す平面図であり、個々の黒点はノード、個々の直線はブランチ、個々の破線は実際の経路の輪郭を示している。図示のとおり、この例では、６個のノードＮ１〜Ｎ６と、６本のブランチＢ１２〜Ｂ５６とが定義されている。各ブランチは、２つのノードを接続する単位経路であり、ここでは便宜上、ノードＮｉとＮｊとを結ぶブランチを、ブランチＢｉｊという符号で示している。たとえば、ブランチＢ１２は、ノードＮ１とＮ２とを結ぶ単位経路である。
【００２８】
経路上のどの位置にノードを定義し、どのノード間にブランチを定義するかは、この装置の設計者の判断に委ねられるが、一般的には、経路の分岐点、曲がり角、端点にノードを定義し、実際の経路に応じて、必要なノード間にブランチを定義すればよい。図示の例の場合、各ブランチはいずれも直線をなすが、実在の経路が曲線を含む場合には、曲線からなるブランチを定義してもかまわない。ただ、ブランチが直線であれば、その両端点のノードを特定するだけで当該ブランチも特定されるので、実用上は、すべてのブランチを直線によって構成するのが好ましい。実在の経路が曲線を含む場合には、複数のノードとこれらを結ぶ直線からなる折れ線によって擬似的に曲線を近似すればよい。
【００２９】
ここでは、経路を構成する複数のノードの各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成される情報をルート情報Ｒと呼ぶことにする。図１に示す装置におけるルート情報格納部１３０は、このようなルート情報を格納する構成要素である。各ノードの位置情報は、実際には、座標値として与えられる。図４は、図３に示すノードとブランチをＸＹ二次元座標上に表した例を示す平面図である。各ノードＮ１〜Ｎ６の符号に括弧書きで示した一対の座標は、当該ノードのＸ座標値およびＹ座標値である。たとえば、Ｎ１（１０，６０）は、ノードＮ１の位置座標が（１０，６０）であることを示している。
【００３０】
図５は、図４に示す具体的な経路についてのルート情報Ｒを示す図である。このルート情報Ｒは、経路を構成する複数のノードＮ１〜Ｎ６の各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成される。図示の例の場合、ノードの位置情報は、ＸＹ二次元座標系上における個々のノードの座標値を示す情報によって構成される。すなわち、図５の上段に示す位置情報は、図４の各ノードＮ１〜Ｎ６のＸＹ座標値を示している。
【００３１】
一方、ブランチの接続情報は、全ノード中の任意の２ノードの組み合わせについて、それぞれ相互間を接続する直線状のブランチが存在するか否かを示す情報によって構成されている。たとえば、図５の下段に示す接続情報は、横方向に６つのノードＮ１〜Ｎ６の欄が設けられ、縦方向にも６つのノードＮ１〜Ｎ６の欄が設けられ、合計３６個の要素をもつ行列に「０」または「１」なる数字が記載されている。ここで、「０」は、当該２ノードの組み合わせについて相互間を接続する直線状のブランチが存在しないことを示し、「１」は、そのようなブランチが存在することを示している。
【００３２】
たとえば、第１行目には、「０１００００」なる数字が記載されているが、これは、ノード「Ｎ１−Ｎ２」という組み合わせについては相互間を接続する直線状のブランチＢ１２が存在するが、ノード「Ｎ１−Ｎ１」，「Ｎ１−Ｎ３」，「Ｎ１−Ｎ４」，「Ｎ１−Ｎ５」，「Ｎ１−Ｎ６」という組み合わせについては相互間を接続する直線状のブランチが存在しないことを示している。ここで、行列の対角要素は、同一ノードの組み合わせを示しているので必ず「０」になる。図４に示す経路における各ノードのブランチを介した接続関係を参照すれば、図５の下段に示す接続情報が、図４の経路を示していることが容易に理解できよう。
【００３３】
図１に示す装置におけるルート情報格納部１３０は、この図５に示すようなルート情報Ｒを格納する機能を有している。すなわち、ルート情報格納部１３０は、経路を構成する複数のノードの各位置を示す位置情報と、これらノード間を接続するブランチを示す接続情報と、によって構成されるルート情報Ｒを格納する構成要素ということになる。なお、図５に示すルート情報Ｒには、説明の便宜上、冗長な情報が付加されている。実際には、ルート情報格納部１３０には、図６に示すような実フォーマットで記述されたルート情報Ｒが格納される。
【００３４】
図６に示すルート情報Ｒは、実質的に図５に示すルート情報Ｒと同じ内容を示すものである。すなわち、第１行目の数字「６」は全ノード数を示すものであり、続く第２〜７行目は、図５の上段に示す座標値の部分のみを示すものであり、続く第８〜１３行目は、図５の下段に示す行列の各要素の部分のみを示すものである。もちろん、この図６に示す実フォーマットは、一例を示すものであり、ルート情報Ｒの実フォーマットとしては、この他にも様々な形式のものを採用することができる。
【００３５】
一方、図１に示す装置における全方位画像格納部１１０には、図２に示す美術館の参観経路に沿って移動しながら全方位カメラを用いて撮影した３６０°の視界をもつ全方位画像が、フレーム単位で格納される。このような全方位画像を準備するにあたっては、すべてのブランチに沿った撮影画像が得られるのであれば、撮影を行う順序は任意である。
【００３６】
図７は、このような全方位画像の撮影装置の一例を示す側面図である。この撮影装置は、図示のとおり、魚眼レンズ１０、ビデオカメラ２０、データ処理ユニット３０、台車４０によって構成され、３６０°の視界をもつ画像を撮影可能な全方位カメラとして機能する。図７に示すように、魚眼レンズ１０は、この装置の最上部に配置され、所定の水平面より上方に位置する半球状視界の像をビデオカメラ２０の撮像面に形成する。このような構成を採ると、ビデオカメラ２０の撮像面には、図８に示すような歪曲円形画像が結像する（ハッチングを施したドーナツ状部分とその内部の白地の円形部分との両方が、魚眼レンズ１０で撮影した歪曲円形画像になる。）。この歪曲円形画像の中心にある天頂点Ｈは、図７に示す撮影装置の鉛直上方の位置にある点（回廊の天井に相当）になり、この歪曲円形画像の外周は、図７に示す撮影装置による撮影視野（周囲３６０°の視野）の下端位置に相当する。
【００３７】
ここに示す実施例の場合、絵画と彫刻を展示した美術館の館内が表示対象となっているため、天頂点Ｈの近傍にある白地の円形部分の画像（回廊の天井部分の画像に相当）は利用せず、図にハッチングを施したドーナツ状の領域のみを利用することにする。図９は、図８に示す歪曲円形画像から、仰角が所定の基準値以下の領域（図にハッチングを施した領域）を切り出し、これに歪み補正を施すことにより得られる矩形状のパノラマ画像を示す平面図である。このパノラマ画像の下辺に示す０°〜３６０°の方位角は、図８の歪曲円形画像の円周上に示された０°〜３６０°の方位角に対応する。すなわち、この図９に示すパノラマ画像は、図７に示す魚眼レンズ１０の位置に視点をおき、周囲３６０°を眺めた画像ということになる。
【００３８】
ビデオカメラ２０で撮影された歪曲円形画像のデータは、データ処理ユニット３０へ送られる。データ処理ユニット３０は、コンピュータによって構成され、歪曲円形画像のデータは、ハードディスク装置内に格納される。また、ここに示す実施例の場合、データ処理ユニット３０は、この歪曲円形画像からパノラマ画像を作成する処理を行う機能を有している。したがって、図８に示すような歪曲円形画像は、データ処理ユニット３０内で図９に示すようなパノラマ画像に変換され、ハードディスク装置内に格納される。ここに示す実施例の場合、このようにして得られたパノラマ画像を全方位画像として用いることになる。
【００３９】
図８に示す歪曲円形画像が歪んだドーナツ状の画像であるのに対して、図９に示すパノラマ画像は矩形状の画像であるため、データ処理ユニット３０は、歪み補正を伴う画像変換処理を行う必要がある。このような画像変換処理は公知の技術であるため、ここでは詳しい説明は省略する。なお、通常、このような歪み補正を伴う画像変換処理を行っても、歪みを完全に除去することは困難であるので、得られるパノラマ画像にも若干の歪みが残ることになるが、実用上支障のないレベルまでの歪み補正が可能である。
【００４０】
以上、図７に示す撮影装置を経路上の１地点に設置し、その周囲のパノラマ画像を得る手順を説明したが、この撮影装置を所定経路に沿って移動させながら、ビデオカメラ２０により動画撮影を行えば、図９に示すようなパノラマ画像（全方位画像）を１フレームとして、連続した複数フレームから構成される動画データが得られることになる。図１に示す装置における全方位画像格納部１１０には、参観経路に沿って移動しながら上記全方位カメラを用いて撮影したパノラマ画像がフレーム単位で格納される。
【００４１】
前述したとおり、すべてのブランチに沿った撮影画像が得られれば、撮影の順序は任意であるが、ここでは、説明の便宜上、図３に示す経路において、ノードＮ１→Ｎ２（ブランチＢ１２）、ノードＮ２→Ｎ３（ブランチＢ２３）、ノードＮ３→Ｎ６（ブランチＢ３６）、ノードＮ６→Ｎ５（ブランチＢ５６）、ノードＮ５→Ｎ４（ブランチＢ４５）、ノードＮ２→Ｎ５（ブランチＢ２５）の順に、台車４０を一定速度で移動させながら撮影を行い、一連のフレーム番号Ｆ００００〜Ｆ２４００が付された合計２４０１枚のパノラマ画像（全方位画像）からなる動画が得られたものとしよう。
【００４２】
全方位画像格納部１１０には、このような合計２４０１枚のパノラマ画像が、フレーム単位で格納されており、画像切出部１４０は、任意のフレーム番号が付与された１枚のパノラマ画像を読み出すことができる。これら２４０１枚のパノラマ画像は、それぞれ経路上の特定の地点において撮影された全方位画像ということになり、それぞれ特定の地点に対応づけられる。対応関係情報格納部１２０に格納されている対応関係情報は、このような対応関係を示す情報である。
【００４３】
たとえば、図１０に示すように、ノードＮから下方に伸びるブランチＢに沿って、図７に示す撮影装置を移動させながら撮影を行ったとすると、図示のとおり、ノードＮではフレームＦ００００、中間地点Ｍ１ではフレームＦ０００１、中間地点Ｍ２ではフレームＦ０００２、中間地点Ｍ３ではフレームＦ０００３、... というように、それぞれの位置で撮影したパノラマ画像（全方位画像）が各フレームとして得られることになる。台車４０を一定速度で移動させれば、ブランチ上に等間隔で定義された個々の地点について、それぞれパノラマ画像のフレームが対応づけられる。
【００４４】
ここで、第ｉ番目のフレームＦｉが撮影された中間地点Ｍｉと、第（ｉ＋１）番目のフレームＦ（ｉ＋１）が撮影された中間地点Ｍ（ｉ＋１）との距離は、ビデオカメラ２０のフレーム撮影間隔と台車４０の移動速度とに応じて決定される。たとえば、１秒間に３０フレームという撮影間隔（人間の眼が動画として認識可能な撮影間隔であればよい。）で撮影すれば、台車４０が１秒間に進む距離の間に３０フレーム分のパノラマ画像が対応づけられることになる。
【００４５】
結局、対応関係情報格納部１２０内に格納される対応関係情報とは、全方位画像格納部１１０に格納されているパノラマ画像（全方位画像）の個々のフレームＦ００００，Ｆ０００１，Ｆ０００２，Ｆ０００３，... と、ルート情報格納部１３０に格納されているルート情報Ｒにおける「ノード」もしくは「ブランチ上の１点」と、の対応関係を示す情報ということになる。すなわち、原理的には、全方位画像格納部１１０に、フレームＦ００００〜Ｆ２４００という合計２４０１枚のフレームが格納されていた場合には、これらのフレームのそれぞれについて、ルート上の「ノード」もしくは「ブランチ上の１点」を対応づける情報が対応関係情報として用意されることになる。
【００４６】
ただ、ここに示す実施例の場合、台車４０を一定速度で移動させながら全方位画像の撮影を行っているため、対応関係情報格納部１２０には、個々のノードに対応するフレームのフレーム番号を特定する対応関係情報のみを格納し、ノード間の中間地点に対応するフレームのフレーム番号については、線形補間によって求めるようにしている。
【００４７】
図１１は、ブランチ上の中間地点について、対応するフレームを決定する線形補間プロセスを示す平面図である。この例では、３つのノードＮ１，Ｎ２，Ｎ３と、ノードＮ１，Ｎ２間を接続するブランチおよびノードＮ２，Ｎ３間を接続するブランチが示されている。ここでは、台車４０をノードＮ１からＮ２を経てＮ３まで等速度で移動させることにより、フレームＦ００００〜Ｆ０７００という合計７０１枚の全方位画像が得られたものとし、ノードＮ１に対応する撮影画像がフレームＦ００００、ノードＮ２に対応する撮影画像がフレームＦ０２００、ノードＮ３に対応する撮影画像がフレームＦ０７００であったものとしよう。
【００４８】
この場合、対応関係情報としては、３つのノードＮ１，Ｎ２，Ｎ３に、それぞれフレーム番号Ｆ００００，Ｆ０２００，Ｆ０７００が対応することを示す情報を用意しておけば十分である。そうすれば、図示する中間地点Ｍａに対応するフレーム番号は、その両端に位置する一対のノードＮ１，Ｎ２に対応する一対のフレーム番号Ｆ００００，Ｆ０２００に基づく線形補間により求めることが可能であり、図示する中間地点Ｍｂに対応するフレーム番号は、その両端に位置する一対のノードＮ２，Ｎ３に対応する一対のフレーム番号Ｆ０２００，Ｆ０７００に基づく線形補間により求めることが可能である。
【００４９】
図１２は、図３に示す具体的な経路について撮影されたフレームＦ００００〜Ｆ２４００という合計２４０１枚のフレームについて、対応関係情報格納部１２０内に格納される対応関係情報Ｃの一例を示す図であり、左欄に示された一対のノード間のブランチに、右欄に示されたフレーム番号が対応することを示している。たとえば、１行目には、ノードＮ１，Ｎ２間のブランチＢ１２に対して、フレームＦ００００〜Ｆ０２００という合計２０１枚の全方位画像が対応することを示している。この図１２に示す対応関係情報Ｃは、実質的に、６つのブランチＢ１２，Ｂ２３，Ｂ３６，Ｂ５６，Ｂ４５，Ｂ２５の両端点のノードに対応づけられたフレーム番号を示しているだけであり、全２４０１枚のフレームのすべてに対応地点を定義した対応関係情報を用意する場合に比べて、情報量は大幅に節約される。
【００５０】
図１３は、図１２に示す対応関係情報Ｃを実フォーマットで示す図であり、各行ごとに、それぞれノード番号を示す２つの数字とフレーム番号を示す２つの数字を並べたものになっている。たとえば、第１行目の「１，２，０，２００」は、図１２の表における第１行目の情報に対応し、ノードＮ１，Ｎ２間のブランチに、フレーム番号Ｆ００００〜Ｆ０２００が対応することを示している。実際には、対応関係情報格納部１２０には、図１３に示すような実フォーマットで記述された対応関係情報Ｃが格納される。もちろん、この図１３に示す実フォーマットは、一例を示すものであり、対応関係情報Ｃの実フォーマットとしては、この他にも様々な形式のものを採用することができる。
【００５１】
＜＜＜  §２．  基本的な実施形態に係る装置の動作  ＞＞＞
続いて、図１に示す自由視点映像表示装置の動作を説明する。§１で述べたとおり、現在地データ格納部１５０には、経路上の現在地を示す現在地データが格納され、視線方向データ格納部１６０には、視線方向を示す視線方向データが格納される。ここで、「現在地」とは、この映像表示装置による映像表示の提供を受けるユーザについて、経路上の仮想位置を示すものであり、「視線方向」とは、この仮想位置にいるユーザの仮想の視線方向を示すものである。初期状態では、たとえば、図３のノードＮ１の位置に「現在地」を設定し、図の右方向に「視線方向」を設定するなどしておけばよい。
【００５２】
図１４は、図３の経路上に現在地Ｐおよび視線方向φ（方位角）を定義した例を示す平面図である。この例では、現在地Ｐは、ノードＮ２，Ｎ３間を接続するブランチＢ２３上の中間地点に定義されており、ＸＹ座標値Ｐ（ｘ，ｙ）として表現することができる。したがって、ここに示す実施例の場合、現在地データ格納部１５０には、ＸＹ二次元座標系上における現在地ＰのＸＹ座標値Ｐ（ｘ，ｙ）を示すデータが、現在地データとして格納されることになる。
【００５３】
一方、この実施例の場合、視線方向（視線ベクトルＥ）は、図１４の右上に示されているような方位角φで表される。すなわち、この例の場合、現在地Ｐ上に、Ｙ軸正方向を向いた基準軸を設定し、この基準軸に対する角度を方位角φ（０°≦φ＜３６０°）と定義し、視線方向を示すパラメータとして用いている。したがって、ここに示す実施例の場合、視線方向データ格納部１６０には、ＸＹ二次元座標系の所定の基準軸（Ｙ軸正方向に向かう軸）に対する方位角φ（０°≦φ＜３６０°）が視線方向データとして格納されることになる。
【００５４】
この方位角φは、現在地Ｐにいる仮想ユーザが、どの方向に視線（視線ベクトルＥ）を向けているかを示すパラメータであり、図１４に示す例の場合、φ＝０°の場合は、Ｙ軸正方向に視線を向けており、φ＝９０°の場合は、Ｘ軸正方向に視線を向けており、φ＝１８０°の場合は、Ｙ軸負方向に視線を向けており、φ＝２７０°の場合は、Ｘ軸負方向に視線を向けていることになる。
【００５５】
このように、現在地Ｐと視線方向（方位角）φが定まれば、画像切出部１４０によって、現在地Ｐから方位角φの方向を眺めた状態の視野画像Ｑ（Ｐ，φ）を切り出すことができる。すなわち、画像切出部１４０は、まず、現在地データによって示される現在地Ｐに対応する現在地フレームを、対応関係情報Ｃを参照することにより認識し、全方位画像格納部１１０から現在地フレームの全方位画像を読み出す。
【００５６】
ここに示す実施例の場合、対応関係情報格納部１２０には、個々のノードに対応するフレームのフレーム番号を特定する対応関係情報Ｃが格納されている。したがって、画像切出部１４０は、現在地Ｐがノード上にある場合には、当該ノードに対応するフレーム番号が付与されたフレームを現在地フレームと認識することができる。これに対して、現在地Ｐがブランチ上の中間地点である場合には、図１１で説明したように、当該ブランチの両端に位置する一対のノードに対応する一対のフレーム番号に基づく線形補間により求めたフレーム番号が付与されたフレームを現在地フレームと認識することになる。
【００５７】
もちろん、全方位画像を構成する各フレームは、経路上の離散的な撮影地点において撮影された画像であり、現在地Ｐは、必ずしもこれらの離散的な撮影地点のいずれかに一致するわけではない。したがって、実際には、画像切出部１４０は、現在地Ｐに最も近い地点に対応づけられたフレームを読み出してくればよい。
【００５８】
図１５に示すフレームＦ０４５２は、このようにして画像切出部１４０が読み出した全方位画像の一例を示す平面図である。この全方位画像は、図１４に示す現在地Ｐ（ブランチＢ２３上のほぼ中央の地点）に対応するフレームであり、現在地Ｐにいる仮想ユーザが、周囲をひとまわり見回したときに観察されるパノラマ画像ということになる。画像切出部１４０は、この読み出した全方位画像から、視線方向データφによって示される視線方向の視界を構成する視野画像を切り出す処理を行う。
【００５９】
図１５に太線で囲って示す視野画像Ｑ（Ｐ，φ）は、方位角φ＝９０°、すなわち、図１４に示す現在地Ｐにいる仮想ユーザが、Ｘ軸正方向に視線を向けている場合に切り出される画像を示すものである。画像切出部１４０は、読み出した全方位画像（フレームＦ０４５２）から、方位角「φ−Δ／２」〜「φ＋Δ／２」の範囲内の視界を構成する視野画像を切り出す処理を行えばよい。ここで、Δは所定の切出角度であり、切り出された視野画像Ｑの横幅に相当する角度になる。図示の例の場合、方位角φ＝９０°という設定であるため、φ＝９０°の位置を中心にして、横幅Δに相当する視野画像の切り出しが行われている。
【００６０】
このように、現在地データ格納部１５０に格納されている現在地データＰおよび視線方向データ格納部１６０に格納されている視線方向データ（方位角φ）は、視野画像Ｑ（Ｐ，φ）の内容を決定する上で重要な役割を果たす。そして、これらのデータＰ，φは、データ更新部１７０によって適宜更新されることになる。すなわち、データ更新部１７０は、ユーザの入力操作に基づいて、現在地Ｐが経路上で移動するように現在地データを更新する現在地更新処理と、視線方向が変化するように視線方向データを更新する視線方向更新処理と、を行う機能を有している。
【００６１】
たとえば、図１４に示す例において、現在地ＰのＸ座標値が徐々に増加するような現在地更新処理を行うと、現在地Ｐは、ブランチＢ２３上を図の右方向へ移動してゆくことになり、ユーザには、そのような移動中の視野画像が提示される。すなわち、画像切出部１４０が全方位画像格納部１１０から読み出す全方位画像のフレームは、Ｆ０４５２，Ｆ０４５３，Ｆ０４５４，... と変わってゆくことになる。また、図１４に示す例において、方位角φが徐々に増加するような視線方向更新処理を行うと、現在地Ｐにいる仮想ユーザの視線方向は、時計まわりに回転することになり、図１５に太線で示す切出枠は、図の右方向へと移動してゆくことになる。
【００６２】
一方、ルートマップ作成部１８０は、現在地データＰおよび視線方向データ（方位角）φに基づいて、経路の平面図に、現在地および視線方向を示す指標を重畳したルートマップＭを作成する機能を有している。経路の平面図は、ルート情報格納部１３０内に格納されているルート情報Ｒに基づいて作成することができるので、その上に、現在地および視線方向を示す指標を重畳する処理を行うことにより、ルートマップＭを作成することができる。なお、経路の平面図については、予め画像データとしてルート情報格納部１３０内に用意しておくようにしてもかまわない。
【００６３】
画像表示部１９０は、画像切出部１４０が切り出した視野画像Ｑ（Ｐ，φ）と、ルートマップ作成部１８０が作成したルートマップＭとを、ディスプレイ画面上に並べて表示する機能を有している。図１６は、画像表示部１９０によって表示された画像の一例を示す平面図である。この例の場合、表示画像は、タイトル表示領域Ｇ１、視野画像表示領域Ｇ２、ルートマップ表示領域Ｇ３の３つの領域によって構成されている。タイトル表示領域Ｇ１には、「＜○○美術館＞  絵画の回廊」なるタイトル文字が表示されており、現在表示中の施設名が特定されている。そして、視野画像表示領域Ｇ２には、画像切出部１４０が切り出した視野画像Ｑ（Ｐ，φ）が表示され、ルートマップ表示領域Ｇ３には、ルートマップ作成部１８０が作成したルートマップＭが表示されている。
【００６４】
上述したとおり、ルートマップＭは、経路の平面図に、現在地および視線方向を示す指標を重畳した地図であり、図１６に示す例の場合、現在地指標Ｉとして二重円が描かれ、視線方向指標Ｊとして扇形が描かれている。図１７は、図１６に示す画像における現在地指標Ｉおよび視線方向指標Ｊの拡大図である。現在地指標Ｉは、仮想ユーザの経路上の位置を示すものであり、視線方向指標Ｊは、ユーザの視野の方向を示すものである。図１７に破線で示す矢印Ｅは、視線ベクトルであり、仮想ユーザの視線方向を直接示している。視線方向指標Ｊは、この視線ベクトルＥを中心線とする扇形の図形であり、仮想ユーザの視野の領域を大まかに示している。もちろん、現在地指標Ｉおよび視線方向指標Ｊの形態は図示の形態に限定されるものではなく、実用上は、必要に応じて、経路の平面図とは異なる色彩で表示するのが好ましい。
【００６５】
図１６に示すとおり、視野画像表示領域Ｇ２上の視野画像Ｑ（Ｐ，φ）と、ルートマップ表示領域Ｇ３上のルートマップＭとは、同一画面上に並んで表示されるため、ユーザは、自分が現在、ルートマップＭ上のどの位置に、どの方向を向いて立っているかを直観的に認識することができ、現在表示されている視野画像Ｑ（Ｐ，φ）が、どの位置をどの方向に眺めた画像であるかを把握することができる。しかも、ユーザは、データ更新部１７０に対して所望の操作入力を与えることにより、現在地Ｐが経路上で移動するように現在地を更新することができ、また、視線方向が変化するように視線方向を更新することができる。したがって、あたかも、仮想の経路上を歩きながら、所望の方向を観察する疑似体験をすることができる。
【００６６】
ここに示す例の場合、ユーザは、図２に示した実在の美術館の回廊を自由に歩き回りながら、視野画像表示領域Ｇ２上に動画として提示される視野画像Ｑ（Ｐ，φ）を見て、絵画や彫刻を擬似的に鑑賞することができる。しかも、現在地や視線方向を、ルートマップ表示領域Ｇ３上のルートマップＭにより確認することができる。かくして、この自由視点映像表示装置は、所定の経路に沿って移動する視点から見た任意方向の視界を動画として提示し、ユーザに高い臨場感を与えることができる。
【００６７】
＜＜＜  §３．  データ更新部の具体的な構成例  ＞＞＞
ここでは、データ更新部１７０の具体的な構成例を述べる。ここで述べる実施例の場合、データ更新部１７０は、図１８に例示するようなコントローラ１７５と、このコントローラを制御するコンピュータによって構成される。このコントローラ１７５は、コンピュータゲーム用の入力機器として利用されている一般的な装置であり、右側に５つのボタンＢ１〜Ｂ５、中央に３つのボタンＢ６〜Ｂ８、左側に１つのボタンＢ９が設けられている。
【００６８】
データ更新部１７０の役割は、ユーザの入力操作に基づいて、現在地更新処理と視線方向更新処理とを行うことであるが、コントローラ１７５は、これら更新処理を行うための入力操作を受け付ける機能を有している。具体的には、図示のボタンＢ１は前進ボタン、ボタンＢ２は後退ボタン、ボタンＢ３は左向きボタン、ボタンＢ４は右向きボタンとして機能する。
【００６９】
ここで、前進ボタンＢ１と後退ボタンＢ２とは、現在地更新処理の入力操作に利用され、前進ボタンＢ１が押されている間、現在地が経路上を所定の進行方向に所定速度で移動するように現在地データの更新が行われ、後退ボタンＢ２が押されている間、現在地が経路上を進行方向とは逆方向に所定速度で移動するように現在地データの更新が行われる。データ更新部１７０は、ボタンＢ１，Ｂ２が押されているか否かを検知し、押されている場合には、現在地データ格納部１５０内に格納されている現在地データを更新する処理を行う。たとえば、経路上の進行方向が、Ｘ軸正方向に設定されていた場合、前進ボタンＢ１が押されている間、現在地Ｐ（ｘ，ｙ）のＸ座標値を所定速度で増加させる更新を行い、後退ボタンＢ２が押されている間、現在地Ｐ（ｘ，ｙ）のＸ座標値を所定速度で減少させる更新を行う。
【００７０】
一方、左向きボタンＢ３と右向きボタンＢ４とは、視線方向更新処理の入力操作に利用され、左向きボタンＢ３が押されている間、視線方向が所定速度で左向きに変化するように視線方向データの更新が行われ、右向きボタンＢ４が押されている間、視線方向が所定速度で右向きに変化するように視線方向データの更新が行われる。データ更新部１７０は、ボタンＢ３，Ｂ４が押されているか否かを検知し、押されている場合には、視線方向データ格納部１６０内に格納されている視線方向データを更新する処理を行う。たとえば、視線方向を示す方位角φが９０°に設定されていた場合、ボタンＢ３が押されている間、方位角φを８９°，８８°，８７°，... と減少させる処理（０°に達した場合は、３６０°から減少させる処理）を行い、ボタンＢ４が押されている間、方位角φを９１°，９２°，９３°，... と増加させる処理（３６０°に達した場合は、０°から増加させる処理）を行う。
【００７１】
こうして、ユーザは、ボタンＢ１〜Ｂ４を操作することにより、美術館の回廊を構成する仮想空間内を自由に歩き回り、任意の方向に視線を向けることができる。たとえば、図１６に示す例において、進行方向が、Ｘ軸正方向に設定されていた場合、前進ボタンＢ１を押し続けると、現在地Ｐは、表示領域Ｇ３内のルートマップＭ上における右方向へと所定速度で移動し、後退ボタンＢ２を押し続けると、現在地ＰはルートマップＭ上における左方向へと所定速度で移動する。したがって、表示領域Ｇ２には、前進したり、後退したりする状態を示す視野画像Ｑ（Ｐ，φ）の動画映像が表示されることになる。また、左向きボタンＢ３を押し続けると、ルートマップＭ上の視線方向指標Ｊは反時計回りに回転し、右向きボタンＢ４を押し続けると、時計回りに回転する。したがって、表示領域Ｇ２には、左を向いたり、右を向いたりする状態を示す視野画像Ｑ（Ｐ，φ）の動画映像が表示されることになる。
【００７２】
もちろん、各ボタンから指を離せば、仮想空間内でのユーザの動作は停止し、表示領域Ｇ２には静止画像としての視野画像Ｑ（Ｐ，φ）が表示されることになるので、ユーザは絵画や彫刻をゆっくりと鑑賞することができる。このように、本発明に係る自由視点映像表示装置を用いれば、仮想空間上ではあるが、ユーザに対して極めて臨場感の高い体験をさせることができる。
【００７３】
なお、現在地Ｐや視線方向（方位角φ）の変更速度は、仮想空間内でのユーザの動作速度に対応するものになるので、適切な速度を予め設定しておけばよい。たとえば、ここに示す実施例の場合、美術館の回廊を歩いて鑑賞する体験を与えるものなので、現在地Ｐの変更速度は、仮想空間内をゆっくりと歩く程度の速度に設定し、方位角φの変更速度は、仮想のユーザがゆっくりと首をまわす程度の速度に設定すればよい。もちろん、各ボタンをｎ回クリックした後に押し続けると、ｎ倍速モードになる、というように、ユーザの操作に応じて変更速度が可変となるようにしてもかまわない。
【００７４】
ところで、ここに示す実施例の場合、前進ボタンＢ１は所定の進行方向に進む指示、後退ボタンＢ２は当該進行方向とは逆方向に進む指示を与えるボタンになっているが、ここでいう「進行方向」とは、「視線方向」とは異なるものである。ユーザは仮想空間内のブランチに沿って移動することになるが、ここでいう「進行方向」とは、この移動中のブランチに沿って移動するためのいずれか一方向を意味する。たとえば、図１４に示す例の場合、現在地ＰはブランチＢ２３上に位置し、ユーザは、ブランチＢ２３に沿って移動中である。この場合、「進行方向」は、ノードＮ２からＮ３に向かう方向か、逆に、ノードＮ３からＮ２に向かう方向か、のいずれかに設定される。
【００７５】
そこで、ここに示す実施例では、データ更新部１７０に、進行方向ベクトルを設定する機能をもたせ、現時点での「進行方向」を認識できるようにしている。進行方向ベクトルは、現在地Ｐを含むブランチの始点ノードから終点ノードに至るベクトルであり、たとえば、図１４に示す例において、ユーザがブランチＢ２３上をノードＮ２からＮ３に向かう方向に移動する場合は、ノードＮ２が始点ノード、ノードＮ３が終点ノードとなり、進行方向ベクトルは「Ｎ２→Ｎ３」のように表現できる。逆に、ノードＮ３からＮ２に向かう方向に移動する場合の進行方向ベクトルは「Ｎ３→Ｎ２」になる。
【００７６】
データ更新部１７０は、この進行方向ベクトルが示す方向を進行方向として現在地更新処理を行う。したがって、図１４に示す例において、進行方向ベクトル「Ｎ２→Ｎ３」が設定されているときに前進ボタンＢ１を押し続けると、現在地Ｐが終点ノードＮ３に向かって移動するように現在地データの更新が行われ、後退ボタンＢ２を押し続けると、現在地Ｐが始点ノードＮ２に向かって移動するように現在地データの更新が行われる。この現在地更新処理は、視線方向データ（方位角φ）とは無関係に行われるので、たとえ、φ＝２７０°のとき（視線が始点ノードＮ２の方向を向いているとき）であっても、進行方向ベクトル「Ｎ２→Ｎ３」が設定されているときに前進ボタンＢ１を押し続けると、現在地Ｐは終点ノードＮ３に向かって移動することになる。
【００７７】
このように、進行方向ベクトルは、移動中のブランチごとに設定されるべきものなので、ノードを介して別なブランチへ乗り換えた場合、新たな進行方向ベクトルを設定する必要がある。また、複数のブランチが接続されているノードに到達した場合には、いずれのブランチに進行するかによって、設定すべき進行方向ベクトルは異なる。そこで、ここに示す実施例の場合、データ更新部１７０は、現在地Ｐがいずれかのノードに到達したときに現在地更新処理を一時停止し、到達ノードを始点とする新たなブランチをユーザに選択させ、当該到達ノードを始点ノード、選択されたブランチのもう一方の端点を終点ノードとする新たな進行方向ベクトルの設定を行ってから現在地更新処理を再開する機能を有している。
【００７８】
ここでは、図１９を参照しながら、分岐を伴う経路において、データ更新部１７０が行う具体的な現在地更新処理および進行方向ベクトル設定処理を説明する。いま、図１９において、ユーザが仮想空間上のブランチＢ２５を、ノードＮ５からＮ２に向かって進行中であるものとする。この場合、データ更新部１７０内に設定されている進行方向ベクトルは「Ｎ５→Ｎ２」になる。ここで、ユーザが、図１８に示すコントローラ１７５を手にして、前進ボタンＢ１を押し続けると、現在地Ｐは、図示する地点Ｐ１，Ｐ２，Ｐ３と移動してゆく。ここで、地点Ｐ３はノードＮ２の位置である。なお、図示の例では、視線方向が進行方向に一致する方向（方位角φ＝０°）に設定されているので、視野画像表示領域Ｇ２には、正面に進んでゆく動画が表示されることになる（視線ベクトルＥが、進行方向ベクトルに一致する）。
【００７９】
このように、現在地Ｐがいずれかのノードに到達すると、データ更新部１７０は、現在地更新処理を一時停止する。したがって、ユーザが前進ボタンＢ１を押し続けていたとしても、ノードに到達した時点でユーザの経路上での移動は停止する。図示の例の場合、現在地ＰがノードＮ２に到達した時点で現在地更新処理は中止され、現在地ＰはノードＮ２に留まることになる。現在地更新処理は、ユーザが、到達ノードＮ２を始点とする新たなブランチを選択する操作を行うまで保留される。なお、視線方向更新処理は継続して行われるので、ユーザは、ボタンＢ３，Ｂ４を操作することにより、ノードＮ２の位置において、周囲を見回す操作を行うことができ、新たなブランチを選択するための情報を得ることができる。
【００８０】
ここに示す実施例の場合、新たなブランチを選択させるために、視野画像表示領域Ｇ２内に方向マーカを表示させ、ユーザにいずれかの方向マーカを選択させる方法を採っている。すなわち、データ更新部１７０は、現在地Ｐがいずれかのノードに到達したときに、視野画像Ｑ（Ｐ，φ）上に到達ノードを始点とする新たなブランチの方向を示す方向マーカＤを表示させる機能を有している。図１において、ルートマップ作成部１８０からデータ更新部１７０に向かう矢印は、ルート情報Ｒ（ノードの位置情報とブランチの接続情報）がデータ更新部１７０に与えられることを示している。データ更新部１７０は、このルート情報Ｒを参照して、現在地Ｐがいずれかのノードに到達したことを認識することができ、また、当該到達ノードを始点とする新たなブランチを認識することができる。
【００８１】
図１９に示す例の場合、到達ノードＮ２を始点とする新たなブランチは、Ｂ１２，Ｂ２３，Ｂ２５の３本である。ここで、ブランチＢ２５は、これまで移動してきたブランチであるが、到達ノードＮ２からブランチＢ２５へ引き返すことも可能なので、ブランチＢ２５も選択肢の中に入ることになる。図２０は、ノードＮ２に到達した時点の表示画面を示す平面図である（Ｇ２内の視野画像自身は省略）。図２０に示す方向マーカＤ１，Ｄ２，Ｄ３は、この３本のブランチＢ１２，Ｂ２３，Ｂ２５に対応するものであり、ユーザがいずれかの方向マーカを選択する操作入力を行うと、選択された方向マーカに対応するブランチが、新たなブランチとして選択される。
【００８２】
この実施例では、コントローラ１７５に、特定の方向マーカを選択する操作を行うためのマーカ選択ボタンを設けている。すなわち、図１８において、ボタンＢ５がマーカ選択ボタンであり、ユーザが、このマーカ選択ボタンＢ５を押すたびに、方向マーカの選択が切り替わるようになっている。図２０に示す例では、方向マーカＤ１のみにハッチングを施して示してあるが、これは方向マーカＤ１のみが強調表示（たとえば、色を変えるとか、輝度を変えるとか、ブリンクさせるとかすればよい）されていることを示している。ユーザがマーカ選択ボタンＢ５を押すと、強調表示の対象となる方向マーカが、たとえば、Ｄ１→Ｄ２→Ｄ３→Ｄ１→... のように順に切り替わってゆく。
【００８３】
こうして、ユーザは、マーカ選択ボタンＢ５を押すことにより、所望の方向マーカを強調表示させることができる。そして、特定の方向マーカが強調表示されている時に、前進ボタンＢ１を押すと、当該方向マーカの選択が行われることになる。データ更新部１７０は、こうしてマーカ選択ボタンＢ５によって選択された方向マーカに対応するブランチを、ユーザが選択したブランチとして、新たな進行方向ベクトルを設定し、現在地更新処理を再開する。
【００８４】
図２１は、データ更新部１７０が保持する進行方向ベクトルの設定変更例を示す図である。図１９に示すように、ユーザがブランチＢ２５をノードＮ５からＮ２に向かって進行している場合、データ更新部１７０が保持する進行方向ベクトルは「Ｎ５→Ｎ２」であるが、ノードＮ２に到達すると、旧進行方向ベクトル「Ｎ５→Ｎ２」から新進行方向ベクトルに設定変更する処理が行われる。このとき、新進行方向ベクトルの候補は、図示のとおり、「Ｎ２→Ｎ１」，「Ｎ２→Ｎ３」，「Ｎ２→Ｎ５」の３通りであり、それぞれ方向マーカＤ１，Ｄ２，Ｄ３に対応する。したがって、たとえば、ユーザが方向マーカＤ２を選択したとすると、新進行方向ベクトル「Ｎ２→Ｎ３」が設定される。このベクトルは、図１９に示すブランチＢ２３を、始点ノードＮ２から終点ノードＮ３に進むことを示すものである。
【００８５】
このように、ここに示す実施例の場合、ノードに到達するたびに現在地更新を一時停止し、ユーザに新たなブランチを選択させてから現在地更新を再開するようにしたため、対象となる経路がノードにおいて分岐を伴うものであっても、ユーザは自由意志で任意の方向に移動することができる。
【００８６】
なお、図２０に示す方向マーカＤ１，Ｄ２，Ｄ３は、図１９のノードＮ２において表示されるマーカであり、Ｔ字路を構成する３つのブランチを選択するためのものである。したがって、たとえば、Ｌ字路を構成するノードＮ３では、２つの方向マーカのみが表示されることになり、十字路を構成するノードがあれば、４つの方向マーカが表示されることになる。データ更新部１７０には、ルート情報Ｒとして、各ノードについてのブランチの接続情報が与えられているので、個々のノードごとに適切な方向マーカの表示を行うことができる。
【００８７】
また、各ノードにおいて、ユーザは視線方向を変えて周囲を見回すことができるので、データ更新部１７０は、視線方向データ（方位角φ）を参照して、視野画像Ｑ（Ｐ，φ）のどの位置にどの方向マーカを重畳表示するかを判断し、視野画像Ｑ（Ｐ，φ）上の適切な位置に各方向マーカを重畳する処理を行う必要がある。更に、実用上は、各方向マーカの形状として、ユーザに対しておおまかな進行方向を示唆することができる形状を採用するのが好ましい。図２０に示す例では、方向マーカＤ１およびＤ２は、左方向および右方向への進行を示唆できるように三角形とし、方向マーカＤ３は背面方向への進行を示唆できるように楕円形としている。
【００８８】
以上、ノードにおいて、進行方向ベクトルの設定を変更する処理の一例を述べたが、実用上は、進行方向ベクトルの設定変更処理とともに視線方向を更新する処理も併せて行うのが好ましい。たとえば、図１９に示す例において、ユーザがブランチＢ２５に沿ってノードＮ２に到達した後、図２０に示す方向マーカＤ２を選択して、ブランチＢ２３をノードＮ３に向けて移動した場合を考えてみる。この場合、進行方向ベクトルが「Ｎ５→Ｎ２」から「Ｎ２→Ｎ３」に変更されることは、既に述べたとおりである。また、現在地Ｐの移動経路も、ブランチＢ２５からブランチＢ２３へと変遷することになる。ただ、視線方向については、ユーザが自発的に、左向きボタンＢ３や右向きボタンＢ４を操作して変更しない限り、ノードＮ２を通過した前後で変わりはない。
【００８９】
たとえば、図１９に示す例の場合、ブランチＢ２５を移動中の視線ベクトルＥが図の上方（方位角φ＝０°）であったとすると、ブランチＢ２３に侵入したときの視線方向も同じ方向のままである。これは、ブランチＢ２５を移動中は、視線を進行方向に向けていたのに、ブランチＢ２３に侵入した後は、顔を左向きにして、視線を回廊の壁面に向けて移動することを意味する。もちろん、ユーザは、右向きボタンＢ４を押すことにより、視線を進行方向に向けることができるが、通常、人間は顔を進行方向に向けて歩行するのが自然であるので、曲がり角を曲がったときに、進行方向ベクトルのみが変更され、視線ベクトルが変更されないのは不自然である。
【００９０】
このような問題を解決するには、進行方向ベクトルの変更処理とともに視線方向更新処理を行うようにすればよい。ここに示す実施例の場合、ルート情報格納部１３０には、直線状のブランチの集合によって構成される経路を示すルート情報Ｒが格納されており、すべてのブランチは直線によって構成されている。そこで、データ更新部１７０が、第１のブランチから第２のブランチへ進んだときに、進行方向ベクトルを基準とした視線方向が一定となるように、第１のブランチと第２のブランチのなす角度θに基づいて視線方向データを更新する処理を行うようにすればよい。
【００９１】
図２２は、このような更新処理の具体的な方法を説明するための平面図である。この例では、ＸＹ二次元座標系上に、５つのノードＮ１１，Ｎ１２，Ｎ１３，Ｎ１４，Ｎ１５が定義されており、ノードＮ１１，Ｎ１２，Ｎ１３が第１の直線（Ｙ軸に平行）、ノードＮ１４，Ｎ１２，Ｎ１５が第２の直線を構成し、両直線は交差角θで交差している。ここで、ノードＮ１１からＮ１２に向かって進行中のユーザが、ノードＮ１２に到達した後、ノードＮ１２からＮ１５に進行する場合を考えてみよう。この場合、進行方向ベクトルは、ノードＮ１２を通過することにより、「Ｎ１１→Ｎ１２」から「Ｎ１２→Ｎ１５」に変更される。すなわち、図２２の右下に示すように、進行方向ベクトルをそれぞれＶ（Ｎ１１→Ｎ１２），Ｖ（Ｎ１２→Ｎ１５）と表せば、両ベクトルのなす角度は交差角θになる。
【００９２】
一方、ノードＮ１１からＮ１２へ向かうブランチ上の任意の地点Ｐ１において、視線ベクトルＥ１が図示のような方向を向き、視線方向を示す方位角がφ１に設定されており、当該方位角φ１を維持したままノードＮ１２に到達したものとしよう。この場合、ノードＮ１２からＮ１５へ向かうブランチに入った地点Ｐ２における視線ベクトルＥ２が図示のような向きに自動修正されれば、ユーザにとって自然な視線方向を維持することができる。すなわち、ノードＮ１２の角を曲がる前、ユーザの視線は進行方向に対して斜め右方向を向いていたので、ノードＮ１２の角を曲がった後も、視線が進行方向に対して斜め右方向を向いていれば自然である（もちろん、進行方向を向いていた場合は、角を曲がった後も進行方向を向いていることになる）。
【００９３】
視線ベクトルＥ２を図示の方向に向けるためには、ノードＮ１２を通過後の方位角φ２を、φ２＝φ１＋θに設定すればよい。すなわち、第１のブランチから第２のブランチへ進んだときに、それぞれの進行方向ベクトルを基準とした視線方向が一定となるように、第１のブランチと第２のブランチのなす角度θに基づいて視線方向データを更新する処理を行えばよい。進行方向ベクトルＶ（Ｎ１１→Ｎ１２）を基準とすれば、視線ベクトルＥ１は角度φ１だけ右方向に向いており、進行方向ベクトルＶ（Ｎ１２→Ｎ１５）を基準とすれば、視線ベクトルＥ２はやはり角度φ１だけ右方向に向いていることになる。
【００９４】
＜＜＜  §４．  いくつかの変形例  ＞＞＞
以上、本発明に係る自由視点映像表示装置を基本的な実施形態に基づいて説明したが、ここでは、いくつかの変形例を掲げておく。
【００９５】
(1)   全方位画像の作成法
§１では、図７に示すような撮影装置を用いた撮影により得られた歪曲円形画像から、仰角が所定の基準値以下の領域を切り出し、これに歪み補正を施すことにより全方位画像（パノラマ画像）を得る例を示したが、もちろん、全方位画像の作成に用いる装置は、図７に示す撮影装置に限定されるものではない。たとえば、図７に示す撮影装置では、魚眼レンズ１０を用いてビデオカメラの撮像面に歪曲円形画像を形成していたが、魚眼レンズ１０の代わりに全方位ミラーなどを利用してもかまわない。
【００９６】
また、§１では、実在の施設を撮影した実写画像に基づいて全方位画像を作成する例を示したが、コンピュータ上に仮想の施設を作成し、この仮想施設内の仮想経路を示す三次元ＣＧ画像に基づいて作成された画像を全方位画像として用いるようにしてもよい。この場合、全方位画像格納部１１０内には、仮想の経路を示す三次元ＣＧ画像に基づいて作成された矩形状のパノラマ画像が全方位画像として格納されることになる。
【００９７】
(2)   曲線からなる経路
これまで述べた実施例は、いずれも直線状のブランチのみからなる経路を用いた例であるが、本発明は、曲線状の経路を含む施設についても適用可能である。具体的には、曲線状の経路については、複数のノードとこれらを結ぶ直線からなる折れ線によって近似すれば、これまでどおり、直線状のブランチのみからなる経路として取り扱うことができる。もちろん、一対のノード間をベジェ曲線などで結ぶ曲線状のブランチを定義することも可能である。この場合、曲線上の任意の点の位置を、０〜１の媒介変数によって示すようにすれば、対応するフレームを求めるための補間演算も支障なく行うことができる。
【００９８】
(3)   仰角の調整
これまで述べた実施例では、視線方向を示すパラメータとして、方位角φのみを用いているが、更に仰角Ψというパラメータを追加することも可能である。この場合、視線ベクトルＥは、方位角φと仰角Ψとによって定まることになる。このように仰角Ψをパラメータとして利用する場合、画像切出部１４０による切出枠は、方位角φと仰角Ψとの双方に応じて定まる。したがって、たとえば、図１５に示す例の場合、太線で示す切出枠の縦寸法をより短く設定し、この切出枠の横方向位置を方位角φに基づいて定め、縦方向位置を仰角Ψに基づいて定めればよい。また、コントローラ１７５には、上向きボタンや下向きボタンなど、仰角Ψを変更する指示を与えるためのボタンを設けておけばよい。
【００９９】
(4)   コントローラの構成
図１８に示すコントローラ１７５は、データ更新部１７０の一部を構成する機器としての一例を示すものであり、実用上は、この他にも様々な形態の機器をコントローラとして利用することが可能である。特に、操作ボタンなどの形態や配置は、設計上、自由に設定可能である。§３では、ボタンＢ６〜Ｂ９の役割についての説明はなされていないが、これらのボタンには、たとえば、移動速度を設定する機能や、上述した仰角Ψを設定する機能など、様々な機能を割り当てることができる。
【０１００】
また、ボタンの代わりに、ジョイスティックを用いることも可能である。たとえば、１本のジョイスティックを前方に倒すと前進指示、後方に倒すと後退指示、左方に倒すと左向き指示、右方に倒すと右向き指示を与えるようにすれば、ボタンＢ１〜Ｂ４の代わりに用いることができる。更に、傾斜角度に基づいて、移動速度を変化させるような使い方もできる。
【０１０１】
(5)   視線方向と進行方向との連携
これまで述べた実施例では、進行方向ベクトルは、ノードに到達したときにのみ設定されるようになっており、１つのブランチを移動中に視線方向を変えても、進行方向ベクトルは変化しない仕様になっていたが、視線方向に応じて進行方向ベクトルを逆転させるような運用を採ることも可能である。
【０１０２】
たとえば、進行方向ベクトルに対する視線ベクトルのなす角度が９０°を越えた場合、あるいは１４５°を越えた場合、というような臨界条件を予め設定しておき、当該臨界条件を越えた場合に進行方向ベクトルを反転させるようにしておけば、前進ボタンを押し続けながらユーザが後ろを振り返ったような場合、進行方向ベクトルが反転し、これまでとは逆向きに（振り返った方向に）移動するようになる。このような運用を行えば、人間の行動により近い、臨場感をもった疑似体験を提供することができる。
【符号の説明】
【０１０３】
１０：魚眼レンズ
２０：ビデオカメラ
３０：データ処理ユニット
４０：台車
１１０：全方位画像格納部
１２０：対応関係情報格納部
１３０：ルート情報格納部
１４０：画像切出部
１５０：現在地データ格納部
１６０：視線方向データ格納部
１７０：データ更新部
１７５：コントローラ
１８０：ルートマップ作成部
１９０：画像表示部
Ｂ：ブランチ
Ｂ１〜Ｂ９：ボタン
Ｂ１２〜Ｂ５６：ブランチ
Ｃ：対応関係情報
Ｄ，Ｄ１〜Ｄ３：方向マーカ
Ｅ，Ｅ１，Ｅ２：視線ベクトル
Ｆ００００〜Ｆ２４００：フレーム（フレーム番号）
Ｇ１：タイトル表示領域
Ｇ２：視野画像表示領域
Ｇ３：ルートマップ表示領域
Ｈ：天頂点
Ｉ：現在地指標
Ｊ：視線方向指標
Ｍ：ルートマップ
Ｍ１〜Ｍ５，Ｍａ，Ｍｂ：中間地点
Ｎ１〜Ｎ１５：ノード
Ｏ：座標系の原点
Ｐ，Ｐ１〜Ｐ３：現在地／現在地データ（ＸＹ座標値）
Ｑ（Ｐ，φ）：視野画像
Ｒ：ルート情報
Ｖ：進行方向ベクトル
Ｘ：座標軸
Ｙ：座標軸
Δ：切出角度
φ，φ１，φ２：視線方向／視線方向データ（方位角）
θ：ブランチ間の交差角度
【図１】
0005870618.tif 000002
【図２】
0005870618.tif 000003
【図３】
0005870618.tif 000004
【図４】
0005870618.tif 000005
【図５】
0005870618.tif 000006
【図６】
0005870618.tif 000007
【図７】
0005870618.tif 000008
【図８】
0005870618.tif 000009
【図９】
0005870618.tif 000010
【図１０】
0005870618.tif 000011
【図１１】
0005870618.tif 000012
【図１２】
0005870618.tif 000013
【図１３】
0005870618.tif 000014
【図１４】
0005870618.tif 000015
【図１５】
0005870618.tif 000016
【図１６】
0005870618.tif 000017
【図１７】
0005870618.tif 000018
【図１８】
0005870618.tif 000019
【図１９】
0005870618.tif 000020
【図２０】
0005870618.tif 000021
【図２１】
0005870618.tif 000022
【図２２】
0005870618.tif 000023