以下に添付図面を参照して、校正方法、校正装置、計測用具及びプログラムの実施形態を詳細に説明する。
(第1実施形態)
図1は第1実施形態の計測用具20と、ステレオカメラ10と、校正装置30との関係の例を示す図である。図1は自動車のフロントガラスの内側に取り付けられたステレオカメラ10(車載ステレオカメラ)により撮影された撮影画像を校正する場合の例である。計測用具20はステレオカメラ10の撮影範囲に入るように設置する。例えば計測用具20はステレオカメラ10からおよそ2mの距離に、ほぼ正対するように設置する。計測用具20はステレオカメラ10を校正する校正パラメータを決定するための計測データを取得するために用いられる。計測データは、校正装置30としてのコンピュータに入力され、当該コンピュータにより校正パラメータが決定される。まず校正対象のステレオカメラ10について説明する。
図2は第1実施形態のステレオカメラ10の構成の例を示す図である。本実施形態のステレオカメラ10は、第1カメラ1、第2カメラ2、記憶部3、外部I/F4、補正部5、及び算出部6を備える。第1カメラ1は被写体を撮影して第1撮影画像を取得する。第2カメラ2は被写体を撮影して第2撮影画像を取得する。第1カメラ1及び第2カメラ2は光軸が平行になるように並列に配置されている。第1カメラ1及び第2カメラ2の撮影タイミングは同期されており、同じ被写体を同時に撮影する。
記憶部3は第1撮影画像、第2撮影画像、及び校正パラメータを記憶する。校正パラメータは、第1撮影画像及び第2撮影画像の歪みを補正するときに使用されるパラメータである。校正パラメータは本実施形態の校正方法により決定される。外部I/F4は、記憶部3のデータの入出力を行うためのインターフェースである。ステレオカメラ10で使用される校正パラメータは、本実施形態の校正方法により決定され、外部I/F4を使用して記憶部3に記憶される。
補正部5は、記憶部3から第1撮影画像、第2撮影画像及び校正パラメータを読み出す。補正部5は校正パラメータに応じた画像補正式により第1撮影画像及び第2撮影画像を補正する。画像補正式は第1撮影画像(第2撮影画像)の座標を変換することにより第1撮影画像(第2撮影画像)を補正する式である。例えば第1撮影画像(第2撮影画像)の座標をアフィン変換により補正する場合には、当該画像補正式は行列により表現できるので、校正パラメータは行列の成分である。また第1撮影画像(第2撮影画像)の座標を非線形な変換により補正する場合には、校正パラメータは当該変換を表す多項式などの係数である。なお補正部5は、第1撮影画像及び第2撮影画像のいずれか一方を補正するようにしてもよい。すなわち画像補正式は、いずれか一方の撮影画像を基準にして、もう一方の撮影画像を補正するための画像補正式でもよい。補正部5は、補正後の第1撮影画像及び補正後の第2撮影画像を算出部6に入力する。
算出部6は補正後の第1撮影画像及び補正後の第2撮影画像から、被写体毎の視差を算出する。ここで、視差と、視差を用いた距離計測原理について説明する。
図3はステレオカメラ10を使用した距離の計測原理を説明するための図である。図3の例では、第1カメラ1(焦点距離f、光学中心O0、撮像面S0)がZ軸を光軸方向として配置されている。また第2カメラ2(焦点距離f、光学中心O1、撮像面S1)がZ軸を光軸方向として配置されている。第1カメラ1及び第2カメラ2はX軸に対して平行に、距離B(基線長)だけ離れた位置に配置される。以下、図3の座標系を「カメラ座標系」という。また第1カメラ1の光学中心を基準とした座標系を「第1カメラ座標系」という。また第2カメラ2の光学中心を基準とした座標系を「第2カメラ座標系」という。
第1カメラ1の光学中心O0から光軸方向に距離dだけ離れた位置にある被写体Aは、直線A−O0と撮像面S0の交点であるP0に像を結ぶ。一方、第2カメラ2では、同じ被写体Aが、撮像面S1上の位置P1に像を結ぶ。
ここで第2カメラ2の光学中心O1を通り、直線A−O0と平行な直線と、撮像面S1との交点をP0’とする。またP0’とP1の距離をDとする。距離Dは同じ被写体の像を2台のカメラで撮影した画像上での位置のずれ量(視差)を表す。三角形A−O0−O1と三角形O1−P0’−P1とは相似である。そのため、下記式(1)が成り立つ。
すなわち基線長B、焦点距離f及び視差Dから、被写体Aまでの距離dを求めることができる。なお第1カメラ1及び第2カメラ2が正確に配置されている場合、第1カメラ座標系で算出された距離d(第1カメラ1の光学中心O0と被写体Aとの光軸方向の距離)と、第2カメラ座標系で算出された距離d(第2カメラ2の光学中心O1と被写体Aとの光軸方向の距離)と、は一致する。
以上が、ステレオカメラ10による距離計測原理である。被写体Aまでの距離dを正確に求めるには、第1カメラ1及び第2カメラ2が正確に配置されていなければならない。しかしながら第1カメラ1(第2カメラ2)は、X軸、Y軸又はZ軸周りに回転する方向に位置がずれる可能性がある。これにより、第1撮影画像(第2撮影画像)の座標は、およそ上下左右にずれを生じる。更にフロントガラスを介して被写体を撮影する車載ステレオカメラの場合、フロントガラスの影響による第1撮影画像(第2撮影画像)の歪みも生じる。ステレオカメラ10は、2台のカメラの組み付け公差による第1撮影画像(第2撮影画像)のずれ、及びフロントガラスによる第1撮影画像(第2撮影画像)の歪みに起因する視差の誤差を正す校正パラメータを使用して信号処理により第1撮影画像(第2撮影画像)を補正する。
図2に戻り、算出部6は、視差を算出するときに基準にした撮影画像(第1撮影画像又は第2撮影画像)の画素の濃度値により画素毎の視差を表した視差画像を生成する。また算出部6は、視差画像及び式(1)を利用して被写体までの距離を算出する。
次に計測用具20について説明する。図4は第1実施形態の計測用具20の例を示す図である。本実施形態の計測用具20は四角形の板状の構造を有する。なお計測用具20の形状及び材質は任意でよい。すなわち計測用具20は校正に用いられるデータを取得するための面を有する任意の部材でよい。計測用具20の表面は5つのマーク21を有する。当該マーク21は視差を算出するための計測用のチャートとして利用される。なおマーク21の形、個数及び位置は、本実施形態の態様に限られず任意でよい。また計測用具20の表面は、第1撮影画像上の点に対応する第2撮影画像上の対応点を検出し易くするための濃淡模様を有する。また四角形の板上の計測用具20の4隅に、それぞれ距離計測装置22a、距離計測装置22b、距離計測装置22c及び距離計測装置22dを備える。以下、距離計測装置22a、距離計測装置22b、距離計測装置22c及び距離計測装置22dを区別しない場合は単に距離計測装置22という。
図5は第1実施形態の距離計測装置22の例を示す図である。距離計測装置22は、予め設定された計測点23を中心に上下左右に回転可能な2軸回転保持機構を有する。本実施形態の距離計測装置22はレーザー光24のTOF(Time Of Flight)を利用して距離を計測する。なお距離計測装置22の距離計測方式は任意でよい。例えば距離計測装置22は超音波を利用して距離を計測してもよい。
距離計測装置22は第1カメラ1の光学中心O0(図3参照)までの距離を示す距離情報(以下「第1距離情報」という。)と、第2カメラ2の光学中心O1(図3参照)までの距離を示す距離情報(以下「第2距離情報」という。)と、を取得する。なお図4において、計測用具20の4隅に距離計測装置22を備える理由は、図5の計測点23同士を互いにできるだけ離すためである。これにより値ができるだけ異なる複数の第1距離情報(第2距離情報)を取得することができ、後述の校正装置30が、第1カメラ1(第2カメラ2)と計測用具20との間の距離(第1カメラ1の光軸方向の距離、又は第2カメラ2の光軸方向の距離)を算出するときの精度を上げることができる。なお距離計測装置22の個数及び位置は、本実施形態の態様に限られず任意でよい。
図6は第1実施形態の校正装置30の構成の例を示す図である。本実施形態の校正装置30は、受付部31、第1カメラ位置算出部32、第1カメラ方位算出部33、第2カメラ位置算出部34、第2カメラ方位算出部35、距離算出部36、理想視差算出部37、視差算出部38及び決定部39を備える。校正装置30は情報処理装置(コンピュータ)である。
受付部31は複数(本実施形態では4つ)の第1距離情報と、複数(本実施形態では4つ)の第2距離情報と、計測用具20を被写体として含む第1撮影画像と、計測用具20を被写体として含む第2撮影画像と、被写体座標系における複数(本実施形態では5つ)のマーク21の3次元座標情報と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報と、を受け付ける。受付部31は、例えば校正装置30のユーザーの操作に応じて、複数の第1距離情報と、第1撮影画像と、第2撮影画像と、複数のマーク21の3次元座標情報と、距離計測装置22の3次元座標情報と、を示す入力を受け付ける。ここで被写体座標系について説明する。
図7は第1実施形態の被写体座標系の例を示す図である。図7の例は、計測用具20の左下の端に3次元座標の原点をとった場合の例である。被写体座標系の距離計測装置22a(計測点23a)、距離計測装置22b(計測点23b)、距離計測装置22c(計測点23c)、及び距離計測装置22d(計測点23d)の位置を示す4つの3次元座標は正確に求めることができる。すなわち被写体座標系における当該4つの3次元座標は既知である。また、同様に、被写体座標系における複数(本実施形態では5つ)のマーク21の3次元座標情報も既知である。
図6に戻り、受付部31は被写体座標系における複数(本実施形態では5つ)のマーク21の3次元座標情報を距離算出部36に入力する。受付部31は第1撮影画像と第2撮影画像とを視差算出部38に入力する。
また受付部31は第1距離情報と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報と、を第1カメラ位置算出部32に入力する。また受付部31は第2距離情報と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報と、を第2カメラ位置算出部34に入力する。
また受付部31は第1撮影画像と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とを第1カメラ方位算出部33に入力する。また受付部31は第2撮影画像と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とを第2カメラ方位算出部35に入力する。
第1カメラ位置算出部32は複数(本実施形態では4つ)の第1距離情報と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とから、第1カメラ1の光学中心O0の位置を示す3次元座標(以下「第1カメラ座標」という。)を、被写体座標系を使用して算出する。
図8は第1実施形態の第1カメラ1の位置を示す3次元座標を決定する方法の例を示す図である。d0は距離計測装置22aが取得した第1距離情報を示す。すなわち計測点23aから第1カメラ1までの距離を示す。d1は距離計測装置22bが取得した第1距離情報を示す。すなわち計測点23bから第1カメラ1までの距離を示す。d2は距離計測装置22cが取得した第1距離情報を示す。すなわち計測点23cから第1カメラ1までの距離を示す。
第1カメラ1の位置を示す3次元座標は、被写体座標系を使用して理論的には次のようにして算出することができる。まず計測点23aを中心とし、半径d0の球面を表す点集合25aを求める。次に計測点23bを中心とし、半径d1の球面を表す点集合25bを求める。次に計測点23cを中心とし、半径d2の球面を表す点集合25cを求める。次に点集合25aと点集合25bの両方に含まれる点集合を求める。この点集合は図8のd0&d1である。d0&d1は半径d0の球面を表す点集合と、半径d1の球面を表す点集合と、の交点により表される点集合(円弧)である。次に点集合25bと点集合25cの両方に含まれる点集合を求める。この点集合は図8のd1&d2である。d1&d2は半径d1の球面を表す点集合と、半径d2の球面を表す点集合と、の交点により表される点集合(円弧)である。最後に図8のd0&d1により表される円弧と、d1&d2により表される円弧との交点Cを求めることにより、第1カメラ座標を算出することができる。すなわち理論的には第1距離情報が3つあれば第1カメラ座標を算出することができる。
しかしながら距離計測装置22の計測誤差を考慮すると、より多くの計測点23(本実施形態では4つ)を使用して第1カメラ座標を算出することが望ましい。そのため第1カメラ位置算出部32は、例えば次式(2)による最小二乗近似を行って交点Cを算出することにより第1カメラ座標を算出する。
ここで、nは計測点23の個数である。piはi番目の計測点23の3次元座標である。diは距離計測装置22により計測されたi番目の計測点23から第1カメラ1までの距離である。
図6に戻り、第1カメラ位置算出部32は被写体座標系を使用して算出した第1カメラ座標を第1カメラ方位算出部33に入力する。また第1カメラ位置算出部32は被写体座標系を使用して算出した第1カメラ座標を距離算出部36に入力する。
第1カメラ方位算出部33は第1撮影画像と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とを受付部31から受け付ける。また第1カメラ方位算出部33は被写体座標系を使用して算出した第1カメラ座標を第1カメラ位置算出部32から受け付ける。
第1カメラ方位算出部33はカメラ座標系を使用して、計測点23(23a,23b,23c,23d)の3次元座標と、第1撮影画像上の計測点23(23a,23b,23c,23d)の像の2次元座標と、第1カメラ1の焦点距離と、から第1カメラ1の向き(光軸方向)を算出する。具体的には、まず第1カメラ方位算出部33は、被写体座標系を使用して算出された計測点23の3次元座標を、第1カメラ1の光学中心O0を原点としたカメラ座標系に変換する。すなわち、このカメラ座標系はピンホールカメラモデルにおけるピンホールの位置を原点とした座標である。なお、この時点のカメラ座標系は、まだ第1カメラの向きのずれに起因するカメラ座標系の向きになっていない。次に第1カメラ方位算出部33は当該カメラ座標系を、第1カメラの向きのずれに起因するカメラ座標系の向きに合わせるための3軸回転角r=(α1,β1,γ1)を算出する。
図9は第1実施形態の第1カメラ1のカメラ座標系の例を示す図である。計測点23(被写体)の3次元座標を(x,y,z)とし、撮像面40上の2次元座標を(u,v)とし、第1カメラ1の焦点距離をfとする。このとき計測点23の撮像面40上の像41の位置は次式(3)により表すことができる。
一般に、カメラの光学中心の位置、当該カメラの焦点距離f、計測点23の3次元座標p=(x,y,z)、及びカメラ方向(3軸回転角r=(α1,β1,γ1))から、式(3)を利用して撮像面40上の2次元座標(u,v)を算出することができる。なおα1はX軸に対する回転角、β1はY軸に対する回転角、γ1はZ軸に対する回転角を示す。
逆に、カメラの光学中心の位置、当該カメラの焦点距離f、計測点23の3次元座標p=(x,y,z)、及び撮像面40上の2次元座標(u,v)から、式(3)を利用してカメラ方向(3軸回転角r=(α1,β1,γ1))を特定することができる。
式(3)の関係を利用して、3軸回転角r=(α1、β1、γ1)、及び計測点23の3次元座標p=(x,y,z)から、撮像面40上の2次元座標(u,v)を算出する関数をFとする((u,v)=F(r、p))。
第1カメラ方位算出部33は次式(4)による最小二乗近似を行うことにより3軸回転角r=(α1、β1、γ1)を算出する。
ここで、nは計測点23の個数である。piはi番目の計測点23の3次元座標である。(ui,vi)はi番目の計測点23に対応する撮像面40上の2次元座標である。
なおカメラ方向(3軸回転角r)は3変数なので、束縛条件としては撮像面40上の2点の2次元座標があれば式(3)からカメラ方向を決定することができる。第1カメラ方位算出部33が、式(4)によって3軸回転角r=(α1,β1,γ1)を算出する理由は、第1撮影画像がフロントガラス越しに撮影されているためである。すなわち第1撮影画像はフロントガラスに起因する歪みを含んでいるため、多数の計測点23を用いて、式(4)により最小二乗近似して3軸回転角r=(α1,β1,γ1)を算出することが望ましい。
なお(u,v)により歪みが異なる場合、例えば画面中央に比べ画像周辺部の歪みが大きいことが予め想定されていれば、それに応じて、計測点23が第1撮影画像の中央部に映るように計測点の位置を配置してもよい。また式(4)において、計測点23に応じて加重をかけたりしてもよい。
また計測点23として距離計測装置22の計測点23を利用したが、被写体座標系において既知の座標であれば任意の計測点23を利用してもよい。例えば計測用具20上の計測に適した任意の計測点23や、計測用具20上にない計測に適した任意の計測点23を利用してもよい。
図6に戻り、第1カメラ方位算出部33は、上述の式(4)により算出した第1カメラ1の向き(3軸回転角r=(α1,β1,γ1))を距離算出部36に入力する。
第2カメラ位置算出部34は複数(本実施形態では4つ)の第2距離情報から、第2カメラ2の光学中心O1の位置を示す3次元座標(以下「第2カメラ座標」という。)を、被写体座標系を使用して算出する。第2カメラ座標の算出方法は第1カメラ座標の算出方法と同じであるため詳細な説明を省略する。第2カメラ位置算出部34は被写体座標系を使用して算出した第2カメラ座標を第2カメラ方位算出部35に入力する。また第2カメラ位置算出部34は被写体座標系を使用して算出した第2カメラ座標を視差算出部38に入力する。
第2カメラ方位算出部35は第2撮影画像と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とを受付部31から受け付ける。また第2カメラ方位算出部35は被写体座標系を使用して算出した第2カメラ座標を第2カメラ位置算出部34から受け付ける。
第2カメラ方位算出部35はカメラ座標系を使用して、計測点23(23a,23b,23c,23d)の3次元座標と、第2撮影画像上の計測点23(23a,23b,23c,23d)の像の2次元座標と、第2カメラ2の焦点距離と、から第2カメラ2の向き(光軸方向)を算出する。第2カメラ2の向きの算出方法は第1カメラ1の向きの算出方法と同じであるため詳細な説明を省略する。第2カメラ方位算出部35は第2カメラ2の向き(3軸回転角r=(α2,β2,γ2))を距離算出部36に入力する。
距離算出部36は、被写体座標系における複数のマーク21の3次元座標情報を受付部31から受け付ける。また距離算出部36は、被写体座標系を使用して算出した第1カメラ座標を第1カメラ位置算出部32から受け付ける。また距離算出部36は、第1カメラ1の向き(3軸回転角r=(α1,β1,γ1))を第1カメラ方位算出部33から受け付ける。また距離算出部36は、被写体座標系を使用して算出した第2カメラ座標を第2カメラ位置算出部34から受け付ける。また距離算出部36は、第2カメラ2の向き(3軸回転角r=(α2,β2,γ2))を第2カメラ方位算出部35から受け付ける。
距離算出部36は複数のマーク21のそれぞれについて、第1カメラ座標と第1カメラ1の向きとに基づく第1カメラ座標系を使用して、第1カメラ1の光学中心O0と複数のマーク21との第1カメラ1の光軸方向の距離dを算出する。
具体的には、まず距離算出部36は第1カメラ座標を原点とするカメラ座標系を、第1カメラ1の向き(3軸回転角r=(α1,β1,γ1))だけ回転させることにより第1カメラ座標系に変換する。すなわち第1カメラ座標系は第1カメラ座標を原点とし、第1カメラ1の光軸方向をZ軸とし、原点を含むZ軸と垂直な平面の水平方向の原点を通る直線をX軸とし、原点を含むZ軸と垂直な平面の垂直方向の原点を通る直線をY軸とした座標系である。次に距離算出部36は第1カメラ座標系及び式(1)を使用して、第1カメラ1の光学中心O0と複数のマーク21との第1カメラ1の光軸方向の距離dを算出する(図3参照)。以上により、被写体(複数のマーク21)と、ステレオカメラ10(第1カメラ1の光学中心O0)との相対位置が明確になる。距離算出部36は複数のマーク21の各々とステレオカメラ10との当該距離dを示す距離情報を理想視差算出部37に入力する。
なお距離算出部36は第2カメラ座標と第2カメラ2の向きに基づく第2カメラ座標系を使用して、第2カメラ2の光学中心O1と複数のマーク21との第2カメラ2の光軸方向の距離dを算出してもよい。
理想視差算出部37は上述の距離情報を距離算出部36から受け付ける。理想視差算出部37は上述の距離情報に基づいて第1撮影画像に含まれる複数のマーク21と、第2撮影画像に含まれる複数のマーク21との理想の視差を示す理想視差を、複数のマーク21毎に式(1)を使用して算出する。理想視差算出部37は理想視差を決定部39に入力する。
視差算出部38は第1撮影画像と第2撮影画像とを受付部31から受け付ける。視差算出部38は第1撮影画像に含まれる複数のマーク21と、第2撮影画像に含まれる複数のマーク21との視差を、複数のマーク21毎に算出する。視差算出部38は視差を決定部39に入力する。
決定部39は理想視差を理想視差算出部37から受け付け、視差を視差算出部38から受け付ける。また決定部39は第1撮影画像と第2撮影画像とを受付部31から受け付ける。決定部39は第1撮影画像及び第2撮影画像を補正する校正パラメータを、視差と理想視差とに基づいて決定する。例えば決定部39は視差と理想視差との差分が0になるように補正するための校正パラメータを決定する。
なお決定部39は垂直方向(Y軸方向)に視差が生じている場合、被写体(複数のマーク)との距離によらずに、当該縦方向の視差を0にする補正をするための校正パラメータを決定する。この理由は、視差は水平方向(X軸方向)のみに生じることを前提としているためである。
図10は第1実施形態における校正方法の全体概略フローチャートである。ステレオカメラ10が、撮影画像を取得する(ステップS101)。具体的には、第1カメラ1が、第1撮影画像を取得し、第2カメラ2が、第2撮影画像を取得する。
次に、校正装置30が、ステレオカメラ10と被写体との相対位置を計測する(ステップS102)。具体的には、校正装置30が、ステレオカメラ10の第1カメラ1の光学中心O0と、計測用具20上の複数のマーク21との相対位置を、後述のステップS6〜ステップS10により計測する。
次に、校正装置30が、相対位置に基づく校正パラメータを決定する(ステップS103)。具体的には、校正装置30が、第1撮影画像に含まれる複数のマーク21と、第2撮影画像に含まれる複数のマーク21との視差が、ステップS102で計測された相対位置に基づく理想の視差を示す理想視差と一致するように、第1撮影画像及び第2撮影画像の少なくとも一方を補正する校正パラメータを決定する。
次にフローチャートを参照して本実施形態の校正装置30における校正方法の詳細について説明する。図11は第1実施形態の校正装置30における校正方法の例を示すフローチャートである。
受付部31は計測用具20上の座標情報を受け付ける(ステップS1)。当該座標情報は被写体座標系における複数(本実施形態では5つ)のマーク21の3次元座標情報と、被写体座標系における複数(本実施形態では4つ)の距離計測装置22(計測点23)の3次元座標情報である。また受付部31は複数(本実施形態では4つ)の第1距離情報を受け付ける(ステップS2)。また受付部31は複数(本実施形態では4つ)の第2距離情報を受け付ける(ステップS3)。また受付部31は計測用具20を被写体として含む第1撮影画像を受け付ける(ステップS4)。また受付部31は計測用具20を被写体として含む第2撮影画像を受け付ける(ステップS5)。
次に、第1カメラ位置算出部32は、複数の第1距離情報と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とから、第1カメラ1の光学中心O0の位置を示す第1カメラ座標を、被写体座標系を使用して算出する(ステップS6)。
次に、第2カメラ位置算出部34は、複数の第2距離情報と、被写体座標系における距離計測装置22(計測点23)の3次元座標情報とから、第2カメラ2の光学中心O1の位置を示す第2カメラ座標を、被写体座標系を使用して算出する(ステップS7)。
次に、第1カメラ方位算出部33はカメラ座標系を使用して、計測点23(23a,23b,23c,23d)の3次元座標と、第1撮影画像上の計測点23の像の2次元座標と、第1カメラ1の焦点距離と、から第1カメラ1の向き(光軸方向)を算出する(ステップS8)。
次に、第2カメラ方位算出部35はカメラ座標系を使用して、計測点23(23a,23b,23c,23d)の3次元座標と、第2撮影画像上の計測点23の像の2次元座標と、第2カメラ2の焦点距離と、から第2カメラ2の向き(光軸方向)を算出する(ステップS9)。
次に、距離算出部36は複数のマーク21のそれぞれについて、第1カメラ座標と第1カメラ1の向きとに基づく第1カメラ座標系を使用して、第1カメラ1の光学中心O0と複数のマーク21との第1カメラ1の光軸方向の距離dを算出する(ステップS10)。ステップS6〜ステップS10により、被写体(複数のマーク21)と、ステレオカメラ10(第1カメラ1の光学中心O0)との相対位置が明確になる。
次に、理想視差算出部37はステップS10で算出した第1カメラ1の光軸方向の距離dに基づいて、第1撮影画像に含まれる複数のマーク21と、第2撮影画像に含まれる複数のマーク21との理想の視差を示す理想視差を、複数のマーク21毎に式(1)を使用して算出する(ステップS11)。
次に、視差算出部38は第1撮影画像に含まれる複数のマーク21と、第2撮影画像に含まれる複数のマーク21との視差を、複数のマーク21毎に算出する(ステップS12)。
次に、決定部39は第1撮影画像と第2撮影画像とを、視差と理想視差との差分が0になるように補正するための校正パラメータを決定する(ステップS13)。
なお上述のステップS10において、距離算出部36は第2カメラ座標と第2カメラ2の向きに基づく第2カメラ座標系を使用して、第2カメラ2の光学中心O1と複数のマーク21との第2カメラ2の光軸方向の距離dを算出してもよい。
次に、上述の計測用具20、及び上述の校正装置30を使用した本実施形態の校正方法の全体フローについて説明する。図12は第1実施形態の校正方法の全体フローの例を示すフローチャートである。
まず、計測用具20を、ステレオカメラ10を搭載した車両の前方に、ほぼ正対するように設置する(ステップS21)。次に、計測用具20が、ステレオカメラ10の光学中心O0と、計測用具20上の複数の計測点23との距離を計測する(ステップS22)。具体的には、計測用具20四隅の距離計測装置22を適宜回転し、車両のフロントガラス越しにステレオカメラ10の光学中心O0までの距離を計測する。次に、ステレオカメラ10が、計測用具20の位置をそのままにして、フロントガラス越しに計測用具20を撮影する(ステップS23)。
次に、ステップS22で計測された計測データを校正装置30に入力する(ステップS24)。このとき、計測用具20上の複数のマーク21を示す被写体座標系の座標、及び計測用具20上の複数の計測点23を示す被写体座標系の座標も同時に入力する。次に、ステップS23で撮影した撮影画像を校正装置30に入力する(ステップS25)。
次に、校正装置30が、計測用具20と、ステレオカメラ10の光学中心O0と、の相対位置を算出する(ステップS26)。具体的には、校正装置30が、ステレオカメラ10の位置、及び方向を算出する(図11のステップS6〜ステップS9)。そして、校正装置30が、計測用具20(複数のマーク21)と、ステレオカメラ10の光学中心O0と、の第1カメラ1の光軸方向の距離dを算出する(図11のステップS10)。
次に、校正装置30が、ステップS26で算出された相対位置に基づいて理想視差を算出する(ステップS27)。具体的には、校正装置30は図11のステップS11の方法で理想視差を算出する。次に、校正装置30が、ステップS25で入力された撮影画像に基づいて視差を算出する(ステップS28)。具体的には、校正装置30は図11のステップS12の方法で視差を算出する。次に、校正装置30が、相対位置と、撮影画像と、に基づいてステレオカメラ10を校正する校正パラメータを決定する(ステップS29)。具体的には、校正装置30が、相対位置から算出された理想視差と、撮影画像から算出された視差と、に基づいてステレオカメラ10で撮影された撮影画像を校正する校正パラメータを決定する(図11のステップS13)。
以上説明したように、第1実施形態の校正方法では、ステレオカメラ10の撮影範囲に入るように設置された計測用具20と、ステレオカメラ10との相対位置を計測し、当該相対位置と、ステレオカメラ10により撮影された、計測用具20を被写体として含む撮影画像と、に基づいてステレオカメラ10を校正する校正パラメータを決定する。これにより設置位置精度の確保が難しい車両搭載状態のステレオカメラ10に対しても高精度な校正パラメータを算出することができる。
なお第1実施形態では、自動車に搭載されたステレオカメラ10を校正する場合について説明した。しかしながら自動車などの車両(移動体)に限られない任意の物体に搭載されたステレオカメラ10に、第1実施形態の校正方法を適用してもよい。また、物体に搭載されていないステレオカメラ10に対しても、より高精度な校正を実施したければ、本実施形態の方法が適用できる。
(第1実施形態の変形例)
次に第1実施形態の校正方法の変形例について説明する。第1実施形態の変形例の校正方法は、距離計測装置22が第1カメラ1(第2カメラ2)の光学中心までの距離を計測せずに、第1カメラ1(第2カメラ2)の光学中心との間にある中間計測点までの距離を計測する。これは、一般にカメラの光学中心が、レンズ内部に位置するため、直接計測することが困難であるためである。
図13は第1実施形態の変形例の距離計測装置22が、中間計測点を使用して第1カメラ1(第2カメラ2)との距離を計測する場合の例を説明するための図である。図13の例は、中間計測点61を計測装置20と垂直な方向にとり、第1カメラ1(第2カメラ2)の位置62の近傍にとる場合の例である。例えば中間計測点61はフロントガラス上にとる。
距離計測装置22は、第1カメラ1の光学中心近傍に設けられた中間計測点と、計測用具20上の計測点23との距離を示す距離情報(以下「第1中間距離情報」という。)を計測する。また距離計測装置22は、第2カメラ2の光学中心近傍に設けられた中間計測点と、計測用具20上の計測点23との距離を示す距離情報(以下「第2中間距離情報」という。)を計測する。
受付部31は、第1中間距離情報及び第2中間距離情報を受け付ける。また受付部31は、中間計測点61から第1カメラ1(第2カメラ2)の光学中心までの距離は、計測した値や設計値などから別途取得された距離情報として受け付ける。
第1カメラ位置算出部32(第2カメラ位置算出部34)は、まず式(2)により中間計測点61の位置を示す座標を決定する。次に第1カメラ位置算出部32(第2カメラ位置算出部34)は、中間計測点61の位置を示す座標と、中間計測点61から第1カメラ1(第2カメラ2)の光学中心までの距離を示す距離情報と、により第1カメラ1(第2カメラ2)の光学中心の座標を算出する。
なお中間計測点61から第1カメラ1(第2カメラ2)の光学中心までの距離は、計測用具20の被写体座標系を使用せずに、カメラ座標系により独立に計測してもよい。またカメラ光軸63の方向と、計測用具20と垂直な直線との方向の差分が小さいときは、計測用具20と垂直な直線上にある位置65を、第1カメラ1(第2カメラ2)の光学中心の位置とみなしてもよい。これは実際の第1カメラ1(第2カメラ2)の位置との誤差64は無視できる程小さくなるためである。
また中間計測点61と計測用具20の計測点23との間の距離は、距離計測装置22を使用せずに巻尺などにより計測してもよい。
(第2実施形態)
次に第2実施形態について説明する。第2実施形態では、ステレオカメラ10の校正に使用される計測用具が第1実施形態と異なる。第2実施形態のステレオカメラ10の校正では、第1カメラ1又は第2カメラ2のいずれか一方を使用する。第2実施形態の説明では第1カメラ1を使用して説明するが、第2カメラ2を使用してもよい。
図14は第2実施形態の計測用具120と、ステレオカメラ10と、校正装置30との関係の例を示す図である。第2実施形態では、計測用具20ではなく計測用具120が使用される。ステレオカメラ10及び校正装置30の説明は、図1の説明と同じなので省略する。計測用具120は、第1実施形態の計測用具20と同様に、ステレオカメラ10との相対位置を計測するために使用されるが、第1実施形態の計測用具20とは形態が異なる。第2実施形態の計測用具120は、角度計測板101及び第1部材102を備える。角度計測板101は水平方向に傾いた計測用具120のずれを示す角度、及び垂直方向に傾いた計測用具120のずれを示す角度の計測に使用される。第1部材102はステレオカメラ10を校正するためのチャートとして使用される。
図15A乃至図16を参照して計測用具120の構成について詳細に説明する。図15Aは第2実施形態の角度計測板101の断面を示す断面図である。図15Bは第2実施形態の角度計測板101の正面を示す正面図である。図16は第2実施形態の第1部材102の正面図である。
角度計測板101は光源103及び第2部材104を備える。光源103は一様な輝度分布を持つ平面状の拡散光源である。すなわち光源103は第1部材102の面上の位置に依らずに一様な強度の光(面上の位置に依る光の強度の差が所定の範囲内の光)を放射する。
第2部材104は光源103を被覆するように設置されており、複数の穴105から光源103の光を放射する。それぞれの穴105は第1部材102の面に垂直な方向に所定の間隔で開けられている。図15Bの例では、直径bの円形の穴105が、ピッチaで縦横に整列するように開けられている。なお穴105の数、形及び配列の仕方は図15Bの形態に限られず任意でよい。また第2部材104の材質は任意でよい。第2部材104の材質は、例えば金属である。
角度計測板101(第2部材104)は第1部材102の面の中央に配置されている。また第1部材102は角度計測板101(第2部材104)の上部にマーク111を有する。マーク111は第1部材102(計測用具120)と校正対象のステレオカメラ10(第1カメラ1)との間の距離を算出するための基準点として使用される。また第1部材102の表面は、第1実施形態の計測用具20の表面と同様に、第1撮影画像上の点に対応する第2撮影画像上の対応点を検出し易くするための濃淡模様を有する。
図17は第1カメラ1の光学中心O0の位置から第2部材104に開けられた穴106、穴107及び穴108を見た場合を説明するための図である。穴106の位置では、光学中心O0の位置からの視線と、第2部材104の面との角度が直交するため、第2部材104の背後にある光源103の光が図18Aの形に見える。穴107の位置では、光学中心O0の位置からの視線が第2部材104の穴107に斜めに進入するため、第2部材104の背後にある光源103の光が図18Bの形に見える。穴108の位置では、光学中心O0の位置からの視線が第2部材104の穴108に進入しないため、第2部材104の背後にある光源103の光が見えなくなる(図18C)。
すなわち穴のピッチaに比べ十分高い解像度の第1カメラ1で角度計測板101(第2部材104)を撮影すれば、第1カメラ1の光学中心O0からの視線と第2部材104の面とが直交している箇所の付近の穴の像の面積は大きく写る。そして第1カメラ1の光学中心O0からの視線と第2部材104の面とが直交している箇所から離れるに従って穴の像の面積が欠けてゆき、十分大きく離れた位置では穴の像が写らなくなる。
ここで第2部材104の穴105のピッチaについて説明する。図15Bの穴105のピッチaは、ステレオカメラ10(第1カメラ1)の解像限界よりも狭く設定する。例えば(半)視野角20度、撮影距離(校正距離)2m、640x480画素センサという条件の場合、下記式(5)より、ピッチaがおよそ2mm以下であれば、画素ピッチよりも小さくなる。
ピッチaが画素ピッチよりも小さい場合、ステレオカメラ10(第1カメラ1)により角度計測板101(第2部材104)を撮影すると、撮影画像は図19Aのようになる。しかしながら現実には画素開口特性、結像光学系のボケ、カラーカメラの場合の光学LPF(Low Pass Filter)等の光学ボケの影響により、ピッチaがおよそ2mm以下であっても解像限界を超えることになる。すると、撮影画像上では、個々の穴は判別できず、図19Aの画像をぼかした形の図19Bのような大きな一つの輝度の山(輝度分布)となる。図19Bの輝度の山の頂点は、例えば図17の穴106付近に対応する。また図19Bの輝度の山の裾野は、例えば図17の穴108付近に対応する。
図20は図19Bの輝度の山の裾野の半径cの大きさを説明するための図である。第2部材104の厚さを40mm、穴108の直径を1mmとする。またステレオカメラ10(第1カメラ1)の(半)視野角を20度、画素センサを640x480ピクセルとする。このとき輝度の山の裾野の半径cは下記式(6)よりおよそ22ピクセルになる。
このように、図15Bの個々の穴105の像ではなく、それをならした連続的な大きな輝度の山を考えることで、ステレオカメラ10(第1カメラ1)の光学中心O0が穴105のちょうど真上ではない位置が、角度計測板101の面と垂直な方向に対応する場合でも、輝度ピークの位置が角度計測板101の面と垂直な方向を表していると捉えることができる。これによりステレオカメラ10(第1カメラ1)の光学中心O0の位置に依らずに、角度計測板101を撮影した撮影画像の輝度の山(輝度分布)の輝度ピークの位置が、角度計測板101の面と垂直な方向を表していると捉えることができる。
なお輝度の山全体を、例えばガウス関数(exp(−r2))のような関数で近似し、多数の画素値の平均的な分布を推定することにより、個々の画素値に含まれるランダムノイズの影響を低減し、輝度ピークの位置を正確に推定することができる。
図21は撮像面40の輝度ピークの位置と、角度計測板101の傾きとの関係を説明するための図である。撮像面40の座標を撮像面40の中央を原点とし、画素単位で表す。このとき撮像面40(撮影画像)上の輝度ピークの位置の座標(ip,jp)が、ステレオカメラ10(第1カメラ1)の光学中心O0から角度計測板101へ下ろした垂線の足の位置を示す。したがって角度計測板101と、ステレオカメラ10(第1カメラ1)とが正対しているならば、つまり計測用具120の面に対する法線と、ステレオカメラ10(第1カメラ1)の光軸が平行ならば、輝度ピークの位置は撮影画像の中央(原点)になるはずである。すなわち輝度ピークの位置(ip,jp)が撮影画像の中央(原点)からずれていれば、その輝度ピークの位置を示す撮影画像(撮像面40)の座標(ip,jp)から、正対方向から傾いている計測用具120の水平方向のずれを示す角度、及び垂直方向のずれを示す角度がわかる。つまりステレオカメラ10(第1カメラ1)の焦点距離(画素単位)をfとすると、(ip,jp,f)により角度計測板101の法線の方向を決定することができる。言い換えると、正対方向から傾いて設置されている角度計測板101に正対するステレオカメラ10(第1カメラ1)の向きがわかる。
次に角度計測板101(計測用具120)の位置を示す平面の方程式を決定する方法を具体的に説明する。図22は計測用具120の位置を示す平面の方程式を決定する方法を説明するための図である。ステレオカメラ10(第1カメラ1)の光学中心O0を原点とした座標系で計測用具120を表す平面の方程式を下記式(7)で表す。
角度計測板101の法線の方向は図21で説明したように(ip,jp,f)と表すことができる。したがって、この平面の法線ベクトルは(ip,jp,f)により決定できるので、(a,b,c)=(ip,jp,f)である。次に平面の方程式の変数dを決定するために、計測用具120(第1部材102)のマーク111をレーザー距離計などで計測し、この距離をdcとする。また撮影画像上のマーク111の位置を示す座標を(ic,jc)とする。ステレオカメラ10(第1カメラ1)の焦点距離(画素単位)をfとすると、ベクトル(ic,jc,f)方向の距離dcの点(xc,yc,zc)がマーク111の位置を示す座標となる。すなわちマーク111の位置を示す平面上の座標(xc,yc,zc)は下記式(8)により算出することができる。
したがって下記式(9)から下記式(10)により平面の方程式の変数dを決定することができる。以上により計測用具120を表す平面の方程式(a,b,c,d)を決定することができる。
なお角度計測板101の撮影画像からは、角度計測板101の水平方向に傾いたずれを示す角度、及び垂直方向に傾いたずれを示す角度を算出することができるが、角度計測板101までの距離はわからない。そのため上述の説明では、マーク111の撮影画像上の位置、及び、マーク111までの距離情報dcを使用した。これ以外の方法として、図22のd1等を実測するという方法も可能である。またステレオカメラ10(第1カメラ1)の校正の許容精度に対して計測用具120の位置精度が高ければ(かつ角度精度が悪ければ)、マーク111とステレオカメラ10との間の距離を実際に計測せずに、距離情報として固定値を使用してもよい。
次に上述の方法を使用してステレオカメラ10(第1カメラ1)を校正する第2実施形態の校正装置30の構成について説明する。図23は第2実施形態の校正装置の構成の例を示す図である。第2実施形態の校正装置30は、受付部131、計測部136、理想視差算出部137、視差算出部138及び決定部139を備える。
受付部131はステレオカメラ10により撮影された計測用具120を被写体として含む撮影画像(第1カメラ1により撮影された第1撮影画像及び第2カメラ2により撮影された第2撮影画像)を受け付ける。また受付部131は上述の距離情報dc(図22参照)を受け付ける。受付部131は第1撮影画像及び距離情報dcを計測部136に入力する。また受付部131は撮影画像(第1撮影画像及び第2撮影画像)を視差算出部138に入力する。
計測部136は受付部131から第1撮影画像及び距離情報dcを受け付ける。計測部136は計測用具120(角度計測板101)の面と垂直な方向(法線ベクトル)を、第1撮影画像の最大輝度の位置に基づいて図21で説明した方法で決定する。これにより計測部136はステレオカメラ10(第1カメラ1)の正対位置からの計測用具120の向きのずれ(水平方向に傾いたずれを示す角度及び垂直方向に傾いたずれを示す角度)を計測する。また第1カメラ座標系(第1カメラ1の光学中心O0を原点とした座標系)で計測用具120の位置を表す平面の方程式を、法線ベクトル及び距離情報dcに基づいて図22で説明した方法で決定する。計測部136は当該平面の方程式を示す情報を理想視差算出部137に入力する。
理想視差算出部137は計測部136から計測用具120の位置を表す平面の方程式を受け付ける。理想視差算出部137は当該方程式により表される平面を撮影した場合の視差を示す理想視差を図3で説明した方法により算出する。理想視差算出部137は理想視差を決定部139に入力する。
視差算出部138は受付部131から撮影画像(第1撮影画像及び第2撮影画像)を受け付ける。視差算出部138は計測用具120(第1部材102)の濃淡模様等を使用して、第1撮影画像の点に対応する第2撮影画像の対応点を検出することにより視差を算出する。視差算出部138は視差を決定部139に入力する。
決定部139は理想視差を理想視差算出部137から受け付け、視差を視差算出部138から受け付ける。また決定部139は第1撮影画像と第2撮影画像とを受付部131から受け付ける。決定部139は第1撮影画像及び第2撮影画像を補正する校正パラメータを、視差と理想視差とに基づいて決定する。決定部139は、例えば視差と理想視差との差分が0になるように、第1撮影画像及び第2撮影画像のうち少なくとも一方を補正するための校正パラメータを決定する。
図24は第2実施形態における校正方法の全体概略フローチャートである。ステレオカメラ10が、撮影画像を取得する(ステップS201)。具体的には、第1カメラ1が、第1撮影画像を取得し、第2カメラ2が、第2撮影画像を取得する。
次に、校正装置30が、ステレオカメラ10と被写体との相対位置を計測する(ステップS202)。具体的には、校正装置30が、ステレオカメラ10の第1カメラ1の光学中心O0と、計測用具120との相対位置を、後述のステップS32〜ステップS34により計測する。
次に、校正装置30が、相対位置に基づく校正パラメータを決定する(ステップS203)。具体的には、校正装置30が、計測用具120(第1部材102)の濃淡模様等を利用して、第1撮影画像の点に対応する第2撮影画像の対応点を検出することにより算出される視差が、ステップS202で計測された相対位置に基づく理想の視差を示す理想視差と一致するように、第1撮影画像及び第2撮影画像の少なくとも一方を補正する校正パラメータを決定する。
次にフローチャートを参照して第2実施形態の校正装置30における校正方法の詳細について説明する。図25は第2実施形態の校正装置30における校正方法の例を示すフローチャートである。
受付部131は計測用具120を被写体として含む撮影画像(第1撮影画像及び第2撮影画像)を受け付ける(ステップS31)。また受付部131は距離情報dcを受け付ける(ステップS32)。
次に、計測部136はステレオカメラ10の正対位置からの計測用具120の向きのずれを計測する(ステップS33)。具体的には、計測部136は計測用具120(角度計測板101)の面と垂直な方向(法線ベクトル)を、第1撮影画像の最大輝度の位置に基づいて図21で説明した方法で決定することにより、計測用具120の向きのずれを計測する。
次に、計測部136は第1カメラ座標系(第1カメラ1の光学中心O0を原点とした座標系)で計測用具120の位置を表す平面の方程式を、法線ベクトル及び距離情報dcに基づいて図22で説明した方法で決定する(ステップS34)。
次に、理想視差算出部137はステップS34で決定した方程式により表される平面を撮影した場合の視差を示す理想視差を図3で説明した方法により算出する(ステップS35)。次に、視差算出部138は計測用具120(第1部材102)の濃淡模様等を利用して、第1撮影画像の点に対応する第2撮影画像の対応点を検出することにより視差を算出する(ステップS36)。
次に、決定部139は第1撮影画像及び第2撮影画像のうち少なくとも一方を、視差と理想視差との差分が0になるように補正するための校正パラメータを決定する(ステップS37)。
上述の計測用具120、及び上述の校正装置30を使用した第2実施形態の校正方法の全体フローは、第1実施形態の図12の説明と同様のため説明を省略する。
以上説明したように、第2実施形態の校正方法では、ステレオカメラ10の正対位置からの計測用具120の向きのずれを、第1撮影画像の最大輝度の位置に基づいて計測する。また第1撮影画像及び第2撮影画像から算出された視差と、計測用具120の向きのずれが考慮された理想視差と、に基づいてステレオカメラ10を校正する校正パラメータを決定する。これにより設置位置精度の確保が難しい車両搭載状態のステレオカメラ10に対しても高精度な校正パラメータを容易に算出することができる。また、本実施形態によれば車両搭載等されていないステレオカメラ10に対しても、より高精度な校正を簡便な態様で実現することができる。なお、本実施形態において角度計測板の穴は丸穴としているが、この限りではない。例えば、角穴等も利用し得る。
(第3実施形態)
次に第3実施形態について説明する。第3実施形態では、第2実施形態の計測用具120(角度計測板101)の構成を変えた計測用具220(角度計測板101)を使用する場合について説明する。第3実施形態の説明では、第2実施形態と異なる箇所について説明する。
図26は第3実施形態の角度計測板201の断面を示す断面図である。角度計測板201の正面図は図15Bと同じなので省略する。角度計測板201は、光源103、遮光板202、透明ガラス203及び遮光板204を備える。光源103については第2実施形態と同じなので説明を省略する。遮光板202、透明ガラス203及び遮光板204は、第2実施形態の第2部材104に相当する。
第3実施形態の角度計測板201は、両面に不透明な遮光領域(遮光板202及び遮光板204)を配置した透明なガラス板を使用する。透明ガラス203は遮光板202及び遮光板204の位置を固定するために配置されている。遮光板202及び遮光板204との間をガラスで充填することにより、機械的なずれに強く、温度や経時的な変形等による計測誤差を低減することができる。なお透明ガラス203は透明な任意の物体でもよい。
第3実施形態の角度計測板201は表裏両面の遮光面の穴によって、角度計測板201にほぼ直交する方向に入射する光が、向かい合う穴(例えば穴208及び穴209)を通り透過するという点では第1実施形態の角度計測板101と同様である。しかしながら光が透明ガラス203と空気との境界面で屈折するため、撮影画像の輝度分布が第2実施形態とは異なる。
図27は光の屈折の角度について説明するための図である。周知(スネル則)の通り、ガラス−空気境界面の屈折により、透過した光が出射する方向が変化する。比屈折率Rとすると、図27の角度θ1とθ2との関係は下記式(11)となる。
したがって遮光板202、透明ガラス203及び遮光板204の合計の厚さが、実施形態2の第2部材104と同じ板厚と穴径ならば、ガラスの屈折によって、より遠くの穴も見えるようになる(図28参照)。そのため撮影画像の輝度分布の山の裾野の大きさは第2実施形態と比べ大きくなる。しかしながら輝度ピークの位置が、ステレオカメラ10(第1カメラ1)の光学中心O0の位置に依らず遮光板204の法線方向に対応するという性質は同じである。
また第1実施形態の第2部材104と異なり、第3実施形態の角度計測板201は、正面方向以外に、図28の点線で示す方向の、正対していない穴を通る光も透過する。例えば穴207では、穴208と向かい合う穴209の光も屈折の影響で穴207を透過する。
したがって角度計測板201を撮影した画像には、第2実施形態の場合と異なり、明暗が周期的に繰り返すモアレ模様が観察される。そのため撮影範囲内に複数の輝度ピークが存在する可能性がある。しかしながら予めステレオカメラ10(第1カメラ1)と計測用具220との設置角度の精度が分かっていれば、設置ずれの範囲に応じた輝度ピークの位置の移動範囲に対応するモアレの周期を考慮することで、正対している穴の輝度ピークの位置を、隣接する穴に対応する輝度ピークと取り違えることを避けることができる。
図29は計測用具220の傾きと、輝度ピークの位置のずれとの関係を説明するための図である。図29のように、計測用具220の設置角度が正対方向から±X度以下の角度ずれを持つ場合、輝度ピークの位置も正対位置(画面中央)からX度以下の範囲に存在する。つまり図30のように、予測される輝度ピークの位置ずれの2倍以上離れた位置に隣接する穴の輝度ピークが来るように穴の間隔を調整すればよい。隣接する穴の輝度ピークの位置は、図31の角度φで決まり(正確にはftan(φ))、角度φは、遮光面の穴ピッチ(p)、ガラス板厚(d)及びガラス屈折率(n)と下記式(12)の関係を持つ。
式(12)より、下記式(13)を満たすようにガラス板厚(d)及び穴ピッチ(p)を決めればよいことがわかる。
上述の説明では、設置角度の精度のみを考慮して隣接輝度ピークの位置を予測した。しかしながら実際には計測用具220の設置角度以外にも、ステレオカメラ10の設置角度、計測用具220の並進ずれ、及びステレオカメラ10の並進ずれ等、想定されうる全ての設置ずれを考慮して、正対位置を示す輝度ピークの存在範囲を予測する必要がある。そして予測された輝度ピーク位置の範囲内に隣の穴の輝度ピークが入らないように、ガラス板厚(d)及び穴ピッチ(p)を決定すれば、ステレオカメラ10と正対している穴に対応する予測範囲内の輝度ピークの位置を一意に決定することができる。
遮光板202(204)の作成する際には、平板上に遮光領域を形成する方法として、印刷やフォトエッチング等の技術が利用できる。これらの技術では、一般に、ドリルで厚板に穴を開ける等の方法で作成された第2実施形態の第2部材104に比べて、小径の穴や狭ピッチを実現することが容易である。輝度の山の大きさは、穴の径と板厚の比率(と屈折率)で決まる。例えば板厚(遮光板202、透明ガラス203及び遮光板204の厚さの合計)を6mm、穴半径を0.05mmとしても、第2実施形態の場合とほぼ同様の輝度分布が得られる。
以上説明したように、第3実施形態の計測用具220では、角度計測板201を、第2実施形態の角度計測板101よりも、より軽量小型の薄い板にしても、第2実施形態の角度計測板101と同等の校正精度が実現できる。
なお単に光を遮るだけならば、透明ガラス203を配置せずに、ガラス両面の遮光領域と同じ位置に遮光板202及び遮光板204を配置してもよい。
最後に第1乃至第3実施形態の校正装置30のハードウェア構成の例について説明する。図32は第1乃至第3実施形態のステレオカメラ10及び校正装置30のハードウェア構成の例を示す図である。
第1乃至第3実施形態の校正装置30は、制御装置51、主記憶装置52、補助記憶装置53、表示装置54、入力装置55及び通信装置56を備える。制御装置51、主記憶装置52、補助記憶装置53、表示装置54、入力装置55及び通信装置56は、バス57を介して互いに接続されている。
第1乃至第3実施形態のステレオカメラ10は、撮影装置151、撮影装置152、通信装置153、制御装置154、主記憶装置155、補助記憶装置156、表示装置157及び入力装置158を備える。撮影装置151、撮影装置152、通信装置153、制御装置154、主記憶装置155、補助記憶装置156、表示装置157及び入力装置158は、バス159を介して互いに接続されている。
制御装置51(制御装置154)はCPUである。制御装置51(制御装置154)は補助記憶装置53(補助記憶装置156)から主記憶装置52(主記憶装置155)に読み出されたプログラムを実行する。主記憶装置52(主記憶装置155)はROMやRAM等のメモリである。補助記憶装置53(補助記憶装置156)はHDD(Hard Disk Drive)やメモリカード等である。表示装置54(表示装置157)は校正装置30(ステレオカメラ10)の状態などを表示する。入力装置55(入力装置158)はユーザーからの入力を受け付ける。校正装置30の通信装置56と、ステレオカメラ10の通信装置153は、有線又は無線のネットワークを介して通信する。
撮影装置151は第1カメラ1(図2参照)に対応する。撮影装置152は第2カメラ2(図2参照)に対応する。
第1乃至第3実施形態のステレオカメラ10及び校正装置30で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、メモリカード、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータ・プログラム・プロダクトとして提供される。
また、第1乃至第3実施形態のステレオカメラ10及び校正装置30で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また第1乃至第3実施形態のステレオカメラ10及び校正装置30で実行するプログラムをダウンロードさせずにインターネット等のネットワーク経由で提供するように構成してもよい。
また、第1乃至第3実施形態のステレオカメラ10及び校正装置30のプログラムを、ROM等に予め組み込んで提供するように構成してもよい。
第1実施形態の校正装置30で実行されるプログラムは、上述した各機能ブロック(受付部31、第1カメラ位置算出部32、第1カメラ方位算出部33、第2カメラ位置算出部34、第2カメラ方位算出部35、理想視差算出部37、視差算出部38及び決定部39)を含むモジュール構成となっている。また第2乃至第3実施形態の校正装置30で実行されるプログラムは、上述した各機能ブロック(受付部131、計測部136、理想視差算出部137、視差算出部138及び決定部139)を含むモジュール構成となっている。
また第1乃至第3実施形態のステレオカメラ10で実行されるプログラムは、上述した各機能ブロック(補正部5及び算出部6)を含むモジュール構成となっている。
上述の各機能ブロックは、実際のハードウェアとしては、制御装置51(制御装置154)が上記記憶媒体からプログラムを読み出して実行することにより、上記各機能ブロックが主記憶装置52(主記憶装置155)上にロードされる。すなわち上記各機能ブロックは、主記憶装置52(主記憶装置155)上に生成される。
なお、上述した各機能ブロックの一部又は全部を、ソフトウェアにより実現せずに、IC(Integrated Circuit)等のハードウェアにより実現してもよい。