説明

対応点探索方法および3次元位置計測方法

【課題】対応点の探索に要する計算量を大幅に減らし、短時間でかつ高精度に、対応付けの結果を得ることができるようにする。
【解決手段】対象物を異なる視点から見た複数の画像を取り込む。その画像の1つを基準画像、それ以外を参照画像とする。基準画像および参照画像から、カメラパラメータおよび基準点から計算されるエピポーラ線に沿って、所定幅Wの1次元の画素データ列を切り出す。この切り出した1次元の画素データ列から位相限定相関関数を計算することによって相関ピークの位置Pa1を求め、この相関ピークの位置Pa1から位置ずれ量dを求め、この位置ずれ量dから基準点pに対応する対応点qを探索する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、立体的な物体、例えば人間の顔などを対象物とし、この対象物を異なる視点から見た複数の画像中の対応点を探索する対応点探索方法およびこの対応点探索方法を利用した3次元位置計測方法に関するものである。
【背景技術】
【0002】
従来より、対象物を異なる視点から見た複数の画像中の対応点の探索は、画像センシング、画像・映像信号処理、コンピュータビジョン等の様々な分野で重要な技術とされている。これらの分野では、通常、ピクセル精度の対応付け手法を用いることが多いが、近年、サブピクセル精度の対応付け手法への要求が高まっている。
【0003】
例えば、基線長の短いステレオビジョンシステムにおいて、十分な3次元計測精度を実現するためには、サブピクセル精度の対応付けアルゴリズムが不可欠である。また、超解像による映像の高解像度化技術などにおいても、サブピクセル精度の対応付けアルゴリズムが重要になる。このため、例えば特許文献1に示された立体像計測装置では、対象物を異なる視点から見た複数の画像中の対応点の探索を2次元位相限定相関法を用いて行うことにより、サブピクセル精度の対応付けの要求を満たしている。
【0004】
図20は上述の特許文献1に示された立体像計装置における画像入力部の概略を示す図である。同図において、1は第1のカメラ、2は第2のカメラ、Mは対象物(人間の顔)である。カメラ1,2は、そのレンズLN1,LN2間の距離をLとして、横方向に並んで配置されている。図では分かり易いように、カメラ1および2を上方向から見た図とし、対象物Mは横方向から見た図としている。
【0005】
この立体像計測装置では、対象物Mをカメラ1で捉えた画像を入力画像I(図21(a))とし、この入力画像Iの画像データをm×n個の局所領域I(i,j)に分割する(図21(b))。そして、入力画像Iの画像データから局所領域I(i,j)を切り出し、この切り出した局所領域I(i,j)の画像データに2次元離散的フーリエ変換(DFT)を施してフーリエ画像データ(入力フーリエ画像データ)を得る。
【0006】
また、対象物Mをカメラ2で捉えた画像を参照画像J(図21(c))とし、この参照画像Jの画像データに2次元離散的フーリエ変換を施してフーリエ画像データ(参照フーリエ画像データ)を得る。
【0007】
そして、この得られた入力フーリエ画像データと参照フーリエ画像データとを合成し、この合成したフーリエ画像データ(合成フーリエ画像データ)の振幅成分を正規化して、もう一度、2次元離散的フーリエ変換(もしくは2次元離散的逆フーリエ変換)を施す。
【0008】
そして、この2次元離散的フーリエ変換が施された合成フーリエ画像データより所定の相関成分エリアの各画素の相関成分の強度(振幅)を求め、この相関成分エリア内の最も強度の高い画素の位置を相関ピークの位置Pa1(図21(d))とする。
【0009】
この場合、相関成分エリアの中心P0から相関ピークの位置Pa1までの距離Aが、入力画像Iの画像データにおける局所領域I(i,j)と参照画像Jの画像データにおける一致する画像データのある領域(対応領域)とのずれ量を示す。入力画像Iにおける局所領域I(i,j)中の画像と参照画像Jにおける対応領域中の画像とは視差によってその画像がずれており、これがずれ量Aとして現れる。
【0010】
このずれ量Aによって、入力画像中の局所領域I(i,j)の中心点(基準点)と、参照画像J中の対応領域の中心点(対応点)とを対応付け、三角測量の原理に基づく下記(1)式によって、カメラから対象物Mの対応点(基準点)までの距離Rを計算する。なお、下記(1)式において、fはレンズLN(LN1,LN2)の中心から撮像位置までの距離、Lはレンズ間距離である。
R=f・L/A ・・・・(1)
【0011】
【特許文献1】特開平10−132534号公報
【非特許文献1】「写真から作る3次元CG」、著者:徐剛、発行所:株式会社 近代科学社、2003年2月25日 初版第2刷発行、31〜33頁。
【非特許文献2】ディジタル画像処理編集委員会、“ディジタル画像処理”、CG-ARTS協会、2005。
【非特許文献3】D. Scharstein and R. Szeliski. “A Taxonomy and Evaluation of Dense Two-Frame Stereo Correspondence Algorithms”, IJCV 47(1/2/3):7-42, April-June 2002.
【非特許文献4】Yi Ma, Stefano Soatto, Jana Kosecka, S. Shankar Sastry, “An Invitation to 3-D Vision: From Images to Geometric Models (Interdisciplinary Applied Mathematics)”, Springer, 2004.
【非特許文献5】K. Takita, T. Aoki, Y. Sasaki, T. Higuchi, and K. Kobayashi, “High-accuracy subpixel image registration based on phase-only correlation,” IEICE Trans. Fundamentals, vol. E86-A, no. 8, pp. 1925-1934, Aug. 2003.
【非特許文献6】K. Takita, M. A. Muquit, T. Aoki, and T. Higuchi, “A sub-pixel correspondence search technique for computer vision applications,” IEICE Trans. Fundamentals, vol. E87-A, no. 8, pp. 1913-1923, Aug. 2004.
【非特許文献7】M. A. Muquit, T. Shibahara, and T. Aoki, “A high-accuracy passive 3D measurement system using phase-based image matching,” IEICE Trans. Fundamentals,vol.E89-A, no. 3, pp. 686-697, Mar. 2006.
【非特許文献8】徐 剛, 辻 三郎、“3次元ビジョン” 、共立出版、1998。
【発明の開示】
【発明が解決しようとする課題】
【0012】
上述した特許文献1に示された手法は、対応付けの精度が極めて高く、様々な画像に対して同一のアルゴリズムが適用できるという長所がある。しかしながら、この手法は、2次元離散的フーリエ変換に要する計算量が多く、短時間で対応付けの結果を得ることが要求される分野では採用し難いという問題があった。
【0013】
本発明は、このような課題を解決するためになされたもので、その目的とするところは、対応点の探索に要する計算量を大幅に減らし、短時間でかつ高精度に、対応付けの結果を得ることが可能な対応点探索方法および3次元位置計測方法を提供することにある。
【課題を解決するための手段】
【0014】
このような目的を達成するために、本発明に係る対応点探索方法(請求項1(第1発明))は、画像取込手段を介して、対象物を異なる視点から見た複数の画像を取り込む画像取込ステップと、画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に沿って複数の画像より1次元の画素データ列を切り出す画素データ列切出ステップと、複数の画像から切り出された1次元の画素データ列の相関から複数の画像中の対応点を探索する対応点探索ステップとを設けたものである。
【0015】
この発明において、例えば、画像取込手段を所定の距離隔てて配置された2台のカメラとした場合、第1のカメラと第2のカメラが対象物に対して等位置に傾斜なく配置されていれば、第1のカメラで撮像される画像および第2のカメラで撮像される画像におけるエピポーラ線は、いずれも水平となる。これに対し、第1のカメラおよび第2のカメラの何れかが傾斜していれば、第1のカメラで撮像される画像および第2のカメラで撮像される画像におけるエピポーラ線も傾斜する。このように、第1のカメラで撮像される画像および第2のカメラで撮像される画像におけるエピポーラ線は、第1および第2のカメラの位置関係(2つの画像間の基礎行列や、内部行列・外部行列などのカメラ固有のパラメータ)によって定まる。本発明では、このような画像取込手段のパラメータを保存しておき、対応点を探索する際の処理過程で用いる。
【0016】
本発明において、画像取込手段は、複数台のカメラに限られるものではない。例えば、光学機構を設けることによって、1台のカメラから対象物を異なる視点から見た複数の画像を得るようにしてもよい。
【0017】
本発明において、複数の画像のうちの1つを入力画像、もう1つを参照画像とした場合、画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に沿って、入力画像および参照画像より1次元の画素データ列(例えば、32画素の画素データ列)が切り出される。そして、このエピポーラ線に沿って切り出された1次元の画素データ列の相関から、入力画像中の基準点に対応する参照画像中の対応点が探索され、基準点と対応点とが対応付けられる。
【0018】
この場合、基準点の画素データ列は1次元の画素データ列であり、参照画像中の画素データ列も1次元の画素データ列であるので、1次元の位相限定相関法(1次元POC)を利用することができる。すなわち、複数の画像から切り出された1次元の画素データ列から位相限定相関相関を計算することによって得られる相関ピークの位置から位置ずれ量を求め、この位置ずれ量から複数の画像中の対応点を探索することが可能である。
【0019】
1次元POCでは、1次元のフーリエ変換を施せばよいので、計算量を大幅に減らすことができる。これにより、対応点の探索に要する計算量が大幅に減り、短時間で対応付けの結果を得ることが可能となる。また、1次元POCを用いることにより、エピポーラ線の垂直方向の相関誤差要因を少なくすることができ、高精度な対応点探索が可能となる。
【0020】
本発明において、画像取込手段を介して取り込まれる画像に存在するエピポーラ線は水平であるとは限らず、傾斜している場合もある。理想的には水平であることが望まれるが、カメラの取り付け誤差などもあり、エピポーラ線は傾斜している場合が多い。
そこで、第2発明(請求項2に係る発明)では、複数の画像中の各画素データを、画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に平行な軸を一軸とし、この一軸に対して垂直な軸を他軸とする座標系に変換し、この座標系が変換された複数の画像から1次元の画素データ列を切り出すようにする。なお、このような座標系の変換は必ずしも必要ではなく、エピポーラ線が傾斜した座標系のまま処理を進めて、対応点の探索を行うようにしてもよい。座標系を変換することにより、以降の処理が簡単となる。
【0021】
本発明では、エピポーラ線に沿って複数の画像より1次元の画素データ列を切り出し、この切り出した1次元の画素データ列の相関から対応点を探索するが、その1次元の画素データ列の近傍のエピポーラ線に平行な線に沿う1次元の画素データ列を複数の画像から切り出し、これら複数組の1次元の画素データ列の相関から対応点を探索するようにしてもよい(第3発明(請求項3に係る発明))。このようにすると、ノイズの影響を受け難くなり、対応点探索の性能がより安定する。
【0022】
また、複数の画像から対応点探索の対象領域としてオブジェクト領域を抽出するようにし、この複数の画像から抽出されたオブジェクト領域よりエピポーラ線に沿って1次元の画素データ列を切り出すようにしてもよい(第4発明(請求項4に係る発明))。画像内のオブジェクト領域外の画素データを処理対象から除外することで、これらの領域が対応点探索過程で精度を下げる外乱要因として働くことを未然に防止し、対応点探索精度の向上を図ることが可能となる。また、オブジェクト領域を対応点探索の対象領域とすることにより、次々に対応点の探索を行うような場合、基準点をずらす領域を狭め、処理すべきデータ量を削減することができる。
【0023】
また、本発明の対応点探索方法を利用することにより、探索した対応点の3次元位置を計測することも可能である。請求項5に係る発明(第5発明)は、探索した対応点の3次元位置を計測する3次元位置計測方法に関するものであり、第1発明によって探索された対応点の視差に基づいてその対応点の3次元位置を計測する。これにより、対応点の探索に要する計算量を大幅に減らし、対象物における各点の3次元位置を短時間で計測することが可能となる。
【発明の効果】
【0024】
本発明によれば、画像取込手段を介して、対象物を異なる視点から見た複数の画像を取り込み、画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に沿って複数の画像より1次元の画素データ列を切り出し、複数の画像から切り出された1次元の画素データ列の相関から複数の画像中の対応点を探索するようにしたので、1次元POCを利用することができ、対応点の探索に要する計算量を大幅に減らし、短時間で対応付けの結果を得ることが可能となる。また、1次元POCを用いることにより、エピポーラ線の垂直方向の相関誤差要因を少なくすることができ、高精度な対応点探索が可能となる。
【発明を実施するための最良の形態】
【0025】
以下、本発明を図面に基づいて詳細に説明する。図1はこの発明に係る対応点探索方法を利用した3次元位置計測装置の一実施の形態を示すブロック構成図である。同図において、10は第1のカメラ(CCDカメラ)、11は第2のカメラ(CCDカメラ)、12は液晶表示装置(LCD)、20は処理部であり、処理部20は、CPUを有する制御部20−1と、ROM20−2と、RAM20−3と、ハードディスクドライブ(HDD)20−4と、フレームメモリ(FM)20−5と、外部接続部(I/F)20−6と、フーリエ変換部(FFT)20−7とを備えており、ROM20−2には3次元位置計測プログラムが格納されている。
【0026】
カメラ10,11は、図20に示した従来例と同様に、所定の距離Lを隔てて設置されている。すなわち、カメラ10,11は、そのレンズLN1,1N2間の距離をLとして、横方向に並んで配置されている。この図でも分かり易いように、3次元位置計測装置は上方向から見た図とし、対象物Mは横方向から見た図としている。
【0027】
〔カメラパラメータの保存〕
カメラ10および11は所定の距離Lを隔てて配置されている。このカメラ10および11が互いの光軸が平行且つ、画像座標の水平軸が同一直線上で同じ向きになるように配置されていれば、図2(a)および(b)に示すように、カメラ10で撮像される画像Iにおける基準点pが存在する直線EP1およびカメラ11で撮像される画像Jにおける対応点qが存在する直線EP2、すなわちエピポーラ線EP1およびEP2は、いずれも水平となる。なお、エピポーラ線については、非特許文献1などに解説されているので、ここでの詳細な説明は省略する。
【0028】
これに対し、カメラ10および11の何れかが傾斜していれば、カメラ10で撮像される画像Iおよびカメラ11で撮像される画像Jにおけるエピポーラ線EP1,EP2も傾斜する(図3(a),(b)参照)。このように、カメラ10で撮像される画像Iおよびカメラ11で撮像される画像Jにおけるエピポーラ線EP(EP1,EP2)は、カメラ10とカメラ11との位置関係(2つの画像間の基礎行列や、内部行列・外部行列などのカメラ固有のパラメータ)によって定まる。本実施の形態では、このカメラ10とカメラ11との位置関係を示すパラメータ(カメラパラメータ)をハードディスクに保存させておき、後述する対応点を探索する際の処理過程で用いる。
【0029】
〔3次元位置の計測〕
この3次元位置計測装置において、対象物Mを人間の顔とした場合、この対象物Mにおける各点の3次元位置の計測は次のようにして行われる。この3次元位置の計測処理は、ROM20−2に格納された3次元位置計測プログラムに従って、制御部20−1が行う。
【0030】
〔画像取り込み〕
制御部20−1は、カメラ10からの対象物Mを捉えた画像Iを入力画像(図4(a))として取り込む(図5に示すステップ101)。また、カメラ11からの対象物Mを捉えた画像J(図4(b))を参照画像として取り込む(ステップ102)。
【0031】
〔座標系の変換〕
そして、ハードディスクに保存されているカメラパラメータを読み出し、入力画像Iおよび参照画像J中の各画素データを、カメラパラメータおよび基準点から計算されるエピポーラ線EPに平行な軸をX軸とし、このX軸に対して垂直な軸をY軸とする座標系に変換する(ステップ103)。この座標系が変換された入力画像Iおよび参照画像Jを入力画像I’および参照画像J’とする(図4(c),(d))。
【0032】
〔対象領域の抽出〕
次に、エッジ検出により、入力画像I’および参照画像J’中から、対象物M(人間の顔)が存在する領域だけを対応点探索の対象領域(以下、オブジェクト領域と呼ぶ)として抽出する(ステップ104)。これにより、図4(e)および(f)に示されるように、オブジェクト領域OB1およびOB2を抽出した入力画像I”および参照画像J”が得られる。
【0033】
なお、ここでは、説明を簡単とするために、入力画像Iおよび参照画像Jにおける対象物M以外の背景は無地であり、対象物Mが存在する領域だけがオブジェクト領域OB1およびOB2として正しく抽出されるものとする。
【0034】
〔対応点の探索〕
そして、制御部20−1は、入力画像I”中のオブジェクト領域OB1と参照画像J”中のオブジェクト領域OB2とを対象領域として、対応点の探索を行う(ステップ105)。図6にステップ105における対応点の探索処理のフローチャートを示す。制御部20−1は、このフローチャートに従って、対応点の探索を次のようにして行う。
【0035】
先ず、入力画像I”において、X軸に平行な各線(1画素幅の線)のオブジェクト領域OB1内の起点(ST)と終点(END)を求める(ステップ201)。
【0036】
そして、オブジェクト領域OB1中の最上位の線の線番号をn=1とし(ステップ202)、このn=1番目の線上に基準点pを定め、その基準点pを中心とする所定幅Wの探索ウィンドウSWの画素データ列を基準点pの画素データ列として抽出する(ステップ203)。この例では、n=1番目の線(以下、探索ラインと呼ぶ)の起点ST(図7(a)参照)から、幅Wを32画素とする探索ウィンドウSW内の画素のデータ列を基準点pの画素データ列として抽出する。
【0037】
この場合、n=1番目の探索ラインが基準点pのエピポーラ線EPであり、このエピポーラ線EPに沿って基準点pの画素データ列が切り出されるものとなる。この基準点の画素データ列は1次元の画素のデータ列である。
【0038】
また、オブジェクト領域OB2中の基準点pに対応する座標点を候補点q’とし、この候補点q’を中心とする幅W=32画素の探索ウィンドウCWを定め、探索ウィンドウCW内の画素のデータ列を候補点q’の画素データ列として抽出する(ステップ204)。
【0039】
この場合、n=1番目の探索ラインが候補点q’のエピポーラ線EPであり、このエピポーラ線EPに沿って候補点q’の画素データ列が切り出されるものとなる。この候補点の画素データ列は1次元の画素のデータ列である。
【0040】
そして、ステップ203で抽出した基準点pの画素データ列とステップ204で抽出した候補点q’の画素データ列とから位相限定相関関数を計算する(ステップ205)。この位相限定相関関数の計算には1次元位相限定相関法(1次元POC)を用いる。この1次元POCによる位相限定相関関数の計算は次のようにして行う。
【0041】
制御部20−1は、ステップ203で抽出した基準点pの画素データ列を第1の画像データG1とし(図8(a)参照)、この第1の画像データG1をフーリエ変換部20−7へ送り、この第1の画像データG1に1次元のフーリエ変換を施す。これにより、第1の画像データG1は、フーリエ画像データF1となる。
【0042】
また、ステップ204で抽出した候補点q’の画素データ列を第2の画像データG2とし(図8(b)参照)、この第2の画像データG2をフーリエ変換部20−7へ送り、この第2の画像データG2に1次元のフーリエ変換を施す。これにより、第2の画像データG2は、フーリエ画像データF2となる。
【0043】
そして、制御部20−1は、フーリエ画像データF1とフーリエ画像データF2とを合成し、この合成したフーリエ画像データ(合成フーリエ画像データ)の振幅成分を正規化してフーリエ変換部20−7へ送り、もう一度、1次元のフーリエ変換を施す。
【0044】
そして、この1次元のフーリエ変換が施された合成フーリエ画像データより所定の相関成分エリアの各画素の相関成分の強度(振幅)を求め、この相関成分エリア内の最も強度の高い相関成分の強度値を相関ピークとし、この相関ピークの位置Pa1(図8(c))を求める。この処理過程において、相関ピークを求める処理が位相限定相関関数を計算することに対応する。
【0045】
この場合、相関成分エリアの中心P0から相関ピークの位置Pa1までの距離dが、探索ウィンドウSW中の画像と探索ウィンドウCW中の画像とのずれ量、すなわち探索ウィンドウSW中の基準点pと探索ウィンドウCW中の対応点qとのずれ量を示す。制御部20−1は、この基準点pと対応点qとのずれ量dを基準点pに対応付けて記憶する(ステップ206)。
【0046】
以下同様にして、制御部20−1は、オブジェクト領域OB1中のn=1番目の探索ライン上の基準点を所定画素(例えば、1画素)ずつずらしながら、すなわち探索ウィンドウSWを所定画素づつずらしながら(ステップ208)、同様の処理を繰り返す。
【0047】
そして、オブジェクト領域OB1中のn=1番目の探索ラインの終点ENDまで対応点の探索が完了すれば(ステップ207のYES)、オブジェクト領域OB1中のn=2番目の探索ラインの起点に探索ウィンドウSWを移す(ステップ209)。以下同様にして、オブジェクト領域OB1中の最後の探索ラインの終点まで、同様動作を繰り返す。
【0048】
〔3次元位置の計測〕
制御部20−1は、オブジェクト領域OB1中の全ての基準点について対応点の探索が完了すると(ステップ210のYES)、各基準点と各対応点とのずれ量dに基づいて、三角測量の原理に基づく下記(2)式によって、カメラから対象物Mの対応点(基準点)までの距離Rを計算する(ステップ106(図5))。
R=f・L/d ・・・・(2)
【0049】
そして、この計算したカメラから対象物Mの対応点(基準点)までの距離Rを3次元位置の計測データとし、各点の3次元位置の計測データをハードディスクに記憶させる。このハードディスクに記憶させた3次元位置の計測データ群は、必要に応じて読み出し、LCD12の画面上に表示したり、上位の装置へ送ったりする。
【0050】
以上の説明から分かるように、本実施の形態において、基準点pの画素データ列は1次元の画素データ列であり、この基準点pの画素データ列との相関を求める候補点q’の画素データ列も1次元の画素データ列であり、この基準点pの画素データ列と候補点q’の画素データ列から1次元POCを利用して位相限定相関関数を計算するようにしている。1次元POCでは、1次元のフーリエ変換を施すので、対応点の探索に要する計算量が大幅に減り、短時間で対応付けの結果を得ることができる。また、1次元POCを用いることにより、エピポーラ線EPに垂直方向の相関誤差要因を取り除くことが可能となり、高精度な対応点探索が可能となる。
【0051】
なお、上述した実施の形態では、基準点pの探索ウィンドウSWと候補点q’の探索ウィンドウCWの幅Wを同じとしたが、候補点q’の探索ウィンドウCWの幅Wは基準点pの探索ウィンドウSWの幅W以上あればよく、1本の探索ラインの起点STから終点ENDまでの全ての範囲を探索ウィンドウCWとしてもよい。
【0052】
また、上述した実施の形態では、エピポーラ線EPに沿って各画像より1次元の画素データ列を切り出し、この切り出した1次元の画素データ列の位相限定相関関数から対応点を探索するが、その1次元の画素データ列の近傍のエピポーラ線EPに平行な線に沿う1次元の画素データ列を各画像から切り出し、これら複数組の1次元の画素データ列の位相限定相関関数から対応点を探索するようにしてもよい。このようにすると、ノイズの影響を受け難くなり、より対応点探索性能が安定する。
【0053】
例えば、図9に示すように、入力画像I”における探索ウィンドウSW(SW0)に対して平行に、この探索ウィンドウSW0と同じ位置から同じ長さの近傍探索ウィンドウSW1〜SW4を定め、この探索ウィンドウSW0および近傍探索ウィンドウSW1〜SW4内の画素データ列と参照画像J”における探索ウィンドウCW0および近傍探索ウィンドウCW1〜CB4内の画素データ列の各組の相関値を求め、相関値の平均を計算する。平均された相関値の最大ピーク位置を求めることで基準点pと対応点qとのずれ量を算出する。
【0054】
この場合、探索ウィンドウSW0および近傍探索ウィンドウSW1〜SW4内の画素データ列に1次元のフーリエ変換を施し、探索ウィンドウCW0および近傍探索ウィンドウCW1〜CB4内の画素データ列に1次元のフーリエ変換を施し、フーリエ変換が施された探索ウィンドウSW0内の画素データ列と探索ウィンドウCW0内の画素データ列とを合成し、同様にして、フーリエ変換が施された近傍探索ウィンドウSW1〜SW4内の画素データ列と近傍探索ウィンドウCW1〜CB4内の画素データ列とを各個に合成し、これにより得られる5つの合成フーリエ画像データを平均して合成位相スペクトルを作成し、この合成位相スペクトルに対して1次元のフーリエ変換を施して最大相関ピークの位置を求めるようにすれば、5つの合成フーリエ画像データの1つひとつに1次元のフーリエ変換を施して相関ピークの位置を求めるようにする方法と比較して、格段に処理スピードがアップする。
【0055】
図9では、探索ウィンドウSW0に対して平行に、画像の水平方向に同じ位置から同じ長さの近傍探索ウィンドウSW1〜SW4を定めたが、図10に示すように、画像の水平方向に異なる位置から同じ長さの近傍探索ウィンドウSW1〜SW4を定めるようにしてもよい。また、図11に示すように、画像の水平方向に異なる位置から異なる長さの近傍探索ウィンドウSW1〜SW4を定めるようにしてもよい。また、図12に示すように、画像の異なる位置から異なる長さの近傍探索ウィンドウSW1〜SW4を定めるようにしてもよい。
【0056】
また、上述した実施の形態では、ステップ103において入力画像Iおよび参照画像Jを座標変換するようにしたが、必ずしも座標変換を行わなくてもよい。カメラ10で撮像される画像およびカメラ11で撮像される画像に存在するエピポーラ線EPは水平であるとは限らず、傾斜している場合もある。理想的には水平であることが望まれるが、カメラ10およびカメラ11の取り付け誤差などもあり、エピポーラ線EPは傾斜している場合が多い。このため、本実施の形態では、エピポーラ線EPに平行な軸を一軸とし、この一軸に対して垂直な軸を他軸とする座標系に変換するようにした。エピポーラ線EPが傾斜座標系のまま対応点の探索を進めるようにしてもよいが、座標系を変換することにより、以降の処理が簡単となる。なお、エピポーラ線EPが平行である場合には、座標系の変換は不要である。
【0057】
また、上述した実施の形態では、入力画像I’および参照画像J’からエッジ検出によってオブジェクト領域OB1およびOB2を抽出するようにしたが、必ずしもオブジェクト領域OB1およびOB2を抽出するようにしなくてもよい。例えば、オブジェクト領域OB1およびOB2を抽出せずに、入力画像I’および参照画像J’の最上位の探索ラインの起点から最下位の探索ラインの終点まで、基準点pを移動しながら、すなわち探索ウィンドウSWを移動しながら、基準点pと対応点qとの対応付けを進めるようにしてもよい。
【0058】
この場合、入力画像I’中の全領域において基準点pをずらしながら、その基準点pの画像データ列と参照画像J’中の候補点q’の1次元の画素データ列との位相限定相関関数を1次元POCによって計算することになるので、処理すべきデータ量が多くなる。これに対して、入力画像I’および参照画像J’からオブジェクト領域OB1およびOB2を抽出し、この抽出したオブジェクト領域OB1およびOB2を探索対象領域とすることにより、入力画像I’中の基準点pをずらす領域を小さくし、処理すべきデータ量を削減することができる。また、画像内のオブジェクト領域OB1,OB2外の画素データを処理対象から除外することで、これらの領域が対応点探索過程で精度を下げる外乱要因として働くことを未然に防止し、対応点探索精度の向上を図ることが可能となる。また、オブジェクト領域OB1中の探索ラインの起点から対応点の探索を始めることにより、常に対象物Mの輪郭に近い位置から対応点が求まるものとなり、対象物の3元位置の計測精度が向上する。
【0059】
また、上述した実施の形態では説明しなかったが、対応点の探索を開始する際、入力画像I”および参照画像J”を低解像度として基準点の画素データ列と候補点の画素データ列との位相限定相関関数を計算し、この結果、相関ピークが得られれば、入力画像I”および参照画像J”の解像度を上げるということを段階的に繰り返して行くようにしてもよい。
【0060】
また、上述した実施の形態では、カメラを2台としたが、光学機構を設けることによって、1台のカメラから入力画像Iと参照画像Jを得るようにしてもよい。また、カメラを3台以上設け、さらに複数の画像を得るようにしてもよい。カメラを1台とすると、ハードウェアで設計的に同期をとらずによいので、作りやすい。カメラがメガピクセルで高価な場合、安価になる場合がある。
【0061】
また、上述した実施の形態では、基準点pの画素データ列と候補点q’の画素データ列との相関関数を1次元の位相限定相関法で計算するようにしたが、1次元の帯域制限法で計算したり、1次元の相関係数法で計算したり、1次元の振幅抑制相関法で計算したりするようにしてもよい。
【0062】
次に、1次元位相限定相関法を用いたエピポーラ幾何補正済み画像の対応付け手法について、さらに詳細に説明する。
【0063】
1.1次元位相限定相関法に基づく画像の対応付けの基本手法
対応付けを行う2枚の画像を、そのエピポーラ線が平行になるように幾何補正(平行化)する(図13(a)、(b)参照)。図13(b)に示すように、この補正された2枚の画像を画像1および画像2とする。ここでは、図13(b)に示すように水平方向にエピポーラ線がそろう場合を考えるが、これは容易に一般的な平行化の場合に拡張できる。いま、画像1の基準点に対応する画像2の対応点を見つける問題を考える。
【0064】
まず、図13(b)に示すように、平行化された画像1から、基準点pを中心とした1次元の画像信号を切り出し、f(n)とする。ここで、1次元画像信号f(n)はエピポーラ線と同じ方向に有限の長さで切り出すものとする。同様に平行化された画像2から、探索する対応点qの候補となる点q’を中心として1次元画像信号g(n)を切り出す。このg(n)は基準点pに対応するエピポーラ線上に存在する。ここで、1次元画像信号の離散空間インデックスを便宜上、n=−M,..,Mとする。ただし、Mは正の整数であり、1次元画像信号の長さNはN=2M+1で与えられる。
【0065】
なお、ここでは、説明を簡単にするために離散空間のインデックスを正負対称に取り、かつ1次元画像信号の長さを奇数にしているが、これは本手法の構成において必須ではない。すなわち、通常よく用いられるように0以上の離散空間インデックスを用い、1次元画像信号の長さNを任意の正の整数に設定するように一般化することが可能である。通常はNを2のべき乗の値にとり、高速フーリエ変換(FFT)を利用して計算することが多い(後述する性能評価においても、Nを2のべき乗の値にとっている)。
【0066】
以下では、フーリエ変換の記述の簡便さのために、上記のような設定を用いて説明を行う。また、1次元画像信号f(n)とg(n)は、必ずしも基準点pとその対応候補点q’を厳密に中心として切り出す必要はなく、一般にはそれらの上を通るように切り出すことができる。このとき、f(n)とg(n)の1次元離散フーリエ変換を次式で定義する。
【0067】
【数1】

【0068】
ここで、AF(k)及びAG(k)はそれぞれ1次元画像信号f(n)およびg(n)の振幅成分であり、θF(k)およびθG(k)はそれぞれの位相成分である。また、離散周波数のインデックスをk=−M,..,Mとする。ここで、離散空間のインデックスnと同様に、離散周波数kのインデックスの選び方にも自由度がある。このとき、合成位相スペクトルR(k)を次式で与える。
【0069】
【数2】

【0070】
しかし、実際のカメラで撮影された画像の場合、これは大きな問題にならない。f(n)とg(n)の1次元位相限定相関関数r(n)を、合成位相スペクトルR(k)の1次元逆離散フーリエ変換として定義する。
【0071】
【数3】

【0072】
ここで、n=−M,..,Mである。
【0073】
次に、切り出した1次元画像信号f(n)とg(n)が、互いに微小移動した関係にある場合を考える。つまり、このf(n)とg(n)に含まれる視差をサブピクセル分解能で推定する問題を考える。いま、fc(x)を連続空間変数xの上で定義された1次元画像信号とする。これを実数値δだけ微小移動した1次元画像信号はfc(x−δ)と表される。このとき、f(n)とg(n)が、fc(x)およびfc(x−δ)を適当な空間サンプリング間隔Tでサンプリングしたものであると仮定する。すなわちf(n)とg(n)を次式で定義する。
【0074】
【数4】

【0075】
以下では、簡単のためにT=1とする。このとき実数値の移動量δについて、サンプリング間隔を越える分解能で検出する方法を示す。まず、δが小さい場合、f(n)とg(n)の1次元離散フーリエ変換F(k)とG(k)に関して、次式の近似が成り立つ。
【0076】
【数5】

【0077】
上式が近似であるのは、連続時間信号と離散時間信号に対するフーリエ変換の性質の違いに起因する。このとき、F(k)とG(k)の合成位相スペクトルR(k)および1次元位相限定相関関数r(n)は次式で与えられる。
【0078】
【数6】

【0079】
ここで、α=1、n=−M,..,Mである。上式は1次元画像信号がδだけ位置ずれした場合における1次元位相限定相関関数の一般形を表している。αは相関値のピークの高さを表現するために導入されたパラメータであり、画像にノイズが加わると、αの値が減少することが実験で確認されているため、実際にはα≦1となる。
【0080】
δが整数の場合、式(11)はデルタ関数となる。ただし、そのピークはn=−δに位置し、ピークの高さはαとなる。実際の1次元位相限定相関関数r(n)の計算値から、このピークの位置を検出することにより、切り出した1次元画像信号f(n)とg(n)の位置ずれδを検出することができる。すなわち、1次元画像信号f(n)における基準点pに対して、1次元画像信号g(n)におけるその対応点qは、対応点候補q’とδを用いて次式のように求めることができる。
【0081】
【数7】

【0082】
ここで上式において、qおよびq’は直交座標系の位置ベクトルとして表現されているものとする。なお、その際、位置ずれδの方向を水平方向(ベクトル(1,0)の方向)にとっている。一般に、δが非整数(実数)の場合も、次節で述べるような、関数フィッティングなどの手法を用いてδを推定することによって、対応点qの座標をサブピクセル精度で求めることができる。
【0083】
2.1次元位相限定相関法に基づく画像の対応付け手法の高精度化
本節では、前節で述べた基本手法をもとにして、それを発展させ、切り出した1次元画像信号f(n)とg(n)の間の位置ずれ量を高精度に推定する手法を示す。
【0084】
A.位置ずれ量をサブピクセル精度で推定するための関数フィッティング手法
一般に、位置ずれ量δは実数値をとり、1次元位相限定相関関数のピーク座標はサンプリング格子点の間に存在するため、正確に位置ずれ量δを推定することが困難になる。そこで、1次元位相限定相関関数のピーク形状のモデルが式(11)の右辺の関数で表わされることを考慮し、この関数そのもの、あるいは、式(11)の右辺を近似的に表現する適当な関数(例えば、2次関数など)を、実際に計算された1次元位相限定相関関数の数値データに対してフィッティングすることによって、画像のピクセル間に存在するピークの位置を推定することができる。一般に、δ(および必要に応じてα)が推定されるパラメータとなる。
【0085】
一例として、式(11)の右辺に基づき、1次元位相限定相関関数の最大値とその周辺の数値データから、直接、δおよびαを推定する手法を示す。まず、1次元位相限定相関関数r(n)がn=a(aは整数)において最大値をとるものとする。このとき、r(a)とその近傍r(a−b)およびr(a+b)の3つの値を用いて、δおよびαを推定することができる。ここで、bは−M≦a−b<a<a+b≦Mを満たす小さい正の整数である。具体的には、δは次式から容易に求めることができる。
【0086】
【数8】

【0087】
ただし、u(a,b)とv(a,b)は次式で与えられる。
【0088】
【数9】

【0089】
また、δと式(11)により、αを求めることができる。上記の数式にはさまざまな近似表現が考えられ、実際には、この近似表現を用いて計算を簡単化できる。
【0090】
ここで、上記はあくまで一例であり、計算された1次元位相限定相関関数の数値に対して、最小2乗法などを用いて適当な関数(2次関数など)をフィッティングすることにより、δ(および必要に応じてα)を高精度に推定することが可能である。なお、推定された相関ピークの高さαは、pとqの対応付けの信頼性を表す尺度として使用することができる。αが大きい対応点ペア(p,q)のみを採用することにより、2つの画像から誤対応の少ない対応点ペアの集合を得ることができる。なお、αが非常に小さい場合は、g( n)上に対応点qが存在しないとみなすことができる。
【0091】
B.離散フーリエ変換における不連続性を低減するための窓関数の適用
1次元離散フーリエ変換は信号が循環することを仮定するため、端点での信号の不連続性が問題となる。この不連続性の影響を低減するため、入力された1次元画像信号f(n)およびg(n)に対して適当な窓関数(ハニング窓、ガウス窓など)を適用することが高精度化を実現する上で重要である。
【0092】
例えば、窓関数の一例としては、次のようなハニング窓があげられる。
【0093】
【数10】

【0094】
C.スペクトル重み付け関数の適用
一般に、自然画像の場合、そのエネルギーは低周波成分に集中し、高周波成分のエネルギーは相対的に小さいことが知られている。このため、エイリアシング、ぼけ、雑音、歪みなどの影響により高周波成分に外乱が加わると、画像の高周波成分のS/N比が大幅に劣化する。そこで、信頼性の低い高周波成分の影響を抑制するためにスペクトル重み付け関数を適用する。
【0095】
具体的には、任意の特性を持つスペクトル重み付け関数H(k)を合成位相スペクトルR(k)に乗じることにより、周波数成分ごとに重み付けを行う。なお、通常は、低域通過型のスペクトル重み付け関数(方形フィルタ、ガウスフィルタなど)を適用し、信頼性の低い高周波成分の除去を行うと効果的である。ただし、スペクトル重み付け関数H(k)を用いる場合、1次元位相限定相関関数r(n)はH(k)・R(k)の1次元逆離散フーリエ変換として定義されるため、そのピーク形状のモデルが式(11)とは異なる。そこで、H(k)に応じて異なるピーク形状のモデルを用いる必要がある。ただし、その場合も、基本的には本稿で述べる各種の手法が適用可能である。
【0096】
例えば、最も単純なスペクトル重み付け関数H(k)の一例として、次のようなものが考えられる。
【0097】
【数11】

【0098】
ただし、0<U≦Mである。このスペクトル重み付け関数を用いた場合、1次元位相限定相関関数r(n)のモデル式(11)に対応するピーク形状のモデルは次式で与えられる。
【0099】
【数12】

【0100】
ただし、V=2U+1である。したがって、前記項目Aの関数フィッティングは、上式を想定して行う必要がある。このように、本稿で提案する手法は、スペクトル重み付け関数H(k)に応じて異なるピーク形状のモデルを用いるように一般化することができる。
【0101】
D.1次元帯域制限位相限定相関関数の適用
信頼性の低い高周波成分の影響を排除するためにスペクトル重み付け関数を用いる代わりに、帯域制限型の位相限定相関関数を使用することも可能である。1次元帯域制限位相限定相関関数は式(6)を次のように変更したものである。
【0102】
【数13】

【0103】
ただし、0<K≦MおよびL=2K+1である。すなわち、1次元位相限定相関関数r(n)の計算に含まれる1次元逆離散フーリエ変換の定義域を信号の有効帯域(k=−K,..,K)にあわせて制限したものが1次元帯域制限位相限定相関関数である。式(11)に対応するピーク形状のモデルは次式で与えられる。
【0104】
【数14】

【0105】
なお、1次元帯域制限位相限定相関関数を用いた場合、相関ピークの位置はn=−(L/N)δで与えられることに注意する必要がある。前記項目Aの関数フィッティングは上式を想定して行うように容易に一般化できる。
【0106】
E.複数の1次元画像信号の利用による高信頼化
これまで、画像1における基準点pを中心として抽出した1次元画像信号f(n)と画像2における対応候補点q’を中心として抽出した1次元画像信号g(n)を用いて、その位置ずれ量δを推定することにより、真の対応点qを求める手法について示してきた。しかし、実際に撮影した画像を用いた場合、ひと組の1次元画像信号を用いただけでは、高い信頼性でピークの位置を判定することはきわめて難しい。そこで以下では、複数の1次元画像信号の組を対応点の近傍から抽出し、それらの相関計算の結果を統合することによって、より信頼性の高いピーク位置の推定を行う方法について述べる。
【0107】
まず、画像1の基準点pの周辺からB個の1次元画像信号fi (n)(i=1,2,..,B)を抽出する。一方、画像2の点q’の周辺の対応する位置からもB個の1次元画像信号gi (n)(i=1,2,..,B)を抽出する。例えば、図14(a)に、fi (n)とgi (n )の選び方の一例を示す。この例ではB=5としており、pとq’の周辺から規則正しい配置で、1次元画像信号fi (n)とgi (n)をそれぞれ5つずつ抽出している。これらの5つの1次元画像信号の対から位置ずれ量δを高精度に推定することによって、基準点pに対応する真の対応点qを求めることができる。
【0108】
1次元画像信号fi (n)とgi (n)の1次元位相限定相関関数をri (n)と表記するものとする。ただし、i=1,2,..,Bである。これらB個の1次元位相限定相関関数ri (n)の重み付き平均として、累積相関関数rall (n)を定義する。
【0109】
【数15】

【0110】
ここで、wi はri (n)に付随する重み係数であり、任意の定数に選ぶことができる。このように定義されたrall (n)は重み付き平均化された1次元位相限定相関関数である。ri (n)およびrall (n)に対して、基本的にこれまでに述べてきたすべての高精度化手法を適用することができる。すなわち、これまでに述べてきた単一の1次元位相限定相関関数r(n)を用いた議論は、容易にri (n)およびrall (n)を用いるように拡張することが可能である。
【0111】
なお、計算量を減少させる手法として次のようなことが考えられる。1次元画像信号fi (n)とgi (n)の合成位相スペクトルをRi (k)と表記し、累積合成位相スペクトルRall (k)を次式で定義する。
【0112】
【数16】

【0113】
このとき、rall (n)はRall (k)の1次元逆離散フーリエ変換であるため、あらかじめRall (k)を計算してから、これを1次元逆離散フーリエ変換してrall (n)を計算することができる。Bが大きい場合は、この計算法は、Ri (k)をri (n)に個別に1次元逆離散フーリエ変換するよりも計算量が少ない。
【0114】
なお、ここで述べた手法は、さまざまなやり方で一般化することができる。2つの重要な拡張について以下に示す。
【0115】
・ri (n)(i=1,2,..,B)からrall (n)への統合の仕方としては、式(21)で定義した線形結合のほかにも多様な方法が考えられる。一般に、ri (n)を適当な非線形オペレータで結合したものをrall (n)として用いることができる。
【0116】
・1次元画像信号fi (n)およびgi (n)の選び方としては、図14(a)のような規則的な配置である必要はなく、例えば、図14(b)のような例も含めて、任意の配置を取ることができる。また、必ずしもB個の1次元画像信号が同一の長さをもつ必要もない。その一例を図14(c)、(d)に示す。B個の1次元画像信号が異なる長さを持つ場合は、B個のri (n)も異なる長さを持つことになる。
【0117】
この場合は、式(21)のri (n)の加算において、基準となる位置(例えばn=0)を合わせて加算することによってrall (n)を求めることができる。このような自由度を積極的に利用すると、画像に含まれるオブジェクトの境界(エッジ)をまたがないように1次元画像信号を抽出するなどの方法により、対応付けの精度を大幅に向上できる。図14(e)は、そのような1次元画像信号の配置の一例を示している。この例では、オブジェクト境界に、1次元画像信号の端点を合わせて配置している。
【0118】
以上、述べてきた手法A〜Eは、用途に応じてさまざまに組み合わせることができる。
【0119】
3.1次元位相限定相関法と階層探索の組合せによる画像の対応付け手法
以下では、図15に示すように、基準点pと対応候補点q’の周辺から1次元画像信号fi (n)およびgi (n)(i=1,2,..,B)を抽出する単純な場合を考える。ただし、以下で述べる手法は、他の場合についても容易に拡張することができる。
【0120】
このとき、図15に示す破線で示したN×Bピクセルの画像領域を探索ウィンドウと呼ぶことにする。これまでに述べてきた手法では、探索ウィンドウ内の対応候補点q’の付近に真の対応点qが存在すると暗に仮定してきた。この仮定を現実のステレオ画像の対応付けの際に常に成立させるための手法として、ここでは、1次元位相限定相関法による対応付けと粗密戦略に基づく階層探索との組合せについて述べる。これにより、一般的なステレオカメラなどから取得される画像ペアについてロバストな対応付けが可能になる。
【0121】
ここで記述するアルゴリズムは、すでに述べてきたように、対応付けを行う2枚の画像(画像1と画像2)を、そのエピポーラ線が平行になるように幾何補正(平行化)したうえで、画像1の基準点pに対応する画像2の対応点qを探し、それが存在する場合には、その座標をサブピクセルの分解能で返すものである。画像1の全域にわたって基準点pを変化させながら、このアルゴリズムによって対応点qを探索することによって、画像1と画像2の全体について、サブピクセル分解能の対応付けを行うことができる。
【0122】
この対応点の探索において粗密戦略を使用する。図16に多重解像度画像を用いた場合の粗密戦略による階層探索の概念図を示す。多重解像度画像を用いて粗密戦略を行う場合、通常は探索ウィンドウのサイズ(N×Bピクセル)を固定し、画像1および画像2のそれぞれについて、解像度を段階的に低下させた複数の低解像度画像を準備して階層探索することにより、画像に対する相対的な探索の範囲を階層ごとに変更することが可能である。
【0123】
ただし、多重解像度画像を用いることは、粗密戦略においては必須ではなく、単純に、原画像上で探索ウィンドウのサイズを段階的に変更(徐々に縮小)しつつ階層探索することによって、対応点qの候補位置を絞っていくことも可能である。以下に、多重解像度画像を用いた場合の対応点探索アルゴリズムを示す。なお、全ての探索はエピポーラ線上(平行化した画像における同一の水平線上)で行う。
【0124】
1次元位相限定相関法と階層探索の組合せによる画像の対応付けアルゴリズム
(多重解像度画像を用いた場合)
【0125】
入力:
・画像1および画像2(あらかじめ平行化しておく)
・画像1における基準点p(座標ベクトルをpで表す)
【0126】
出力:
・画像2における対応点q(座標ベクトルをqで表す)
ただし、信頼できる対応点が存在しない場合は「対応点なし」を出力する。
【0127】
処理手順:
Step1:多重解像度画像を生成する。上位階層を低解像度画像とし、下位階層を高解像度画像とする。最下位の階層を原画像とする。なお、以下では、基準点p、対応点q、対応候補点q’は、すべて原画像(画像1および画像2)に換算した画像座標系上の位置ベクトルで表現されているものとする。すなわち、上位階層の低解像度画像においては、その点の位置を原画像の座標系に換算して表示するものとする。また、画像1および画像2は共通の画像座標系上で定義されているものとする。
【0128】
Step2:最も解像度の低い最上位階層において、対応候補点の初期値をq’←pとして探索を開始する。すなわち、この仮定が成り立つために十分な階層の数を設定するものとする。現在の探索階層を最上位階層に設定する。
【0129】
Step3:現在の探索階層において、基準点pおよび対応候補点q’を中心として、画像1および画像2の探索ウィンドウを設定し、前節までに述べてきた1次元位相限定相関法を用いて位置ずれ量δを高精度に推定する。
【0130】
Step4:この位置ずれ量δをもとにして、探索候補点q’を次式によって更新する。
【0131】
【数17】

【0132】
これは真の対応点を求める式(12)に対応する。現在の探索階層が最下位階層(原画像階層)の場合は、Step5に進み、そうでない場合は、現在の探索階層を、ひとつ下の階層に設定し、Step3に進む。
【0133】
Step5:最下位階層(原画像階層)において、基準点pおよび対応候補点q’を中心として、画像1および画像2の探索ウィンドウを設定する。なお、この際に、適当な補間技術を用いて、探索ウィンドウの位置をサブピクセル精度で調整する。前節までに述べてきた1次元位相限定相関法を用いて位置ずれ量δをサブピクセル精度で推定する。
【0134】
Step6:この位置ずれ量δをもとにして、探索候補点q’を次式によって更新する。
【0135】
【数18】

【0136】
Step5〜Step6を、位置ずれ量δが十分小さな値になるまで繰り返す。位置ずれ量δが微小な値に収束すればStep7へ進む。位置ずれ量δが微小な値に収束しない場合には、「対応点なし」を出力して終了する。なお、このステップは位置ずれ量δの値によらず、一定回数繰り返し、Step7へ進んでも良い。
【0137】
Step7:相関計算におけるピークの値αが小さい場合は、「対応点なし」を出力して終了する。それ以外の場合は、q←q’としてqを出力して終了する。
【0138】
ここで述べたアルゴリズムは、図15に示す標準的な1次元画像信号の配置を想定しているが、これは容易に一般化できる。また、階層探索の方法などについては、一般のブロックマッチングと同様にさまざまな拡張が考えられる。
【0139】
3.提案手法を用いた3次元計測システムの構成
前節で記述した画像の対応付けアルゴリズムは画像1の基準点pに対する画像2の対応点qを探索するものである。この基準点pを画像1の全域にわたって変化させながら対応点を探索することによって、画像の全体についてサブピクセル分解能の対応付けを行うことができる。この対応付け手法を(2つ以上の)複数のカメラを使用するステレオビジョンシステムに適用すると、きわめて高精度な受動型3次元計測システムを構築することができる。
【0140】
一般に、複数のカメラを使用する受動型のステレオビジョンシステムにおいて、3次元計測を行う2つのステレオカメラの間の距離(基線長)は、その計測性能を決定する重要なパラメータであり、次のようなトレードオフが存在する。
【0141】
・基線長の長いステレオカメラの場合:
3次元点の計測精度が高いという利点があるが、2つのステレオカメラの間の画像変形が大きいため、対応点探索の自動化が難しい。しかも、得られる対応点は、画像中のエッジなどの特別な点に限られる。どちらかというと、幾何学的な人工物には適用できるが、人間の顔のような自然物に適用することはきわめて困難であり、一般に汎用性がない。
【0142】
・基線長の短いステレオカメラの場合:
2つのステレオカメラの間の画像変形が小さいため、対応点探索の自動化が比較的容易であり、汎用性のあるシステムを構築できるポテンシャルを有する。しかし、通常のピクセル精度の対応づけアルゴリズムを用いた場合には、そもそも3次元計測精度がきわめて低く、ほとんど実用的ではない。
【0143】
以上のような理由により、従来の高精度なステレオビジョンシステムでは、基線長の長いステレオカメラを用いることがほとんどであり、ごく限られた用途にしか適用できず、実用上のインパクトが少なかった。しかし、本願で提案する画像の対応付け手法は、対応点の座標を安定に高いサブピクセル分解能で求めることが可能であり、短い基線長のステレオカメラに適用した場合も、高い計測精度を実現することが可能である。
【0144】
図17に、提案する対応付けアルゴリズムを用いた3次元計測の流れを示す。ここでは、2つのカメラを用いた受動型のステレオビジョンシステムを想定しているが、これは、容易に3つ以上のカメラを用いる場合にも拡張できる。まず、あらかじめカメラ校正を行いステレオカメラシステムのカメラパラメータ(内部行列および外部行列)を取得しておくものとする(非特許文献2、4、8参照)。
【0145】
3次元計測の流れは、(i)ステレオ画像の撮影、(ii)ステレオ画像の幾何補正、(iii)ステレオ画像の対応付け、(iv)3次元復元の4ステップからなる。特に、ステレオ画像の対応付けステップにおいて、相関ピークの値αが大きい対応点ペアのみを出力することで、最終的に信頼性の高い高精度な3次元点群を得ることができる。
【0146】
4.提案手法を用いた3次元計測システムの評価
3次元計測システムを構築し、従来の対応付け手法と1次元位相限定相関法による対応付け手法との性能比較を行う。以下に性能評価を行う4つの手法を示す。
【0147】
・1次元位相限定相関法を用いる対応付け手法:本請求で提案する手法である。対応点の座標を安定に高いサブピクセル分解能で求めることができる。また、その際に必要とする計算量を少なく抑えることが可能である。
【0148】
・2次元位相限定相関法を用いる対応付け手法:画像の2次元離散フーリエ変換の位相情報を用いた対応付け手法であり、サブピクセル精度で2枚の画像を対応付けることが可能である(非特許文献5、6、7参照)。しかし、2次元フーリエ変換に起因する計算量が大きいことが問題となっている。
【0149】
・輝度差の総和法(SumofAbsoluteDifferences:SAD)を用いる対応付け手法:SADは次式で定義される(非特許文献2、3参照)。
【0150】
【数19】

【0151】
ここで、I(n1,n2)およびJ(n1,n2)は、SADによって対応付けを行う画像1および画像2の画像ブロックである。また、画像ブロックのサイズをN1×N2ピクセルとする。加減算のみで計算を行うことができるため、高速処理を実現することが容易である。しかし、対応付け精度が極めて低いという問題がある。なお、対応点座標のサブピクセル推定のために等角直線フィッティングを行う手法を用いた(非特許文献2参照)。
【0152】
・輝度差の2乗和法(SumofSquaredDifferences:SSD)を用いる対応付け手法:SSDは次式で定義される(非特許文献2、3、4参照)。
【0153】
【数20】

【0154】
ここで、I(n1,n2)およびJ(n1,n2)は、SSDによって対応付けを行う画像1および画像2の画像ブロックである。また、画像ブロックのサイズをN1×N2ピクセルとする。SADと比較して計算量は増大するが、若干良い対応付け結果を得ることができる。なお、対応点座標のサブピクセル推定のためにパラボラフィッティングを行う手法を用いた(非特許文献2参照)。
【0155】
A.計算量の評価
上で述べたように、1次元位相限定相関法と3つの従来手法との計算量の比較を行う。ここでは、対応点を1点だけ見つけるために必要となる計算量を比較する。1次元位相限定相関法を用いる場合には、前節で述べたようにNピクセルの1次元画像信号をB個切り出して探索ウィンドウとする。ただし、簡単のためNは2のべき乗とする。
【0156】
一方、2次元位相限定相関法を用いる対応付け手法において、切り出す画像ブロックのサイズをN1×N2ピクセルとする。ただし、N1およびN2は2のべき乗とする。なお、2次元離散フーリエ変換の計算においては、1次元高速フーリエ変換(FFT)を利用した行列分解法を用いるものとする。また、1回の複素数乗算は4回の実数乗算と2回の実数加算として数え、複素数加算は2回の実数加算として数える。
【0157】
同様に、SAD(あるいはSSD)を用いる対応付け手法においては、切り出す画像ブロックのサイズをN1×N2ピクセルとし、1点の探索に要するSAD(あるいはSSD)の計算回数をN1 回とする。なお、計算量の比較を行うための具体的な数値例として、N=32、B=5、N1=32、N2=32を想定する。これはステレオ画像の対応付けを行う際に用いる標準的な値である。
【0158】
乗算の計算回数は次式で示される。
・1次元位相限定相関法:2(2B+1)Nlog2N+6BN=4,480回
・2次元位相限定相関法:6N12log2(N1,N2)+6N12=67,584回
・SAD:0回
・SSD:N122=32,768回
【0159】
加算の計算回数は次式で示される。
・1次元位相限定相関法:3(2B+1)Nlog2N+(5B−1)N=6,016回
・2次元位相限定相関法:9N12log2(N12)+3N12=95,232回
・SAD:N1(2N12−1)=65,504回
・SSD:N1(N12−1)=32,736回
【0160】
除算の計算回数は次式で示される。
・1次元位相限定相関法:2BN+2N=384回
・2次元位相限定相関法:2N12=2,048回
・SAD:0回
・SSD:0回
【0161】
平方根の計算回数は次式で示される。
・1次元位相限定相関法:BN=160回
・2次元位相限定相関法:N12=1,024回
・SAD:0回
・SSD:0回
【0162】
このように、ステレオ画像の対応付けに1次元位相限定相関法を用いることで、2次元位相限定相関法に対して計算量を極めて少なく抑えることができる。上記の標準的な数値例では、乗算回数を約1/15に、加算回数を約1/16に削減することが可能である。また、SADおよびSSDを用いる手法と比較しても、十分な高速性を実現できると予想される。
【0163】
B.3次元復元性能の比較
評価対象となる4つの対応付け手法と粗密戦略に基づく階層探索を組み合わせてステレオ画像の対応付けを行い、3次元復元を行った結果を比較する。各手法のパラメータについては、前記項目Aと同様のパラメータを用いた。すなわち、N=32、B=5、N1 =32、N2 =32とした。なお、階層探索を行う際の多重解像度画像の階層数を5階層とする。
【0164】
図19に実験で用いたステレオビジョンシステムを示す。ステレオビジョンシステムでは、人物の顔を被写体とするために、図19(b)に示すようにステレオカメラヘッドのカメラ配置を縦置きにとっている。次に、各手法の3次元復元結果を図18に示す。図18(a)はステレオカメラヘッドから取得されたステレオ画像である。ただし、ステレオカメラヘッドは縦置きのカメラ配置であるため、エピポーラ線は画像の垂直座標と平行に走ることになる。
【0165】
そこで、実際の対応付けでは図18(a)のステレオ画像を90度回転することで、エピポーラ線を画像の水平座標と平行になるように補正した。つまり、図13(b)と同様の画像が得られる。まず、図18(b)は1次元位相限定相関法に基づく対応付け手法を用いた場合の3次元計測結果である。これに対して、図18(c)〜(e)は、それぞれ、2次元位相限定相関法を用いた場合、SADを用いた場合、SSDを用いた場合の3次元計測結果である。SADとSSDを用いた場合では、3次元点が階段状に復元されている。
【0166】
これは、対応付けの際に、十分なサブピクセル精度が得られていないためである。一方、1次元位相限定相関法と2次元位相限定相関法を用いた場合では、顔の3次元的な曲面形状が滑らかに復元されている。次に、顔のふち部分の3次元復元結果に着目すると、SADやSSDを用いた場合では、対応付けに失敗していることがわかる。一方、1次元位相限定相関法は2次元位相限定相関法と比べて探索ウィンドウのサイズを小さくとることでオブジェクト境界の影響を軽減できるため、顔のふち部分について3次元復元精度の向上が見られる。このように、1次元位相限定相関法を用いることで、人物の顔の3次元形状を従来手法よりも高精度に復元できることがわかる。
【図面の簡単な説明】
【0167】
【図1】本発明に係る対応点探索方法を利用した3次元位置計測装置の一実施の形態を示すブロック構成図である。
【図2】対象物を異なる視点から見た2つの画像に水平なラインとして存在するエピポーラ線を説明する図である。
【図3】対象物を異なる視点から見た2つの画像に傾斜したラインとして存在するエピポーラ線を説明する図である。
【図4】この3次元位置計測装置の画像取り込みから対象領域の抽出までの処理過程を説明する図である。
【図5】この3次元位置計測装置における3次元位置の計測処理を示すフローチャートである。
【図6】この3次元位置計測装置における3次元位置の計測処理過程での対応点探索処理を示すフローチャートである。
【図7】入力画像から抽出されたオブジェクト領域中の最上位の線の起点から対応点の探索が始められる様子を説明する図である。
【図8】基準点のデータ列と候補点のデータ列との1次元位相限定相関法による相関関数の計算を説明する図である。
【図9】探索ウィンドウに対して平行に複数組の近傍探索ウィンドウを定めて対応点の探索を行う例を説明する図である。
【図10】探索ウィンドウに対して平行に複数組の近傍探索ウィンドウを定めて対応点の探索を行う場合の変形例を示す図である。
【図11】探索ウィンドウに対して平行に複数組の近傍探索ウィンドウを定めて対応点の探索を行う場合の変形例を示す図である
【図12】探索ウィンドウに対して平行に複数組の近傍探索ウィンドウを定めて対応点の探索を行う場合の変形例を示す図である
【図13】平行化された2つの画像と1次元画像信号を説明するための図である。
【図14】1次元画像信号の抽出を説明するための図である。
【図15】探索ウィンドウの設定方法を説明するための図である。
【図16】画像ピラミッドを用いたサブピクセル対応付けアルゴリズムの概要を説明するための図である。
【図17】3次元計測の流れを例示するフローチャートである。
【図18】顔の3次元復元結果を示す説明図である。
【図19】3次元計測精度を評価する実験で用いたステレオビジョンシステムを示す説明図である。
【図20】特許文献1に示された立体像計装置における画像入力部の概略を示す図である。
【図21】特許文献1に示された立体像計装置における2次元位相限定相関法を用いた立体像の計測処理を説明する図である。
【符号の説明】
【0168】
10、11…カメラ(CCDカメラ)、12…液晶表示装置(LCD)、20…処理部、20−1…制御部、20−2…ROM、20−3…RAM、20−4…ハードディスクドライブ(HDD)、20−5…フレームメモリ(FM)、20−6…外部接続部(I/F)、20−7…フーリエ変換部(FFT)、LN(LN1、LN2)…レンズ、EP…エピポーラ線、SW(SW0)…探索ウィンドウ、SW1〜SW4…近傍探索ウィンドウ、CW(CW0)…探索ウィンドウ、CW1〜CW4…近傍探索ウィンドウ、OB1、OB2…オブジェクト領域、ST…起点、END…終点、I…入力画像、J…参照画像、M…対象物。

【特許請求の範囲】
【請求項1】
画像取込手段を介して、対象物を異なる視点から見た複数の画像を取り込む画像取込ステップと、
前記画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に沿って前記複数の画像より1次元の画素データ列を切り出す画素データ列切出ステップと、
前記複数の画像から切り出された1次元の画素データ列の相関から前記複数の画像中の対応点を探索する対応点探索ステップと
を備えることを特徴とする対応点探索方法。
【請求項2】
請求項1に記載された対応点探索方法において、
前記複数の画像中の各画素データを、前記画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に平行な軸を一軸とし、この一軸に対して垂直な軸を他軸とする座標系に変換する座標系変換ステップを備え、
前記画素データ列切出ステップは、
前記座標系が変換された複数の画像から前記1次元の画素データ列を切り出す
ことを特徴とする対応点探索方法。
【請求項3】
請求項1に記載された対応点探索方法において、
前記画素データ列切出ステップは、
前記エピポーラ線に沿って前記複数の画像より1次元の画素データ列を切り出すとともに、この1次元の画素データ列の近傍の前記エピポーラ線に平行な線に沿う1次元の画素データ列を切り出し、
前記対応点探索ステップは、
前記複数の画像から切り出された前記複数組の1次元の画素データ列の相関から前記複数の画像中の対応点を探索する
ことを特徴とする対応点探索方法。
【請求項4】
請求項1に記載された対応点探索方法において、
前記複数の画像から対応点探索の対象領域としてオブジェクト領域を抽出するオブジェクト領域抽出ステップを備え、
前記画素データ列切出ステップは、
前記複数の画像から抽出されたオブジェクト領域より前記エピポーラ線に沿って1次元の画素データ列を切り出す
ことを特徴とする対応点探索方法。
【請求項5】
画像取込手段を介して、対象物を異なる視点から見た複数の画像を取り込む画像取込ステップと、
前記画像取込手段のパラメータおよび基準点から計算されるエピポーラ線に沿って前記複数の画像より1次元の画素データ列を切り出す画素データ列切出ステップと、
前記複数の画像から切り出された1次元の画素データ列の相関から前記複数の画像中の対応点を探索する対応点探索ステップと、
前記探索された対応点の視差に基づいてその対応点の3次元位置を計測する3次元位置計測ステップと
を備えることを特徴とする3次元位置計測方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図20】
image rotate

【図21】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2008−123141(P2008−123141A)
【公開日】平成20年5月29日(2008.5.29)
【国際特許分類】
【出願番号】特願2006−304620(P2006−304620)
【出願日】平成18年11月9日(2006.11.9)
【出願人】(000006666)株式会社山武 (1,808)
【出願人】(504157024)国立大学法人東北大学 (2,297)
【Fターム(参考)】