(57)【要約】   同時に少なくとも２つのイメージを記録する能力があるカメラシステムをキャリブレーションする方法が開示されている。方法はイメージの第１のペアを処理するステップを有しており、該処理は、平面上の投影マップによって前記第１のペアの少なくとも一つの第１および第２のイメージを変換するステップであって、前記マップは一つ以上のパラメータ値に依存し、前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるために、イメージの第２のペアをもたらすところのステップを有する。方法は更に、それぞれの差異の値を推定するステップであって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところのステップ、および前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のイメージ・ペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させるステップを有する。方法は更に、一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定するステップ、誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定するステップ、および前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするステップを有する。
2010513907.tif 000002
【特許請求の範囲】
【請求項１】
同時に少なくとも２つのイメージを記録することができるカメラシステムをキャリブレーションするための方法であって、当該方法はイメージの第１のペアを処理するステップを有しており、該処理は：
平面上の投影マップによって前記第１のペアの少なくとも一つの第１および第２のイメージを変換するステップであって、前記マップは一つ以上のパラメータ値に依存し、前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるように、イメージの第２のペアをもたらすところのステップ；
それぞれの差異の値を推定するステップであって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところのステップ；
前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のイメージ・ペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させるステップ；
一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定するステップ；
誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定するステップ；および
前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするステップ；
を有する方法。
【請求項２】
前記変換するステップは、前記第１のペアの第１および第２のイメージの一方の一つを、前記第１のペアの第１および第２のイメージの他方の一つの平面上の投影マップにより、調整するステップ、を有する請求項１記載の方法。
【請求項３】
前記変換するステップは、水平に前記第２のペアの前記イメージの前記それぞれのエピポーラ線を整列配置するために、全く同一の平面上の個々の投影マップにより、前記第１のペアの前記第１および前記第２のイメージを調整するステップを有する、請求項１記載の方法。
【請求項４】
イメージの次のペアを前記処理の操作に従属させるステップを有する、請求項１記載の方法。
【請求項５】
前記カメラシステムは、ステレオカメラシステムを有する、請求項１又は２記載の方法。
【請求項６】
同時に少なくとも２つのイメージを記録することができるカメラシステムをキャリブレーションするためのソフトウェアであって、当該ソフトウェアはイメージの第１のペアを処理する命令を有しており、該命令は：
平面上の投影マップによって前記第１のペアの少なくとも一つの第１および第２のイメージを変換するステップであって、前記マップは一つ以上のパラメータ値に依存し、前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるように、イメージの第２のペアをもたらすところのステップ；
それぞれの差異の値を推定するステップであって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところのステップ；
前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させるステップ；
一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定するステップ；
誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定するステップ；および
前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするステップ；
を実行することができるソフトウェア。
【請求項７】
プログラムコードがコンピュータに実行されるときに、請求項１ないし５のいずれか１項に記載された方法を実行するためのコンピュータ可読媒体に保存された前記プログラムコード手段を有するコンピュータ・プログラム製品。
【請求項８】
同時に少なくとも２つのイメージを記録する能力があるカメラシステムであって、当該カメラシステムは、カメラと、前記カメラシステムをキャリブレーションするために、イメージの第１のペアを処理するよう構成されたキャリブレーション手段とを有し、前記キャリブレーション手段は：
前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるように、前記第１のペアの少なくとも一つの第１および第２のイメージを変換するよう構成された調整手段であって、イメージの第２のペアをもたらすところの手段；
それぞれの差異の値を推定する推定手段であって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところの推定手段；
前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のイメージ・ペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させる移動手段；
一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定する誤差決定手段；
誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定する誤差低減手段；
前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするアップデート手段；
を有するカメラシステム。
【請求項９】
前記キャリブレーション手段によって処理されるイメージの更なるペアをフェッチするフェッチ手段、を有する請求項８記載のシステム。
【請求項１０】
ステレオカメラシステムを有する、請求項８または９記載のカメラシステム。
【請求項１１】
請求項８の前記カメラシステムに使用するキャリブレーション手段。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラシステムをキャリブレーションする方法に関する。また、キャリブレーション手段を有するカメラシステム、カメラのためのキャリブレーション手段、およびこの方法をインプリメントしたソフトウェアに関する。
【背景技術】
【０００２】
コンピュータビジョンシステムは、多くの場合、ステレオ画像を取得するためのステレオカメラシステムを有し、その後デジタル処理が行われる。画像データが正しく入力され、その後の処理が行われるために、この種のカメラシステムではキャリブレーションが行われる。カメラ・キャリブレーションの目的は、三次元（３Ｄ）空間の座標から二次元の（２Ｄ）イメージの座標への変換を測定することである。一旦この変換が認識されれば、現実の世界の３Ｄ情報はイメージの２Ｄ情報から取得することができる。
【０００３】
非特許文献１は、イメージ・シーケンスから点の一致（match）だけを必要とする補正法を記載している。その著者は、その場において、カメラを向けることによってキャリブレーションすることが可能であると述べている。関心対象の位置を選んで、カメラが方向を変える場合に、それらをイメージにおいて追従させるのである。カメラの移動を知る必要はない。このカメラ・キャリブレーションは、２つのステップで計算される。第１ステップで、エピポーラ（epipolar）変換が、検出される。第２ステップにおいて、エピポーラ変換は、クラッパ（Kruppa）式を用いて絶対円錐のイメージに連結される。
【０００４】
非特許文献２は、カメラの焦点、口径、ズームまたは輻輳角度（vergence  angle）が動的に変化するため、カメラ・キャリブレーション・マトリックスをアップデートするというアクティブな３Ｄビジョンの課題について述べている。著者は、場面において５．５個の投影マトリックスを、逆行列なしで計算の技術を提示している。そして、基準点をトラッキングすることによって投影変換行列を修正する技術を示している。実験によって、３点をトラッキングすることで得られるアフィン変換によって、焦点の変化が修正できることが示されている。カメラ輻輳の変化に対して、４つの像点をトラッキングすることに基づく投影修正は、アフィン修正マトリックスよりわずかに正確である。著者は、ステレオ再構築がどのように１つの対象から別の対象に、フレームをホップするかに関しても示している。場面の４つの同一平面にない（non-coplanar）点の集合のいかなるものも、この種の基準フレームとして定めてもよい。この筆者は、ステレオヘッドが平行移動したり回転したりするにつれて、基準フレームを４点の集合上に固定するのを保つ方法を示している。これらの技術は、新たな測定を部分的に再構築された描写に結合することを要せずに、固有の座標において対象の形状を再構築することができる。
【０００５】
非特許文献３において、その筆者は、ステレオビジョンを現実の世界にうまくインプリメントするためには、セルフチューニングシステムが必要となると主張している。この文献は、ステレオカメラシステムをキャリブレーションするための多くの情報源の組合せに対する統計的フレームワークを記載している。これによって、通常のカメラの使用の間の継続的なキャリブレーションの繰り返しを行うキャリブレーションシステムが達成される。この著者らは、作動しているビジョンシステムにおいて、標準的な３Ｄ対象、正確なロボットモーション、および一致したステレオ特性を用いてデモンストレーションを行っている。より詳細には、Thacker氏達は、エクイバレントマッチングのための特徴位置を使用して、変換およびカメラパラメータのための反復的な推定手順による、ステレオカメラシステムのキャリブレーションを行っている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】”Camera  Self-Calibration:  Theory  and  Experiments”,  Proc.  Second  European  Conf.  Computer  Vision,  pp.  321-334,  May  1992,  O.  Faugeras,  T.  Luong  and  S.  Maybank
【非特許文献２】”Maintaining  Stereo  Calibration  by  Tracking  Image  Points”,  1993  CVPR,  New  York,  June  1993,  J.  Crawley,  P.  Bobet  and  C.  Schmid
【非特許文献３】”Online  Stereo  Camera  Calibration”,  Tina  Memo  No.  1992-002,  updated  6/9/2005,  N.  Thacker  and  P.  Courtney
【非特許文献４】“A  Method  for  the  Solution  of  Certain  Problems  in  Least  Squares.”  by  Levenberg,  K.  published  in  Quart.  Appl.  Math.  2,  164-168,  1944
【非特許文献５】”Algorithms  for  the  solution  of  the  nonlinear  least-squares  problem”  by  Gill,  P.  E.  and  Murray,  W.  published  in  SIAM  J.  Numer.  Anal.  15  [5]  977-992,  1978
【非特許文献６】”Depth  Estimation  from  Stereoscopic  Image  Pairs  Assuming  Piecewise  Continuous  Surfaces”  by  L.  Falkenhagen,  published  in  Proc.  of  European  Workshop  on  combined  Real  and  Synthetic  Image  Processing  for  Broadcast  and  Video  Production,  Hamburg,  November  1994
【発明の概要】
【発明が解決しようとする課題】
【０００７】
Faugeras氏の非特許文献１およびCrawley氏の非特許文献２で開示されたシステムは、動いている参照対象をトラッキングに依存して、それらのカメラのキャリブレーションを行っている。Thacker氏の非特許文献３は、特徴位置を使用して繰り返し処理によってパラメータを近づけてゆく手法を採用している。
【０００８】
本願の発明者は、適切な基準点の選択を必要としない他の手法を提案する。本発明は、直接的に投影パラメータを解くことを要しない、カメラシステムをキャリブレーションする方法を提供する。
【課題を解決するための手段】
【０００９】
本方法は、イメージの第１のペアを処理するステップを備えている。処理ステップは、平面上の投影マップ（または投影マッピング）において、第１のペアの少なくとも一つの第１および第２のイメージを変換するステップを有する。マップは一つ以上のパラメータ値に依存し、第１のペアの第１のイメージのエピポーラ線を対応する第２のイメージのエピポーラ線に合わせるように、結果として第２のペアのイメージとなる。それぞれの値は、差異のために推定される。この値は、第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルと、第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルとを関連づけるものである。差異は、深度を表す。そして、第２のイメージ・ペアの第１のイメージの第１のエピポーラ線のそれぞれのピクセルは、それぞれのピクセルの差異のそれぞれの値に従って位置がずらされる。そして、誤差の大きさ（measure）が、第２のイメージ・ペアの第１および第２のイメージの間で決定（determined）される。誤差の大きさは、一つ以上のパラメータ値に依存する。次に、誤差の大きさの値を小さくするために、一つ以上のパラメータ値のアップデートが決定される。かつ、そのように決定されたアップデート値を用いて、一つ以上のパラメータ値がアップデートされる。
【００１０】
本発明において、偏差に基づく深度の適合のための推定結果の品質が、カメラ・キャリブレーション・パラメータの最新の基準として使われる。操作は、このように深度推定を使用して効率的な方法で実行される。本発明は、直接的な手法で投影パラメータを解くことなく、カメラシステムをキャリブレーションする方法を提供し、かつ、適切な基準点の選択を必要としない。
【００１１】
本発明の第１実施例に従って、変換するステップは、第１のペアの第１および第２のイメージの一方のイメージを、第１のペアの第１および第２のイメージの他方のイメージの平面上の投影マップによって、調整するステップを有する。このようにして、カメラはキャリブレーションされ、さらに、第１のペアの単一のイメージだけが調整されることを必要とする。これによって、処理の量を減らすことができる。
【００１２】
本発明の第２実施形態に従って、変換するステップは、第２のペアのイメージのそれぞれのエピポーラ線を水平に整列配置するために、全く同一の平面上における個々の投影マップによって、第１のペアの第１および第２のイメージの両方を調整するステップを有する。なお、両方のイメージをキャリブレーションするには付加的な処理を必要とするにもかかわらず、両方のイメージのエピポーラ線の水平設定は更なる処理を容易にする。
【００１３】
本発明による方法は好適には、カメラシステムをキャリブレーションするためにイメージの次のペアを、カメラシステムの処理の使用の進行中の繰り返し過程において、処理操作に従属させるステップを有している。
【００１４】
本発明の実施例は、カメラシステムをキャリブレーションするためのキャリブレーション手段、この種のシステムに用いられるキャリブレーション手段、本発明（添付の請求の範囲に記載の全て）の方法をインプリメントするためのソフトウェアを有するカメラシステムに関する。
【００１５】
本発明を実例として、添付の図面を参照しながらさらに詳細に説明する。図の全体にわたって、類似または対応する特徴は、同一参照番号によって示される。
【図面の簡単な説明】
【００１６】
【図１】３Ｄの世界の対象から２Ｄイメージの作成を例示する図である。
【図２】対象の２つの２Ｄイメージを別の位置および別の方向から作成することを示す図である。
【図３】別々のイメージの位置のイメージをマッチさせるための幾何学的な構成を例示した図である。
【図４】本発明の方法を説明するための式を示す図である。
【図５】差異推定を説明する図である。
【図６】差異推定を説明する式を示す図である。
【図７】本発明の第１実施例に従うシステムの図である。
【図８】本発明の第２実施例に従うシステムの図である。
【図９】本発明の方法におけるステップを示す図である。
【発明を実施するための形態】
【００１７】
コンピュータビジョンにおいて、深度の推定は、多数のカメラを使用してステレオ・イメージングによって取得されてもよい。別の角度で同じ対象に対して撮られたステレオ・ペアのそれぞれのイメージの差異は、距離すなわち深度を測定するために使うことができる。人間のビジョンシステムは、左右の目によって見る差異（disparities）を用いて深度を決定するために、差異として両眼手がかり（binocular  cue）を使用する。マシンビジョンにおいて、類似した技術が、応用分野（例えばロボット・ナビゲーション、および、画像解析）において用いられる。
【００１８】
３次元構造を一対の二次元画像から引き出すいくつかの方法が存在する。第１の方法は、キャリブレーションされた方法と称され、カメラは、一部の世界座標系に関してキャリブレーションされることを必要とする。そして、エピポーラジオメトリ（下記図２および３参照）は、システムの「必須の」マトリクスを抽出することによって算出される。これは、撮像された場面の三次元ユークリッドの構造の計算を可能とする。その後、差異は、エピポーラ線のみにおいて相当するもの（equivalents）を検索することによって推定できる。第２の方法は、キャリブレーションされていない方法と称され、生物学的システムが視覚から３次元構造を決定する方法に対応する。キャリブレーションされていないシステムにおいて、基礎マトリックスとして知られる量が、イメージの対応から算出され、これは、撮像された場面の投影３次元構造を決定するために用いられる。本発明はキャリブレーションされた方法に関する。
【００１９】
通常、差異推定は、詳細な距離のマップを作成するために、エピポーラ線において利用できる情報に基づく。「エピポーラ線」の概念は、図２、および、図３を参照して更に詳細に後述する。エピポーラ線の手法が適切に利用できるようにすることを確実にするために、カメラは、それぞれのイメージのピクセルのそれぞれの列にそれぞれのカメラのエピポーラ線が一致するように、適切に配列されていなければならない（すなわち、キャリブレーションされる）。
【００２０】
機械カメラ・キャリブレーションは通常はオペレータによって手動操作を必要とするため、扱いにくい方法である。カメラを操作する使用において震動またはショックが与えられる場合、往々にして連続的にまたは周期的にキャリブレーションが必要である。
【００２１】
本発明において用いられている用語「キャリブレーション」は、カメラシステムによって撮影されたイメージで利用できる情報だけを用いて、カメラシステムの固有のパラメータを算出する方法に関連する。両方のイメージが同時に場面を反映するような、キャリブレーション・フレームまたは周知の対象はステレオカメラシステムのために必要とされない。同じ場面の２つの別の視点の各々を関連づける幾何学的な情報は、必須マトリックスとして公知の数学的構造に含まれる。２つの視点は、イメージのステレオ・ペアまたはイメージの時間的に相前後する（temporal）ペアであってもよい。後者の場合、画像取得の間に移動しているカメラで、２つのイメージが、別の時間に取得される。エピポーラジオメトリとして知られている、同じ場面の２つの別のイメージのジオメトリについて、図２、および、図３を参照しながら以下説明する。それは、三角測量方式に基づく。
【実施例】
【００２２】
図１は、３Ｄの世界の対象の２Ｄイメージの作成を例示している図である。３Ｄの世界の対象１０２のイメージは、２Ｄイメージ１０４のカメラによって取得される。３Ｄ座標の対象１０２の位置はＭ（Ｘ，Ｙ、Ｚ）によって与えられている。ここで、Ｘ，Ｙ、およびＺは、ある参照座標系１０６に関する位置の直交座標系の値である。イメージ１０４は、位置ｍ（ｕ、ｖ）に対象１０２のイメージを有する。ここで、ｕおよびｖは、座標系１０８と関連する対象１０２のイメージの位置の直交座標系の値である。便宜のために、座標系１０８は、光軸、および、イメージ１０４の平面が交差する所でその原点を有することとする。イメージ１０４の位置ｍ（ｕ、ｖ）は、イメージ１０４の平面上に、投影１１０の中心の方向への対象１０２の投影として測定される。
【００２３】
図２は別の位置および別の方向から撮られた対象１０２の２つの２Ｄイメージが作成されている例を示した図である。対象１０２は左のカメラ、および右のカメラによって取得される。そして、左において投影中心２０４で測定されるイメージ２０２、および、右において投影中心２０８で測定されるイメージ２０６を得る。三角測量方式による対象１０２の３Ｄ位置の決定は、イメージ２０２の対象１０２のイメージ位置２１０にイメージ２０６の対象１０２の位置２１２をマッチさせることによってなされる。
【００２４】
図３は、イメージ位置２１０、および２１２の各々がマッチする幾何学的な構成を例示している図である。対象１０２並びに投影中心２０４および２０８は、３Ｄの世界において平面３０２を決定する。平面３０２はイメージ位置２１０と交差３０４を有する。これは、イメージ位置２１０並びに中心２０４および２０８で決定される。交差３０４は、ライン・セグメントである。同様に、平面３０２は、イメージ２０６を有する交差３０６を有する。これは、イメージ位置２１２並びに中心２０４および２０８で決定される。ライン・セグメント３０４および３０６が、中心２０４および２０８を接続している基準線３１２と交わる位置３０８および３１０をエピポールと呼ぶ。ライン・セグメント３０４および３０６はエピポーラ線と呼ばれる。エピポール３０８は、左側カメラにおいて、センター２０８のイメージと考えてもよい。同様に、エピポール３１０は、センター２０４の右側カメラのイメージと考えてもよい。平面３０２はエピポーラ面と呼ばれる。
【００２５】
したがって、一旦イメージ位置２１０、および、２１２がわかると、位置２１０、および、エピポール  ３０８、および、３１０に関する情報がわかり、平面３０２がわかり、結果として、エピポーラ線３０４、および、３０６が求まる。その結果、他のイメージ位置２１２がエピポーラ線３０６上に発見できる。本発明により、もし、調整のステップを経る場合には、ステレオ・マッチング問題（ステレオ画像の位置にマッチする課題）より能率的に解決される。このステップは、イメージを変換するステップから成る。このため、エピポーラ線が互いに並べられ、好適には、水平に並べられる。イメージの平面は、それから、投影中心の中心間の線を有する更なる平面にマップされる。図３に関して、イメージ２０２、および、２０６の平面は、基準線３１２を有する平面にマップされる。この場合、ステレオ・マッチングアルゴリズムは、エピポーラ制約を利用してもよく、これによってサーチ領域を一次元（すなわち調整されたイメージの対応する列）に下げてもよい。エピポーラ制約は、このように対をなすエピポーラ線に沿ってマッチング問題を一次元探策に下げる。検索は、好ましくは一方のイメージのエピポーラ線上の単一のピクセルを他方のイメージのエピポーラ線上の単一のピクセルと比較することによって、行わない方がよい。その代わりに、エピポーラ線に沿ったピクセルのウインドウが、最高のマッチを見つけるために比較される。
【００２６】
本発明において、本発明のシステムの光軸がほぼ平行でカメラによる立体視を使用するため、修正ステップは直接イメージ２０２の平面上にイメージ２０６をマッピングすることによって行われる。本発明は、両方のイメージのエピポーラ線が一致するように、一つのカメラ画像を調整することによってシステムをキャリブレーションする。任意には、エピポーラ線が両方のイメージのピクセルの水平の行（raw）に対応するように、両方のカメラ画像が調整される。
【００２７】
図４を参照すると、式（４０２）乃至（４１０）は、イメージ２０６の平面の座標ｘ’およびｙ’をイメージ２０２の平面の座標ｘおよびｙで表す変換を示している。式（４０６）の配列の量ｍの値は、カメラのキャリブレーション・パラメータを表している。Ｇ（ｘ，ｙ、ｍ）における式は、パラメータｍ４によって垂直偏移が導入さる。なお、Ｆ（ｘ，ｙ、ｍ）において、水平偏移は、省略されている。これは、差異が別のエンティティとして考慮されるためである。
【００２８】
イメージ２０２、および調整されたイメージ２０６間の誤差の大きさを生成することができる。そして、これは推定された差異マップ、および、キャリブレーション・パラメータに依存している。推定された差異マップは、それぞれのピクセル（ｘ，ｙ）の推定された差異値ｄ（ｘ，ｙ）を有する。差異の推定方法は、後述する。式（４０６）のキャリブレーション・パラメータに関してこの誤差を最小化することは、探索されるキャリブレーション値を与える。
【００２９】
誤差の大きさの実例Ｅ（ｍ）は、式（４１２）で与えられる。この誤差の大きさＥ（ｍ）は、特定の項における平方和である。各々の特定の項は、左のイメージ２０２のエピポーラ線上の座標ｘ，ｙの特定のウインドウＡｌｅｆｔのピクセルと、右のイメージ２０６の差異ｄ（ｘ，ｙ）だけｘ方向にずれた座標（ｘ’、ｙ）の特定のウインドウＡｒｉｇｈｔのピクセルとの差である。なお、エピポーラ線を水平位置において一致させたため、ｙ座標は、左のウインドウＡｌｅｆｔと右のウインドウＡｒｉｇｈｔで同じであることに留意されたい。総合計Ｅ（ｍ）は、全てのウインドウにおいて二乗された最小の差異を合計することによって形成される。「最小」については、更に以下に詳述する。合計Ｅ（ｍ）は、投影パラメータをアップデートするために、基準として使われる。
【００３０】
数値解析法を用いて、平方和を最小化する問題に対する解決法を見つけるいくつかの方法がある。Levenberg-Mrquardtアルゴリズムは、パラメータの共通セットに依存するいくつかの一般な非線形関数の平方和を最小化する数学問題に対して数値解法を提供する。この最小化問題は、最小２乗曲線の当てはめにおいて特に発生する。Levenberg-Mrquardtアルゴリズム（LMA）は、ガウズ・ニュートンアルゴリズム（GNA）および勾配降下の方法を補間するものである。一方、ＬＭＡは、ＧＮＡより安定している。多くの場合、最終的な解である最低値からかけ離れたところからも、この方法は、解を見つけることができる。一方、挙動のよい関数に対して、および、開始点が合理的なパラメータの場合には、ＬＭＡは、ＧＮＡよりやや遅い傾向がある。ＬＭＡは、最も人気のある曲線のあてはめアルゴリズムのうちの１つである。詳細は、非特許文献４または非特許文献５を参照されたい。これらの文献は、引用によって本願明細書に組み入れたものとする。
【００３１】
個々のピクセル（ｘ，ｙ）の差異を推定するための方法の実例を、図５、および、図６に示す。第１に、例えば、ウインドウ５０２を考える。左のイメージ２０２の３ｘ３ピクセル、および、イメージ２０６の中の類似したウインドウ５０４を取り上げる。ウインドウ５０２は、ピクセル座標（ｘ，ｙ）の周辺にある。ウインドウ５０４は、ピクセル座標（ｘ＋ｄ、ｙ）の周辺にある。ここで、式ｘ＋ｄは、０からNの間で推定する。Nはイメージの幅である。例えば図６の式６０２にしたがって、ウインドウ５０２のピクセル値はウインドウ５０４のピクセル値と比較される。基本的に、式６０２は、特定の差異値ｄに対する座標（ｘ，ｙ）での絶対的な差異（ＳＡＤ）の合計を算出する。次のステップは、式６０２が最も小さいときの値ｄを決定することである。この値ｄはピクセル（ｘ，ｙ）の差異ｄ（ｘ，ｙ）の推定値として使うことができる。極小値ＳＡＤ（ｘ，ｙ；ｄ）は、ＳＡＤｍｉｎ（ｘ，ｙ）によって示される。
【００３２】
全てのそれぞれのピクセルのＳＡＤｍｉｎ（ｘ，ｙ）の値の合計値は、誤差の大きさＥ（ｍ）として式（４１２）で表される。
【００３３】
図４において例示される手順は、オンザフライで実行されてもよい。その際に使用するシステム７００の構成を図７に示す。システム７００は、それぞれ、左右のカメラ７０４および７０２を有する。更にシステム７００は、カメラ７０２および７０４によって撮られたステレオ画像から深度マップ７０８を抽出する深度推定器７０６を有する。この種の抽出器は、従来技術において周知であるため、さらに詳細にここで記載する必要はない。深度推定は、差異に基づく。差異からの深度推定を行う詳細な説明は、非特許文献６に記載されている。図４、図５、および図６に記載されているように、誤差の大きさＥ（ｍ）は差異から導き出される。誤差の大きさＥ（ｍ）は、配列ｍ７１２のキャリブレーション・パラメータのためのアップデート値を算出することによって、最小推定器７１０において最小化される。最小推定器７１０の動作の実例について図４を参照して上述した。キャリブレーション・パラメータのアップデートは、カメラ７０２のイメージのピクセルの座標を変えるために、キャリブレーション装置７１４において使われる。深度推定器７０６、誤差最小推定器７１０、配列ｍ７１２、および、キャリブレーション装置７１４は、キャリブレーション手段７１６の一部である。本発明の一実施例において、キャリブレーション装置７１４は、カメラ７０２からのデータパスにおけるソフトウェアモジュールである。キャリブレーションは、ソフトウェアのみで実行される。他の実施例は、少なくともカメラ７０２用のパン・チルト・ズーム・カメラを使用する。本実施例において、キャリブレーション装置７１４は、最小推定器７１０のコントロールの下で、カメラ７０２のパン、チルトおよびズームを調整するパン・チルト・ズームユニットを有する。キャリブレーション装置７１４のパン・チルト・ズームユニットは、カメラ７０２で調整を行うために、例えばステッパーモータまたは他のトランスデューサを有する。
【００３４】
システム７００は、システム７００の動作のための使用を始めると、即座に、配列ｍの特定のパラメータ値によって初期化される。配列ｍは、以下の通りに初期化される。パラメータｍ０、ｍ３、および、ｍ７は、統一（unity）にセットされる。チルトがない場合パラメータｍ７は統一にセットされる。パラメータｍ１、ｍ２、ｍ４、ｍ５、および、ｍ６は、ゼロにセットされる。
【００３５】
図８を参照する。システム８００はカメラシステムを示しており、同時に少なくとも２つのイメージを記録する能力があり、かつ、ステレオカメラシステムを形成する２台のカメラ７０２、および７０４を有し、かつ、それぞれのカメラのイメージの第１のペアを処理するキャリブレーション手段７１６を有する。更にシステム８００は、深度推定器７０６の処理の前に、それぞれのカメラから取得された第１のペアのイメージの第１および第２のイメージを、変換するキャリブレーション装置８１４を有する。
【００３６】
図９は、システム７００の反復形処理を例示するプロセス９００の図である。ステップ９０２において、式４０２の配列ｍは、初期値のセットを有する。ステップ９０４において、イメージ（２０２、２０６）のペアが取得される。ステップ９０６において、ペアの第１のイメージは、第１のイメージのエピポーラ線（３０４）をペアの第２のイメージの対応するエピポーラ線（３０６）に合わせるために変換される。変換は、第２のイメージの平面上の投影マップ（４０２、４０４）により第１のイメージを調整することを利用する。マップは、配列ｍに現在保存されている一つ以上のパラメータ値に依存する。ステップ９０８において、差異の値が特定される。使用する差異の値は好ましくは、図５におよび図６に記載されているように、第２のエピポーラ線に沿ったそれぞれの第２のピクセルと第１のエピポーラ線に沿ったそれぞれの第１のピクセルとを関連づけるものである。ステップ９１０において、変換されたエピポーラ線上のピクセル、または変換されたエピポーラ線に中心を有するウインドウのピクセルは、変換された第１のイメージにおいて、これらのピクセルのための差異（disparity）だけずらされる。ステップ９１２において、誤差の大きさ（４１２）が、第１および第２のイメージの間で特定される。この誤差は、配列ｍの一つ以上のパラメータに依存する。ステップ９１４において、配列ｍの一つ以上のパラメータ値のためのアップデートを決定することによって、大きさが減少する。ステップ９１６において、このように決定されたアップデートは、配列ｍの一つ以上のパラメータ値をアップデートするために用いられる。本方法は、配列ｍのアップデートされた値によって処理するイメージの次のペアを読み出すために、ステップ９０４に戻る。
【００３７】
上述の実施例は、本発明を制限するよりはむしろ、実例を示すためのものである点に留意する必要がある。そして、その当業者は添付の請求の範囲の範囲内において、多くの別の実施例を設計することが可能である。
【００３８】
請求項において、括弧で示されるいかなる参照符号も請求項を制限するように解釈されない。動詞「有する」の使用および、その活用形は、請求項において示された要素以外を排除するものではない。要素の前に置かれる用語「ａ」または「ａｎ」は、この種の要素の複数の存在を排除しない。
【００３９】
本発明は、いくつかの異なった要素を有するハードウェアによって、および、最適にプログラムされたコンピュータによってインプリメントされてもよい。装置の請求項において、いくつかの手段を列挙する場合、これらの手段のいくつかはハードウェアの全く同一のアイテムによって実施されてもよい。特定の手段が相互に別の従属クレームにおいて詳述されるという単なる事実は、これらの手段の組合せが有効に使われることができないことを示すものではない。
【図１】
2010513907.tif 000003
【図２】
2010513907.tif 000004
【図３】
2010513907.tif 000005
【図４】
2010513907.tif 000006
【図５】
2010513907.tif 000007
【図６】
2010513907.tif 000008
【図７】
2010513907.tif 000009
【図８】
2010513907.tif 000010
【図９】
2010513907.tif 000011
【手続補正書】
【提出日】平成21年6月19日(2009.6.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
同時に少なくとも２つのイメージを記録することができるカメラシステムをキャリブレーションするための方法であって、当該方法はイメージの第１のペアを処理するステップを有しており、該処理は：
平面上の投影マップによって前記第１のペアの少なくとも一つの第１および第２のイメージを変換するステップであって、前記マップは一つ以上のパラメータ値に依存し、前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるように、イメージの第２のペアをもたらすところのステップ；
それぞれの差異の値を推定するステップであって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところのステップ；
前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のイメージ・ペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させるステップ；
前記移動の次に、一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定するステップ；
誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定するステップ；および
前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするステップ；
を有する方法。
【請求項２】
前記誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートは、パン、チルトおよびズームを制御する、請求項１記載の方法。
【請求項３】
前記変換するステップは、前記第１のペアの第１および第２のイメージの一方の一つを、前記第１のペアの第１および第２のイメージの他方の一つの平面上の投影マップにより、調整するステップ、を有する請求項１記載の方法。
【請求項４】
前記変換するステップは、水平に前記第２のペアの前記イメージの前記それぞれのエピポーラ線を整列配置するために、全く同一の平面上の個々の投影マップにより、前記第１のペアの前記第１および前記第２のイメージを調整するステップを有する、請求項１記載の方法。
【請求項５】
イメージの次のペアを前記処理の操作に従属させるステップを有する、請求項１記載の方法。
【請求項６】
前記カメラシステムは、ステレオカメラシステムを有する、請求項１又は３記載の方法。
【請求項７】
同時に少なくとも２つのイメージを記録することができるカメラシステムをキャリブレーションするためのソフトウェアであって、当該ソフトウェアはイメージの第１のペアを処理する命令を有しており、該命令は：
平面上の投影マップによって前記第１のペアの少なくとも一つの第１および第２のイメージを変換するステップであって、前記マップは一つ以上のパラメータ値に依存し、前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるように、イメージの第２のペアをもたらすところのステップ；
それぞれの差異の値を推定するステップであって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところのステップ；
前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させるステップ；
前記移動の次に、一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定するステップ；
誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定するステップ；および
前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするステップ；
を実行することができるソフトウェア。
【請求項８】
プログラムコードがコンピュータに実行されるときに、請求項１、３、４、５、または６のいずれか１項に記載された方法を実行するためのコンピュータ可読媒体に保存された前記プログラムコード手段を有するコンピュータ・プログラム製品。
【請求項９】
同時に少なくとも２つのイメージを記録する能力があるカメラシステムであって、当該カメラシステムは、カメラと、前記カメラシステムをキャリブレーションするために、イメージの第１のペアを処理するよう構成されたキャリブレーション手段とを有し、前記キャリブレーション手段は：
前記第１のペアの前記第１のイメージのエピポーラ線を前記第２のイメージの対応するエピポーラ線に合わせるように、前記第１のペアの少なくとも一つの第１および第２のイメージを変換するよう構成された調整手段であって、イメージの第２のペアをもたらすところの手段；
それぞれの差異の値を推定する推定手段であって、該値は、前記第２のペアの第１のイメージの第１のエピポーラ線に沿ったそれぞれの第１のピクセルを、前記第２のペアの第２のイメージの対応する第２のエピポーラ線に沿ったそれぞれの第２のピクセルに関連づけるところの推定手段；
前記それぞれのピクセルのための前記それぞれの差異の値に従って前記第２のイメージ・ペアの前記第１のイメージの前記第１のエピポーラ線のそれぞれのピクセルを移動させる移動手段；
前記移動の次に、一つ以上の前記パラメータに依存して、前記第２のイメージ・ペアの第１および第２のイメージ間の誤差の大きさを決定する誤差決定手段；
誤差の前記大きさの値を減少させるための一つ以上の前記パラメータ値のためのアップデートを決定する誤差低減手段；
前記アップデートを用いて一つ以上の前記パラメータ値をアップデートするアップデート手段；
を有するカメラシステム。
【請求項１０】
前記キャリブレーション手段によって処理されるイメージの更なるペアをフェッチするフェッチ手段、を有する請求項９記載のシステム。
【請求項１１】
ステレオカメラシステムを有する、請求項９または１０記載のカメラシステム。
【請求項１２】
請求項９の前記カメラシステムに使用するキャリブレーション手段。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
非特許文献３において、その筆者は、ステレオビジョンを現実の世界にうまくインプリメントするためには、セルフチューニングシステムが必要となると主張している。この文献は、ステレオカメラシステムをキャリブレーションするための多くの情報源の組合せに対する統計的フレームワークを記載している。これによって、通常のカメラの使用の間の継続的なキャリブレーションの繰り返しを行うキャリブレーションシステムが達成される。この著者らは、作動しているビジョンシステムにおいて、標準的な３Ｄ対象、正確なロボットモーション、および一致したステレオ特性を用いてデモンストレーションを行っている。より詳細には、Thacker氏達は、エクイバレントマッチングのための特徴位置を使用して、変換およびカメラパラメータのための反復的な推定手順による、ステレオカメラシステムのキャリブレーションを行っている。
「Tracking  Camera  Parameters  of  An  Active  Stereo  Rig」by  Dang  and  Hoffman,  Pattern  Recognition,  Vol.  4174,21  September  2006には、バージングカメラ（verging  camera）を備えるアクティブなステレオ装置の持続的なセルフキャリブレーションの取り組みが開示されている。この資料には、３つの異なるセルフキャリブレーションのモデルが評価されている。これらは、セルフキャリブレーションのためのガウス−ヘルマート（Gauss-Helmert）モデルであり、バンドル法（bundle  adjustment）、エピポーラ制約（epipolar  constraints）、およびトリリニア制約（trilinear  constraints）を用いている。
【国際調査報告】
2010513907.tif 000012