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