(57)【要約】  情報取得部１１-1，１１-2（１１-2a）は周辺物体情報を取得して、情報処理部１２-1，１２-2（１２-2a）は、周辺物体情報に基づき周辺物体の特徴点に関する点群データを生成する。重み設定部１３は、周辺物体情報を取得したときの周辺物体と情報取得部との状況に応じた重みを設定する。キャリブレーション処理部１５は、点群データと重みとパラメータ記憶部１４に記憶された外部パラメータを用いて、外部パラメータの誤差を示すコストに基づき、誤差が最小となる新たな外部パラメータを算出する。パラメータ更新部１６は、算出された新たな外部パラメータを用いて、パラメータ記憶部１４に記憶された外部パラメータを更新する。パラメータ記憶部１４には、精度の高い外部パラメータが記憶されるようになるので、安定してキャリブレーションを行うことができる。
2019155719.tif 000002
【特許請求の範囲】
【請求項１】
複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータを算出するキャリブレーション処理部
を備えるキャリブレーション装置。
【請求項２】
前記キャリブレーション処理部は、前記特徴点について前記複数の情報取得部で取得された点群データと前記重みと予め記憶されているパラメータとを用いて、該パラメータの誤差を示すコストの算出を行い、算出されたコストに基づき、誤差が最小となるパラメータを算出する
請求項１に記載のキャリブレーション装置。
【請求項３】
前記周辺物体情報は所定期間内に複数回取得されている
請求項２に記載のキャリブレーション装置。
【請求項４】
前記キャリブレーション処理部は、前記複数の情報取得部が設けられた移動体における前記周辺物体情報の取得毎の移動速度に応じて前記重みの設定を行い、移動速度が速くなるに伴い重みを小さくする
請求項３に記載のキャリブレーション装置。
【請求項５】
前記キャリブレーション処理部は、前記特徴点の動きベクトルに応じて前記重みの設定を行い、前記動きベクトルが大きくなるに伴い重みを小さくする
請求項３に記載のキャリブレーション装置。
【請求項６】
前記所定期間は、前記複数の情報取得部が設けられた移動体の移動開始から予め設定された期間、または移動終了までの予め設定された期間である
請求項３に記載のキャリブレーション装置。
【請求項７】
前記キャリブレーション処理部は、前記複数の情報取得部から前記特徴点までの距離に応じて前記重みの設定を行い、距離が長くなるに伴い重みを小さくする
請求項２に記載のキャリブレーション装置。
【請求項８】
前記キャリブレーション処理部で算出されたパラメータを用いて、前記記憶されているパラメータを更新するパラメータ更新部をさらに備える
請求項２に記載のキャリブレーション装置。
【請求項９】
前記パラメータ更新部は、前記複数の情報取得部が設けられた移動体の移動停止時または移動終了時から次の移動開始までに前記パラメータの更新を行う
請求項８に記載のキャリブレーション装置。
【請求項１０】
前記複数の情報取得部は、前記周辺物体情報として少なくとも前記周辺物体の撮像画を取得する
請求項１に記載のキャリブレーション装置。
【請求項１１】
前記周辺物体の撮像画を前記周辺物体情報として取得する情報取得部と、測距センサを用いて前記周辺物体の各位置までの距離を測定して測定結果を前記周辺物体情報とする情報取得部を、前記複数の情報取得部として備える
請求項１０に記載のキャリブレーション装置。
【請求項１２】
前記情報取得部で取得された前記周辺物体の各位置までの距離の測定結果についてレジストレーション処理を行い、前記周辺物体の位置毎の点群データを前記特徴点毎の点群データとして生成する情報処理部をさらに備える
請求項１１に記載のキャリブレーション装置。
【請求項１３】
前記周辺物体の撮像画を前記周辺物体情報として取得する情報取得部を、前記複数の情報取得部として備える
請求項１０に記載のキャリブレーション装置。
【請求項１４】
前記情報取得部で取得された前記周辺物体の撮像画を用いて特徴点検出を行い、検出した前記周辺物体の特徴点についてのレジストレーション処理によって、特徴点毎の点群データを生成する情報処理部をさらに備える  
請求項１０に記載のキャリブレーション装置。
【請求項１５】
複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータをキャリブレーション処理部で算出すること
を含むキャリブレーション方法。
【請求項１６】
キャリブレーションをコンピュータで行うためのプログラムであって、
複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データを取得する手順と、
前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータを算出する手順と
を前記コンピュータで実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この技術は、キャリブレーション装置とキャリブレーション方法およびプログラムに関し、安定したキャリブレーションを行えるようにする。
【背景技術】
【０００２】
従来、測距装置を用いて周辺領域の物体を認識することが行われている。例えば特許文献１では、構造物までの距離を計測する距離計測センサと距離計測センサの３次元位置を計測するセンサ位置計測装置を移動体に設けて、距離計測センサの計測結果とセンサ位置計測装置の計測結果を用いて、構造物の３次元位置が算出されている。また、距離計測センサの取り付け位置および取り付け姿勢についてキャリブレーションが行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−０２７５９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、周辺領域の物体を認識するために用いられるセンサは、特許文献１に示す距離計測センサに限られない。例えば撮像装置を用いて、撮像装置で取得された撮像画に基づいて三次元計測等が行われている。撮像画に基づく三次元計測では、例えば相対的な位置及び姿勢が既知な２台の撮像装置で取得された撮像画をもとに三角測量の原理を利用して三次元計測が行われている。また、三次元計測の信頼性を高めるために、撮像装置だけでなく測距装置も用いられている。このように、複数の撮像装置あるいは撮像装置と測距装置を用いて三次元計測を行うためには、撮像装置間や撮像装置と測距装置との間の相対的な位置及び姿勢を事前にキャリブレーションしておく必要がある。しかし、測距装置で取得された点群データと撮像画から検出した特徴点に基づく点群データを用いてキャリブレーションを行う場合、遠方の物体に焦点をあわせると近景の物体の画像がボケを生じるおそれや、物体が遠方になるに伴い測距装置の測距精度が低下するおそれがある。したがって、キャリブレーションを安定して行うことができない。また、撮像装置と測距装置が非同期であると移動速度が速い場合に観測点の位置の差が大きくなってしまう場合があり、キャリブレーションを安定して行うことができない。【０００５】
そこで、この技術では、安定してキャリブレーションを行うことができるキャリブレーション装置とキャリブレーション方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
この技術の第１の側面は、
複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータを算出するキャリブレーション処理部
を備えるキャリブレーション装置にある。【０００７】
この技術において、複数の情報取得部は、所定期間例えば複数の情報取得部が設けられた移動体の移動開始から予め設定された期間、または移動終了までの予め設定された期間に周辺物体情報が複数回取得される。また、複数の情報取得部は、周辺物体情報として少なくとも周辺物体の撮像画を取得するように構成されている。例えば情報取得部は、周辺物体の撮像画を取得する複数の情報取得部、あるいは周辺物体の撮像画を取得する情報取得部と測距センサを用いて周辺物体の各位置までの距離を測定して測定結果を周辺物体情報とする情報取得部で構成されている。情報処理部は、情報取得部で取得された周辺物体の各位置までの距離の測定結果についてレジストレーション処理を行い、周辺物体の位置毎の点群データを特徴点毎の点群データとして生成する。また、情報処理部は、情報取得部で取得された周辺物体の撮像画を用いて特徴点検出を行い、検出した周辺物体の特徴点についてのレジストレーション処理によって、特徴点毎の点群データを生成する。【０００８】
キャリブレーション処理部は、周辺物体の特徴点に関する点群データと、周辺物体情報を取得したときの周辺物体と情報取得部との状況に関する重みと予め記憶されている複数の情報取得部の位置と姿勢に関するパラメータ（外部パラメータ）を用いて、新たな外部パラメータを算出する。周辺物体と情報取得部との状況に関する重みとしては、周辺物体と情報取得部との相対速度や距離、特徴点の動きベクトルを用いる。キャリブレーション処理部は、複数の情報取得部が設けられた移動体の周辺物体情報の取得毎の移動速度に応じて重みの設定を行い、移動速度が速くなるに伴い重みを小さくする。また、キャリブレーション処理部は、周辺物体と情報取得部との距離に応じて重みの設定を行い、距離が長くなるに伴い重みを小さくする。さらに、重みの設定では、特徴点の動きベクトルに応じて重みの設定を行い、動きベクトルが大きくなるに伴い重みを小さくする。キャリブレーション処理部は、重みと点群データと予め記憶されているパラメータを用いて、該パラメータの誤差を示すコストの算出を周辺物体情報の取得毎に行い、取得毎のコストの累積値に基づき、誤差が最小となる新たなパラメータを算出する。さらに、パラメータ更新部は、複数の情報取得部が設けられた移動体の移動停止時または移動終了時から次の移動開始までに、記憶されているパラメータをキャリブレーション処理部で算出されたパラメータに更新する。【０００９】
この技術の第２の側面は、
複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータをキャリブレーション処理部で算出すること
を含むキャリブレーション方法にある。【００１０】
この技術の第３の側面は、
キャリブレーションをコンピュータで行うためのプログラムであって、
複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データを取得する手順と、
前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータを算出する手順と
を前記コンピュータで実行させるプログラムにある。【００１１】
なお、本技術のプログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、光ディスクや磁気ディスク、半導体メモリなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ上でプログラムに応じた処理が実現される。
【発明の効果】
【００１２】
この技術によれば、複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、周辺物体情報を取得したときの周辺物体と情報取得部との状況に応じた重みを用いて、複数の情報取得部間の外部パラメータが算出される。このため、安定してキャリブレーションを行うことができるようになる。なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
【図面の簡単な説明】
【００１３】
【図１】キャリブレーション装置の構成を例示した図である。
【図２】第１の実施の形態の構成を例示した図である。
【図３】速度と重みの関係を例示した図である。
【図４】特徴点を例示した図である。
【図５】第１の実施の形態の動作を例示したフローチャートである。
【図６】第１の実施の形態の動作例を示す図である。
【図７】第２の実施の形態の構成を例示した図である。
【図８】距離と重みの関係を例示した図である。
【図９】第２の実施の形態の動作を例示したフローチャートである。
【図１０】第２の実施の形態の動作例を示す図である。
【図１１】第３の実施の形態の構成を例示した図である。
【図１２】動きベクトルの大きさと重みの関係を例示した図である。
【図１３】第３の実施の形態の動作を例示したフローチャートである。
【図１４】第４の実施の形態の構成を例示した図である。
【図１５】第４の実施の形態の動作を例示したフローチャートである。
【図１６】第５の実施の形態の構成を例示した図である。
【図１７】第５の実施の形態の動作を例示したフローチャートである。
【図１８】第６の実施の形態の構成を例示した図である。
【図１９】第６の実施の形態の動作を例示したフローチャートである。
【図２０】車両制御システムの概略的な構成の一例を示すブロック図である。
【図２１】車外情報検出部及び撮像部の設置位置の一例を示す説明図である。
【発明を実施するための形態】
【００１４】
以下、本技術を実施するための形態について説明する。なお、説明は以下の順序で行う。
１．キャリブレーション装置の構成
２．第１の実施の形態
３．第２の実施の形態
４．第３の実施の形態
５．第４の実施の形態
６．第５の実施の形態
７．第６の実施の形態
８．他の実施の形態
９．応用例
【００１５】
＜１．キャリブレーション装置の構成＞
図１は、本技術のキャリブレーション装置の構成を例示している。キャリブレーション装置１０は、複数の情報取得部１１-1，１１-2(2a)と情報処理部１２-1，１２-2(2a)、重み設定部１３、パラメータ記憶部１４、キャリブレーション処理部１５、およびパラメータ更新部１６を用いて構成されている。なお、キャリブレーション装置１０は、図１に示すブロックが一体に設けられる場合に限らず、一部のブロックが別個に設けられた構成であってもよい。
【００１６】
情報取得部１１-1〜-2(2a)は、周辺物体情報を取得する。周辺物体情報とは、周辺物体の特徴点に関する情報を取得可能とする情報であり、例えば周辺物体を撮像した撮像画や周辺物体の各位置までの測距データ等である。情報処理部１２-1は、情報取得部１１-1で取得された周辺物体情報に基づき、周辺物体における特徴点の点群データを生成してキャリブレーション処理部１５へ出力する。同様に、情報処理部１２-2(2a)は、情報取得部１１-2(2a)で取得された周辺物体情報に基づき、周辺物体における特徴点の点群データを生成してキャリブレーション処理部１５へ出力する。
【００１７】
重み設定部１３は、キャリブレーションの精度に影響を与える周辺物体と情報取得部との状況に応じた重みを設定する。重み設定部１３は、設定した重みをキャリブレーション処理部１５へ出力する。
【００１８】
パラメータ記憶部１４は、複数の情報取得部の位置と姿勢に関するパラメータ（以下「外部パラメータ」という）を保持している。パラメータ記憶部１４は、保持している外部パラメータをキャリブレーション処理部１５へ出力する。また、パラメータ記憶部１４は、パラメータ更新部１６から外部パラメータが供給された場合、保持している外部パラメータをパラメータ更新部１６から供給された外部パラメータに更新する。
【００１９】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2(2a)から供給された所定期間の点群データと、重み設定部１３で設定された重みと、パラメータ記憶部１４から取得した外部パラメータを用いて、外部パラメータの誤差に応じたコストを、コスト関数に基づいて算出する。また、キャリブレーション処理部１５は、所定期間のコストの累積値が最小となる新たな外部パラメータを算出してパラメータ更新部１６へ出力する。
【００２０】
パラメータ更新部１６は、キャリブレーション処理部１５で算出した新たな外部パラメータをパラメータ記憶部１４へ出力することで、パラメータ記憶部１４には安定してキャリブレーションを行うことができる外部パラメータを保持させる。
【００２１】
＜２．第１の実施の形態＞
次に第１の実施の形態について説明する。図２は、第１の実施の形態の構成を例示している。第１の実施の形態では、２つの情報取得部１１-1，１１-2を用いる。情報取得部１１-1は、撮像装置を用いて構成することで撮像画を取得する。情報取得部１１-2は、測距装置例えばＴＯＦ（Time of Flight）カメラやＬＩＤＡＲ（Light Detection and Ranging、Laser Imaging Detection and Ranging）等を用いて構成して、測距値を示す点群データを取得する。また、重み設定部１３は、周辺物体と情報取得部との状況に応じた重みを設定する。重み設定部１３は、周辺物体と情報取得部との状況として移動速度を用いる。ここで、移動速度とは例えば周辺物体に対する情報取得部１１-1，１１-2の移動速度とする。
【００２２】
情報取得部１１-1は、取得した撮像画を情報処理部１２-1へ出力して、情報取得部１１-2は取得した点群データを情報処理部１２-2へ出力する。
【００２３】
情報処理部１２-1は、ＳｆＭ（Structure from Motion）処理を行う。ＳｆＭ処理では、情報取得部１１-1で取得された時間順である複数の撮像画から検出した周辺物体の特徴点についてのレジストレーション処理によって特徴点毎の点群データ例えば特徴点毎に距離を示す点群データを生成する。情報処理部１２-1は、生成した点群データをキャリブレーション処理部１５へ出力する。
【００２４】
情報処理部１２-2は、情報取得部１１-1で取得された周辺物体の各位置までの距離の測定結果についてレジストレーション処理を行い、周辺物体の位置毎の点群データを特徴点毎の点群データとして生成してキャリブレーション処理部１５へ出力する。
【００２５】
重み設定部１３は、移動速度取得部１３１と重み設定処理部１３２を有している。移動速度取得部１３１は、移動体の移動速度を検出可能なセンサ等を用いて構成されている。例えば移動体が車両である場合、移動速度取得部１３１は車速検出センサを用いて構成されており、検出した移動速度を示す速度情報を重み設定処理部１３２へ出力する。
【００２６】
重み設定処理部１３２は、移動速度取得部１３１で取得された移動速度に応じて重みの設定を行う。ここで、移動速度が速くなると、情報取得部１１-1と情報取得部１１-2が非同期で撮像画や点群データを取得する場合、周辺物体の位置は撮像画で示される位置と点群データで示される位置の差が大きくなる場合がある。そこで、重み設定処理部１３２は、移動速度が速くなるに伴い重みを小さくする。図３は、速度と重みの関係を例示しており、重み設定処理部１３２は、取得した移動速度Ｖspに応じて重みＷspを設定して、キャリブレーション処理部１５へ出力する。
【００２７】
パラメータ記憶部１４は、例えば情報取得部１１-1，１１-2間の外部パラメータが記憶されており、記憶されている外部パラメータは、パラメータ更新部１６によって更新可能とされている。
【００２８】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2から供給された所定期間の点群データのレジストレーションを行い、同じ特徴点の点群データを同一座標系のデータとする。さらに、キャリブレーション処理部１５は、レジストレーション後の点群データと重み設定部１３で設定された重みとパラメータ記憶部１４に記憶されている外部パラメータを用いて、所定期間のコストの累積値が最小となる新たな外部パラメータを算出する。所定期間とは、例えば情報取得部１１-1，１１-2が車両に設けられている場合、車両の走行開始から予め設定された期間とする。また、車両の走行終了までの予め設定された期間であってもよい。
【００２９】
ここで、情報処理部１２-1から供給された点群データのレジストレーション後のデータを点群データＣａ(i,t)、情報処理部１２-2から供給された点群データのレジストレーション後のデータを点群データＬ(i,t)とする。なお、「ｔ」は時間に関するインデックス（以下「時間インデックス」という）であり、「ｉ」は特徴点に関するインデックス（以下「特徴点インデックス」という）である。また、外部パラメータを並進パラメータＴと回転パラメータＲとする。なお、並進パラメータＴは、情報取得部１１-1と情報取得部１１-2の位置に関するパラメータであり、回転パラメータＲは、情報取得部１１-1と情報取得部１１-2の姿勢に関するパラメータである。
【００３０】
図４は、特徴点を例示しており、図４の（ａ）は情報取得部１１-1で取得された特徴点、図４の（ｂ）は情報取得部１１-2で取得された特徴点を例示している。特徴点は、時間インデックスｔ＝１〜ｍに対応する時間で取得されている。また、特徴点として、例えば特徴点インデックスｉ＝１〜ｎで示す特徴点が取得されている。さらに、時間インデックス間で対応する特徴点は、特徴点インデックスｉを等しい値としている。
【００３１】
キャリブレーション処理部１５は、重み設定部１３で設定された時間インデックス毎の重みＷsp(t)を用いて、式（１）に基づきコストＥを算出する。さらに、キャリブレーション処理部１５は、算出したコストＥが最小となる並進パラメータＴと回転パラメータＲを算出する。キャリブレーション処理部１５は、コストＥが最小となる並進パラメータＴと回転パラメータＲをパラメータ更新部１６へ出力する。
【００３２】
【数１】
2019155719.tif 000003
【００３３】
パラメータ更新部１６は、キャリブレーション処理部１５から供給された並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータ（並進パラメータと回転パラメータ）を所定のタイミングで更新する。例えば、情報取得部１１-1，１１-2が車両に設けられており、車両の走行開始から予め設定された所定期間に取得された周辺物体情報を用いて新たな外部パラメータが算出されたとする。この場合、その後に車両が停止状態となったタイミングでパラメータ記憶部１４に記憶されている外部パラメータを新たに算出された外部パラメータで更新する。また、車両の走行終了までの予め設定された所定期間に取得された周辺物体情報を用いて新たな外部パラメータが算出されたとする。この場合、車両が走行終了状態であるから、直ちにあるいは次の走行開始までの期間中に、パラメータ記憶部１４に記憶されている外部パラメータを新たに算出された外部パラメータで更新する。
【００３４】
図５は、第１の実施の形態の動作を例示したフローチャートである。ステップＳＴ１でキャリブレーション装置は画像取得処理を行う。キャリブレーション装置の情報取得部１１-1は、周辺物体情報として撮像画を取得してステップＳＴ２に進む。
【００３５】
ステップＳＴ２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行う。キャリブレーション装置の情報処理部１２-1は、ステップＳＴ１で取得した撮像画から画像の特徴を現す特徴点（例えばエッジやコーナ等）を検出してステップＳＴ３に進む。
【００３６】
ステップＳＴ３でキャリブレーション装置はマッチング処理を行う。キャリブレーション装置の情報処理部１２-1は、撮像時刻が異なる撮像画間で特徴点のマッチング処理を行い、撮像画における特徴点が他の撮像画における何れの特徴点に対応するか検出してステップＳＴ４に進む。
【００３７】
ステップＳＴ４でキャリブレーション装置はレジストレーション処理を行う。キャリブレーション装置の情報処理部１２-1は、ステップＳＴ３の検出結果に基づき対応する特徴点の画像上の位置関係を検出してステップＳＴ５に進む。
【００３８】
ステップＳＴ５でキャリブレーション装置は三角測量処理を行う。キャリブレーション装置の情報処理部１２-1は、撮像時刻が異なる撮像画間でマッチングする特徴点の画像上の位置関係を利用して特徴点までの距離を算出する。また、情報処理部１２-1は、特徴点毎の距離を点群データとしてステップＳＴ４１に進む。なお、ＳｆＭ処理は、ステップＳＴ２乃至ステップＳＴ５までの処理に限らず、図示されていない処理例えばバンダル調整等が含まれてもよい。
【００３９】
ステップＳＴ１１でキャリブレーション処理は測距情報取得処理を行う。キャリブレーション装置の情報取得部１１-2は、周辺物体情報として、情報取得部１１-1による撮像範囲の各点の測距結果を示す点群データを取得してステップＳＴ１２に進む。
【００４０】
ステップＳＴ１２でキャリブレーション装置はレジストレーション処理を行う。キャリブレーション装置の情報処理部１２-2は、ステップＳＴ１１で得られた時間毎の点群データから対応する点の点群データを検出してステップＳＴ４１に進む。
【００４１】
ステップＳＴ３１でキャリブレーション装置は移動速度取得処理を行う。キャリブレーション装置の重み設定部１３は、移動速度取得部１３１と重み設定処理部１３２を有している。移動速度取得部１３１は、例えば車速検出センサから、情報取得部１１-1，１１-2が設けられている移動体の移動速度を示す速度情報を取得してステップＳＴ３２に進む。
【００４２】
ステップＳＴ３２でキャリブレーション装置は重み設定処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ３１で取得した速度情報に基づき重みを設定してステップＳＴ４１に進む。
【００４３】
ステップＳＴ４１でキャリブレーション装置はパラメータ算出処理を行う。キャリブレーション装置のキャリブレーション処理部１５は、ステップＳＴ１乃至ＳＴ５の処理で得られた点群データとステップＳＴ１１乃至ＳＴ１２の処理で得られた点群データとの対応関係を判別して、上述の式（１）に示すように、対応する点群データとステップＳＴ３２で設定された重みを用いてコストの算出を行う。また、キャリブレーション処理部１５は、所定期間におけるコストの累積値が最小となる外部パラメータすなわち並進パラメータＴと回転パラメータＲを算出してステップＳＴ４２に進む。
【００４４】
ステップＳＴ４２でキャリブレーション装置はパラメータ更新処理を行う。キャリブレーション装置のパラメータ更新部１６は、ステップＳＴ４１で算出した並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータを更新する。
【００４５】
このような第１の実施の形態によれば、移動速度が速い区間のコストは重みが小さくされる。図６は第１の実施の形態の動作例を示す図である。例えば、情報取得部１１-1，１１-2が等しい向きで移動体の側面に固定されている場合、移動体の前方向の移動速度が遅いと特徴点の位置変化は小さいが、移動速度が速いと特徴点の位置変化が大きい。したがって、情報取得部１１-1で撮像画を取得するタイミングと情報取得部１１-2で周辺物体情報を取得するタイミングに差δを生じた場合、移動速度が遅いと特徴点の位置差は少ないが、移動速度が速くなるに伴い特徴点の位置差が大きくなる。このため、移動速度が低速である速度Ｖ１であるときの時間インデックスｔ＝ａ，ｔ＝ｄの重みＷsp(t=a)，Ｗsp(t=d)は、移動速度が中速である速度Ｖ２（Ｖ１＜Ｖ２）であるときの時間インデックスｔ＝ｂの重みＷsp(t=b)よりも大きくする。また、移動速度が高速である速度Ｖ３（Ｖ２＜Ｖ３）であるときの時間インデックスｔ＝ｃの重みＷsp(t=c)は、重みＷsp(t=b)よりも小さくする。
【００４６】
このように、第１の実施の形態によれば移動速度が速くなるに伴い重みが小さくされるので、キャリブレーションにおける観測点の誤差（観測点の位置差）の影響を少なくできる。このため、速度に応じた重みを用いることなくキャリブレーションを行った場合に比べて、精度よく安定してキャリブレーションを行うことができるようになる。
【００４７】
＜３．第２の実施の形態＞
次に第２の実施の形態について説明する。図７は、第２の実施の形態の構成を例示している。第２の実施の形態では、２つの情報取得部１１-1，１１-2を用いる。情報取得部１１-1は、撮像装置を用いて構成することで撮像画を取得する。情報取得部１１-2は、測距装置例えばＴＯＦ（Time of Flight）カメラやＬＩＤＡＲ（Light Detection and Ranging、Laser Imaging Detection and Ranging）等を用いて構成することで、測距値を示す点群データを取得する。また、重み設定部１３は、周辺物体と情報取得部との状況として距離を用いる。ここで、距離とは例えば周辺物体の各点までの距離とする。
【００４８】
情報取得部１１-1は、取得した撮像画を情報処理部１２-1へ出力して、情報取得部１１-2は取得した点群データを情報処理部１２-2へ出力する。
【００４９】
情報処理部１２-1は、ＳｆＭ（Structure from Motion）処理を行い、情報取得部１１-1で取得された時間順である複数の撮像画から検出した特徴点毎の点群データを生成してキャリブレーション処理部１５へ出力する。また、情報処理部１２-1は、特徴点毎の距離を重み設定部１３へ出力する。
【００５０】
情報処理部１２-2は、情報取得部１１-1で取得された周辺物体の各位置までの距離の測定結果についてレジストレーション処理を行い、周辺物体の位置毎の点群データを特徴点毎の点群データとして生成してキャリブレーション処理部１５へ出力する。
【００５１】
重み設定部１３は、重み設定処理部１３３を有している。重み設定処理部１３３は、情報処理部１２-1から取得した特徴点毎の距離に応じて重みの設定を行う。ここで、距離が長くなると測距精度が低下するおそれがあることから、重み設定処理部１３３は、距離が長くなるに伴い重みを小さくする。図８は、距離と重みの関係を例示しており、重み設定処理部１３３は、取得した距離Ｌdistに応じて重みＷdistを設定して、キャリブレーション処理部１５へ出力する。
【００５２】
パラメータ記憶部１４は、例えば情報取得部１１-1，１１-2間の外部パラメータが記憶されており、記憶されている外部パラメータは、パラメータ更新部１６によって更新可能とされている。
【００５３】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2から供給された所定期間の点群データのレジストレーションを行い、レジストレーション後の点群データと重み設定部１３で設定された重みとパラメータ記憶部１４に記憶されている外部パラメータを用いて、第１の実施の形態と同様に、所定期間のコストの累積値が最小となる新たな外部パラメータを算出する。
【００５４】
ここで、情報処理部１２-1から供給された点群データのレジストレーション後のデータを点群データＣａ(i,t)、情報処理部１２-2から供給された点群データのレジストレーション後のデータを点群データＬ(i,t)とする。なお、「ｔ」は時間インデックスであり、「ｉ」は特徴点インデックスである。また、外部パラメータを並進パラメータＴと回転パラメータＲとする。
【００５５】
キャリブレーション処理部１５は、重み設定部１３で設定された特徴点インデックスｉの特徴点についての重みＷdist(i)を用いて、式（２）に基づきコストＥを算出する。さらに、キャリブレーション処理部１５は、算出したコストＥが最小となる並進パラメータＴと回転パラメータＲを算出する。キャリブレーション処理部１５は、コストＥが最小となる並進パラメータＴと回転パラメータＲをパラメータ更新部１６へ出力する。
【００５６】
【数２】
2019155719.tif 000004
【００５７】
パラメータ更新部１６は、キャリブレーション処理部１５から供給された並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４の外部パラメータを第１の実施の形態と同様に所定のタイミングで更新する。
【００５８】
図９は、第２の実施の形態の動作を例示したフローチャートである。なお、ステップＳＴ１乃至ステップＳＴ１２の処理は、第１の実施の形態と同様である。
【００５９】
ステップＳＴ１でキャリブレーション装置は画像取得処理を行いステップＳＴ２に進む。ステップＳＴ２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ３に進む。ステップＳＴ３でキャリブレーション装置はマッチング処理を行いステップＳＴ４に進む。ステップＳＴ４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ５に進む。ステップＳＴ５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【００６０】
ステップＳＴ１１でキャリブレーション処理は測距情報取得処理を行いステップＳＴ１２に進む。ステップＳＴ１２でキャリブレーション装置はレジストレーション処理を行う。情報処理部１２-2は、ステップＳＴ１１で得られた時間毎の点群データから対応する点の点群データを検出してステップＳＴ４１に進む。
【００６１】
ステップＳＴ３３でキャリブレーション装置は重み設定処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ５で算出した距離に応じて重みを設定してステップＳＴ４１に進む。
【００６２】
ステップＳＴ４１でキャリブレーション装置はパラメータ算出処理を行う。キャリブレーション装置のキャリブレーション処理部１５は、ステップＳＴ１乃至ＳＴ５の処理で得られた点群データとステップＳＴ１１乃至ＳＴ１２の処理で得られた点群データとの対応関係を判別して、上述の式（２）に示すように、対応する点群データとステップＳＴ３３で設定された重みを用いてコストの算出を行う。また、キャリブレーション処理部１５は、所定期間におけるコストの累積値が最小となる並進パラメータＴと回転パラメータＲを算出してステップＳＴ４２に進む。
【００６３】
ステップＳＴ４２でキャリブレーション装置はパラメータ更新処理を行う。キャリブレーション装置のパラメータ更新部１６は、ステップＳＴ４１で算出した並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータを更新する。
【００６４】
このような第２の実施の形態によれば、距離が離れている特徴点のコストは重みが小さくされる。図１０は第２の実施の形態の動作例を示す図である。特徴点インデックスｉ＝ａ，ｂ，ｃ，ｄで示される特徴点について距離が「ａ＜ｂ＜ｃ＜ｄ」である場合、特徴点インデックスｉ＝ａに対する重みＷdist(i=a)は、他の特徴点インデックスよりも大きい値とされる。また、特徴点インデックスｉ＝ｂに対する重みＷdist(i=b)は、特徴点インデックスｉ＝ａに対する重みＷdist(i=a)よりも小さく、特徴点インデックスｉ＝ｄに対する重みＷdist(i=d)より大きい値とされる。特徴点インデックスｉ＝ｃに対する重みＷdist(i=c)は、他の特徴点インデックスよりも小さい値とされる。さらに、特徴点インデックスｉ＝ｄに対する重みＷdist(i=d)は、特徴点インデックスｉ＝bに対する重みＷdist(i=b)よりも小さく、特徴点インデックスｉ＝ｃに対する重みＷdist(i=c)より大きい値とされる。
【００６５】
このように、第２の実施の形態では距離が長くなるに伴い重みが小さくされる。したがって、測距精度の低下の影響が少なくなり、距離に応じた重みを用いることなくキャリブレーションを行った場合に比べて、精度よく安定してキャリブレーションを行うことができるようになる。
【００６６】
＜４．第３の実施の形態＞
次に第３の実施の形態について説明する。図１１は、第３の実施の形態の構成を例示している。第３の実施の形態では、２つの情報取得部１１-1，１１-2を用いる。情報取得部１１-1は、撮像装置を用いて構成することで撮像画を取得する。情報取得部１１-2は、測距装置例えばＴＯＦ（Time of Flight）カメラやＬＩＤＡＲ（Light Detection and Ranging、Laser Imaging Detection and Ranging）等を用いて構成することで、測距値を示す点群データを取得する。また、重み設定部１３は、周辺物体と情報取得部との状況として特徴点毎の動きベクトルを用いる。
【００６７】
情報取得部１１-1は、取得した撮像画を情報処理部１２-1へ出力して、情報取得部１１-2は取得した点群データを情報処理部１２-2へ出力する。
【００６８】
情報処理部１２-1は、ＳｆＭ（Structure from Motion）処理を行い、情報取得部１１-1で取得された時間順である複数の撮像画から検出した特徴点毎の点群データを生成してキャリブレーション処理部１５へ出力する。また、情報処理部１２-1は、検出した特徴点を重み設定部１３へ出力する。
【００６９】
情報処理部１２-2は、情報取得部１１-1で取得された周辺物体の各位置までの距離の測定結果についてレジストレーション処理を行い、周辺物体の位置毎の点群データを特徴点毎の点群データとして生成してキャリブレーション処理部１５へ出力する。
【００７０】
重み設定部１３は、特徴点保持部１３４と動きベクトル算出部１３５と重み設定処理部１３６を有している。特徴点保持部１３４は、情報処理部１２-1で検出した特徴点を記憶する。また、記憶している特徴点を動きベクトル算出部１３５へ出力する。動きベクトル算出部１３５は、特徴点保持部１３４に記憶されている特徴点と、その後に情報処理部１２-1で検出した特徴点であって、記憶されている特徴点と対応する特徴点の画像上の位置から、特徴点毎に動きベクトルを算出して重み設定処理部１３６へ出力する。重み設定処理部１３６は動きベクトル算出部１３５で算出された動きベクトルに応じて重みの設定を行う。ここで、動きベクトルが大きくなると動きベクトルが小さい場合に比べて測距精度が低下しているおそれがあるため、重み設定処理部１３６は、動きベクトルが大きくなるに伴い重みを小さくする。図１２は、動きベクトルの大きさ（ノルム）と重みの関係を例示しており、重み設定処理部１３６は、動きベクトル算出部１３５で算出された動きベクトルＭＶflowに応じて重みＷflowを設定して、キャリブレーション処理部１５へ出力する。
【００７１】
パラメータ記憶部１４は、例えば情報取得部１１-1，１１-2間の外部パラメータが記憶されており、記憶されている外部パラメータは、パラメータ更新部１６によって更新可能とされている。
【００７２】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2から供給された所定期間の点群データのレジストレーションを行い、レジストレーション後の点群データと重み設定部１３で設定された重みとパラメータ記憶部１４に記憶されている外部パラメータを用いて、コストが最小となる新たな外部パラメータを算出する。
【００７３】
ここで、情報処理部１２-1から供給された点群データのレジストレーション後のデータを点群データＣａ(i,t)、情報処理部１２-2から供給された点群データのレジストレーション後のデータを点群データＬ(i,t)とする。なお、「ｔ」は時間インデックスであり、「ｉ」は特徴点インデックスである。また、外部パラメータを並進パラメータＴと回転パラメータＲとする。
【００７４】
キャリブレーション処理部１５は、重み設定部１３で設定された特徴点インデックスｉの特徴点についての重みＷflow(i)を用いて、式（３）に基づきコストＥを算出する。さらに、キャリブレーション処理部１５は、算出したコストＥが最小となる並進パラメータＴと回転パラメータＲを算出する。キャリブレーション処理部１５は、コストＥが最小となる並進パラメータＴと回転パラメータＲをパラメータ更新部１６へ出力する。
【００７５】
【数３】
2019155719.tif 000005
【００７６】
パラメータ更新部１６は、キャリブレーション処理部１５から供給された並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４の外部パラメータを所定のタイミングで更新する。
【００７７】
図１３は、第３の実施の形態の動作を例示したフローチャートである。なお、ステップＳＴ１乃至ステップＳＴ１２の処理は、第１の実施の形態と同様である。
【００７８】
ステップＳＴ１でキャリブレーション装置は画像取得処理を行いステップＳＴ２に進む。ステップＳＴ２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ３に進む。ステップＳＴ３でキャリブレーション装置はマッチング処理を行いステップＳＴ４に進む。ステップＳＴ４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ５に進む。ステップＳＴ５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【００７９】
ステップＳＴ１１でキャリブレーション処理は測距情報取得処理を行いステップＳＴ１２に進む。ステップＳＴ１２でキャリブレーション装置はレジストレーション処理を行う。情報処理部１２-2は、ステップＳＴ１１で得られた時間毎の点群データから対応する点の点群データを検出してステップＳＴ４１に進む。
【００８０】
ステップＳＴ３４でキャリブレーション装置は動きベクトル算出処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ２で検出されて特徴点保持部１３４に記憶された特徴点と、その後の撮像画から検出された対応する特徴点に基づき動きベクトルを動きベクトル算出部１３５で算出してステップＳＴ３５に進む。
【００８１】
ステップＳＴ３５でキャリブレーション装置は重み設定処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ３４で検出した動きベクトルに応じて重みを重み設定処理部１３６で設定してステップＳＴ４１に進む。
【００８２】
ステップＳＴ４１でキャリブレーション装置はパラメータ算出処理を行う。キャリブレーション装置のキャリブレーション処理部１５は、ステップＳＴ１乃至ＳＴ５の処理で得られた点群データとステップＳＴ１１乃至ＳＴ１２の処理で得られた点群データとの対応関係を判別して、上述の式（３）に示すように、対応する点群データとステップＳＴ３５で設定された重みを用いてコストの算出を行う。また、キャリブレーション処理部１５は、所定期間におけるコストの累積値が最小となる並進パラメータＴと回転パラメータＲを算出してステップＳＴ４２に進む。
【００８３】
ステップＳＴ４２でキャリブレーション装置はパラメータ更新処理を行う。キャリブレーション装置のパラメータ更新部１６は、ステップＳＴ４１で算出した並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータを更新する。
【００８４】
このような第３の実施の形態によれば、動きベクトルが大きい特徴点は重みが小さくされるので、動きによる影響が少なくなり、動きベクトルに応じた重みを用いることなくキャリブレーションを行った場合に比べて、精度よく安定してキャリブレーションを行うことができるようになる。
【００８５】
＜５．第４の実施の形態＞
次に第４の実施の形態について説明する。上述の第１の実施の形態では撮像装置と測距装置を用いて、速度に応じた重みを用いてキャリブレーションを行っているが、第４の実施の形態では複数の撮像装置を用いて、速度に応じた重みを用いてキャリブレーションを行う。
【００８６】
図１４は、第４の実施の形態の構成を例示しており、第４の実施の形態では、２つの情報取得部１１-1，１１-2aを用いる。情報取得部１１-1，１１-2aは、撮像装置を用いて構成することで撮像画を取得する。重み設定部１３は、第１の実施の形態と同様に、移動速度に応じて重みを設定する。
【００８７】
情報取得部１１-1は、取得した撮像画を情報処理部１２-1へ出力して、情報取得部１１-2aは取得した撮像画を情報処理部１２-2aへ出力する。
【００８８】
情報処理部１２-1，１２-2aは、ＳｆＭ（Structure from Motion）処理を行い、時間順である複数の撮像画から撮像画毎に特徴点を検出して、検出した特徴点から時間方向に対応する特徴点を特徴点毎に示す点群データを生成してキャリブレーション処理部１５へ出力する。
【００８９】
重み設定部１３は、移動速度取得部１３１と重み設定処理部１３２を有している。移動速度取得部１３１は、移動体の移動速度を検出可能なセンサ等を用いて構成されている。例えば移動体が車両である場合、移動速度取得部１３１は車速検出センサを用いて構成されており、検出した移動速度を示す速度情報を重み設定処理部１３２へ出力する。
【００９０】
重み設定処理部１３２は、移動速度取得部１３１で取得された移動速度に応じて重みの設定を行う。ここで、移動速度が速くなると、情報取得部１１-1と情報取得部１１-2aが非同期で撮像画を取得する場合、周辺物体の位置は撮像画間の差が大きくなる場合がある。そこで、重み設定処理部１３２は、移動速度が速くなるに伴い重みを小さくする。重み設定処理部１３２は、第１の実施の形態と同様に、例えば図３に示す速度と重みの関係に基づき、取得した移動速度Ｖspに応じて重みＷspを設定して、キャリブレーション処理部１５へ出力する。
【００９１】
パラメータ記憶部１４は、情報取得部１１-1，１１-2a間の外部パラメータが記憶されており、記憶されている外部パラメータは、パラメータ更新部１６によって更新可能とされている。
【００９２】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2aから供給された所定期間の点群データのレジストレーションを行い、レジストレーション後の点群データと重み設定部１３で設定された重みとパラメータ記憶部１４に記憶されている外部パラメータを用いて、コストが最小となる新たな外部パラメータを算出する。
【００９３】
ここで、情報処理部１２-1から供給された点群データのレジストレーション後のデータを点群データＣａ(i,t)、情報処理部１２-2aから供給された点群データのレジストレーション後のデータを点群データＬ(i,t)とする。なお、「ｔ」は時間インデックスであり、「ｉ」は特徴点インデックスである。また、外部パラメータを並進パラメータＴと回転パラメータＲとする。
【００９４】
キャリブレーション処理部１５は、重み設定部１３で設定された時間インデックス毎の重みＷsp(t)を用いて、式（４）に基づきコストＥを算出する。さらに、キャリブレーション処理部１５は、算出したコストＥが最小でない場合は、コストＥが最小となる並進パラメータＴと回転パラメータＲを新たに算出する。キャリブレーション処理部１５は、コストＥが最小となる並進パラメータＴと回転パラメータＲをパラメータ更新部１６へ出力する。
【００９５】
【数４】
2019155719.tif 000006
【００９６】
パラメータ更新部１６は、キャリブレーション処理部１５から供給された並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４の外部パラメータを所定のタイミングで更新する。
【００９７】
図１５は、第４の実施の形態の動作を例示したフローチャートである。ステップＳＴ１でキャリブレーション装置は画像取得処理を行い、情報取得部１１-1から撮像画を取得してステップＳＴ２に進む。ステップＳＴ２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ３に進む。ステップＳＴ３でキャリブレーション装置はマッチング処理を行いステップＳＴ４に進む。ステップＳＴ４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ５に進む。ステップＳＴ５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【００９８】
ステップＳＴ２１でキャリブレーション装置は画像取得処理を行い、情報取得部１１-2aから撮像画を取得してステップＳＴ２２に進む。ステップＳＴ２２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ２３に進む。ステップＳＴ２３でキャリブレーション装置はマッチング処理を行いステップＳＴ２４に進む。ステップＳＴ２４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ２５に進む。ステップＳＴ２５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【００９９】
ステップＳＴ３１でキャリブレーション装置は移動速度取得処理を行う。キャリブレーション装置の重み設定部１３は、移動速度取得部１３１と重み設定処理部１３２を有している。移動速度取得部１３１は、例えば車速検出センサから、情報取得部１１-1，１１-2aが設けられている移動体の移動速度を示す速度情報を取得してステップＳＴ３２に進む。
【０１００】
ステップＳＴ３２でキャリブレーション装置は重み設定処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ３１で取得した速度情報に基づき重みを設定してステップＳＴ４１に進む。
【０１０１】
ステップＳＴ４１でキャリブレーション装置はパラメータ算出処理を行う。キャリブレーション装置のキャリブレーション処理部１５は、ステップＳＴ１乃至ＳＴ４の処理で得られた点群データとステップＳＴ２１乃至ＳＴ２５の処理で得られた点群データとの対応関係を判別して、上述の式（４）に示すように、対応する点群データとステップＳＴ３２で設定された重みを用いてコストの算出を行う。また、キャリブレーション処理部１５は、所定期間におけるコストの累積値が最小となる並進パラメータＴと回転パラメータＲを算出してステップＳＴ４２に進む。
【０１０２】
ステップＳＴ４２でキャリブレーション装置はパラメータ更新処理を行う。キャリブレーション装置のパラメータ更新部１６は、ステップＳＴ４１で算出した並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータを更新する。
【０１０３】
このような第４の実施の形態によれば、複数の撮像装置を用いた場合にも、移動速度が速い区間のコストは重みが小さくされる。したがって、第１の実施の形態と同様に、速度に応じた重みを用いることなくキャリブレーションを行った場合に比べて、精度よく安定してキャリブレーションを行うことができるようになる。
【０１０４】
＜６．第５の実施の形態＞
次に第５の実施の形態について説明する。上述の第２の実施の形態では撮像装置と測距装置を用いて、周辺物体までの距離に応じた重みを用いてキャリブレーションを行っているが、第５の実施の形態では複数の撮像装置を用いて、周辺物体までの距離に応じた重みを用いてキャリブレーションを行う。
【０１０５】
図１６は、第５の実施の形態の構成を例示しており、第５の実施の形態では、２つの情報取得部１１-1，１１-2aを用いる。情報取得部１１-1，１１-2aは、撮像装置を用いて構成することで撮像画を取得する。重み設定部１３は、第２の実施の形態と同様に、距離に応じて重みを設定する。
【０１０６】
情報取得部１１-1は、取得した撮像画を情報処理部１２-1へ出力して、情報取得部１１-2aは取得した撮像画を情報処理部１２-2aへ出力する。
【０１０７】
情報処理部１２-1，１２-2aは、ＳｆＭ（Structure from Motion）処理を行い、時間順である複数の撮像画から撮像画毎に特徴点を検出して、検出した特徴点から時間方向に対応する特徴点を特徴点毎に示す点群データを生成してキャリブレーション処理部１５へ出力する。
【０１０８】
重み設定部１３は、重み設定処理部１３３を有している。重み設定処理部１３３は、情報処理部１２-1から取得した特徴点毎の距離に応じて重みの設定を行う。ここで、距離が長くなると測距精度が低下するおそれがあることから、重み設定処理部１３３は、距離が長くなるに伴い重みを小さくする。重み設定処理部１３３は、第２の実施の形態と同様に、例えば図８に示す距離と重みの関係に基づき、取得した距離Ｌdistに応じて重みＷdistを設定して、キャリブレーション処理部１５へ出力する。
【０１０９】
パラメータ記憶部１４は、情報取得部１１-1，１１-2a間の外部パラメータが記憶されており、記憶されている外部パラメータは、パラメータ更新部１６によって更新可能とされている。
【０１１０】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2aから供給された所定期間の点群データのレジストレーションを行い、レジストレーション後の点群データと重み設定部１３で設定された重みとパラメータ記憶部１４に記憶されている外部パラメータを用いて、所定期間のコストが最小となる新たな外部パラメータを算出する。
【０１１１】
ここで、情報処理部１２-1から供給された点群データのレジストレーション後のデータを点群データＣａ(i,t)、情報処理部１２-2aから供給された点群データのレジストレーション後のデータを点群データＬ(i,t)とする。なお、「ｔ」は時間インデックスであり、「ｉ」は特徴点インデックスである。また、外部パラメータを並進パラメータＴと回転パラメータＲとする。
【０１１２】
キャリブレーション処理部１５は、重み設定部１３で設定された特徴点インデックスｉの特徴点についての重みＷdist(i)を用いて、式（５）に基づきコストＥを算出する。さらに、キャリブレーション処理部１５は、算出したコストＥが最小となる並進パラメータＴと回転パラメータＲを算出する。キャリブレーション処理部１５は、コストＥが最小となる並進パラメータＴと回転パラメータＲをパラメータ更新部１６へ出力する。
【０１１３】
【数５】
2019155719.tif 000007
【０１１４】
パラメータ更新部１６は、キャリブレーション処理部１５から供給された並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４の外部パラメータを所定のタイミングで更新する。
【０１１５】
図１７は、第５の実施の形態の動作を例示したフローチャートである。ステップＳＴ１でキャリブレーション装置は画像取得処理を行い、情報取得部１１-1から撮像画を取得してステップＳＴ２に進む。ステップＳＴ２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ３に進む。ステップＳＴ３でキャリブレーション装置はマッチング処理を行いステップＳＴ４に進む。ステップＳＴ４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ５に進む。ステップＳＴ５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【０１１６】
ステップＳＴ２１でキャリブレーション装置は画像取得処理を行い、情報取得部１１-2aから撮像画を取得してステップＳＴ２２に進む。ステップＳＴ２２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ２３に進む。ステップＳＴ２３でキャリブレーション装置はマッチング処理を行いステップＳＴ２４に進む。ステップＳＴ２４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ２５に進む。ステップＳＴ２５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【０１１７】
ステップＳＴ３３でキャリブレーション装置は重み設定処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ５で算出した距離に応じて重みを設定してステップＳＴ４１に進む。
【０１１８】
ステップＳＴ４１でキャリブレーション装置はパラメータ算出処理を行う。キャリブレーション装置のキャリブレーション処理部１５は、ステップＳＴ１乃至ＳＴ５の処理で得られた点群データとステップＳＴ２１乃至ＳＴ２５の処理で得られた点群データとの対応関係を判別して、上述の式（５）に示すように、対応する点群データとステップＳＴ３３で設定された重みを用いてコストの算出を行う。また、キャリブレーション処理部１５は、所定期間におけるコストの累積値が最小となる外部パラメータすなわち並進パラメータＴと回転パラメータＲを算出してステップＳＴ４２に進む。
【０１１９】
ステップＳＴ４２でキャリブレーション装置はパラメータ更新処理を行う。キャリブレーション装置のパラメータ更新部１６は、ステップＳＴ４１で算出した並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータを更新する。
【０１２０】
このような第５の実施の形態によれば、複数の撮像装置を用いた場合にも、距離が離れている特徴点のコストは重みが小さくされる。したがって、第２の実施の形態と同様に、距離に応じた重みを用いることなくキャリブレーションを行った場合に比べて、精度よく安定してキャリブレーションを行うことができるようになる。
【０１２１】
＜７．第６の実施の形態＞
次に第６の実施の形態について説明する。上述の第３の実施の形態では撮像装置と測距装置を用いて、動きベクトルに応じた重みを用いてキャリブレーションを行っているが、第６の実施の形態では複数の撮像装置を用いて、動きベクトルに応じた重みを用いてキャリブレーションを行う。
【０１２２】
図１８は、第６の実施の形態の構成を例示しており、第６の実施の形態では、２つの情報取得部１１-1，１１-2aを用いる。情報取得部１１-1，１１-2aは、撮像装置を用いて構成することで撮像画を取得する。重み設定部１３は、第３の実施の形態と同様に、動きベクトルに応じて重みを設定する。
【０１２３】
情報取得部１１-1は、取得した撮像画を情報処理部１２-1へ出力して、情報取得部１１-2aは取得した撮像画を情報処理部１２-2aへ出力する。
【０１２４】
情報処理部１２-1，１２-2aは、ＳｆＭ（Structure from Motion）処理を行い、時間順である複数の撮像画から撮像画毎に特徴点を検出して、検出した特徴点から時間方向に対応する特徴点を特徴点毎に示す点群データを生成してキャリブレーション処理部１５へ出力する。
【０１２５】
重み設定部１３は、特徴点保持部１３４と動きベクトル算出部１３５と重み設定処理部１３６を有している。特徴点保持部１３４は、情報処理部１２-1で検出した特徴点を記憶する。また、記憶した特徴点を動きベクトル算出部１３５へ出力する。動きベクトル算出部１３５は、特徴点保持部１３４に記憶されている特徴点と、その後に情報処理部１２-1で検出した特徴点であって、記憶されている特徴点と対応する特徴点の画像上の位置から、特徴点毎に動きベクトルを算出して重み設定処理部１３６へ出力する。重み設定処理部１３６は動きベクトル算出部１３５で算出された動きベクトルに応じて重みの設定を行う。ここで、動きベクトルが大きくなると動きベクトルが小さい場合に比べて測距精度が低下するおそれがあることから、重み設定処理部１３６は、動きベクトルが大きくなるに伴い重みを小さくする。重み設定処理部１３６は、第３の実施の形態と同様に、図１２に示す動きベクトルの大きさと重みの関係に基づき、動きベクトル算出部１３５で算出された動きベクトルＭＶflowに応じて重みＷflowを設定して、キャリブレーション処理部１５へ出力する。
【０１２６】
パラメータ記憶部１４は、情報取得部１１-1，１１-2a間の外部パラメータが記憶されており、記憶されている外部パラメータは、パラメータ更新部１６によって更新可能とされている。
【０１２７】
キャリブレーション処理部１５は、情報処理部１２-1，１２-2aから供給された所定期間の点群データのレジストレーションを行い、レジストレーション後の点群データと重み設定部１３で設定された重みとパラメータ記憶部１４に記憶されている外部パラメータを用いて、コストが最小となる新たな外部パラメータを算出する。
【０１２８】
ここで、情報処理部１２-1から供給された点群データのレジストレーション後のデータを点群データＣａ(i,t)、情報処理部１２-2aから供給された点群データのレジストレーション後のデータを点群データＬ(i,t)とする。なお、「ｔ」は時間インデックスであり、「ｉ」は特徴点インデックスである。また、外部パラメータを並進パラメータＴと回転パラメータＲとする。
【０１２９】
キャリブレーション処理部１５は、重み設定部１３で設定された特徴点インデックスｉの特徴点についての重みＷflow(i)を用いて、式（６）に基づきコストＥを算出する。さらに、キャリブレーション処理部１５は、算出したコストＥが最小となる並進パラメータＴと回転パラメータＲを算出する。キャリブレーション処理部１５は、コストＥが最小となる並進パラメータＴと回転パラメータＲをパラメータ更新部１６へ出力する。
【０１３０】
【数６】
2019155719.tif 000008
【０１３１】
パラメータ更新部１６は、キャリブレーション処理部１５から供給された並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４の外部パラメータを所定のタイミングで更新する。
【０１３２】
図１９は、第６の実施の形態の動作を例示したフローチャートである。ステップＳＴ１でキャリブレーション装置は画像取得処理を行いステップＳＴ２に進む。ステップＳＴ２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ３に進む。ステップＳＴ３でキャリブレーション装置はマッチング処理を行いステップＳＴ４に進む。ステップＳＴ４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ５に進む。ステップＳＴ５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【０１３３】
ステップＳＴ２１でキャリブレーション装置は画像取得処理を行い、情報取得部１１-2aから撮像画を取得してステップＳＴ２２に進む。ステップＳＴ２２でキャリブレーション装置はＳｆＭ処理における特徴点検出処理を行いステップＳＴ２３に進む。ステップＳＴ２３でキャリブレーション装置はマッチング処理を行いステップＳＴ２４に進む。ステップＳＴ２４でキャリブレーション装置はレジストレーション処理を行いステップＳＴ２５に進む。ステップＳＴ２５でキャリブレーション装置は三角測量処理を行い特徴点毎の距離を算出して、算出した距離を点群データとしてステップＳＴ４１に進む。
【０１３４】
ステップＳＴ３４でキャリブレーション装置は動き検出処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ２で検出されて特徴点保持部１３４に記憶された特徴点と、その後の撮像画から検出された対応する特徴点に基づき動きベクトルを動きベクトル算出部１３５で算出してステップＳＴ３５に進む。
【０１３５】
ステップＳＴ３５でキャリブレーション装置は重み設定処理を行う。キャリブレーション装置の重み設定部１３は、ステップＳＴ３４で検出した動きベクトルに応じて重みを重み設定処理部１３６で設定してステップＳＴ４１に進む。
【０１３６】
ステップＳＴ４１でキャリブレーション装置はパラメータ算出処理を行う。キャリブレーション装置のキャリブレーション処理部１５は、ステップＳＴ１乃至ＳＴ５の処理で得られた点群データとステップＳＴ２１乃至ＳＴ２５の処理で得られた点群データとの対応関係を判別して、上述の式（６）に示すように、対応する点群データとステップＳＴ３５で設定された重みを用いてコストの算出を行う。また、キャリブレーション処理部１５は、所定期間におけるコストの累積値が最小となる並進パラメータＴと回転パラメータＲを算出してステップＳＴ４２に進む。
【０１３７】
ステップＳＴ４２でキャリブレーション装置はパラメータ更新処理を行う。キャリブレーション装置のパラメータ更新部１６は、ステップＳＴ４１で算出した並進パラメータＴと回転パラメータＲを用いて、パラメータ記憶部１４に記憶されている外部パラメータを更新する。
【０１３８】
このような第６の実施の形態によれば、複数の撮像装置を用いた場合にも、動きベクトルが大きい特徴点のコストは重みが小さくされる。したがって、第３の実施の形態と同様に、動きベクトルに応じた重みを用いることなくキャリブレーションを行った場合に比べて、精度よく安定してキャリブレーションを行うことができるようになる。
【０１３９】
＜８．他の実施の形態＞
ところで、上述の実施の形態では、速度に応じた重みと距離に応じた重みおよび移動ベクトルに応じた重みを個々に用いてコストの算出を行う場合を例示している。しかし、重みは個々に用いる場合に限らず複数の重みを組み合わせて用いてもよい。速度に応じた重みと距離に応じた重みを用いてコストの算出を行い、コストが最小となる外部パラメータを算出してもよい。
【０１４０】
＜９．応用例＞
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、自動車、電気自動車、ハイブリッド電気自動車、自動二輪車、自転車、パーソナルモビリティ、飛行機、ドローン、船舶、ロボット、建設機械、農業機械（トラクター）などのいずれかの種類の移動体に搭載される装置として実現されてもよい。
【０１４１】
図２０は、本開示に係る技術が適用され得る移動体制御システムの一例である車両制御システム７０００の概略的な構成例を示すブロック図である。車両制御システム７０００は、通信ネットワーク７０１０を介して接続された複数の電子制御ユニットを備える。図２０に示した例では、車両制御システム７０００は、駆動系制御ユニット７１００、ボディ系制御ユニット７２００、バッテリ制御ユニット７３００、車外情報検出ユニット７４００、車内情報検出ユニット７５００、及び統合制御ユニット７６００を備える。これらの複数の制御ユニットを接続する通信ネットワーク７０１０は、例えば、ＣＡＮ（Controller  Area  Network）、ＬＩＮ（Local  Interconnect  Network）、ＬＡＮ（Local  Area  Network）又はＦｌｅｘＲａｙ（登録商標）等の任意の規格に準拠した車載通信ネットワークであってよい。
【０１４２】
各制御ユニットは、各種プログラムにしたがって演算処理を行うマイクロコンピュータと、マイクロコンピュータにより実行されるプログラム又は各種演算に用いられるパラメータ等を記憶する記憶部と、各種制御対象の装置を駆動する駆動回路とを備える。各制御ユニットは、通信ネットワーク７０１０を介して他の制御ユニットとの間で通信を行うためのネットワークＩ／Ｆを備えるとともに、車内外の装置又はセンサ等との間で、有線通信又は無線通信により通信を行うための通信Ｉ／Ｆを備える。図２０では、統合制御ユニット７６００の機能構成として、マイクロコンピュータ７６１０、汎用通信Ｉ／Ｆ７６２０、専用通信Ｉ／Ｆ７６３０、測位部７６４０、ビーコン受信部７６５０、車内機器Ｉ／Ｆ７６６０、音声画像出力部７６７０、車載ネットワークＩ／Ｆ７６８０及び記憶部７６９０が図示されている。他の制御ユニットも同様に、マイクロコンピュータ、通信Ｉ／Ｆ及び記憶部等を備える。
【０１４３】
駆動系制御ユニット７１００は、各種プログラムにしたがって車両の駆動系に関連する装置の動作を制御する。例えば、駆動系制御ユニット７１００は、内燃機関又は駆動用モータ等の車両の駆動力を発生させるための駆動力発生装置、駆動力を車輪に伝達するための駆動力伝達機構、車両の舵角を調節するステアリング機構、及び、車両の制動力を発生させる制動装置等の制御装置として機能する。駆動系制御ユニット７１００は、ＡＢＳ（Antilock  Brake  System）又はＥＳＣ（Electronic  Stability  Control）等の制御装置としての機能を有してもよい。
【０１４４】
駆動系制御ユニット７１００には、車両状態検出部７１１０が接続される。車両状態検出部７１１０には、例えば、車体の軸回転運動の角速度を検出するジャイロセンサ、車両の加速度を検出する加速度センサ、あるいは、アクセルペダルの操作量、ブレーキペダルの操作量、ステアリングホイールの操舵角、エンジン回転数又は車輪の回転速度等を検出するためのセンサのうちの少なくとも一つが含まれる。駆動系制御ユニット７１００は、車両状態検出部７１１０から入力される信号を用いて演算処理を行い、内燃機関、駆動用モータ、電動パワーステアリング装置又はブレーキ装置等を制御する。
【０１４５】
ボディ系制御ユニット７２００は、各種プログラムにしたがって車体に装備された各種装置の動作を制御する。例えば、ボディ系制御ユニット７２００は、キーレスエントリシステム、スマートキーシステム、パワーウィンドウ装置、あるいは、ヘッドランプ、バックランプ、ブレーキランプ、ウィンカー又はフォグランプ等の各種ランプの制御装置として機能する。この場合、ボディ系制御ユニット７２００には、鍵を代替する携帯機から発信される電波又は各種スイッチの信号が入力され得る。ボディ系制御ユニット７２００は、これらの電波又は信号の入力を受け付け、車両のドアロック装置、パワーウィンドウ装置、ランプ等を制御する。
【０１４６】
バッテリ制御ユニット７３００は、各種プログラムにしたがって駆動用モータの電力供給源である二次電池７３１０を制御する。例えば、バッテリ制御ユニット７３００には、二次電池７３１０を備えたバッテリ装置から、バッテリ温度、バッテリ出力電圧又はバッテリの残存容量等の情報が入力される。バッテリ制御ユニット７３００は、これらの信号を用いて演算処理を行い、二次電池７３１０の温度調節制御又はバッテリ装置に備えられた冷却装置等の制御を行う。
【０１４７】
車外情報検出ユニット７４００は、車両制御システム７０００を搭載した車両の外部の情報を検出する。例えば、車外情報検出ユニット７４００には、撮像部７４１０及び車外情報検出部７４２０のうちの少なくとも一方が接続される。撮像部７４１０には、ＴｏＦ（Time  Of  Flight）カメラ、ステレオカメラ、単眼カメラ、赤外線カメラ及びその他のカメラのうちの少なくとも一つが含まれる。車外情報検出部７４２０には、例えば、現在の天候又は気象を検出するための環境センサ、あるいは、車両制御システム７０００を搭載した車両の周囲の他の車両、障害物又は歩行者等を検出するための周囲情報検出センサのうちの少なくとも一つが含まれる。
【０１４８】
環境センサは、例えば、雨天を検出する雨滴センサ、霧を検出する霧センサ、日照度合いを検出する日照センサ、及び降雪を検出する雪センサのうちの少なくとも一つであってよい。周囲情報検出センサは、超音波センサ、レーダ装置及びＬＩＤＡＲ（Light  Detection  and  Ranging、Laser  Imaging  Detection  and  Ranging）装置のうちの少なくとも一つであってよい。これらの撮像部７４１０及び車外情報検出部７４２０は、それぞれ独立したセンサないし装置として備えられてもよいし、複数のセンサないし装置が統合された装置として備えられてもよい。
【０１４９】
ここで、図２１は、撮像部７４１０及び車外情報検出部７４２０の設置位置の例を示す。撮像部７９１０，７９１２，７９１４，７９１６，７９１８は、例えば、車両７９００のフロントノーズ、サイドミラー、リアバンパ、バックドア及び車室内のフロントガラスの上部のうちの少なくとも一つの位置に設けられる。フロントノーズに備えられる撮像部７９１０及び車室内のフロントガラスの上部に備えられる撮像部７９１８は、主として車両７９００の前方の画像を取得する。サイドミラーに備えられる撮像部７９１２，７９１４は、主として車両７９００の側方の画像を取得する。リアバンパ又はバックドアに備えられる撮像部７９１６は、主として車両７９００の後方の画像を取得する。車室内のフロントガラスの上部に備えられる撮像部７９１８は、主として先行車両又は、歩行者、障害物、信号機、交通標識又は車線等の検出に用いられる。
【０１５０】
なお、図２１には、それぞれの撮像部７９１０，７９１２，７９１４，７９１６の撮影範囲の一例が示されている。撮像範囲ａは、フロントノーズに設けられた撮像部７９１０の撮像範囲を示し、撮像範囲ｂ，ｃは、それぞれサイドミラーに設けられた撮像部７９１２，７９１４の撮像範囲を示し、撮像範囲ｄは、リアバンパ又はバックドアに設けられた撮像部７９１６の撮像範囲を示す。例えば、撮像部７９１０，７９１２，７９１４，７９１６で撮像された画像データが重ね合わせられることにより、車両７９００を上方から見た俯瞰画像が得られる。
【０１５１】
車両７９００のフロント、リア、サイド、コーナ及び車室内のフロントガラスの上部に設けられる車外情報検出部７９２０，７９２２，７９２４，７９２６，７９２８，７９３０は、例えば超音波センサ又はレーダ装置であってよい。車両７９００のフロントノーズ、リアバンパ、バックドア及び車室内のフロントガラスの上部に設けられる車外情報検出部７９２０，７９２６，７９３０は、例えばＬＩＤＡＲ装置であってよい。これらの車外情報検出部７９２０〜７９３０は、主として先行車両、歩行者又は障害物等の検出に用いられる。
【０１５２】
図２０に戻って説明を続ける。車外情報検出ユニット７４００は、撮像部７４１０に車外の画像を撮像させるとともに、撮像された画像データを受信する。また、車外情報検出ユニット７４００は、接続されている車外情報検出部７４２０から検出情報を受信する。車外情報検出部７４２０が超音波センサ、レーダ装置又はＬＩＤＡＲ装置である場合には、車外情報検出ユニット７４００は、超音波又は電磁波等を発信させるとともに、受信された反射波の情報を受信する。車外情報検出ユニット７４００は、受信した情報に基づいて、人、車、障害物、標識又は路面上の文字等の物体検出処理又は距離検出処理を行ってもよい。車外情報検出ユニット７４００は、受信した情報に基づいて、降雨、霧又は路面状況等を認識する環境認識処理を行ってもよい。車外情報検出ユニット７４００は、受信した情報に基づいて、車外の物体までの距離を算出してもよい。
【０１５３】
また、車外情報検出ユニット７４００は、受信した画像データに基づいて、人、車、障害物、標識又は路面上の文字等を認識する画像認識処理又は距離検出処理を行ってもよい。車外情報検出ユニット７４００は、受信した画像データに対して歪補正又は位置合わせ等の処理を行うとともに、異なる撮像部７４１０により撮像された画像データを合成して、俯瞰画像又はパノラマ画像を生成してもよい。車外情報検出ユニット７４００は、異なる撮像部７４１０により撮像された画像データを用いて、視点変換処理を行ってもよい。
【０１５４】
車内情報検出ユニット７５００は、車内の情報を検出する。車内情報検出ユニット７５００には、例えば、運転者の状態を検出する運転者状態検出部７５１０が接続される。運転者状態検出部７５１０は、運転者を撮像するカメラ、運転者の生体情報を検出する生体センサ又は車室内の音声を集音するマイク等を含んでもよい。生体センサは、例えば、座面又はステアリングホイール等に設けられ、座席に座った搭乗者又はステアリングホイールを握る運転者の生体情報を検出する。車内情報検出ユニット７５００は、運転者状態検出部７５１０から入力される検出情報に基づいて、運転者の疲労度合い又は集中度合いを算出してもよいし、運転者が居眠りをしていないかを判別してもよい。車内情報検出ユニット７５００は、集音された音声信号に対してノイズキャンセリング処理等の処理を行ってもよい。
【０１５５】
統合制御ユニット７６００は、各種プログラムにしたがって車両制御システム７０００内の動作全般を制御する。統合制御ユニット７６００には、入力部７８００が接続されている。入力部７８００は、例えば、タッチパネル、ボタン、マイクロフォン、スイッチ又はレバー等、搭乗者によって入力操作され得る装置によって実現される。統合制御ユニット７６００には、マイクロフォンにより入力される音声を音声認識することにより得たデータが入力されてもよい。入力部７８００は、例えば、赤外線又はその他の電波を利用したリモートコントロール装置であってもよいし、車両制御システム７０００の操作に対応した携帯電話又はＰＤＡ（Personal  Digital  Assistant）等の外部接続機器であってもよい。入力部７８００は、例えばカメラであってもよく、その場合搭乗者はジェスチャにより情報を入力することができる。あるいは、搭乗者が装着したウェアラブル装置の動きを検出することで得られたデータが入力されてもよい。さらに、入力部７８００は、例えば、上記の入力部７８００を用いて搭乗者等により入力された情報に基づいて入力信号を生成し、統合制御ユニット７６００に出力する入力制御回路などを含んでもよい。搭乗者等は、この入力部７８００を操作することにより、車両制御システム７０００に対して各種のデータを入力したり処理動作を指示したりする。
【０１５６】
記憶部７６９０は、マイクロコンピュータにより実行される各種プログラムを記憶するＲＯＭ（Read  Only  Memory）、及び各種パラメータ、演算結果又はセンサ値等を記憶するＲＡＭ（Random  Access  Memory）を含んでいてもよい。また、記憶部７６９０は、ＨＤＤ（Hard  Disc  Drive）等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等によって実現してもよい。
【０１５７】
汎用通信Ｉ／Ｆ７６２０は、外部環境７７５０に存在する様々な機器との間の通信を仲介する汎用的な通信Ｉ／Ｆである。汎用通信Ｉ／Ｆ７６２０は、ＧＳＭ（登録商標）（Global  System  of  Mobile  communications）、ＷｉＭＡＸ（登録商標）、ＬＴＥ（登録商標）（Long  Term  Evolution）若しくはＬＴＥ−Ａ（LTE−Advanced）などのセルラー通信プロトコル、又は無線ＬＡＮ（Ｗｉ−Ｆｉ（登録商標）ともいう）、Ｂｌｕｅｔｏｏｔｈ（登録商標）などのその他の無線通信プロトコルを実装してよい。汎用通信Ｉ／Ｆ７６２０は、例えば、基地局又はアクセスポイントを介して、外部ネットワーク（例えば、インターネット、クラウドネットワーク又は事業者固有のネットワーク）上に存在する機器（例えば、アプリケーションサーバ又は制御サーバ）へ接続してもよい。また、汎用通信Ｉ／Ｆ７６２０は、例えばＰ２Ｐ（Peer  To  Peer）技術を用いて、車両の近傍に存在する端末（例えば、運転者、歩行者若しくは店舗の端末、又はＭＴＣ（Machine  Type  Communication）端末）と接続してもよい。
【０１５８】
専用通信Ｉ／Ｆ７６３０は、車両における使用を目的として策定された通信プロトコルをサポートする通信Ｉ／Ｆである。専用通信Ｉ／Ｆ７６３０は、例えば、下位レイヤのＩＥＥＥ８０２．１１ｐと上位レイヤのＩＥＥＥ１６０９との組合せであるＷＡＶＥ（Wireless  Access  in  Vehicle  Environment）、ＤＳＲＣ（Dedicated  Short  Range  Communications）、又はセルラー通信プロトコルといった標準プロトコルを実装してよい。専用通信Ｉ／Ｆ７６３０は、典型的には、車車間（Vehicle  to  Vehicle）通信、路車間（Vehicle  to  Infrastructure）通信、車両と家との間（Vehicle  to  Home）の通信及び歩車間（Vehicle  to  Pedestrian）通信のうちの１つ以上を含む概念であるＶ２Ｘ通信を遂行する。
【０１５９】
測位部７６４０は、例えば、ＧＮＳＳ（Global  Navigation  Satellite  System）衛星からのＧＮＳＳ信号（例えば、ＧＰＳ（Global  Positioning  System）衛星からのＧＰＳ信号）を受信して測位を実行し、車両の緯度、経度及び高度を含む位置情報を生成する。なお、測位部７６４０は、無線アクセスポイントとの信号の交換により現在位置を特定してもよく、又は測位機能を有する携帯電話、ＰＨＳ若しくはスマートフォンといった端末から位置情報を取得してもよい。
【０１６０】
ビーコン受信部７６５０は、例えば、道路上に設置された無線局等から発信される電波あるいは電磁波を受信し、現在位置、渋滞、通行止め又は所要時間等の情報を取得する。なお、ビーコン受信部７６５０の機能は、上述した専用通信Ｉ／Ｆ７６３０に含まれてもよい。
【０１６１】
車内機器Ｉ／Ｆ７６６０は、マイクロコンピュータ７６１０と車内に存在する様々な車内機器７７６０との間の接続を仲介する通信インタフェースである。車内機器Ｉ／Ｆ７６６０は、無線ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ（Near  Field  Communication）又はＷＵＳＢ（Wireless  USB）といった無線通信プロトコルを用いて無線接続を確立してもよい。また、車内機器Ｉ／Ｆ７６６０は、図示しない接続端子（及び、必要であればケーブル）を介して、ＵＳＢ（Universal  Serial  Bus）、ＨＤＭＩ（登録商標）（High-Definition  Multimedia  Interface、又はＭＨＬ（Mobile  High-definition  Link）等の有線接続を確立してもよい。車内機器７７６０は、例えば、搭乗者が有するモバイル機器若しくはウェアラブル機器、又は車両に搬入され若しくは取り付けられる情報機器のうちの少なくとも１つを含んでいてもよい。また、車内機器７７６０は、任意の目的地までの経路探索を行うナビゲーション装置を含んでいてもよい。車内機器Ｉ／Ｆ７６６０は、これらの車内機器７７６０との間で、制御信号又はデータ信号を交換する。
【０１６２】
車載ネットワークＩ／Ｆ７６８０は、マイクロコンピュータ７６１０と通信ネットワーク７０１０との間の通信を仲介するインタフェースである。車載ネットワークＩ／Ｆ７６８０は、通信ネットワーク７０１０によりサポートされる所定のプロトコルに則して、信号等を送受信する。
【０１６３】
統合制御ユニット７６００のマイクロコンピュータ７６１０は、汎用通信Ｉ／Ｆ７６２０、専用通信Ｉ／Ｆ７６３０、測位部７６４０、ビーコン受信部７６５０、車内機器Ｉ／Ｆ７６６０及び車載ネットワークＩ／Ｆ７６８０のうちの少なくとも一つを介して取得される情報に基づき、各種プログラムにしたがって、車両制御システム７０００を制御する。例えば、マイクロコンピュータ７６１０は、取得される車内外の情報に基づいて、駆動力発生装置、ステアリング機構又は制動装置の制御目標値を演算し、駆動系制御ユニット７１００に対して制御指令を出力してもよい。例えば、マイクロコンピュータ７６１０は、車両の衝突回避あるいは衝撃緩和、車間距離に基づく追従走行、車速維持走行、車両の衝突警告、又は車両のレーン逸脱警告等を含むＡＤＡＳ（Advanced  Driver  Assistance  System）の機能実現を目的とした協調制御を行ってもよい。また、マイクロコンピュータ７６１０は、取得される車両の周囲の情報に基づいて駆動力発生装置、ステアリング機構又は制動装置等を制御することにより、運転者の操作に拠らずに自律的に走行する自動運転等を目的とした協調制御を行ってもよい。
【０１６４】
マイクロコンピュータ７６１０は、汎用通信Ｉ／Ｆ７６２０、専用通信Ｉ／Ｆ７６３０、測位部７６４０、ビーコン受信部７６５０、車内機器Ｉ／Ｆ７６６０及び車載ネットワークＩ／Ｆ７６８０のうちの少なくとも一つを介して取得される情報に基づき、車両と周辺の構造物や人物等の物体との間の３次元距離情報を生成し、車両の現在位置の周辺情報を含むローカル地図情報を作成してもよい。また、マイクロコンピュータ７６１０は、取得される情報に基づき、車両の衝突、歩行者等の近接又は通行止めの道路への進入等の危険を予測し、警告用信号を生成してもよい。警告用信号は、例えば、警告音を発生させたり、警告ランプを点灯させたりするための信号であってよい。
【０１６５】
音声画像出力部７６７０は、車両の搭乗者又は車外に対して、視覚的又は聴覚的に情報を通知することが可能な出力装置へ音声及び画像のうちの少なくとも一方の出力信号を送信する。図２０の例では、出力装置として、オーディオスピーカ７７１０、表示部７７２０及びインストルメントパネル７７３０が例示されている。表示部７７２０は、例えば、オンボードディスプレイ及びヘッドアップディスプレイの少なくとも一つを含んでいてもよい。表示部７７２０は、ＡＲ（Augmented  Reality）表示機能を有していてもよい。出力装置は、これらの装置以外の、ヘッドホン、搭乗者が装着する眼鏡型ディスプレイ等のウェアラブルデバイス、プロジェクタ又はランプ等の他の装置であってもよい。出力装置が表示装置の場合、表示装置は、マイクロコンピュータ７６１０が行った各種処理により得られた結果又は他の制御ユニットから受信された情報を、テキスト、イメージ、表、グラフ等、様々な形式で視覚的に表示する。また、出力装置が音声出力装置の場合、音声出力装置は、再生された音声データ又は音響データ等からなるオーディオ信号をアナログ信号に変換して聴覚的に出力する。
【０１６６】
なお、図２０に示した例において、通信ネットワーク７０１０を介して接続された少なくとも二つの制御ユニットが一つの制御ユニットとして一体化されてもよい。あるいは、個々の制御ユニットが、複数の制御ユニットにより構成されてもよい。さらに、車両制御システム７０００が、図示されていない別の制御ユニットを備えてもよい。また、上記の説明において、いずれかの制御ユニットが担う機能の一部又は全部を、他の制御ユニットに持たせてもよい。つまり、通信ネットワーク７０１０を介して情報の送受信がされるようになっていれば、所定の演算処理が、いずれかの制御ユニットで行われるようになってもよい。同様に、いずれかの制御ユニットに接続されているセンサ又は装置が、他の制御ユニットに接続されるとともに、複数の制御ユニットが、通信ネットワーク７０１０を介して相互に検出情報を送受信してもよい。
【０１６７】
以上説明した車両制御システム７０００において、例えばキャリブレーション処理部１５，重み設定部１３，パラメータ記憶部１４およびパラメータ更新部１６は、図２０に示した応用例の車外情報検出ユニット７４００に適用できる。また、情報取得部１１-1は撮像部７４１０、情報取得部１１-2は車外情報検出部７４２０に適用できる。このように、車両制御システム７０００に本技術のキャリブレーション装置を設けるようにすれば、複数の撮像部、あるいは撮像部と車外情報検出部の位置関係を正しく把握できるようになり、周辺物体の検出精度を高めることができる。したがって、例えばドライバの疲労等の軽減や自動運転等に必要な情報を高精度で取得することが可能となる。
【０１６８】
明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させる。または、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【０１６９】
例えば、プログラムは記録媒体としてのハードディスクやＳＳＤ（Solid State Drive）、ＲＯＭ（Read Only Memory）に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory），ＭＯ（Magneto optical）ディスク，ＤＶＤ（Digital Versatile Disc）、ＢＤ（Blu-Ray Disc（登録商標））、磁気ディスク、半導体メモリカード等のリムーバブル記録媒体に、一時的または永続的に格納（記録）しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウェアとして提供することができる。
【０１７０】
また、プログラムは、リムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトからＬＡＮ（Local Area Network）やインターネット等のネットワークを介して、コンピュータに無線または有線で転送してもよい。コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０１７１】
なお、本明細書に記載した効果はあくまで例示であって限定されるものではなく、記載されていない付加的な効果があってもよい。また、本技術は、上述した技術の実施の形態に限定して解釈されるべきではない。この技術の実施の形態は、例示という形態で本技術を開示しており、本技術の要旨を逸脱しない範囲で当業者が実施の形態の修正や代用をなし得ることは自明である。すなわち、本技術の要旨を判断するためには、請求の範囲を参酌すべきである。
【０１７２】
また、本技術の キャリブレーション装置は以下のような構成も取ることができる。
（１）  複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、前記周辺物体情報を取得したときの前記周辺物体と前記情報取得部との状況に応じた重みを用いて、前記複数の情報取得部の位置と姿勢に関するパラメータを算出するキャリブレーション処理部
を備えるキャリブレーション装置。
（２）  前記キャリブレーション処理部は、前記特徴点について前記複数の情報取得部で取得された点群データと前記重みと予め記憶されているパラメータとを用いて、該パラメータの誤差を示すコストの算出を行い、算出されたコストに基づき、誤差が最小となるパラメータを算出する（１）に記載のキャリブレーション装置。
（３）  前記周辺物体情報は所定期間内に複数回取得されている（２）に記載のキャリブレーション装置。
（４）  前記キャリブレーション処理部は、前記複数の情報取得部が設けられた移動体における前記周辺物体情報の取得毎の移動速度に応じて前記重みの設定を行い、移動速度が速くなるに伴い重みを小さくする（３）に記載のキャリブレーション装置。
（５）  前記キャリブレーション処理部は、前記特徴点の動きベクトルに応じて前記重みの設定を行い、前記動きベクトルが大きくなるに伴い重みを小さくする（３）または（４）に記載のキャリブレーション装置。
（６）  前記所定期間は、前記複数の情報取得部が設けられた移動体の移動開始から予め設定された期間、または移動終了までの予め設定された期間である（３）乃至（５）の何れかに記載のキャリブレーション装置。
（７）  前記キャリブレーション処理部は、前記複数の情報取得部から前記特徴点までの距離に応じて前記重みの設定を行い、距離が長くなるに伴い重みを小さくする（２）乃至（６）の何れかに記載のキャリブレーション装置。
（８）  前記キャリブレーション処理部で算出されたパラメータを用いて、前記記憶されているパラメータを更新するパラメータ更新部をさらに備える（２）乃至（７）の何れかに記載のキャリブレーション装置。
（９）  前記パラメータ更新部は、前記複数の情報取得部が設けられた移動体の移動停止時または移動終了時から次の移動開始までに前記パラメータの更新を行う（８）に記載のキャリブレーション装置。
（１０）  前記複数の情報取得部は、前記周辺物体情報として少なくとも前記周辺物体の撮像画を取得する（１）乃至（９）の何れかに記載のキャリブレーション装置。
（１１）  前記周辺物体の撮像画を前記周辺物体情報として取得する情報取得部と、測距センサを用いて前記周辺物体の各位置までの距離を測定して測定結果を前記周辺物体情報とする情報取得部を、前記複数の情報取得部として備える（１０）に記載のキャリブレーション装置。
（１２）  前記情報取得部で取得された前記周辺物体の各位置までの距離の測定結果についてレジストレーション処理を行い、前記周辺物体の位置毎の点群データを前記特徴点毎の点群データとして生成する情報処理部をさらに備える（１１）に記載のキャリブレーション装置。
（１３）  前記周辺物体の撮像画を前記周辺物体情報として取得する情報取得部を、前記複数の情報取得部として備える（１０）に記載のキャリブレーション装置。
（１４）  前記情報取得部で取得された前記周辺物体の撮像画を用いて特徴点検出を行い、検出した前記周辺物体の特徴点についてのレジストレーション処理によって、特徴点毎の点群データを生成する情報処理部をさらに備える（１０）に記載のキャリブレーション装置。
【産業上の利用可能性】
【０１７３】
この技術のキャリブレーション装置とキャリブレーション方法およびプログラムでは、複数の情報取得部で取得された周辺物体情報に基づき生成された周辺物体の特徴点に関する点群データと、周辺物体情報を取得したときの周辺物体と情報取得部との状況に応じた重みを用いて、複数の情報取得部の位置と姿勢に関するパラメータが算出される。したがって、安定してキャリブレーションを行うことができるようになる。このため、複数の情報取得部で取得された情報に基づき周辺物体を認識する機器、例えば自動車や飛行体等の機器に適している。
【符号の説明】
【０１７４】
１０・・・キャリブレーション装置
１１-1，１１-2，１１-2a・・・情報取得部
１２-1，１２-2，１２-2a・・・情報処理部
１３・・・重み設定部
１４・・・パラメータ記憶部
１５・・・キャリブレーション処理部
１６・・・パラメータ更新部
１３１・・・移動速度取得部
１３２，１３３，１３６・・・重み設定処理部
１３４・・・ 特徴点保持部
１３５・・・動きベクトル算出部
【図１】
2019155719.tif 000009
【図２】
2019155719.tif 000010
【図３】
2019155719.tif 000011
【図４】
2019155719.tif 000012
【図５】
2019155719.tif 000013
【図６】
2019155719.tif 000014
【図７】
2019155719.tif 000015
【図８】
2019155719.tif 000016
【図９】
2019155719.tif 000017
【図１０】
2019155719.tif 000018
【図１１】
2019155719.tif 000019
【図１２】
2019155719.tif 000020
【図１３】
2019155719.tif 000021
【図１４】
2019155719.tif 000022
【図１５】
2019155719.tif 000023
【図１６】
2019155719.tif 000024
【図１７】
2019155719.tif 000025
【図１８】
2019155719.tif 000026
【図１９】
2019155719.tif 000027
【図２０】
2019155719.tif 000028
【図２１】
2019155719.tif 000029
【国際調査報告】
2019155719.tif 000030
2019155719.tif 000031
2019155719.tif 000032