(57)【要約】  画像処理装置１００は、ペア画像を画像ブロックに分割し、一方の画像の画像ブロックと他方の画像の画像ブロックとを組み合せて、画像ブロックの組を設定する画像分割部１０と、組毎に相関値を算出する相関値算出部２０と、幾つかの組を選択して組集合を構築し、組毎に、当該組と別の選択した組との距離が大きいほど値が小さくなる第１の係数（上限値＝１）を設定する係数設定部３０と、組集合を構成する組毎に、相関値に第１の係数を乗算して得られた乗算値を積算して積算相関値を算出する積算相関値算出部４０と、積算相関値が最も小さい組集合を構成する組の画像ブロック同士は一致すると判定する、画像ブロック判定部５０とを備えている。
2017130546.tif 000002
【特許請求の範囲】
【請求項１】
対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、画像分割部と、
設定された画像ブロックの組毎に、相関値を算出する、相関値算出部と、
設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、係数設定部と、
前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、積算相関値算出部と、
前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、画像ブロック判定部と、
を備えている、ことを特徴とする画像処理装置。
【請求項２】
前記係数設定部が、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記積算相関値算出部が、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
請求項１に記載の画像処理装置。
【請求項３】
前記係数設定部が、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
請求項１または２に記載の画像処理装置。
【請求項４】
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、請求項１〜３のいずれかに記載の画像処理装置。
【請求項５】
前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、画像取得部を更に備え、
前記画像分割部が、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
請求項１〜４のいずれかに記載の画像処理装置。
【請求項６】
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を有している、ことを特徴とする画像処理方法。
【請求項７】
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
請求項６に記載の画像処理方法。
【請求項８】
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
請求項６または７に記載の画像処理方法。
【請求項９】
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、請求項６〜８のいずれかに記載の画像処理方法。
【請求項１０】
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に有し、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
請求項６〜９のいずれかに記載の画像処理方法。
【請求項１１】
コンピュータに、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を実行させる命令を含む、プログラムを記録しているコンピュータ読み取り可能な記録媒体。
【請求項１２】
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
請求項１１に記載のコンピュータ読み取り可能な記録媒体。
【請求項１３】
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
請求項１１または１２に記載のコンピュータ読み取り可能な記録媒体。
【請求項１４】
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、請求項１１〜１３のいずれかに記載のコンピュータ読み取り可能な記録媒体。
【請求項１５】
前記プログラムが、前記コンピュータに、
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを実行させる、命令を更に含み、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
請求項１１〜１４のいずれかに記載のコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２つの画像を用いた画像処理を行なうための、画像処理装置、画像処理方法、及びこれらを実現するためのプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
従来から、３次元データの自動生成方法として、人工衛星又は航空機等から得られたペア画像を基に、ステレオマッチング処理を行うことによって、地形を示す３次元データ［ＤＳＭ（Digital Surface Model）データ］を生成する方法が広く知られている。ペア画像は、２台のカメラによって同一の被写体を異なる視点で撮影することによって得られた画像である。【０００３】
具体的には、ステレオマッチング処理では、まず、ステレオ画像を構成する各画像は一定サイズの画像ブロックに分割され、次いで、一方の画像の画像ブロックに一致する他方の画像の画像ブロックが特定される。具体的には、画像ブロック間の相関値を、輝度差の和（ＳＡＤ：Sum of Absolute Difference）又は輝度差の２乗和（ＳＳＤ：Sum of Squared Difference）を利用して算出し、算出した相関値を用いることで、一致する画像ブロックの組合せが特定される。その後、一致する画像ブロック間で対応点を特定し、特定した対応点間の視差を用いて、三角測量を実行することによって、被写体の奥行き及び形状が求められる。【０００４】
ところで、ペア画像が航空画像である場合には、被写体の一部の領域が、一方の画像では見えているが、他方の画像では隠れてしまうことがある。この隠れて見えない領域は、一般に、「オクルージョン領域」と呼ばれている。そして、このようなオクルージョン領域が発生している場合は、ステレオマッチング処理によるマッチング精度が低下してしまうことになる。【０００５】
このため、例えば、特許文献１は、画像ブロックの組合せ毎に算出した相関値を用いて、マッチング精度の低下を抑制するステレオマッチング処理を開示している。具体的には、特許文献１に開示されたステレオマッチング処理では、下記の（ａ）〜（ｇ）の工程が実行される。【０００６】
（ａ）ペア画像を構成する、一方の画像Ａと、他方の画像Ｂとを、それぞれ、画像ブロックに分割する工程。
（ｂ）画像ブロックの組合せを設定し、設定した組合せ毎に、相関値を計算する工程。
（ｃ）画像ブロックの組合せ毎に計算された相関値を用いて、Ａ画像上の画像ブロックに対して、当該画像ブロックからＢ画像上の画像ブロックへの相関係数の大きい順に第１の順位を付与し、Ｂ画像上の画像ブロックに対して、当該画像ブロックからＡ画像上の画像ブロックへの相関係数の大きい順に第２の順位を付与する工程。
（ｄ）画像ブロックの組合せ毎に、第１の順位と第２の順位との合計を計算する工程。
（ｅ）同じ画像ブロックを含む組合せが複数存在しないように画像ブロックの組合せを選択し、選択した組合せ毎に、当該組合せと、それに隣接する別の選択した組合せとの距離に応じてペナルティを付与する工程。
（ｆ）選択した組合せそれぞれの合計及びペナルティを積算する工程。
（ｇ）積算値が最も小さくなる画像ブロックの組合せを特定し、特定した画像ブロックの組合せにおいては、画像ブロックは一致すると判定する工程。【０００７】
上記特許文献１に開示されたステレオマッチング処理によれば、別の画像の画像ブロックと一致していると予想される画像ブロック同士の距離が大きくなるほど大きなペナルティが加えられる。このため、オクルージョン領域を含む画像ブロックが、対応しない画像ブロックに一致していると判断される事態が回避される。上記特許文献１に開示されたステレオマッチング処理によれば、マッチング精度の低下が抑制されると考えられる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第３０２７９９５号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上記特許文献１に開示されたステレオマッチング処理では、別の画像の画像ブロックと一致していると予想される画像ブロック同士の距離が大きくなるほどペナルティも大きくなる。このため、オクルージョン領域が大きくなるほど、一方の画像ブロックと他方の画像ブロックとが一致すると判定される組が少なくなってしまう。このような場合は、却って、マッチング精度が低下してしまう。【００１０】
本発明の目的の一例は、上記問題を解消し、ペア画像のステレオマッチング処理において、オクルージョン領域が大きくなった場合であっても、マッチング精度の低下を抑制し得る、画像処理装置、画像処理方法、及びコンピュータ読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、本発明の一側面における画像処理装置は、
対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、画像分割部と、
設定された画像ブロックの組毎に、相関値を算出する、相関値算出部と、
設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、係数設定部と、
前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、積算相関値算出部と、
前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、画像ブロック判定部と、
を備えている、ことを特徴とする。【００１２】
また、上記目的を達成するため、本発明の一側面における画像処理方法は、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、
（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を有している、ことを特徴とする。【００１３】
更に、上記目的を達成するため、本発明の一側面におけるコンピュータ読み取り可能な記録媒体は、
コンピュータに、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、
（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を実行させる命令を含む、プログラムを記録していることを特徴とする。
【発明の効果】
【００１４】
以上のように、本発明によれば、ペア画像のステレオマッチング処理において、オクルージョン領域が大きくなった場合であっても、マッチング精度の低下を抑制することができる。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の実施の形態における画像処理装置の概略構成を示すブロック図である。
【図２】図２は、本発明の実施の形態における画像処理装置の具体的構成を示すブロック図である。
【図３】図３は、本発明の実施の形態において分割されたペア画像の一例を示す図である。
【図４】図４は、本発明の実施の形態において設定される画像ブロックの組の一例を説明する図である。
【図５】図５は、本発明の実施の形態における係数の設定処理を説明するための説明図である。
【図６】図６は、本発明の実施の形態における係数の設定処理による効果を説明するための図である。
【図７】図７は、本発明の実施の形態における画像処理装置の動作を示すフロー図である。
【図８】図８は、本発明の実施の形態における画像処理装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１６】
（実施の形態）
以下、本発明の実施の形態における、画像処理装置、画像処理方法、及びプログラムについて、図１〜図８を参照しながら説明する。
【００１７】
［装置構造］
最初に、本実施の形態における画像処理装置の構成について図１を用いて説明する。図１は、本発明の実施の形態における画像処理装置の概略構成を示すブロック図である。
【００１８】
図１に示すように、本実施の形態における画像処理装置１００は、画像分割部１０と、相関値算出部２０と、係数設定部３０と、積算相関値算出部４０と、画像ブロック判定部５０とを備えている。
【００１９】
画像分割部１０は、対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割する。また、画像分割部１０は、２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する。
【００２０】
相関値算出部２０は、設定された画像ブロックの組毎に、相関値を算出する。また、係数設定部３０は、設定された複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築する。更に、係数設定部３０は、選択した画像ブロックの組毎に、当該組と当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との距離を求める。そして、係数設定部３０は、選択した画像ブロックの組毎に、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する。
【００２１】
積算相関値算出部４０は、組集合それぞれにおいて、各組集合を構成する画像ブロックの組毎に、相関値に第１の係数を乗算して乗算値を求め、更に、求めた乗算値を積算して、積算相関値を算出する。
【００２２】
画像ブロック判定部５０は、積算相関値が最も小さくなる組集合を特定する。更に、画像ブロック判定部５０は、特定した組集合を構成する画像ブロックの組それぞれにおいては、組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する。
【００２３】
このように本実施の形態では、別の画像の画像ブロックと一致していると予想される画像ブロック同士の距離が大きくなるほど値が小さくなる、第１の係数が設定される。また、第１の係数の上限は１であり、その変動幅は抑えられている。そして、一致判定を行なうための積算相関値は、相関値と第１の係数との積を積算することによって求められている。このため、本実施の形態では、オクルージョン領域が大きくなった場合に、一方の画像ブロックと他方の画像ブロックとが一致すると判定される組が少なくなる事態が回避されるので、マッチング精度の低下が抑制されることになる。
【００２４】
続いて、図２を用いて、本発明の実施の形態における画像処理の構成及び機能について更に具体的に説明する。図２は、本発明の実施の形態における画像処理装置の具体的構成を示すブロック図である。
【００２５】
まず、本実施の形態では、画像処理装置１００は、ステレオマッチング処理を行なう装置である。処理対象となる２つの画像は、異なる角度から同一対象を撮影して得られたペア画像、具体的には、人工衛星又は航空機等から撮影されたペア画像である。
【００２６】
また、図２に示すように、本実施の形態では、画像処理装置１００は、図１に示した、画像分割部１０、相関値算出部２０、係数設定部３０、積算相関値算出部４０、及び画像ブロック判定部５０に加えて、更に、画像取得部６０を備えている。
【００２７】
画像取得部６０は、処理対象となるペア画像を取得する。具体的には、画像取得部６０は、ネットワーク等を介して送信されてきたペア画像の各画像データを取得し、取得した各画像データを画像分割部１０に入力する。また、画像取得部６０は、ペア画像それぞれのエピポーラ線が水平方向において一致しているかどうかを判定し、一致していない場合は、一方又は両方の画像に対して、回転および射影変換のうち少なくとも１つを行なって、エピポーラ線が一致するように補正を実行する。
【００２８】
画像分割部１０は、本実施の形態では、図３に示すように、ペア画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割する。図３は、本発明の実施の形態において分割されたペア画像の一例を示す図である。
【００２９】
具体的には、図３の例では、ペア画像は、画像２０１と画像２０２とで構成されている。そして、図３に示すように、画像分割部１０は、画像２０１及び画像２０２それぞれを、予め設定された大きさの矩形の画像ブロックに分割する。これにより、画像ブロックは、画像の水平方向及び垂直方向に沿って配列される。
【００３０】
また、画像分割部１０は、本実施の形態では、一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出する。そして、画像分割部１０は、選出した画像ブロック同士を組み合せて、画像ブロックの組を設定し、設定した画像ブロックの組を、相関値算出部２０に入力する。
【００３１】
具体的には、上述したように、本実施の形態では、画像取得部６０によって、ペア画像それぞれのエピポーラ線は水辺方向において一致している。従って、図４に示すように、画像分割部１０は、行数が一致する画像ブロック同士を組み合せて、画像ブロックの組を設定する。図４は、本発明の実施の形態において設定される画像ブロックの組の一例を説明する図である。
【００３２】
図４の例では、画像分割部１０は、まず、画像２０１及び画像２０２それぞれの１行目から選出した画像ブロックを用いて、画像ブロックの組を設定する。つまり、画像分割部１０は、画像２０１の１行目の全画像ブロックと画像２０２の１行目の全画像ブロックとで得られる、全ての組合せを、画像ブロックの組として設定する。例えば、画像ブロック２０３は、画像ブロック２０４に加えて、画像ブロック２０５〜画像ブロック２０９それぞれとも組合せられる。
【００３３】
続いて、画像分割部１０は、画像２０１及び画像２０２それぞれの２行目以降についても同様に、画像２０１の画像ブロックと画像２０２の画像ブロックとを組み合せて、画像ブロックの組を設定する。そして、画像分割部１０は、このようにして設定した各画像ブロックの組を相関値算出部２０に入力する。
【００３４】
相関値算出部２０は、本実施の形態では、入力された画像ブロックの組毎に、例えば、既存の算出手法を利用して、相関値を算出する。既存の算出手法としては、輝度差の和（ＳＡＤ：Sum of Absolute Difference）を利用した算出手法、輝度差の２乗和（ＳＳＤ：Sum of Squared Difference）を利用した算出手法、正規化相互相関（ＮＣＣ：Normalized Cross-Correlation）を利用した算出手法等が挙げられる。なお、本実施の形態では、相関値の算出手法は特に限定されるものではなく、新たに開発された算出方法が採用されても良い。
【００３５】
係数設定部３０は、上述したように、設定された複数の画像ブロックの組の中から、幾つか画像ブロックの組みを選択し、選択した組毎に、第１の係数を設定する。ここで、図５を用いて、係数設定部３０による係数設定処理について具体的に説明する。図５は、本発明の実施の形態における係数の設定処理を説明するための説明図である。図５において、円形の各図形は、設定された画像ブロックの組を示し、更に、塗り潰された図形は、選択された組を示している。
【００３６】
具体的には、図５に示された各組は、ペア画像の一方の画像の特定の行の複数の画像ブロックと、他方の画像の対応する行の複数の画像ブロックとで構成されている。図５において「ｙ」は、一方の画像の画像ブロックの特定の行における位置を示しており、「ｘ」は、他方の画像の画像ブロックの対応する行における位置を示している。ｘ及びｙは、水平方向において左端が「０」になるように設定されている。
【００３７】
そして、図５の例において、例えば、第１の係数の設定対象が組Ｂ（４，８）であるとすると、係数設定部３０は、例えば、下記の数１を用いて、組Ｂと組Ｂの画像ブロックに水平方向において隣接する画像ブロックを含む組Ａ（３，４）との距離Ｄを算出する。なお、数１において、ｘ及びｙは、第１の係数の設定対象の組の各画像ブロックの位置を示しており、ｊｘ及びｊｙは、水平方向において隣接する画像ブロックを含む組の位置を示している。また、αは任意の整数である。
【００３８】
【数１】
2017130546.tif 000003
【００３９】
また、係数設定部３０は、例えば、以下の数２を用いて、第１の係数を設定することができる。以下の数２において、第１の係数は、ジャンプ係数Ｗｊｕｍｐと表記されている。また、以下の数２から分かるように、Ｗｊｕｍｐの上限は１となり、Ｄが大きくなるほど、Ｗｊｕｍｐの値は小さくなる。なお、βは任意の整数である。
【００４０】
【数２】
2017130546.tif 000004
【００４１】
また、本実施の形態では、係数設定部３０は、ジャンプ係数Ｗｊｕｍｐに加えて、第２の係数も設定する。このとき、係数設定部３０は、設定対象となる画像ブロックの組の相関値が閾値Ｔｊｕｍｐ未満であるか、閾値Ｔｊｕｍｐ以上であるかによって、異なる第２の係数を設定する。
【００４２】
具体的には、係数設定部３０は、相関値が閾値Ｔｊｕｍｐ未満である場合は、以下の数３を用いて第２の係数を設定する。更に、係数設定部３０は、相関値が閾値Ｔｊｕｍｐ以上である場合は、数４を用いて第２の係数を設定する。なお、以下の数３及び数４において、第２の係数はローコスト係数Ｗｌｏｗｃｏｓｔと表記されている。α１及びα２は任意の整数である。
【００４３】
【数３】
2017130546.tif 000005
【００４４】
【数４】
2017130546.tif 000006
【００４５】
積算相関値算出部４０は、本実施の形態では、組集合それぞれにおいて、各組集合を構成する画像ブロックの組毎に、相関値に、ジャンプ係数Ｗｊｕｍｐ及びローコスト係数Ｗｌｏｗｃｏｓｔを乗算して乗算値を求める。具体的には、選択された各組の相関値をＲｉ、選択された組の個数をＴとすると、積算相関値算出部４０は、下記の数５を用いて、積算相関値ＲＡを算出することができる。
【００４６】
【数５】
2017130546.tif 000007
【００４７】
図５に示したように、本実施の形態では、左側に隣接する画像ブロックを含む組に対してのみ距離Ｄが算出される。よって、図５において、原点（左下）に最も近い組については、距離が算出されないので、ジャンプ係数Ｗｊｕｍｐ及びローコスト係数Ｗｌｏｗｃｏｓｔも算出されない。よって、上記数６による積算相関値ＲＡの算出において、原点（左下）に最も近い組については相関値Ｒ０のみが積算されることになる。
【００４８】
このように、本実施の形態では、画像ブロックの組の相関値が高い場合、つまり両画像ブロックが同一である可能性が低い場合は、ローコスト係数Ｗｌｏｗｃｏｓｔにより、ジャンプ係数Ｗｊｕｍｐの値が大きくなるようローコスト係数Ｗｌｏｗｃｏｓｔの係数α１を決定することにより、結果、相関値がより高くなるように、相関値が補正される。反対に、画像ブロックの組の相関値が低い場合、つまり両画像ブロックが同一である可能性が高い場合は、ローコスト係数Ｗｌｏｗｃｏｓｔにより、ジャンプ係数Ｗｊｕｍｐの値が小さくなるようローコスト係数Ｗｌｏｗｃｏｓｔの係数α2を決定することにより、結果、相関値がより低くなるように、相関値が補正される。このため、図６に示す問題の発生が抑制される。
【００４９】
図６は、本発明の実施の形態における係数の設定処理による効果を説明するための図である。図６においても、円形の各図形は、設定された画像ブロックの組を示し、更に、塗り潰された図形は、選択された組を示している。また、各組は、ペア画像の一方の画像の特定の行の複数の画像ブロックと、他方の画像の対応する行の複数の画像ブロックとで構成されている。
【００５０】
図６の例では、ペア画像を構成する一方の画像と他方の画像とが一致しているとする。このような状態では、水平方向における位置が同じ画像ブロック同士の組によって構築された組集合において、積算相関値は最小となる。つまり、図６に示すように、ハッチングが施された組が選択されると、積算相関値は最小となる。
【００５１】
ところで、図６の状況においては、ハッチングが施された組の相関値は低い値となるが、選択される組の個数は増えるため、組ａ〜組ｉの相関値をそのまま積算すると、得られた積算値は組ｊの相関値よりも高くなる可能性がある。従って、組ａ〜組ｊを選択した場合の積算相関値よりも、組ｋと組ｊとを選択した場合の積算相関値の方が低くなってしまうことがあり、この場合、誤って、組ｋと組ｊとにおいて画像ブロック同士が一致していると判定されてしまう。
【００５２】
これに対して、本実施の形態では、画像ブロックの組の相関値が高い場合、つまり両画像ブロックが同一である可能性が低い場合は、ローコスト係数Ｗｌｏｗｃｏｓｔにより、ジャンプ係数Ｗｊｕｍｐの値が大きくなる。このため、組ｋと組ｊとが選択される事態は回避され、誤った判定が行なわれる事態は回避される。
【００５３】
更に、係数設定部３０は、設定対象となる画像ブロックの組と、この組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、視差が一致する場合は、設定対象となる画像ブロックの組のジャンプ係数Ｗｊｕｍｐを、値が小さくなるように補正することができる。
【００５４】
具体的には、図６の例においてジャンプ係数Ｗｊｕｍｐの設定対象が組ｉであるとすると、組ｉは、組ｉの画像ブロックに水平方向において隣接する画像ブロックを含む組ｈとの間で、視差が同一の関係となる。つまり、２つの組が、図６に示すマトリックスにおいて斜め４５度の位置で隣り合う場合に、２つの組の視差が同一の関係となる。このような場合において、係数設定部３０は、例えば、下記の数６を用いて、ジャンプ係数Ｗｊｕｍｐを補正することができる。なお、下記の数６において、ｂは任意の整数である。
【００５５】
【数６】
2017130546.tif 000008
【００５６】
例えば、ペア画像の被写体が、ビルの屋上、道路といった特徴が少ない面を有しているとする。このような状況では、図６において、組ｊの相関値が組ｌの相関値よりも大きくなり、組ｊの代わりに組ｌが選択されてしまう可能性がある。これに対して、上記数６を用いる場合は、組ｊのジャンプ係数Ｗｊｕｍｐが補正されて小さくなるので、組ｌが誤って選択される事態は回避される。
【００５７】
［装置動作］
次に、本発明の実施の形態における画像処理装置１００の動作について図７を用いて説明する。図７は、本発明の実施の形態における画像処理装置の動作を示すフロー図である。以下の説明においては、適宜図１〜図６を参酌する。また、本実施の形態では、画像処理装置１００を動作させることによって、画像処理方法が実施される。よって、本実施の形態における画像処理方法の説明は、以下の画像処理装置１００の動作説明に代える。
【００５８】
図７に示すように、画像処理装置１００においては、最初に、画像取得部６０が、ネットワーク等を介して送信されてきたペア画像を取得する（ステップＡ１）。更に、画像取得部６０は、ペア画像それぞれのエピポーラ線が水平方向において一致するように、一方又は両方の画像を補正する（ステップＡ２）。
【００５９】
次に、画像分割部１０は、ペア画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、画像ブロックを生成する（ステップＡ３）。
【００６０】
次に、画像分割部１０は、一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、画像ブロックの組を設定する（ステップＡ４）。具体的には、画像分割部１０は、行数が一致する画像ブロック同士を組み合せて、画像ブロックの組を設定する。
【００６１】
次に、相関値算出部２０は、入力された画像ブロックの組毎に、相関値を算出する（ステップＡ５）。次に、係数設定部３０は、設定された複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築する（ステップＡ６）。更に、係数設定部３０は、各組集合において、選択した組毎に、ジャンプ係数Ｗｊｕｍｐと、ローコスト係数Ｗｌｏｗｃｏｓｔとを設定する（ステップＡ７）。また、係数設定部３０は、必要に応じてジャンプ係数Ｗｊｕｍｐを補正する。
【００６２】
次に、積算相関値算出部４０は、各組集合において、画像ブロックの組毎に、相関値に、ジャンプ係数Ｗｊｕｍｐ及びローコスト係数Ｗｌｏｗｃｏｓｔを乗算して乗算値を求め、求めた乗算値を積算して、積算相関値を算出する（ステップＡ８）。
【００６３】
その後、画像ブロック判定部５０は、積算相関値が最も小さくなる組集合を特定し、特定した組集合を構成する画像ブロックの組において、一方の画像ブロックと他方の画像ブロックとは一致していると判定する（ステップＡ９）。その後、画像ブロック判定部５０は、一致していると判定した画像ブロックの組を出力する。
【００６４】
このように、ステップＡ１〜Ａ９の実行により、ペア画像において一致する画像ブロックの組が特定される。その後、画像処理装置１００は、一致する画像ブロック間で対応点を特定し、特定した対応点間の視差を用いて、三角測量を実行する。更に、画像処理装置１００は、三角測量の結果に基づいて、被写体の奥行き及び形状を特定する。
【００６５】
［実施の形態における効果］
このように、本実施の形態では、ジャンプ係数Ｗｊｕｍｐが乗算された相関値を用いて、積算相関値が算出されるので、オクルージョン領域が大きくなった場合に、一致すると判定される画像ブロックの組が少なくなる事態が回避される。更に、本実施の形態では、相関値には、ローコスト係数Ｗｌｏｗｃｏｓｔも乗算されるので、画像ブロック同士が一致していない組が誤って一致していると判定される事態が抑制される。本実施の形態によれば、マッチング精度の低下が抑制される。
【００６６】
［プログラム］
本実施の形態におけるプログラムは、コンピュータに、図７に示すステップＡ１〜Ａ９を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における画像処理装置１００と画像処理方法とを実現することができる。この場合、コンピュータのＣＰＵ（Central Processing Unit）は、画像分割部１０、相関値算出部２０、係数設定部３０、積算相関値算出部４０、画像ブロック判定部５０、及び画像取得部６０として機能し、処理を行なう。
【００６７】
なお、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、画像分割部１０、相関値算出部２０、係数設定部３０、積算相関値算出部４０、画像ブロック判定部５０、及び画像取得部６０のいずれかとして機能しても良い。
【００６８】
ここで、本実施の形態におけるプログラムを実行することによって、画像処理装置１００を実現するコンピュータについて図８を用いて説明する。図８は、本発明の実施の形態における画像処理装置を実現するコンピュータの一例を示すブロック図である。
【００６９】
図８に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００７０】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００７１】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００７２】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００７３】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体が挙げられる。
【００７４】
なお、本実施の形態における画像処理装置１００は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、画像処理装置１００は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【００７５】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１５）によって表現することができるが、以下の記載に限定されるものではない。
【００７６】
（付記１）
対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、画像分割部と、
設定された画像ブロックの組毎に、相関値を算出する、相関値算出部と、
設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、係数設定部と、
前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、積算相関値算出部と、
前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、画像ブロック判定部と、
を備えている、ことを特徴とする画像処理装置。
【００７７】
（付記２）
前記係数設定部が、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記積算相関値算出部が、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
付記１に記載の画像処理装置。
【００７８】
（付記３）
前記係数設定部が、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
付記１または２に記載の画像処理装置。
【００７９】
（付記４）
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、付記１〜３のいずれかに記載の画像処理装置。
【００８０】
（付記５）
前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、画像取得部を更に備え、
前記画像分割部が、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
付記１〜４のいずれかに記載の画像処理装置。
【００８１】
（付記６）
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を有している、ことを特徴とする画像処理方法。
【００８２】
（付記７）
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
付記６に記載の画像処理方法。
【００８３】
（付記８）
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
付記６または７に記載の画像処理方法。
【００８４】
（付記９）
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、付記６〜８のいずれかに記載の画像処理方法。
【００８５】
（付記１０）
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に有し、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
付記６〜９のいずれかに記載の画像処理方法。
【００８６】
（付記１１）
コンピュータに、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を実行させる命令を含む、プログラムを記録しているコンピュータ読み取り可能な記録媒体。
【００８７】
（付記１２）
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
付記１１に記載のコンピュータ読み取り可能な記録媒体。
【００８８】
（付記１３）
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
付記１１または１２に記載のコンピュータ読み取り可能な記録媒体。
【００８９】
（付記１４）
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、付記１１〜１３のいずれかに記載のコンピュータ読み取り可能な記録媒体。
【００９０】
（付記１５）
前記プログラムが、前記コンピュータに、
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを実行させる、命令を更に含み、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
付記１１〜１４のいずれかに記載のコンピュータ読み取り可能な記録媒体。
【００９１】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【００９２】
この出願は、２０１６年１月２９日に出願された日本出願特願２０１６−０１６５２２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００９３】
以上のように、本発明によれば、ペア画像のステレオマッチング処理において、オクルージョン領域が大きくなった場合であっても、マッチング精度の低下を抑制することができる。本発明は、例えば、ステレオマッチングが必要な分野に有用である。
【符号の説明】
【００９４】
１０  画像分割部
２０  相関値算出部
３０  係数設定部
４０  積算相関値算出部
５０  画像ブロック判定部
６０  画像取得部
１００  画像処理装置
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
【図１】
2017130546.tif 000009
【図２】
2017130546.tif 000010
【図３】
2017130546.tif 000011
【図４】
2017130546.tif 000012
【図５】
2017130546.tif 000013
【図６】
2017130546.tif 000014
【図７】
2017130546.tif 000015
【図８】
2017130546.tif 000016
【手続補正書】
【提出日】平成30年7月27日(2018.7.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、画像分割部と、
設定された画像ブロックの組毎に、相関値を算出する、相関値算出部と、
設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、係数設定部と、
前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、積算相関値算出部と、
前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、画像ブロック判定部と、
を備えている、ことを特徴とする画像処理装置。
【請求項２】
前記係数設定部が、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記積算相関値算出部が、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
請求項１に記載の画像処理装置。
【請求項３】
前記係数設定部が、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
請求項１または２に記載の画像処理装置。
【請求項４】
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、請求項１〜３のいずれかに記載の画像処理装置。
【請求項５】
前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、画像取得部を更に備え、
前記画像分割部が、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
請求項１〜４のいずれかに記載の画像処理装置。
【請求項６】
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を有している、ことを特徴とする画像処理方法。
【請求項７】
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
請求項６に記載の画像処理方法。
【請求項８】
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
請求項６または７に記載の画像処理方法。
【請求項９】
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、請求項６〜８のいずれかに記載の画像処理方法。
【請求項１０】
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に有し、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
請求項６〜９のいずれかに記載の画像処理方法。
【請求項１１】
コンピュータに、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を実行させる、プログラム。
【請求項１２】
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
請求項１１に記載のプログラム。
【請求項１３】
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
請求項１１または１２に記載のプログラム。
【請求項１４】
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、請求項１１〜１３のいずれかに記載のプログラム。
【請求項１５】
前記コンピュータに、
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に実行させ、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
請求項１１〜１４のいずれかに記載のプログラム。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、２つの画像を用いた画像処理を行なうための、画像処理装置、画像処理方法、及びこれらを実現するためのプログラムに関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、
（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を実行させる、ことを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００８６
【補正方法】変更
【補正の内容】
【００８６】
（付記１１）
コンピュータに、
（ａ）対象となる２つの画像それぞれを、設定されたサイズの画像ブロックに分割し、前記２つの画像の一方の画像から得られた画像ブロックの一つと、他方の画像から得られた画像ブロックの一つとを組み合せて、複数の画像ブロックの組を設定する、ステップと、（ｂ）設定された画像ブロックの組毎に、相関値を算出する、ステップと、
（ｃ）設定された前記複数の画像ブロックの組の中から、同じ画像ブロックを含む組が複数存在しないように画像ブロックの組を選択して、組集合を構築し、更に、選択した前記画像ブロックの組毎に、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む、別の選択した組との、距離を求め、求めた距離が大きいほど値が小さくなり、且つ、上限値が１となる、第１の係数を設定する、ステップと、
（ｄ）前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に前記第１の係数を乗算して乗算値を求め、更に、求められた前記乗算値を積算して、積算相関値を算出する、ステップと、
（ｅ）前記積算相関値が最も小さくなる前記組集合を特定し、特定した前記組集合を構成する画像ブロックの組それぞれにおいては、当該組を構成する一方の画像ブロックと他方の画像ブロックとは一致していると判定する、ステップと、
を実行させる、プログラム。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００８７
【補正方法】変更
【補正の内容】
【００８７】
（付記１２）
前記（ｃ）のステップにおいて、更に、当該組の相関値が閾値未満である場合に、前記第１の係数を大きくする第２の係数を設定し、当該組の相関値が閾値以上である場合に、前記第１の係数を小さくする第２の係数を設定し、
前記（ｄ）のステップにおいて、前記組集合それぞれにおいて、当該組集合を構成する画像ブロックの組毎に、前記相関値に、前記第１の係数及び前記第２の係数を乗算して乗算値を求める、
付記１１に記載のプログラム。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００８８
【補正方法】変更
【補正の内容】
【００８８】
（付記１３）
前記（ｃ）のステップにおいて、当該組と、当該組の画像ブロックに設定方向において隣接する画像ブロックを含む別の選択した組との、視差が一致する場合に、当該組の前記第１の係数を値が小さくなるように補正する、
付記１１または１２に記載のプログラム。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００８９
【補正方法】変更
【補正の内容】
【００８９】
（付記１４）
前記２つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、付記１１〜１３のいずれかに記載のプログラム。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００９０
【補正方法】変更
【補正の内容】
【００９０】
（付記１５）
前記コンピュータに、
（ｆ）前記２つの画像を取得し、取得した前記２つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記２つの画像の一方または両方に対して、回転および射影変換のうち少なくとも１つを行なって、前記２つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に実行させ、
前記（ａ）のステップにおいて、前記２つの画像それぞれを、垂直方向及び水平方向に沿って、水平方向における行と垂直方向における列とが形成されるように、タイル状に分割し、
前記一方の画像から得られた画像ブロックの一つと、前記他方の画像から得られた画像ブロックの一つとを、両者が位置している行が互いに対応するように選出し、選出した画像ブロック同士を組み合せて、前記画像ブロックの組を設定する、
付記１１〜１４のいずれかに記載のプログラム。
【国際調査報告】
2017130546.tif 000017
2017130546.tif 000018
2017130546.tif 000019
2017130546.tif 000020