(57)【特許請求の範囲】
【請求項１】
コンピュータによって、地物の３次元モデルを構成するポリゴンに適用するテクスチャ画像の画像データを生成するテクスチャ画像データの生成方法であって、
前記コンピュータが実行するステップとして、
（Ａ）前記地物の前記ポリゴンに対応する面を撮影した複数の画像データを読み込むステップと、
（Ｂ）前記テクスチャ画像を構成するピクセルごとに、前記複数の画像データから該ピクセルに対応する箇所の色情報を取得するステップと、
（Ｃ）前記取得された色情報に基づいて、前記ピクセルの色を決定することにより、前記テクスチャ画像を生成するステップと
を備え、
前記ステップ（Ｂ）は、
（Ｂ１）前記複数の画像データにおける複数の特徴点同士の対応関係を求めるステップと、
（Ｂ２）前記ピクセルの周囲に位置する複数の特徴点を基準として、該ピクセルに対応する箇所を特定するステップと
を有するテクスチャ画像データの生成方法。
【請求項２】
請求項１記載のテクスチャ画像データの生成方法であって、
前記ステップ（Ｃ）は、
前記画像データのうち、他の地物によって遮蔽されている部分を除いて、前記ピクセルの色を決定する
テクスチャ画像データの生成方法。
【請求項３】
請求項２記載のテクスチャ画像データの生成方法であって、
前記ステップ（Ａ）は、さらに、前記画像データの撮影条件を読み込み、
前記ステップ（Ｃ）は、前記地物および該地物の周辺の３次元形状を表す３次元モデルを参照し、該３次元モデルと前記撮影条件に基づいて、前記遮蔽されている部分を特定する
テクスチャ画像データの生成方法。
【請求項４】
請求項１〜３いずれか記載のテクスチャ画像データの生成方法であって、
前記ステップ（Ａ）は、前記ポリゴンに対応する面を、当該面の法線方向から見た状態の画像に変換して、前記撮影した複数の画像データを読み込む
テクスチャ画像データの生成方法。
【請求項５】
地物の３次元モデルを構成するポリゴンに適用するテクスチャ画像の画像データを生成するテクスチャ画像データ生成装置であって、
前記地物の前記ポリゴンに対応する面を撮影した複数の画像データを読み込む画像データ入力部と、
前記テクスチャ画像を構成するピクセルごとに、前記複数の画像データから該ピクセルに対応する箇所の色情報を取得し、前記取得された色情報に基づいて、前記ピクセルの色を決定することにより、前記テクスチャ画像を生成するテクスチャ生成部と
を備え、
前記テクスチャ生成部は、
前記複数の画像データにおける複数の特徴点同士の対応関係を求め、
前記ピクセルの周囲に位置する複数の特徴点を基準として、該ピクセルに対応する箇所を特定する
テクスチャ画像データ生成装置。
【請求項６】
コンピュータに、地物の３次元モデルを構成するポリゴンに適用するテクスチャ画像の画像データを生成する機能を実現させるためのコンピュータプログラムであって、
（Ａ）前記地物の前記ポリゴンに対応する面を撮影した複数の画像データを読み込む機能と、
（Ｂ）前記テクスチャ画像を構成するピクセルごとに、前記複数の画像データから該ピクセルに対応する箇所の色情報を取得する機能と、
（Ｃ）前記取得された色情報に基づいて、前記ピクセルの色を決定することにより、前記テクスチャ画像を生成する機能と
をコンピュータに実現させ、
前記機能（Ｂ）として、
（Ｂ１）前記複数の画像データにおける複数の特徴点同士の対応関係を求める機能と、
（Ｂ２）前記ピクセルの周囲に位置する複数の特徴点を基準として、該ピクセルに対応する箇所を特定する機能と
を実現させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元モデルのポリゴンに適用するテクスチャ画像データの生成方法に関する。
【背景技術】
【０００２】
地物の形状を３次元的に表した３次元地図においては、地物の３次元モデルを精度良く、かつ低い処理負荷で生成することが求められる。３次元モデルでは、リアリティを向上させるために、ポリゴンの表面に、各地物を撮影した画像をもとに生成されたテクスチャを貼り付ける方法がとられている。例えば、特許文献１、２は、それぞれ地物を撮影した写真の一部を切り出して、テクスチャとして利用する技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−６６８０号公報
【特許文献２】特開２００４−１０２４７４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、３次元モデルの生成対象とする地物の周囲には、他の種々の地物が存在していることがあるため、撮影された画像には、かならずしも地物全体が写っているとは限らない。また、地物の全体が写っている画像が、必ずしも全ての部分で高画質とも限らない。こうした課題を回避するため、複数の画像から、それぞれの良い部分を切り取って、パッチワークのように合成することで一つのテクスチャ画像を生成しようとしても、パッチの継ぎ目部分で不自然さが残り、かえって違和感のあるテクスチャになることがある。本発明は、こうした課題に鑑み、撮影された画像に基づいて、リアリティを向上させたテクスチャを生成可能とすることを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、
コンピュータによって、地物の３次元モデルを構成するポリゴンに適用するテクスチャ画像の画像データを生成するテクスチャ画像データの生成方法であって、
前記コンピュータが実行するステップとして、
（Ａ）前記地物の前記ポリゴンに対応する面を撮影した複数の画像データを読み込むステップと、
（Ｂ）前記テクスチャ画像を構成するピクセルごとに、前記複数の画像データから該ピクセルに対応する箇所の色情報を取得するステップと、
（Ｃ）前記取得された色情報に基づいて、前記ピクセルの色を決定することにより、前記テクスチャ画像を生成するステップと
を備えるテクスチャ画像データの生成方法として構成することができる。
【０００６】
本発明によれば、処理対象となるピクセルに対応する箇所の色情報を複数の画像データから取得し、これに基づいて、そのピクセルの色を決定する。このように、テクスチャの生成に、複数の画像データを用いるため、各画像データに存在する欠点を補うことができる。また、ピクセル単位でテクスチャ画像を合成していくため、パッチワークのように合成する方法に比べて、継ぎ目などが現れない自然なテクスチャ画像データを生成することが可能となる。
【０００７】
本発明で用いる複数の画像データは、処理対象となる面（以下、「対象面」ということもある）を撮影したものであればよく、同一の地点、撮影角度で撮影したものでもよいし、多様な地点、撮影角度から撮影したものであってもよい。また、対称面の全体が写っているものであってもよいし、部分的に写っているものであってもよい。
複数の画像データから取得した色情報から、対象となるピクセルの色を決定する方法も、種々の方法をとりうる。例えば、複数の色情報の平均値、中央値、最大度数分布となる色などとすることができる。
【０００８】
本発明のテクスチャ画像データの生成方法においては、
前記ステップ（Ｂ）は、
（Ｂ１）前記複数の画像データにおける複数の特徴点同士の対応関係を求めるステップと、
（Ｂ２）前記ピクセルの周囲に位置する複数の特徴点を基準として、該ピクセルに対応する箇所を特定するステップと
を有するものとしてもよい。
【０００９】
こうすることにより、処理対象となるピクセルに対応する箇所を、各画像において精度良く特定することができるため、生成されるテクスチャ画像の画質を向上させることができる。
処理対象となるピクセルに対応する箇所を特定するために用いる特徴点は、１個または２個としてもよいが、２次元的な位置を精度良く特定するためには３個以上を用いることがより好ましい。
処理対象となるピクセルに対応する箇所は、特徴点から処理対象となるピクセルに対する相対位置を求め、各画像内における特徴点に対して同じ相対位置にある箇所を求めればよい。
特徴点としては、例えば、対称面の角や、地物の表面に存在する窓、手すり、看板その他の構造物の頂点、対象物表面で色や形状が急激に変化する点などを利用することができる。また、ＳＩＦＴ（Scale-Invariant Feature Transform）に代表する画像特徴量関連技術を用いても良い。かかる技術を利用すると、画像の色に基づいて、複数の画像間で非常に多くの特徴点を対応づけることができるため、ピクセルに対応する箇所を特定する精度を向上させることができる。
【００１０】
また、本発明のテクスチャ画像データの生成方法においては、
前記ステップ（Ｃ）は、
前記画像データのうち、他の地物によって遮蔽されている部分を除いて、前記ピクセルの色を決定するものとしてもよい。
遮蔽されている部分の色情報は、対象面の色とは異なるため、このように除外することにより、色の決定精度を向上させることができる。
【００１１】
このように、遮蔽されている部分を除く態様においては、
前記ステップ（Ａ）は、さらに、前記画像データの撮影条件を読み込み、
前記ステップ（Ｃ）は、前記地物および該地物の周辺の３次元形状を表す３次元モデルを参照し、該３次元モデルと前記撮影条件に基づいて、前記遮蔽されている部分を特定するものとしてもよい。
撮影条件とは、撮影位置、撮影方向または角度、撮影時の画角など、撮影される画像の状態を特定するために必要な情報を言う。
３次元モデルからなる仮想空間内で、撮影条件に基づいて仮想的な「撮影」を行えば、得られた画像データ内で対象面が、他の地物によって遮蔽されている部分を比較的容易に特定することができる。こうして特定された領域を適用すれば、テクスチャの生成に用いる各画像内の遮蔽されている部分を、比較的容易かつ精度良く特定することができる。
遮蔽されている部分は、かかる方法の他、例えば、画像データ内の色や形状の不連続性などを解析して特定してもよい。画像特徴量を用いる場合には、複数の画像間で非常に多くの特徴点を得ることができるだけでなく、各特徴点ごとに法線ベクトルも得ることができるため、法線ベクトルの方向の不連続性に基づいて、遮蔽されている部分を特定することも可能である。
【００１２】
本発明のテクスチャ画像データの生成方法においては、
前記ステップ（Ａ）は、前記ポリゴンに対応する面を、当該面の法線方向から見た状態の画像に変換して、前記撮影した複数の画像データを読み込むものとしてもよい。
かかる画像の変換は、例えば、各画像の撮影条件に基づいて、対象面をどの方向から撮影したかを特定し、これに基づいて法線方向から見た状態に変換する方法をとることができる。また別の方法として、各画像の対象面の形状を、いずれかの基準となる形状に合わせるようアフィン変換するものとしてもよい。画像の変換は、その他、種々の方法で行うことができる。
このように、画像データを統一した形状に変換してから処理を行えば、処理対象となるピクセルに対応する箇所も容易に特定することができ、処理の負荷を軽減できるとともに、精度向上を図ることもできる。
【００１３】
本発明は、上述した種々の特徴を必ずしも全て備えている必要はなく、適宜、その一部を省略したり組み合わせたりして構成してもよい。また、本発明は、上述のテクスチャ画像データ生成方法としての態様の他、テクスチャ画像データ生成装置として構成してもよい。さらに、テクスチャ画像データの生成をコンピュータに実行させるコンピュータプログラムとして構成してもよいし、かかるコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体として構成してもよい。
【図面の簡単な説明】
【００１４】
【図１】３次元モデル生成システムの構成を示す説明図である。
【図２】３次元点群生成処理のフローチャートである。
【図３】３次元モデル生成処理のフローチャートである。
【図４】テクスチャ生成処理のフローチャート（１）である。
【図５】テクスチャ生成処理のフローチャート（２）である。
【図６】テクスチャ生成処理のフローチャート（３）である。
【発明を実施するための形態】
【実施例１】
【００１５】
Ａ．システム構成：
図１は、３次元モデル生成システムの構成を示す説明図である。３次元モデル生成システムは、処理対象となる地域の写真を航空機から撮影し、この写真を解析して地物ごとの３次元形状を表す３次元モデルを生成するシステムである。航空機に搭載され、地域の写真の画像データを取得する装置を撮影管理装置１００と呼ぶ。画像データから３次元モデルを生成する装置を、３次元モデル生成装置２００と呼ぶ。本発明のテクスチャ画像データ生成装置は、３次元モデル生成装置２００の一機能として実現されている。以下、それぞれの構成について順に説明する。
【００１６】
（１）撮影管理装置１００の構成：
撮影管理装置１００は、航空機に搭載されている。航空機は、固定翼、回転翼いずれでもよく、有人／無人のいずれであってもよい。
撮影管理装置１００には、撮影用のカメラ１０１、位置情報を取得するためのセンサであるＧＰＳ（Global
Positioning System）１０２、および図示する各機能ブロックが備えられている。機能ブロックは、それぞれの機能を実現するためのコンピュータプログラムを、コンピュータにインストールすることによって構成することもできるし、ハードウェア的に構成してもよい。
カメラ１０１は、３次元モデルを生成するための解析に使用される写真を撮影するためのものである。解析精度を向上させるためには、高解像度の写真が望ましい。本実施例では高解像度での撮影が可能な静止画用のディジタルカメラを用いた。十分な解像度が得られる場合には、動画撮影用のカメラを用いてもよい。
【００１７】
撮影シーケンス記憶部１１２は、撮影を行うための航空機の飛行経路および撮影ポイントを記憶している。撮影ポイントは、カメラ１０１の画角も考慮して設定されており、処理対象となる領域について、２０枚以上の写真が、それぞれ６０％程度以上は重複した状態で、順次撮影されるように設定されている。飛行経路の設定方法については後述する。飛行経路等は、予め別のコンピュータ等によって設定したものを、撮影シーケンス記憶部１１２に記憶させる方法をとってもよいし、撮影シーケンス記憶部１１２で設定するようにしてもよい。
有人の航空機を用いる場合、飛行経路に従って航空機を飛行させるのはパイロットの役目となる。かかる場合には、撮影シーケンス記憶部１１２は、パイロットに対し、適宜、設定された飛行経路に沿った飛行を支援するための情報を提供してもよい。
無人の航空機を用いる場合には、撮影シーケンス記憶部１１２は、飛行を制御する制御装置に、飛行経路に関する情報を送信するように構成してもよい。
【００１８】
撮影制御部１１０は、カメラ１０１を制御し、撮影シーケンス記憶部１１２で設定された撮影ポイントにおいて処理対象領域の写真を撮影する。航空機の現実の飛行経路と、撮影シーケンス記憶部１１２に記憶された経路とは誤差があるため、撮影制御部１１０は、かかる誤差も踏まえて、予め設定された撮影ポイント付近に到達したと判断される時点で撮影を行うようにしてもよい。
また、撮影シーケンスは、必ずしも撮影ポイントを特定する方法だけでなく、一定の時間周期で撮影を行うように設定してもよい。かかる場合には、撮影制御部１１０は、設定された時間間隔ごとに撮影を行うようカメラ１０１を制御することになる。
撮影制御部１１０は、いずれの方法で撮影を行う場合においても、カメラ１０１による撮影と同期して、ＧＰＳ１０２から撮影位置の位置情報を取得し、両者を関連づけて画像記録部１２０に記録する。
撮影制御部１１０は、自動的に撮影を行う態様として構成する他、航空機に搭乗した撮影者に対して、撮影タイミングを知らせるものとしてもよい。
【００１９】
（２）３次元モデル生成装置２００の構成：
３次元モデル生成装置２００には、図示する機能ブロックが備えられている。これらの機能ブロックは、それぞれの機能を実現するためのコンピュータプログラムを、コンピュータにインストールすることによって構成されるし、ハードウェア的に構成してもよい。
以下、各機能ブロックの機能について説明する。
【００２０】
画像データ記憶部２０１は、撮影管理装置１００で撮影、収集された画像データおよび撮影位置の位置情報を読込み、記憶する。撮影管理装置１００から画像データ記憶部２０１への画像データの受け渡しは、有線、無線または記録媒体を介して行うことができる。
３次元点群生成部２０２は、画像データ記憶部２０１の画像データおよび撮影位置を用いて、３次元点群を生成する。３次元点群とは、それぞれ３次元の座標値および法線ベクトルが付与された多数の点である。法線ベクトルとは、各点が存在すると推定される面の法線ベクトルを意味する。
本実施例では、画像データを撮影した時系列に並べると、前後の画像データ同士は、約６０％程度以上の面積が重複した状態で撮影されている。つまり、対象領域内の建物は、撮影ポイントが異なる複数の画像データに撮影されていることになる。従って、複数の画像データ内で相互に対応する点を特定できれば、いわゆる三角測量と同様の原理によってその点の３次元座標を特定することが可能となる。複数の画像データ内で対応する点を特定する技術としては、種々の技術が知られているが、本実施例では、画像特徴量の一例としてＳＩＦＴ（Scale-Invariant Feature Transform）と呼ばれる公知の技術を適用した。
３次元点群データ記憶部２０３は、３次元点群生成部２０２によって得られた３次元点群を記憶する。画像データに写っている部分を解析して得られた点群であるから、３次元点群は、主として建物等の外壁、屋根などの外面部分を表すものとなる。また、画像内には、地面、道路、街路樹、車両など建物以外も多数写っており、これらについても画像内の対応関係が特定される限り３次元点群は生成可能であるから、３次元点群には、こうした建物以外を表すものも多数含まれている。３次元点群は、それぞれ３次元の座標値と法線ベクトルを有しているが、これらの座標値、法線ベクトルは、地球座標系で定義されたものではなく、解析のために設定された架空の３次元空間における座標値である。
このように地球座標系での位置関係が特定されておらず、建物単位に区分もされていない３次元点群から、建物ごとに地図として利用可能な精度で位置座標を有する３次元ポリゴンを生成するのが、以下で示す各機能ブロックの機能である。
【００２１】
重力方向解析部２０４は、点群の重力方向を解析する。通常、直交座標系で地理的な位置が表されている場合には、重力方向はＺ軸方向と一致するが、３次元点群の座標系は地球座標系で定義されたものではないため、必ずしもＺ軸が重力方向になるとは限らない。重力方向解析部２０４は、解析によって重力方向を求めることによって、点群の座標系を地球座標系に対応づける第1段階としての機能を奏する。
点群分離処理部２０５は、点群を建物単位に分離する。３次元点群は、画像に写っている点の３次元座標を求めたものであり、建物単位で分離もされていなければ、建物の地面等との分離もされていない。点群分離処理部２０５は、かかる３次元点群を解析して、建物ごとの点群に分離する機能を奏する。
建物枠生成部２０６は、建物ごとに分離された点群に基づいて２次元的な外形形状を表す建物枠を生成する。
位置合わせ処理部２０７は、２次元地図データ２１０に記憶された２次元地図に複数の建物枠を適合させることによって、重力方向以外の座標系を地球座標系に対応づける機能を奏する。位置合わせ処理部２０７は、建物ごとに分離された点群を1つずつ２次元地図に適合させていくのではない。点群で表されている複数の建物全体を、その相対的な関係を概ね保った状態で、全体として２次元地図に適合させるのである。このように複数の建物全体を適合させることによって、精度良く位置合わせを行うことができる。
ポリゴン生成部２０８は、以上の処理によって２次元的な形状が定まった建物ごとに、点群に基づき側面および上面のポリゴンを生成する。
テクスチャ生成部２０９は、生成されたポリゴンの表面に貼り付けるテクスチャを、画像データ記憶部２０１に記憶された画像データによって生成する。
以上の処理で生成された３次元ポリゴンおよびテクスチャは、３次元モデルデータ２１１に格納される。
【００２２】
Ｂ．３次元点群生成処理：
飛行経路および撮影ポイントが決まると、これに従って、目標の周辺を飛行しながら撮影が行われる。撮影された画像データは、図１で説明した通り、逐次、撮影ポイントの位置座標とともに、撮影管理装置１００の画像記録部１２０に記録される。撮影が完了すると、画像データおよび位置座標は、３次元モデル生成装置２００に入力され、３次元点群が生成される。画像データの３次元モデル生成装置２００への読込みは、種々の方法で行うことができるが、本実施例では、記録媒体を介して読み込ませるものとした。
【００２３】
図２は、３次元点群生成処理のフローチャートである。３次元モデル生成装置２００の３次元点群生成部２０２が実行する処理であり、ハードウェア的には、３次元モデル生成装置２００のＣＰＵが実行する処理である。
処理を開始すると、３次元モデル生成装置２００は、画像データおよび位置情報を読み込む（ステップＳ１０）。そして、画像特徴量によるマッチングにより、画像間の特徴点の対応付けを行う（ステップＳ１１）。図中に特徴点の対応付けの様子を示した。図示するように画像１、画像２のそれぞれから、特徴点（図中の４つの×印）を抽出し、それぞれの特徴点同士の対応関係を認識するのである。画像特徴量によるマッチングは、画像内の色成分に基づいて特徴点を抽出し、画像間の対応関係を求める解析技術であり、解析原理およびアルゴリズムともに周知であるため、詳細な説明は省略する。ステップＳ１１では、画像間の特徴点同士を対応づけるものであれば、ＳＩＦＴなど、種々の手法を用いることができる。
【００２４】
こうして特徴点の対応関係が求まると、各特徴点の３次元座標および法線ベクトルを算出することができる（ステップＳ１２）。図中に算出原理を図示した。実施例で使用する各画像には、それぞれ撮影ポイントの位置情報が付されているため、複数の画像間で対応関係が得られた特徴点については、２つ以上の撮影ポイント１，２が対応づけられることになる。撮影ポイント１，２からの画角等に基づいて撮影した画像内の特徴点の位置を解析すれば、それぞれの撮影ポイント１，２から特徴点を視た方向を決定することができ、撮影ポイント１、２の座標値に対して特徴点の相対的な位置関係を特定することができる。ここで得られる特徴点の位置座標は、地球座標系での絶対的な位置座標ではなく、解析用の空間に設定された架空の３次元座標（ｘａ、ｙａ、ｚａ）上での座標値である。
法線ベクトルとは、各特徴点が存在すると推定される推定面の法線方向のベクトルである。実施例では、対応する画像において多数の特徴点が抽出され、各画像内の特徴点同士の相対的な位置関係が維持されることを前提として、画像間での特徴点の対応関係を認識する。このように特徴点同士の相対的な位置関係から、その特徴点が存在する推定面が特定され、その法線ベクトルを求めることができる。
これらの画像間の相対的位置関係、３次元座標および法線ベクトルの算出も、ＳｆＭ（Structure
from Motion）技術、およびそれを利用した手法として周知であるため、さらなる詳細な説明は省略する。
３次元座標および法線ベクトルが算出された特徴点の集合を、以下、３次元点群と呼ぶ。３次元モデル生成装置２００は、得られた３次元点群のデータを格納し（ステップＳ１３）、３次元点群生成処理を終了する。
本実施例では、撮影した画像データから３次元点群を取得しているが、以下の処理は、レーザ計測など、他の方法によって得られた３次元点群を用いて行うこともできる。
【００２５】
Ｄ．３次元モデル生成処理：
図３は、３次元モデル生成処理のフローチャートである。先に説明した３次元点群データに基づいて、建物ごとの３次元形状を表す３次元モデルを生成するための処理である。この処理は、図１に示した重力方向解析部２０４、点群分離処理部２０５、建物枠生成部２０６、位置合わせ処理部２０７、ポリゴン生成部２０８、テクスチャ生成部２０９によって、それぞれ実現される処理である。ハードウェア的には、３次元モデル生成装置２００のＣＰＵが実行する処理となる。
【００２６】
図３には、全体の処理の流れを示した。
Ｄ１．重力方向解析処理：
３次元モデル生成処理では、まず重力方向解析処理が行われる（ステップＳ２０）。これは、重力方向解析部２０４の機能に相当する処理であり、３次元点群を解析して重力方向を以下の手順で、特定する処理である。
本実施例では、３次元点群全体の主成分分析を行い、第３主成分をまず仮の重力方向Ｇｔとして設定する。かかる方法で重力方向を特定できる理由は、次の通りである。本実施例の３次元点群は、目標を中心とする周辺の領域を撮影して得られるものである。撮影される建物が高層ビルであっても、その高さは、撮影される領域の水平方向の広がりに比べれば小さい。従って、３次元点群は、全体的に見れば、図示するように、比較的平たい領域に分布することとなる。
主成分分析とは、３次元空間内における３次元点群の分布を特徴づける方向を求めるものであり、３次元点群の分布が大きい方向から順に第１主成分、第２主成分、第３主成分となる。平たい領域に分布した３次元点群については、水平方向の分布に基づいて第１主成分、第２主成分が求まり、それに直交する方向が第３主成分となる。従って、第３主成分は、３次元点群の重力方向Ｇｔを表すことになる。ただし、点群の分布に基づく誤差が含まれているため、第３主成分は、あくまでも仮の重力方向を示すに過ぎない。
本実施例では、このように平たい領域に分布する３次元点群を利用するため、垂直方向と推測される面のみを抽出するなどといった複雑な前処理を行うまでなく、主成分分析により仮の重力方向を求めることが可能となる。
【００２７】
実施例の３次元点群は、３次元の位置座標とともに、法線ベクトルを有しているから、仮の重力方向が決まると、これに比較的沿う方向の法線ベクトルを有する点群を特定することができる。かかる点群を除外すれば、建物を構成する点群のうち、水平面を構成する点群を除外することができ、建物の垂直面を構成する点群を抽出することができる。また、こうして抽出された点群について、点間の距離および法線方向に基づいてクラスタリングを行えば、点群を建物の側面単位で分離することができる。そして、各面ごとに主成分分析を行い、第３主成分求めれば、それが側面の法線ベクトル方向となる。この法線ベクトルの精度は、第３固有値によって評価できる。つまり、第３固有値が大きいということは、法線方向に点群のばらつきが大きいことを示しており、法線の精度が低いことを表すからである。
【００２８】
こうして各側面の法線ベクトルが得られると、任意の２つの側面の法線ベクトルＶｉ、Ｖｊの外積Ｖｉ×Ｖｊを求めれば、重力方向Ｇが得られるはずである。ただし、法線ベクトルＶｉ、Ｖｊには、それぞれ誤差が含まれているから、こうして得られる重力方向Ｇにも誤差が含まれている。そこで、実施例では、得られている法線ベクトルから、平行ではない任意の組み合わせを選択して、外積により個別の重力方向を求め、その加重平均によって最終的な重力方向Ｇを算出する。加重平均における重み値としては、例えば、法線ベクトルＶｉ、Ｖｊの精度を表す第３固有値の和（ｅｉ＋ｅｊ）の逆数とすることができる。
以上の通り、３次元点群に対して統計的な処理を施すことにより、それぞれの点の位置座標および法線ベクトルに含まれる誤差の影響を抑制し、高い精度で重力方向を決定することが可能となる。
【００２９】
Ｄ２．点群分離処理：
次に、点群分離処理が行われる（ステップＳ２１）。これは、点群分離処理部２０５の機能に相当する処理であり、３次元点群を建物単位に分離する処理である。
この処理の過程で、まず、３次元モデル生成装置２００は、３次元点群を階層ごとに分離する。そして、各階層内で点間の距離によって点群のクラスタリングを行う。このうち、上下方向の法線ベクトルが多く含まれているクラスタには屋上面が存在すると判断することができるから、クラスタを屋上面が存在するものと、側面のみのものに分離することができる。その上で、屋上面が存在するクラスタから、そのクラスタが積層されている下の階層のクラスタを特定していく。この特定は、例えば、上下の階層に属するクラスタ間の２次元的な距離が所定値以下となるもの同士を、同じ建物で上下に重なっているものと判断することで行うことができる。高層階で分岐している複雑な形状の建物の場合、上の分岐部分は、下の階層で共通のクラスタに関連づけられるから、このツリー構造によって、全体が一つの建物であると認識される。
このようにクラスタの関連付けおよびツリー構造を利用することにより、特殊な形状の建物も含め、３次元点群を建物ごとに分離することが可能となる。
【００３０】
Ｄ３．建物枠生成処理：
次に、建物枠生成処理が行われる（ステップＳ２２）。これは、建物枠生成部２０６の機能に相当する処理であり、建物の２次元的な形状を特定する処理である。
この処理の過程で、まず、３次元モデル生成装置２００は、法線ベクトルに基づいて、３次元点群から側面の点群を抽出する。そして、分離された側面に沿わせて所定サイズのグリッドを配置し、点群を水平面に投影し、１又は複数の点が存在する格子を抽出する。この処理によって、処理対象となるべき点数は、建物枠に対応する位置にある格子点の数にまで減少される。このように処理対象となる点数を減らした上で、３次元モデル生成装置２００は、ほぼ直線的に配列されていると判断される部分について、点を間引くことで、建物枠を決定する。
【００３１】
Ｄ４．位置合わせ処理：
次に、位置合わせ処理が行われる（ステップＳ２３）。これは、位置合わせ処理部２０７の機能に相当する処理であり、３次元点群を２次元の地図に適合させる処理である。
本実施例における位置合わせ処理は、建物ごとに２次元地図データと対比して、形状や位置の微修正を行うものではない。本実施例では、目標の建物周辺の領域について３次元点群が得られており、これらの３次元点群は、建物ごとに上面、側面を再現するのと同様の精度で、建物間の相対的な位置関係も表しているはずである。かかる考え方の下、本実施例では、これまでの処理で得られている複数の建物枠の全体を，２次元地図に最も精度良く適合させ得る形状および位置の変換方法を見いだすのである。
かかる位置合わせは、得られた建物枠を構成する頂点と、２次元地図上の頂点との対応関係を種々の組み合わせで試行し、最も小さい変形で、３次元点群を２次元地図に適合させられる対応関係を特定する。かかる特定には、焼きなまし法、またはシミューレーテッドアニーリング法を用いることができる。
かかる方法によれば、建物ごとの形状、および建物の相対的な位置関係について、３次元点群が有する情報を十分に活用することができるため、精度良く位置合わせを行うことが可能となる。
【００３２】
Ｄ５．ポリゴン生成処理：
次に、ポリゴン生成処理が行われる（ステップＳ２４）。これは、ポリゴン生成部２０８の機能に相当する処理であり、建物ごとの３次元点群に基づいて、側面および上面のポリゴンを生成する処理である。
３次元モデル生成装置２００は、ここまでの処理によって得られた建物枠に基づいて上面を定義し、次にこれを下方に平行移動することで、各辺に対して建物の側面のポリゴンを設定する。上で分岐しているような特殊な形状の建物についても同様に、分岐している各上面を下方に平行移動することによって分岐部分の側面を生成し、また低階層の上面を下方に平行移動することによって低階層の側面ポリゴンを生成することができる。このように上面の形状を利用する他、建物枠生成処理で分離された側面の点群に基づいてポリゴンを定義してもよい。
【００３３】
Ｄ６．テクスチャ生成処理：
最後に、テクスチャ生成処理が行われ（ステップＳ２５）、３次元地図として利用可能な位置精度を有する建物ごとの３次元モデルが生成される。
図４〜６は、テクスチャ生成処理のフローチャートである。
処理を開始すると、３次元モデル生成装置２００は、テクスチャの生成処理の対象ポリゴンに合わせた形状で無地のテクスチャを生成する（ステップＳ５０）。図中に生成例を示した。左側に示した建物モデルの正面のポリゴンが対象ポリゴンであるとする。３次元モデル生成装置２００は、図中の右側に示すように、この対象ポリゴンを正面から見た状態の無地テクスチャを生成するのである。無地テクスチャの形状は、例えば、対象ポリゴンを正面から見た状態に変換することで決めてもよいし、対象ポリゴンの縦横比を求め、それに応じた矩形を新たに生成してもよい。無地テクスチャのピクセル数ｐｉｘ、ｐｉｙは、形状に応じて定まる。無地テクスチャにいずれかの画像から得られる対象ポリゴン自体を、初期のテクスチャとして用いても良い。
【００３４】
次に、３次元モデル生成装置２００は、対象ポリゴンを撮影した画像データを読み込み、遮蔽判定を行う（ステップＳ５２）。図中に処理の方法を示した。本実施例では、上空の種々の方向から地物を撮影しているため、対象ポリゴンが写った画像は複数、存在する。この処理は、対象ポリゴンが写った複数の画像を対象として行う。もっとも、必ずしも全画像を対象とする必要はなく、所定の枚数を選択してもよい。
３次元モデル生成装置２００は、画像を読み込むと、対象ポリゴンの画像を切り出し、正面から見た画像に変換する。この変換は、その画像を撮影したときの撮影位置、方向、画角などの撮影条件に基づき、正面から見た状態に変換するためのパラメータを設定することで実現できる。また、対象ポリゴンが矩形であることが既知の場合には、撮影条件を用いるまでなく、対象ポリゴンの画像が矩形になるような変換を施しても良い。さらに、ステップＳ５０で求めた無地テクスチャに、対象ポリゴンの頂点を一致させるように変換する方法をとることもできる。
こうして、正面からの画像に変換すると、３次元モデル生成装置２００は、対象ポリゴンの画像から、遮蔽部分を除去する処理を行う。いずれの部分が遮蔽されているかの判断には、既に生成されている３次元モデルを利用することができる。それぞれの画像を撮影したときの撮影条件に基づいて、他の地物も含む３次元モデルの仮想空間の中で、撮影を再現する。こうして得られた画像内で、どの地物が写っているかは、３次元モデルに基づいて比較的容易に特定できるから、対象ポリゴンの画像内で他の地物によって遮蔽されている部分も特定可能である。かかる方法によって、対象ポリゴンの画像から、遮蔽部分を除去することができる。
画像データの読込み、および遮蔽部分の除去は、このように画像データを読みこんだ時点で行ってもよいし、ピクセルごとに色を決定する後述の処理の時点で行うようにしてもよい。また、本実施例では、読み込んだ画像を正面画像に変換するものとしているが、かかる変換をせずに利用しても構わない。
【００３５】
次に、３次元モデル生成装置２００は、テクスチャの色を、各画素ごとに決める処理を行う。
まず、３次元モデル生成装置２００は、処理対象となるピクセルを選択する（ステップＳ５４）。図中には、テクスチャの左上の画素ＰＰから矢印ａ１、ａ２のように順に処理する例を示したが、ピクセルの選択は、かかる順序に限られない。例えば、対象ポリゴンについて既に得られている特徴点を優先して処理するようにしてもよい。
処理対象ピクセルを選択すると、そのピクセルの周辺の特徴点を抽出し、特徴点を基準として、処理対象ピクセルの相対的な位置を特定する（ステップＳ５６）。特徴点としては、本実施例では、画像特徴量に基づいて各画像の対応が得られている点を用いる。この他、対象ポリゴンの画像データを画像解析して得られる頂点その他の点を特徴点として用いても良い。
図中に相対的位置の特定方法を例示した。処理対象ピクセルＰＰの周囲に特徴点１〜４が存在するものとする。相対的位置関係は、例えば、対象ピクセルＰＰから、特徴点１〜４までの距離ｒ１〜ｒ４の比で表しても良い。また、左下の特徴点２を基準として、特徴点２，３を結ぶ軸上における対象ピクセルＰＰの座標ＣＰｘ、特徴点ｗ、１を結ぶ軸上における対象ピクセルＰＰの座標ＣＰｙによって、相対的な位置関係を表すようにしてもよい。相対的位置関係は、この他、種々の方法で表し得る。
【００３６】
こうして、相対的位置関係が求まると、３次元モデル生成装置２００は、各画像データ内で、処理対象ピクセルに対応する対応ピクセルを特定する（ステップＳ５８）。
図中に処理のイメージを例示した。特徴点１〜４は、テクスチャ生成の素材となるそれぞれの画像内に存在する点である。従って、画像１において、特徴点１〜４を見いだし、これに先に得られている相対的位置関係を適用すれば、対応ピクセルＣＰ１が得られる。同様に、別の画像２においても、特徴点１〜４を見いだし、これに相対的位置関係を適用すれば、対応ピクセルＣＰ２が得られる。このように、テクスチャ生成の素材となる画像、即ちＳ５２で読み込んだ各画像に対し、同様の処理を施せば、各画像における対応ピクセルを特定することができる。
【００３７】
３次元モデル生成装置２００は、こうして得られた各画像の対応ピクセルの平均値によって、処理対象ピクセルの色を決定する（ステップＳ６０）。ただし、先にステップＳ５２で説明した通り、画像データからは、遮蔽部分が除去されている。従って、この処理は、遮蔽部分を除く対応ピクセルの色を用いて行うことになる。
図中に処理例を示した。処理対象ピクセルＰＰ１の色は、３つの画像内の対応ピクセルＣＰ１１、ＣＰ２１、ＣＰ３１の色を平均して求めることができる。処理対象ピクセルＰＰ２については、２つめの対応ピクセルＣＰ２２は遮蔽部分で除去されているため、対応ピクセルＣＰ１２、ＣＰ３２の平均値で求める。処理対象ピクセルＰＰ３については、２つの対応ピクセルＣＰ１３、ＣＰ２３が遮蔽部分で除去されているため、対応ピクセルＣＰ３３を用いて求める。
複数の対応ピクセルに基づいて色を決定する方法は、種々の方法が可能である。例えば、色ごとに対応ピクセルの分布を求めて、そのピーク値を採用するようにしてもよい。
３次元モデル生成装置２００は、テクスチャの全ピクセルについて色が決定するまで（ステップＳ６２）、ステップＳ５４以降の処理を繰り返し実行し、完成したテクスチャを格納して（ステップＳ６４）、テクスチャ生成処理を終了する。
【００３８】
Ｅ．効果：
以上の実施例によれば、対応ピクセルの平均値によって処理対象ピクセルの色を求めるため、遮蔽部分で除去されていない画像データが１つでも存在すれば、欠落部分を補足し合って、処理対象ピクセルの色を決定することができる。また、ピクセル単位で処理を行うため、複数の画像をパッチワークのように合成したときの継ぎ目などが現れず、テクスチャ全体の画質を向上させることができる。
実施例では、
【００３９】
以上、本発明の実施例について説明した。本発明は、必ずしも上述した実施例の全ての機能を備えている必要はなく、一部のみを実現するようにしてもよい。また、上述した内容に追加の機能を設けてもよい。
本発明は上述の実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができることはいうまでもない。例えば、実施例においてハードウェア的に構成されている部分は、ソフトウェア的に構成することもでき、その逆も可能である。
実施例では、３次元点群を用いる例を示したが、テクスチャの生成は、必ずしも３次元点群を利用する態様に限らず適用可能である。
【産業上の利用可能性】
【００４０】
本発明は、３次元モデルのポリゴンに適用するテクスチャ画像データの生成に適用可能である。
【符号の説明】
【００４１】
１００…撮影管理装置
１０１…カメラ
１０２…ＧＰＳ
１１０…撮影制御部
１１２…撮影シーケンス記憶部
１２０…画像記録部
２００…３次元モデル生成装置
２０１…画像データ記憶部
２０２…３次元点群生成部
２０３…３次元点群データ記憶部
２０４…重力方向解析部
２０５…点群分離処理部
２０６…建物枠生成部
２０７…位置合わせ処理部
２０８…ポリゴン生成部
２０９…テクスチャ生成部
２１０…２次元地図データ
２１１…３次元モデルデータ
【図１】
0005997664.tif 000002
【図２】
0005997664.tif 000003
【図３】
0005997664.tif 000004
【図５】
0005997664.tif 000005
【図４】
0005997664.tif 000006
【図６】
0005997664.tif 000007