(57)【特許請求の範囲】
【請求項１】
複数の撮像装置で取得された複数の映像から１つの合成映像を生成する映像合成装置であって、
前記複数の映像を受信する映像受信部と、
前記複数の撮像装置のカメラパラメータが入力されるパラメータ入力部と、
前記複数の映像から前記合成映像を生成する映像処理部と、
を備え、
前記映像処理部は、
予め入力された前記カメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置のうちの対応する撮像装置を特定する第１の撮像装置特定情報と、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置と、前記対応する第１の画素位置における第１の重み付き係数とを含む参照テーブルを作成し、
前記参照テーブルを参照して、前記合成映像の画素毎に、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置の画素値に前記第１の重み付き係数を乗算することで得られた第１の値を代入することで、前記合成映像を生成し、
前記映像処理部は、
前記カメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置によって撮像される複数の撮像範囲のうちの、互いに重畳する撮像範囲である重畳領域を持つ撮像装置の一つを特定する第２の撮像装置特定情報と、前記第２の撮像装置特定情報によって特定された撮像装置における前記重畳領域に対応する第２の画素位置と、前記重畳領域に対応する第２の画素位置における第２の重み付き係数とを含む他の参照テーブルを作成し、
前記他の参照テーブルを参照して、前記合成映像の画素のうちの、前記重畳領域の第２の画素位置に対応する画素毎に、前記第２の撮像装置特定情報によって特定された撮像装置における対応する画素位置の画素値に前記第２の重み付き係数を乗算することで得られた第２の値を代入してブレンド処理を行うことによって、前記合成映像のうちの前記重畳領域に対応する部分を生成する
ことを特徴とする映像合成装置。
【請求項２】
前記複数の撮像装置によって撮像される複数の撮像範囲のうちの、互いに重畳する撮像範囲は、左右方向に重畳し、前記合成映像は、パノラマ映像であり、
前記他の参照テーブルは１つのテーブルである
ことを特徴とする請求項１に記載の映像合成装置。
【請求項３】
前記複数の撮像装置によって撮像される複数の撮像範囲のうちの、互いに重畳する撮像範囲は、上下左右方向に重畳し、前記合成映像は、俯瞰映像であり、
前記他の参照テーブルは３つのテーブルである
ことを特徴とする請求項１に記載の映像合成装置。
【請求項４】
複数の撮像装置で取得された複数の映像から１つの合成映像を生成する映像合成方法であって、
前記複数の撮像装置について予め入力されたカメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置のうちの対応する撮像装置を特定する第１の撮像装置特定情報と、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置と、前記対応する第１の画素位置における第１の重み付き係数とを含む第１の参照テーブルを作成するステップと、
前記第１の参照テーブルを参照して、前記合成映像の画素毎に、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置の画素値に前記第１の重み付き係数を乗算することで得られた第１の値を代入することで、前記合成映像を生成するステップと、
前記カメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置によって撮像される複数の撮像範囲のうちの、互いに重畳する撮像範囲である重畳領域を持つ撮像装置の一つを特定する第２の撮像装置特定情報と、前記第２の撮像装置特定情報によって特定された撮像装置における前記重畳領域に対応する第２の画素位置と、前記重畳領域に対応する第２の画素位置における第２の重み付き係数とを含む第２の参照テーブルを作成するステップと、
前記第２の参照テーブルを参照して、前記合成映像の画素のうちの、前記重畳領域の第２の画素位置に対応する画素毎に、前記第２の撮像装置特定情報によって特定された撮像装置における対応する画素位置の画素値に前記第２の重み付き係数を乗算することで得られた第２の値を代入してブレンド処理を行うことによって、前記合成映像のうちの前記重畳領域に対応する部分を生成するステップと
を有することを特徴とする映像合成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の撮像装置によって取得された複数の映像（すなわち、複数の映像データ）から１つの合成映像を生成するための映像合成装置及び映像合成方法に関する。
【背景技術】
【０００２】
映像の撮影画角を広げるために、複数の撮像装置（すなわち、複数台のカメラ）による撮影で取得された複数の映像を合成して、１つの合成映像を生成する映像合成処理が知られている（例えば、特許文献１、２、及び３参照）。通常、１つの合成映像を生成するための映像合成処理では、複数の撮像装置から出力された複数の映像の各々に対して、レンズ歪補正処理、視点変換処理、投影変換処理等の映像処理が行われる。これらの映像処理の処理負荷は非常に大きいので、これらの映像処理を、通常の演算装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって実時間で行うことは難しい。そこで、従来の装置では、通常の演算装置と並列的に動作することができる並列演算装置であるＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって映像合成処理が行われる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４７４４８２３号公報
【特許文献２】特開２０１５−２０７８０２号公報
【特許文献３】特開２０１６−０６６８４２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ＧＰＵ等の並列演算装置を用いた場合においても、映像合成処理の負荷は、撮像装置の台数の増加（すなわち、合成される映像の数の増加）に伴って大きくなる。特に、投影変換処理において、撮像装置による撮像範囲間の境界部である重畳領域における映像にブレンド処理を行う際には、重畳領域における複数の映像が入力されるまで処理待ちが発生するため、映像合成処理に要する処理時間が長くなるという課題がある。【０００５】
本発明は、上記従来の課題を解決するためになされたものであり、その目的は、撮像装置の数が増加した場合であっても、複数の撮像装置で取得された複数の映像から１つの合成映像を生成する映像合成処理を短時間で行うことができる映像合成装置及び映像合成方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一態様に係る映像合成装置は、複数の撮像装置で取得された複数の映像から１つの合成映像を生成する映像合成装置であって、前記複数の映像を受信する映像受信部と、前記複数の撮像装置のカメラパラメータが入力されるパラメータ入力部と、前記複数の映像から前記合成映像を生成する映像処理部と、を備え、前記映像処理部は、予め入力された前記カメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置のうちの対応する撮像装置を特定する第１の撮像装置特定情報と、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置と、前記対応する第１の画素位置における第１の重み付き係数とを含む参照テーブルを作成し、前記参照テーブルを参照して、前記合成映像の画素毎に、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置の画素値に前記第１の重み付き係数を乗算することで得られた第１の値を代入することで、前記合成映像を生成し、前記映像処理部は、前記カメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置によって撮像される複数の撮像範囲のうちの、互いに重畳する撮像範囲である重畳領域を持つ撮像装置の一つを特定する第２の撮像装置特定情報と、前記第２の撮像装置特定情報によって特定された撮像装置における前記重畳領域に対応する第２の画素位置と、前記重畳領域に対応する第２の画素位置における第２の重み付き係数とを含む他の参照テーブルを作成し、前記他の参照テーブルを参照して、前記合成映像の画素のうちの、前記重畳領域の第２の画素位置に対応する画素毎に、前記第２の撮像装置特定情報によって特定された撮像装置における対応する画素位置の画素値に前記第２の重み付き係数を乗算することで得られた第２の値を代入してブレンド処理を行うことによって、前記合成映像のうちの前記重畳領域に対応する部分を生成するものである。
【０００７】
本発明の他の態様に係る映像合成方法は、複数の撮像装置で取得された複数の映像から１つの合成映像を生成する映像合成方法であって、前記複数の撮像装置について予め入力されたカメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置のうちの対応する撮像装置を特定する第１の撮像装置特定情報と、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置と、前記対応する第１の画素位置における第１の重み付き係数とを含む第１の参照テーブルを作成するステップと、前記第１の参照テーブルを参照して、前記合成映像の画素毎に、前記第１の撮像装置特定情報によって特定された撮像装置における対応する第１の画素位置の画素値に前記第１の重み付き係数を乗算することで得られた第１の値を代入することで、前記合成映像を生成するステップと、前記カメラパラメータを用いて、前記合成映像の画素毎に、前記複数の撮像装置によって撮像される複数の撮像範囲のうちの、互いに重畳する撮像範囲である重畳領域を持つ撮像装置の一つを特定する第２の撮像装置特定情報と、前記第２の撮像装置特定情報によって特定された撮像装置における前記重畳領域に対応する第２の画素位置と、前記重畳領域に対応する第２の画素位置における第２の重み付き係数とを含む第２の参照テーブルを作成するステップと、前記第２の参照テーブルを参照して、前記合成映像の画素のうちの、前記重畳領域の第２の画素位置に対応する画素毎に、前記第２の撮像装置特定情報によって特定された撮像装置における対応する画素位置の画素値に前記第２の重み付き係数を乗算することで得られた第２の値を代入してブレンド処理を行うことによって、前記合成映像のうちの前記重畳領域に対応する部分を生成するステップとを有するものである。
【発明の効果】
【０００８】
本発明によれば、撮像装置の数が増加した場合であっても、複数の撮像装置で取得された複数の映像から１つの合成映像を生成する映像合成処理を短時間で行うことができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態１に係る映像合成装置の構成を概略的に示す機能ブロック図である。
【図２】実施の形態１に係る映像合成装置を概略的に示すハードウェア構成図である。
【図３】実施の形態１に係る映像合成装置における合成映像の画素と複数の撮像装置の画素との対応関係の例を示す図である。
【図４】実施の形態１に係る映像合成装置における複数の撮像装置の撮像範囲の重畳領域の例を示す図である。
【図５】実施の形態１に係る映像合成装置において第１の参照テーブルに含まれる撮像装置の画素の範囲を示す図である。
【図６】実施の形態１に係る映像合成装置において第２の参照テーブルに含まれる撮像装置の画素の範囲を示す図である。
【図７】実施の形態１に係る映像合成装置の動作（すなわち、実施の形態１に係る映像合成方法）を示すフローチャートである。
【図８】実施の形態２に係る映像合成装置における複数の撮像装置の台形状の撮像範囲の重畳領域の例を示す図である。
【図９】実施の形態２に係る映像合成装置における複数の撮像装置の撮像範囲を簡素化した例を示す図である。
【図１０】実施の形態２に係る映像合成装置における第１の参照テーブルに含まれる撮像装置の画素の範囲を示す図である。
【図１１】実施の形態２に係る映像合成装置における第２の参照テーブルに含まれる撮像装置の画素の範囲（重畳領域）を示す図である。
【図１２】実施の形態２に係る映像合成装置における第３の参照テーブルに含まれる撮像装置の画素の範囲（重畳領域）を示す図である。
【図１３】実施の形態２に係る映像合成装置における第４の参照テーブルに含まれる撮像装置の画素の範囲（重畳領域）を示す図である。
【発明を実施するための形態】
【００１０】
《１》実施の形態１
《１−１》構成
図１は、本発明の実施の形態１に係る映像合成装置１の構成を概略的に示す機能ブロック図である。映像合成装置１は、実施の形態１に係る映像合成方法を実施することができる装置である。映像合成装置１は、複数の撮像装置（すなわち、複数台のカメラ）Ｃａｍ１，…，Ｃａｍｉ，…，ＣａｍＮから出力された複数の映像（すなわち、複数の映像データ）から１つの合成映像（すなわち、１つの合成映像データ）を生成する。Ｎは２以上の整数であり、ｉは１以上Ｎ以下の任意の整数である。映像が動画像である場合には、映像合成装置１は、Ｎ台の撮像装置Ｃａｍ１，…，ＣａｍＮから出力されたＮ枚の映像フレームから１枚の合成映像フレームを作成する処理を、撮像装置Ｃａｍ１，…，ＣａｍＮから映像フレームが入力される度に繰り返し行うことで、合成映像データとしての動画像データを生成する。生成された合成映像データは、表示装置２に出力される。表示装置２は、受信した合成映像データに基づく映像を表示する。
【００１１】
合成映像の例は、広い視野を持つ横長の映像であるパノラマ映像及び高い位置から見下ろした映像である俯瞰映像等である。実施の形態１においては、複数の撮像装置によって取得された左右方向（一次元方向）に並ぶ複数の映像を合成することによって生成された合成映像がパノラマ映像である場合を説明する。また、後述の実施の形態２においては、複数の撮像装置によって取得された上下左右方向（二次元方向）に並ぶ複数の映像を合成することによって生成された合成映像が俯瞰映像である場合を説明する。映像合成装置１は、合成映像の画素に対応する、撮像装置Ｃａｍ１，…，ＣａｍＮの画素に関する情報を持つ参照テーブルを予め作成し、この参照テーブルを用いて合成映像の画素の画素値を設定（代入）する。
【００１２】
図１に示されるように、実施の形態１に係る映像合成装置１は、映像受信部４と、パラメータ入力部５と、記憶部６ａを有する映像処理部６と、表示処理部７とを具備している。記憶部６ａは、映像処理部６の外部に備えられてもよい。図１に示される映像合成装置１は、ソフトウェアとしてのプログラムを格納する記憶部６ａとしてのメモリと、メモリに格納されたプログラムを実行する情報処理部としてのプロセッサとを用いて（例えば、コンピュータにより）実現することができる。なお、図１に示される映像合成装置１の一部を、プログラムを格納するメモリと、このプログラムを実行するプロセッサとによって実現してもよい。
【００１３】
映像受信部４は、複数の撮像装置Ｃａｍ１，…，ＣａｍＮから出力された複数の映像データを受信し、受信した映像データを映像処理部６に出力する。なお、映像データのデコード処理を映像受信部４で行い、デコードされた映像データを映像処理部６に出力してもよい。
【００１４】
パラメータ入力部５は、予め行われたキャリブレーション、すなわち、レンズ及びイメージセンサの撮像素子のパラメータ推定によって得られた複数の撮像装置Ｃａｍ１，…，ＣａｍＮについてのカメラパラメータを示す情報を受け取り、映像処理部６に出力する。カメラパラメータは、例えば、撮像装置Ｃａｍ１，…，ＣａｍＮに固有のカメラパラメータである内部パラメータ、世界座標系における撮像装置Ｃａｍ１，…，ＣａｍＮの位置姿勢を示すカメラパラメータである外部パラメータ、撮像装置Ｃａｍ１，…，ＣａｍＮのレンズに特有の歪（例えば、レンズの半径方向の歪及びレンズの円周方向の歪）を補正するために使用されるレンズ歪補正係数（例えば、レンズ歪補正マップ）等を含む。
【００１５】
実施の形態１においては、映像処理部６は、予め行われたキャリブレーションによって算出されたカメラパラメータを用いて、初期化時に映像合成用の参照テーブルを作成し、この参照テーブルを記憶部６ａに格納する。映像処理部６は、参照テーブルを参照して、映像受信部４から出力された複数の映像データ（映像フレーム）から合成映像データを生成する。
【００１６】
表示処理部７は、映像処理部６で生成された合成映像データを表示装置２に出力する。
【００１７】
図２は、実施の形態１に係る映像合成装置１を概略的に示すハードウェア構成図である。映像合成装置１は、メインプロセッサ１０と、メインメモリ１１と、補助メモリ１２と、ＧＰＵ等の並列演算装置である映像処理プロセッサ１３と、映像処理メモリ１４と、入力インタフェース１５と、ファイルインタフェース１６と、表示インタフェース１７と、映像入力インタフェース１８とを具備している。
【００１８】
図１の映像処理部６は、図２に示されるメインプロセッサ１０、メインメモリ１１、補助メモリ１２、映像処理プロセッサ１３、及び映像処理メモリ１４を含む。また、図１の記憶部６ａは、図２に示されるメインメモリ１１、補助メモリ１２、及び映像処理メモリ１４を含む。また、図１のパラメータ入力部５は、図２に示されるファイルインタフェース１６を含む。また、図１の映像受信部４は、図２に示される映像入力インタフェース１８を含む。また、図１の表示処理部７は、図２に示される表示インタフェース１７を含む。ただし、図２は、図１に示される映像合成装置１のハードウェア構成の一例を示しているに過ぎず、ハードウェア構成は種々の変更が可能である。また、図１に示される機能ブロック４〜７と、図２に示されるハードウェア構成１０〜１８の対応関係も上記例に限定されない。
【００１９】
図１のパラメータ入力部５は、予め実行されたキャリブレーションによって算出したカメラパラメータ情報を、ファイルインタフェース１６を補助メモリ１２から取得し、メインメモリ１１に書き込む。
【００２０】
補助メモリ１２は、予め実行されたキャリブレーションによって算出されたカメラパラメータを保存してもよい。また、メインプロセッサ１０は、カメラパラメータを、ファイルインタフェース１６を通じて、メインメモリ１１に保存してもよい。また、メインプロセッサ１０は、静止画から合成映像を作成する場合に、補助メモリ１２に静止画ファイルを保存してもよい。
【００２１】
入力インタフェース１５は、マウス入力、キーボード入力、タッチパネル入力等のデバイス入力を受け付け、入力情報をメインプロセッサ１０に送る。
【００２２】
映像処理メモリ１４は、メインメモリ１１から転送された入力映像データ、及び映像処理プロセッサ１３で作成された合成映像データを記憶する。
【００２３】
表示インタフェース１７と表示装置２とは、ＨＤＭＩ（登録商標）（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ケーブル等によって接続される。合成映像は、表示処理部７としての表示インタフェース１７を経由して表示装置２に出力される。
【００２４】
映像受信部４としての映像入力インタフェース１８は、映像合成装置１に接続された撮像装置Ｃａｍ１，…，ＣａｍＮの映像入力を受け付け、入力映像をメインメモリ１１に記憶させる。撮像装置Ｃａｍ１，…，ＣａｍＮは、例えば、ネットワークカメラ、アナログカメラ、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）カメラ、ＨＤ−ＳＤＩ（Ｈｉｇｈ  Ｄｅｆｉｎｉｔｉｏｎ  Ｓｅｒｉａｌ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）カメラ等である。なお、映像入力インタフェース１８としては、接続されるデバイスに適合した規格のものが使用される。
【００２５】
《１−２》動作
［初期化処理］
まず、図１における映像処理部６は、作成する合成映像の解像度Ｗ＿ｓｙｎｔｈ×Ｈ＿ｓｙｎｔｈを決定し、図１における記憶部６ａに合成映像を格納するためのメモリ領域を確保する。ここで、Ｗ＿ｓｙｎｔｈは、矩形の合成映像の水平方向の画素数を示し、Ｈ＿ｓｙｎｔｈは、合成映像の垂直方向の画素数を示す。この処理を、図２を用いて言い換えれば、映像処理プロセッサ１３は、作成する合成映像の解像度Ｗ＿ｓｙｎｔｈ×Ｈ＿ｓｙｎｔｈを決定し、映像処理メモリ１４に合成映像を格納するためのメモリ領域を確保する。
【００２６】
次に、図１における映像処理部６は、図１におけるパラメータ入力部５から入力された撮像装置Ｃａｍ１，…，ＣａｍＮのカメラパラメータ（内部パラメータ、外部パラメータ、レンズ歪補正データ及び投影面等）から、撮像装置Ｃａｍ１，…，ＣａｍＮについての参照テーブルを作成して、記憶部６ａに格納する。この処理を、図２を用いて言い換えれば、映像処理プロセッサ１３は、ファイルインタフェース１６から入力された撮像装置Ｃａｍ１，…，ＣａｍＮのカメラパラメータから、撮像装置Ｃａｍ１，…，ＣａｍＮについての参照テーブルを作成して、映像処理メモリ１４に格納する。
【００２７】
図３は、実施の形態１に係る映像合成装置１における合成映像の画素と複数の撮像装置Ｃａｍ１，…，ＣａｍＮの画素との対応関係の例を示す図である。
撮像装置Ｃａｍ１，…，ＣａｍＮについての参照テーブルは、図３に示されるように、合成映像の画素に対応する、撮像装置Ｃａｍ１，…，ＣａｍＮの画素（ｘ＿ｃａｍ１，ｙ＿ｃａｍ１），…，（ｘ＿ｃａｍＮ，ｙ＿ｃａｍＮ）、並びに、対応する撮像装置Ｃａｍ１，…，ＣａｍＮの画素（ｘ＿ｃａｍ１，ｙ＿ｃａｍ１），…，（ｘ＿ｃａｍＮ，ｙ＿ｃａｍＮ）におけるα値（アルファ値）を記憶する。ｘ＿ｃａｍ１は、カメラ番号ｉ＝１である撮像装置Ｃａｍ１のイメージセンサの画素のｘ座標を示し、ｙ＿ｃａｍ１は、カメラ番号ｉ＝１である撮像装置Ｃａｍ１のイメージセンサの画素のｙ座標を示す。α値は、撮像装置Ｃａｍ１，…，ＣａｍＮの撮像範囲の重畳領域のブレンド処理に利用する重み付き係数である。α値は、ピクセルデータの不透明度を示すカメラパラメータであり、０から１の範囲内の値であり、α値＝０は完全透明を表し、α値＝１は完全不透明を表す。
【００２８】
合成映像の画素に対応する撮像装置Ｃａｍ１，…，ＣａｍＮの画素が存在しない場合は、参照テーブルに対応画素が存在しないことを示す値を設定する。撮像装置Ｃａｍ１，…，ＣａｍＮの画素（ｘ＿ｃａｍ１，ｙ＿ｃａｍ１），…，（ｘ＿ｃａｍＮ，ｙ＿ｃａｍＮ）と合成映像の画素（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）との対応は、定義した投影面上の座標から投影変換処理前の座標、視点変換処理前の座標、レンズ歪補正処理前の座標と逆算することにより算出することができる。ｘ＿ｓｙｎｔｈは、合成映像の画素のｘ座標を示し、ｙ＿ｓｙｎｔｈは、合成映像の画素のｙ座標を示す。参照テーブルを利用すると、映像合成処理は、合成映像の画素（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）の画素値として、合成映像の画素（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）に対応する撮像装置Ｃａｍ１，…，ＣａｍＮの画素（ｘ＿ｃａｍ１，ｙ＿ｃａｍ１），…，（ｘ＿ｃａｍＮ，ｙ＿ｃａｍＮ）の画素値を代入する処理である。
ただし、撮像装置Ｃａｍ１，…，ＣａｍＮの参照テーブルを順に利用して映像合成処理を行う場合には、撮像装置Ｃａｍ１，…，ＣａｍＮの台数の増加に比例して処理時間が増加する。また、ＧＰＵ等の並列演算装置を利用する場合であっても、重畳領域においてブレンド処理を行う際に、処理待ちが発生するため、撮像装置Ｃａｍ１，…，ＣａｍＮの台数の増加に伴って処理時間が増加する。
【００２９】
図４は、実施の形態１に係る映像合成装置１における複数の撮像装置Ｃａｍ１，…，Ｃａｍ４の撮像範囲の重畳領域の例を示す図である。通常、図４に示されるようなパノラマ合成映像を作成する際には、隣接する撮像装置Ｃａｍ１，…，Ｃａｍ４の撮像範囲に重畳領域が存在する。重畳領域には、ブレンド処理を適用するが、異なる撮像装置Ｃａｍ１，…，Ｃａｍ４の画素値を参照し、この画素値に重み付き係数αを乗算して重み付けを行い、重み付けされた画素値を合成映像の対応する画素の画素値として代入（ブレンド）するため、撮像装置Ｃａｍ１，…，Ｃａｍ４から出力された映像データについて処理待ち時間が発生する。なお、重畳領域ではブレンド処理が行われるので、重畳領域をブレンド領域とも言う。
【００３０】
図５は、実施の形態１に係る映像合成装置１において参照テーブル（第１の参照テーブル）に含まれる撮像装置Ｃａｍ１，…，Ｃａｍ４の画素の範囲を示す図である。また、図６は、実施の形態１に係る映像合成装置１において他の参照テーブル（第２の参照テーブル）に含まれる撮像装置Ｃａｍ１，…，Ｃａｍ４の画素の範囲を示す図である。実施の形態１に係る映像合成装置１では、映像処理部６は、撮像装置Ｃａｍ１，…，ＣａｍＮの参照テーブルから映像合成用の参照テーブルを作成する。この映像合成用の参照テーブルは、ブレンド領域の上側（左側の撮像装置）とブレンド領域の下側（右側の撮像装置）の情報を保持した２枚の参照テーブル、すなわち、図５に示される第１の参照テーブルと図６に示される第２の参照テーブルとから構成される。
【００３１】
映像合成用の第１の参照テーブルは、第１の撮像装置特定情報としてのカメラ番号ｉと、対応する撮像装置Ｃａｍｉの画素（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）と、対応する撮像装置Ｃａｍｉの画素のα値とを保持する。なお、重畳領域以外の画素のα値は１とする。図５の例では、撮像装置Ｃａｍ１，…，Ｃａｍ４が４台である場合を示す。図５は、一例を示すものであり、第１の参照テーブルに含まれる撮像装置Ｃａｍ１，…，Ｃａｍ４の画素の範囲は、図５の例に限定されない。
【００３２】
映像合成用の第２の参照テーブルは、複数の撮像装置Ｃａｍ１，…，ＣａｍＮによって撮像される複数の撮像範囲のうちの、重畳領域を持つ撮像装置を特定する第２の撮像装置特定情報としてのカメラ番号ｉと、対応する撮像装置Ｃａｍｉの画素（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）と、対応する撮像装置Ｃａｍｉの重畳領域の画素のα値とを保持する。図６は、一例を示すものであり、第２の参照テーブルに含まれる撮像装置Ｃａｍ１，…，Ｃａｍ４の画素の範囲は、図６の例に限定されない。
【００３３】
撮像装置Ｃａｍ１，…，ＣａｍＮの撮像範囲の重畳領域以外の画素と重畳領域の左側の撮像装置（又は、右側の撮像装置）に対応する画素とは、合成映像の画素に同時に代入することができる。これらの画素の情報を保持したものは、図５に示される上側の参照テーブル（第１の参照テーブル）である。撮像装置Ｃａｍ１，…，ＣａｍＮの撮像範囲の重畳領域の右側の撮像装置（又は、左側の撮像装置）に対応する画素の情報を保持したものは、図６に示される下側の参照テーブル（第２の参照テーブル）である。
【００３４】
例えば、図５に示される撮像装置Ｃａｍ１、Ｃａｍ２、Ｃａｍ３、及びＣａｍ４の撮像範囲の画素の画素値は、第１の参照テーブルを用いて、合成映像の画素に同時に代入することができる。また、図６に示される撮像装置Ｃａｍ２、Ｃａｍ３、及びＣａｍ４の撮像範囲の重畳領域の画素の画素値は、第２の参照テーブルを用いて、合成映像の画素に同時に代入することができる。実施の形態１においては、ＧＰＵ等の並列演算装置である映像処理プロセッサを使用し、第１及び第２の参照テーブルを用いることで、映像合成処理に処理待ちが発生せず、撮像装置Ｃａｍ１，…，ＣａｍＮの台数に関わらず、２つのステップ、すなわち、第１の参照テーブルを用いた代入処理と第２の参照テーブルを用いた代入処理とで、合成映像を生成することができる。
【００３５】
［映像入力処理］
映像受信部４における映像入力インタフェース１８は、撮像装置Ｃａｍ１，…，ＣａｍＮの１フレーム分の映像データを取得しメインメモリ１１に格納される。取得された映像データは、メインメモリ１１から映像処理メモリ１４に転送される。
【００３６】
［映像合成処理］
映像処理部６における映像処理プロセッサ１３は、映像処理メモリ１４に転送された入力映像の画素値を、第１の参照テーブルと第２の参照テーブルとを用いて、入力映像の画素に対応する合成映像の画素の画素値として代入する。この処理手順を以下に説明する。
【００３７】
以下の映像合成処理は、映像処理プロセッサ１３によって、メインプロセッサ１０の処理と並列に実行される。
〈１〉先ず、第１の処理として、映像処理プロセッサ１３は、第１の参照テーブルから、合成映像における各画素（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）に対応するカメラ番号ｉ、カメラ番号ｉの撮像装置Ｃａｍｉにおける対応する画素位置（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）、及び重み付き係数αを取り出す。
〈２〉次に、第２の処理として、映像処理プロセッサ１３は、映像処理メモリ１４上のカメラ番号ｉの入力映像（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）の画素値を参照し、この画素値に重み付き係数αを乗算して、映像処理メモリ１４上の合成映像（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）の画素に代入する。
【００３８】
次に、映像処理プロセッサ１３は、以下の映像合成処理を、メインプロセッサ１０の処理と並列に実行する。
〈３〉先ず、第３の処理として、映像処理プロセッサ１３は、第２の参照テーブルから、合成映像における各画素（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）に対応するカメラ番号ｉ、カメラ番号ｉの撮像装置Ｃａｍｉにおける対応する画素位置（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）、及び重み付き係数αを取り出す。
〈４〉次に、第４の処理として、映像処理プロセッサ１３は、映像処理メモリ１４上のカメラ番号ｉの入力映像（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）の画素値を参照し、この画素値に重み付き係数αを乗算して、映像処理メモリ１４上の合成映像（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）の画素に代入する。これによって、合成映像の重畳領域の画素にブレンド処理が行われる。
【００３９】
図７は、実施の形態１に係る映像合成装置の動作（すなわち、実施の形態１に係る映像合成方法）を示すフローチャートである。映像処理部６は、初期化処理（ステップＳ１）にて参照テーブルを作成した後は、映像入力処理（ステップＳ２）と映像合成処理（ステップＳ４）を、映像入力が終了するまで（ステップＳ４）、繰り返し実行する。映像処理部６は、撮像装置Ｃａｍ１，…，ＣａｍＮの位置がずれた場合は、映像上の特徴点等を利用して、位置ズレを補正して新たな参照テーブルをバックグラウンドで作成した後、現在使用している参照テーブルを新たな参照テーブルと入れ替えることで、位置合わせされた合成映像を作成することができる。
【００４０】
表示処理部７は、映像処理部６で作成された合成映像データとしてのパノラマ合成映像データを表示装置２に送信する。表示装置２は、受信したパノラマ合成映像データに基づく映像を表示する。なお、表示装置２は、パノラマ合成映像を、１枚のディスプレイ画面に表示してもよく、又は、複数枚のディスプレイ画面に渡って表示してもよい。また、表示装置２は、パノラマ合成映像の一部の領域のみを切り出して表示してもよい。
【００４１】
《１−３》効果
以上に説明したように、実施の形態１に係る映像合成装置１及び映像合成方法によれば、撮像装置Ｃａｍ１，…，ＣａｍＮの台数に応じて、入力映像データのデコード負荷は増大するが、撮像装置Ｃａｍ１，…，ＣａｍＮが取得した映像の映像合成処理の負荷はほとんど増加しない。
【００４２】
また、撮像装置Ｃａｍ１，…，ＣａｍＮ毎の入力映像にレンズ歪補正処理、視点変換処理、投影変換処理を適用した場合、撮像装置Ｃａｍ１，…，ＣａｍＮの台数の増加に伴って処理時間が増加する。また、撮像装置Ｃａｍ１，…，ＣａｍＮ毎の参照テーブルを用意してレンズ歪補正処理、視点変換処理、投影変換処理をひとまとめにした場合においても、撮像装置Ｃａｍ１，…，ＣａｍＮ境界の重畳領域における処理待ちが発生するため、撮像装置Ｃａｍ１，…，ＣａｍＮの台数の増加に伴って処理時間が増加する。
実施の形態１に係る映像合成装置１及び映像合成方法では、隣り合って重畳領域を持つ撮像装置の映像間の処理待ちに着目し、第１の参照テーブルを同時に画素代入できるデータのみで構成することで、重畳領域に係る撮像装置Ｃａｍ１，…，ＣａｍＮの最大台数のステップ数で映像合成処理を実現することができる。つまり、実施の形態１においては、重畳領域に係る撮像装置Ｃａｍ１，…，ＣａｍＮの最大台数は２台であるパノラマ合成映像であるため、第１の参照テーブルを用いたステップと第２の参照テーブルを用いたステップとからなる２つのステップで合成処理が実行可能である。
【００４３】
《２》実施の形態２
《２−１》構成
上記実施の形態１においては、左右方向に並ぶ複数の映像から１つの合成映像（パノラマ映像）を生成するための映像合成装置及び映像合成方法を説明した。これに対し、本発明の実施の形態２では、上下左右方向に並ぶ複数の映像から１つの合成映像（俯瞰映像）を生成するための映像合成装置及び映像合成方法を説明する。
【００４４】
実施の形態２は、複数の撮像装置Ｃａｍ１，…，ＣａｍＮの配置の点、及び図１の映像処理部６（又は図２の映像処理プロセッサ）が参照テーブル（第１の参照テーブル）と他の参照テーブル（第２から第４の参照テーブル）を使用して映像合成処理を行う点において、実施の形態１と相違する。これらの点を除き、実施の形態２は、実施の形態１と同じである。したがって、実施の形態２の説明に際しては、実施の形態１の説明で用いた図１、図２及び図７をも参照する。
【００４５】
《２−２》動作
図８は、実施の形態２に係る映像合成装置における複数の撮像装置Ｃａｍ１，…，Ｃａｍ９の台形状の撮像範囲の重畳領域の例を示す図である。図８に示されるように、俯瞰合成映像を作成する場合、複数の撮像装置Ｃａｍ１，…，Ｃａｍ９が取得する映像を視点変換及び投影変換することで、大きな１枚の俯瞰映像を作成することができる。図８は、複数の撮像装置Ｃａｍ１，…，Ｃａｍ９の配置の一例を示すものであり、複数の撮像装置の配置方法を限定するものではない。
【００４６】
図８に示されるように、複数の撮像装置Ｃａｍ１，…，Ｃａｍ９を配置した場合、合成映像の重畳領域の同一画素（図８における４１）に対応する撮像装置の台数は、上下左右の最大４台となる。パノラマ合成画像の生成と同様に、合成映像の画素に同時に代入可能な画素のみで構成した参照テーブルとして４種類の参照テーブル、すなわち、第１から第４の参照テーブルを作成することで、撮像装置の台数に関わらず、４回のステップで映像合成処理を実行することができる。
【００４７】
図９は、実施の形態２に係る映像合成装置における複数の撮像装置Ｃａｍ１，…，Ｃａｍ９の撮像範囲の重畳領域の例を示す図である。図９では、図８の例を簡素化するために、撮影範囲を長方形に描いている。図１０は、実施の形態２に係る映像合成装置における撮像範囲についての第１の参照テーブルを示す図である。図１１から図１３は、実施の形態２に係る映像合成装置における撮像範囲（重畳領域）についての他の参照テーブルである第２の参照テーブル、第３の参照テーブル、及び第４の参照テーブルを示す図である。図９から図１３は、説明を簡単にするため、撮像装置Ｃａｍ１，…，ＣａｍＮの投影変換後の映像を長方形で示すが、台形又は他の形状であっても処理は同様である。また、図９から図１３に示される第１から第４の参照テーブルは一例であり、参照テーブルの形状及び個数は図９から図１３の例に限定されない。
【００４８】
［映像入力処理］
映像受信部４が撮像装置Ｃａｍ１，…，ＣａｍＮの１フレーム分の入力映像を取得完了したら、メインメモリ１１から映像処理メモリ１４に入力映像データを転送する。
【００４９】
［映像合成処理］
映像処理メモリ１４上に転送された入力映像の画素値を、上記の第１から第４の参照テーブルを用いて合成映像に代入する。処理手順を以下に示す。
【００５０】
以下の操作を、映像処理部６の映像処理プロセッサ１３が、並列に実行する。
〈１１〉第１の処理では、映像処理プロセッサ１３は、図１０に示される第１の参照テーブルから合成映像における各画素（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）に対応するカメラ番号ｉ、カメラ番号ｉの撮像装置Ｃａｍｉにおける対応する画素位置（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）、及び重み付き係数αを取り出す。
〈１２〉第２の処理では、映像処理プロセッサ１３は、映像処理メモリ１４上のカメラ番号ｉの撮像装置Ｃａｍｉの入力映像の画素（ｘ＿ｃａｍｉ，ｙ＿ｃａｍｉ）の画素値を参照し、この画素値に重み付き係数αを乗算して、映像処理メモリ１４上の合成映像（ｘ＿ｓｙｎｔｈ，ｙ＿ｓｙｎｔｈ）の画素に代入する。
〈１３〉第３の処理では、映像処理プロセッサ１３は、第２の参照テーブルについて第１１の処理と第１２の処理と同様の処理を実行する。
〈１４〉第４の処理では、映像処理プロセッサ１３は、第３の参照テーブルについても、第１１の処理と第１２の処理と同様の処理を実行する。
〈１５〉第５の処理では、映像処理プロセッサ１３は、第４の参照テーブルについても、第１１の処理と第１２の処理と同様の処理を実行する。
また、映像処理部全体の処理手順は図７と同じである。また、表示処理部の動作も実施の形態１のものと同じである。
【００５１】
《２−３》効果
実施の形態２に係る映像合成装置及び映像合成方法によれば、撮像装置Ｃａｍ１，…，ＣａｍＮの台数に応じて、入力映像データのデコード負荷は増大するが、撮像装置Ｃａｍ１，…，ＣａｍＮが取得した映像の映像合成処理の負荷はほとんど増加しない。
【００５２】
また、実施の形態２に係る映像合成装置及び映像合成方法では、隣り合って重畳領域を持つ撮像装置の映像間の処理待ちに着目し、第１の参照テーブルを同時に画素代入できるデータのみで構成することで、重畳領域に係る撮像装置Ｃａｍ１，…，ＣａｍＮの最大台数のステップ数のみで映像合成処理を実現することができる。これにより、撮像装置Ｃａｍ１，…，ＣａｍＮの台数が増加しても、同一処理時間での合成映像が作成可能となる。例えば、俯瞰合成映像の場合、４回のステップで処理が実行可能である。
【００５３】
俯瞰合成映像の場合、図７のように個別カメラの配置を行った場合は、最大４ステップで処理が実行可能となる。
【符号の説明】
【００５４】
１  映像合成装置、  ２  表示装置、  ４  映像受信部、  ５  パラメータ入力部、  ６  映像処理部、  ６ａ  記憶部、  ７  表示処理部、    １０  メインプロセッサ、  １１  メインメモリ、  １２  補助メモリ、  １３  映像処理プロセッサ、  １４  映像処理メモリ、  １５  入力インタフェース、  １６  ファイルインタフェース、  １７  表示インタフェース、  １８  映像入力インタフェース、  Ｃａｍ１，…，Ｃａｍｉ，…，ＣａｍＮ  撮像装置（カメラ）。
【図１】
0006513305.tif 000002
【図２】
0006513305.tif 000003
【図３】
0006513305.tif 000004
【図４】
0006513305.tif 000005
【図５】
0006513305.tif 000006
【図６】
0006513305.tif 000007
【図７】
0006513305.tif 000008
【図８】
0006513305.tif 000009
【図９】
0006513305.tif 000010
【図１０】
0006513305.tif 000011
【図１１】
0006513305.tif 000012
【図１２】
0006513305.tif 000013
【図１３】
0006513305.tif 000014