(57)【要約】      （修正有）【課題】カメラの視野の広範囲にわたる精度の高い校正を可能にするカメラ校正技術を提供する。【解決手段】２つのカメラのカメラパラメータを、複数の校正点を用いて算出するカメラ校正方法は、複数の校正点の３次元座標とカメラそれぞれのカメラ画像での複数の校正点の画像座標とを取得し（Ｓ３０１）、各カメラの複数のカメラパラメータを取得し（Ｓ３０２）、校正点それぞれについて、校正点を見る２つのカメラの見込角に対応する見込角対応長を算出し（Ｓ３０３）、校正点それぞれについて、２つのカメラ間での校正点の視差から、校正点の３次元位置に対応する測距点の３次元位置を算出し（Ｓ３０４）、校正点それぞれについて、校正点の３次元座標と校正点に対応する測距点の３次元位置との差異を、校正点に対応する見込角対応長を用いて重み付けし（Ｓ３０５）、重み付け後の差異に基づいて、カメラパラメータを更新する（Ｓ３０７）。【選択図】図８
2018179981.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」、Journal of Robotics and Automation、IEEE、1987年8月、Vol. RA-3、No.4、p.323-344
【非特許文献２】Zhengyou Zhang、「A Flexible New Technique for Camera Calibration」、IEEE Transactions on Pattern Analysis and Machine Intelligence、IEEE、2000年、Vol. 22 (11)、p.1330-1334
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のカメラ校正では、画像上の距離又は狭角カメラのステレオ測距に基づく、カメラパラメータの評価関数が、使用される。一方、広角カメラのステレオ測距用途におけるカメラの校正において、カメラの視野全体においてキャリブレーション、つまり校正が正確に行えない場合がある。
【０００６】
本開示は、カメラの視野の広範囲にわたる精度の高い校正を可能にするカメラ校正方法、カメラ校正プログラム及びカメラ校正装置を提供する。
【課題を解決するための手段】
【０００７】
本開示の一態様に係るカメラ校正方法は、２つのカメラのカメラパラメータを、複数の校正点を用いて算出するカメラ校正方法であって、（ａ１）第１のメモリに格納され、前記複数の校正点の３次元座標と前記カメラそれぞれのカメラ画像での前記複数の校正点の画像座標とを含む校正点データを取得し、（ａ２）第２のメモリに格納された前記カメラそれぞれの複数のカメラパラメータを取得し、（ａ３）前記校正点それぞれについて、前記校正点を見る前記２つのカメラの見込角の大きさに対応する見込角対応長を、前記校正点データと前記カメラパラメータとに基づいて算出し、（ａ４）前記校正点それぞれについて、前記校正点の画像座標と前記カメラパラメータとに基づいて、前記２つのカメラ間での前記校正点の視差から、前記校正点の３次元位置に対応する測距点の３次元位置を算出し、（ａ５）前記校正点それぞれについて、前記校正点の３次元座標と前記校正点に対応する前記測距点の３次元位置との差異を、前記校正点を用いて算出された前記見込角対応長を用いて重み付けし、（ａ６）重み付け後の前記差異に基づいて、前記カメラパラメータを更新し、（ａ７）更新したカメラパラメータを出力し、処理（ａ１）〜処理（ａ７）の少なくとも１つがプロセッサによって実行される。
【０００８】
本開示の一態様に係るカメラ校正プログラムは、（ａ１）複数の校正点の３次元座標及び画像座標を含む校正点データを、第１のメモリから取得し、ここで、前記複数の校正点の画像座標は、２つのカメラそれぞれのカメラ画像での前記複数の校正点の画像座標であり、（ａ２）前記カメラそれぞれの複数のカメラパラメータを、第２のメモリから取得し、（ａ３）前記校正点それぞれについて、前記校正点を見る前記２つのカメラの見込角の大きさに対応する見込角対応長を、前記校正点データと前記カメラパラメータとに基づいて算出し、（ａ４）前記校正点それぞれについて、前記校正点の画像座標と前記カメラパラメータとに基づいて、前記２つのカメラ間での前記校正点の視差から、前記校正点の３次元位置に対応する測距点の３次元位置を算出し、（ａ５）前記校正点それぞれについて、前記校正点の３次元座標と前記校正点に対応する前記測距点の３次元位置との差異を、前記校正点を用いて算出された前記見込角対応長を用いて重み付けし、（ａ６）重み付け後の前記差異に基づいて、前記カメラパラメータを更新し、（ａ７）更新したカメラパラメータを出力することをコンピュータに実行させる。
【０００９】
本開示の一態様に係るカメラ校正装置は、２つのカメラのカメラパラメータを算出する処理回路を備え、前記処理回路は、（ａ１）複数の校正点の３次元座標と前記２つのカメラそれぞれのカメラ画像での前記複数の校正点の画像座標とを含む校正点データを、第１のメモリから取得し、（ａ２）前記カメラそれぞれの複数のカメラパラメータを、第２のメモリから取得し、（ａ３）前記校正点それぞれについて、前記校正点を見る前記２つのカメラの見込角の大きさに対応する見込角対応長を、前記校正点データと前記カメラパラメータとに基づいて算出し、（ａ４）前記校正点それぞれについて、前記校正点の画像座標と前記カメラパラメータとに基づいて、前記２つのカメラ間での前記校正点の視差から、前記校正点の３次元位置に対応する測距点の３次元位置を算出し、（ａ５）前記校正点それぞれについて、前記校正点の３次元座標と前記校正点に対応する前記測距点の３次元位置との差異を、前記校正点を用いて算出された前記見込角対応長を用いて重み付けし、（ａ６）重み付け後の前記差異に基づいて前記カメラパラメータを更新し、（ａ７）更新したカメラパラメータを出力する。
【００１０】
なお、上記の包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の不揮発性の記録媒体を含む。
【発明の効果】
【００１１】
本開示に係るカメラ校正技術によれば、カメラの視野の広範囲にわたり精度の高い校正を行うことが可能になる。本開示の一態様の付加的な恩恵及び有利な点は本明細書及び図面から明らかとなる。この恩恵及び／又は有利な点は、本明細書及び図面に開示した様々な態様及び特徴により個別に提供され得るものであり、その１以上を得るために全てが必要ではない。
【図面の簡単な説明】
【００１２】
【図１】図１は、複数眼の広角カメラが備える２つの広角カメラを通じてステレオ測距した場合に生じ得る測距誤差を例示する図である。
【図２】図２は、魚眼カメラによるチェッカーパタンの撮影画像の一例を示す図である。
【図３】図３は、実施の形態１に係るカメラ校正装置を備えるカメラシステムの構成の一例を示すブロック図である。
【図４】図４は、図３の多眼カメラをレンズの光軸と垂直な一方向から見た側面図である。
【図５】図５は、図３の多眼カメラの自動車への搭載例を示す平面図である。
【図６Ａ】図６Ａは、実施の形態１に係るカメラ校正装置の構成の一例を示すブロック図である。
【図６Ｂ】図６Ｂは、校正点データの例を示す図である。
【図７】図７は、実施の形態１に係るカメラ校正装置が用いる見込角対応長の一例を示す図である。
【図８】図８は、実施の形態１に係るカメラ校正装置の動作の流れの一例を示すフローチャートである。
【図９】図９は、実施の形態１に係るカメラ校正装置が校正するカメラと、校正点と、校正点の測距点との関係の一例を示す図である。
【図１０】図１０は、図９のカメラを用いたステレオ測距における測距誤差の一例を示す図である。
【図１１】図１１は、実施の形態２に係るカメラ校正装置の動作の流れの一例を示すフローチャートである。
【図１２】図１２は、実施の形態３に係るカメラ校正装置の動作の流れの一例を示すフローチャートである。
【図１３】図１３は、実施の形態４に係るカメラ校正装置の動作の流れの一例を示すフローチャートである。
【図１４】図１４は、実施の形態５に係るカメラ校正装置の動作の流れの一例を示すフローチャートである。
【図１５】図１５は、実施の形態に係るカメラ校正装置が適用される多眼カメラの変形例を示す模式的な斜視図である。
【発明を実施するための形態】
【００１３】
［本開示の基礎となった知見］
本発明者らは、「背景技術」の欄において記載したカメラ校正技術に関し、これらの技術を広角カメラのステレオ測距に用いる場合、下記の問題が生じることを見出した。
【００１４】
第一に、カメラの視野の端に相当する画像外周部において、キャリブレーション誤差が、ステレオ測距の精度に大きく影響し、画像外周部を含めて、広い視野範囲で測距誤差を最小化できないことである。
【００１５】
例えば、図１を参照すると、多眼広角カメラ１０００が備える２つの広角カメラ１００１及び１００２を通じてステレオ測距する場合に生じ得る測距誤差の例が示されている。多眼広角カメラ１０００は、複数の広角カメラを備えている。複数の広角カメラのそれぞれは、広角レンズを備える。多眼広角カメラ１０００は、広角カメラ１００１の正面に向かう方向かつカメラ１００２の正面に向かう方向である正面方向Ｄ１から、正面方向Ｄ１と大きい角度を形成する方向Ｄ２にまでにわたる広い視野角を有している。正面方向Ｄ１は、広角カメラ１００１及び１００２の光軸ＯＡに沿う方向であり、多眼広角カメラ１０００から視野角の中央付近に延びる方向である。方向Ｄ２は、多眼広角カメラ１０００から視野角の端付近に延びる方向である。例えば、多眼広角カメラ１０００の複数の広角カメラは、互いに光軸が平行になるように配置される。広角カメラ１００１及び１００２の視野角の中央付近の被写体は、これらの撮影画像の中央付近に位置し、視野角の端付近の被写体は、撮影画像の端付近、つまり、画像外周部に位置する。
【００１６】
広角カメラ１００１及び１００２に、キャリブレーション誤差、つまり校正誤差があり、広角カメラ１００１及び１００２を用いて被写体をステレオ測距して広角カメラ１００１から被写体の距離Ｂ１１、広角カメラ１００２から被写体の距離Ｂ１２を得た場合、広角カメラ１００１から被写体までの実際の距離Ｂ１３は距離Ｂ１１と異なり、広角カメラ１００２から被写体までの実際の距離Ｂ１４は距離Ｂ１２と異なる。なお、ステレオ測距は、２つのカメラがそれぞれ３次元空間中の点Ｂ００を撮影した場合、それぞれの撮影画像上での点Ｂ００に対応する点の位置の違い、つまり、視差から、点Ｂ００の３次元位置を算出する技術であり、三角測量の原理に基づく。
【００１７】
例えば、広角カメラ１００１及び１００２が被写体を撮影した場合、広角カメラ１００１及び１００２それぞれのレンズへの被写体の像の入射角は、校正誤差の影響により、設計上の入射角θに対して、角度誤差Δφを有する。なお、広角カメラ１００１及び１００２の角度誤差Δφは、同一になる場合も異なる場合もある。例えば、広角カメラ１００１及び１００２は、正面方向Ｄ１の位置Ａ１の被写体を撮影した場合、広角カメラ１００１から位置Ａ１ａまでの距離が、広角カメラ１００１から位置Ａ１までのステレオ測距結果として出力され、広角カメラ１００２から位置Ａ１ａまでの距離が、広角カメラ１００２から位置Ａ１までのステレオ測距結果として出力される。また、広角カメラ１００１及び１００２は、方向Ｄ２の位置Ａ２の被写体を撮影した場合、広角カメラ１００１から位置Ａ２ａまでの距離が、広角カメラ１００１から位置Ａ２までのステレオ測距結果として出力され、広角カメラ１００２から位置Ａ２ａまでの距離が、広角カメラ１００２から位置Ａ２までのステレオ測距結果として出力される。位置Ａ２及びＡ２ａ間の距離は、位置Ａ１及びＡ１ａ間の距離よりも大幅に大きくなる。このように、広角カメラ１００１及び１００２が並ぶ面である紙面に平行な面に沿う方向での多眼広角カメラ１０００の視野角に関して、視野角の端付近では、視野角の中央付近よりも、校正精度がステレオ測距結果に与える影響が大きい。
【００１８】
第二に、測距精度が評価値として直接最小化されていないことである。その詳細を説明すると、例えば、カメラ校正を行うためには、３次元空間中における着目点と、着目点を撮像したカメラ画像中の着目点に対応する点の画素位置とを対応付ける必要がある。３次元空間中の３次元座標は、世界座標とも呼ばれる。カメラの位置は世界座標を用いて記述される。２次元画像であるカメラ画像は、カメラで撮像された画像を意味し、カメラ画像上で定義される２次元座標は、画像座標とも呼ばれる。カメラが存在する３次元空間中の着目点の３次元座標と、当該カメラで当該３次元空間を撮影して得た２次元画像中の当該着目点が投影される画素位置（以下、対応点と呼ぶ）とを対応づける必要がある。
【００１９】
従来の技術は、まず、カメラで校正指標を撮像する。校正指標は、例えば、チェッカーパタンである。チェッカーパタンはパターン形状を有し、かつ、特徴点、例えば、チェッカーパタンの交点の３次元座標が既知である。次に、撮像した画像におけるチェッカーパタンの交点に対応する点を検出して、撮像したカメラ画像における特徴点が投影される点である画素位置を求める。このようにして特徴点の３次元座標と２次元画像において特徴点が投影される点の画素位置との対応付けが行われている。
【００２０】
例えば、図２を参照すると、箱状の被写体の内側に一定間隔で描画されたチェッカーパタンを校正指標として撮影された校正指標のカメラ画像の一例が示されている。例えば、図２に示すように、図２上でカメラ画像Ｃの左上に位置する「０」を原点としたｘｙ座標系が、カメラ画像Ｃの画像座標系として設定される。このようなカメラ画像Ｃに対して、オペレータが、コンピュータ等の処理装置を操作し、画像座標系に従って、チェッカーパタンの交点の位置Ｃ１等を読み取り、交点位置Ｃ１等の画像座標を取得する。さらに、オペレータは、処理装置に、チェッカーパタンの交点位置Ｃ１とその３次元座標とが予め対応付けられた規則を参照させ、カメラ画像における交点位置Ｃ１に対応する位置の３次元座標を取得させる。具体的には、３次元空間における特定の位置に世界座標の原点とＸ、Ｙ及びＺの３軸とを定め、着目交点Ｃ１が原点から何番目のチェッカーパタン交点になっているかによって、３次元座標を同定できる。
【００２１】
さらに、カメラパラメータに基づく座標変換により、世界座標系における点を画像座標系における点に投影することができる。言い換えれば、カメラパラメータを用いて、世界座標上の点に対応するカメラ画像上の計算上の対応点を求めることができる。
【００２２】
さらに、校正指標を撮影して求めた実際に対応している点における世界座標（Ｘ，Ｙ，Ｚ）及び画像座標（ｘ，ｙ）の組から、カメラパラメータを算出することもできる。ピンホールカメラを用いるモデルを例として、カメラパラメータを用いた世界座標から画像座標への投影式を式１に示す。
【００２３】
【数１】
2018179981.tif 000003
【００２４】
このピンホールカメラのモデルのカメラパラメータは、カメラ画像の中心のｘ座標成分Ｃｘ及びｙ座標成分Ｃｙと、焦点距離ｆと、カメラの撮像素子の１画素におけるｘ軸方向長さｄ’ｘ及びｙ軸方向長さｄ’ｙと、世界座標系の基準に対するカメラの回転を示す３行３列の回転行列Ｒの成分Ｒｉｊと、世界座標系の基準に対するカメラの並進距離を示す並進ベクトルのＸ座標成分ＴＸ、Ｙ座標成分ＴＹ及びＺ座標成分ＴＺと、自由度のない媒介変数ｈとを、要素として含む。回転行列Ｒの要素Ｒｉｊにおいて、添え字ｉは回転行列Ｒの行番号を表し、添え字ｊは回転行列Ｒの列番号を表す。例えば、カメラの内部パラメータであるＣｘ、Ｃｙ、ｆ、ｄ’ｘ及びｄ’ｙは、設計値を有し、設計値通りに規定され得る。カメラの外部パラメータである回転行列Ｒ及び並進ベクトルＴは、カメラの姿勢及び位置に関するパラメータであり、設計値を有しても設計値通りに規定できない場合がある。このため、カメラの内部パラメータには設計値が使用され、カメラの外部パラメータのみが算出されてもよい。
【００２５】
また、図２に示すように、３次元空間のチェッカーパタンを撮影することによりカメラ画像のチェッカーパタンに生じるような歪曲収差等の歪みは、歪みのない画像座標（ｘ，ｙ）から、歪みのある画像座標（ｘｄ，ｙｄ）への変換を表すΦ（［ｘ  ｙ］Ｔ）を、下記の式２のように用いることにより表現できる。
【００２６】
【数２】
2018179981.tif 000004
【００２７】
従来技術におけるカメラ校正技術に関し、特許文献及び非特許文献に記載の技術とその問題点とを、以下において順に説明する。
【００２８】
特許文献１の技術は、カメラパラメータの評価関数に、ステレオ測距により算出した特徴点間の３次元距離（ユークリッド距離とも呼ぶ）と、予め測定した上記特徴点間の距離との差を用いる。ステレオ測距は、三角測量の原理に基づく測距方法であるため、ステレオカメラ間、具体的には、２つのレンズ間の距離である基線長が短くなるほど、２つのレンズから被写体へ至る視線が形成する見込角が小さくなり、測距精度は低下する。例えば、図１に示すように、広角カメラの視野角の端付近である画像外周部に撮像される被写体（例えば位置Ａ２にある被写体）をステレオ測距する場合、広角カメラの視野角の中央付近で撮像される被写体（例えば位置Ａ１にある被写体）をステレオ測距する場合に比べて、測距精度は低下する。
【００２９】
位置Ａ２及びカメラ１００１のレンズの中心を結ぶ線分と位置Ａ２及びカメラ１００２のレンズの中心を結ぶ線分とがなす角度は、位置Ａ１及びカメラ１００１のレンズの中心を結ぶ線分と位置Ａ１及びカメラ１００２のレンズの中心を結ぶ線分とがなす角度に比べて、小さい。この場合、位置Ａ２に対するカメラ１００１のレンズ及びカメラ１００２のレンズの間の基線長には、位置Ａ１に対するカメラ１００１のレンズ及びカメラ１００２のレンズの間の基線長に比べて短くなったことと、実質的に同様の現象が生じる。このように、特許文献１に記載の技術の評価関数は、広角ステレオカメラに対して、最適であるとは言えない。
【００３０】
例えば、被写体から見たカメラＣＡ１に含まれるレンズＣＡ２と被写体から見たカメラＣＢ１に含まれるレンズＣＢ２との間の見掛けのレンズ間距離を下記のように定義してもよい。「カメラＣＡ１に含まれるレンズＣＡ２とカメラＣＢ１に含まれるレンズＣＢ２との間の見掛けのレンズ間距離」は、被写体を示す点とレンズＣＡ２の中心（具体的には、投影中心）ＣＡ３との間の線分ＣＡ４（すなわち、視線ＣＡ５）と、被写体を示す点とレンズＣＢ２の中心（具体的には、投影中心）ＣＢ３との間の線分ＣＢ４（すなわち、視線ＣＢ５）とがなす角である見込角を中心角として有し、且つ、中心ＣＡ３及び／又は中心ＣＢ３を通る円弧を有する扇形における弦の長さである。なお、中心ＣＡ３及び中心ＣＢ３のうち、被写体により近い方を円弧に含むように決定してもよい。
【００３１】
本明細書において、見込角に対応し且つ見込角の大きさに相関する長さを見込角対応長と呼び、見掛けのレンズ間距離は、見込角対応長の一例である。
【００３２】
なお、着目する点とカメラＣＡ１に含まれるレンズＣＡ２の中心ＣＡ３との間の線分ＣＡ４（すなわち、視線ＣＡ５）と、着目する点とカメラＣＢ１に含まれるレンズＣＢ２の中心ＣＢ３との間の線分ＣＢ４（すなわち、視線ＣＢ５）とがなす角である見込角のことを、カメラＣＡ１及びカメラＣＢ１から着目する点を見た場合の見込角、又は、着目する点から見たときのカメラＣＡ１及びカメラＣＢ１の見込角、又は、着目点に対するカメラＣＡ１及びカメラＣＢ１の見込角と呼んでもよい。
【００３３】
詳細は後述するが、見込角対応長の値は、見込角の値と１対１で対応する、つまり、見込角の値によって一意に決定され得る。さらに、見込角対応長は、見込角が大きくなると大きくなり、見込角が小さくなると小さくなるため、見込角と同様の挙動を有し見込角に相関する。例えば、１つのカメラのレンズの中心と被写体との距離をＬＡとすると、見込角対応長の一例は、見込角対応長＝２ＬＡｓｉｎ（見込角／２）の関係を満たし得る。ただし、０≦（見込角／２）≦π／２［ｒａｄ］である。また、以下の説明では、２つのカメラの距離を基線長と呼ぶことがあるが、この基線長は、２つのカメラのレンズの中心間の実際の距離を指す。
【００３４】
非特許文献１の技術では、カメラパラメータの評価関数に、２次元画像座標に基づく再投影誤差が使用されるだけであるため、３次元空間中における測距等での誤差が直接評価関数に反映されない。このため、ステレオ測距などの３次元空間に着目する用途に対して、非特許文献１の評価関数は最適であるとは言えない。
【００３５】
非特許文献２の技術では、校正指標が、複数の異なる奥行きを有するように移動させられつつ、１つのカメラで撮影される。これにより取得される複数の画像、例えば平面画像Ａ１１ｉ及び平面画像Ａ２１ｉのそれぞれにおける点Ａ１２ｉ及び点Ａ２２ｉが、世界座標系における基準点Ａ３２ｉと対応付けられる。さらに、世界座標系における基準点Ａ３２ｉの世界座標Ａ３３ｉと、基準点Ａ３２ｉに対応する平面画像Ａ１１ｉ上の点Ａ１２ｉの画像座標Ａ１３ｉと、基準点Ａ３２ｉに対応する平面画像Ａ２１ｉ上の点Ａ２２ｉの画像座標Ａ２３ｉとの組（Ａ３３ｉ，Ａ１３ｉ，Ａ２３ｉ）に関して、以下の演算が行われる。具体的には、カメラパラメータを用いて世界座標の基準点Ａ３２ｉを画像座標系に投影した投影点の画像座標が求められる。すなわち、平面画像Ａ１１ｉにおける基準点Ａ３２ｉの投影点の画像座標Ａ１４ｉと、平面画像Ａ２１ｉにおける基準点Ａ３２ｉの投影点の画像座標Ａ２４ｉとが求められる。さらに、基準点に対応する点の画像座標と基準点の投影点の画像座標との距離の二乗和｜Ａ１３ｉ−Ａ１４Ｉ｜２＋｜Ａ２３ｉ-Ａ２４ｉ｜２が、算出される。そして、全ての基準点に関する上記距離の二乗和の総和Σ{｜Ａ１３ｉ−Ａ１４Ｉ｜２＋｜Ａ２３ｉ-Ａ２４ｉ｜２}が算出され、当該総和を最小化するように、カメラが校正される。よって、非特許文献２では、評価関数に、上記距離の二乗の総和が使用される。このような評価関数は、３次元空間中における測距等での誤差が反映された評価関数ではなく、ステレオ測距などの３次元空間に着目する用途に対して、最適であるとは言えない。
【００３６】
近年、地上を移動する車両及び空中を移動するドローン等の移動体における周辺監視及び運転支援等のために、ステレオカメラの利用が検討されている。このような目的の場合、広角なカメラが、ステレオカメラに好適である。移動体からの測距を目的として配置され且つ広角な視野を有するステレオカメラの校正は、測距精度に重点を置く必要があり、且つ、画像外周部を含め、校正誤差を小さくする必要がある。そこで、本発明者らは、上記の問題を鑑み、視野の広範囲にわたり高い精度を有するように、ステレオカメラ等の多眼カメラを校正するために、下記の技術を創案した。
【００３７】
本開示の一態様に係るカメラ校正方法は、２つのカメラのカメラパラメータを、複数の校正点を用いて算出するカメラ校正方法であって、（ａ１）第１のメモリに格納され、前記複数の校正点の３次元座標と前記カメラそれぞれのカメラ画像での前記複数の校正点の画像座標とを含む校正点データを取得し、（ａ２）第２のメモリに格納された前記カメラそれぞれの複数のカメラパラメータを取得し、（ａ３）前記校正点それぞれについて、前記校正点を見る前記２つのカメラの見込角の大きさに対応する見込角対応長を、前記校正点データと前記カメラパラメータとに基づいて算出し、（ａ４）前記校正点それぞれについて、前記校正点の画像座標と前記カメラパラメータとに基づいて、前記２つのカメラ間での前記校正点の視差から、前記校正点の３次元位置に対応する測距点の３次元位置を算出し、（ａ５）前記校正点それぞれについて、前記校正点の３次元座標と前記校正点に対応する前記測距点の３次元位置との差異を、前記校正点を用いて算出された前記見込角対応長を用いて重み付けし、（ａ６）重み付け後の前記差異に基づいて、前記カメラパラメータを更新し、（ａ７）更新したカメラパラメータを出力し、処理（ａ１）〜処理（ａ７）の少なくとも１つがプロセッサによって実行される。なお、第１メモリ及び第２のメモリは、別々のメモリであってもよく、一緒に１つのメモリを形成してもよい。
【００３８】
上記態様において、測距点の３次元位置は、２つのカメラにより校正点をステレオ測距して得られる校正点の３次元位置に相当する。測距点の３次元位置は、校正点がカメラの視野の中央付近よりも周囲の端付近に位置する場合において、カメラパラメータの誤差の影響を大きく受ける。これは、２つのカメラから校正点に至る２つの視線が形成する見込角が、カメラの視野の中央付近よりも端付近において小さくなるからである。また、見込角対応長は、校正点の位置がカメラの視野の中央から端に向かうに従って、短くなる。つまり、カメラパラメータの誤差が同一であっても、見込角対応長が短くなる程、校正点に対する測距点の３次元位置の誤差が大きくなる。校正点とその測距点との位置の差異は、上記のような見込角対応長を用いて重み付けされることによって、校正点がカメラの視野の中央付近及び端付近に位置する等の校正点の位置に起因する差異の大きさの偏りを低減することができる。さらに、複数の校正点に関して、上述のように、差異が重み付けされる。このような複数の重み付け後の差異に基づいて更新された各カメラのカメラパラメータは、設計値等の目的とする値に対する精度を高くすることができる。よって、校正点がカメラの視野のいかなる位置にあってもカメラの高精度な校正が可能になる。従って、カメラの視野の広範囲にわたり、校正点の位置の影響が抑えられたカメラの高精度な校正が可能になる。
【００３９】
また、本開示の一態様に係るカメラ校正方法において、処理（ａ５）では、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点それぞれを用いて算出された前記見込角対応長の総和で正規化して用いてもよい。上記態様によれば、正規化された見込角対応長は、０〜１の間の値をとる。よって、正規化された見込角対応長は、見込角対応長の総和に依存しない重みとして、機能する。
【００４０】
また、本開示の一態様に係るカメラ校正方法において、処理（ａ５）では、閾値よりも大きい前記見込角対応長の算出に用いた前記校正点に関する前記差異のみを用いてもよい。上記態様によれば、閾値以下の見込角対応長の校正点に対応する測距点が、除外される。例えば、見込角対応長が極端に短い場合、校正点に対する測距点の位置の差異が無限大に発散し得る。このように、当該差異が大きくなり過ぎるような測距点を除外することによって、このような差異に依存する偏重したカメラの校正が抑えられる。
【００４１】
また、本開示の一態様に係るカメラ校正方法において、処理（ａ５）では、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点と前記カメラとの距離で除算して用いてもよい。上記態様において、校正点に対する２つのカメラの見込角対応長が同じであっても、カメラと校正点との距離が大きくなる程、２つのカメラから校正点への見込角が小さくなるため、校正点に対する測距点の位置の差異が大きくなる。よって、測距点への重み付けは、見込角対応長に起因する影響と、カメラと校正点との距離に起因する影響とを、低減することができる。
【００４２】
また、本開示の一態様に係るカメラ校正方法において、処理（ａ５）では、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点と前記カメラとの距離の２乗で除算して用いてもよい。上記態様によれば、測距点への重み付けは、見込角対応長に起因する影響と、カメラと校正点との距離が大きいことに起因する影響とを、効果的に低減することができる。
【００４３】
また、本開示の一態様に係るカメラ校正方法において、処理（ａ６）では、前記校正点それぞれに関する前記差異の総和を用いた評価値を算出し、前記評価値を小さくするように、前記カメラパラメータを更新してもよい。上記態様によれば、評価値を用いることによって、校正精度が高いカメラパラメータを効果的に算出することが可能になる。
【００４４】
本開示の一態様に係るカメラ校正プログラムは、（ａ１）複数の校正点の３次元座標及び画像座標を含む校正点データを、第１のメモリから取得し、ここで、前記複数の校正点の画像座標は、２つのカメラそれぞれのカメラ画像での前記複数の校正点の画像座標であり、（ａ２）前記カメラそれぞれの複数のカメラパラメータを、第２のメモリから取得し、（ａ３）前記校正点それぞれについて、前記校正点を見る前記２つのカメラの見込角の大きさに対応する見込角対応長を、前記校正点データと前記カメラパラメータとに基づいて算出し、（ａ４）前記校正点それぞれについて、前記校正点の画像座標と前記カメラパラメータとに基づいて、前記２つのカメラ間での前記校正点の視差から、前記校正点の３次元位置に対応する測距点の３次元位置を算出し、（ａ５）前記校正点それぞれについて、前記校正点の３次元座標と前記校正点に対応する前記測距点の３次元位置との差異を、前記校正点を用いて算出された前記見込角対応長を用いて重み付けし、（ａ６）重み付け後の前記差異に基づいて、前記カメラパラメータを更新し、（ａ７）更新したカメラパラメータを出力することをコンピュータに実行させる。なお、第１メモリ及び第２のメモリは、別々のメモリであってもよく、一緒に１つのメモリを形成してもよい。上記態様によれば、本開示の一態様に係るカメラ校正方法と同様の効果が得られる。
【００４５】
また、本開示の一態様に係るカメラ校正プログラムは、処理（ａ５）では、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点それぞれを用いて算出された前記見込角対応長の総和で正規化して用いてもよい。
【００４６】
また、本開示の一態様に係るカメラ校正プログラムは、処理（ａ５）では、閾値よりも大きい前記見込角対応長の算出に用いた前記校正点に関する前記差異のみを用いてもよい。
【００４７】
また、本開示の一態様に係るカメラ校正プログラムは、処理（ａ５）では、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点と前記カメラとの距離で除算して用いてもよい。
【００４８】
また、本開示の一態様に係るカメラ校正プログラムは、処理（ａ５）では、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点と前記カメラとの距離の２乗で除算して用いてもよい。
【００４９】
また、本開示の一態様に係るカメラ校正プログラムは、処理（ａ６）では、前記校正点それぞれに関する前記差異の総和を用いた評価値を算出し、前記評価値を小さくするように、前記カメラパラメータを更新してもよい。
【００５０】
本開示の一態様に係るカメラ校正装置は、２つのカメラのカメラパラメータを算出する処理回路を備え、前記処理回路は、（ａ１）複数の校正点の３次元座標と前記２つのカメラそれぞれのカメラ画像での前記複数の校正点の画像座標とを含む校正点データを、第１のメモリから取得し、（ａ２）前記カメラそれぞれの複数のカメラパラメータを、第２のメモリから取得し、（ａ３）前記校正点それぞれについて、前記校正点を見る前記２つのカメラの見込角の大きさに対応する見込角対応長を、前記校正点データと前記カメラパラメータとに基づいて算出し、（ａ４）前記校正点それぞれについて、前記校正点の画像座標と前記カメラパラメータとに基づいて、前記２つのカメラ間での前記校正点の視差から、前記校正点の３次元位置に対応する測距点の３次元位置を算出し、（ａ５）前記校正点それぞれについて、前記校正点の３次元座標と前記校正点に対応する前記測距点の３次元位置との差異を、前記校正点を用いて算出された前記見込角対応長を用いて重み付けし、（ａ６）重み付け後の前記差異に基づいて前記カメラパラメータを更新し、（ａ７）更新したカメラパラメータを出力する。なお、第１メモリ及び第２のメモリは、別々のメモリであってもよく、一緒に１つのメモリを形成してもよい。上記態様によれば、本開示の一態様に係るカメラ校正方法と同様の効果が得られる。
【００５１】
また、本開示の一態様に係るカメラ校正装置において、前記処理回路は、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点それぞれを用いて算出された前記見込角対応長の総和で正規化して用いてもよい。
【００５２】
また、本開示の一態様に係るカメラ校正装置において、前記処理回路は、閾値よりも大きい前記見込角対応長の算出に用いた前記校正点に関する前記差異のみを用いてもよい。
【００５３】
また、本開示の一態様に係るカメラ校正装置において、前記処理回路は、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点と前記カメラとの距離で除算して用いてもよい。
【００５４】
また、本開示の一態様に係るカメラ校正装置において、前記処理回路は、前記差異の重み付けに、前記校正点を用いて算出された前記見込角対応長を、前記校正点と前記カメラとの距離の２乗で除算して用いてもよい。
【００５５】
また、本開示の一態様に係るカメラ校正装置において、前記処理回路は、前記校正点それぞれに関する前記差異の総和を用いた評価値を算出し、前記評価値を小さくするように、前記カメラパラメータを更新してもよい。
【００５６】
なお、上記の全般的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読み取り可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ等の不揮発性の記録媒体を含む。
【００５７】
以下、実施の形態に係るカメラ校正装置等を、図面を参照しながら説明する。なお、以下で説明される実施の形態は、包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ（工程）、並びにステップの順序等は、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、以下の実施の形態の説明において、略平行、略直交のような「略」を伴った表現が、用いられる場合がある。例えば、略平行とは、完全に平行であることを意味するだけでなく、実質的に平行である、すなわち、例えば数％程度の差異を含むことも意味する。他の「略」を伴った表現についても同様である。
【００５８】
［実施の形態１］
［１−１−１．カメラシステムの構成］
図３を参照すると、実施の形態１に係るカメラ校正装置１０１を備えるカメラシステム１の構成が示されている。カメラシステム１は、２つ以上のレンズを有する多眼カメラ１０と、多眼カメラ１０のカメラパラメータを校正するカメラ校正装置１０１とを備える。多眼カメラ１０は、１つの筐体１５に、複数のレンズ１１〜１２を備える。なお、多眼カメラ１０は、互いに分離した複数のカメラを含み、複数のカメラの各々がレンズを備えてもよい。また、限定するものではないが、本実施の形態では、多眼カメラ１０は、ステレオカメラであり、被写体の位置をステレオ測距することができる。このようなカメラシステム１は、移動体、例えば、車両、船舶、飛行体又はロボットに搭載されてもよい。車両は、例えば、自動車、トラック、バス、二輪車、搬送車、鉄道、建設機械、又は荷役機械であってもよい。飛行体は、例えば、航空機、又は、ドローンであってもよい。
【００５９】
［１−１−２．多眼カメラの構成］
図３を参照すると、多眼カメラ１０は、２つ以上のレンズを備え、限定するものではないが、本実施の形態では、２つのレンズ１１及び１２を備える。具体的には、多眼カメラ１０は、筐体１５と、筐体１５の１つの壁部１５ａから外部に臨む２つのレンズ１１及び１２とを備えている。レンズ１１及び１２はそれぞれ、複数のレンズによって形成されるレンズ群であってもよい。２つのレンズ１１及び１２は、光軸を互いに平行にして配置されており、それぞれの光軸は、壁部１５ａと略垂直である。なお、レンズ１１及び１２の光軸は、平行でなくてもよい。
【００６０】
さらに、各レンズ１１及び１２は、広角レンズである。広角レンズの一例は、６０°以上の視野角を有するレンズである。限定するものではないが、本実施の形態では、レンズ１１及び１２の視野角は、同一である。各レンズ１１及び１２は、魚眼レンズのように１８０°又はそれ以上の視野角を有してもよい。各レンズ１１及び１２の光軸は、その視野角の略中央を通る。
【００６１】
多眼カメラ１０は、さらに、レンズ１１及び１２それぞれに対応して配置される２つの撮像素子（図示せず）を備えている。各レンズ１１及び１２と、これに対応する撮像素子とは、広角カメラを形成する。各広角カメラは、レンズ１１及び１２の光軸を中心とする広角な視野角を有する。
【００６２】
このような多眼カメラ１０は、２つの広角カメラからなり且つ広角な視野角を有する多眼カメラである。レンズ１１とレンズ１１に対応する撮像素子とを含む広角カメラをカメラ２１、レンズ１２とレンズ１２に対応する撮像素子とを含む広角カメラをカメラ２２と呼ぶ。カメラ２１及び２２は多眼カメラに一体として含まれる、又は、それぞれが分離したカメラとして使用される。
【００６３】
また、撮像素子は、レンズ１１及び１２のうち対応するレンズを通って入射する光を受光して、受光した光から像を形成するものであればよく、例えば、ＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ−Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）イメージセンサ又はＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）イメージセンサであってもよい。
【００６４】
図４を参照すると、図３の多眼カメラ１０をレンズ１１及び１２の光軸ＯＡと垂直な方向から見た側面図が示されている。図４に示されるように、多眼カメラ１０のレンズ１１及び１２の視野である撮影範囲１１ａ及び１２ａは少なくとも部分的に重なる。なお、本実施の形態では、レンズ１１及び１２は、同一の視野角を有するため、その撮影範囲１１ａ及び１２ａのそれぞれは、同等の形状及び寸法である。
【００６５】
例えば、上述のような多眼カメラ１０は、図５に示すように、車両の一例である自動車５０に搭載され、自動車５０の周囲の監視、周囲の障害物の検出、周囲の障害物までの距離の測定、運転支援等の機能を果たすことができる。図５では、多眼カメラ１０の自動車５０への搭載例が平面図で示されている。４つの多眼カメラ１０ａ、１０ｂ、１０ｃ及び１０ｄがそれぞれ、自動車５０のフロント部分５０ａ、リア部分５０ｂ、運転席側サイド部分５０ｃ、及び、助手席側サイド部分５０ｄに配置されている。いずれも広角な視野角を有する多眼カメラ１０ａ、１０ｂ、１０ｃ及び１０ｄそれぞれの視野範囲１０ａａ、１０ｂａ、１０ｃａ及び１０ｄａは、隣り合う視野範囲と部分的に重複する。これにより、多眼カメラ１０ａ、１０ｂ、１０ｃ及び１０ｄは、自動車５０の周囲全体にわたる領域を途切れなく監視等することができる。
【００６６】
［１−１−３．カメラ校正装置の構成］
実施の形態１に係るカメラ校正装置１０１の構成を説明する。カメラ校正装置１０１は、２つ以上のレンズを備える多眼カメラ及び２つ以上のカメラの組に対して、適用可能である。しかしながら、本実施の形態では、上述したように、２つのレンズ１１及び１２を備える多眼カメラ１０に対して、カメラ校正装置１０１が適用される例を説明する。
【００６７】
図６Ａを参照すると、実施の形態１に係るカメラ校正装置１０１の機能的な構成の一例が、ブロック図で示されている。カメラ校正装置１０１は、校正点データ受付部１０２、カメラパラメータ取得部１０３、見込角対応長算出部１０４、ステレオ測距値算出部１０５、カメラパラメータ更新部１０６、及びカメラパラメータ出力部１０７を含む。カメラ校正装置１０１は、カメラに設定されている初期カメラパラメータと、３次元空間内に設定された校正点に関する校正点データとを用いて、カメラパラメータを最適なカメラパラメータに更新し出力する、つまり、カメラパラメータを校正する。初期カメラパラメータは、カメラの設計時のカメラパラメータであってもよく、使用段階においてカメラに設定されているカメラパラメータであってもよい。カメラ校正装置１０１は、工場出荷前のカメラの校正に利用可能であり、カメラの点検、修理の際のカメラの校正にも利用可能である。
【００６８】
なお、本明細書においてカメラを校正するとは、実機のカメラのカメラパラメータを求めることを意味する。このようなカメラ校正装置１０１は、カメラパラメータ算出装置とも呼ばれる。カメラ校正装置１０１の各構成要素の詳細を、以下に説明する。
【００６９】
（校正点データ受付部１０２）
校正点データ受付部１０２は、校正点データを受け取り、見込角対応長算出部１０４に出力する。例えば、校正点データ受付部１０２は、校正点データベース（校正点ＤＢとも呼ぶ）１０９から校正点データを受け取る。第１のメモリが、校正点データベース１０９を保持してもよい。本実施の形態では、校正点データベース１０９は、カメラ校正装置１０１の外部に設けられる第１のメモリに含まれるが、カメラ校正装置１０１が備えるメモリ等に含まれていてもよい。又は、校正点データベース１０９は、カメラ校正装置１０１を備える装置又はシステムの記憶装置に含まれていてもよく、多眼カメラ１０が備える記憶装置に含まれていてもよい。第１のメモリ、メモリ及び記憶装置は、ハードディスク又は半導体メモリで構成されてもよい。校正点データは、校正の基準とする点である校正点の位置を示す３次元座標と、各カメラで校正点を撮像した２次元画像における校正点に対応する点の画素位置を示す２次元座標とを含む。校正データでは、校正点の位置を示す３次元座標と各カメラで校正点を撮像した２次元画像における校正点に対応する点の画素位置を示す２次元座標とが対応付けられている。
【００７０】
校正点データの例を図６Ｂに示す。例えば、校正点の位置を示す３次元座標（ｘ１，ｙ１，ｚ１）と、カメラ２１で上記校正点を撮像した２次元画像における上記校正点に対応する点の画素位置を示す２次元座標（ｘ２１１，ｙ２１１）とが対応付けられている。校正点の位置を示す３次元座標（ｘ１，ｙ１，ｚ１）と、カメラ２２で上記校正点を撮像した２次元画像における上記校正点に対応する点の画素位置を示す２次元座標（ｘ２２１，ｙ２２１）とが対応付けられている。校正点は、カメラ２１及び２２のいずれの視野にも含まれるように、配置される。
【００７１】
例えば、校正点のことを、３次元座標の１点（Ｘ，Ｙ，Ｚ）と、当該１点に対応する２次元画像中の画像座標の１点（ｍｘ，ｎｙ）との情報を用いて、表記してもよい。上記表記の場合、複数の校正点データは、複数の校正点の情報を含む。なお、ｍ及びｎはそれぞれ、整数であり、２次元画像は２次元に画素が配置され、画像座標は２次元画像中のｘ軸方向及びｙ軸方向の画素の位置を示す。
【００７２】
ここで、校正点データを作成するために、多眼カメラ１０が存在する３次元空間中での校正点の３次元座標と、３次元空間中の校正点を多眼カメラ１０のカメラ２１及び２２それぞれで撮影した２次元画像における校正点に対応する点の画像座標又は画素位置とを対応付ける必要がある。この目的のために、従来、上述したようなパターン形状が既知のチェッカーパタンなどの校正指標を用いる手法が行われている。本実施の形態でも、校正点データベース１０９に格納される各校正点データにおいて、校正点の３次元座標と、２次元画像における当該校正点に対応する点の画像座標又は画素位置との対応付けは、既存の方法で行われてよい。既存の方法は図２を用いて説明した方法であってもよい。このような校正点データが予め作成され、校正点データベース１０９に格納される。
【００７３】
（カメラパラメータ取得部１０３）
カメラパラメータ取得部１０３は、校正対象である多眼カメラ１０のカメラ２１及び２２それぞれの初期カメラパラメータを取得し、見込角対応長算出部１０４に出力する。初期カメラパラメータは、カメラ２１及び２２の内部パラメータ及び外部パラメータを含む。初期カメラパラメータは、校正を行う前に予め設定されているカメラパラメータである。
【００７４】
初期カメラパラメータは、例えば、多眼カメラ１０のカメラ２１及び２２の設計時に設定される設計パラメータであってもよく、多眼カメラ１０が使用されている段階で、カメラ２１及び２２に既に設定されているカメラパラメータであってもよい。初期カメラパラメータは、例えば、カメラパラメータのデータベースであるカメラパラメータデータベース（カメラパラメータＤＢとも呼ぶ）１１０に、記録されてもいてもよい。第２のメモリがカメラパラメータデータベース１１０を保持してもよい。カメラパラメータ取得部１０３は、カメラパラメータデータベース１１０を参照して、カメラパラメータデータベース１１０に記録される初期カメラパラメータを取得する。初期カメラパラメータの一例は、上記の式１に含まれるカメラパラメータである。本実施の形態では、カメラパラメータデータベース１１０は、カメラ校正装置１０１の外部に設けられる第２のメモリに含まれるが、カメラ校正装置１０１が備えるメモリ等に含まれていてもよい。又は、カメラパラメータデータベース１１０は、カメラ校正装置１０１を備える装置又はシステムの記憶装置に含まれていてもよく、多眼カメラ１０が備える記憶装置に含まれていてもよい。第２のメモリ、メモリ及び記憶装置は、ハードディスク又は半導体メモリで構成されてもよい。
【００７５】
あるいは、Ｔｓａｉによる非特許文献１又はＺｈａｎｇによる非特許文献２で開示される既知の方法を用いて、初期カメラパラメータを推定してもよい。このような初期カメラパラメータの推定は、チェッカーパタン等の校正指標を使用して、世界座標の点の座標と、世界座標の点に対応付けられた画像座標の点の座標との組を取得することにより、行われてよく、校正がその後に行われるため、推定精度は粗くてもよい。なお、非特許文献１（Ｔｓａｉ）の方法を用いる場合と特許文献２（Ｚｈａｎｇ）の方法を用いる場合には、必要な情報が異なる。
【００７６】
例えば、非特許文献１（Ｔｓａｉ）の方法を用いて初期カメラパラメータを算出するためには、１３組以上の世界座標の点の座標と画像座標の点の座標との組が必要である。また、非特許文献２（Ｚｈａｎｇ）の方法を用いて初期カメラパラメータを算出するためには、３つ以上の２次元画像と、１３組以上の世界座標の点の座標と画像座標の点の座標との組とが必要である。
【００７７】
（見込角対応長算出部１０４）
見込角対応長算出部１０４は、校正点データ受付部１０２より受け取った校正点データに含まれる校正点それぞれについて、初期カメラパラメータに基づいて、各校正点から多眼カメラ１０のカメラ２１及び２２のペアに対する見込角対応長を算出する。具体的には、校正点の数量と同数の見込角対応長が算出される。
【００７８】
「本開示の基礎となった知見」に述べたことから、カメラ２１及び２２のペアに対する見込角対応長は、２つのカメラから校正点を見た場合の見込角に対応し且つ見込角に相関する長さであると定義できる。見込角対応長は、見込角の大きさに応じて変化する。本実施の形態では、見込角対応長は、２Ｌｓｉｎ（見込角／２）である。なお、Ｌは２つのカメラのいずれかのレンズの中心位置と校正点との間の距離である。
【００７９】
ここで、図７を参照して、カメラ２１及び２２に関して、本実施の形態における３次元空間中での見込角対応長を説明する。なお、図７は、実施の形態１に係るカメラ校正装置１０１が用いる見込角対応長の一例を示す図である。カメラ２１及び２２の基線長は、カメラ２１及び２２のレンズ中心間の距離であり、カメラ２１のレンズ中心及びカメラ２２のレンズ中心を結ぶ線分Ｌ１の長さである。なお、レンズ中心とはレンズの光軸とレンズ表面との２交点のうち、校正点に近い側の点と考えてもよい。「〜からカメラまでの距離」とは、「〜からカメラのレンズ中心までの距離」であってもよい。「カメラから〜の距離」とは、「カメラのレンズ中心から〜までの距離」であってもよい。本例では、校正点Ｐ１からカメラ２１及び２２それぞれまでの距離が異なるため、校正点Ｐ１からカメラ２１及び２２を見た場合の見込角に対するカメラ２１及び２２の見込角対応長は、カメラ２１及び２２の基線長であるラインＬ１の長さと異なる。校正点Ｐ１からカメラ２１の距離と校正点Ｐ１からカメラ２２の距離とが同一の場合、基線長と見込角対応長とは一致する。
【００８０】
具体的には、見込角対応長は、カメラ２１のレンズの中心（具体的には、投影中心）を通る線分Ｌ１ａの長さ、又は、カメラ２２のレンズの中心（具体的には、投影中心）を通る線分Ｌ１ｂの長さとすることができる。線分Ｌ１ａは、カメラ２１のレンズの中心を通り且つラインＬ２及びＬ３が形成する内角αの二等分線であるラインＬ４と垂直であり、さらに、ラインＬ２及びＬ３との交点を端点とする。内角αは、カメラ２１及び２２から校正点Ｐ１を見るときのカメラ２１及び２２の視線の見込角である。ラインＬ４は、線分Ｌ１ａの中点Ｍａを通り、線分Ｌ１ａの垂直二等分線となる。なお、ラインＬ２は、校正点Ｐ１とカメラ２１のレンズの中心とを結ぶラインであり、ラインＬ３は、校正点Ｐ１とカメラ２２のレンズの中心とを結ぶラインである。また、線分Ｌ１ｂは、カメラ２２のレンズの中心を通り且つラインＬ４と垂直であり、さらに、ラインＬ２及びＬ３との交点を端点とする。ラインＬ４は、線分Ｌ１ｂの中点Ｍｂを通り、線分Ｌ１ｂの垂直二等分線となる。
【００８１】
線分Ｌ１ａの長さは、見込角αを中心角とし、かつカメラ２１のレンズの中心を通る円弧を有する扇形の円弧の弦の長さでもある。線分Ｌ１ｂの長さは、ラインＬ２とラインＬ３とが形成する見込角αを中心角とし、かつカメラ２２のレンズの中心を通る円弧を有する扇形の円弧の弦の長さでもある。このように、見込角対応長は、２Ｌｓｉｎ（見込角／２）である。なお、Ｌは２つのカメラのいずれかのレンズの中心位置と校正点との長さである。
【００８２】
見込角対応長は、線分Ｌ１ａの長さ及び線分Ｌ１ｂの長さに限定されない。例えば、見込角対応長は、見込角αを中心角とする扇形のいずれの弦の長さであってもよい。例えば、見込角対応長は、ラインＬ１ａ及びＬ１ｂの間の弦の長さであってもよい。なお、図７で示した点及びラインは全て同一平面上（紙面）に位置する。
【００８３】
また、見込角対応長は、これに相関する見込角αの大きさで代用されてもよい。見込角αの変化は、見込角対応長の変化を示すことができ、見込角対応長の変化と１対１で対応する。具体的には、見込角αが大きくなれば、見込角対応長が長くなり、見込角αが小さくなれば、見込角対応長が短くなる。見込角αと、校正点Ｐ１とカメラ２１又は２２のレンズの中心との距離とにより、見込角対応長の算出が可能である。
【００８４】
（ステレオ測距値算出部１０５）
ステレオ測距値算出部１０５は、カメラ２１及び２２を用いて各校正点を撮影した結果を、校正点データ受付部１０２から取得する。具体的には、ステレオ測距値算出部１０５は、校正点データ受付部１０２から、校正点データを受け取る。校正点データは図６Ｂに示すように、校正点の３次元座標と、各カメラで校正点を撮像した２次元画像における校正点に対応する点の画素位置とを含む。ステレオ測距値算出部１０５は、校正点データから、カメラペアたるカメラ２１及び２２の撮影画像それぞれにおける校正点に対応する画像座標を取得する。また、ステレオ測距値算出部１０５は、カメラ２１及び２２それぞれのカメラパラメータを取得する。ステレオ測距値算出部１０５は、カメラ２１及び２２のカメラパラメータと、カメラ２１及び２２により取得された校正点に対応する点の画像座標とを使用して、ステレオ測距技術を用いた画像処理により、各校正点に対応する３次元座標を算出する。以下の説明において、上述のような校正点に対応する３次元座標を有する点を測距点と呼び、測距点の３次元座標をステレオ測距値とも呼ぶ。例えば、カメラ２１及び２２は校正点を含む画像をそれぞれ撮像する。ここで校正点の３次元座標は（ｘ２，ｙ２，ｚ２）とする（図６Ｂ参照）。カメラ２１で撮像した画像におけるこの校正点に対応する画素座標（ｘ２１２，ｙ２１２）、及び、カメラ２２で撮像した画像におけるこの校正点に対応する画素座標（ｘ２２２，ｙ２２２）を後述するステレオ測距技術を用いた画像処理することにより、３次元座標（ｘ２，ｙ２，ｚ２）で特定される校正点に対応する測距点を算出する。
【００８５】
上記ステレオ測距技術をカメラ２１及び２２のカメラモデルが式１のピンホールカメラモデルであるとして説明する。式１より、世界座標（Ｘ，Ｙ，Ｚ）を画像に投影した画像座標（ｘ，ｙ）は一意に定まるが、画像座標（ｘ，ｙ）とカメラパラメータとから世界座標（Ｘ，Ｙ，Ｚ）を一意に算出することはできず、世界座標（Ｘ，Ｙ，Ｚ）が存在し得る直線λの方向ベクトル（視線ベクトルＶ）のみ算出可能である。カメラ２１及び２２の上記直線λをそれぞれλ２１及びλ２２とし、カメラ２１及び２２の上記視線ベクトルＶをそれぞれＶ２１及びＶ２２とする。カメラパラメータと校正点との間に誤差がない場合、直線λ２１と直線λ２２とは一点で交差し、当該交差した点の３次元座標が測距点（ｘ２，ｙ２，ｚ２）となる。一方、上記誤差がある場合、直線λ２１と直線λ２２とはねじれの位置となるため、直線λ２１上の点ω２１と直線λ２２上の点ω２２との間の距離が最小となる点ω２１及び点ω２２を算出し、点ω２１と点ω２２との中点、点ω２１、又は、点ω２２を測距点（ｘ２，ｙ２，ｚ２）とすればよい。点ω２１と点ω２２とを通る直線λ２３が直線λ２１及び直線λ２２の双方に垂直に交わる場合、点ω２１と点ω２２との間の距離が最小となる点ω２１及び点ω２２を、世界座標の原点Ｏを基準とする位置ベクトルとして、下記の式３で示すように算出できる。ここで、カメラ２１及び２２のカメラ位置の世界座標をそれぞれＰ２１及びＰ２２する。世界座標Ｐ２１及びＰ２２のＸ成分、Ｙ成分及びＺ成分はそれぞれ、カメラ２１及び２２のカメラパラメータのＴＸ、ＴＹ及びＴＺである。
【００８６】
【数３】
2018179981.tif 000005
【００８７】
視線ベクトルＶ２１及びＶ２２が平行である場合を除き、式３に含まれる逆行列は算出できる。
【００８８】
校正点それぞれに対応して、１つの測距点が形成される。なお、上記ステレオ測距技術は、２つのカメラで撮影した２つの撮影画像上での校正点の位置の違い、つまり、視差から、校正点の３次元座標を算出するステレオ画像認識技術であり、既知の任意の技術の適用が可能である。
【００８９】
（カメラパラメータ更新部１０６）
カメラパラメータ更新部１０６は、校正点データ受付部１０２から各校正点の校正点データを取得し、カメラパラメータ取得部１０３からカメラ２１及び２２の初期カメラパラメータを取得し、ステレオ測距値算出部１０５から各校正点に対応する測距点の３次元座標を取得する。カメラパラメータ更新部１０６は、取得した情報を使用して、カメラ２１及び２２のカメラパラメータを新たなカメラパラメータに変更する、つまり更新する必要があるか否かを判定し、更新する必要がある場合、カメラ２１及び２２のカメラパラメータを新たに算出する。上記判定において、カメラパラメータ更新部１０６は、取得した情報を使用して、各校正点について、校正点と測距点との位置の差異である測距誤差を算出し、さらに、測距誤差を用いた評価値を算出する。そして、カメラパラメータ更新部１０６は、評価値に基づき、カメラパラメータを更新すべきか否かを判定する。カメラパラメータ更新部１０６の詳細は、後述する。
【００９０】
（カメラパラメータ出力部１０７）
カメラパラメータ出力部１０７は、カメラパラメータ更新部１０６で算出されたカメラパラメータを出力する。例えば、カメラパラメータ出力部１０７は、カメラ校正装置１０１が構成する装置等に、カメラパラメータを出力してもよい。
【００９１】
カメラ校正装置１０１は、例えば、プロセッサ、メモリ、インタフェース回路などからなるコンピュータ装置（不図示）によって実現されてもよい。カメラ校正装置１０１の上記構成要素の一部又は全部の機能は、例えば、プロセッサがメモリにあらかじめ記録されたプログラムを実行することによって達成されるソフトウェア機能であってもよい。また、カメラ校正装置１０１は、上述した動作を行う専用のハードウェア回路（不図示）によって実現されてもよい。プログラムは、アプリケーションとして、インターネット等の通信網を介した通信、モバイル通信規格による通信等で提供されるものであってもよい。
【００９２】
また、カメラ校正装置１０１は、必ずしも単一のコンピュータ装置で実現される必要はなく、端末装置とサーバとを含む分散処理システム（不図示）によって実現されてもよい。一例として、校正点データ受付部１０２、カメラパラメータ取得部１０３を、端末装置に設け、見込角対応長算出部１０４、ステレオ測距値算出部１０５及びカメラパラメータ更新部１０６の一部又は全部の機能をサーバで実行してもよい。この場合、構成要素間でのデータの受け渡しは、端末装置とサーバとに接続された通信回線を介して行われる。
【００９３】
［１−２．カメラ構成装置の動作］
図８を参照して、実施の形態１に係るカメラ校正装置１０１の動作を説明する。なお、図８は、実施の形態１に係るカメラ校正装置１０１の動作の流れの一例を示すフローチャートである。具体的には、カメラ校正装置１０１によるカメラパラメータの算出処理を説明する。カメラパラメータの算出処理であるステップＳ３００の処理は、以下のステップＳ３０１〜Ｓ３０８の処理で構成されている。
【００９４】
（ステップＳ３０１）
まず、カメラ校正装置１０１の校正点データ受付部１０２は、校正点データベース１０９から、カメラ校正に使用する校正点の校正点データを取得し、見込角対応長算出部１０４に出力する。校正点データベース１０９には、各校正点の３次元座標及び画像座標が組み合わされて格納されている。各校正点の画像座標は、多眼カメラ１０の各カメラ２１及び２２を用いて各校正点を撮影することよって、予め取得される。
【００９５】
（ステップＳ３０２）
また、カメラ校正装置１０１のカメラパラメータ取得部１０３は、カメラ校正に使用する多眼カメラ１０のカメラ２１及び２２それぞれの初期カメラパラメータを、カメラパラメータデータベース１１０から取得する。具体的には、カメラパラメータ取得部１０３は、校正対象の情報としてカメラ２１及び２２の情報を取得し、さらに、カメラパラメータデータベース１１０において、取得した校正対象のカメラ２１及び２２の情報を参照して、当該カメラ２１及び２２に対応付けられた初期カメラパラメータを取得する。初期カメラパラメータは、各カメラ２１及び２２のカメラパラメータの設計値を用いる、又は、テスト等によって各カメラ２１及び２２のカメラパラメータを計測すること等によって、予め取得され、カメラパラメータデータベース１１０に格納されている。後述するように、カメラパラメータ取得部１０３は、カメラパラメータ更新部１０６から更新後のカメラパラメータを取得する場合もある。
【００９６】
（ステップＳ３０３）
ステップＳ３０１及びＳ３０２に次いで、カメラ校正装置１０１の見込角対応長算出部１０４は、校正点データに含まれる各校正点について、カメラ２１及び２２の見込角対応長を、カメラ２１及び２２の初期カメラパラメータに基づき算出する。なお、見込角対応長算出部１０４は、カメラパラメータ更新部１０６によって更新された場合には、更新後のカメラパラメータに基づき、見込角対応長を算出する。
【００９７】
例えば、図７の場合、見込角対応長算出部１０４は、複数の校正点のうちから選択した校正点（本例では、校正点Ｐ１）の３次元座標と、校正対象であるカメラ２１及び２２の３次元座標とを取得する。カメラの３次元座標は、当該カメラパラメータの外部パラメータから取得可能であり（式１の場合、ＴＸ、ＴＹ及びＴＺがそれぞれカメラの３次元座標のＸ座標、Ｙ座標及びＺ座標に対応する）、カメラのレンズの中心位置を示す。次いで、見込角対応長算出部１０４は、校正点Ｐ１の３次元座標と、カメラ２１及び２２の３次元座標とを用いて、校正点Ｐ１の３次元座標とカメラ２１及び２２の３次元座標とによって規定される２次元平面上で形成される三角形を求める。本例では、カメラ２１が、カメラ２２よりも校正点Ｐ１に近い。見込角対応長算出部１０４は、形成した三角形が位置する２次元平面上において、例えば、校正点Ｐ１とカメラ２１の位置との間の距離に基づく見込角対応長、つまり、ラインＬ１ａの長さを算出する。
【００９８】
（ステップＳ３０４）
ステップＳ３０３に次いで、カメラ校正装置１０１のステレオ測距値算出部１０５は、校正点データ受付部１０２から取得する校正点データと、カメラパラメータ取得部１０３から取得するカメラ２１及び２２の初期カメラパラメータとに基づき、ステレオ測距処理をし、各校正点に対応する測距点の３次元座標を取得する。ステレオ測距値算出部１０５は、全ての校正点について、測距点の３次元座標を算出する、つまり、校正点のステレオ測距値を算出する。なお、ステレオ測距値算出部１０５は、カメラパラメータ更新部１０６によって更新された場合には、更新後のカメラパラメータに基づき、ステレオ測距処理をする。
【００９９】
例えば、図９を参照すると、校正点Ｐｋ（ｋ＝１，２，・・・，Ｎ）それぞれと、ステレオ測距により取得された校正点Ｐｋの測距点Ｔｋ（ｋ＝１，２，・・・，Ｎ）それぞれとの位置関係の一例が示されている。なお、図９は、実施の形態１に係るカメラ校正装置１０１が校正するカメラ２１及び２２と、校正点Ｐｋと、校正点Ｐｋの測距点Ｔｋとの関係の一例を示す図である。校正点Ｐｋの位置は、校正点データに含まれる３次元座標で定められた３次元位置である。測距点Ｔｋは、カメラ２１及び２２により校正点Ｐｋをステレオ測距して取得される点である。カメラ２１及び２２のカメラパラメータに誤差がある場合、図９に示すように、校正点Ｐｋの３次元位置と、測距点Ｔｋの３次元位置とが相違し得る。
【０１００】
（ステップＳ３０５）
ステップＳ３０４に次いで、カメラ校正装置１０１のカメラパラメータ更新部１０６は、ステップＳ３０１で取得された各校正点の校正点データ、ステップＳ３０３で算出された見込角対応長、及び、ステップＳ３０４で算出された各測距点の３次元座標に基づき、校正点と測距点との位置の差異に関する評価値Ｊを算出する。なお、評価値Ｊは、下記の式４に示すような関数（評価関数と呼ばれる）を用いて算出され、具体的には、評価値Ｊは校正点と校正点に対応する測距点のペアそれぞれにおける校正点と測距点との３次元距離（ユークリッド距離）の重み付き加算で定義される。校正点と測距点との３次元距離は、測距誤差でもあり、ステレオ測距誤差とも呼ばれる。例えば、図９に示すように、カメラパラメータの誤差等に起因して、校正点Ｐｋの測距点Ｔｋと校正点Ｐｋとの間に、３次元距離が生じ得る。なお、式４において、Ｎは、校正点の数量であり、ｗｋは、校正点Ｐｋ及び測距点Ｔｋのユークリッド距離に付与される重みである。Ｔｋは測距点Ｔｋの３次元座標であり、Ｐｋは校正点Ｐｋの３次元座標である。本実施の形態では、下記の式５に示すように、重みｗｋは、測距点Ｔｋに対するカメラ２１及び２２の見込角対応長ｄｅｆｆ，ｋを示す。例えばｗ２は、図９において校正点Ｐ２から見たときのカメラ２１とカメラ２２の見込み角に対する見込角対応長である。
【０１０１】
【数４】
2018179981.tif 000006
【０１０２】
【数５】
2018179981.tif 000007
【０１０３】
（ステップＳ３０６）
ステップＳ３０５に次いで、カメラパラメータ更新部１０６は、ステップＳ３０５での処理の結果、カメラパラメータの更新を終了する条件が満たされているか否かを判定する。終了条件が満たされている場合（ステップＳ３０６でＹＥＳ）、カメラパラメータ更新部１０６は、カメラパラメータを変更せずに、判定結果等の情報をカメラ校正装置１０１のカメラパラメータ出力部１０７に出力し、ステップＳ３０８の処理に進む。終了条件が満たされていない場合（ステップＳ３０６でＮＯ）、カメラパラメータ更新部１０６は、ステップＳ３０７の処理に進む。終了条件は、予め設定されたカメラパラメータの探索範囲内の評価値Ｊの算出を完了することと、評価値Ｊが第一閾値よりも小さいことと、後述するステップＳ３０２〜Ｓ３０７の一連の処理の繰り返し回数が第二閾値以上となることとのうち少なくとも１つを満たすことであってよい。
【０１０４】
カメラパラメータの探索範囲内の評価値Ｊの算出を完了することは、予め定めた探索条件において、取り得る全ての探索条件の試行が完了したことである。例えば、焦点距離のみ（１変数）に関して、その探索範囲１．１０〜１．３０ｍｍを０．０１ｍｍのステップサイズで等間隔に探索する場合（グリッドサーチと呼ばれる）、２１個の焦点距離値について評価値を計算すればよい。また、複数の変数を探索する場合、複数の変数の値の取り得る全ての組について計算する必要がある。例えば、３つ変数それぞれにおいて、探索範囲がステップサイズで１０個に分けられる場合、１１３回の評価値の計算が必要になる。
【０１０５】
上記一連の処理の繰り返し回数は、カメラパラメータの更新回数でもある。上記第一閾値は、校正点に対する測距点の３次元位置の許容誤差等に基づき、適宜設定され得る。上記第二閾値は、例えば、カメラ校正装置１０１全体の処理速度及び経験的なデータ等を考慮して設定されてもよく、例えば、１００回程度であってもよい。又は、上記第二閾値は、反復処理による評価値Ｊの変化、つまり、評価値Ｊの勾配に基づき、評価値Ｊの変化が収束したと推定できるような値としてもよい。
【０１０６】
（ステップＳ３０７）
カメラパラメータ更新部１０６は、カメラ２１及び２２のカメラパラメータを、カメラパラメータの探索範囲内で変更する、つまり更新する。更新されるカメラパラメータは、初めてステップＳ３０７の処理が行われる場合、初期カメラパラメータであり、後述する反復処理中では、反復処理の過程で更新された最新のカメラパラメータである。例えば、カメラパラメータ更新部１０６は、評価値Ｊの算出結果の履歴等から、非線形最適化法等の手法を用いて、評価値Ｊを最小化する又は小さくするようにカメラパラメータを変更する。そして、カメラパラメータ更新部１０６は、更新後のカメラパラメータをカメラパラメータ取得部１０３に出力し、ステップＳ３０２の処理に進む。これにより、更新後のカメラパラメータを用いて、ステップＳ３０２〜Ｓ３０６の処理が再び繰り返される。このように、ステップＳ３０２〜Ｓ３０７の処理が反復されることによって、評価値Ｊを最小化つまり最適化するように、カメラパラメータが更新される。例えば、公知技術であるグリッドサーチを用いて評価値Ｊを最小化できる。初期カメラパラメータの近傍などの最適値が含まれると考えられる範囲である探索範囲に対し、一定の間隔で評価値Ｊを算出し、算出した評価値Ｊの中から評価値Ｊが最小となるカメラパラメータを取得することができる。なお、上記の式１のように、２個以上の変数でカメラパラメータが構成される場合、各変数を軸とする多次元空間を同様に探索すればよい。
【０１０７】
なお、カメラパラメータの探索範囲は、ステップＳ３０６での判定に使用されたカメラパラメータの探索範囲と同一である。カメラパラメータの探索範囲は、予め設定された各カメラパラメータが取り得る範囲である。例えば、画像中心位置成分Ｃｘ及びＣｙ、焦点距離ｆ、並びに、撮像素子長さｄ’ｘ及びｄ’ｙの探索範囲は、それぞれ設計値の±５％としてもよい。また、例えば、カメラ位置の回転成分Ｒｘ、Ｒｙ及びＲｚによる回転角度の探索範囲は、初期値の±１０度としてもよく、カメラ位置の並進移動成分ＴＸ、ＴＹ及びＴＺによる並進距離の探索範囲は、初期値の±０．２ｍとしてもよい。回転角度及び並進距離の初期値は、カメラ２１及び２２と多眼カメラとの位置関係をスケール等で計測することによって、求められてもよい。
【０１０８】
また、ステップＳ３０２〜ステップＳ３０７の反復処理の計算時間を削減するために、カメラパラメータの探索範囲は、初期カメラパラメータ近傍に限定した範囲であってもよく、反復処理を行うことによる評価値Ｊの変化の勾配を用いて最急降下法などを適用して算出されてもよい。
【０１０９】
（ステップＳ３０８）
カメラパラメータ出力部１０７は、ステップＳ３０５で算出された評価値Ｊと、当該評価値Ｊに対応するカメラ２１及び２２のカメラパラメータとの組とを取得する。評価値Ｊに対応するカメラパラメータは、当該評価値Ｊの算出時に最新であるカメラパラメータであり、当該評価値Ｊの算出処理の過程で使用されたカメラパラメータでもある。ステップＳ３０２〜ステップＳ３０７の反復処理が行われなかった場合、カメラパラメータ出力部１０７は、初期カメラパラメータを出力する。ステップＳ３０２〜ステップＳ３０７の反復処理が行われた場合、カメラパラメータ出力部１０７は、取得した複数の組のカメラパラメータ及び評価値から、評価値が最小の組のカメラパラメータを選択し、選択したカメラパラメータを最適カメラパラメータとして出力する。
【０１１０】
上述のステップＳ３０１〜Ｓ３０８の一連の処理は、校正したカメラパラメータを算出し出力する処理であり、カメラパラメータ算出処理Ｓ３００を形成する。
【０１１１】
このような手順に従って多眼カメラ１０のカメラ２１及び２２を校正することにより、多眼カメラ１０を用いてステレオ測距した場合に、視野角の端近傍の撮影画像外周部において、測距点の測距誤差を低減できる。以下にこのことを順に説明する。すなわち、見込角対応長が、ステレオ測距での測距誤差の大きさに関係することを示す。
【０１１２】
ステレオ測距において、着目校正点に向かうカメラの視線ベクトルに角度誤差を生じた場合の測距誤差を見積もる。測距誤差ベクトルの分布は３次元空間中に非線形に広がり、解析的に求めることはできないため、近似計算は２次元平面上で行う。
【０１１３】
図１０を用いて、多眼カメラ１０のカメラ２１を例に挙げて、測距点Ｔｋの測距誤差を説明する。なお、図１０は、図９のカメラ２１を用いたステレオ測距における測距誤差の一例を示す図である。校正点Ｐｋへのカメラ２１の視線ベクトルと、カメラ２１及び２２の見込角対応長をなすラインＬ１ａとがなす角φの角度誤差をΔφとする。角φが、角度誤差Δφ分変化した場合の校正点Ｐｋの測距点Ｔｋの位置をそれぞれ、点Ｑ及び点Ｒとする。点Ｑは、角度誤差Δφによって角φが減少する場合の測距点Ｔｋの位置であり、点Ｒは、角度誤差Δφによって角φが増加する場合の測距点Ｔｋの位置である。校正点Ｐｋを中心とした点Ｑ及び点Ｒの分布は、２次元平面中に広がり、校正点Ｐｋと点Ｑとの距離及び校正点Ｐｋと点Ｒとの距離を解析的に求めることはできないので、点Ｑ及び点Ｒの距離の半分を測距点Ｔｋの測距誤差ΔＬとする。そして、このような測距誤差ΔＬは、下記の式６に従って算出することができる。
【０１１４】
【数６】
2018179981.tif 000008
【０１１５】
ここで、式６において、Ｌは、カメラ２１のラインＬ１ａから着目校正点Ｐｋまでの距離であり、線分ＭａＰｋの長さとしてもよい。なお、点Ｍａは、図７と同様であり、ラインＬ１ａの中点である。又は、Ｌは、着目校正点Ｐｋと、カメラ２１及び２２間の重心位置との距離としてもよい。ｄｅｆｆは、カメラ２１及び２２の見込角対応長である。式６の近似計算が成り立つ条件は、Ｌ≫ｄｅｆｆ、Δφ≪０．０２［ｒａｄ］、且つ、φ≠π／２［ｒａｄ］である。φ≠π／２［ｒａｄ］とは、φがπ／２［ｒａｄ］近傍でないことを意味し、例えばφ＜４π／９［ｒａｄ］であってもよい。数学記号「≫」及び「≪」の範囲の例に関して、求めるカメラパラメータの数値の有効桁数において、Ｌ≫ｄｅｆｆの場合、ｄｅｆｆ／（Ｌ×Ｌ）≒０が成り立つ範囲であり、Δφ≪０．０２［ｒａｄ］の場合、ｓｉｎφ≒φが成り立つ範囲である。
【０１１６】
式６より、測距誤差ΔＬは、角度誤差Δφ、着目校正点Ｐｋの距離Ｌの２乗、及び、見込角対応長ｄｅｆｆの逆数に比例する。すなわち、見込角対応長は、測距点の測距誤差の大きさに関係し、具体的には、見込角対応長が小さくなる程、当該測距誤差が大きくなる。
【０１１７】
以上のことから、ステップＳ３０５における評価値Ｊは、見込角対応長に基づき重み付けされた測距誤差の和に対応する。このような評価値Ｊにおいて、見込角対応長が短いことで大きくなる測距誤差の重み、つまり、比重が低減されるため、評価値Ｊは、見込角対応長による影響を低減した状態で、各校正点とその測距点との測距誤差を含む。評価値Ｊを用いることによって、カメラの撮影画像の外周部に位置する校正点に起因する相対的に大きな測距誤差の影響を受けずに、カメラパラメータを評価し、その評価結果に基づき、カメラを校正することできる。また、評価値Ｊの算出に、各校正点における測距誤差の総和で定義される評価関数を用いるため、ステレオ測距における誤差を低減するカメラパラメータの算出が可能である。
【０１１８】
［実施の形態２］
実施の形態２に係るカメラ校正装置を説明する。実施の形態２に係るカメラ校正装置の構成は、実施の形態１と同様であり、実施の形態２に係るカメラ校正装置の動作の一部が、実施の形態１と異なる。具体的には、実施の形態１では、図８に示すカメラパラメータ算出処理Ｓ３００のステップＳ３０５において評価値Ｊを算出する際に用いた重みｗｋを、上記の式５に示すように見込角対応長としたが、実施の形態２では、重みｗｋを、正規化した見込角対応長とする。以下、実施の形態２について、実施の形態１と異なる点を中心に説明する。
【０１１９】
図１１を参照すると、実施の形態２に係るカメラ校正装置の動作の流れの一例を示すフローチャートが示されている。実施の形態２に係るカメラ校正装置は、カメラパラメータ算出処理Ｓ３１０を行う。カメラパラメータ算出処理Ｓ３１０は、ステップＳ３０５の代わりにステップＳ３１５の処理を含むことを除き、実施の形態１のカメラパラメータ算出処理Ｓ３００と同様である。
【０１２０】
そして、ステップＳ３１５において、カメラパラメータ更新部１０６は、各校正点の校正点データ、各校正点に対応する見込角対応長、及び、各校正点に対応する各測距点の３次元座標に基づき、上記の式４に示すように評価値Ｊを算出する。この際、カメラパラメータ更新部１０６は、校正点及びその測距点のユークリッド距離に適用する重みｗｋとして、下記の式７に示す重みｗｋを用いる。なお、式７における重みｗｋは、見込角対応長を、各校正点に対応する見込角対応長の総和で正規化したものである。
【０１２１】
具体的には、校正点Ｐｋとその測距点Ｔｋとのユークリッド距離に対応する重みｗｋは、校正点Ｐｋに対するカメラ２１及び２２の見込角対応長ｄｅｆｆ，ｋを、各校正点に対するカメラ２１及び２２の見込角対応長の総和で除算する、つまり正規化することによって取得される。見込角対応長の総和を、カメラパラメータ更新部１０６が算出してもよく、見込角対応長算出部１０４又はステレオ測距値算出部１０５が算出してもよい。また、カメラパラメータ更新部１０６による評価値Ｊの算出後、実施の形態１と同様に、ステップＳ３０６以降の処理が行われる。
【０１２２】
【数７】
2018179981.tif 000009
【０１２３】
以上のことから、その総和で正規化した見込角対応長は、見込角対応長の総和に依存しない重みとして、評価関数に使用できる。よって、評価値Ｊは、見込角対応長の総和に依存しない値となり、測距誤差の状態を正確に示すことができる。
【０１２４】
［実施の形態３］
実施の形態３に係るカメラ校正装置を説明する。実施の形態３に係るカメラ校正装置の構成は、実施の形態１と同様であり、実施の形態３に係るカメラ校正装置の動作の一部が、実施の形態１と異なる。具体的には、実施の形態１では、図８に示すカメラパラメータ算出処理Ｓ３００のステップＳ３０５において評価値Ｊを算出する際に用いた重みｗｋを、上記の式５に示すように見込角対応長としたが、実施の形態３では、重みｗｋを、見込角対応長が閾値よりも大きい場合に見込角対応長とし、見込角対応長が閾値以下の場合に０とする。以下、実施の形態３について、実施の形態１と異なる点を中心に説明する。
【０１２５】
図１２を参照すると、実施の形態３に係るカメラ校正装置の動作の流れの一例を示すフローチャートが示されている。実施の形態３に係るカメラ校正装置は、カメラパラメータ算出処理Ｓ３２０を行う。カメラパラメータ算出処理Ｓ３２０は、ステップＳ３０５の代わりにステップＳ３２５の処理を含むことを除き、実施の形態１と同様である。
【０１２６】
そして、ステップＳ３２５において、カメラパラメータ更新部１０６は、各校正点の校正点データ、各校正点に対応する見込角対応長、及び、各校正点に対応する各測距点の３次元座標に基づき、上記の式４に示すように評価値Ｊを算出する。この際、カメラパラメータ更新部１０６は、校正点及びその測距点のユークリッド距離に適用する重みｗｋとして、下記の式８に示す重みｗｋを用いる。式８における重みｗｋは、各校正点に対応する見込角対応長に基づき、見込角対応長が閾値αよりも大きい場合に見込角対応長を適用し、閾値α以下の場合に０を適用する。具体的には、重みｗｋが適用される校正点Ｐｋに対するカメラ２１及び２２の見込角対応長ｄｅｆｆ，ｋが、閾値α超であるか閾値α以下であるかに応じて、見込角対応長ｄｅｆｆ，ｋ又は０が適用される。
【０１２７】
【数８】
2018179981.tif 000010
【０１２８】
閾値αの一例として、ステレオカメラの基線長、つまりカメラ２１及び２２の基線長の１０％とすればよい。なお、重みｗｋは、その総和が１になるように、実施の形態２のように正規化してもよい。
【０１２９】
以上のことから、上記の式６の見込角対応長と測距点の測距誤差との関係に示されるように、見込角対応長が極端に短いことに起因して、測距誤差が無限大に発散するような校正点を除外することができる。これにより、多眼カメラ１０が車載で使用される場合等において、多眼カメラ１０近傍、つまり、車体近傍の測距精度を向上することが可能になる。
【０１３０】
［実施の形態４］
実施の形態４に係るカメラ校正装置を説明する。実施の形態４に係るカメラ校正装置の構成は、実施の形態１と同様であり、実施の形態４に係るカメラ校正装置の動作の一部が、実施の形態１と異なる。具体的には、実施の形態１では、図８に示すカメラパラメータ算出処理Ｓ３００のステップＳ３０５において測距点を統合する際に用いた重みｗｋを、上記の式５に示すように見込角対応長としたが、実施の形態４では、重みｗｋを、見込角対応長を校正点の奥行きで除算した値とする。以下、実施の形態４について、実施の形態１と異なる点を中心に説明する。
【０１３１】
図１３を参照すると、実施の形態４に係るカメラ校正装置の動作の流れの一例を示すフローチャートが示されている。実施の形態４に係るカメラ校正装置は、カメラパラメータ算出処理Ｓ３３０を行う。カメラパラメータ算出処理Ｓ３３０は、ステップＳ３０５の代わりにステップＳ３３５の処理を含むことを除き、実施の形態１と同様である。
【０１３２】
そして、ステップＳ３３５において、カメラパラメータ更新部１０６は、各校正点の校正点データ、各校正点に対応する見込角対応長、及び、各校正点に対応する各測距点の３次元座標に基づき、上記の式４に示すように評価値Ｊを算出する。この際、カメラパラメータ更新部１０６は、校正点及びその測距点のユークリッド距離に適用する重みｗｋとして、下記の式９に示す重みｗｋを用いる。式９における重みｗｋは、各校正点に対応する見込角対応長を、当該校正点の奥行きで除算した値として算出される。
【０１３３】
【数９】
2018179981.tif 000011
【０１３４】
ここでＬｋは、ｋ番目の校正点Ｐｋにおける校正点の奥行きである。奥行きＬｋは、上記の式６におけるＬと同様に、カメラ２１及び２２の見込角対応長に対応するラインから校正点Ｐｋまでの距離としてもよく、カメラ２１及び２２間の重心位置から校正点Ｐｋまでの距離としてもよい。また、奥行きＬｋは、例えば、カメラ２１及び２２のいずれかと校正点Ｐｋとの距離であってもよい。カメラパラメータ更新部１０６は、カメラ２１及び２２のカメラパラメータと、校正点Ｐｋの３次元座標とを用いて、奥行きＬｋを算出するように構成されてもよい。なお、重みｗｋは、その総和が１になるように、実施の形態２のように正規化してもよい。
【０１３５】
校正点の奥行き、つまり、校正点と多眼カメラとの距離が大きくなる程、カメラパラメータの誤差が、測距点の測距誤差に与える影響が大きくなる。しかしながら、上述のような重みｗｋは、評価値Ｊへの測距誤差の寄与が、遠方の校正点で生じ得る相対的に大きな測距誤差に偏ることを低減することができる。よって、校正点の奥行きによる影響が抑えられた評価値Ｊを得ることが可能になる。
【０１３６】
［実施の形態５］
実施の形態５に係るカメラ校正装置を説明する。実施の形態５に係るカメラ校正装置の構成は、実施の形態４と同様であり、実施の形態５に係るカメラ校正装置の動作の一部が、実施の形態４と異なる。具体的には、実施の形態４では、評価値Ｊを算出する際に用いた重みｗｋを、見込角対応長を校正点の奥行きで除算した値としたが、実施の形態５では、重みｗｋを、見込角対応長を校正点の奥行きの２乗で除算した値とする。以下、実施の形態５について、実施の形態４と異なる点を中心に説明する。
【０１３７】
図１４を参照すると、実施の形態５に係るカメラ校正装置の動作の流れの一例を示すフローチャートが示されている。実施の形態５に係るカメラ校正装置は、カメラパラメータ算出処理Ｓ３４０を行う。カメラパラメータ算出処理Ｓ３４０は、ステップＳ３３５の代わりにステップＳ３４５の処理を含むことを除き、実施の形態４と同様である。
【０１３８】
そして、ステップＳ３４５において、カメラパラメータ更新部１０６は、各校正点の校正点データ、各校正点に対応する見込角対応長、及び、各校正点に対応する各測距点の３次元座標に基づき、評価値Ｊを算出する。この際、カメラパラメータ更新部１０６は、校正点及びその測距点のユークリッド距離に適用する重みｗｋとして、下記の式１０に示す重みｗｋを用いる。式１０における重みｗｋは、各校正点に対応する見込角対応長を、当該校正点の奥行きの２乗で除算した値として算出される。式１０のＬｋは式９と同じである。なお、重みｗｋは、その総和が１になるように正規化してもよい。
【０１３９】
【数１０】
2018179981.tif 000012
【０１４０】
上述のような重みｗｋは、評価値Ｊへの測距点の測距誤差の寄与が、遠方の校正点で生じ得る相対的に大きな測距誤差に偏ることを、実施の形態４よりも低減することができる。よって、実施の形態５に係るカメラ校正装置によると、実施の形態４よりも校正点の奥行きによる影響が抑えられた評価値Ｊを得ることが可能になる。
【０１４１】
［その他］
以上、本開示の一つ又は複数の態様に係るカメラ構成装置等について、実施の形態に基づいて説明したが、本開示の技術は、これらの実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本開示の一つ又は複数の態様の範囲内に含まれてもよい。
【０１４２】
例えば、実施の形態１〜５において評価値Ｊに用いられた重みｗは、各実施の形態への適用に限定されない。実施の形態１〜５で用いられた種々の重みｗを適宜組み合わせたものを、評価値Ｊの評価関数における校正点及び測距点のユークリッド距離の重みとしてもよい。評価関数のこのような重みは、各実施の形態での重みの効果を相乗的に奏し得る。
【０１４３】
また、実施の形態１〜５では、多眼カメラにおける校正対象のカメラを、広角カメラとしていたが、実施の形態に係るカメラ校正装置は、いかなる視野角のカメラの校正に適用されてもよい。見込角対応長を用いた重み付けを採用することによって、狭角のカメラの校正においても、実施の形態に係るカメラ校正装置は、カメラの視野角の全体にわたる高精度な校正を可能にする。
【０１４４】
また、実施の形態１〜５では、多眼カメラ１０は、２つのカメラ２１及び２２を有するように構成されていたが、これに限定されず、３つ以上のカメラを有してもよい。例えば、多眼カメラは、図１５に示す多眼カメラ２００のように、３つのカメラ２１、２２及び２３を有してもよい。３つのカメラ２１、２２及び２３は、互いの撮影範囲が少なくとも部分的に重なるように配置されてもよい。例えば、図１５の例のように、カメラ２１、２２及び２３の光軸が正三角形の頂点を通り且つ互い平行であるように配置されてもよい。
【０１４５】
このような多眼カメラ２００のカメラ２１、２２及び２３の校正は、以下に説明するように行われてもよい。まず、カメラ２１、２２及び２３から、２つのカメラからなるカメラペアの組み合わせが、選出される。具体的には、カメラ２１及び２２による第一カメラペアと、カメラ２１及び２３による第二カメラペアと、カメラ２２及び２３による第三カメラペアとが、選出される。第一カメラペア、第二カメラペア及び第三カメラペアのそれぞれに対して、実施の形態１〜５に記載されるようなカメラパラメータ算出処理Ｓ３００、Ｓ３１０、Ｓ３２０、Ｓ３３０及びＳ３４０に従って、カメラパラメータが算出される。
【０１４６】
第一カメラペアにおいては、カメラ２１及び２２それぞれの第一カメラパラメータと、第一カメラパラメータに対応する第一評価値とが、算出される。第二カメラペアにおいては、カメラ２１及び２３それぞれの第二カメラパラメータと、第二カメラパラメータに対応する第二評価値とが、算出される。第三カメラペアにおいては、カメラ２２及び２３それぞれの第三カメラパラメータと、第三カメラパラメータに対応する第三評価値とが、算出される。これにより、カメラ２１、２２及び２３には、２つのカメラパラメータが算出される。そして、カメラ２１、２２及び２３それぞれについて、２つのカメラパラメータが統合される。
【０１４７】
カメラ２１では、カメラ２１の第一カメラパラメータ及び第二カメラパラメータが統合される。カメラ２２では、カメラ２２の第一カメラパラメータ及び第三カメラパラメータが統合される。カメラ２３では、カメラ２３の第二カメラパラメータ及び第三カメラパラメータが統合される。
【０１４８】
統合は、２つのカメラパラメータの平均値により、行われてもよい。この場合、焦点距離ｆ等のカメラパラメータの各要素は、要素毎に、平均値の算出が行われてもよい。又は、３つのカメラペアに関する評価値において、より小さい評価値に対応するカメラパラメータが選択されてもよい。このとき、例えば、第一評価値＜第二評価値＜第三評価値の場合、最も小さい第一評価値から、カメラ２１及び２２のカメラパラメータは、それぞれの第一カメラパラメータに決定される。また、第一評価値と関連のないカメラ２３については、２番目に小さい第二評価値から、第二カメラパラメータに決定される。
【０１４９】
また、上述したように、本開示の技術は、システム、装置、方法、集積回路、コンピュータプログラム又はコンピュータ読取可能な記録ディスク等の記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。コンピュータ読み取り可能な記録媒体は、例えばＣＤ−ＲＯＭ等の不揮発性の記録媒体を含む。
【０１５０】
例えば、上記実施の形態に係るカメラ校正装置に含まれる各処理部は典型的には集積回路であるＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）として実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。
【０１５１】
また、集積回路化はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【０１５２】
なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）又はプロセッサなどのプログラム実行部が、ハードディスク又は半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【０１５３】
また、上記構成要素の一部又は全部は、脱着可能なＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード又は単体のモジュールから構成されてもよい。ＩＣカード又はモジュールは、マイクロプロセッサ、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等から構成されるコンピュータシステムである。ＩＣカード又はモジュールは、上記のＬＳＩ又はシステムＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、ＩＣカード又はモジュールは、その機能を達成する。これらＩＣカード及びモジュールは、耐タンパ性を有するとしてもよい。
【０１５４】
本開示のカメラ校正方法は、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＣＰＵ、プロセッサ、ＬＳＩなどの回路、ＩＣカード又は単体のモジュール等によって、実現されてもよい。
【０１５５】
さらに、本開示の技術は、ソフトウェアプログラム又はソフトウェアプログラムからなるデジタル信号によって実現されてもよく、プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【０１５６】
また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。
【０１５７】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを１つの機能ブロックとして実現したり、１つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【産業上の利用可能性】
【０１５８】
本開示のカメラ校正装置等は、２眼以上のいかなる多眼カメラのカメラパラメータの算出に有用である。
【符号の説明】
【０１５９】
１０１    カメラ校正装置
１０２    校正点データ受付部
１０３    カメラパラメータ取得部
１０４    見込角対応長算出部
１０５    ステレオ測距値算出部
１０６    カメラパラメータ更新部
１０７    カメラパラメータ出力部
１０９    校正点データベース（第１のメモリ）
１１０    カメラパラメータデータベース（第２のメモリ）
【図１】
2018179981.tif 000013
【図２】
2018179981.tif 000014
【図３】
2018179981.tif 000015
【図４】
2018179981.tif 000016
【図５】
2018179981.tif 000017
【図６Ａ】
2018179981.tif 000018
【図６Ｂ】
2018179981.tif 000019
【図７】
2018179981.tif 000020
【図８】
2018179981.tif 000021
【図９】
2018179981.tif 000022
【図１０】
2018179981.tif 000023
【図１１】
2018179981.tif 000024
【図１２】
2018179981.tif 000025
【図１３】
2018179981.tif 000026
【図１４】
2018179981.tif 000027
【図１５】
2018179981.tif 000028