(57)【要約】【課題】計算量の増加を抑制して高分解能の距離画像を実現する画像生成装置及び方法を提供する。【解決手段】撮像対象物２を撮像して画像データを生成する、それぞれが異なる位置に配置された２以上の撮像手段１１、１２と、各撮像手段１１、１２が配置された位置と撮像対象物２の位置とを結ぶ視線との対応点を結ぶことにより決定されるエピポーラライン上で、各撮像手段１１、１２により生成された各画像データ同士を比較して離散相関値を検出する相関検出手段１７と、相関検出手段１７により検出された離散相関値を複数の異なる補間手法に基づいて補間する相関補間手段２０と、相関補間手段２０より補間された補間相関値に基づいて撮像手段１１、１２と撮像対象物２との距離を示す距離画像を生成する距離画像生成手段１０とを備えることを特徴とする。【選択図】  図１
2007179236.tif 000002
【特許請求の範囲】
【請求項１】
撮像対象物を撮像して画像データを生成する、それぞれが異なる位置に配置された２以上の撮像手段と、
各撮像手段が配置された位置と上記撮像対象物の位置とを結ぶ視線との対応点を結ぶことにより決定されるエピポーラライン上で、上記各撮像手段により生成された各画像データ同士を比較して離散相関値を検出する相関検出手段と、
上記相関検出手段により検出された上記離散相関値を複数の異なる補間手法に基づいて補間する相関補間手段と、
上記相関補間手段より補間された補間相関値に応じて上記撮像手段から上記撮像対象物までの距離を示す距離画像を生成する距離画像生成手段とを備えることを特徴とする画像生成装置。
【請求項２】
上記相関検出手段は、上記エピポーラライン上に位置する画像データ同士を比較して上記離散相関値を検出することを特徴とする請求項１記載の画像生成装置。
【請求項３】
上記相関検出手段は、上記撮像手段から上記撮像対象物までの距離に対応するエピポーラライン上の画像データ同士を比較して、距離画像を構成する少なくとも一画素からなる画像領域について、上記各画像領域から上記撮像対象物までの各距離に応じた離散相関値を検出することを特徴とする請求項１記載の画像生成装置。
【請求項４】
上記相関検出手段は、上記各撮像手段から撮像対象物までの距離に対応する各エピポーラライン上の複数の画像データにおいて所定の距離を示す画像データ同士を比較して上記所定の距離について離散相関値を算出する処理を行うことを特徴とする請求項１記載の画像生成装置。
【請求項５】
上記相関補間手段は、上記相関検出手段により検出された離散相関値のうち、最も相関の高い離散相関値と、上記最も相関の高い離散相関値の周囲における少なくとも２つの離散相関値に基づいて、補間相関値を検出することを特徴とする請求項１記載の画像再生装置。
【請求項６】
上記相関補間手段は、２つの互いに異なる補間手法に基づいて２つの補間相関値を算出し、算出した２つの補間相関値の内分を演算して新たな補間相関値を算出することを特徴とする請求項５記載の画像生成装置。
【請求項７】
上記相関補間手段は、２つの互いに異なる補間手法に基づいて２つの補間相関値を算出し、算出した２つの相関補間値の外分を演算して新たな補間相関値を算出することを特徴とする請求項５記載の画像生成装置。
【請求項８】
撮像対象物をそれぞれが異なる位置に配置された２以上の撮像手段を用いて撮像して画像データを生成し、
各撮像手段が配置された位置と上記撮像対象物とを結ぶ視線との対応点を結ぶことにより決定されるエピポーラライン上で、上記各撮像手段により生成された各画像データ同士を比較して離散相関値を検出し、
検出された上記離散相関値を複数の異なる補間手法に基づいて上記離散相関値を補間し、
上記離散相関値を補間した補間相関値に応じて上記撮像手段から上記撮像対象物までの距離を示す距離画像を生成することを特徴とする画像生成方法。
【請求項９】
上記エピポーラライン上に位置する画像データ同士を比較して上記離散相関値を検出することを特徴とする請求項８記載の画像生成方法。
【請求項１０】
上記撮像手段から上記撮像対象物までの距離に対応するエピポーラライン上の画像データ同士を比較して、距離画像を構成する少なくとも一画素からなる各画像領域について、上記各画像領域から上記撮像対象物までの各距離に応じた離散相関値を検出することを特徴とする請求項８に記載の画像生成方法。
【請求項１１】
上記撮像手段から撮像対象物までの距離に対応する各エピポーラライン上の複数の画像データにおいて所定の距離を示す画像データ同士を比較して上記所定の距離について離散相関値を算出する処理を行うことを特徴とする請求項８記載の画像生成方法。
【請求項１２】
検出された上記離散相関値のうち、最も相関の高い離散相関値と上記最も相関の高い離散相関値の周囲における少なくとも２つの離散相関値に基づいて、上記離散相関値を補間した補間相関値を検出することを特徴とする請求項８記載の画像生成方法。
【請求項１３】
上記離散相関値から、２つの互いに異なる補間手法に基づいて２つの補間相関値を算出し、算出された上記２つの補間相関値の内分を演算して新たな補間相関値を検出することを特徴とする請求項１２記載の画像生成方法。
【請求項１４】
上記離散相関値から、２つの互いに異なる補間手法に基づいて２つの補間相関値を算出し、算出された上記２つの補間相関値の外分を演算して新たな補間相関値を検出することを特徴とする請求項１２記載の画像生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の撮像手段を用いて、撮像手段から撮像対象物までの距離を計測する距離画像を生成する画像生成装置及び方法に関する。
【背景技術】
【０００２】
撮像装置と撮像対象物とを結ぶ距離情報を生成する距離測定装置には、ステレオ法を用いて距離測定を行うものがある。ステレオ法は、例えば、特許文献１に示すように、撮像対象物の表面の三次元座標位置すなわち三次元形状を計測するために、視点の異なる複数台の撮像装置で同一の撮像対象物を同時に撮像した画像を用い、複数の異なる撮像画像間での各画素に対応する対応点を求め、その視差に基づいて距離計測装置から撮像対象物までの距離情報を得る手法である。
【０００３】
具体的には、図１７に示すように、位置検出の対象である撮像対象物１００は、光学中心１０１ａに位置する左カメラと、光学中心１０１ｂに位置する右カメラとにそれぞれ撮像される。つまり、左カメラは、撮像対象物１００の左画像１１１ａを撮像し、同様に右カメラは、撮像対象物１００の右画像１１１ｂを撮像する。
【０００４】
この左画像１１１ａの注目画素に対応する右画像１１１ｂの対応点は、所定の方向に水平な直線上に存在することが従来から知られている。この直線は、一般的にエピポーララインと称されている。つまり、左画像１１１ａの注目画像に対する右画像１１１ｂの対応点は、エピポーラライン上の点に沿って対応するか否かにより判定することができる。
【０００５】
しかしながら、エピポーララインの方向は、左右のカメラが平行に配置されていない場合、一般には水平とならない。エピポーララインが水平ではない場合には、水平である場合に比べて探索演算が増大になるとともにその演算結果の誤差も大きくなる傾向にある。
【０００６】
ここで、図１７の矢印１１２ａと矢印１１２ｂに示す射影変換は、左画像１１１ａと右画像１１１ｂを、それぞれ左カメラの光学中心１０１ａと右カメラの光学中心１０１ｂとを結ぶ直線に平行な左画像１１３ａと右画像１１３ｂに変換する。この射影変換は、エピポーララインを平行化するので、対応点の探索処理の増加を抑えることができ、演算誤差も改善することができる。
【０００７】
注目画像の対応点検索には、一般的に複数の画素からなる画像領域の一致度を演算する。例えば、この一致度の演算は、（１）式に示されるような、正規化相関演算が用いられる。
【０００８】
【数１】
2007179236.tif 000003
【０００９】
（１）式で示される正規化相関を演算する正規化相関演算回路１２０は、図１８に示すようなブロック図によって実装される。つまり、正規化相関演算回路１２０は、左右画像メモリ１２１と、ΣＡＢ乗算器１２２と、ΣＡ２乗算器１２３と、ΣＢ２乗算器１２４と、乗算器１２５と、除算器１２６と、Ｓ２正規化相関メモリ１２７から構成される。
【００１０】
左右画像メモリ１２１は、それぞれ平行化された左画像１１３ａと右画像１１３ｂの画像データを記憶する。ΣＡＢ乗算器１２２は（１）式右辺の分子を、ΣＡ２乗算器１２３は（１）式右辺の分母におけるＡｉの自乗の総和を、ΣＢ２乗算器１２４は（１）式右辺の分母におけるＡｉの自乗の総和を、それぞれ演算する。乗算器１２５は、ΣＡ２乗算器１２３の演算結果とΣＢ２乗算器１２４の演算結果とを乗算する。つまり、乗算器１２５は、（１）式右辺の分母の√の中を演算する。除算器１２６は、ΣＡＢ乗算器１２２の演算結果から、乗算器１２５の演算結果の√を除算する。つまり、除算器１２６は、（１）式右辺の分子から分母を除算する。Ｓ２正規化相関値メモリ１２７は、除算器１２６の演算結果、つまり、左画像１１３ａの基準となる画像領域と、右画像１１３ｂの比較する画像領域との相関値Ｓを記憶する。特許文献２では、上述したΣＡＢ乗算器１２２の改良を行い、演算処理速度の向上を図っている。
【００１１】
ところで、ステレオ法による距離計測の分解能つまり計測精度は、視差の分解能に基づいて決定される。視差の分解能を向上するには、代表的な手法として以下に示す３つの手法がある。
【００１２】
まず、第１の手法は、撮像手段の画素数を増加して、撮像画像の空間分解能を高め、これに応じて視差の分解能を高める方法である。また、第２の手法は撮像画像から比較領域を抽出し、この比較領域の輝度値のサブピクセル補間を行い、補間画像から対応点を求める方法である。さらに、第３の手法は、各画像における各画素毎に求められた離散した相関値を直線、又は二次曲線などの多項式で近似して離散した相関値の間を補間して分解能を高める方法である。
【００１３】
【特許文献１】国際公開第９９／０５８９２７号パンフレット
【特許文献２】特開２００５−８４６９８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
一般にステレオ法における撮像画像間での各画素に対応する対応点の探索の計算量は、画素数をＮ×Ｎ、相関演算の比較領域をＷ×Ｗ、探索する視差の最大値をＤとすると、Ｎ２Ｗ２Ｄ倍で変化する。また、この探索の計算量は、再帰相関演算を行っても、その計算量は、Ｎ２Ｄ倍で変化する。
【００１５】
例えば、第１の手法により分解能を２倍にするには、画素数が縦と横に２倍にしなければならず、その計算量は、一般的な計算方法で３２倍、また再帰相関演算でも８倍に増加する。このように、計算量は大幅に増加する。また、第１の手法は、分解能の向上が撮像手段の性能のみに依存するので、既に複数の撮像手段を用いて画像処理装置を作成している場合、分解能を高くすることができない。
【００１６】
同様に、第２の手法により分解能を２倍にする場合、仮に全ての領域で補間演算を行うとすると、その計算量はＮ２Ｄ倍なので８倍に増加する。なお、相関が最大になる点の付近のみ補間演算を行った場合には、高くなる分解能を２進数表示したときのビット数をＢとすると、Ｎ２Ｂ倍で計算量が増加する。
【００１７】
さらに、第３の手法により分解能を２倍にするには、この計算量がＮ２倍で増加するので、上述した第１及び第２の手法に比べて計算量の増加率が小さい。しかしながら、第３の手法では、近似式に応じて精度を高めるに過ぎない。
【００１８】
そこで、本発明は、このような従来の実情に鑑みて提案されたものであり、計算量の増加を抑制して高分解能の距離画像を実現する画像生成装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明に係る画像生成装置は、撮像対象物を撮像して画像データを生成する、それぞれが異なる位置に配置された２以上の撮像手段と、各撮像手段が配置された位置と上記撮像対象物の位置とを結ぶ視線との対応点を結ぶことにより決定されるエピポーラライン上で、上記各撮像手段により生成された各画像データ同士を比較して離散相関値を検出する相関検出手段と、上記相関検出手段により検出された上記離散相関値を複数の異なる補間手法に基づいて補間する相関補間手段と、上記相関補間手段より補間された補間相関値に応じて上記撮像手段から上記撮像対象物までの距離を示す距離画像を生成する距離画像生成手段とを備えることを特徴とする。
【００２０】
また、本発明に係る画像生成方法は、撮像対象物をそれぞれが異なる位置に配置された２以上の撮像手段を用いて撮像して画像データを生成し、各撮像手段が配置された位置と上記撮像対象物とを結ぶ視線との対応点を結ぶことにより決定されるエピポーラライン上で、上記各撮像手段により生成された各画像データ同士を比較して離散相関値を検出し、検出された上記離散相関値を複数の異なる補間手法に基づいて上記離散相関値を補間し、上記離散相関値を補間した補間相関値に応じて上記撮像手段から上記撮像対象物までの距離を示す距離画像を生成することを特徴とする。
【発明の効果】
【００２１】
本発明は複数の画像データに応じた離散した相関値を複数の異なる補間手法に基づいて補間相関値を算出する。
【００２２】
このことにより、本発明に係る画像生成装置は、従来の手法に比べて計算量の増加を抑えつつ、距離計測の分解能を向上することができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
【００２４】
本発明は、例えば図１のように構成され、距離を測定して距離画像を生成するときに用いる画像生成装置１に適用される。画像生成装置１は、撮像対象物２に対して左右に配置され互いに同一の撮像対象物２を撮像する左カメラ１１及び右カメラ１２と、左カメラ１１及び右カメラ１２で撮像した２つの画像データに対応するエピポーララインを平行化した画像データを生成する左画像変換部１３及び右画像変換部１４と、撮像データのエピポーララインを平行にするために必要な左カメラ１１及び右カメラ１２の位置関係に応じた平行化処理情報が予め記憶されている左変換テーブル１５及び右変換テーブル１６と、左画像変換部１３及び右画像変換部１４がエピポーララインを平行にした２つの画像データに基づいて相関演算を施して相関値を算出する相関演算部１７と、相関演算部１７が算出した相関値を記憶する相関値記憶部１８と、相関値記憶部１８に記憶された相関値に応じて所定の画像領域毎に相関の最も高い値を検出する相関検出処理部１９と、相関値記憶部１８に記憶された相関値に基づいて補間相関値を算出する補間相関処理部２０と、補間相関処理部２０が算出した補間相関値に応じた視差情報を有する距離画像を生成する距離画像生成部２１とからなる。
【００２５】
画像生成装置１は、左カメラ１１及び右カメラ１２から得られる２つの画像データに基づいて、互いに対応する画像領域を検出する。本実施の形態では、左カメラ１１が撮像した画像データを対応点の探索の基準となる基準画像とし、右カメラ１２が撮像した画像データを基準画像に対する比較画像として用いる。
【００２６】
なお、本実施の形態にかかわらず、左カメラ１１から得られる画像データを比較画像とし、左カメラ１２から得られる画像データを基準画像として用いるようにしてもよい。
【００２７】
左カメラ１１及び右カメラ１２は、例えば、ＣＣＤイメージセンサ等を備え、撮像対象物２を撮像することにより輝度情報からなる画像データを生成して、これらの画像データをそれぞれ左画像変換部１３及び右画像変換部１４へ出力する。
【００２８】
左画像変換部１３及び右画像変換部１４は、予め左変換テーブル１５及び右変換テーブル１６に記憶された平行化処理情報に基づいて、左カメラ１１及び右カメラ１２が撮像した画像データに生じるレンズ歪曲収差の除去処理を施すとともに、平行化処理を施して画像データを相関演算部１７へ出力する。
【００２９】
次に、エピポーララインについて図２を参照して説明する。まず、観測対象物の位置を点Ｐとし、当該観測対象物は、左カメラ１１の基準画像３１上の観測点ｎｂで観測され、右カメラ１２の比較画像３２上の観測点ｎｄで観測されるものとする。ここで、エピポーララインは、左カメラ１１の光学中心と基準画像３１の観測点ｎｂとを結ぶ直線上を観測対象物が移動した場合に、比較画像３２を移動する観測点ｎｄの軌跡である。エピポーララインを使用せずに、左カメラ１１の観測点ｎｂに対応する右カメラ１２の観測点ｎｄを判定することは、比較画像３２の全画像領域を探索しなければならず、容易ではない。これに対して、基準画像３１の観測点ｎｂに対応する比較画像３２のエピポーララインが予め分かっていれば、比較画像３２の観測点ｎｄは、エピポーララインに沿って限定された範囲内を探索すればよく、容易に基準画像３１に対応する比較画像３２の対応点を検出することができる。
【００３０】
図３の（ａ）に示すように、基準画像３１と比較画像３２との撮像面が互いに平行の関係で配置されている場合に、エピポーララインは平行となる。一方、図３の（ｂ）に示すように、基準画像３１と比較画像３２とが互いに平行ではない場合、当該２つのエピポーララインは平行とならない。エピポーララインが平行とならない場合、対応点を探索する処理は、エピポーララインが平行である場合に比べて演算処理が増大するとともに、デジタル誤差も大きくなってしまう。
【００３１】
そこで、左画像変換部１３及び右画像変換部１４では、それぞれ左カメラ１１及び右カメラ１２が撮像した画像データに対して、図３の（ｂ）に示すように、それぞれ左変換テーブル１５及び右変換テーブル１６を参照してエピポーララインが平行となる画像データを生成する。
【００３２】
左変換テーブル１５は、右カメラ１２との位置関係に応じて予め計測された平行化処理情報が格納されている。同様に、右変換テーブル１６は、左カメラ１１との位置関係に応じて予め計測された平行化処理情報が格納されている。
【００３３】
相関演算部１７は、左画像変換部１３及び右画像変換部１４が生成した２つの画像データが供給され、基準画像３１の各画像領域と比較画像３２の各画像領域の輝度値に応じた相関値を算出する。
【００３４】
ここで、相関演算の具体例を図４を用いて説明する。まず、図４の（ａ）に示す基準画像の観測点ｎｂに対応する比較画像の観測点ｎｄが、図４の（ｂ）に示すように、基準画像の観測点ｎｂに対応する比較画像のエピポーラライン上の観測点ｎｄ１からｎｄ６の６点との相関から求めることとする。相関を求める手法として、（２）式に示すような評価値を用いる。
【００３５】
【数２】
2007179236.tif 000004
【００３６】
ただし、Ｉ（ｘ）は基準画像における観測点ｎｂの輝度値とし、Ｉ’（ｘ’）は比較画像における観測点ｎｄ１からｎｄ６の輝度値を表すものとする。ここで、最も相関の高い点は、（２）式で求められる評価値が最小となる点（図４の（ｃ）では観測点ｎｄ３）となる。このように、相関演算部１７は、エピポーラライン上に沿って観測点毎に評価値を演算し、相関の高い値の観測点を対応点として判定する。
【００３７】
なお、相関を求めるための評価関数としては、（２）式に限らず、基準画像の観測点と比較画像の観測点とから相関を求めることをできるものであれば、いかなる手法を用いるようにしてもよい。
【００３８】
次に、（２）式の評価値を用いた相関演算部１７の動作を、図５を参照して説明する。ここで、基準画像３１における探索範囲は、任意の整数Ｎを用いてＮ×Ｎ個の基準領域から構成される。また、対応点の検索回数は、任意の整数Ｍ（マッチング数）を用いて、その初期値を０とし、その最大値をＭｍａｘとする。したがって、対応点の検索処理は、１つの基準領域に対応する比較画像の各比較領域をエピポーララインに沿ってＭｍａｘ＋１回行う。
【００３９】
ステップＳＴ１において、相関演算部１７は、整数ＸとＹを用いて、基準画像３１の探索範囲である基準領域の開始点（Ｘ＝Ｘ０、Ｙ＝Ｙ０）を設定する。
【００４０】
ステップＳＴ２において、相関演算部１７は、Ｘ＝Ｘ０であるか否かを判定し、Ｘ＝Ｘ０と判定するとステップＳＴ３に進み、Ｘ≠Ｘ０と判定するとステップＳＴ９に進む。
【００４１】
ステップＳＴ３において、相関演算部１７は、対応点検索の回数であるマッチング数ＭをＭ＝０に設定する。
【００４２】
ステップＳＴ４において、相関演算部１７は、図６に示す処理１に従って、現在の基準領域とマッチング数Ｍ＝０における比較領域とに応じて相関演算処理を行う。この演算処理は、図６を参照して後述する。
【００４３】
ステップＳＴ５において、相関演算部１７は、ステップＳＴ４の演算処理を終了すると、Ｍ＝Ｍｍａｘであるか否かを判定し、Ｍ＝Ｍｍａｘと判定するとステップＳＴ７へ進み、Ｍ≠Ｍｍａｘと判定するとステップＳＴ６に進む。
【００４４】
ステップＳＴ６において、相関演算部１７は、マッチング数ＭをＭ＋１に更新する。その後、相関演算部６は、ステップＳＴ４の処理に戻り、Ｍ＝Ｍｍａｘとなるまで処理１を繰り返す。
【００４５】
ステップＳＴ７において、相関演算部１７は、マッチング数Ｍ＝ＭｍａｘにおけるステップＳＴ５の処理が終了すると、Ｘ＝Ｘｍａｘであるか否かを判定し、Ｘ＝Ｘｍａｘと判定するとステップＳＴ１３へ進み、Ｘ≠Ｘｍａｘと判定するとステップＳＴ８へ進む。Ｘｍａｘは、Ｘｍａｘ＝Ｘ０＋Ｎであって探索範囲のＸ軸（水平）方向の終了点とする。
【００４６】
ステップＳＴ８において、相関演算部１７は、ＸをＸ＋１に更新する。つまり、水平方向に１画素移動したＮ×Ｎの画像領域が、新たな基準領域として、基準画像から切り出される。その後、相関演算部１７は、演算処理をステップＳＴ２に戻り、ステップＳＴ２においてＸ≠Ｘ０と判定されステップＳＴ９へ進む。
【００４７】
ステップＳＴ９において、相関演算部１７は、マッチング数ＭをＭ＝０に設定する。
【００４８】
ステップＳＴ１０において、図７に示す処理２に従い、基準領域とマッチング数Ｍ＝０における比較領域とに応じて相関演算処理を行う。この演算処理は、図７を参照して後述する。
【００４９】
ステップＳＴ１１において、相関演算部１７は、ステップＳＴ１０の処理２が終了すると、Ｍ＝Ｍｍａｘであるか否かを判定し、Ｍ＝Ｍｍａｘと判定するとステップＳＴ７へ進み、Ｍ≠Ｍｍａｘと判定するとステップＳＴ１２へ進む。
【００５０】
ステップＳＴ１２において、相関演算部１７は、ステップＳＴ１１においてＭ≠Ｍｍａｘと判定されると、マッチング数ＭをＭ＋１に更新する。その後、相関演算部１７は、処理２を繰り返し行い、Ｍ＝Ｍｍａｘとなると、ステップＳＴ１１からステップＳＴ７へ進み、さらにステップＳＴ１３へ進む。
【００５１】
ステップＳＴ１３において、相関演算部１７はＸをＸ＝Ｘ０に設定する。
【００５２】
ステップＳＴ１４において、相関演算部１７は、Ｙ＝Ｙｍａｘであるか否かを判定し、Ｙ＝Ｙｍａｘと判定すると相関演算処理を終了し、Ｙ≠Ｙｍａｘと判断するとステップＳＴ１５へ進む。Ｙｍａｘは、Ｙｍａｘ＝Ｙ０＋Ｎであって探索範囲のＹ軸（垂直）方向の終了点とする。
【００５３】
ステップＳＴ１５において、相関演算部１７は、ＹをＹ＋１に更新して、処理をステップＳＴ２に戻る。つまり、垂直方向に１画素移動したＮ×Ｎの画像領域が、新たな基準領域として、基準画像から切り出される。その後、補間演算部１７は、更新されたＹの値毎に、ステップＳＴ２からステップＳＴ１３までの処理を繰り返し、基準画像の全画像領域に対応するエピポーラライン上の比較領域に応じた演算結果Ｗ（Ｘ、Ｙ、Ｍ）を算出する。
【００５４】
次に、図６を参照して、上述したステップＳＴ４の処理１を詳細に説明する。
【００５５】
ステップＳＴ５１において、相関演算部１７は、演算補正位置ｉを０に初期設定し、演算途中結果Ｓを０に初期設定する。ここで、演算補正位置ｉと演算途中結果Ｓとは、処理２の演算を行うための変数である。
【００５６】
ステップＳＴ５２において、相関演算部１７は、比較領域におけるＸ座標（Ｘ０−Ｍ＋ｉ）である列に対応する列の差分和Ｓ１を算出する。
【００５７】
ステップＳＴ５３において、相関演算部１７は、比較領域におけるＸ座標（Ｘ０−Ｍ＋ｉ＋１）に対応する列の差分和Ｓ２を算出する。
【００５８】
ステップＳＴ５４において、相関演算部１７は、演算途中結果ＳをＳ＋Ｓ１＋Ｓ２に更新する。
【００５９】
ステップＳＴ５５において、相関演算部１７は、ｉ＝Ｎであるか否かを判定し、ｉ＝Ｎと判定するとステップＳＴ５７へ進み、ｉ≠Ｎと判定するとステップＳＴ５６へ進む。
【００６０】
ステップＳＴ５６において、相関演算部１７は、演算補正位置ｉをｉ＋２に更新し、処理をステップＳＴ５２に戻る。その後、相関演算部１７は、ステップＳＴ５２からステップＳＴ５６の処理を繰り返し、ｉ＝ＮとなるとステップＳＴ５５を介してステップＳＴ５７へ進む。
【００６１】
ステップＳＴ５７において、相関演算部１７は、ｉ＝Ｎの条件が満たされた時点での演算結果Ｗ（Ｘ０、Ｙ、Ｍ）を出力する。
【００６２】
以上のようにステップＳＴ５１からステップＳＴ５７までの処理で図５のステップＳＴ４に当たる処理１は終了する。
【００６３】
次に、図７を参照して、上述した図５におけるステップＳＴ１０の処理２について、詳細に説明する。
【００６４】
ステップＳ７１において、相関演算部１７は、現在の基準領域に応じた比較領域において、Ｘ座標（Ｘ−Ｍ＋ｉ）に対応する列の差分和Ｓ３を算出する。
【００６５】
ステップＳ７２において、相関演算部１７は、Ｘを１回更新する前の基準領域に応じた比較領域におけるＸ座標（Ｘ−Ｍ）に対応する列の差分和Ｓ４を算出する。
【００６６】
ステップＳＴ７３において、１つ前の基準領域に応じた演算結果Ｗ（Ｘ−１、Ｙ、Ｍ）を参照するとともに、Ｗ（Ｘ−１、Ｙ、Ｍ）に対してＳ３を加算し、Ｓ４を減算した値、つまり、演算結果Ｗ（Ｘ、Ｙ、Ｍ）＝Ｗ（Ｘ−１、Ｙ、Ｍ）＋Ｓ３―Ｓ４を出力する。
【００６７】
以上のようにステップＳＴ７１からステップＳＴ７３までの処理で図５のステップＳＴ１０に当たる処理２が終了する。
【００６８】
このように、図７の処理２は、Ｘを一回更新する前の基準領域に応じた相関演算結果Ｗ（Ｘ−１、Ｙ、Ｍ）を利用して、現在の基準領域の演算結果Ｗ（Ｘ−１、Ｙ、Ｍ）を算出する。したがって、相関演算部１７は、処理２を行わずに図７に示した処理１に基づいて全ての演算結果Ｗ（Ｘ、Ｙ、Ｍ）の演算処理を行うのに比べて、計算量を大幅に減少することができる。
【００６９】
相関記憶部１８は、相関演算部１７が算出した各画像領域の演算結果Ｗ（Ｘ、Ｙ、Ｍ）を記憶する。
【００７０】
相関検出処理部１９は、相関記憶部１８が記憶した各画像領域の演算結果Ｗ（Ｘ、Ｙ、Ｍ）に基づき、各基準領域に対応する比較領域を探索する。ここで、（１）式から得られる演算結果Ｗ（Ｘ、Ｙ、Ｍ）値が小さいと、それに伴って相関が高いことに対応する点に留意しなければならない。よって、相関検出処理部１９は、相関が最も高い、つまり演算結果Ｗ（Ｘ、Ｙ、Ｍ）の値が最も小さい点を対応点として選択する。相関検出処理部１９は、最も相関の高い値を対応点として相関補間処理部２０へ供給する。
【００７１】
相関補間処理部２０は、相関演算部１７で得られた離散的な相関値の補間を行うことによって、相関の最も高い点をより正確に求めることができる。
【００７２】
例えば、図４の（ｃ）に示した離散的な相関点に対して、補間相関演算を施したものは、図８に示すように、離散的な相関点に比べて、補間誤差を考慮しない限り、相関のより高い点を検出することができる。
【００７３】
従来の距離画像生成装置も、このような補間相関演算処理を行っている。ここで、従来の距離画像生成装置は、代表的な補間手法の中から一つの手法を用いて補間を行っているが、選択する補間手法と撮像対象物に応じて、補間誤差が大きく変動するといった問題がある。
【００７４】
ここで、画像生成装置１における相関補間処理部２０の具体的な処理工程について、図９を参照して説明する。
【００７５】
まず、撮像対象物２を左カメラ１１及び右カメラ１２で撮像した画像の全ての画像領域に対して相関演算を施して、離散的な相関結果を得ているものとする。
【００７６】
なお、相関演算は、全ての画像領域について行う場合に限らず、注目範囲に限定してもよい。また、相関演算は、画像領域を間引いて行われるようにしてもよい。
【００７７】
ステップＳＴ２１において、相関補間処理部２０は、相関検出処理部１９が算出した相関が最も高い点である対応点を、仮の計測距離ｄとして参照する。
【００７８】
ステップＳＴ２２において、相関補間処理部２０は、ステップＳＴ２１で算出された対応点の相関値と、その対応点の周辺の相関値に応じて、任意の補間手法の１つ（補間手法１と呼ぶ。）により補間相関曲線を算出し、求めた相関曲線から相関が最も高い点を最大補間相関点ｐ１とする。
【００７９】
ステップＳＴ２３において、相関補間処理部２０は、補間手法１と異なる補間手法２を用いて、ステップＳＴ２１で算出された対応点の相関値と、その対応点周辺の相関値に応じて補間相関曲線を算出し、求めた相関曲線から相関が最も高い点を最大補間相関点ｐ２とする。
【００８０】
ステップＳＴ２４において、相関補間処理部２０は、ステップＳＴ２３及びステップＳＴ２４でそれぞれ求めた最大補間相関点ｐ１及びｐ２に応じて（３）式に示す演算を施し、補間相関点ｐを算出する。
【００８１】
【数３】
2007179236.tif 000005
【００８２】
ここで、（３）式は、ｍ＞０かつｎ＞０の場合、ステップＳＴ２２で算出した最大補間相関点ｐ１とステップＳＴ２３で算出した最大補間相関点ｐ２の内分点を示し、ｍ又はｎのいずれか一方が負の場合には、外分点を示す。また、（３）式中のｍ、ｎの選択についての指針は後述する。
【００８３】
ステップＳＴ２５において、相関補間処理部２０は、ステップＳＴ２１で参照した仮の計測距離ｄに、ステップＳＴ２４で求めた補間相関点を加算して、（４）式に示すように補間後の距離ｄｓｕｂを算出する。
【００８４】
【数４】
2007179236.tif 000006
【００８５】
このように、相関補間処理部２０では、相関演算部１７から得られた相関点に対して、２つの異なる補間手法による補間処理を施す処理を行う。また、相関補間処理部２０は、図１０に示すようなブロック図によって実装される。相関演算部１７は、図１０に示すように、図９のステップＳＴ２２に相当する処理を行う補間相関演算器５１と、図９のステップＳＴ２３に相当する処理を行う補間相関演算器５２と、図９のステップＳＴ２４に相当する処理を行う内外分演算部５３と、図９のステップＳＴ２５に相当する加算器５４から構成される。
【００８６】
次に、相関補間処理の具体例として、正規化相関から得られた相関結果に応じて２つの異なる補間手法（本具体例では、後述する直線交点方式と二次曲線方式）に基づいて、補間相関曲線を算出した実施結果を示す。
【００８７】
まず、相関演算部１７では、（５）式の正規化相関を用いて、離散的な相関値を算出する。ここで、（５）式の正規化相関は値が大きいと、それに応じて相関が高いことに留意しなければならない。
【００８８】
【数５】
2007179236.tif 000007
【００８９】
ここで、Ｓ（ｊ）は相関値を表す。また、整数ｉは、撮像画像の各画素に応じた各点を示し、ａｉとｂｉはそれぞれ基準画像と比較画像の各画素の輝度値を表している。
【００９０】
次に、相関補間処理部２０は、（５）式を用いて相関演算部１７によって相関が最も高い点が求められ、当該相関値を仮距離として記憶する。（図９のステップＳＴ２１に相当する。）ここで、（５）式のＳ（ｊ）の値が最大となる点を、最も相関の高い点ｄとする。また、この処理は、相関検出処理部１９によって全ての基準領域毎に行われるものとする。
【００９１】
次に、直線交点方式による補間処理を行う。（図９のステップＳＴ２２に相当する。）直線交点方式では、相関演算部１７で求めた相関が最も高い点の相関値Ｓ（ｄ）と、エピポーララインに沿ったＳ（ｄ）の前後の相関値Ｓ（ｄ−１）、Ｓ（ｄ＋１）とを用いて補間演算を行う。具体的には、図１１に示すように、相関値Ｓ（ｄ−１）と相関値Ｓ（ｄ＋１）を比較して低い方の相関値からＳ（ｄ）に対して直線Ｌ１を引くとともに、相関値Ｓ（ｄ−１）と相関値Ｓ（ｄ＋１）を比較して高い方の相関値から直線Ｌ１に対して直交する直線Ｌ２を引き、直線Ｌ１と直線Ｌ２との交点の座標を求める。
【００９２】
この直線交点方式の具体的な処理工程を、図１２に示すフローチャートを用いて説明する。
【００９３】
ステップＳＴ３０において、相関補間処理部２０は、Ｓ（ｄ−１）＜Ｓ（ｄ＋１）であるか否か判定し、Ｓ（ｄ−１）＜Ｓ（ｄ＋１）と判定するとステップＳＴ３１へ進み、Ｓ（ｄ−１）＜Ｓ（ｄ＋１）ではないと判定するとステップＳＴ３２へ進む。
【００９４】
ステップＳＴ３１において、相関補間処理部２０は、（６）式に示す処理を行い、最大補間相関点ｐ１を算出する。
【００９５】
【数６】
2007179236.tif 000008
【００９６】
ステップＳＴ３２において、相関補間処理部２０は、（７）式に示す処理を行い、最大補間相関点ｐ１を算出する。
【００９７】
【数７】
2007179236.tif 000009
【００９８】
一方、上述した直線交点方式と異なる補間手法として２次曲線（パラボラフィッティング）方式を用いて補間処理を行う。（本工程は、図９のステップＳＴ２３に相当する。）パラボラフィッティング方式では、相関が最も高い点の相関値Ｓ（ｄ）と、エピポーララインに沿ったＳ（ｄ）の前後の相関値Ｓ（ｄ−１）、Ｓ（ｄ＋１）とを用いて補間演算を行う。具体的には、図１３に示すように、相関値Ｓ（ｄ−１）、Ｓ（ｄ）、Ｓ（ｄ＋１）の３点を通る２次曲線Ｓ（ｘ）＝ａｘ２＋ｂｘ＋ｃに応じた（８）式の最大補間相関点ｐ２を算出する。
【００９９】
【数８】
2007179236.tif 000010
【０１００】
次に、直線交点方式で求めた補間相関点ｐ１と、パラボラフィッティング方式で求めた補間相関点ｐ２とに応じて、それぞれの補間点の内分点ｐを求める。ここで、補間誤差の改善を図るには、内分点又は外分点が求められた補間点ｐを、補間相関点ｐ１と補間相関点ｐ２との補間誤差を相殺するように決定されなければならない。この補間誤差は、（３）式中のｍ、ｎを適切に選択することで相殺される。
【０１０１】
次に、補間誤差を相殺するために（３）式中のｍ、ｎを適切に選択するための指標について、具体例を用いて説明する。つまり、直線交点方式で求めた補間相関点ｐ１と、パラボラフィッティング方式で求めた補間相関点ｐ２とに応じた内分点又は外分点を決定する指標について、図１４から図１６を用いて説明する。
【０１０２】
まず、図１４から図１６は、それぞれ直線交点方式で求めた補間相関点ｐ１と、パラボラフィッティング方式で求めた補間相関点ｐ２と、補間相関点ｐ１と補間相関点ｐ２とから内分を求めた補間相関点ｐの補間誤差を示した図である。図１４から図１６において、これらの横軸は、相関の最も高い値となる基準画像と比較画像に基づく対応点が、エピポーララインに沿って何画素分ずれているか、つまり、基準画像と比較画像との視差を画素数で表したものである。一方、縦軸は、横軸で決定される対応点の位置に応じた補間相関点の補間誤差を表したものである。
【０１０３】
直線交点方式で求めた補間相関点ｐ１の補間誤差は、図１４に示すように、最大で０．０１１となる。同様にパラボラフィッティング方式で求めた補間相関点ｐ２の補間誤差は、図１５に示すように、最大で０．０７４となる。
【０１０４】
補間相関点ｐ１と補間相関点ｐ２の補間誤差は、図１４及び図１５に示すように、横軸に対してその誤差が互いに相反して変化する。また、補間相関点ｐ１と補間相関点ｐ２の補間誤差は、基準画像に基づく比較画像の対応点がエピポーラライン上に沿って、画素の整数倍若しくは１／２画素分のズレがある場合に誤差が最小となるが、約１／４画素ずらした場合に最大となる。このような横軸に対する誤差の変化は、パラボラフィッティング方式を含む多項式近似を用いた場合に生じる。したがって、このような誤差の変化の性質に注目して、（３）式の内分点の変数ｍ、ｎを決定すればよい。そこで、補間相関点ｐ１と補間相関点ｐ２との補間誤差の最大値の比率を内分点として修正を施した補間相関点ｐは、誤差の最大値が０．００３となり、従来の手法に比べて誤差が大きく改善する。
【０１０５】
したがって、補間相関点ｐを用いて視差を算出した計測距離の分解能は、直線交点方式による補間手法のみを行った場合に比べて約４倍、また、パラボラフィッティング方式による補間手法のみを行った場合に比べて約２５倍に向上する。
【０１０６】
ところで、画像生成装置１の計算量は、離散的な相関値を２種類の補間手法を用いて補間するので、従来の補間相関演算処理に対して増加する。しかし、このような補間相関演算処理の計算量の増加は、従来の手法を用いて分解能を向上することに比べて増加率が非常に小さい。したがって、画像生成装置１は、計算量の増加を抑えつつ、距離計測の分解能を向上することができる。
【０１０７】
なお、補間演算処理には、上述した直線交点方式やパラボラフィッティング方式に係わらず、他の補間方式を用いるようにしてもよい。例えば、補間方式１として代表的な補間手法であるスプライン方式による補間を行うとともに、補間方式２としてパラボラフィッティング方式による補間を行った場合には、それぞれの方式による補間誤差の位相が同相となるため、（３）式において外分点を求めることにより補間誤差を相殺した補間相関ｐを算出することができる。また、上述した直線交点方式やパラボラフィッティング方式は、合計３点の離散的な相関値に応じて補間処理を行うが、このような方式に限らず、合計４点以上の離散的な相関値に応じて補間処理、例えば、ラグランジュ補間、ニュートン補間、ネビル補間のような高次多項式近似を行うようにしてもよい。
【０１０８】
さらに、相関補間処理は、上述した２つの異なる補間手法を用いて補間処理を施し、２つの補間結果の内分又は外分を算出することで補間誤差の改善を行う場合に限らない。つまり、相関補間処理は、２つ以上の異なる補間手法、例えば３種類の補間手法を用いて補間処理を行い、３つの補間結果に応じた適切な補間処理（例えば、重心を求める式）を施すようにして補間誤差の改善を行うようにしても良い。
【０１０９】
また、相関補間処理は、２つの補間手法を用いる場合に限らず、３つ以上の補間手法を用いる場合でも、それぞれの補間手法で得られた補間値の誤差を最小にするように、最小二乗法で改善するようにしてもよい。
【図面の簡単な説明】
【０１１０】
【図１】本発明に係る画像生成装置の一例を示したブロック図である。
【図２】基準画像における座標に対応した比較画像上のエピポーララインを求める説明するための図である。
【図３】撮像画像の平行化に応じたエピポーララインの変化について示した図である。
【図４】基準画像の観測点に対応する比較画像の対応点を探索する処理を示した図である。
【図５】相関演算部における相関値の算出処理を示したフローチャートである。
【図６】相関演算部における相関値の算出処理の一部を示したフローチャートである。
【図７】相関演算部における相関値の算出処理の一部を示したフローチャートである。
【図８】相関演算部で算出された離散的な相関値の間を所定の補間手法で補間を行った補間相関値を示した図である。
【図９】補間相関演算部における補間処理を示したフローチャートである。
【図１０】補間相関演算部における補間処理を示したブロック図である。
【図１１】直線交点方式による補間手法を示した図である。
【図１２】直線交点方式による補間処理を示したフローチャートである。
【図１３】パラボラフィッティング方式による補間手法を示した図である。
【図１４】直線交点方式による相関補間演算のみを行った場合の補間誤差を示した図である。
【図１５】パラボラフィッティング方式による相関補間演算のみを行った場合の補間誤差を示した図である。
【図１６】直線交点方式とパラボラフィッティング方式による補間演算の内分点をとる処理を施す相関補間演算を行った場合の補間誤差を示した図である。
【図１７】ステレオ法による距離画像の生成方法を示した模式図である。
【図１８】正規化相関値を演算する回路の構成例を示すブロック図である。
【符号の説明】
【０１１１】
１  画像生成装置、２  撮像対象物、１１  左カメラ、１２  右カメラ、１３  左画像変換部、１４  右画像変換部、１５  左変換テーブル、１６  右変換テーブル、１７  相関演算部、１８  相関値記憶部、１９  相関検出処理部、２０  相関補間処理部、２１  距離画像生成部
【図１】
2007179236.tif 000011
【図２】
2007179236.tif 000012
【図３】
2007179236.tif 000013
【図４】
2007179236.tif 000014
【図５】
2007179236.tif 000015
【図６】
2007179236.tif 000016
【図７】
2007179236.tif 000017
【図８】
2007179236.tif 000018
【図９】
2007179236.tif 000019
【図１０】
2007179236.tif 000020
【図１１】
2007179236.tif 000021
【図１２】
2007179236.tif 000022
【図１３】
2007179236.tif 000023
【図１４】
2007179236.tif 000024
【図１５】
2007179236.tif 000025
【図１６】
2007179236.tif 000026
【図１７】
2007179236.tif 000027
【図１８】
2007179236.tif 000028