(58)【調査した分野】(Int.Cl.,DB名)
平面板に対して予め定められた4以上のキャリブレーションを行うための特徴点のそれぞれに対して、前記特徴点を中心点とする半径が予め定められた球形状半径である球面の全体またはその一部である球形状が配置されるキャリブレーションパターンを撮像する距離カメラが取得した計測点の距離マップに基づいて、距離カメラパラメータを推定するキャリブレーション装置であって、
前記球形状の立体表面におけるそれぞれの計測点からの距離が前記球形状半径であるカメラ座標系の座標を、前記特徴点のカメラ座標系における座標であるカメラ特徴点座標として取得する特徴点座標取得手段と、
前記特徴点座標取得手段が取得したカメラ特徴点座標に基づいて、距離カメラパラメータを推定する距離カメラパラメータ推定手段と、
を備えることを特徴とするキャリブレーション装置。
平面板に対して予め定められた4以上のキャリブレーションを行うための特徴点のそれぞれに対して、前記特徴点を中心点とする半径が予め定められた球形状半径である球面の全体またはその一部である球形状が配置され、さらに、前記平面板に対して予め定められた7以上のキャリブレーションを行うため小形状体中心のそれぞれに対して、前記小形状体中心を中心点とする半径が前記球形状半径よりも小さい球の全体またはその一部であり、所定色を有し、前記球形状とは異なる小形状体が配置されるキャリブレーションパターンを撮像する距離カメラが取得した計測点の距離マップに基づいて、距離カメラパラメータを推定し、さらに、前記キャリブレーションパターンを撮像するカラーカメラが取得したカラー画像に基づいて、カラーカメラパラメータを推定するキャリブレーション装置であって、
前記球形状の立体表面におけるそれぞれの計測点からの距離が前記球形状半径であるカメラ座標系の座標を、前記特徴点のカメラ座標系における座標であるカメラ特徴点座標として取得する特徴点座標取得手段と、
前記特徴点座標取得手段が取得したカメラ特徴点座標に基づいて、距離カメラパラメータを推定する距離カメラパラメータ推定手段と、
前記カラー画像に基づいて、前記小形状体の所定色を検出することにより、前記小形状体中心のカラーカメラ座標系における座標を、カメラ小形状体中心座標として取得するカラーカメラ座標取得手段と、
前記カラーカメラ座標取得手段が取得したカメラ小形状体中心座標に基づいて、カラーカメラパラメータを推定するするカラーカメラパラメータ推定手段と、
を備えることを特徴とするキャリブレーション装置。
前記特徴点座標取得手段は、前記キャリブレーションパターンを撮像する距離カメラが取得した計測点の距離マップを取得し、さらに、当該距離マップに基づいて前記平面板の境界を検出することにより、前記キャリブレーションパターンの立体表面における計測点を選定する距離マップ取得手段と、
前記距離マップ取得手段が選定した計測点の距離マップに基づいて、前記選定した計測点からの距離が前記球形状半径であるカメラ座標点に投票する投票手段と、
前記カメラ座標点の投票数が上位から前記特徴点の総数個までのカメラ座標点を、カメラ特徴点座標として抽出する上位抽出手段と、
を備えることを特徴とする請求項1ないし請求項4のいずれか1項に記載のキャリブレーション装置。
前記キャリブレーションパターンは、前記特徴点が、前記平面板上の格子点であり、前記特徴点でない格子点である除去点全体の重心である除去点中心と前記格子点全体の重心である格子点中心とが一致しないように構成され、
前記上位抽出手段は、さらに、前記抽出したカメラ特徴点座標に基づいて、前記除去点のカメラ座標を算出し、当該算出した前記除去点のカメラ座標に基づいて、前記格子点中心および前記除去点中心のカメラ座標を算出し、当該算出した前記格子点中心および前記除去点中心のカメラ座標に基づいて、前記特徴点全体の前記格子点中心に関する回転方向を検出することにより、前記抽出したカメラ特徴点座標と、前記特徴点とを対応付けることを特徴とする請求項5または請求項6に記載のキャリブレーション装置。
前記キャリブレーションパターンは、前記特徴点が前記平面板上に配置され、前記特徴点のそれぞれに対して配置される前記球形状が、前記特徴点を中心点とする半球であるように構成されていることを特徴とする請求項1ないし請求項7のいずれか1項に記載のキャリブレーション装置。
前記キャリブレーションパターンは、前記特徴点が前記平面板上に配置され、前記特徴点のそれぞれに対して配置される前記球形状が、前記特徴点を中心点とする半球であり、さらに、前記小形状体が、前記半球の頂点上に配置された小球であり、前記小形状体中心は、当該小球の中心点であるように構成されていることを特徴とする請求項2または請求項3に記載のキャリブレーション装置。
前記キャリブレーションパターンは、前記特徴点が、前記平面板上の格子点であり、前記特徴点でない格子点である除去点全体の重心である除去点中心と前記格子点全体の重心である格子点中心とが一致しないように構成され、
カラー格子点は、前記小形状体中心全体と同一平面上にあり、かつ、前記平面板に垂直な前記格子点を通る直線上にある点であり、カラー除去点は、前記小形状体中心ではない前記カラー格子点であり、カラー格子点中心は、前記カラー格子点全体の重心であり、カラー除去点中心は、前記カラー除去点全体の重心であり、
前記カラーカメラ座標取得手段は、さらに、前記取得したカメラ小形状体中心座標に基づいて、前記カラー除去点のカラーカメラ座標を算出し、当該算出した前記カラー除去点のカラーカメラ座標に基づいて、前記カラー格子点中心および前記カラー除去点中心のカラーカメラ座標を算出し、当該算出した前記カラー格子点中心および前記カラー除去点中心のカラーカメラ座標に基づいて、前記小形状体中心全体の前記カラー格子点中心に関する回転方向を検出することにより、前記取得したカメラ小形状体座標と、前記小形状体中心と、を対応付けることを特徴とする請求項9に記載のキャリブレーション装置。
【発明を実施するための形態】
【0019】
以降、本発明を実施するための形態を、各図を参照して詳細に説明する。
(第1の実施形態)
[第1の実施形態の概要]
最初に、
図1を参照して、本発明の第1の実施形態の概要について説明する。
【0020】
キャリブレーションパターン100は、平面板101に対して予め定められた4以上のキャリブレーションを行うための特徴点のそれぞれに対して、前記特徴点を中心点とする半径が予め定められた球形状半径Rである球面の全体またはその一部である球形状が配置されるものである。ここで、球形状半径Rは正であり、球形状の立体表面の面積は0ではない。なお、キャリブレーションパターン100は、地面等に固定されて設置されている。また、後記するように、キャリブレーションを行うためには、4以上の特徴点が必要である。
【0021】
距離カメラ2
1および距離カメラ2
2は、それぞれキャリブレーション装置1にケーブル等で接続されており、キャリブレーションパターン100を撮像し、それぞれ計測点の距離マップを取得し、取得した距離マップをキャリブレーション装置1に出力するものである。以下、距離カメラ2
1および距離カメラ2
2を、特に区別しないときは、単に、距離カメラ2と記載する。ここで、距離マップは、距離カメラ2の不図示の撮像画面上に2次元に配列された画素ごとに、不図示の光学主点Oc(
図6参照)から、当該光学主点Ocと当該画素を結ぶ直線上の計測点へ伸びるベクトルと、撮像画面の単位法線ベクトルとの内積値を奥行き情報として示すものである。なお、距離カメラ2
1および距離カメラ2
2は、キャリブレーションパターン100に対して固定され設置されている。また、3台以上の距離カメラ2が、キャリブレーションパターン100を撮像し、キャリブレーション装置1に接続されていてもよい。
【0022】
キャリブレーション装置1は、距離カメラ2
1および距離カメラ2
2が取得した計測点の距離マップに基づいて、距離カメラ2
1および距離カメラ2
2の距離カメラパラメータを推定し、推定した距離カメラパラメータを外部に出力するものである。ここで、距離カメラ2の距離カメラパラメータとは、後記するように、距離カメラ2のキャリブレーションパターン100に対する設置姿勢および設置位置を示すパラメータである。
【0023】
次に、
図2を参照して、キャリブレーションパターン100の一例について説明する。
キャリブレーションパターン100は、24個の特徴点が平面板101上に配置され、その特徴点のそれぞれに対して配置される球形状が、当該特徴点を中心点とする半径Rの半球であるように構成されている。なお、キャリブレーションパターン100では、平面板101は、略正方形であるが、平面板101は底辺と高さが異なる長方形でもよいし、その他の形状でもよい。また、球形状が半球であるため、球形状を平面板101上に安定的に配置し、かつ、球形状の立体表面の面積を広くすることができる。これにより、距離カメラ2は、球形状の立体表面からより多くの計測点の距離マップを取得することができる。また、球形状が平面板101に固定されることで、キャリブレーションパターン100は形がくずれず、長期間使用することができる。
【0024】
ここで、平面板101上の予め定められた基準点から平面板101上の底辺方向に間隔Lのm倍であるm・Lだけ離れた点から、さらに、平面板101の高さ方向に間隔Lのn倍であるn・Lだけ離れた点を、格子点P(m,n)とする(ただし、mおよびnは整数である)。ここで、平面板101は、mおよびnが、−2以上で2以下である25個の格子点P(m,n)を含む。なお、基準点は、格子点P(0,0)と一致する。
なお、キャリブレーションパターン100では、平面板101上の底辺方向の間隔と、平面板101上の高さ方向の間隔は等しいが、異なっていてもよい。
【0025】
また、mおよびnは−2以上で2以下の整数であり、かつ、(m,n)=(1,1)ではない24個の格子点P(m,n)が、特徴点102
1〜102
24として予め定められる。ここで、格子点P(0,0)は特徴点102
1として定められる。なお、特徴点102
1は、25個の格子点P(m,n)の全体の重心である格子点中心と一致する。
そして、格子点P(1,1)は、特徴点ではない格子点である除去点102
25として定められる。
【0026】
なお、キャリブレーションパターン100では、除去点は単数であるが、除去点は複数であってもよい。キャリブレーションパターン100は、特徴点が、平面板101上の格子点であり、特徴点でない格子点である除去点全体の重心である除去点中心と格子点全体の重心である格子点中心とが一致しないように構成されていればよい。
【0027】
以下、特徴点の総数をsとする(キャリブレーションパターン100では、sは、24である)。また、特徴点102
1〜102
24を特に区別しないときは、単に特徴点102と記載する。そして、格子点102
1〜102
25を特に区別しないときは、単に格子点102と記載する。
【0028】
ここで、特徴点102
iに対して、当該特徴点102
iを中心点とする半径Rの半球103
iが平面板101上に配置されている(ただし、iは、1以上24以下の整数とする)。ここで、半径Rは、L/2より小さい。以下、半球103
1〜103
24を特に区別しないときは、単に半球103と記載する。
【0029】
次に、
図3を参照して、第1の実施形態における世界座標系の一例について説明する。
図3に示す世界座標系は、キャリブレーションパターン100に対して、以下のように定められている。
図3に示す世界座標系の原点は、平面板101の格子点中心であり、半球103
1の中心点102
1と一致する。X軸は、平面板101の底辺方向と平行であり、Y軸は、平面板101の高さ方向と平行であり、Z軸は、平面板101に垂直であり、半球103上の点のZ座標は正である。以下、世界座標系における座標を世界座標と呼ぶ。
【0030】
図3に示すように、平面板101上の点Pの世界座標は、(X,Y,0)と表される。
また、格子点102
iの世界座標系における世界座標P
w(i)は、次の式(1)で表される。ここで、格子点102
iは、格子点P(m(i),n(i))であるとして、m(i)およびn(i)は、−2以上2以下の整数であるとする。ただし、iは、1以上25以下の整数とする。
【0032】
次に、
図4を参照して、第1の実施形態におけるカメラ座標系の一例について説明する。
図4に示すように、距離カメラ2
1および距離カメラ2
2は、世界座標系において固定されており、それぞれの画角内にキャリブレーションパターン100を撮像する。なお、距離カメラ2
1の不図示の光学主点Oc
1および距離カメラ2
2の不図示の光学主点Oc
2の世界座標系におけるZ座標は、正である。光学主点Oc
1および光学主点Oc
2を特に区別しないときは、単に光学主点Ocと記載する。
【0033】
距離カメラ2のカメラ座標系の原点は、距離カメラ2の光学主点Ocである。距離カメラ2
1のカメラ座標系のZ
d1軸は、距離カメラ2
1の光軸であり、距離カメラ2
2のカメラ座標系のZ
d2軸は、距離カメラ2
2の光軸である。ここで、Z
d1軸およびZ
d2軸を特に区別しないときは、Z
d軸と記載する。距離カメラ2
1のX
d1軸は、距離カメラ2
1の不図示の撮像画面に2次元に画素が配列される水平方向に平行であり、距離カメラ2
2のX
d2軸は、距離カメラ2
2の不図示の撮像画面に2次元に画素が配列される水平方向に平行である。ここで、X
d1軸およびX
d2軸を特に区別しないときは、X
d軸と記載する。距離カメラ2
1のY
d1軸は、距離カメラ2
1の不図示の撮像画面に2次元に画素が配列される垂直方向に平行であり、距離カメラ2
2のY
d2軸は、距離カメラ2
2の不図示の撮像画面に2次元に画素が配列される垂直方向に平行である。ここで、Y
d1軸およびY
d2軸を特に区別しないときは、Y
d軸と記載する。以下、距離カメラ2のカメラ座標系における座標をカメラ座標と呼ぶ。
【0034】
ここで、回転行列R
d1を距離カメラ2
1の姿勢を示し、回転行列R
d2を、距離カメラ2
2の姿勢を示すものとする。以下、回転行列R
d1および回転行列R
d2を、特に区別しないときは、単に回転行列R
dと記載する。具体的には、回転行列R
dは、世界座標系のX軸の周りのピッチ角φの回転を示す回転行列R
d(φ)、世界座標系のY軸の周りのヨー角θの回転を示す回転行列R
d(θ)、および、世界座標系のZ軸の周りのチルト角ψの回転を示す回転行列R
d(ψ)を用いて、以下の式(2)により表される(非特許文献1参照)。
【0036】
また、並進ベクトルT
d1は、距離カメラ2
1のカメラ座標系の原点である光学主点Oc
1を始点として、特徴点102
1と一致する世界座標系の原点を終点とするベクトルであり、距離カメラ2
1の位置を表すものとする。そして、並進ベクトルT
d2は、距離カメラ2
2のカメラ座標系の原点である光学主点Oc
2を始点として、特徴点102
1と一致する世界座標系の原点を終点とするベクトルであり、距離カメラ2
2の位置を表すものとする。以下、並進ベクトルT
d1および並進ベクトルT
d2を、特に区別しないときは、単に並進ベクトルT
dと記載する。
以下、距離カメラ2のカメラ座標における回転行列R
dおよび並進ベクトルT
dを距離カメラパラメータと呼ぶ。
このとき、世界座標がP
wである点Pの、距離カメラ2
1のカメラ座標系におけるカメラ座標がP
d1であり、距離カメラ2
2のカメラ座標系におけるカメラ座標がP
d2であるとき、次の式(3)が成り立つ。
【0038】
ここで、4以上の個数の特徴点102のカメラ座標および世界座標が既知である場合、上記の式(3)により、回転行列R
dおよび並進ベクトルT
dを求めることができる。そして、任意の点Pのカメラ座標P
dから、その世界座標P
wを、下記の式(4)により求めることができる。これにより、距離カメラ2
1における世界座標P
d1を世界座標P
w1に変換し、距離カメラ2
2における世界座標P
d2を世界座標P
w2に変換して、共通の世界座標系において、世界座標P
w1および世界座標P
w2を扱うことができる。
【0040】
[第1の実施形態のキャリブレーション装置の構成]
次に、
図5を参照して、第1の実施形態におけるキャリブレーション装置1の構成について説明する。
キャリブレーション装置1は、半球中心座標取得手段(特徴点座標取得手段)10と、距離カメラパラメータ推定手段20とを備える。なお、キャリブレーション装置1は、2つの半球中心座標取得手段10と、2つの距離カメラパラメータ推定手段20とを備える。
【0041】
半球中心座標取得手段(特徴点座標取得手段)10は、それぞれの球形状の立体表面における計測点からの距離が球形状半径Rであるカメラ座標系の座標を、特徴点102のカメラ座標系における座標であるカメラ中心座標(カメラ特徴点座標)として取得するものである。
半球中心座標取得手段(特徴点座標取得手段)10は、距離マップ取得手段11と、投票手段12と、上位抽出手段13とを備える。なお、一方の半球中心座標取得手段10は、距離カメラ2
1が取得した計測点の距離マップを取得し、他方の半球中心座標取得手段10は、距離カメラ2
2が取得した計測点の距離マップを取得する。
【0042】
距離マップ取得手段11は、距離カメラ2が取得した計測点の距離マップを、ケーブル等を介して取得するものである。なお、計測点は、キャリブレーションパターン100の立体表面上の計測点に限られない。そして、距離マップを用いて、各計測点のカメラ座標を算出することができるため、以下、計測点の距離マップを、計測点のカメラ座標として扱う。
【0043】
投票手段12は、距離マップ取得手段11が取得した計測点の距離マップに基づいて、それぞれの計測点からの距離が半球の半径(球形状半径)Rであるカメラ座標点に投票するものである。具体的には、投票手段12は、各計測点を中心点とする半径Rの球面と交わる各カメラ座標単位内の、その球面に最も近いカメラ座標点に投票する。ここで、カメラ座標点とは、カメラ座標系のX
d軸、Y
d軸、およびZ
d軸方向に、所定のピッチ間隔で3次元に配列されたカメラ座標であり、カメラ座標単位は、カメラ座標点を頂点とする最小単位の立方体である。
【0044】
図6に示すように、半球103上の各計測点を中心とする半径Rの球は、半球103の中心点102を含む。よって、上記の半球103の中心点102と考えられるカメラ座標点には、投票が集中する。これにより、全てのカメラ座標点の中で投票数が、上位から特徴点102の総数個であるs個までのカメラ座標点は、半球103
1〜103
24の中心点102
1〜102
24のカメラ座標であると考えられる。
【0045】
上位抽出手段13は、カメラ座標点の投票数が上位から特徴点102の総数個であるs個までのカメラ座標点を抽出するものである。そして、上位抽出手段13は、さらに、抽出したカメラ特徴点座標に基づいて、除去点のカメラ座標を算出し、算出した除去点のカメラ座標に基づいて、格子点中心および除去点中心のカメラ座標を算出し、算出した格子点中心および除去点中心のカメラ座標に基づいて、特徴点102全体の格子点中心に関する回転方向を検出することにより、抽出したカメラ特徴点座標と、特徴点102を対応付けるものである。
【0046】
例えば、上位抽出手段13は、抽出した特徴点102の総数個であるs個のカメラ中心座標に基づいて、除去点102
25のカメラ座標を算出する。ここで、除去点102
25は、いずれか2つの特徴点102の中点と一致する。これにより、上位抽出手段13は、算出した特徴点102のカメラ座標のうち、当該2つの特徴点102のカメラ座標の平均を算出することにより、除去点102
25のカメラ座標を算出することができる。そして、上位抽出手段13は、当該算出した除去点102
25のカメラ座標に基づいて、特徴点102全体の格子点中心102
1に関する回転方向を検出することにより、抽出したカメラ中心座標と、特徴点102
1〜102
24とを対応付ける。
【0047】
なお、除去点が複数である場合にも、上位抽出手段13は、抽出したカメラ特徴点座標に基づいて、除去点のカメラ座標を算出する。ここで、除去点は、いずれか2つの特徴点の中点などの内分点や、いずれか2つの特徴点の外分点と一致する。これにより、上位抽出手段13は、算出した特徴点102のカメラ座標のうち、当該2つの特徴点102のカメラ座標から、除去点のカメラ座標を算出することができる。そして、上位抽出手段13は、算出した除去点のカメラ座標に基づいて、格子点中心および除去点中心のカメラ座標を算出する。さらに、上位抽出手段13は、当該算出した格子点中心および除去点中心のカメラ座標に基づいて、前記特徴点全体の前記格子点中心に関する回転方向を検出することにより、抽出したカメラ特徴点座標と、特徴点102とを対応付ける。これにより、上位抽出手段13は、抽出したカメラ特徴点座標と、特徴点102とを、正確に対応付けることができる。
【0048】
以上のように、上位抽出手段13は、抽出した特徴点102の総数個であるs個のカメラ座標点を、半球103
1の中心点102
iと対応付けて、対応付けたカメラ座標点を、半球103
1の中心点102
iのカメラ座標であるカメラ中心座標P
d(i)として取得する(ただし、iは1以上24以下の整数である)。
【0049】
このように、投票手段12は、距離マップ取得手段11が取得した計測点からの距離が球形状半径Rであるカメラ座標点に投票するので、特徴点102のカメラ座標の投票数は、他のカメラ座標よりも高くなる。これにより、上位抽出手段13は、特徴点102のカメラ座標を、カメラ特徴点座標として、高精度に抽出することができる。
また、球形状が半球であるため、球形状の立体表面の面積を広くすることができる。よって、距離マップ取得手段11は、球形状の立体表面からより多くの計測点の距離マップを取得することができる。これにより、特徴点102のカメラ座標の投票数は、他のカメラ座標よりもより高くなる。
【0050】
また、距離マップ取得手段11は、取得した計測点の距離マップに基づいて、平面板101の境界を検出することにより、キャリブレーションパターン100の立体表面における計測点を選定してもよい。具体的には、距離マップ取得手段11は、公知のハフ変換や一般化ハフ変換を用いて、平面板101の境界に含まれる直線等の形状を検出する。そして、距離マップ取得手段11は、検出した境界に囲まれる立体表面上の計測点を選定する。
そして、投票手段12は、距離マップ取得手段11が選定した計測点からの距離が半径(球形状半径)Rであるカメラ座標点に投票する。
【0051】
このように、距離マップ取得手段11は、キャリブレーションパターン100の立体表面のおける計測点を選定するので、投票手段12が投票を行う計測点を限定することができる。これにより、投票手段12が処理を行うために使用するメモリ等の容量を低減することができる。
【0052】
以上により、半球中心座標取得手段10は、距離カメラ2が出力した計測点の距離マップに基づいて、それぞれの半球103
iの立体表面における計測点からの距離が半球103の半径Rであるカメラ座標系の座標を、半球103
iの中心点である特徴点102
iのカメラ座標系における座標であるカメラ中心座標P
d(i)として取得し、取得したカメラ中心座標P
d(i)を出力する(ただし、iは1以上24以下の整数である)。
【0053】
距離カメラパラメータ推定手段20は、半球中心座標取得手段(特徴点座標取得手段)10が取得したカメラ中心座標(カメラ特徴点座標)に基づいて、距離カメラパラメータを推定するものである。なお、一方の距離カメラパラメータ推定手段20は、一方の半球中心座標取得手段10からカメラ中心座標を取得し、他方の距離カメラパラメータ推定手段20は、他方の半球中心座標取得手段10からカメラ中心座標を取得する。
距離カメラパラメータ推定手段20は、世界中心座標記憶手段(世界特徴点座標記憶手段)21と、距離カメラパラメータ最小二乗算出手段22とを備える。
【0054】
世界中心座標記憶手段(世界特徴点座標記憶手段)21は、特徴点102の世界座標系における座標を、世界中心座標(世界特徴点座標)として記憶するものである。
具体的には、世界中心座標記憶手段21は、半球103
iの中心点(特徴点)102
iの世界座標P
w(i)(ただし、iは1以上24以下の整数である)を、世界中心座標(世界特徴点座標)として記憶する。また、半球103の中心点102全体は、同一平面である平面板101上にあるため、世界特徴点座標P
w(i)(ただし、iは1以上24以下の整数である)は、Z座標が0であるという拘束条件を有する。これにより、距離カメラパラメータ推定手段20は、高精度に距離カメラパラメータを算出することができる。
【0055】
距離カメラパラメータ最小二乗算出手段22は、特徴点102のカメラ中心座標(カメラ特徴点座標)および世界中心座標(世界特徴点座標)により定まる距離カメラ評価関数を最小化する距離カメラパラメータを最小二乗法で算出するものである。
具体的には、下記の式(5)で、距離カメラ評価関数I(R
d,T
d)を定義する。ここで、||は、ユークリッド距離を示す。なお、距離カメラ評価関数I(R
d,T
d)は、半球103
iの中心点102
iのカメラ中心座標P
d(i)および世界座標P
w(i)により定まる(ただし、iは1以上24以下の整数である)。
【0057】
ここで、式(2)により、距離カメラ評価関数I(R
d,T
d)を、(φ,θ,ψ,t1,t2,t3)の関数I(φ,θ,ψ,t1,t2,t3)として扱うことができる。ここで、t1はT
dのX成分であり、t2はT
dのY成分であり、t3はT
dのZ成分である。
距離カメラパラメータ最小二乗算出手段22は、この関数I(φ,θ,ψ,t1,t2,t3)を最小化する(φ,θ,ψ,t1,t2,t3)を公知の非線形最小二乗法により算出する。そして、距離カメラ評価関数I(R
d,T
d)を最小化する距離カメラパラメータである回転行列R
dおよび並進ベクトルT
dを算出する。
【0058】
このように、距離カメラパラメータ最小二乗算出手段22は、特徴点102のカメラ特徴点座標から、高精度に距離カメラパラメータを算出することができる。
【0059】
以上により、距離カメラパラメータ推定手段20は、半球中心座標取得手段10が取得した、半球103
iの中心点102
iのカメラ座標であるカメラ中心座標P
d(i)に基づいて(ただし、iは1以上24以下の整数である)、距離カメラパラメータを算出し、算出した距離カメラパラメータを出力する。
【0060】
以上のように、キャリブレーション装置1は、半球中心座標取得手段10によって、高精度にカメラ特徴点座標を取得することができる。これにより、共通の座標である世界座標において、距離カメラ2
1および距離カメラ2
2の距離カメラパラメータを高精度に取得することができる。そして、距離カメラ2
1および距離カメラ2
2で取得された距離マップを、世界座標系に変換して扱うことにより、それぞれの距離マップから得られた情報を統合することができる。さらに、例えば、それぞれの距離マップから得られた被写体の形状に関する情報を改善することができる。
【0061】
[第1の実施形態のキャリブレーション装置の動作]
次に、
図7を参照して、第1の実施形態におけるキャリブレーション装置1の動作を説明する。
距離カメラ2は、キャリブレーションパターン100を撮像する。距離カメラ2は、計測点の距離マップを取得し、取得した計測点の距離マップをキャリブレーション装置1に出力する。キャリブレーション装置1は、計測点の距離マップが入力されると、以下の動作を開始する。
【0062】
ステップS11において、キャリブレーション装置1は、半球中心座標取得手段10において、距離マップ取得手段11によって、距離カメラ2が出力した計測点の距離マップを取得する。この距離マップ取得手段11によって取得された計測点の距離マップは、不図示のメモリ等によって記憶される。
【0063】
ステップS12において、キャリブレーション装置1は、半球中心座標取得手段10において、投票手段12によって、不図示のメモリ等によって記憶された計測点の距離マップを参照して、当該計測点の距離マップに基づいて、それぞれの計測点から距離が半径Rであるカメラ座標点に投票する。この投票手段12によって取得されたカメラ座標点の投票数は、不図示のメモリ等によって記憶される。具体的には、投票手段12は、各計測点を中心点とする半径Rの球面と交わる各カメラ座標単位内の、その球面に最も近いカメラ座標点に投票する。
【0064】
ステップS13において、キャリブレーション装置1は、半球中心座標取得手段10において、上位抽出手段13によって、不図示のメモリ等によって記憶された計測点のカメラ座標点の投票数を参照して、カメラ座標点の投票数が上位から特徴点の総数個であるs個までのカメラ座標点を、カメラ特徴点座標として抽出する。
【0065】
ステップS14において、キャリブレーション装置1は、半球中心座標取得手段10において、上位抽出手段13によって抽出されたs個のカメラ座標点を、半球103
iの中心点である特徴点102
iと対応付け、カメラ中心座標P
d(i)として取得する(ここで、iは1以上24以下の整数である)。キャリブレーション装置1は、半球中心座標取得手段10において、上位抽出手段13によって取得したカメラ中心座標P
d(i)(ここで、iは1以上24以下の整数である)を不図示のメモリ等に記憶する。
【0066】
ステップS15において、キャリブレーション装置1は、距離カメラパラメータ推定手段20において、世界中心座標記憶手段21に予め記憶しておいたs個の世界中心座標P
w(i)、および、不図示のメモリに記憶されたカメラ中心座標P
d(i)(ただし、iは1以上24以下の整数である)を参照する。キャリブレーション装置1は、距離カメラパラメータ推定手段20において、式(5)で定義される距離カメラ評価関数I(R
d,T
d)を最小化する、距離カメラパラメータである回転行列R
dおよび並進ベクトルT
dを、公知の非線形最小二乗法により算出する。そして、キャリブレーション装置1は、距離カメラパラメータ推定手段20において、距離カメラパラメータ最小二乗算出手段22によって、算出した距離カメラパラメータを出力する。
ステップS15の処理の終了後、キャリブレーション装置1は、動作を終了する。
【0067】
(第2の実施形態)
[第2の実施形態の概要]
最初に、
図8を参照して、本発明の第2の実施形態の概要について説明する。
キャリブレーションパターン100Aは、平面板101に対して予め定められた4以上のキャリブレーションを行うための特徴点のそれぞれに対して、この特徴点を中心点とする半径が予め定められた球形状半径Rである球面の全体またはその一部である球形状が配置され、さらに、平面板101に対して予め定められた7以上のキャリブレーションを行うため小形状体中心のそれぞれに対して、この小形状体中心を中心点とする半径が球形状半径Rよりも小さい半径rの球の全体またはその一部であり、所定色を有し、球形状とは異なる小形状体が配置されるものである。ここで、球形状半径Rは、小形状体の半径rより大であり、小形状体の半径rは正である。また、球形状の立体表面の面積は0ではなく、小形状体の立体表面の面積も0ではない。なお、キャリブレーションパターン100Aは、地面等に固定されて設置されている。また、後記するように、キャリブレーションを行うためには、4以上の特徴点および7以上の小形状体中心が必要である。
【0068】
距離カメラ2は、それぞれキャリブレーション装置1Aにケーブル等で接続されており、キャリブレーションパターン100Aを撮像し、計測点の距離マップを取得し、取得した距離マップをキャリブレーション装置1Aに出力するものである。なお、距離カメラ2は、キャリブレーションパターン100Aに対して固定されている。また、2台以上の距離カメラ2が、キャリブレーションパターン100を撮像し、キャリブレーション装置1に接続されていてもよい。
【0069】
カラーカメラ3は、キャリブレーション装置1Aにケーブル等で接続されており、キャリブレーションパターン100Aを撮像し、計測点のカラー画像を取得し、取得したカラー画像をキャリブレーション装置1Aに出力するものである。ここで、カラーカメラ3は、例えばCCDやCMOS素子を用いたカメラである。また、カラー画像は、撮像画面の予め定められた画像座標系の2次元座標に対して、画素値を示すものである。なお、カラーカメラ3は、キャリブレーションパターン100Aに対して固定されている。また、2台以上の距離カメラ2が、キャリブレーションパターン100を撮像し、キャリブレーション装置1に接続されていてもよい。
【0070】
キャリブレーション装置1Aは、距離カメラ2が取得した計測点の距離マップに基づいて、距離カメラパラメータを推定し、さらに、カラーカメラ3が取得したカラー画像に基づいて、カラーカメラパラメータを推定し、推定した距離カメラパラメータおよびカラーカメラパラメータを外部に出力するものである。なお、カラーカメラパラメータは、後記するように、カラーカメラ3の設置姿勢、設置位置や焦点距離等である。
【0071】
次に、
図9を参照して、第2の実施形態におけるキャリブレーションパターン100Aの一例を説明する。
図2と同一の要素には同一の符号を付与し、説明を省略することもある。
【0072】
キャリブレーションパターン100Aは、キャリブレーションパターン100において、さらに、半径Rの半球103
iの頂点上に、小形状体として半径rの小球105
iが配置され、小形状体中心は、小球105
iの中心点104
iであるように構成されている(ただし、iは1以上24以下の整数である)。ここで、rは、Rより小である。
カラー格子点104
iは、小球105の中心点(小形状体中心)104
1〜104
24全体と同一平面上にあり、かつ、平面板101に垂直な格子点102
iを通る直線上にある点である(ただし、iは1以上25以下の整数である)。カラー除去点104
25は、小球105の中心点104ではないカラー格子点である。カラー格子点中心は、カラー格子点全体の重心であり、キャリブレーションパターン100Aでは、カラー格子点104
1と一致する。カラー除去点中心は、カラー除去点全体の重心であり、キャリブレーションパターン100Aでは、カラー除去点104
25である。
【0073】
次に、
図10を参照して、第2の実施形態における世界座標系の一例を説明する。
図10に示す世界座標系は、
図2に示す世界座標系と同様に定められている。
図10に示すように、小球105の中心点104
1〜104
24全体と同一平面上にある点Pの世界座標は、(X,Y,R+r)と表される。
小球105
iの中心点の世界座標p
w(i)は、次の式(6)で表される(ただし、iは1以上24以下の整数である)。
【0075】
次に、
図11を参照して、第2の実施形態におけるカラーカメラ座標系の一例を説明する。
図11に示すように、距離カメラ2およびカラーカメラ3は、世界座標系において固定されており、それぞれの画角内にキャリブレーションパターン100Aを撮像する。
距離カメラ2のカメラ座標系は、
図3に示すカメラ座標と同様に定められている。
カラーカメラ3のカラーカメラ座標系は、以下のように定められる。カラーカメラ座標系の原点は、不図示のカラーカメラ3の光学主点であり、Z
c軸は、カラーカメラ3の光軸であり、X
c軸は、カラーカメラ3の不図示の撮像画面に2次元に画素が配列される水平方向に平行とし、Y
c軸は、カラーカメラ3の不図示の撮像画面に2次元に画素が配列される垂直方向に平行とする。任意のPの上記のX
cY
cZ
c座標系における座標をP
cとする。このとき、上記の点Pのカラーカメラ座標系における座標であるカラーカメラ座標p
cは、次の式(7)で示される。
【0077】
ここで、内部パラメータ行列F
cは、下記の式(8)で示される。ただし、aはカラー画像の画素のアスペクト比であり、Fは、画素数で表された焦点距離であり、(C
u,C
v)は、カラー画像の画像座標系における光軸の画像座標である。
【0079】
ここで、zを計測点Pの上記のX
cY
cZ
c座標系におけるZ
c成分として、カラー画像の撮像画面の画像座標系における2次元座標を(u,v)とする。このとき、計測点のカラーカメラ座標p
cは、次の式(9)で表される。
【0081】
ここで、回転行列R
cを、上記のX
cY
cZ
c座標系におけるカラーカメラ3の姿勢を表すものとする。具体的には、回転行列R
cは、世界座標系のX軸の周りのピッチ角φの回転を示す回転行列R
c(φ)、世界座標系のY軸の周りのヨー角θの回転を示す回転行列R
c(θ)、および、世界座標系のZ軸の周りのチルト角ψの回転を示す回転行列R
c(ψ)を用いて、以下の式(10)により表される(非特許文献1参照)。
【0083】
また、並進ベクトルT
cは、カラーカメラ3の不図示の光学主点を始点として、特徴点102
1と一致する世界座標系の原点を終点とするベクトルであり、カラーカメラ3の位置を表すものとする。このとき、次の式(11)が成り立つ。以下、回転行列R
cおよび並進ベクトルT
cを外部パラメータとし、内部パラメータ行列F
cを内部パラメータとし、外部パラメータおよび内部パラメータをカラーカメラパラメータとする。
【0085】
例えば、7個以上の特徴点102のカラーカメラ座標が既知であれば、上記の式(11)により、外部パラメータおよび内部パラメータを求めることができる(非特許文献1参照)。そして、任意の点Pのカラーカメラ座標p
cから、その点Pの世界座標p
wを、上記の式(11)により求めることができる。そして、任意の点Pのカラーカメラ座標p
cを、世界座標p
wに変換して扱うことができる。
以下、カラーカメラ座標系における座標をカラーカメラ座標と呼ぶ。
【0086】
[第2の実施形態のキャリブレーション装置の構成]
次に、
図12を参照して、第2の実施形態におけるキャリブレーション装置1Aの構成を説明する。
図5と同一の要素には同一の符号を付与し、説明を省略することもある。
キャリブレーション装置1Aは、半球中心座標取得手段(特徴点座標取得手段)10と、距離カメラパラメータ推定手段20と、小球中心座標取得手段(カラーカメラ座標取得手段)30と、カラーカメラパラメータ推定手段40と、を備える。
【0087】
半球中心座標取得手段10が、距離マップ取得手段11によって、距離マップを取得する計測点は、小球105が半球103上に配置されているため、半球103の立体表面全体に亘らない。しかし、小球105の半径rは、半球103の半径Rよりも小さいため、距離マップ取得手段11は、半球103の立体表面から十分な数の計測点の距離マップを取得することができる。また、小球105の半径rは半球103の半径Rより小さいため、小球105の立体表面の計測点から距離がRである点に、投票手段12による投票が集中する虞はない。これにより、半球中心座標取得手段10は、投票手段12および上位抽出手段13により、カメラ中心座標を取得することができる。
【0088】
小球中心座標取得手段(カラーカメラ座標取得手段)30は、カラー画像に基づいて、小球(小形状体)の所定色を検出することにより、小球の中心点(小形状体中心)のカラーカメラ座標系における座標を、カラーカメラ小球中心座標(カメラ小形状体中心座標)として取得するものである。小球中心座標取得手段(カラーカメラ座標取得手段)30は、さらに、取得したカラーカメラ小球中心座標(カメラ小形状体中心座標)に基づいて、カラー除去点のカラーカメラ座標を算出し、算出した前記カラー除去点のカラーカメラ座標に基づいて、カラー格子点中心およびカラー除去点中心のカラーカメラ座標を算出し、算出したカラー格子点中心およびカラー除去点中心のカラーカメラ座標に基づいて、小形状体中心全体のカラー格子点中心に関する回転方向を検出することにより、取得したカラーカメラ小球中心座標(カメラ小形状体中心座標)と、小形状体中心と、を対応付けるものである。
【0089】
具体的には、小球中心座標取得手段30は、カラーカメラ3が取得したカラー画像を、ケーブル等を介して取得し、取得したカラー画像に基づいて、小球105の所定色を検出することにより、小球105の中心点104のカラーカメラ座標系における座標を、カラーカメラ小球中心座標として取得する。例えば、小球中心座標取得手段30は、取得したカラー画像の計測点の輝度情報に基づいて、小球105の立体表面上の計測点の所定色を検出する。さらに、小球中心座標取得手段30は、所定色を検出した計測点の輝度情報に基づいて、小球105の立体表面上の計測点のカラーカメラ座標を取得する。そして、小球中心座標取得手段30は、小球105の中心点104のカラーカメラ座標を、カラーカメラ小球中心座標として取得する。このように、小形状体は、小形状体中心を中心点104とする小球105であるため、小球中心座標取得手段30は、高精度にカラーカメラ座標を取得することができる。なお、小球中心座標取得手段30は、小球105の立体表面上の計測点の所定色を検出する際に、さらに、円形状を検出する処理、カラー画像における小球105の周辺の画素値を参照する処理や、カラー格子点105の配置に関する情報を用いる処理を行ってもよい。これにより、小球中心座標取得手段30は、小球105の立体表面上の計測点の所定色を正確に検出することができ、より高精度にカラーカメラ座標を取得することができる。
【0090】
そして、小球中心座標取得手段30は、さらに、取得したカラーカメラ小球中心座標に基づいて、カラー除去点104
25のカラーカメラ座標を算出する。ここで、カラー除去点104
25は、いずれか2つの小球105の中心点104の中点と一致する。これにより、小球中心座標取得手段30は、算出した小球105の中心点104のカラーカメラ座標のうち、当該2つの小球105の中心点104のカラーカメラ座標から、カラー除去点104
25のカラーカメラ座標を算出することができる。そして、小球中心座標取得手段30は、算出したカラー除去点104
25のカラーカメラ座標に基づいて、小球105の中心点104全体のカラー格子点中心(小球105
1の中心点104
1に一致する)に関する回転方向を検出することにより、抽出したカラーカメラ小球中心座標と、小球105の中心点104
1〜104
24とを対応付ける。
【0091】
なお、カラー除去点が複数である場合にも、小球中心座標取得手段30は、取得したカラーカメラ小球中心座標に基づいて、カラー除去点のカラーカメラ座標を算出する。ここで、カラー除去点は、いずれか2つの小球105の中心点104の中点などの内分点や、いずれか2つの小球105の中心点104の外分点と一致する。これにより、小球中心座標取得手段30は、算出した小球105の中心点104のカラーカメラ座標のうち、当該2つの小球105の中心点104のカラーカメラ座標から、カラー除去点のカラーカメラ座標を算出することができる。そして、小球中心座標取得手段30は、算出したカラー除去点のカラーカメラ座標に基づいて、カラー格子点中心およびカラー除去点中心のカラーカメラ座標を算出する。さらに、小球中心座標取得手段30は、算出したカラー格子点中心およびカラー除去点中心のカラーカメラ座標に基づいて、小球105の中心点104全体のカラー格子点中心に関する回転方向を検出することにより、取得したカラーカメラ小球中心座標と、小球105の中心点104とを対応付ける。これにより、小球中心座標取得手段30は、取得したカラーカメラ小球中心座標と、小球105の中心点104とを、正確に対応付けることができる。
【0092】
以上により、小球中心座標取得手段30は、取得したカラーカメラ小球中心座標を、小球(小形状体)105
iの中心点(小形状体中心)104
iと対応付けて、カラーカメラ小球中心座標p
c(i)として取得する(ただし、iは1以上24以下の整数である)。
【0093】
カラーカメラパラメータ推定手段40は、小球中心座標取得手段(カラーカメラ座標取得手段)30が取得したカラーカメラ座標に基づいて、カラーカメラパラメータを推定するものである。カラーカメラパラメータ推定手段40は、世界小球中心座標記憶手段(世界カラーカメラ座標記憶手段)41と、カラーカメラパラメータ最小二乗算出手段42と、を備える。
【0094】
世界小球中心座標記憶手段(世界カラーカメラ座標記憶手段)41は、小形状体中心の世界座標系における座標を、世界小形状体中心座標として記憶するものである。
具体的には、世界小球中心座標記憶手段41は、キャリブレーションパターン100Aの小球105
iの中心点104
iの世界座標p
w(i)全体を、世界小球中心座標(世界カラーカメラ座標)p
w(i)として記憶する(ただし、iは1以上24以下の整数である)。また、小球105の中心点104全体は、同一平面上にあるため、世界特徴点座標P
w(i)(ただし、iは1以上24以下の整数である)は、Z座標がR+rであるという拘束条件を有する。これにより、カラーカメラパラメータ推定手段40は、高精度にカラーカメラパラメータを算出することができる。
【0095】
カラーカメラパラメータ最小二乗算出手段42は、カラーカメラ小球中心座標(カメラ小形状体中心座標)および世界小球中心座標(世界小形状体中心座標)により定まるカラーカメラ評価関数を最小化するカラーカメラパラメータを最小二乗法で算出するものである。
具体的には、下記の式(12)で、カラーカメラ評価関数J(R
c,T
c,F
c)を定義する。ここで、||は、ユークリッド距離を示す。なお、距離カメラ評価関数I(R
d,T
d)は、小球105
iの中心点104
iのカラーカメラ座標であるカラーカメラ小球中心座標p
c(i)および世界小球中心座標p
w(i)により定まる(ただし、iは1以上24以下の整数である)。
【0097】
ここで、式(8)および式(10)により、カラーカメラ評価関数J(R
c,T
c,F
c)を、(φ,θ,ψ,t1,t2,t3,a,F,C
u,C
v)の関数J(φ,θ,ψ,t1,t2,t3,a,F,C
u,C
v)として扱うことができる。ここで、t1はT
cのX成分であり、t2はT
cのY成分であり、t3はT
cのZ成分である。
カラーカメラパラメータ最小二乗算出手段42は、関数J(φ,θ,ψ,t1,t2,t3,a,F,C
u,C
v)を最小化する(φ,θ,ψ,t1,t2,t3,a,F,C
u,C
v)を公知の非線形最小二乗法により算出する。そして、カラーカメラ評価関数J(R
c,T
c,F
c)を最小化する、外部パラメータである回転行列R
cおよび並進ベクトルT
cおよび内部パラメータである内部パラメータ行列F
cを算出する。
このように、カラーカメラパラメータ最小二乗算出手段42は、小球105の中心点104のカラーカメラ座標であるカラーカメラ小球中心座標から、高精度にカラーカメラパラメータを算出することができる。
【0098】
以上のように、キャリブレーション装置1Aは、さらに、小球中心座標取得手段30によって、高精度にカラーカメラ座標を取得することができるため、カラーカメラ3のカラーカメラパラメータを高精度に取得することができる。これにより、共通の座標である世界座標において、距離カメラ2と、カラーカメラ3のカメラパラメータを高精度に取得することができる。そして、距離カメラ2で取得された距離マップおよびカラーカメラ3で取得されたカラー画像を、世界座標系に変換して扱うことにより、距離マップおよびカラー画像から得られた情報を統合することができる。さらに、例えば、距離マップから取得された情報に、カラー画像から取得されたテクスチャに関する情報を付与することができる。
【0099】
[第2の実施形態のキャリブレーション装置の動作]
次に、
図13を参照して、第2の実施形態におけるキャリブレーション装置1Aの動作を説明する。
距離カメラ2およびカラーカメラ3は、キャリブレーションパターン100Aを撮像する。距離カメラ2は、計測点の距離マップを取得し、取得した計測点の距離マップをキャリブレーション装置1Aに出力する。キャリブレーション装置1Aは、計測点の距離マップが入力されると、半球中心座標取得手段10および距離カメラパラメータ推定手段20によって、
図7のフローチャートに示す動作と同様の動作を行い、距離カメラパラメータを出力する。カラーカメラ3は、計測点のカラー画像を取得し、取得した計測点のカラー画像をキャリブレーション装置1Aに出力する。キャリブレーション装置1Aは、計測点のカラー画像が入力されると、以下の動作を開始する。
【0100】
ステップS21において、キャリブレーション装置1Aは、小球中心座標取得手段30によって、計測点のカラー画像を取得する。小球中心座標取得手段30により取得された計測点のカラー画像は、不図示のメモリ等によって記憶される。
【0101】
ステップS22において、キャリブレーション装置1Aは、小球中心座標取得手段30によって、不図示のメモリ等によって記憶されたカラー画像を参照して、当該カラー画像に基づいて、小球105の所定色を検出することにより、小球105の中心点104
1〜104
24のカラーカメラ座標を、カラーカメラ小球中心座標として取得する。小球中心座標取得手段30により取得されたs個のカラーカメラ小球中心座標は、不図示のメモリ等によって記憶される。
【0102】
ステップS23において、キャリブレーション装置1Aは、小球中心座標取得手段30によって、不図示のメモリ等によって記憶されたs個のカラーカメラ小球中心座標を参照して、小球105の中心点104
1〜104
24と対応付ける。そして、キャリブレーション装置1Aは、小球中心座標取得手段30によって、小球105
iの中心点104
iのカラーカメラ座標を、カラーカメラ小球中心座標p
c(i)として取得する(ただし、iは1以上24以下の整数である)。小球中心座標取得手段30によりカラーカメラ小球中心座標p
c(i)(ただし、iは1以上24以下の整数である)として取得されたカラーカメラ小球中心座標は、不図示のメモリ等によって記憶される。
【0103】
ステップS24において、キャリブレーション装置1Aは、カラーカメラパラメータ推定手段40において、世界小球中心座標記憶手段41に予め記憶しておいたs個の世界小球中心座標p
w(i)、および、不図示のメモリ等によって記憶されたカラーカメラ小球中心座標p
c(i)(ただし、iは1以上24以下の整数である)を参照する。キャリブレーション装置1Aは、カラーカメラパラメータ推定手段40において、式(12)で定義されるカラーカメラ評価関数J(R
c,T
c,F
c)を最小化する回転行列R
c、並進ベクトルT
c、および、内部パラメータ行列F
cを、公知の非線形最小二乗法により算出する。そして、キャリブレーション装置1Aは、カラーカメラパラメータ推定手段40において、カラーカメラパラメータ最小二乗算出手段42によって、算出した回転行列R
c、並進ベクトルT
c、および、内部パラメータ行列F
cを、カラーカメラパラメータとして出力する。
ステップS24の処理の終了後、キャリブレーション装置1Aは、動作を終了する。
【0104】
上記の第1および第2本実施形態に係るキャリブレーション装置1,1Aは、は、CPU(Central Processing Unit)、記憶手段(例えば、メモリ、ハードディスク)等のハードウェア資源を備えるコンピュータを、前記した各手段として協調動作させるための、それぞれキャリブレーションプログラムによって実現することもできる。このプログラムは、通信回線を介して配布してもよく、光ディスクや磁気ディスク、フラッシュメモリ等の記録媒体に書き込んで配布してもよい。
【0105】
(変形例)
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能であり、例えば、次の(a)〜(d)のようなものがある。
(a)第2の実施形態において、カラーカメラパラメータ推定手段40は、カラーカメラパラメータ最小二乗算出手段42にて、公知の非線形最小二乗法により、カラーカメラパラメータを算出するかわりに、非特許文献1に記載の手法により、カラーカメラパラメータを算出することもできる。これにより、小球105の中心点104の総数が比較的少ない場合に、カラーカメラパラメータを高精度に取得することができる。
(b)第1および第2の実施形態の投票手段12における、所定のピッチ間隔は、任意に設定できるようにしてもよい。投票手段12が使用するメモリの容量等により定まる許容範囲内で、この所定のピッチ間隔を最も小さく設定することにより、上位抽出手段13が抽出するカメラ中心座標の精度を高めることができる。
(c)第1および第2の実施形態の投票手段12は、各計測点からの距離が、R−CからR+Cであるカメラ座標点に投票してもよい。ただし、Cは所定の閾値であり、Cを任意に設定できるようにしてもよい。この所定の閾値Cを、所定のピッチ間隔と同程度に設定することにより、第1および第2の実施形態と同様に、上位抽出手段13が抽出するカメラ中心座標の精度を高めることができる。
(d)第1および第2実施形態に係るキャリブレーションパターン100、100Aにおいて、球形状半径Rの球面が平面板101と交わり、球形状は平面板101に関していずれか一方の側にある当該球面の部分であってもよい。ここで、特徴点は、当該球面の中心点である。そして、球形状の頂点に、小形状体として、半径Rより小さい半径rの小球を配置してもよい。これにより、球形状を平面板101により安定的に配置する、または、より多くの球形状体の立体表面の計測点を確保するようにキャリブレーションパターン100,100Aを構成することができる。なお、キャリブレーションパターン100、100Aは、凸の球形状として説明したが、例えば、半球であれば凹の球形状であっても構わない。