(57)【特許請求の範囲】
【請求項１】
複数の撮像装置により得られる画像を処理する画像処理装置であって、
前記複数の撮像装置に含まれる第１の撮像装置及び第２の撮像装置それぞれにより得られた画像から複数のオブジェクトを検出する検出手段と、
前記第１の撮像装置により得られた第１の画像における前記複数のオブジェクトと、前記第２の撮像装置により得られた第２の画像における前記複数のオブジェクトと、の間の対応関係を示す対応情報を取得する取得手段と、
前記第１の画像及び前記第２の画像それぞれにおいて、前記複数のオブジェクトそれぞれの特徴点を検出する特徴点検出手段と、
前記第１の画像及び前記第２の画像における前記対応情報および前記複数のオブジェクトの特徴点に基づいて、前記第１の画像における座標を前記第２の画像における座標に変換するための座標変換パラメータを導出する導出手段と、
を有し、
前記特徴点検出手段は、前記複数のオブジェクトそれぞれに設定される基準点と前記複数のオブジェクトそれぞれの特徴点とを結ぶベクトルを取得し、前記第１の画像及び前記第２の画像における対応するオブジェクトに関して取得されるベクトル間の差分が所定の差分よりも大きい場合、該ベクトルに対応するオブジェクトの特徴点の検出を再度実行する
ことを特徴とする画像処理装置。
【請求項２】
前記第１の画像及び前記第２の画像の少なくとも一方と前記座標変換パラメータとに基づいて、前記第１の撮像装置及び前記第２の撮像装置それぞれの視点位置とは異なる仮想視点位置に基づく仮想視点画像を生成する生成手段を更に有する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記仮想視点位置は、前記第１の撮像装置の視点位置と前記第２の撮像装置の視点位置との間に存在する
ことを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記仮想視点位置に基づいて、前記複数の撮像装置の中から前記第１の撮像装置及び前記第２の撮像装置を選択する選択手段を更に有する
ことを特徴とする請求項２又は３に記載の画像処理装置。
【請求項５】
前記基準点は、オブジェクトの重心である
ことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記複数の撮像装置の撮像対象は競技場のフィールドであり、
前記複数のオブジェクトのそれぞれは人間であり、
前記特徴点は人間の足部分である
ことを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記検出手段は、前記第１の撮像装置及び前記第２の撮像装置により同時刻に得られた画像に対して前記検出を実行する
ことを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
前記導出手段は、前記第１の画像及び前記第２の画像における対応する特徴点の個数が所定数以上ある場合に前記導出を実行する
ことを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項９】
複数の撮像装置により得られる画像を処理する画像処理装置の制御方法であって、
前記複数の撮像装置に含まれる第１の撮像装置及び第２の撮像装置それぞれにより得られた画像から複数のオブジェクトを検出する検出工程と、
前記第１の撮像装置により得られた第１の画像における前記複数のオブジェクトと、前記第２の撮像装置により得られた第２の画像における前記複数のオブジェクトと、の間の対応関係を示す対応情報を取得する取得工程と、
前記第１の画像及び前記第２の画像それぞれにおいて、前記複数のオブジェクトそれぞれの特徴点を検出する特徴点検出工程と、
前記第１の画像及び前記第２の画像における前記対応情報および前記複数のオブジェクトの特徴点に基づいて、前記第１の画像における座標を前記第２の画像における座標に変換するための座標変換パラメータを導出する導出工程と、
を含み、
前記特徴点検出工程では、前記複数のオブジェクトそれぞれに設定される基準点と前記複数のオブジェクトそれぞれの特徴点とを結ぶベクトルが取得され、前記第１の画像及び前記第２の画像における対応するオブジェクトに関して取得されるベクトル間の差分が所定の差分よりも大きい場合、該ベクトルに対応するオブジェクトの特徴点の検出が再度実行される
ことを特徴とする画像処理装置の制御方法。
【請求項１０】
複数の撮像装置と、該複数の撮像装置により得られる画像を処理する画像処理装置と、を含む画像処理システムであって、
前記画像処理装置は、
前記複数の撮像装置に含まれる第１の撮像装置及び第２の撮像装置それぞれにより得られた画像から複数のオブジェクトを検出する検出手段と、
前記第１の撮像装置により得られた第１の画像における前記複数のオブジェクトと、前記第２の撮像装置により得られた第２の画像における前記複数のオブジェクトと、の間の対応関係を示す対応情報を取得する取得手段と、
前記第１の画像及び前記第２の画像それぞれにおいて、前記複数のオブジェクトそれぞれの特徴点を検出する特徴点検出手段と、
前記第１の画像及び前記第２の画像における前記対応情報および前記複数のオブジェクトの特徴点に基づいて、前記第１の画像における座標を前記第２の画像における座標に変換するための座標変換パラメータを導出する導出手段と、
を有し、
前記特徴点検出手段は、前記複数のオブジェクトそれぞれに設定される基準点と前記複数のオブジェクトそれぞれの特徴点とを結ぶベクトルを取得し、前記第１の画像及び前記第２の画像における対応するオブジェクトに関して取得されるベクトル間の差分が所定の差分よりも大きい場合、該ベクトルに対応するオブジェクトの特徴点の検出を再度実行する
ことを特徴とする画像処理システム。
【請求項１１】
請求項１乃至８の何れか１項に記載の画像処理装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の撮像画像に基づく画像処理パラメータの導出技術に関するものである。
【背景技術】
【０００２】
近年、カメラなどの撮像装置を複数使用して撮影をおこない、例えば視点位置を自由に変更して映像を生成するシステムなどの研究、開発が進められており、スポーツなどにおける応用が期待されている。このようなシステムでは、複数の撮像装置で撮像した映像を重ね合わせたり合成するなどの処理が行われることがある。ただし、複数の撮像装置により得られた画像を好適に合成するためには、それぞれの撮像装置の位置に依存した座標変換パラメータにより画像を変形する必要がある。
【０００３】
そこで、競技場などの撮影対象にマーカなどを設置し、撮像画像上のマーカを認識することにより複数の撮像装置の画像間の対応付けをおこなう方法がある。特許文献１には、発光するパターンを設置してその光を受光することで位置情報を得る手法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１７４１４８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、専用のマーカを使用して画像処理パラメータを算出する方法においては、マーカの設置、撮影、回収などの作業が必要となり手間や時間がかかるという問題がある。
【０００６】
本発明は上述の問題点に鑑みなされたものであり、撮像画像間の座標変換パラメータを好適に導出可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の問題点を解決するため、本発明に係る画像処理装置は以下の構成を備える。すなわち、複数の撮像装置により得られる画像を処理する画像処理装置において、前記複数の撮像装置に含まれる第１の撮像装置及び第２の撮像装置それぞれにより得られた画像から複数のオブジェクトを検出する検出手段と、前記第１の撮像装置により得られた第１の画像における前記複数のオブジェクトと、前記第２の撮像装置により得られた第２の画像における前記複数のオブジェクトと、の間の対応関係を示す対応情報を取得する取得手段と、前記第１の画像及び前記第２の画像それぞれにおいて、前記複数のオブジェクトそれぞれの特徴点を検出する特徴点検出手段と、前記第１の画像及び前記第２の画像における前記対応情報および前記複数のオブジェクトの特徴点に基づいて、前記第１の画像における座標を前記第２の画像における座標に変換するための座標変換パラメータを導出する導出手段と、を有し、前記特徴点検出手段は、前記複数のオブジェクトそれぞれに設定される基準点と前記複数のオブジェクトそれぞれの特徴点とを結ぶベクトルを取得し、前記第１の画像及び前記第２の画像における対応するオブジェクトに関して取得されるベクトル間の差分が所定の差分よりも大きい場合、該ベクトルに対応するオブジェクトの特徴点の検出を再度実行する。
【発明の効果】
【０００８】
本発明によれば、撮像画像間の座標変換パラメータを好適に導出可能とする技術を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理システムの概略構成を示す図である。
【図２】撮影された画像及びそれらの合成を説明する図である。
【図３】画像処理装置３の内部構成を示すブロック図である。
【図４】２つの画像におけるオブジェクトの対応付けを説明する図である。
【図５】オブジェクトの対応付けの修正処理を説明する図である。
【図６】画像処理を説明するフローチャートである。
【図７】画像処理装置を構成するＰＣのハードウェア構成図である。
【発明を実施するための形態】
【００１０】
以下に、図面を参照して、この発明の好適な実施の形態を詳しく説明する。なお、以下の実施の形態はあくまで例示であり、本発明の範囲を限定する趣旨のものではない。
【００１１】
（第１実施形態）
本発明に係る画像処理装置の第１実施形態として、競技場に設置された複数のカメラにより撮像された映像を処理する画像処理システムを例に挙げて以下に説明する。
【００１２】
＜システム構成＞
図１は、第１実施形態における画像処理システムの概略構成を示す図である。競技場１（ここでは、競技場の平面領域であるフィールド部分を意味する）の周囲に、フィールド中央方向を撮影する多数のカメラ２（後述のカメラ２ａ、２ｂ、２ｚを含む）が並べて配置されている。多数のカメラ２の各々はデータ伝送のための入出力ハードウェアを備えている。多数のカメラ２は、例えばリング型ネットワークを介して通信可能に接続がされており、当該ネットワークを介して他のカメラへ映像（画像ストリーム）を伝送可能に構成されている。もちろん、バス型などの他のネットワークトポロジにより接続する形態でもよい。
【００１３】
多数のカメラ２のうちの１つ（カメラ２ｚ）は画像処理装置３に接続されており、多数のカメラ２により撮影された全ての映像は画像処理装置３まで伝送される。競技場１では、例えばサッカーなどの競技が行われており、競技場１の中に複数の人間がいるものとする。多数のカメラ２はそれぞれ撮影をおこなっている。
【００１４】
図２は、２つのカメラ（カメラ２ａおよびカメラ２ｂ）により撮影された画像の例を示す図である。画像２００ａはカメラ２ａにより撮影された画像、画像２００ｂはカメラ２ｂにより撮影された画像を示している。図１に示すように、カメラ２ａおよびカメラ２ｂは隣接して設置されており、図２のように視点が若干異なるような画像が得られる。
【００１５】
それぞれのカメラで撮影された画像は、ネットワークを介して画像処理装置３に送信される。画像処理装置３では、受信した複数の画像を用いて、各カメラで撮影された画像を重ね合わせるための座標変換パラメータの算出処理をおこなう。例えば、カメラ２ａにより撮影された画像競技場１の地面の領域と、カメラ２ｂにより撮影された画像競技場１の地面の領域と、を重ね合わせるための座標変換パラメータの算出処理をおこなう。ここでは、座標変換パラメータを算出する動作について説明する。
【００１６】
＜画像処理装置の構成＞
図３は、画像処理装置３の内部構成を示すブロック図である。図７は、画像処理装置３を構成するＰＣのハードウェア構成図である。ここでは、画像処理装置３が一般的なパーソナルコンピュータ（ＰＣ）３００で構成される例を示している。
【００１７】
以下の説明においては、図３に示す画像処理装置３の各機能部をＣＰＵがソフトウェアプログラムを実行することによって実現する形態について説明する。ただし、図３に示す画像処理装置３の各機能部の一部又は全部を、特定用途向け集積回路（ＡＳＩＣ）やＦＰＧＡなどのハードウェアにより処理するよう構成してもよい。ここで、ＦＰＧＡは、field programmable gate arrayの略である。
【００１８】
ＣＰＵ３２０は、ＰＣ３００を統括的に制御する。ＣＰＵ３２０は、例えばＲＯＭ３２２やハードディスクドライブ（ＨＤＤ）３２６に格納された制御プログラムを実行することにより図３に示される各機能部を実現する。
【００１９】
ＨＤＤ３２６は、例えば、ＰＣ３００で利用されるアプリケーションプログラムあるいは各種の制御プログラムを記憶する。また、アプリケーションプログラムあるいは各種の制御プログラムに関連する各種情報を保存する。また、一時的に各種情報を記憶するためにＲＡＭ３２１も利用される。
【００２０】
キーボード３２５は、ユーザからのデータ入力を受け付ける機能部である。また、ディスプレイ３２３は、ユーザに各種情報を提供する機能部である。なお、キーボード３２５やディスプレイ３２３は必須の構成ではない。すなわち、ＰＣ３００を、キーボード３２５やディスプレイ３２３を備えない構成としてもよい。
【００２１】
通信インタフェース（Ｉ／Ｆ）３２４は、図１に示すカメラ２ｚに接続するためのインタフェースであり、例えば、有線通信又は無線通信のインタフェースである。
【００２２】
データ受信部５は、複数のカメラ２の各々の画像データをネットワークを介して受信する。データ受信部５およびデータ読出部７などのモジュールはデータバス１３を介して記録部６に接続されており、必要に応じてデータの書き込みや読み出しをおこなうようになっている。記録部６は、例えばＨＤＤ３２６や、ＳＳＤ（solid state drive）、またはそれらの組み合わせなどで構成される。データ受信部５で受信された画像データは、データバス１３を介していったん記録部６に保存される。
【００２３】
データ読出部７は、カメラ間の画像変換パラメータ算出のために必要な画像を記録部６から読みだす。例えば、カメラ２ａで撮影された画像から適当なフレーム画像（例えば画像２００ａ）を読み出す。またカメラ２ｂで撮影された画像から、カメラ２ａの画像と同時刻のフレーム画像（例えば画像２００ｂ）を読み出す。そして読み出した画像をオブジェクト検出部８へ送信する。なお、ここでは同時刻のフレーム画像を読み出すとしているが撮影対象のオブジェクトの動きが遅い場合には、多少の時刻差を有するフレーム画像であってもよい。
【００２４】
オブジェクト検出部８は、受信した２つの画像それぞれについて、オブジェクトの検出を行う機能部である。オブジェクト検出については、例えば、背景差分情報を用いる公知の手法を利用する。より具体的には、過去の一定時間の画像を平均するなどの統計処理したものを背景データとして、現在の画像との差分をオブジェクトとする手法である。背景差分情報を用いるオブジェクト検出方法は一般的に良く知られているのでここでは詳細な説明は省く。オブジェクト検出についてはその他にも、特徴量や機械学習を用いる手法などさまざまな手法が知られており、任意の手法が利用可能である。
【００２５】
オブジェクト検出部８では、カメラ２ａおよびカメラ２ｂの各画像について、それぞれ画像２００ａおよび画像２００ｂに映っている４人の人間がオブジェクトとして、その位置および形状が検出されたものとする。オブジェクト検出部８により検出されたオブジェクト情報は、対応付け処理部９および特徴点検出部１０へ送信される。
【００２６】
対応付け処理部９では、カメラ２ａおよびカメラ２ｂの各画像において検出されたオブジェクトの対応付け（対応関係を示す対応情報の生成）をおこなう。対応情報取得の方法としては、例えば公知のブロックマッチング法を用いて実行する。ブロックマッチング法では、画像の中の微小部分を矩形などのブロックとして切り出し、２つのオブジェクトにおいて、ブロックの一致度を評価する。一致度は、例えば、ブロック内の画素ごとの輝度差の合計などとする。そして一致度が一定値より高ければ、２つのブロックが対応している、つまり２つのオブジェクトが対応していると判断する。対応付けの方法としてはその他にも、特徴点検出、特徴量算出、マッチング処理などを組み合わせたさまざまな手法が利用可能である。
【００２７】
ここでは、図４に示したように、カメラ２ａおよびカメラ２ｂの２つの画像に映っているそれぞれ４つのオブジェクト（人間）が、点線で示したように正しく対応付けされたものとする。
【００２８】
特徴点検出部１０では、オブジェクト検出部８で検出された各オブジェクトの特徴点を検出する。ここでは、特に、オブジェクト（ここでは人間）の下端の座標を検出する。これは、一般に人間の画像の中で足部分が競技場のフィールド平面に最も近い位置に存在し、足部分はオブジェクトの下端座標である可能性が高いからである。オブジェクト検出部８によりオブジェクトの形状は既知であるため、下端座標は簡単な座標検査処理で検出が可能である。
【００２９】
ここでは、図４に示すように、カメラ２ａにより撮影された画像２００ａ内の４個のオブジェクトの下端座標が、それぞれ、（ｘａ０，ｙａ０）、（ｘａ１，ｙａ１）、（ｘａ２，ｙａ２）、（ｘａ３，ｙａ３）として検出されたものとする。同様に、カメラ２ｂにより撮影された画像２００ｂ内の各オブジェクトの下端座標をそれぞれ（ｘｂ０，ｙｂ０）、（ｘｂ１，ｙｂ１）、（ｘｂ２，ｙｂ２）、（ｘｂ３，ｙｂ３）として検出されたものとする。なお、オブジェクトの下端の検出方法は他にも、例えば靴にマーカなどを装着して、マーカを検出するような方法でもよい。
【００３０】
図４においては、各オブジェクトの下端座標が、画像上で左側の足の先において検出されている。つまり、対応するオブジェクト同士の下端座標が、正しく対応付いている状態となっている。一方、上述したようにカメラ２ａとカメラ２ｂの視点は異なっていため、対応するオブジェクト同士の下端座標が、正しく対応付かない場合がある。
【００３１】
図５は、オブジェクトの対応付けの修正処理を説明する図である。ここでは、あるオブジェクトについて下端座標が、正しく対応付かない場合の例を示している。図５では説明のため、オブジェクトの基準点としての重心から下端座標へのベクトルを併せて示している。
【００３２】
画像２００ａのオブジェクトにおいては、ベクトル５０ａで示されたように、下端が画像上の左側の足の先部分となっている。一方、画像２００ｂのオブジェクトにおいては、ベクトル５０ｂで示されたように、下端が画像上の右側の足の先部分となっている。
【００３３】
特徴点検出部１０においては、このように２つの画像で異なる位置に特徴点を検出した場合に対応するため、検出結果の検査をおこなう。まず、ベクトル５０ａとベクトル５０ｂを算出し、両者の一致度を検査する。一致度を判定するための所定の差分としての閾値は、システムごとの条件を考慮し予め定めておく。例えば、被写体の大きさや画像のノイズの程度、カメラの視差量などの条件により適切な値が変わる。
【００３４】
図５に示したようなケースが発生し、比較の結果一致度が低いと判定された場合には、画像２００ｂのオブジェクトの下端座標の検出のやり直しをおこなう。例えば、図５の点線のベクトルで示したように、画像２００ｂのオブジェクトに対し、ベクトル５０ａを当てはめる。そして検査領域をベクトル５０ａの終点の近傍に限定し、下端座標の検出を再度実行する。その結果、画像２００ｂのオブジェクトにおいて、左側の足の先部分を下端座標として設定し直すことができる。
【００３５】
なお、ここでは、ベクトルの始点としてオブジェクトの重心を用いたが、その他にも例えば、人間の頭部や、人間に装着されたマーカを検出するなどしてもよい。また他の例として、ベクトル５０ａとベクトル５０ｂの一致度が低い場合には当該オブジェクトを使用しないようにしてもよい。その場合、上述のような再検出が実行されないため処理負荷が低減されることになる。
【００３６】
対応付け処理部９において処理されたオブジェクトの対応情報、および、特徴点検出部１０において処理されたオブジェクトの下端座標の情報は、パラメータ算出部１１へ送信される。
【００３７】
＜座標変換パラメータの導出＞
パラメータ算出部１１は、各カメラで撮影された画像を重ね合わせるための座標変換パラメータの算出処理をおこなう。ここでは、カメラ２ａにより撮影された画像競技場１の地面の領域と、カメラ２ｂにより撮影された画像競技場１の地面の領域と、を重ね合わせるための座標変換パラメータの算出処理について説明する。以下の説明においては、座標変換パラメータとしてホモグラフィー行列Ｈの要素を算出する例について説明するが、他の座標変換パラメータを算出するよう構成してもよい。
【００３８】
ここで、競技場１のフィールドが平面で近似できるものとする。また、各オブジェクトの下端（人間の足部分）がフィールド上にあると仮定する。パラメータ算出部１１では、各オブジェクトの下端座標の情報を用いて、座標変換パラメータであるホモグラフィー行列Ｈの要素を算出する。ホモグラフィー行列Ｈによる座標変換については公知であるため詳細な説明は省略する。
【００３９】
図４において、画像２００ａのオブジェクトの下端座標（ｘａ０，ｙａ０）を、画像２００ｂのオブジェクトの下端座標（ｘｂ０，ｙｂ０）にホモグラフィー行列Ｈによる変換をおこなう式は次のようになる。
【００４０】
【数１】
0006735592.tif 000002
【００４１】
ここでＨはホモグラフィー行列である。ホモグラフィー行列は３行３列の行列であり９個の要素を有するが、１つの要素は“１”であるため、実質的な要素（パラメータ）の個数は８つである。
【００４２】
図４における他の３つのオブジェクトの下端座標についても同様に、ホモグラフィー変換をおこなう式は以下の通りとなる。
【００４３】
【数２】
0006735592.tif 000003
【００４４】
【数３】
0006735592.tif 000004
【００４５】
【数４】
0006735592.tif 000005
【００４６】
式（１）〜（４）から、独立した８個の式が得られる。上述の通り、ホモグラフィー行列のパラメータは８個である。そのため、これらの８個の式による連立方程式を解くことで各パラメータが算出され、ホモグラフィー行列Ｈを求めることが可能である。連立方程式は例えば公知のガウス・ジョルダン法を用いて解くことができる。
【００４７】
パラメータ算出部１１は、算出したホモグラフィー行列Ｈの各パラメータを記録部６に保存する。既にパラメータが保存されている場合には上書きして新しい値に更新する。
【００４８】
上述の処理では、４ペアの下端座標の値を用いてパラメータを算出した。他の方法として、さらに多くのペアを用いてもよい。その場合には、例えば各ペアの座標値を座標変換した結果の誤差の合計を算出し、その値が最小になるようにパラメータを最適化するなどの処理をおこなう。実際には座標のペアは多いほど精度が向上する傾向がある。所望の精度を得るために必要なペアの数は、例えば画像のノイズの程度やカメラの視差量などの条件によって変わるため、システムごとに条件を考慮した上で予め定めておくとよい。
【００４９】
また、下端座標のペアは、ある１つの時刻のフレーム画像の中から選択してもよいし、複数の時刻のフレーム画像、つまり過去のフレーム画像の中から選択してもよい。但し、長い時間が経過した過去の画像においては、現在のカメラ位置とずれが発生している可能性が高くなってくる。そのため、新しいフレーム画像から座標のペアを取得して、ペアの数が所定数以上（例えば４つ）にならない場合に、時間的に新しい順に過去のフレーム画像から不足した分の座標のペアを取得するようにするとよい。なお、上述の説明においては、４ペアを全て下端座標のペアを利用したが、競技場のラインの交点やコーナーなどの特徴点のペアを併せて用いてもよい。
【００５０】
さらに、カメラによっては、レンズ特性などに起因する光学的な歪みなどが画像に含まれるケースがある。その場合には、画像の領域により重み付けを変えてもよい。例えば、画像２００ｃの点線で示したように、画像を複数の領域（ここでは９個の領域）に分割して、各領域の内部において取得する座標のペアの数を予め決めてもよい。
【００５１】
一般的に画像の端部に近いほど（光学系の光軸中心から離れるほど）歪みは大きくなっていく。そのため、画像の端部に近い領域において座標のペアを取得する数を、画像の中央部分において取得する数より少なく設定し、画像の中央部分の重ね合わせの精度をより重視するような処理としてもよい。
【００５２】
以上説明した処理を、カメラ２ａとカメラ２ｂの組み合わせ以外の隣り合うカメラについても実行する。その結果、隣り合うカメラ間のホモグラフィー行列Ｈが算出され、記録部６に保存される。
【００５３】
＜仮想視点画像の生成＞
画像生成部１２においては、指定された視点からの画像を生成する。カメラ２が設置された位置が視点として指定された場合は、対応するカメラにより撮像された画像を出力する。一方、カメラ２が設置された位置以外が視点（仮想視点）として指定された場合は、前述の処理により算出されたホモグラフィー行列Ｈを用いて、仮想視点画像を生成する。
【００５４】
ここでは、視点をカメラ２ａとカメラ２ｂの間にしたような画像を生成する場合の例について説明する。ただし、上述したように、他の隣接するカメラ間のホモグラフィー行列Ｈも算出されている。そのため、カメラ２ａとカメラ２ｂの間以外の任意のカメラ間においても同様に仮想視点画像を生成可能である。
【００５５】
まず、画像生成部１２は、データ読出部７を介して、記録部６から必要なフレーム画像（例えば、画像２００ａ）を読み出す。次に、画像生成部１２は、画像を座標変換するためのホモグラフィー行列Ｈを、記録部６から読み出す。ここでは、座標変換前の画像はカメラ２ａのものであり、その画像をカメラ２ａとカメラ２ｂとの間の仮想視点からの仮想視点画像へ変換する。そのため、画像生成部１２は、カメラ２ａの画像をカメラ２ｂの画像へ変換するためのホモグラフィー行列Ｈを読み出す。
【００５６】
続いて、画像生成部１２は、カメラ２ａの画像の全ての画素ごとに、ホモグラフィー変換後の座標を算出する。カメラ２ａの画像の画素の座標を（ｘａ，ｙａ）、ホモグラフィー行列をＨとすると、ホモグラフィー変換後の座標（ｘｂ，ｙｂ）を次の計算により算出する。
【００５７】
【数５】
0006735592.tif 000006
【００５８】
次に、カメラ２ａとカメラ２ｂの間の仮想視点からの仮想視点画像を生成する。具体的には、算出したｘａ，ｙａ，ｘｂ，ｙｂの値に基づいて、座標変換後の座標（ｘ’，ｙ’）を次の線形補間計算により算出する。
【００５９】
ｘ’＝ｘａ＊ｒ＋ｘｂ＊（１−ｒ）    ・・・（６）
【００６０】
ｙ’＝ｙａ＊ｒ＋ｙｂ＊（１−ｒ）    ・・・（７）
【００６１】
ｒは補間係数であり、仮想視点をカメラ２ａとカメラ２ｂの間のどの位置にするかを決める係数であり、通常は０＜ｒ＜１の範囲の値を取る。なお、ｒが０又は１の場合は、カメラ２ａ又はカメラ２ｂからの視点に相当する。例えば、ｒ＝０．５として、座標（ｘａ，ｙａ）における画素値を、座標（ｘ’，ｙ’）の画素値として、新しい画像を作成する。
【００６２】
以上の処理を、カメラ２ａの画像の全ての画素について処理すると、画像２００ｄに示すように、カメラ２ａとカメラ２ｂとの間のちょうど中間地点を視点とした画像が得られる。さらに、フレームごとにｒを少しずつ変化させながらそれぞれ画像を作成することで、時間とともに仮想視点が移動するような映像を作成するようなことも可能である。
【００６３】
＜画像処理装置の動作＞
図６は、上述の画像処理を説明するフローチャートである。図６（ａ）は、座標変換パラメータの導出処理を、図６（ｂ）は、仮想視点画像の生成処理を示している。画像処理装置３には、図１に示すように複数のカメラ２からの映像（画像ストリーム）がカメラ２ｚを介して入力される。
【００６４】
Ｓ１０１では、データ受信部５は、複数のカメラ２により撮像された映像を受信し記録部６に保存する。Ｓ１０２では、データ読出部７は、カメラ間のホモグラフィー行列Ｈのために必要な画像を記憶装置から読みだす。例えば、カメラ２ａによる画像（画像２００ａ）とカメラ２ｂによる同時刻の画像（画像２００ｂ）を読み出す。
【００６５】
Ｓ１０３では、オブジェクト検出部８は、読み出した２つの画像それぞれについて、オブジェクトの検出をおこなう。例えば、画像２００ａおよび画像２００ｂに対しては、４人の人間がオブジェクトとして、その位置および形状が検出される。
【００６６】
Ｓ１０４では、対応付け処理部９は、ブロックマッチング法などを用いて、２つの画像におけるオブジェクトの対応付けをおこなう。例えば、図４において点線で示すような対応付けが行われる。Ｓ１０５では、特徴点検出部１０は、２つの画像における各オブジェクトの特徴点を検出する。例えば、オブジェクトの下端の座標を特徴点として検出する。
【００６７】
Ｓ１０６では、パラメータ算出部１１は、上述の対応付けの結果、および、オブジェクトの特徴点の座標を用いて、ホモグラフィー行列Ｈを算出する。Ｓ１０７では、パラメータ算出部１１は、算出したホモグラフィー行列Ｈを記録部６に保存する。
【００６８】
この一連の処理を、多数のカメラ２における隣接する２つのカメラそれぞれについて実行することにより、任意の視点（水平方向の３６０度）についての仮想視点画像を生成することが可能となる。
【００６９】
次に、記録部６に保存されたホモグラフィー行列Ｈを用いて、カメラ２が設置された位置以外から視点である仮想視点からの仮想視点画像の生成の流れについて説明する。
【００７０】
Ｓ１０８では、画像生成部１２は、記録部６から必要なフレーム画像を読み出す。なお、必要なフレーム画像とは、生成する仮想視点画像の仮想視点の位置を挟む２つのカメラにより撮影された映像に含まれるフレーム画像である。すなわち、仮想視点位置に基づいて、２つのカメラを選択し、当該２つのカメラにより撮影されたフレーム画像を読み出す。
【００７１】
Ｓ１０９では、画像生成部１２は、フレーム画像を座標変換するためのホモグラフィー行列Ｈを、記録部６から読み出す。すなわち、Ｓ１０８で読み出したフレーム画像を撮影した２つのカメラ間のホモグラフィー行列Ｈを読み出す。Ｓ１１０では、画像生成部１２は、Ｓ１０８で読み出したフレーム画像及びＳ１０９で読み出したホモグラフィー行列Ｈを用いて、仮想視点画像を生成する。具体的には、上述の数式（６）及び（７）による画像の座標変換をおこなうことで生成する。
【００７２】
以上説明したとおり第１実施形態によれば、撮影した映像のみを用いて２次元座標変換のパラメータを導出することが可能となる。すなわち、専用のマーカなどを必要とせず、また計算コストが小さい処理で、複数のカメラ画像間の座標変換パラメータを導出することが可能となる。また、導出した座標変換パラメータを用いて任意の視点からの映像を好適に生成することが可能となる。
【００７３】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００７４】
１  競技場；  ２  カメラ；  ３  画像処理装置；  ４  オブジェクト；  ５  データ受信部；  ６  記録部；  ７  データ読出部；  ８  オブジェクト検出部；  ９  対応付け処理部；  １０  特徴点検出部；  １１  パラメータ算出部；  １２  画像生成部；  １３  データバス
【図１】
0006735592.tif 000007
【図２】
0006735592.tif 000008
【図３】
0006735592.tif 000009
【図４】
0006735592.tif 000010
【図５】
0006735592.tif 000011
【図６】
0006735592.tif 000012
【図７】
0006735592.tif 000013