(57)【要約】      （修正有）【課題】３次元構造が既知なる校正指標を使用せずにステレオカメラや多眼カメラを校正することができるカメラパラメータ算出装置を提供する。【解決手段】１又は複数のカメラ１０２，１０３の撮影空間に含まれる複数の３次元点の各々の３次元位置を表す３次元点群データを取得する点群取得器１０７と、３次元点群データと各カメラの初期カメラパラメータとに基づいて、複数の３次元点の各々について１又は複数のカメラで撮影した個々の画像における対応点を求め、各カメラの初期カメラパラメータと個々の画像における対応点における画素値とに基づいて、各カメラのカメラパラメータを算出するカメラパラメータ算出器１０８と、算出された各カメラのカメラパラメータを出力するカメラパラメータ出力器１０９と、を備える。【選択図】図１
2018044942.tif 000002
【特許請求の範囲】
【請求項１】
１又は複数のカメラに共通の撮影空間に含まれる複数の３次元点の３次元座標を表す３次元点群データを取得する点群取得器と、
前記３次元点群データと前記１又は複数のカメラの１又は複数の初期カメラパラメータとに基づいて、前記複数の３次元点の各々について前記１又は複数のカメラで撮影した１又は複数の画像における対応点の画像座標を算出し、前記１又は複数の画像における前記画像座標における画素値とに基づいて、前記１又は複数のカメラの前記１又は複数のカメラパラメータを算出するカメラパラメータ算出器と、
前記１又は複数のカメラパラメータを出力するカメラパラメータ出力器を含み、
前記１又は複数のカメラ、前記１又は複数の初期カメラパラメータ、前記１又は複数の画像、前記１又は複数のカメラパラメータは１対１対応する
カメラパラメータ算出装置。
【請求項２】
前記画像座標の算出は、前記カメラパラメータ算出器が前記複数の３次元座標を、前記１または複数のカメラに対応する前記１または複数の初期カメラパラメータに基づいて前記１または複数のカメラに対応する画像における画像座標への変換を含む、
請求項１に記載のカメラパラメータ算出装置。
【請求項３】
前記１又は複数のカメラは、２つのカメラを含み、
前記カメラパラメータ算出器は、複数の差に基づいて前記カメラパラメータを算出し、
前記複数の差の各々は、
前記複数の３次元点のうちの１つの３次元点について前記２つカメラに含まれる第１カメラで撮影した第１画像における対応点における画素値と、
前記１つの３次元点について前記２つカメラに含まれる第２カメラで撮影した第２画像における対応点における画素値と、の差である、
請求項１又は２に記載のカメラパラメータ算出装置。
【請求項４】
前記差は、前記画素値の差の絶対値である、
請求項３に記載のカメラパラメータ算出装置。
【請求項５】
前記差は、前記画素値の差の２乗値である、
請求項３に記載のカメラパラメータ算出装置。
【請求項６】
前記１又は複数のカメラは、２以上のカメラであり、
前記カメラパラメータ算出器は、複数の差に基づいて前記カメラパラメータを算出し、
前記複数の差の各々は、
前記複数の３次元点のうちの１つの３次元点について前記２以上のカメラで撮影した個々の画像における対応点での画素値のうち１つの画素値と
当該画素値の平均値と、の差である、
請求項１又は２に記載のカメラパラメータ算出装置。
【請求項７】
前記差は、前記画素値と前記平均値との差の絶対値である、
請求項６に記載のカメラパラメータ算出装置。
【請求項８】
前記差は、前記画素値と前記平均値との差の２乗値である、
請求項６に記載のカメラパラメータ算出装置。
【請求項９】
前記１又は複数のカメラは、２以上のカメラであり、
前記カメラパラメータ算出器は、同じ３次元点に対応する前記個々の画像における対応点の近傍画素における画素値パターンの類似度に基づいて前記カメラパラメータを算出する、
請求項１又は２に記載のカメラパラメータ算出装置。
【請求項１０】
前記カメラパラメータ算出器は、複数の正規化相互相関に基づいてカメラパラメータを算出し、前記複数の正規化相互相関の各々は、前記複数の３次元点のうちの１つの３次元点について前記２以上のカメラで撮影した個々の画像における対応点の近傍に含まれる画素値の相関である、
請求項９に記載のカメラパラメータ算出装置。
【請求項１１】
前記カメラパラメータ算出器は、前記複数の３次元点のうち、少なくとも何れか１つの画像において離間距離が閾値以下である複数の対応点が求まった３次元点を、前記カメラパラメータの算出から除外する、
請求項１から１０の何れか１項に記載のカメラパラメータ算出装置。
【請求項１２】
前記カメラパラメータ算出器は、前記複数の３次元点のうち、前記１又は複数の画像のうちの少なくとも１つの画像の対応点における輝度勾配が閾値より小さい１又は複数の３次元点を除いた３次元点から前記カメラパラメータを算出する、
請求項１から１０の何れか１項に記載のカメラパラメータ算出装置。
【請求項１３】
前記３次元点群データは、所定の測距視点から出射された測定光の反射に基づいて、前記複数の３次元点の３次元位置を表し、
前記カメラパラメータ算出器は、前記複数の３次元点に含まれる２つの３次元点であって、当該２つの３次元点間の距離が閾値より大きく、かつ当該２つの３次元点への前記測定光の方向ベクトルのなす角が閾値より小さい２つの３次元点を、前記カメラパラメータの算出から除外する、
請求項１から１０の何れか１項に記載のカメラパラメータ算出装置。
【請求項１４】
前記３次元点群データは、所定の測距視点から出射された測定光の反射に基づいて、前記複数の３次元点の３次元位置と各３次元点からの当該測定光の戻り光の強度値とを表し、
前記カメラパラメータ算出器は、前記複数の３次元点のうち、前記測距視点から所定近傍内に見えてかつ前記強度の差が第１の閾値と第２の閾値とで決まる範囲内にある複数の３次元点のみを用いて前記カメラパラメータを算出する、
請求項１から１０の何れか１項に記載のカメラパラメータ算出装置。
【請求項１５】
前記３次元点群データは、３次元レーザースキャナによって前記複数の３次元点を測距して得たデータである、
請求項１から１４の何れか１項に記載のカメラパラメータ算出装置。
【請求項１６】
前記３次元点群データは、所定の測距視点から出射された測定光の反射と当該測距視点からのカラー撮影とに基づいて、前記複数の３次元点の３次元位置と各３次元点にある物体の色とを表し、
前記カメラパラメータ算出器は、前記複数の３次元点のうち、前記測距視点から所定近傍内に見えてかつ前記物体の色の差が第１の閾値と第２の閾値とで決まる範囲内にある複数の３次元点のみを用いて前記カメラパラメータを算出する、
請求項２から１０の何れか１項に記載のカメラパラメータ算出装置。
【請求項１７】
前記３次元点群データは、所定の測距視点から出射された測定光の反射と当該測距視点からのカラー撮影とに基づいて、前記複数の３次元点の３次元位置と各３次元点にある物体の色とを表し、
前記１又は複数のカメラの各々はカラーカメラであり、
前記カメラパラメータ算出器は、複数の差に基づいて前記１又は複数のカメラのうちの１つのカメラのカメラパラメータを算出し、前記複数の差の各々は、前記複数の３次元点のうちの１つの３次元点について前記１つのカメラで撮影した画像における対応点での画素値によって表される色と、前記３次元点群データによって表される前記１つの３次元点にある物体の色との差である、
請求項１に記載のカメラパラメータ算出装置。
【請求項１８】
前記点群取得器は、測距空間をカラー撮影するカラーカメラ付きの３次元レーザースキャナから、前記３次元点群データを取得する、
請求項１６又は１７に記載のカメラパラメータ算出装置。
【請求項１９】
１又は複数のカメラの撮影空間に含まれる複数の３次元点の各々の３次元位置を表す３次元点群データを取得する点群取得ステップと、
前記３次元点群データと前記各カメラの初期カメラパラメータとに基づいて、前記複数の３次元点の各々について前記１又は複数のカメラで撮影した個々の画像における対応点を求め、前記各カメラの初期カメラパラメータと前記個々の画像における前記対応点における画素値とに基づいて、前記各カメラのカメラパラメータを算出するカメラパラメータ算出ステップと、
前記算出された前記各カメラの前記カメラパラメータを出力するカメラパラメータ出力ステップと、
を含むカメラパラメータ算出方法。
【請求項２０】
１又は複数のカメラの撮影空間に含まれる複数の３次元点の各々の３次元位置を表す３次元点群データを取得する点群取得ステップと、
前記３次元点群データと前記各カメラの初期カメラパラメータとに基づいて、前記複数の３次元点の各々について前記１又は複数のカメラで撮影した個々の画像における対応点を求め、前記各カメラの初期カメラパラメータと前記個々の画像における前記対応点における画素値とに基づいて、前記各カメラのカメラパラメータを算出するカメラパラメータ算出ステップと、
前記算出された前記各カメラの前記カメラパラメータを出力するカメラパラメータ出力ステップと、
をコンピュータに実行させるプログラム。
【請求項２１】
１又は複数のカメラの撮影空間に含まれる複数の３次元点の各々の３次元位置を表す３次元点群データを取得する点群取得ステップと、
前記３次元点群データと前記各カメラの初期カメラパラメータとに基づいて、前記複数の３次元点の各々について前記１又は複数のカメラで撮影した個々の画像における対応点を求め、前記各カメラの初期カメラパラメータと前記個々の画像における前記対応点における画素値とに基づいて、前記各カメラのカメラパラメータを算出するカメラパラメータ算出ステップと、
前記算出された前記各カメラの前記カメラパラメータを出力するカメラパラメータ出力ステップと、
をコンピュータに実行させるプログラムを記録しているコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラパラメータを算出する技術に関する。
【背景技術】
【０００２】
カメラパラメータの算出、すなわちカメラの校正を行うために、３次元空間中の３次元座標と２次元画像中の画素位置を対応づける必要がある。この目的のために、従来、形状が既知のチェッカーパタンなどの校正指標を撮影し、チェッカーパタンの交点を検出することで、３次元座標と２次元画像中の画素位置を対応付けることが行われている（例えば、特許文献１、２、及び非特許文献１、２を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許４６８１８５６号公報
【特許文献２】特許５５８０１６４号公報
【非特許文献】
【０００４】
【非特許文献１】Roger Y. Tsai. A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses. IEEE Journal of Robotics and Automation. Vol. 3, pp.323-344, 1987
【非特許文献２】Zhengyou Zhang. A flexible new technique for camera calibration. IEEE Transactions on Pattern Analysis and Machine Intelligence. Vol. 22, pp.1330-1334, 2000
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のカメラ校正では、３次元構造が既知の校正指標を使用する。このため、加工精度の高い校正指標と広い撮影空間を必要とする。また、このような広角カメラの校正においては、校正指標を視野全体に配置するために、大掛かりな校正設備が必要となる。
【０００６】
本発明は、上記課題に鑑みて創案されたもので、３次元構造が既知なる校正指標を使用せずに、単眼カメラ、及び、ステレオカメラや多眼カメラを校正することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、開示される一態様に係るカメラパラメータ算出装置は、１又は複数のカメラに共通の撮影空間に含まれる複数の３次元点の３次元座標を表す３次元点群データを取得する点群取得器と、前記３次元点群データと前記１又は複数のカメラの１又は複数の初期カメラパラメータとに基づいて、前記複数の３次元点の各々について前記１又は複数のカメラで撮影した１又は複数の画像における対応点の画像座標を算出し、前記１又は複数の画像における前記画像座標における画素値とに基づいて、前記１又は複数のカメラの前記１又は複数のカメラパラメータを算出するカメラパラメータ算出器と、前記１又は複数のカメラパラメータを出力するカメラパラメータ出力器を含み、前記１又は複数のカメラ、前記１又は複数の初期カメラパラメータ、前記１又は複数の個々の画像、前記１又は複数のカメラパラメータは１対１対応する。
【発明の効果】
【０００８】
本開示に係るカメラ校正技術によれば、３次元座標をカメラパラメータで画像上に投影した画素座標の画素値に基づいてカメラパラメータを評価することにより、３次元構造が既知なる校正指標を使用せずに、カメラパラメータを算出すること、すなわちカメラを校正することができる。このため、３次元空間中の３次元座標と２次元画像中の画素位置の対応付けを行わずに、カメラを校正することができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係るカメラパラメータ算出装置の構成の一例を示すブロック図。
【図２】実施の形態１に係るカメラパラメータ算出装置の動作の一例を示すフローチャート。
【図３】実施の形態１に係るＣＧ（コンピュータグラフィクス）画像の一例を示す図。
【図４】Ｃｘの正しいカメラパラメータ近傍での評価値を示す図。
【図５】Ｃｙの正しいカメラパラメータ近傍での評価値を示す図。
【図６】ｆの正しいカメラパラメータ近傍での評価値を示す図。
【図７】ｄ’ｘの正しいカメラパラメータ近傍での評価値を示す図。
【図８】Ｒｘの正しいカメラパラメータ近傍での評価値を示す図。
【図９】Ｒｙの正しいカメラパラメータ近傍での評価値を示す図。
【図１０】Ｒｚの正しいカメラパラメータ近傍での評価値を示す図。
【図１１】Ｔｘの正しいカメラパラメータ近傍での評価値を示す図。
【図１２】Ｔｙの正しいカメラパラメータ近傍での評価値を示す図。
【図１３】Ｔｚの正しいカメラパラメータ近傍での評価値を示す図。
【図１４】実施の形態２に係るカメラパラメータ算出装置の動作の一例を示すフローチャート。
【図１５】実施の形態３に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図１６】実施の形態４に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図１７】実施の形態５に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図１８】実施の形態６に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図１９】実施の形態７に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図２０】実施の形態８に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図２１】実施の形態９に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図２２】実施の形態１０に係るカメラパラメータ算出装置のブロック図。
【図２３】実施の形態１０に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図２４】実施の形態１１に係るカメラパラメータ算出処理の一例を示すフローチャート。
【図２５】実施の形態１１に係る点群選択マスク作成処理の一例を示すフローチャート。
【図２６】魚眼カメラによるチェッカーパタンの撮影画像。
【発明を実施するための形態】
【００１０】
（本開示の基礎となった知見）
本発明者は、背景技術の欄において記載したカメラ校正に関し、以下の問題が生じることを見出した。
【００１１】
カメラ校正を行うために、カメラが存在する３次元空間中の着目点の３次元座標と、前記カメラで前記３次元空間を撮影して得た２次元画像中の前記着目点が投影される画素位置（以下、対応点と言う）を対応づける必要がある。この目的のために、従来、形状が既知のチェッカーパタンなどの校正指標を撮影し、チェッカーパタンの交点を検出することで、３次元座標と２次元画像中の画素位置を対応付けることが行われている。ここで、前記３次元空間中の３次元座標を世界座標と言い、前記２次元画像中の２次元座標を画像座標と言う。
【００１２】
例えば、図２６は、箱状の被写体の内側に一定間隔でチェッカーパタンを描画した校正指標である。２次元画像中の画素位置については、図２６に示すように、例えば画像の左上を原点とした画像座標系の交点位置をオペレータが読み取る。対応する３次元座標については、撮影に使用したチェッカーパタンから得る。具体的には、特定の位置に世界座標の原点とＸ、Ｙ、Ｚの３軸を定め、着目交点が原点から何番目のチェッカーパタン交点になっているかによって３次元座標を同定できる。
【００１３】
カメラパラメータに基づく座標変換により、世界座標上の点を画像座標上に投影できる。言い換えれば、カメラパラメータを用いて世界座標上の点に対応するカメラ画像上の計算上の対応点を求めることができる。逆に、現に対応している世界座標（Ｘ，Ｙ，Ｚ）と画像座標（ｘ，ｙ）との組から、カメラパラメータを算出できる。ピンホールカメラを例として、カメラパラメータによる世界座標から画像座標への投影を式１に示す。
【００１４】
【数１】
2018044942.tif 000003
【００１５】
このピンホールカメラモデルのカメラパラメータは、画像中心のｘ成分とｙ成分をＣｘとＣｙ、焦点距離をｆ、撮像素子の１画素のｘとｙ方向の長さをそれぞれｄ’ｘ、ｄ’ｙ、カメラの世界座標の基準に対する３行３列の回転行列をＲ（右下添え字の１０の位は行を、１の位は列を表す）、カメラの世界座標の基準に対する並進のｘ、ｙ、ｚ成分をそれぞれＴｘ、Ｔｙ、Ｔｚ、自由度のない媒介変数をｈとする。また、歪曲収差等の歪みは、歪みのない画像座標（ｘｕ，ｙｕ）から、歪みのある画像座標（ｘ，ｙ）への変換を表すΦ（ｘｄ，ｙｄ）を用いることにより表現できる（式２）。
【００１６】
【数２】
2018044942.tif 000004
【００１７】
従来の複数のカメラ校正技術とその課題について、順に説明する。
【００１８】
非特許文献１では、世界座標と画像座標の組に対し、世界座標をカメラパラメータで画像上に投影した点と、対応する画像上の点との距離（再投影誤差）の総和を最小化することによりカメラを校正する。このため、３次元空間中の３次元座標と２次元画像中の画素位置を対応づける必要がある。
【００１９】
非特許文献２では、複数の異なる奥行きに校正指標を設置し、１つのカメラでそれぞれ撮影する。これにより取得した平面上の世界座標と画像座標の組に対し、世界座標をカメラパラメータで画像上に投影した点と、対応する画像上の点との距離の二乗の総和を最小化することによりカメラを校正する。このため、３次元空間中の３次元座標と２次元画像中の画素位置を対応づける必要がある。
【００２０】
特許文献１では、３次元座標と２次元画像中の画素値が複数フレーム間に渡って対応付けられた平面上の校正点の情報を入力する。世界座標上の平面に存在する校正点と、画像座標上の校正点が平面射影変換になるように、カメラパラメータを決定する。このため、３次元空間中の３次元座標と２次元画像中の画素位置を対応づける必要がある。
【００２１】
特許文献２では、３次元レーザースキャナとステレオカメラとで、２組の３次元位置を取得する。この２組の３次元位置を対応付け、ステレオカメラより測距精度が高い３次元レーザースキャナの３次元位置に基づいて、ステレオカメラを校正する。３次元点同士の対応付けをマニュアルで行うことは煩雑であり、自動化する場合は専用の校正指標が必要である。また、基線長が短い小型のステレオカメラにおいて、カメラパラメータに誤差を含む場合、基線長が長いステレオカメラに比べ、測距精度の低下が大きい。そのため、被写体距離と比べて基線長が短い場合、３次元レーザースキャナの３次元位置と誤対応する可能性がある。
【００２２】
車やドローン等の移動体における周辺監視や運転支援等のために、ステレオカメラが利用される。このような目的の場合、広角なカメラが好適である。これらの測距を目的とした一般的なステレオカメラは、製造時の校正が必要である。また、経年変化や衝撃による歪みに対して、カメラの再校正が必要となる。
【００２３】
通常、製造時の校正および、再校正は専用の校正設備で実施する。これらの校正では、３次元構造が既知の校正指標を使用する。このため、加工精度の高い校正指標と広い撮影空間を必要とする。また、このような広角カメラの校正においては、校正指標を視野全体に配置するために、大掛かりな校正設備が必要となる。
【００２４】
本開示は、上記課題に鑑みて創案されたもので、３次元構造が既知なる校正指標を使用せずに、各種のカメラを校正することを目的とする。
【００２５】
本開示の一態様に係るカメラパラメータ算出装置は、１又は複数のカメラに共通の撮影空間に含まれる複数の３次元点の３次元座標を表す３次元点群データを取得する点群取得器と、前記３次元点群データと前記１又は複数のカメラの１又は複数の初期カメラパラメータとに基づいて、前記複数の３次元点の各々について前記１又は複数のカメラで撮影した１又は複数の画像における対応点の画像座標を算出し、前記１又は複数の画像における前記画像座標における画素値とに基づいて、前記１又は複数のカメラの前記１又は複数のカメラパラメータを算出するカメラパラメータ算出器と、前記１又は複数のカメラパラメータを出力するカメラパラメータ出力器を含み、前記１又は複数のカメラ、前記１又は複数の初期カメラパラメータ、前記１又は複数の個々の画像、前記１又は複数のカメラパラメータは１対１対応する。
【００２６】
この構成によれば、３次元座標をカメラパラメータで画像上に投影した画素座標の画素値に基づいてカメラパラメータを評価するので、３次元構造が既知なる校正指標を使用せずに、カメラパラメータを算出すること、すなわちカメラを校正することができる。このため、３次元空間中の３次元座標と２次元画像中の画素位置の対応付けを行わずに、カメラを校正することができる。
【００２７】
また、前記画像座標の算出は、前記カメラパラメータ算出器が前記複数の３次元座標を、前記１または複数のカメラに対応する前記１または複数の初期カメラパラメータに基づいて前記１または複数のカメラに対応する画像における画像座標への変換を含んでもよい。
【００２８】
この構成によれば、例えば、ピンホールカメラモデルなど、カメラモデルに応じたカメラパラメータを媒介とする座標変換による定型的な手順で、前記３次元座標から前記画像座標を算出できる。
【００２９】
また、前記１又は複数のカメラは、２つのカメラを含み、前記カメラパラメータ算出器は、複数の差に基づいて前記カメラパラメータを算出し、前記複数の差の各々は、前記複数の３次元点のうちの１つの３次元点について前記２つカメラに含まれる第１カメラで撮影した第１画像における対応点における画素値と、前記１つの３次元点について前記２つカメラに含まれる第２カメラで撮影した第２画像における対応点における画素値の差であってもよい。前記差は、前記画素値の差の絶対値であってもよく、前記画素値の差の２乗値であってもよい。
【００３０】
この構成によれば、前記カメラパラメータが正しければ、前記個々の画像における対応点には、１つの３次元点が正しく投影されるので、前記複数の差はいずれも０に近づく。つまり、前記複数の差の累計が大きいことは、前記個々の画像における対応点の誤差が大きい、つまり、前記カメラパラメータの誤差が大きいことを意味する。そのため、例えば、前記差の累計で定義される評価関数を導入し、勾配降下法などの、周知の手順で、当該評価関数を小さくする方向に前記カメラパラメータを更新する。これにより、前記カメラパラメータの誤差が縮小し、カメラ校正を実施できる。
【００３１】
また、前記１又は複数のカメラは、２以上のカメラであり、前記カメラパラメータ算出器は、複数の差に基づいて前記カメラパラメータを算出し、前記複数の差の各々は、前記複数の３次元点のうちの１つの３次元点について前記２以上のカメラで撮影した個々の画像における対応点での画素値のうち１つの画素値と当該画素値の平均値との差であってもよい。前記差は、前記画素値の差の絶対値であってもよく、前記画素値の差の２乗値であってもよい。
【００３２】
この構成によれば、前記カメラパラメータが正しければ、前記個々の画像における対応点には、１つの３次元点が正しく投影されるので、前記複数の差はいずれも０に近づく。つまり、前記複数の差の累計が大きいことは、前記個々の画像における対応点の誤差が大きい、つまり、前記カメラパラメータの誤差が大きいことを意味する。そのため、例えば、前記差の累計で定義される評価関数を導入し、勾配降下法などの、周知の手順で、当該評価関数を小さくする方向に前記カメラパラメータを更新する。これにより、前記カメラパラメータの誤差が縮小し、カメラ校正を実施できる。
【００３３】
また、前記１又は複数のカメラは、２以上のカメラであり、前記カメラパラメータ算出器は、同じ３次元点に対応する前記個々の画像における対応点の近傍画素における画素値パターンの類似度に基づいて前記カメラパラメータを算出してもよい。具体的に、前記カメラパラメータ算出器は、複数の正規化相互相関に基づいてカメラパラメータを算出し、前記複数の正規化相互相関の各々は、前記複数の３次元点のうちの１つの３次元点について前記２以上のカメラで撮影した個々の画像における対応点の近傍に含まれる画素値の相関であってもよい。
【００３４】
この構成によれば、前記個々の画像にゲイン差（例えば、露出の不一致による全体的な輝度差）がある場合でも、画素値パターンの類似に基づいて、当該ゲイン差を排除して、対応点の誤差の大きさを知ることができる。
【００３５】
また、前記カメラパラメータ算出器は、前記複数の３次元点のうち、少なくとも何れか１つの画像において離間距離が閾値以下である複数の対応点が求まった３次元点を、前記カメラパラメータの算出から除外してもよい。
【００３６】
この構成において、離間距離が閾値以下である複数の対応点は、カメラから略一方向に延びる領域に存在する複数の３次元点の対応点である。そのため、後方の３次元物体が前方の３次元物体によって遮蔽されている可能性がある。そこで、前記カメラパラメータの算出に際し、離間距離が閾値以下である複数の対応点が求まった３次元点を、前記カメラパラメータの算出から除外する。これにより、本来とは異なる画素値を表している可能性がある対応点の画素値を評価値の算出から除外することができ、遮蔽による影響を排除して評価値を算出できる。
【００３７】
また、前記カメラパラメータ算出器は、前記複数の３次元点のうち、前記１又は複数の画像のうちの少なくとも１つの画像の対応点における輝度勾配が閾値より小さい１又は複数の３次元点を除いた３次元点から前記カメラパラメータを算出してもよい。
【００３８】
この構成によれば、カメラ画像において輝度勾配の小さい領域に位置する３次元点を除いて、カメラパラメータを算出することにより、評価値への寄与が小さい３次元点による計算を省き、計算量を低減することができる。
【００３９】
前記３次元点群データは、所定の測距視点から出射された測定光の反射に基づいて、前記複数の３次元点の３次元位置を表し、前記カメラパラメータ算出器は、前記複数の３次元点に含まれる２つの３次元点であって、当該２つの３次元点間の距離が閾値より大きく、かつ当該２つの３次元点への前記測定光の方向ベクトルのなす角が閾値より小さい２つの３次元点を、前記カメラパラメータの算出から除外してもよい。
【００４０】
この構成において、前記２つの３次元点は、前記３次元点群データの物体の境界や表面凹凸の大きい領域に位置するギャップ領域であり、画像の対応点での画素値にもギャップが生じ易い。そのような対応点の画素値を評価値の算出に用いると、対応点の誤差に対して評価値が鋭敏に変化し過ぎることで、カメラパラメータの収束性を悪化させる懸念がある。このような問題に対し、上記の構成では、物体の境界や表面凹凸の大きい領域を避け、適した領域の画素値を用いて評価値を算出できる。
【００４１】
また、前記３次元点群データは、所定の測距視点から出射された測定光の反射に基づいて、前記複数の３次元点の３次元位置と各３次元点からの当該測定光の戻り光の強度値とを表し、前記カメラパラメータ算出器は、前記複数の３次元点のうち、前記測距視点から所定近傍内に見えてかつ前記強度の差が第１の閾値と第２の閾値とで決まる範囲内にある複数の３次元点のみを用いて前記カメラパラメータを算出してもよい。
【００４２】
この構成によれば、前記測定光の強度、つまり物体の反射率が滑らかに変化する範囲内にある複数の３次元点のみを用いて前記カメラパラメータを算出できる。例えば、物体の境界などで物体の反射率にギャップがある領域では、画像の対応点での画素値にもギャップが生じ易い。そのような対応点の画素値を評価値の算出に用いると、対応点の誤差に対して評価値が鋭敏に変化し過ぎることで、カメラパラメータの収束性を悪化させる懸念がある。このような問題に対し、上記の構成では、物体の反射率に過度の差異がある領域を避け、適した領域の画素値を用いて評価値を算出できる。また、例えば、単調な連続面など、反射率の変化がなさ過ぎる領域も、カメラパラメータの収束を困難にするため、評価値の算出から除外される。
【００４３】
また、前記３次元点群データは、３次元レーザースキャナによって前記複数の３次元点を測距して得たデータであってもよい。
【００４４】
この構成によれば、前記３次元点群データを、一般的に利用が容易な３次元レーザースキャナから取得することができる。
【００４５】
また、前記３次元点群データは、所定の測距視点から出射された測定光の反射と当該測距視点からのカラー撮影とに基づいて、前記複数の３次元点の３次元位置と各３次元点にある物体の色とを表し、前記カメラパラメータ算出器は、前記複数の３次元点のうち、前記測距視点から所定近傍内に見えてかつ前記物体の色の差が第１の閾値と第２の閾値とで決まる範囲内にある複数の３次元点のみを用いて前記カメラパラメータを算出してもよい。
【００４６】
この構成によれば、物体の色が滑らかに変化する範囲内にある複数の３次元点のみを用いて前記カメラパラメータを算出できる。例えば、物体の境界などで物体の色にギャップがある領域では、画像の対応点での色にもギャップが生じる。そのような対応点の画素値を評価値の算出に用いると、対応点の誤差に対して評価値が鋭敏に変化し過ぎることで、カメラパラメータの収束性を悪化させる懸念がある。このような問題に対し、上記の構成では、物体の色に過度の差異がある領域を避け、適した領域の画素値を用いて評価値を算出できる。また、例えば、単調な連続面など、色の変化がなさ過ぎる領域も、カメラパラメータの収束を困難にするため、評価値の算出から除外される。
【００４７】
また、前記３次元点群データは、所定の測距視点から出射された測定光の反射と当該測距視点からのカラー撮影とに基づいて、前記複数の３次元点の３次元位置と各３次元点にある物体の色とを表し、前記１又は複数のカメラの各々はカラーカメラであり、前記カメラパラメータ算出器は、複数の差に基づいて前記１又は複数のカメラのうちの１つのカメラのカメラパラメータを算出し、前記複数の差の各々は、前記複数の３次元点のうちの１つの３次元点について前記１つのカメラで撮影した画像における対応点での画素値によって表される色と、前記３次元点群データによって表される前記１つの３次元点にある物体の色との差であってもよい。
【００４８】
この構成によれば、前記３次元点群データによって表される物体の色の情報を用いることにより、単一のカメラを校正し、また、複数のカメラを１台ずつ校正することができる。
【００４９】
また、前記点群取得器は、測距空間をカラー撮影するカラーカメラ付きの３次元レーザースキャナから、前記３次元点群データを取得してもよい。
【００５０】
この構成によれば、前記３次元点群データを、３次元レーザースキャナから、色情報付きで取得することができる。
【００５１】
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラムおよび記録媒体の任意な組み合わせで実現されてもよい。
【００５２】
（実施の形態１）
以下、本発明の実施の形態を、図面を参照しながら説明する。本発明は、１つ以上のカメラにおいて実施可能であるが、説明を簡単にするために、ここでは、左カメラと右カメラからなるステレオカメラの例を用いて説明する。
【００５３】
図１は、実施の形態１のカメラパラメータ算出装置の機能的な構成の一例を示すブロック図である。図１において、カメラパラメータ算出装置１０１は、フレームメモリ１０４、初期カメラパラメータ格納器１０５、点群取得器１０７、カメラパラメータ算出器１０８、及びカメラパラメータ出力器１０９を含む。カメラパラメータ算出装置１０１は、３次元レーザースキャナ１０６を用いて、左カメラ１０２及び右カメラ１０３の校正を行う。なお、本明細書においてカメラを校正するとは、実機のカメラのカメラパラメータを求めることを意味する。従って、本明細書のカメラパラメータ算出装置は、カメラ校正装置と同義である。
【００５４】
図１に示される各構成要素の動作について、以下に説明する。
【００５５】
左カメラ１０２は撮影空間である第１空間を撮影し、撮影した第１画像をフレームメモリ１０４に送付する。
【００５６】
右カメラ１０３は撮影空間である第２空間を撮影し、撮影した第２画像をフレームメモリ１０４に送付する。第１空間と第２空間は共通の空間である第３空間を含む。第３空間は１以上の物体かつ／または１以上の生物を含んでもよい。カメラ位置による被写体表面の見え方（ある点における色）が変わらない観点で、ランバート反射により近似できる被写体が好適である。
【００５７】
フレームメモリ１０４は第１画像及び第２画像を受け取り、格納する。
【００５８】
初期カメラパラメータ格納器１０５は、初期カメラパラメータを予め保持する。初期カメラパラメータは、例えば（式１）に含まれるカメラパラメータであって、ステレオカメラを設計する際に設定かつ／または使用した設計値であってもよい。あるいは、前述したＴｓａｉ（非特許文献１）やＺｈａｎｇ（非特許文献２）の方式等に従い、校正指標を使用して、対応関係にある世界座標と画像座標との組をマニュアル操作で必要数取得することにより、粗い精度でカメラパラメータを推定してもよい。ここで、Ｔｓａｉの方式では、最低１３の世界座標と画像座標の組が必要である。また、Ｚｈａｎｇの方式では、最低３回の撮影と最低１３の世界座標と画像座標の組が必要である。
【００５９】
３次元レーザースキャナ１０６はレーザー光を上述した第３空間を含む空間に走査し、第３空間を含む空間に含まれる複数の点、すなわち、複数の３次元点、のそれぞれの３次元位置を測定する。この測定したＮ点の３次元位置を世界座標（Ｘ，Ｙ，Ｚ）で表すデータを３次元点群データと呼ぶ。３次元レーザースキャナ１０６は点群取得器１０７に送付する。
【００６０】
点群取得器１０７は、３次元レーザースキャナ１０６から、３次元点群データを受け取る。
【００６１】
カメラパラメータ算出器１０８は、前記フレームメモリ１０４から第１画像及び第２画像、初期カメラパラメータ格納器１０５から初期カメラパラメータ、点群取得器１０７から３次元点群をそれぞれ受け取り、図２で示す手順でカメラパラメータを求める。
【００６２】
カメラパラメータ出力器１０９は、カメラパラメータ算出器１０８で算出されたカメラパラメータを出力する。
【００６３】
カメラパラメータ算出装置１０１は、例えば、プロセッサ、メモリ、インタフェース回路などからなるコンピュータ装置（不図示）によって実現され、カメラパラメータ算出装置１０１の構成要素は、プロセッサがメモリにあらかじめ記録されたプログラムを実行することによって達成されるソフトウェア機能であってもよい。また、カメラパラメータ算出装置１０１は、上述した動作を行う専用のハードウェア回路（不図示）によって実現されてもよい。
【００６４】
また、カメラパラメータ算出装置１０１は、必ずしも単一のコンピュータ装置で実現される必要はなく、端末装置とサーバとを含む分散処理システム（不図示）によって実現されてもよい。一例として、フレームメモリ１０４、初期カメラパラメータ格納器１０５、点群取得器１０７、カメラパラメータ出力器１０９を、端末装置に設け、カメラパラメータ算出器１０８の一部又は全部の機能をサーバで実行してもよい。この場合、構成要素間でのデータの受け渡しは、端末装置とサーバとに接続された通信回線を介して行われる。
【００６５】
図２は、カメラパラメータ算出処理Ｓ３００の一例を示すフローチャートである。
【００６６】
カメラパラメータ算出器１０８はフレームメモリ１０４に格納された左カメラ１０２が撮影した第１画像、及びフレームメモリ１０４に格納された右カメラ１０３が撮影した第２画像を受け取る（Ｓ３０１）。以下では、カメラで撮影され、当該カメラから受け取った画像を、撮影画像またはカメラ画像とも言う。
【００６７】
カメラパラメータ算出器１０８は、左カメラ１０２及び右カメラ１０３のそれぞれの初期カメラパラメータを初期カメラパラメータ格納器１０５から取得する（Ｓ３０２）。
【００６８】
点群入力器１０７は３次元レーザースキャナ１０６が測定した３次元点群データを受け取り、点群入力器１０７は３次元点群データをカメラパラメータ算出器１０８に送付し、カメラパラメータ算出器１０８は３次元点群データを受け取る（Ｓ３０３）。
【００６９】
カメラパラメータ算出器１０８は世界座標（Ｘ，Ｙ，Ｚ）から式１と式２で画像座標（ｘＬｋ，ｙＬｋ）と（ｘＲｋ，ｙＲｋ）を算出する。前記（ｘＬｋ，ｙＬｋ）は、ｋ番目の３次元点に対応する第１画像に含まれるｋ番目の対応点の画像座標であり、前記（ｘＲｋ，ｙＲｋ）は、ｋ番目の３次元点に対応する第２画像に含まれるｋ番目の対応点の画像座標である。
【００７０】
３次元レーザースキャナ１０６で得た複数の３次元点に含まれるｋ番目の３次元点に対応する第１画像に含まれる点、すなわちｋ番目の３次元点に対応する第１画像に含まれるｋ番目の対応点での画素値と、ｋ番目の３次元点に対応する第２画像に含まれる点、すなわちｋ番目の３次元点に対応する第２画像に含まれるｋ番目の対応点での画素値の差の絶対値和で定義される評価関数Ｊ（式３）を算出する（Ｓ３０４）。
【００７１】
【数３】
2018044942.tif 000005
【００７２】
ここで、Ｎは画素値を比較する３次元点の数であり、３次元レーザースキャナで取得した点の全て、あるいは、一部分を選択する。「一部分を選択する」とは、例えば、評価値Ｊの計算に影響しない、画像上の画素値が連続して同じ値を有する領域を除くことを意味してもよい。
【００７３】
ＩＬ（ｘ，ｙ）は、前記第１画像の画像座標（ｘ，ｙ）における画素値であり、ＩＲ（ｘ，ｙ）は、前記第２画像の画像座標（ｘ，ｙ）における画素値である。前記第１画像及び前記第２画像がモノクロ画像の場合、画素値は輝度値であり、前記第１画像及び前記第２画像がカラー画像の場合、画素値は色ベクトルである。なお、色ベクトルの差の絶対値は、色ベクトルの距離を意味する。色収差の影響を除くために、色ベクトルを構成する色成分のうち特定の１色の成分のみ使用してもよい。
【００７４】
３次元点群データに含まれる複数の３次元点の各々を、左カメラ１０２のカメラパラメータを用いて前記第１画像に投影し、右カメラ１０３のカメラパラメータを用いて前記第２画像に投影する。
【００７５】
ここで、投影するとは、３次元点に対応するカメラ画像上の計算上の対応点を求めることであり、具体的には、３次元点群データに含まれる複数の３次元点の各々の世界座標に対し、左カメラ１０２のカメラパラメータに基づく座標変換を行って前記第１画像上の画像座標を算出し、右カメラ１０３のカメラパラメータに基づく座標変換を行って前記第２画像上の画像座標を算出することを言う。座標変換には、例えば、式１で説明した行列計算に基づく投影を利用してもよい。画像座標は、サブピクセル精度で算出してもよく、このサブピクセル精度の画像座標に対し、画素値はバイリニアやバイキュービック等の補間計算から小数精度で算出してもよい。
【００７６】
また、評価値Ｊの計算におけるＮ点の加算に対し、画素値の差の絶対値に重み付けしてもよい。例えば、被写体の色が連続的に変化する点群の重みを重く、あるいは、物体の表面の凹凸が大きい点群の重みを軽くする。これらの重み付けは、カメラパラメータの連続的な変化に対し、評価値Ｊの変化を滑らかにし、評価値Ｊを最小化し易くする。
【００７７】
カメラパラメータの探索範囲内の評価値Ｊの算出を完了するか、評価値Ｊが閾値より小さい場合に反復計算を終了する（Ｓ３０５で終了）。一方、反復計算が継続となった場合（Ｓ３０５で継続）、カメラパラメータを探索範囲で変更する（Ｓ３０６）。前記カメラパラメータの探索範囲として、各カメラパラメータが取り得る範囲をあらかじめ設定しておく。例えば、画像中心位置Ｃｘ，Ｃｙ、焦点距離ｆ、撮像素子長さｄ’ｘ、ｄ’ｙは、それぞれ設計値の±５％とすればよい。また、カメラ位置の回転成分、Ｒｘ、Ｒｙ、Ｒｚ、および、並進移動成分はＴｘ、Ｔｙ、Ｔｚは、３次元レーザースキャナ１０６とカメラ１０２、１０３との位置関係をスケール等で計測し、角度については計測値の±１０度、並進移動については±０．２ｍとすればよい。
【００７８】
なお、ステップＳ３０４〜ステップＳ３０６の反復処理の計算時間を削減するために、前記範囲は初期カメラパラメータ近傍に限定しても良く、評価関数の勾配を用いて最急降下法などを適用してもよい。
【００７９】
最後に、上述したステップＳ３０４〜ステップ３０６の反復計算によって算出された、カメラパラメータと評価値の組から、評価値が最小のカメラパラメータを選択し、選択したカメラパラメータを出力する（Ｓ３０７）。
【００８０】
このような手順に従ってカメラの校正が可能であることを順に説明する。カメラを校正するための評価関数は、正しいカメラパラメータで評価値が最小であることが必要である。評価関数のこの性質によって、評価値を最小化することにより、正解のカメラパラメータを探索することが可能になる。
【００８１】
全て正しいカメラパラメータから、１つのカメラパラメータのみ値を変える。この時、評価値Ｊが全てのカメラパラメータで、正しいカメラパラメータを極小とする下に凸な関数形であるならば、評価関数Ｊは全カメラパラメータに対して下に凸となる。これは、１つのカメラパラメータλのみ値を変え、極値を算出することは偏微分∂Ｊ／∂λに相当し、ある点において全ての偏微分が０となることは、関数全体の全微分ｄＪ／ｄΩが０であることに相当する（式４）。
【００８２】
【数４】
2018044942.tif 000006
【００８３】
ここで、ｍはカメラパラメータの個数、λ１〜λｍは焦点距離等の個々のカメラパラメータ、Ωは個々のカメラパラメータをまとめたカメラパラメータ全体を表す。
【００８４】
カメラパラメータはカメラモデルにより異なるため、非特許文献１で示すＴｓａｉの方式で使用される１０個のカメラパラメータを例に説明する。このピンホールカメラモデルのカメラパラメータは、画像中心のｘ成分とｙ成分をＣｘとＣｙ、焦点距離をｆ、撮像素子１個のｘ方向の長さをｄ’ｘ、カメラの世界座標の基準に対する回転のｘ、ｙ、ｚ成分をそれぞれＲｘ、Ｒｙ、Ｒｚ、カメラの世界座標の基準に対する並進のｘ、ｙ、ｚ成分をそれぞれＴｘ、Ｔｙ、Ｔｚとする。この時、評価値Ｊはこれらの１０個のカメラパラメータを変数とする関数となる。
【００８５】
本方式は実際の空間を撮影して実施することも、ＣＧデータを用いて実施することもできる。以下では、一例として、ＣＧデータを用いて行うカメラ校正について説明する。
【００８６】
図３で示す駐車場を模したＣＧを作成する。右カメラは左カメラに対し、水平に１５ｍｍ離し、光軸を左カメラと平行とする。また、カメラは魚眼カメラであるとする。
【００８７】
前記のＣＧモデルに対し、全てのカメラパラメータの値が正しい状態から、右カメラの１つのカメラパラメータのみ変化させた時の評価値Ｊを算出する。これらの評価値Ｊを、横軸にカメラパラメータ値、縦軸に評価値Ｊとし、１０個のカメラパラメータについて図４〜図１３に示す。変化させるカメラパラメータはそれぞれ、図４ではＣｘ、図５ではＣｙ、図６ではｆ、図７ではｄ’ｘ、図８ではＲｘ、図９ではＲｙ、図１０ではＲｚ、図１１ではＴｘ、図１２ではＴｙ、図１３ではＴｚである。また、各カメラパラメータの正しい値は以下のとおりである。すなわち、Ｃｘは６４０ｐｉｘｅｌ、Ｃｙは４８０ｐｉｘｅｌ、ｆは１．１２ｍｍ、ｄ’ｘは２．７５μｍ、Ｒｘは９０°、Ｒｙは０°、Ｒｚは０°、Ｔｘは０ｍｍ、Ｔｙは０ｍｍ、Ｔｚは０ｍｍである。
【００８８】
図４〜図１３のいずれにおいても、正しいカメラパラメータの近傍で評価値Ｊは下に凸であり、評価値Ｊが極小となるカメラパラメータと正しいカメラパラメータは一致する。
以上のことから、本方式でカメラ校正が可能である。
【００８９】
なお、カメラが３台以上の場合、カメラ台数をｎとし、式３の評価関数Ｊを、式５に拡張すればよい。
【００９０】
【数５】
2018044942.tif 000007
【００９１】
ここで、ｉ番目のカメラ画像とｊ番目のカメラ画像に含まれるｋ番目の対応点の画像座標をそれぞれ（ｘｉｋ，ｙｉｋ）と（ｘｊｋ，ｙｊｋ）とする。Ｉｉ（ｘ，ｙ）は、ｉ番目のカメラ画像の画像座標（ｘ，ｙ）におけるＲＧＢ値または輝度の画素値を表し、Ｉｊ（ｘ，ｙ）は、ｊ番目のカメラ画像の画像座標（ｘ，ｙ）におけるＲＧＢ値または輝度の画素値を表す。その他の変数は、式３に含まれる変数と同一のため、その説明は省略する。
【００９２】
以上のように、３次元座標をカメラパラメータで画像上に投影した画素座標の画素値に基づいてカメラパラメータを評価するので、３次元構造が既知なる校正指標を使用せずに、カメラパラメータを算出すること、すなわちカメラを校正することができる。このため、３次元空間中の３次元座標と２次元画像中の画素位置の対応付けを行わずに、カメラを校正することができる。
【００９３】
（実施の形態２）
実施の形態１における評価関数は式３に示した画素値の差の絶対値和に限る必要はない。実施の形態２では、評価関数を画素値の差の２乗和とした場合について説明する。
【００９４】
実施の形態２では、実施の形態１と比べて、評価値の算出に用いる評価関数のみが異なる。実施の形態２に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【００９５】
図１４は、実施の形態２に係るカメラパラメータ算出処理Ｓ３１０の一例を示すフローチャートである。図１４において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３１４はテレオカメラの対応する画素値の差の２乗和で定義される評価関数Ｊ（式６）を算出する。
【００９６】
【数６】
2018044942.tif 000008
【００９７】
ここで、式６の変数は、式３に含まれる変数と同一のため、その説明は省略する。
【００９８】
なお、カメラが３台以上の場合、式６の評価関数Ｊを、式７に拡張すればよい。
【００９９】
【数７】
2018044942.tif 000009
【０１００】
ここで、式７の変数は、式５に含まれる変数と同一のため、その説明は省略する。
【０１０１】
以上のように、実施の形態１と同様に、３次元空間中の３次元座標と２次元画像中の画素位置の対応付けを行わずに、カメラを校正することができる。
【０１０２】
（実施の形態３）
実施の形態１、２における評価関数は式３および式６に示した画素値の差の絶対値和もしくは２乗和に限る必要はない。実施の形態３では、評価関数を平均画素値との差の絶対値和とした場合について説明する。
【０１０３】
実施の形態３では、実施の形態１と比べて、評価値を算出するための評価関数のみが異なる。実施の形態３に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１０４】
図１５は、実施の形態３に係るカメラパラメータ算出処理Ｓ３２０の一例を示すフローチャートである。図１５において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３２４はテレオカメラの対応する画素値と平均画素値の差の絶対値和で定義される評価関数Ｊ（式８）を算出する。
【０１０５】
【数８】
2018044942.tif 000010
【０１０６】
ここで、Ｉ’ｋはｋ番目の対応点の画素値の全てのカメラ画像での平均を表す。その他の変数は、式３に含まれる変数と同一のため、その説明は省略する。
【０１０７】
なお、カメラが３台以上の場合、式８の評価関数Ｊを、式９に拡張すればよい。
【０１０８】
【数９】
2018044942.tif 000011
【０１０９】
ここで、式９の変数は、式３および式５に含まれる変数と同一のため、その説明は省略する。
【０１１０】
以上のように、実施の形態１と同様に、３次元空間中の３次元座標と２次元画像中の画素位置の対応付けを行わずに、カメラを校正することができる。
【０１１１】
（実施の形態４）
実施の形態１から３における評価関数は式３、式６、式８に示した画素値の差の絶対値和、２乗和、もしくは、平均画素値との差の絶対値和に限る必要はない。実施の形態４では、評価関数を平均画素値の差の２乗和とした場合について説明する。
【０１１２】
実施の形態４は、実施の形態１と比べて、評価値を算出するための評価関数のみが異なる。実施の形態４に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１１３】
図１６は、実施の形態４に係るカメラパラメータ算出処理３３０の一例を示すフローチャートである。図１６において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３３４はテレオカメラの対応する画素値と平均画素値の差の２乗和で定義される評価関数Ｊ（式１０）を算出する。
【０１１４】
【数１０】
2018044942.tif 000012
【０１１５】
ここで、式１０の変数は、式８に含まれる変数と同一のため、その説明は省略する。
【０１１６】
なお、カメラが３台以上の場合、式１０の評価関数Ｊを、式１１に拡張すればよい。
【０１１７】
【数１１】
2018044942.tif 000013
【０１１８】
ここで、式１１の変数は、式３および式８に含まれる変数と同一のため、その説明は省略する。
【０１１９】
以上のように、実施の形態１と同様に、３次元空間中の３次元座標と２次元画像中の画素位置の対応付けを行わずに、カメラを校正することができる。  （実施の形態５）
実施の形態５では、３次元点群データに対応する個々のカメラの画像座標の近傍画素における、パターンの類似度に基づいて、カメラパラメータを算出することにより、カメラ間のゲイン差による画素値ＩＬ（ｘ，ｙ）とＩＲ（ｘ，ｙ）の差の影響を低減する。
【０１２０】
以下では、具体例として、評価関数を正規化相互相関とした場合について説明する。
【０１２１】
実施の形態５では、実施の形態１と比べて、評価値を算出するための評価関数のみが異なる。実施の形態５に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１２２】
図１７は、実施の形態５に係るカメラパラメータ算出処理Ｓ３４０の一例を示すフローチャートである。図１７において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３４４はステレオカメラの対応する画素値の正規化相互相関で定義される評価関数Ｊ（式１２）を算出する。
【０１２３】
【数１２】
2018044942.tif 000014
【０１２４】
ここで、比較する３次元点群をそれぞれのカメラパラメータによって左カメラと右カメラのそれぞれで撮影されたカメラ画像に投影し、画像座標を得る。これらの画像座標の近傍からｍ画素選択する。例えば、投影した画素を中心とする円の内部の画素を選択する。左カメラと右カメラの前記の選択したｍ画素のｉ番目の画素値をそれぞれＭＬｋｉ、ＭＲｋｉとする。その他の変数は、式３に含まれる変数と同一のため、その説明は省略する。
【０１２５】
以上のように、画素値の正規化相互相関を使用することにより、左カメラと右カメラのゲイン差に影響されずに、カメラ校正を行うことができる。
なお、カメラが３台以上の場合、式１２の評価関数Ｊを、式１３に拡張すればよい。
【０１２６】
【数１３】
2018044942.tif 000015
【０１２７】
ここで、Ｎは画素値を比較する３次元点の数、ｎはカメラ台数、Ｍｊｋｉは、ｋ番目の３次元点に対応するｊ番目のカメラによるカメラ画像中の画素位置について正規化相互相関を計算する近傍画素におけるｉ番目の画素値を表す。
【０１２８】
なお、正規化相互相関でなく、３値表現や隣接画素間の画素値の差を使用してもよい。
【０１２９】
（実施の形態６）
実施の形態１において、評価に使用する３次元点群データを画素値に基づいて選択する例を示したが、選択の基準は画素値に限る必要はない。実施の形態６では、遮蔽領域に基づいて３次元点群データを選択する場合について説明する。
【０１３０】
実施の形態６に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１３１】
図１８は、実施の形態６に係るカメラパラメータ算出処理３５０の一例を示すフローチャートである。図１８において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３５４はステップＳ３０３で取得された３次元点群データから、左カメラ１０２及び右カメラ１０３の少なくとも一方の遮蔽領域に存在する３次元点のデータを除く。遮蔽領域とは、当該遮蔽領域内にある前方の３次元物体が後方の３次元物体を遮蔽することになる領域であり、カメラから一方向に延びる領域である。この遮蔽領域の判定について説明する。
【０１３２】
カメラへの入射光の１つの光路に対し、３次元空間中の１点が対応する。複数の３次元物体が遮蔽領域に並んで存在している場合でも、３次元レーザースキャナ１０６は、前記カメラとは異なる視点から、前記複数の３次元物体の世界座標を取得する。当該世界座標をカメラパラメータに基づいて画像上に投影すると、同一又は差がほとんどない複数の画像座標が算出される。つまり、１つの画像において、離間距離が閾値以下である複数の対応点が求まることにより、複数の３次元点が、当該画像を撮影したカメラの遮蔽領域に位置することが分かる。そのような３次元点の対応点は、本来の３次元点と対応していない画素値を表している可能性があるため、評価値Ｊの算出には適さない。
【０１３３】
したがって、前記画像上に投影した画像座標間の距離が閾値より小さい３次元点の組を、遮蔽領域に存在する３次元点であると判定し、前記判定より、遮蔽領域に存在する３次元点を除き、評価値Ｊを算出する。
【０１３４】
以上のように、遮蔽領域に存在する３次元点を評価値の算出から除くことにより、遮蔽領域に影響されずに、カメラ校正を行うことができる。
【０１３５】
（実施の形態７）
実施の形態１、６において、評価に使用する３次元点群データを画素値、もしくは、遮蔽領域に基づいて選択する例を示したが、選択の基準はこれらに限る必要はない。実施の形態７では、３次元レーザースキャナの測定光のなす角度が閾値より小さい２つの３次元点間の距離に基づいて、３次元点群データを選択する場合について説明する。３次元レーザースキャナの測定光のなす角度が閾値より小さいとは、測距視点から所定近傍内に見えることと同義であり、例えば、パン角及びチルト角の２軸回転する３次元レーザースキャナでは、当該パン角とチルト角で近い（つまり、当該パン角及びチルト角の何れもが閾値より小さい）ことと定義される。
【０１３６】
実施の形態７に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１３７】
図１９は、カメラパラメータ算出処理Ｓ３６０の一例を示すフローチャートである。図１９において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３６４はステップＳ３０３で取得された３次元点群データから、空間的な距離変化が大きい領域を除く。この空間的な距離変化が大きい領域の判定について説明する。
【０１３８】
３次元レーザースキャナは複数の回転軸でレーザー照射口を回転させ、ある角度間隔で３次元点群データを取得する。説明を簡単にするため、３次元レーザースキャナの回転中心を原点、レーザー照射口は前記原点を中心とするパン角とチルト角の２軸回転とする。パン角とチルト角が近い２つの３次元点間の距離は、例えば、３次元レーザースキャナで測定した奥行き値の差によって近似される。パン角とチルト角が近い２つの３次元点間の距離の最大値が閾値より大きい点の組を含む領域を、前記空間的な距離変化が大きい領域として判定する。そして、前記判定より、空間的な距離変化が大きい領域に存在する３次元点群を除外し、評価値Ｊを算出する。前記除外により、評価値Ｊの関数の概形が滑らかになり、評価値Ｊの最小化をし易くなる。
【０１３９】
以上のように、空間的な変化が大きい領域の３次元点群データを除くことにより、物体間の境界や凹凸の大きい表面に存在する３次元点群データに影響されずに、カメラ校正を行うことができる。
【０１４０】
（実施の形態８）
実施の形態１、６、７において、評価に使用する３次元点群データを画素値、遮蔽領域、もしくは、３次元レーザースキャナのパン角とチルト角が近い３次元点群の２点間距離の空間的な変化に基づいて選択する例を示したが、これらに限る必要はない。実施の形態８では、強度値に基づいて３次元点群データを選択する場合について説明する。実施の形態８に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１４１】
図２０は、カメラパラメータ算出処理Ｓ３７０の一例を示すフローチャートである。図２０において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３７４はステップＳ３７３で取得された強度値を含む３次元点群データから、強度値に基づいて３次元点群データの選択をする。前記選択の方法について説明する。
【０１４２】
３次元レーザースキャナはレーザーを物体に照射し、その受光した反射光に基づいて、物体の奥行きを算出する。このため、３次元点群データに対応付けられた強度値（受光強度あるいは、物体反射率）を取得できる。前記強度値は物体表面の形状や材質により変化し、物体表面の色と相関がある。前記相関の説明を以下にする。可視光領域で自発光しない白と黒の物体は、それぞれ光の反射率が高い場合と低い場合に対応する。このため、可視あるいは近赤外のレーザー光に対する物体の反射特性は、可視光の反射特性に近い。したがって、物体表面の色と強度値に相関がある。
【０１４３】
実施の形態７の説明と同様の、パン角とチルト角の２軸回転する３次元レーザースキャナにおいて、パン角とチルト角で近い（つまり、測距視点から所定近傍内に見える）３次元点群のいずれかの２点間の強度値の差が第１の閾値より小さいか、あるいは、第２の閾値より大きい３次元点の組を、Ｓ３０３で取得された３次元点群データから除外する。前記除外により、強度値の差が小さく評価値Ｊが変化しない３次元点群と、強度値の差が大きく、評価値Ｊの変化が大きい３次元点群を評価値の算出から除くことにより、評価値Ｊの関数の概形が滑らかになり、評価値Ｊの最小化をし易くなる。
【０１４４】
以上のように、強度値の差が大きい３次元点群データを除くことにより、色の変化が大きい物体表面に存在する３次元点群データに影響されずに、カメラ校正を行うことができる。
【０１４５】
（実施の形態９）
実施の形態１、６から８において、評価に使用する３次元点群データを画素値、遮蔽領域、３次元レーザースキャナのパン角とチルト角が近い３次元点群の２点間距離の空間的な変化、もしくは、強度値に基づいて選択する例を示したが、これらに限る必要はない。実施の形態９では、３次元点群の色情報に基づいて３次元点群データを選択する場合について説明する。
【０１４６】
実施の形態９に係るカメラパラメータ算出装置の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１４７】
図２１は、カメラパラメータ算出処理Ｓ３８０の一例を示すフローチャートである。図２１において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。ステップＳ３８４では、ステップＳ３８３で取得された色情報を含む３次元点群データから、３次元点群の色情報に基づいて３次元点群データ選択をする。前記選択の方法について説明する。
【０１４８】
３次元レーザースキャナのレーザー照射軸と同軸で可視光撮影可能な場合、３次元点群データに対応付けられた色情報（例えば、ＲＧＢ値あるいは輝度値）を取得できる。実施の形態７の説明と同様の、パン角とチルト角の２軸回転する３次元レーザースキャナにおいて、パン角とチルト角で近い（つまり、測距視点から所定近傍内に見える）３次元点群のいずれかの２点間の色情報（例えば、ＲＧＢ値あるいは輝度値）の差が第１の閾値より小さい、あるいは、第２の閾値より大きい３次元点の組をステップＳ３８３で取得された３次元点群データから除外する。前記除外により、色情報値の差が小さく評価値Ｊが変化しない３次元点群と、色情報の差が大きく、評価値Ｊの変化が大きい３次元点群を評価値の算出から除くことにより、評価値Ｊの関数の概形が滑らかになり、評価値Ｊの最小化をし易くなる。
以上のように、色情報の差が大きい３次元点群データを除くことにより、色の変化が大きい物体表面に存在する３次元点群データに影響されずに、カメラ校正を行うことができる。
【０１４９】
（実施の形態１０）
実施の形態１、６から９において、複眼カメラと３次元レーザースキャナを使用するカメラ校正について説明したが、実施の形態９で説明したように３次元レーザースキャナが色情報を取得できる場合、１つのカメラと３次元レーザースキャナでカメラを校正することができる。実施の形態１０では、１つのカメラと３次元レーザースキャナによるカメラ校正について説明する。
【０１５０】
図２２は、カメラパラメータ算出装置２０１のブロック図である。図２２において、実施の形態１と同一構成要素には、図１と同一の符号を付し、その説明を省略する。カメラパラメータ算出装置２０１は、実施の形態１のカメラパラメータ算出装置１０１と比べて、補正の対象となるカメラ２０２が１台のみである点、及びカメラパラメータ算出器１０８においてカメラパラメータ算出処理に用いる評価関数が異なる。
【０１５１】
図２３は、実施の形態１０に係るカメラパラメータ算出処理Ｓ４００パラメータ算出の動作を示すフローチャートである。図２３において、実施の形態１、９と同一ステップには、図３、２１と同一のステップ名を付し、その説明を省略する。ステップＳ３８３で取得された３次元点群データには、３次元レーザースキャナとその同軸撮影による色情報が付加されている。式１４に、ステップＳ４０４の評価値算出で用いられる評価関数Ｊを示す。
【０１５２】
【数１４】
2018044942.tif 000016
【０１５３】
ここで、Ａｋはカメラのｋ番目の画像座標の算出に使用した３次元点の色情報を表す。前記色情報はカメラの画素値と同じ色情報にする。例えば、カメラの画素値がＲＧＢ値の場合、Ａｋの色情報はＲＧＢ値を使用する。その他の変数は、式３に含まれる変数と同一のため、その説明は省略する。
【０１５４】
以上のように、実施の形態１０のカメラパラメータ算出処理４００では、３次元点の色情報を使用することにより、１つのカメラと３次元レーザースキャナでカメラ校正を行うことができる。
【０１５５】
なお、式１４の画素値と色情報の差の絶対値和は、前記差の２乗和でもよい。また、２つ以上のカメラを使用してもよい。
【０１５６】
（実施の形態１１）
実施の形態１１では、画像輝度勾配がないか、または、十分小さい領域を除いて、カメラパラメータを算出することにより、評価値への寄与が小さい領域の計算を省き、計算量を低減する。
【０１５７】
これは、次の考え方に基づく。すなわち、ある３次元点が対応する２つのカメラ画像上の画素の周りで、輝度勾配が０の場合、カメラパラメータを微小変化させても、この３次元点に対する２画素の輝度差はほとんど一定になる。言い換えると、評価値Ｊを最小化するカメラパラメータ算出に影響がない。そこで、このような３次元点を評価値Ｊの算出から除くことで、計算量を低減できる。
【０１５８】
実施の形態１１では、実施の形態１と比べて、カメラパラメータを算出するためのカメラパラメータ算出器１０８の動作のみが異なる。実施の形態１１に係るカメラパラメータ算出装置１０１の機能的な構成は、実施の形態１で説明したカメラパラメータ算出装置１０１と実質的に同一であるため、その説明を省略する。
【０１５９】
図２４は、実施の形態１１に係るカメラパラメータ算出処理Ｓ５００の一例を示すフローチャートである。図２４において、実施の形態１と同一ステップには、図２と同一のステップ名を付し、その説明を省略する。
【０１６０】
図２４のステップＳ５０１において、カメラパラメータ算出器１０８は、ステップＳ３０１で取得されたカメラ画像の輝度勾配に基づき、ステップＳ３０３で取得したＮ点の３次元点の各々を評価値の算出に使用するか否かを判定するための点群選択マスクを作成する。点群選択マスクは、カメラ画像中の各画素に対して、当該画素が、評価値の算出に用いる有効画素及び当該画素の輝度値を評価値の算出に用いない無効画素の何れであるかを示す２値を取る。点群選択マスクは、１又は複数のカメラで撮影された個々のカメラ画像について作成される。
【０１６１】
図２５は、点群選択マスク作成処理Ｓ５０１の詳細な一例を示すフローチャートである。
【０１６２】
点群選択マスク作成処理Ｓ５０１では、画素インデックスをｉとし、カメラ画像中の画素ｉを順次選択しながら、選択された画素ｉが有効画素か無効画素かを特定するループ処理を行う（Ｓ５０１１〜Ｓ５０１６）。
【０１６３】
画素ｉでの輝度勾配Ｇｉを、画素ｉを中心とする近傍画素から算出する（Ｓ５０１２）。輝度勾配の一例として、式１５に、画素ｉを中心とする隣接画素による輝度勾配Ｇｉを示す。
【０１６４】
【数１５】
2018044942.tif 000017
【０１６５】
ここで、Ｉ（ｘ、ｙ）は画像座標（ｘ、ｙ）における輝度値である。
【０１６６】
輝度勾配Ｇｉと閾値を比較し（Ｓ５０１３）、輝度勾配Ｇｉが閾値より大きい場合、点群選択マスクにおいて画素ｉを有効画素に設定する（Ｓ５０１４）。また、輝度勾配Ｇｉが閾値以下の場合、点群選択マスクにおいて画素ｉを無効画素に設定する（Ｓ５０１５）。前記閾値は、一例として、画像全体の平均輝度勾配の定数倍であってもよい。
【０１６７】
再び図２４を参照して、ステップＳ５０２において、カメラパラメータ算出器１０８は、ステップＳ３０３で取得した３次元点群データの中から、ステップＳ５０１で作成した点群選択マスクに基づいて選択される３次元座標のみを用いて、評価関数Ｊ（例えば、式３）を算出する。
【０１６８】
ステレオカメラの例では、左右のカメラ画像の少なくとも一方において、ある３次元点の対応点に位置する画素が、点群選択マスクによって無効画素として示される場合、当該３次元点に対応するカメラ画像上の画素値を評価関数の算出から除いてもよい。
【０１６９】
また、左右のカメラ画像の両方において、ある３次元点の対応点に位置する画素が、点群選択マスクによって無効画素として示される場合、当該３次元点に対応するカメラ画像上の画素値を評価関数の算出から除いてもよい。  以上のように、３次元点群データの中から、カメラ画像の対応点における輝度勾配の小さい３次元点のみを評価関数Ｊの算出から除くことにより、計算量を削減し、カメラ校正を行うことができる。
【０１７０】
なお、評価関数Ｊは式３に限る必要はなく、式４〜１４を使用してもよい。また、点群選択マスクは、各カメラ画像の全ての画素に対して有効画素か無効画素かを示す必要はなく、各３次元点の対応点の近傍画素に対してのみ有効画素か無効画素かを示してもよい。
【０１７１】
（変形例）
以上、本発明の一つまたは複数の態様に係るカメラパラメータ算出装置について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【０１７２】
本発明のカメラパラメータ算出装置は、３次元構造が既知なる校正指標を使用せずに、各種のカメラを校正するカメラパラメータ算出装置として有用である。
【符号の説明】
【０１７３】
１０１、２０１    カメラパラメータ算出装置
１０２    左カメラ
１０３    右カメラ
１０４    フレームメモリ
１０５    初期カメラパラメータ格納器
１０６    ３次元レーザースキャナ
１０７    点群入力器
１０８    カメラパラメータ算出器
１０９    カメラパラメータ出力器
２０２    カメラ
【図１】
2018044942.tif 000018
【図２】
2018044942.tif 000019
【図３】
2018044942.tif 000020
【図４】
2018044942.tif 000021
【図５】
2018044942.tif 000022
【図６】
2018044942.tif 000023
【図７】
2018044942.tif 000024
【図８】
2018044942.tif 000025
【図９】
2018044942.tif 000026
【図１０】
2018044942.tif 000027
【図１１】
2018044942.tif 000028
【図１２】
2018044942.tif 000029
【図１３】
2018044942.tif 000030
【図１４】
2018044942.tif 000031
【図１５】
2018044942.tif 000032
【図１６】
2018044942.tif 000033
【図１７】
2018044942.tif 000034
【図１８】
2018044942.tif 000035
【図１９】
2018044942.tif 000036
【図２０】
2018044942.tif 000037
【図２１】
2018044942.tif 000038
【図２２】
2018044942.tif 000039
【図２３】
2018044942.tif 000040
【図２４】
2018044942.tif 000041
【図２５】
2018044942.tif 000042
【図２６】
2018044942.tif 000043