(58)【調査した分野】(Int.Cl.,DB名)
対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、第1画像抽出部と、
前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、第2画像抽出部と、
設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する第1相関値算出部と、
設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する第2相関値算出部と、
前記第1画像ブロックの組それぞれの相関値及び前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、対応画素抽出部と、
を備えている、ことを特徴とする画像処理装置。
前記2つの画像を取得し、取得した前記2つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記2つの画像の一方または両方に対して、回転及び射影変換のうち少なくとも1つを行なって、前記2つの画像それぞれのエピポーラ線を水平方向において一致させる、画像取得部を更に備え、
前記第1画像抽出部は、前記画像取得部によってエピポーラ線が一致された前記2つの画像それぞれから、前記第1画像ブロックの前記長辺が前記エピポーラ線に直交するように前記複数の第1画像ブロックを抽出し、
前記第2画像抽出部は、前記画像取得部によってエピポーラ線が一致された前記2つの画像それぞれから、前記複数の第2画像ブロックを抽出する、
請求項1または2に記載の画像処理装置。
前記第1画像抽出部は、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第1画像ブロックの一つと、前記他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、前記複数の第1画像ブロックの組を設定し、
前記第2画像抽出部は、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、前記複数の第2画像ブロックの組を設定する、
請求項1から3のいずれかに記載の画像処理装置。
前記対応画素抽出部は、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、前記複合相関値として算出する、
請求項5に記載の画像処理装置。
前記対応画素抽出部は、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、前記複合相関値を算出する、
請求項5に記載の画像処理装置。
(a)対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、ステップと、
(b)前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、ステップと、
(c)前記(a)のステップで設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(d)前記(b)のステップで設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(e)前記(c)のステップで算出された前記第1画像ブロックの組それぞれの相関値及び前記(d)のステップで算出された前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、ステップと、
を有する、ことを特徴とする画像処理方法。
(f)前記2つの画像を取得し、取得した前記2つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記2つの画像の一方または両方に対して、回転及び射影変換のうち少なくとも1つを行なって、前記2つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に有し、
前記(a)のステップでは、前記(f)のステップによってエピポーラ線が一致された前記2つの画像それぞれから、前記第1画像ブロックの前記長辺が前記エピポーラ線に直交するように前記複数の第1画像ブロックを抽出し、
前記(b)のステップでは、前記(f)のステップによってエピポーラ線が一致された前記2つの画像それぞれから、前記複数の第2画像ブロックを抽出する、
請求項9または10に記載の画像処理方法。
前記(a)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第1画像ブロックの一つと、前記他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、前記複数の第1画像ブロックの組を設定し、
前記(b)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、前記複数の第2画像ブロックの組を設定する、
請求項9から11のいずれかに記載の画像処理方法。
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、前記複合相関値として算出する、
請求項13に記載の画像処理方法。
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、前記複合相関値を算出する、
請求項13に記載の画像処理方法。
前記(a)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第1画像ブロックの一つと、前記他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、前記複数の第1画像ブロックの組を設定し、
前記(b)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、前記複数の第2画像ブロックの組を設定する、
請求項17から19のいずれかに記載のプログラム。
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、前記複合相関値として算出する、
請求項21に記載のプログラム。
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、前記複合相関値を算出する、
請求項21に記載のプログラム。
【発明の概要】
【発明が解決しようとする課題】
【0014】
ところで、ステレオマッチング処理においては、ペア画像を撮影する2台のカメラそれぞれの撮影角度が異なる。これにより、視差が生じ、同一の撮影対象物の形状及び位置がペア画像間において異なる。以下、ペア画像間において生じる視差の影響について図面を用いて簡単に説明する。
【0015】
図8は、左右に配置した2台のカメラによって上空から撮影したペア画像の一例を示す図である。
図8には、左に配置したカメラで撮影した画像1と、右に配置したカメラで撮影した画像2とが示されている。
【0016】
画像1,2にはそれぞれ、撮影対象物3,4,5が示されている。なお、
図8においては、各撮影対象物を簡略化して示している。撮影対象物3はアパートであり、撮影対象物4,5はそれぞれ、地面G上に停車している自動車である。以下、撮影対象物3をアパート3と記載し、撮影対象物4,5をそれぞれ、自動車4,5と記載する。
【0017】
また、
図8には、ステレオマッチング処理で抽出される正方形の画像ブロック6a,6b,7a,7bが示されている。画像ブロック6aの中心画素と、画像ブロック6bの中心画素とは、アパート3の屋上3aの同じ位置に対応する。画像ブロック7aの中心画素と、画像ブロック7bの中心画素とは、屋上3aの同じ位置に対応する。したがって、ステレオマッチング処理では、画像ブロック6aと画像ブロック6bとが互いに最も類似する画像ブロックであると判定されることが好ましく、画像ブロック7aと画像ブロック7bとが互いに最も類似する画像ブロックであると判定されることが好ましい。
【0018】
図8を参照して、ペア画像間において生じる視差は、撮影対象物の高さ方向における位置によって異なる。
図8の例では、地面Gと、アパート3の屋上3aとでは、視差が大きく異なる。このように撮影対象物の位置によって視差が異なることによって、
図8に示すように、画像1,2間において、アパート3の側面3bの形状が大きく異なる。また、画像1,2間において、屋上3aに対する自動車4,5の位置が大きく異なる。
【0019】
上記のように、画像1,2間において撮影対象物の形状及び位置が異なることによって、例えば、以下のような現象が生じる。まず、屋上3aの右端近傍の画像ブロック6a,6bに注目すると、画像ブロック6a内に示される側面3bの形状と、画像ブロック6b内に示される側面3bの形状との間で大きな差が生じている。このため、画像ブロック6a内の各画素の輝度と、画像ブロック6b内の各画素の輝度との間で大きな差が生じる。これにより、ステレオマッチング処理において、画像ブロック6aと画像ブロック6bとが、互いに最も類似する画像ブロックであると判定される確率が低くなる。その結果、適切な対応点を特定することが難しくなる。
【0020】
一方、画像ブロック7a,7bに注目すると、画像ブロック7aには自動車4,5の一部が含まれているが、画像ブロック7bには自動車4,5が含まれていない。このため、画像ブロック7a内の各画素の輝度と、画像ブロック7b内の各画素の輝度との間で大きな差が生じる。これにより、ステレオマッチング処理において、画像ブロック7aと画像ブロック7bとが、互いに最も類似する画像ブロックであると判定される確率が低くなる。その結果、適切な対応点を特定することが難しくなる。
【0021】
ここで、例えば、画像ブロック6a,6b,7a,7bの代わりに、特許文献6に記載されているような縦長の画像ブロックを用いたとする。この場合、
図9に示すように、屋上3aの右端近傍において、画像ブロック6c,6d内に含まれる側面3bの領域を小さくすることができる。これにより、ステレオマッチング処理において、側面3bの形状の変化の影響を小さくすることができると考えられる。しかしながら、自動車4,5の位置の変化による影響を小さくすることは難しい。一方、図示は省略するが、画像ブロック6a,6b,7a,7bの代わりに、横長の画像ブロックを用いた場合には、自動車4,5の位置の変化による影響を小さくすることができると考えられる。しかしながら、側面3bの形状の変化の影響を小さくすることは難しい。画像ブロック6a,6b,7a,7bの代わりに、十字形状の画像ブロックを用いたとしても、側面3bの形状変化及び自動車4,5の位置変化の影響を十分に小さくすることは難しい。
【0022】
なお、上述したように、特許文献6には、縦長の画像ブロックと横長の画像ブロックとを使い分けることが記載されている。しかしながら、ペア画像間における撮影対象物の形状変化及び位置変化を正確に予測または検出することは難しい。したがって、ペア画像間における撮影対象物の形状変化及び位置変化に応じて、縦長の画像ブロックと横長の画像ブロックを適切に使い分けることは難しい。
【0023】
本発明の目的の一例は、上記問題を解消し、ペア画像を対象としたマッチング処理において判定精度の向上を図り得る、画像処理装置、画像処理方法、及び
プログラムを提供することにある。
【課題を解決するための手段】
【0024】
上記目的を達成するため、本発明の一側面における画像処理装置は、
対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、第1画像抽出部と、
前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、第2画像抽出部と、
設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する第1相関値算出部と、
設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する第2相関値算出部と、
前記第1画像ブロックの組それぞれの相関値及び前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、対応画素抽出部と、
を備えている、ことを特徴とする。
【0025】
また、上記目的を達成するため、本発明の一側面における画像処理方法は、
(a)対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、ステップと、
(b)前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、ステップと、
(c)前記(a)のステップで設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(d)前記(b)のステップで設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(e)前記(c)のステップで算出された前記第1画像ブロックの組それぞれの相関値及び前記(d)のステップで算出された前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、ステップと、
を有する、ことを特徴とする。
【0026】
更に、上記目的を達成するため、本発明の一側面における
プログラムは、
コンピュータに、
(a)対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、ステップと、
(b)前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、ステップと、
(c)前記(a)のステップで設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(d)前記(b)のステップで設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(e)前記(c)のステップで算出された前記第1画像ブロックの組それぞれの相関値及び前記(d)のステップで算出された前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、ステップと、
を実行させ
ることを特徴とする。
【発明の効果】
【0027】
以上のように本発明によれば、ペア画像を対象としたマッチング処理において判定精度の向上を図ることができる。
【発明を実施するための形態】
【0029】
(実施の形態)
以下、本発明の実施の形態における、画像処理装置、画像処理方法、及びプログラムについて、
図1〜
図9を参照しながら説明する。
【0030】
[装置構成]
最初に、
図1を用いて、本発明の実施の形態における画像処理装置の概略構成について説明する。
図1は、本発明の実施の形態における画像処理装置の概略構成を示すブロック図である。
【0031】
図1に示すように、本実施の形態における画像処理装置100は、2枚の画像を対象として画像処理を行なう装置であり、第1画像抽出部10aと、第2画像抽出部10bと、第1相関値算出部20aと、第2相関値算出部20bと、対応画素抽出部30とを備えている。
【0032】
第1画像抽出部10aは、対象となる2つの画像それぞれから、複数の画像ブロックを抽出する。本実施形態では、第1画像抽出部10aによって抽出される画像ブロックは、一対の長辺及び一対の短辺を有する長方形状の画像ブロックである。以下、第1画像抽出部10aによって抽出される複数の画像ブロックをそれぞれ、第1画像ブロックと記載する。第1画像抽出部10aは、2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する。
【0033】
第2画像抽出部10bは、対象となる上記2つの画像それぞれから、複数の画像ブロックを抽出する。本実施形態では、第2画像抽出部10bによって抽出される画像ブロックは、一対の長辺及び一対の短辺を有する長方形状の画像ブロックである。以下、第2画像抽出部10bによって抽出される複数の画像ブロックをそれぞれ、第2画像ブロックと記載する。第2画像抽出部10bは、2つの画像の一方の画像から抽出された第2画像ブロックの一つと、他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する。
【0034】
本実施形態では、第1画像抽出部10a及び第2画像抽出部10bによって、画素ごとに、その画素を共通の中心画素とする第1画像ブロック及び第2画像ブロックが抽出される。第1画像ブロックの一対の長辺と、その第1画像ブロックと共通の中心画素を有する第2画像ブロックの一対の長辺とは、互いに直交する。すなわち、本実施形態では、画素ごとに、その画素を共通の中心画素とするように、長方形状の第1画像ブロックと、その第1画像ブロックに直交する第2画像ブロックとが抽出される。
【0035】
第1相関値算出部20aは、第1画像抽出部10aによって設定された第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する。同様に、第2相関値算出部20bは、第2画像抽出部10bによって設定された第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する。第1相関値算出部20a及び第2相関値算出部20bによる相関値の算出方法については後述する。
【0036】
対応画素抽出部30は、第1画像ブロックの組それぞれの相関値及び第2画像ブロックの組それぞれの相関値に基づいて、上記2つの画像において互いに対応する画素(対応点)を抽出する。
【0037】
このように、
図1に示した構成では、2つの画像においてそれぞれ、画素ごとに、長方形状の第1画像ブロックと、その第1画像ブロックに直交する長方形状の第2画像ブロックとが抽出される。また、2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せることによって、複数の第1画像ブロックの組が設定される。また、2つの画像の一方の画像から抽出された第2画像ブロックの一つと、他方の画像から抽出された第2画像ブロックの一つとを組み合せることによって、複数の第2画像ブロックの組が設定される。そして、第1画像ブロックの組それぞれの相関値及び第2画像ブロックの組それぞれの相関値に基づいて、上記2つの画像において互いに対応する画素(対応点)が抽出される。
【0038】
すなわち、
図1に示した構成では、長方形状の第1画像ブロックに基づいて算出される相関値と、第1画像ブロックに直交するように設定された長方形状の第2画像ブロックに基づいて算出される相関値とを用いて、対応点を抽出することができる。これにより、
図8及び
図9で説明したように、2つの画像間において、撮影対象物の形状及び位置が大きく変化する場合でも、その変化の影響を十分に低減して、マッチング処理における判定精度を向上することができる。その結果、マッチング処理において適切な対応点を特定することができる。
【0039】
続いて、
図2を用いて、本発明の実施の形態における画像処理の構成及び機能について更に具体的に説明する。
図2は、本発明の実施の形態における画像処理装置の具体的構成を示すブロック図である。
【0040】
まず、本実施の形態では、画像処理装置100は、ステレオマッチング処理を行なう装置である。処理対象となる2つの画像は、異なる角度から同一対象を撮影して得られたペア画像、具体的には、人工衛星又は航空機等から撮影されたペア画像である。
【0041】
また、
図2に示すように、本実施の形態では、画像処理装置100は、
図1に示した、第1画像抽出部10a、第2画像抽出部10b、第1相関値算出部20a、第2相関値算出部20b及び対応画素抽出部30に加えて、更に、画像取得部40を備えている。
【0042】
画像取得部40は、処理対象となるペア画像を取得する。具体的には、画像取得部40は、ネットワーク等を介して送信されてきたペア画像の各画像データを取得し、取得した各画像データを第1画像抽出部10a及び第2画像抽出部10bにそれぞれ入力する。また、画像取得部40は、ペア画像それぞれのエピポーラ線が水平方向において一致しているかどうかを判定し、一致していない場合は、一方又は両方の画像に対して、回転及び射影変換のうち少なくとも1つを行なって、エピポーラ線が一致するように補正を実行する。そして、画像取得部40は、ペア画像を補正して得られた各画像データを、ペア画像の各画像データとして、第1画像抽出部10a及び第2画像抽出部10bにそれぞれ入力する。
【0043】
図3は、本発明の実施の形態において取得されたペア画像の一例を示す図である。
図3の例では、ペア画像は、画像201と画像202とで構成されている。なお、
図3においては、説明を分かりやすくするために、画像に含まれる各画素を大きく示している。したがって、実際には、各画像には、
図3に示す複数の画素よりも多くの画素が含まれていてもよい。また、図面が煩雑になることを避けるために、
図3においては、撮影対象物は示していない。
【0044】
図3に示すように、本実施の形態では、第1画像抽出部10aは、画像201,202それぞれにおいて、垂直方向(矢印Vで示す方向)及び水平方向(矢印Hで示す方向)に沿って、水平方向Hにおける行と垂直方向Vにおける列とを設定する。各行は、水平方向Hに並ぶ複数の画素によって構成されている。同様に、各列は、垂直方向Vに並ぶ複数の画素によって構成されている。
図3の例では、画像201,202それぞれにおいて、垂直方向Vに沿って20個の行が設定され、水平方向Hに沿って24個の列が設定されている。各行は、水平方向Hに並ぶ24個の画素によって構成され、各列は、垂直方向Vに並ぶ20個の画素によって構成されている。
【0045】
また、第1画像抽出部10aは、画像201,202それぞれから、複数の第1画像ブロックを抽出する。第1画像ブロックは、複数の画素によって構成される。本実施の形態では、第1画像抽出部10aは、画像201の画素ごとに、その画素を中心画素とする第1画像ブロックを抽出する。また、第1画像抽出部10aは、画像202の画素ごとに、その画素を中心画素とする第1画像ブロックを抽出する。したがって、第1画像抽出部10aは、例えば、画像201を構成する複数の画素と同数の第1画像ブロックを、画像201から抽出する。また、第1画像抽出部10aは、例えば、画像202を構成する複数の画素と同数の第1画像ブロックを、画像202から抽出する。
【0046】
図3においては、画像201から抽出された複数の第1画像ブロックのうちの一つの第1画像ブロック203が示され、画像202から抽出された複数の第1画像ブロックのうちの一つの第1画像ブロック204が示されている。
図3においては、第1画像ブロック203,204を構成する複数の画素にハッチングを付している。
図3の例では、第1画像ブロック203,204はそれぞれ長方形状を有し、垂直方向Vに沿う一対の長辺と、水平方向Hに沿う一対の短辺とを有している。本実施の形態では、第1画像ブロックは、21画素によって構成される。また、本実施の形態では、第1画像ブロックの一対の長辺は、エピポーラ線に直交する。
【0047】
なお、
図4を参照して、例えば、画像201内の最も外側に並ぶ複数の画素のうちの一つを中心画素として第1画像ブロックを抽出する際には、画像201内の画素のみによって第1画像ブロックを構成することはできない。この場合には、例えば、一定の輝度(例えば、零)を有する複数の画素(以下、仮想画素と記載する。)が、画像201を囲むように設けられていると仮定して第1画像ブロックを抽出し、後述の処理が行われる。
図4の例では、画像201内の14個の画素と、7個の仮想画素とによって、第1画像ブロック203aが構成される。詳細な説明は省略するが、画像202から抽出される第1画像ブロックについても同様である。また、画像201,202からそれぞれ抽出される第2画像ブロックについても同様である。
【0048】
更に、本実施の形態では、第1画像抽出部10aは、一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出する。そして、選出した第1画像ブロック同士を組み合せて、複数の第1画像ブロックの組を設定し、設定した複数の第1画像ブロックの組を、第1相関値算出部20aに入力する。例えば、
図3では、画像202の一つの行は、24画素によって構成されている。上述したように、第1画像ブロックは画素ごとに設定されるので、画像202の一つの行に対して24個の第1画像ブロックが設定される。したがって、
図3の例では、一方の画像201から抽出された任意の第1画像ブロックは、他方の画像202の対応する一つの行を構成する画素ごとに設定された24個の第1画像ブロックにそれぞれに組み合わされる。例えば、画像201から抽出された第1画像ブロックの中心画素が5行目に位置している場合には、その第1画像ブロックは、画像202の5行目の画素ごとに設定された24個の第1画像ブロックにそれぞれ組み合わされる。このようにして、本実施の形態では、画像201から抽出された第1画像ブロックごとに、24個の第1画像ブロックの組が設定される。すなわち、画像201を構成する全ての画素それぞれに対して、24個の第1画像ブロックの組が設定される。
【0049】
図5に示すように、本実施の形態では、第2画像抽出部10bは、第1画像抽出部10aと同様に、画像201,202それぞれにおいて、垂直方向V及び水平方向Hに沿って、水平方向Hにおける行と垂直方向Vにおける列とを設定する。
図3で説明したように、各行は、水平方向Hに並ぶ複数の画素によって構成され、各列は、垂直方向Vに並ぶ複数の画素によって構成されている。
【0050】
また、第2画像抽出部10bは、画像201,202それぞれから、複数の第2画像ブロックを抽出する。第2画像ブロックは、複数の画素によって構成される。本実施の形態では、第2画像抽出部10bは、画像201の画素ごとに、その画素を中心画素とする第2画像ブロックを抽出する。また、第2画像抽出部10bは、画像202の画素ごとに、その画素を中心画素とする第2画像ブロックを抽出する。したがって、第2画像抽出部10bは、例えば、画像201を構成する複数の画素と同数の第2画像ブロックを、画像201から抽出する。また、第2画像抽出部10bは、例えば、画像202を構成する複数の画素と同数の第2画像ブロックを、画像202から抽出する。このようにして、本実施の形態では、画素ごとに、一つの第1画像ブロックと、その第1画像ブロックと共通の中心画素を有する一つの第2画像ブロックとが抽出される。
【0051】
図5においては、画像201から抽出される複数の第2画像ブロックのうちの一つの第2画像ブロック205が示され、画像202から抽出される複数の第2画像ブロックのうちの一つの第2画像ブロック206が示されている。
図5においては、第2画像ブロック205,206を構成する複数の画素にハッチングを付している。
図5の例では、第2画像ブロック205,206はそれぞれ長方形状を有し、垂直方向Vに沿う一対の短辺と、水平方向Hに沿う一対の長辺とを有している。本実施の形態では、第2画像ブロックは、21画素によって構成される。すなわち、本実施の形態では、第1画像ブロックの画素数及び第2画像ブロックの画素数は、互いに等しい。
【0052】
更に、本実施の形態では、第2画像抽出部10bは、一方の画像から抽出された第2画像ブロックの一つと、他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出する。そして、選出した第2画像ブロック同士を組み合せて、複数の第2画像ブロックの組を設定し、設定した複数の第2画像ブロックの組を、第2相関値算出部20bに入力する。
【0053】
例えば、
図5では、画像202の一つの行は、24画素によって構成されている。また、上述したように、第2画像ブロックは画素ごとに設定されるので、画像202の一つの行に対して24個の第2画像ブロックが設定される。したがって、
図5の例では、一方の画像201から抽出された一つの第2画像ブロックは、他方の画像202の対応する一つの行の画素ごとに設定された24個の第2画像ブロックそれぞれに組み合わされる。これにより、画像201から抽出された第2画像ブロックごとに、24個の第2画像ブロックの組が設定される。すなわち、画像201を構成する全ての画素それぞれに対して、24個の第2画像ブロックの組が設定される。
【0054】
第1相関値算出部20aは、入力された第1画像ブロックの組それぞれについて、相関値を算出する。そして、第1相関値算出部20aは、算出した第1画像ブロックの組それぞれの相関値を対応画素抽出部30に入力する。同様に、第2相関値算出部20bは、入力された第2画像ブロックの組それぞれについて、相関値を算出する。そして、第2相関値算出部20bは、算出した第2画像ブロックの組それぞれの相関値を対応画素抽出部30に入力する。なお、相関値は、例えば、上述のSAD、SSDまたはNCC等の公知の方法を利用して算出することができる。SADを利用して相関値を算出する場合には、例えば、上述のR
SADの値を相関値とすることができる。また、SSDを利用して相関値を算出する場合には、例えば、上述のR
SSDの値を相関値とすることができる。更に、例えば、NCCを利用して相関値を算出する場合には、上述のR
NCCの値を相関値とすることができる。例えば、R
SADの値またはR
SSDの値を相関値として用いる場合には、画像ブロックの組の相関値が小さいほど、その画像ブロックの組が高い相関関係を有していることを示す。また、例えば、R
NCCの値を相関値として用いる場合には、画像ブロックの組の相関値が大きいほど、その画像ブロックの組が高い相関関係を有していることを示す。
【0055】
対応画素抽出部30は、一方の画像から抽出された第1画像ブロックの一つを基準第1画像ブロックに設定する。また、対応画素抽出部30は、一方の画像から抽出された複数の第2画像ブロックのうち、中心画素が上記基準第1画像ブロックと共通する第2画像ブロックを基準第2画像ブロックに設定する。例えば、
図3に示した第1画像ブロック203の中心画素と、
図5に示した第2画像ブロック205の中心画素とは、共通の画素である。したがって、例えば、
図3に示した第1画像ブロック203が基準第1画像ブロックに設定された場合には、
図5に示した第2画像ブロック205が基準第2画像ブロックに設定される。
【0056】
更に、対応画素抽出部30は、基準第1画像ブロックとの組み合せとして設定された第1画像ブロックの組の一つと、基準第2画像ブロックとの組み合せとして設定された第2画像ブロックの組の一つとを、他方の画像から抽出された第1画像ブロック及び第2画像ブロックの中心画素が共通の画素となるように選出する。そして、対応画素抽出部30は、選出された第1画像ブロックの組と第2画像ブロックの組とを組み合せて、複合ブロックを設定する。例えば、
図3に示した第1画像ブロック204の中心画素と、
図5に示した第2画像ブロック206の中心画素とは、共通の画素である。また、第1画像ブロック204は、第1画像ブロック203に組み合わされて、第1画像ブロックの組を構成する。更に、第2画像ブロック206は、第2画像ブロック205に組み合わされて、第2画像ブロックの組を構成する。したがって、
図3及び
図5に示した例では、第1画像ブロック203が基準第1画像ブロックに設定され、第2画像ブロック205が基準第2画像ブロックに設定された場合には、第1画像ブロック203,204(第1画像ブロックの組)と、第2画像ブロック205,206(第2画像ブロックの組)とが選出され、これらを組み合せて一つの複合ブロックが設定される。
【0057】
本実施の形態では、一方の画像から抽出された全ての第1画像ブロックがそれぞれ、基準第1画像ブロックに設定される。そして、設定された基準第1画像ブロックごとに、複数の複合ブロックが設定される。
図3及び
図5に示した例では、上述したように、第1画像ブロックごとに、24個の第1画像ブロックの組が設定され、第2画像ブロックごとに、24個の第2画像ブロックの組が設定される。したがって、
図3及び
図5に示した例では、第1画像ブロックの組の一つと、第2画像ブロックの組の一つとを組み合せることによって、基準第1画像ブロックごとに、24個の複合ブロックが設定される。
【0058】
また、上述したように、本実施の形態では、第1画像抽出部10aは、一方の画像を構成する複数の画素と同数の第1画像ブロックを、一方の画像から抽出する。すなわち、本実施の形態では、一方の画像の画素ごとに、その画素を中心とする第1画像ブロックが抽出される。したがって、本実施の形態では、一方の画像の画素ごとに、複数の複合ブロックが設定される。
図3及び
図5に示した例では、一方の画像201の全ての画素に対してそれぞれ、24個の複合ブロックが設定される。
【0059】
対応画素抽出部30は、上記のようにして設定した複合ブロックごとに、第1画像ブロックの組の相関値と第2画像ブロックの組の相関値とに基づいて複合相関値を算出する。例えば、
図3に示した第1画像ブロック203,204(第1画像ブロックの組)と、
図5に示した第2画像ブロック205,206(第2画像ブロックの組)とによって構成された複合ブロックの複合相関値は、第1画像ブロック203,204の相関値と第2画像ブロック205,206の相関値とに基づいて算出される。
【0060】
なお、本実施の形態では、複合ブロックごとに、例えば、第1画像ブロックの組と第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、複合相関値としてもよい。具体的には、例えば、上述のR
SADの値またはR
SSDの値を相関値として用いる場合には、第1画像ブロックの組の相関値と第2画像ブロックの組の相関値とのうち、小さい方の相関値を、複合相関値とすることができる。また、例えば、上述のR
NCCの値を相関値として用いる場合には、第1画像ブロックの組の相関値と第2画像ブロックの組の相関値とのうち、大きい方の相関値を、複合相関値とすることができる。
【0061】
また、例えば、複合ブロックごとに、第1画像ブロックの組の相関値及び第2画像ブロックの組の相関値を加算して得られる値、又は第1画像ブロックの組の相関値及び第2画像ブロックの組の相関値の平均値を、複合相関値としてもよい。
【0062】
また、例えば、複合ブロックごとに、第1画像ブロックの組と第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、複合相関値を算出してもよい。具体的には、予め設定された第1係数(例えば、0.8)及び第2係数(第1係数よりも小さい値。例えば、0.2)を用いて、第1画像ブロックの組の相関値と第2画像ブロックの組の相関値とに基づいて、複合相関値を算出することができる。例えば、上述のR
SADの値またはR
SSDの値を相関値として用い、かつ第1画像ブロックの組の相関値が第2画像ブロックの組の相関値よりも小さい場合には、第1画像ブロックの組の相関値に第1係数を乗算して得られる値と、第2画像ブロックの組の相関値に第2係数を乗算して得られる値とを加算することによって、複合相関値を算出してもよい。また、例えば、上述のR
NCCの値を相関値として用い、かつ第2画像ブロックの組の相関値が第1画像ブロックの組の相関値よりも大きい場合には、第2画像ブロックの組の相関値に第1係数を乗算して得られる値と、第1画像ブロックの組の相関値に第2係数を乗算して得られる値とを加算することによって、複合相関値を算出してもよい。なお、第1係数及び第2係数は、適宜変更することができる。
【0063】
続いて、対応画素抽出部30は、一方の画像の一つの基準第1画像ブロックに対して設定された複数の複合ブロックのうち、最も高い相関関係を示す複合ブロックを選出する。例えば、上述のR
SADの値またはR
SSDの値を相関値として用いた場合には、対応画素抽出部30は、複合相関値が最も小さい複合ブロックを選出する。また、例えば、上述のR
NCCの値を相関値として用いた場合には、対応画素抽出部30は、複合相関値が最も大きい複合ブロックを選出する。そして、対応画素抽出部30は、選出した複合ブロックの他方の画像の第1画像ブロック(第2画像ブロック)の中心画素を、基準第1画像ブロック(基準第2画像ブロック)の中心画素に対応する画素(対応点)として抽出する。
【0064】
[装置動作]
次に、本発明の実施の形態における画像処理装置100の動作について
図6を用いて説明する。
図6は、本発明の実施の形態における画像処理装置の動作を示すフロー図である。以下の説明においては、適宜
図1〜
図5を参酌する。また、本実施の形態では、画像処理装置100を動作させることによって、画像処理方法が実施される。よって、本実施の形態における画像処理方法の説明は、以下の画像処理装置100の動作説明に代える。
【0065】
図6に示すように、画像処理装置100においては、最初に、画像取得部40が、ネットワーク等を介して送信されてきたペア画像を取得する(ステップA1)。更に、画像取得部40は、ペア画像それぞれのエピポーラ線が水平方向において一致するように、一方又は両方の画像を補正する(ステップA2)。
【0066】
次に、第1画像抽出部10aは、一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、複数の第1画像ブロックの組を設定する(ステップA3)。
【0067】
また、第2画像抽出部10bは、一方の画像から抽出された第2画像ブロックの一つと、他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、複数の第2画像ブロックの組を設定する(ステップA4)。
【0068】
次に、第1相関値算出部20aは、入力された第1画像ブロックの組ごとに、相関値を算出する(ステップA5)。また、第2相関値算出部20bは、入力された第2画像ブロックの組ごとに、相関値を算出する(ステップA6)。
【0069】
次に、対応画素抽出部30は、一方の画像から抽出された第1画像ブロックの一つを基準第1画像ブロックに設定するとともに、一方の画像から抽出された第2画像ブロックの一つを基準第2画像ブロックに設定する(ステップA7)。なお、ステップA7において設定される基準第1画像ブロックの中心画素と、基準第2画像ブロックの中心画素とは、共通の画素である。
【0070】
次に、対応画素抽出部30は、基準第1画像ブロックとの組み合せとして設定された第1画像ブロックの組の一つと、基準第2画像ブロックとの組み合せとして設定された第2画像ブロックの組の一つとを組み合せて、複数の複合ブロックを設定する(ステップA8)。ステップA8において設定された各複合ブロックにおいては、第1画像ブロックの組のうちの他方の画像から抽出された第1画像ブロックの中心画素と、第2画像ブロックの組のうちの他方の画像から抽出された第2画像ブロックの中心画素とは、共通の画素である。
【0071】
次に、対応画素抽出部30は、複合ブロックごとに、第1画像ブロックの組の相関値と第2画像ブロックの組の相関値とに基づいて複合相関値を算出する(ステップA9)。
【0072】
最後に、対応画素抽出部30は、一つの基準第1画像ブロックに対して設定された複数の複合ブロックのうち、最も高い相関関係を示す複合ブロックを選出する。そして、対応画素抽出部30は、選出した複合ブロックの他方の画像の第1画像ブロック(第2画像ブロック)の中心画素を、一方の画像の基準第1画像ブロック(基準第2画像ブロック)の中心画素に対応する画素(対応点)として抽出する(ステップA10)。
【0073】
このように、ステップA1〜A10の実行により、ペア画像において、対応する画素(対応点)が特定される。その後、画像処理装置100は、特定した対応点間の視差を用いて、三角測量を実行する。更に、画像処理装置100は、三角測量の結果に基づいて、被写体の奥行き及び形状を特定する。
【0074】
[実施の形態における作用効果]
以上のように、本実施の形態では、一方の画像の画素ごとに、その画素を中心画素とする長方形状の基準第1画像ブロックが設定される。また、一方の画像において、基準第1画像ブロックと共通の中心画素を有しかつ基準第1画像ブロックに直交する長方形状の基準第2画像ブロックが設定される。
【0075】
基準第1画像ブロックには、他方の画像から抽出された複数の第1画像ブロックのそれぞれが組み合される。これにより、基準第1画像ブロックとの組み合わせとして、複数の第1画像ブロックの組(以下、基準第1画像ブロックの組と記載する。)が設定される。また、複数の基準第1画像ブロックの組についてそれぞれ、相関値が算出される。基準第1画像ブロックの中心画素と、基準第1画像ブロックに組み合わされた上記第1画像ブロックの中心画素とは、互いに対応する行に位置している。
【0076】
基準第2画像ブロックには、他方の画像から抽出された複数の第2画像ブロックのそれぞれが組み合される。これにより、基準第2画像ブロックとの組み合わせとして、複数の第2画像ブロックの組(以下、基準第2画像ブロックの組と記載する。)が設定される。また、複数の基準第2画像ブロックの組についてそれぞれ、相関値が算出される。基準第2画像ブロックの中心画素と、基準第2画像ブロックに組み合わされた上記第2画像ブロックの中心画素とは、互いに対応する行に位置している。
【0077】
基準第1画像ブロックの組の一つと、基準第2画像ブロックの組の一つとが組み合わされて、複数の複合ブロックが設定される。各複合ブロックにおいて、他方の画像から抽出された第1画像ブロックの中心画素と、他方の画像から抽出された第2画像ブロックの中心画素とは、共通の画素である。また、基準第1画像ブロックの組の相関値と、基準第2画像ブロックの組の相関値とに基づいて、複合ブロックの複合相関値が算出される。そして、複数の複合ブロックのうち、最も高い相関関係を示す複合ブロックが選出され、選出された複合ブロックから対応点が特定される。
【0078】
このように、本実施の形態では、基準第1画像ブロックの組の相関値と、基準第2画像ブロックの組の相関値とを考慮して、対応点を特定することができる。これにより、視差によって2つの画像間において撮影対象物の形状等が大きく変化している場合でも、画像間における形状等の変化の影響を十分に低減して、対応点を適切に特定することができる。
【0079】
[プログラム]
本実施の形態におけるプログラムは、コンピュータに、
図6に示すステップA1〜A10を実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における画像処理装置100と画像処理方法とを実現することができる。この場合、コンピュータのCPU(Central Processing Unit)は、第1画像抽出部10a、第2画像抽出部10b、第1相関値算出部20a、第2相関値算出部20b、対応画素抽出部30、及び画像取得部40として機能し、処理を行なう。
【0080】
また、本実施の形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、第1画像抽出部10a、第2画像抽出部10b、第1相関値算出部20a、第2相関値算出部20b、対応画素抽出部30、及び画像取得部40のいずれかとして機能しても良い。
【0081】
[物理構成]
ここで、本実施の形態におけるプログラムを実行することによって、画像処理装置100を実現するコンピュータについて
図7を用いて説明する。
図7は、本発明の実施の形態における画像処理装置100を実現するコンピュータの一例を示すブロック図である。
【0082】
図7に示すように、コンピュータ110は、CPU111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。
【0083】
CPU111は、記憶装置113に格納された、本実施の形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであっても良い。
【0084】
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
【0085】
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
【0086】
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)等の汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記憶媒体、又はCD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体が挙げられる。
【0087】
なお、本実施の形態における画像処理装置100は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、画像処理装置100は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【0088】
上述した実施の形態の一部又は全部は、以下に記載する(付記1)〜(付記24)によって表現することができるが、以下の記載に限定されるものではない。
【0089】
(付記1)
対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、第1画像抽出部と、
前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、第2画像抽出部と、
設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する第1相関値算出部と、
設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する第2相関値算出部と、
前記第1画像ブロックの組それぞれの相関値及び前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、対応画素抽出部と、
を備えている、ことを特徴とする画像処理装置。
【0090】
(付記2)
前記2つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、
付記1に記載の画像処理装置。
【0091】
(付記3)
前記2つの画像を取得し、取得した前記2つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記2つの画像の一方または両方に対して、回転及び射影変換のうち少なくとも1つを行なって、前記2つの画像それぞれのエピポーラ線を水平方向において一致させる、画像取得部を更に備え、
前記第1画像抽出部は、前記画像取得部によってエピポーラ線が一致された前記2つの画像それぞれから、前記第1画像ブロックの前記長辺が前記エピポーラ線に直交するように前記複数の第1画像ブロックを抽出し、
前記第2画像抽出部は、前記画像取得部によってエピポーラ線が一致された前記2つの画像それぞれから、前記複数の第2画像ブロックを抽出する、
付記1または2に記載の画像処理装置。
【0092】
(付記4)
前記第1画像抽出部は、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第1画像ブロックの一つと、前記他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、前記複数の第1画像ブロックの組を設定し、
前記第2画像抽出部は、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、前記複数の第2画像ブロックの組を設定する、
付記1から3のいずれかに記載の画像処理装置。
【0093】
(付記5)
前記対応画素抽出部は、
前記一方の画像から抽出された第1画像ブロックの一つを基準第1画像ブロックに設定し、
前記一方の画像から抽出された前記複数の第2画像ブロックのうち、中心画素が前記基準第1画像ブロックと共通する第2画像ブロックを基準第2画像ブロックに設定し、
前記基準第1画像ブロックとの組み合せとして設定された前記第1画像ブロックの組の一つと、前記基準第2画像ブロックとの組み合せとして設定された前記第2画像ブロックの組の一つとを、前記他方の画像から抽出された第1画像ブロック及び第2画像ブロックの中心画素が共通の画素となるように選出し、前記選出された第1画像ブロックの組と前記選出された第2画像ブロックの組とを組み合せて、複数の複合ブロックを設定し、
前記設定した複合ブロックごとに、前記第1画像ブロックの組の相関値と前記第2画像ブロックの組の相関値とに基づいて複合相関値を算出し、
前記複数の複合ブロックのうち、最も高い相関関係を示す複合ブロックを選出し、前記選出した複合ブロックの前記他方の画像の前記第1画像ブロック及び前記第2画像ブロックの前記中心画素を、前記基準第1画像ブロック及び前記基準第2画像ブロックの前記中心画素に対応する画素として抽出する、
付記4に記載の画像処理装置。
【0094】
(付記6)
前記対応画素抽出部は、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、前記複合相関値として算出する、
付記5に記載の画像処理装置。
【0095】
(付記7)
前記対応画素抽出部は、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、前記複合相関値を算出する、
付記5に記載の画像処理装置。
【0096】
(付記8)
前記第1画像ブロックの画素数及び前記第2画像ブロックの画素数は、互いに等しい、付記1から7のいずれかに記載の画像処理装置。
【0097】
(付記9)
(a)対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、ステップと、
(b)前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、ステップと、
(c)前記(a)のステップで設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(d)前記(b)のステップで設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(e)前記(c)のステップで算出された前記第1画像ブロックの組それぞれの相関値及び前記(d)のステップで算出された前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、ステップと、
を有する、ことを特徴とする画像処理方法。
【0098】
(付記10)
前記2つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、
付記9に記載の画像処理方法。
【0099】
(付記11)
(f)前記2つの画像を取得し、取得した前記2つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記2つの画像の一方または両方に対して、回転及び射影変換のうち少なくとも1つを行なって、前記2つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に有し、
前記(a)のステップでは、前記(f)のステップによってエピポーラ線が一致された前記2つの画像それぞれから、前記第1画像ブロックの前記長辺が前記エピポーラ線に直交するように前記複数の第1画像ブロックを抽出し、
前記(b)のステップでは、前記(f)のステップによってエピポーラ線が一致された前記2つの画像それぞれから、前記複数の第2画像ブロックを抽出する、
付記9または10に記載の画像処理方法。
【0100】
(付記12)
前記(a)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第1画像ブロックの一つと、前記他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、前記複数の第1画像ブロックの組を設定し、
前記(b)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、前記複数の第2画像ブロックの組を設定する、
付記9から11のいずれかに記載の画像処理方法。
【0101】
(付記13)
前記(e)のステップでは、
前記一方の画像から抽出された第1画像ブロックの一つを基準第1画像ブロックに設定し、
前記一方の画像から抽出された前記複数の第2画像ブロックのうち、中心画素が前記基準第1画像ブロックと共通する第2画像ブロックを基準第2画像ブロックに設定し、
前記基準第1画像ブロックとの組み合せとして設定された前記第1画像ブロックの組の一つと、前記基準第2画像ブロックとの組み合せとして設定された前記第2画像ブロックの組の一つとを、前記他方の画像から抽出された第1画像ブロック及び第2画像ブロックの中心画素が共通の画素となるように選出し、前記選出された第1画像ブロックの組と前記選出された第2画像ブロックの組とを組み合せて、複数の複合ブロックを設定し、
前記設定した複合ブロックごとに、前記第1画像ブロックの組の相関値と前記第2画像ブロックの組の相関値とに基づいて複合相関値を算出し、
前記複数の複合ブロックのうち、最も高い相関関係を示す複合ブロックを選出し、前記選出した複合ブロックの前記他方の画像の前記第1画像ブロック及び前記第2画像ブロックの前記中心画素を、前記基準第1画像ブロック及び前記基準第2画像ブロックの前記中心画素に対応する画素として抽出する、
付記12に記載の画像処理方法。
【0102】
(付記14)
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、前記複合相関値として算出する、
付記13に記載の画像処理方法。
【0103】
(付記15)
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、前記複合相関値を算出する、
付記13に記載の画像処理方法。
【0104】
(付記16)
前記第1画像ブロックの画素数及び前記第2画像ブロックの画素数は、互いに等しい、付記9から15のいずれかに記載の画像処理方法。
【0105】
(付記17)
コンピュータに、
(a)対象となる2つの画像それぞれから、長辺を有する長方形状の複数の第1画像ブロックを抽出し、前記2つの画像の一方の画像から抽出された第1画像ブロックの一つと、他方の画像から抽出された第1画像ブロックの一つとを組み合せて、複数の第1画像ブロックの組を設定する、ステップと、
(b)前記2つの画像それぞれから、前記第1画像ブロックの前記長辺に直交する長辺を有し、かつ中心画素が前記第1画像ブロックの中心画素と共通の画素である、長方形状の複数の第2画像ブロックを抽出し、前記2つの画像の前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを組み合せて、複数の第2画像ブロックの組を設定する、ステップと、
(c)前記(a)のステップで設定された前記第1画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(d)前記(b)のステップで設定された前記第2画像ブロックの組それぞれについて、輝度に基づいて相関値を算出する、ステップと、
(e)前記(c)のステップで算出された前記第1画像ブロックの組それぞれの相関値及び前記(d)のステップで算出された前記第2画像ブロックの組それぞれの相関値に基づいて、前記2つの画像において互いに対応する画素を抽出する、ステップと、
を実行させ
るプログラ
ム。
【0106】
(付記18)
前記2つの画像が、異なる角度から同一対象を撮影して得られたペア画像である、
付記17に記載の
プログラム。
【0107】
(付記19)
前記コンピュータに、
(f)前記2つの画像を取得し、取得した前記2つの画像それぞれのエピポーラ線が水平方向において一致していない場合に、前記2つの画像の一方または両方に対して、回転及び射影変換のうち少なくとも1つを行なって、前記2つの画像それぞれのエピポーラ線を水平方向において一致させる、ステップを更に実行させ、
前記(a)のステップでは、前記(f)のステップによってエピポーラ線が一致された前記2つの画像それぞれから、前記第1画像ブロックの前記長辺が前記エピポーラ線に直交するように前記複数の第1画像ブロックを抽出し、
前記(b)のステップでは、前記(f)のステップによってエピポーラ線が一致された前記2つの画像それぞれから、前記複数の第2画像ブロックを抽出する、
付記17または18に記載の
プログラム。
【0108】
(付記20)
前記(a)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第1画像ブロックの一つと、前記他方の画像から抽出された第1画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第1画像ブロック同士を組み合せて、前記複数の第1画像ブロックの組を設定し、
前記(b)のステップでは、前記2つの画像それぞれにおいて、垂直方向及び水平方向に沿って、複数の画素によって構成される、水平方向における行と垂直方向における列とを設定し、前記一方の画像から抽出された第2画像ブロックの一つと、前記他方の画像から抽出された第2画像ブロックの一つとを、両者の中心画素が位置している行が互いに対応するように選出し、選出した第2画像ブロック同士を組み合せて、前記複数の第2画像ブロックの組を設定する、
付記17から19のいずれかに記載の
プログラム。
【0109】
(付記21)
前記(e)のステップでは、
前記一方の画像から抽出された第1画像ブロックの一つを基準第1画像ブロックに設定し、
前記一方の画像から抽出された前記複数の第2画像ブロックのうち、中心画素が前記基準第1画像ブロックと共通する第2画像ブロックを基準第2画像ブロックに設定し、
前記基準第1画像ブロックとの組み合せとして設定された前記第1画像ブロックの組の一つと、前記基準第2画像ブロックとの組み合せとして設定された前記第2画像ブロックの組の一つとを、前記他方の画像から抽出された第1画像ブロック及び第2画像ブロックの中心画素が共通の画素となるように選出し、前記選出された第1画像ブロックの組と前記選出された第2画像ブロックの組とを組み合せて、複数の複合ブロックを設定し、
前記設定した複合ブロックごとに、前記第1画像ブロックの組の相関値と前記第2画像ブロックの組の相関値とに基づいて複合相関値を算出し、
前記複数の複合ブロックのうち、最も高い相関関係を示す複合ブロックを選出し、前記選出した複合ブロックの前記他方の画像の前記第1画像ブロック及び前記第2画像ブロックの前記中心画素を、前記基準第1画像ブロック及び前記基準第2画像ブロックの前記中心画素に対応する画素として抽出する、
付記20に記載の
プログラム。
【0110】
(付記22)
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の相関値を、前記複合相関値として算出する、
付記21に記載の
プログラム。
【0111】
(付記23)
前記(e)のステップでは、前記複合ブロックごとに、前記第1画像ブロックの組と前記第2画像ブロックの組とのうち、高い相関関係を示す方の画像ブロックの組の重み付けを大きくして、前記複合相関値を算出する、
付記21に記載の
プログラム。
【0112】
(付記24)
前記第1画像ブロックの画素数及び前記第2画像ブロックの画素数は、互いに等しい、付記17から23のいずれかに記載の
プログラム。
【0113】
以上、実施の形態を参照して本願発明を説明したが、本願発明は上記実施の形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【0114】
この出願は、2016年5月31日に出願された日本出願特願2016−108297を基礎とする優先権を主張し、その開示の全てをここに取り込む。