(57)【特許請求の範囲】
【請求項１】
３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、
前記記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段と、
ユーザからの入力に基づき、視点位置、視線方向を少なくとも含む視点データを更新する更新手段とを備え、
前記更新手段は、視点を移動させる場合に、ユーザが指定した地点（以下、「指定地点」と呼ぶ。）に関わる情報に基づき、移動の終了地点、移動経路、視線方向の変位パターンのうち少なくともいずれかを制御して、視点データを更新し、
指定地点に関わる情報は、指定地点が含まれるオブジェクトの面領域の法線ベクトルの情報を含み、
前記更新手段は、前記面領域の法線ベクトルの向きが水平であり、前記面領域が建物の壁面に該当する場合、少なくとも視点の移動が終了する際に視線方向が前記法線ベクトルの向きと一致するように、視点データを更新することを特徴とする３次元データ処理システム。
【請求項２】
３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、
前記記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段と、
ユーザからの入力に基づき、視点位置、視線方向を少なくとも含む視点データを更新する更新手段とを備え、
前記更新手段は、視点を移動させる場合に、ユーザが指定した地点（以下、「指定地点」と呼ぶ。）に関わる情報に基づき、移動の終了地点、移動経路、視線方向の変位パターンのうち少なくともいずれかを制御して、視点データを更新し、
指定地点に関わる情報は、指定地点が含まれるオブジェクトの面領域の法線ベクトルの情報を含み、
前記更新手段は、前記法線ベクトルの向きが地表に対して垂直である場合に、少なくとも視点の移動が終了する際に視線方向が前記法線ベクトルの向きと直交するように、視点データを更新することを特徴とする３次元データ処理システム。
【請求項３】
３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、
前記記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段と、
ユーザからの入力に基づき、視点位置、視線方向を少なくとも含む視点データを更新する更新手段とを備え、
前記更新手段は、視点を移動させる場合に、ユーザが指定した地点（以下、「指定地点」と呼ぶ。）に関わる情報に基づき、移動の終了地点、移動経路、視線方向の変位パターンのうち少なくともいずれかを制御して、視点データを更新し、
指定地点に関わる情報は、指定地点が含まれるオブジェクトの最小包囲直方体の情報を含み、
前記更新手段は、前記最小包囲直方体の全体を視野内におさめるようにイメージを作成した場合に、視点地点が含まれるオブジェクト又は前記最小包囲直方体の表示面積が最大又は所定閾値以上となる地点が移動の終了地点となるように、視点データを更新することを特徴とする３次元データ処理システム。
【請求項４】
３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段と、視点位置、視線方向を少なくとも含む視点データを更新する更新手段とを備えた３次元データ処理システムにおける３次元データ処理方法であって、
前記イメージ作成手段が、前記記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成工程と、
前記更新手段が、ユーザからの入力に基づき、視点位置、視線方向を少なくとも含む視点データを更新する更新工程とを備え、
前記更新工程は、視点を移動させる場合に、ユーザが指定した地点（以下、「指定地点」と呼ぶ。）に関わる情報に基づき、移動の終了地点、移動経路、視線方向の変位パターンのうち少なくともいずれかを制御して、視点データを更新するものであり、
指定地点に関わる情報は、指定地点が含まれるオブジェクトの最小包囲直方体の情報を含み、
前記更新工程は、前記最小包囲直方体の全体を視野内におさめるようにイメージを作成した場合に、視点地点が含まれるオブジェクト又は前記最小包囲直方体の表示面積が最大又は所定閾値以上となる地点が移動の終了地点となるように、視点データを更新することを特徴とする３次元データ処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元データ処理技術に関し、特に、コンピュータシステム内に３次元仮想空間を形成し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を表示する技術に関する。
【０００２】
【従来の技術】
近年、コンピュータの処理能力等の向上に伴い、３次元データ処理技術を利用した様々なシステムの実用化が進んでいる。例えば、実際に存在する都市等について３次元データを計測し、これに基づいてコンピュータシステム内に仮想的に３次元都市空間を形成し、空間内の任意の視点からの都市景観を表示することができる３次元データ処理システム等が開発されており、都市計画、不動産、ゲーム等の種々の応用分野において広く利用されている。
【０００３】
仮想的な３次元空間に配置されるオブジェクトは、現実世界における種々の物体をモデリングして形成される。例えば、建築物、動植物、フィールド（地面、床など）などをモデリングしたオブジェクトが考えられる。オブジェクトを画面に表示する場合、オブジェクトの表面には通常テクスチャがマッピングされる。かかるテクスチャには、例えば現実世界で撮影した写真等を用いることができる。
【０００４】
【発明が解決しようとする課題】
従来の３次元データ処理システムには以下のような課題が存在する。
（１）第１の課題
従来の３次元データ処理システムでは、一般に、視点からオブジェクトまでの距離に依存してオブジェクトの表示態様（どの程度詳細に表示するか、又は表示自体の有無など）を決定するＬＯＤ（レベル・オブ・ディテール）と呼ばれるアルゴリズムに基づいてオブジェクトの表示を制御している場合が多い。ＬＯＤを用いることで、視野内のオブジェクトを固定的に表示する方法に比較して、高速に処理を実行することができる。
【０００５】
一方、３次元表示を行う場合、ユーザの利用目的によって、優先表示させたいオブジェクトや、詳細表示させたいオブジェクトは異なると考えられる。例えば、ナビゲーションシステムに利用する場合であれば、方向や位置関係を把握するのに役立つオブジェクト（例えば、高層建造物や著名な建物など）については、該オブジェクトが遠くに位置している場合でも、表示画面から消えて無くなってしまうことは避けたいと考えるであろう。また例えば、不動産業者等が営業活動に利用する場合であれば、特定のオブジェクト（例えば、自社物件など）については、該オブジェクトが遠くに位置していたとしても、詳細に表示させたいと考えることが予想される。
【０００６】
しかし、従来のようにＬＯＤに基づいて３次元表示をする場合、オブジェクトの表示態様は単純に視点とオブジェクトとの距離によって一律に決定されてしまうため、ユーザの利用目的に沿った柔軟な表示には対応することができない。
【０００７】
そこで、本発明は、３次元データ処理システムにおいて、オブジェクトの表示態様を柔軟に制御して表示させることができる技術を提供することを第１の目的とする。
（２）第２の課題
従来の３次元データ処理システムでは、視点を移動させて３次元表示を行う場合、例えば単純に視線方向と移動方向とを一致させた状態で、指定した点まで視点を移動させている場合が多い。
【０００８】
しかし、このような方法では、例えば移動先として指定した点が壁面上にある場合、移動後に壁面が画面いっぱいに表示されてしまうため、周囲の状況が把握しづらく、利用者にとって非常に不便である。また、例えば高所から低所に移動する場合なども、移動後に地面が画面いっぱいに表示されてしまうという同様の問題が生じ得る。
【０００９】
また、単純に指定した点まで移動させる方法では、希望の建物を大きく表示させたいと思ってその建物を指定した場合でも、その建物上の指定した点に移動してしまい、結果として建物に近づきすぎて建物の一部しか表示されないといった状況が起こり得る。
【００１０】
そこで、本発明は、３次元データ処理システムにおいて、このような視点移動における表示上の問題点を改善し、適切な視点移動を実現する技術を提供することを第２の目的とする。
（３）第３の課題
従来の３次元データ処理システムにおいて３次元表示を行う場合、ある点から見えるかどうか、すなわち可視という考え方が基本となる。
【００１１】
しかし、可視という考え方のみならず、ある点が見えるかどうか、すなわち被可視という考え方も重要である。例えば、重要人物の部屋や立ち位置について被可視の是非を検討することは、狙撃等のテロや盗撮の防止という点で、防犯上、大変役に立つと考えられる。また例えば、広告や案内等は消費者や利用者から見えて初めてその役割を達成できることから、広告等を設置する場合に事前に被可視の是非を検討することは、やはり大いに役に立つと考えられる。
【００１２】
しかし、このような被可視という考え方について検討された例はほとんど存在せず、事実、被可視という考え方に基づく具体的な機能を備えた３次元データ処理システムは未だ提案・開発されていない。
【００１３】
そこで、本発明は、３次元データ処理システムにおいて、被可視という考え方に基づき有用な機能を提供することを第３の目的とする。
【００１４】
【課題を解決するための手段】
本発明の３次元データ処理システムは、３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、前記記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段とを備え、前記イメージ作成手段は、視点からオブジェクトまでの距離と基準距離との比較結果に基づいてオブジェクトの表示態様を決定する手段と、オブジェクトの表示優先度に基づいて該オブジェクトに適用する基準距離を決定する手段と、を備えることを特徴とする。
【００１５】
また、本発明の３次元データ処理システムは、３次元仮想空間に配置するオブジェクトの３次元データを記憶する第１記憶手段と、第１記憶手段より高速に記憶内容にアクセスすることができる第２記憶手段と、第１記憶手段が記憶する３次元データの第２記憶手段への書き込み、及び、第２記憶手段の記憶領域の解放を管理する管理手段と、前記第２記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段とを備え、前記管理手段は、視点からオブジェクトまでの距離と基準距離との比較結果に基づいて、該オブジェクトの３次元データを第２記憶手段へ書き込むかどうか、又は／及び、オブジェクトの３次元データについて記憶領域を解放するかどうかを決定する手段と、オブジェクトの表示優先度に応じて該オブジェクトに適用する基準距離を決定する手段と、を備えることを特徴とする。
【００１６】
前記オブジェクトの表示優先度は、ユーザからの入力に基づいて、又は／及び、前記記憶手段に記憶する３次元データに基づいて、決定されることが望ましい。また、前記オブジェクトの表示優先度は、オブジェクトに適用する基準距離に一致していてもよい。
【００１７】
また、本発明の３次元データ処理システムは、３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、前記記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成手段と、ユーザからの入力に基づき、視点位置、視線方向を少なくとも含む視点データを更新する更新手段とを備え、前記更新手段は、視点を移動させる場合に、ユーザが指定した地点（以下、「指定地点」と呼ぶ。）に関わる情報に基づき、移動の終了地点、移動経路、視線方向の変位パターンのうち少なくともいずれかを制御して、視点データを更新することを特徴とする。
【００１８】
指定地点に関わる情報は、指定地点が含まれるオブジェクトの面領域の法線ベクトルの情報、又は、指定地点が含まれるオブジェクトの最小包囲直方体の情報を含むことが望ましい。
【００１９】
好適には、前記更新手段は、前記法線ベクトルの向きが略水平である場合に、少なくとも視点の移動が終了する際に視線方向が前記法線ベクトルの向きと略一致するように、視点データを更新する。
【００２０】
また好適には、前記更新手段は、前記法線ベクトルの向きが略垂直である場合に、少なくとも視点の移動が終了する際に視線方向が前記法線ベクトルの向きと略直交するように、視点データを更新する。
【００２１】
また好適には、前記更新手段は、前記最小包囲直方体の全体を視野内におさめるようにイメージを作成した場合に、指定地点が含まれるオブジェクト又は前記最小包囲直方体の表示面積が最大又は所定閾値以上となる地点が移動の終了地点となるように、視点データを更新する。
【００２２】
また、本発明の３次元データ処理システムは、３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段と、３次元仮想空間内に被可視についての対象領域と候補領域を設定する手段と、前記記憶手段を参照し、候補領域内のうち、「その領域から対象領域に結んだ仮想ラインが他のオブジェクトに交わらない」という抽出条件を満たす領域（以下、「被可視領域」と呼ぶ。）を抽出する手段と、を備えることを特徴とする。
【００２３】
好適には、更に、被可視領域における仮想ラインに基づいて被可視の程度を示す尺度（以下、「被可視度」と呼ぶ。）を決定する手段を備える。
【００２４】
また好適には、更に、仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成し出力する出力手段を備え、前記出力手段は、被可視領域に該当するか否かに基づいて、又は／及び被可視度に基づいて、オブジェクトの表示態様を制御して前記イメージを作成する。
【００２５】
前記対象領域は、防犯支援対象が位置する領域とすることができる。また、前記対象領域は、広告を配置する領域とすることができ、その場合、更に、被可視領域のサイズに基づいて、配置した広告の有効度を決定する手段を備えることが望ましい。
【００２６】
本発明の３次元データ処理方法は、３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成工程と、視点からオブジェクトまでの距離と基準距離との比較結果に基づいてオブジェクトの表示態様を決定する工程と、オブジェクトの表示優先度に基づいて該オブジェクトに適用する基準距離を決定する工程と、を備えることを特徴とする。
【００２７】
また本発明の３次元データ処理方法は、３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段を参照し、視点から見た仮想空間内の一定の範囲におけるオブジェクトの様子を示すイメージを作成するイメージ作成工程と、ユーザからの入力に基づき、視点位置、視線方向を少なくとも含む視点データを更新する更新工程とを備え、前記更新工程は、視点を移動させる場合に、ユーザが指定した地点（以下、「指定地点」と呼ぶ。）に関わる情報に基づき、移動の終了地点、移動経路、視線方向の変位パターンのうち少なくともいずれかを制御して、視点データを更新することを特徴とする。
【００２８】
また本発明の３次元データ処理方法は、３次元仮想空間内に被可視についての対象領域と候補領域を設定する工程と、３次元仮想空間に配置するオブジェクトの３次元データを記憶する記憶手段を参照して、候補領域内のうち、「その領域から対象領域に結んだ仮想ラインが他のオブジェクトに交わらない」という抽出条件を満たす領域（以下、「被可視領域」と呼ぶ。）を抽出する工程と、を備えることを特徴とする。
【００２９】
本発明の３次元データ処理システムは、ＣＰＵ、入出力手段（キーボード、マウス、ディスプレイ、タッチパネルなど）、記憶手段（ＲＡＭ、ＲＯＭ、ハードディスクなど）、通信インタフェース等を備えた一般的な構成の情報処理装置において、本発明の３次元データ処理方法における各工程を規定したソフトウェアを起動することにより、実現することができる。ただし、物理的に専用化したシステムとして３次元データ処理システムを構成してもよい。
【００３０】
また、本発明の３次元データ処理システムは、単一のコンピュータにより構成されるものであっても、ネットワーク上に分散した複数のコンピュータにより構成されるものであってもよい。例えば、３次元データを記憶する手段と他の手段とを異なるコンピュータ上で実現し、それらを通信ネットワークを介して接続することで、３次元データ処理システムを構成してもよい。
【００３１】
本発明のプログラムは、本発明の３次元データ処理方法の各工程をコンピュータ上で実行させることを特徴とする。本発明のプログラムは、ＣＤ−ＲＯＭ、磁気ディスク、半導体メモリなどの各種の記録媒体を通じて、又は通信ネットワークを介して、コンピュータにインストールまたはロードすることができる。
【００３２】
【発明の実施の形態】
（第１の実施形態）
本発明の第１の実施形態について図面を用いて説明する。図１は、本発明の第１実施形態である３次元データ処理システムの構成をあらわすブロック図である。  図１に示すように、本発明に係る３次元データ処理システム１は、３次元データ記憶手段１０、視点データ記憶手段１１、基準距離記憶手段１２、インタフェース（ＩＦ）手段１３、制御手段１４等を含んで構成される。
【００３３】
３次元データ記憶手段１０は、システム内に形成する３次元仮想空間に配置されるオブジェクトの３次元データを記憶している。
【００３４】
３次元データは、オブジェクトを構成する頂点のワールド座標値を少なくとも含んでおり、オブジェクトの属性情報を含むこともできる。３次元データのデータ構造は、概念的には図２に示すようなテーブル構造となる。
【００３５】
オブジェクトテーブルは、オブジェクトＩＤに対応づけて、オブジェクトを構成する面数、オブジェクトの属性情報（オブジェクト名称、表示優先度など）を格納している（図２（ａ）参照）。
【００３６】
表示優先度は、視点からオブジェクトまでの距離と基準距離との比較結果に基づいてオブジェクトの表示態様を決定する場合の、該基準距離を決定するために利用される情報である。表示優先度は基準距離そのものに一致していてもよい。
【００３７】
表示優先度は、ユーザからの入力に基づいて、又は／及び、３次元データ記憶手段１０に記憶する３次元データに基づいて、決定することができる。
【００３８】
前者の場合、例えば、後述する３次元空間ビューイング処理に基づき出力されるイメージ上でユーザからオブジェクトの指定を受け付けるとともに、前記指定したオブジェクトの表示優先度を併せて受け付けるように処理を構成することが考えられる。この場合、ユーザは、イメージを参照しながら、その利用目的に応じて個別にオブジェクトを指定して表示優先度を設定することができる。
【００３９】
後者の場合、例えば、３次元データに基づいてオブジェクトのサイズ情報（容積、表面積、高さ等）を求め、サイズが大きいオブジェクトほど表示優先度を高くするというように、サイズ情報に応じて表示優先度を決定することが考えられる。この場合、ユーザは、利用目的に応じて基準となるサイズ情報を指定することで、包括的にオブジェクトの表示優先度を設定することができる。なお、オブジェクトの属性情報に応じて表示優先度を決定する構成も考えられる。
【００４０】
面テーブルは、面ＩＤに対応づけて、面が属するオブジェクトのＩＤ、面を構成する頂点数、面属性情報（マッピングするテクスチャ情報など）を格納している（図２（ｂ）参照）。
【００４１】
頂点テーブルは、頂点ＩＤに対応づけて、頂点が属する面のＩＤ、頂点が属するオブジェクトのＩＤ、頂点のＸ座標、Ｙ座標、Ｚ座標の各値などを格納している（図２（ｃ）参照）。これら各座標は、仮想空間の一点を座標原点としたワールド座標系で定義される。
【００４２】
視点データ記憶手段１１は、３次元仮想空間に設定された視点のデータ（視点位置座標、視線方向（ヨー、ピッチ、ロール）、視野角など）を記憶している。
【００４３】
基準距離記憶手段１２は、表示優先度と基準距離との対応関係を記憶している。図３に対応関係の例を示す。なお、表示優先度が基準距離そのものに一致する場合は、基準距離記憶手段１２を省略することができる。
【００４４】
ＩＦ手段１３は、キーボード等の入力装置やディスプレイやプリンタ等の出力装置を介してユーザに対し情報を入出力可能に構成されている。ＩＦ手段１３は、通信ネットワークを介してユーザ（ユーザ端末）に対し入出力可能に構成されていてもよく、その場合、例えばＰＰＰドライバ、ＴＣＰ／ＩＰドライバ等の通信モジュールを備える。
【００４５】
制御手段１４は、３次元データ処理システム１全体の動作を制御するとともに、ユーザから種々の入力を受け付け、３次元空間ビューイング処理、視点移動制御処理などを実行する。また、被可視領域抽出処理を実行し、その応用処理として、防犯支援処理や広告配置支援処理を実行する。図１では、制御手段１４において実行される主要な各処理をそれぞれ機能手段としてとらえて図示している。
【００４６】
（３次元空間ビューイング処理：図４）
制御手段１４は、３次元データ処理システム１にアクセスしてきたユーザに対し、ＩＦ手段１３を通じてメニュー情報を出力する。ユーザは、かかるメニュー情報に基づいて３次元空間ビューイング処理を選択し、その実行を要求することができる。以下、３次元空間ビューイング処理について説明する。
【００４７】
なお、各ステップは処理内容に矛盾を生じない範囲で任意に順番を変更して、又は並列に実行することができる。かかる点は、他の処理についても同様とする。
【００４８】
まず、制御手段１４は、視点データ記憶手段１１に記憶された視点データを読み出す（Ｓ１００）。
【００４９】
次に、制御手段１４は、読み出した視点データに基づき仮想空間における視野領域を求め、３次元データ記憶手段１０を参照して視野領域内に全部又は一部が含まれるオブジェクトを抽出する（Ｓ１０１）。
【００５０】
次に、制御手段１４は、抽出した各オブジェクトについて、該オブジェクトと視点との距離を算出する（Ｓ１０２）。また、基準距離記憶手段１３を参照し、抽出した各オブジェクトについて、その表示優先度に対応する基準距離を読み出す（Ｓ１０３）。
【００５１】
次に、制御手段１４は、抽出した各オブジェクトについて、視点との距離と該オブジェクトの基準距離とを比較し、その比較結果に基づいてオブジェクトの表示態様を決定する。具体的には、基準距離内にあるオブジェクトのみ表示するように、視点との距離が基準距離より小さいオブジェクトを選択し（Ｓ１０４）、前記選択したオブジェクトを構成する各頂点の座標値に対し、視点データに基づいて透視変換を行って、ワールド座標系からスクリーン座標系に変換する（Ｓ１０５）。
【００５２】
次に、制御手段１４は、前記選択したオブジェクトについて、スクリーン座標系に変換された座標値、３次元データ記憶手段１０に記憶されるテクスチャ情報などに基づき、従来のレンダリングアルゴリズムや陰線・陰面アルゴリズムを適用して、視点からオブジェクトまでのデプス又は距離を考慮した、仮想空間内の一定の範囲におけるオブジェクトの様子を表示するイメージを作成する（Ｓ１０６）。
【００５３】
従来のレンダリングアルゴリズムとしては、例えば、シェーディング処理（グローシェーディング、フォーンシェーディングなど）やテクスチャマッピング処理（逆ピクセルマッピング、摂動テクスチャマッピング、環境マッピングなど）などを用いることができる。
【００５４】
従来の隠線・隠面消去アルゴリズムとしては、例えばＺバッファアルゴリズム、リストプライオリティ・アルゴリズム、スキャンライン・アルゴリズムなどを用いることができる。なお、レンダリング処理、隠線・隠面消去アルゴリズムは、例えば「実践コンピュータグラフィックス基礎手続きと応用、山口富士夫監修、日刊工業新聞社」に詳しい。
【００５５】
次に、制御手段１４は、ＩＦ手段１３を通じて前記作成したイメージをユーザに出力する（表示する）（Ｓ１０７）。図５にイメージの出力例を示す。
【００５６】
なお、上記では、基準距離との比較結果に基づいてイメージ上にオブジェクトを表示するかどうかを決定する構成として説明したが、本発明はこのような構成に限られず、例えば、基準距離との比較結果に基づいてオブジェクトを表示する際の詳細さ（ポリゴン数など）等を決定する構成としてもよい。
【００５７】
このように本実施形態では、オブジェクト属性として表示優先度を記憶しておき、かかる表示優先度に基づいて該オブジェクトに適用する基準距離を決定し、そして基準距離との比較結果に基づいて表示態様を決定する構成としているため、ユーザの利用目的に応じて表示優先度を設定することで、オブジェクトごとに柔軟に表示態様（表示の有無や詳細さなど）を制御して、違和感の少ない３次元表示を行うことができる。
【００５８】
例えば、本システムをナビゲーションシステムとして利用する場合であれば、高層建造物等のオブジェクトに高い表示優先度を与えておくことで、高層建造物等が遠くに位置する場合でも表示させることができ、容易に方角確認を行うことが可能となる。また例えば、本システムを不動産販売の営業活動に利用する場合であれば、販売対象の不動産物件オブジェクトに高い表示優先度を与えておくことで、不動産物件が遠くに位置する場合でも（詳細に）表示させることができ、常に販売対象を顧客にアピールすることができるようになる。
【００５９】
（視点移動制御処理：図６）
３次元データ処理システム１は、３次元空間ビューイング処理に関連して、ユーザからの入力に基づいて視点移動制御処理を実行することができる。以下、視点移動制御処理について説明する。
【００６０】
ユーザは、３次元空間ビューイング処理に基づきイメージを表示させている場合、かかるイメージ上でマウス等を用いて所定の地点を指定し（以下、「指定地点」と呼ぶ。）、視点移動を要求することができる（図７参照）。なお、住所等を入力して指定地点を指定する構成としてもよい。
【００６１】
制御手段１４は、ユーザからこのような要求を受け付けた場合（Ｓ２００）、指定地点がイメージ上でいずれかのオブジェクトの面領域に含まれているかどうかをチェックする（Ｓ２０１）。
【００６２】
指定地点がオブジェクトの面領域に含まれていない場合は、視点からの距離が所定値であるとして逆透視変換を行って、視点地点のワールド座標値を求め、これを終了地点として設定する（Ｓ２０２）。なお、前記所定値はユーザが指定・変更できることが望ましい。
【００６３】
また、現在の視点から終了地点まで略直線状に、移動経路を設定する（Ｓ２０３）。
【００６４】
また、少なくとも移動が終了する際に視線方向が移動経路上の移動方向と略一致するように、視線方向の変位パターンを設定する（Ｓ２０４）。図８（ａ）は、まず視線方向を変位させて移動方向と一致させてから移動を開始するパターンを、図８（ｂ）は、移動中に徐々に変位させて視線方向を移動方向に一致させるパターンを示している。なお、図において、番号付きの矢印は視線位置及び方向を、その番号は移動の順序を表わしている。
【００６５】
一方、指定地点がオブジェクトの面領域に含まれている場合は、３次元仮想空間においても指定地点がその面領域に含まれるものとして逆透視変換を行って、指定地点のワールド座標値を求める（Ｓ２０５）。
【００６６】
また、移動モードが通常移動モードに設定されているか、俯瞰位置移動モードに設定されているかを判断する（Ｓ２０６）。俯瞰位置移動モードとは、建物等のオブジェクトについて全体がよく見える位置に自動的に移動するモードであり、予めユーザによって設定しておくことができるものとする。
【００６７】
移動モードが通常移動モードに設定されている場合、又は、指定地点が含まれるオブジェクトがフィールドオブジェクトである場合、制御手段１４は、３次元データ記憶手段１０を参照して、前記面領域を構成する各頂点の座標値に基づき、指定地点が含まれる面領域の法線ベクトル（ベクトルの方向は、オブジェクト外部に向かう方向とする）を求め、その向きを判別する（Ｓ２０７）。
【００６８】
面領域の法線ベクトルの向きが略水平である場合（面領域が建物の壁面に該当する場合など）、制御手段１４は、指定地点のワールド座標値を終了地点として設定する（Ｓ２０８）。
【００６９】
また、現在の視点から終了地点まで略直線状に、移動経路を設定する（Ｓ２０９）。
【００７０】
また、少なくとも移動が終了する際に視線方向が前記求めた法線ベクトルの向きと略一致するように、視線方向の変位パターンを設定する（Ｓ２１０）。図９は、移動終了地点到着後に視線方向を変位させて法線ベクトルの向きと一致させるパターンを示している。
【００７１】
一方、面領域の法線ベクトルの向きが略垂直である場合（面領域が地表や道路などに該当する場合など）、制御手段１４は、指定地点のワールド座標値から法線ベクトル方向に所定距離だけ離れた地点を終了地点として設定する（Ｓ２１１）。
【００７２】
また、終了地点から法線ベクトル方向に所定距離だけ離れた地点を中間地点として、現在の視点から中間地点を経由して終了地点に至るように、移動経路を設定する（Ｓ２１２）。
【００７３】
また、少なくとも移動が終了する際に視線方向が前記求めた法線ベクトルの向きと略直交するように、視線方向の変位パターンを設定する（Ｓ２１３）。図１０は、移動中間地点までは、視線方向を変位させて移動方向と一致させてから移動し、移動中間地点から移動終了地点までは、移動中に徐々に変位させて視線方向を法線ベクトルの向きと直交させるパターンを示している。
【００７４】
一方、移動モードが俯瞰位置移動モードに設定されている場合であって、かつ、指定地点が含まれるオブジェクトがフィールドオブジェクトでない場合、制御手段１４は、３次元データ記憶手段１０を参照して、指定地点が含まれるオブジェクトについて最小包囲直方体を求める（Ｓ２１４）。
【００７５】
次に、制御手段１４は、いずれのオブジェクトにも含まれない地点のうち、該地点から前記最小包囲直方体の全体を視野内におさめるようにイメージを作成した場合に、イメージ上において指定地点が含まれるオブジェクト（又は最小包囲直方体）の表示面積が最大となる地点及び視線方向を求める（以下、「最大表示地点」、「最大表示方向」と呼ぶ。）（Ｓ２１５）。なお、表示面積を求める際は、他のオブジェクトによるオクルージョンを考慮することが望ましい。
【００７６】
次に、制御手段１４は、最大表示地点を終了地点として設定する（Ｓ２１６）。また、現在の視点から終了地点まで略直線状に、移動経路を設定する（Ｓ２１７）。また、少なくとも移動が終了する際に視線方向が最大表示方向と略一致するように、視線方向の変位パターンを設定する（Ｓ２１８）。変位パターンとしては、例えば図８に示すようなパターンが考えられる。
【００７７】
このようにして、終了地点、移動経路、視線方向の変位パターンを設定した後、制御手段１４は、移動経路に沿って所定単位（予め定めた定数、又は移動経路長の所定分の一など）ずつ視点位置が移動するように、また視点位置の移動に伴って、変位パターンに従って視線方向が変位するように、視点データ記憶手段１１の記憶内応を更新し、更新の都度、３次元空間ビューイング処理（Ｓ１００〜Ｓ１０７）を実行する（Ｓ２１９）。
【００７８】
このように本実施形態では、ユーザが指定した地点に関わる情報や移動モードに基づき、終了地点、移動経路、視線方向の変位パターンを制御して視点を移動する構成としているため、視点移動に関する柔軟性、自由度が大幅に向上するとともに、従来において生じていた表示上の問題を大きく改善することができる。
【００７９】
例えば、指定した地点が含まれるオブジェクトの面領域の法線ベクトルの向きに基づき、移動経路や視線方向の変位パターンを制御しているため、移動先として指定した地点が壁面上にある場合や、高所から低所に移動する場合でも、移動後に壁面や地面が画面いっぱいに表示されてしまうといった状況を回避することができる。
【００８０】
また例えば、移動モードとして、俯瞰位置移動モードを設けているため、建物等のオブジェクト上の点を指定地点として指定した場合でも、移動後にオブジェクトに近づきすぎてその一部しか表示されないといった状況を回避することができる。
【００８１】
なお、上記説明では、４つのパターン｛Ｓ２０４に至る処理フロー、Ｓ２１０に至る処理フロー、Ｓ２１３に至る処理フロー、Ｓ２１８に至る処理フロー｝を全て含むように処理を構成しているが、これら４つのうち任意の組み合わせを含むように処理を構成してもよい。
【００８２】
（被可視領域抽出処理）
制御手段１４は、被可視という考え方に基づき、被可視領域抽出処理を実行することができる。以下、被可視領域抽出処理について説明する。
【００８３】
まず、制御手段１４は、３次元仮想空間内に被可視の対象領域、被可視の是非を調べる候補領域を設定する。領域は、点、線、面、空間のいずれとして設定してもよい。
【００８４】
次に、制御手段１４は、候補領域に含まれる領域のうち、以下の抽出条件を満たす領域（被可視領域）を抽出する。
【００８５】
抽出条件：その領域の基準点から対象領域内の点に結んだ仮想ラインが他のオブジェクトに交わらないこと。ここで、「交わる」は接触する場合や貫通する場合などを含む意味である。
【００８６】
仮想ラインがオブジェクトに交わっているかどうかは、例えば仮想ラインがオブジェクトを構成する各面と交わっているるかどうかを判定すればよい。かかる判定は、例えば３次元空間内で仮想ラインとオブジェクト構成面を含む平面との交点を求め、かかる交点がオブジェクト構成面に含まれるかどうかに基づいて行うことができる。
【００８７】
最後に、制御手段１４は、被可視領域の情報を、対象領域についての被可視情報として出力する。例えば、３次元空間ビューイング処理を実行して被可視領域の様子を示すイメージを作成し、ユーザに出力する。
【００８８】
（防犯支援処理：図１１）
制御手段１４は、被可視領域抽出処理の応用処理として、防犯支援処理を実行することができる。以下、防犯支援処理について説明する。
【００８９】
制御手段１４は、３次元データ処理システム１にアクセスしてきたユーザに対し、ＩＦ手段１３を通じてメニュー情報を出力する。ユーザは、かかるメニュー情報に基づいて防犯支援処理を選択し、その実行を要求することができる。
【００９０】
まず、制御手段１４は、ユーザからの入力に基づき、防犯支援対象（人物や物品など）が位置する環境に応じて、対象領域を１つ又は複数設定する（Ｓ３００）。
【００９１】
例えば、防犯支援対象が建物の部屋の内部に位置する場合は、その部屋の窓（建物外部から部屋を見通すことができる窓）を対象領域として設定することができる。ただし、より精密な防犯支援を実現するためには、その部屋の窓を第１の対象領域とし、部屋内の空間から防犯支援対象が移動し得ない範囲を除いた領域を第２の対象領域として設定することが望ましい。
【００９２】
一方、防犯支援対象が演台等のオープンな場所に位置する場合は、演台等を底面、防犯支援対象の伸長等を高さとする直方体領域を対象領域として設定することが考えられる。
【００９３】
次に、制御手段１４は、ユーザからの入力に基づき又は自動的に、候補領域を設定する（Ｓ３０１）。候補領域は、例えば対象領域を中心として、円筒領域や直方体領域のように３次元領域として、又は円領域や矩形領域のように地表上の２次元領域として設定できる。なお、候補領域の大きさ、例えば円筒領域や円領域の半径は、ユーザが入力した値を用いるか、又は、防犯の種類に応じて、例えば狙撃に対する防犯であれば１０００ｍ、盗撮に対する防犯であれば３００ｍのように、デフォルト値を用いることが考えられる。
【００９４】
次に、制御手段１４は、候補領域を所定の単位領域（以下、「メッシュ」と呼ぶ。）に区分する（Ｓ３０２）。そして、各メッシュについて、以下の抽出条件を全て満たすかどうかを判断し、満たすものを被可視メッシュ（被可視領域）として抽出する（Ｓ３０３）。
【００９５】
抽出条件１：そのメッシュが、空中や建物内部に位置していないこと。更に、建物の壁等に位置していないことを条件に加えてもよい。
【００９６】
抽出条件２：そのメッシュの基準点（例えば中央の点）から対象領域内の点に結んだ仮想ラインのうち、他のオブジェクトに交わらない仮想ラインが少なくとも１本あること（以下、このような仮想ラインを「被可視ライン」と呼ぶ）。対象領域が複数ある場合は、そのメッシュの基準点から第１の対象領域内の点に結んだ仮想ラインのうち、第２以降の対象領域に交わり、かつ他のオブジェクトに交わらない仮想ラインが少なくとも１本のあること。
【００９７】
また、制御手段１４は、被可視メッシュを抽出する際に、以下の基準のいずれかに基づいて、又はそれらの組み合わせに基づいて、そのメッシュについての被可視の程度を示す尺度（被可視度）を決定する（Ｓ３０４）。
【００９８】
決定基準１：被可視ライン数が多いほど、被可視度は大きい。
【００９９】
決定基準２：被可視ラインと他のオブジェクトとの距離が大きいほど、被可視度は大きい。他のオブジェクトを複数考慮する場合は、他のオブジェクトそれぞれについて被可視ライン（被可視ラインが複数ある場合は、最も近い被可視ライン）との距離を求め、それらの平均距離や最短距離が大きいほど被可視度が大きくなるように基準を定めてもよい。
【０１００】
決定基準３：被可視ラインの長さが短いほど、被可視度は大きい。被可視ラインが複数ある場合は、それらの平均値が大きいほど被可視度が大きくなるように基準を定めてもよい。
【０１０１】
このようにして、被可視領域、被可視度を求めた後、制御手段１４は、３次元空間ビューイング処理を実行してイメージをユーザに出力する（Ｓ３０５）。このとき、制御手段１４は、被可視領域に該当するか否かに基づいて、又は／及び被可視度に基づいて、オブジェクトの表示態様を制御して前記イメージを作成する。例えば、被可視領域内に含まれる部分について表示態様を変えたり、被可視度の大小に応じて色等を変えたりすることで、被可視領域やその被可視度を直感的に把握できるようにすることが考えられる（図１２参照）。
【０１０２】
このように本実施形態では、被可視領域や被可視度（被可視リスク）を求めて表示する防犯支援機能を備えているため、例えば、重要人物の部屋や立ち位置に基づいて被可視の是非や程度を検討することができ、狙撃等のテロや盗撮の防止に有効に利用することができる。
【０１０３】
（広告配置支援処理：図１３）
制御手段１４は、被可視領域抽出処理の応用処理として、広告配置支援処理を実行することができる。以下、広告配置支援処理について説明する。
【０１０４】
制御手段１４は、３次元データ処理システム１にアクセスしてきたユーザに対し、ＩＦ手段１３を通じてメニュー情報を出力する。ユーザは、かかるメニュー情報に基づいて広告配置支援処理を選択し、その実行を要求することができる。
【０１０５】
まず、制御手段１４は、ユーザからの入力に基づき、広告配置情報（広告配置位置、広告の大きさ、広告の向き等）を設定する（Ｓ４００）。広告配置情報は、現実に配置している広告に基づくものであっても、仮想的に配置する広告に基づくものであってもよい。また、広告配置情報の各要素はそれぞれ複数設定してもよく、その値として予め設定したデフォルト値を用いてもよい。
【０１０６】
次に、制御手段１４は、広告配置情報に基づき広告配置領域を求め、これを対象領域として設定する（Ｓ４０１）。図１４は、広告配置情報のうち広告の向きが複数設定されており、その結果、対象領域も複数設定されている様子を表わしている。
【０１０７】
次に、制御手段１４は、ユーザからの入力に基づき又は自動的に、候補領域を設定する（Ｓ４０２）。候補領域は、円筒領域や直方体領域のように３次元領域として、又は円領域や矩形領域のように地表上の２次元領域として設定できるほか、例えば高速道路オブジェクトの道路表面領域というように、所定のオブジェクトを指定して設定することができる。
【０１０８】
次に、制御手段１４は、候補領域を所定の単位領域（以下、「メッシュ」と呼ぶ。）に区分する（Ｓ４０３）。そして、各対象領域について、以下の抽出条件を全て満たす被可視メッシュを抽出する（Ｓ４０４）。
【０１０９】
抽出条件１：そのメッシュが、空中や建物内部に位置していないこと。更に、建物の壁等に位置していないことを条件に加えてもよい。
【０１１０】
抽出条件２：そのメッシュの基準点（例えば中央の点）から対象領域内の点に結んだ仮想ラインのうち、他のオブジェクトに接しない仮想ライン（被可視ライン）が少なくとも１本あること。
【０１１１】
次に、制御手段１４は、例えば以下の決定基準に基づいて、各対象領域の広告有効度を決定する（Ｓ４０５）。
【０１１２】
決定基準：被可視メッシュの集合を被可視領域とし、被可視領域のサイズ（被可視メッシュ数、体積、面積、長さなど）が大きいほど、広告有効度は高い。例えば、高速道路オブジェクトの道路表面領域を対象領域として設定する場合であれば、被可視領域に含まれる道路長の長短に基づき広告有効度を決定することが考えられる。
【０１１３】
なお、制御手段１４は、被可視メッシュそれぞれについて、防犯支援処理の場合と同様に被可視度を決定し、かかる被可視度を重み付けに用いて広告有効度を決定してもよい。
【０１１４】
次に、制御手段１４は、広告有効度が最大となる（又は閾値以上となる）対象領域を選択し（Ｓ４０６）、その対象領域に対応する広告オブジェクトを生成する（Ｓ４０７）。
【０１１５】
次に、制御手段１４は、３次元データ記憶手段１０に記憶する各オブジェクト及び前記生成した広告オブジェクトに基づいて３次元空間ビューイング処理を実行してイメージを作成し、ユーザに出力する（Ｓ４０８）。このとき、制御手段１４は、例えば広告オブジェクトについて、他のオブジェクトと異なる表示態様としたり、広告有効度の高低に応じて色等を変えたりすることで、広告の配置やその有効度を直感的に把握できるようにすることが望ましい。
【０１１６】
なお、イメージの出力とともに／に代えて、広告オブジェクトの情報（配置位置、大きさ、向き等）を数値等によって出力してもよい。
【０１１７】
このように本実施形態では、配置位置、大きさ、向き等の組み合わせに基づき特定される広告配置領域を対象として、被可視の是非に基づき広告有効度を求める広告配置支援機能を備えているため、種々の広告配置についてその有効性を検討し、最適な広告配置を決定することができる。
【０１１８】
なお、制御手段１４は、広告配置支援処理を実行する際に、被可視領域に該当するか否かに基づいて、又は／及び被可視度に基づいて、オブジェクトの表示態様を制御するように処理を構成してもよい。図１５は、高速道路オブジェクトの道路表面領域を対象領域とする場合を例として、ユーザが広告の向きを入力する（変える）と、それに対応する被可視領域が把握できるように高速道路オブジェクトが表示される様子を示している。
【０１１９】
（その他）
本発明の他の実施形態として、情報処理プログラムを記録した記録媒体が考えられる。記録媒体としてはＣＤ−ＲＯＭ、磁気ディスク、半導体メモリその他の記録媒体を用いることができる。
【０１２０】
情報処理プログラムは記録媒体からデータ処理装置に読み込まれ、データ処理装置の動作を制御する。データ処理装置は情報処理プログラムの制御により、第１実施形態の各手段と同様の機能を実現する。
【０１２１】
本発明は、上記実施形態に限定されることなく種々に変形して適用することが可能である。例えば、３次元データ記憶手段に比べて高速にアクセス可能なメモリ上に、予め所定のオブジェクトについて３次元データ記憶手段１０から３次元データを読み込んでおき、３次元空間ビューイング処理を実行する場合には、３次元データ記憶手段１０ではなくメモリ上の３次元データにアクセスしてイメージを作成する構成を採る場合、基準距離との比較結果に基づいて、メモリ上への３次元データの読込みやメモリからの３次元データの解放を制御する管理処手段を設ける（管理処理を実行する）ように構成してもよい。この場合の機能構成図を図１６に示す。なお、管理手段が参照する基準距離は、表示態様を決定する際に用いる基準距離と必ずしも同じである必要はない。
【０１２２】
また例えば、複数のオブジェクトを１つのグループとして管理し、グループ単位で表示態様を制御する構成としてもよい。この場合、例えば、グループ（又はグループ内の所定オブジェクト）の表示優先度に基づいて適用する基準距離を決定し、グループの基準位置（又は前記所定オブジェクト）までの距離と基準距離との比較結果に基づいて、該グループに含まれるオブジェクト全部についての表示態様を決定する構成が考えられる。又は、例えば、グループ内の各オブジェクトについて上記実施形態と同様にして表示／非表示を決定し、いずれか１つでも表示（又は非表示）となるオブジェクトがある場合には、全オブジェクトについて表示（又は非表示）とするといった構成が考えられる。なお、グループとしては、例えば一丁目に存在するオブジェクトというように住所等に基づいて設定することが考えられる。
【０１２３】
また例えば、防犯支援処理や広告配置支援処理以外にも、被可視領域抽出処理に基づき、種々の応用処理を考えることができる。例えば、花火大会や大文字焼きといったイベントにおいて、注視目的物（花火や大文字部分）に基づいて対象領域を設定し、ビュースポットを判断するといった応用処理が考えられる。この場合、例えば被可視度に基づいてビューイングスポットの優劣を判定したり、かかる判定結果に基づいて混雑予想を行ったり、更には混雑予想に基づいて警備等の計画を支援したりする構成も考えることもできる。
【０１２４】
また例えば、上記実施形態では、広告有効度を利用して広告配置支援を行う構成について説明したが、広告有効度の利用方法はこれに限られず、例えば、広告対価（広告掲載料金や設置対価など）や広告の格付けを決定する際の尺度として利用することもできる。
【０１２５】
なお、上記実施形態では、主に３次元データ処理システムについて説明したが、本発明はシステムとしての実施形態に限られず、３次元データ処理システムにおいて実行される各処理を本発明に係る３次元データ処理方法として把握することも可能である。
【０１２６】
【発明の効果】
本発明の構成によれば、３次元データ処理システムにおいて、オブジェクトの表示態様を柔軟に制御して表示させることができる。また、視点移動における表示上の問題点を改善し、適切な視点移動を実現することができる。また、被可視という考え方に基づき有用な機能を提供することができる。
【図面の簡単な説明】
【図１】  本発明の第１実施形態に係る３次元データ処理システムの機能構成を説明するためのブロック図である。
【図２】  ３次元データのデータ構造を説明するための図である。
【図３】  表示優先度と基準距離との対応関係の一例を示す図である。
【図４】  ３次元空間ビューイング処理の流れを示すフローチャートである。
【図５】  端末におけるイメージの出力例を説明するための図である。
【図６】  視点移動制御処理の流れを示すフローチャートである。
【図７】  イメージ上でマウス等を用いて所定の地点を指定している様子を示す図である。
【図８】  視線方向の変位パターンの例を説明するための図である。
【図９】  視線方向の変位パターンの例を説明するための図である。
【図１０】  視線方向の変位パターンの例を説明するための図である。
【図１１】  防犯支援処理の流れを示すフローチャートである。
【図１２】  被可視領域が表示されている様子を示す図である。
【図１３】  広告配置支援処理の流れを示すフローチャートである。
【図１４】  広告の向きに応じて複数の対象領域が設定されている様子を示す図である。
【図１５】  広告の向きに応じて被可視領域が表示されている様子を示す図である。
【図１６】  本発明の他の実施形態に係る３次元データ処理システムの機能構成を説明するためのブロック図である。
【符号の説明】
１  ３次元データ処理システム
１０  ３次元データ記憶手段
１１  視点データ記憶手段
１２  基準距離記憶手段
１３  ＩＦ手段
１４  制御手段
【図１】
0004183441.tif 000002
【図２】
0004183441.tif 000003
【図３】
0004183441.tif 000004
【図４】
0004183441.tif 000005
【図５】
0004183441.tif 000006
【図６】
0004183441.tif 000007
【図７】
0004183441.tif 000008
【図８】
0004183441.tif 000009
【図９】
0004183441.tif 000010
【図１０】
0004183441.tif 000011
【図１１】
0004183441.tif 000012
【図１２】
0004183441.tif 000013
【図１３】
0004183441.tif 000014
【図１４】
0004183441.tif 000015
【図１５】
0004183441.tif 000016
【図１６】
0004183441.tif 000017