(57)【特許請求の範囲】
【請求項１】
視点位置、視線方向を操作するためのユーザ指示を入力する操作手段と、
前記操作手段の出力に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定手段と、
複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に対応する部分画像を切り出し、再生する再生手段とを備え、
前記視点位置・視線方向決定手段は、前記再生手段によって処理される画像に対応する位置が所定の区分点に到達した場合に、該区分点においてあらかじめ設定されている視線方向と経路との対応関係から、指定された視線方向に対応する経路を次に進む経路に決定し、指定された視線方向に対応する経路がない場合には最も直進方向に近い経路を次に進む経路に決定することを特徴とする画像再生装置。
【請求項２】
視点位置、視線方向を操作するためのユーザ指示を入力する操作手段と、
前記操作手段の出力に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定手段と、
複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に対応する部分画像を切り出し、再生する再生手段とを備え、
前記視点位置・視線方向決定手段は、前記再生手段によって処理される画像に対応する位置が所定の区分点に到達した場合に、指定された視線方向に定数を乗じ、定数を乗じた方向に最も近い経路を次に進む経路に決定することを特徴とする画像再生装置。
【請求項３】
視点位置、視線方向を操作するためのユーザ指示を入力する操作手段と、
前記操作手段の出力に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定手段と、
複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に対応する部分画像を切り出し、再生する再生手段とを備え、
前記視点位置・視線方向決定手段は、前記再生手段によって処理される画像に対応する位置が所定の区分点に到達した場合に、後退しながら区分点に到達した場合には最も直進に近い方向の経路を次に進む経路に決定することを特徴とする画像再生装置。
【請求項４】
前記視点位置・視線方向決定手段は、静止状態から移動状態に移る場合は視線方向に応じて進行方向を決定し、経路上を移動している場合は視線方向によらず同じ進行方向を保つことを特徴とする請求項１乃至３のいずれかに記載の画像再生装置。
【請求項５】
前記操作手段は、ジョイスティックであることを特徴とする請求項１乃至４のいずれかに記載の画像再生装置。
【請求項６】
前記画像は、パノラマ画像であることを特徴とする請求項１乃至５のいずれかに記載の画像再生装置。
【請求項７】
前記区分点は、地図上の交差点であり、前記経路は、交差点に接続された道であることを特徴とする請求項１乃至６のいずれかに記載の画像再生装置。
【請求項８】
視点位置、視線方向を制御するための操作情報を操作部から入力する入力工程と、
前記操作情報に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定工程と、
記憶部に予め記憶された画像群であり、複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に基づき切り出された部分画像を表示部に表示させる表示工程とを備え、
前記視点位置・視線方向決定工程は、前記表示工程によって処理される画像に対応する位置が所定の区分点に到達した場合に、該区分点においてあらかじめ設定されている視線方向と経路との対応関係から、指定された視線方向に対応する経路を次に進む経路に決定し、指定された視線方向に対応する経路がない場合には最も直進方向に近い経路を次に進む経路に決定することを特徴とする情報処理方法。
【請求項９】
視点位置、視線方向を制御するための操作情報を操作部から入力する入力工程と、
前記操作情報に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定工程と、
記憶部に予め記憶された画像群であり、複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に基づき切り出された部分画像を表示部に表示させる表示工程とを備え、
前記視点位置・視線方向決定工程は、前記表示工程によって処理される画像に対応する位置が所定の区分点に到達した場合に、指定された視線方向に定数を乗じ、定数を乗じた方向に最も近い経路を次に進む経路に決定することを特徴とする情報処理方法。
【請求項１０】
視点位置、視線方向を制御するための操作情報を操作部から入力する入力工程と、
前記入力された操作情報に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定工程と、
記憶部に予め記憶された画像群であり、複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に基づき切り出された部分画像を表示部に表示させる表示工程とを備え、
前記視点位置・視線方向決定工程は、前記表示工程によって処理される画像に対応する位置が所定の区分点に到達した場合に、後退しながら区分点に到達した場合には最も直進に近い方向の経路を次に進む経路に決定することを特徴とする情報処理方法。
【請求項１１】
請求項８乃至１０のいずれかに記載の情報処理方法をコンピュータによって実現させるための制御プログラムを格納する記憶媒体。
【請求項１２】
請求項８乃至１０のいずれかに記載の情報処理方法をコンピュータによって実現させるための制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
仮想空間内においてウォークスルーを行う際の進行方法を決定する方法に関するものである。
【０００２】
【従来の技術】
移動体に搭載された撮影装置によって現実空間を撮影し、撮影された実写画像データをもとに、撮影した現実空間を、計算機を用いて仮想空間として表現する試みが提案されている（例えば遠藤、片山、田村、廣瀬、渡辺、谷川：“移動車輌搭載カメラを用いた都市空間の電脳映像化について”（信学ソサイエティ、ＰＡ−３−４、ｐｐ．２７６−２７７、１９９７年）、または廣瀬、渡辺、谷川、遠藤、片山、田村：“移動車両搭載カメラを用いた電脳映像都市空間の構築（２）−実写画像を用いた広域仮想空間の生成−”（日本バーチャルリアリティ学会第２回大会論文集、ｐｐ．６７−７０、１９９７年）などを参照）。
【０００３】
移動体に搭載された撮影装置によって撮影された実写画像データをもとに、撮影した現実空間を仮想空間として表現する手法としては、実写画像データをもとに現実空間の幾何形状モデルを再現し、従来のＣＧ技術で表現する手法が挙げられるが、モデルの正確性や精密度、写実性などの点で限界がある。一方、モデルを用いた再現を行わずに、実写画像を用いて仮想空間を表現するImage-Based Rendering（IBR）技術が近年注目を集めている。IBR技術は実写画像に基づいているために、写実的な仮想空間の表現が可能である。
【０００４】
このようなIBR技術を用いてウォークスルー可能な仮想空間を構築するためには、体験者の仮想空間内の位置に応じた画像の生成・呈示を行う必要がある。そのため、この種のシステムにおいては、実写画像データの各フレームと仮想空間内の位置とを対応付けて保存しておき、体験者の仮想空間における位置と視線方向に基づいて対応するフレームを取得し、これを再生する。
【０００５】
このような仮想空間内のウォークスルーにおいては、体験者が各視点位置で所望の方向を見ることができるようにする。このため、各視点位置の画像を、再生時の画角よりも広い範囲をカバーするパノラマ画像で保存しておき、体験者の仮想空間における視点位置と視線方向とに基づいてパノラマ画像を選択するとともに、再生すべき部分画像を切り出してこれを表示することが考えられる。この場合、実写画像データを再生するので、撮影装置を搭載した車輌が走る道に沿ってパノラマ画像の再生が行われ、観察者はあたかも自分がその車輌に乗って走っているかのような感覚を味わうことができる。また、ウォークスルーによる再生画像が交差点に進入し、観察者が実際の車輌の動きとは異なる方向の道を選択すると、再生されていたパノラマ画像群とは異なるパノラマ画像群に切り替わり、新たな進路でのパノラマ画像の再生が行われる。
【０００６】
【発明が解決しようとする課題】
観察者の移動が経路上の前進か後退に限られる場合に、観察者の視線方向に近い方向に進むことを前進とみなし、経路上を移動して交差点に到達した場合には観察者の視線方向に最も近い経路を次に進む進路とする。このような場合、交差点において、移動中の経路の前進方向と９０度以上の角度をなす経路を選択する際には、視線方向を前進方向に対して９０度以上にしなければならない場合がある。しかし、視線方向を９０度以上にすると前進・後退が入れ替わり、交差点から遠ざかる方向へ移動してしまう。そのため、前進方向と９０度以上の角度をなす経路を必ずしも選択することができない。
【０００７】
また、交差点で経路を選択する際に、単純に視線方向と方向が最も近い経路を選択しようとすると、どの経路を選択しやすい（曲がりやすい）かといった優先度を設定することができない。
【０００８】
さらに、交差点で経路を選択する際に、最も視線方向に近い経路であっても、視線方向と角度が著しく離れている場合や、後退しながら交差点に進入する場合などには、観察者が予想していなかった道が選択されることがあり、観察者に不自然な印象を与える。
【０００９】
本発明は、複数の経路が選択可能な区分点において、観察者に不自然な印象を与えることなく、所望の経路を簡単に選択することができるようにすることを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するために本発明は以下の構成を有することを特徴とする。
【００１１】
請求項１記載の発明は、視点位置、視線方向を操作するためのユーザ指示を入力する操作手段と、前記操作手段の出力に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定手段と、複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に対応する部分画像を切り出し、再生する再生手段とを備え、前記視点位置・視線方向決定手段は、前記再生手段によって処理される画像に対応する位置が所定の区分点に到達した場合に、該区分点においてあらかじめ設定されている視線方向と経路との対応関係から、指定された視線方向に対応する経路を次に進む経路に決定し、指定された視線方向に対応する経路がない場合には最も直進方向に近い経路を次に進む経路に決定することを特徴とする。
【００１２】
請求項２記載の発明は、視点位置、視線方向を操作するためのユーザ指示を入力する操作手段と、前記操作手段の出力に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定手段と、複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に対応する部分画像を切り出し、再生する再生手段とを備え、前記視点位置・視線方向決定手段は、前記再生手段によって処理される画像に対応する位置が所定の区分点に到達した場合に、指定された視線方向に定数を乗じ、定数を乗じた方向に最も近い経路を次に進む経路に決定することを特徴とする。
請求項３記載の発明は、視点位置、視線方向を操作するためのユーザ指示を入力する操作手段と、前記操作手段の出力に応じて次の視点位置、視線方向を決定する視点位置・視線方向決定手段と、複数の区分点または区分点間を結ぶ経路上の位置に対応付けられた複数の画像からなる画像群から、前記視点位置に応じた画像を取り出し、前記視線方向に対応する部分画像を切り出し、再生する再生手段とを備え、前記視点位置・視線方向決定手段は、前記再生手段によって処理される画像に対応する位置が所定の区分点に到達した場合に、後退しながら区分点に到達した場合には最も直進に近い方向の経路を次に進む経路に決定することを特徴とする。
【００１３】
【発明の実施の形態】
以下、添付図面を参照しながら、本発明の好適な実施形態を説明する。
【００１４】
＜第１実施形態＞
まず、本実施形態による仮想空間のウォークスルーシステムについて説明する。本実施形態では、例えば自動車などの移動体に搭載された複数の撮影装置によって撮影して得られた実写画像データからパノラマ画像データを生成し、このパノラマ画像データを、現実空間の位置に対応する地図上の位置と対応付けて保持する。そして、体験者の仮想空間における視点位置（地図上の位置）と視線方向に応じて、保持されているパノラマ画像データから表示画像を生成することにより、仮想空間内のウォークスルーを実現する。
【００１５】
図１は本実施形態によるウォークスルーシステムの機能構成を説明するブロック図である。本ウォークスルーシステムを構成する画像再生装置１は、画像データ保存部１０、地図データ保存部２０、対応付けデータ保存部３０、操作部４０、視点位置・視線方向決定部５０、対応画像決定部６０、画像再生制御部７０、表示部８０を有する。
【００１６】
図２は、本実施形態における画像再生装置１のハード構成を示すブロック図である。図２に示したハード構成は通常のパーソナルコンピュータの構成と同等である。図２において、ディスク１０５は画像データ保存部１０を構成するものである。なお、ディスク１０５は上述の画像データ保存部１０のみならず、図１に示した地図データ保存部２０、対応付けデータ保存部３０をも構成するものである。
【００１７】
ＣＰＵ１０１は、ディスク１０５またはＲＯＭ１０６、または外部記憶装置（不図示）に保存されているプログラムを実行することにより、視点位置・視線方向決定部５０、対応画像決定部６０及び画像再生制御部７０として機能する。
【００１８】
ＣＰＵ１０１が表示コントローラ１０２に対して各種の表示指示を行うことにより、表示コントローラ１０２およびフレームバッファ１０３によって表示器１０４に所望の表示がなされる。なお、図では表示コントローラ１０２としてＣＲＴＣ、表示器１０４としてＣＲＴを示したが、表示器としては陰極線管に限らず、液晶表示器等を用いてもよいことはもちろんである。なお、ＣＲＴＣ１０２、フレームバッファ１０３及びＣＲＴ１０４は、上述の表示部８０を構成する。マウス１０８、キーボード１０９及びジョイスティック１１０は、当該画像再生装置１へのユーザの操作入力を行うためのものであり、上述の操作部４０を構成する。
【００１９】
次に、以上の構成を備えた本実施形態のウォークスルーシステムにおける、画像再生装置１の動作の概要について説明する。
【００２０】
画像データ保存部１０は、地図上の各位置に対応したパノラマ画像データを格納する。地図データ保存部２０は、少なくとも画像データ保存部１０に保存されたパノラマ画像データに対応した地図上の位置を包含する地図データを格納する。対応付けデータ保存部３０は、画像データ保存部１０に保存されているパノラマ画像データと、地図データ保存部２０に保存されている地図データとの対応情報を格納する。
【００２１】
操作部４０は、マウス、キーボード、ジョイスティック等を備える。操作部４０は、視点位置の移動パラメータ、視線方向の回転パラメータを生成する。本実施形態では、操作部４０でジョイスティックを用いているが、ゲームコントローラなど他の入力装置でも同様の操作を行うことが可能である。図３は、操作部４０におけるジョイスティックの操作と移動パラメータ、回転パラメータの関係を示す図である。ジョイスティックは、スティックの傾斜とスティックの回転を独立に制御することができる。本実施例では、ジョイスティックを前後に倒す操作を仮想空間内での視点位置の移動に、ジョイスティックを左右に捻る操作を視線方向の変化に対応させている。
【００２２】
図４は、操作部４０におけるデータの流れを表す図である。操作部４０からは、視点位置・視線方向決定部５０に対して、ジョイスティックの前後の倒し角α（α＞０、後へ倒した場合は負の値）が移動パラメータとして、左右の捻り角β（β＞０、右へ捻った場合は負の値）が回転パラメータとして与えられる。
【００２３】
視点位置・視線方向決定部５０は、操作部４０からの移動パラメータ、回転パラメータをもとに、地図データ保存部２０に保存されている地図データ上における観察者の視点位置（地図上の位置）、視線方向を決定する。
【００２４】
図５は、本実施形態における観察者の仮想空間内の移動を説明する図である。
本実施形態では、観察者の仮想空間内での移動は経路上の移動（一次元の移動）に限定し、経路上で前進または後退する。図５では、観察者は線分ＡＢ、ＢＣ、ＢＤ上のみを移動することができる。観察者の進む方向は、観察者が静止しているか、移動しているかに依存する。
【００２５】
図６は、観察者の仮想空間内の進行方向を説明する図である。図６（ａ）に示すように、観察者が静止している場合は、観察者の視線方向に近い方向を前進とみなす。線分ＡＢと視線方向のなす角θの絶対値が９０°以下の場合には、ＡからＢに向かう方向が前進となる。θの絶対値が９０°より大きく、１８０°以下の場合には、ＢからＡに向かう方向が前進となる。図６（ｂ）に示すように、観察者が移動している場合、進行方向は視線方向によらず同じ方向を保つ。つまり、例えばＡからＢに前進で動き始める（｜θ｜＜９０°でジョイスティックを前に倒す）と、動き続けている間（ジョイスティックを前に倒し続けている間）は、視線方向がどの方向を向いていても、ＡからＢに向けて移動する。
【００２６】
図７は、視点位置・視線方向決定部５０におけるデータの流れを示す図である。視点位置・視線方向決定部５０は、地図データ保存部２０から地図データを読み出し、対応画像決定部６０に対して、観察者の地図上の視点位置及び視線方向を与える。
【００２７】
対応画像決定部６０は、観察者の視点位置・視線方向の情報をもとに表示部８０で表示する画像に必要な画像のＩＤを決定する。
【００２８】
図８は、対応画像決定部６０におけるデータの流れを示す図である。視点位置・視線方向決定部５０で決定された体験者の仮想空間内における視点位置、視線方向及び対応付けデータ保存部３０に保存されている地図と画像の対応情報データから、表示部８０で表示する画像を生成するのに必要な画像データ保存部１０に保存されている画像を決定し、画像再生制御部７０に決定された画像のＩＤを渡す。
【００２９】
なお、対応付けデータ保存部３０において、本実施形態では次のデータ格納形態をとる。すなわち、交差点（分岐点）や曲がり角を区分点とし、区分点と区分点で挟まれた線分を道として、各区分点、道にＩＤを割り当て、このＩＤを対応するパノラマ画像に付加する。１つの道に対応するパノラマ画像群には、先頭から順に番号が振られる。  図９はこの様子を説明する図である。図９において、例えばＩＤがＣ１である区分点とＣ２である区分点に挟まれた線分（道）にＲ１というＩＤが付与されている。なお、これらＩＤや地図との対応は、地図データ保存部２０に保存されている。
【００３０】
ＧＰＳデータ等に基づいて区分点Ｃ１とＣ２に対応する画像フレームが特定されると、それらのフレームに挟まれたパノラマ画像群が道Ｒ１に対応することとなる。図では、このパノラマ画像群にはｎ個の画像が存在する。そして、区分点Ｃ１とＣ２に対応する画像フレームにはそれぞれＣ１、Ｃ２のＩＤが付与され、パノラマ画像群の各画像には、順番にＲ１−１〜Ｒ１−ｎが付与されている。
【００３１】
画像再生制御部７０は、表示部８０で表示する画像を生成する。図１０は、画像再生制御部７０におけるデータの流れを示す図である。画像再生制御部７０は、対応画像決定部６０で決定された画像のＩＤに対応する画像を画像データ保存部１０から読み出し、表示部８０に表示する画角および視線方向に応じてパノラマ画像を切り出して、射影変換を行って表示部８０に表示する画像を生成する。
【００３２】
表示部８０は、画像再生制御部７０で生成された画像の表示を行う。
【００３３】
以下では、画像再生装置１を用いたウォークスルー再生における、交差点での進路の選択とそれに応じた画像再生制御について説明する。なお、図９を用いて説明した区分点で、複数の経路を選択可能な交差点である区分点には、接続される道（道ＩＤ）とその接続角度が登録されているものとする。
【００３４】
視点位置・視線方向決定部５０における、進行方向の決定の処理について、図１１のフローチャートを参照して更に詳細に説明する。図１１のフローチャートは、図１２に示すＡ地点からＢ地点の間で移動を行う際の処理の手順である。
【００３５】
ステップＳ１０１では観察者はＡ地点とＢ地点の間の道上で静止している。ステップＳ１０２で、ジョイスティックが前後のどちらかに倒されているかを判別する。ジョイスティックが前後に倒れていなければステップＳ１０１に戻り、倒れていればステップＳ１０３に進む。
【００３６】
ステップＳ１０３では、観察者の視線方向を判別する。図１１のフローチャートでは、ＡからＢに向かう方向に対する視線方向の角度を用いて判別する。ＡからＢに向かう方向に対して、視線方向θの絶対値が９０度以内の範囲内であるときは、前進方向をＡからＢに進む向き（後退方向はＢからＡに進む向き）として、ステップＳ１０４に進む。ＡからＢに向かう方向に対して、視線方向θの絶対値が９０度より大きくかつ１８０°以下のときは、前進方向をＢからＡに進む向き（後退方向はＡからＢに進む向き）として、ステップＳ１０５に進む。
【００３７】
ステップＳ１０４、Ｓ１０５では、ジョイスティックが前に傾いているか、後に傾いているかを判別する。ステップＳ１０４において、ジョイスティックが前に傾いていればＡからＢに向かう方向へ前進するものとしてステップＳ１０７に進む。後ろに傾いていればＢからＡに向かう方向へ後退するものとしてステップＳ１０６に進む。同様に、ステップＳ１０５において、ジョイスティックが前に傾いていればＢからＡに向かう方向へ前進するものとしてステップＳ１０９に進む。後ろに傾いていればＡからＢに向かう方向へ後退するものとしてステップＳ１０８に進む。
【００３８】
ステップＳ１０６、Ｓ１０７、Ｓ１０８、Ｓ１０９は、それぞれステップＳ１１０、Ｓ１１１、Ｓ１１２、Ｓ１１３において、ジョイスティックの傾いている方向が同じであるかを判別し、同じ方向に傾いている限り、前進または後退を続ける。ここでは視線方向が変わっても何も影響しない。
【００３９】
ステップＳ１１０、Ｓ１１１、Ｓ１１２、Ｓ１１３において、ジョイスティックの傾いている方向が変わっている、または静止している（傾いていない）と判別された場合には、ステップＳ１０２に戻る。
【００４０】
図１３は本実施形態における、交差点における再生制御を説明する図である。交差点１０１０には、道１００１〜１００４が接続されており、道１００１と１００２、及び道１００３と１００４はそれぞれ１８０度で接続され、道１００２と１００３は角度φで接続されているものとする。今、道１００１に対応したパノラマ画像が順次用いられて、視線方向θ１に対応する画像が再生されているとする。この場合、θ１の方向を見ながら視点位置を道１００１に沿って移動させたウォークスルー画像が観察される。
【００４１】
この状態で、図１３の（ｂ）に示すごとく、再生するパノラマ画像が交差点１０１０に到達すると、すなわち視点位置が交差点１０１０に到達すると、道１００１〜１００４のうちで、最もそのときの視線方向に近い道が選択される。本例では、道１００３と視線方向のなす角度θ２の絶対値（＝｜φ−θ１｜）が最も小さいとする。この場合、道１００３が次に進む道に選択されることになる。
【００４２】
図１４に、進行方向に対して視線方向の絶対値が９０°より大きくかつ１８０°以下の角度をなさなければならない場合の、交差点の状況を説明する図である。道２００１〜２００５は交差点２０１０に接続されており、道２００１と２００３、及び道２００２と２００４はそれぞれ１８０度の角度をなしている。このとき、道２００２とθ０（９０°＜θ０≦１８０°）の角度をなす道２００５に、道２００１から交差点２０１０を通って曲がるためには、道２００１において、交差点２０１０に向かって前進しながら、視線方向をθ１以上になるように見回した状態にして、交差点２０１０に進入すればよい。
【００４３】
以上のように、第1実施形態によれば、動き続けている場合に進行方向の情報を保持することで、視線方向が変わっても進行方向が変わらなくなるので、現在進行している道の正面方向から９０度以上の角度をなす任意の道に曲がることが可能となる。
【００４４】
＜第２実施形態＞
上記第１実施形態では、動き続けている場合に進行方向の情報を保持することで、現在進行している道の正面方向から９０度以上の角度をなす道を選択可能にした。第２実施形態では、道を選択する際に視線方向に最も近い道を選択するのではなく、各道に対応する視線方向の範囲を明示的に指定し、特定の道に曲がりやすい、曲がりにくいといった優先度を設定する。
【００４５】
図１５は第２実施形態による交差点における道の選択を説明する図である。図１５（ｂ）のように、道を選択する際に、道と道との間の角度を等分割してどの道の領域にいるかを判別するのではなく、図１５（ｃ）のように各道に割り当てる領域を明示的に決定することで曲がりやすさ（曲がりにくさ）を道に設定する。図１５（ｃ）では、図１５（ｂ）の場合と比べて、道３００２に対応する領域を広げ（−α１≦視線方向≦β１から−α２≦視線方向≦β２に広げる。α１＞０、α２＞０、α１＜α２、β１＞０、β２＞０、β１＜β２）ることで、道３００２に曲がりやすくし、道３００３、道３００４に曲がりにくくしている。
【００４６】
図１６は第２実施形態による、図１５（ａ）の場合の交差点における道の選択を説明するフローチャートであり、交差点に進入する直前から進入した直後までの処理を説明する。図１６において、交差点Ｃは図１５（ａ）の交差点３０１０に、θｏｌｄは道３００１を進む時の道３００１に対する視線方向、θｎｅｗは交差点Ｃにおいて選択された道（道３００２または３００３または３００４）を進む時の、進んでいる道に対する視線方向をそれぞれ表す。
【００４７】
ステップＳ２０２において、視線方向θｏｌｄで道３００１を進むうちに、交差点Ｃに対応する画像フレームに到達すると、ステップＳ２０３において、視線方向θｏｌｄが次に道３００２を選択する範囲にあるかどうかを判定する。θｏｌｄが道３００２を選択する範囲にある場合、ステップＳ２０５において次に進む道として道３００２を選択する。ステップＳ２０３において、θｏｌｄが道３００２を選択する範囲にない場合、ステップＳ２０４において、視線方向θｏｌｄが次に道３００３を選択する範囲にあるかどうかを判定する。θｏｌｄが道３００３を選択する範囲にある場合、ステップＳ２０６において次に進む道として道３００３を選択する。ステップＳ２０４において、θｏｌｄが道３００３を選択する範囲にない場合、ステップＳ２０７において次に進む道として道３００４を選択する。選択した道と、道の交差点への接続角度をもとに、ステップＳ２０８において、次に進む道（道３００２または道３００３または道３００４）を進む場合の、視線方向θｏｌｄに一致する視線方向θｎｅｗを設定する。
【００４８】
ステップＳ２０９では、新たに選択した道に対応するパノラマ画像と視線方向θｎｅｗを用いてウォークスルー再生を行い、視点位置は新たに選択した道（道３００２または道３００３または道３００４）を進むことになる。
【００４９】
以上のように、第２実施形態によれば、道を選択する際に、道と道との間の角度を等分割せず明示的に各道に対応する視線方向の範囲を指定することによって、曲がりやすさを設定することが可能になる。
【００５０】
＜第３実施形態＞
第２実施形態では、交差点において道を選択する場合で、視線方向に合わせて道を選択する場合に、交差点に接続する道と道とがなす角度を等分割しないことによって、曲がりやすさを設定した。第３実施形態では、交差点に接続されている道がカバーする視線方向の範囲に閾値を設けることで、視線方向が閾値の範囲を外れる場合には最も直進に近い道を選択するようにし、視線方向とかけ離れた不自然な方向へ曲がるのを防ぐ。
【００５１】
図１７は第３実施形態による交差点における道の選択を説明する図である。図１７（ｂ）では、交差点に接続されている道で視線方向３６０度の範囲をすべてカバーしている。第３実施形態においては、図１７（ｃ）に示すように、閾値δを設定し、交差点への道の接続角度±δ以外は選択範囲外として、直進に最も近い道（図１７の場合は道３００２）を選択する。ここで、閾値をδとして共通にしているが、各道で独立に閾値を設定することも可能である。また、視線方向が選択範囲外を向いている場合には直進に最も近い道を選択するとしたが、最も直角に近い道を選択するなど、様々な応用が考えられる。
【００５２】
図１８は第３実施形態による、図１７（ａ）の場合の交差点における道の選択を説明するフローチャートであり、交差点に進入する直前から進入した直後までの処理を説明する。図１８において、交差点Ｃは図１７（ａ）の交差点３０１０に、θｏｌｄは道３００１を進む時の道３００１に対する視線方向、θｎｅｗは交差点Ｃにおいて選択された道（道３００２または３００３または３００４）を進む時の、進んでいる道に対する視線方向をそれぞれ表す。
【００５３】
ステップＳ３０２において、視線方向θｏｌｄで道３００１を進むうちに、交差点Ｃに対応する画像フレームに到達すると、ステップＳ３０３において、視線方向θｏｌｄがどの道の選択範囲（接続方向±δ）にも入っていない（選択範囲外にある）かどうかを判定する。視線方向θｏｌｄが選択範囲外にある場合には、ステップＳ３０４において、道３００１から進むときに最も直進に近い道を決定する（この場合、道３００２となる）。ステップＳ３０３において、視線方向θｏｌｄが選択範囲内にあると判定された場合は、ステップＳ３０５において、θｏｌｄが道３００２を選択する範囲にあるかどうかを判定する。θｏｌｄが道３００２を選択する範囲にある場合、ステップＳ３０７において次に進む道として道３００２を選択する。ステップＳ３０５において、θｏｌｄが道３００２を選択する範囲にない場合、ステップＳ３０６において、視線方向θｏｌｄが次に道３００３を選択する範囲にあるかどうかを判定する。θｏｌｄが道３００３を選択する範囲にある場合、ステップＳ３０８において次に進む道として道３００３を選択する。ステップＳ３０６において、θｏｌｄが道３００３を選択する範囲にない場合、ステップＳ３０９において次に進む道として道３００４を選択する。選択した道と、道の交差点への接続角度をもとに、ステップＳ３１０において、次に進む道（道３００２または道３００３または道３００４）を進む場合の、視線方向θｏｌｄに一致する視線方向θｎｅｗを設定する。
【００５４】
ステップＳ３１１では、新たに選択した道に対応するパノラマ画像と視線方向θｎｅｗを用いてウォークスルー再生を行い、視点位置は新たに選択した道（道３００２または道３００３または道３００４）を進むことになる。
【００５５】
以上のように、第３実施形態によれば、視線方向に最も近い道を選択する際に、交差点に接続されている道がカバーする視線方向の範囲に閾値を設けることで、視線方向が閾値の範囲を外れる場合には最も直進に近い道を選択するなどして、不自然な方向へ曲がるのを防ぐ。
【００５６】
＜第４実施形態＞
上記第１実施形態では、動き続けている場合に進行方向の情報を保持することで、現在進行している道の正面方向から９０度以上の角度をなす道を選択可能にした。第４実施形態では、視線方向３６０度の範囲を１８０度以内の範囲に変換し、９０度以上視線方向を変えなくてもすべての道を選択できるようにすることで、静止していても前進と後退が逆転せずに、現在進行している道の正面方向から９０度以上の角度をなす道を選択可能にする。
【００５７】
図１９は第４実施形態による、交差点における道の選択を説明する図である。図１９（ｂ）のように視線方向に最も近い道を選択するのに視線方向の値そのものを使うのではなく、図１９（ｃ）のように現在の道の直進方向から見た視線方向の値をα倍することで、視線方向の絶対値を０度から９０度の範囲に抑えて視線方向の絶対値が０度から１８０度の範囲の道の選択を行う。αの値は道の接続状況による。
【００５８】
図２０は第４実施形態による、交差点における道の選択を説明するフローチャートであり、交差点に進入する直前から進入した直後までの処理を説明する。図２０において、交差点Ｃは図１９（ａ）の交差点３０１０に、θｏｌｄは道３００１を進む時の道３００１に対する視線方向、θｎｅｗは交差点Ｃにおいて選択された道（道３００２または３００３または３００４）を進む時の、進んでいる道に対する視線方向をそれぞれ表す。また、Ｒｏｌｄは道３００１、Ｒｎｅｗは交差点Ｃで選択される道（道３００２または３００３または３００４）を表す。
【００５９】
ステップＳ４０２において、視線方向θｏｌｄで道Ｒｏｌｄを進むうちに、交差点Ｃに対応する画像フレームに到達すると、ステップＳ４０３において、視線方向をα倍した値を計算する。このとき視線方向は、これまで通っていた道Ｒｏｌｄを交差点Ｃに向けて進行するときの進行方向からの相対角度である。ステップＳ４０４において、α倍した視線方向α×θｏｌｄに最も近い方向の道Ｒｎｅｗが選択される。次にステップＳ４０５において、道Ｒｎｅｗを進む場合の、視線方向θｏｌｄに一致する視線方向θｎｅｗを設定する。
【００６０】
ステップＳ４０６では、Ｒｎｅｗに対応するパノラマ画像と視線方向θｎｅｗを用いてウォークスルー再生を行い、視点位置は道Ｒｎｅｗを進むことになる。
【００６１】
以上のように、第４実施形態によれば、９０度以上視線方向を変えなくてもすべての道を選択できるようにすることで、静止していても現在進行している道の正面方向から９０度以上の角度をなす道を選択可能になる。
【００６２】
＜第５実施形態＞
第５実施形態では、後退しながら交差点に進入した場合、これまで通っていた道と最も直進に近い道を自動的に選択することで、交差点に進入した瞬間予期できない道に曲がってしまうといった違和感を覚えないウォークスルーを行う。
【００６３】
図２１は、第５実施形態による、交差点に後退しながら進入したときの交差点における道の選択を説明する図である。図２１（ａ）のように視線方向がθ１で交差点３０１０に到達した場合、視線方向に最も近い道を選択すると道３００３が選択されることになる。しかし、後退しながら進むときは、体験者は交差点の様子がわからないため、交差点３０１０で道３００３に曲がると、体験者が意図しない方向に曲がるため、違和感を覚える。そのため、第５実施形態においては、図２１（ｃ）に示すように、後ろ向きで交差点３０１０に到達した場合には、視線方向にかかわらず、最も直進に近い道を選択する（ここでは道３００２）。
【００６４】
図２２は第５実施形態による、交差点における道の選択を説明するフローチャートであり、交差点に進入する直前から進入した直後までの処理を説明する。図２２において、交差点Ｃは図２１（ａ）の交差点３０１０に、θｏｌｄは道３００１を進む時の道３００１に対する視線方向θ１、θｎｅｗは交差点Ｃにおいて選択された道（道３００２）を進む時の、進んでいる道に対する視線方向をそれぞれ表す。また、Ｒｏｌｄは道３００１、Ｒｎｅｗは交差点Ｃで選択される道（道３００２）を表す。
【００６５】
ステップＳ５０２において、視線方向θｏｌｄで道Ｒｏｌｄ（図２１では道３００１）を進むうちに、交差点Ｃ（図２１では交差点３０１０）に対応する画像フレームに到達すると、ステップＳ５０３において、現在の道Ｒｏｌｄから最も直進に近い道Ｒｎｅｗ（図２１では道３００２）を選択する。次にステップＳ５０４において、道Ｒｎｅｗを進む場合の、視線方向θｏｌｄに一致する視線方向θｎｅｗを設定する。
【００６６】
ステップＳ５０５では、Ｒｎｅｗに対応するパノラマ画像と視線方向θｎｅｗを用いてウォークスルー再生を行い、視点位置は道Ｒｎｅｗを進むことになる。
【００６７】
以上のように、第５実施形態によれば、後退しながら交差点に進入した場合、これまで通っていた道と最も直進に近い道を自動的に選択することで、交差点に進入した瞬間予期できない道に曲がってしまうといった違和感のないウォークスルーを行うことが可能になる。
【００６８】
＜第６実施形態＞
第６実施形態では、交差点に進入する前に視線方向をもとに次に進む経路を選択し、交差点に進入する際には自由に視線方向を変化させることのできるウォークスルーを行う。
図２３は、第６実施形態における、交差点周辺における経路選択を説明する図である。交差点６１０には道６０１、６０２、６０３、６０４が接続されており、道６０１と６０３、道６０２と６０４はそれぞれ１８０°の角度をなしている。また、道６０２と道６０３のなす角度はφ（＜９０°）である。図２３（ａ）では、観察者は道６０１を交差点６１０に向かって進んでおり、視線方向は道６０１とθ１の角度をなしている。観察者は、道６０１上の点６１１において、キーボードの割当てキーまたはジョイスティックの割当てキーを押すことで、視線方向θ１の値を保存する。保存されたθ１の値は、交差点６１０における経路の選択に利用される。観察者はθ１の値を保存後も、自由に視線方向を変えることが可能である。
【００６９】
図２３（ｂ）において、観察者が交差点６１０に到達すると、その時点での視線方向θ２ではなく、保存されているθ１の値を視線方向として、視線方向に最も近い経路を次に進む経路として選択する。ここでは道６０２の接続角度が最もθ１に近いとする。
【００７０】
図２３（ｃ）において、交差点６１０で道６０２を選択した観察者は、視線方向θ３（＝φ＋θ２）で道６０２を進む。
【００７１】
保存される視線方向の値は、キーを押すことによって何回でも更新できる。図２４はウォークスルー体験の画面を表す図である。ウォークスルー体験の画面には、地図画像がオーバレイして表示されている。地図画像上には、観察者の視点位置・視線方向、選択可能な経路を示す矢印が表示される。視線方向をキーを押すことによって保存すると、その視線方向に対応する経路を示す矢印の色が他の経路を示す矢印と異なる色に変わる。
【００７２】
＜他の実施形態＞
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７３】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００７４】
【発明の効果】
以上説明したように、本発明によれば、複数の経路が選択可能な区分点において、観察者に不自然な印象を与えることなく、所望の経路を簡単に選択することができるようにすることができる。
【図面の簡単な説明】
【図１】本実施形態におけるウォークスルーシステムの機能構成を説明するブロック図である。
【図２】本実施形態による画像再生装置１のハード構成を示すブロック図である。
【図３】本実施形態のウォークスルーシステムにおける、ジョイスティック操作を説明する図である。
【図４】本実施形態のウォークスルーシステムにおける、操作部４０におけるデータ・フローを示す図である。
【図５】本実施形態のウォークスルーシステムにおける、観察者の仮想空間内の移動を説明する図である。
【図６】第１実施形態による、進行方向制御を説明する図である。
【図７】本実施形態のウォークスルーシステムにおける、視点位置・視線方向決定部５０におけるデータ・フローを示す図である。
【図８】本実施形態のウォークスルーシステムにおける、対応画像決定部６０におけるデータ・フローを示す図である。
【図９】道と区分点を用いたパノラマ画像の地図データへの対応付けを説明する図である。
【図１０】本実施形態のウォークスルーシステムにおける、画像再生制御部７０におけるデータ・フローを示す図である。
【図１１】第１実施形態による、進行方向制御を説明するフローチャートである。
【図１２】第１実施形態による、進行方向制御を説明する図である。
【図１３】第１実施形態による、交差点における再生制御を説明する図である。
【図１４】第１実施形態による、交差点における再生制御を説明する図である。
【図１５】第２実施形態による、交差点における再生制御を説明する図である。
【図１６】第２実施形態による、交差点における再生制御を説明するフローチャートである。
【図１７】第３実施形態による、交差点における再生制御を説明する図である。
【図１８】第３実施形態による、交差点における再生制御を説明するフローチャートである。
【図１９】第４実施形態による、交差点における再生制御を説明する図である。
【図２０】第４実施形態による、交差点における再生制御を説明するフローチャートである。
【図２１】第５実施形態による、交差点における再生制御を説明する図である。
【図２２】第５実施形態による、交差点における再生制御を説明するフローチャートである。
【図２３】第６実施形態による、交差点における再生制御を説明する図である。
【図２４】第６実施形態による、ウォークスルー体験画面を説明する図である。
【図１】
0003840113.tif 000002
【図２】
0003840113.tif 000003
【図３】
0003840113.tif 000004
【図４】
0003840113.tif 000005
【図５】
0003840113.tif 000006
【図６】
0003840113.tif 000007
【図７】
0003840113.tif 000008
【図８】
0003840113.tif 000009
【図９】
0003840113.tif 000010
【図１０】
0003840113.tif 000011
【図１１】
0003840113.tif 000012
【図１２】
0003840113.tif 000013
【図１３】
0003840113.tif 000014
【図１４】
0003840113.tif 000015
【図１５】
0003840113.tif 000016
【図１６】
0003840113.tif 000017
【図１７】
0003840113.tif 000018
【図１８】
0003840113.tif 000019
【図１９】
0003840113.tif 000020
【図２０】
0003840113.tif 000021
【図２１】
0003840113.tif 000022
【図２２】
0003840113.tif 000023
【図２３】
0003840113.tif 000024
【図２４】
0003840113.tif 000025