(57)【要約】【課題】カメラの位置及び向きのずれに容易に対応する。【解決手段】画像合成装置１０は、カメラ１２及びカメラ１４の各々で得られ、同一の領域が撮影された重複領域を有する画像５１及び画像５３を取得する取得部２１と、カメラ１２とカメラ１４との位置及び向きの相対関係を示すカメラパラメータ７１を用いて、１画像５１と画像５３とを合成する合成部２３と、画像５１と画像５３とに対して重複領域における特徴点マッチングを行うマッチング部２５と、特徴点マッチングの結果を用いて、画像５１と画像５３との位置及び向きの相対関係を示すカメラパラメータ７２を算出するカメラパラメータ算出部２６と、カメラパラメータ７２を用いて、カメラ１２とカメラ１４との実際の位置及び向きの相対関係と、カメラパラメータ７１との差を低減する調整処理を行う調整部２７とを備える。【選択図】図３
2019180016.tif 000002
【特許請求の範囲】
【請求項１】
第１カメラ及び第２カメラの各々で得られ、同一の領域が撮影された重複領域を有する第１画像及び第２画像を取得する取得部と、
前記第１カメラと前記第２カメラとの位置及び向きの相対関係を示す第１カメラパラメータを用いて、前記第１画像と前記第２画像とを合成する合成部と、
前記第１画像と前記第２画像とに対して前記重複領域における特徴点マッチングを行うマッチング部と、
前記特徴点マッチングの結果を用いて、前記第１画像と前記第２画像との位置及び向きの相対関係を示す第２カメラパラメータを算出するカメラパラメータ算出部と、
前記第２カメラパラメータを用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記第１カメラパラメータとの差を低減する調整処理を行う調整部とを備える
画像合成装置。
【請求項２】
前記カメラパラメータ算出部は、前記第１画像及び前記第２画像とカメラパラメータとから、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記カメラパラメータとのずれを示す評価値を算出するための評価関数を用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係とカメラパラメータとのずれが最小となるカメラパラメータを前記第２カメラパラメータとして算出する
請求項１記載の画像合成装置。
【請求項３】
前記評価値は、前記第１画像及び前記第２画像における、前記特徴点マッチングの結果で示される特徴点対を三次元空間に投影した場合における、前記三次元空間における前記特徴点対の距離を示す
請求項２記載の画像合成装置。
【請求項４】
前記調整部は、前記第１カメラパラメータを、前記第２カメラパラメータを用いて更新し、
前記合成部は、更新された前記第１カメラパラメータを用いて前記第１画像と前記第２画像とを合成する
請求項１〜３のいずれか１項に記載の画像合成装置。
【請求項５】
前記調整部は、前記第１カメラパラメータと前記第２カメラパラメータとの差に基づき、前記第１カメラと前記第２カメラとの位置及び向きの相対関係が前記第１カメラパラメータに近づくように、前記第１カメラ及び前記第２カメラの少なくとも一方の位置及び向きを調整し、
前記合成部は、調整された前記第１カメラ及び前記第２カメラで得られた前記第１画像及び前記第２画像を、前記第１カメラパラメータを用いて合成する
請求項１〜３のいずれか１項に記載の画像合成装置。
【請求項６】
前記取得部は、複数の時刻における前記第１画像及び前記第２画像を取得し、
前記マッチング部は、時刻ごとに、前記第１画像及び前記第２画像に対して前記特徴点マッチングを行い、
前記カメラパラメータ算出部は、複数の時刻の前記特徴点マッチングの結果を用いて前記第２カメラパラメータを算出し、
前記調整部は、算出された前記第２カメラパラメータを用いて前記調整処理を行う
請求項１〜５のいずれか１項に記載の画像合成装置。
【請求項７】
前記複数の時刻の特徴点マッチングの結果うち、精度が基準値より高い特徴点マッチングの結果を記憶するマッチング情報記憶部を備える
請求項６記載の画像合成装置。
【請求項８】
前記取得部は、複数の時刻における前記第１画像及び前記第２画像を取得し、
前記マッチング部は、時刻ごとに、前記第１画像及び前記第２画像に対して前記特徴点マッチングを行い、
前記カメラパラメータ算出部は、時刻ごとに、当該時刻の前記特徴点マッチングの結果を用いて前記第２カメラパラメータを算出し、
前記調整部は、複数の時刻に対して算出された複数の前記第２カメラパラメータを用いて前記調整処理を行う
請求項１〜５のいずれか１項に記載の画像合成装置。
【請求項９】
前記調整部は、前記複数の時刻に対して算出された複数の第２カメラパラメータのうち、精度が基準値より高い第２カメラパラメータを用いて前記調整処理を行う
請求項８記載の画像合成装置。
【請求項１０】
第１カメラ及び第２カメラの各々で得られ、同一の領域が撮影された重複領域を有する第１画像及び第２画像を取得する取得ステップと、
前記第１カメラと前記第２カメラとの位置及び向きの相対関係を示す第１カメラパラメータを用いて、前記第１画像と前記第２画像とを合成する合成ステップと、
前記第１画像と前記第２画像とに対して前記重複領域における特徴点マッチングを行うマッチングステップと、
前記特徴点マッチングの結果を用いて、前記第１画像と前記第２画像との位置及び向きの相対関係を示す第２カメラパラメータを算出するカメラパラメータ算出ステップと、
前記第２カメラパラメータを用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記第１カメラパラメータとの差を低減する調整処理を行う調整ステップとを含む
画像合成方法。
【請求項１１】
請求項１０記載の画像合成方法をコンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、複数の画像を合成する画像合成装置、画像合成方法及びプログラムに関する。
【背景技術】
【０００２】
車両が備える複数のカメラによって車両の周辺が撮影された複数の画像を合成し、得られた画像を表示する装置がある（例えば、特許文献１及び特許文献２を参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−７０８１４号公報
【特許文献２】特許第３９６８３７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このような画像合成装置では、複数のカメラの位置及び向き（向き）にずれが生じた場合には、得られる合成画像にもずれが生じてしまう。
【０００５】
そこで、本開示は、カメラの位置及び向きのずれに容易に対応できる画像合成装置又は画像合成方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本開示の一態様に係る画像合成装置は、第１カメラ及び第２カメラの各々で得られ、同一の領域が撮影された重複領域を有する第１画像及び第２画像を取得する取得部と、前記第１カメラと前記第２カメラとの位置及び向きの相対関係を示す第１カメラパラメータを用いて、前記第１画像と前記第２画像とを合成する合成部と、前記第１画像と前記第２画像とに対して前記重複領域における特徴点マッチングを行うマッチング部と、前記特徴点マッチングの結果を用いて、前記第１画像と前記第２画像との位置及び向きの相対関係を示す第２カメラパラメータを算出するカメラパラメータ算出部と、前記第２カメラパラメータを用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記第１カメラパラメータとの差を低減する調整処理を行う調整部とを備える。
【０００７】
なお、これらの全般的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【発明の効果】
【０００８】
本開示は、カメラの位置及び向きのずれに容易に対応できる画像合成装置又は画像合成方法を提供できる。
【図面の簡単な説明】
【０００９】
【図１】図１は、実施の形態に係る車両の一例を示す模式図である。
【図２】図２は、実施の形態に係る合成前の画像と合成後の画像を示す図である。
【図３】図３は、実施の形態に係る画像合成装置のブロック図である。
【図４】図４は、実施の形態に係る画像合成処理のフローチャートである。
【図５】図５は、実施の形態に係るカメラで得られた画像の一例を示す図である。
【図６】図６は、実施の形態に係るマッチング処理を説明するための図である。
【図７】図７は、実施の形態に係る誤差評価関数を説明するための図である。
【図８】図８は、実施の形態に係る誤差評価関数を説明するための図である。
【図９】図９は、実施の形態に係る画像合成処理を説明するための図である。
【図１０】図１０は、実施の形態の変形例１に係る画像合成装置のブロック図である。
【図１１】図１１は、実施の形態の変形例１に係るキャリブレーション処理のフローチャートである。
【図１２】図１２は、実施の形態の変形例２に係る画像合成装置のブロック図である。
【図１３】図１３は、実施の形態の変形例２に係る画像合成処理のフローチャートである。
【発明を実施するための形態】
【００１０】
本開示の一態様に係る画像合成装置は、第１カメラ及び第２カメラの各々で得られ、同一の領域が撮影された重複領域を有する第１画像及び第２画像を取得する取得部と、前記第１カメラと前記第２カメラとの位置及び向きの相対関係を示す第１カメラパラメータを用いて、前記第１画像と前記第２画像とを合成する合成部と、前記第１画像と前記第２画像とに対して前記重複領域における特徴点マッチングを行うマッチング部と、前記特徴点マッチングの結果を用いて、前記第１画像と前記第２画像との位置及び向きの相対関係を示す第２カメラパラメータを算出するカメラパラメータ算出部と、前記第２カメラパラメータを用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記第１カメラパラメータとの差を低減する調整処理を行う調整部とを備える。
【００１１】
これによれば、当該画像合成装置は、重複領域に対する特徴点マッチングにより第２カメラパラメータを算出し、当該第２カメラパラメータを用いて、カメラの実際の位置及び向きと、合成に用いる第１カメラパラメータとののずれを低減できる。このように、当該画像合成装置は、カメラの位置及び向きのずれに容易に対応できる。
【００１２】
例えば、前記カメラパラメータ算出部は、前記第１画像及び前記第２画像とカメラパラメータとから、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記カメラパラメータとのずれを示す評価値を算出するための評価関数を用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係とカメラパラメータとのずれが最小となるカメラパラメータを前記第２カメラパラメータとして算出してもよい。
【００１３】
例えば、前記評価値は、前記第１画像及び前記第２画像における、前記特徴点マッチングの結果で示される特徴点対を三次元空間に投影した場合における、前記三次元空間における前記特徴点対の距離を示してもよい。
【００１４】
例えば、前記調整部は、前記第１カメラパラメータを、前記第２カメラパラメータを用いて更新し、前記合成部は、更新された前記第１カメラパラメータを用いて前記第１画像と前記第２画像とを合成してもよい。
【００１５】
例えば、前記調整部は、前記第１カメラパラメータと前記第２カメラパラメータとの差に基づき、前記第１カメラと前記第２カメラとの位置及び向きの相対関係が前記第１カメラパラメータに近づくように、前記第１カメラ及び前記第２カメラの少なくとも一方の位置及び向きを調整し、前記合成部は、調整された前記第１カメラ及び前記第２カメラで得られた前記第１画像及び前記第２画像を、前記第１カメラパラメータを用いて合成してもよい。
【００１６】
例えば、前記取得部は、複数の時刻における前記第１画像及び前記第２画像を取得し、前記マッチング部は、時刻ごとに、前記第１画像及び前記第２画像に対して前記特徴点マッチングを行い、前記カメラパラメータ算出部は、複数の時刻の前記特徴点マッチングの結果を用いて前記第２カメラパラメータを算出し、前記調整部は、算出された前記第２カメラパラメータを用いて前記調整処理を行ってもよい。
【００１７】
これによれば、当該画像合成装置は、複数時刻のマッチング特徴点対を用いることでカメラパラメータの精度を向上できる。
【００１８】
例えば、前記複数の時刻の特徴点マッチングの結果うち、精度が基準値より高い特徴点マッチングの結果を記憶するマッチング情報記憶部を備えてもよい。
【００１９】
これによれば、当該画像合成装置は、精度の高いマッチング特徴点対を用いることでカメラパラメータの精度を向上できる。
【００２０】
例えば、前記取得部は、複数の時刻における前記第１画像及び前記第２画像を取得し、前記マッチング部は、時刻ごとに、前記第１画像及び前記第２画像に対して前記特徴点マッチングを行い、前記カメラパラメータ算出部は、時刻ごとに、当該時刻の前記特徴点マッチングの結果を用いて前記第２カメラパラメータを算出し、前記調整部は、複数の時刻に対して算出された複数の前記第２カメラパラメータを用いて前記調整処理を行ってもよい。
【００２１】
これによれば、当該画像合成装置は、複数時刻の画像を用いることでカメラパラメータの精度を向上できる。
【００２２】
例えば、前記調整部は、前記複数の時刻に対して算出された複数の第２カメラパラメータのうち、精度が基準値より高い第２カメラパラメータを用いて前記調整処理を行ってもよい。
【００２３】
これによれば、当該画像合成装置は、精度の高いマッチング結果を用いることでカメラパラメータの精度を向上できる。
【００２４】
本開示の一態様に係る画像合成方法、第１カメラ及び第２カメラの各々で得られ、同一の領域が撮影された重複領域を有する第１画像及び第２画像を取得する取得ステップと、前記第１カメラと前記第２カメラとの位置及び向きの相対関係を示す第１カメラパラメータを用いて、前記第１画像と前記第２画像とを合成する合成ステップと、前記第１画像と前記第２画像とに対して前記重複領域における特徴点マッチングを行うマッチングステップと、前記特徴点マッチングの結果を用いて、前記第１画像と前記第２画像との位置及び向きの相対関係を示す第２カメラパラメータを算出するカメラパラメータ算出ステップと、前記第２カメラパラメータを用いて、前記第１カメラと前記第２カメラとの実際の位置及び向きの相対関係と、前記第１カメラパラメータとの差を低減する調整処理を行う調整ステップとを含む。
【００２５】
これによれば、当該画像合成方法は、重複領域に対する特徴点マッチングにより第２カメラパラメータを算出し、当該第２カメラパラメータを用いて、カメラの実際の位置及び向きと、合成に用いる第１カメラパラメータとののずれを低減できる。このように、当該画像合成方法は、カメラの位置及び向きのずれに容易に対応できる。
【００２６】
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なＣＤ−ＲＯＭなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【００２７】
（実施の形態）
以下、実施の形態について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本開示の一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本開示を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【００２８】
図１は、本実施の形態に係る車両１の一例を示す模式図である。図２は、本実施の形態に係る画像合成装置１０による合成前の画像と合成後の画像とを示す説明図である。
【００２９】
図１に示されるように、車両１は、画像合成装置１０と、カメラ１２、１３及び１４と、電子ミラー４０とを備える。なお、以降の説明において特に断らない場合には、前後左右の方向は、車両１の進行方向を前方とした場合の方向とし、これは車両１の運転手にとっての前後左右の方向ともいえる。
【００３０】
カメラ１２は、車両１の左側ドア付近に固定され、車両１の左側後方を撮影するカメラである。カメラ１２は、車両１の左側後方を撮影して画像５１を生成する。カメラ１２が生成した画像５１を左側後方画像ともいう。
【００３１】
カメラ１３は、車両１の右側ドア付近に固定され、車両１の右側後方を撮影するカメラである。カメラ１３は、車両１の右側後方を撮影して画像５２を生成する。カメラ１３が生成した画像５２を右側後方画像ともいう。
【００３２】
カメラ１４は、車両１のリアバンパー又はトランクフード付近に固定され、車両１の中央後方を撮影するカメラである。カメラ１４は、車両１の中央後方を撮影して画像５３を生成する。カメラ１４が生成した画像５３を中央後方画像ともいう。
【００３３】
カメラ１２及び１４の撮影範囲の一部が重なっており、カメラ１３及び１４の撮影範囲の一部が重なっている。そのため、左側後方画像と中央後方画像との一部には共通の対象が映っている。また、右側後方画像と中央後方画像との一部には共通の対象が映っている。
【００３４】
カメラ１２、１３及び１４のそれぞれは、互いに異なる撮影条件の下で撮像することで画像を生成する。具体的には、カメラ１２、１３及び１４のそれぞれは、互いに異なる位置に配置され、また、互いに異なる方向を向いて配置されており、例えば６０ｆｐｓで画像を取得する。また、カメラ１２、１３及び１４のそれぞれの光学系の光学特性は異なっていてもよい。
【００３５】
電子ミラー４０は、車両１の後方が映った画像である後方画像５０を表示する画像表示装置である。電子ミラー４０は、画像合成装置１０が出力する映像信号に基づいて画像を表示する。電子ミラー４０は、車両１の後方を、光の反射を利用して映す従来のルームミラーの代用として用いられ得る。
【００３６】
画像合成装置１０は、カメラ１２、１３及び１４それぞれが生成した画像５１、５２及び５３を合成して電子ミラー４０が表示する画像５０を生成する装置である。図２は、画像５０〜５３の一例を示す図である。
【００３７】
以降において、画像合成装置１０の機能及び処理を説明する。なお、以下で説明する本実施の形態に係る手法は、少なくとも２つの画像を合成する場合に適用できる。以下では、画像５１と画像５３とを合成する構成及び処理について説明する。画像５２と画像５３との合成に対しても、画像５１と画像５３との合成と同様の処理を行うことで、３つの画像５１〜５３から画像５０を生成できる。
【００３８】
図３は、本実施の形態に係る画像合成装置１０の機能構成を示すブロック図である。図３に示されるように、画像合成装置１０は、取得部２１と、カメラパラメータ保持部２２と、合成部２３と、表示制御部２４と、マッチング部２５と、カメラパラメータ算出部２６と、調整部２７とを備える。上記の各構成要素は、プロセッサがメモリ等を用いて所定のプログラムを実行することで実現されてもよいし、専用ハードウェアで実現されてもよい。
【００３９】
取得部２１は、カメラ１２及び１４で得られた画像５１及び画像５３を取得する。画像５１及び画像５３は、同一の領域が撮影された重複領域を有する。
【００４０】
カメラパラメータ保持部２２は、カメラパラメータ７１（第１カメラパラメータ）を保持する。カメラパラメータ７１（キャリブレーション情報）は、カメラ１２とカメラ１４との位置及び向き（姿勢）の相対関係を示す。なお、カメラパラメータ７１は、カメラ１２の位置及び向きと、カメラ１４の位置及び向きとをそれぞれ示してもよいし、これらの相対関係を示してもよい。また、このカメラパラメータ７１は、初期状態において予め設定されている。
【００４１】
合成部２３は、カメラパラメータ７１を用いて、画像５１と画像５３とを合成することで合成画像５０を生成する。具体的には、合成部２３は、カメラパラメータ７１に基づき、画像５１及び画像５３の少なくとも一方に、回転又は変形処理を行い、処理後の２つの画像を重複領域が重なるようにつなぎ合わすことで合成画像５０を生成する。なお、合成部２３は、つなぎ合わせの境界付近において、２つの画像の画素値の加重平均をとるなどの処理を施してもよい。
【００４２】
表示制御部２４は、合成画像５０を表示装置である電子ミラー４０に表示させる。
【００４３】
マッチング部２５は、画像５１と画像５３とに対して重複領域における特徴点マッチングを行う。具体的には、マッチング部２５は、画像５１と画像５３との重複領域に含まれる複数の特徴点を抽出する。特徴点の抽出処理は、画像から、当該画像に含まれる画素又は画素の集合であって、その周囲と異なる色又は形状等を有する画素又は画素の集合を発見する処理などにより実現され、公知の画像認識技術によりなされ得る。
【００４４】
次に、マッチング部２５は、同一の物が撮像された、画像５１内の特徴点と、画像５３内の特徴点とを特徴点対に決定する。具体的には、マッチング部２５は、画像５１内の特徴点と、画像５３内の特徴点との特徴量（色又は形状等）を比較し、類似する特徴量を有する各画像の特徴点を特徴点対に決定する。
【００４５】
カメラパラメータ算出部２６は、マッチング部２５による特徴点マッチングの結果を用いて、画像５１と画像５３との位置及び向きの相対関係を示すカメラパラメータ７２（第２カメラパラメータ）を算出する。
【００４６】
調整部２７は、算出されたカメラパラメータ７２を用いて、カメラ１２とカメラ１４との実際の位置及び向きの相対関係と、カメラパラメータ保持部２２に保持されているカメラパラメータ７１との差を低減する調整処理を行う。具体的には、調整部２７は、カメラパラメータ７１を、カメラパラメータ７２を用いて更新する。
【００４７】
図４は、本実施の形態に係る画像合成装置１０の動作の流れを示すフローチャートである。例えば、１フレーム毎に、図４に示す処理が繰り返し行われる。
【００４８】
まず、取得部２１は、画像５１及び画像５３を取得する（Ｓ１１）。図５は、画像５１及び画像５３の一例を示す図である。図５に示すように画像５１及び画像５３は、同一の領域が撮影された重複領域６１及び６２を有する。
【００４９】
なお、取得部２１は、取得した画像５１及び５３の、レンズ歪みを補正する補正処理、及び、サイズ並びに角度の調整等を行い、処理後の画像５１及び５３を合成部２３及びマッチング部２５に出力してもよい。
【００５０】
キャリブレーションを行う場合（Ｓ１２でＹｅｓ）、マッチング部２５は、画像５１と画像５３とに対して重複領域における特徴点マッチングを行う（Ｓ１３）。なお、キャリブレーションは、ユーザの操作等の任意のトリガに基づき行われてもよいし、所定の周期（時間間隔）で行われてもよし、毎フレーム行われてもよい。
【００５１】
図６は、マッチング処理を説明するための図である。図６に示すように、マッチング部２５は、画像５１内の重複領域６１に含まれる複数の特徴点６３と、画像５３内の重複領域６２に含まれる複数の特徴点６４とを抽出する。次に、マッチング部２５は、類似する特徴を有する特徴点６３と特徴点６４との組を特徴点対６５に決定する。
【００５２】
次に、カメラパラメータ算出部２６は、マッチング部２５による特徴点マッチングの結果を用いてカメラパラメータ７２を算出する（Ｓ１４）。具体的には、カメラパラメータ算出部２６は、画像５１及び画像５３とカメラパラメータとから、カメラ１２とカメラ１４との実際の位置及び向きの相対関係と、カメラパラメータとのずれを示す評価値を算出するための評価関数を用いて、カメラ１２とカメラ１４との実際の位置及び向きの相対関係とカメラパラメータとのずれが最小となるカメラパラメータをカメラパラメータ７２として算出する。具体的には、評価値は、画像５１及び画像５３における、特徴点マッチングの結果で示される特徴点対を三次元空間に投影した場合における、三次元空間における特徴点対の距離（ずれ）を示す。
【００５３】
以下、この処理の詳細を説明する。カメラパラメータ算出部２６は、２つの画像間の特徴点対から、カメラの実際の位置及び向きの相対関係と、カメラパラメータとのずれの度合いを示す誤差（評価値）を求めるための誤差評価関数を用いる。また、カメラパラメータ算出部２６は、複数の特徴点対に対して算出した誤差の平均を、画像間の全体の「誤差」として用いる。
【００５４】
図７及び図８は、カメラパラメータを用いて画像内の特徴点対を三次元空間に投影した場合の様子を示す図である。図７は、カメラパラメータとカメラの実際の位置及び向きが一致している場合を示し、図８は、カメラパラメータとカメラの実際の位置及び向きとにずれがある場合を示す。
【００５５】
図７に示すように、カメラパラメータとカメラの実際の位置及び向きが一致している場合、カメラ位置Ｃ０と特徴点Ｓ０とを結ぶ直線と、カメラ位置Ｃ１と特徴点Ｓ１とを結ぶ直線とは、三次元空間上の点Ｆにて交差する。ここで、カメラ位置Ｃ０は、カメラ１２の位置であり、特徴点Ｓ０は、画像５１内の特徴点である。カメラ位置Ｃ１は、カメラ１４の位置であり、特徴点Ｓ１は、画像５３内の特徴点である。また、特徴点Ｓ０と特徴点Ｓ１は、特徴点対を構成する。
【００５６】
一方、図８に示すように、カメラパラメータとカメラの実際の位置及び向きとがずれている場合、カメラ位置Ｃ０と特徴点Ｓ０とを結ぶ直線と、カメラ位置Ｃ１と特徴点Ｓ１とを結ぶ直線とは、三次元空間上で交差せず、ねじれた位置関係になる。
【００５７】
この時、カメラパラメータ算出部２６は、この２つの直線が最も近くなる、カメラ位置Ｃ０と特徴点Ｓ０とを結ぶ直線上の点Ｆ０と、カメラ位置Ｃ１と特徴点Ｓ１とを結ぶ直線上の点Ｆ１とを算出する。カメラパラメータとカメラの実際の位置及び向きとのずれがい大きいほど、線分ＯＦ０と、線分ＯＦ１とのなす角θは大きくなる。なお、線分ＯＦ０は、原点Ｏと点Ｆ０とを結ぶ線分であり、線分ＯＦ１は、原点Ｏと点Ｆ１とを結ぶ線分である。また、カメラパラメータとカメラの実際の位置及び向きが一致している場合、θは０となる。よって、この角θの性質を用いて、誤差評価関数として、下記（式１）を用いることができる。
【００５８】
（１−（｜ＯＦ０｜・｜ＯＦ１｜・ｃｏｓθ）／（ｍａｘ（｜ＯＦ０｜，｜ＯＦ１｜）＾２））×α  ・・・（式１）
【００５９】
誤差評価関数で示される値が小さいほど、誤差が小さいことを意味する。また、αは、係数であり、誤差評価関数で示される値が小さくなりすぎないようにするためのものである。ここで、ｍａｘ（｜ＯＦ０｜，｜ＯＦ１｜）は線分ＯＦ０と線分ＯＦ１の長い方の長さを表す。（｜ＯＦ０｜・｜ＯＦ１｜・ｃｏｓθ）／（ｍａｘ（｜ＯＦ０｜，｜ＯＦ１｜）＾２）は、線分ＯＦ０と線分ＯＦ１の長い方の長さが１になるように両方の線分の長さをスケーリングして、内積を求めたものになる。
【００６０】
まず、カメラパラメータ算出部２６は、初期のカメラパラメータ（カメラ行列）、及び誤差評価関数を用いて初期状態の誤差を算出する。ここで、初期のカメラパラメータとは、例えば、カメラパラメータ保持部２２に保持されているカメラパラメータ７１である。
【００６１】
次に、カメラパラメータ算出部２６は、初期のカメラパラメータの位置及び向きを少しだけ変更し、変更後のカメラパラメータ、及び誤差評価関数を用いて誤差を算出する。例えば、初期のカメラパラメータに対して、以下の１２種類の変更を行う。
【００６２】
［０］ｘ軸周りにｓｍａｌｌ＿ａｎｇｌｅ回転
［１］ｘ軸周りに−ｓｍａｌｌ＿ａｎｇｌｅ回転
［２］ｙ軸周りにｓｍａｌｌ＿ａｎｇｌｅ回転
［３］ｙ軸周りに−ｓｍａｌｌ＿ａｎｇｌｅ回転
［４］ｚ軸周りにｓｍａｌｌ＿ａｎｇｌｅ回転
［５］ｚ軸周りに−ｓｍａｌｌ＿ａｎｇｌｅ回転
［６］ｘ軸方向にｓｍａｌｌ＿ｔｒａｎｓｌａｔｅ移動
［７］ｘ軸方向に−ｓｍａｌｌ＿ｔｒａｎｓｌａｔｅ移動
［８］ｙ軸方向にｓｍａｌｌ＿ｔｒａｎｓｌａｔｅ移動
［９］ｙ軸方向に−ｓｍａｌｌ＿ｔｒａｎｓｌａｔｅ移動
［１０］ｚ軸方向にｓｍａｌｌ＿ｔｒａｎｓｌａｔｅ移動
［１１］ｚ軸方向に−ｓｍａｌｌ＿ｔｒａｎｓｌａｔｅ移動
【００６３】
ここで、ｓｍａｌｌ＿ａｎｇｌｅは軸に対する回転角度を示し、ｓｍａｌｌ＿ｔｒａｎｓｌａｔｅは位置の移動量を示す。つまり、１２種類の変更のそれぞれに対する誤差が算出される。
【００６４】
次に、カメラパラメータ算出部２６は、誤差が最も少ない変更後のカメラパラメータを基準として、再度、上記の１２種類の変更を行い、変更後のカメラパラメータのうち誤差が最も少ないカメラパラメータを選択する。カメラパラメータ算出部２６は、誤差が予め定められた閾値より小さくなるまで上記処理を繰り返し、誤差が予め定められた閾値より小さくなった時のカメラパラメータをカメラパラメータ７２として出力する。
【００６５】
なお、カメラパラメータ算出部２６は、変更後の全てのパラメータの誤差が、変更前のカメラパラメータより誤差より小さくならなかった場合、ｓｍａｌｌ＿ａｎｇｌｅ及びｓｍａｌｌ＿ｔｒａｎｓｌａｔｅの値をそれまでの半分の値にして処理を繰り返してもよい。
【００６６】
以上の処理により、カメラパラメータ算出部２６は、図９に示すように、画像５１と画像５３とをずれなく合成できるカメラパラメータ７２を算出できる。
【００６７】
次に、調整部２７は、カメラパラメータ保持部２２に保持されるカメラパラメータ７１をカメラパラメータ７２に更新する（Ｓ１５）。
【００６８】
次に、合成部２３は、更新されたカメラパラメータ７１を用いて、画像５１と画像５３とを合成することで合成画像５０を生成する（Ｓ１６）。表示制御部２４は、生成された合成画像５０を電子ミラー４０に表示させる（Ｓ１７）。
【００６９】
また、キャリブレーションが行われない場合（Ｓ１２でＮｏ）には、ステップＳ１３〜Ｓ１５の処理はスキップされ、合成画像５０の生成（Ｓ１６）及び表示（Ｓ１７）が行われる。
【００７０】
以上のように、画像合成装置１０は、例えば、車両１の走行中に得られた画像間の重複領域の自然特徴点のマッチング情報を用いて、カメラ間のずれを繰り返し処理で少しずつ補正して行くことができる。これにより、画像合成装置１０は、合成に用いるカメラパラメータ７１を正しい値に自動的にキャリブレーションできるので、ずれのない合成画像を生成することができる。
【００７１】
これにより、例えば、複数のカメラの位置又は方向がずれてしまった場合、専用のキャリブレータを用いて再キャリブレーションを行うために、キャリブレータを持つ工場等へ車を回送する必要がない。
【００７２】
また、画像合成装置１０は、複数の画像の重複領域のマッチング情報を使用することで、煩雑な画像処理を必要としない。よって、演算コストを低減できる。
【００７３】
以下、画像合成装置１０の変形例について説明する。上記実施の形態では、画像合成装置１０は、ある時刻の画像のマッチング特徴点対を用いてカメラパラメータ７２を算出したが、本変形例では、画像合成装置１０Ａは、過去を含む複数時刻のマッチング特徴点対から、カメラパラメータ７２を算出する。
【００７４】
図１０は、本実施の形態の変形例１に係る画像合成装置１０Ａの構成を示すブロック図である。図１０に示す画像合成装置１０Ａは、図３に示す画像合成装置１０の構成に加え、マッチング情報記憶部２８を備える。また、カメラパラメータ算出部２６Ａの機能がカメラパラメータ算出部２６と異なる。
【００７５】
取得部２１は、複数の時刻における画像５１及び５３を取得する。マッチング部２５は、時刻ごとに、画像５１及び画像５３に対して特徴点マッチングを行う。マッチング情報記憶部２８は、マッチング部２５で算出された、複数時刻の特徴点マッチングの結果である複数のマッチング特徴点対を記憶する。カメラパラメータ算出部２６Ａは、複数時刻のマッチング特徴点対を用いてカメラパラメータ７２を算出する。
【００７６】
具体的には、マッチング情報記憶部２８は、複数の時刻の特徴点マッチングの結果うち、精度が基準値より高い特徴点マッチングの結果を記憶する。より具体的には、マッチング情報記憶部２８は、複数時刻のマッチング特徴点対を用いて算出されたカメラパラメータ７２によって三次元空間に投影された際の誤差が小さい特徴点対のみを記憶する。
【００７７】
調整部２７は、算出されたカメラパラメータ７２を用いて調整処理を行う。
【００７８】
図１１は、本変形例に係る画像合成装置１０Ａによるキャリブレーション処理の流れを示すフローチャートである。まず、取得部２１は、ある時刻の画像５１及び画像５３を取得する（Ｓ２１）。次に、マッチング部２５は、取得された画像５１及び画像５３に対して特徴点マッチングを行う（Ｓ２２）。次に、カメラパラメータ算出部２６Ａは、複数時刻のマッチング特徴点対からカメラパラメータ７２を算出する（Ｓ２３）。
【００７９】
なお、ステップＳ２２及びＳ２３の詳細は、図３に示すステップＳ１３及びＳ１４と同様である。また、取得されたマッチング特徴点対の中で、カメラパラメータ７２によって三次元空間に投影された際の誤差が小さいものがマッチング情報記憶部２８に記憶される（Ｓ２４）。これにより、複数時刻に取得したマッチング特徴点対の中で、精度のよいものがマッチング情報記憶部２８に記憶される。
【００８０】
次に、調整部２７は、カメラパラメータ保持部２２に保持されるカメラパラメータ７１を、カメラパラメータ７２に更新する（Ｓ２５）。
【００８１】
以上により、画像合成装置１０Ａは、複数時刻のマッチング特徴点対を用いることでカメラパラメータの精度を向上できる。また、精度の高いマッチング特徴点対を用いることでカメラパラメータの精度を向上できる。
【００８２】
次に、変形例２に係る画像合成装置１０Ｂについて説明する。画像合成装置１０Ｂは、合成に用いられるカメラパラメータ７１を更新する代わりに、カメラの位置及び姿勢をカメラパラメータ７１に一致するように調整する。
【００８３】
図１２は、本実施の形態の変形例２に係る画像合成装置１０Ｂの構成を示すブロック図である。図１２に示す画像合成装置１０Ｂは、図３に示す画像合成装置１０に対して、調整部２７Ｂの機能が調整部２７と異なる。
【００８４】
調整部２７Ｂは、カメラパラメータ７１とカメラパラメータ７２との差に基づき、カメラ１２とカメラ１４との位置及び向きの相対関係がカメラパラメータ７１に近づくように、カメラ１２及びカメラ１４の少なくとも一方の位置及び向きを調整する。
合成部２３は、調整されたカメラ１２及びカメラ１４で得られた画像５１及び画像５３を、カメラパラメータ７１を用いて合成する。
【００８５】
図１３は、画像合成装置１０Ｂの動作の流れを示すフローチャートである。図１３に示す処理は、図４に示す処理に対して、ステップＳ１５の代わりにステップＳ３１及びＳ３２を含む。
【００８６】
カメラパラメータ７２が算出されると、調整部２７Ｂは、カメラパラメータ保持部２２に保持されているカメラパラメータ７１と、算出されたカメラパラメータ７２との差に基づき、カメラ１２とカメラ１４との位置及び向きの相対関係がカメラパラメータ７１に近づくように、カメラ１２及びカメラ１４の少なくとも一方の位置及び向きを調整する（Ｓ３１）。つまり、調整部２７Ｂは、カメラパラメータ７２で示される位置及び姿勢が現在のカメラ１２及びカメラ１４の位置及び向きであると仮定し、カメラパラメータ７１とカメラパラメータ７２との差分に相当する量だけカメラ１２及びカメラ１４の位置及び向きを変更する。
【００８７】
次に、取得部２１は、調整後のカメラ１２及びカメラ１４で取得された画像５１及び画像５３を取得する（Ｓ３２）。合成部２３は、取得された画像５１及び画像５３を合成する（Ｓ１６）。
【００８８】
以上により、画像合成装置１０Ｂは、合成に使用されるカメラパラメータ７１と、実際のカメラの位置及び向きとのずれを修正することができる。なお、変形例１に対して同様の変更を適用してもよい。
【００８９】
以上、実施の形態に係る画像合成装置について説明したが、本開示は、この実施の形態に限定されるものではない。
【００９０】
例えば、上記変形例１では、画像合成装置１０Ａは、複数の時刻における複数のマッチング特徴点対を記憶し、当該複数のマッチング特徴点対を用いてカメラパラメータ７２を算出したが、時刻ごとに、当該時刻の特徴点マッチングの結果を用いてカメラパラメータ７２を算出し、複数の時刻において算出された複数のカメラパラメータ７２を記憶し、当該複数のカメラパラメータ７２を用いて調整処理を行ってもよい。
【００９１】
例えば、画像合成装置１０Ａは、複数の時刻に対して算出された複数のカメラパラメータ７２のうち、精度が基準値より高いカメラパラメータ７２を用いて調整処理（カメラパラメータ７２の更新）を行う。ここで精度とは、例えば、算出されたカメラパラメータ７２に対して誤差評価関数で示される誤差であり、上述したカメラパラメータ７２の算出処理の途中で算出される。なお、画像合成装置１０Ａは、算出された全てのカメラパラメータ７２を記憶するのではなく、算出された複数のカメラパラメータ７２のうち、精度が基準値より高い（誤差が基準値より小さい）カメラパラメータ７２のみを記憶してもよい。
【００９２】
次に、画像合成装置１０Ａは、複数の時刻に対する複数のカメラパラメータ７２を用いて、更新に用いるカメラパラメータを決定する。例えば、画像合成装置１０Ａは、複数の時刻に対する複数のカメラパラメータ７２のうち精度が最も高いカメラパラメータ７２を選択する。そして、画像合成装置１０Ａは、カメラパラメータ保持部２２に保持されるカメラパラメータ７１を、選択したカメラパラメータ７２に更新する。
【００９３】
また、上記説明では、車載電子ミラーに用いられる画像合成装置を例に説明を行ったが、重複領域を有する２以上の画像を合成する場合に本開示の手法を適用できる。
【００９４】
また、上記実施の形態に係る画像合成装置に含まれる各処理部は典型的には集積回路であるＬＳＩとして実現される。これらは個別に１チップ化されてもよいし、一部又は全てを含むように１チップ化されてもよい。
【００９５】
また、集積回路化はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後にプログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、又はＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【００９６】
また、上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、ＣＰＵまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【００９７】
また、本開示は、画像合成装置により実行される画像合成方法として実現されてもよい。
【００９８】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【００９９】
また、フローチャートにおける各ステップが実行される順序は、本開示を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時（並列）に実行されてもよい。
【０１００】
以上、一つまたは複数の態様に係る画像合成装置について、実施の形態に基づいて説明したが、本開示は、この実施の形態に限定されるものではない。本開示の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、一つまたは複数の態様の範囲内に含まれてもよい。
【産業上の利用可能性】
【０１０１】
本開示は、画像合成装置に適用でき、例えば、車両に搭載したカメラの映像を合成して電子ミラーに表示する画像合成装置に利用可能である。
【符号の説明】
【０１０２】
１    車両
１０、１０Ａ、１０Ｂ    画像合成装置
１２、１３、１４    カメラ
２１    取得部
２２    カメラパラメータ保持部
２３    合成部
２４    表示制御部
２５    マッチング部
２６、２６Ａ    カメラパラメータ算出部
２７、２７Ｂ    調整部
２８    マッチング情報記憶部
４０    電子ミラー
５０、５１、５２、５３    画像
６１、６２    重複領域
６３、６４    特徴点
６５    特徴点対
７１、７２    カメラパラメータ
【図１】
2019180016.tif 000003
【図２】
2019180016.tif 000004
【図３】
2019180016.tif 000005
【図４】
2019180016.tif 000006
【図５】
2019180016.tif 000007
【図６】
2019180016.tif 000008
【図７】
2019180016.tif 000009
【図８】
2019180016.tif 000010
【図９】
2019180016.tif 000011
【図１０】
2019180016.tif 000012
【図１１】
2019180016.tif 000013
【図１２】
2019180016.tif 000014
【図１３】
2019180016.tif 000015