(57)【要約】【課題】ステレオ画像について、同一の点を撮像している各画像中の対応点を求めるのに好適なステレオマッチング処理装置等を提供する。【解決手段】本発明に係るステレオマッチング処理装置１００は、２つの画像を受け付ける画像受付部１１０と、当該２つの画像にマージン値に基づくマージン領域を付加して分割する画像分割部１６０と、当該２つの画像を縮小する画像縮小部１２０と、マージン領域が付加された分割された２つの画像から、基準の視差を設定する基準視差設定部１３０と、縮小された２つの画像のうち最大の視差値及び最小の視差値を算出する視差算出部１４０と、分割された２つの画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、最大の視差値又は最小の視差値が当該マージン値より大きい場合、最大の視差値又は最小の視差値を、当該マージン値と設定するマージン設定部１５０と、を備える。【選択図】図１
2011203953.tif 000002
【特許請求の範囲】
【請求項１】
複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付部と、
前記第１画像と前記第２画像とをそれぞれ分割する画像分割部と、
前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小部と、
前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定部と、
前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出部と、
前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定部と、を備え、
前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、
前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、
ことを特徴とするステレオマッチング処理装置。
【請求項２】
前記画像分割部は、前記最大の視差値を幅値とするマージン領域を、前記分割した第１画像と第２画像との右側に付加し、前記最小の視差値を幅値とするマージン領域を、前記分割した第１画像と第２画像との左側に付加し、画像を分割する、
ことを特徴とする請求項１に記載のステレオマッチング処理装置。
【請求項３】
前記画像縮小部は、前記第１画像と前記第２画像とをそれぞれ複数の画像に分割し、当該分割した画像を構成する画素が示す画素値の平均値を求め、当該平均値により表される画素から構成される画像を縮小した画像とする、
ことを特徴とする請求項１又は２に記載のステレオマッチング処理装置。
【請求項４】
画像受付部と、画像分割部と、画像縮小部と、基準視差設定部と、視差算出部と、マージン設定部と、を有するステレオマッチング処理装置にて実行されるステレオマッチング処理方法であって、
前記画像受付部が、複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付工程と、
前記画像分割部が、前記第１画像と前記第２画像とをそれぞれ分割する画像分割工程と、
前記画像縮小部が、前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小工程と、
前記基準視差設定部が、前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定工程と、
前記視差算出部が、前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出工程と、
前記マージン設定部が、前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定工程と、を備え、
前記画像分割工程では、前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、
前記基準視差設定工程では、前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、
ことを特徴とするステレオマッチング処理方法。
【請求項５】
コンピュータを、
複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付部と、
前記第１画像と前記第２画像とをそれぞれ分割する画像分割部と、
前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小部と、
前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定部と、
前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出部と、
前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定部と、して機能させ、
前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、
前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、
ように機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ステレオ画像について、同一の点を撮像している各画像中の対応点を求めるのに好適なステレオマッチング処理装置、ステレオマッチング処理方法、及び、プログラムに関する。
【背景技術】
【０００２】
３次元データ自動生成方法においては、人工衛星や航空機等から得られる画像を基に、地形を示す３次元データ［ＤＳＭ（Digital Surface Model）データ］をステレオマッチングによって生成する方法が広く行われており、またオペレータを介在させて対応の取れない点を修正させる方法も提案されている。
【０００３】
ここで、ステレオマッチング処理とは、異なる視点から撮影した２枚の画像、いわゆるステレオ画像について、同一の点を撮像している各画像中の対応点を求め、その視差を用いて三角測量の原理によって対象までの奥行きや形状を求めることである。
【０００４】
このステレオマッチング処理については既に様々な手法が提案されている。例えば、異なる視点から撮影することにより得られた１組２枚の立体写真において、一方の写真中の各点に対して、前記各点と同じの地表点を表す対応点を他方の写真中に見つけ、前記各点と前記対応点との視差に基づいて、前記各点の高さ情報を算出し、当該算出された情報によって３次元地形データを生成する手法が開示されている(例えば、特許文献１参照)。
【０００５】
重複する部分を含む２枚の画像間で対応する点を求め、三角測量の原理で対応点の奥行きを求めるステレオ処理では、対応する点を探索する処理に多くの計算時間がかかる場合がある。特に航空写真の場合、一枚あたり縦10,000画素、横10,000画素程度の画像の対応を行う必要があり、多大な計算時間を要することがある。
【０００６】
これに対し、対応点の距離が一定の範囲に収まる場合には、対応する視差量が一定の範囲に収まることから、視差量よりも大きな分割サイズで画像を分割することによって、分割後の画像ごとに、ステレオ処理を並列処理することにより、処理時間を短縮する処理が行われている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−０４６７７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、画像中に写っている対象の奥行き（航空写真の場合は、地物の高さ）を、ステレオ処理を行う前に、予め知ることは困難であるため、地物の視差を確定することはできない。このため、並列処理のための画像分割の結果、分割画像内に対応する点がない場合が生じ、この場合には対応点を求めることができないという場合があった。そこで、ステレオ画像について、同一の点を撮像している各画像中の対応点を求めるのに好適な新たな手法が求められている。
【０００９】
本発明は、上記問題点に鑑みてなされたものであり、ステレオ画像について、同一の点を撮像している各画像中の対応点を求めるのに好適なステレオマッチング処理装置、ステレオマッチング処理方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本発明の第１の観点に係るステレオマッチング処理装置は、
複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付部と、
前記第１画像と前記第２画像とをそれぞれ分割する画像分割部と、
前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小部と、
前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定部と、
前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出部と、
前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定部と、を備え、
前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、
前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、
ことを特徴とする。
【００１１】
本発明のその他の観点に係るステレオマッチング処理方法は、
画像受付部と、画像分割部と、画像縮小部と、基準視差設定部と、視差算出部と、マージン設定部と、を有するステレオマッチング処理装置にて実行されるステレオマッチング処理方法であって、
前記画像受付部が、複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付工程と、
前記画像分割部が、前記第１画像と前記第２画像とをそれぞれ分割する画像分割工程と、
前記画像縮小部が、前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小工程と、
前記基準視差設定部が、前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定工程と、
前記視差算出部が、前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出工程と、
前記マージン設定部が、前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定工程と、を備え、
前記画像分割工程では、前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、
前記基準視差設定工程では、前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、
ことを特徴とする。
【００１２】
本発明のその他の観点に係るプログラムは、
コンピュータを、
複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付部と、
前記第１画像と前記第２画像とをそれぞれ分割する画像分割部と、
前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小部と、
前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定部と、
前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出部と、
前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定部と、して機能させ、
前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、
前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、
ように機能させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ステレオ画像について、同一の点を撮像している各画像中の対応点を求めることができる。
【図面の簡単な説明】
【００１４】
【図１】ステレオマッチング処理装置の構成を示すブロック図である。
【図２Ａ】画像を縮小させる縮小例を示す図である。
【図２Ｂ】画像を縮小させる縮小例を示す図である。
【図３】マージン領域を有する分割された画像を示す図である。
【図４】ステレオマッチング処理を説明するためのフローチャートである。
【図５】分割画像の対応点の例を示す図である。
【発明を実施するための形態】
【００１５】
以下に本発明の実施形態を説明する。各種のコンピュータ、ＰＤＡ（Personal Digital Assistant）、携帯電話などの情報処理装置において本発明を適用することができる。すなわち、以下に記載する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素または全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００１６】
図１は、本発明の実施形態に係るステレオマッチング処理装置の構成を示すブロック図である。ステレオマッチング処理装置１００は、画像受付部１１０、画像縮小部１２０、基準視差設定部１３０、視差算出部１４０、マージン設定部１５０、画像分割部１６０、画像合成部１７０、画像出力部１８０等を備える。以下に、ステレオマッチング処理装置１００が備える各構成要素について説明する。
【００１７】
画像受付部１１０は、例えばキーボードやマウスなどから構成され、複数の異なる位置からほぼ同一の領域を撮影した第１画像（以下、「左画像」という）と第２画像（以下、「右画像」という）とを受け付ける。画像受付部１１０は、ステレオマッチング処理に使用される複数の画像データ（典型的には、ペアの画像データ）の入力を受け付ける。ここで、画像データとは、典型的にはデジタル画像に変換された航空写真を表す画像である。画像データには、画像を撮影した位置、撮影した方向、画角などが含まれる。
【００１８】
画像縮小部１２０は、例えばＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスクドライブなどから構成され、画像受付部１１０から渡された画像データが表す画像を縮小する。図２Ａ及び２Ｂは、画像を縮小させる縮小例を示す図である。画像縮小部１２０は、例えば、図２Ａに示すように、ペア画像である左画像と右画像とを任意の倍率で縮小することにより、縮小した左画像と右画像とを生成する。画像を縮小することにより、後述するステレオマッチング処理が、画像を縮小する前と比較して速く短時間で実行される。
【００１９】
また、画像縮小部１２０は、例えば、図２Ｂに示すように、画像を、縦３２ピクセル×横３２ピクセルからなる複数の画像に分割する。そして、画像縮小部１２０は、分割した複数の画像を構成する画素値の平均値を求める。典型的には、赤（Ｒ）成分値、緑（Ｇ）成分値、及び、青（Ｂ）成分値により画素値が表されるため、それぞれの成分値の平均値が、画素値の平均値となる。縦３２ピクセル×横３２ピクセルからなる画像の場合、画像縮小部１２０は、当該画像の画素値の平均値を求めることにより、１／３２に縮小した複数の縮小画像を生成する。
【００２０】
基準視差設定部１３０は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスクドライブなどから構成され、異なる位置から同じ領域を撮影した複数の画像データに対して、同じ地点を写す画像内の位置を検出する。すなわち、複数の画像の同じ地点に対応する対応点（特徴点）の組を検出する。同じ地点に対応する対応点の組は、通常２つの画像の中で、対応する付近の小領域の画像相関をとり、相関係数が最大となる位置から検出される。また、基準視差設定部１３０は、画像分割部１６０が分割したマージン領域が加えられた画像から、同じ地点を写す画像内の位置を検出する。
【００２１】
また、基準視差設定部１３０は、撮影時のカメラパラメータを標定する標定処理や、左画像と右画像とを必要に応じて共通平行面に再投影する平行化処理などを実行する。ここで、標定とは、評価の対象について所定の値を求めることをいう。基準視差設定部１３０は、平行化処理を実行することにより、左画像及び右画像上のエピポールを結ぶエピポーラ線が複数の走査線の一つに一致するように左画像と右画像とを共通平行面に再投影し、当該左画像及び当該右画像（平行化済画像対）に対してステレオマッチング処理、具体的にはＤＰ（Dynamic Programming）マッチング処理を施すことにより、左画像と右画像との間での位置ずれ（視差）を計測し、視差データを生成する。ステレオマッチング処理の結果、ペアの画像データが表す各画素に対応して、左右の画像間での視差が得られる。ここで得られる視差は、画像の切り出し処理時に地面を基準に切り出していることから、地面について視差はゼロのはずであり、建物などによる地面の突起に対応する視差であると考えることができる。
【００２２】
なお、ステレオマッチング処理を行うための手法には、一般的な特徴量を求めて対応付けるものや、左右画像の相関を求めるものなど、様々なものが存在するが、本実施例におけるステレオマッチング処理に使用される手法に制限はない。例えば、特公平８−１６９３０に記載のステレオマッチング処理を使用してもよい。
【００２３】
視差算出部１４０は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスクドライブなどから構成され、基準の視差値を基準として、縮小された左画像又は右画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する。視差算出部１４０は、例えば、２つの画像で対応する点を探索する基準の視差を与える視差を設定し、ペア画像である左画像もしくは右画像を縦横一定のサイズに区切ったブロック画像内における最大の視差値及び最小の視差値を算出する。
【００２４】
マージン設定部１５０は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスクドライブなどから構成され、分割された左画像及び右画像に付加されるマージン領域の幅値を示すマージン値（初期値）を予め設定し、最大の視差値又は最小の視差値が当該初期値のマージン値より大きい場合、最大の視差値又は最小の視差値を、当該マージン値と設定する。マージン設定部１５０は、最大の視差値の初期値（ここでは、正の値とする）を右のマージン値、最小の視差値の初期値（ここでは、負の値とする）を左のマージン値と設定する。そして、マージン設定部１５０は、視差算出部１４０が算出した最大の視差値が最大の視差値の初期値より大きい場合、視差算出部１４０が算出した最大の視差値を新たな右のマージン値として設定し、また、視差算出部１４０が算出した最小の視差値が最小の視差値の初期値より大きい場合、視差算出部１４０が算出した最小の視差値を新たな左のマージン値として設定する。ここで、最大の視差値の初期値、及び、最小の視差値の初期値は、直前の値、平均値等、任意の値が予め定められている。
【００２５】
画像分割部１６０は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスクドライブなどから構成され、画像受付部１１０から渡された複数の画像データが表す画像をブロック画像に分割する。また、画像分割部１６０は、マージン設定部１５０が設定したマージン値からなる幅を有するマージン領域を加えた画像を、ブロック画像として分割する。図３は、マージン領域を有する分割された画像を示す図である。画像分割部１６０は、例えば、同図に示すように、分割を行う左画像の左側の画像を表す分割左画像と右画像の左側の画像を表す分割左画像との右側に、右のマージン値からなる幅を有するマージン領域を加えて、左画像及び右画像を分割する。また、画像分割部１６０は、分割を行う左画像の右側の画像を表す分割右画像と右画像の右側の画像を表す分割右画像との左側に、左のマージン値からなる幅を有するマージン領域を加えて、左画像及び右画像を分割する。すなわち、画像の分割が行われる位置に、マージン値からなる所定の幅を有するマージン領域が加えられて、画像が分割される。また、画像分割部１６０は、左画像と右画像との両側にマージン領域を加えて、当該左画像と右画像とを分割することもできる。
【００２６】
画像合成部１７０は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスクドライブなどから構成され、基準視差設定部１３０が検出したペア画像である左画像及び右画像の同じ地点に対応する対応点の３次元データ（ＤＳＭデータ）から、左画像と右画像とを合成し、３次元画像が表される３次元データ（ＤＳＭデータ）を生成する。
【００２７】
画像出力部１８０は、例えばＣＰＵ、ＲＯＭ、ＲＡＭ、ＬＣＤ（Liquid Crystal Display）などから構成され、同一の対象物を異なる方向から撮影された複数の画像から得られた３次元データ（ＤＳＭデータ）が表すＤＳＭ画像、ステレオマッチング処理の結果等を出力する。
【００２８】
次に、ステレオマッチング処理装置１００の動作を説明する。図４は、本実施形態に係るステレオマッチング処理装置１００にて実行されるステレオマッチング処理を示すフローチャートである。
【００２９】
まず、画像受付部１１０は、ステレオマッチング処理が行われる複数の画像の入力を受け付ける（ステップＳ１０１）。複数の画像は、複数の異なる位置からほぼ同一の領域を撮影した画像であり、当該複数の画像内のそれぞれの位置に対応する対応点が検出されて、ステレオマッチング処理が行われる。画像受付部１１０は、複数の画像の入力を受け付けた後、当該複数の画像を画像縮小部１２０及び画像分割部１６０に渡す。
【００３０】
次に、画像縮小部１２０は、画像受付部１１０から渡された複数の画像をそれぞれ縮小する（ステップＳ１０２）。図２Ａ及び図２Ｂに示すように、画像縮小部１２０は、複数の画像を縮小した画像を生成する。画像を縮小する方法は任意であり、縮小する倍率、縮小画像のサイズ等、任意に設定し得る。そして、画像縮小部１２０は、複数の画像を縮小した後、当該縮小した複数の画像を基準視差設定部１３０に渡す。
【００３１】
次に、基準視差設定部１３０は、公知のステレオマッチング処理に基づいて、画像縮小部１２０から渡された複数の画像から、同じ地点を写す画像内の対応点を検出し、当該対応点から基準の視差値を設定する（ステップＳ１０３）。そして、基準視差設定部１３０は、設定した基準の視差値を、視差算出部１４０に渡す。
【００３２】
次に、視差算出部１４０は、基準視差設定部１３０から渡された基準の視差値を基準として、縮小された複数の画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する（ステップＳ１０４）。視差算出部１４０は、例えば、複数の画像をそれぞれ複数のブロック画像に区切り、当該ブロック画像内における最大の視差値及び最小の視差値を算出する。そして、視差算出部１４０は、算出した最大の視差値及び最小の視差値を、マージン設定部１５０に渡す。
【００３３】
次に、マージン設定部１５０は、分割された複数の画像にそれぞれ付加されるマージン領域の幅値を示すマージン値（初期値）を予め設定し、最大の視差値又は最小の視差値が当該初期値のマージン値より大きいか否かを判定する（ステップＳ１０５）。
【００３４】
最大の視差値又は最小の視差値が、初期値のマージン値より大きい場合（ステップＳ１０５；Ｙｅｓ）、マージン設定部１５０は、最大の視差値又は最小の視差値を、マージン値と設定する（ステップＳ１０６）。マージン設定部１５０は、例えば、最大の視差値を右のマージン値、最小の視差値を左のマージン値、として設定する。当該マージン値からなる幅を有するマージン領域を加えた画像が、ブロック画像として分割されるため、当該マージン値が大きくなるとマージン領域も大きくなる。このため、分割画像中に対応点が含まれない状態を少なくすることができる。そして、マージン設定部１５０は、設定したマージン値を、画像分割部１６０に渡す。
【００３５】
なお、最大の視差値のみが初期値のマージン値より大きい場合、マージン設定部１５０は、最大の視差値を右のマージン値、最大の視差値の絶対値を左のマージン値、として設定することもでき、また、最大の視差値を右のマージン値、初期値のマージン値を左のマージン値、として設定することもできる。
また、最小の視差値のみが初期値のマージン値より大きい場合、マージン設定部１５０は、最小の視差値の絶対値を右のマージン値、最小の視差値を左のマージン値、として設定することもでき、また、初期値のマージン値を右のマージン値、最小の視差値を左のマージン値、として設定することもできる。
【００３６】
一方、最大の視差値又は最小の視差値が、初期値のマージン値より大きくない場合（ステップＳ１０５；Ｎｏ）、マージン設定部１５０は、初期のマージン値を、マージン値と設定する（ステップＳ１０７）。そして、マージン設定部１５０は、設定したマージン値を、画像分割部１６０に渡す。
【００３７】
次に、画像分割部１６０は、マージン設定部１５０から渡されたマージン値に基づいてマージン領域を設定し、画像受付部１１０から渡された複数の画像に当該マージン領域を加えて、当該複数の画像それぞれを分割する（ステップＳ１０８）。図３に示すように、画像分割部１６０は、左画像の分割左画像と右画像の分割左画像との右側に、右のマージン値からなるマージン領域を加えて、左画像及び右画像を分割する。また、画像分割部１６０は、左画像の分割右画像と右画像の分割右画像との左側に、左のマージン値からなるマージン領域を加えて、左画像及び右画像を分割する。すなわち、画像の分割が行われる位置に、マージン値からなる幅を有するマージン領域が加えられて、画像が分割される。一定のマージン値からなる幅を有するマージン領域を加えて画像が分割されると、分割される位置によっては、左画像と右画像とで対応点が存在しない場合ある。このような対応点が存在しない場合、ステレオマッチング処理は失敗する。このため、最大の視差値及び最小の視差値に基づいて、マージン領域を変化させることにより、対応点が含まれない状態を少なくすることができる。
【００３８】
次に、基準視差設定部１３０は、マージン領域が加えられて分割された複数の画像から、ステップＳ１０３の処理と同様に同じ地点を写す画像内の対応点を検出し、当該対応点から基準の視差値を設定する（ステップＳ１０９）。図５は、分割画像の対応点の例を示す図である。基準視差設定部１３０は、例えば、同図に示すように、左画像の分割左画像と右画像の分割左画像とから対応点を検出し、当該対応点から基準の視差値を設定する。そして、基準視差設定部１３０は、設定した基準の視差値を、画像合成部１７０に渡す。
【００３９】
次に、画像合成部１７０は、基準視差設定部１３０から渡された基準の視差値に基づいて複数の画像を合成し、３次元画像が表される３次元データ（ＤＳＭデータ）を生成する（ステップＳ１１０）。そして、画像合成部１７０は、３次元画像が表される３次元データを、画像出力部１８０に渡す。
【００４０】
次に、画像出力部１８０は、画像合成部１７０から渡された３次元データに基づく３次元画像を出力し（ステップＳ１１１）、本ステレオマッチング処理を終了する。
【００４１】
以上の処理により、ステレオ画像について、同一の点を撮像している各画像中の対応点を容易に求めることができる。また、縮小された画像から対応点を求めるため、少ない計算量で対応点を求めることができる。さらに、視差が大きい場合には、分割される画像のマージン領域も大きくなるため、分割画像中に対応点が含まれない状態を少なくすることができる。
【００４２】
なお、本発明は上記の実施形態に限定されず、種々の変形及び応用が可能である。
【００４３】
マージン設定部１５０は、最大の視差値と最小の視差値との平均値をマージン値として設定することもできる。また、マージン設定部１５０は、最大の視差値又は最小の視差値に所定値を追加した値を、マージン値として設定することもできる。
【００４４】
画像分割部１６０は、分割画像の右側及び左側だけでなく、当該分割画像を囲むマージン領域を加えて、画像を分割することもできる。
【００４５】
その他、前記のハードウエェア構成やフローチャートは一例であり、任意に変更および修正が可能である。
【００４６】
画像受付部１１０、画像縮小部１２０、基準視差設定部１３０、視差算出部１４０、マージン設定部１５０、画像分割部１６０、画像合成部１７０、画像出力部１８０などから構成されるステレオマッチング処理装置１００の処理を行う中心となる部分は、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。たとえば、前記の動作を実行するためのコンピュータプログラムを、コンピュータが読み取り可能な記録媒体（フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等）に格納して配布し、当該コンピュータプログラムをコンピュータにインストールすることにより、前記の処理を実行するステレオマッチング処理装置１００を構成してもよい。また、インターネット等の通信ネットワーク上のサーバ装置が有する記憶装置に当該コンピュータプログラムを格納しておき、通常のコンピュータシステムがダウンロード等することでステレオマッチング処理装置１００を構成してもよい。
【００４７】
また、ステレオマッチング処理装置１００の機能を、ＯＳ（オペレーティングシステム）とアプリケーションプログラムの分担、またはＯＳとアプリケーションプログラムとの協働により実現する場合などには、アプリケーションプログラム部分のみを記録媒体や記憶装置に格納してもよい。
【００４８】
また、搬送波にコンピュータプログラムを重畳し、通信ネットワークを介して配信することも可能である。たとえば、通信ネットワーク上の掲示板（BBS; Bulletin Board System）に前記コンピュータプログラムを掲示し、ネットワークを介して前記コンピュータプログラムを配信してもよい。そして、このコンピュータプログラムを起動し、ＯＳの制御下で、他のアプリケーションプログラムと同様に実行することにより、前記の処理を実行できるように構成してもよい。
【００４９】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００５０】
（付記１）複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付部と、前記第１画像と前記第２画像とをそれぞれ分割する画像分割部と、前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小部と、前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定部と、前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出部と、前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定部と、を備え、前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、ことを特徴とするステレオマッチング処理装置。
【００５１】
（付記２）前記画像分割部は、前記最大の視差値を幅値とするマージン領域を、前記分割した第１画像と第２画像との右側に付加し、前記最小の視差値を幅値とするマージン領域を、前記分割した第１画像と第２画像との左側に付加し、画像を分割する、ことを特徴とする付記１に記載のステレオマッチング処理装置。
【００５２】
（付記３）前記画像縮小部は、前記第１画像と前記第２画像とをそれぞれ複数の画像に分割し、当該分割した画像を構成する画素が示す画素値の平均値を求め、当該平均値により表される画素から構成される画像を縮小した画像とする、ことを特徴とする付記１又は２に記載のステレオマッチング処理装置。
【００５３】
（付記４）画像受付部と、画像分割部と、画像縮小部と、基準視差設定部と、視差算出部と、マージン設定部と、を有するステレオマッチング処理装置にて実行されるステレオマッチング処理方法であって、前記画像受付部が、複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付工程と、前記画像分割部が、前記第１画像と前記第２画像とをそれぞれ分割する画像分割工程と、前記画像縮小部が、前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小工程と、前記基準視差設定部が、前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定工程と、前記視差算出部が、前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出工程と、前記マージン設定部が、前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定工程と、を備え、前記画像分割工程では、前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、前記基準視差設定工程では、前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、ことを特徴とするステレオマッチング処理方法。
【００５４】
（付記５）コンピュータを、複数の異なる位置からほぼ同一の領域を撮影した第１画像と第２画像とを受け付ける画像受付部と、前記第１画像と前記第２画像とをそれぞれ分割する画像分割部と、前記第１画像と前記第２画像とをそれぞれ縮小する画像縮小部と、前記縮小された第１画像と第２画像とから同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差値を設定する基準視差設定部と、前記設定された基準の視差値を基準として、前記縮小された第１画像又は第２画像のうち所定の領域内における最大の視差値及び最小の視差値を算出する視差算出部と、前記分割された第１画像及び第２画像に付加されるマージン領域の幅値を示すマージン値を予め設定し、前記最大の視差値又は前記最小の視差値が当該マージン値より大きい場合、前記最大の視差値又は前記最小の視差値を、当該マージン値と設定するマージン設定部と、して機能させ、前記画像分割部は、前記分割した第１画像と第２画像とに、前記マージン値に基づくマージン領域を付加して画像を分割し、前記基準視差設定部は、前記マージン領域が付加され分割された第１画像と第２画像とから、同一の位置を示す基準点をそれぞれ検出し、当該検出したそれぞれの基準点の差から基準の視差を設定する、ように機能させることを特徴とするプログラム。
【産業上の利用可能性】
【００５５】
以上説明したように、本発明によれば、ステレオ画像について、同一の点を撮像している各画像中の対応点を求めるのに好適なステレオマッチング処理装置、ステレオマッチング処理方法、及び、プログラムを提供することができる。
【符号の説明】
【００５６】
１００  ステレオマッチング処理装置
１１０  画像受付部
１２０  画像縮小部
１３０  基準視差設定部
１４０  視差算出部
１５０  マージン設定部
１６０  画像分割部
１７０  画像合成部
１８０  画像出力部
【図１】
2011203953.tif 000003
【図２Ａ】
2011203953.tif 000004
【図２Ｂ】
2011203953.tif 000005
【図３】
2011203953.tif 000006
【図４】
2011203953.tif 000007
【図５】
2011203953.tif 000008