(57)【要約】【課題】  平行投影を利用した画像の立体視を実現する。【解決手段】  右眼用画像、左眼用画像をそれぞれ右眼、左眼で視認することで立体視が可能なディスプレイを備える端末３００を用意する。背景となる地図データ２１１は、３次元モデルを平行投影した結果を全領域について画像データとして生成する。この際、右眼用／左眼用で視差を与えた投影条件とすることにより、全領域について右眼用／左眼用平行投影データを用意することができる。こうして生成された左右眼用画像は、基準線が矢印ＦＡＬ，ＦＡＲのように異なる方向のベクトルとなる。従って、ユーザが地図上で矢印ＳＲ方向へのスクロールを指示した際には、これを左右眼用画像それぞれのスクロール方向に補正し、各画像内の個別の方向でスクロールを実行する。  こうすることにより、適切なスクロールを行うことが可能な状態で、平行投影を利用した立体視を実現することができる。【選択図】  図６
2014160969.tif 000002
【特許請求の範囲】
【請求項１】
画像を立体視させる立体視画像出力システムであって、
視差を与えた左眼用画像および右眼用画像を、それぞれ左眼および右眼で視認可能に出力することで立体視を実現する立体視出力部と、
左右眼の視差を生じさせるようそれぞれ設定された所定の投影角度だけ鉛直方向から傾けた斜め方向からの平行投影によって立体視の対象となる３次元モデルを平面上に投影した２次元描画データとしての左眼用平行投影データおよび右眼用平行投影データを格納する画像データベース記憶部と、
前記左眼用平行投影データおよび右眼用平行投影データに基づき、指定された出力範囲の画像を出力するための視差を与えた前記左眼用画像および右眼用画像を、前記立体視出力部に出力させる出力制御部とを備え、
前記出力制御部は、前記出力範囲が移動する際には、前記左眼用画像および右眼用画像の移動方向を個別に決定し、該移動方向に応じて前記左眼用平行投影データおよび右眼用平行投影データを読み出し、前記左眼用画像および右眼用画像を出力する立体視画像出力システム。
【請求項２】
請求項１記載の立体視画像出力システムであって、
前記出力制御部は、前記平行投影のパラメータに基づいて前記左眼用画像および右眼用画像の移動方向を決定する立体視画像出力システム。
【請求項３】
請求項１または２記載の立体視画像出力システムであって、
前記画像データ記憶部には、さらに２次元的なオブジェクトを該画像中に出力するための２次元オブジェクトデータを格納しており、
前記出力制御部は、前記２次元オブジェクトデータについては、所定の出力位置に対して左右にずらすことによって視差を与え前記左眼用画像および右眼用画像を出力する立体視画像出力システム。
【請求項４】
視差を与えた左眼用画像および右眼用画像を、それぞれ左眼および右眼で視認可能に出力することで立体視画像を出力させる立体視画像出力システム用の画像データを生成する画像データ生成装置であって、
立体視の対象となる３次元モデル、および前記立体視画像内に２次元的なオブジェクトを出力するための２次元オブジェクトデータと、を格納する３Ｄ画像データベース記憶部と、
所定サイズのメッシュ単位で、左右眼の視差を生じさせるようそれぞれ設定された所定の投影角度だけ鉛直方向から傾けた斜め方向からの平行投影によって、前記３次元モデルを平面上に投影した２次元描画データとしての左眼用平行投影データおよび右眼用平行投影データを生成する平行投影部と、
前記２次元オブジェクトデータについて、所定の出力位置に対して左右にずらすことによって視差を与え左眼用２次元オブジェクト画像データと、右眼用２次元オブジェクト画像データとを生成する２次元オブジェクト画像データ生成部と、
生成された左眼用２次元オブジェクト画像データおよび右眼用２次元オブジェクト画像データを、前記左眼用平行投影データおよび右眼用平行投影データに対して、それぞれの視差を考慮した位置に重畳して、左眼用画像データおよび右眼用画像データを生成する重畳処理部とを備える立体視画像出力システム。
【請求項５】
視差を与えた左眼用画像および右眼用画像を、それぞれ左眼および右眼で視認可能に出力することで立体視を実現する立体視出力部を用いて、コンピュータによって画像を立体視させる立体視画像出力方法であって、
前記コンピュータが、左右眼の視差を生じさせるようそれぞれ設定された所定の投影角度だけ鉛直方向から傾けた斜め方向からの平行投影によって立体視の対象となる３次元モデルを平面上に投影した２次元描画データとしての左眼用平行投影データおよび右眼用平行投影データを格納する画像データベース記憶部からデータを読み出すステップと、
前記コンピュータが、前記左眼用平行投影データおよび右眼用平行投影データに基づき、指定された出力範囲の画像を出力するための視差を与えた前記左眼用画像および右眼用画像を、前記立体視出力部に出力させる出力制御ステップとを備え、
前記出力制御ステップは、前記出力範囲が移動する際には、前記左眼用画像および右眼用画像の移動方向を個別に決定し、該移動方向に応じて前記左眼用平行投影データおよび右眼用平行投影データを読み出し、前記左眼用画像および右眼用画像を出力する立体視画像出力方法。
【請求項６】
視差を与えた左眼用画像および右眼用画像を、それぞれ左眼および右眼で視認可能に出力することで立体視を実現する立体視出力部を用いて、画像を立体視させるためのコンピュータプログラムあって、
左右眼の視差を生じさせるようそれぞれ設定された所定の投影角度だけ鉛直方向から傾けた斜め方向からの平行投影によって立体視の対象となる３次元モデルを平面上に投影した２次元描画データとしての左眼用平行投影データおよび右眼用平行投影データを格納する画像データベース記憶部からデータを読み出す機能と、
前記左眼用平行投影データおよび右眼用平行投影データに基づき、指定された出力範囲の画像を出力するための視差を与えた前記左眼用画像および右眼用画像を、前記立体視出力部に出力させる機能と、
前記出力範囲が移動する際には、前記左眼用画像および右眼用画像の移動方向を個別に決定し、該移動方向に応じて前記左眼用平行投影データおよび右眼用平行投影データを読み出し、前記左眼用画像および右眼用画像を出力する機能とをコンピュータに実現させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、視差を与えて右眼用画像、左眼用画像を出力することによって立体視を行う立体視画像出力システムに関する。
【背景技術】
【０００２】
ナビゲーション装置やコンピュータの画面等に用いられる電子地図では、建物などの地物を３次元的に表現した３次元地図が用いられることがある。３次元地図は、通常、３次元モデルを透視投影などで３次元的に描くことによって表示される。
ここで、３次元地図には、多数の地物が含まれ、３次元モデルの数も多量となるため、３次元地図の描画処理にかかる負荷は非常に高くなることがある。かかる負荷を軽減するための方法として、特許文献１は、３次元モデルを予め平行投影して得られた投影画像を２次元画像のデータベースとして構築しておき、これを用いて３次元地図を表示する技術を開示している。
【０００３】
一方、近年、視差を与えて右眼用画像、左眼用画像を表示することによる立体視の技術が普及しており、かかる立体視を実現するためのディスプレイも広く活用されつつある。
かかる立体視に関する技術として特許文献２、３がある。特許文献２は、透視投影で得られた画像に対しパースペクティブを無くすための補正処理を施した上で立体視を実現する技術を開示している。特許文献３は、アイコンなどの２次元オブジェクトを左右にずらすことによって視差を与え立体視を実現する技術を開示している。
これらの立体視の技術を適用することによって、３次元地図の奥行き感をよりリアルに実感でき、３次元地図の有用性を向上させることができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１５０８２３号公報
【特許文献２】特開２００９−２１１７１８号公報
【特許文献３】特開２０１２−１７４２３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、立体視を実現するためには、３次元地図を表示する視点位置に、左眼用および右眼用の仮想的なカメラを設置し、それぞれのカメラで透視投影を行って左眼用画像、右眼用画像を生成する必要があり、通常の透視投影の２倍の処理負荷を要することになる。３次元地図は、ナビゲーション装置や携帯端末など処理能力の低い端末で表示されることもあるため、描画のための処理負荷の増大は看過できない課題である。
処理負荷を軽減するため、平行投影で得られた画像を用いて立体視を実現することが考えられるが、３次元モデルを投影して得られた画像は、２次元オブジェクトとは異なり、単に左右にずらすだけでは立体視を実現することはできない。また、地図である以上、地図表示の中心点を移動させ、地図をスクロールした場合でも、左眼用画像、右眼用画像が融像し、立体視を実現できるようにする必要がある。
かかる課題は、電子的に地図を表示する場合だけでなく、立体視できるように地図の任意の場所を切り出して左眼用画像、右眼用画像を印刷する場合にも同様に生じる。また、地図のみならずコンピュータグラフィックス等で生成された架空空間、機械・建築物その他の設計モデルなど、種々の３次元モデルについて立体視可能な画像を出力する場合に共通の課題である。本発明は、これらの課題に鑑み、平行投影を利用した画像の立体視を実現することを目的とする。
【課題を解決するための手段】
【０００６】
本発明は、
画像を立体視させる立体視画像出力システムであって、
視差を与えた左眼用画像および右眼用画像を、それぞれ左眼および右眼で視認可能に出力することで立体視を実現する立体視出力部と、
左右眼の視差を生じさせるようそれぞれ設定された所定の投影角度だけ鉛直方向から傾けた斜め方向からの平行投影によって立体視の対象となる３次元モデルを平面上に投影した２次元描画データとしての左眼用平行投影データおよび右眼用平行投影データを格納する画像データベース記憶部と、
前記左眼用平行投影データおよび右眼用平行投影データに基づき、指定された出力範囲の画像を出力するための視差を与えた前記左眼用画像および右眼用画像を、前記立体視出力部に出力させる出力制御部とを備え、
前記出力制御部は、前記出力範囲が移動する際には、前記左眼用画像および右眼用画像の移動方向を個別に決定し、該移動方向に応じて前記左眼用平行投影データおよび右眼用平行投影データを読み出し、前記左眼用画像および右眼用画像を出力する立体視画像出力システムとして構成することができる。
【０００７】
本発明によれば、左右眼に視差を持たせるように投影角度を個別に設定することによって、平行投影においても立体視を実現することができる。即ち、平行投影では、立体感を持たせて投影するため、鉛直方向から斜め方向に傾けた方向に投影する。この投影方向は、鉛直方向からの第１の基準方向への傾きを表すピッチ角と、鉛直方向および第１の基準方向を含む面に対する傾きを表すヨー角の組み合わせで表すことができる。そして、左右眼で、ヨー角を正負逆転させることによって、両眼に視差を持たせることができるのである。平行投影では、視点の概念がなく、左右眼に相当する仮想的なカメラ位置は設定し得ないが、上述の通り、投影方向を左右眼で異なる方向とすることにより、立体視を実現することが可能となるのである。
平行投影では、固有の視点が存在しないため、全領域について予め投影画像、即ち平行投影データを生成することができる。立体視を実現する場合も、左右眼の画像は、それぞれ平行投影で生成されるのであるから、こうした利点は損なわれない。従って、本発明によれば、予め用意された左右眼用の平行投影データを適宜、読み出して出力するだけで、軽い負荷により立体視を実現できる利点がある。
【０００８】
本発明では、このように平行投影で立体視を実現しつつ、さらに出力範囲が移動する際に、左眼用画像および右眼用画像の移動方向を個別に決定する。本発明では、平行投影の投影方向が左右眼で異なるため、左眼用画像内における座標値と、右眼用画像内における座標値とが一致する場合であっても、その座標値は、必ずしも同一の地点を表しているとは限らない。従って、画像の出力範囲を移動させる場合、左眼用画像および右眼用画像の両者を同一方向、同一の移動量で移動させていくと、左右眼で異なる出力範囲を出力してしまう現象が生じる。本発明は、平行投影で生成された左右眼画像のこうした特徴を踏まえ、左眼用画像、右眼用画像で個別に移動方向を決定することにより、両画像間の出力範囲のずれの発生を抑制でき、立体視を継続させることができる。
【０００９】
本発明において立体視の対象となる３次元モデルとしては、地図、コンピュータグラフィックス等で生成された架空空間、機械・建築物その他の設計モデルなど、種々の３次元モデルが考えられる。特に地図を立体視する場合の３次元モデルには、人工物や自然物などの地物の形状を３次元的に表したモデルが該当する。
また、本発明の立体視出力部としては、例えば、左眼用画像、右眼用画像をそれぞれ左右眼で個別に認識できるように表示する立体視ディスプレイを用いることができる。レンチキュラーと呼ばれる立体視用のレンズの背後に置くことによって立体視が実現されるように左眼用画像、右眼用画像を配置して印刷する印刷装置を用いてもよい。単に左眼用画像、右眼用画像を左右に配列して印刷する印刷装置であってもよい。  
【００１０】
本発明において、左眼用画像、右眼用画像の移動方向は、種々の方法で決定することができ、例えば、
前記出力制御部は、前記平行投影のパラメータに基づいて前記左眼用画像および右眼用画像の移動方向を決定するものとしてもよい。
出力範囲を移動させるときの左眼用画像、右眼用画像の移動方向のずれは、両画像において平行投影のパラメータが異なることによって生じるものである。従って、平行投影のパラメータを考慮すれば、出力範囲を左眼用画像、右眼用画像で一致させるための移動方向を精度良く決定することができる。移動方向は、例えば、平行投影のパラメータを踏まえて、鉛直下方に見たときの平面を表す二次元の座標軸が、左眼用画像、右眼用画像でどのような座標軸に変換されるかを求め、この座標変換に基づいて算出する方法をとることができる。移動方向は、出力範囲を移動させるごとに計算するものとしてもよいが、平行投影では、全領域で移動方向も共通となるから、予め左眼用、右眼用の移動方向を求めておいてもよい。
【００１１】
本発明において、
前記画像データ記憶部には、さらに２次元的なオブジェクトを該画像中に出力するための２次元オブジェクトデータを格納しており、
前記出力制御部は、前記２次元オブジェクトデータについては、所定の出力位置に対して左右にずらすことによって視差を与え前記左眼用画像および右眼用画像を出力するものとしてもよい。
２次元的なオブジェクトとしては、地物その他の３次元モデルの名称等を示す文字や、種々の記号などが該当する。
かかる２次元的なオブジェクトについて、３次元モデルとは別の方法で視差を与えることにより、立体視画像中に２次元的なオブジェクトを軽い負荷で表すことができる。また、２次元オブジェクトは、左右のずらし量を変化させることによって、奥行き感を変化させることが可能となるため、オブジェクトの種類等に応じて奥行き感を変化させ、多様な立体視を実現することが可能となる。
上述の態様において、２次元オブジェクトに視差を与えるのは、左眼用画像、右眼用画像を出力する際に行っても良い。また、予め左右眼の視差を与えて配置された２次元オブジェクトの画像データを含めた状態で、左眼用平行投影データ、右眼用平行投影データを用意しておくものとしてもよい。
【００１２】
本発明において、上述した種々の特徴は、必ずしも全てを備えている必要はなく、本発明は、適宜、一部を省略したり、組み合わせたりして構成することができる。
また、本発明は、立体視画像出力システムとして構成する他、種々の態様で構成することができる。
例えば、本発明は、視差を与えた左眼用画像および右眼用画像を、それぞれ左眼および右眼で視認可能に出力することで立体視画像を出力させる立体視画像出力システム用の画像データを生成する画像データ生成装置であって、
立体視の対象となる３次元モデル、および前記立体視画像内に２次元的なオブジェクトを出力するための２次元オブジェクトデータと、を格納する３Ｄ画像データベース記憶部と、
所定サイズのメッシュ単位で、左右眼の視差を生じさせるようそれぞれ設定された所定の投影角度だけ鉛直方向から傾けた斜め方向からの平行投影によって、前記３次元モデルを平面上に投影した２次元描画データとしての左眼用平行投影データおよび右眼用平行投影データを生成する平行投影部と、
前記２次元オブジェクトデータについて、所定の出力位置に対して左右にずらすことによって視差を与え左眼用２次元オブジェクト画像データと、右眼用２次元オブジェクト画像データとを生成する２次元オブジェクト画像データ生成部と、
生成された左眼用２次元オブジェクト画像データおよび右眼用２次元オブジェクト画像データを、前記左眼用平行投影データおよび右眼用平行投影データに対して、それぞれの視差を考慮した位置に重畳して、左眼用画像データおよび右眼用画像データを生成する重畳処理部とを備える立体視画像出力システムとして構成してもよい。
かかる態様によれば、３次元モデルに基づいて平行投影して左右眼平行投影データを生成することができる。また、２次元オブジェクトデータについては、左右にずらすことによって視差を与え、左右眼用２次元オブジェクト画像データを生成することができる。そして、両者を重畳した左右眼用画像データを生成することもできる。こうすることにより、左右眼用画像データから出力範囲に相当するデータを読み出して出力することにより、２次元オブジェクトも含めた立体視画像を軽い負荷で出力することが可能となる。
【００１３】
本発明は、その他、コンピュータによって立体視画像を出力する立体視画像出力方法として構成してもよいし、かかる出力をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また、かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体としては、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、ＩＣカード、ＲＯＭカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置（ＲＡＭやＲＯＭなどのメモリ）および外部記憶装置等、コンピュータが読取り可能な種々の媒体を利用できる。
【図面の簡単な説明】
【００１４】
【図１】平行投影による立体視の原理を示す説明図である。
【図２】右眼用／左眼用平行投影データの例を示す説明図である。
【図３】平行投影パラメータの設定方法（１）を示す説明図である。
【図４】平行投影パラメータの設定方法（２）を示す説明図である。
【図５】平行投影とメッシュとの関係を示す説明図である。
【図６】平行投影がスクロールに与える影響を示す説明図である。
【図７】立体視地図表示システムの構成を示す説明図である。
【図８】地物データの配置を示す説明図である。
【図９】地物データ生成処理のフローチャートである。
【図１０】地図表示処理のフローチャートである。
【図１１】スクロール処理のフローチャートである。
【図１２】変形例における文字画像の配置例を示す説明図である。
【図１３】変形例における地物データ生成処理のフローチャートである。
【図１４】変形例における地物データ例を示す説明図である。
【発明を実施するための形態】
【実施例１】
【００１５】
本発明につき、立体視画像のうちの一例として立体視地図を表示する立体視地図表示システムとして構成した実施例を説明する。ここでは、地図を平行投影によって３次元的、かつ立体視可能に表示した上で、そこに描かれる文字等についても立体視可能に表示するシステムを例示する。単に３次元的に描いた地図ではなく立体視可能な地図という意味で、以下では、実施例で表示される地図のことを立体視地図と称する。
また、地図が３次元的に表示されるのに対し、文字、記号等は２次元のデータであることから、以下の実施例では、これらを２次元オブジェクトと呼ぶこともある。
【００１６】
Ａ．平行投影による立体視の原理：
最初に、平行投影によって立体視を実現する原理について説明する。
図１は、平行投影による立体視の原理を示す説明図である。図１（ａ）に示すように３軸を定義する。即ち水平面内にｘ軸、ｚ軸を定義し、鉛直下方向にｙ軸を定義する。ｘ軸、ｙ軸、ｚ軸は右手座標系である。図示する通り地物の鉛直上方にカメラを置いて平行投影すると２次元地図が描かれる。本実施例に言う平行投影は、この状態からカメラを傾けた状態で投影することを言う。
平行投影では、透視投影と異なり「視点」は存在しない。本明細書において、平行投影に関し、カメラという用語を用いる場合には、投影方向を模式的に表している。
図１（ａ）において、ｘ軸周りにカメラを回転させると、鉛直方向から斜めに傾けて平行投影することになるので、ｘ軸周りの回転はピッチ角を表すことになる。また、ｙ軸方向にカメラを回転させると、水平方向で平行投影の方位が変化することになるので、ｙ軸周りの回転は投影方位を表すことになる。そして、ｚ軸周りにカメラを回転させると、以下に示す通り視差を与えることができる。
図１（ｂ）に視差が生じる理由を示した。図１（ｂ）はｚ軸方向に地物を見た状態、つまり、ｚ軸が紙面に垂直な状態となっている。視差は、この地物を鉛直上方からｙ軸方向に見た時に、右眼、左眼の位置の違いによって生じる視線方向の相違である。従って、図中における基準のカメラ位置ＣＣに対して、右眼から見た状態に相当するカメラ位置ＣＲ、左眼から見た状態に相当するカメラ位置ＣＬで投影することによって、視差を与えた右眼用／左眼用の画像を生成することができる。視差、即ちｚ軸周りの回転角δは、任意に設定可能であるが、違和感のない視差を与え得る角度としては、例えば、約２０度程度とすることができる。
このように、投影角度、投影方位に加えて、図１（ｂ）で示した視差を考慮して平行投影を行うことにより、平行投影であっても、立体視可能な右眼用／左眼用画像を生成することができる。
【００１７】
図２は、右眼用／左眼用平行投影データの例を示す説明図である。図２（ａ）には右眼用平行投影データを示し、図２（ｂ）には左眼用平行投影データを示した。それぞれの画像においては、平行投影によって、地物が３次元的に表示されている。例えば、領域Ａ１と領域Ｂ１、領域Ａ２と領域Ｂ２をそれぞれ比較すると、建物の側壁の描かれ方などから、右眼用／左眼用の視差の相違を認識することができる。このように用意された右眼用／左眼用平行投影データを用いることによって、３次元地図を立体視することが可能となる。
【００１８】
Ｂ．平行投影による影響：
図３は、平行投影パラメータの設定方法（１）を示す説明図である。
図３（ａ）には、３次元モデルの例を示した。ここでは、図示するようにＡ〜Ｉの各アルファベットに高さを持たせた３次元形状のモデルを例にとって説明する。
図３（ｂ）は、真上から真下にカメラＣＡを設定した場合の平行投影の様子を示している。図示するように平行投影のカメラＣＡは、中央のアルファベット“Ｅ”を含む領域Ｆ１の真上に、鉛直下方を向けて設定する。先に説明した通り、平行投影では特定の“視点”は存在しないから、図３（ｂ）に示したカメラＣＡは、平行投影の投影方向を模式的に示すものに過ぎない。
図３（ｃ）は、図３（ｂ）の平行投影によって得られる投影結果を示している。真上からの投影によれば、図３（ｃ）に示すように平面的な投影結果が得られる。即ち、図３（ａ）に示したような３次元モデルに対して、いわゆる二次元地図が得られることになる。
【００１９】
図３（ｄ）は、カメラＣＡを鉛直下方向きからアルファベット“Ｂ”の方向に斜めにピッチ角だけ傾けた状態を示している。この結果、カメラＣＡで投影される領域Ｆ２は、ピッチ角に応じて、傾けた方向に延びた長方形となる。
図３（ｅ）は、図３（ｄ）のようにカメラＣＡを傾けた場合の投影結果を示している。
【００２０】
図４は、平行投影パラメータの設定方法（２）を示す説明図である。
図４（ａ）は、図３（ｄ）のようにピッチ角だけ傾けた状態から、ヨー角をずらした状態、即ち図１（ｂ）で示した角度δだけ回転させた状態を示している。このようにヨー角をずらすことによって、投影される領域Ｆ３は、図示するように平行四辺形となる。
図４（ｂ）は、図４（ａ）の状態で平行投影した投影結果を示している。このようにピッチ角、ヨー角をずらした斜め方向から平行投影することにより、３次元モデルを立体的に表現することができる。
【００２１】
図４（ｃ）は、以上で説明した平行投影によって生成された左眼用画像を示し、図４（ｄ）は右眼用画像を示している。平行投影の立体視では、図４（ｂ）におけるヨー角を、左右眼で正負逆方向とすることによって視差を与えるため、図中のアルファベット“Ｅ”を取り囲む領域を見ればわかる通り、投影される領域は、左眼用画像では左斜め方向の平行四辺形となり、右眼用画像では右斜め方向の平行四辺形となる。
【００２２】
図５は、平行投影とメッシュとの関係を示す説明図である。地図データは、通常、メッシュと呼ばれる一定サイズの矩形領域に分割して用意されている。図５は、このようにメッシュに区切られている地図に対して、平行投影による立体視を適用した場合の影響を示している。
図５（ａ）には、メッシュに区切られている地図を平行投影している状態を示している。図４で説明した通り、平行投影すると、カメラＣＡによって投影される領域は、領域ＦＡ、ＦＢのように平行四辺形となる。そして、あるメッシュを平行投影した結果が領域ＦＡで表されるとすれば、矢印Ｄ方向に隣接するメッシュを平行投影した結果は、領域ＦＢのように表される。即ち、投影前は、矩形のメッシュが整列した状態で設定されていたのに対し、平行投影を行うと、各メッシュが平行四辺形に変形される結果、領域ＦＡ、ＦＢ間に示すようなずれが生じてくる。
図５（ｂ）は、領域ＦＡ、ＲＢの拡大図である。各領域の形状のみを示した。先に説明した通り、領域ＦＡ、ＦＢが接する辺ＳＡ、ＳＢ間には、オフセット量ＯＳＴからなるずれが生じる。距離ＯＳＴは、平行投影パラメータ、即ち、平行投影の際のピッチ角θ、ヨー角δに応じて定まる値である。即ち、単位長さのメッシュを、順次、ピッチ角θ、ヨー角δだけ回転させる座標変換により、
ＯＳＴ＝sinδ・sinθ・cosθ
と表すことができる。
従って、領域ＦＡ、ＲＢを整列させようとすれば、矢印Ａ方向に、オフセット量ＯＳＴだけずらす必要が生じることになる。
図５（ｃ）には、領域ＦＡ、ＦＢを整列させずに配置した場合の状態を示した。即ち、図５（ａ）のように領域ＦＡ、ＦＢ間にずれが生じたまま配置した状態を表している。図５（ａ）は、領域の形状を示すためのものであり、アルファベットＡ〜Ｉの位置は、平行投影前の状態で示しているが、実際には、メッシュごとで平行投影を行うと、図５（ｃ）に示したように、領域ＦＡ、ＦＢの境界Ｂのところで、画像にずれが生じるのである。
平行投影で利用するピッチ角θ、ヨー角δは、任意に設定可能であるが、立体視を実現する平行投影で利用するパラメータとしては、例えば、ピッチ角θ＝２２．５度、ヨー角δ＝２０度程度とすればよい。かかる平行投影パラメータを用いた場合には、図５（ｃ）に示したずれは、数ピクセル程度に収まることがわかっている。
【００２３】
図６は、平行投影がスクロールに与える影響を示す説明図である。
図６（ａ）に示すように、２次元的な“地図”上で、アルファベット“Ｂ”から“Ｅ”の方向、即ち矢印ＳＲ方向に表示範囲を移動する場合を考える。
図６（ｂ）には、立体視を実現するよう平行投影によって得られた左眼画像ＦＡＬ、ＦＢＬ、右眼画像ＦＡＲ、ＦＢＲを示した。スクロール前の状態では、下側に示した領域ＦＡＬ、ＦＡＲ内のアルファベット“Ｂ”の部分を表示しているものとする。このとき、左眼用画像ＦＡＬ、と右眼用画像ＦＡＲの視差は距離Ｌ１であり、この視差によって両者の融像が実現し、立体視できているものとする。
次に、ＳＲ方向に表示範囲を移動する。このとき、先に図４で示したように、左眼用画像ＦＡＬ、ＦＢＬ、右眼用画像ＦＡＲ、ＦＢＲがそれぞれ平行投影によって元来の矩形領域が平行四辺形の領域に投影されていることを考慮せず、単純に２次元平面と同様に矢印ＳＲ方向に表示範囲を移動させたとする。そうすると、本来は、表示範囲は、アルファベットＢ，Ｅ，Ｈ，Ｂという配列にそって移動すべきであるのに、左眼用画像ＦＡＬ、ＦＢＬでは、これらの配列の右側に、無用な部分が多く含まれた状態となり、右眼用画像ＦＡＲ、ＦＢＲでは、逆に左側に無用な部分が多く含まれた状態となる。この結果、例えば、アルファベット“Ｂ”の部分では、当初の視差Ｌ１に比較して大きな視差Ｌ２が生じるようになり、融像できず、立体視が実現できなくなる。つまり、単にアルファベット“Ｂ”が二重にずれて視認されるに過ぎない状態となる。かかる現象を回避するためには、左眼用画像ＦＡＬ、ＦＢＬ、右眼用画像ＦＡＲ、ＦＢＲにおいて、それぞれ平行四辺形に投影されていることを考慮し、表示範囲の移動方向を矢印ＳＲＬ、ＳＲＲのように個別に設定する必要がある。
こうした現象は、予め全領域で左眼用画像ＦＡＬ、ＦＢＬおよび右眼用画像ＦＡＲ、ＦＢＲを用意しておくことに起因するものである。本実施例では、上述した通り、左眼用画像、右眼用画像においてスクロール方向を個別に設定することにより、立体視を実現したままでのスクロールを可能とするものである。
【００２４】
Ｂ．システム構成：
図７は、立体視地図表示システムの構成を示す説明図である。
図７には、サーバ２００からネットワークＮＥ２等を介して提供される地図データに基づいて、端末３００のディスプレイ３００ｄに地図を表示する構成例を示した。端末３００としては、スマートフォンを用いるものとしたが、携帯電話、パーソナルコンピュータ、ナビゲーション装置などを用いてもよい。また、３次元立体視地図表示システムは、端末３００とサーバ２００とからなるシステムの他、スタンドアロンで稼働するシステムとして構成してもよい。
図中には、地図データを生成するデータ生成装置１００も併せて示した。
端末３００のディスプレイ３００ｄは、右眼用画像と左眼用画像を、それぞれ右眼、左眼で視認できるように表示可能な立体視の機能を有している。本実施例では、いわゆる裸眼での立体視が可能なディスプレイ３００ｄを用いるものとしているが、立体視用の眼鏡等を用いて立体視するデバイスを用いても良い。
【００２５】
端末３００には、主制御部３０４の下で稼働する種々の機能ブロックが構成されている。本実施例では、主制御部３０４および各機能ブロックは、それぞれの機能を実現するソフトウェアをインストールすることによって構成したが、その一部または全部をハードウェア的に構成してもよい。
送受信部３０１は、サーバ２００とのネットワークＮＥ２を介した通信を行う。本実施例では、立体視地図を表示するための地図データおよびコマンドの送受信が主として行われる。
コマンド入力部３０２は、ボタンやタッチパネルの操作等を通じて、ユーザからの指示を入力する。本実施例における指示としては、３次元地図の表示範囲、拡大・縮小の指定、経路案内を行う際の出発地、目的地の設定などが揚げられる。
ＧＰＳ入力部３０３は、ＧＰＳ（Global Positioning System）の信号に基づいて緯度経度の座標値を得る。また、経路案内では、緯度経度の変化に基づいて進行方向を算出する。
地図情報記憶部３０５は、サーバ２００から提供された地図データを一時的に記憶しておくバッファである。経路案内時のように表示すべき地図が時々刻々と移動していく場合、地図情報記憶部３０５では不足する範囲の地図データをサーバ２００から受信して地図を表示する。
表示制御部３０６は、地図情報記憶部３０５に格納されている地図データを用いて、端末３００のディスプレイ３００ｄに立体視地図を表示する。
スクロール制御部３０７は、ユーザからスクロール指示がなされたときに、左眼用画像、右眼用画像それぞれに対するスクロール方向を決定し、立体視を維持したままのスクロールを実現する。
【００２６】
サーバ２００には、図示する機能ブロックが構成されている。本実施例では、これらの機能ブロックは、それぞれの機能を実現するソフトウェアをインストールすることによって構成したが、その一部または全部をハードウェア的に構成してもよい。
地図データベース２１０は、立体視地図を表示するためのデータベースである。本実施例では、地物データ２１１、２次元オブジェクト２１２、ネットワークデータ２１３を含む地図データを格納する。ネットワークデータ２１３は省略することもできる。
地物データ２１１は、道路、建物などの地物を３次元的、かつ立体視可能に表示するための平行投影データであり、地物の３次元モデルを右眼用／左眼用に投影条件を変えてそれぞれ平行投影することで得られた２次元のポリゴンデータである。即ち、地物データ２１１としては、同一の地図領域に対し、右眼用の条件で平行投影された２次元の画像データとしての右眼用平行投影データと、左眼用の条件で平行投影された２次元の画像データとしての左眼用平行投影データが格納されている。
２次元オブジェクト２１２は、地物以外に地図に表示すべき地物名称・地名・案内情報等を表す文字、地図記号・通行規制標識、経路案内における現在位置を表すシンボルデータや経路などを構成する矢印のポリゴンデータ等である。現在位置や経路のように表示位置が不定のものを除き、２次元オブジェクト２１２には、表示すべき文字や記号などのデータ、および表示位置が対応づけて格納されている。表示位置は、３次元空間上の位置としてもよいし、平行投影された投影画像上の位置座標としてもよい。また、地物名称のように、特定の地物と関連づけられた２次元オブジェクト２１２については、地物との関連付けを表すデータも併せて格納されている。
本実施例では、２次元オブジェクト２１２は、表示時に視差を与えるものとしているが、変形例として、予め決まった視差で立体視可能な構成とすることもできる。かかる場合には、２次元オブジェクト２１２としては、立体視可能な右眼用画像と左眼用画像の形式で格納しておいてもよい。また、地物データ２１１と２次元オブジェクト２１２とを重畳した状態の画像データを、地物データ２１１として格納しておくこともできる。
ネットワークデータ２１３は、道路をノード、リンクの集まりで表現したデータである。ノードとは、道路同士の交点や道路の端点に相当するデータである。リンクはノードとノードとを結ぶ線分であり、道路に相当するデータである。本実施例では、ネットワークデータ２１３を構成するノード、リンクの位置は、緯度経度および高さの３次元データで定められている。
送受信部２０１は、ネットワークＮＥ２を介して端末３００とのデータの送受信を行う。本実施例では、３次元地図を表示するための地図データおよびコマンドの送受信が主として行われる。また、送受信部２０１は、ネットワークＮＥ１を介してデータ生成装置１００との通信も行う。本実施例では、生成された地図データの授受が主として行われる。
データベース管理部２０２は、地図データベース２１０からのデータの読み出し、書き込みを制御する。
経路探索部２０３は、地図データベース２１０内のネットワークデータ２１３を用いて、経路探索を行う。経路探索には、ダイクストラ法などを用いることができる。上述の通り、経路探索によって得られた経路を表す矢印等も、２次元オブジェクトに該当する。
【００２７】
データ生成装置１００には、図示する機能ブロックが構成されている。本実施例では、これらの機能ブロックは、パーソナルコンピュータに、それぞれの機能を実現するソフトウェアをインストールすることによって構成したが、その一部または全部をハードウェア的に構成してもよい。
送受信部１０５は、ネットワークＮＥ１を介してサーバ２００とデータの授受を行う。
コマンド入力部１０１は、キーボード等を介してオペレータの指示を入力する。本実施例では、地図データを生成すべき領域の指定、平行投影パラメータの指定等が含まれる。平行投影パラメータとは、平行投影する際のピッチ角、ヨー角を言う。ピッチ角とは、鉛直方向からどれだけ傾けて投影するかを意味する。ヨー角とは、視差を与えるために左右眼で異なる方向に傾ける角度（図１参照）を言う。
３Ｄ地図データベース１０４は、地図データを生成するために用いられる３次元モデルを格納するデータベースである。道路、建物などの地物については、３次元形状を表す電子データが格納されている。また、地図中に表示すべき文字、記号などの２次元オブジェクトも、格納されている。
平行投影部１０２は、３Ｄ地図データベース１０４に基づいて平行投影による描画を行って地物データを生成する。描画された投影図は、平行投影データ１０３として格納され、送受信部１０５を介してサーバ２００の地図データベース２１０の地物データ２１１に格納される。投影パラメータ修正部１０６は、平行投影を行う際に、指定された平行投影パラメータをヨー角が正負逆の値となるよう修正し、右眼用／左眼用の平行投影パラメータを設定する。こうすることで、立体視するための右眼用画像、左眼用画像をそれぞれ生成することができる。
【００２８】
図８は、地物データの配置を示す説明図である。
図８（ａ）には、平行投影前の３Ｄ地図データのメッシュを実線で、左眼用画像を破線で、右眼用画像を一点鎖線で重ねて示した。右下には、２つのメッシュについての拡大図を示した。本実施例において平行投影前の地図データは、拡大図の領域Ｍ１、Ｍ２に示す通り、矩形領域で整列されたメッシュごとに用意されている。そして、それぞれのメッシュは、平行投影すると、左眼用画像Ｍ１Ｌ、Ｍ２Ｌおよび右眼用画像Ｍ１Ｒ、Ｍ２Ｒのように、それぞれ平行四辺形の領域に投影される。本実施例では、このようにメッシュ単位で生成された平行四辺形の左眼用画像、右眼用画像は、図８（ａ）に示すように、整列することなく格納している。従って、厳密に見れば、図５（ｃ）に示したように、平行四辺形の領域間で、数ピクセル程度のずれが存在することになる。
図８（ｂ）は、変形例としての地物データの配置例である。この例では、メッシュごとに生成された平行四辺形の領域間で生じるずれを整合させて配置している。この結果、平行投影前は図中の上下方向に配列されていたメッシュＭ１、Ｍ２が、左眼用画像では領域Ｍ１Ｌ、Ｍ２Ｌのように左斜め方向に配列され、右眼用画像では領域Ｍ１Ｒ、Ｍ２Ｒのように右斜め方向に配列される。地物データは、このように領域間のずれを整合させた形式で用意しても良い。
【００２９】
Ｃ．地物データ生成処理：
次に、地物データ２１１、即ち地物の３次元モデルを右眼用／左眼用に投影条件を変えてそれぞれ平行投影した２次元のポリゴンデータを生成するための処理について説明する。この処理は、データ生成装置１００の平行投影部１０２が主として実行する処理であり、ハードウェア的には、データ生成装置１００のＣＰＵが実行する処理である。
図９は、地物データ生成処理のフローチャートである。
処理を開始すると、データ生成装置１００は、処理対象となるメッシュの指定、および平行投影パラメータを入力する（ステップＳ１０）。メッシュの指定方法は、メッシュ固有のインデックス、メッシュの座標などを用いることができる。地図上でオペレータが指定した点の座標値を含むメッシュをデータ生成装置１００が解析し、これを処理対象のメッシュとして設定する方法をとってもよい。
平行投影パラメータは、ピッチ角と投影方位である。この段階では、視差、即ちヨー角は０度としておく。これらは、地物データを生成する度にオペレータが指定するものとしてもよいし、デフォルト値を用いるようにしてもよい。
投影方位は、いずれか単一の方位としてもよいが、本実施例では、方位を４５度ずつずらした８方位について、それぞれ平行投影を行い、地物データを生成するものとした。このように多方位で地物データを用意しておけば、いずれかの投影方位で建物の陰になるなどの死角が生じた場合でも、他の投影方位を利用することにより、死角を回避した表示を実現できる利点がある。
平行投影パラメータは、ピッチ角、投影方位のいずれについても任意の設定が可能であり、単一の値とする方法、複数の値をパラメトリックに用いる方法など、種々の値をとり得る。
【００３０】
次に、データ生成装置１００は、対象メッシュおよびその周辺の所定範囲のメッシュについて、３Ｄ地図データベースを読み込む（ステップＳ２０）。周辺の所定範囲のメッシュも読み込む理由は、次の通りである。
本実施例では、３Ｄ地図データベースに含まれる３次元モデルを鉛直方向に対して所定の投影角度だけ傾けた斜め方向から平行投影することによって地物データを生成する。このように斜め方向からの平行投影を行う場合、処理対象となるメッシュの周辺のメッシュに存在する地物の一部が投影されることもある。逆に、単に対象メッシュだけの３Ｄ地図データベースを利用して平行投影を行ったのでは、他のメッシュに存在する地物の投影図が欠けてしまい、適切な地物データを得ることができない。これを回避するため、本実施例では、対象メッシュの周辺のメッシュも読み込むこととしている。読み込む範囲は、任意に設定可能であるが、本実施例では、対象メッシュから２区画以内のメッシュに属する３Ｄ地図データを読み込むものとした。
【００３１】
次に、データ生成装置１００は、左眼用視差、右眼用視差、即ちそれぞれのヨー角を設定する（ステップＳ３０）。先に図１（ｂ）で示したように、平行投影パラメータとしてヨー角を与えて平行投影するのである。視差を持たせるため、左眼用視差と右眼用視差は、正負逆方向とする。この処理は、投影パラメータ修正部１０６の処理に相当する。また、こうして設定された平行投影パラメータ、即ちピッチ角、ヨー角を用いてオフセット量ＯＳＴを算出する。オフセット量は、図５（ｂ）で示した通り、平行投影後の各メッシュに対応する平行四辺形領域間のずれを表す数値であり、後に説明する通り、左右眼画像内でのスクロール方向を決定するのに用いられる。
データ生成装置１００は、こうして設定された左眼用視差を用いて平行投影を行うことにより左眼用画像を生成し（ステップＳ４０）、右眼用視差を用いて平行投影を行うことにより右眼用画像を生成する（ステップＳ５０）。それぞれ生成される画像は、平行投影によって地物を３次元的に表現した２次元画像データとなる。平行投影によって生成された左眼用／右眼用画像を、左眼用／右眼用平行投影データと呼ぶこともある。
データ生成装置１００は、こうして得られた左右眼用画像から、それぞれ対象メッシュに相当する領域を切り出し（ステップＳ６０）、オフセット量ＯＳＴとともに、左眼用画像データ、右眼用画像データからなる地物データとして格納する(ステップＳ７０)。これらの画像データは、２次元のポリゴンデータとして格納するものとしたが、ラスタデータとして格納してもよい。また、左眼用／右眼用画像データの切出しおよび格納の際には、各ポリゴンに名称、位置、形状などの属性を併せて整備してもよい。
以上の処理を全投影方位、全メッシュについて実行することによって、データ生成装置１００は、本実施例の地物データ２１１を整備することができる。
【００３２】
Ｄ．地図表示処理：
Ｄ１．全体処理：
図１０は、地図表示処理のフローチャートである。ここでは、ユーザから指定された地点、方位に従って、背景となる地図を立体視可能に表示するとともに、文字等の２次元オブジェクトをその手前に立体視可能に表示する処理の例を示す。この処理は、経路探索と併せて用いることにより、経路案内表示として利用することもできる。
地図表示処理は、端末３００の主制御部３０４および表示制御部３０６が実行する処理であり、ハードウェア的には端末３００のＣＰＵが実行する処理である。
【００３３】
この処理では、まず端末３００は、ユーザから指定された表示地点、方位、範囲を入力する（ステップＳ１００）。表示地点は、例えば、ＧＰＳで得られる現在位置を用いるものとしてもよい。
そして、端末３００は、指定された表示位置等に従って、スクロール処理を実行する（ステップＳ２００）。スクロール処理の内容は、後述するが、指定された表示地点が従前の地点から移動している場合、即ちユーザからスクロールが指定された場合に、左眼用画像、右眼用画像に適したスクロール方向を決定し、左眼用画像、右眼用画像のそれぞれにおける表示地点を設定する処理である。
【００３４】
端末３００は、スクロールの処理の結果に応じて、地図情報記憶部３０５から左右眼用平行投影データを読み込む（ステップＳ３００）。地図情報記憶部３０５に蓄積されていない領域のデータが必要な場合には、端末３００は、サーバ２００から当該データをダウンロードする。
ここで、左右眼用平行投影データは、本実施例では、図８（ａ）に示した通り、平行四辺形の各領域間でオフセット量ＯＳＴだけのずれが生じている。そこで、端末３００は、ステップＳ３００において、左右眼用平行投影データを読み込んだ場合には、このずれを解消する方向に、領域間でオフセット量ＯＳＴだけずらして配置する。図中に示すように、左眼用画像ＰＬ１、ＰＬ２の間ではオフセット量ＯＳＴだけのずれがあるため、領域ＰＬ２を左側にオフセット量ＯＳＴだけずらして領域ＰＬ１に整合させるのである。右眼用画像ＰＲ１、ＰＲ２の間もずれがあるため、領域ＰＲ２を右側にオフセット量ＯＳＴだけずらして領域ＰＲ１に整合させるのである。
【００３５】
次に、端末３００は、同じく地図情報記憶部３０５から、２次元オブジェクト（文字、記号（地図記号・通行規制標識を含む）、現在位置、経路表示等）のデータを読み込む（ステップＳ３１０）。２次元オブジェクトは、地図の機能等に基づき、必要なもののみを読み込むようにしてもよい。
２次元オブジェクトには、３次元空間内で表示位置が指定されているから、端末３００は、読み込んだ２次元オブジェクトに対して座標変換処理を施し、さらに左眼用画像、右眼用画像のそれぞれについて２次元オブジェクトの位置を左右にずらすことで視差を与え、左右眼用の２次元オブジェクト画像を生成する（ステップＳ３２０）。
上述の座標変換は、平行投影パラメータとしてピッチ角、投影方位に基づき、３次元の位置情報を、ｙ軸周りに投影方位（β度とする）だけ回転させた後、ｘ軸周りにピッチ角（θ度とする）だけ回転させる座標変換行列を求め、２次元オブジェクトの位置に、この座標変換行列を作用させて行うことができる。
【００３６】
２次元オブジェクトの左右眼用の視差は、表示深さの設定に基づいて行うことができる。表示深さは、全ての２次元オブジェクトで同一としてもよいし、２次元オブジェクトの種別に応じて変化させてもよい。例えば、文字、記号、経路表示の順に優先度を設定し、文字が最も手前に表示され、次に現在位置や通行規制を表す記号、経路表示の順に奥に表示されるようにしてもよい。また、２次元オブジェクト同士が重なる場合に、相互に表示深さを異ならせるようにしてもよい。
こうして表示深さを設定すると、２次元オブジェクトを設定された表示深さｈに応じた３次元位置に設定し、視差（ヨー角）δによる回転行列を作用させて得られるｘ座標の変位が右眼用／左眼用の２次元オブジェクトのずらし量となる。このとき、ずらし量は表示深さｈの関数となり、「ずらし量＝ｈ・ｔａｎδ」で与えられる。
【００３７】
最後に、端末３００は、左右眼用画像、即ち地物と２次元オブジェクトを重畳して表示し（ステップＳ３３０）、地図表示処理を終了する。こうして表示された右眼用画像を右眼で、左眼用画像を左眼で認識することにより、ユーザは背景の地図および２次元オブジェクトを立体視することができる。
左右眼用平行投影データは、既に平行投影された後の２次元のポリゴンデータに過ぎないから、ステップＳ５０１の処理においては、取得したデータに従ってポリゴンを描画するだけで投影処理を行うまでなく軽い負荷で立体視を実現することができる。
【００３８】
Ｄ２．スクロール処理：
図１１は、スクロール処理のフローチャートである。地図表示処理（図１０）のステップＳ２００に相当する処理であり、端末３００のスクロール設定部３０７が実行する処理に相当する。
この処理を開始すると、端末３００は、スクロールベクトルを入力する（ステップＳ２１０）。スクロールベクトルとは、地図の移動方向、即ち従前の表示地点から、新たに指示された表示地点に向かうベクトルである。このスクロールベクトルは、立体視をしているユーザが、その立体視地図上で視認したい方向を指定することになるから、平行投影前の３次元のモデル内での移動方向に相当するものである。
【００３９】
端末３００は、次にスクロール方向を補正し、左右眼用のスクロールベクトルを設定する（ステップＳ２２０）。
図中にスクロール方向の補正方法を示した。図中右側に示す図において、例えば、３次元のモデル内で縦のｖ軸方向にスクロールが指定された場合を考えると、平行投影によってメッシュが平行四辺形に変化しているため、指定されたスクロールに対応するスクロール方向は、この平行四辺形の領域では、斜めの辺に沿う方向となる。つまり、ｖ軸方向のスクロール方向を、補正角γだけ補正する必要がある。このγは、メッシュのｖ軸方向の距離ＶＭと、オフセット量ＯＳＴとの比に基づいて求めることができる。即ち、ｔａｎγ＝ＯＳＴ／ＶＭである。補正角γは、平行投影パラメータ（ピッチ角、ヨー角）が決まれば一義的に定まる値であるから、オフセット量ＯＳＴと同様、予め算出しておいてもよい。
端末３００は、左側の図に示すように、補正角γに基づいてスクロールベクトルＶＳを補正する。つまり、右眼画像用には、スクロールベクトルＶＳを時計回りに補正角γだけ回転させた方向のベクトルＶＳＲがスクロール方向となり、左眼画像用には逆に補正角γだけ回転させた方向のベクトルＶＳＬがスクロール方向となる。
このように平行投影の影響によってスクロールする方向は補正する必要があるが、ｖ軸方向の進行距離は左右眼で整合させておく必要がある。従って、左右眼画像用のスクロールベクトルＶＳＬ、ＶＳＲ、およびスクロールベクトルＶＳの先端が、ｕ軸に平行な直線上に並ぶように、左右眼画像用のスクロールベクトルＶＳＬ、ＶＳＲの大きさは設定される。
【００４０】
端末３００は、以上の処理によって設定された左右眼画像用のスクロールベクトルＶＳＬ、ＶＳＲに基づいて、スクロール後の表示地点を左右眼画像のそれぞれについて設定し（ステップＳ２３０）、スクロール処理を終了する。
【００４１】
Ｅ．効果：
以上で説明した本実施例の立体視地図表示システムによれば、平行投影によって立体視を実現することができる。平行投影では、立体視用の左右眼画像は、視点位置に関わらず予め全領域で生成しておくことができ、非常に軽い負荷で立体視を実現できる。
また、実施例では、スクロールが指示された場合に、左右眼画像で個別にスクロール方向を設定するため、平行投影によって元来のメッシュが平行四辺形に変形していることによる影響を回避し、立体視を維持した状態でのスクロールを実現することができる。
【００４２】
Ｆ．変形例：
実施例では、地物データと２次元オブジェクトとを別々に用意し、２次元オブジェクトには、表示時に視差を与える方法を例示した。これに対し、２次元オブジェクトと地物データとを重畳した状態で左右眼画像を用意しておく態様をとってもよい。かかる方法による例を変形例として示す。
【００４３】
図１２は、変形例における文字画像の配置例を示す説明図である。上述のように、予め２次元オブジェクトを地物データに重畳しておく場合の課題について説明する。
図１２（ａ）には、平行投影により２次元オブジェクトが受ける影響を示した。図１２（ａ）の左側に示すように、平行投影によって地図のメッシュは、平行四辺形の領域Ｍ１、Ｍ２に変形される。平行投影した時点では、図の右側に示すように、領域Ｍ１、Ｍ２の間にはオフセット量ＯＳＴのずれが生じた状態で格納されているが、地図表示処理の際に、このオフセット量は補正され（図１０のステップＳ３００参照）、図１２（ａ）の左側に示すように整合した状態で表示される。
このような場合に、文字ＣＨが図中のハッチングで示した部分のように領域Ｍ１、Ｍ２の境界部分に表示される場合を考える。文字ＣＨは、予め領域Ｍ１、Ｍ２に画像として重畳されているものとする。このとき、文字ＣＨは、オフセット量を補正した図１２（ａ）の左側に示すように、領域Ｍ１、Ｍ２の境界でずれがないように表示されるべきである。従って、オフセット量を補正する前の各領域Ｍ１、Ｍ２の地物データ（図１２（ａ）の右側の状態）においては、領域Ｍ１、Ｍ２の境界で、文字ＣＨ１、ＣＨ２がオフセット量ＯＳＴ相当だけずれた状態としておく必要がある。
即ち、図１２（ｂ）に示すように、領域Ｍ１、Ｍ２を格納した状態で文字ＣＨを描き、地物の画像データに重畳させてしまうと、図１２（ａ）のようにオフセット量を補正したときには、文字ＣＨが境界間でずれてしまうことになる。
変形例では、このように境界付近での文字の表示位置にオフセット量を反映させつつ、地物の画像データと文字の画像とを重畳させた地物データを生成する。
【００４４】
図１３は、変形例における地物データ生成処理のフローチャートである。
３Ｄ地図データを用いて、地物を表す左眼用画像および右眼用画像を生成する処理については、実施例（図９）のステップＳ１０〜Ｓ５０と同じである。次に、データ生成装置１００は、地図中に表示すべき２次元オブジェクト（文字、記号）を読み込む（ステップＳ５１）。ここでは、現在位置や経路案内表示のように、地図表示時に動的に移動する２次元オブジェクトではなく、予め地図データとして用意することができる２次元オブジェクトを対象とする。
そして、地物データ生成装置１００は、２次元オブジェクトを座標変換し、左右眼用の２次元オブジェクト画像を生成する（ステップＳ５２）。この座標変換は、２次元オブジェクトの表示位置を、平行投影パラメータに基づいて、左右眼画像内での表示位置に変換する処理である。座標変換には、視差を与えるために、左右眼画像で２次元オブジェクトの表示位置を左右にずらす処理も含まれる。
こうして左右眼画像それぞれについて２次元オブジェクト画像が生成されると、地物データ生成装置１００は、左右眼画像を、オフセット量ＯＳＴを考慮して配置し、左右眼用の２次元オブジェクト画像を貼り付ける（ステップＳ５３）。その上で、地物データ生成装置１００は、左右眼用画像からそれぞれ対象メッシュに相当する領域を切り出して（ステップＳ６０）、地物データおよびオフセット量ＯＳＴを格納する（ステップＳ７０）。
ステップＳ５３以降の処理によって、図１２（ａ）の右側に示すように、文字ＣＨは、文字領域Ｍ１、Ｍ２の間でずらして配置されることになる。ただし、この処理を行う際に、文字ＣＨの画像に対して、各領域用に分割し、ずらすなどの処理を行う必要はない。上述した通り、左右眼用画像は、各領域ごとに生成されるが、その方法としては、対象となるメッシュの周辺も含めて平行投影画像を生成し、対象メッシュに対応する領域Ｍ１、Ｍ２等を切り出す方法によって行う。従って、領域Ｍ２を生成している際には、図１２（ａ）の右側ＣＨ１の位置に、領域Ｍ２をはみ出す部分も含めて、文字の画像全体を配置すればよい。この中から、領域Ｍ２に相当する部分を切り出すことにより、複雑な画像処理を行うまでなく、文字ＣＨ１の部分のみを含む地物データが生成される。領域Ｍ１についても同様である。領域Ｍ１を生成する際には、文字ＣＨ２の位置に、文字の画像全体を配置した上で、領域Ｍ１に相当する部分を切り出せばよい。  
【００４５】
図１４は、変形例における地物データ例を示す説明図である。
図１４（ａ）には地図を表示する際のオフセット量分の補正を施す前の状態の地物データを示した。ここでは、領域は矩形状に表されている。かかる状態は、地物データ生成処理（図１３）の切り出し（ステップＳ６０）において、平行四辺形ではなく矩形形状で切り出すことによって容易に実現できるものである。
図１４（ａ）では、オフセット量分の補正を施していないため、境界ＢＨ、ＢＶは一直線に並んでいる。ただし、境界ＢＨをまたぐ文字列「虎ノ門３５森ビル」、「智積院別院真福寺」は、境界ＢＨの上下で左右にずれていることが分かる。これが、先に図１２（ａ）の右側に示した文字ＣＨ１、Ｃｈ２のずれに相当する状態である。
図１４（ｂ）には、オフセット量の補正を施した状態を示した。即ち、境界ＢＨの上下方向で、縦方向の境界線ＢＶ１、ＢＶ２がずれている。このようにオフセット量の補正を施した結果、境界ＢＨをまたぐ上記文字列のずれは修正され、ずれのない状態で表示されることになる。
【００４６】
以上で説明した変形例によれば、実施例と同様、予め平行投影によって生成された左右眼画像を用いて軽い負荷で立体視を実現できるとともに、左右眼画像内に文字も含めて生成されているため、文字を表示するための処理負荷も軽減することができ、より一層、軽い処理負荷で立体視を実現できる。さらに、変形例では、予め表示時のオフセット量分の補正を踏まえて文字を配置しているため、表示時に、各領域の境界における文字のずれなく表示することが可能となる。
変形例において、現在位置や経路案内など、表示時に移動する２次元オブジェクトを更に含めるものとしてもよい。これらの２次元オブジェクトについては、実施例と同様、表示時に視差を与えることによって表示させることができる。
【００４７】
以上、本発明の実施例について説明した。立体視地図表示システムは、必ずしも上述した実施例の全ての機能を備えている必要はなく、一部のみを実現するようにしてもよい。また、上述した内容に追加の機能を設けてもよい。
本発明は上述の実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてハードウェア的に構成されている部分は、ソフトウェア的に構成することもでき、その逆も可能である。また、地図のみならず種々の立体視画像を対象とすることができる。さらに、立体視画像の出力は、ディスプレイへの表示に限らず、印刷によっても良い。
【産業上の利用可能性】
【００４８】
本発明は、平行投影を用いて立体視画像を提供するために利用可能である。
【符号の説明】
【００４９】
１００…データ生成装置
１０１…コマンド入力部
１０２…平行投影部
１０３…平行投影データ
１０４…３Ｄ地図データベース
１０５…送受信部
１０６…投影パラメータ修正部
２００…サーバ
２０１…送受信部
２０２…データベース管理部
２０３…経路探索部
２１０…地図データベース
２１１…地物データ
２１２…２次元オブジェクト
２１３…ネットワークデータ
３００…端末
３００ｄ…ディスプレイ
３０１…送受信部
３０２…コマンド入力部
３０３…ＧＰＳ入力部
３０４…主制御部
３０５…地図情報記憶部
３０６…表示制御部
３０７…スクロール設定部
【図１】
2014160969.tif 000003
【図７】
2014160969.tif 000004
【図８】
2014160969.tif 000005
【図９】
2014160969.tif 000006
【図１０】
2014160969.tif 000007
【図１１】
2014160969.tif 000008
【図１２】
2014160969.tif 000009
【図１３】
2014160969.tif 000010
【図２】
2014160969.tif 000011
【図３】
2014160969.tif 000012
【図４】
2014160969.tif 000013
【図５】
2014160969.tif 000014
【図６】
2014160969.tif 000015
【図１４】
2014160969.tif 000016