【文献】
岡太一, 外4名,”標高データに基づく3次元地図の生成”,映像情報メディア学会技術報告 2003年3月開催分,日本,(社)映像情報メディア学会,2003年 3月18日,第27巻, 第21号,p.5-8
(58)【調査した分野】(Int.Cl.,DB名)
前記ステレオ視差計算手段は、ステレオ画像を処理対象として、マルチスケールの縮小ステレオ画像を生成し、各スケール上の視差を計算し、マルチスケールの視差情報をまとめることでオリジナルサイズ上の視差の予測値を取得する、
ことを特徴とする請求項1に記載の三次元地物データ生成装置。
前記直線抽出手段は、ステレオ画像の一方の画像を処理対象として、マルチスケールで取得した縮小画像から画像ピラミッドを構築し、当該画像ピラミッド上の各階層の画像に対し直線抽出を行い、当該抽出した直線を一定の制限でまとめ1つの直線セットを出力する、
ことを特徴とする請求項1に記載の三次元地物データ生成装置。
前記直線類別判定手段は、前記ステレオ視差計算手段で取得した視差と入力したステレオ画像とに基づいて、前記直線抽出手段で抽出した直線を、地物に関連する直線、及び、地物と無関係な直線に分類し、更に、地物と関連する直線を、屋上の構造を含む異なる特徴に基づき、地物屋上内部の直線、地物外部輪郭線に分類し、また地物と無関係な直線を、影領域の輪郭線、道路線、及び、他の直線に分類する、
ことを特徴とする請求項1乃至3の何れか1項に記載の三次元地物データ生成装置。
前記無意味直線除去手段は、前記直線抽出手段で実世界にそれぞれ意味がある直線と一緒に抽出した、画像のノイズ、及び影領域の影響で発生した直線を、処理対象から除外する、
ことを特徴とする請求項1又は3に記載の三次元地物データ生成装置。
前記無意味直線除去手段は、ステレオ画像上に表される地域を含める地図情報を外部から入力し、当該地図とステレオ画像との重なりの調整でおおよその同一位置の対応関係を決め、地図情報で無効領域を確定し、当該無効領域内のすべての直線をノイズ直線として削除する、
ことを特徴とする請求項1又は3に記載の三次元地物データ生成装置。
前記直線ペア判定手段は、前記直線抽出手段で抽出した直線を前記直線類別判定手段で分類した類別に基づいて、ステレオ画像の一方の画像内の直線から他方の画像内に対応する直線を捜索する際に、処理対象の前記直線と同じ類別の直線に対してマッチング度を含む基準で対応しているかどうかを判定する、
ことを特徴とする請求項1又は3に記載の三次元地物データ生成装置。
前記直線ペアクラスタリング手段は、前記直線ペア判定手段で決定した直線ペアの中における地物と関連する直線ペアを選択し、前記ステレオ視差修正手段で取得した視差と複数の直線ペアの幾何関係とを利用し、各地物にそれぞれ属している直線ペアを決定する、
ことを特徴とする請求項1又は7に記載の三次元地物データ生成装置。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について図面を参照して説明する。
なお、以下の実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。従って、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であり、それらの実施形態も本発明の範囲に含まれる。
【0017】
(第1の実施形態)
図1は、本発明の第1の実施形態に係る三次元地物データ生成装置100の概要構成を示すブロック図である。この三次元地物データ生成装置100は、分析対象の家屋や建築物がある地域に対し、上空より異なる視点で撮影した複数の画像からのステレオ情報と、家屋や建築物本来の直線特徴情報とに基づき、家屋や建築物を含む地物の三次元モデルを作成する。以下、本図を参照して説明する。
【0018】
図1に示すように、三次元地物データ生成装置100は、ステレオ画像データ入力部10と、直線類別入力部20と、直線類別記憶部21と、処理規則入力部30と、処理規則記憶部31と、ステレオ視差計算部40と、直線抽出部50と、直線類別判定部60と、無意味直線除去部70と、直線ペア判定部80と、ステレオ視差修正部90と、直線ペアクラスタリング部110と、平面抽出部120と、平面組合せ部130とを有する。
【0019】
ステレオ画像データ入力部10は、画像データを入力する機能を有する。ユーザは、ステレオ画像データ入力部10に、ステレオ情報をもつ左画像と右画像のペア画像(ステレオ画像)を入力する。
本発明で使用するステレオ画像は、例えば、航空写真から変換したデジタル画像や衛星写真からのデジタル画像等であるが、これらに限られるものではない。また、特に航空写真の場合、アナログカメラで撮影したアナログ写真をスキャニングなどの処理でデジタル化したデジタル画像であってもよい。
一例として、ステレオ画像が航空画像の場合には、航空機の飛行方向に対して前後の重なりが通常60%、飛行コース間の上下の重なりが30%を標準として撮影された航空写真のデータが用いられる。
【0020】
直線類別入力部20は、処理しようとするステレオ画像内にある直線の類別を入力する機能を有する。ユーザは、直線類別入力部20に、直線類別を判定する際に必要な類別を入力する。
例えば、直線類別入力部20は、普段航空写真に表されるすべての直線類別を提供可能となっている。そして、ユーザは、提供された類別から処理している航空写真内に存在する直線の種類を選択し、直線類別入力部20から選択した直線の種類を入力する。直線類別入力部20から入力した類別は、直線類別記憶部21に保存され、直線類別判定部60が直線類別を判定する際に適時取得される。
【0021】
航空写真に表される直線類別として、例えば、影領域輪郭線、家屋外部輪郭線、家屋屋上内部の直線、道路線、駐車場内直線、水面上ノイズ線、樹木上ノイズ線、ほかのノイズ線等がある。このような直線類別は、それぞれ独立している類別として直線類別入力部20から入力してもよいし、多数の類別を組合せた新しい類別であってもよい。例えば、家屋外部輪郭線、家屋屋上内部の直線などは、ともに家屋輪郭線として類別してもよい。また、水面上ノイズ線、樹木上ノイズ線などとほかのノイズ線を合わせてノイズ線類として類別してもよい。また、道路線、駐車場内直線などを統一し路面上直線として類別してもよい。
【0022】
実際には、処理している写真のコンテンツ、写真内の各地物、地形の特徴などにより、分類の細かさなどを決めることになる。一例として、
図2に示すように、密集している家屋が隣の家屋と近似する構造を持っている場合では、直線ペアの関係をより正確に決定するために、家屋輪郭線を1つの種類ではなく、家屋外部輪郭線、家屋屋上内部の直線の2つの種類に分けるなどである。
【0023】
また、実際の応用目的に応じて直線類別を設定してもよい。具体的には、例えば、直線の角度により全体の180度を6等分し、各角度範囲に応じた類別に分類する。また、画像内における家屋や建築物の屋上の構造がポリゴンである場合には、家屋の輪郭を構成する各直線について、各方向に応じて分類する。これにより、後述する直線ペア判定と直線ペアクラスタリングの処理がより簡単に実現できる。
この他の具体例も挙げておく。例えば、対応地域の地図を変換することで、航空写真からの画像と地図とを対応させ、地図上にある街区の範囲情報を画像上に反映し、街区単位で直線を分類する。つまり、1つの街区内の全ての直線は同じ類別と判定することで、後述する対応直線を捜索する際に、潜在直線の捜索範囲を縮小することができる。
また、様々な分類基準の組合せで生成した新しい分類ルールを利用してもよい。
【0024】
図1に戻って、処理規則入力部30は、三次元地物データ生成に関する全てのパラメータを入力する機能を有する。ユーザは、処理規則入力部30に、後述するステレオ視差計算、直線ペア判定の処理にそれぞれ必要となるパラメータを入力する。
処理規則入力部30から入力するパラメータは、例えば、ステレオ視差を縮小スケールで計算する際の縮小スケールの値、及び、直線ペア判定の際に使用するマッチングスコアの閾値などを含む。
処理規則入力部30から入力したパラメータは、処理規則記憶部31に保存される。そして、ステレオ視差計算、及び、直線ペア判定のそれぞれの処理を行う際に処理パラメータが、処理規則記憶部31より適時取得される。
【0025】
ステレオ視差計算部40は、複数の航空画像が共有している領域内にある地物のステレオ視差を計算する。同一地物において、各画像上に反映されている傾きの変化がその地物の実際の標高を反映する視差の情報となる。
視差を求めるため、まず異なる航空画像上に対応する部分を見つける必要がある。2つの航空画像の場合、このような左右画像上の各部分の相関性を求めるためにステレオマッチング処理が行われる。
ステレオマッチング処理は、左右画像の共有している領域内において、一定の計算方法で、左右画像上それぞれの部分の近似度を算出する。その近似度は左右画像上にマッチングしようとする2つの部分が対応する可能性を示している。
近似度を計算する際に、直接に画像上のピクセル単位の色情報あるいは輝度情報を利用してもよい。この他にも、画像分割を行った後、分割領域ごとに計算してもよいし、また一般的な特徴量、例えば、特徴点、特徴直線、特徴曲線などで計算してもよい。
ステレオマッチングを行う前に、左右画像に対し、まず相互標定を行うことで、対応する部分の捜索範囲を二次元から一次元に制限することができる。つまり、相互標定後、左右画像の対応する部分は、同一のエピポーラ線上だけに存在する。
【0026】
ステレオ視差計算部40で取得する視差は、まだ視差の予測値であり、後述するように、ステレオ視差修正部90において直線ペアの情報で修正される。なお、ステレオ視差修正部90で修正できる視差は、画像のノイズの影響で発生したマッチングノイズなどである。オクルージョン領域内には、元々の左右画像だけでは視差の情報が復元できないので、修正できない。
また、ステレオ視差計算部40で取得する視差は、まだ実際の標高ではなく、単に標高と正比例の関係を持つ相対的な高さ情報である。視差は地物の相対的な高低関係を反映することができるため、後述する直線ペア判定の処理と直線ペアクラスタリングの処理では補助情報として使用される。
最終的に取得する三次元モデル上において、このような視差に基づいて、単に標高と正比例するように地物の高さを反映させてもよいし、また、入力した航空写真の撮影情報などに基づいて、視差を実際の標高に変換してもよい。
【0027】
ステレオ視差計算部40では、元サイズのステレオ画像で直接に視差を計算する方法に限られず、他の方法を用いてもよい。例えば、目的に応じて一定の縮小スケールで縮小したステレオ画像上に視差を計算し、そして取得した視差を元サイズの画像上にマッピングすることによって全画像の視差を取得する方法を用いてもよい。
同じ縮小スケールで左右画像をそれぞれ縮小し、縮小画像では元サイズの画像よりもっと効率的に広い探索範囲内の最適対応点を取得することができる。特にステレオ画像内の視差の可能値の範囲が広い場合、つまり、地形の変化が激しい場合には、この方法によってより効率的に正確な視差を取得できる。
【0028】
実際の航空写真では、地形の変化が激しいケースは、様々である。例えば、山間部の場合、大きい正視差と大きい負視差とがある。また、市街地に高層ビルの場合、画像内の平均視差と比べ非常に大きい正視差がある。以上のような視差の可能値の範囲が広い場合では、元の画像サイズで直接にステレオ視差を計算すると、計算の時間と効果を両立させることができない。
全画像に各ピクセル上の視差を正しく取得することが目標である場合には、一番低い負視差から一番高い正視差までの視差の可能値の範囲を探索範囲として、全画素を対象として計算しなければならない。この場合、当然に処理時間が長くかかる。
一方、計算効率が目標であれば、全画像の平均探索範囲を各ピクセルに設定することで、当画像内に一番低い負視差から一番高い正視差までの範囲を探索範囲として設定することより処理時間は短縮される。ただし、平均探索範囲外の非常に高い正視差と非常に低い負視差があるピクセルに正しい視差を取得することができないため、見た目ではオクルージョン領域と同じようにマッチングできない状況となる。
【0029】
以上の問題を解決するために、従来は、まず全画像上に平均探索範囲を設定し視差を計算し、計算した結果の中にマッチングできていない部分だけを手動で探索範囲を一定程度で拡大してからもう一回ステレオマッチングを行うという方法が採用されていた。この方法でも、一定の効率で全画像の視差情報を正しく取得できるが、ユーザの調整が必要となり自動的な方法ではなかった。また、探索範囲を広げるときには、画像の視差の可能値の範囲についての知識が必要だった。
これに対し、本願発明では、縮小したステレオ画像上にステレオマッチングを行うことにより、自動的にかつ効率的に全画素上の視差を正しく取得できる。具体的には、
図3に示すように、縮小ステレオ画像で、探索範囲を画像の幅に設定する。つまり、左の画像301a上のP点に対し、右の画像301bにおける同一エピポーラ線302上のPsからPeまでの全ての点との近似度を計算し、その中に近似度の一番高い点を対応する点と決める。この場合、探索範囲が縮小画像の幅となるので、オクルージョン点以外に、最大の正視差でも最小の負視差でも正しく取得できる。また、探索範囲が画像の幅であり、縮小画像上で行うので、縮小スケールが大きくほど、処理時間は短縮される。
【0030】
縮小ステレオ画像で取得した視差から元のサイズへマッピングするとき、縮小スケールが大きいほど、元サイズの画像上に視差情報が未定のピクセルが多い。一例として説明すると、もし元サイズの画像上に画素の数がNだとして、縮小スケールが2の場合、(1−0.5×0.5)×N=0.75×Nのピクセル上にて視差情報が未定となる。これに対し、縮小スケールが10の場合、(1−0.1×0.1)×N=0.99×Nのピクセル上にて視差情報が未定となる。
もし効率だけでなく精度に対する要求も高い場合には、直接に元のサイズにマッピングするのではなく、縮小画像上に取得した視差を、元サイズのステレオ画像のステレオマッチングの補助情報として使用する。具体的に、まず元サイズ上に視差情報があるピクセルについて、その視差を中心値として一定の探索範囲を設定し、その範囲内にてより正確な視差を計算する。そして、既に決定した視差の情報を探索制限として使い、視差未定の点について対応点を探索する。これにより、自動的にかつ効率的に各ピクセルに適用の探索範囲を設定することができる。
実施する際に縮小スケールの値は、このように効率と効果の両方を要求する設定を行うことが望ましい。効率に対する要求がより高い場合には、少し大きい縮小スケールを設定する。逆に視差の精度に対する要求が高い場合には、少し小さい縮小スケールを設定する。また、画像のコンテンツにも関連する。例えば、地物が少ない単一の地形の場合には、大きい縮小スケールであっても最終的な全体の視差への影響が小さい。一方、密集している地物がある場合には、画像の細かいコンテンツをより正確に反映するため、小さい縮小スケールの方がよいと想定する。
【0031】
図1に戻って、直線抽出部50は、ステレオ画像の左右画像それぞれを処理し、まず画像内のエッジ特徴を抽出し、後にエッジ特徴に基づき直線を抽出する。
エッジ特徴の抽出方法と直線抽出方法は、それぞれ様々があるが、本実施例に使用される手法に制限はない。
例えば、エッジ特徴の抽出方法として、Canny抽出方法を使用してもよい。また、直線抽出方法として、Hough transform方法を使用してもよい。
【0032】
直線類別判定部60は、ステレオ画像の左右画像にそれぞれ実行し、直線類別入力部20で入力された現在のステレオ画像に使用したい直線の類別により、画像内の全ての直線を各類別に分類する。
直線分類の基準は、1つの特定の基準でもよいし、多数の分類基準の組合せでもよい。画像のコンテンツに応じて、適用する直線類別を設定することが望まれる。例えば、街区単位に直線を分類する手法は、高層ビルがない住宅地に適用する。高層ビルには大きい正視差があるため、屋上の輪郭の直線は普段画像上に違う街区領域に存在すると想定する。
【0033】
直線類別判定部60は、直線類別入力部20で入力された直線類別の情報により画像内の全ての直線を分類する。このとき、直線類別判定部60は、直線の特徴、例えば、角度、位置、長さなどと、ステレオ視差計算部40で取得した視差と、ステレオ画像の特徴などとも利用する。
直線を分類する方法は、分類基準と分類する際に利用する特徴により様々あるが、本実施例に使用される手法に制限はない。一例として、以下に説明する分類方法を使用してもよい。
【0034】
直線とその近隣領域の視差情報により、直線上の平均視差と直線方向上の視差変化を把握することができる。地面と家屋を区別する視差の閾値を設定し、閾値より低い平均視差をもつ直線は、家屋、建築物などの地物と無関係な直線となる。そして、残る直線を、直線の長さ、直線の周りの領域のカラー分布とテクスチャ分布の均一性から、樹木上のノイズ直線及び地物と関連する直線とに分ける。ただし、全画像内の地形の変化が激しい場合、あるいは地物の高さの変化が激しい場合には、領域ごとに違う閾値の設定が必要となる。
直線類別判定部60は、地物と関連する直線を、更に視差情報と画像の特徴を用いて、家屋外部輪郭線と屋上内部の直線に分類する。直線の両側の視差の差は大きく、かつ両側のカラー特徴も違う場合に、家屋外部輪郭線と判定する。逆に、直線の方向上において視差が変化するかどうかに拘わらず、直線の垂直方向で取得する両側の近隣領域内それぞれの平均視差がほぼ同じ、かつ画像のカラー特徴も大体同じで、明るさのみが少し違う場合に、屋上内部の直線と判定する。
家屋、建築物などの地物の三次元モデルを生成するため、地物と無関係な直線を直接に処理することはないが、地物と関連する直線のペア判定、直線ペアクラスタリングなどの処理をより簡単に実行できるように、更に地物と無関係な直線を分類するようにしてもよい。例えば、画像のカラー特徴で影領域を判定し、直線の中に影領域の輪郭線を区別できる。影領域の輪郭線があるところの近所には、必ず家屋、建築物などの地物がある。また、路上の白線に沿う直線は、道路線として認識し、道路線の交差関係を判別する上で、街区領域の範囲が判定できる。地図の情報がないとき、これも1つの街区範囲情報の取得方法となる。
画像のカラー特徴、テクスチャ特徴、また、視差上のテクスチャ特徴を利用し、例えば、水面抽出を行い、水面領域内の直線は全部水面上ノイズ線と判定する。また、水域と緑地について、地図上の情報からその領域を特定することもできる。
【0035】
直線をいくつかの類別に分けることにより、後述する直線ペア判定、無意味直線除去、及び、直線ペアクラスタリングをより簡単に実現できるようになる。
左右画像上の直線をそれぞれ同じような類別設定で分類し、直線ペア判定の際に、一方の画像上の直線の他方の画像上の対応直線を捜索し、その捜索範囲を処理している直線と同じ種類の直線だけに限定できる。
また、直線ペアを、各家屋や建築物に属しているか否かを基準としてクラスタリングをする際に、直線類別情報も利用できる。例えば、同じ街区領域内にある直線ペアは同一家屋に属している可能性が高いので、クラスタリングの際同じ街区内の直線ペアを優先し判定する。
また、直線の分類の結果により、後述する無意味直線を除去する処理もより効率的に実行できるようになる。例えば、直線分類基準が、地物と関連する直線と無関係な直線だった場合には、簡単に地物と無関係な直線だけを除去できる。また、全ての直線が街区領域ごとに分類されたら、処理したい街区以外の直線は、全部無意味直線として除去することができる。
【0036】
無意味直線除去部70は、以降の直線ペア判定、直線ペアクラスタリングなどの処理部で処理しない直線を全て無意味直線と判定し、それらの直線を除去し、後の処理の効率と正確率を更に向上させる。
実施する際に、無意味直線の定義は具体的な応用に応じて変わる。例えば、一定サイズ以上の家屋だけを注目する場合には、直線の長さに閾値をかけることで、この閾値以下の長さの直線を全部無意味直線と判定する。
無意味直線除去部70において、直線類別判定部60の処理結果を利用し、類別ごとに無意味かどうかの判定が可能であれば、まとめて多数の無意味直線を除去する方法を利用してもよい。基本的に、家屋と関連する直線を除き、ほかの直線を全部無意味直線と判定して除去し、後の処理に影響しないようにする。
例えば、仮に全ての直線を家屋外部輪郭線、屋上内部の直線、道路線、影領域の輪郭線、樹木ノイズ線、及び、水面上ノイズ線などの類別に分けた場合において、一方の画像からの影領域の輪郭線は、実世界に他方の画像上に対応する直線がないので、無意味直線として除去すべきである。また、樹木ノイズ線、及び、水面上ノイズ線も左右画像上にランダムに分布しているので、実世界に対応する直線がないことから除去すべきである。
道路線は街区領域の判定に使えるが、街区ごとの判定ができた場合に、これからの処理で家屋、建築物などの地物の三次元モデルに使わない直線となるため、除去してもよい。
【0037】
直線ペア判定部80は、無意味直線除去の処理の後に残った全部の直線を処理対象として、一方の画像上の各直線に対し、他方の画像上にある対応直線を見つけ対応関係を付ける。
対応直線を捜索するときに、まず直線の分類結果を利用し、他方の画像上に同じ類別の直線だけを潜在対応直線として直線マッチング度を計算する。
また、対応直線を捜索するときに、ステレオ視差計算部40にて取得した視差を利用し、現在処理している直線の各ピクセル上の視差に基づき、各ピクセルが他方の画像上に対応する各点を取得し、そして対応点の集合の近隣領域内にある直線を見つけ、それらの直線を潜在対応直線として処理している直線とのマッチング度を計算し、マッチングするかどうかを判断する。
視差情報で潜在対応直線の捜索範囲を決定することは、特に従来の方法では解決できないケース(例えば、近似の色、かつ近似の高さの家屋が密集している地域や高層ビルが含まれる場合)でも、処理の正確率と効率が共に向上する。
処理している直線と潜在対応直線が左右画像それぞれからの直線で、そのマッチング度を計算する際に、様々な特徴を利用してもよい。例えば、直線の両側のカラー分布の特徴、直線の両側のテクスチャ特徴、直線の角度、直線の長さなどの近似度の綜合でマッチング度を取得する。
【0038】
従来の方法として、マッチング度の値に閾値をかけ、閾値以上のマッチング度をもつ直線ペアは対応直線と判定し、そうではないペアは全部対応しないと判定する。このような方法では、特に家屋が密集している地域に、直線の数が多く、かつ近所にある直線も大体同じ視差なので、誤マッチングのケースが多い。
このような問題に対し、本願発明では、段階的にマッチングする方法を採用する。まず信憑度の高い直線ペアの対応関係を決め、そして決めた直線ペアの対応関係をこれからのマッチング制限として利用する。また今度残った直線ペアの中に信憑度の一番高い直線ペアのセットを決定する。さらに、全ての決定した直線ペアがまたこれからのマッチングに制限として利用する。このような段階的な処理で、全体的に直線ペアの対応関係の信憑度を高めることができる。
直線対応関係の信憑度は、この実施例で使用する特徴に限らず、様々な特徴を利用してもよい。例えば、マッチング度の値、直線の長さ、視差の大きさなども利用できる。これらを利用する場合には、マッチング度の高い直線ペアの対応関係を先に決定することで、誤マッチングを減少させることができる。画像内には、通常大きい地物は少ないので、長い直線ペアの対応関係を先に決定することも誤マッチングを減少させることができる。従来の方法では、対応直線を捜索する際に、単に近隣領域内に捜索する。そのため、高層ビルなどの高い建築物の輪郭線をマッチングすることが一番難しい。この問題に対し、視差の情報を利用し先に高層ビル上の直線の対応関係を決定する。これにより、高層ビル関連の誤マッチングをまずなくし、また近所の別の家屋、建築物の輪郭線の誤マッチングも減少させることができる。
【0039】
以下は1つの例として、左右画像上の直線の対応関係を決定する方法を説明する。
一方の画像の直線から他方の画像内に対応直線を捜索し、例えば左画像内の直線Sl1に対し、右画像内のSr1直線が対応直線と判定できたとする。更に右画像内のSr1直線に対し、左画像内のSl2直線が対応直線と判定できたとする。この場合、直線Sl1と直線Sl2とが同じときだけ、直線Sl1と直線Sr1との対応関係を決定する。
【0040】
ステレオ視差修正部90は、直線ペア判定部80で決定した直線ペアの対応関係を利用し、左右画像の視差を更に修正する。
直線ペアの対応関係がある場合には、同一のエピポーラ線上に対応する点、例えばNとMとの対応関係も決められる。このため全部の直線ペアから、1つのエピポーラ線との交差点を対応点とすることで、エピポーラ線上のほかの点の対応点を捜索する制限条件として使用できる。一例として、
図4に示すように、直線ペアA1,A2と直線ペアB1,B2がそれぞれ対応関係ありの場合には、エピポーラ線402との交差点はそれぞれM1,M2とN1,N2となる。そして、エピポーラ線402における左画像401a上の始点と終点はS1,E1となり、右画像401b上の始点と終点はS2,E2となる。この状態において、S1とM1の間の点に対する対応点は、必ずS2とM2の間にある。また、M1とN1の間の点に対する対応点は、必ずM2とN2の間にある。そして、N1とE1の間の点に対する対応点は、必ずN2とE2の間にある。
上述のような制限条件で、直線ペアの間の点の視差を修正する。ここで使用する直線ペアは、全部家屋、建築物などの地物と関連する直線である。そのため、特に家屋外部輪郭線と屋上の内部直線などの間にある屋上の領域部分について修正し、屋上部分により正確な視差を取得することができる。また、異なる家屋の外部輪郭線の間の領域内にて、その視差を修正する。これにより、主にオクルージョン領域の輪郭線をより精確に取得することが可能となる。また、屋上の領域内の視差ノイズとオクルージョン領域の輪郭周辺の視差ノイズとも修正することが可能となる。
【0041】
図1に戻って、直線ペアクラスタリング部110は、直線ペア判定部80で決定した直線ペアを、それぞれ所属している各家屋、建築物単位にクラスタを作成する。直線ペアクラスタリングの処理の結果は、1つの家屋、建築物に属しているすべての直線ペアを1つのクラスタにまとめ、直線の間の連結関係も判明される。
直線ペアは、家屋、建築物などの地物と関連する直線だけから構成することと分かる上で、また視差情報もあるので、三次元空間上に直線ペア間の関係を分析し、直線ペアクラスタリングを実行する。以降、三次元空間上に直線ペアを分析するので、直線ペアについて三次元直線との名称を付ける。
【0042】
まず全ての直線ペアの中に、以下の制限を全部満足する2つの三次元直線が、同じ地物に所属し、かつ連結関係がある三次元直線と決定する。2つの三次元直線は交差している、あるいは1つの三次元直線の頂点は、もう1つの三次元直線の頂点の近傍領域内である。
注目する2つの直線は、更に以下の条件を満たさなければならない。2つの三次元直線が囲む領域の面積は事前に設定した家屋面積閾値より高い。また、2つの三次元直線が囲む領域内の視差はこの2つの三次元直線上の平均視差とは同じ、あるいはより高く、かつ領域内の視差は事前に設定した現在処理している2つの三次元直線がある街区内の家屋の高さを表す視差閾値より高い。
そして、決定した連結関係がある三次元直線のペアから、コンベックス制限をかけ、屋上領域の外部の輪郭と屋上内部の構造を表すポリゴンを取得する。
図5(a)はこのケースを示している。外部輪郭を閉合輪郭として取得するため、コンベックス制限とともに、お互いに頂点は近傍領域内、かつコンベックス制限で同じ輪郭に属し、形成しているポリゴン領域内の視差も以下の条件を満たすとき、
図5(a)に示すように、本来連結関係がない2つの三次元直線L(a1)とL(a2)とを繋げ、R(a1)とする。取得したポリゴンの領域内の視差はこのポリゴンを構成する各三次元直線の平均視差と同じ、あるいはより高く、かつ事前に設定したこの街区内の家屋の高さを表す視差閾値より高い条件を満たさなければならない。
【0043】
上述のように、三次元直線の連結関係とか最後の屋上ポリゴンの取得とかの処理では、各直線の全部を使ってもよいし、直線の一部を使ってもよい。直線の一部だけを使うことは、1つの直線が複数の家屋の輪郭にまたがる可能性があるとのことを考える。それは同じ方向に建てられ、かつ間の距離は非常に近い複数の家屋から、同じ方向上の各家屋の輪郭線を1つの直線として抽出されることがあるためである。
図5(b)はこのケースを示している。このようなケースでは、
図5(b)に示すように、直線L(b1)をそれぞれ切り離し、R(b1),R(b2),R(b3)にそれぞれに属するようにする。また、
図5(c)に示すように、ノイズの影響で本当の輪郭線より長い線L(c1)を抽出する可能性もある。この場合、直線の一部だけが家屋の屋上輪郭線であり、その一部だけがR(c1)に属するようにする。
そして、
図5(b)でも示したが、最後のポリゴンを生成するため、元々交差していない2つの直線を交差するように延長してもよい。そうしたら、影などの影響で線の一部しか抽出されていないときでも、家屋の輪郭の一部としての完全な線長を復元することができる。
また、
図5(a)のように、実際の画像では、画像ノイズなどの影響で元々1つの直線が切断されても、閉合ポリゴン取得でまた連結され1つの直線になることができる。
三次元直線の所属判定の処理では、各三次元直線が1つの家屋に専有する制限はなく、多数の家屋に属していてもよい。まず前述の
図5(b)のケースのように、1つの三次元直線が同じ方向に建てられている多数の家屋が共有している可能性があるためである。また、
図5(d)で示しているように、隣り合う2つ家屋は、1つの三次元直線L(d1)を共有することもある。
【0044】
面積閾値の制限と領域内の視差制限があるので、隣り合う家屋に属している三次元直線が誤って同じ家屋に所属する判定はしない。
図5(b)の例に合わせて説明する。一つの例は、線L(b4)と線L(b5)が形成している領域内には地面があるので、視差制限を満たすことができない。また、線L(b4)と線L(b5)が形成している領域の面積は小さすぎ、面積閾値制限を満たすこともできない。線L(b2)と線L(b5)が形成している領域は面積制限を満たすが、領域内に地面があるので、視差制限を満たしていない。
【0045】
また、影の影響で屋上の一部の領域はほかの部分と違う明るさを持っているので、カラー特徴とテクスチャ特徴だけでは、完全な屋上を抽出することができないが、視差情報があるので、この屋上に属している各三次元直線から形成している輪郭領域内に視差制限を満たすことで、完全な屋上領域を抽出することができるようになる。
図5(e)がこのケースを表している。
従来の方法では、垂直関係とか平行関係とかは使用しているが、本願発明の方法の三次元直線の所属判定では、直線の間の幾何関係を一切使わないことにしている。それで、家屋、建築物などの地物の屋上の構造、輪郭の形などに一切制限しないためである。
【0046】
図1に戻って、平面抽出部120は、直線ペアクラスタリングで取得した各地物に属している三次元直線のクラスタから、地物の屋上を構成する全ての平面を抽出する。
直線ペアクラスタリングでは、各地物の屋上を構成するポリゴンを抽出することができる。抽出したポリゴンの中には、屋上の外部輪郭を示す輪郭ポリゴンもあるし、屋上の内部構造を表明する内部ポリゴンもある。まず各家屋のクラスタの中に、輪郭ポリゴンの領域内にある各内部ポリゴンが、平面かどうかを判定する。もし平面だったら、1つの屋上平面として抽出する。また、もし領域内の視差の分布平面ではないが、部分的に平面拘束を満足することであったら、その領域をいくつかの平面に分割する。もし以上のいずれでもない場合に、ポリゴン内部領域は曲面があると判定する。次に、輪郭ポリゴンの領域内にて、内部ポリゴン以外の部分は、内部ポリゴンと同じように処理する。
そう処理する結果、1つの家屋の屋上輪郭ポリゴンは、以下のケースの何れか1つである。
(1)1つの平面。それは平坦な屋上である。(2)多数の平面。それは平面だけで構成している屋上である。(3)曲面。それはドームなどの曲面の屋上である。この場合、いくつかの平面から近似し、最後には(2)と同じように多数の平面から構成する屋上を生成する。上述した
図2で示した家屋の例では、201類と202類の家屋は「多数の平面」のケースであり、203類の家屋は「1つの平面」のケースである。
【0047】
図1に戻って、平面組合せ部130は、平面抽出部120で決定した各地物の屋上の内部の構造に基づき、更に屋上を構成している各部分の幾何関係を決定し、各地物の三次元モデルを抽出する。
平面抽出部120の処理結果に応じて、平面組合せ部130では以下の異なる処理を行う。
(1)家屋の屋上が1つの平面である場合では、そのままに屋上の平面の視差に基づき地物の三次元モデルを生成する。(2)屋上が多数の平面から構成される場合では、視差情報に基づき各平面の隣接関係を分析し、最後に屋上の三次元構造を明らかにする上に、地物の三次元モデルを生成する。(3)屋上が曲面である場合では、(2)と同じように各平面の隣接関係を決定した上に、地物の三次元モデルを生成する。
【0048】
図6は、第1の実施形態に係る三次元地物データ生成装置100をコンピュータに実装する場合における、物理的な構成の一例を示すブロック図である。
本発明に係る三次元地物データ生成装置100は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができ、制御部201、入出力部202、表示部203、操作部204、主記憶部205、外部記憶部206、及び、システムバス207から構成される。
入出力部202、表示部203、操作部204、主記憶部205、及び、外部記憶部206はいずれもシステムバス207を介して制御部201に接続されている。
【0049】
制御部201は、例えば、CPU(Central Processing Unit)などから構成される。制御部201は、外部記憶部206に記憶されている制御プログラム300に従い、後述する三次元地物データ生成処理等を実行する。
【0050】
入出力部202は、例えば、無線送受信機、無線モデムまたは網終端装置、及びそれらと接続するシリアル・インターフェース又はLAN(Local Area Network)インターフェースなどから構成されている。入出力部202を介して、処理しようとする画像データ、処理パラメータ、直線類別情報などを受信し、またオペレータの指示を入力することができる。そして入出力部202から処理した結果データを送信することもできる。
【0051】
表示部203は、例えば、CRT(Cathode Ray Tube)またはLCD(Liquid Crystal Display)などのディスプレイやプリンタなどを含む。表示部203は、入力の画像データや三次元地物データ生成装置100の処理結果などを表示する。
【0052】
操作部204は、キーボード及びマウスなどのポインティングデバイスなどをシステムバス207に接続するインターフェース装置から構成されている。操作部204を介して、ステレオ画像データ、処理パラメータ、及び、直線類別情報などを入力できる。また、送受信などの指示、処理結果表示の指示などが入力され、制御部201に供給される。
【0053】
主記憶部205は、例えば、RAM(Random Access Memory)などのメインメモリである。この主記憶部205は、外部記憶部206に記憶されている制御プログラム300をロードし、制御部201の作業領域として用いられる。
【0054】
外部記憶部206は、フラッシュメモリ、ハードディスク、DVD−RAM(Digital Versatile Disk Random Access Memory)、ROM(Read Only Memory)、磁気ディスク、半導体メモリなどの不揮発性メモリから構成される。外部記憶部206は、三次元地物データ生成処理等を制御部201に行わせるための制御プログラム300を予め記憶する。また、外部記憶部206は、制御部201の指示に従い、この制御プログラム300が記憶するデータを制御部201に供給する。更に、外部記憶部206は、制御部201から供給されたデータを記憶する。
【0055】
上述した
図1に示されている三次元地物データ生成装置100の各構成部分の処理は、制御プログラム300を介して、制御部201、入出力部202、表示部203、操作部204、主記憶部205、外部記憶部206などを資源として利用し実行される。
上記の各機能を行う制御プログラム300を、コンピュータ処理装置上の制御部201で実行することにより、ソフトウェア的に三次元地物データ生成装置100を実現することができる。その場合、制御部201は、外部記憶部206に格納されている制御プログラム300を、主記憶部205にロードし実行し、各部の動作を制御し上記の各機能を行わせることにより、三次元地物データ生成装置100をソフトウェア的に実現する。
なお、本発明による三次元地物データ生成装置100の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを利用し実現することも可能である。
また、上記の三次元データ生成の機能を実現する回路を込み込んだLSI(Large Scale Integration)などのハードウェア部品から構成される回路を実装し、電子回路として構成することもできる。
【0056】
以下、このような構成の三次元地物データ生成装置100の動作について、図面を参照して説明する。最初に全体処理の流れを、
図7を参照して説明する。
図7は、三次元地物データ生成処理を示すフローチャートである。
三次元地物データ生成装置100は、ステレオ画像データ入力部10にステレオ画像データが、また、直線類別入力部20に直線類別情報が、そして、処理規則入力部30に処理用のパラメータが、それぞれ入力されると、
図7の三次元地物データ生成処理を開始する。
【0057】
まず、三次元地物データ生成装置100は、ステレオ画像相互標定の処理(ステップS100)を行い、ステレオ視差取得の処理(ステップS110)を行う。つまり、ステレオ視差計算部40が、入力されたステレオ画像及び撮影条件などに基づき、まず左右画像の相互標定を行い、ステレオ視差を計算する。なお、ステレオ視差計算部40は、ステレオマッチングを行ってステレオ視差を計算する。
【0058】
三次元地物データ生成装置100は、直線取得の処理(ステップS120)を行う。つまり、直線抽出部50が、入力されたステレオ画像の左右画像のそれぞれから直線を抽出する。
【0059】
三次元地物データ生成装置100は、直線類別判定の処理(ステップS130)を行う。つまり、直線類別判定部60が、入力された直線類別の情報に基づき、またステレオ視差計算部40で取得した視差も利用する上で、直線抽出部50により抽出された全ての直線を異なる類別に分ける。このステップも左右画像それぞれに対して実行される。
【0060】
三次元地物データ生成装置100は、無意味直線除去の処理(ステップS140)を行う。つまり、無意味直線除去部70が、無意味直線を類別ごとに除去する。このステップの処理の後に、地物と関係ある直線だけが残る。このステップも左右画像それぞれに対して実行される。
【0061】
三次元地物データ生成装置100は、直線ペア判定の処理(ステップS150)を行う。つまり、直線ペア判定部80が、ステレオ視差計算部40により取得された視差を利用し、左右画像からの地物と関係ある直線の対応関係を決定する。
【0062】
三次元地物データ生成装置100は、ステレオ視差修正の処理(ステップS160)を行う。つまり、ステレオ視差修正部90が、直線ペア判定部80により取得された直線ペアに基づき、最初にステレオ視差計算部40で計算した視差を修正する。
【0063】
三次元地物データ生成装置100は、直線ペアクラスタリングの処理(ステップS170)を行う。つまり、直線ペアクラスタリング部110が、ステレオ視差修正部90により修正された視差に基づき、直線ペア判定部80で取得した直線ペアを各地物への所属関係を決定し、更に視差付けの直線ペア、つまり、三次元直線から各地物の屋上を構成する閉合のポリゴンを抽出する。
【0064】
三次元地物データ生成装置100は、平面抽出の処理(ステップS180)を行う。つまり、平面抽出部120が、直線ペアクラスタリング部110により決定された各地物の屋上を構成する閉合のポリゴンから、実際の状況により、1つの平面、あるいは多数の平面、あるいは屋上の曲面を近似する多数の平面などを抽出する。
【0065】
そして、三次元地物データ生成装置100は、平面組合せの処理(ステップS190)を行う。つまり、平面組合せ部130が、平面抽出部120により抽出された各家屋の屋上の構造を表す平面に基づき、もし複数の平面がある場合に、それらの平面のお互いの幾何関係を判明し、最後に各家屋の三次元モデルを生成する。
【0066】
これらステップS100〜S190の各処理の詳細について、以下、
図8〜
図21のフローチャートを参照してそれぞれ説明する。
【0067】
最初に、
図8を参照して、上述したステップS100におけるステレオ画像相互標定の処理について説明する。
図8に示すように、ステレオ画像データ入力部10は、ステレオ航空画像を入力する(ステップS101)。つまり、ステレオ画像及び撮影条件などのステレオ画像データを入力する。
【0068】
そして、ステレオ視差計算部40は、入力されたこれらステレオ画像及び撮影条件などに基づき、左右画像の相互標定を行う(ステップS102)。つまり、左右画像に対して相互標定を行うことで、対応する部分の捜索範囲を二次元から一次元に制限することができる。そのため、相互標定後において、左右画像の対応する部分は、同一のエピポーラ線上だけに存在することになる。
【0069】
次に、
図9を参照して、上述したステップS110におけるステレオ視差取得の処理について説明する。
ステレオ視差計算部40は、処理規則記憶部31に予め保持されている縮小スケールを入力し(ステップS111)、入力された縮小スケールに基づき左右画像それぞれの縮小ステレオ画像を生成し(ステップS112)、縮小された左右画像でステレオマッチング処理を行い(ステップS113)、そして、縮小ステレオ画像上の視差を元サイズへのマッピング処理を行う(ステップS114)。
【0070】
次に、
図10を参照して、上述したステップS120における直線取得の処理について説明する。
直線抽出部50は、画像上にてエッジを抽出し(ステップS121)、抽出されたエッジに基づき直線抽出を行う(ステップS122)。
【0071】
次に、
図11を参照して、上述したステップS130における直線類別判定の処理について説明する。
直線類別判定部60は、直線類別情報を入力する(ステップS131)。つまり、直線類別記憶部21に予め保持されている直線類別の情報を入力する。
【0072】
直線類別判定部60は、類別により直線類別を判定する(ステップS132)。つまり、入力された直線類別情報に基づき全部の直線を分類する。
【0073】
次に、
図12を参照して、上述したステップS140における無意味直線除去の処理について説明する。
無意味直線除去部70は、当直線が地物と無関係かどうかを判別し(ステップS141)、無関係でないと判別すると(ステップS141;No)、後続するステップS143に進み、一方、無関係と判別した場合(ステップS141;Yes)に、当直線を除去する(ステップS142)。そして、全直線の確認を終えたかどうかを判別し(ステップS143)、全直線の確認を終えていないと判別すると(ステップS143;No)、次の直線へ移行し(ステップS144)、上述したステップS141に処理を戻す。一方、全直線の確認を終えたと判別した場合(ステップS143;Yes)に、この無意味直線除去の処理を終える。
【0074】
次に、
図13〜
図15を参照して、上述したステップS150における直線ペア判定の処理について説明する。
図13に示すように、直線ペア判定部80は、左画像上直線の対応直線抽出を行う(ステップS151)。つまり、左画像上の各直線に対する右画像上の対応直線を抽出する。
この左画像上直線の対応直線抽出では、具体的に、
図14に示すように、処理規則記憶部31に予め保持されているマッチングスコアの閾値を入力し(ステップS151−1)、左画像内の各直線の対応直線ラベルを初期化する(ステップS151−2)。また、視差により注目直線の右画像上に潜在的な対応直線の領域を取得する(ステップS151−3)。つまり、視差情報に基づき現在処理しようとする注目直線が右画像上にある潜在対応直線の可能領域を取得する。そして、その領域内に直線があるかどうかを判別する(ステップS151−4)。
ここで領域内に直線がないと判別すると(ステップS151−4;No)、後述するステップS151−11に進み、一方、領域内に直線があると判別した場合(ステップS151−4;Yes)に、注目直線と当直線のマッチングスコアを計算し(ステップS151−5)、スコアが閾値以上かどうかを判別し(ステップS151−6)、注目直線の中で一番高いスコアであるかどうかを判別する(ステップS151−7)。
ここでスコアが閾値より小さいと判別された場合(ステップS151−6;No)や、注目直線の中で一番高いスコアではないと判別された場合(ステップS151−7;No)に、後述するステップS151−9に進み、一方、スコアが閾値以上であると判別され(ステップS151−6;Yes)、かつ、注目直線の中で一番高いスコアであると判別された場合(ステップS151−7;Yes)に、注目直線の対応直線ラベルに当直線番号を代入する(ステップS151−8)。
【0075】
領域内にて全直線の確認を終えたかどうかを判別し(ステップS151−9)、領域内にて全直線の確認を終えていないと判別すると(ステップS151−9;No)、領域内にて次の直線へ移行し(ステップS151−10)、上述したステップS151−5に処理を戻す。
そして、領域内にて全直線の確認を終えたと判別した場合(ステップS151−9;Yes)に、左画像内にて全直線の確認を終えたかどうかを判別し(ステップS151−11)、左画像内にて全直線の確認を終えていないと判別すると(ステップS151−11;No)、次の直線へ移行し(ステップS151−12)、上述したステップS151−3に処理を戻す。一方、左画像内にて全直線の確認を終えたと判別した場合(ステップS151−11;Yes)に、ここで左画像上直線の対応直線抽出の処理を終える。
【0076】
図13に戻って、直線ペア判定部80は、右画像上直線の対応直線抽出を行う(ステップS152)。
この右画像上直線の対応直線抽出では、上述した
図14と同様の処理を左画像と右画像とを入れ替えて行う。そのため、右画像上直線の対応直線抽出の処理についてのフローチャートは省略する。
【0077】
図13に戻って、直線ペア判定部80は、左右画像上の直線の対応関係を結合する(ステップS153)。
この左右画像上の対応関係結合では、具体的に、
図15に示すように、左画像上に現在処理しようとする注目直線Lfの右画像上の対応直線Rfを取得し(ステップS153−1)、Rfの対応直線がLfかどうかを判別(ステップS153−2)する。
ここでRfの対応直線がLfでないと判別すると(ステップS153−2;No)、後述するステップS153−4に進み、一方、Rfの対応直線がLfであると判別した場合(ステップS153−2;Yes)に、LfとRfのペア関係を確定する(ステップS153−3)。
そして、左画像内にて全直線の確認を終えたかどうかを判別し(ステップS153−4)、全直線の確認を終えていないと判別すると(ステップS153−4;No)、次の直線へ移行し(ステップS153−5)、上述したステップS153−1に処理を戻す。一方、全直線の確認を終えたと判別した場合(ステップS153−4;Yes)に、この左右画像上の対応関係結合を終える。
【0078】
次に、
図16を参照して、上述したステップS160におけるステレオ視差修正の処理について説明する。
ステレオ視差修正部90は、注目エピポーラ線と直線ペアの交差点を取得する(ステップS161)。つまり、現在処理しようとする注目のエピポーラ線と全ての直線ペアの交差点を取得する。
【0079】
ステレオ視差修正部90は、交差点の間の視差を修正する(ステップS162)。つまり、左右画像でのそれぞれの交差点の対応関係に基づき、交差点の間の視差を修正する。
【0080】
そして、ステレオ視差修正部90は、全エピポーラ線の確認を終えたかどうかを判別する(ステップS163)。
全エピポーラ線の確認を終えていないと判別すると(ステップS163;No)、ステレオ視差修正部90は、次のエピポーラ線へ移行し(ステップS164)、上述したステップS161へ処理を戻す。
【0081】
一方、全エピポーラ線の確認を終えたと判別すると(ステップS163;Yes)、ステレオ視差修正部90は、ここでステレオ視差修正の処理を終える。
【0082】
次に、
図17を参照して、上述したステップS170における直線ペアクラスタリングの処理について説明する。
直線ペアクラスタリング部110は、各直線ペアの所属クラスタを初期化する(ステップS171)。
直線ペアクラスタリング部110は、全直線ペアについて互いの連結関係を確定する(ステップS172)。
【0083】
直線ペアクラスタリング部110は、閉合ポリゴンを抽出する(ステップS173)。つまり、確定された直線ペアの連結関係から、更に視差制限、面積制限、コンベックス制限などに基づき、閉合のポリゴンを抽出する。
【0084】
そして、直線ペアクラスタリング部110は、各閉合ポリゴン関連の直線ペアの所属関係をそれぞれ家屋単位で確定する(ステップS174)。
【0085】
次に、
図18〜
図20を参照して、上述したステップS180における各地物単位に行う平面抽出の処理について説明する。
図18に示すように、平面抽出部120は、全ての閉合ポリゴンを内部ポリゴンと輪郭ポリゴンとに分類する(ステップS181)。
この閉合ポリゴンの分類では、具体的に、
図19に示すように、現在処理しようとするポリゴン上の注目辺が屋上内部線かどうかを判別し(ステップS181−1)、屋上内部線であると判別すると(ステップS181−1;Yes)、注目ポリゴンが内部ポリゴンであると決定する(ステップS181−2)。一方、屋上内部線でないと判別した場合(ステップS181−1;No)に、ポリゴン全辺の確認を終えたかどうかを判別し(ステップS181−3)、全辺の確認を終えていないと判別すると(ステップS181−3;No)、次の辺へ移行し(ステップS181−4)、上述したステップS181−1に処理を戻す。一方、全辺の確認を終えたと判別した場合(ステップS181−3;Yes)に、注目ポリゴンが輪郭ポリゴンであると決定する(ステップS181−5)。
【0086】
図18に戻って、平面抽出部120は、内部ポリゴンの平面判定処理を行う(ステップS182)。
この平面判定処理では、具体的に、
図20に示すように、現在処理しようとするポリゴン内部の領域が平面かどうかを判別し(ステップS182−1)、平面であると判別すると(ステップS182−1;Yes)、ポリゴン内の領域を1つの平面で表示する(ステップS182−2)。一方、平面でないと判別した場合(ステップS182−1;No)に、ポリゴン内領域が多数の平面に分割できるかどうかを判別し(ステップS182−3)、分割できないと判別すると(ステップS182−3;No)、ポリゴン内の領域を多数の平面で近似する(ステップS182−4)。一方、分割できると判別した場合(ステップS182−3;Yes)に、ポリゴン内の領域を多数の平面に分割する(ステップS182−5)。
【0087】
図18に戻って、平面抽出部120は、輪郭ポリゴン領域内で内部ポリゴン以外領域の平面判定処理を行う(ステップS183)。
この平面判定処理でも、上述した
図20と同様の処理を行う。
【0088】
最後に、
図21を参照して、上述したステップS190における平面組合せの処理について説明する。
まず、平面組合せ部130は、地物屋上が1つの平面かどうかを判別する(ステップS191)。つまり、現在処理しようとする注目地物の屋上が1つの平面かどうかを判定する。
【0089】
平面組合せ部130は、1つの平面であると判別した場合(ステップS191;Yes)、後述するステップS193に処理を進める。
一方、1つの平面でないと判別すると(ステップS191;No)、平面組合せ部130は、多数平面の隣接関係を判定する(ステップS192)。つまり、屋上を表示する多数の平面のお互いの隣接関係を判定する。
【0090】
平面組合せ部130は、三次元地物モデルを抽出する(ステップS193)。つまり、注目地物の三次元地物モデルを抽出する。
【0091】
平面組合せ部130は、全地物の確認を終えたかどうかを判別する(ステップS194)。
平面組合せ部130は、全地物の確認を終えていないと判別すると(ステップS194;No)、次の地物へ移行し(ステップS195)、上述したステップS191に処理を戻す。
【0092】
一方、全地物の確認を終えたと判別した場合(ステップS194;Yes)に、平面組合せ部130は、ここで平面組合せの処理を終える。
【0093】
このように、
図7(
図8〜
図21)に示す三次元地物データ生成処理によって、分析対象の家屋や建築物がある地域に対し、上空より異なる視点で撮影した複数の画像からのステレオ情報と、家屋や建築物本来の直線特徴情報とに基づき、家屋や建築物を含む地物の三次元モデルを作成することができる。
【0094】
(第2の実施形態)
次に、本発明の第2の実施形態について図面を参照して詳細に説明する。
まず、本発明の第2の実施形態に係る三次元地物データ生成装置100の概要構成は
図22のブロック図で示される。
図22に参照すると、本発明の第2の実施形態は、
図1に示された第1の実施形態におけるステレオ視差計算部40を、マルチスケールステレオ視差計算部140に置き換えた点で、第1の実施形態と異なる。
【0095】
マルチスケールステレオ視差計算部140は、多数のスケールを使い、マルチスケールのステレオ画像を生成し、各スケール上の視差計算を行い、最後にマルチスケール上の視差情報をまとめることで元サイズのステレオ画像上の視差を取得する。
この場合、マルチスケール画像の中に、縮小スケールの大きいステレオ画像で、広い視差範囲も効率的取得でき、一方、縮小スケールの小さいステレオ画像で、画像の細かい特徴が反映されているのでより正確な視差を取得できる。マルチスケールのステレオ画像を利用した場合には、上述の両方のメリットを同時に利用することが可能となる。
実施する際には、マルチスケール分析の階層数、階層毎にスケール変化のステップ数などは、処理効率、処理効果や画像のコンテンツを合わせて設定することが望まれる。
【0096】
第2の実施形態においても、処理規則入力部30の基本機能は、第1の実施形態と同じである。ただ、ステレオ視差計算の際に、処理規則入力部30からマルチスケールステレオ視差計算部140へ入力するパラメータは、第1の実施形態と違い、階層の数と各階層上の縮小スケールである。また、直線ペア判定処理用のパラメータは、第1の実施形態と同一のため、説明は省略する。
【0097】
第2の実施形態に係る三次元地物データ生成装置100をコンピュータに実装する場合における物理的な構成は、基本的に第1の実施形態と同様に、
図6に示すブロック図のような構成であるため、説明は省略する。
【0098】
次に、第2の実施形態に係る三次元地物データ生成装置100の動作について、図面を参照しながら詳細に説明する。
まず、全体処理の流れについて、
図23を参照して説明する。
図23は、第2の実施形態における、三次元地物データ生成処理を示すフローチャートである。
第1の実施形態と同じように、ステレオ画像データ入力部10にステレオ画像データが、また、直線類別入力部20に直線類別情報が、そして、処理規則入力部30に処理用のパラメータが、それぞれ入力されると、
図23の三次元地物データ生成処理を開始する。
【0099】
全体処理の流れにおける各ステップの処理は、マルチスケールステレオ視差取得(ステップS210)以外に、第1の実施形態と同じのため、その説明は省略する。
【0100】
図24を参照して、上述したステップS210におけるマルチスケールステレオ視差取得の処理について説明する。
マルチスケールステレオ視差計算部140は、処理規則記憶部31に予め保持されている画像階層数と各階層上の縮小スケールを入力し(ステップS211)、入力されたパラメータ(画像階層数と縮小スケール)に基づき左右画像それぞれのマルチスケールのステレオ画像を生成し(ステップS212)、各階層上でステレオマッチング処理を行う(ステップS213)。そして、各階層の視差の結合処理を行う(ステップS214)。つまり、各階層上の視差を結合し、元サイズ上のステレオ視差を取得する。
【0101】
(第3の実施形態)
次に、本発明の第3の実施形態について図面を参照して詳細に説明する。
まず、本発明の第3の実施形態に係る三次元地物データ生成装置100の概要構成は
図25のブロック図で示される。
図25に参照すると、本発明の第3の実施形態は、
図1に示された第1の実施形態における直線抽出部50を、マルチスケール直線抽出部150に置き換えた点で、第1の実施形態と異なる。また、第2の実施形態とも、上述した同じ点で異なる。
【0102】
マルチスケール直線抽出部150は、マルチスケールの画像ピラミッドから、各階層の画像に対し直線抽出を行い、最後に各階層からの直線に一定制限を使い、まとめた一つの直線セットの結果を出力する。
マルチスケール画像から抽出した直線は、単一スケールの場合よりも、ノイズ直線の数が少なくなり、実際に意味のある直線、例えば、家屋の輪郭直線などもより連結性よく抽出することができる。
このように、様々な方法があるが、本実施例に使用される手法に制限はない。例えば、Multiscale line detection方法を使用してもよい。
【0103】
第3の実施形態においても、処理規則入力部30の基本機能は、第1の実施形態と同じである。ただ、直線抽出の際に、第1の実施形態と違い、処理規則入力部30から、階層の数と各階層上の縮小スケールのパラメータを入力する。また、直線ペア判定の処理用のパラメータは、第1の実施形態と同一のため、説明は省略する。
【0104】
第3の実施形態に係る三次元地物データ生成装置100をコンピュータに実装する場合における物理的な構成は、基本的に第1の実施形態と同様に、
図6に示すブロック図のような構成であるため、説明は省略する。
【0105】
次に、第3の実施形態に係る三次元地物データ生成装置100の動作について、図面を参照しながら詳細に説明する。
まず、全体処理の流れについて、
図26を参照して説明する。
図26は、第3の実施形態における、三次元地物データ生成処理を示すフローチャートである。
第1の実施形態と同じように、ステレオ画像データ入力部10にステレオ画像データが、また、直線類別入力部20に直線類別情報が、そして、処理規則入力部30に処理用のパラメータが、それぞれ入力されると、
図26の三次元地物データ生成処理を開始する。
【0106】
全体処理の流れにおける各ステップの処理は、マルチスケール直線取得(ステップS320)以外に、第1の実施形態と同じのため、その説明は省略する。
【0107】
図27を参照して、上述したステップS320におけるマルチスケール直線取得の処理について説明する。
マルチスケール直線抽出部150は、処理規則記憶部31に予め保持されている画像階層数と縮小スケールを入力し(ステップS321)、入力されたパラメータ(画像階層数と縮小スケール)に基づき左右画像それぞれのマルチスケール画像を生成し(ステップS322)、各階層上でエッジを抽出し(ステップS323)、各階層上で直線を抽出する(ステップS324)。そして、各階層直線の結合処理を行う(ステップS325)。つまり、各階層上に抽出された直線を結合し、最後に1つの直線セットを取得する。
【0108】
(第4の実施形態)
次に、本発明の第4の実施形態について図面を参照して詳細に説明する。
まず、本発明の第4の実施形態に係る三次元地物データ生成装置100の概要構成は
図28のブロック図で示される。
図28に参照すると、本発明の第4の実施形態は、
図1に示された第1の実施形態における無意味直線除去部70を地図関連無意味直線除去部170に置き換えた点で、また、地図データ入力部160を追加した点で、第1の実施形態と異なる。また、第2の実施形態と、第3の実施形態とも、上述した同じ点で異なる。
【0109】
地図データ入力部160は、地図データを入力する機能を有し、ノイズ直線等を削除する際に有効領域を定義するための補助データとしての地図データを入力する。
地図データは、対象領域内の地理情報、例えば、家屋、道路、河、緑地、樹木などの地物の位置、範囲、形などの情報を保持しているデータである。
本発明で使用する地図データは、一定精度の経緯度情報に基づき、基本の地形と地物の地理情報を反映する地図データであればよく、例えば、市販の地図、基盤地図、地形図などが利用できる。
【0110】
具体的に基盤地図の場合では、一例として、
図29に示すような地図データが利用できる。この
図29に示される地図データでは、家屋が集中している住宅地、道路、鉄道、河川、緑地などの地形が表されている。なお、この
図29では、出願図面の規定により、モノクロにて示されているが、実際に使用される地図データはカラーで示されており、家屋、池、緑地など、それぞれの地形や地物が異なる色で色分けされている。
本実施例では、この
図29のような地図データ(地図のデジタルデータ)を使用する場合を一例として説明する。
なお、本発明に使用する地図データは、建物、道路、河川などの輪郭線上に各点の座標の経緯度情報を有するベクター地図であるが、一定縮尺のラスター地図であってもよい。
また、各地形や地物に、例えば町名、河川名などの実際の場所に示す記号情報が付与されていてもよい。記号情報が付与されている場合、その記号情報と関連する地形や地物が処理対象かどうかを判別するのに役立てることができる。
【0111】
地図関連無意味直線除去部170は、地図の情報に基づいて無意味直線を除去する方法を利用する。処理対象となるステレオ航空写真内に、家屋、建築物以外にも様々な地形、地物が存在する可能性がある。家屋、建築物がある有効領域に対し、家屋、建築物と無関係な領域は本発明の処理にとって無効領域となる。もしその無効領域の範囲がはっきりと有効領域の範囲と区別することができる場合には、無効領域を抽出することで、無効領域内のすべての直線は無意味直線として除去され、これからの処理がより効率的に実行されることができるようになる。
【0112】
河川、池、海などの水域は、家屋、建築物と関連しないし、通常ほかの地物と独立している領域を占めることで、三次元モデル生成処理の無効領域として抽出することができる。また、市街地にある一定面積の緑地、例えば、公園、林地、たんぽ、畑なども無効領域として三次元モデル生成処理から除外することが可能である。
ほかに家屋、建築物と無関係な地形、地物、例えば、道路、鉄道、道路側の樹木などが、多くの場合家屋、建築物と混在するので、簡単に地図情報だけで家屋、建築物がある領域から分割することができない。前述のような地形、地物に対し、領域抽出と領域除外する処理はしない。
水域、緑地などのような、家屋、建築物とはっきり分割できる領域に対し、人手でその領域の輪郭線を書くこともできるが、それよりも効率的に自動で抽出することを処理対象の航空写真と地図データの組合せで実現する。地図データから水域、緑地の領域を抽出してから、地図データと航空写真の重なりで抽出した領域を航空写真に反映することができ、航空写真上に除外領域を自動的に判定する。
【0113】
空中撮影時航空写真と一緒に取得した情報の中に、撮影中心点の座標が航空写真の実世界の位置を示し、撮影時飛行機の姿勢を示す角度が航空写真の実世界の方位を決め、サイズと解像度が航空写真の実世界の範囲を決める。
例えば、ステレオ航空写真に対し、撮影点の中心点座標と撮影時飛行機の姿勢の角度に基づき空中三角測量の成果を取得した上で、ステレオ画像の相互標定を行う。その後、地図の幾何変換をして、地図と画像上同じ位置の対応関係を決め、地図を画像と重なることができる。
画像と対応することを実現するため、地図の幾何変換を行う。基本的に画像の撮影情報と画像内のコンテンツに基づいて、例えば、アフィン変換で地図を変換することにより同じ地域の画像との位置対応関係を取得する。
【0114】
地図上において、通常違う地形と地物を異なる色で表示している。上述した
図29の地図は、出願図面の規定により、モノクロにて表示されているが、実際のカラーの地図上では、以下のように表示されている。つまり、建築物はグレーで、普通の道路は白で、主要道路は黄色で、水域は青色で、緑地は緑でそれぞれ表示されている。このような色情報に基づき、違う地形を区別することができ、更に違う地形の各領域を判明する。事前に地図と画像の位置対応を行ったので、抽出した水域と緑地の領域の輪郭線を直接に画像上に反映することができる。
ベクター地図の場合には、普通各領域はポリゴンで表示され、色情報はポリゴンの1つの属性として保存されている。そこで、簡単に色情報で領域の表示している地形を判別し、水域と緑地の領域を抽出する。ただし、領域の輪郭はベクターで直接に航空写真上に使えないので、航空写真上の同一位置のピクセルを輪郭線ピクセルとしてまず変換する必要がある。一方、ラスター地図画像の場合には、色情報で画像分割を行い、水域と緑地の領域のピクセル単位の輪郭線を抽出し、その輪郭線を航空写真に反映する。
【0115】
第4の実施形態に係る三次元地物データ生成装置100をコンピュータに実装する場合における物理的な構成は、基本的に第1の実施形態と同様に、
図6に示すブロック図のような構成である。ただ、以下の部分だけについて、第1の実施形態と異なる。
入出力部202を介して、入力できるデータは、処理しようとする画像データ、処理パラメータ、処理方法種別、直線類別情報など以外に、地図データも含めている。
表示部203では、表示できるデータは、入力の画像データや三次元地物データ生成装置100の処理結果など以外に、地図データも含めている。
操作部204を介して、入力できるデータは、第1の実施形態で説明したステレオ画像データ、処理パラメータ、及び、直線類別情報など以外に、地図データも含めている。
【0116】
次に、第4の実施形態に係る三次元地物データ生成装置100の動作について、図面を参照しながら詳細に説明する。
まず、全体処理の流れについて、
図30を参照して説明する。
図30は、第4の実施形態における、三次元地物データ生成処理を示すフローチャートである。
第1の実施形態と同じように、ステレオ画像データ入力部10にステレオ画像データが、また、直線類別入力部20に直線類別情報が、地図データ入力部160に地図データが、そして、処理規則入力部30に処理用のパラメータが、それぞれ入力されると、
図30の三次元地物データ生成処理を開始する。
【0117】
全体処理の流れにおける各ステップの処理は、地図関連無意味直線除去(ステップS440)以外に、第1の実施形態と同じのため、その説明は省略する。
【0118】
図31を参照して、上述したステップS440における地図関連無意味直線除去の処理について説明する。
地図関連無意味直線除去部170は、地図データ入力部160を介して地図データを入力し(ステップS441)、地図上の水域と緑地(家屋、建築物の地物と無関係な領域)を抽出し(ステップS442)、画像を参照するため、地図を幾何変換し(ステップS443)、地図上に抽出された領域を画像上に反映させる(ステップS444)。そして、抽出領域内の直線を除去する(ステップS445)。つまり、画像上に反映された水域と緑地の領域における全ての直線を除去する。
【0119】
これら第2〜第4の実施形態で説明した方法を採用した場合でも、三次元地物データ生成装置100は、分析対象の家屋や建築物がある地域に対し、上空より異なる視点で撮影した複数の画像からのステレオ情報と、家屋や建築物本来の直線特徴情報とに基づき、家屋や建築物を含む地物の三次元モデルを作成することができる。
つまり、第2の実施形態に係る三次元地物データ生成装置100は、ステレオ視差計算の際に、マルチスケール上に計算した視差を利用し、最後に元サイズのステレオ画像上の視差を取得するマルチスケールステレオ視差計算手段を使い、単一のスケール上の視差計算より正確な視差を取得することができる。
また、第3の実施形態に係る三次元地物データ生成装置100は、直線抽出の際に、マルチスケール上に直線を抽出し、最後に各階層からの直線をまとめた一つの直線セットを出力するマルチスケール直線抽出手段を使い、単一のスケール上の直線抽出より、ノイズ直線の数が少なくなり、抽出してきた直線の連結性もよくなることができる。
また、第4の実施形態に係る三次元地物データ生成装置100は、無意味直線を除去する際に、地図情報を利用することで、家屋、建築物と無関係な領域を無効領域として判明し、無効領域内のすべての直線は無意味直線として除去され、より効率的に無意味直線除去を実行することができる。
【0120】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されているが、以下には限られない。
【0121】
(付記1)
ステレオ画像から家屋、及び建築物を含む地物の三次元データを生成する三次元地物データ生成装置であって、
地形と地物の高さ情報に関連するステレオ視差の予測値を計算するステレオ視差計算手段と、
地物の屋上の内部構造を示す特徴線、地物の外側の形状を表す輪郭線、及び、非地物上の特徴線を含んだ画像上の直線を抽出する直線抽出手段と、
前記直線抽出手段で抽出した直線を実世界における意味を合わせ地物屋上内部の直線、地物外部輪郭線、及び、影領域輪郭線を含む直線に分類する直線類別判定手段と、
影、及びノイズを含む影響で発生した実世界に存在しない直線を処理対象から除外する無意味直線除去手段と、
前記ステレオ視差計算手段からの視差情報、及び、各直線の周辺の色とテクスチャの分布を利用して、一方の画像内の直線と他方の画像内の直線との類別を含めた対応関係が成立かどうかを判定する直線ペア判定手段と、
前記直線ペア判定手段で判定した対応関係がある直線ペアに対し、当該対応関係に基づいてより正確な視差値の計算を行い、前記ステレオ視差計算手段で取得した視差の予測値を修正するステレオ視差修正手段と、
前記直線ペア判定手段で判定した対応関係がある直線ペアの中に、家屋、及び建築物を含む地物に関連するペアだけを選択し、各直線ペアの視差情報、及び、複数の直線ペアの幾何関係を含む制限を利用し、同一の地物に属している直線ペアを決定する直線ペアクラスタリング手段と、
前記直線ペアクラスタリング手段で決定した各地物に属している直線ペアにおける幾何関係、及び視差の情報に基づいて、地物を構成する基本平面を抽出する平面抽出手段と、
前記平面抽出手段で抽出した各地物の平面における三次元空間上の位置関係を決め、各地物の全体を表す三次元モデルを生成する平面組合せ手段と、
を備えることを特徴とする三次元地物データ生成装置。
【0122】
(付記2)
前記ステレオ視差計算手段は、ステレオ画像から画像内にある地形と全ての地物に関して、相対的な高さの視差を予測する、
ことを特徴とする付記1に記載の三次元地物データ生成装置。
【0123】
(付記3)
前記ステレオ視差計算手段は、ステレオ画像を処理対象として、目的に応じて一定の縮小スケールで縮小ステレオ画像を取得し、縮小したステレオ画像で視差を計算し、前記縮小スケールに基づき前記視差をオリジナルサイズへマッピングすることで全画像内の視差の予測値を取得する、
ことを特徴とする付記1又は2に記載の三次元地物データ生成装置。
【0124】
(付記4)
前記ステレオ視差計算手段は、ステレオ画像を処理対象として、マルチスケールの縮小ステレオ画像を生成し、各スケール上の視差を計算し、マルチスケールの視差情報をまとめることでオリジナルサイズ上の視差の予測値を取得する、
ことを特徴とする付記1乃至3の何れか1つに記載の三次元地物データ生成装置。
【0125】
(付記5)
前記直線抽出手段は、ステレオ画像の一方の画像から、所定の画像処理方法で抽出したエッジに基づいて、直線を抽出する、
ことを特徴とする付記1に記載の三次元地物データ生成装置。
【0126】
(付記6)
前記直線抽出手段は、ステレオ画像の一方の画像を処理対象として、マルチスケールで取得した縮小画像から画像ピラミッドを構築し、当該画像ピラミッド上の各階層の画像に対し直線抽出を行い、当該抽出した直線を一定の制限でまとめ1つの直線セットを出力する、
ことを特徴とする付記1又は5に記載の三次元地物データ生成装置。
【0127】
(付記7)
前記直線類別判定手段は、前記ステレオ視差計算手段で取得した視差と入力したステレオ画像とに基づいて、前記直線抽出手段で抽出した直線を、地物に関連する直線、及び、地物と無関係な直線に分類する、
ことを特徴とする付記1乃至6の何れか1つに記載の三次元地物データ生成装置。
【0128】
(付記8)
前記直線類別判定手段は、前記ステレオ視差計算手段で取得した視差と入力したステレオ画像とに基づいて、前記直線抽出手段で抽出した直線の中の地物と関連する直線を、更に屋上の構造を含む異なる特徴から、地物屋上内部の直線、及び、地物外部輪郭線に分類する、
ことを特徴とする付記1乃至7の何れか1つに記載の三次元地物データ生成装置。
【0129】
(付記9)
前記直線類別判定手段は、前記ステレオ視差計算手段で取得した視差と入力したステレオ画像とに基づいて、前記直線抽出手段で抽出した直線の中の地物と無関係な直線を、更に影領域の輪郭線、道路線、及び、他の直線に分類する、
ことを特徴とする付記1乃至8の何れか1つに記載の三次元地物データ生成装置。
【0130】
(付記10)
前記直線類別判定手段は、前記ステレオ視差計算手段で取得した視差と入力したステレオ画像とに基づいて、前記直線抽出手段で抽出した直線を、利用者特有の応用目的に応じて分類する、
ことを特徴とする付記1乃至9の何れか1つに記載の三次元地物データ生成装置。
【0131】
(付記11)
前記直線類別判定手段は、前記ステレオ視差計算手段で取得した視差と入力したステレオ画像とに基づいて、前記直線抽出手段で抽出した直線を、更に多数の分類基準を組合せることで生成した分類ルールに従って分類する、
ことを特徴とする付記1乃至10の何れか1つに記載の三次元地物データ生成装置。
【0132】
(付記12)
前記無意味直線除去手段は、前記直線抽出手段で実世界にそれぞれ意味がある直線と一緒に抽出した、画像のノイズ、及び影領域の影響で発生した直線を、処理対象から除外する、
ことを特徴とする付記1、5又は6に記載の三次元地物データ生成装置。
【0133】
(付記13)
前記無意味直線除去手段は、ステレオ画像上に表される地域を含める地図情報を外部から入力し、当該地図とステレオ画像との重なりの調整でおおよその同一位置の対応関係を決め、地図情報で無効領域を確定し、当該無効領域内のすべての直線をノイズ直線として削除する、
ことを特徴とする付記1、5、6又は12に記載の三次元地物データ生成装置。
【0134】
(付記14)
前記無意味直線除去手段は、前記直線抽出手段で抽出した直線の中から、使用者特有の応用目的に応じて定義したノイズ直線を削除する、
ことを特徴とする付記1、5、6、12又は13に記載の三次元地物データ生成装置。
【0135】
(付記15)
前記直線ペア判定手段は、前記直線抽出手段で抽出した直線を前記直線類別判定手段で分類した類別に基づいて、ステレオ画像の一方の画像内の直線から他方の画像内に対応する直線を捜索する際に、処理対象の前記直線と同じ類別の直線に対してマッチング度を含む基準で対応しているかどうかを判定する、
ことを特徴とする付記1、5、6、7、8、9、10又は11に記載の三次元地物データ生成装置。
【0136】
(付記16)
前記直線ペア判定手段は、ステレオ画像の一方の画像から前記直線抽出手段で抽出した直線に対し、他方の画像内において使用者により一部又は全部が対応付けられた直線を決定する、
ことを特徴とする付記1、5、6、7、8、9、10、11又は15に記載の三次元地物データ生成装置。
【0137】
(付記17)
前記ステレオ視差修正手段は、前記直線ペア判定手段で取得した直線ペアに基づいて、直線の対応関係を左右画像上同一のエピポーラ線上その他の点のマッチング制限条件としたより正確な視差値を取得し、前記ステレオ視差計算手段で取得した視差予測値を修正する、
ことを特徴とする付記1、2、3、4、15又は16に記載の三次元地物データ生成装置。
【0138】
(付記18)
前記ステレオ視差修正手段は、前記直線ペア判定手段で取得した直線ペアの対応関係を同一エピポーラ線上その他の点のマッチング制限条件として利用し、一定高さの地物の近傍に発生したオクルージョン領域の範囲をより正確に決定することで、前記ステレオ視差計算手段から取得した視差予測値を修正する、
ことを特徴とする付記1、2、3、4、15、16又は17に記載の三次元地物データ生成装置。
【0139】
(付記19)
前記直線ペアクラスタリング手段は、前記直線ペア判定手段で決定した直線ペアの中における地物と関連する直線ペアを選択し、前記ステレオ視差修正手段で取得した視差と複数の直線ペアの幾何関係とを利用し、各地物にそれぞれ属している直線ペアを決定する、
ことを特徴とする付記1、15、16、17又は18に記載の三次元地物データ生成装置。
【0140】
(付記20)
前記直線ペアクラスタリング手段は、前記直線ペア判定手段で決定した直線ペアに対し、使用者特有の応用目的に応じ同一地物に属する直線ペアが満たさなければならない条件に基づいて、当該応用目的に合わせた直線ペアの所属関係を決定する、
ことを特徴とする付記1、15、16、17、18又は19に記載の三次元地物データ生成装置。
【0141】
(付記21)
前記平面抽出手段は、前記直線ペア判定手段で取得した各地物それぞれに属する直線ペア群から、前記ステレオ視差修正手段で取得した視差情報、各直線ペアに関連する視差、及び、直線ペアの近傍領域内の視差分布に基づいて、平面拘束の制限で平面を抽出する、
ことを特徴とする付記1、15、16、17、18、19又は20に記載の三次元地物データ生成装置。
【0142】
(付記22)
前記平面抽出手段は、前記直線ペア判定手段で取得した各地物それぞれに属する直線ペア群に対し、前記ステレオ視差修正手段で取得した視差情報と、前記直線ペア群の関連領域内の色情報とに基づいて、平面拘束の制限と平面上の色分布又はテクスチャ分布のスムーズ性の条件に従って平面を抽出する、
ことを特徴とする付記1、15、16、17、18、19、20又は21に記載の三次元地物データ生成装置。
【0143】
(付記23)
前記平面組合せ手段は、前記平面抽出手段で決定した地物の屋上を構成する各平面から、屋上の三次元構造を生成し、前記ステレオ視差修正手段で取得した視差情報を利用し、該地物の三次元モデルを生成する、
ことを特徴とする付記1、17、18、21又は22に記載の三次元地物データ生成装置。
【0144】
(付記24)
ステレオ画像から家屋、及び建築物を含む地物の三次元データを生成する三次元地物データ生成方法であって、
地形と地物の高さ情報に関連するステレオ視差の予測値を計算するステレオ視差計算ステップと、
地物の屋上の内部構造を示す特徴線、地物の外側の形状を表す輪郭線、及び、非地物上の特徴線を含んだ画像上の直線を抽出する直線抽出ステップと、
前記直線抽出ステップで抽出した直線を実世界における意味を合わせ地物屋上内部の直線、地物外部輪郭線、及び、影領域輪郭線を含む直線に分類する直線類別判定ステップと、
影、及びノイズを含む影響で発生した実世界に存在しない直線を処理対象から除外する無意味直線除去ステップと、
前記ステレオ視差計算ステップからの視差情報、及び、各直線の周辺の色とテクスチャの分布を利用して、一方の画像内の直線と他方の画像内の直線との類別を含めた対応関係が成立かどうかを判定する直線ペア判定ステップと、
前記直線ペア判定ステップで判定した対応関係がある直線ペアに対し、当該対応関係に基づいてより正確な視差値の計算を行い、前記ステレオ視差計算ステップで取得した視差の予測値を修正するステレオ視差修正ステップと、
前記直線ペア判定ステップで判定した対応関係がある直線ペアの中に、家屋、及び建築物を含む地物に関連するペアだけを選択し、各直線ペアの視差情報、及び、複数の直線ペアの幾何関係を含む制限を利用し、同一の地物に属している直線ペアを決定する直線ペアクラスタリングステップと、
前記直線ペアクラスタリングステップで決定した各地物に属している直線ペアにおける幾何関係、及び視差の情報に基づいて、地物を構成する基本平面を抽出する平面抽出ステップと、
前記平面抽出ステップで抽出した各地物の平面における三次元空間上の位置関係を決め、各地物の全体を表す三次元モデルを生成する平面組合せステップと、
を備えることを特徴とする三次元地物データ生成方法。
【0145】
(付記25)
コンピュータを、
地形と地物の高さ情報に関連するステレオ視差の予測値を計算するステレオ視差計算手段、
地物の屋上の内部構造を示す特徴線、地物の外側の形状を表す輪郭線、及び、非地物上の特徴線を含んだ画像上の直線を抽出する直線抽出手段、
前記直線抽出手段で抽出した直線を実世界における意味を合わせ地物屋上内部の直線、地物外部輪郭線、及び、影領域輪郭線を含む直線に分類する直線類別判定手段、
影、及びノイズを含む影響で発生した実世界に存在しない直線を処理対象から除外する無意味直線除去手段、
前記ステレオ視差計算手段からの視差情報、及び、各直線の周辺の色とテクスチャの分布を利用して、一方の画像内の直線と他方の画像内の直線との種別を含めた対応関係が成立かどうかを判定する直線ペア判定手段、
前記直線ペア判定手段で判定した対応関係がある直線ペアに対し、当該対応関係に基づいてより正確な視差値の計算を行い、前記ステレオ視差計算手段で取得した視差の予測値を修正するステレオ視差修正手段、
前記直線ペア判定手段で判定した対応関係がある直線ペアの中に、家屋、及び建築物を含む地物に関連するペアだけを選択し、各直線ペアの視差情報、及び、複数の直線ペアの幾何関係を含む制限を利用し、同一の地物に属している直線ペアを決定する直線ペアクラスタリング手段、
前記直線ペアクラスタリング手段で決定した各地物に属している直線ペアにおける幾何関係、及び視差の情報に基づいて、地物を構成する基本平面を抽出する平面抽出手段、
前記平面抽出手段で抽出した各地物の平面における三次元空間上の位置関係を決め、各地物の全体を表す三次元モデルを生成する平面組合せ手段、
として機能させることを特徴とするプログラム。
【0146】
なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、請求の範囲によって示される。そして、請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
【0147】
本発明は、2011年6月29日に出願された日本国特許出願2011−143835号に基づく。本明細書中に日本国特許出願2011−143835号の明細書、特許請求の範囲、図面全体を参照として取り込むものとする。