説明

ステレオマッチング処理装置、ステレオマッチング処理方法、及び、プログラム

【課題】ステレオ画像から、同一の点を撮像している対応点を求めて、視差を算出する際において、処理の高速化を図り得る、ステレオマッチング処理装置、ステレオマッチング処理方法、及び、プログラムを提供する。
【解決手段】ステレオマッチング処理装置100は、ステレオ画像の互いに対応点の組を特定し、組毎に視差を算出する視差算出部30と、ステレオ画像を分割する画像分割部40と、分割部分毎に、当該部分中に存在する対応点の組を特定し、これについて算出された視差の値に基づいて、当該部分の視差の最大値と最小値とを特定して視差探索範囲を設定する視差探索範囲設定部50と、分割部分毎に、対応点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、その値が当該部分の視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する視差算出部60と、を備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ステレオ画像について、同一対象を撮像している各画像中の対応点を求めるステレオマッチング処理装置、ステレオマッチング処理方法、及び、これらを実現するためのプログラムに関する。
【背景技術】
【0002】
従来から、3次元データの自動生成方法として、人工衛星又は航空機等から得られる画像を基に、ステレオマッチング処理を行うことによって、地形を示す3次元データ[DSM(Digital Surface Model)データ]を生成する方法が広く知られている。また、この方法において、対応の取れない点が存在する場合は、オペレータを介在させて、修正が行われる。
【0003】
ここで、ステレオマッチング処理とは、異なる視点から撮影した2枚の画像、いわゆるステレオ画像から、同一の点を撮像している各画像中の対応点を求め、その視差を用いて、三角測量の原理によって対象までの奥行き及び対象の形状を求める処理のことである。
【0004】
このステレオマッチング処理については、既に様々な手法が提案されている(例えば、特許文献1参照)。具体的には、特許文献1に開示された手法では、まず、異なる視点から撮影することにより得られた1組2枚の立体写真を対象として、一方の写真中の各点が特定される。次に、他方の写真中から、一方の写真で特定された各点と同じ地表点を表す点が特定される。そして、一方の写真中の各点と、他方の写真中の対応する各点との視差に基づいて、これらの点の高さ情報が算出され、算出された高さ情報によって3次元地形データが生成される。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2004−046777号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで、特許文献1に開示されたステレオ処理では、重複する部分を含む2枚の画像間で互いに対応する点(対応点)が探索され、そして、対応点に基づいて、三角測量の原理によって対応点の奥行きが求められている。このため、対応点の探索が重要であり、対応点を探索する処理に、多くの計算時間がかかってしまう場合がある。
【0007】
特に、画像として航空写真を用いる場合、一枚の航空写真は、縦方向で10000画素、横方向で10000画素程度の画像であり、2枚の航空写真間の対応点の探索には、多大な計算時間を要することがある。
【0008】
一方、対応点の探索にかかる計算時間を短縮化する方法として、次の方法が考えられる。まず、2つの撮影位置を結ぶ線と対応点との距離が一定の範囲に収まる場合には、対応する視差量も一定の範囲に収まることになる。よって、最初に、視差量に予め範囲(以下「探索範囲」と表記する。)を設定し、設定した探索範囲よりも大きな分割サイズで画像を分割する。次に、分割後の画像毎のステレオ処理を並列に実行する。このような方法によれば、処理時間を短縮することができると考えられる。
【0009】
しかしながら、画像中に写っている対象の奥行き(航空写真の場合は、地物の高さ)を、ステレオ処理を行う前に、予め知ることは困難であるため、写っている対象物全ての視差を確定することも困難である。従って、写っている対象物全てにおいて視差量よりも分割サイズが大きくなるように画像が分割されているかどうかを確認する必要があり、全ての分割画像を対象として、対応点のマッチングを試みる必要がある。
【0010】
そして、マッチングの結果、マッチング対象となった2つの分割画像において、それらのある対応点についての視差量が探索範囲以上であった場合は、画像の分割設定をやり直して、再度マッチングを行なう必要がある。逆に、視差量が探索範囲内であった場合は、無駄なマッチング処理が行われたことになる。このように、単に画像分割するだけでは、処理時間の短縮化を図ることは困難であると考えられる。
【0011】
本発明の目的の一例は、上記問題を解消し、ステレオ画像から、同一の点を撮像している対応点を求めて、視差を算出する際において、処理の高速化を図り得る、ステレオマッチング処理装置、ステレオマッチング処理方法、及び、プログラムを提供することにある。
【課題を解決するための手段】
【0012】
上記目的を達成するため、本発明の一側面におけるステレオマッチング処理装置は、異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうための装置であって、
前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、第1の視差算出部と、
前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、画像分割部と、
互いに対応する2つの分割された部分毎に、当該部分中に存在する前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、視差探索範囲設定部と、
前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、第2の視差算出部と、
を備えている、ことを特徴とする。
【0013】
また、上記目的を達成するため、本発明の一側面におけるステレオマッチング処理方法は、異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうための方法であって、
(a)前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、ステップと、
(b)前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、ステップと、
(c)互いに対応する2つの分割された部分毎に、当該部分中に存在する前記(b)のステップで特定された前記対応点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、ステップと、
(d)前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、ステップと、
を有する、ことを特徴とする。
【0014】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、コンピュータによって、異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうためのプログラムであって、
前記コンピュータに、
(a)前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、ステップと、
(b)前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、ステップと、
(c)互いに対応する2つの分割された部分毎に、当該部分中に存在する前記(b)のステップで特定された前記対応点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、ステップと、
(d)前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、ステップと、
を実行させることを特徴とする。
【発明の効果】
【0015】
以上のように、本発明によれば、ステレオ画像から、同一の点を撮像している対応点を求めて、視差を算出する際において、処理の高速化を図ることができる。
【図面の簡単な説明】
【0016】
【図1】図1は、本発明の実施の形態におけるステレオマッチング処理装置の構成を示すブロック図である。
【図2】図2は、本発明の実施の形態におけるステレオマッチング処理装置の動作を示すフロー図である。
【図3】図3は、本発明の実施の形態における行なわれる縮小画像の作成処理を説明する図である。
【図4】図4は、本発明の実施の形態におけるステレオマッチング処理で行なわれる画像の分割処理を説明する図である。
【図5】図5は、本発明の実施の形態におけるステレオマッチング処理装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【0017】
(実施の形態)
以下、本発明の実施の形態における、ステレオマッチング処理装置、ステレオマッチング処理方法、及びプログラムについて、図1〜図5を参照しながら説明する。
【0018】
[装置構成]
最初に、本発明の実施の形態におけるステレオ処理装置の構成について図1を用いて説明する。図1は、本発明の実施の形態におけるステレオマッチング処理装置の構成を示すブロック図である。
【0019】
図1に示す、本実施の形態におけるステレオマッチング処理装置100は、異なる角度から同一対象を撮影して得られた2つの画像(以下「ステレオ画像」と表記する。)を対象に、ステレオマッチング処理を実施する装置である。
【0020】
図1に示すように、ステレオマッチング処理装置100は、第1の視差算出部30と、画像分割部40と、視差探索範囲設定部50と、第2の視差算出部60とを備えている。このうち、第1の視差算出部30は、ステレオ画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する。
【0021】
画像分割部40は、ステレオ画像を、それぞれの分割された部分が互いに対応するように分割する。視差探索範囲設定部50は、まず、互いに対応する2つの分割された部分(以下「ペア部分」と表記する。)毎に、当該ペア部分中に存在する対応点の組を特定する。次に、視差探索範囲設定部50は、特定した対応点の組について先に算出されている視差の値に基づいて、当該ペア部分における視差の最大値と最小値とを特定して、当該ペア部分での視差探索範囲を設定する。
【0022】
第2の視差算出部60は、まず、ペア部分毎に、当該ペア部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出する。そして、第2の視差算出部60は、算出した値が当該ペア部分に設定された視差探索範囲に収まる場合に、算出した視差を、当該ペア部分における、新たに特定した当該組の視差として出力する。
【0023】
このように、本実施の形態では、分割画像において、視差の最小値と最大値とが予め求められるので、分割画像間の視差の算出は、この求められた範囲内で行なえば良い。このため、ステレオ画像から、同一の点を撮像している対応点を求めて、視差を算出する際において、無駄な処理を行なう必要がなく、処理の高速化が図られる。
【0024】
ここで、本実施の形態におけるステレオマッチング処理装置100の構成について、更に具体的に説明する。本実施の形態においては、ステレオマッチング処理装置100は、後述するようにコンピュータによって実現できる。また、ステレオマッチング処理装置100は、後述するコンピュータの他に、アプリケーションプログラムを実行可能な機器、例えば、携帯電話、スマートフォン、タブレット型の情報機器、PDAによっても実現可能である。
【0025】
また、図1に示すように、ステレオマッチング処理100は、第1の視差算出部30、画像分割部40、視差探索範囲設定部50、及び第2の視差算出部60に加えて、画像受付部10と、縮小画像作成部20と、画像合成部70と、画像出力部80とを備えている。
【0026】
画像受付部10は、ユーザによる、キーボード又はマウス等(図1において図示せず)を利用した操作に応じて、ステレオマッチング処理に使用される複数のステレオ画像(典型的には、ペアの画像データ)の入力を受け付ける。
【0027】
「ステレオ画像」は、2台のカメラを用いて、異なる位置からほぼ同一の領域を撮影することによって得られた画像である。ここで、ステレオ画像のうち、左側に配置されたカメラで撮影された画像を、以下「左画像」と表記し、右側に配置されたカメラで撮影された画像を、以下、「右画像」と表記する。また、本実施の形態では、ステレオ画像としては、例えば、デジタル画像に変換された一対の航空写真、一対の衛星写真が挙げられる。また、ステレオ画像の画像データには、画像データそのものだけでなく、画像を撮影した位置、撮影した方向、画角などが含まれる。
【0028】
また、画像受付部10は、撮影時のカメラパラメータを標定する標定処理、及び左画像と右画像とを必要に応じて共通平行面に再投影する平行化処理等を実行することもできる。ここで、「標定処理」とは、評価の対象について所定の値を求める処理をいう。更に、「平行化処理」とは、左画像及び右画像上のエピポールを結ぶエピポーラ線が複数の走査線の一つに一致するように、左画像と右画像とを共通平行面に再投影する処理をいう。
【0029】
そして、画像受付部10は、受付けたステレオ画像の画像データを、縮小画像作成部20と、画像分割部40とに入力する。なお、評定処理及び平行化処理は、別の機能ブロックによって実行されても良い。
【0030】
縮小画像作成部20は、画像受付部10から渡された画像データに基づいて、それが表すステレオ画像それぞれの縮小画像を作成する。縮小画像作成部20は、後述する図3に示すように、例えば、ステレオ画像の左画像と右画像とを、任意の倍率で縮小することにより、左画像の縮小画像と右画像の縮小画像とを生成する。
【0031】
本実施の形態では、このように、ステレオ画像が縮小され、縮小画像について後述の処理が行なわれる。このため、本実施の形態によれば、縮小画像を作成しない場合と比べて、ステレオマッチング処理のいっそうの高速化が図られる。
【0032】
また、本実施の形態では、第1の視差算出部30は、ステレオ画像の縮小画像(以下「ステレオ縮小画像」と表記する。)に基づいて、上述した視差の算出を実行する。以下、第1の視差算出部30は、「縮小画像視差算出部30」と表記する。
【0033】
具体的には、まず、縮小画像視差算出部30は、縮小画像作成部20で生成された縮小画像同士での同じ地点を写す画像内の位置を検出する。即ち、縮小画像間の同じ地点に対応する対応点(特徴点)の組を検出する。同じ地点に対応する対応点の組は、通常2つの画像の中で、対応する付近の小領域の画像相関をとり、相関係数が最大となる位置から検出できる。
【0034】
また、縮小画像視差算出部30は、対象となるステレオ縮小画像において、左画像及び右画像(平行化済画像対)に対して、ステレオマッチング処理、具体的にはDP(Dynamic Programming)マッチング処理を実行し、左画像と右画像との間での位置ずれ(視差)を計測し、視差データを生成する。
【0035】
そして、縮小画像視差算出部30によってステレオマッチング処理が実行されると、その結果、ステレオ縮小画像の画像データが表す各画素に対応して、左右の画像間での視差が得られる。なお、ここでは、視差算出のための画像の切り出し処理は、地面を基準に行なわれており、地面について視差はゼロであるとする。よって、ここで得られる視差は、建物等といった地面からの突起に対応する視差であると考えることができる。
【0036】
また、ステレオマッチング処理の具体例としては、一般的な特徴量を求めて対応付ける処理、左右画像の相関を求める処理等、様々なものが存在するが、本実施の形態では、具体的なステレオマッチング処理は特に限定されるものではない。ステレオマッチング処理の具体例としては、例えば、特公平8−16930号公報に開示された処理が挙げられる。
【0037】
画像分割部40は、本実施の形態では、画像受付部10から渡されたステレオ画像を、複数のブロック画像に分割する(後述の図4参照)。また、ブロック画像のサイズは、予め設定されても良いし、画像分割部40によって、縮小画像視差算出部30で算出された視差値に基づいて、計算されても良い。
【0038】
視差探索範囲設定部50は、本実施の形態では、画像分割部40で作成された全てのペア部分について、縮小画像視差算出部30で得られた視差値のうち、当該ペア部分に相当する領域内での、最大の視差値と最小の視差値とを抽出する。この最大値及び最小値は、それぞれ、ペア部分毎の視差探索範囲の上限及び下限として設定される。
【0039】
第2の視差算出部60(以下、「視差算出部60」と表記する。)は、画像分割部40で生成されたペア部分を対象として、各部分の同じ地点を写す画像内の位置を検出する。即ち、本実施の形態では、視差算出部60は、ペアとなった画像の同じ地点に対応する対応点(特徴点)の組を新たに検出する。同じ地点に対応する対応点の組は、通常2つの画像の中で、対応する付近の小領域の画像相関をとり、相関係数が最大となる位置から検出される。
【0040】
また、視差算出部60は、縮小画像視差算出部30と同様の上述したステレオマッチング処理を実行する。そして、視差算出部60は、ステレオマッチング処理によって算出した視差が、視差探索範囲内にあるかどうかを判定し、視差探索範囲内にある場合は、算出した視差を、ペア部分の対応点の視差として、画像合成部70に出力する。
【0041】
画像合成部70は、視差算出部60によってペア部分毎に算出された対応点の視差に基づいて、ステレオ画像を構成する左画像と右画像とを合成し、3次元画像を表す3次元データ(DSMデータ)を生成する。また、画像合成部70は、生成した3次元データを画像出力部80に出力する。
【0042】
画像出力部80は、画像合成部70から、3次元データが出力されてくると、この3次元データを表現するDSM画像を生成し、これを出力する。また、画像出力部80は、DSM画像と共に、ステレオマッチング処理の結果等を出力することもできる。
【0043】
[装置動作]
次に、本発明の実施の形態におけるステレオマッチング処理装置100の動作について図2を用いて説明する。図2は、本発明の実施の形態におけるステレオマッチング処理装置の動作を示すフロー図である。また、本実施の形態では、ステレオマッチング処理装置100を動作させることによって、ステレオマッチング処理方法が実施される。よって、本実施の形態におけるステレオマッチング処理方法の説明は、以下のステレオマッチング処理装置100の動作説明に代える。
【0044】
図2に示すように、最初に、画像受付部10は、処理の対象となるステレオ画像の入力を受け付ける(ステップS101)。そして、画像受付部10は、入力を受け付けたステレオ画像を、縮小画像作成部20及び画像分割部40に出力する。
【0045】
なお、上述したように、ステレオ画像は、2台のカメラを用いて、異なる位置からほぼ同一の領域を撮影することによって得られた画像である。また、後述するように、ステレオ画像内の各位置に対応する対応点の組が検出されて、ステレオマッチング処理が行われる。
【0046】
次に、縮小画像作成部20は、画像受付部10から渡されたステレオ画像を縮小して、ステレオ縮小画像を作成する(ステップS102)。図3は、本発明の実施の形態における行なわれる縮小画像の作成処理を説明する図である。図3に示すように、縮小画像作成部20は、ステレオ画像を構成する左画像及び右画像をそれぞれ縮小して、縮小画像を作成する。
【0047】
ステップS102において、画像を縮小する際の縮小倍率、縮小画像のサイズ等は、適宜設定される。また、縮小画像作成部20は、ステレオ縮小画像を作成した後、作成したステレオ縮小画像を縮小画像視差算出部30に出力する。
【0048】
次に、縮小画像視差算出部30は、縮小画像作成部20から出力されたステレオ縮小画像から、同じ地点を写す画像内の対応点の組を検出し(図3参照)、当該対応点の組から、視差を算出する(ステップS103)。そして、縮小画像視差算出部30は、算出した視差を、視差探索範囲設定部50に出力する。なお、図3中の左画像及び右画像において、丸で囲った部分は、検出された対応点を示しており、線で結ばれた部分同士が対応している。
【0049】
次に、画像分割部40は、図3に示すように、画像受付部10で受け付けられたステレオ画像を構成している右画像及び左画像を、それぞれ、予め設定されたサイズで複数のブロック画像に分割する(ステップS104)。そして、画像分割部40は、生成した分割画像を、視差算出部60に出力する。図4は、本発明の実施の形態におけるステレオマッチング処理で行なわれる画像の分割処理を説明する図である。
【0050】
次に、視差探索範囲設定部50は、画像分割部40で作成された分割画像(ペア部分)毎に、それぞれの分割位置で囲まれた領域内での、ステップS103で算出された視差の最大値と最小値とを特定し、特定した最小値から最大値までを当該分割画像(ペア部分)での視差探索範囲として設定する(ステップS105)。また、視差探索範囲設定部50は、設定した視差探索範囲を、視差算出部60に通知する。
【0051】
具体的には、視差探索範囲設定部50は、ペア部分毎に、当該ペア部分の領域においてステップS103で検出された対応点の組を特定し(図3参照)、更に、特定した組について算出された視差を特定する。そして、視差探索範囲設定部50は、特定した視差の中から、最大値と最小値とを抽出し、抽出した最小値から最大値までを視差探索範囲とする。
【0052】
次に、視差探索範囲設定部50は、全ての分割画像(ペア部分)についてステップS105が実行されているかどうかを判断する(ステップS106)。ステップS106の判断の結果、全ての分割画像についてステップS105が実行されていない場合は、視差探索範囲設定部50は、再度、ステップS105を実行する。
【0053】
一方、ステップS106の判断の結果、全ての分割画像についてステップS105が実行されている場合は、視差算出部60は、画像分割部40によって作成されたペア部分毎に、同じ地点を写す画像内の対応点の組を新たに検出し、当該対応点の組について視差を算出する。また、視差算出部60は、算出した視差が、ステップS105で設定された視差探索範囲内にあるかどうかを判定し、視差探索範囲内にある場合にのみ、算出した視差を、ペア部分の対応点の視差とする(ステップS107)。また、視差算出部60は、得られたペア部分の対応点の視差を、画像合成部70に出力する。
【0054】
次に、画像合成部70は、視差算出部60から出力されてきた各ペア部分の対応点の視差に基づいて、ステップS101で入力を受け付けたステレオ画像の左画像と右画像とを合成し、3次元データ(DSMデータ)を生成する(ステップS108)。そして、画像合成部70は、生成した3次元データを、画像出力部80に出力する。
【0055】
次に、画像出力部80は、画像合成部70から渡された3次元データに基づいて、3次元画像(DSM画像)を生成し、これを出力する(ステップS109)。以上により、ステレオマッチング処理装置100における処理は終了する。
【0056】
[実施の形態による効果]
以上のように、本実施の形態によれば、ステレオ画像について、同一の点を撮像している各画像中の対応点を容易に求めることができる。また、分割画像間の視差の算出は、視差探索範囲を基準にして行なえば良いため、ステレオ画像から対応点を求めて、視差を算出する際において、無駄な処理を行なう必要がなく、処理の高速化が図られる。また、視差探索範囲を求めるための処理は、縮小されたステレオ画像に基づいて行われるので、よりいっそうの高速化が可能となる。
【0057】
[プログラム]
また、本実施の形態におけるプログラムは、コンピュータに、図2に示すステップS101〜S109を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるステレオマッチング処理装置100とステレオマッチング処理方法とを実現することができる。この場合、コンピュータのCPU(Central Processing Unit)は、画像受付部10、縮小画像作成部20、縮小画像視差算出部30、画像分割部40、視差探索範囲設定部50、視差算出部60、画像合成部70、及び画像出力部80として機能し、処理を行なう。つまり、本実施の形態におけるステレオマッチング処理装置100は、専用のシステムによらず、通常のコンピュータを用いて実現可能である。
【0058】
また、本実施の形態におけるプログラムは、コンピュータが読み取り可能な記録媒体(フレキシブルディスク、CD−ROM、DVD−ROM等)に格納された状態で配布されても良い。更に、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該プログラムが格納されている場合は、通常のコンピュータが、当該プログラムをダウンロード等して、これをインストールすることで、ステレオマッチング処理装置100が実現される。
【0059】
また、ステレオマッチング処理装置100の機能が、コンピュータのOS(オペレーティングシステム)とアプリケーションプログラムとの分担によって実現される場合、又はOSとアプリケーションプログラムとの協働によって実現される場合とが考えられる。このような場合は、アプリケーションプログラムの部分のみが、記録媒体、又はサーバ装置が有する記憶装置に格納されていれば良い。
【0060】
また、本実施の形態におけるプログラムは、搬送波に重畳されることによって、通信ネットワークを介して配信されても良い。例えば、通信ネットワーク上のWebサーバに、当該プログラムが掲示されている場合は、当該プログラムは、ネットワークを介して配信される。そして、当該プログラムは起動されると、OSの制御下で、他のアプリケーションプログラムと同様に実行され、処理を行う。
【0061】
ここで、本実施の形態におけるプログラムを実行することによって、ステレオマッチング処理装置100を実現するコンピュータの一例について図5を用いて説明する。図5は、本発明の実施の形態におけるステレオマッチング処理装置を実現するコンピュータの一例を示すブロック図である。
【0062】
図5に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。
【0063】
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
【0064】
また、記憶装置113の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
【0065】
また、記録媒体120の具体例としては、CF(Compact Flash)及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記憶媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体が挙げられる。
【0066】
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記12)によって表現することができるが、以下の記載に限定されるものではない。
【0067】
(付記1)
異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうための装置であって、
前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、第1の視差算出部と、
前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、画像分割部と、
互いに対応する2つの分割された部分毎に、当該部分中に存在する前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、視差探索範囲設定部と、
前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、第2の視差算出部と、
を備えている、ことを特徴とするステレオマッチング処理装置。
【0068】
(付記2)
前記2つの画像を縮小して、2つの縮小画像を生成する、縮小画像作成部を更に備え、
前記第1の視差算出部が、前記2つの縮小画像を対象として、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、
付記1に記載のステレオマッチング処理装置。
【0069】
(付記3)
前記第2の視差算出部が出力する視差に基づいて、前記2つの画像の撮影対象の3次元データを作成する、画像合成部を更に備えている、
付記1または2に記載のステレオマッチング処理装置。
【0070】
(付記4)
前記2つの画像が、航空写真又は衛星写真である、付記1〜3のいずれかに記載のステレオマッチング処理装置。
【0071】
(付記5)
異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうための方法であって、
(a)前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、ステップと、
(b)前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、ステップと、
(c)互いに対応する2つの分割された部分毎に、当該部分中に存在する前記(b)のステップで特定された前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、ステップと、
(d)前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、ステップと、
を有する、ことを特徴とするステレオマッチング処理方法。
【0072】
(付記6)
(f)前記2つの画像を縮小して、2つの縮小画像を生成する、ステップを更に有し、
前記(a)のステップで、前記2つの縮小画像を対象として、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、
付記5に記載のステレオマッチング処理方法。
【0073】
(付記7)
(g)前記(d)のステップで出力する視差に基づいて、前記2つの画像の撮影対象の3次元データを作成する、ステップを更に有する、
付記5または6に記載のステレオマッチング処理方法。
【0074】
(付記8)
前記2つの画像が、航空写真又は衛星写真である、付記5〜7のいずれかに記載のステレオマッチング処理方法。
【0075】
(付記9)
コンピュータによって、異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうためのプログラムであって、
前記コンピュータに、
(a)前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、ステップと、
(b)前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、ステップと、
(c)互いに対応する2つの分割された部分毎に、当該部分中に存在する前記(b)のステップで特定された前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、ステップと、
(d)前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、ステップと、
を実行させるプログラム。
【0076】
(付記10)
(f)前記2つの画像を縮小して、2つの縮小画像を生成する、ステップを、更に前記コンピュータに実行させ、
前記(a)のステップで、前記2つの縮小画像を対象として、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、
付記9に記載のプログラム。
【0077】
(付記11)
(g)前記(d)のステップで出力する視差に基づいて、前記2つの画像の撮影対象の3次元データを作成する、ステップを、更に前記コンピュータに実行させる、
付記9または10に記載のプログラム。
【0078】
(付記12)
前記2つの画像が、航空写真又は衛星写真である、付記9〜11のいずれかに記載のプログラム。
【0079】
以上、上述した実施の形態は、説明のためのものであり、本発明の範囲を制限するものではなく、本発明においては、種々の変形及び応用が可能である。従って、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。また、その他、上述したハードウエェア構成及びフローチャートは一例であり、任意に変更および修正が可能である。
【産業上の利用可能性】
【0080】
以上説明したように、本発明によれば、ステレオ画像から、同一の点を撮像している対応点を求めて、視差を計算する際に、処理の高速化が可能になる。本発明は、ステレオマッチング処理が求められる分野、特に、航空写真又は衛星写真から、3次元画像を作成する分野に有用である。
【符号の説明】
【0081】
10 ステレオマッチング処理装置
10 画像受付部
20 縮小画像作成部
30 縮小画像視差算出部(第1の視差算出部)
40 画像分割部
50 視差探索範囲設定部
60 視差算出部(第2の視差算出部)
70 画像合成部
80 画像出力部
100 ステレオマッチング処理装置
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス

【特許請求の範囲】
【請求項1】
異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうための装置であって、
前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、第1の視差算出部と、
前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、画像分割部と、
互いに対応する2つの分割された部分毎に、当該部分中に存在する前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、視差探索範囲設定部と、
前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、第2の視差算出部と、
を備えている、ことを特徴とするステレオマッチング処理装置。
【請求項2】
前記2つの画像を縮小して、2つの縮小画像を生成する、縮小画像作成部を更に備え、
前記第1の視差算出部が、前記2つの縮小画像を対象として、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、
請求項1に記載のステレオマッチング処理装置。
【請求項3】
前記第2の視差算出部が出力する視差に基づいて、前記2つの画像の撮影対象の3次元データを作成する、画像合成部を更に備えている、
請求項1または2に記載のステレオマッチング処理装置。
【請求項4】
前記2つの画像が、航空写真又は衛星写真である、請求項1〜3のいずれかに記載のステレオマッチング処理装置。
【請求項5】
異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうための方法であって、
(a)前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、ステップと、
(b)前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、ステップと、
(c)互いに対応する2つの分割された部分毎に、当該部分中に存在する前記(b)のステップで特定された前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、ステップと、
(d)前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、ステップと、
を有する、ことを特徴とするステレオマッチング処理方法。
【請求項6】
コンピュータによって、異なる角度から同一対象を撮影して得られた2つの画像を対象に、ステレオマッチング処理を行なうためのプログラムであって、
前記コンピュータに、
(a)前記2つの画像において、互いに対応する点の組を複数特定し、特定した組毎に、視差を算出する、ステップと、
(b)前記2つの画像を、それぞれの分割された部分が互いに対応するように分割する、ステップと、
(c)互いに対応する2つの分割された部分毎に、当該部分中に存在する前記(b)のステップで特定された前記対応する点の組を特定し、特定した組について算出された前記視差の値に基づいて、当該部分における前記視差の最大値と最小値とを特定して、視差探索範囲を設定する、ステップと、
(d)前記互いに対応する2つの分割された部分毎に、当該2つの部分間において互いに対応する点の組を新たに複数特定し、新たに特定した各組について、視差を算出し、算出した値が当該部分に設定された前記視差探索範囲に収まる場合に、算出した視差を、当該部分における新たに特定した当該組の視差として出力する、ステップと、
を実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2013−65247(P2013−65247A)
【公開日】平成25年4月11日(2013.4.11)
【国際特許分類】
【出願番号】特願2011−204569(P2011−204569)
【出願日】平成23年9月20日(2011.9.20)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.COMPACTFLASH
【出願人】(390001395)NECシステムテクノロジー株式会社 (438)
【Fターム(参考)】