(57)【特許請求の範囲】
【請求項１】
車両に搭載された複数のカメラ（１０）それぞれの姿勢パラメータを特定するキャリブレーション装置（２０）であって、
前記複数のカメラのそれぞれは、車両の周辺に規定された互いに異なる領域であり、かつ、互いの領域の一部が重複する重複領域を有した規定領域を撮影するように、前記車両に搭載され、
前記カメラには、前記車両の前方を撮影する第１カメラ（１０Ａ）と、前記車両の右側方を撮影する第２カメラ（１０Ｂ）と、前記車両の後方を撮影する第３カメラ（１０Ｃ）と、前記車両の左側方を撮影する第４カメラ（１０Ｄ）とを含み、
前記カメラそれぞれで撮影した各画像を取得する画像取得部（２０，Ｓ１４０〜Ｓ３７０）と、
形状及び大きさが既知である部材を撮影ターゲット（５０）とし、前記画像取得部で取得した各画像の重複領域に写り込んだ撮影ターゲットを射影変換した結果が、前記撮影ターゲットの形状及び大きさに一致するように、前記カメラそれぞれの姿勢パラメータのうち、前記カメラのレンズ中心軸周りの回転角を表すロール，前記カメラの水平軸周りの回転角を表すピッチ，及び前記車両の車高方向に沿った座標である高さを特定する第１特定部（２０，Ｓ３８０）と、
前記画像取得部で取得した各画像に写り込んだ前記撮影ターゲットの代表点を仮想的に接続した線分をリンクとして形成される仮想リンク構造であって、互いに異なる画像の重複領域に写り込み、同一の地点に位置する撮影ターゲットにおける代表点を一致させた前記仮想リンク構造における１つのリンク角が最小となるように、前記カメラそれぞれの姿勢パラメータのうち、前記車両の全長方向に沿った座標であるｘ座標、前記車両の車幅方向に沿った座標であるｙ座標、及び前記車両の水平面と直交する軸周りの回転角を表すヨーを特定する第２特定部（２０，Ｓ３９０）と
を備え、
前記画像取得部は、
前記車両の前方に位置する撮影ターゲットを、前記第１カメラ、前記第２カメラ、及び前記第４カメラで撮影した画像を取得する第１取得部（２０，Ｓ１６０，Ｓ１７０）と、
前記車両の後方に位置する撮影ターゲットを、前記第４カメラ、前記第２カメラ、及び前記第３カメラで撮影した画像であって、前記第１取得部で取得した画像とは異なる画像を取得する第２取得部（２０，Ｓ２８０，Ｓ２９０）と
を備え、
前記第１特定部及び前記第２特定部は、前記第１取得部で取得した各画像、及び前記第２取得部で取得した各画像を、前記画像取得部で取得した各画像とする、キャリブレーション装置。
【請求項２】
前記撮影ターゲットは２つ設けられ、２つの前記撮影ターゲットは、前記車両の車幅よりも間隔を空けて配置され、
前記第１取得部は、前記２つの撮影ターゲットの間を前記車両が通過する前に、前記第１カメラ、前記第２カメラ、及び前記第４カメラで撮影した画像を取得し、
前記第２取得部は、前記２つの撮影ターゲットの間を前記車両が通過した後に、前記第４カメラ、前記第２カメラ、及び前記第３カメラで撮影した画像を取得する、
請求項１に記載のキャリブレーション装置。
【請求項３】
前記画像取得部は、
前記カメラそれぞれで撮影した各画像に前記撮影ターゲットが写り込んでいるか否かを判定する第１判定部（２０，Ｓ１８０〜Ｓ２３０，Ｓ３００〜Ｓ３５０）と、
前記第１判定部での判定の結果、前記撮影ターゲットが写り込んでいなければ、前記撮影ターゲットが写り込んでいない旨を報知する第１報知部（２０，Ｓ２５０，Ｓ３７０）と
を備える、請求項１または請求項２に記載のキャリブレーション装置。
【請求項４】
前記カメラそれぞれで撮影された画像において、前記撮影ターゲットが写り込んでいるか否かを判定する領域である探索範囲を設定する範囲設定部（２０，Ｓ１４０，Ｓ１５０，Ｓ２６０，Ｓ２７０）を備え、
前記第１判定部は、前記範囲設定部で設定された探索範囲に前記撮影ターゲットが写り込んでいるか否かを判定する、請求項３に記載のキャリブレーション装置。
【請求項５】
前記車両の走行速度を取得する速度取得部（２０，Ｓ１１０）と、
前記速度取得部で取得した走行速度が、予め規定された速度閾値以下であるか否かを判定する第２判定部（２０，Ｓ１２０）と
を備え、
前記第１判定部は、
第２判定部での判定の結果、前記走行速度が前記速度閾値以下であれば、前記カメラそれぞれで撮影した各画像に前記撮影ターゲットが写り込んでいるか否かを判定する、請求項３または請求項４に記載のキャリブレーション装置。
【請求項６】
前記第２判定部での判定の結果、前記走行速度が前記速度閾値よりも大きければ、前記走行速度が前記速度閾値よりも大きい旨を報知する第２報知部（２０，Ｓ１３０）を備える、請求項５に記載のキャリブレーション装置。
【請求項７】
前記撮影ターゲットは２つ設けられ、
前記第１取得部で取得する画像の撮影対象である前記２つの撮影ターゲットと、前記第２取得部で取得する画像の撮影対象である前記２つの撮影ターゲットとは、互いに同一な位置関係に配置されており、
前記第２特定部は、
前記画像取得部で取得した各画像の重複領域に写り込んだ前記撮影ターゲットそれぞれの代表点の位置を順次特定し、
その特定した代表点の位置を同一の撮影ターゲットについて一致させた前記仮想リンク構造を形成し、
時間軸に沿って最後の撮影ターゲットの代表点の位置を特定する場合、その最後の撮影ターゲットに対応する撮影ターゲットの代表点の位置に基づいて特定する、請求項１から請求項６までのいずれか一項に記載のキャリブレーション装置。
【請求項８】
車両に搭載された複数のカメラ（１０）それぞれの姿勢パラメータを特定するキャリブレーション装置（２０）が実行するキャリブレーション方法であって、
前記複数のカメラのそれぞれは、車両の周辺に規定された互いに異なる領域であり、かつ、互いの領域の一部が重複する重複領域を有した規定領域を撮影するように、前記車両に搭載され、
前記カメラには、前記車両の前方を撮影する第１カメラ（１０Ａ）と、前記車両の右側方を撮影する第２カメラ（１０Ｂ）と、前記車両の後方を撮影する第３カメラ（１０Ｃ）と、前記車両の左側方を撮影する第４カメラ（１０Ｄ）とを含み、
前記カメラそれぞれで撮影した各画像を取得する画像取得手順（Ｓ１４０〜Ｓ３５０）と、
形状及び大きさが既知である部材を撮影ターゲット（５０）とし、前記画像取得手順で取得した各画像の重複領域に写り込んだ撮影ターゲットを射影変換した結果が、前記撮影ターゲットの形状及び大きさに一致するように、前記カメラそれぞれの姿勢パラメータのうち、前記カメラのレンズ中心軸周りの回転角を表すロール，前記カメラの水平軸周りの回転角を表すピッチ，及び前記車両の車高方向に沿った座標である高さを特定する第１特定手順（Ｓ３８０）と、
前記画像取得手順で取得した各画像に写り込んだ前記撮影ターゲットの代表点を仮想的に接続した線分をリンクとして形成される仮想リンク構造であって、互いに異なる画像の重複領域に写り込み、同一の地点に位置する撮影ターゲットにおける代表点を一致させた前記仮想リンク構造における１つのリンク角が最小となるように、前記カメラそれぞれの姿勢パラメータのうち、前記車両の全長方向に沿った座標であるｘ座標、前記車両の車幅方向に沿った座標であるｙ座標、及び前記車両の水平面と直交する軸周りの回転角を表すヨーを特定する第２特定手順（Ｓ３９０）と
を備え、
前記画像取得手順は、
前記車両の前方に位置する撮影ターゲットを、前記第１カメラ、前記第２カメラ、及び前記第４カメラで撮影した画像を取得する第１取得手順（Ｓ１６０，Ｓ１７０）と、
前記車両の後方に位置する撮影ターゲットを、前記第４カメラ、前記第２カメラ、及び前記第３カメラで撮影した画像であって、前記第１取得手順で取得した画像とは異なる画像を取得する第２取得手順（Ｓ２８０，Ｓ２９０）と
を備え、
前記第１特定手順及び前記第２特定手順は、前記第１取得手順で取得した各画像、及び前記第２取得手順で取得した各画像を、前記画像取得手順で取得した各画像とする、キャリブレーション方法。
【請求項９】
車両に搭載された複数のカメラ（１０）それぞれの姿勢パラメータを特定するキャリブレーション装置（２０）のコンピュータに実行させるプログラムであって、
前記複数のカメラのそれぞれは、車両の周辺に規定された互いに異なる領域であり、かつ、互いの領域の一部が重複する重複領域を有した規定領域を撮影するように、前記車両に搭載され、
前記カメラには、前記車両の前方を撮影する第１カメラ（１０Ａ）と、前記車両の右側方を撮影する第２カメラ（１０Ｂ）と、前記車両の後方を撮影する第３カメラ（１０Ｃ）と、前記車両の左側方を撮影する第４カメラ（１０Ｄ）とを含み、
前記カメラそれぞれで撮影した各画像を取得する画像取得手順（Ｓ１４０〜Ｓ３５０）と、
形状及び大きさが既知である部材を撮影ターゲット（５０）とし、前記画像取得手順で取得した各画像の重複領域に写り込んだ撮影ターゲットを射影変換した結果が、前記撮影ターゲットの形状及び大きさに一致するように、前記カメラそれぞれの姿勢パラメータのうち、前記カメラのレンズ中心軸周りの回転角を表すロール，前記カメラの水平軸周りの回転角を表すピッチ，及び前記車両の車高方向に沿った座標である高さを特定する第１特定手順（Ｓ３８０）と、
前記画像取得手順で取得した各画像に写り込んだ前記撮影ターゲットの代表点を仮想的に接続した線分をリンクとして形成される仮想リンク構造であって、互いに異なる画像の重複領域に写り込み、同一の地点に位置する撮影ターゲットにおける代表点を一致させた前記仮想リンク構造における１つのリンク角が最小となるように、前記カメラそれぞれの姿勢パラメータのうち、前記車両の全長方向に沿った座標であるｘ座標、前記車両の車幅方向に沿った座標であるｙ座標、及び前記車両の水平面と直交する軸周りの回転角を表すヨーを特定する第２特定手順（Ｓ３９０）とを
前記コンピュータに実行させ、
前記画像取得手順では、
前記車両の前方に位置する撮影ターゲットを、前記第１カメラ、前記第２カメラ、及び前記第４カメラで撮影した画像を取得する第１取得手順（Ｓ１６０，Ｓ１７０）と、
前記車両の後方に位置する撮影ターゲットを、前記第４カメラ、前記第２カメラ、及び前記第３カメラで撮影した画像であって、前記第１取得手順で取得した画像とは異なる画像を取得する第２取得手順（Ｓ２８０，Ｓ２９０）とを
前記コンピュータに実行させ、
前記第１特定手順及び前記第２特定手順では、前記第１取得手順で取得した各画像、及び前記第２取得手順で取得した各画像を、前記画像取得手順で取得した各画像とする、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載されたカメラの姿勢パラメータを導出する技術に関する。
【背景技術】
【０００２】
従来、自動車に搭載されたカメラの姿勢パラメータを導出するキャリブレーションを実行するキャリブレーション装置が知られている（特許文献１参照）。
特許文献１に記載されたキャリブレーション装置では、画像に写り込んだ既定校正ターゲットを鳥瞰変換した結果が、実際の既定ターゲットの形状及び大きさに最も近似する、ロール，ピッチ，及び高さを探索して特定する。ここで言う既定校正ターゲットとは、形状及び大きさが既知であり、規定された地点に配置された撮影対象物である。
【０００３】
さらに、キャリブレーション装置では、自車両の車速を検知する車速センサ、及び水平面に直交する軸周りの自車両の回転角を検知する回転角センサから、車速及び回転角を取得する。そして、取得した車速及び回転角に基づいて、異なる地点で撮影した画像に写り込んだ固定物体（以下、「疑似校正ターゲット」と称す）の位置の相違と、回転の相違とが最小となる、ｘ座標，ｙ座標，ヨーを探索して特定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−４８８０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載されたキャリブレーション装置では、姿勢パラメータのうち、ｘ座標，ｙ座標，ヨーを特定するために、自車両の車速と自車両の回転角とを自車両に搭載された車速センサ及び回転角センサから取得しなければならない。
【０００６】
ところで、キャリブレーションは、自動車の製造段階やディーラーでの整備段階で実施されることが多い。特に、自動車の製造段階やディーラーでの整備段階では、車両に搭載する機器の設置順序の自由度を高めることが求められており、キャリブレーションを実施する時点で、車速センサや回転角センサが組み付けられていない可能性がある。
【０００７】
この場合、特許文献１に記載されたキャリブレーション装置では、キャリブレーションを実施できないという課題が生じる。
つまり、カメラの姿勢パラメータを導出する技術において、実施の自由度をより高くすることが求められている。
【０００８】
そこで、本発明は、カメラの姿勢パラメータを導出する技術において、実施の自由度をより高くすることを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するためになされた本発明は、車両に搭載された複数のカメラ（１０）それぞれの姿勢パラメータを特定するキャリブレーション装置（２０）に関する。
ここで言う複数のカメラのそれぞれは、車両の周辺に規定された互いに異なる領域であり、かつ、互いの領域の一部が重複する重複領域を有した規定領域を撮影するように、車両に搭載されたカメラである。この複数のカメラには、車両の前方を撮影する第１カメラ（１０Ａ）と、車両の右側方を撮影する第２カメラ（１０Ｂ）と、車両の後方を撮影する第３カメラ（１０Ｃ）と、車両の左側方を撮影する第４カメラ（１０Ｄ）とを含む。
【００１０】
そして、キャリブレーション装置は、画像取得部（２０，Ｓ１４０〜Ｓ３７０）と、第１特定部（２０，Ｓ３８０）と、第２特定部（２０，Ｓ３９０）とを備えている。
画像取得部は、カメラそれぞれで撮影した各画像を取得する。
【００１１】
第１特定部は、画像取得部で取得した各画像の重複領域に写り込んだ撮影ターゲットを射影変換した結果が、撮影ターゲットの形状及び大きさに一致するように、カメラそれぞれの姿勢パラメータのうち、ロール，ピッチ，及び高さを特定する。撮影ターゲットとは、形状及び大きさが既知な部材である。ロールとは、カメラのレンズ中心軸周りの回転角を表す。ピッチとは、カメラの水平軸周りの回転角を表す。高さとは、車両の車高方向に沿った座標である。
【００１２】
第２特定部は、仮想リンク構造における１つのリンク角が最小となるように、カメラそれぞれの姿勢パラメータのうち、ｘ座標、ｙ座標、及びヨーを特定する。ここで言う仮想リンク構造とは、画像取得部で取得した各画像に写り込んだ撮影ターゲットの代表点を仮想的に接続した線分をリンクとして形成される仮想リンク構造であって、互いに異なる画像の重複領域に写り込み、同一の地点に位置する撮影ターゲットにおける代表点を一致させたものである。また、ｘ座標とは、車両の全長方向に沿った座標である。ｙ座標とは、車両の車幅方向に沿った座標である。ヨーとは、車両の水平面と直交する軸周りの回転角を表す。
【００１３】
画像取得部は、第１取得部（２０，Ｓ１６０，Ｓ１７０）と、第２取得部（２０，Ｓ２８０，Ｓ２９０）とを備える。
第１取得部は、車両の前方に位置する撮影ターゲットを、第１カメラ、第２カメラ、及び第４カメラで撮影した画像を取得する。第２取得部は、車両の後方に位置する撮影ターゲットを、第４カメラ、第２カメラ、及び第３カメラで撮影した画像であって、第１取得部で取得した画像とは異なる画像を取得する。
【００１４】
そして、第１特定部及び第２特定部は、第１取得部で取得した各画像、及び第２取得部で取得した各画像を、画像取得部で取得した各画像とする。
このようなキャリブレーション装置においては、姿勢パラメータのうちのｘ座標、ｙ座標、及びヨーを特定するために用いる情報は、カメラで撮影した画像だけであり、車両の車速や車両の回転角は不要である。
【００１５】
つまり、キャリブレーション装置によれば、車両の車速を検出するセンサや、車両の回転角を検出するセンサが組み付けられていない場合であっても、キャリブレーションを実行できる。
【００１６】
この結果、カメラの姿勢パラメータを導出する技術において、キャリブレーションを実施する自由度をより高くすることができる。
なお、キャリブレーション装置においては、姿勢パラメータの特定に用いる画像のうち、車両の前方に位置する撮影ターゲットを第１カメラ、第２カメラ、及び第４カメラで撮影した画像は、車両を移動させること無く停止した状態で車両の前方に配置された撮影ターゲットを撮影したものであってもよい。そして、姿勢パラメータの特定に用いる画像のうち、車両の後方に位置する撮影ターゲットを第４カメラ、第２カメラ、及び第３カメラで撮影した画像は、車両の前方に配置された撮影ターゲットと同一の撮影ターゲットを車両の後方へと移動させた上で、車両自体を移動させること無く停止した状態で撮影したものであってもよい。
【００１７】
上述したような方法で、姿勢パラメータの特定に用いる画像を取得すれば、姿勢パラメータの特定に必要となる面積を必要最小限とすることができる。すなわち、自動車の製造段階やディーラーでの整備段階での姿勢パラメータの特定に必要となる面積を容易に確保できる。
【００１８】
ところで、上記目的を達成するためになされた発明の一態様は、カメラの姿勢パラメータを特定するキャリブレーション方法であってもよいし、車両に搭載されるコンピュータが実行するプログラムであってもよい。
【００１９】
前者のようなキャリブレーション方法によれば、キャリブレーション装置と同様の効果を得ることができる。
後者のようなプログラムによれば、記録媒体から必要に応じてコンピュータにロードさせて起動することや、必要に応じて通信回線を介してコンピュータに取得させて起動することにより用いることができる。そして、コンピュータに各手順を実行させることで、そのコンピュータをキャリブレーション装置として機能させることができる。ここで言う記録媒体には、例えば、ＤＶＤ−ＲＯＭ、ＣＤ−ＲＯＭ、ハードディスク等のコンピュータ読み取り可能な電子媒体を含む。
【００２０】
なお、「特許請求の範囲」及び「課題を解決するための手段」の欄に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００２１】
【図１】キャリブレーションシステムの概略構成を説明するブロック図である。
【図２】カメラの配置及び撮影範囲を説明する説明図である。
【図３】（Ａ）は撮影ターゲットの一例を示す説明図であり、（Ｂ）は撮影ターゲットの他の例を示す説明図である。
【図４】キャリブレーション処理の処理手順を示すフローチャートである。
【図５】（Ａ）は撮影ターゲット間に到達する前に撮影する画像を説明する説明図であり、（Ｂ）は撮影ターゲット間を通過した後に撮影する画像を説明する説明図である。
【図６】（Ａ）は探索領域の設定を説明する説明図であり、（Ｂ）は探索領域に写り込んだ撮影ターゲットを探索する手法の概要を説明する説明図である。
【図７】キャリブレーション処理の処理手順の続きを示すフローチャートである。
【図８】リンク構造の特定方法を説明する説明図である。
【発明を実施するための形態】
【００２２】
以下に本発明の実施形態を図面と共に説明する。
＜キャリブレーションシステム＞
図１に示すキャリブレーションシステム１は、車両５（図２参照）に搭載された複数のカメラ１０それぞれの姿勢パラメータを特定するシステムである。ここで言う車両５は、四輪自動車である。
【００２３】
このキャリブレーションシステム１は、複数のカメラ１０と、入力装置１４と、キャリブレーション装置２０と、表示装置４０とを備える。
このうち、カメラ１０それぞれは、広角レンズを介して、車両の周囲に規定された規定領域を撮影する周知のカメラである。なお、広角レンズとは、画角が広く（例えば６０度以上）、焦点距離の短いレンズである。この広角レンズの一例として、魚眼レンズ（例えば画角が１８０度以上のレンズ）が考えられる。
【００２４】
ここで言う規定領域は、図２に示すように、車両５の周辺に規定された互いに異なる領域であり、かつ、互いの領域の一部が重複する重複領域を有した領域である。
本実施形態におけるカメラ１０には、第１カメラ１０Ａと、第２カメラ１０Ｂと、第３カメラ１０Ｃと、第４カメラ１０Ｄとを含む。
【００２５】
第１カメラ１０Ａは、車両５の前方に規定された規定領域（以下、「前方規定領域」と称す）を撮影するように車両５の前端部に設置される。第２カメラ１０Ｂは、車両５の右側方に規定された規定領域（以下、「右規定領域」と称す）を撮影するように車両５の右側面に設置される。第３カメラ１０Ｃは、車両５の後方に規定された規定領域（以下、「後方規定領域」と称す）を撮影するように車両５の後端部に設置される。第４カメラ１０Ｄは、車両５の左側方に規定された規定領域（以下、「左規定領域」と称す）を撮影するように車両５の左側面に設置される。
【００２６】
入力装置１４は、情報の入力を受け付ける周知の装置である。この入力装置１４には、キーボードやポインティングデバイス、スイッチなどの各種入力機器を含む。ここで言うポインティングデバイスには、タッチパッドやタッチパネルなどの周知の機構を含む。
【００２７】
さらに、本実施形態の入力装置１４は、ダイアグツールであってもよい。ここで言うダイアグツールとは、キャリブレーション装置２０との間で情報の入出力を行うと共に、キャリブレーション装置２０から取得した情報を解析する道具（ツール）である。
【００２８】
表示装置４０は、画像を表示する周知の装置である。表示装置４０の一例として、液晶ディスプレイが考えられる。
＜キャリブレーション装置＞
キャリブレーション装置２０は、カメラ１０それぞれで撮影した画像に基づく処理を実行する装置である。このキャリブレーション装置２０は、パラメータ記憶部２２と、制御部２４とを備えている。
【００２９】
このうち、パラメータ記憶部２２は、書換可能な不揮発性の記憶装置である。このパラメータ記憶部２２の一例として、ハードディスクドライブやフラッシュメモリなどが考えられる。
【００３０】
このパラメータ記憶部２２には、カメラ１０それぞれが設置された車両空間上での位置、及びカメラ１０それぞれが設置された姿勢を表す姿勢パラメータが記憶される。
この姿勢パラメータには、ｘ座標、ｙ座標、高さｚ、ピッチΘ，ロールΦ，及びヨーΨを含む。
【００３１】
ｘ座標は、カメラ１０それぞれが設置された車両空間上での座標であり、車両５の全長方向に沿った座標である。ｙ座標は、カメラ１０それぞれが設置された車両空間上での座標であり、車両５の車幅方向に沿った座標である。さらに、高さｚは、カメラ１０それぞれが設置された車両空間上での座標であり、車両５の車高方向に沿った座標である。
【００３２】
また、ピッチΘは、カメラ１０それぞれの水平軸周りの回転角を表す。なお、ここで言う水平軸とは、車両５における水平面と平行な軸である。ロールΦは、カメラ１０それぞれのレンズ中心軸周りの回転角を表す。ヨーΨは、車両５における水平面と直交する軸周りの回転角を表す。
【００３３】
制御部２４は、ＲＯＭ２６，ＲＡＭ２８，ＣＰＵ３０を有した周知のマイクロコンピュータを中心に構成された周知の制御装置である。ＲＯＭ２６は、電源を切断しても記憶内容を保持する必要のあるデータやプログラムを記憶する。ＲＡＭ２８は、データを一時的に格納する。ＣＰＵ３０は、ＲＯＭ２６またはＲＡＭ２８に記憶されたプログラムに従って処理を実行する。
【００３４】
キャリブレーション装置２０には、車両５の車輪速を検出する車輪速センサが接続されている。そして、制御部２４は、車輪速センサからの車輪速に基づく周知の手法により、車両５の走行速度を算出する。
【００３５】
制御部２４のＲＯＭ２６には、撮影ターゲット５０（図３参照）を複数のカメラ１０で撮影した画像に基づいて、各カメラ１０の姿勢パラメータを特定するキャリブレーション処理を、制御部２４が実行するための処理プログラムが格納されている。
【００３６】
さらに、制御部２４のＲＯＭ２６には、撮影ターゲット５０の形状及び大きさを表すターゲット情報が格納されている。すなわち、撮影ターゲット５０は、少なくとも、形状及び大きさが既知である。
【００３７】
本実施形態における撮影ターゲット５０は、少なくとも３以上の頂点を有した多角形に形成されている。撮影ターゲット５０の形状は、図３（Ａ）に示すように三角形であってもよいし、図３（Ｂ）に示すように四角形であってもよいし、頂点の個数が「５」以上の多角形であってもよい。
【００３８】
なお、撮影ターゲット５０は、カメラ１０で撮影した画像において、頂点の座標を特定可能な部材であれば、どのようなものであってもよい。撮影ターゲット５０の一例として、図３（Ａ），図３（Ｂ）に示すように、大きさ及び色の異なる多角形に形成された２つの板状の部材を、同芯状に固定したものが考えられる。
【００３９】
また、本実施形態におけるターゲット情報には、例えば、撮影ターゲット５０が何角形であるかを示す情報（即ち、撮影ターゲット５０の頂点の個数と頂点の相対的な位置関係）、撮影ターゲット５０の各辺の長さ、撮影ターゲット５０の各頂点における内角（または外角）の大きさが含まれる。
＜キャリブレーション処理＞
次に、本実施形態におけるキャリブレーション処理の起動条件について説明する。
【００４０】
キャリブレーション処理を起動する前段階の準備として、２つの撮影ターゲット５０は、相対的な位置関係が固定された状態となるように配置される。ここで言う相対的な位置関係は、例えば、距離を含むものである。２つの撮影ターゲット５０は、具体的には、車両５の車幅よりも間隔を空けて配置される。
【００４１】
そして、キャリブレーション処理は、起動指令の入力を受け付けると起動される。この起動指令は、キャリブレーション処理を起動するための指令であり、入力装置１４としてのダイアグツールを介して入力されてもよいし、その他の方法で入力されてもよい。
【００４２】
キャリブレーション処理が起動されると、キャリブレーションシステム１が搭載された車両５を、２つの撮影ターゲット５０の手前から、その２つの撮影ターゲット５０の間を通過するように走行させる。そして、キャリブレーション処理では、車両５を走行させている期間にカメラ１０で撮影した画像に基づいて処理を実行する。
【００４３】
具体的には、キャリブレーション処理が起動されると、図４に示すように、キャリブレーション装置２０の制御部２４は、車両５の走行速度を取得する（Ｓ１１０）。本実施形態におけるＳ１１０では、制御部２４は、車輪速センサからの車輪速に基づく周知の手法により車両５の走行速度を算出して取得すればよい。
【００４４】
続いて、制御部２４は、Ｓ１１０で取得した走行速度が、予め規定された速度閾値以下であるか否かを判定する（Ｓ１２０）。速度閾値とは、徐行を含む低速で車両５が走行していることを表す走行速度として規定されていてもよい。
【００４５】
このＳ１２０での判定の結果、走行速度が速度閾値よりも大きければ（Ｓ１２０：ＮＯ）、制御部２４は、第１エラー信号を表示装置４０に出力する（Ｓ１３０）。第１エラー信号とは、走行速度が速度閾値よりも大きく、キャリブレーションの精度が低くなる可能性が高い旨を示す信号である。その第１エラー信号を取得した表示装置４０は、走行速度が速度閾値よりも大きい旨を表示する。なお、Ｓ１３０において表示装置４０に表示する内容は、走行速度が速度閾値よりも大きい旨に限るものではなく、例えば、キャリブレーションの精度が低くなる可能性が高い旨であってもよい。
【００４６】
なお、キャリブレーションとは、カメラ１０それぞれの姿勢パラメータを特定する処理である。本実施形態におけるキャリブレーションは、キャリブレーション処理のＳ３８０，Ｓ３９０にて実行される。
【００４７】
制御部２４は、その後、キャリブレーション処理をＳ１１０へと戻す。
一方、Ｓ１２０での判定の結果、走行速度が速度閾値以下であれば（Ｓ１２０：ＹＥＳ）、制御部２４は、フロント撮影画像における探索範囲である前端探索範囲を設定する（Ｓ１４０）。
【００４８】
フロント撮影画像とは、図５（Ａ）に示すような前方規定領域を撮影対象として、第１カメラ１０Ａで撮影する画像である。また、前端探索範囲とは、２つの撮影ターゲット５０の間に車両５の前端が到達する前に第１カメラ１０Ａで撮影したフロント撮影画像において、撮影ターゲット５０のそれぞれが写り込んでいるか否かの判定を実行する対象とする領域である。本実施形態における前端探索範囲は、フロント撮影画像における左右の端部のそれぞれに設けられる領域である。
【００４９】
具体的に、Ｓ１４０における制御部２４は、フロント撮影画像と、第２カメラ１０Ｂ及び第４カメラ１０Ｄで撮影された画像とが重複する領域のうちの設定された領域を、前端探索範囲として設定する。すなわち、Ｓ１４０で設定される前端探索範囲は、撮影ターゲット５０が写り込む可能性が高い領域である。
【００５０】
キャリブレーション処理では、続いて、制御部２４は、右撮影画像及び左撮影画像における前方探索範囲を設定する（Ｓ１５０）。右撮影画像とは、図５（Ａ）に示すような右規定領域を撮影対象として、第２カメラ１０Ｂで撮影した画像である。また、左撮影画像とは、図５（Ａ）に示すような左規定領域を撮影対象として、第４カメラ１０Ｄで撮影した画像である。
【００５１】
そして、前方探索範囲とは、２つの撮影ターゲット５０の間に車両５の前端が到達する前に第２カメラ１０Ｂで撮影された右撮影画像、及び第４カメラ１０Ｄで撮影された左撮影画像それぞれに、撮影ターゲット５０が写り込んでいるか否かの判定を実行する対象とする領域である。この前方探索範囲は、右撮影画像における車両前方側の端部、及び左撮影画像における車両前方側の端部に設けられる領域である。
【００５２】
具体的に、Ｓ１５０における制御部２４は、右撮影画像及び左撮影画像のそれぞれと、フロント撮影画像との重複領域うちの設定された領域を、前方探索範囲として設定する。
さらに、キャリブレーション処理では、制御部２４は、画像を撮影させる撮影指令を第１カメラ１０Ａに出力する（Ｓ１６０）。その撮影指令を取得した第１カメラ１０Ａは、フロント撮影画像を撮影する。そして、第１カメラ１０Ａは、キャリブレーション装置２０の制御部２４に、撮影したフロント撮影画像を出力する。
【００５３】
さらに、制御部２４は、画像を撮影させる撮影指令を、第２カメラ１０Ｂ及び第４カメラ１０Ｄに出力する（Ｓ１７０）。
その撮影指令を取得した第２カメラ１０Ｂは、右撮影画像を撮影する。そして、第２カメラ１０Ｂは、キャリブレーション装置２０の制御部２４に、撮影した右撮影画像を出力する。また、撮影指令を取得した第４カメラ１０Ｄは、左撮影画像を撮影する。そして、第４カメラ１０Ｄは、キャリブレーション装置２０の制御部２４に、撮影した左撮影画像を出力する。
【００５４】
続いて、キャリブレーション処理では、制御部２４は、Ｓ１６０で撮影したフロント撮影画像における前端探索範囲のそれぞれから、撮影ターゲット５０の有無を検出する（Ｓ１８０）。本実施形態のＳ１８０では、制御部２４は、図６（Ａ）に示すような、フロント撮影画像における前端探索範囲に、撮影ターゲット５０が写り込んでいるか否かを確認する。撮影ターゲット５０が写り込んでいるか否かの確認は、例えば、図６（Ｂ）に示すように、探索範囲を予め規定された２方向以上の方向に沿って、撮影ターゲット５０の頂点の有無を検出することで実施すればよい。そして、各頂点の位置関係が撮影ターゲット５０の形状と矛盾していなければ、撮影ターゲット５０が写り込んでいるものと判定し、各頂点の位置関係が撮影ターゲット５０の形状と矛盾していれば、撮影ターゲット５０が写り込んでいないものと判定すればよい。
【００５５】
なお、本実施形態において、画像に写り込んだ撮影ターゲット５０の頂点を検出する方法としては、種々の周知の手法が考えられる。このため、ここでの詳しい説明は省略するが、例えば、周知のエッジ検出処理を予め規定された２方向から実施し、そのエッジ検出処理によって２つの方向の双方にてエッジとして検出された画素を、撮影ターゲット５０の頂点の座標としてもよい。
【００５６】
また、各頂点の位置関係が撮影ターゲット５０の形状と矛盾しているか否かの判定は、各頂点の位置が、撮影ターゲット５０の形状として記憶されている形状に一致するか否かを判定することで実施すればよい。すなわち、検出された各頂点の位置が一直線上である場合や、検出された頂点の個数が撮影ターゲット５０の頂点の個数よりも明らかに多い場合には、各頂点の位置関係が撮影ターゲット５０の形状と矛盾しているものと判定すればよい。
【００５７】
そして、キャリブレーション処理では、Ｓ１８０での結果、フロント撮影画像における前端探索範囲のそれぞれに撮影ターゲット５０が写り込んでいなければ（Ｓ１９０：ＮＯ）、制御部２４は、詳しくは後述するＳ２４０へとキャリブレーション処理を移行させる。フロント撮影画像における前端探索範囲のそれぞれに撮影ターゲット５０が写り込んでいない状況として、設置された撮影ターゲット５０を撮影可能な位置に車両５が到達していない状況が考えられる。
【００５８】
一方、Ｓ１８０での結果、フロント撮影画像における前端探索範囲のそれぞれから撮影ターゲット５０の検出に成功していれば（Ｓ１９０：ＹＥＳ）、制御部２４は、キャリブレーション処理をＳ２００へと移行させる。
【００５９】
そのＳ２００では、制御部２４は、Ｓ１７０で撮影した左撮影画像における前方探索範囲から、撮影ターゲット５０の有無を検出する。本実施形態のＳ２００では、制御部２４は、左撮影画像における前方探索範囲に、撮影ターゲット５０が写り込んでいるか否かを探査する。撮影ターゲット５０が写り込んでいるか否かを探査する手法は、Ｓ１８０における手法と同様であるため、ここでの詳しい説明は省略する。
【００６０】
そして、Ｓ２００での結果、左撮影画像における前方探索範囲に撮影ターゲット５０が写り込んでいなければ（Ｓ２１０：ＮＯ）、制御部２４は、キャリブレーション処理をＳ２４０へと移行させる。一方、Ｓ２００での結果において、左撮影画像における前方探索範囲から撮影ターゲット５０の検出に成功していれば（Ｓ２１０：ＹＥＳ）、制御部２４は、キャリブレーション処理をＳ２２０へと移行させる。
【００６１】
そのＳ２２０では、制御部２４は、Ｓ１７０で撮影した右撮影画像における前方探索範囲のそれぞれから、撮影ターゲット５０の有無を検出する。本実施形態のＳ２２０では、制御部２４は、右撮影画像における前方探索範囲に、撮影ターゲット５０が写り込んでいるか否かを探査する。撮影ターゲット５０が写り込んでいるか否かを探査する手法は、Ｓ１８０における手法と同様であるため、ここでの詳しい説明は省略する。
【００６２】
そして、Ｓ２２０での結果、右撮影画像における前方探索範囲から撮影ターゲット５０の検出に成功していれば（Ｓ２３０：ＹＥＳ）、制御部２４は、詳しくは後述するＳ２６０へとキャリブレーション処理を移行させる。一方、Ｓ２２０での結果、右撮影画像における前方探索範囲に撮影ターゲット５０が写り込んでいなければ（Ｓ２３０：ＮＯ）、制御部２４は、キャリブレーション処理をＳ２４０へと移行させる。
【００６３】
そのＳ２４０では、制御部２４は、Ｓ１６０へと最初に移行してから、予め規定された第１所定時間が経過したか否かを判定する。第１所定時間は、２つの撮影ターゲット５０の手前に規定された地点から速度閾値以下の走行速度で走行する車両５の前端が、２つの撮影ターゲット５０の間を通過するまでに要する時間長として規定されている。
【００６４】
このＳ２４０での判定の結果、第１所定時間が経過していれば（Ｓ２４０：ＹＥＳ）、制御部２４は、本キャリブレーション処理を終了する。すなわち、フロント撮影画像における前端探索範囲や右撮影画像及び左撮影画像の前方探索範囲から、撮影ターゲット５０を検出できる可能性がなくなった場合には、キャリブレーション処理を終了し再度実行させる。
【００６５】
一方、Ｓ２４０での判定の結果、第１所定時間が経過していなければ（Ｓ２４０：ＮＯ）、制御部２４は、第２エラー信号を表示装置４０に出力する（Ｓ２５０）。第２エラー信号とは、フロント撮影画像、左撮影画像、及び右撮影画像の少なくともいずれか１つに、撮影ターゲット５０が写り込んでいない旨を表す信号である。その第２エラー信号を取得した表示装置４０は、フロント撮影画像、左撮影画像、及び右撮影画像の少なくともいずれか１つに、撮影ターゲット５０が写り込んでいない旨を表示する。
【００６６】
キャリブレーション装置２０の制御部２４は、その後、キャリブレーション処理をＳ１６０へと戻す。すると、制御部２４は、撮影指令を第１カメラ１０Ａに出力し（Ｓ１６０）、以降のステップを繰り返す。
【００６７】
図７に示すように、Ｓ２３０での判定の結果、右撮影画像における前方探索範囲から撮影ターゲット５０の検出に成功している場合に移行するＳ２６０では、制御部２４は、リア撮影画像における探索範囲である後端探索範囲を設定する。
【００６８】
リア撮影画像とは、図５（Ｂ）に示すような後方規定領域を撮影対象として、第３カメラ１０Ｃで撮影する画像である。また、後端探索範囲とは、２つの撮影ターゲット５０の間を車両５の後端が通過した後に第３カメラ１０Ｃで撮影したリア撮影画像において、撮影ターゲット５０のそれぞれが写り込んでいるか否かの判定を実行する対象とする領域である。本実施形態における後端探索範囲は、リア撮影画像における左右の端部のそれぞれに設けられる。
【００６９】
具体的に、Ｓ２６０における制御部２４は、リア撮影画像と、右撮影画像及び左撮影画像とが重複する領域のうちの設定された領域を後端探索範囲として設定する。すなわち、Ｓ２６０で設定される後端探索範囲は、撮影ターゲット５０が写り込む可能性が高い領域である。
【００７０】
キャリブレーション処理では、続いて、制御部２４は、右撮影画像及び左撮影画像における探索範囲である後方探索範囲を設定する（Ｓ２７０）。
後方探索範囲とは、２つの撮影ターゲット５０の間を車両５の後端が通過した後に第２カメラ１０Ｂで撮影された右撮影画像、及び第４カメラ１０Ｄで撮影された左撮影画像それぞれに、撮影ターゲット５０が写り込んでいるか否かの判定を実行する対象とする領域である。この後方探索範囲は、右撮影画像における車両後方側の端部、及び左撮影画像における車両後方側の端部に設けられる領域である。
【００７１】
具体的に、Ｓ１５０における制御部２４は、右撮影画像及び左撮影画像のそれぞれと、リア撮影画像との重複領域うちの設定された領域を、後方探索範囲として設定する。
続いて、制御部２４は、第３カメラ１０Ｃに撮影指令を出力する（Ｓ２８０）。その撮影指令を取得した第３カメラ１０Ｃは、リア撮影画像を撮影する。そして、第３カメラ１０Ｃは、キャリブレーション装置２０の制御部２４に、撮影したリア撮影画像を出力する。
【００７２】
さらに、制御部２４は、第２カメラ１０Ｂ及び第４カメラ１０Ｄに撮影指令を出力する（Ｓ２９０）。
その撮影指令を取得した第２カメラ１０Ｂは、右撮影画像を撮影する。そして、第２カメラ１０Ｂは、キャリブレーション装置２０の制御部２４に、撮影した右撮影画像を出力する。また、撮影指令を取得した第４カメラ１０Ｄは、左撮影画像を撮影する。そして、第４カメラ１０Ｄは、キャリブレーション装置２０の制御部２４に、撮影した左撮影画像を出力する。
【００７３】
続いて、キャリブレーション処理では、制御部２４は、Ｓ２８０で撮影したリア撮影画像における後端探索範囲のそれぞれから、撮影ターゲット５０の有無を検出する（Ｓ３００）。本実施形態のＳ３００では、制御部２４は、リア撮影画像における後端探索範囲に、撮影ターゲット５０が写り込んでいるか否かを探査する。撮影ターゲット５０が写り込んでいるか否かを探査する手法は、Ｓ１８０における手法と同様であるため、ここでの詳しい説明は省略する。
【００７４】
そして、Ｓ３００での結果、リア撮影画像における後端探索範囲のそれぞれから撮影ターゲット５０を検出できなければ（Ｓ３１０：ＮＯ）、制御部２４は、詳しくは後述するＳ３６０へとキャリブレーション処理を移行させる。リア撮影画像における後端探索範囲のそれぞれから撮影ターゲット５０を検出できない状況として、設置された撮影ターゲット５０の間を車両５の後端が通過していない状況が考えられる。
【００７５】
一方、Ｓ３００での結果、リア撮影画像における後端探索範囲のそれぞれから撮影ターゲット５０の検出に成功していれば（Ｓ３１０：ＹＥＳ）、制御部２４は、キャリブレーション処理をＳ３２０へと移行させる。
【００７６】
そのＳ３２０では、制御部２４は、Ｓ２９０で撮影した左撮影画像における後方探索範囲から、撮影ターゲット５０の有無を検出する。本実施形態のＳ３２０では、制御部２４は、左撮影画像における後方探索範囲に、撮影ターゲット５０が写り込んでいるか否かを探査する。撮影ターゲット５０が写り込んでいるか否かを探査する手法は、Ｓ１８０における手法と同様であるため、ここでの詳しい説明は省略する。
【００７７】
そして、Ｓ３２０での結果、左撮影画像における後方探索範囲から撮影ターゲット５０を検出できなければ（Ｓ３３０：ＮＯ）、制御部２４は、キャリブレーション処理をＳ３６０へと移行させる。一方、Ｓ３２０での結果、左撮影画像における後方探索範囲から撮影ターゲット５０の検出に成功していれば（Ｓ３３０：ＹＥＳ）、制御部２４は、キャリブレーション処理をＳ３４０へと移行させる。
【００７８】
そのＳ３４０では、制御部２４は、Ｓ２９０で撮影した右撮影画像における後方探索範囲から、撮影ターゲット５０の有無を検出する。本実施形態のＳ３４０では、制御部２４は、右撮影画像における後方探索範囲に、撮影ターゲット５０が写り込んでいるか否かを探査する。撮影ターゲット５０が写り込んでいるか否かを探査する手法は、Ｓ１８０における手法と同様であるため、ここでの詳しい説明は省略する。
【００７９】
そして、Ｓ３４０での結果、右撮影画像における後方探索範囲から撮影ターゲット５０の検出に成功していれば（Ｓ３５０：ＹＥＳ）、制御部２４は、詳しくは後述するＳ３８０へとキャリブレーション処理を移行させる。一方、Ｓ３４０での結果、右撮影画像における後方探索範囲から撮影ターゲット５０を検出できなければ（Ｓ３５０：ＮＯ）、制御部２４は、キャリブレーション処理をＳ３６０へと移行させる。
【００８０】
そのＳ３６０では、制御部２４は、Ｓ２８０へと最初に移行してから、予め規定された第２所定時間が経過したか否かを判定する。第２所定時間は、２つの撮影ターゲット５０の間に車両５の前端が到達してから、速度閾値以下の車速で走行する車両５の後端が、２つの撮影ターゲット５０の間を通過するまでに要する時間長として規定されていてもよい。
【００８１】
このＳ３６０での判定の結果、第２所定時間が経過していれば（Ｓ３６０：ＹＥＳ）、制御部２４は、本キャリブレーション処理を終了する。すなわち、リア撮影画像における後端探索範囲や右撮影画像及び左撮影画像における後方探索範囲から撮影ターゲット５０を検出できる可能性がなくなった場合には、キャリブレーション処理を終了し再度実行させる。
【００８２】
一方、Ｓ３６０での判定の結果、第２所定時間が経過していなければ（Ｓ３６０：ＮＯ）、制御部２４は、第３エラー信号を表示装置４０に出力する。第３エラー信号とは、リア撮影画像、左撮影画像、及び右撮影画像の少なくともいずれか１つに、撮影ターゲット５０が写り込んでいない旨を表す信号である。その第３エラー信号を取得した表示装置４０は、フロント撮影画像、左撮影画像、及び右撮影画像の少なくともいずれか１つに、撮影ターゲット５０が写り込んでいない旨を表示する。
【００８３】
キャリブレーション装置２０の制御部２４は、その後、キャリブレーション処理をＳ２８０へと戻す。すると、制御部２４は、第３カメラ１０Ｃに撮影指令を出力し（Ｓ２８０）、以降のステップを繰り返す。
【００８４】
ところで、各撮影画像の探索範囲に写り込んだ撮影ターゲット５０全ての検出に成功した場合に移行するＳ３８０では、制御部２４は、カメラ１０それぞれの姿勢パラメータのうち、ピッチΘ，ロールΦ，及び高さｚを特定し、パラメータ記憶部２２に記憶する。
【００８５】
ピッチΘ，ロールΦ，及び高さｚを特定する方法は、特許第５２９９２３１号に記載のように周知であるため、ここでの詳しい説明は省略するが、例えば、次の方法で特定すればよい。
【００８６】
具体的にＳ３８０では、制御部２４は、各撮影画像を射影変換する。本実施形態における射影変換は、鳥瞰変換である。そして、制御部２４は、その鳥瞰変換した画像における撮影ターゲット５０の形状が、実際の撮影ターゲット５０の形状と一致するように、各カメラ１０のピッチΘ，及びロールΦを探索して特定する。さらに、制御部２４は、鳥瞰変換した画像に写り込んだ撮影ターゲットであり、実際の撮影ターゲット５０の形状と一致した形状の撮影ターゲットの大きさが、実際の撮影ターゲット５０の大きさと一致するように、各カメラ１０の高さｚを特定する。
【００８７】
続いて、キャリブレーション処理のＳ３９０では、制御部２４は、カメラ１０それぞれの姿勢パラメータのうち、ｘ座標，ｙ座標，及びヨーΨを特定し、パラメータ記憶部２２に記憶する。
【００８８】
Ｓ３９０では、制御部２４は、まず、各画像に写り込んだ撮影ターゲット５０の代表点の座標を特定する手順１を実行する。代表点とは、各画像に写り込んだ撮影ターゲット５０における代表的な箇所である。なお、本実施形態においては、重心を代表点として説明する。
【００８９】
そして、Ｓ３９０では、制御部２４は、各撮影ターゲット５０の代表点の座標が一致するような仮想リンク構造を算出する手順２を実行する。仮想リンク構造とは、各画像に写り込んだ撮影ターゲットの代表点を仮想的に接続した線分をリンクとして形成した構造である。
【００９０】
さらに、Ｓ３９０では、制御部２４は、評価関数の評価値が最小となるように、仮想リンク構造におけるリンク角αを探索して特定する手順３を実行する。そして、手順３で特定したリンク角αを用いて、カメラ１０それぞれの姿勢パラメータのうち、ｘ座標，ｙ座標，及びヨーΨを特定する手順４を実行する。
【００９１】
このうち、手順１において、画像に写り込んだ撮影ターゲット５０の代表点の座標を求める手法の一例として、特許第５２９９２３１号に記載の手法を用いることが考えられる。
【００９２】
なお、以下では、図８に示すように、画像に写り込んだ撮影ターゲット５０の代表点のうち、２つの撮影ターゲット５０の間に車両５の前端が到達する前に、第１カメラ１０Ａと第４カメラ１０Ｄとの双方で撮影された画像に写り込んだ撮影ターゲット５０の代表点を、Ｍ１とする。また、画像に写り込んだ撮影ターゲット５０の代表点のうち、２つの撮影ターゲット５０の間に車両５の前端が到達する前に、第１カメラ１０Ａと第２カメラ１０Ｂとの双方で撮影された画像に写り込んだ撮影ターゲット５０の代表点を、Ｍ２とする。
【００９３】
また、画像に写り込んだ撮影ターゲット５０の代表点のうち、２つの撮影ターゲット５０の間を車両５の後端が通過した後に、第３カメラ１０Ｃと第２カメラ１０Ｂとの双方で撮影された画像に写り込んだ撮影ターゲット５０の代表点を、Ｍ３とする。また、画像に写り込んだ撮影ターゲット５０の代表点のうち、２つの撮影ターゲット５０の間を車両５の後端が通過した後に、第３カメラ１０Ｃと第４カメラ１０Ｄとの双方で撮影された画像に写り込んだ撮影ターゲット５０の代表点を、Ｍ４とする。
【００９４】
そして、本実施形態のキャリブレーション処理においては、Ｍ４を、以下の（１）式から（６）式によって求める。なお、Ｍ４の導出は、Ｍ１からＭ４までを求める過程において、時間軸に沿って最後に実行する。
【００９５】
【数１】
0006413974.tif 000002
ここで、（１）式におけるベクトルＭ４，ベクトルＭ３は、それぞれ、カメラ１０のうち、特定のカメラの原点から、Ｍ４，Ｍ３へと向かうベクトルである。また、ベクトルＭ３Ｍ４は、Ｍ３を基点としてＭ４へと向かうベクトルである。
【００９６】
本実施形態において、２つの撮影ターゲット５０は相対的な位置関係が固定された上で配置されているため、Ｍ３とＭ４との相対的な位置関係は、Ｍ１とＭ２との相対的な位置関係と同一である。このため、上記（１）式を、下記（２）式へと変換できる。
【００９７】
【数２】
0006413974.tif 000003
ただし、符号δは、ベクトルＭ３Ｍ４とベクトルＭ１Ｍ２とがなす角度である。なお、ベクトルＭ１Ｍ２は、Ｍ１を基点としてＭ２へと向かうベクトルである。
【００９８】
ここで、ベクトルＭ４をｘ成分とｙ成分とに分けると、下記（３）式，及び下記（４）式によって表せる。
【００９９】
【数３】
0006413974.tif 000004
２つの撮影ターゲット５０の間に車両５の前端が到達する前に撮影された画像に写り込んだ撮影ターゲット５０における２つの頂点Ｐ１Ｐ２をベクトルで表すと、ベクトルＰ１Ｐ２となる。また、その撮影ターゲット５０と同じ地点に配置され、２つの撮影ターゲット５０の間を車両５の後端が通過した後に撮影された画像に写り込んだ撮影ターゲット５０における２つの頂点Ｑ１Ｑ２をベクトルで表すと、ベクトルＱ１Ｑ２となる。
【０１００】
そして、符号δは、ベクトルＰ１Ｐ２とベクトルＱ１Ｑ２とのなす角と同一である。
よって、ＣＯＳ（δ）は、下記（５）式によって表され、ＳＩＮ（δ）は、下記（６）式によって表される。ただし、（５）式における符号Ｌは、１つの撮影ターゲット５０における２つの頂点間の長さである。
【０１０１】
【数４】
0006413974.tif 000005
そして、（５）式で表されるＣＯＳ（δ）、及び（６）式で表されるＳＩＮ（δ）を、（２）式に代入すれば、Ｍ４を導出できる。
【０１０２】
なお、本実施形態においては、手順２，手順３，及び手順４は、周知の手法を用いて実現すればよい。その手順２，手順３，及び手順４の一例として、特許第５２９９２３１号に記載の手法を用いることが考えられる。
【０１０３】
その後、制御部２４は、キャリブレーション処理を終了する。
［実施形態の効果］
以上説明したように、キャリブレーション処理では、姿勢パラメータを特定するために用いる画像として、２つの撮影ターゲット５０の間を車両が通過する前に、第１カメラ１０Ａ、第２カメラ１０Ｂ、及び第４カメラ１０Ｄで撮影した画像のそれぞれを取得できる。さらに、キャリブレーション処理においては、姿勢パラメータを特定するために用いる画像として、２つの撮影ターゲット５０の間を車両５が通過した後に、第４カメラ１０Ｄ、第２カメラ１０Ｂ、及び第３カメラ１０Ｃで撮影した画像のそれぞれを取得できる。
【０１０４】
すなわち、キャリブレーション処理によれば、車両５を走行させるという簡易な動作によって、キャリブレーションの実行に必要な画像を取得できる。
さらに、キャリブレーション処理においては、キャリブレーションを実行するために用いる情報は、カメラ１０で撮影した画像だけであり、車両５の回転角などのその他の情報は不要である。
【０１０５】
つまり、キャリブレーション処理によれば、車両５の回転角を検出するセンサが組み付けられていない場合であっても、キャリブレーションを実行できる。
この結果、カメラ１０の姿勢パラメータを導出する技術において、実施の自由度をより高くすることができる。
【０１０６】
ところで、キャリブレーション処理においては、各画像から撮影ターゲット５０を検出できなければ、撮影ターゲット５０を検出できない旨を報知している。
したがって、キャリブレーション処理によれば、キャリブレーションの実行に必要な画像を取得できなかったことを報知できる。これにより、キャリブレーション装置２０の利用者は、キャリブレーションの実行に必要な画像を取得できなかった旨を認識できる。
【０１０７】
さらに、キャリブレーション処理においては、撮影ターゲット５０が写り込んでいるか否かを探索する探索範囲を各画像に設定し、その設定された探索範囲だけを探索している。
【０１０８】
これにより、キャリブレーション処理によれば、撮影ターゲット５０が各画像に写り込んでいるか否かを判定する処理の処理量を低減できる。
また、キャリブレーション処理では、走行速度が速度閾値以下である場合にだけ、カメラ１０それぞれで撮影した各画像に撮影ターゲット５０が写り込んでいるか否かを判定している。
【０１０９】
よって、キャリブレーション処理によれば、低速で走行している場合に撮影した画像を取得してキャリブレーションを実行できる。このため、キャリブレーション処理によれば、キャリブレーションの精度を向上させることができる。
【０１１０】
また、キャリブレーション処理によれば、走行速度が速度閾値よりも大きい場合には、走行速度が速度閾値よりも大きい旨を報知している。このため、キャリブレーション装置２０の利用者は、走行速度が速度閾値よりも大きく、キャリブレーションを実行できないことを認識できる。
【０１１１】
ところで、キャリブレーション処理のＳ３９０においては、三角関数の演算を実行することなく、Ｍ４の導出を実現している。
このため、キャリブレーション処理によれば、Ｍ４の導出に必要となる処理量を軽減できる。
［その他の実施形態］
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
【０１１２】
例えば、上記実施形態においては、キャリブレーションを行うために必要な画像を、車両５の車幅よりも間隔を空けて配置された２つの撮影ターゲット５０の間を、車両５が走行する間に撮影した画像としていたが、キャリブレーションを行うために必要な画像は、これに限るものではない。
【０１１３】
すなわち、キャリブレーション装置２０において、姿勢パラメータの特定に用いる画像のうち、車両５の前方に位置する撮影ターゲット５０を第１カメラ１０Ａ、第２カメラ１０Ｂ、及び第４カメラ１０Ｄで撮影した画像は、車両５を移動させること無く停止した状態で車両５の前方に配置された撮影ターゲット５０を撮影したものであってもよい。そして、姿勢パラメータの特定に用いる画像のうち、車両５の後方に位置する撮影ターゲット５０を第４カメラ１０Ｄ、第２カメラ１０Ｂ、及び第３カメラ１０Ｃで撮影した画像は、車両５の前方に配置された撮影ターゲット５０と同一の撮影ターゲット５０を車両５の後方へと移動させた上で、車両５自体を移動させること無く停止した状態で撮影したものであってもよい。撮影ターゲット５０を車両５の後方へと移動させる場合には、２つの撮影ターゲット５０の相対的な位置関係は、車両５の前方に配置した場合の相対的な位置関係と同一であることが好ましい。
【０１１４】
上述したような方法で、姿勢パラメータの特定に用いる画像を取得すれば、姿勢パラメータの特定に必要となる空間を必要最小限とすることができる。すなわち、車両５の前方に位置する撮影ターゲット５０を第１カメラ１０Ａ、第２カメラ１０Ｂ、及び第４カメラ１０Ｄで撮影し、車両５を撮影ターゲット５０が配置された位置まで前進させる。そして、車両５の後方に撮影ターゲット５０を配置し、第４カメラ１０Ｄ、第２カメラ１０Ｂ、及び第３カメラ１０Ｃで画像を撮影する。これにより、自動車の製造段階やディーラーでの整備段階で姿勢パラメータを特定する際に、必要となる水平面での面積を容易に確保できる。
【０１１５】
また、上記実施形態のキャリブレーション処理では、Ｓ１１０からＳ１３０までのステップを実行していたが、キャリブレーション処理において、Ｓ１１０からＳ１３０までのステップは省略されていてもよい。
【０１１６】
なお、上記実施形態の構成の一部を省略した態様も本発明の実施形態である。また、上記実施形態と変形例とを適宜組み合わせて構成される態様も本発明の実施形態である。また、特許請求の範囲に記載した文言によって特定される発明の本質を逸脱しない限度において考え得るあらゆる態様も本発明の実施形態である。
【符号の説明】
【０１１７】
１…キャリブレーションシステム  ５…車両  １０，１０Ａ，１０Ｂ，１０Ｃ，１０Ｄ…カメラ（第１カメラ，第２カメラ，第３カメラ，第４カメラ）  １４…入力装置  ２０…キャリブレーション装置  ２２…パラメータ記憶部  ２４…制御部  ２６…ＲＯＭ  ２８…ＲＡＭ  ３０…ＣＰＵ  ４０…表示装置  ５０…撮影ターゲット
【図１】
0006413974.tif 000006
【図２】
0006413974.tif 000007
【図３】
0006413974.tif 000008
【図４】
0006413974.tif 000009
【図５】
0006413974.tif 000010
【図６】
0006413974.tif 000011
【図７】
0006413974.tif 000012
【図８】
0006413974.tif 000013