(57)【要約】  校正方法は、それぞれが共通する三次元空間（Ａ１）を撮像する複数の撮像装置（１０ａ〜１０ｎ）のパラメータを、プロセッサを用いて校正する校正方法であって、複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、複数の撮像装置のそれぞれのパラメータを取得し、複数の画像のそれぞれについて、複数のパラメータを用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を生成し、複数の画像のそれぞれについて、１以上の探索窓内から複数の特徴点を抽出し、複数の画像間で複数の特徴点のマッチングを行い、得られた複数のマッチング結果に基づいて、複数の撮像装置のパラメータを校正する。
2020153264.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、
前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、
前記複数の撮像装置のそれぞれのパラメータを取得し、
取得された前記複数の画像のそれぞれについて、取得された前記複数のパラメータを用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を生成し、
取得された前記複数の画像のそれぞれについて、生成された前記１以上の探索窓内から前記複数の特徴点を抽出し、
前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、
前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する
校正方法。
【請求項２】
前記複数のパラメータのそれぞれは、当該パラメータに対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置に対して過去の時刻に行われた校正により得られ、且つ前記対応する撮像装置を識別するカメララベルを含む
請求項１に記載の校正方法。
【請求項３】
前記複数のパラメータのそれぞれは、当該パラメータに対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置と他の撮像装置との間の相対的な位置姿勢に関し、且つ前記対応する撮像装置を識別するカメララベルを含む
請求項１に記載の校正方法。
【請求項４】
前記複数のパラメータのそれぞれは、当該パラメータに対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置から前記三次元空間上の任意の点までの距離を示し、且つ前記対応する撮像装置を識別するカメララベルを含む
請求項１に記載の校正方法。
【請求項５】
前記１以上の探索窓の生成では、前記複数のパラメータに基づいて、当該画像を撮像した一の撮像装置および他の撮像装置の並び方向における前記一の撮像装置および前記他の撮像装置の間の位置姿勢が離れているほど、前記並び方向に略垂直な方向に長い形状を有する探索窓を算出する
請求項１に記載の校正方法。
【請求項６】
前記複数の特徴点の抽出では、
（ｉ）当該画像から複数のキーポイントを検出し、
（ｉｉ）検出された前記複数のキーポイントのそれぞれについて、（ｉｉ−ｉ）当該キーポイントが中心となるように、前記１以上の探索窓を当該画像上に配置することで１以上の特徴量パッチを抽出し、（ｉｉ−ｉｉ）当該キーポイントに対応して抽出された前記１以上の特徴量パッチのそれぞれの特徴の分布を特徴量として算出し、当該キーポイントに算出された前記特徴の分布を記述することで前記特徴点を抽出する
請求項５に記載の校正方法。
【請求項７】
それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、
前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、
前記複数の撮像装置のそれぞれについて、当該撮像装置の第１パラメータを取得し、
取得された前記複数の画像と、取得された複数の前記第１パラメータとに基づいて、前記三次元空間上における三次元情報を推定し、
推定された前記三次元情報を前記複数の第１パラメータに追加することで得られた複数の第２パラメータを出力し、
取得された前記複数の画像のそれぞれについて、出力された前記複数の第２パラメータに基づいて特徴点のマッチングの組合せを限定するための１以上の探索領域を算出し、
前記複数の画像のそれぞれについて、複数の特徴点を抽出し、
算出された前記１以上の探索領域を用いて、抽出された前記複数の特徴点から特徴点のマッチングの候補を絞り込み、前記候補として絞り込まれた複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、
前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する
校正方法。
【請求項８】
前記複数の第１パラメータのそれぞれは、当該第１パラメータが対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置について過去の時刻に行われた校正により得られ、且つ前記対応する撮像装置を識別するカメララベルを含む
請求項７に記載の校正方法。
【請求項９】
前記複数の画像のうちの第１画像における前記１以上の探索領域である１以上の第１探索領域と、前記複数の画像のうちの第２画像における前記１以上の探索領域である１以上の第２探索領域とは、それぞれ、前記三次元空間上の１以上の領域に対応しており、
前記マッチングでは、一の前記第１探索領域に含まれる１以上の第１特徴点と、前記一の第１探索領域と前記三次元空間上の共通する領域で対応する一の前記第２探索領域に含まれる１以上の第２特徴点とを、前記マッチングの前記候補として絞り込み、前記１以上の第１特徴点と前記１以上の第２特徴点とを用いてマッチングを行う
請求項７または８に記載の校正方法。
【請求項１０】
前記マッチングでは、
前記１以上の第１特徴点と、前記第２画像における前記１以上の第２特徴点以外の特徴点とを用いてマッチングを行わず、
前記第１画像における前記１以上の第１特徴点以外の特徴点と、前記１以上の第２特徴点とを用いてマッチングを行わない
請求項９に記載の校正方法。
【請求項１１】
それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、
前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、
取得された前記複数の画像のそれぞれについて、映り込んでいる物体の形状を認識し、当該形状を囲む探索窓を生成し、
取得された前記複数の画像のそれぞれについて、生成された前記探索窓内から前記複数の特徴点を抽出し、
前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、
前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する
校正方法。
【請求項１２】
それぞれが共通する三次元空間を撮像する複数の撮像装置の複数のパラメータを校正する校正装置であって、
前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得する画像取得部と、
前記複数の撮像装置のそれぞれについて、当該撮像装置のパラメータを取得するパラメータ取得部と、
前記画像取得部により取得された前記複数の画像のそれぞれについて、前記パラメータ取得部により取得された複数の前記パラメータを用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を生成する探索窓生成部と、
前記画像取得部により取得された前記複数の画像のそれぞれについて、前記探索窓生成部により生成された前記１以上の探索窓内から前記複数の特徴点を抽出する抽出部と、
前記複数の画像のそれぞれについて前記抽出部により抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行うマッチング算出部と、
前記マッチング算出部におけるマッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する再構成部と、を備える
校正装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、複数の撮像装置のパラメータを校正する校正方法、および、校正装置に関する。
【背景技術】
【０００２】
特許文献１には、撮像装置によって撮影された複数の画像を射影変換することで、同じ被写体に対する撮像装置からの見え方が大きく異なる画像間のマッチングを行う技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１１−５２１３７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、複数の撮像装置のパラメータを精度よく校正することができる校正方法および校正装置を提供する。
【課題を解決するための手段】
【０００５】
本開示の第一態様における校正方法は、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、前記複数の撮像装置のそれぞれのパラメータを取得し、取得された前記複数の画像のそれぞれについて、取得された前記複数のパラメータを用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を生成し、取得された前記複数の画像のそれぞれについて、生成された前記１以上の探索窓内から前記複数の特徴点を抽出し、前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する。【０００６】
また、本開示の第二態様における校正方法は、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、前記複数の撮像装置のそれぞれについて、当該撮像装置の第１パラメータを取得し、取得された前記複数の画像と、取得された複数の前記第１パラメータとに基づいて、前記三次元空間上における三次元情報を推定し、推定された前記三次元情報を前記複数の第１パラメータに追加することで得られた複数の第２パラメータを出力し、取得された前記複数の画像のそれぞれについて、出力された前記複数の第２パラメータに基づいて特徴点のマッチングの組合せを限定するための１以上の探索領域を算出し、前記複数の画像のそれぞれについて、複数の特徴点を抽出し、算出された前記１以上の探索領域を用いて、抽出された前記複数の特徴点から特徴点のマッチングの候補を絞り込み、前記候補として絞り込まれた複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する。【０００７】
また、本開示の第三態様における校正方法は、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、取得された前記複数の画像のそれぞれについて、映り込んでいる物体の形状を認識し、当該形状を囲む探索窓を生成し、取得された前記複数の画像のそれぞれについて、生成された前記探索窓内から前記複数の特徴点を抽出し、前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する。
【発明の効果】
【０００８】
本開示における校正方法および校正装置は、複数の撮像装置のパラメータを精度よく校正することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、三次元空間認識の概要を示す図である。
【図２】図２は、校正の概要を示す図である。
【図３】図３は、実施の形態１における校正システムの構成を示すブロック図である。
【図４】図４は、実施の形態１における撮像装置の構成を示すブロック図である。
【図５】図５は、実施の形態１における制御装置の構成を示すブロック図である。
【図６】図６は、実施の形態１における校正装置の構成を示すブロック図である。
【図７Ａ】図７Ａは、パラメータ情報の一例について説明するための図である。
【図７Ｂ】図７Ｂは、パラメータ情報の一例について説明するための図である。
【図７Ｃ】図７Ｃは、パラメータ情報の一例について説明するための図である。
【図７Ｄ】図７Ｄは、パラメータ情報の一例について説明するための図である。
【図７Ｅ】図７Ｅは、パラメータ情報の一例について説明するための図である。
【図７Ｆ】図７Ｆは、パラメータ情報の一例について詳細を説明するための図である。
【図８】図８は、実施の形態１における校正処理の詳細を説明するための図である。
【図９】図９は、実施の形態１における校正処理の詳細を説明するための図である。
【図１０】図１０は、実施の形態１における校正処理の詳細を説明するための図である。
【図１１】図１１は、実施の形態１における校正処理の詳細を説明するための図である。
【図１２】図１２は、校正処理の詳細を説明するためのシーケンス図である。
【図１３】図１３は、実施の形態１における校正処理の詳細を説明するためのフローチャート図である。
【図１４】図１４は、実施の形態１における特徴点の抽出処理の一例を示すフローチャートである。
【図１５】図１５は、実施の形態２における校正装置の構成を示すブロック図である。
【図１６】図１６は、実施の形態２における校正処理の詳細を説明するための概要図である。
【図１７】図１７は、実施の形態２における校正処理の詳細を説明するための概要図である。
【図１８】図１８は、実施の形態２における校正処理の詳細を説明するための概要図である。
【図１９】図１９は、実施の形態２における校正処理の詳細を説明するための概要図である。
【図２０】図２０は、変形例１における探索窓の生成処理を説明するための図である。
【図２１】図２１は、変形例２における探索窓の生成処理を説明するための図である。
【図２２】図２２は、変形例３における探索窓の生成処理を説明するための図である。
【発明を実施するための形態】
【００１０】
（本発明の基礎となった知見）
三次元空間認識は、被写体の三次元形状を再構成（モデリング）をすることで、または再構成結果を用いることで実現される。被写体の三次元形状を再構成する三次元空間再構成装置は、同一の場面の映像を撮影する複数のカメラを含む撮像システムから提供される映像データと、校正によって得られた各カメラの位置および姿勢等（以下、「位置姿勢」という。）を示すカメラパラメータと、を用いてモデリングを行う。したがって、校正後にカメラの位置等が変化すると、カメラパラメータがカメラの位置等の実際の状態を反映していないために被写体の三次元形状再構成が適切に実行できず、その結果、三次元空間認識の精度が低下する、または生成そのものに失敗する。このため、定期的にカメラのパラメータを校正する必要がある。
【００１１】
このような撮像システムにおいて複数のカメラは、所定の空間を取り囲むように配置される。このため、複数のカメラのうちの２つのカメラ間の位置姿勢が大きく離れている場合に、２つのカメラからの所定の空間内の被写体の見え方は大きく異なる。よって、複数のカメラのそれぞれについてカメラパラメータを校正しようとすると、三次元空間上で同一点とみなされる位置に対するユニークな特徴点の抽出が難しく、結果、精度よくパラメータを校正することが難しいという課題があった。また、特許文献１に開示されている従来技術は、近似的にカメラからの見え方が同じになるように画像を変換し特徴点を抽出することでマッチング精度を向上させているが、一方で高負荷な処理が必要であるという課題があった。
【００１２】
このように、従来の技術では、複数の撮像装置のパラメータの校正を容易に行うことができていなかった。
【００１３】
そこで、本開示の第一態様における校正方法は、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、前記複数の撮像装置のそれぞれのパラメータを取得し、取得された前記複数の画像のそれぞれについて、取得された前記複数のパラメータを用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を生成し、取得された前記複数の画像のそれぞれについて、生成された前記１以上の探索窓内から前記複数の特徴点を抽出し、前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する。
【００１４】
これによれば、複数の画像間でのマッチングを行うための複数の特徴点の抽出を、複数の撮像装置のパラメータを用いて生成した１以上の探索窓を用いて行う。これにより、互いに異なる位置において撮像された結果であることを考慮して複数の画像から特徴点を抽出することができる。このため、マッチングの処理負荷を低減しつつ、マッチングの精度を向上することができる。よって、複数の撮像装置のパラメータを精度よく校正することができる。
【００１５】
また、前記複数のパラメータのそれぞれは、当該パラメータに対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置に対して過去の時刻に行われた校正により得られ、且つ前記対応する撮像装置を識別するカメララベルを含んでもよい。
【００１６】
このため、過去に得られたパラメータを用いた校正を行うことで、複数の撮像装置のパラメータを効率よく校正することができる。
【００１７】
また、前記複数のパラメータのそれぞれは、当該パラメータに対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置と他の撮像装置との間の相対的な位置姿勢に関し、且つ前記対応する撮像装置を識別するカメララベルを含んでもよい。
【００１８】
このため、対象となる撮像装置の他の撮像装置との間の相対的な位置姿勢に関するパラメータを用いた校正を行うことで、複数の撮像装置のパラメータを効率よく校正することができる。
【００１９】
また、前記複数のパラメータのそれぞれは、当該パラメータに対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置から前記三次元空間上の任意の点までの距離を示し、且つ前記対応する撮像装置を識別するカメララベルを含んでもよい。
【００２０】
このため、対象となる撮像装置から三次元空間上の任意の点までの距離を示すパラメータを用いた校正を行うことで、複数の撮像装置のパラメータを効率よく校正することができる。
【００２１】
また、前記１以上の探索窓の生成では、前記複数のパラメータに基づいて、当該画像を撮像した一の撮像装置および他の撮像装置の並び方向における前記一の撮像装置および前記他の撮像装置の間の位置姿勢が離れているほど、前記並び方向に略垂直な方向に長い形状を有する探索窓を算出してもよい。
【００２２】
このため、画像が撮像された撮像装置に応じた探索窓を算出することができ、複数の画像から特徴点を効果的に抽出することができる。
【００２３】
また、前記複数の特徴点の抽出では、（ｉ）当該画像から複数のキーポイントを検出し、（ｉｉ）検出された前記複数のキーポイントのそれぞれについて、（ｉｉ−ｉ）当該キーポイントが中心となるように、前記１以上の探索窓を当該画像上に配置することで１以上の特徴量パッチを抽出し、（ｉｉ−ｉｉ）当該キーポイントに対応して抽出された前記１以上の特徴量パッチのそれぞれの特徴の分布を特徴量として算出し、当該キーポイントに算出された前記特徴の分布を記述することで前記特徴点を抽出してもよい。
【００２４】
このため、複数の撮像装置のそれぞれのパラメータに応じた特徴量を含む特徴点を複数抽出することができる。
【００２５】
また、本開示の他の一態様に係る校正方法は、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、前記複数の撮像装置のそれぞれについて、当該撮像装置の第１パラメータを取得し、取得された前記複数の画像と、取得された複数の前記第１パラメータとに基づいて、前記三次元空間上における三次元情報を推定し、推定された前記三次元情報を前記複数の第１パラメータに追加することで得られた複数の第２パラメータを出力し、取得された前記複数の画像のそれぞれについて、出力された前記複数の第２パラメータに基づいて特徴点のマッチングの組合せを限定するための１以上の探索領域を算出し、前記複数の画像のそれぞれについて、複数の特徴点を抽出し、算出された前記１以上の探索領域を用いて、抽出された前記複数の特徴点から特徴点のマッチングの候補を絞り込み、前記候補として絞り込まれた複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する。
【００２６】
これによれば、三次元情報を含む第２パラメータに基づいて生成した探索領域を用いて、特徴点のマッチングの候補を絞り込んでマッチングを行うため、マッチングの精度を向上させることができ、かつ、マッチングを効率よく行うことができる。このため、複数の撮像装置のパラメータを精度よく校正することができる。
【００２７】
また、前記複数の第１パラメータのそれぞれは、当該第１パラメータが対応する撮像装置の位置姿勢に関し、且つ前記対応する撮像装置について過去の時刻に行われた校正により得られ、且つ前記対応する撮像装置を識別するカメララベルを含んでもよい。
【００２８】
このため、過去に得られたパラメータを用いた校正を行うことで、複数の撮像装置のパラメータを効率よく校正することができる。
【００２９】
また、前記複数の画像のうちの第１画像における前記１以上の探索領域である１以上の第１探索領域と、前記複数の画像のうちの第２画像における前記１以上の探索領域である１以上の第２探索領域とは、それぞれ、前記三次元空間上の１以上の領域に対応しており、前記マッチングでは、一の前記第１探索領域に含まれる１以上の第１特徴点と、前記一の第１探索領域と前記三次元空間上の共通する領域で対応する一の前記第２探索領域に含まれる１以上の第２特徴点とを、前記マッチングの前記候補として絞り込み、前記１以上の第１特徴点と前記１以上の第２特徴点とを用いてマッチングを行ってもよい。
【００３０】
これによれば、第１画像および第２画像について、それぞれ、三次元空間上の共通する領域で対応する第１探索領域に含まれる１以上の第１特徴点と、第２探索領域に含まれる１以上の第２特徴点とを対応付けるため、マッチングの精度を向上させることができ、かつ、マッチングを効率よく行うことができる。
【００３１】
また、前記マッチングでは、前記１以上の第１特徴点と、前記第２画像における前記１以上の第２特徴点以外の特徴点とを用いてマッチングを行わず、前記第１画像における前記１以上の第１特徴点以外の特徴点と、前記１以上の第２特徴点とを用いてマッチングを行わなくてもよい。
【００３２】
これによれば、三次元空間上の共通しない領域同士では、マッチングを行わないため、マッチングの精度を向上させることができ、かつ、マッチングを効率よく行うことができる。
【００３３】
本開示の他の一態様に係る校正方法は、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、取得された前記複数の画像のそれぞれについて、映り込んでいる物体の形状を認識し、当該形状を囲む探索窓を生成し、取得された前記複数の画像のそれぞれについて、生成された前記探索窓内から前記複数の特徴点を抽出し、前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する。
【００３４】
この校正方法では、物体の形状を囲む探索窓を用いて特徴点のマッチングを行うので、マッチングの処理負荷が低減されつつ、マッチングの精度が向上する。
【００３５】
なお、これらの全般的または具体的な態様は、システム、装置、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、装置、集積回路、コンピュータプログラムまたは記録媒体の任意な組み合わせで実現されてもよい。
【００３６】
以下、本開示の一態様に係る校正システムおよび校正方法について、図面を参照しながら具体的に説明する。
【００３７】
なお、以下で説明する実施の形態は、いずれも本発明の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置および接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００３８】
以下、図を用いて実施の形態１を説明する。
【００３９】
（実施の形態１）
［１．三次元空間認識と校正の概要］
まず、本実施の形態にかかる校正システムが用いられる三次元空間認識および校正の概要について図１および図２を用いて説明する。図１は、三次元空間認識の概要を示す図である。図２は、校正の概要を示す図である。
【００４０】
校正システムは、所定の三次元空間Ａ１（以下、「空間Ａ１」とも言う。）内における同一シーンを撮像するためのカメラ１００を複数台備える。具体例を挙げると、所定の三次元空間Ａ１は、交通道路上の空間であり、同一シーンとはその道路２０上を車両２１が走行する、または歩行者（図示せず）が存在するシーンである。別の例として、監視対象が存在する三次元空間を所定の三次元空間とし、同一シーンは人または物の動作が挙げられる。
【００４１】
複数台のカメラ１００のそれぞれは、互いに異なる位置に配置されており、それぞれが共通する三次元空間を撮像する。このため、三次元空間内における複数台のカメラ１００の撮像対象の領域は、少なくとも一部に重複する領域を有する。例えば、複数台のカメラ１００は、道路２０上の空間Ａ１を一部囲むように、互いに異なる位置に設置される。また、複数台のカメラ１００は、それぞれ互いに異なる姿勢をとる。そして、複数台のカメラ１００の撮像対象の領域では、少なくとも一部が重複する。撮像対象の領域において少なくとも一部が重複することは、撮像により得られた映像データを三次元空間に再構成するため、また、カメラの校正におけるマッチングに用いられるためである。なお、撮像対象の領域は、複数台のカメラ１００のうちの一部のカメラ１００で重複していてもよいし、複数台のカメラ１００の全てで重複していてもよい。
【００４２】
三次元空間認識では、このように設置された複数台のカメラ１００からそれぞれ得られた複数の映像（以下、映像は、画像とも言う。）と、複数台のカメラ１００の位置姿勢を示すパラメータとを用いて三次元モデル２２を再構成する。そこで、パラメータを得るために、複数台のカメラ１００の校正が必要である。校正では、図２に示すように各カメラ１００で撮像された映像上の特徴的な点を抽出し、互いに異なる視点の画像５２０、５４０間で図の点線のように抽出された特徴的な点マッチングさせることで、各カメラ１００のパラメータを算出する。特徴的な点は、図２において各画像５２０、５４０の白丸で示される点である。ここで算出されるパラメータは、共通の座標系において各カメラ１００の位置および撮像方向の角度（姿勢）等を示すカメラパラメータである。なお、カメラ１００の位置姿勢は、カメラポーズとも言う。
【００４３】
再構成により得られた三次元モデル２２のデータは、三次元空間認識を実行する装置に送信される。このような装置の三次元空間認識の機能として、三次元物体認識、物体の形状・動作解析、自由視点映像生成等が挙げられる。
【００４４】
三次元物体認識は、三次元空間上のどの位置にどんな物体が存在するかを特定する処理である。三次元物体認識は、例えば、道路２０上の空間Ａ１が撮像された複数の映像で再構成された三次元モデルを用いることで、空間Ａ１上の車両２１が存在する位置、空間Ａ１上の建物から歩行者までの距離等を算出する処理である。これらの算出結果は、例えば、自動運転のための車両位置の検出に用いられる。
【００４５】
物体の形状・動作解析は、物体の形状、実空間上での大きさ、動作速度等を解析する処理である。物体の形状・動作解析は、例えば、道路２０上の空間Ａ１が撮像された複数の映像で再構成された三次元モデルを用いることで、車両２１の大きさおよび車両２１の移動速度、または、歩行者の身長および歩行者の移動速度等を算出する処理である。物体の形状・動作解析では、さらに、三次元物体認識における算出結果と組み合わせることで、例えば、空間Ａ１上の車両２１が存在する位置、車両２１の大きさ、車両２１の移動速度等を算出してもよい。
【００４６】
自由視点映像生成は、カメラが存在しない視点である仮想視点から見た場合の映像を生成する処理である。自由視点映像生成は、例えば、道路２０上の空間Ａ１が撮像された複数の映像であって、互いに異なる複数の斜め方向から車両２１が撮像された映像を用いて再構成された三次元モデル２２を用いることで、複数の斜め方向に含まれない正面の方向から車両２１が撮像されたような仮想視点の映像を生成する処理である。
【００４７】
このように、いずれの三次元空間認識の機能は、異なる複数の視点で撮像された複数の映像を用いて生成された三次元モデルに基づいて実現される。各機能が高い精度を実現するためには、より精度が高い三次元モデルが必要となる。そして、より精度が高い三次元モデルを再構成するためには、より正確なカメラパラメータが必要である。カメラパラメータの精度が低いと、再構成された三次元モデルの精度が低下する、または再構成できない。三次元モデルデータの精度が低下すると、三次元空間認識の精度が低下する。また、三次元モデルデータが再構成されないと、三次元空間認識の実現が困難となる。
【００４８】
以下では、より精度の高いカメラパラメータを算出することができる校正システムについて説明する。
【００４９】
［２．校正システムの構成］
図３は、実施の形態１における校正システムの構成を示すブロック図である。
【００５０】
実施の形態における校正システム１０００は、複数の撮像装置１０ａ〜１０ｎ、制御装置２００、校正装置３００、およびユーザインタフェース４００を備える。撮像装置１０ａ〜１０ｎは、制御装置２００と通信可能に接続されている。また、校正装置３００、およびユーザインタフェース４００は、制御装置２００と通信可能に接続されている。
【００５１】
［２−１．撮像装置の構成］
図４は、実施の形態１における撮像装置１０ａ〜１０ｎの構成を示すブロック図である。
【００５２】
複数の撮像装置１０ａ〜１０ｎは、それぞれが所定の空間Ａ１を撮像するための図１のカメラ１００に相当するカメラを備える装置であり、取り得る構成は互いに共通である。なお、ここでいう所定の空間Ａ１とは、複数台のカメラそれぞれの撮像領域の和集合である。
【００５３】
撮像装置１０ａ〜１０ｎのそれぞれは、カメラ１００および架台１１０を備える。以降は、撮像装置１０ａ〜１０ｎの構成は同じであるため、本開示における１台の撮像装置について説明する場合には、撮像装置１０ａについて説明する。つまり、以降において撮像装置１０ａについて説明している箇所は、他の撮像装置１０ｂ〜１０ｎについても同様のことが言える。
【００５４】
カメラ１００は、記憶部１０１、制御部１０２、光学系１０３、およびイメージセンサ１０４を備える。
【００５５】
記憶部１０１には、制御部１０２が読み出して実行するプログラムが記憶されている。また、記憶部１０１には、イメージセンサ１０４を用いて撮影された撮像領域の映像データ、この映像データに付されるタイムスタンプなどのメタ情報、カメラ１００のカメラパラメータ、および適用中のフレームレートまたは解像度等の撮影設定が一時的に記憶される。
【００５６】
このような記憶部１０１は例えばフラッシュメモリ等の書き換え可能な不揮発性の半導体メモリを用いて実現される。また、保存されるデータの書き換えの要否または必要な保存期間等に応じて書き換え不可能なＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）または揮発性のＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）も記憶部として用いられ得る。
【００５７】
なお、校正システム１０００が備える撮像装置は複数であれば特に個数は限定されない。また、各撮像装置１０ａ〜１０ｎの特性は共通でなくてもよい。また、各撮像装置１０ａ〜１０ｎが備えるカメラ１００は、モノラルカメラに限定されず、ステレオカメラが含まれていてもよい。
【００５８】
なお、校正システム１０００は、複数の撮像装置を備えるとしたが、これに限らずに、１台の撮像装置を備えてもよい。例えば、校正システム１０００では、実空間上に存在する撮像対象を、１台の撮像装置を移動させながら１台の撮像装置に互いに視点の異なる複数の画像を含む多視点画像を生成させるように撮影させてもよい。複数の画像のそれぞれは、撮像装置の位置及び姿勢の少なくとも一方が互いに異なる撮像装置により撮影（生成）された画像である。
【００５９】
制御部１０２は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いて実現され、上記の記憶部１０１に記憶されるプログラムを読み出して実行することで、カメラ１００が備える各構成要素を制御して撮像その他の機能を発揮させる。なお、制御部１０２は、カメラ１００が備える各構成要素を制御して撮像その他の機能を発揮させる専用回路により実現されてもよい。つまり、制御部１０２は、ソフトウェアで実現されてもよいし、ハードウェアで実現されてもよい。
【００６０】
光学系１０３は、撮像領域からの光をイメージセンサ１０４上に結像させる構成要素であり、レンズを含む光学素子を用いて実現される。また、焦点距離および画角が変更可能であってもよい。また、広角レンズ、または魚眼レンズのような超広角レンズが用いられてもよい。例えば校正システム１０００が撮影する映像が監視システムに用いられる場合、広範な撮像領域を得るために広角レンズが用いられることがある。
【００６１】
イメージセンサ１０４は、光学系によって集められた光を受光面で受け、この受けた光を、画像を示す電気信号に変換するＣＣＤイメージセンサ、ＣＭＯＳイメージセンサ、またはＭＯＳイメージセンサ等の固体撮像素子で実現される。
【００６２】
架台１１０は、校正に用いられる映像を撮像によって生成中のカメラを、所定の位置で固定し支えるための構成要素であり、例えば三脚で実現される。なお、この撮像の準備としてカメラ１００の固定位置を調整するために、架台１１０の脚部分は長さや角度が調整可能であってもよい。また、架台１１０には、カメラ１００をパンまたはチルトするために雲台を回転させる機構、上下に移動させるためのエレベータ機構等が備えられてもよい。あるいは、架台１１０は、ドリー、クレーン等の、カメラ１００を支え且つ移動させる機構を含んでもよい。
【００６３】
［２−２．制御装置の構成］
図５は、実施の形態１における制御装置２００の構成を示すブロック図である。
【００６４】
制御装置２００は、記憶部２０１、制御部２０２、およびタイマー２０３を備える。
【００６５】
制御装置２００は、撮像装置１０ａ〜１０ｎの制御、および撮像装置１０ａ〜１０ｎから受け取ったデータの処理をする。また、制御装置２００は、校正装置３００に対して各撮像装置１０ａ〜１０ｎが備えるカメラ１００のカメラパラメータの校正処理の指示を行う。
【００６６】
このような制御装置２００は、例えばコンピュータである。この場合、記憶部２０１は、このコンピュータの記憶装置であり、ハードディスクドライブ若しくは各種の半導体メモリ、またはこれらの組み合わせで実現される。また、制御部２０２はこのコンピュータのＣＰＵで実現され、タイマー２０３はこのＣＰＵが参照する、コンピュータに備えられるタイマーである。また、ユーザインタフェース４００は、このコンピュータに接続される表示装置、タッチスクリーン、トラックパッド、キーボード、マウス、その他のコントローラ類またはこれらの組み合わせによって実現される。
【００６７】
記憶部２０１には、制御部２０２が読み出して実行するプログラムが記憶されている。また、記憶部２０１には、撮像装置１０ａ〜１０ｎから受け取ったデータであって、制御部２０２による処理の対象であるデータが記憶される。
【００６８】
制御部２０２は、上記の記憶部２０１に記憶されるプログラムを読み出して実行することで、上記の撮像装置１０ａ〜１０ｎおよび校正装置３００の制御を行う。また、制御部２０２は、これらの制御および処理に関するユーザからの指令に対する処理を実行する。これらの処理のひとつとして、撮像装置１０ａ〜１０ｎがそれぞれ備える複数台のカメラ１００による同期映像の撮影の制御が挙げられる。
【００６９】
また、これらの処理のひとつには、イベント検出および校正指令が含まれていてもよい。制御部２０２に含まれるイベント検出部２０２ｂは、イベント検出のためのプログラムを制御部２０２が実行することで実現される機能的な構成要素である。また、制御部２０２に含まれる校正指令部２０２ｃは、校正指令のためのプログラムを制御部２０２が実行することで実現される機能的な構成要素である。
【００７０】
なお、制御部２０２の撮像制御部２０２ａ、イベント検出部２０２ｂ、および校正指令部２０２ｃは、撮像制御、イベント検出、校正指令、校正処理などを発揮させる専用回路により実現されてもよい。つまり、制御部２０２は、ソフトウェアで実現されてもよいし、ハードウェアで実現されてもよい。
【００７１】
撮像制御部２０２ａは、複数の撮像装置１０ａ〜１０ｎのそれぞれに、撮像領域である三次元空間Ａ１を異なる複数のタイミングで撮像させる。撮像制御部２０２ａは、複数の撮像装置１０ａ〜１０ｎのそれぞれが、予め定められた位置にあり、かつ、予め定められた方向を向いた姿勢にある状態で、複数の撮像装置１０ａ〜１０ｎに撮像領域を撮像させる。
【００７２】
イベント検出部２０２ｂは、撮像装置１０ａ〜１０ｎから提供された撮像状況情報に基づいて、撮像装置１０ａ〜１０ｎがそれぞれ備えるカメラ１００のいずれかに校正の実行の理由になり得る所定のイベントの発生を検出する。校正の実行の理由になり得るイベントとは、例えばカメラの移動が発生する、または移動の発生の可能性が高いイベント、または高い精度でマッチングを実行することができる可能性が高いイベントである。より具体的な例については校正システム１０００の動作の説明の中で後述する。このようなイベントの発生を検出した場合に、イベント検出部２０２ｂは校正を実行するか否かについて判定する。校正を実行すると判定した場合は、実行される校正を示す校正情報を、例えば校正指令部２０２ｃに出力する。
【００７３】
校正指令部２０２ｃは、イベント検出部２０２ｂから受け取った校正情報に基づいて、校正情報に示されるカメラ１００に校正を実行させる。また、校正情報が示すカメラ１００が２台以上である場合には、例えば校正情報が示す、校正の実行の理由であるイベントの内容に基づいて、各カメラ１００に校正を実行させる順序を決定してもよい。校正指令部２０２ｃによる処理については具体例を後述する。
【００７４】
［２−３．校正装置の構成］
図６は、実施の形態１における校正装置３００の構成を示すブロックである。
【００７５】
校正装置３００は、記憶部３０１および校正部３０２を備える。
【００７６】
校正装置３００は、制御装置２００を介して受け取ったデータを処理する。具体的には、校正装置３００は、各撮像装置１０ａ〜１０ｎが備えるカメラ１００のカメラパラメータの校正処理を実行する。また、校正装置３００は、三次元空間構成処理を実行してもよい。
【００７７】
このような校正装置３００は、例えばコンピュータである。この場合、記憶部３０１は、このコンピュータの記憶装置であり、ハードディスクドライブ若しくは各種の半導体メモリ、またはこれらの組み合わせで実現される。また、校正部３０２はこのコンピュータのＣＰＵで実現される。なお、校正装置３００は、制御装置２００と同じコンピュータにより実現されてもよい。
【００７８】
記憶部３０１には、校正部３０２が読み出して実行するプログラムが記憶されている。また、記憶部３０１には、制御装置２００を介して撮像装置１０ａ〜１０ｎから受け取ったデータ、および外部の装置から取得した撮像装置１０ａ〜１０ｎに関するデータであって、校正部３０２による処理の対象であるデータが記憶される。つまり、撮像状況情報が記憶されていてもよいし、撮像装置１０ａ〜１０ｎのカメラパラメータに関するパラメータ情報が記憶されていてもよい。
【００７９】
校正部３０２は、上記の記憶部３０１に記憶されるプログラムを読み出して実行することで、上記の撮像装置１０ａ〜１０ｎから受け取ったデータの処理を行う。この処理のひとつとして、各撮像装置１０ａ〜１０ｎが備えるカメラ１００のカメラパラメータの校正処理が挙げられる。
【００８０】
ここで、校正装置３００で行われる校正処理について、図７Ａ〜図７Ｆ、図８〜図１１を用いて説明する。図７Ａ〜図７Ｆは、パラメータ情報の一例について説明するための図である。図８〜図１１は、校正処理の詳細を説明するための図である。
【００８１】
校正部３０２は、画像取得部３０２ａ、パラメータ取得部３０２ｂ、前処理部３０２ｃ、探索窓生成部３０２ｄ、抽出部３０２ｅ、マッチング算出部３０２ｆ、および再構成部３０２ｇを有する。
【００８２】
画像取得部３０２ａは、複数の撮像装置１０ａ〜１０ｎによりそれぞれ撮像された複数の画像を取得する。画像取得部３０２ａは、さらに、複数の画像と共に、当該複数の画像のそれぞれに対応しており、当該複数の画像のそれぞれが撮像されたカメラ１００を示すカメララベルを取得する。画像取得部３０２ａは、例えば、カメララベルが付与された画像を取得することで、複数の画像とカメララベルとを取得してもよい。複数の画像のそれぞれは、静止画像であってもよいし、動画像であってもよい。なお、校正処理に利用される複数の画像は、それぞれ、ある対応する１タイミングにおいて複数の撮像装置１０ａ〜１０ｎにより撮像されることで得られた画像であることが好ましい。画像取得部３０２ａにより取得された複数の画像は、記憶部３０１に記憶される。また、画像取得部３０２ａは、制御装置２００から校正指令を受け取る前に、事前に画像およびカメララベルを記憶部３０１に記憶していてもよい。これにより、校正装置３００は、校正が必要と判断された際に、校正処理を開始できる。つまり、校正装置３００は、新たに画像およびカメララベルを取得することなく校正処理を開始できる。
【００８３】
パラメータ取得部３０２ｂは、校正システム１０００の外部の装置、または記憶部３０１から、撮像装置１０ａ〜１０ｎのそれぞれのパラメータに関するパラメータ情報を取得する。パラメータ取得部３０２ｂは、さらに、複数のパラメータ情報と共に、当該複数のパラメータ情報のそれぞれに対応しており、当該パラメータ情報が対応する撮像装置を示すカメララベルを取得する。パラメータ取得部３０２ｂは、例えば、カメララベルが付与されたパラメータ情報を取得することで、複数のパラメータ情報とカメララベルとを取得してもよい。複数のパラメータ情報のそれぞれは、当該パラメータ情報に対応する撮像装置が備えるカメラ１００の位置姿勢に関する情報である。
【００８４】
各パラメータ情報は、例えば、図７Ａに示すように、当該パラメータ情報に対応する撮像装置が備えるカメラ１００ａと他の撮像装置が備えるカメラ１００ｂとの間の相対的な位置姿勢の差を示す情報であってもよい。なお、カメラ１００ａ、１００ｂは、複数の撮像装置１０ａ〜１０ｎがそれぞれ備える複数のカメラ１００に含まれる。この相対的な位置姿勢の差は、カメラ１００ａの撮像方向と、カメラ１００ｂの撮像方向とがなす角の角度であってもよいし、カメラ１００ａとカメラ１００ｂとの距離であってもよいし、上記角度および距離の両方を含んでいてもよい。
【００８５】
また、各パラメータ情報は、例えば、図７Ｂに示すように、当該パラメータ情報に対応する撮像装置が備えるカメラ１００に対して、過去の時刻に行われた校正により得られた校正結果を含む情報であってもよい。また、各パラメータ情報は、例えば、図７Ｃに示すように、カメラ１００ａから三次元空間上の任意の点までを結ぶ直線と、カメラ１００ｂから上記任意の点までを結ぶ直線とがなす角の角度、つまり、カメラ１００ａ、１００ｂの上記任意の点に対する輻輳角を示す情報であってもよい。また、各パラメータ情報は、例えば、図７Ｄに示すように、各カメラ１００から三次元空間上の任意の点までの距離を示す情報であってもよい。また、各パラメータ情報は、例えば、図７Ｅに示すように、各カメラ１００から、各カメラ１００に共通する撮像対象となる三次元空間Ａ１の中心までの距離を示す情報であってもよい。なお、三次元空間Ａ１の中心とは、三次元空間Ａ１を鉛直方向から平面視したときの二次元形状における重心であってもよいし、三次元空間Ａ１の三次元形状における重心であってもよい。また、各パラメータ情報は、例えば、図７Ｆに示すように、システムの設計段階で定めた設計書、仕様書などに基づく各カメラ１００位置姿勢を示す情報であってもよい。
【００８６】
なお、図７Ａ〜図７Ｆを用いて説明した各パラメータ情報は、一例であり、パラメータ情報を構成する要素を限定するものではない。パラメータ情報は、校正が実行される時刻の撮像装置各々の位置姿勢を高精度に表現できていなくてもよく、人による推定結果をもとに得た情報でもよいし、センサにより測定された情報でもよいし、記憶部３０１に記憶されている別の時刻においてカメラ校正により算出された情報でもよいし、それらの組み合わせから構成される情報でもよい。また、パラメータ取得部３０２ｂは、制御装置２００からの校正指令を受け取る前に、事前にパラメータ情報を記憶部３０１に記憶してもよい。これにより、校正が必要と判断された際に、校正処理を開始できる。つまり、校正装置３００は、新たにパラメータ情報を取得することなく校正処理を開始できる。
【００８７】
前処理部３０２ｃは、画像前処理、またはマッチング前処理、またはそれらの組み合わせを実行する。画像前処理とは、例えば、明るさ調整、ノイズ除去、解像度変換、色空間変換、レンズ歪補正、射影変換、アフィン変換、エッジ強調処理、トリミング処理、またはこれらの組み合わせである。画像前処理は、画像取得部３０２ａにより取得された複数の画像に対して画像前処理を実行されればよいため、画像前処理を実行するタイミングは、校正処理が実行されるタイミングに合わせて行われていなくてもよく、事前に行われていてもよい。前処理部３０２ｃにより画像前処理が実行されることにより得られた前処理済みの複数の画像は、記憶部３０１に記憶されてもよい。
【００８８】
また、マッチング前処理とは、例えば、マッチングを行う画像の組み合わせを限定する処理である。これにより、後に記述のマッチング算出処理を効率的に実行することができる。なお、マッチング前処理は、パラメータ情報を用いて、実行してもよい。前処理部３０２ｃによりマッチング前処理が実行されることにより得られた情報は、記憶部３０１に記憶されてもよい。
【００８９】
なお、前処理部３０２ｃによる各前処理は、必ずしも実行されなくてもよい。このため、校正装置３００は、前処理部３０２ｃを有しない構成であってもよい。
【００９０】
探索窓生成部３０２ｄは、画像取得部３０２ａにより取得された複数の画像のそれぞれについて、パラメータ取得部３０２ｂにより取得された複数のパラメータ情報を用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を示す探索窓情報を生成する。探索窓は、画像から、当該探索窓の形状のパッチであって特徴量を記述するパッチを抽出することに用いられる。本実施の形態において、パッチとは、探索窓の形状で規定される領域であって、画像の一部領域を切り出した、元画像そのものも含む部分画像である。特に、画像上のキーポイントを中心にして抽出され、特徴量の記述に用いられるパッチは、特徴量パッチである。探索窓情報は、パッチを抽出するための探索窓の形状を示す情報を含み、探索窓の形状は、パラメータ情報をもとに探索窓基準形状を変形させることで算出される。なお、探索窓基準形状は、予め定められた形状であり、校正システム１０００の外部の装置、または記憶部３０１から得られる。
【００９１】
探索窓生成部３０２ｄは、具体的には、複数のパラメータ情報に基づいて、処理対象の画像を撮像した一の撮像装置が備えるカメラ１００ａ、および、他の撮像装置が備えるカメラ１００ｂの並び方向における、カメラ１００ａおよびカメラ１００ｂの間の位置姿勢が離れているほど、当該並び方向に略垂直な方向に長い形状を有する探索窓を生成する。本実施の形態では、カメラ１００ａおよびカメラ１００ｂは、水平方向に並んで配置されているものとする。このため、探索窓生成部３０２ｄは、鉛直方向に長い（以下では、「縦長」とも言う。）形状を有する探索窓を生成する。探索窓生成部３０２ｄは、例えば、パラメータ情報をもとに変数を抽出し、探索窓基準形状と抽出された変数とを用いて、変数が大きいほど縦長になるような探索窓の候補を算出し、算出された探索窓の候補を探索窓情報として生成する。なお、複数のカメラが鉛直方向に並んでいる場合には、探索窓生成部３０２ｄは、水平方向に長い形状を有する探索窓を生成する。
【００９２】
例えば、図８に示すように、パラメータ情報が、ある２台のカメラ、例えば、カメラ１００ａおよびカメラ１００ｂの間の相対的な位置姿勢の差が、２台のカメラの撮像方向が為す角の角度が９０°であることを示す情報であるとする。この場合、探索窓生成部３０２ｄは、探索窓の候補を算出するための変数θ（＞０）を、上記の９０°を用いてπ／２に決定する。このとき、探索窓生成部３０２ｄは、例えば、探索窓基準形状５００の高さを〔αθ＋β〕倍した形状の探索窓を第１探索窓候補５０１として生成し、探索窓基準形状５００の幅を〔α’（１／θ）＋β’〕倍した形状の探索窓を第２探索窓候補５０２として生成する。これにより、探索窓生成部３０２ｄは、第１探索窓候補５０１および第２探索窓候補５０２を含む探索窓情報５１０を生成する。
【００９３】
なお、第１探索窓候補５０１の形状の幅は、探索窓基準形状５００の幅と等しい。また、第２探索窓候補５０２の形状の高さは、探索窓基準形状５００の高さと等しい。α、α’、β、β’は、それぞれ０以上の任意の定数である。また、〔αθ＋β〕は、１より大きい値であり、〔α’（１／θ）＋β’〕は１より小さい値である。
【００９４】
探索窓生成部３０２ｄは、探索窓情報の生成において、カメラの位置姿勢の差に比例して大きくなる指標を変数θとして用いればよく、上記の２つのカメラの撮像方向が為す角の角度を変数θとして用いることに限らない。このように、探索窓生成部３０２ｄは、カメラの位置姿勢の差に比例して大きくなる指標を変数θとして用いることで、あるカメラの位置姿勢が他のカメラから離れているほど縦長形状の探索窓を算出することができる。なお、探索窓生成部３０２ｄは、探索窓の候補を１つ以上生成すればよく、上述したように２つの第１探索窓候補５０１および第２探索窓候補５０２を生成することに限定されるものではない。
【００９５】
また、探索窓の形状および算出方法は、上記に限定されるものではない。例えば、探索窓生成部３０２ｄは、形状およびサイズの少なくとも一方が異なる複数の探索窓を予め用意し、予め用意した複数の探索窓から撮像装置のパラメータ情報に応じた１以上の探索窓を選択することで、選択した１以上の探索窓を含む探索窓情報を生成してもよい。探索窓生成部３０２ｄは、パラメータ情報に応じて幾何学的な計算を行うことで探索窓を算出してもよい。
【００９６】
また、探索窓生成部３０２ｄは、制御装置２００から校正指令を受け取る前に、事前に探索窓情報を生成し、生成された探索窓情報を記憶部３０１に記憶していてもよい。これにより、校正装置３００は、校正が必要と判断された際に、校正処理を開始できる。つまり、校正装置３００は、校正が必要と判断された後に、探索窓情報を生成することなく校正処理を開始できる。
【００９７】
抽出部３０２ｅは、前処理部３０２ｃにより前処理が実行された後の複数の画像のそれぞれについて、キーポイント検出処理と、特徴量パッチ抽出処理と、特徴量記述処理とを実行する。これにより、抽出部３０２ｅは、複数の画像のそれぞれについて、複数の特徴点を抽出する。なお、抽出部３０２ｅは、校正装置３００が前処理部３０２ｃを有していない場合には、画像取得部３０２ａにより取得された複数の画像のそれぞれについて、上記の各処理を実行する。
【００９８】
キーポイント検出処理とは、処理対象の画像上の特徴的な点をキーポイントとして検出する処理である。キーポイント検出処理では、さらに、キーポイントのオリエンテーション方向を示すオリエンテーション情報が得られてもよい。例えば、図９の（ａ）に示すように、抽出部３０２ｅは、処理対象の画像５２０上の特徴的な点Ｐ１をキーポイントとして検出する。なお、図９では、説明の簡略化のために１つのキーポイントＰ１を検出する例を示しているが、実際のキーポイント検出処理では、複数のキーポイントが検出される。
【００９９】
特徴量パッチ抽出処理とは、探索窓生成部３０２ｄにより生成された探索窓情報を用いて、処理対象の画像から複数の特徴量パッチを抽出する処理である。特徴量パッチ抽出処理は、例えば、キーポイント検出処理において検出された複数のキーポイントのそれぞれについて、当該キーポイントが中心となるように、探索窓情報が示す１以上の探索窓を当該処理対象の画像上に配置することで１以上の特徴量パッチを抽出する処理である。これにより、処理対象の画像から複数の特徴量パッチが抽出される。
【０１００】
例えば、図９の（ｂ）に示すように、抽出部３０２ｅは、特徴量パッチの抽出のために、キーポイントＰ１のオリエンテーション情報が示すオリエンテーション方向Ｄ１に縦長の方向が一致するように、探索窓情報５１０に含まれる第１探索窓候補５０１および第２探索窓候補５０２を回転させる。そして、抽出部３０２ｅは、画像５２０上において、第１探索窓候補５０１の中心がキーポイントＰ１と一致する位置に第１探索窓候補５０１を配置する。同様に、抽出部３０２ｅは、画像５２０上において、第２探索窓候補５０２の中心がキーポイントＰ１と一致する位置に第２探索窓候補５０２を配置する。そして、抽出部３０２ｅは、第１探索窓候補５０１の形状によって画像５２０を切り出すことで特徴量パッチ５２１を抽出し、第２探索窓候補５０２の形状によって画像５２０を切り出すことで特徴量パッチ５２２を抽出する。これにより、抽出部３０２ｅは、特徴量パッチ５２１、５２２を含む特徴量パッチ情報５３０を生成する。このため、後述する特徴量記述処理において、より頑健な特徴量を抽出できる。
【０１０１】
なお、抽出部３０２ｅは、検出されたキーポイントのスケール情報を用いて探索窓をスケーリングしてから特徴量パッチを抽出してもよい。
【０１０２】
また、抽出部３０２ｅは、特徴量パッチ抽出処理において、キーポイントＰ１のオリエンテーション方向Ｄ１に合わせた回転、およびスケール情報を用いたスケーリングを用いて、探索窓に対する処理を実行しなくてもよい。抽出部３０２ｅは、特徴量パッチ抽出処理において、これらの探索窓に対する処理を行わずに特徴量パッチを抽出してもよいし、どちらか一方の処理を行うことで特徴量パッチを抽出してもよいし、両方の処理を行うことで特徴量パッチを抽出してもよい。
【０１０３】
特徴量記述処理とは、キーポイント検出処理において検出された複数のキーポイントのそれぞれについて、当該キーポイントに対応して抽出された特徴量パッチのそれぞれの特徴の分布を特徴量として算出し、当該キーポイントに算出された特徴の分布を記述することで特徴点を抽出する処理である。例えば、図１０に示すように、抽出部３０２ｅは、画像５２０から抽出された特徴量パッチ５２１に対して、特徴の分布を算出し、算出された特徴の分布を正規化する。これにより得られた結果を用いることにより、特徴量パッチのサイズによらずに、特徴量パッチ５２１と特徴量パッチ５４１との間の類似度を計算することが可能である。なお、抽出部３０２ｅは、特徴量パッチの全部または一部のサイズが統一されるように特徴量パッチの射影変換を行った後に、特徴量記述処理を行ってもよい。
【０１０４】
なお、抽出部３０２ｅは、例えば、ＳＩＦＴ（Scale-Invariant Feature Transform）アルゴリズムを用いることで、特徴点を抽出してもよい。
【０１０５】
マッチング算出部３０２ｆは、複数の画像のそれぞれについて抽出部３０２ｅにより抽出された複数の特徴点を用いて、複数の画像間で複数の特徴点のマッチングを行う。マッチング算出部３０２ｆは、複数の特徴点のうち、正規化された特徴の分布が類似する特徴点を互いに対応付けし、対応付けした特徴点を１つのマッチング結果として出力する。マッチング算出部３０２ｆは、特徴点の二乗誤差または絶対誤差を用いて特徴点が類似するか否かの判定を行う。例えば、図１１に示すように、マッチング算出部３０２ｆは、画像５２０において白丸で示される複数の特徴点と、画像５４０において白丸で示される複数の特徴点とを用いてマッチングを行うことで、画像５２０における特徴点Ｐ１Ａと画像５４０における特徴点Ｐ１Ｂとをマッチング点Ｐ１として対応付ける。マッチング算出部３０２ｆは、他の特徴点に対しても同様にマッチングを行うため、複数のマッチング点がマッチング結果として得られる。マッチング算出部３０２ｆにおいて出力されたマッチング結果は、例えば、記憶部３０１に記憶される。
【０１０６】
再構成部３０２ｇは、マッチング算出部３０２ｆで得られたマッチング結果に基づいて、校正処理を実行し、複数の撮像装置１０ａ〜１０ｎが備えるカメラ１００のパラメータを校正する。校正処理は、撮像装置１０ａ〜１０ｎが備えるカメラ１００それぞれによって撮像されることにより得られた複数のマッチング結果に基づき、エピポーラ制約などの幾何学的制約を用いることで撮像装置１０ａ〜１０ｎが備えるカメラ１００の外部パラメータ、または内部パラメータ、またはその両方を算出する。カメラ１００の外部パラメータ、または内部パラメータ、またはその両方は記憶部３０１に記憶されてもよい。また、記憶部３０１に記憶されたカメラの外部パラメータおよび内部パラメータは、異なる時刻の校正においてパラメータ取得部３０２ｂにより取得されてもよい。これにより、過去の時刻で得たカメラのパラメータを、パラメータ情報として用いて校正を実行できる。
【０１０７】
また、再構成部３０２ｇは、複数のマッチング結果からそれぞれのマッチング結果の三次元空間上における三次元位置を推定する。具体的には、再構成部３０２ｇは、三角測量法を利用することで複数のマッチング結果それぞれの三次元空間上における三次元位置を推定する。
【０１０８】
［２−４．その他］
以上、本実施の形態における校正システム１０００の構成について説明した。なお、これらの構成は上記の説明に限定されない。
【０１０９】
［３．校正システムの動作］
次に、本実施の形態における校正システム１０００による、校正の適時の実行を実現する動作について説明する。
【０１１０】
校正システム１０００では、校正を適時に実行するために撮像装置または周囲の環境に変化（イベント）が発生したときに、校正処理を実行するか否かが判定される。
【０１１１】
図１２は、本実施の形態における校正システム１０００による、校正をするか否かの判定を含む一連の動作を説明するためのシーケンス図である。なお、図１２における撮像装置１０は、図３に示される撮像装置１０ａ〜１０ｎの任意の一つを指す。
【０１１２】
制御装置２００において、イベント検出部２０２ｂは、撮像装置１０により撮像された映像を常時または所定の周期で撮像装置１０（またはカメラ１００）の状況および周囲の状況を取得し、これらの状況の変化を変化イベントとして検出する（Ｓ３１）。状況の変化とは、現状のカメラパラメータがカメラ１００の位置姿勢を正確に示さなくなる変化であり、具体的には、例えば、撮像領域の変化である。変化イベントの検出において撮像領域の変化の要因特定は必要なく、イベント検出部２０２ｂは、カメラ１００自体の移動、カメラ１００が設置されている架台１１０の移動、撮像装置１０が設置されている柱、台などの周囲物体の移動、またはカメラ１００の部材の劣化、またはそれらの組み合わせによる状況の変化を、校正処理を実行するための変化イベントとして検出する。また、状況の変化は、上記の撮像領域の変化に限定されない。
【０１１３】
また、制御装置２００において、イベント検出部２０２ｂは、校正処理が容易となる状況への変化を容易イベントとして検出する（Ｓ３２）。容易イベントとは、例えば、撮像装置１０の撮像対象の三次元空間Ａ１に人または車などの動物体が一定数以上存在する状況への変化である。つまり、容易イベントとは、撮像装置１０により撮像された画像に一定数未満の動物体が含まれる状況から一定数以上の動物体が含まれる状況への変化である。動物体が多く存在する状況が撮像された画像を用いることで、特徴点を数多く得ることが可能になり、校正結果の精度を向上できる。つまり、校正処理が容易となる。
【０１１４】
制御装置２００は、イベント検出部２０２ｂによる変化イベント検出後に容易イベントが検出されたタイミングで校正指令を行うことにより、校正が必要なタイミングで校正処理を実行し、精度よくカメラパラメータを求めることができる。制御装置２００は、イベント検出部２０２ｂにより変化イベントが検出された後（Ｓ３１でＹｅｓ）に容易イベントでないことが判定された場合（Ｓ３２でＮｏ）は、変化イベント検出済みの結果を保持しながら、撮像指示を撮像装置１０に出力することで撮像装置１０から撮像画像を受け取り、容易イベントが発生したか否かを再度判定する。イベント検出部２０２ｂにより容易イベントが検出されると（Ｓ３２でＹｅｓ）、イベント検出部２０２ｂは、校正情報を出力する。
【０１１５】
校正情報には、校正を実行させる対象であるカメラ１００（またはこのカメラ１００を含む撮像装置１０）および校正を実行させると判定した理由（上記のイベント）が含まれる。校正情報は、校正指令部２０２ｃに入力される。校正情報を受け取った校正指令部２０２ｃは、校正情報の内容に基づいて校正指令を生成し、生成した校正指令を適切なカメラ１００を含む撮像装置１０に送信する。
【０１１６】
また、校正情報は、例えばユーザインタフェース４００に送信されて、システム管理者等のユーザに提示されてもよい（Ｓ３３）。ユーザはこの情報に基づいて対象のカメラ１００に校正をさせるための指示を、ユーザインタフェース４００を介して入力する（Ｓ３４）。入力されたユーザの指示は、制御装置２００に送信される。
【０１１７】
撮像指示を受信した撮像装置１０のカメラ１００では、撮像処理が実行される。また、校正指令を受信した校正装置３００では、校正処理が実行される（Ｓ３５）。校正処理は、校正装置３００において校正指令に基づいて実行され、全ての撮像装置１０ａ〜１０ｎの外部パラメータの校正が実行される。なお、内部パラメータの校正を行う場合には、カメラ１００の制御部２０２において校正が実行されてもよい。制御装置２００は、校正処理が実行されることによって算出された校正結果としてのカメラパラメータを出力する（Ｓ３６）。
【０１１８】
次に、校正処理の具体例について説明する。
【０１１９】
図１３は、実施の形態１における校正処理の一例を示すフローチャートである。図１４は、実施の形態１における特徴点の抽出処理の一例を示すフローチャートである。
【０１２０】
本実施の形態における校正装置３００における校正処理では、まず、パラメータ取得部３０２ｂは、複数の撮像装置１０ａ〜１０ｎのそれぞれのパラメータに関するパラメータ情報を取得する（Ｓ４１）。
【０１２１】
次に、画像取得部３０２ａは、複数の撮像装置１０ａ〜１０ｎによりそれぞれ撮像された複数の画像を取得する（Ｓ４２）。なお、ステップＳ４２は、ステップＳ４１の前に行われてもよいし、ステップＳ４１と並行して行われてもよい。
【０１２２】
次に、前処理部３０２ｃは、複数の画像のそれぞれについて、前処理を実行する（Ｓ４３）。なお、上述しているが、前処理は、実行されなくてもよい。
【０１２３】
探索窓生成部３０２ｄは、前処理済みの複数の画像のそれぞれについて、取得された複数の撮像装置１０ａ〜１０ｎの複数のパラメータ情報を用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を示す探索窓情報を算出する（Ｓ４４）。
【０１２４】
抽出部３０２ｅは、前処理済みの複数の画像のそれぞれについて、複数の特徴点を抽出する（Ｓ４５）。抽出部３０２ｅは、前処理が実行されていない場合には、画像取得部３０２ａにより取得された複数の画像のそれぞれについて、特徴点の抽出処理を実行する。次に、特徴点の抽出処理の詳細について図１４を用いて説明する。
【０１２５】
特徴点の抽出処理では、まず、抽出部３０２ｅは、処理対象の画像について、複数のキーポイントを検出する（Ｓ５１）。
【０１２６】
次に、抽出部３０２ｅは、処理対象の画像について、検出された複数のキーポイントのそれぞれについて、当該キーポイントが中心となるように、探索窓情報が示す１以上の探索窓を処理対象の画像上に配置することで１以上の特徴量パッチを抽出する（Ｓ５２）。
【０１２７】
そして、抽出部３０２ｅは、処理対象の画像について、処理対象のキーポイントに対応して抽出された特徴量パッチのそれぞれの特徴の分布を特徴量として算出し、当該キーポイントに算出された特徴の分布を記述し、特徴量が記述された点を特徴点として抽出する（Ｓ５３）。
【０１２８】
マッチング算出部３０２ｆは、複数の画像のそれぞれについて抽出された複数の特徴点を用いて、複数の画像間で複数の特徴点のマッチングを行う（Ｓ４６）。
【０１２９】
再構成部３０２ｇは、マッチングにより得られた複数のマッチング結果に基づいて、複数の撮像装置１０ａ〜１０ｎが備えるカメラ１００のパラメータを校正する（Ｓ４７）。
【０１３０】
例えば、再構成部３０２ｇは、複数のマッチング結果のそれぞれの三次元空間上における三次元位置を推定する。そして、再構成部３０２ｇは、撮像領域を複数の撮像装置１０ａ〜１０ｎのカメラ１００で撮像した結果である複数の撮像画像から抽出された、三次元空間の位置が共通する特徴点をマッチングする。そして、マッチング結果を用いて、複数の撮像装置１０ａ〜１０ｎのカメラパラメータを算出する。具体的には、マッチング結果に基づきエピポーラ制約などの幾何学的制約を利用することで、複数の撮像装置１０ａ〜１０ｎのカメラパラメータは、求められる。
【０１３１】
［４．効果等］
以上のように、本実施の形態において、校正装置３００は、互いに異なる位置に設置された、各々が共通する三次元空間を撮像する複数の撮像装置１０ａ〜１０ｎが備えるカメラ１００のカメラパラメータを校正する。校正では、複数の撮像装置１０ａ〜１０ｎによりそれぞれ撮像された複数の画像を取得し、複数の撮像装置１０ａ〜１０ｎのそれぞれのパラメータに関するパラメータ情報を取得し、取得された複数の画像のそれぞれについて、取得された複数のパラメータ情報を用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を示す探索窓情報を生成し、取得された複数の画像のそれぞれについて、生成された探索窓情報を用いて複数の特徴点を抽出し、複数の画像のそれぞれについて抽出された複数の特徴点を用いて、複数の画像間で複数の特徴点のマッチングを行い、マッチングにより得られた複数のマッチング結果に基づいて、複数の撮像装置１０ａ〜１０ｎのパラメータを校正する。
【０１３２】
これによれば、複数の画像間でのマッチングを行うための複数の特徴点の抽出を、複数の撮像装置１０ａ〜１０ｎのパラメータ情報を用いて生成した探索窓情報を用いて行う。これにより、互いに異なる位置において撮像された結果であることを考慮して複数の画像から特徴点を抽出することができる。このため、マッチングの処理負荷を低減しつつ、マッチングの精度を向上することができる。よって、互いに異なる位置に配置されている複数の撮像装置１０ａ〜１０ｎが備える各カメラ１００のパラメータを精度よく校正することができる。
【０１３３】
また、本実施の形態において、複数のパラメータ情報のそれぞれは、当該パラメータ情報に対応する撮像装置の位置姿勢に関する情報であり、対応する撮像装置に対して過去の時刻に行われた校正により得られた情報であり、対応する撮像装置を識別するカメララベルを含む。このため、校正では、過去に得られたパラメータ情報を用いた校正を行うことで、複数の撮像装置１０ａ〜１０ｎのパラメータを効率よく校正することができる。
【０１３４】
また、本実施の形態において、複数のパラメータ情報のそれぞれは、当該パラメータ情報に対応する撮像装置の位置姿勢に関する情報であり、対応する撮像装置と他の撮像装置との間の相対的な位置姿勢に関する情報であり、対応する撮像装置を識別するカメララベルを含む。このため、校正では、対象となる撮像装置の他の撮像装置との間の相対的な位置姿勢に関する情報をパラメータ情報として用いた校正を行うことで、複数の撮像装置１０ａ〜１０ｎのパラメータを効率よく校正することができる。
【０１３５】
また、本実施の形態において、複数のパラメータ情報のそれぞれは、当該パラメータ情報に対応する撮像装置の位置姿勢に関する情報であり、対応する撮像装置から三次元空間上の任意の点までの距離を示す情報であり、対応する撮像装置を識別するカメララベルを含む。このため、校正では、対象となる撮像装置から三次元空間上の任意の点までの距離を示す情報をパラメータ情報として用いた校正を行うことで、複数の撮像装置１０ａ〜１０ｎのパラメータを効率よく校正することができる。
【０１３６】
また、本実施の形態において、探索窓情報の生成では、複数のパラメータ情報に基づいて、当該画像を撮像した一の撮像装置および他の撮像装置の並び方向における一の撮像装置および他の撮像装置の間の位置姿勢が離れているほど、並び方向に略垂直な方向に長い形状を有する探索窓を含む１以上の探索窓を算出する。このため、画像が撮像された撮像装置に応じた探索窓を算出することができ、複数の画像から特徴点を効果的に抽出することができる。
【０１３７】
また、本実施の形態において、複数の特徴点の抽出では、（ｉ）当該画像から複数のキーポイントを検出し、（ｉｉ）検出された複数のキーポイントのそれぞれについて、（ｉｉ−ｉ）当該キーポイントが中心となるように、探索窓情報が示す１以上の探索窓を当該画像上に配置することで１以上の特徴量パッチを抽出し、（ｉｉ−ｉｉ）当該キーポイントに対応して抽出された１以上の特徴量パッチのそれぞれの特徴の分布を特徴量として算出し、当該キーポイントに算出された特徴の分布を記述することで特徴点を抽出する。このため、複数の撮像装置１０ａ〜１０ｎのそれぞれのパラメータ情報に応じた特徴量を含む特徴点を複数抽出することができる。
【０１３８】
（実施の形態２）
本実施の形態に係る校正装置は、実施の形態１と同様に、互いに異なる位置に配置された複数の撮像装置に対し、それぞれが共通する三次元空間を撮像する複数の撮像装置のパラメータを校正する校正装置である。
【０１３９】
本実施の形態では、マッチング算出部３０２ｆにおける特徴点の対応候補を、記憶部３０１に記憶されている撮像装置１０ａ〜１０ｎのパラメータを用いて再構成した三次元モデルにより限定する。校正装置３００Ａの構成は、図１５に示すように実施の形態１の構成に、さらに三次元情報推定部３０３が追加された構成である。校正部３０２の構成は、実施の形態１と同様であるが、パラメータ取得部３０２ｂ、探索窓生成部３０２ｄ、マッチング算出部３０２ｆの機能および入出力が実施の形態１と異なる。以下、三次元情報推定部３０３および校正部３０２の各々の動作について説明する。
【０１４０】
校正部３０２のパラメータ取得部３０２ｂは、校正処理が実行されると、撮像装置１０ａ〜１０ｎが備えるカメラ１００のそれぞれのパラメータを示す第１パラメータ情報を、校正装置３００の外部装置または記憶部３０１から取得する。各カメラ１００のパラメータは、当該カメラ１００の内部パラメータおよび外部パラメータを含む。パラメータ取得部３０２ｂは、例えば、カメラ１００の内部パラメータおよび外部パラメータの両方を取得できた場合、それらパラメータを含む第１パラメータ情報を、三次元情報推定部３０３に出力する。第１パラメータ情報は、実施の形態１の図７Ｂにおける例示と同様に、各カメラ１００の位置姿勢に関する情報であり、対応する撮像装置について過去の時刻に行われた校正により得られた情報であり、対応する撮像装置を識別するカメララベルを含む。
【０１４１】
カメラパラメータが存在する場合でも、校正処理が実行される理由は、実施の形態１でも説明したように、撮影環境に設置された撮像装置１０ａ〜１０ｎの位置姿勢が、様々な要因で変化してしまうためである。様々な要因とは、例えば、建物や道路の振動、雨風、架台や設置場所の経年劣化である。これら要因に加え、過去の校正時からの経過時間や、画像以外で計算された情報の不確実性が存在する。すなわち、パラメータ取得部３０２ｂが取得したカメラ１００のパラメータは、校正処理実行時の時刻において低精度である可能性があるため、そのまま校正結果としては適切でない。よって、本実施の形態では、パラメータ取得部３０２ｂにより取得された第１パラメータ情報を手掛かりとして、特徴点マッチングを行う。
【０１４２】
なお、パラメータ取得部３０２ｂにより取得された第１パラメータ情報は、再構成部３０２ｇに入力されてもよい。再構成部３０２ｇに入力されることで、各々のパラメータを初期値として用いることができ、再構成部３０２ｇにおける計算の効率化が可能となる。
【０１４３】
三次元情報推定部３０３は、図１６の（ａ）に示すように、校正処理が実行されると、画像取得部３０２ａにより取得された複数の画像と、パラメータ取得部３０２ｂにより取得されたカメラ１００の第１パラメータ情報とに基づいて、三次元モデルを示す三次元情報を推定する。三次元情報とは、例えば、図１６の（ｂ）に示すような平面の組み合わせで表現さるような三次元メッシュモデルである。なお、三次元情報で示される三次元モデルは、三次元メッシュモデルでなくてもよく、点群でもよいし、ボクセルでもよい。また、三次元情報は深度画像でもよい。三次元情報は三次元空間上の物体に対して高精度な形状を推定しなくてもよく、例えば、点群モデルであれば、各点の位相関係が著しく損なわれていない程度の精度の形状を推定した結果であってもよい。
【０１４４】
そして、三次元情報推定部３０３は、図１６の（ｃ）に示すように、推定された三次元情報をパラメータ取得部３０２ｂにより取得された複数の第１パラメータ情報に追加することで複数の第２パラメータ情報を生成する。三次元情報推定部３０３は、生成された複数の第２パラメータ情報を探索窓生成部３０２ｄに出力する。
【０１４５】
探索窓生成部３０２ｄは、画像取得部３０２ａにより取得された複数の画像のそれぞれについて、三次元情報推定部３０３により出力された第２パラメータ情報に基づいて特徴点のマッチングの組合せを限定するための１以上の探索領域を示す探索領域情報を生成する。
【０１４６】
本実施の形態において探索領域情報は、例えば、図１７に示すように、マッチングにおける特徴点の対応付け候補を限定するための情報であって、第２パラメータ情報をもとに探索領域基準形状６００を変形させ、複数の画像のうちの２枚の画像５２０、５４０からなる画像ペアにおいて三次元空間上で対応する画像領域を求めることで算出される。具体的には、探索窓生成部３０２ｄは、第２パラメータ情報をもとに各画像ペアにおける水平方向、または鉛直方向、またはその両方の見え方の違いを表す変数、またはベクトルを抽出し、水平方向の違いが大きいほど横長になるような探索領域の候補を計算し、各画像ペアに対する探索領域をまとめて、探索領域情報６１０として算出する。
【０１４７】
探索窓生成部３０２ｄは、例えば、図１８に示すように、水平方向、鉛直方向それぞれの違いを表すベクトルθを抽出し、水平方向成分θｘ、鉛直方向成分θｙをもとに、幅を〔αθｘ＋β〕倍、高さを〔α’θｙ＋β’〕倍する。α、α’、β、β’は、それぞれ０以上の任意の定数である。このとき、探索窓生成部３０２ｄは、各方向の見え方の違いが大きくなるほど、水平方向成分θｘ、鉛直方向成分θｙ各々の値が比例して大きくなるように算出する。これにより、探索窓生成部３０２ｄは、θｘの値が大きいほど、横長になるような探索領域を抽出し、θｙの値が大きいほど縦長になるような探索領域を抽出する。
【０１４８】
なお、見え方の違いを表す変数は、１つ以上の値により構成されていてもよいし、複数の値により構成されていてもよい。例えば、探索窓生成部３０２ｄは、探索窓生成部３０２ｄが動作するよりも前に抽出部３０２ｅにより抽出された特徴点を用いて、特徴点数と同じ数の値により構成される変数を抽出してもよく、探索領域を特徴点の数だけ求めてもよい。また、探索窓生成部３０２ｄは、特徴点を画像座標における位置をもとにクラスタリングして得たクラスタの数だけ探索領域を求めてもよい。
【０１４９】
探索窓生成部３０２ｄは、実施の形態１と同じように特徴量パッチを抽出するための探索窓情報を算出してもよい。探索窓生成部３０２ｄは、特徴量パッチを抽出するための探索窓情報と、マッチングの対応点候補を限定するための探索領域情報とを、同時に算出してもよいし、異なるタイミングで算出してもよい。なお、探索窓生成部３０２ｄは、特徴量パッチを抽出するための探索窓情報の算出を必ずしも実行しなくてもよい。
【０１５０】
また、抽出部３０２ｅは、探索窓情報を取得せずに、固定サイズのパッチ、またはキーポイントのオリエンテーション情報、スケール情報によりリサイズされたパッチを用いて特徴点を抽出してもよい。
【０１５１】
マッチング算出部３０２ｆは、探索窓生成部３０２ｄにより生成された探索領域情報を用いて、抽出された複数の特徴点から特徴点のマッチングの候補を絞り込み、候補として絞り込まれた複数の特徴点を用いて、複数の画像間で複数の特徴点のマッチングを行う。マッチングの候補の絞り込みとは、特徴点の対応候補を限定する処理で有り、画像ペアに対する探索領域情報より、マッチングを計算する特徴点の組み合わせを、対応する探索領域上の特徴点同士に限定することである。
【０１５２】
例えば図１９に示すように画像５４０の円で囲まれた探索領域ＤｉＡ上に存在する特徴点Ｐ１１Ａと、三次元空間上で近い位置を示す画像５２０の楕円で囲まれた探索領域ＤｉＢ上に存在する特徴点Ｐ１１Ｂの組み合わせのみの対応付けを行い、同様に探索領域ＤｊＡ上に存在する特徴点Ｐ１２Ａ、Ｐ１３Ａと、探索領域ＤｊＢ上に存在する特徴点Ｐ１３Ｂ、Ｐ１４Ｂ、Ｐ１５Ｂとの組み合わせのみ対応付けを行うことで、マッチングを算出する。つまり、複数の画像のうちの画像５４０における第１探索領域ＤｉＡ、ＤｊＡと、画像５２０における第２探索領域ＤｉＢ、ＤｊＢとは、それぞれ、三次元空間上の領域に対応している。マッチング算出部３０２ｆは、第１探索領域ＤｉＡに含まれる第１特徴点Ｐ１１Ａと、第１探索領域ＤｉＡと三次元空間上の共通する領域で対応する第２探索領域ＤｉＢに含まれる第２特徴点Ｐ１１Ｂとを、マッチングの候補として絞り込み、第１特徴点Ｐ１１Ａと第２特徴点Ｐ１１Ｂとを用いてマッチングを行う。同様に、マッチング算出部３０２ｆは、第１探索領域ＤｊＡに含まれる第１特徴点Ｐ１２Ａ、Ｐ１３Ａと、第１探索領域ＤｊＡと三次元空間上の共通する領域で対応する第２探索領域ＤｊＢに含まれる第２特徴点Ｐ１３Ｂ、Ｐ１４Ｂ、Ｐ１５Ｂとを、マッチングの候補として絞り込み、第１特徴点Ｐ１２Ａ、Ｐ１３Ａと第２特徴点Ｐ１３Ｂ、Ｐ１４Ｂ、Ｐ１５Ｂとを用いてマッチングを行う。
【０１５３】
また、マッチング算出部３０２ｆは、第１特徴点Ｐ１１Ａと、画像５２０における第２特徴点Ｐ１１Ｂ以外の特徴点とを用いてマッチングを行わない。同様に、マッチング算出部３０２ｆは、第１特徴点Ｐ１２Ａ、Ｐ１３Ａと、画像５２０における第２特徴点Ｐ１３Ｂ、Ｐ１４Ｂ、Ｐ１５Ｂ以外の特徴点とを用いてマッチングを行わない。同様に、マッチング算出部３０２ｆは、画像５４０における第１特徴点Ｐ１１Ａ以外の特徴点と、第２特徴点Ｐ１１Ｂとを用いてマッチングを行わない。同様に、マッチング算出部３０２ｆは、画像５４０における第１特徴点Ｐ１２Ａ、Ｐ１３Ａ以外の特徴点と、第２特徴点Ｐ１３Ｂ、Ｐ１４Ｂ、Ｐ１５Ｂとを用いてマッチングを行わない。
【０１５４】
このように、マッチングを算出することで、効率よく、かつ精度が良いマッチング結果を得られる。特に、画像５４０上の特徴点Ｐ１２Ａ、Ｐ１４Ａのように車の前輪と後輪などの似たようなパターン上に特徴点が存在する場合の対応付けには、有効である。
【０１５５】
以上のように、本実施の形態において、校正装置３００は、互いに異なる位置に設置された、各々が共通する三次元空間を撮像する複数の撮像装置１０ａ〜１０ｎが備えるカメラ１００のカメラパラメータを校正する。校正では、複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、複数の撮像装置のそれぞれについて、当該撮像装置のパラメータに関する第１パラメータ情報を取得し、取得された複数の画像と、取得された複数の第１パラメータ情報とに基づいて、三次元空間上における三次元情報を推定し、推定された三次元情報を複数の第１パラメータ情報に追加することで得られた複数の第２パラメータ情報を出力し、取得された複数の画像のそれぞれについて、出力された複数の第２パラメータ情報に基づいて特徴点のマッチングの組合せを限定するための１以上の探索領域を示す探索領域情報を生成し、複数の画像のそれぞれについて、複数の特徴点を抽出し、生成された探索領域情報を用いて、抽出された複数の特徴点から特徴点のマッチングの候補を絞り込み、候補として絞り込まれた複数の特徴点を用いて、複数の画像間で複数の特徴点のマッチングを行い、マッチングにより得られた複数のマッチング結果に基づいて、複数の撮像装置のパラメータを校正する。
【０１５６】
（変形例１）
上記実施の形態では、探索窓生成部３０２ｄは、探索窓の形状を、パラメータ情報をもとに探索窓基準形状を変形させることで算出するとしたが、これに限らない。探索窓生成部３０２ｄは、画像取得部３０２ａにより取得された複数の画像のうちの１つの画像５４０に対して物体の形状を認識するための画像処理を行うことで、認識された物体の形状の領域を画像５４０から分割してもよい。つまり、探索窓生成部３０２ｄは、取得された複数の画像のそれぞれについて、映り込んでいる物体の形状を認識し、当該形状を囲む探索窓を生成する。
【０１５７】
図２０の例では、探索窓生成部３０２ｄは、画像５４０において、家が映り込んでいる形状の領域６０１、および、車両が映り込んでいる形状の領域６０２を認識し、認識した領域６０１、６０２を画像５４０から領域分割する。領域６０１、６０２の形状は、図２０に示すように画像５４０中の画素単位で抽出されてもよいし、認識された物体を囲う所定の形状であってもよい。所定の形状は、例えば、四角形、円形、楕円形などである。物体の形状の認識は、例えば、機械学習とパターン認識で実現されるが、物体の形状の認識の実現手段は、これらに限らない。
【０１５８】
次に、探索窓生成部３０２ｄは、画像５４０から領域分割された領域６０１、６０２の形状、サイズおよび位置を、画像５４０を撮像したカメラと、画像５２０を撮像したカメラとのパラメータ情報を用いて、画像５２０に適した形状、サイズおよび位置の領域６１１、６１２に変形する。そして、探索窓生成部３０２ｄは、変形して得られた領域６１１、６１２を探索窓として画像５２０に適用する。このようにして、探索窓生成部３０２ｄは、画像５４０および画像５２０の間で対応付けられた、領域６０１および領域６１１の探索窓のペアと、領域６０２および領域６１２の探索窓のペアとを生成してもよい。
【０１５９】
（変形例２）
上記の実施の形態において、探索窓生成部３０２ｄは、各画像の領域毎に、異なる形状の探索窓を生成してもよい。例えば、探索窓生成部３０２ｄは、図２１に示すように、探索窓を適用する領域のサイズ（面積）が所定のサイズよりも小さい場合に円形または楕円形の探索窓６０３、６１３を生成し、探索窓を適用する領域のサイズが所定のサイズよりも大きい場合に矩形の探索窓６０４、６１４を生成してもよい。このように、探索窓生成部３０２ｄは、画像５４０に適用する探索窓として異なる形状の探索窓６０３および探索窓６０４を生成し、画像５２０に適用する探索窓として異なる形状の探索窓６１３および探索窓６１４を生成してもよい。
【０１６０】
（変形例３）
上記実施の形態では、探索窓生成部３０２ｄは、図２２に示すように、画像５４０、５２０において、それぞれ探索窓６０５、６１５を一旦生成した後に、生成した探索窓６０５、６１５の少なくとも一方の形状を変更してもよい。例えば、探索窓生成部３０２ｄは、画像５２０に適用する探索窓について、矩形の探索窓６１５から円形の探索窓６１６に変更してもよい。探索窓６１６は、例えば、矩形の探索窓６１５の外接円である。探索窓生成部３０２ｄは、生成した探索窓６０５、６１５を用いて、画像５４０、５２０からそれぞれ抽出された２つの特徴量パッチ間の類似度が所定の類似度より小さい場合、探索窓６１５を探索窓６１６に変更してもよい。そして、探索窓６０５を用いて画像５４０から抽出された特徴量パッチと、変更後の探索窓６１６を用いて画像５２０から抽出された特徴量パッチとの類似度の算出を再度行ってもよい。
【０１６１】
なお、探索窓生成部３０２ｄは、生成した探索窓６１５の形状を変更する代わりに探索窓６１５のサイズを探索窓６１５より大きなサイズに変更してもよい。また、探索窓生成部３０２ｄは、画像５４０を撮像したカメラと、画像５２０を撮像したカメラとのパラメータ情報の精度に応じて、探索窓６１５の変更を行ってもよい。例えば、探索窓生成部３０２ｄは、パラメータ情報が図７Ａに示すように人の目視による位置姿勢の差に基づくパラメータ情報である場合、パラメータ情報の精度が所定の精度より低いため、類似する特徴点の探索に用いる探索窓を、探索窓６１５から探索窓６１６に変更してもよい。反対に、探索窓生成部３０２ｄは、パラメータ情報が図７Ｂに示すように過去の構成結果により得られたパラメータ情報である場合に、パラメータ情報の精度が所定の精度より高いため、類似する特徴点の探索に用いる探索窓を、探索窓６１６に変更せずに探索窓６１５に決定してもよい。
【０１６２】
また、本開示はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【０１６３】
なお、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記各実施の形態の撮像システムなどを実現するソフトウェアは、次のようなプログラムである。
【０１６４】
すなわち、このプログラムは、コンピュータに、互いに異なる位置に配置されており、それぞれが共通する三次元空間を撮像する複数の撮像装置の複数のパラメータを、プロセッサを用いて校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、前記複数の撮像装置のそれぞれのパラメータに関するパラメータ情報を取得し、取得された前記複数の画像のそれぞれについて、取得された複数の前記パラメータ情報を用いて当該画像の複数の特徴点を抽出するための１以上の探索窓を示す探索窓情報を生成し、取得された前記複数の画像のそれぞれについて、生成された前記探索窓情報を用いて前記複数の特徴点を抽出し、前記複数の画像のそれぞれについて抽出された前記複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する校正方法を実行させる。
【０１６５】
また、このプログラムは、コンピュータに、互いに異なる位置に配置されており、それぞれが共通する三次元空間を撮像する複数の撮像装置の複数のパラメータを校正する校正方法であって、前記複数の撮像装置によりそれぞれ撮像された複数の画像を取得し、前記複数の撮像装置のそれぞれについて、当該撮像装置のパラメータを示す第１パラメータ情報を取得し、取得された前記複数の画像と、取得された複数の前記第１パラメータ情報とに基づいて、前記三次元空間上における三次元情報を推定し、推定された前記三次元情報を前記複数の第１パラメータ情報に追加することで得られた複数の第２パラメータ情報を出力し、取得された前記複数の画像のそれぞれについて、出力された前記複数の第２パラメータ情報に基づいて特徴点のマッチングの組合せを限定するための１以上の探索領域を示す探索領域情報を生成し、前記複数の画像のそれぞれについて、複数の特徴点を抽出し、生成された前記探索領域情報を用いて、抽出された前記複数の特徴点から特徴点のマッチングの候補を絞り込み、前記候補として絞り込まれた複数の特徴点を用いて、前記複数の画像間で前記複数の特徴点のマッチングを行い、前記マッチングにより得られた複数のマッチング結果に基づいて、前記複数の撮像装置のパラメータを校正する校正方法を実行させる。
【０１６６】
以上、本発明の一つまたは複数の態様に係る構成システムおよび校正方法について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【０１６７】
本開示は、互いに異なる位置に配置されている複数の撮像装置が備える各カメラのパラメータを精度よく校正することができる校正方法、構成装置などとして有用である。
【符号の説明】
【０１６８】
１０、１０ａ〜１０ｎ  撮像装置
２０  道路
２１  車両
２２  三次元モデル
１００  カメラ
１０１  記憶部
１０２  制御部
１０３  光学系
１０４  イメージセンサ
１１０  架台
２００  制御装置
２０１  記憶部
２０２  制御部
２０２ａ  撮像制御部
２０２ｂ  イベント検出部
２０２ｃ  校正指令部
２０３  タイマー
３００、３００Ａ  校正装置
３０１  記憶部
３０２  校正部
３０２ａ  画像取得部
３０２ｂ  パラメータ取得部
３０２ｃ  前処理部
３０２ｄ  探索窓生成部
３０２ｅ  抽出部
３０２ｆ  マッチング算出部
３０２ｇ  再構成部
３０３  三次元情報推定部
４００  ユーザインタフェース
５２０、５４０  画像
６０１、６０２、６１１、６１２  領域
６０３〜６０５、６１３〜６１６  探索窓
１０００  校正システム
Ａ１  三次元空間
Ｐ１Ａ、Ｐ１Ｂ、Ｐ１１Ａ〜Ｐ１４Ａ、Ｐ１１Ｂ〜Ｐ１５Ｂ  特徴点
ＤｉＡ、ＤｉＢ、ＤｊＡ、ＤｊＢ  探索領域
Ｐ１  マッチング点
【図１】
2020153264.tif 000003
【図２】
2020153264.tif 000004
【図３】
2020153264.tif 000005
【図４】
2020153264.tif 000006
【図５】
2020153264.tif 000007
【図６】
2020153264.tif 000008
【図７Ａ】
2020153264.tif 000009
【図７Ｂ】
2020153264.tif 000010
【図７Ｃ】
2020153264.tif 000011
【図７Ｄ】
2020153264.tif 000012
【図７Ｅ】
2020153264.tif 000013
【図７Ｆ】
2020153264.tif 000014
【図８】
2020153264.tif 000015
【図９】
2020153264.tif 000016
【図１０】
2020153264.tif 000017
【図１１】
2020153264.tif 000018
【図１２】
2020153264.tif 000019
【図１３】
2020153264.tif 000020
【図１４】
2020153264.tif 000021
【図１５】
2020153264.tif 000022
【図１６】
2020153264.tif 000023
【図１７】
2020153264.tif 000024
【図１８】
2020153264.tif 000025
【図１９】
2020153264.tif 000026
【図２０】
2020153264.tif 000027
【図２１】
2020153264.tif 000028
【図２２】
2020153264.tif 000029
【国際調査報告】
2020153264.tif 000030
2020153264.tif 000031
2020153264.tif 000032
2020153264.tif 000033
2020153264.tif 000034
2020153264.tif 000035
2020153264.tif 000036
2020153264.tif 000037
2020153264.tif 000038