特許第5903023号(P5903023)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社ジオ技術研究所の特許一覧

<>
  • 特許5903023-立体視地図表示システム 図000002
  • 特許5903023-立体視地図表示システム 図000003
  • 特許5903023-立体視地図表示システム 図000004
  • 特許5903023-立体視地図表示システム 図000005
  • 特許5903023-立体視地図表示システム 図000006
  • 特許5903023-立体視地図表示システム 図000007
  • 特許5903023-立体視地図表示システム 図000008
  • 特許5903023-立体視地図表示システム 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5903023
(24)【登録日】2016年3月18日
(45)【発行日】2016年4月13日
(54)【発明の名称】立体視地図表示システム
(51)【国際特許分類】
   G06T 19/00 20110101AFI20160331BHJP
   G06T 17/05 20110101ALI20160331BHJP
   G09B 29/00 20060101ALI20160331BHJP
【FI】
   G06T19/00 F
   G06T17/05
   G09B29/00 A
【請求項の数】7
【全頁数】17
(21)【出願番号】特願2012-221759(P2012-221759)
(22)【出願日】2012年10月4日
(65)【公開番号】特開2014-75012(P2014-75012A)
(43)【公開日】2014年4月24日
【審査請求日】2015年5月1日
(73)【特許権者】
【識別番号】502002186
【氏名又は名称】株式会社ジオ技術研究所
(74)【代理人】
【識別番号】100165663
【弁理士】
【氏名又は名称】加藤 光宏
(72)【発明者】
【氏名】岸川 喜代成
(72)【発明者】
【氏名】冨高 翼
(72)【発明者】
【氏名】阿田 昌也
(72)【発明者】
【氏名】木村 達治
【審査官】 村松 貴士
(56)【参考文献】
【文献】 特開2004−125871(JP,A)
【文献】 特開2007−264176(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 17/05
G06T 19/00
G09B 29/00 − 29/14
(57)【特許請求の範囲】
【請求項1】
表示深さを与えて地図を立体視させる立体視地図表示システムであって、
視差を与えた右眼用画像および左眼用画像を、それぞれ右眼および左眼で視認可能に表示することで立体視を実現する立体視表示部と、
地図データを記憶する地図データベース記憶部と、
前記地図データに基づき、前記立体視表示部に対し、少なくとも一部に視差を与えた前記右眼用画像および左眼用画像を提供する表示制御部とを備え、
前記地図データには、地物の形状を表す地物データと、該地物以外を表し所定の規則に基づいた表示深さで表示される表示深さ調整オブジェクトとが記憶され、
前記表示制御部は、前記表示深さ調整オブジェクトを、その属性または表示位置に関する所定の規則に基づいて、多段階の表示深さで表示させる立体視地図表示システム。
【請求項2】
請求項1記載の立体視地図表示システムであって、
前記表示制御部は、視差を与えた状態で前記地物データを3次元的に表現した前記右眼用画像および左眼用画像を提供する立体視地図表示システム。
【請求項3】
請求項2記載の立体視地図表示システムであって、
前記地図データは、前記視差を与えるよう投影条件を変化させて地物の3次元形状を表すデータを鉛直方向に対して所定の投影角度だけ傾けた斜め方向から平行投影することによって得られる2次元画像としての右眼用平行投影データおよび左眼用平行投影データであり、
前記表示制御部は、前記右眼用平行投影データおよび左眼用平行投影データから、表示すべき範囲に対応する範囲を前記立体視表示部に提供する立体視地図表示システム。
【請求項4】
請求項2または3記載の立体視地図表示システムであって、
前記表示制御部は、
前記地物データに関しては、3次元的に表現する際の投影条件を右眼用と左眼用で異ならせることで視差を与えた右眼用画像および左眼用画像を提供し、
前記表示深さ調整オブジェクトに関しては、その表示位置を表示深さに応じて平行移動することで視差を与えて、右眼用画像および左眼用画像を提供する立体視地図表示システム。
【請求項5】
請求項1〜3いずれか記載の立体視地図表示システムであって、
前記表示深さ調整オブジェクトに関し、ユーザによる指示に基づいて表示深さを設定する表示深さ設定部を備え、
前記表示制御部は、前記表示深さ設定部による設定結果に応じて、前記表示深さ調整オブジェクトに視差を生じさせて再度表示を行う立体視地図表示システム。
【請求項6】
視差を与えた右眼用画像および左眼用画像を、それぞれ右眼および左眼で視認可能に表示することで立体視を実現する立体視表示部に対し、コンピュータによって、
表示深さを与えて地図を立体視させる立体視地図表示方法であって、
地物の形状を表す地物データと、該地物以外を表し所定の規則に基づいた表示深さで表示される表示深さ調整オブジェクトとを記憶する地図データを読み込むステップと、
前記地図データに基づき、前記立体視表示部に対し、少なくとも一部に視差を与えた前記右眼用画像および左眼用画像を提供する表示制御ステップとを備え、
前記表示制御ステップは、前記表示深さ調整オブジェクトを、その属性または表示位置に関する所定の規則に基づいて、多段階の表示深さで表示させるよう前記右眼用画像および左眼用画像を提供する立体視地図表示方法。
【請求項7】
視差を与えた右眼用画像および左眼用画像を、それぞれ右眼および左眼で視認可能に表示することで立体視を実現する立体視表示部に対し、コンピュータによって、
表示深さを与えて地図を立体視させるためのコンピュータプログラムであって、
地物の形状を表す地物データと、該地物以外を表し所定の規則に基づいた表示深さで表示される表示深さ調整オブジェクトとを記憶する地図データを読み込む機能と、
前記地図データに基づき、前記立体視表示部に対し、少なくとも一部に視差を与えた前記右眼用画像および左眼用画像を提供する表示制御機能とを前記コンピュータに実現させ、
前記表示制御機能は、前記表示深さ調整オブジェクトを、その属性または表示位置に関する所定の規則に基づいて、多段階の表示深さで表示させるよう前記右眼用画像および左眼用画像を提供する機能であるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、視差を与えて右眼用画像、左眼用画像を表示することによって立体視を行う立体視地図表示システムに関する。
【背景技術】
【0002】
ナビゲーション装置やコンピュータの画面等に用いられる電子地図では、建物などの地物を3次元的に表現した3次元地図が用いられることがある。特許文献1は、かかる3次元地図の一例として、予め平行投影によって3次元的に描画した画像データの形で地図データを用意しておき、これを用いて3次元地図を表示する方法を開示している。3次元地図は、かかる方法の他、地物の3次元形状を表す3次元モデルを、透視投影して表示する方法などが知られている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2011−186960号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
3次元地図への表示対象は、地物に限らず、地物名称・地名・案内情報を表す文字、地図記号・通行規制標識、経路案内における現在位置や経路など、種々の情報が含まれる。しかし、これらの情報は、地図としての性質上、地物や地形と関連づけて表示せざるを得ないため、情報と地物との重複、情報同士の重複などによって、内容が判読しづらくなることがあった。情報の表示位置や表示サイズを調整することで、重複を回避する方法をとることも可能ではあるが、情報量が多い範囲では、こうした回避策にも限界がある。
かかる課題は、3次元地図に限定されるものではなく、2次元の地図においても同様に生じ得る。ただし、3次元地図では、地物の側面が描かれることによって各地物の描画面積が大きくなりがちであり、上述の重複が生じやすい傾向にある。
本発明は、これらの課題に鑑み、地物以外に地図上に表示される種々の情報を、判読しやすい態様で提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明は、表示深さを与えて地図を立体視させる立体視地図表示システムであって、
視差を与えた右眼用画像および左眼用画像を、それぞれ右眼および左眼で視認可能に表示することで立体視を実現する立体視表示部と、
地図データを記憶する地図データベース記憶部と、
前記地図データに基づき、前記立体視表示部に対し、少なくとも一部に視差を与えた前記右眼用画像および左眼用画像を提供する表示制御部とを備え、
前記地図データには、地物の形状を表す地物データと、該地物以外を表し所定の規則に基づいた表示深さで表示される表示深さ調整オブジェクトとが記憶され、
前記表示制御部は、前記表示深さ調整オブジェクトを、その属性または表示位置に関する所定の規則に基づいて、多段階の表示深さで表示させる立体視地図表示システムと構成することができる。
【0006】
ここで、表示深さ調整オブジェクトとしては、地物以外に地図上に表される種々の情報が含まれる。例えば、地物名称・地名・案内情報等を表す文字、地図記号・通行規制標識、経路案内における現在位置や経路などが該当する。地物のように3次元形状を有しないオブジェクトという意味で、2次元オブジェクトと称することもできる。
地図データは、2次元の地図表示用のデータであってもよいし、3次元の地図表示用のデータであってもよい。
本発明の立体視地図表示システムによれば、これらの表示深さ調整オブジェクトを多段階の表示深さで立体視表示させることが可能となる。こうすることにより、表示深さ調整オブジェクトの一部が、他の表示深さ調整オブジェクトによって隠れる場合であっても、表示深さの相違によって、双方の表示深さ調整オブジェクトを容易に判別することが可能となる。この結果、隠れている側の表示深さ調整オブジェクトについて、全体が見えないまでも、その内容を容易に推測することが可能となる。
多段階の表示深さとは、表示深さ調整オブジェクトの表示深さを異ならせることを意味するが、表示深さの設定は、表示深さ調整オブジェクトの属性または表示位置に基づいて行うことができる。多段階の表示深さとは、2種類以上の表示深さの意味であり、その値は、任意の値をとり得るものとしてもよいし、予め量子化して設定された値から選択可能としてもよい。
属性に基づく設定としては、例えば、文字>記号等>経路案内に関する情報の順に、手前から奥に見えるように表示深さを設定する方法など、表示深さ調整オブジェクトの種別に応じて予め設定された表示深さで表示を行う方法が含まれる。文字、記号等、経路案内に関する情報等の種別を更に細分化して表示深さを設定してもよい。また表示深さの設定は、必ずしも文字を手前にする必要はなく任意に設定可能である。属性には、表示深さ調整オブジェクトに関連づけられた地物等の属性を含めることもできる。例えば、表示深さ調整オブジェクトが地物の名称である場合、その名称が関連づけられた地物の高さに応じて、表示深さを設定する方法をとってもよい。
表示位置に基づく設定としては、例えば、表示深さ調整オブジェクト同士が重なる場合に、一方を手前に、他方を奥に表示する方法などが該当する。いずれを手前にするかは、任意に設定可能である。例えば、属性に基づいて決めてもよいし、表示深さ調整オブジェクトの表示範囲の大きさに応じて決めてもよい。
【0007】
本発明の立体視地図表示システムにおいて、
前記表示制御部は、視差を与えた状態で前記地物データを3次元的に表現した前記右眼用画像および左眼用画像を提供するものとしてもよい。
こうすることによって、表示深さ調整オブジェクトの背景に当たる3次元地図画像も立体視することができ、地物の高さなどを直感的に認識可能になるとともに、表示深さ調整オブジェクトの立体視についても違和感を低減することができる。
このように3次元地図も立体視する場合、例えば、地物等の高さに応じて表示深さ調整オブジェクトの表示深さを設定する方法をとってもよい。これは、先に説明した属性に基づく表示深さの設定の一態様に相当する。こうすることにより、表示深さ調整オブジェクトと地物等との対応関係を直感的に認識可能となる利点がある。
【0008】
上記態様において、右眼用画像、左眼用画像の提供は、種々の方法で行うことができる。
第1に、地図データとして、地物の3次元形状を記憶させた3次元モデルを用意し、表示制御部は、この3次元モデルを投影して右眼用画像、左眼用画像を生成してもよい。この方法では、指定された視点位置および視線方向に応じた透視投影を適用することができ、より違和感のない立体視を実現することができる。
【0009】
第2に、予め右眼用画像、左眼用画像を記憶しておく方法をとってもよい。
この場合、前記地図データは、前記視差を与えるよう投影条件を変化させて地物の3次元形状を表すデータを鉛直方向に対して所定の投影角度だけ傾けた斜め方向から平行投影することによって得られる2次元画像としての右眼用平行投影データおよび左眼用平行投影データであり、
前記表示制御部は、前記右眼用平行投影データおよび左眼用平行投影データから、表示すべき範囲に対応する範囲を前記立体視表示部に提供するものとしてもよい。
透視投影と異なり、平行投影では視点を定める必要がないため、投影された描画結果は、地図の描画範囲をどのように指定した場合でも共通して利用することができる。従って、上記態様では、立体視用の右眼用画像、左眼用画像を予め2次元の画像データとして用意しておくことができ、表示時の投影処理が不要となるため、処理負荷を軽減させることが可能となる。
平行投影では、上述の通り、透視投影と異なり視点位置の指定がないため、視差を与えることが容易ではなく立体視になじまないと考えられているが、本願発明者は、平行投影の投影方向を右眼用/左眼用で異ならせること、つまり、平行投影する際の投影方位、投影角度に加え、両者に直行する軸周りの回転角度を視差として与えることにより、実用的な立体視を実現可能であることを見いだした。上記態様は、かかる着眼により、実現されたものである。
右眼用/左眼用平行投影データを予め用意しておく態様では、同一領域に対して投影方位が異なる複数種類の地物データを格納してもよい。こうしておけば、ユーザの指定した方位に対応して、立体視の3次元地図を提供することができ、利便性を向上させることができる。特に、経路案内に3次元地図を利用する場合には、案内すべき経路に応じて投影方位が異なる3次元地図を使い分けることにより、進行方向を上側に表示するヘディングアップ表示を円滑に実現することができる。
また、上記態様においては、表示深さ調整オブジェクトも予め表示深さに応じた視差を与えて描画させた状態で右眼用/左眼用画像を用意してもよい。こうすることにより、表示深さ調整オブジェクトについても軽い負荷で立体視を実現することができる。
【0010】
本発明の立体視地図表示システムにおいては、
前記表示制御部は、
前記地物データに関しては、3次元的に表現する際の投影条件を右眼用と左眼用で異ならせることで視差を与えた右眼用画像および左眼用画像を提供し、
前記表示深さ調整オブジェクトに関しては、その表示位置を表示深さに応じて平行移動することで視差を与えて、右眼用画像および左眼用画像を提供するものとしてもよい。
即ち、背景となる3次元地図と、表示深さ調整オブジェクトとで、異なる方法によって立体視を実現する態様である。
【0011】
図1は表示深さ調整オブジェクトの立体視の原理を示す説明図である。図1(a)に示すように、ディスプレイに対して、文字Aを右眼用の位置Ar、左眼用の位置Alにそれぞれオフセット、即ち平行移動して表示する。かかる画像を、両眼で見ると、図示するように、文字Aがディスプレイよりも手前位置に結像して認識できる。同様に、文字Bも同様に、右眼用の位置Br、左眼用の位置Blに表示させることによって、両眼で見ると、ディスプレイよりも手前位置に結像して認識できる。文字Aのオフセットよりも文字Bのオフセットの方が大きいため、結像高さは、文字Bの方が大きくなり、文字Bの方が手前に見える。
図1(b)は、このときの右眼用/左眼用画像の状態を示している。中心基準画像は、文字A、Bをそれぞれ本来の表示位置Ac、Bcに表示した状態を示している。文字A、Bをそれぞれ図1(a)に示すようにオフセットすることによって左眼用画像、右眼用画像を生成することができる。なお、図1(b)では、表示位置を点で表しているが、実際には、この点を代表点とする文字列が表示されることになる。
図1(c)は、こうして生成された右眼用/左眼用画像を正面から両眼で見た状態を示している。左側に示すように、中心基準画像の位置において、文字Aよりも手前に文字Bを視認することができる。右側にオフセットの効果を模式的に示した。文字Bと文字Aとのオフセット量の差異によって、文字Bと文字Aとの表示深さが変化する。即ち、オフセット量の差異が小さい場合には、左側に示すように、文字Bと文字Aは深さ方向に接近して見え、オフセット量の差異が大きい場合には、右側に示すように、深さ方向に離れて見える。
図1では、文字を例にとって示したが、その他の表示深さ調整オブジェクトについても、同じくオフセット量によって表示深さを調整することが可能である。
【0012】
上述した通り、表示深さ調整オブジェクトについて平行移動する方法で視差を与えるものとすれば、表示深さ調整オブジェクトについては軽い負荷で立体視を実現することができる。従って、表示時に表示深さを柔軟に変化させるなど、利便性を向上させることも可能となる。
表示深さ調整オブジェクトについて、右眼用/左眼用画像のために、それぞれ平行移動させる視差は、予め固定値でもよいし、表示の都度、計算してもよい。後者の場合、表示深さに対して右眼用/左眼用の平行移動量を与える関数またはマップを予め用意し、これらの関数またはマップに基づいて平行移動量を設定する態様をとることも可能である。
【0013】
本発明の立体視地図表示システムにおいては、
前記表示深さ調整オブジェクトに関し、ユーザによる指示に基づいて表示深さを設定する表示深さ設定部を備え、
前記表示制御部は、前記表示深さ設定部による設定結果に応じて、前記表示深さ調整オブジェクトに視差を生じさせるものとしてもよい。
こうすることで、指示に応じて柔軟に表示態様を変更することが可能となる。例えば、表示深さ調整オブジェクト同士が重なっている場合に、隠れている側を手前に表示させるように切り換えてもよい。また、表示深さ調整オブジェクトの種別に応じて表示深さを指定することによって、例えば、経路案内を最も手前に表示させるなど、ユーザが必要としている情報をより認識しやすい状態で提供することが可能となる。
【0014】
本発明は、上述した種々の特徴は、必ずしも全てを備えている必要はなく、適宜、一部を省略したり、組み合わせたりして、構成可能である。
また、本発明は、立体視地図表示システムとしての態様の他、種々の構成をとることもできる。
例えば、本発明では、平行投影により背景となる地図データおよび表示深さ調整オブジェクトの双方を含めた状態で右眼用/左眼用画像を予め用意しておく態様をとることが可能であるが、かかる態様においては、本発明は、立体視地図表示に用いる右眼用/左眼用画像データを生成する立体視地図表示データ生成システムと構成することもできる。
即ち、地物の3次元形状を表す3次元モデルおよび表示深さ調整オブジェクトを記憶した地図データベースと、
該3次元モデルに対して、右眼用/左眼用にそれぞれ指定された視線方向での平行投影を行うとともに、前記表示深さ調整オブジェクトについて視差を与えることによって、それぞれ地物および表示深さ調整オブジェクトを含む右眼用平行投影データ、左眼用平行投影データを生成する平行投影部を有する立体視地図表示データ生成システムである。
表示深さ調整オブジェクトについては、仮想的に3次元モデルと同じ3次元空間内に当該オブジェクトを表した板状のポリゴンを設定し、3次元モデルと併せて投影処理することで右眼用/左眼用画像データを生成してもよい。また、3次元モデルとは別に、表示深さ調整オブジェクトを平行移動することで、これらの画像データを生成してもよい。
【0015】
本発明は、その他、コンピュータによって立体視地図を表示する立体視地図表示方法として構成してもよいし、かかる表示をコンピュータに実行させるためのコンピュータプログラムとして構成してもよい。また、かかるコンピュータプログラムを記録したコンピュータが読み取り可能な記録媒体として構成してもよい。記録媒体としては、フレキシブルディスクやCD−ROM、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置等、コンピュータが読取り可能な種々の媒体を利用できる。
【図面の簡単な説明】
【0016】
図1】表示深さ調整オブジェクトの立体視の原理を示す説明図である。
図2】立体視地図表示システムの構成を示す説明図である。
図3】平行投影パラメータの設定方法を示す説明図である。
図4】地物データ生成処理のフローチャートである。
図5】右眼用/左眼用平行投影データの例を示す説明図である。
図6】地図表示処理のフローチャートである。
図7】座標変換処理のフローチャートである。
図8】2次元オブジェクト表示深さ設定処理のフローチャートである。
【発明を実施するための形態】
【実施例1】
【0017】
A.システム構成:
図2は、立体視地図表示システムの構成を示す説明図である。ここでは、地図を平行投影によって3次元的、かつ立体視可能に表示した上で、そこに描かれる文字等についても立体視可能に表示するシステムを例示する。単に3次元的に描いた地図ではなく立体視可能な地図という意味で、以下では、実施例で表示される地図のことを立体視地図と称する。
地図が3次元的に表示されるのに対し、表示深さの調整対象となる文字等(本発明の表示深さ調整オブジェクトに相当するもの)は2次元のデータであることから、以下の実施例で扱う表示深さ調整オブジェクトを2次元オブジェクトと呼ぶこともある。
【0018】
図1には、サーバ200からネットワークNE2等を介して提供される地図データに基づいて、端末300のディスプレイ300dに地図を表示する構成例を示した。端末300としては、スマートフォンを用いるものとしたが、携帯電話、パーソナルコンピュータ、ナビゲーション装置などを用いてもよい。また、3次元立体視地図表示システムは、端末300とサーバ200とからなるシステムの他、スタンドアロンで稼働するシステムとして構成してもよい。
図中には、地図データを生成するデータ生成装置100も併せて示した。
端末300のディスプレイ300dは、右眼用画像と左眼用画像を、それぞれ右眼、左眼で視認できるように表示可能な立体視の機能を有している。本実施例では、いわゆる裸眼での立体視が可能なディスプレイ300dを用いるものとしているが、立体視用の眼鏡等を用いて立体視するデバイスを用いても良い。
【0019】
端末300には、主制御部304の下で稼働する種々の機能ブロックが構成されている。本実施例では、主制御部304および各機能ブロックは、それぞれの機能を実現するソフトウェアをインストールすることによって構成したが、その一部または全部をハードウェア的に構成してもよい。
送受信部301は、サーバ200とのネットワークNE2を介した通信を行う。本実施例では、立体視地図を表示するための地図データおよびコマンドの送受信が主として行われる。
コマンド入力部302は、ボタンやタッチパネルの操作等を通じて、ユーザからの指示を入力する。本実施例における指示としては、3次元地図の表示範囲、拡大・縮小の指定、経路案内を行う際の出発地、目的地の設定などが揚げられる。
GPS入力部303は、GPS(Global Positioning System)の信号に基づいて緯度経度の座標値を得る。また、経路案内では、緯度経度の変化に基づいて進行方向を算出する。
地図情報記憶部305は、サーバ200から提供された地図データを一時的に記憶しておくバッファである。経路案内時のように表示すべき地図が時々刻々と移動していく場合、地図情報記憶部305では不足する範囲の地図データをサーバ200から受信して地図を表示する。
表示深さ設定部307は、地図に表示される2次元オブジェクトについて、その表示深さを設定する。表示深さの設定方法については後述する。
表示制御部306は、地図情報記憶部305に格納されている地図データおよび表示深さ設定部307の設定結果に基づいて、端末300のディスプレイ300dに立体視地図を表示する。
【0020】
サーバ200には、図示する機能ブロックが構成されている。本実施例では、これらの機能ブロックは、それぞれの機能を実現するソフトウェアをインストールすることによって構成したが、その一部または全部をハードウェア的に構成してもよい。
地図データベース210は、立体視地図を表示するためのデータベースである。本実施例では、地物データ211、2次元オブジェクト212、ネットワークデータ213を含む地図データを格納する。ネットワークデータ213は省略することもできる。
地物データ211は、道路、建物などの地物を3次元的、かつ立体視可能に表示するためのデータであり、地物の3次元モデルを右眼用/左眼用に投影条件を変えてそれぞれ平行投影することで得られた2次元のポリゴンデータである。即ち、地図データ211としては、同一の地図領域に対し、右眼用の条件で平行投影された2次元の画像データとしての右眼用画像と、左眼用の条件で平行投影された2次元の画像データとしての左眼用画像が格納されている。
2次元オブジェクト212は、地物以外に地図に表示すべき地物名称・地名・案内情報等を表す文字、地図記号・通行規制標識、経路案内における現在位置を表すシンボルデータや経路などを構成する矢印のポリゴンデータ等である。現在位置や経路のように表示位置が不定のものを除き、2次元オブジェクト212には、表示すべき文字や記号などのデータ、および表示位置が対応づけて格納されている。表示位置は、3次元空間上の位置としてもよいし、平行投影された投影画像上の位置座標としてもよい。また、地物名称のように、特定の地物と関連づけられた2次元オブジェクト212については、地物との関連付けを表すデータも併せて格納されている。
本実施例では、2次元オブジェクト212は、表示時に視差を与えるものとしているが、変形例として、予め決まった視差で立体視可能な構成とすることもできる。かかる場合には、2次元オブジェクト212としては、立体視可能な右眼用画像と左眼用画像の形式で格納しておいてもよい。また、地物データ211と2次元オブジェクト212とを重畳した状態の画像データを、地物データ211として格納しておくこともできる。
ネットワークデータ213は、道路をノード、リンクの集まりで表現したデータである。ノードとは、道路同士の交点や道路の端点に相当するデータである。リンクはノードとノードとを結ぶ線分であり、道路に相当するデータである。本実施例では、ネットワークデータ213を構成するノード、リンクの位置は、緯度経度および高さの3次元データで定められている。
送受信部201は、ネットワークNE2を介して端末300とのデータの送受信を行う。本実施例では、3次元地図を表示するための地図データおよびコマンドの送受信が主として行われる。また、送受信部201は、ネットワークNE1を介してデータ生成装置100との通信も行う。本実施例では、生成された地図データの授受が主として行われる。
データベース管理部202は、地図データベース210からのデータの読み出し、書き込みを制御する。
経路探索部203は、地図データベース210内のネットワークデータ213を用いて、経路探索を行う。経路探索には、ダイクストラ法などを用いることができる。上述の通り、経路探索によって得られた経路を表す矢印等も、2次元オブジェクトに該当する。
【0021】
データ生成装置100には、図示する機能ブロックが構成されている。本実施例では、これらの機能ブロックは、パーソナルコンピュータに、それぞれの機能を実現するソフトウェアをインストールすることによって構成したが、その一部または全部をハードウェア的に構成してもよい。
送受信部105は、ネットワークNE1を介してサーバ200とデータの授受を行う。
コマンド入力部101は、キーボード等を介してオペレータの指示を入力する。本実施例では、地図データを生成すべき領域の指定、平行投影パラメータの指定等が含まれる。平行投影パラメータとは、平行投影する際の投影角度、投影方位を言う。投影角度とは、鉛直方向からどれだけ傾けて投影するかを意味する。
3D地図データベース104は、地図データを生成するために用いられる3次元モデルを格納するデータベースである。道路、建物などの地物については、3次元形状を表す電子データが格納されている。また、地図中に表示すべき文字、記号などの2次元オブジェクトも、格納されている。
平行投影部102は、3D地図データベース104に基づいて平行投影による描画を行って地物データを生成する。描画された投影図は、平行投影データ103として格納され、送受信部105を介してサーバ200の地図データベース210の地物データ211に格納される。投影パラメータ修正部106は、平行投影を行う際に、指定された平行投影パラメータを修正し、右眼用/左眼用の平行投影パラメータを設定する。修正方法については後述するが、平行投影時の投影方向を右眼用/左眼用で異ならせるのである。こうすることで、立体視するための右眼用画像、左眼用画像をそれぞれ生成することができる。
【0022】
B.平行投影パラメータの設定:
図3は、平行投影パラメータの設定方法を示す説明図である。平行投影パラメータには、鉛直方向からの傾きを示す投影角度、投影方位が含まれる。
まず図3(a)に示すように3軸を定義する。即ち水平面内にx軸、z軸を定義し、鉛直下方向にy軸を定義する。x軸、y軸、z軸は右手座標系である。図示する通り地物の鉛直上方にカメラを置いて平行投影すると2次元地図が描かれることになる。本実施例に言う平行投影は、この状態から傾けた状態で投影することを言う。
この場合、x軸周りにカメラを回転させると、鉛直方向から斜めに傾けて平行投影することになるので、x軸周りの回転は投影角度を表すことになる。また、y軸方向にカメラを回転させると、水平方向で平行投影の方位が変化することになるので、y軸周りの回転は投影方位を表すことになる。そして、z軸周りにカメラを回転させると、以下に示す通り視差を与えることができる。
図3(b)に視差が生じる理由を示した。図3(b)はz軸方向に地物を見た状態、つまり、z軸が紙面に垂直な状態となっている。視差は、この地物を鉛直上方からy軸方向に見た時に、右眼、左眼の位置の違いによって生じる視線方向の相違である。従って、図中における基準のカメラ位置CCに対して、右眼から見た状態に相当するカメラ位置CR、左眼から見た状態に相当するカメラ位置CLで投影することによって、視差を与えた右眼用/左眼用の画像を生成することができる。視差、即ちz軸周りの回転角δは、任意に設定可能であるが、違和感のない視差を与え得る角度としては、例えば、約20度程度とすることができる。
このように、投影角度、投影方位に加えて、図3(b)で示した視差を考慮して平行投影を行うことにより、平行投影であっても、立体視可能な右眼用/左眼用画像を生成することができる。
【0023】
C.地物データ生成処理:
次に、地物データ211、即ち地物の3次元モデルを右眼用/左眼用に投影条件を変えてそれぞれ平行投影した2次元のポリゴンデータを生成するための処理について説明する。この処理は、データ生成装置100の平行投影部102が主として実行する処理であり、ハードウェア的には、データ生成装置100のCPUが実行する処理である。
図4は、地物データ生成処理のフローチャートである。
処理を開始すると、CPUは、処理対象となるメッシュの指定、および平行投影パラメータを入力する(ステップS10)。メッシュとは、地図データの作成対象となる全領域を、所定の大きさの矩形領域に区切った一つ一つを言う。指定方法は、メッシュ固有のインデックス、メッシュの座標などを用いることができる。地図上でオペレータが指定した点の座標値を含むメッシュをデータ生成装置100が解析し、これを処理対象のメッシュとして設定する方法をとってもよい。
平行投影パラメータは、投影方位と投影角度である。この段階では、視差は0度としておく。投影方位および投影角度は、地物データを生成する度にオペレータが指定するものとしてもよいし、デフォルト値を用いるようにしてもよい。
投影方位は、いずれか単一の方位としてもよいが、本実施例では、方位を45度ずつずらした8方位について、それぞれ平行投影を行い、地物データを生成するものとした。このように多方位で地物データを用意しておけば、いずれかの投影方位で建物の陰になるなどの死角が生じた場合でも、他の投影方位を利用することにより、死角を回避した表示を実現できる利点がある。
【0024】
次に、CPUは、対象メッシュおよびその周辺の所定範囲のメッシュについて、3D地図データベースを読み込む(ステップS11)。周辺の所定範囲のメッシュも読み込む理由は、次の通りである。
本実施例では、3D地図データベースに含まれる3次元の地物データを鉛直方向に対して所定の投影角度だけ傾けた斜め方向から平行投影することによって地物データを生成する。このように斜め方向からの平行投影を行う場合、処理対象となるメッシュの周辺のメッシュに存在する地物の一部が投影されることもある。逆に、単に対象メッシュだけの3D地図データベースを利用して平行投影を行ったのでは、他のメッシュに存在する地物の投影図が欠けてしまい、適切な地物データを得ることができない。これを回避するため、本実施例では、対象メッシュの周辺のメッシュも読み込むこととしている。読み込む範囲は、任意に設定可能であるが、本実施例では、対象メッシュから2区画以内のメッシュに属する3D地図データを読み込むものとした。
【0025】
次に、CPUは、左眼用視差、右眼用視差を設定する(ステップS12)。先に図3(b)で示したように、投影方位および投影角度で定まる平行投影の方向を、さらにz軸周りに±δ度だけ回転させるのである。この処理は、投影パラメータ修正部106の処理に相当する。
そして、CPUは、こうして設定された左眼用視差を用いて平行投影を行うことにより左眼用画像を生成し(ステップS13)、右眼用視差を用いて平行投影を行うことにより右眼用画像を生成する(ステップS14)。それぞれ生成される画像は、平行投影によって地物を3次元的に表現した2次元画像データとなる。平行投影によって生成された左眼用/右眼用画像を、左眼用/右眼用平行投影データと呼ぶこともある。
CPUは、こうして得られた左右眼用画像から、それぞれ対象メッシュに相当する領域を切り出し(ステップS15)、左眼用画像データ、右眼用画像データからなる地物データとして格納する(ステップS16)。これらの画像データは、2次元のポリゴンデータとして格納するものとしたが、ラスタデータとして格納してもよい。また、左眼用/右眼用画像データの切出しおよび格納の際には、各ポリゴンに名称、位置、形状などの属性を併せて整備してもよい。
以上の処理を全投影方位、全メッシュについて実行することによって、データ生成装置100は、本実施例の地物データ211を整備することができる。
【0026】
図5は、右眼用/左眼用平行投影データの例を示す説明図である。図5(a)には右眼用平行投影データを示し、図5(b)には左眼用平行投影データを示した。それぞれの画像においては、平行投影によって、地物が3次元的に表示されている。例えば、領域A1と領域B1、領域A2と領域B2をそれぞれ比較すると、建物の側壁の描かれ方などから、右眼用/左眼用の視差の相違を認識することができる。このように用意された右眼用/左眼用平行投影データを用いることによって、3次元地図を立体視することが可能となる。
【0027】
D.地図表示処理:
図6は、地図表示処理のフローチャートである。ここでは、ユーザから指定された地点、方位に従って、背景となる地図を立体視可能に表示するとともに、文字等の2次元オブジェクトをその手前に立体視可能に表示する処理の例を示す。この処理は、経路探索と併せて用いることにより、経路案内表示として利用することもできる。
地図表示処理は、端末300の主制御部304および表示制御部306が実行する処理であり、ハードウェア的には端末300のCPUが実行する処理である。
【0028】
この処理では、まず端末300は、ユーザから指定された表示位置、方位、範囲を入力する(ステップS100)。表示位置は、例えば、GPSで得られる現在位置を用いるものとしてもよい。
端末300は、指定に従って、地図情報記憶部305から左右眼用平行投影データを読み込む(ステップS101)。地図情報記憶部305に蓄積されていない領域のデータが必要な場合には、端末300は、サーバ200から当該データをダウンロードする。
次に、端末300は、同じく地図情報記憶部305から、2次元オブジェクト(文字、記号(地図記号・通行規制標識を含む)、現在位置、経路表示等)のデータを読み込む(ステップS101)。2次元オブジェクトは、地図の機能等に基づき、必要なもののみを読み込むようにしてもよい。
【0029】
2次元オブジェクトには、3次元空間内で表示位置が指定されているから、端末300は、読み込んだ2次元オブジェクトに対して座標変換処理を施し、表示画面上の表示位置を求める(ステップS300)。ここで一旦、座標変換の方法について説明する。
図7は、座標変換処理のフローチャートである。
処理を開始すると、端末300は、平行投影パラメータとして投影角度、投影方位を入力し、座標変換行列を作成する(ステップS301、302)。ここでは、2次元オブジェクトの基準となる表示位置(図1(b)の中心基準画像に相当する位置)を求めるための座標変換なので、視差は用いない。
座標変換行列は、3次元の位置情報を、y軸周りに投影方位(β度とする)だけ回転させた後、x軸周りに投影角度(α度とする)だけ回転させる行列となる。
端末300は、2次元オブジェクトのデータを入力し(ステップS303)、上述の方法で得られる座標変換行列によって、座標変換することによって(ステップS304)、表示画面上での2次元オブジェクトの位置を求めることができる。
【0030】
図6の地図表示処理に戻り、次に、端末300は、2次元オブジェクト表示深さ設定処理を行う(ステップS400)。これは、各2次元オブジェクトに対して、いかなる表示深さで立体視を行うかを設定するための処理である。この処理によって、例えば、文字情報を他の記号等よりも手前に表示したり、文字同士が重なっている場合に、一方を他方よりも手前に表示するなどの態様での立体視が可能となる。
【0031】
ここで一旦、図8により、表示深さ設定処理の内容について説明する。図8は、2次元オブジェクト表示深さ設定処理のフローチャートである。
端末300は、まず2次元オブジェクトの種別による優先度設定を行う(ステップS400)。図中に示す通り、本実施例では、デフォルト設定の他、ユーザによる任意の設定も可能とした。デフォルト設定では、文字、記号、経路表示の順に優先度が設定される。これは、文字が最も手前に表示され、次に現在位置や通行規制を表す記号、経路表示の順に奥に表示されることを意味している。デフォルト設定における優先度は、これに限らず、任意の設定が可能である。
次に、端末300は、重複する文字の有無を判定する(ステップS401)。図中に判定方法を示した。各文字列には、代表点と文字の表示領域があり、これに基づいて、図中に示すように、「文字1」「文字2」が表示されている範囲として、矩形の表示領域を求めることができる。文字の重複の有無は、この文字の表示領域と代表点の位置関係に基づいて判定する。図の例で言えば、文字2の代表点2は、文字1の文字列表示領域1に属している。一方、文字1の代表点1は、文字2の文字列表示領域2に属してはいない。従って、かかる位置関係においては、文字2が、文字1によって隠される位置関係にあると判定することができる。図の例では、代表点を文字列表示領域の左下に設定しているが、代表点の位置は、文字列表示領域の重心位置など任意に設定可能である。
端末300は、重複する文字列がある場合、文字間の表示深さの設定を行う(ステップS402)。表示深さの設定は、以下に示す種々の基準に基づいて行うことができる。
例えば、図中に示すように、文字列が建物の名称に該当する場合には、文字列に関連づけられた建物の属性を参照し、その高さに応じて文字列の表示深さを設定してもよい。高い建物の文字列ほど、手前に表示されるようにするのである。
また、地物の優先度に基づく設定をしてもよい。例えば、地物の種別に応じてランドマーク>一般のビル>家屋>道路などのように優先度を設定しておき、優先度の高い地物に関連づけられている文字列ほど、手前に表示されるようにするのである。
文字列の表示領域サイズに基づく設定をしてもよい。表示領域サイズが大きい文字列ほど重要性が高いと考えて、手前に表示されるようにしてもよいし、逆に、表示領域サイズが大きい文字列は多少隠れても判読可能と考え、奥に表示されるように設定してもよい。
代表点包含関係による設定をしてもよい。代表点が他の文字列表示領域に属する側を、隠れている側と判定し、奥に表示されるよう設定するのである。それぞれの代表点が相互に文字列表示領域に包含されている場合には、その他の基準によって表示深さを設定するようにすればよい。
上述した方法は、自動的に表示深さを設定するものであるが、これとは別に、ユーザが個別に表示深さを指定可能としてもよい。こうすることにより、例えば、一旦表示された地図上で、隠れている文字を手前にするよう指定して再度、地図を表示させることが可能となる。
ここで説明した表示深さ設定方法(ステップS400〜S402)は、いずれか一つのみを選択して使用するようにしてもよいし、複数の設定方法を、所定の優先度で順次適用するようにしてもよい。
図8の例では、重複する文字を対象として表示深さを設定する例を示したが、他の2次元オブジェクトについても、同様の方法を適用可能である。
図8で示した処理によって設定される表示深さは、任意の値を取り得るようにしてもよいし、表示深さ「深い」「中間」「浅い」のように予め量子化された値のいずれかを選択するものとしてもよい。
【0032】
こうして表示深さを設定すると、端末300は、設定された表示深さに基づき2次元オブジェクトの左右眼用画像を生成する(ステップS500)。これは、図1に示すように、2次元オブジェクトの表示位置を座標変換(ステップS300)で得られた位置から左右(x方向)にオフセットすることによって得られる。オフセット量は次の考え方で求めることができる。
即ち、2次元オブジェクトを設定された表示深さhに応じた3次元位置に設定し、視差δによる回転行列を作用させて得られるx座標の変位が右眼用/左眼用の2次元オブジェクトのオフセット量となる。視差δは規定値(本実施例では20度)を用い可変値ではないから、この回転行列を作用させた場合の座標のオフセット量は表示深さhの関数となり、「オフセット量=h・tanδ」で与えられる。従って、この関数を予め記憶させておくことにより、表示深さに応じたオフセット量を容易に得ることができる。
【0033】
最後に、端末300は、左右眼用平行投影データおよび2次元オブジェクトを重畳して表示し(ステップS501)、地図表示処理を終了する。こうして表示された右眼用画像を右眼で、左眼用画像を左眼で認識することにより、ユーザは背景の地図および2次元オブジェクトを立体視することができる。
左右眼用平行投影データは、既に平行投影された後の2次元のポリゴンデータに過ぎないから、ステップS501の処理においては、取得したデータに従ってポリゴンを描画するだけで投影処理を行うまでなく軽い負荷で立体視を実現することができる。
【0034】
以上で説明した本実施例の立体視地図表示システムによれば、表示深さを変えた立体視によって2次元オブジェクトを表示することができるため、2次元オブジェクト同士が重複している場合でも、その判別が可能となる利点がある。
また、かかる立体視を実現する際に、背景となる地図の立体視用の画像とは別に、2次元オブジェクトについてはオフセットすることによって立体視画像を作成することができるため、比較的軽い負荷、かつ柔軟に2次元オブジェクトの立体視を実現することができる。
さらに、本実施例では、地図については平行投影データを用いて立体視を実現している。平行投影データは視点位置に関わらず全領域で共通して用いることができるため、立体視用の画像データも予め全領域で生成しておくことができ、非常に軽い負荷で立体視を実現できる利点がある。
【0035】
以上、本発明の実施例について説明した。立体視地図表示システムは、必ずしも上述した実施例の全ての機能を備えている必要はなく、一部のみを実現するようにしてもよい。また、上述した内容に追加の機能を設けてもよい。
実施例では、2次元オブジェクトに対して表示時に視差を与えるものとしているが、変形例として、2次元オブジェクトを予め決まった視差で立体視可能な構成とすることもできる。かかる場合には、2次元オブジェクト212のデータは、2次元オブジェクトに対してオフセットを与え(図8のステップS500)、立体視可能な右眼用画像と左眼用画像の形式で格納しておいてもよい。また、地物データ211と2次元オブジェクト212とを重畳した状態の画像データを、地物データ211として格納しておくこともできる。
またそれぞれの2次元オブジェクトに対して、予めデフォルトのオフセット量、または表示深さを対応づけて格納しておいてもよい。こうすることにより、表示深さ設定処理(図8)を省略して2次元オブジェクトの立体視を実現することもできる。
2次元オブジェクトの表示深さやオフセット量は、必ずしも2次元オブジェクトに対応づけて記憶させておく必要はなく、例えば、地物データに記憶させておくようにしてもよい。この態様では、座標変換(図6のステップS300)によって、2次元オブジェクトの表示位置を得た後、その座標値に対応する地物データを参照することで、表示深さまたはオフセット量を得ればよい。
このように2次元オブジェクトに対して、表示深さやオフセット量を対応づけておく方法は、他にも多様な方法を採ることができる。
本発明は上述の実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてハードウェア的に構成されている部分は、ソフトウェア的に構成することもでき、その逆も可能である。
【産業上の利用可能性】
【0036】
本発明は、地物以外に地図上に表示される種々の情報を、判読しやすい態様で提供するために利用可能である。
【符号の説明】
【0037】
100…データ生成装置
101…コマンド入力部
102…平行投影部
103…平行投影データ
104…3D地図データベース
105…送受信部
106…投影パラメータ修正部
200…サーバ
201…送受信部
202…データベース管理部
203…経路探索部
210…地図データベース
211…地物データ
212…文字データ
213…ネットワークデータ
300…端末
300d…ディスプレイ
301…送受信部
302…コマンド入力部
303…GPS入力部
304…主制御部
305…地図情報記憶部
306…表示制御部
307…表示深さ設定部
図1
図2
図3
図4
図6
図7
図8
図5