(57)【要約】可動多眼視覚システムの立体キャリブレーション方法において、開示する可動視覚システムは、少なくとも２つの撮像部材、少なくとも１つの計算部材、及び少なくとも１つの制御部材を含み、撮像部材の前にキャリブレーションテンプレートを配置し、各撮像部材を各運動自由度回動させることによりキャリブレーションテンプレート特徴を含む１組以上の画像を取得し、同時に、該画像を取得する時に対応する各運動自由度の位置情報を取得し、計算により撮像素子と各運動自由度のキャリブレーション結果、つまり、撮像素子に対する各運動自由度の回転軸の回転行列及び並進行列を取得し、その後、前記得られたキャリブレーション結果を利用して視覚システムにおける各運動自由度位置情報を結合して立体キャリブレーション結果をリアルタイムで取得する。この方法は可動多眼視覚システムにおける撮像素子が運動状態での立体キャリブレーションを実現し、良好な計算リアルタイム性を有し、機械加工または組み立てによる誤差問題を取り除いて応用可能性が幅広い。
2022500956.tif 000002
【特許請求の範囲】
【請求項１】
可動多眼視覚システムの立体キャリブレーション方法において、
前記可動多眼視覚システムは、
それぞれ連続画像を取得可能な少なくとも一つの撮像素子を含み、任意の数の運動自由度を有し、各前記運動自由度には回動または並進情報を取得可能な位置取得装置が取り付けられている少なくとも二セットの撮像部材と、
画像情報及び各運動自由度の運動情報を計算して処理することができる少なくとも一つの計算部材と、
各運動自由度の運動を制御することができる少なくとも一つの制御部材と含み、
前記可動多眼視覚システムの立体キャリブレーション方法は、前記撮像素子の前方にキャリブレーションテンプレートを配置し、各撮像素子が各運動自由度で運動するように駆動し、対応する撮像素子を用いて完全なキャリブレーションテンプレートを含む画像を記録し、同時に、この画像を取得する時に対応する各運動自由度の位置情報を記録し、前記計算部材を通じて前記撮像素子と各運動自由度のキャリブレーション結果を計算して取得することを含み、前記キャリブレーション結果は撮像素子に対する各運動自由度の回転軸の回転行列及び並進行列を含むことを特徴とする可動多眼視覚システムの立体キャリブレーション方法 。
【請求項２】
前記位置取得装置は運動自由度上に取り付けられて、対応する運動自由度の運動情報を取得するために用いられることを特徴とする請求項１に記載の可動多眼視覚システムの立体キャリブレーション方法。
【請求項３】
少なくとも一つの撮像部材は一つ以上の運動自由度を有することを特徴とする請求項１に記載の可動多眼視覚システムの立体キャリブレーション方法。
【請求項４】
前記キャリブレーションテンプレートは自然静的シーン及び人工標準ターゲットの中の一つを含み、且つ前記自然静的シーンはキャリブレーションテンプレートとして固定された画像特徴と周知の画像特徴との間の位置情報を提供できる必要があり、前記人工標準ターゲットは２Ｄ平面ターゲット、３Ｄ立体ターゲットの中の少なくとも１つを含むことを特徴とする請求項１に記載の可動多眼視覚システムの立体キャリブレーション方法。
【請求項５】
前記方法が、
基準位置で各撮像部材の各運動自由度の位置情報を記録するステップと、
基準位置で立体キャリブレーションを実施して、撮像素子の間の正確な相対位置パラメータを取得するステップと、
各運動自由度をそれぞれキャリブレーションし、また計算部材を利用して撮像素子座標系に対する各運動自由度の回転軸の回転並進行列結果を計算して得るステップと、を含むことを特徴とする請求項１に記載の可動多眼視覚システムの立体キャリブレーション方法。
【請求項６】
前記立体キャリブレーション結果は、基準位置情報、基準位置での撮像素子の立体キャリブレーション結果、及び撮像素子座標系に対する各運動自由度の回転軸の回転並進関係を含み、その中、基準位置での撮像素子の立体キャリブレーション結果は撮像素子の間の回転並進関係を含むことを特徴とする請求項１に記載の可動多眼視覚システムの立体キャリブレーション方法。
【請求項７】
前記キャリブレーション結果及び各運動自由度の位置情報を共に各運動自由度の回転軸座標系と撮像素子座標系との間の関係モデルに代入して各撮像素子の間の相対位置関係を表す回転行列及び並進行列を計算して得るステップをさらに含むことを特徴とする請求項１に記載の可動多眼視覚システムの立体キャリブレーション方法。
【請求項８】
前記関係モデルが以下の通りであることを特徴とする請求項７に記載の可動多眼視覚システムの立体キャリブレーション方法。
2022500956.tif 000039
ここで、Ｒ’及びＴ’はそれぞれ前記可動多眼視覚システムで任意の２つの撮像部材で構成される可動双眼視覚サブシステムの現在位置での２つの撮像部材の外部パラメータ結果の回転行列及び並進行列であり、ＲＢＣａ，ＴＢＣａはそれぞれは撮像素子座標系に対するａ番目の運動自由度の回転軸の回転行列及び並進行列であり、Ｎｋはｋ番目の撮像部材の運動自由度の数であり、ｘ，ｙは前記２つの撮像部材の番号であり、ｘは前記可動双眼サブ視覚システムにおける「左眼」番号とし、ｙは前記可動双眼サブ視覚システムにおける「右眼」番号とし、Ｒａは基準位置に対するａ番目の運動自由度の回転軸の回転角変換の回転行列であり、ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）はそれぞれ基準位置で「左眼」と「右眼」との間の相対回転行列と並進行列である。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は視覚システムの立体キャリブレーション方法に関し、特に、視覚システムにおいて少なくとも１つが独立的で可動な多眼（二眼及び以上）視覚システムの立体キャリブレーション方法に関する。
【背景技術】
【０００２】
従来の視覚システムは、カメラの数によって単眼、多眼視覚システムの二種類に分けられ、その中で、カメラの位置が可動であるか否かによって固定視覚システムと可動視覚システムに分けられる。単眼視覚システムは構造が簡単であり、費用が低廉であるので、広く用いられているが、単一カメラでは視野内の物体の深度情報を取得することができない。多眼カメラは双眼の応用が最も多く、多眼カメラは立体画像を取得することができるが、視野内の物体の深度情報を計算するために、各カメラの内部パラメータ情報及び各カメラの間の外部パラメータ情報を予めキャリブレーションする必要がある。
【０００３】
固定双眼カメラの間の相対位置が固定されているので、双眼カメラの間の相対位置関係は一回のキャリブレーションだけで計算することができ、その関連キャリブレーションアルゴリズムは非常に成熟している。例えば、３Ｄ立体ターゲットに基づくカメラキャリブレーションアルゴリズム、２Ｄ表面ターゲットに基づくカメラキャリブレーションアルゴリズムなど幅広く応用されており、これから固定多眼視覚システムにまで派生され、多眼の間の相対位置関係を二つずつキャリブレーションすることにより、多眼カメラの間の相対位置関係を得ることができる。
【０００４】
可動多眼視覚システムは、使用中に複数のビデオカメラで運動が発生し、各カメラの内部パラメータ情報はカメラの運動によって変化しないものの、外部パラメータ情報はカメラの運動によって変化が発生し、この時、視野内の物体の深度情報を計算しようとする場合、ビデオカメラが移動した後の正確な外部パラメータ情報を知る必要がある。
【０００５】
その他に、可動多眼視覚システムの構造に機械的に運動する部分があり、従来の機械加工レベル及び設置工程に制限されるため、各機械回転軸が設計通りに厳密で正確に運動することを保証することができないとともに、同時に撮像素子と機械回転軸の相対位置も保証することができない。立体視覚は複数のカメラの間の位置関係精度に対する要求が非常に高く、この時、優れた立体視覚効果が必要であれば、このような誤差を最大限に取り除く必要がある。
【０００６】
現在、固定双眼及び派生された固定多眼に基づく関連キャリブレーションアルゴリズムは既に比較的成熟しており、例えば有名な張氏キャリブレーション方法（１９９８年張正友により発表された論文「Ａ  Ｆｌｅｘｉｂｌｅ  Ｎｅｗ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ：カメラキャリブレーションのための柔軟性のある新しい技術」）など、広く応用されている。しかしながら、可動多眼視覚システムに基づくキャリブレーションは関連する成熟で普遍的な方法がない。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来技術における可動多眼視覚システムが作動する時にビデオカメラで運動が発生した場合、従来の立体キャリブレーションアルゴリズムではビデオカメラの外部パラメータ情報などをリアルタイムで得ることができない問題を解決するために、本発明は可動多眼視覚システムの立体キャリブレーション方法を提供して、複数のビデオカメラの相対位置に変化が発生し、且つ各軸、撮像部材の相対位置に機械加工、組み立てなどの要素による誤差が発生しても、各軸上の位置記録アセンブリによって撮像部材の間の相対位置関係をリアルタイムで計算することができる。
【課題を解決するための手段】
【０００８】
本発明による可動視覚システムの立体キャリブレーション方法は、取得した一連の画像情報及び各運動自由度の位置情報によって可動多眼システムのキャリブレーションパラメータを計算し、その後、当該キャリブレーションパラメータ及び各運動自由度の運動情報によって撮像部材の外部パラメータ情報をリアルタイムで計算することができる。
【０００９】
具体的には、本発明による可動多眼視覚システムの立体キャリブレーション方法において、前記可動多眼視覚システムは、
それぞれ連続画像を取得可能な少なくとも一つの撮像素子を含み、任意の数の運動自由度を有し、各前記運動自由度には回動または並進情報を取得可能な位置取得装置が取り付けられている少なくとも二セットの撮像部材と、
画像情報及び各運動自由度の運動情報を計算して処理することができる少なくとも一つの計算部材と、
各運動自由度の運動を制御することができる少なくとも一つの制御部材と含み、
前記立体キャリブレーション方法は、基準位置での各撮像部材の各運動自由度の位置情報を記録するステップ；基準位置で立体キャリブレーションを行って撮像素子の間の正確な相対位置パラメータを取得するステップ；前記撮像素子の前方に前記キャリブレーションテンプレートを配置し、各撮像素子が各運動自由度で運動するように駆動し、対応する撮像素子を用いて完全なキャリブレーションテンプレートを含む複数の画像を記録し、同時に、この画像を取得する時に対応する各運動自由度の位置情報を記録し、前記計算部材を通じて前記撮像素子と各運動自由度のキャリブレーション結果を計算して取得するステップを含み、前記キャリブレーション結果は撮像素子に対する各運動自由度の回転軸の回転行列及び並進行列を含む。
【００１０】
ここで、前記位置取得装置は各運動自由度上に装着されて、対応する運動自由度の運動情報を取得することができる。
【００１１】
具体的には、本発明による可動視覚システムは、それぞれ位置記録アセンブリによって位置情報を取得することができる任意の数の運動自由度を有し（全ての撮像素子はゼロ運動自由度を有することはできない）、連続画像を撮影することができる撮像素子を含む複数の撮像部材と、関連データを処理して必要な結果を計算するための計算部材と、視覚システムにおける運動自由度及び位置記録アセンブリから各運動自由度の位置情報を取得することを制御する制御部材とを含む。
【００１２】
本発明は双眼可動視覚システムの立体キャリブレーションに基づいており、さらに、二眼より大きい多眼可動視覚システムに対して多眼の中の双眼のキャリブレーションに簡略化することができ、例えば、二眼より多い多眼で２つの撮像素子の立体キャリブレーション結果と必要とする場合、この双眼撮像素子に対して双眼可動視覚システムの立体キャリブレーションを行えばいい。通常、我々は一つの基準位置を一律に記録し、その後、この基準位置で後で双眼可動立体キャリブレーションをすべきものに対して先に固定双眼キャリブレーションを行って固定双眼立体キャリブレーションのデュアル撮像素子の回転並進位置関係を得る。続いて、本発明の後続ステップを利用して当該デュアル撮像素子で運動が発生した後のリアルタイム立体キャリブレーション結果を得ることができる。
【００１３】
ここで、前記キャリブレーションテンプレートは固定された特徴及び既知の特徴の相対位置情報を抽出することができるキャリブレーションテンプレートである。例えば、人工的に作られた各種２Ｄ及び３Ｄ立体ターゲット、または一部固定された自然シーンは、画像処理アルゴリズムによって固定された特徴情報を抽出することができ、またこれらの特徴情報の間の相対位置関係を知ることができることが要求される。通常、実際の応用では、キャリブレーション結果の精度を向上させ、またキャリブレーション過程における難易度を低下させるために、精密に加工された３Ｄ立体ターゲットまたは２Ｄ平面ターゲットをキャリブレーションテンプレートとして使用する場合が多い。
【００１４】
本発明による可動視覚システムの立体キャリブレーション方法は、以下のステップを含むことができる。
（1）基準情報の取得：
各運動自由度のある位置を基準位置として決め、各撮像素子の各運動自由度の位置情報を記録して、基準位置情報｛θＩａ｝，
2022500956.tif 000003
を取得する。ｋは撮像部材の番号を表し、ａは運動自由度の番号を表し、各運動自由度の連結順に番号を付ける。Ｋはシステム全体における撮像部材の数であり、Ｎｋはｋ番目の撮像部材の運動自由度の数であり、システム全体における運動自由度の数は
2022500956.tif 000004
である。
（２）立体キャリブレーション：
双眼立体キャリブレーションに基づいたので、二眼より多い多眼に対してそれぞれ立体キャリブレーションを行う。立体キャリブレーションを必要とするデュアル撮像素子の公共視野領域にキャリブレーションテンプレートを配置し、取得した画像情報を記録し、固定双眼カメラキャリブレーションアルゴリズムを使用して双眼立体キャリブレーション結果（ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ））を得、ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）はそれぞれデュアル撮像素子の間の回転行列及び並進行列である。立体キャリブレーションを必要とするデュアル撮像素子が複数ある場合、上記立体キャリブレーションステップを繰り返して複数の双眼立体キャリブレーション結果｛ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）｝，１≦ｘ，ｙ≦Ｋを得ることができ、Ｋはシステム全体における撮像部材の数である。
（３）運動軸のキャリブレーション：
キャリブレーションテンプレートを運動軸のキャリブレーションを必要とする撮像部材の視野領域に配置し、ａ番目の運動軸を数回回動させ、回動するたびに画像情報と各運動軸の位置情報を記録し、複数回の回動により得られた画像の一連番号を利用してキャリブレーションアルゴリズムを使用して計算してキャリブレーションテンプレート位置に対する撮影した各画像の回転及び並進変換行列｛ＲａＣｉ，ＴａＣｉ｝，ｉ＝１・・・Ｐａを取得する。その後、上記ステップを繰り返し、全ての運動軸が全部上記ステップを完成するまで他の運動軸を回動させる。軸キャリブレーション結果の中で基準位置に対する運動軸の回動角｛θａｉ１−θＩ１，・・・，θａｉＮ−θＩＮ｝，ｉ＝１・・・Ｐａを回転行列｛ＲＢａｉ｝，ｉ＝１・・・Ｐａ，
2022500956.tif 000005
に変換し、上記結果を各運動自由度の回転軸座標系と撮像素子座標系の関係モデルに代入する。
2022500956.tif 000006
ＲＢＣａ，ＴＢＣａはそれぞれａ番目の運動自由度回転軸が撮像素子座標系に対する回転行列及び並進行列であり、Ｎｋはｋ番目の撮像部材の運動自由度の数であり、ＲＢａｉは基準位置に対するａ番目の運動軸の回転角度変換の回転行列であり、ＲａＣｉ，ＴａＣｉはそれぞれキャリブレーションテンプレート位置に対するａ番目の運動軸が運動する時に撮影したｉ番目画像の画像座標系の回転及び並進変換行列であり、Ｐａはシステムのキャリブレーション過程でａ番目の運動軸が回動してピックアップした全ての有効画像の数であり、最後に複数の方程式が得られ、当該方程式の最適解を求めることにより各運動軸のキャリブレーション結果を得る。
｛ＲＢＣａ，ＴＢＣａ｝，
2022500956.tif 000007
（４）キャリブレーション結果の計算：
上記のステップを利用して基準情報｛θＩａ｝，
2022500956.tif 000008
、立体キャリブレーション結果｛ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）｝，１≦ｘ，ｙ≦Ｋ、及び各運動自由度回転軸と撮像素子の回転並進行列｛ＲＢＣａ，ＴＢＣａ｝，
2022500956.tif 000009
を取得し、実際の応用で可動視覚システム全体で立体キャリブレーション結果を必要とする双眼（双眼番号はそれぞれｘ，ｙ，１≦ｘ，ｙ≦Ｋであり、ｘは双眼サブ視覚システムにおける「左眼」、ｙは双眼サブ視覚システムにおける「右眼」とする）各自由度の位置情報｛θａ｝，
2022500956.tif 000010
を取得し、基準位置情報と結合して、各自由度の回転角｛θＩａ−θａ｝，
2022500956.tif 000011
を取得し、これを行列形式｛Ｒａ｝，
2022500956.tif 000012
に変換して、運動自由度の回転軸座標系と撮像素子座標系の関係モデルに代入する（本発明独創性）：
2022500956.tif 000013
【００１５】
ここで、Ｒ’及びＴ’はそれぞれ前記可動双眼視覚サブシステムで運動が発生した後のデュアル撮像部材の外部パラメータ結果における回転行列及び並進行列結果であり、ＲＢＣａ，ＴＢＣａはそれぞれは撮像素子座標系に対するａ番目の運動軸の回転行列及び並進行列であり、Ｎｋはｋ番目の撮像部材の運動自由度の数であり、ｘ，ｙは双眼番号であり、xを双眼サブ視覚システムにおける「左眼」番号、yは双眼サブ視覚システムにおける「右眼」番号とし、Ｒａは基準位置に対するａ番目の運動軸の回転角度変換の回転行列であり、ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）はそれぞれ基準位置での「左眼」と「右眼」の相対回転行列及び並進行列である。
【００１６】
ここで、ステップ（２）、（３）の順序は互いに置き換えることができる。
【００１７】
本発明による前記キャリブレーションシステムの立体キャリブレーション方法において、前記ステップ（１）では、初期情報を取得し、各運動自由度のある位置を基準位置として選択し、基準位置は以下を充足すべきである：立体キャリブレーションを必要とする撮像素子の間は一定の公共視野領域を有する。各撮像部材の各運動自由度の位置情報を記録して基準位置情報｛θＩａ｝，
2022500956.tif 000014
を得、ｋは撮像部材の番号を表し、Ｋはシステム全体における撮像部材の数であり、Ｎｋはｋ番目の撮像部材の運動自由度の数であり、システム全体における運動自由度の数は
2022500956.tif 000015
である。
【００１８】
前記ステップ（２）、立体キャリブレーション：前述したように、本発明によるキャリブレーションは双眼立体キャリブレーションに基づいたので、二眼より多い多眼に対してそれぞれ立体キャリブレーションを行う。立体キャリブレーションを必要とするデュアル撮像素子（双眼番号はｘ，ｙ，１≦ｘ，ｙ≦Ｋとし、ｘは双眼サブ視覚システムにおける「左眼」、ｙは双眼サブ視覚システムにおける「右眼」とする）の公共視野領域にキャリブレーションテンプレートを配置し、取得した画像情報を記録する（ここで、後で具体的に使用するアルゴリズムによってキャリブレーションテンプレートの姿勢を変換することにより記録した複数の画像情報を取得する必要がある場合がある）。その後、固定双眼カメラキャリブレーションアルゴリズム（本発明では例えば１９９８年張正友教授より提案された単平面碁盤のビデオカメラキャリブレーション方法、またはその他類似のアルゴリズムを使用したが、一部アルゴリズムは画像データの数量に要求があるので、需要に応じてキャリブレーションテンプレートの姿勢を変換して複数の画像データを取得することができる）を使用して双眼立体キャリブレーション結果（ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ））を得、ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）はそれぞれデュアル撮像素子の間の回転行列及び並進行列であり、立体キャリブレーションを必要とするデュアル撮像素子が複数ある場合、上記立体キャリブレーションステップを繰り返して複数の双眼立体キャリブレーション結果｛ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）｝，１≦ｘ，ｙ≦Ｋを得ることができ、ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）はそれぞれデュアル撮像素子の間の回転行列及び並進行列である。
【００１９】
前記ステップ（３）、運動軸のキャリブレーション：キャリブレーションテンプレートを運動軸のキャリブレーションを必要とする撮像素子の視野領域に配置する。ａ番目の運動軸を数回回動させ、回動するたびに当該運動軸が連結された撮像素子が画像をピックアップするようにして画像Ｍａｉを取得し、同時に、この時に当該運動軸の位置情報を記録して｛Ｍａｉ，θａｉ１，・・・，θａｉＮ｝を得る。複数回の回動により画像の一連番号（Ｍａ１，Ｍａ２，Ｍａ３，・・・ＭａＰ）を得る。Ｐａはキャリブレーション過程でａ番目の運動軸がピックアップした全ての有効画像の数である。またキャリブレーションアルゴリズム（本発明では同様に張正友のキャリブレーション法を例とする）を使用してキャリブレーションテンプレート位置に対する撮影した各画像の回転及び並進変換行列｛ＲａＣｉ，ＴａＣｉ｝，ｉ＝１・・・Ｐａを計算して取得し、この画像を撮影する時に記録した運動軸の位置情報を結合して｛ＲａＣｉ，ＴａＣｉ，θａｉ｝，ｉ＝１・・・Ｐａを得る。その後、上記ステップを繰り返して、運動軸
2022500956.tif 000016
が上記ステップを全部完成するまで他の運動軸を回動させる。キャリブレーション結果の中で基準位置に対する運動軸の回動角｛θａｉ１−θＩ１，・・・，θａｉＮ−θＩＮ｝，ｉ＝１・・・Ｐａを回転行列｛ＲＢａｉ｝，ｉ＝１・・・Ｐａ，
2022500956.tif 000017
に変換し、上記結果を各運動自由度の回転軸座標と撮像素子座標系の関係モデルに代入する。
2022500956.tif 000018
【００２０】
ＲＢＣａ，ＴＢＣａはそれぞれａ番目の運動自由度の回転軸と撮像素子の回転並進行列であり、Ｎは視覚システムの運動自由度の数であり、ＲＢａｉは基準位置に対するａ番目の運動軸の回転角度変換の回転行列であり、ＲａＣｉ，ＴａＣｉはそれぞれキャリブレーションテンプレート位置に対するａ番目の運動軸が運動する時に撮影したｉ番目画像の画像座標系の回転及び並進変換行列であり、Ｐａはシステムのキャリブレーション過程でａ番目の運動軸が回動してピックアップした全ての有効画像の数であり、最後に複数の方程式が得られ、当該方程式の最適解を求めることにより各運動軸のキャリブレーション結果を得る。
｛ＲＢＣａ，ＴＢＣａ｝，
2022500956.tif 000019
【００２１】
前記ステップ（４）、キャリブレーション結果の計算：上記のステップを利用して基準情報、｛θＩａ｝，
2022500956.tif 000020
、立体キャリブレーション結果｛ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）｝，１≦ｘ，ｙ≦Ｋ、及び各運動自由度の回転軸と撮像素子の回転並進行列｛ＲＢＣａ，ＴＢＣａ｝，
2022500956.tif 000021
を取得する。実際の応用で可動視覚システム全体の立体キャリブレーション結果を必要とする双眼（双眼番号はそれぞれｘ，ｙ，１≦ｘ，ｙ≦Ｋであり、ｘは双眼サブ視覚システムにおける「左眼」、ｙは双眼サブ視覚システムにおける「右眼」とする）各自由度の位置情報｛θａ｝，
2022500956.tif 000022
を取得し、基準位置情報と結合して、各自由度の回転角｛θＩａ−θａ｝，
2022500956.tif 000023
を得、これを行列形式｛Ｒａ｝，
2022500956.tif 000024
に変換して、運動自由度の回転軸座標系と撮像素子座標系の関係モデルに代入する：
2022500956.tif 000025
【００２２】
得られたＲ’及びＴ’はそれぞれ前記可動双眼視覚サブシステムで運動が発生した後のデュアル撮像部材の外部パラメータ結果における回転行列及び並進行列結果である。ＲＢＣａ，ＴＢＣａはそれぞれは撮像素子座標系に対するａ番目の運動軸の回転行列及び並進行列であり、Ｎｋはｋ番目の撮像部材の運動自由度の数であり、ｘ，ｙは双眼番号であり、xを双眼サブ視覚システムにおける「左眼」番号、yは双眼サブ視覚システムにおける「右眼」番号とし、Ｒａは基準位置に対するａ番目の運動軸の回転角度変換の回転行列であり、ＲＩ（ｘ，ｙ），ＴＩ（ｘ，ｙ）はそれぞれ基準位置での「左眼」と「右眼」の相対回転行列及び並進行列である。
【００２３】
本発明によるキャリブレーション方法において、前記ステップ（２）、（３）の順序は互いに置き換えることができる。
【００２４】
本発明による立体キャリブレーションシステム及び方法は、可動視覚システムで撮像素子に運動した後でも、計算により各撮像素子の内部パラメータ情報及び外部パラメータ情報を取得することができ、この情報は立体視覚などの関連アルゴリズムの計算に用いられる；本発明の方法は、良好な計算リアルタイム性を有する。即ち、一回立体キャリブレーション後、続いて各運動自由度の位置情報を計算することにより、可動視覚システムにおける各撮像部材の内部パラメータ及び外部パラメータをリアルタイムで取得することができる；本発明は機械加工及び組み立てプロセスによる理論設計と一部不可避的に発生する誤差問題を取り除くことができるという有益な効果を奏する。
【図面の簡単な説明】
【００２５】
【図１】本発明による可動多眼視覚システムの立体キャリブレーションシステムの概略的ブロック図である。
【図２Ａ】本発明による可動多眼視覚システムの立体キャリブレーションフローチャートである。
【図２Ｂ】本発明による可動多眼視覚システムのリアルタイム外部パラメータ計算フローチャートである。
【図３】本発明による６自由度可動双眼視覚システムの機械的構造の斜視図である。
【図４】図３に示す６自由度可動双眼視覚システムの座標系設定である。
【図５】本発明で用いるキャリブレーションアルゴリズムを利用した碁盤キャリブレーションテンプレートである。
【図６】本発明による各運動自由度の回転軸座標系及びビデオカメラ座標系の概略図である。
【発明を実施するための形態】
【００２６】
以下の具体的な実施例及び図面を結合して本発明についてさらに詳しく説明する。簡潔のために、本発明の実施例の各プロセス、条件、実験方法などを説明する際に、当該技術分野において周知の一部内容は省略し、本発明はこのような内容に対して特に制限しない。
【００２７】
以下、図１〜６を結合して本発明による可動多眼視覚システムの立体キャリブレーション方法についてさらに説明する。
【００２８】
本発明による可動多眼視覚システムは、少なくとも２つの撮像部材、少なくとも１つの計算部材、及び少なくとも１つの制御部材を含み、各撮像部材は一つの計算部材及び一つの制御部材を個別に備えることができ、また、複数の撮像部材は一つの計算部材及び一つの制御部材を共有することができ、前記撮像部材、計算部材、制御部材の間は信号接続される。図1に示すように、前記システムは、一つの制御部材、一つの計算部材、及び複数の撮像部材を含む。その中、制御部材は撮像部材の各運動自由度の運動を制御することができ、各運動自由度の位置情報を取得することもできる。計算部材は画像情報及び各運動自由度の運動情報を計算して処理することができる。撮像部材は連続画像を取得して、画像情報を計算部材に転送することができる。前記少なくともの２つの撮像部材のそれぞれは任意の数の自由度（ゼロ自由度を含む、即ち固定されて移動しない）を有することができ、その中の少なくとも一つの撮像部材は少なくとも１つの自由度を有する可動部材である。
【００２９】
本発明による可動多眼視覚システムの立体キャリブレーション方法は、図２Ａに示すように、主に、キャリブレーションステップ及び外部パラメータ結果計算ステップを含み、キャリブレーションステップは、具体的には、
Ｓ１１：視覚システムの初期情報を得るステップ；
Ｓ１２：双眼立体キャリブレーション結果を必要とする双眼に基づいて、基準位置で数組のキャリブレーションテンプレート画像情報を収集するステップ；
Ｓ１３：従来の固定双眼キャリブレーションアルゴリズムを使用して、基準位置での双眼の間の回転及び並進行列を計算して得るステップ；
Ｓ１４：各運動軸をそれぞれ回動させて、対応するキャリブレーションテンプレート画像情報を収集し、且つ各運動軸の位置情報を記録するステップ；
Ｓ１５：ステップＳ１４で収集された情報を使用して、撮像素子座標系に対する各運動軸の回転並進行列を計算して求めるステップ；
Ｓ１６：多眼可動視覚システムのキャリブレーション結果を得てキャリブレーションの目的を実現するステップ；を含む。
ここで、ステップＳ１２、Ｓ１３及びステップＳ１４、Ｓ１５は位置を置き換えることができる。つまり、ステップＳ１１、Ｓ１４、Ｓ１５、Ｓ１２、Ｓ１３、Ｓ１６の順に実施してもよい。
【００３０】
前記外部パラメータ結果計算ステップは、
Ｓ２１：可動視覚システムキャリブレーション結果を取得するステップ；
Ｓ２２：現在立体キャリブレーション結果を必要とするデュアル撮像部材（双眼）の各運動自由度の位置情報を取得するステップ；
Ｓ２３：関連情報を可動視覚システムの外部パラメータ求解モデルに代入して、デュアル撮像部材の間の回転並進行列情報を計算するステップ；を含むことができる。
【００３１】
図３及び図４に示す可動双眼６自由度視覚システムの機械的メカニズムの斜視図のように、図３及び４から分かるように、各眼（一つの眼球に相当）は一つの撮像部材で構成され、２つの撮像部材は平行に設置されて左右眼球に相当し、左右眼球には、それぞれピッチ、ヨー、ロールの三つの運動自由度を有し、空間直交座標系に対応する。ピッチはＹ軸を中心として回転し、ヨーはＺ軸を中心として回転し、ロールはＸ軸を中心として回転する。一つの自由度の運動が他の自由度の運動を影響しないように、同一「眼球」の３つの自由度の間は堅固に連結される。選択的に、左「眼球」と右「眼球」のピッチモーターはベースのようなケーシングによって対応する位置に固定され、２つの「眼球」ロールの自由度はそれぞれ連続的に撮影可能な撮像素子に連結される。６つの運動自由度はそれぞれ一つのモーターで駆動され、各モーターには全部モーターのリアルタイム出力位置情報を取得するように位置記録装置が備えられている。本実施例では、角度値で各モーターの出力位置情報を表す。図４に示すのは図３の可動双眼６自由度視覚システムの座標系設定である。本発明は、任意の数の運動自由度を有する多眼システムに対して立体キャリブレーションを行うことができ、多眼の間の運動自由度は対称であってもよく非対称であってもよく、システム内のいくつかの眼は固定されており（つまりゼロ自由度）、他の眼は可動である（０より大きい運動自由度を有する）場合を含み、本発明も同様に適用可能である。
【実施例】
【００３２】
図３及び図４に示す６自由度可動双眼視覚システムを例に挙げて本発明について詳しく説明する。
【００３３】
1）キャリブレーション初期データ
本発明では、固定特徴と周知の特徴距離情報を抽出することができるキャリブレーションテンプレートが必要であり、本実施例では１９９８年張正友教授により提案された単平面碁盤のビデオカメラキャリブレーションアルゴリズムを選択して用い、図５に示す平面碁盤画像を取ってプリントして一平面板上に張り付けてキャリブレーションテンプレートとする。当該キャリブレーションテンプレートを双眼カメラの公共視野領域に配置して、双眼カメラでキャリブレーションテンプレート全体を完全に見ることができるように保証する必要がある。
【００３４】
本実施例では、求解難易度を低下するために、左「眼球」のロール、ピッチ、ヨーの自由度（つまり、モーター１、２、３に対応する）のキャリブレーションを例に挙げて各自由度に対してそれぞれ独立的にキャリブレーションする。キャリブレーションテンプレートを可動双眼視覚システムの前に配置して、左「眼球」撮像素子がキャリブレーションテンプレートを完全に撮影することができるように保証する。その後、モーター１、２、３を数回回転させ、回転するたびに、左「眼球」の撮像素子が画像を取るようにして画像Ｍｉを取得し、同時に、この時に３つのモーターの運動軸の位置情報｛θ１ｉ，θ２ｉ，θ３ｉ｝を記録し、二つを結合して｛Ｍｉ，θ１ｉ，θ２ｉ，θ３ｉ｝を得る。複数回の回動により得られた画像の一連番号（Ｍ１，Ｍ２，Ｍ３，・・・，Ｍｐ）を利用して、また、図３の平面碁盤キャリブレーションテンプレート及び張正友によるキャリブレーションアルゴリズムを使用してキャリブレーションテンプレート位置に対する撮影した各画像の回転及び並進変換行列｛ＲＣｉ，ＴＣｉ｝を計算して取得し、この画像を撮影する時に記録した各運動軸の位置情報を結合して｛ＲＣｉ，ＴＣｉ，θ１ｉ，θ２ｉ，θ３ｉ｝，ｉ＝１・・・Ｐを得、Ｐは当該運動軸がキャリブレーション過程で得られた全ての有効画像の数である。
【００３５】
基準立体キャリブレーション位置として双眼ビデオカメラにかなりの公共視野領域を有する位置を選択し、双眼６モーターの位置情報を（θＩ１，θＩ２，θＩ３，θＩ４，θＩ５，θＩ６）と記録し、下付き文字１〜６はそれぞれ左眼のロール、ヨー、ピッチ及び右眼のロール、ヨー、ピッチ自由度に対応する（後で収集する画像も同じ番号を用いて下につける）。
【００３６】
実際の応用で、好ましくは、基準立体キャリブレーション結果の精度を向上させるために、ビデオカメラが同じ位置にあるとき、キャリブレーション画像を複数回収集する。即ち、デュアルビデオカメラの前で平面碁盤のポーズを変更して複数組の画像を収集し、好ましくは、通常、２０組の画像を収集すればいい。
【００３７】
2）可動双眼視覚システムの立体キャリブレーション
前記ステップで基準立体キャリブレーション位置（θＩ１，θＩ２，θＩ３，θＩ４，θＩ５，θＩ６）で収集した複数の立体キャリブレーションテンプレート画像群を用い、その後、従来技術における張氏立体キャリブレーションアルゴリズムを使用して基準位置でデュアルビデオカメラの間の相対位置関係を計算する（回転行列ＲＩ及び並進ベクトルＴＩ）（具体的計算ステップは１９９８年張正友により発表された論文「Ａ  Ｆｌｅｘｉｂｌｅ  Ｎｅｗ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ：カメラキャリブレーションのための柔軟性のある新しい技術」を参照）。
【００３８】
3）運動軸キャリブレーション
可動デュアルビデオカメラは機械加工過程で光学中心が回転軸上にあることを保証することができず、回転軸とビデオカメラ座標系の平行も保証することができないので、回転軸エンコーダの出力値によって各ビデオカメラ座標系のポーズ変換を計算して回転軸とビデオカメラ座標系の位置関係を知る必要がある。また、一つの剛体に対して、ビデオカメラと回転軸との間の相対関係は変わらないように保持する。各回転軸とビデオカメラ座標系との間の位置関係を求めるために、図６に示すように、数理モデルを構築する。Ｃ｛Ｏｃ−ｘｃｙｃｚｃ｝はビデオカメラ座標系（以下、Ｃ系と称する）であり、ビデオカメラ座標系の光学中心Ｏｃを開始点とし、垂直線とロール自由度回転軸ｌとの交差点をＯｂとし、垂直線を延長して放射線Ｏｂｘｂとする。Ｏｂを原点として、Ｏｂｘｂはｘ軸であり、回転軸はｙ軸であり、右手の法則でｚ軸を決めて回転軸座標系Ｂ｛Ｏｂ−ｘｂｙｂｚｂ｝（以下、Ｂ系と称する）を構築する。
【００３９】
ＯｃＯｂ＝ｄとすると（ｄは機械加工工程によって決められ、ｄは固定値である）、Ｂ系におけるＯｃの座標はｔ＝（−ｄ，０，０）Ｔである。回転軸座標系Ｂに対するビデオカメラ座標系Ｃの回転行列をＲＢＣとすると、空間内の任意の点Ｐに対して、Ｃ系における座標ＰＣとＢ系における座標ＰＢは変換関係ＰＢ＝ＲＢＣＰＣ＋ｔを充足し、同次座標において以下のように表示される：
2022500956.tif 000026
2022500956.tif 000027
はつまりキャリブレーションして得られる結果であり、これは空間内の任意の点ＰがＢ系からＣ系に変換される変換行列を表す。
【００４０】
回転軸を中心としてθ角度を回転した後、回転軸座標系Ｂとビデオカメラ座標系Ｃは新しい座標系Ｂ’及びＣ’になる。回転軸を中心として回転する時に、Ｂ系はｚｂ軸を中心としてθ角からＢ’角に回動したことに対応し、同一点Ｐに対してＢ系における座標ＰＢとＢ’系における座標ＰＢ’は以下を充足する。
2022500956.tif 000028
ここで、
2022500956.tif 000029
（回転角によってこの値を調整する）
【００４１】
同様に、ビデオカメラ座標系に対して、θ角度を回動した後新しいビデオカメラ座標系Ｃ’が得られる。キャリブレーション過程で、固定された碁盤を通じてビデオカメラ座標系の変換を計算することができる。空間点Ｐが碁盤の世界座標系における座標をｘｗとすると、Ｃ系及びＣ’系で計算した碁盤の外部パラメータはそれぞれＴＣＷ及びＴＣ’Ｗであり、ＰＣ＝ＴＣＷｘｗ、ＰＣ’＝ＴＣ’Ｗｘｗの場合
2022500956.tif 000030
剛体の性質に基づいて、Ｂ系とＣ系は回動過程で相対位置関係ＴＢＣが変わらないように保持する。同じ空間における点は回動後の座標系Ｂ’とＣ’で依然として式（１）を充足する。
2022500956.tif 000031
式（２）、（３）、（４）により、以下が得られる。
2022500956.tif 000032
前記式において、
2022500956.tif 000033
は回転軸のキャリブレーション過程で求める量である。
2022500956.tif 000034
は毎回の回動で位置センサーによって出力される行列であり、
2022500956.tif 000035
は毎回の回動過程でカメラが計算した行列ＴＣ’Ｃであり、毎回の回動でＴＢＣを計算することにより、回転軸とビデオカメラ座標系の関係をキャリブレーションする。
【００４２】
一組のデータ｛ＲＣｉ，ＴＣｉ，θ１ｉ，θ２ｉ，θ３ｉ｝，ｉ＝１・・・Ｐを取ってこの組のデータが基準位置モーターに対する回動角を計算すると、｛θ１ｉ−θＩ１，θ２ｉ−θＩ２，θ３ｉ−θＩ３｝，ｉ＝１・・・Ｐであり、その回転行列を計算して以下の式
2022500956.tif 000036
が得られる。
これを式（５）に代入すると、一組の方程式を得ることができる：
2022500956.tif 000037
全てのデータを式（７）に代入すると、Ｐ組の方程式を得ることができ、この方程式を求めて最適解｛ＲＢＣａ，ＴＢＣａ｝，ａ＝１・・・３を得ることができる。
【００４３】
上記ステップを繰り返して、右「眼球」モーター４〜６をキャリブレーションすることにより、６つのモーター運動軸のキャリブレーション結果｛ＲＢＣａ，ＴＢＣａ｝，ａ＝１・・・６を得ることができる。
【００４４】
４）リアルタイムキャリブレーション結果の計算：
キャリブレーション結果は、全体的に基準位置情報（θＩ１，θＩ２，θＩ３，θＩ４，θＩ５，θＩ６）、立体キャリブレーション結果｛ＲＩ，ＴＩ｝、及び運動軸キャリブレーション結果｛ＲＢＣａ，ＴＢＣａ｝，ａ＝１・・・６を有する。可動双眼視覚システムにおいて各撮像部材に運動が発生した後、６つの運動自由度で位置情報（θｐ１，θｐ２，θｐ３，θｐ４，θｐ５，θｐ６）が得られる場合、６つの自由度の回転角はそれぞれ（θｐ１−θＩ１，θｐ２−θＩ２，θｐ３−θＩ３，θｐ４−θＩ４，θｐ５−θＩ５，θｐ６−θＩ６）であり、回転行列（Ｒｐ１，Ｒｐ２，Ｒｐ３，Ｒｐ４，Ｒｐ５，Ｒｐ６）に変換した後、最後に以下の式に代入して６自由度可動双眼視覚システムが運動した後の外部パラメータ結果（回転行列Ｒ’と並進行列Ｔ’）を得ることができ、つまり、リアルタイムキャリブレーション結果を得ることができる。
2022500956.tif 000038
【００４５】
本発明による可動双眼視覚システム及び立体キャリブレーション方法は上記説明された実施例に限定されず、実際の応用では実施例に精度を高めるか求解複雑性を低下するための一部ステップを追加しており、本発明の原理を逸脱しない範囲内で多様な変形及び改善を施すことができる。
【００４６】
本発明の保護内容は上述の実施例に限定されない。本発明の精神及び範囲を逸脱しない範囲内で、当業者によって想到される変化及び利点は全部本発明に含まれ、また添付される特許請求範囲を保護範囲とする。
【図１】
2022500956.tif 000040
【図２Ａ】
2022500956.tif 000041
【図２Ｂ】
2022500956.tif 000042
【図３】
2022500956.tif 000043
【図４】
2022500956.tif 000044
【図５】
2022500956.tif 000045
【図６】
2022500956.tif 000046
【国際調査報告】
2022500956.tif 000047
2022500956.tif 000048
2022500956.tif 000049
2022500956.tif 000050
2022500956.tif 000051
2022500956.tif 000052