(57)【要約】【課題】  少なくとも２つのパノラマ画像に基づいて、仮想３次元空間の指定した位置からの透視投影画像を生成し、表示する画像生成システムを提供することを目的とする。【解決手段】  少なくとも２つのパノラマ画像に基づいて、仮想３次元空間に於けるユーザが指定した位置からの透視投影画像を生成する画像生成システムであって、画像生成システムは、パノラマ画像を読み込むパノラマ画像受付手段と、仮想３次元空間に於けるユーザが指定した位置の情報を受け付ける位置入力受付手段と、読み込んだ少なくとも２つのパノラマ画像から、受け付けた位置に於ける透視投影画像を生成する画像生成演算処理手段と、生成した透視投影画像を出力する表示処理手段と、を有する画像生成システムである。【選択図】  図１
2006350852.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つのパノラマ画像に基づいて、仮想３次元空間に於けるユーザが指定した位置からの透視投影画像を生成する画像生成システムであって、
前記画像生成システムは、
前記パノラマ画像を読み込むパノラマ画像受付手段と、
前記仮想３次元空間に於ける前記ユーザが指定した位置の情報を受け付ける位置入力受付手段と、
前記読み込んだ少なくとも２つのパノラマ画像から、前記受け付けた位置に於ける透視投影画像を生成する画像生成演算処理手段と、
前記生成した透視投影画像を出力する表示処理手段と、
を有することを特徴とする画像生成システム。
【請求項２】
前記画像生成演算処理手段は、中間パノラマ画像生成手段と透視投影画像生成手段とを有しており、
前記中間パノラマ画像生成手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、三角測量法により前記パノラマ画像に於ける対応点が前記中間パノラマ画像に於いてどこに位置するかを算出し、前記パノラマ画像に於ける対応点によって構成されるフェイスのテクスチャを、このフェイスに対応する前記中間パノラマ画像に於ける前記算出した位置を頂点として構成するフェイスにテクスチャマッピングすることにより、前記中間パノラマ画像を生成し、
前記透視投影画像生成手段は、
前記透視投影画像の領域を任意の複数のフェイスに分割し、そのフェイスを構成する頂点が前記中間パノラマ画像に於いてどの位置にあるかを算出し、前記中間パノラマ画像に於ける前記算出した位置を頂点をして構成されるフェイスのテクスチャを、前記透視投影画像に於いて前記分割した対応するフェイスにテクスチャマッピングすることにより、前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項３】
前記画像生成演算処理手段は、対応点算出手段と透視投影画像生成手段とを有しており、
前記対応点算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、三角測量法により前記パノラマ画像に於ける対応点が前記中間パノラマ画像に於いてどこに位置するかを算出し、前記算出した位置を前記透視投影画像上の位置に変換し、
前記透視投影画像生成手段は、
前記算出したパノラマ画像の対応点の透視投影画像上の位置を頂点とし、その頂点により構成されるフェイスに、前記パノラマ画像の対応するテクスチャをテクスチャマッピングすることにより、前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項４】
前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、
前記空間位置算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線上に決定し、
前記透視投影画像生成手段は、
前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、変換後の座標を前記透視投影画像上の位置に変換し、前記算出したパノラマ画像の対応点の透視投影画像上の位置を頂点とし、その頂点により構成されるフェイスに、前記パノラマ画像の対応するテクスチャをテクスチャマッピングすることにより、前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項５】
前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、
前記空間位置算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線上に決定し、
前記透視投影画像生成手段は、
前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、前記パノラマ画像に於ける対応点によって構成されるフェイスのテクスチャを、このフェイスに対応する前記中間パノラマ画像に於ける前記変換した位置を頂点として構成するフェイスにテクスチャマッピングすることにより、前記中間パノラマ画像を生成し、前記透視投影画像の領域を任意の複数のフェイスに分割し、そのフェイスを構成する頂点が前記中間パノラマ画像に於いてどの位置にあるかを算出し、前記中間パノラマ画像に於ける前記算出した位置を頂点をして構成されるフェイスのテクスチャを、前記透視投影画像に於いて前記分割した対応するフェイスにテクスチャマッピングすることにより、前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項６】
前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、
前記空間位置算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線上に決定し、
前記透視投影画像生成手段は、
前記決定した前記対応点の仮想３次元空間上に於ける位置により構成されるフェイスを面とする３次元ポリゴンを構成し、前記パノラマ画像のフェイスのテクスチャを、前記３次元ポリゴンの対応するフェイスにテクスチャマッピングすることで前記３次元ポリゴンを生成し、前記３次元ポリゴンを前記受け付けた位置からの透視投影画像に変換することで前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項７】
前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、
前記空間位置算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線同士を所定の補間パラメータに内分する位置を前記仮想３次元空間上の位置として決定し、
前記透視投影画像生成手段は、
前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、変換後の座標を前記透視投影画像上の位置に変換し、前記算出したパノラマ画像の対応点の透視投影画像上の位置を頂点とし、その頂点により構成されるフェイスに、前記パノラマ画像の対応するテクスチャをテクスチャマッピングすることにより、前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項８】
前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、
前記空間位置算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線同士を所定の補間パラメータに内分する位置を前記仮想３次元空間上の位置として決定し、
前記透視投影画像生成手段は、
前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、前記パノラマ画像に於ける対応点によって構成されるフェイスのテクスチャを、このフェイスに対応する前記中間パノラマ画像に於ける前記変換した位置を頂点として構成するフェイスにテクスチャマッピングすることにより、前記中間パノラマ画像を生成し、前記透視投影画像の領域を任意の複数のフェイスに分割し、そのフェイスを構成する頂点が前記中間パノラマ画像に於いてどの位置にあるかを算出し、前記中間パノラマ画像に於ける前記算出した位置を頂点をして構成されるフェイスのテクスチャを、前記透視投影画像に於いて前記分割した対応するフェイスにテクスチャマッピングすることにより、前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項９】
前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、
前記空間位置算出手段は、
前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線同士を所定の補間パラメータに内分する位置を前記仮想３次元空間上の位置として決定し、
前記透視投影画像生成手段は、
前記決定した前記対応点の仮想３次元空間上に於ける位置により構成されるフェイスを面とする３次元ポリゴンを構成し、前記パノラマ画像のフェイスのテクスチャを、前記３次元ポリゴンの対応するフェイスにテクスチャマッピングすることで前記３次元ポリゴンを生成し、前記３次元ポリゴンを前記受け付けた位置からの透視投影画像に変換することで前記透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項１０】
前記画像生成演算処理手段は、
前記読み込んだ少なくとも２つのパノラマ画像から、前記パノラマ画像における歪みを補正したパノラマ画像を生成し、前記補正した少なくとも２つのパノラマ画像に基づいて、前記受け付けた位置における透視投影画像を生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項１１】
前記画像生成システムは、
前記位置入力受付手段で受け付けた位置から各パノラマ画像の位置までの比率に応じて、テクスチャのテクスチャマッピングを行う、
ことを特徴とする請求項１から請求項１０のいずれかに記載の画像生成システム。
【請求項１２】
前記位置入力受付手段は、前記位置の情報を逐次受け付け、
前記画像生成演算処理手段は、
前記受け付けた位置の情報に基づいて、各々の位置に於ける透視投影画像を逐次生成し、
前記表示処理手段は、
前記生成した透視投影画像を出力する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項１３】
前記少なくとも２つのパノラマ画像によって構成されるモーフィング区間に於いて、前記位置入力受付手段が前記モーフィング区間内の位置を受け付けたときには、
前記画像生成演算処理手段は、
前記モーフィング区間に於ける透視投影画像を、前記モーフィング区間の両端点に位置するパノラマ画像に基づいて生成する、
ことを特徴とする請求項１に記載の画像生成システム。
【請求項１４】
前記画像生成演算処理手段は、
前記モーフィング区間を切り替える際に、現在処理対象となるモーフィング区間での補間パラメータから、次に処理対象となるモーフィング区間の補間パラメータに変換した上で、前記パノラマ画像に基づいて前記透視投影画像を生成する、
ことを特徴とする請求項１３に記載の画像生成システム。
【請求項１５】
前記画像生成システムは、
前記画像生成演算処理手段で生成した透視投影画像を、実写画像、ＣＧ画像、又は他の画像生成方法によって得られた画像と合成する処理を行い、合成した画像を前記表示処理手段で出力する、
ことを特徴とする請求項１から請求項１４のいずれかに記載の画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、少なくとも２つのパノラマ画像に基づいて、仮想３次元空間の指定した位置からの透視投影画像を生成し、表示する画像生成システムに関する。
【背景技術】
【０００２】
仮想３次元空間に於いて、ユーザが指定した位置からのその３次元空間を見た場合の画像（透視投影画像）をコンピュータ端末で表示する方法としては、VRML（Virtual Reality Modeling Language）などのモデルベースの方法や実写画像を利用した画像ベースの方法がある。
【０００３】
モデルベースの方法では、仮想３次元空間に於ける任意の位置からの透視投影画像を生成するには、通常、ポリゴンなどによって、仮想３次元空間に於ける各物体の３次元形状モデルを作成し、モデルに適したテクスチャを定義したり、適切な明るさや色となるようライトデータを定義することで行っている。このようにして作成した各物体の位置する仮想３次元空間に於いて、ユーザが任意の位置を指定することにより、その位置からの透視投影画像を生成、表示する。
【０００４】
一方、画像ベースの方法では、複数の静止画に基づいて、仮想３次元空間に於ける一つの固定地点からの全周囲画像を生成、表示したり、連続した多数の地点での画像を、あたかも動画像のように取扱、動画圧縮再生技術やその関連技術を用いて任意の地点からの画像を再生することで表示するものなどがある。
【０００５】
これらの従来技術を代表する例として下記に６つの特許文献を示す。
【０００６】
【特許文献１】特開２００３−１８７２６１号公報
【特許文献２】特開２００３−２４６２４号公報
【特許文献３】特開２００２−５２２４０号公報
【特許文献４】特開２００１−２２９４０２号公報
【特許文献５】特開２０００−６７２７４号公報
【特許文献６】特開平１０−４９７０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしモデルベースの方法の場合、仮想３次元空間に於ける任意の透視投影画像を生成することは出来るが、仮想３次元空間に配置される各物体を作成することが非常に困難である。特に、３次元形状モデルの作成は、熟練したエンジニアが専用のソフトウェアを用いて作業を行うことが通常であり、一般のユーザがその作業を行うのは困難である。テクスチャやライトの生成、配置も同様に多くのノウハウが必要となる。従って、この方法を用いる場合の元となるデータ（シーンデータ）の作成には、多くの時間と、多くの費用が必要となる。
【０００８】
またシーンデータを実写静止画像と同等の表示品質とする為には、高精細な３次元形状モデルを作成する必要があるが、そのようなモデルはデータ量が多いので、更に多くの時間と費用とを必要とするほか、インターネット等を介してデータの送受信を行う場合には通信速度や表示速度を低下させる。
【０００９】
一方、実写画像を利用した画像ベースの方法の場合、３次元形状モデルを作成することなく、高精細な画像データを得ることが出来る。しかしこの方法に於ける従来技術では、例えばQuickTimeVRなどのように、仮想３次元空間に於ける固定地点からの全周囲画像しか表示することが出来ず、原則として位置（視点）を移動することが出来ない。移動出来る方法もあるが、その方法に於いては、画像中に表示されたマーカをユーザが指定して別の位置にジャンプするなど、不連続な移動が行えるのみであり、連続的且つ自由な移動を行えない。また任意の位置からの画像を表示する場合には、カメラの校正が必要であったり、特殊な機材が必要であったりと、様々な制約があり、一般のユーザが簡単に、仮想３次元空間の任意位置からの透視投影画像を生成、表示することが出来ない。
【課題を解決するための手段】
【００１０】
そこで本発明者は、仮想３次元空間に於ける少なくとも２つのパノラマ画像を用いることにより、仮想３次元空間内のユーザが指定した位置からの透視投影画像を生成することが出来、またその処理を連続的に行うことにより、連続的に透視投影画像を表示することが出来る画像生成システムを発明した。
【００１１】
第１の発明は、少なくとも２つのパノラマ画像に基づいて、仮想３次元空間に於けるユーザが指定した位置からの透視投影画像を生成する画像生成システムであって、前記画像生成システムは、前記パノラマ画像を読み込むパノラマ画像受付手段と、前記仮想３次元空間に於ける前記ユーザが指定した位置の情報を受け付ける位置入力受付手段と、前記読み込んだ少なくとも２つのパノラマ画像から、前記受け付けた位置に於ける透視投影画像を生成する画像生成演算処理手段と、前記生成した透視投影画像を出力する表示処理手段と、を有する画像生成システムである。
【００１２】
本発明のように構成することで、少なくとも２以上のパノラマ画像に基づいて、仮想３次元空間内の任意の位置からの透視投影画像を出力することが可能となる。
【００１３】
第１の発明に於いて、透視投影画像を生成するには、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、中間パノラマ画像生成手段と透視投影画像生成手段とを有しており、前記中間パノラマ画像生成手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、三角測量法により前記パノラマ画像に於ける対応点が前記中間パノラマ画像に於いてどこに位置するかを算出し、前記パノラマ画像に於ける対応点によって構成されるフェイスのテクスチャを、このフェイスに対応する前記中間パノラマ画像に於ける前記算出した位置を頂点として構成するフェイスにテクスチャマッピングすることにより、前記中間パノラマ画像を生成し、前記透視投影画像生成手段は、前記透視投影画像の領域を任意の複数のフェイスに分割し、そのフェイスを構成する頂点が前記中間パノラマ画像に於いてどの位置にあるかを算出し、前記中間パノラマ画像に於ける前記算出した位置を頂点をして構成されるフェイスのテクスチャを、前記透視投影画像に於いて前記分割した対応するフェイスにテクスチャマッピングすることにより、前記透視投影画像を生成する、画像生成システムである。
【００１４】
このような構成とすることによって、ユーザが入力した位置からの中間パノラマ画像を生成し、それに基づいて透視投影画像を出力することが出来る。
【００１５】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、対応点算出手段と透視投影画像生成手段とを有しており、前記対応点算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、三角測量法により前記パノラマ画像に於ける対応点が前記中間パノラマ画像に於いてどこに位置するかを算出し、前記算出した位置を前記透視投影画像上の位置に変換し、前記透視投影画像生成手段は、前記算出したパノラマ画像の対応点の透視投影画像上の位置を頂点とし、その頂点により構成されるフェイスに、前記パノラマ画像の対応するテクスチャをテクスチャマッピングすることにより、前記透視投影画像を生成する、画像生成システムである。
【００１６】
このような構成とすることによって、ユーザが入力した位置からの中間パノラマ画像に於ける対応点の位置を算出し、その対応点を更に透視投影画像上に変換することが出来る。これによってテクスチャマッピングを一度しか行わないので、高速処理且つ高精度の透視投影画像を生成することが出来る。
【００１７】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、前記空間位置算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線上に決定し、前記透視投影画像生成手段は、前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、変換後の座標を前記透視投影画像上の位置に変換し、前記算出したパノラマ画像の対応点の透視投影画像上の位置を頂点とし、その頂点により構成されるフェイスに、前記パノラマ画像の対応するテクスチャをテクスチャマッピングすることにより、前記透視投影画像を生成する、画像生成システムである。
【００１８】
このような構成とすることでも、テクスチャマッピングを一度しか行わずに高速処理且つ高精度の透視投影画像を生成することが出来る。
【００１９】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、前記空間位置算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線上に決定し、前記透視投影画像生成手段は、前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、前記パノラマ画像に於ける対応点によって構成されるフェイスのテクスチャを、このフェイスに対応する前記中間パノラマ画像に於ける前記変換した位置を頂点として構成するフェイスにテクスチャマッピングすることにより、前記中間パノラマ画像を生成し、前記透視投影画像の領域を任意の複数のフェイスに分割し、そのフェイスを構成する頂点が前記中間パノラマ画像に於いてどの位置にあるかを算出し、前記中間パノラマ画像に於ける前記算出した位置を頂点をして構成されるフェイスのテクスチャを、前記透視投影画像に於いて前記分割した対応するフェイスにテクスチャマッピングすることにより、前記透視投影画像を生成する、画像生成システムである。
【００２０】
このような構成とすることでも、第１の発明と同様に、ユーザが入力した位置からの中間パノラマ画像を生成し、それに基づいて透視投影画像を出力することが出来る。
【００２１】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、前記空間位置算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線上に決定し、前記透視投影画像生成手段は、前記決定した前記対応点の仮想３次元空間上に於ける位置により構成されるフェイスを面とする３次元ポリゴンを構成し、前記パノラマ画像のフェイスのテクスチャを、前記３次元ポリゴンの対応するフェイスにテクスチャマッピングすることで前記３次元ポリゴンを生成し、前記３次元ポリゴンを前記受け付けた位置からの透視投影画像に変換することで前記透視投影画像を生成する、画像生成システムである。
【００２２】
このような構成とすることでも、第１の発明と同様に、ユーザが入力した位置からの中間パノラマ画像を生成し、それに基づいて透視投影画像を出力することが出来る。またこの場合には３次元データにすることが出来るので、データの扱いが容易となる。
【００２３】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、前記空間位置算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線同士を所定の補間パラメータに内分する位置を前記仮想３次元空間上の位置として決定し、前記透視投影画像生成手段は、前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、変換後の座標を前記透視投影画像上の位置に変換し、前記算出したパノラマ画像の対応点の透視投影画像上の位置を頂点とし、その頂点により構成されるフェイスに、前記パノラマ画像の対応するテクスチャをテクスチャマッピングすることにより、前記透視投影画像を生成する、画像生成システムである。
【００２４】
このような構成とすることでも、テクスチャマッピングを一度しか行わずに高速処理且つ高精度の透視投影画像を生成することが出来る。また対応点の仮想３次元空間上の位置を算出するにあたり、半直線が交点を持たない場合もあり得る。そのような場合に本発明のような処理を用いることが有効である。
【００２５】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、前記空間位置算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線同士を所定の補間パラメータに内分する位置を前記仮想３次元空間上の位置として決定し、前記透視投影画像生成手段は、前記決定した前記パノラマ画像に於ける対応点の仮想３次元空間上の位置を、前記受け付けた位置に於ける中間パノラマ画像の座標に変換し、前記パノラマ画像に於ける対応点によって構成されるフェイスのテクスチャを、このフェイスに対応する前記中間パノラマ画像に於ける前記変換した位置を頂点として構成するフェイスにテクスチャマッピングすることにより、前記中間パノラマ画像を生成し、前記透視投影画像の領域を任意の複数のフェイスに分割し、そのフェイスを構成する頂点が前記中間パノラマ画像に於いてどの位置にあるかを算出し、前記中間パノラマ画像に於ける前記算出した位置を頂点をして構成されるフェイスのテクスチャを、前記透視投影画像に於いて前記分割した対応するフェイスにテクスチャマッピングすることにより、前記透視投影画像を生成する、画像生成システムである。
【００２６】
このような構成とすることでも、第１の発明と同様に、ユーザが入力した位置からの中間パノラマ画像を生成し、それに基づいて透視投影画像を出力することが出来る。また対応点の仮想３次元空間上の位置を算出するにあたり、半直線が交点を持たない場合もあり得る。そのような場合に本発明のような処理を用いることが有効である。
【００２７】
第１の発明に於いて、透視投影画像を生成する他の方法としては、以下のような方法を用いる画像生成システムとしても良い。即ち、前記画像生成演算処理手段は、空間位置算出手段と透視投影画像生成手段とを有しており、前記空間位置算出手段は、前記パノラマ画像に共通な撮影対象物の指定された対応点の情報に基づいて、前記対応点の前記仮想３次元空間上の位置を、前記対応点に対応する撮影対象物の前記仮想３次元空間位置の存在可能範囲となる半直線同士を所定の補間パラメータに内分する位置を前記仮想３次元空間上の位置として決定し、前記透視投影画像生成手段は、前記決定した前記対応点の仮想３次元空間上に於ける位置により構成されるフェイスを面とする３次元ポリゴンを構成し、前記パノラマ画像のフェイスのテクスチャを、前記３次元ポリゴンの対応するフェイスにテクスチャマッピングすることで前記３次元ポリゴンを生成し、前記３次元ポリゴンを前記受け付けた位置からの透視投影画像に変換することで前記透視投影画像を生成する、画像生成システムである。
【００２８】
このような構成とすることでも、第１の発明と同様に、ユーザが入力した位置からの中間パノラマ画像を生成し、それに基づいて透視投影画像を出力することが出来る。またこの場合には３次元データにすることが出来るので、データの扱いが容易となる。更に、対応点の仮想３次元空間上の位置を算出するにあたり、半直線が交点を持たない場合もあり得る。そのような場合に本発明のような処理を用いることが有効である。
【００２９】
第１の発明に於いて、前記画像生成演算処理手段は、前記読み込んだ少なくとも２つのパノラマ画像から、前記パノラマ画像における歪みを補正したパノラマ画像を生成し、前記補正した少なくとも２つのパノラマ画像に基づいて、前記受け付けた位置における透視投影画像を生成する、画像生成システムとしても良い。
【００３０】
パノラマ画像は球面座標系や円柱座標系の画像であるため、透視投影画像と異なり、画像に歪みが生じてしまう。従って、このままの歪みのあるパノラマ画像に基づいて透視投影画像の生成処理をしてしまうと、テクスチャマッピングの際にも歪んだテクスチャのままテクスチャマッピングしてしまうこととなり、透視投影画像でも歪みがでてしまう。
【００３１】
そこでこのような問題を解決するために、上述の基本的な処理プロセスに加え、パノラマ画像受付手段に読み込ませたパノラマ画像について、そのまま画像生成演算処理手段で透視投影画像の生成処理をさせるのではなく、その前にパノラマ画像の歪みを補正する処理を行い、その補正処理を行ったパノラマ画像を用いて、上述の透視投影画像の生成処理を画像生成演算処理手段４で行っても良い。このようにすることで、歪みの少ない綺麗な透視投影画像を生成することが出来る。
【００３２】
上述の各発明に於いて、前記画像生成システムは、前記位置入力受付手段で受け付けた位置から各パノラマ画像の位置までの比率に応じて、テクスチャのテクスチャマッピングを行う、画像生成システムとすることも出来る。
【００３３】
このようにテクスチャマッピングの際に、ユーザが指定した位置で、パノラマ画像間を内分する点の比率に応じてテクスチャマッピングを行うことで、寄り自然な透視投影画像とすることが出来る。
【００３４】
上述の各発明に於いて、前記位置入力受付手段は、前記位置の情報を逐次受け付け、前記画像生成演算処理手段は、前記受け付けた位置の情報に基づいて、各々の位置に於ける透視投影画像を逐次生成し、前記表示処理手段は、前記生成した透視投影画像を出力する、画像生成システムとすることも出来る。
【００３５】
このように構成することで、逐次的に透視投影画像を生成、出力するので、あたかも動画のように連続的に出力することも出来、またユーザがインタラクティブに位置や見る方向を変えることが出来る。
【００３６】
上述の各発明に於いて、前記少なくとも２つのパノラマ画像によって構成されるモーフィング区間に於いて、前記位置入力受付手段が前記モーフィング区間内の位置を受け付けたときには、前記画像生成演算処理手段は、前記モーフィング区間に於ける透視投影画像を、前記モーフィング区間の両端点に位置するパノラマ画像に基づいて生成する、画像生成システムとすることも出来る。
【００３７】
複数のモーフィング区間がある場合には、本発明のように構成すると良い。
【００３８】
上述の各発明に於いて、前記画像生成演算処理手段は、前記モーフィング区間を切り替える際に、現在処理対象となるモーフィング区間での補間パラメータから、次に処理対象となるモーフィング区間の補間パラメータに変換した上で、前記パノラマ画像に基づいて前記透視投影画像を生成する、画像生成システムとすることも出来る。
【００３９】
複数のモーフィング区間がある場合には、本発明のように構成することで、モーフィング区間の切替の際に、より滑らかな透視投影画像を出力することが出来る。
【００４０】
上述の各発明に於いて、前記画像生成システムは、前記画像生成演算処理手段で生成した透視投影画像を、実写画像、ＣＧ画像、又は他の画像生成方法によって得られた画像と合成する処理を行い、合成した画像を前記表示処理手段で出力する、画像生成システムとすることも出来る。
【００４１】
このような合成する処理を設けることで、利用用途が拡大する。
【発明の効果】
【００４２】
本発明によって、一般のユーザが簡単に、仮想３次元空間内のユーザが指定した位置からの透視投影画像を生成、表示することが可能となる。これによって、従来のような３次元形状モデルを作成したり、シーンデータを作成する必要がない。また画像ベースの方法のように、不連続な移動ともならず、連続的且つ自由な移動を行うことを特別な機材等を用いずに出来る。
【００４３】
また元となる２視点のパノラマ画像からその中間の画像を生成することによって３次元画像を生成、表示するので、実写画像の表示品質であってもデータ量が極めて少なくて済む。
【発明を実施するための最良の形態】
【００４４】
本発明の画像生成システム１は、ＣＰＵなどの演算装置１１、ＲＡＭやハードディスクなどの記憶装置１２を有するコンピュータ端末（サーバも含む）上でその処理が実現される。このコンピュータ端末には、更にキーボードやマウスなどの入力装置１０、ディスプレイの表示装置１４、他のコンピュータ端末とインターネット等のネットワークを介してデータの送受信を行う通信装置１３を更に備えていると良い。
【００４５】
画像生成システム１を実現するプログラムは、当該コンピュータ端末のハードディスクに記録されており、それが所定の操作が行われることによってＲＡＭなどに読み込まれ、その機能（手段）を演算装置１１で実行することで、処理が行われる。またＪＡＶＡアプレットなどによりブラウザ上で本発明の画像生成システム１を実現する場合には、画像生成システム１を実現するプログラム（アプレット）が所定のサーバから、ユーザが利用する上述のようなハードウェア構成を有するコンピュータ端末にダウンロードされ記憶装置１２に記憶される。そしてそのプログラムが記憶装置１２から読み出され、演算装置１１で実行されることで、ブラウザ上で本発明の画像生成システム１を実現することも出来る。
【００４６】
これらの処理に用いる情報は、データベースやデータファイルなどの各種のファイル保存形式でＲＡＭやハードディスクなどの記憶装置１２に記憶され、その処理の際に適宜読み出されることで処理が行われる。また処理結果もＲＡＭやハードディスクなどの記憶装置１２に書き出され、適宜記憶される。従って演算した座標やテクスチャの情報は記憶装置１２に記憶され、それを適宜読み出すことによって、新たな座標の演算、テクスチャマッピングなどの演算処理を実行する。本発明に於ける各手段は、その機能が論理的に区別されているのみであって、物理上あるいは事実上は同一の領域を為していても良い。
【００４７】
画像生成システム１は、パノラマ画像受付手段２と位置入力受付手段３と画像生成演算処理手段４と表示処理手段５とを有している。
【００４８】
パノラマ画像受付手段２は、仮想３次元空間に於ける、少なくとも任意の２地点のパノラマ画像を読み込む手段である。パノラマ画像とは、ある位置を中心として３６０度の全周囲を撮像した画像であり、円柱座標系、球面座標系などがある。円柱座標系のパノラマ画像の概念図を図９左側に、球面座標系のパノラマ画像の概念図を図９右側に示す。
【００４９】
図９に示すように位置を原点とした場合、仮想３次元空間Ｐ（Ｐｘ，Ｐｙ，Ｐｚ）が円柱座標系のパノラマ画像に投影された場合、対応する円柱座標（θ，ｈ）は、
【数１】
2006350852.tif 000003
で表される。
【００５０】
また仮想３次元空間Ｐ（Ｐｘ，Ｐｙ，Ｐｚ）が球面座標系のパノラマ画像に投影された場合、対応する球面座標（θ，φ）は、
【数２】
2006350852.tif 000004
で表される。
【００５１】
尚、本明細書では、球面座標系のパノラマ画像を読み込む場合を説明するが、円柱座標系などの他の座標系を用いた場合であっても同様に処理を行うことが出来る。
【００５２】
位置入力受付手段３は、ユーザが透視投影画像を見たい位置の入力を受け付ける手段である。この位置は、画像生成システム１を実行するコンピュータ端末の入力装置１０から直接受け付けても良いし、ユーザが利用するコンピュータ端末からネットワークを介して、その入力された位置の情報を画像生成システム１を実行するコンピュータ端末の通信装置１３で受信して、それを位置入力受付手段３で受け付けても良い。前者の場合にはスタンドアローンで本発明の画像生成システム１を機能させる場合であり、後者の場合にはネットワークを用いて本発明の画像生成システム１を機能させる場合である。
【００５３】
画像生成演算処理手段４は、パノラマ画像受付手段２で受け付けた、少なくとも２地点のパノラマ画像と、位置入力受付手段３で受け付けた透視投影画像を見たい位置の情報とに基づいて、その位置からの透視投影画像を生成する手段である。
【００５４】
表示処理手段５は、画像生成演算処理手段４で生成した透視投影画像を当該コンピュータ端末の表示装置１４で表示させる手段である。またネットワークを用いて本発明の画像生成システム１を機能させる場合には、画像生成演算処理手段４で生成した透視投影画像を表示処理手段５が通信装置１３からネットワークを介して、ユーザが利用するコンピュータ端末に送信することで、当該ユーザが利用するコンピュータ端末でその透視投影画像を表示させる手段である。尚、本明細書では、表示装置１４での表示処理、プリンターなどにより印刷処理、ネットワークを用いて他のコンピュータ端末に送信する処理を総称して出力処理とする。
【実施例１】
【００５５】
まず本発明の画像生成システム１の基本的な実施態様の一例を図２及び図３のシステム構成図、図６のフローチャートを用いて説明する。
【００５６】
本実施例の画像生成演算処理手段４は、中間パノラマ画像生成手段６と透視投影画像生成手段７とを有する。
【００５７】
中間パノラマ画像生成手段６は、位置入力受付手段３で入力を受け付けた、ユーザが透視投影画像を見たい位置の情報と、仮想３次元空間に於ける少なくとも２以上のパノラマ画像とに基づいて、当該位置に於けるパノラマ画像（中間パノラマ画像Ｉｓ）を生成する手段である。
【００５８】
透視投影画像生成手段７は、中間パノラマ画像生成手段６で生成した中間パノラマ画像Ｉｓに基づいて、表示装置１４で表示する透視投影画像Ｉｖを生成する手段である。
【００５９】
次に本発明の処理プロセスの一例を図６のフローチャート、図２及び図３のシステム構成図を用いて説明する。
【００６０】
まず仮想３次元空間に於ける少なくとも２以上のパノラマ画像をパノラマ画像受付手段２に読み込ませる（Ｓ１００）。この際に読み込ませるパノラマ画像としては、円柱座標系のパノラマ画像でも良いし、球面座標系のパノラマでも良いし、それ以外の座標系のパノラマ画像であっても良い。本明細書では、球面座標系のパノラマ画像の場合を説明するが、それ以外の座標系でも同様に実施できる。
【００６１】
またパノラマ画像がない場合には、デジタルカメラ等で撮像した画像から、一般のステッチングソフトウェア等を用いることでパノラマ画像を生成し、それをパノラマ画像受付手段２に読み込ませても良い。
【００６２】
本実施例では球面座標系のパノラマ画像を説明するので、図９右側に示すように、視点を原点とする。上述したように、仮想３次元空間上のＰ（Ｐｘ，Ｐｙ，Ｐｚ）に対応する球面座標（θ，φ）は、
【数３】
2006350852.tif 000005
で表される。
【００６３】
２地点のパノラマ画像を設けた仮想３次元空間の概念図を図１０に示す。図１０では、地面からの高さが同じ２地点Ｐ０、Ｐ１があり、その２地点のパノラマ画像Ｉ０、Ｉ１がパノラマ画像受付手段２に読み込まれることとなる。
【００６４】
そしてユーザは、仮想３次元空間内の位置を入力装置１０を用いて入力することで、その仮想３次元空間に於ける位置の情報を位置入力受付手段３で受け付ける（Ｓ１１０）。この位置をＰｓとすると、画像生成演算処理手段４の中間パノラマ画像生成手段６は、パノラマ画像Ｉ０、Ｉ１に於ける点が、位置Ｐｓに於ける中間パノラマ画像Ｉｓのどこに位置するかを三角測量法に基づいて算出することで、中間パノラマ画像Ｉｓを生成する演算処理を行う（Ｓ１２０）。
【００６５】
中間パノラマ画像Ｉｓを生成するには、まずパノラマ画像Ｉ０とＩ１に共通な撮影対象物を指定して対応する点（対応点）として指定する。即ち、仮想３次元空間の撮影対象物の位置が、パノラマ画像Ｉ０とＩ１に於いてどこに位置するかを対応付ける。この共通な対応点は、自動的に見つけても良いし、入力装置１０などによって事前に指定されており、それがファイル形式で記憶装置１２に記憶されていても良い。この対応点の座標情報を対応点情報と呼ぶ。
【００６６】
ここで対応点情報に基づいて、パノラマ画像生成手段は、パノラマ画像Ｉ０とＩ１を対応点によって構成される多角形領域（これを「フェイス」と呼ぶ）に分割する。従って、フェイスの頂点は対応点となっている。図１１及び図１２にパノラマ画像Ｉ０とＩ１に於ける対応点の指定と、パノラマ画像Ｉ０とＩ１をフェイスに分割した状態を示す。これによって、パノラマ画像Ｉ０上のあるフェイスを構成する対応点は、パノラマ画像Ｉ１上のフェイスを構成するいずれかの対応点に対応付けられている。
【００６７】
パノラマ画像Ｉ０上のあるフェイスをＲ０、それに対応するパノラマ画像Ｉ１上のフェイスをＲ１とする。またＲ０、Ｒ１を構成する対応点について、中間パノラマ画像Ｉｓ上で対応付けられる点で構成されるフェイスをＲｓとする。従って中間パノラマ画像生成手段６は、Ｒ０、Ｒ１の対応点情報に基づいて、三角測量法を用いて以下のようにＲｓを算出する。
【００６８】
ここでＲ０を構成するフェイスの対応点の一つをＸ０、Ｒ１を構成するフェイスの対応点であってＸ０に対応した対応点をＸ１、Ｒｓを構成するフェイスの対応点であってＸ０に対応した対応点をＸｓとする。
【００６９】
本明細書では、パノラマ画像Ｉ０、Ｉ１が半径１の正規化球面座標系で表されている場合を説明しているので、点Ｘに対応する位置をそれぞれＸ０（θ０，φ０）、Ｘ１（θ１，φ１）である。
【００７０】
ここで、
【数４】
2006350852.tif 000006
とする。また図１０に示すように、位置Ｐ０、Ｐ１を含む面をｘｚ平面とし、Ｐ０を原点、ｚ軸上にＰ１が位置するように空間の座標系を定める。
【００７１】
そしてユーザにより指定された地点Ｐｓでの中間パノラマ画像Ｉｓに於けるＸｓの正規化球面座標を（θｓ，φｓ）とする。そうすると、ＰｓはＰ０、Ｐ１をｓ：１−ｓに内分する点なので、
【数５】
2006350852.tif 000007
となる。従って、この演算を中間パノラマ画像生成手段６が、Ｒ０、Ｒ１を構成する各対応点に関して行うと、中間パノラマ画像Ｉｓに於けるＲｓの対応点の座標が決定される。これをパノラマ画像Ｉ０、Ｉ１の全てのフェイスに関して行う。そうすると、パノラマ画像Ｉ０、Ｉ１の各フェイスを構成する各対応点の座標を、中間パノラマ画像Ｉｓの座標に変換することとなる。
【００７２】
そして中間パノラマ画像生成手段６は、中間パノラマ画像Ｉｓ上の各フェイスＲｓについて、パノラマ画像Ｉ０、Ｉ１に於いて、Ｒｓに対応するフェイスＲ０、Ｒ１をテクスチャとしてテクスチャマッピングすることにより、中間パノラマ画像Ｉｓを生成することが出来る。
【００７３】
中間パノラマ画像生成手段６で位置Ｐｓに於ける中間パノラマ画像Ｉｓを生成したら、透視投影画像生成手段７が、中間パノラマ画像Ｉｓに基づいて、当該位置Ｐｓに於ける透視投影画像Ｉｖを生成する処理を行う（Ｓ１３０）。
【００７４】
まず透視投影画像生成手段７は、透視投影画像Ｉｖの領域を任意の複数のフェイスＲｖに分割する。即ち、透視投影画像Ｉｖに於いて、フェイスＲｖを構成する頂点（ｘｖ，ｙｖ）を複数設ける。このフェイスＲｖは如何なる多角形であっても良く、Ｒ０、Ｒ１と同一形状であってもなくても良い。そして透視投影画像ＩｖのフェイスＲｖを構成する頂点の座標（ｘｖ，ｙｖ）が、中間パノラマ画像Ｉｓ上のどの座標（θｓ，φｓ）になるかを算出する。つまり透視投影画像ＩｖのフェイスＲｖを構成する頂点の座標と、中間パノラマ画像Ｉｓ上の座標とを対応付ける。これは、透視投影画像生成手段７が数６を演算することにより算出できる。
【数６】
2006350852.tif 000008
ここで、ｆｘ、ｆｙはラジアン単位で表した透視投影画像Ｉｖのｘ、ｙ方向画角、Ｒｏｔｘ（−α）、Ｒｏｔｘ（−β）はそれぞれ座標系をｘ軸、ｙ軸を中心に−α、−β回転させたときの点の座標変換を表す行列である。
【００７５】
透視投影画像生成手段７が数６を演算することによって、透視投影画像Ｉｖに於けるフェイスＲｖの各頂点（ｘｖ，ｙｖ）が、中間パノラマ画像Ｉｓに於いてどの位置にあるかが算出できる。従って、透視投影画像ＩｖのフェイスＲｖを中間パノラマ画像Ｉｓ上に変換することが出来る。このフェイスＲｖが中間パノラマ画像Ｉｓ上に変換されたフェイスをＲｓｖとする。
【００７６】
透視投影画像生成手段７は、中間パノラマ画像Ｉｓに於けるフェイスＲｓｖのテクスチャを、透視投影画像ＩｖのフェイスＲｖにテクスチャマッピングをする。これを透視投影画像Ｉｖに於ける各フェイスについて行うことで、中間パノラマ画像Ｉｓから透視投影画像Ｉｖが生成できる。図２６に、パノラマ画像Ｉ０及びＩ１に基づく、位置Ｐｓからの透視投影画像Ｉｖの一例を示す。
【００７７】
このようにして生成した透視投影画像Ｉｖを表示処理手段５が表示装置１４で表示させる（Ｓ１４０）。またネットワークを用いて本発明の画像生成システム１を機能させる場合には、画像生成演算処理手段４で生成した透視投影画像Ｉｖを、表示処理手段５が通信装置１３からネットワークを介して、ユーザが利用するコンピュータ端末に送信することで、当該ユーザが利用するコンピュータ端末でその透視投影画像Ｉｖを表示させる。
【００７８】
上述の処理をすればパノラマ画像Ｉ０、Ｉ１から任意の地点の透視投影画像Ｉｖを生成して表示することが出来る。しかしパノラマ画像は球面座標系や円柱座標系の画像であるため、透視投影画像と異なり、画像に歪みが生じている。例えば図１２に示すパノラマ画像の左上の天井部分については天井が丸くなり歪みが生じている（この部分を拡大した画像を図１３に示す）。従って、このままの歪みのあるパノラマ画像に基づいて画像生成演算処理手段４で透視投影画像の生成処理をさせてしまうと、テクスチャマッピングの際にも歪んだテクスチャのままテクスチャマッピングしてしまうこととなり、透視投影画像Ｉｖでも歪みがでてしまう。
【００７９】
そこでこのような問題を解決するために、上述の基本的な処理プロセスに加え、パノラマ画像受付手段２に読み込ませたパノラマ画像について、そのまま画像生成演算処理手段４で透視投影画像の生成処理をさせるのではなく、その前に画像生成演算処理手段４に歪み補正処理手段（図示せず）を設け、パノラマ画像受付手段２で受け付けたパノラマ画像について、歪みを補正する処理を行い、その補正処理を行ったパノラマ画像をパノラマ画像Ｉ０、Ｉ１として、上述の透視投影画像の生成処理を画像生成演算処理手段４で行っても良い。
【００８０】
歪み補正処理手段に於ける、歪みをなくす補正処理の概念図を図２７に示す。図２７（ａ）は歪みをなくす補正処理の概念図を示しており、図２７（ｂ）は球面座標の一部のパノラマ画像のピクセルを示した図である。
【００８１】
歪み補正処理手段は、歪みの補正処理前のパノラマ画像に於いて、上述のように複数のフェイス（図２７（ｂ）の三角で示される部分）に分割し、その各フェイスの各ピクセルＦに関して以下の処理を行う。
【００８２】
まずピクセルＦの位置に対応する球面パノラマ画像上のフェイスＡ上の位置Ｆ’を算出し、数７で表される半直線ｈの方向ベクトルを算出し、数２により、その方向に対応するパノラマ画像上の位置を算出し、その位置のカラー（色情報。ＲＧＢ値などの当該ピクセルの色を表す値）をピクセルＦのカラーとする処理を行う。尚、位置Ｆ’は、テクスチャマッピングを行ったときに位置Ｆがマッピングされる位置になる。
【数７】
2006350852.tif 000009
尚、点Ｆの座標を（θ０、φ０）とする。
【００８３】
このようにして算出された位置Ｆ’がパノラマ画像上に投影された場合の位置をＧとすると、ピクセルＦは、位置Ｆ’のカラーで位置Ｇに投影されるので、歪みが補正されることとなる。
【００８４】
このような歪みの補正処理を歪み補正処理手段が各フェイスの各ピクセルＦについて行うことで、パノラマ画像の補正処理を行うことが出来る。図１３についてこのような補正処理を行った後の画像を図１４に示す。
【００８５】
このように歪み補正処理後のパノラマ画像に基づいて、上述のパノラマ画像Ｉ０、Ｉ１として透視投影画像Ｉｖを生成するための基本画像とすることで、より綺麗な透視投影画像Ｉｖを生成することが出来る。
【００８６】
また、処理の基本となるのはパノラマ画像なので、フェイスに分割する際に、図１５に示すように、パノラマ画像を跨ぐフェイスとなる場合もある。この場合には図１５に示すようにテクスチャを反復させることで、そこを一つのテクスチャとして連続してあつかうことにより、テクスチャマッピングを容易に処理することも出来る。
【００８７】
即ち、パノラマ画像に球面座標系のパノラマ画像、円柱座標系のパノラマ画像等などの左右端が共通な投影方法のパノラマ画像を用いた場合、図１６に示すように同一の対応点によるフェイスは一意には決定されない。
【００８８】
その為、図１７に示すように、フェイス毎にフラグを持たせ（図１７ではフラグＲまたはフラグＬ）、フェイスにどのテクスチャを用いるかをそのフラグによって決定する。図１７でフラグＲは画像を反復させたとき、元の画像の右端よりも右にあることを意味する（図１５の破線部に於けるフェイス）。
【００８９】
或いはフェイス毎にフラグを持たせるのではなく、図１８に示すように、画像をｘ方向に所定数分割、例えば４分割し、フェイスの全ての対応点の位置が図１８（ａ）のように領域ＲＬ、ＲＲのいずれかの範囲内にあれば図１８（ｃ）のようにフェイスを決定し、対応点の位置が図１８（ｂ）のように一つでも領域ＲＬ、ＲＲの範囲外にあれば図１８（ｄ）のようにフェイスを決定する。つまり、頂点の位置情報から自動的にフェイスを決定することが出来る。
【００９０】
更に、各フェイスについてテクスチャマッピングを行う場合、例えばフェイスＲ０、Ｒ１をテクスチャとして、Ｒｓへテクスチャマッピングする場合に、Ｒ０、Ｒ１を所定の補間パラメータｓに応じて組み合わせることで、自然なテクスチャをＲｓに貼り付けるようにしても良い。
【００９１】
補間パラメータｓは、例えば図１０に於いて、Ｐ０からＰ１を１としたとき、Ｐ０からＰｓがｓ、ＰｓからＰ１が１−ｓとなる。そうすると、ＰｓはＰ０とＰ１をｓ：１−ｓに内分する点となるので、Ｐ０のフェイスＲ０をｓの比率で、Ｐ１のフェイスＲ１を１−ｓの比率で一つのテクスチャとして合成し、合成後のテクスチャをＲｓに貼り付ける。
【００９２】
以上のように、実施例１の処理を行うことで、仮想３次元空間の任意の地点から透視投影画像Ｉｖをファイルへ出力したり、表示装置１４で表示することが出来る。この際に、透視投影画像Ｉｖの生成に際しては、各演算を対応点でのみ行い、その対応点に対してテクスチャマッピングをしているに過ぎないので、極めて高速な処理が行え、リアルタイム表示も行える。
【実施例２】
【００９３】
次に実施例１の変形例として、パノラマ画像Ｉ０及びＩ１の対応点情報に基づいて中間パノラマ画像Ｉｓ上に於ける対応点を算出するが、中間パノラマ画像Ｉｓへのテクスチャマッピングを行わずに（即ち、中間パノラマ画像Ｉｓを生成せずに）透視投影画像Ｉｖを生成する場合を説明する。
【００９４】
本実施例に於ける画像生成演算処理手段４は、図４に示すように、対応点算出手段８と透視投影画像生成手段７とを有している。
【００９５】
対応点算出手段８は、位置入力受付手段３で入力を受け付けた、ユーザが透視投影画像を見たい位置の情報と、仮想３次元空間に於ける少なくとも２以上のパノラマ画像とに基づいて、当該位置に於けるパノラマ画像（中間パノラマ画像Ｉｓ）の対応点Ｘｓを算出し、それに基づいて、当該位置からの透視投影画像Ｉｖの対応点Ｘｖを算出する手段である。
【００９６】
透視投影画像生成手段７は、対応点算出手段８で算出した対応点Ｘｖに基づいて、透視投影画像Ｉｖを生成する手段である。
【００９７】
次に本実施例に於ける処理プロセスの一例を図７のフローチャート、図２及び図４のシステム構成図を用いて説明する。尚、Ｓ２００及びＳ２１０は実施例１のＳ１００及びＳ１１０と同様なので説明を省略する。
【００９８】
実施例１と同様にパノラマ画像Ｉ０の対応点によって構成されるフェイスをＲ０とし、フェイスＲ０がパノラマ画像Ｉ１上に於いて対応するフェイスをＲ１とする。従ってフェイスＲ０を構成する対応点Ｘ０は、フェイスＲ１を構成する対応点Ｘ１に対応付けられている。またフェイスＲ０及びＲ１が中間パノラマ画像Ｉｓに於いて対応するフェイスをＲｓ、透視投影画像Ｉｖに於いて対応するフェイスをＲｖとする。従って、フェイスＲ０、Ｒ１を構成する対応点Ｘ０、Ｘ１は、フェイスＲｓを構成する頂点Ｘｓ、フェイスＲｖを構成する頂点Ｘｖに対応付けられる。従って、対応点算出手段８は、Ｒｖを構成する頂点Ｘｖを座標を算出すればよい。
【００９９】
ユーザにより入力された仮想３次元空間に於ける位置Ｐｓの情報を位置入力受付手段３で受け付けると（Ｓ２１０）、画像生成演算処理手段４の対応点算出手段８は、Ｐｓに於ける中間パノラマ画像Ｉｓの対応点Ｘｓを算出する演算処理を行う（Ｓ２２０）。
【０１００】
このようにした場合、実施例１と同様に上述の数４、数５を用いることによって、対応点算出手段８はＸ０、Ｘ１に対応するＸｓをまず算出する。そしてこの演算を、対応点算出手段８は、パノラマ画像Ｉ０、Ｉ１の全てのフェイスに関して行う。そうすると、パノラマ画像Ｉ０、Ｉ１の各フェイスを構成する各対応点の座標を、中間パノラマ画像Ｉｓ上の頂点の座標Ｘｓに変換することが出来る。
【０１０１】
対応点算出手段８でＸ０、Ｘ１に基づいてＸｓを算出後、透視投影画像Ｉｖ上の頂点Ｘｖは、Ｘｓに対応しているので、次に、対応点算出手段８はこのＸｖを算出する。ここでＸｓの正規化球面座標を（θｓ，φｓ）、Ｘｖの透視投影画像を（ｘｖ，ｙｖ）とする。
【０１０２】
ここで正規化球面座標は実施例１と同じとし、透視投影画像は、視野の中心が正規化球面座標の（α、β）方向、ラジアン単位で表した透視投影画像Ｉｖのｘ、ｙ方向の画角をｆｘ、ｆｙとするとき、
【数８】
2006350852.tif 000010
に投影されるものである。この概念図を図１９に示す。
【０１０３】
まず対応点算出手段８は、視線方向（α、β）が球面パノラマ画像の中心（０，０）になるように座標変換を行う。この座標に於けるＸｓの対応点をＸｎ（θｎ，φｎ）とする。そうすると、
【数９】
2006350852.tif 000011
となる。ここでＲｏｔｘ（β）、Ｒｏｔｙ（α）はそれぞれｘ軸、ｙ軸周りに座標系をβ回転、α回転させたときの点の座標変換を表す行列とする。
【０１０４】
そうすると対応点算出手段８は、透視投影画像Ｉｖに於ける頂点Ｘｖ（ｘｖ，ｙｖ）について、中間パノラマ画像Ｉｓの頂点Ｘｓ（θｓ，φｓ）により、数１０を演算することで求められる。
【数１０】
2006350852.tif 000012
【０１０５】
これを透視投影画像Ｉｖの全てのフェイスに関して行う。そうすると、中間パノラマ画像Ｉｓの各フェイスＲｓを構成する各頂点Ｘｓの座標を、透視投影画像Ｉｖの各フェイスＲｖを構成する各頂点Ｘｖの座標に変換することが出来る。
【０１０６】
このようにして算出したＸｖに基づいて、透視投影画像Ｉｖの各フェイスについて、フェイスＲ０、Ｒ１をテクスチャとしてフェイスＲｖへテクスチャマッピングすることにより透視投影画像生成手段７は、透視投影画像Ｉｖを生成する（Ｓ２３０）。
【０１０７】
つまり、パノラマ画像Ｉ０、Ｉ１に於けるフェイスＲ０、Ｒ１を構成する対応点Ｘ０、Ｘ１が、透視投影画像Ｉｖを構成するフェイスＲｖの各頂点Ｘｖの座標に変換できているので、パノラマ画像Ｉ０、Ｉ１のフェイスＲ０、Ｒ１が、透視投影画像Ｉｖ上のフェイスＲｖに変換できることとなる。従って、フェイスＲ０、Ｒ１のテクスチャを透視投影画像Ｉｖ上のフェイスＲｖにテクスチャマッピングする。そしてこれを各フェイスについて行うことで、パノラマ画像Ｉ０、Ｉ１から透視投影画像Ｉｖが生成できる。
【０１０８】
このようにして生成した透視投影画像Ｉｖを表示処理手段５が表示装置１４で表示させる（Ｓ２４０）。またネットワークを用いて本発明の画像生成システム１を機能させている場合には、画像生成演算処理手段４で生成した透視投影画像Ｉｖを表示処理手段５が通信装置１３からネットワークを介して、ユーザが利用するコンピュータ端末に送信することで、当該ユーザが利用するコンピュータ端末でその透視投影画像Ｉｖを表示させる。図２６に、パノラマ画像Ｉ０及びＩ１に基づく、位置Ｐｓからの透視投影画像Ｉｖの一例を示す。
【０１０９】
尚、実施例１の歪みの補正処理や、補間パラメータｓに応じたテクスチャの貼り付けなどを同様に処理に加えることも出来る。
【０１１０】
実施例２の処理ではテクスチャマッピングが１回で済むため、ユーザが指定する位置が頻繁に変化する場合には、実施例１よりも高速に処理が可能である。またテクスチャマッピングが１回で済むことから、画質の劣化が少ない点も実施例１よりも更に効果的である。
【実施例３】
【０１１１】
次に実施例１の基本処理の変形例として、パノラマ画像Ｉ０、Ｉ１に於けるフェイスＲ０、Ｒ１の各頂点に対応する仮想３次元空間上の位置を算出することで、Ｒ０、Ｒ１の撮影対象物の空間位置を近似的に算出し、透視投影画像Ｉｖを生成する場合を説明する。
【０１１２】
本実施例の画像生成演算処理手段４は、空間位置算出手段９と透視投影画像生成手段７を有している。本実施例の空間位置算出手段９は、パノラマ画像Ｉ０、Ｉ１に於けるフェイスＲ０、Ｒ１の撮影対象物の仮想３次元空間に於ける空間位置を近似的に算出する手段である。
【０１１３】
また透視投影画像生成手段７は、空間位置算出手段９で算出した撮影対象物の空間位置に基づいて、以下のいずれかの方法により透視投影画像Ｉｖを生成する手段である。撮影対象物の空間位置から透視投影画像Ｉｖを生成する第１の方法としては、フェイスを２次元の透視投影画像Ｉｖ上に生成し、そのフェイスにテクスチャを貼り付ける方法、第２の方法としては、ユーザが指定した位置の球面上にフェイスを作成し、そこにテクスチャを貼り付け、実施例１と同様にテクスチャマッピングする方法、第３の方法としては、３次元ポリゴンを生成し、ポリゴンフェイス上にテクスチャを貼り付ける方法である。
【０１１４】
次の本実施例に於ける処理プロセスの一例を図８のフローチャート、図２及び図５のシステム構成図を用いて説明する。尚、Ｓ３００及びＳ３１０は実施例１のＳ１００及びＳ１１０と同様なので説明を省略する。
【０１１５】
ユーザにより入力された仮想３次元空間に於ける位置Ｐｓの情報を位置入力受付手段３で受け付けると（Ｓ３１０）、画像生成演算処理手段４の空間位置算出手段９は、パノラマ画像Ｉ０、Ｉ１に於けるフェイスＲ０、Ｒ１の撮影対象物の仮想３次元空間に於ける空間位置を近似的に算出する（Ｓ３２０）。
【０１１６】
実施例２と同様に、フェイスＲ０を構成する対応点をＸ０、フェイスＲ１を構成する対応点をＸ１、フェイスＲｓを構成する頂点をＸｓ、フェイスＲｖを構成する頂点をＸｖとする。そして撮影対象物のＸ０、Ｘ１、Ｘｓ、Ｘｖに対応する仮想３次元空間に於ける空間位置をＸとする。
【０１１７】
図２０に示すように、位置Ｐ０、Ｐ１に於いて、対応点Ｘ０、Ｘ１の位置によって決定されるＰの存在範囲を表す半直線をｌ０、ｌ１とする。そうするとｌ０、ｌ１は理想的には交わり、その交点が仮想３次元空間上の点Ｘの位置である。従って仮想３次元空間に於ける点Ｘの位置は、ｌ０とｌ１の交点として算出することが出来る。
【０１１８】
具体的には図２０に示すように、位置Ｐ０、Ｐ１を含む平面をｘｚ平面とし、Ｐ０を原点、ｚ軸上にＰ１（０，０，−１）が位置するように空間の座標系を定める。Ｘ０、Ｘ１の正規化球面座標系をそれぞれ（θ０，φ０）、（θ１，φ１）とすると、対応する半直線ｌ０、ｌ１の方向ベクトルはそれぞれ数１１で与えられる。
【数１１】
2006350852.tif 000013
【０１１９】
空間位置算出手段９は、点Ｘ（ｘ，ｙ，ｚ）の位置を、数１１を用いて数１２を演算することにより算出することが出来る。
【数１２】
2006350852.tif 000014
【０１２０】
このようにフェイスＲ０、Ｒ１の各対応点Ｘ０、Ｘ１に対応する仮想３次元空間上の位置を上述のように、半直線ｌ０、ｌ１の交点から算出することでＲ０、Ｒ１内の撮影対象物の仮想３次元空間に於ける空間位置を近似的に算出することが出来る。これをパノラマ画像Ｉ０、Ｉ１の全てのフェイスに関して行う。そうすると、パノラマ画像Ｉ０、Ｉ１に於ける全てのフェイスＲ０、Ｒ１を構成する対応点Ｘ０、Ｘ１の仮想３次元空間上に於ける位置が算出できる。
【０１２１】
空間位置算出手段９が仮想３次元空間に於ける点Ｘの位置を算出後、透視投影画像生成手段７は、この空間上の位置に基づいて、上述の３つのうちのいずれかの方法により透視投影画像Ｉｖを生成する（Ｓ３３０〜Ｓ３５０）。
【０１２２】
まず透視投影画像生成手段７が、上述の第１の方法により透視投影画像Ｉｖを生成する場合を説明する（Ｓ３３０）。この場合、仮想３次元空間上の点Ｘ（Ｘｘ，Ｘｙ，Ｘｚ）から、ユーザが指定した位置Ｐｓでの中間パノラマ画像Ｉｓの球面座標上で対応する位置Ｘｓ（θｓ，φｓ）への変換は、透視投影画像生成手段７が数１３を算出することにより得られる。
【数１３】
2006350852.tif 000015
尚、ここでユーザが指定した位置Ｐｓをこの仮想３次元空間上で（Ｐｓｘ，Ｐｓｙ，Ｐｓｚ）とする。そうすると、中間パノラマ画像Ｉｓ上の頂点Ｘｓから透視投影画像Ｉｖ上の頂点Ｘｖの位置への変換を実施例２と同様の方法で行うことが出来る。
【０１２３】
このようにして算出したＸｖに基づいて、実施例２と同様に、透視投影画像Ｉｖの各フェイスについて、フェイスＲ０、Ｒ１をテクスチャとしてフェイスＲｖへテクスチャマッピングすることにより透視投影画像生成手段７は、透視投影画像Ｉｖを生成する。
【０１２４】
つまり、パノラマ画像Ｉ０、Ｉ１に於けるフェイスＲ０、Ｒ１を構成する対応点Ｘ０、Ｘ１が、透視投影画像Ｉｖを構成するフェイスＲｖの各頂点Ｘｖの座標に変換できているので、パノラマ画像Ｉ０、Ｉ１のフェイスＲ０、Ｒ１が、透視投影画像Ｉｖ上のフェイスＲｖに変換できることとなる。従って、フェイスＲ０、Ｒ１のテクスチャを透視投影画像Ｉｖ上のフェイスＲｖにテクスチャマッピングする。そしてこれを各フェイスについて行うことで、パノラマ画像Ｉ０、Ｉ１から透視投影画像Ｉｖが生成できる。
【０１２５】
次に透視投影画像生成手段７が、上述の第２の方法により透視投影画像Ｉｖを生成する場合を説明する（Ｓ３４０）。
【０１２６】
この方法では、点Ｘをユーザが指定した位置Ｐｓでの中間パノラマ画像Ｉｓの球面座標上の対応する頂点Ｐｓｐ（Ｘｓｐ，Ｙｓｐ，Ｚｓｐ）に変換するので、透視投影画像生成手段７は数１４を演算する。
【数１４】
2006350852.tif 000016
【０１２７】
これをパノラマ画像Ｉ０、Ｉ１に於ける各フェイスを構成する対応点Ｘ０、Ｘ１について行うことで、中間パノラマ画像Ｉｓに於ける各フェイスを構成する頂点Ｘｓに変換できる。そうすると実施例１と同様に、そしてパノラマ画像Ｉ０、Ｉ１に於けるフェイスＲ０、Ｒ１のテクスチャを、中間パノラマ画像ＩｓのフェイスＲｓにテクスチャマッピングすることで、中間パノラマ画像Ｉｓを生成することが出来る。
【０１２８】
従って実施例１と同様に、透視投影画像Ｉｖに於けるフェイスＲｖの各頂点が、中間パノラマ画像Ｉｓに於いてどの位置にあるかを算出し、透視投影画像ＩｖのフェイスＲｖを中間パノラマ画像Ｉｓ上に変換する。そして、透視投影画像生成手段７は、中間パノラマ画像Ｉｓに於けるフェイスのテクスチャを透視投影画像ＩｖのフェイスＲｖにテクスチャマッピングすることで、中間パノラマ画像Ｉｓから透視投影画像Ｉｖを生成する。
【０１２９】
ここでは実施例１と同様の処理方法を説明したが、実施例２と同様の処理方法を用いることも出来る。つまり、パノラマ画像Ｉ０、Ｉ１に於ける各フェイスを構成する対応点Ｘ０、Ｘ１について、透視投影画像Ｉｖに於けるフェイスＲｖの各頂点Ｘｖとの対応関係を算出することで、フェイスＲｖを構成する頂点Ｘｖの座標を算出する。そしてこのように算出したＸｖに基づいて、透視投影画像Ｉｖの各フェイスについて、フェイスＲ０、Ｒ１をテクスチャとしてフェイスＲｖへテクスチャマッピングすることで、パノラマ画像Ｉ０、Ｉ１から透視投影画像Ｉｖを生成する。
【０１３０】
尚、仮想３次元空間上の点なので、４点以上は一般には同一平面上にないが、仮想３次元空間上の４点以上の面は、透視投影画像生成手段７が適宜分割してレンタリング処理を行うことで出来る。このレンタリング処理には、例えばOpenGLやDirectXなどのAPIを用いることが出来る。これによって自動的に分割してレンタリング処理を行うことが出来る。
【０１３１】
更に透視投影画像生成手段７が、上述の第３の方法により透視投影画像Ｉｖを生成する場合を説明する（Ｓ３５０）。
【０１３２】
この方法では、Ｓ３２０の処理に於いて、パノラマ画像Ｉ０、Ｉ１に於ける全てのフェイスＲ０、Ｒ１を構成する対応点Ｘ０、Ｘ１の仮想３次元空間上に於ける位置が算出されているので、そのフェイスを面とする３次元ポリゴンが構成出来る。そうすると、パノラマ画像Ｉ０、Ｉ１のフェイスＲ０、Ｒ１のテクスチャを、３次元ポリゴンの当該フェイスに対応する面にテクスチャマッピングする。
【０１３３】
そうすると透視投影画像生成手段７は、仮想３次元空間に於ける３次元ポリゴンが生成できるので、ユーザが指定した位置Ｐｓからの透視投影画像Ｉｖを生成する。３次元ポリゴンから透視投影画像Ｉｖを生成するのは、公知の３次元ポリゴンの処理方法を用いることが出来る。
【０１３４】
以上のように、透視投影画像生成手段７で生成した透視投影画像Ｉｖを表示処理手段５が表示装置１４で表示させる（Ｓ３６０）。またネットワークを用いて本発明の画像生成システム１を機能させている場合には、画像生成演算処理手段４で生成した透視投影画像Ｉｖを表示処理手段５が通信装置１３からネットワークを介して、ユーザが利用するコンピュータ端末に送信することで、当該ユーザが利用するコンピュータ端末でその透視投影画像Ｉｖを表示させる。図２６に、パノラマ画像Ｉ０及びＩ１に基づく、位置Ｐｓからの透視投影画像Ｉｖの一例を示す。
【０１３５】
尚、実施例１の歪みの補正処理や、補間パラメータｓに応じたテクスチャの貼り付けなどを同様に処理に加えることも出来る。
【０１３６】
本実施例の前提となる撮影対象物の空間位置の点Ｘを算出する際には、図２０に示すように、位置Ｐ０、Ｐ１からの半直線ｌ０、ｌ１の交点を算出することによって処理している。しかし、実際にはパノラマ画像Ｉ０、Ｉ１の歪みやステッチング時の誤差などにより、図２１に示すように、半直線ｌ０、ｌ１が点Ｘで必ずしも交わらない。
【０１３７】
この場合には、半直線ｌ０上で最も半直線ｌ１に近い地点をＱ０、ｌ１上で最も半直線ｌ０に近い地点をＱ１とし、線分Ｑ０Ｑ１を所定の補間パラメータｓによって、ｓ：１−ｓに内分する点を点Ｘであるとする演算処理を空間位置算出手段９は行う。
【０１３８】
Ｑ０，Ｑ１の位置をそれぞれＱ０（ｑ０ｘ，ｑ０ｙ，ｑ０ｚ），Ｑ１（ｑ１ｘ，ｑ１ｙ，ｑ１ｚ）とすると、これらは上述の数１１を用いることによって、数１５のように表される。従って、空間位置算出手段９は、数１５を演算することによって、Ｑ０，Ｑ１の位置を算出する。
【数１５】
2006350852.tif 000017
【０１３９】
以上のように、半直線ｌ０、ｌ１が点Ｘで必ずしも交わらない場合であっても、点Ｘを決定すると、ｓ＝０、ｓ＝１の時にそれぞれＸｓ＝Ｘ０、Ｘｓ＝Ｘ１となり、透視投影画像Ｉｖの歪みを押させることが出来る。また線分Ｑ０Ｑ１の長さは、この条件を満たす中で最小であり、実際の撮影対象物の位置に対する好ましい近似となる。またＱ０、Ｑ１は最初に一度演算しておけば良く、補間処理の都度に演算する必要もない。
【０１４０】
尚、歪みが非常に大きいときや特に位置Ｐ０、Ｐ１を結ぶ直線近傍に撮影対象物が存在する場合には、Ｘが正しく演算できない場合がある。或いは特殊な表現を行うために故意に透視投影画像Ｉｖを歪ませたい場合もある。このような場合には、Ｑ０及びＱ１、或いはＸについて、ユーザからの入力を可能とする機能を備えておいても良い。この場合には、ユーザが入力装置１０から入力したＱ０、Ｑ１、Ｘの情報を透視投影画像生成手段７が受け付け、それに基づいて演算処理を行うこととなる。また、Ｑ０、Ｑ１、Ｘの情報は所定のファイル形式で記憶装置１２に予め記憶しておき、それが読み出されることで、演算装置１１で演算処理されても良い。
【実施例４】
【０１４１】
実施例１から実施例３に於ける、少なくとも２地点のパノラマ画像Ｉ０、Ｉ１に基づいて、ユーザが連続的に位置Ｐｓを逐次入力し、位置Ｐｓからの透視投影画像Ｉｖを生成する処理を連続的に逐次行うことによって、透視投影画像Ｉｖを連続的に生成し、あたかも仮想３次元空間を移動しているかのようになる。
【０１４２】
この場合には、図２２に示すように、仮想３次元空間に於けるパノラマ画像を複数用意しておき、そのパノラマ画像間の対応点情報を複数用意しておく。図２２では仮想３次元空間の位置Ｐ０、Ｐ１、Ｐ２、Ｐ３からのパノラマ画像Ｉ０、Ｉ１、Ｉ２、Ｉ３を設けておき、Ｉ０とＩ１、Ｉ１とＩ２、Ｉ２とＩ３の間で各々対応点の情報を設定しておく。この対応点情報をＴ０、Ｔ１、Ｔ２とする。
【０１４３】
このＴ０、Ｔ１、Ｔ２の対応点情報に基づいて、上述した実施例１から実施例３のいずれかの方法により、画像生成演算処理手段４が連続的に透視投影画像Ｉｖを生成する。即ち、ユーザが入力装置１０から逐次、仮想３次元空間に於ける位置を入力することによって、その位置を位置入力受付手段３で受け付け、画像生成演算処理手段４が透視投影画像Ｉｖを逐次生成し、表示処理手段５が表示装置１４により表示する。
【０１４４】
また図２３に示すように、位置Ｐ０からＰ３までの仮想３次元空間に於ける透視投影画像Ｉｖを生成する場合には、まずモーフィング区間Ｍ０に対して実施例１から実施例３のいずれか方法で透視投影画像Ｉｖ０を生成し、位置がＰ１に到達した場合にはモーフィング区間Ｍ１に対して実施例１から実施例３のいずれかの方法で透視投影画像Ｉｖ１を生成し、位置がＰ２に到達した場合にはモーフィング区間Ｍ２に対して実施例１から実施例３のいずれかの方法で透視投影画像Ｉｖ２を生成する。位置の指定は、ユーザが入力装置１０から逐次入力を行い、それを位置入力受付手段３で受け付けることであっても良いし、予め連続的な位置の移動の情報を位置入力受付手段３で受け付けておくことであっても良い。
【０１４５】
尚、モーフィング区間とは、同一のパノラマ画像Ｉ０、Ｉ１、対応点情報Ｔ０などによって実施例１から実施例３のいずれかの方法により連続的に透視投影画像Ｉｖを生成する区間を示す。
【０１４６】
ここでモーフィング区間を切り替える際に、視点位置と視線方向が不連続に変化する可能性がある。そこで現在のモーフィング区間での補間パラメータから、新しいモーフィング区間での補間パラメータと視線方向に変換する処理を設ける。例えば図２４に示すように、モーフィング区間Ｍ０、Ｍ１毎の空間座標をローカル座標（相対座標）とし、仮想３次元空間に於いてワールド座標（絶対座標）を設ける。ワールド座標系で見た位置Ｐ０の位置と位置Ｐ０から位置Ｐ１方向への単位ベクトルなど、ワールド座標とローカル座標との変換パラメータを情報として予め与えておく。そしてモーフィング区間移行前のローカル座標での視点位置と視線方向をワールド座標に変換し、更にモーフィング区間移行後のローカル座標での視点位置と視線方向に変換する。このようにすることでモーフィング区間の切替が滑らかに変化する。
【０１４７】
例えば図２５に示すように、モーフィング区間Ｍ０内で連続的に透視投影画像を生成、表示し、モーフィング区間Ｍ０からモーフィング区間Ｍ１へ切り替える際には、モーフィング区間の連続具合やワールド座標とローカル座標との変換用パラメータをひとまとまりのシーンデータとして予め用意された情報を用いてパラメータ変換を行い、隣接区間Ｍ０、Ｍ１に於いて連続的に透視投影画像を生成、表示する。そして次のモーフィング区間Ｍ１に位置した場合に、モーフィング区間Ｍ１内で連続的に透視投影画像を生成、表示する処理を行う。
【０１４８】
ワールド座標系を設け、各ローカル座標系との対応関係を設定すると、複数のモーフィング区間で共通の対応点が存在するときに、あるモーフィング区間で設定した対応点データを元に、他方のモーフィング区間での対応点を自動的に取得することが出来る。即ち、あるモーフィング区間で設定した対応点からそのモーフィング区間のローカル座標系での空間上の点の位置を算出し、それをワールド座標系に変換する演算を行い、他方のモーフィング区間のローカル座標系での空間上の点の位置に変換し、その空間上の点の位置に対応する各パノラマ画像上の位置に変換することによって、対応点を自動的に取得することが出来る。この処理を設けることによって、対応点の取得に対する作業量を大幅に削減することが出来る。
【０１４９】
尚、実写画像、ＣＧ画像、或いは他の画像生成方法によって得られた画像を読み込むことで、本発明の画像生成システム１によって得られた透視投影画像Ｉｖを背景とし、読み込んだ画像を前景として画像合成の処理を行う手段を設けても良い。他の画像生成方法としては、例えば特開２００２−３２４２４９号を用いることも出来る。
【０１５０】
加えて、本発明の更なる応用例として、左目、右目のそれぞれの視点から見た透視投影画像Ｉｖを生成し、それを３次元対応表示装置１４（例えばシャープ株式会社製液晶モニタ  ＬＬ−１５１Ｄなど）で表示することによって、立体表示することも出来る。この場合、右目、左目双方について、パノラマ画像からの透視投影画像Ｉｖｌ、Ｉｖｒを生成し、表示することで行える。尚、表示装置１４としては液晶モニタのみならず、ゴーグル型の表示装置１４であっても良いし、これに限定されない。
【０１５１】
パノラマ画像Ｉ０、Ｉ１から左目用の透視投影画像Ｉｖｌ、右目用の透視投影画像Ｉｖｒを生成して３次元表示を行うことで、従来の方法と異なり、左目、右目それぞれの視点での独自の画像が必要とはならない。また視点位置や視線方向を任意に調節できるため、視差を自由に調節することが出来、表示装置１４やユーザの年齢、表示目的などに併せて視差を大きくしてより立体的に見える表示を行ったり、視差を小さくして目の疲れを軽減させるような調節も行える。
【産業上の利用可能性】
【０１５２】
上述した本発明によって、一般のユーザが簡単に仮想３次元空間の任意位置からの透視投影画像を生成、表示することが可能となる。これによって、従来のような３次元形状モデルを作成したり、シーンデータを作成する必要がない。また位置を移動する場合にも、画像ベースの方法のように、不連続な移動ともならず、連続的且つ自由な移動を行うことを特別な機材等を用いずに出来る。
【０１５３】
また元となる２つのパノラマ画像からその中間の画像を生成することによって透視投影画像を生成、表示するので、実写画像の表示品質であってもデータ量が極めて少なくて済む。
【図面の簡単な説明】
【０１５４】
【図１】画像生成システムを機能させるコンピュータ端末のハードウェア構成の一例を示した図である。
【図２】画像生成システムの機能を示したシステム構成図である。
【図３】実施例１の画像生成演算処理手段のシステムの機能を示したシステム構成図である。
【図４】実施例２の画像生成演算処理手段のシステムの機能を示したシステム構成図である。
【図５】実施例３の画像生成演算処理手段のシステムの機能を示したシステム構成図である。
【図６】実施例１の処理プロセスの一例を示したフローチャートである。
【図７】実施例２の処理プロセスの一例を示したフローチャートである。
【図８】実施例３の処理プロセスの一例を示したフローチャートである。
【図９】パノラマ画像の概念図である。
【図１０】２地点のパノラマ画像を設けた仮想３次元空間の概念図である。
【図１１】パノラマ画像Ｉ０に於ける対応点の指定と、それによるフェイスへ分割した状態を示す図である。
【図１２】パノラマ画像Ｉ１に於ける対応点の指定と、それによるフェイスへ分割した状態を示す図である。
【図１３】補正を行わない場合に読み込ませるパノラマ画像Ｉ０の一例の一部分である。
【図１４】補正を行う場合の読み込ませるパノラマ画像Ｉ０の一例の一部分である。
【図１５】中間パノラマ画像Ｉｓをフェイスに分割する際に、フェイスが中間パノラマ画像Ｉｓを跨ぐ場合の概念図である。
【図１６】対応点によるフェイスが一意に決定されないことを示した概念図である。
【図１７】対応点にフラグを持たせた場合の概念図である。
【図１８】画像をｘ方向に４分割することで頂点の位置情報から自動的にフェイスを決定する場合の概念図である。
【図１９】視線方向の変換を示す概念図である。
【図２０】実施例３に於いて、点Ｘの仮想３次元空間に於ける点Ｘの位置を算出する処理の概念図である。
【図２１】実施例３に於いて、パノラマ画像Ｉ０、Ｉ１の歪みやステッチング時の誤差などにより点Ｘの位置を交点として算出することが出来ない場合の算出処理の概念図である。
【図２２】実施例４に於いて、パノラマ画像と対応点情報の概念を示す図である。
【図２３】実施例４に於いて、モーフィング区間と位置との関係の概念を示す図である。
【図２４】実施例４に於いて、モーフィング区間Ｍ０、Ｍ１毎の空間座標をローカル座標とし、仮想３次元空間に於いてワールド座標を設けた場合の概念図である。
【図２５】実施例４に於いて、モーフィング区間の連続具合やワールド座標とローカル座標との変換用パラメータをひとまとまりのシーンデータとして予め用意しておき、モーフィング区間の切替になったらそのシーンデータを再生し、シーンデータが終了後、新たなモーフィング区間で透視投影画像を生成する場合の概念図である。
【図２６】パノラマ画像Ｉ０及びＩ１に基づく、位置Ｐｓからの透視投影画像Ｉｖの一例を示す。
【図２７】歪みの補正処理の概念図である。
【符号の説明】
【０１５５】
１：画像生成システム
２：パノラマ画像受付手段
３：位置入力受付手段
４：画像生成演算処理手段
５：表示処理手段
６：中間パノラマ画像生成手段
７：透視投影画像生成手段
８：対応点算出手段
９：空間位置算出手段
１０：入力装置
１１：演算装置
１２：記憶装置
１３：通信装置
１４：表示装置
【図１】
2006350852.tif 000018
【図２】
2006350852.tif 000019
【図３】
2006350852.tif 000020
【図４】
2006350852.tif 000021
【図５】
2006350852.tif 000022
【図６】
2006350852.tif 000023
【図７】
2006350852.tif 000024
【図８】
2006350852.tif 000025
【図９】
2006350852.tif 000026
【図１０】
2006350852.tif 000027
【図１１】
2006350852.tif 000028
【図１２】
2006350852.tif 000029
【図１３】
2006350852.tif 000030
【図１４】
2006350852.tif 000031
【図１５】
2006350852.tif 000032
【図１６】
2006350852.tif 000033
【図１７】
2006350852.tif 000034
【図１８】
2006350852.tif 000035
【図１９】
2006350852.tif 000036
【図２０】
2006350852.tif 000037
【図２１】
2006350852.tif 000038
【図２２】
2006350852.tif 000039
【図２３】
2006350852.tif 000040
【図２４】
2006350852.tif 000041
【図２５】
2006350852.tif 000042
【図２６】
2006350852.tif 000043
【図２７】
2006350852.tif 000044