(57)【要約】【課題】複数のカメラを用いて撮影した多視点映像に基づき仮想視点映像を生成する場面において、異なるタイミングで行われるカメラの位置及び姿勢の推定結果の差異を低減させる。【解決手段】複数のカメラで撮影した多視点映像を用いて仮想視点映像を生成する画像処理システムであって、前記複数のカメラのそれぞれの位置及び姿勢の少なくとも一方を表すカメラパラメータを得る取得手段と、前記複数のカメラで撮影した多視点映像に対して、前記取得手段により取得されたカメラパラメータに基づいて決定されたリファレンス画像を用いて補正処理を行う補正手段と、前記補正手段の補正処理により得られた多視点映像を用いて、前記仮想視点映像を生成する生成手段と、を備えたことを特徴とする。【選択図】図４
2018207252.tif 000002
【特許請求の範囲】
【請求項１】
複数のカメラで撮影した多視点映像を用いて仮想視点映像を生成する画像処理システムであって、
前記複数のカメラのそれぞれの位置及び姿勢の少なくとも一方を表すカメラパラメータを得る取得手段と、
前記複数のカメラで撮影した多視点映像に対して、前記取得手段により取得されたカメラパラメータに基づいて決定されたリファレンス画像を用いて補正処理を行う補正手段と、
前記補正手段の補正処理により得られた多視点映像を用いて、前記仮想視点映像を生成する生成手段と、
を備えたことを特徴とする画像処理システム。
【請求項２】
前記取得手段は、前記仮想視点映像の生成のための前記複数のカメラによる多視点映像の撮影開始前に、前記複数のカメラそれぞれについてキャリブレーション処理を行なうことで、前記カメラパラメータを得ることを特徴とする請求項１に記載の画像処理システム。
【請求項３】
所定の画像特徴点を画像上に再投影した場合の座標を、前記キャリブレーション処理で得られた前記カメラパラメータに基づいて求め、
前記複数のカメラそれぞれで撮影された、前記リファレンス画像の候補となる複数の画像のそれぞれにおける前記所定の画像特徴点の座標を求め、
前記キャリブレーション処理で得られたカメラパラメータに基づいて求めた座標と、前記リファレンス画像の候補となる複数の画像のそれぞれにおける前記所定の画像特徴点の座標との差分である再投影誤差を求め、
前記リファレンス画像の候補となる複数の画像の中から、前記再投影誤差が最も小さい画像を選択して、前記リファレンス画像を決定する決定手段を有する
ことを特徴とする請求項１に記載の画像処理システム。
【請求項４】
前記決定手段は、前記所定の画像特徴点が複数である場合、画像特徴点毎に求めた前記再投影誤差の平均値もしくは合計値を算出し、得られた平均値もしくは合計値が最小の画像を選択することを特徴とする請求項３に記載の画像処理システム。
【請求項５】
前記決定手段は、前記複数の画像特徴点について重み付けを行って得られた前記再投影誤差に基づき、前記選択を行うことを特徴とする請求項４に記載の画像処理システム。
【請求項６】
前記重み付けは、前記再投影誤差が小さい画像特徴点ほどその信頼度を高くする重み付け、または、検出したカメラ台数や画像枚数が多い画像特徴点ほどその信頼度を高くする重み付けであることを特徴とする請求項５に記載の画像処理システム。
【請求項７】
前記重み付けは、画像中央に近い画像特徴点ほどその重要度を高くする重み付けであることを特徴とする請求項５に記載の画像処理システム。
【請求項８】
前記座標は、二次元の画像座標或いは三次元のカメラ座標であることを特徴とする請求項３乃至７のいずれか１項に記載の画像処理システム。
【請求項９】
前記リファレンス画像の候補となる前記複数の画像として、前記キャリブレーション処理で用いた画像を用いることを特徴とする請求項３に記載の画像処理システム。
【請求項１０】
自カメラについてのリファレンス画像の前記決定を、前記キャリブレーション処理で得られた自カメラのカメラパラメータに基づき行う手段を、前記複数のカメラのそれぞれが有することで、前記決定手段が実現されることを特徴とする請求項２乃至９のいずれか１項に記載の画像処理システム。
【請求項１１】
前記多視点映像を構成する画像のうち自カメラで撮影した画像に対して前記補正を行う手段を、前記複数のカメラのそれぞれが有することで、前記補正手段が実現されることを特徴とする請求項１乃至９のいずれか１項に記載の画像処理システム。
【請求項１２】
前記キャリブレーション処理にいられる画像は、所定の閾値より振動が小さい状態で撮影された画像であることを特徴とする、請求項２乃至１１のいずれか１項に記載の画像処理システム。
【請求項１３】
前記所定の閾値は、撮影時の振動状態によって異なることを特徴とする請求項１２に記載の画像処理システム。
【請求項１４】
リファレンス画像として決定した画像から新たにカメラパラメータを求め、当該求めたカメラパラメータと、前記キャリブレーション処理で得られたカメラパラメータとの差分を算出する算出手段をさらに備え、
前記生成手段は、算出された前記差分に応じて画像位置を再調整した多視点映像を用いて、前記仮想視点映像を生成する
ことを特徴とする、請求項２乃至１３のいずれか１項に記載の画像処理システム。
【請求項１５】
前記複数のカメラそれぞれのカメラパラメータを管理する管理手段であって、前記決定手段で決定されたリファレンス画像から前記複数のカメラそれぞれについてのカメラパラメータを求め、当該求めたカメラパラメータで、前記キャリブレーション処理で得られたカメラパラメータを更新する、管理手段をさらに備え、
前記決定手段は、更新されたカメラパラメータを用いて、前記リファレンス画像を決定する、
ことを特徴とする請求項２乃至１３のいずれか１項に記載の画像処理システム。
【請求項１６】
複数のカメラと画像処理装置とを備えた画像処理システムにおいて、前記複数のカメラで撮影した多視点映像を用いて仮想視点映像を生成する方法であって、
前記複数のカメラそれぞれの位置及び姿勢の少なくとも一方を表すカメラパラメータを取得する取得ステップと、
前記複数のカメラで撮影した多視点映像に対して、前記取得手段により取得されたカメラパラメータに基づいて決定されたリファレンス画像を用いて補正処理を行う補正ステップと、
前記補正処理により得られた多視点映像を用いて、前記仮想視点映像を生成する生成ステップと、
を含むことを特徴とする、仮想視点映像の生成方法。
【請求項１７】
請求項１乃至１５のいずれか１項に記載の画像処理システムを実現するためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、異なる視点から撮影された多視点映像を用いて仮想視点映像を生成する技術に関する。
【背景技術】
【０００２】
昨今、複数のカメラを異なる位置に設置して多視点で同期撮影し、当該撮影により得られた多視点映像を用いて、三次元空間内に仮想的に配置した実際には存在しないカメラ（仮想カメラ）から視た仮想視点映像を生成する技術が注目されている。上記のようにして多視点映像から仮想視点映像を生成する技術によれば、例えば、サッカーやバスケットボールといったスポーツにおけるハイライトシーンを様々な角度から閲覧することが出来るため、通常の映像と比較してユーザに高臨場感を与えることが出来る。多視点映像に基づく仮想視点映像の生成は、複数のカメラが撮影した映像をサーバなどの画像処理装置に集約し、画像処理装置にて、三次元モデル生成、レンダリングなどの処理を施すことで実現できる。
【０００３】
仮想視点映像を生成する場合には、２種類のキャリブレーションを行うことがある。１つはカメラ設置時等の多視点映像の撮影開始前において、各カメラの位置や姿勢を推定するキャリブレーション（静的キャリブレーション）である。この静的キャリブレーションでは、各カメラで撮影した映像から、各カメラのカメラパラメータを求める。カメラパラメータには、回転行列や位置ベクトルといったカメラの位置及び姿勢を表す外部パラメータに加え、焦点距離、画像中心、レンズ歪みといったカメラ固有の内部パラメータが含まれる。もう１つのキャリブレーションは、多視点映像の撮影中における観客の応援や風などに起因するカメラの揺れ（振動）の影響をキャンセルする目的で行なうキャリブレーション（動的キャリブレーション）である。この動的キャリブレーションでは、予め用意したリファレンス画像を用いて、フレーム間で画像位置がずれないよう補正する。そして、動的キャリブレーションで画像位置が補正された多視点映像、及び静的キャリブレーションで得られた各カメラのカメラパラメータを用いて、仮想視点映像が生成される。以下、説明の便宜上、静的キャリブレーションを単に「キャリブレーション」と呼び、動的キャリブレーションを「位置補正処理」と呼ぶこととする。
【０００４】
カメラの揺れの影響をキャンセルする技術としては、例えばカメラの手ぶれ補正機能に関する特許文献１がある。この特許文献１では、連写で取り込んだ複数の画像を重ね合わせることで補正された１つの画像を生成する処理において、複数の画像の中でぶれ量の最も少ない画像をベース画像として選択し、ベース画像を基に複数の画像の位置合わせを行っている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−７８９４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
キャリブレーションに用いる画像を撮影する際、もしくは、位置補正処理に用いるリファレンス画像を撮影する際に、風などの様々な原因でカメラが揺れてしまうことがある。そうなると、キャリブレーションで求めたカメラの位置及び姿勢と、位置補正処理で補正された画像から推定されたカメラの位置及び姿勢とが異なるということが起こり得る。例えば、撮影開始前には座標位置が（x=90、y=100、z=60）と推定されたカメラが、位置補正後の画像を用いてその位置及び姿勢を推定したところ、その座標位置が（x=95、y=105、z=60）と推定されるといった具合である。このようにキャリブレーションで求めたカメラの位置及び姿勢と、位置補正処理で補正された画像から推定されたカメラの位置及び姿勢とが異なる状態で仮想視点映像の生成を行うのは望ましくない。なぜなら、多視点映像の撮影開始前におけるカメラの位置及び姿勢の推定結果と、多視点映像の撮影中におけるカメラの位置及び姿勢の推定結果とが異なっているということは、どちらか（あるいは両方）の推定結果に誤りがあることを意味するためである。仮に撮影開始前の位置及び姿勢の推定結果のみが誤っているとすると、複数カメラ間の撮影画像の位置関係が正しく推定されていないことになるので、実物とは異なる形状の３Ｄモデルが生成される恐れがある。また、仮に撮影中のカメラの位置及び姿勢の推定結果のみが誤っているとすると、適切に画像位置の補正ができていないことになるので、カメラの揺れの影響をキャンセルしきれていない、或いは、その逆で揺れが強調されたような仮想視点映像になってしまう恐れがある。
【０００７】
このように、多視点映像の撮影開始前において推定されたカメラの位置及び姿勢と、多視点映像の撮影中において推定されたカメラ位置及び姿勢とが異なっていると、それらを基に生成される仮想視点映像が低画質となってしまう。
【０００８】
本発明の目的は、複数のカメラを用いて撮影した多視点映像に基づき仮想視点映像を生成する場面において、異なるタイミングで行われるカメラの位置及び姿勢の推定結果の差異を低減させることである。
【課題を解決するための手段】
【０００９】
本発明に係る画像処理システムは、複数のカメラで撮影した多視点映像を用いて仮想視点映像を生成する画像処理システムであって、前記複数のカメラのそれぞれの位置及び姿勢の少なくとも一方を表すカメラパラメータを得る取得手段と、前記複数のカメラで撮影した多視点映像に対して、前記取得手段により取得されたカメラパラメータに基づいて決定されたリファレンス画像を用いて補正処理を行う補正手段と、前記補正手段の補正処理により得られた多視点映像を用いて、前記仮想視点映像を生成する生成手段と、を備えたことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、複数のカメラを用いて撮影した多視点映像に基づき仮想視点映像を生成する場面において、異なるタイミングで行われるカメラの位置及び姿勢の推定結果の差異を低減させることができる。その結果、高画質の仮想視点映像を得ることができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態１に係る、画像処理システムの構成を示すブロック図。
【図２】実施形態１に係る、仮想視点映像生成までの一連の処理の流れを示すフローチャートである。
【図３】位置補正処理を説明する図。
【図４】リファレンス画像決定処理の詳細を示すフローチャートである。
【図５】（ａ）は再投影された画像特徴点の画像座標の一例を示す図、（ｂ）は注目フレーム画像における画像特徴点の画像座標の一例を示す図。
【図６】実施形態２に係る、画像処理システムの構成を示すブロック図。
【図７】実施形態２に係る、カメラパラメータの更新処理を含む、仮想視点映像生成までの一連の処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。なお、以下の実施形態において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【実施形態１】
【００１３】
図１は、本実施例に係る画像処理システムの構成を示すブロック図である。画像処理システム１００は、カメラ１１０〜１３０及びサーバ１４０から成る。画像処理システム１００は、３台のカメラ１１０〜１３０で撮影された多視点映像のデータを、画像処理装置としてのサーバ１４０に集め、サーバ１４０において仮想視点映像の生成を行うものである。図１に示すシステム構成例では、３台のカメラがサーバ１４０に接続されるスター型構成としたが、カメラ同士がデイジーチェーンにより接続され、そこからサーバ１４０に接続される構成としてもよい。また、カメラの台数は何台でもよく、台数を限定するものではない。例えば、サッカーやラグビーの試合を撮影するような場面では、フィールドを囲むように配置された１０〜２０台のカメラによりフィールド上にいる選手やボールが撮影される。
【００１４】
まず、各カメラの構成についてカメラ１１０を例に説明する。カメラ１１０は、撮像部１１１、リファレンス画像決定部１１２、画像位置補正部１１３によって構成される。カメラ１２０及び１３０も、カメラ１１０と等価な構成を有している。撮像部１１１は、レンズやイメージセンサ等を有し、被写体の撮影を行なう。そして、複数の静止画（フレーム画像）で構成される、例えば数十ｆｐｓ程度の動画像のデータを取得する。得られた画像データは、その用途に応じてリファレンス画像決定部１１２及び画像位置補正部１１３に送られる。
【００１５】
リファレンス画像決定部１１２は、後述のキャリブレーション部１４２から受け取ったカメラパラメータを用いて、撮像部１１１で撮影された複数の候補画像の中から、画像位置補正部１１３でリファレンス画像として使用する画像を選択する。
【００１６】
画像位置補正部１１３は、仮想視点映像の生成用に撮影された動画像に対して、リファレンス画像決定部１１２で決定されたリファレンス画像を用いて、撮影中のカメラの揺れに応じて画像位置を安定させる位置合わせを目的とした位置補正処理を行なう。位置補正処理が施された動画像データは、サーバ１４０の画像取り込み部１４１に送られる。画像位置補正部１１３で実施する補正処理は、上述の位置補正処理に限られない。例えば、カメラ毎の色のばらつきを抑えるための色補正処理をさらに行なってもよい。また、ブレに対する補正処理をさらに行ってもよい。具体的には、カメラに内蔵された不図示のセンサ（例えば加速度センサやジャイロセンサ）からの出力データに基づき画像のブレ量を推定したり、連続した複数のフレーム画像を比較してその移動量を推定して補正するような処理である。なお、画像位置補正部１１３は、リファレンス画像決定部１１２がリファレンス画像を選択するより前に受信した動画像データについては、位置補正処理を実行することなくそのまま画像取り込み部１４１に送信するものとする。
【００１７】
次に、サーバ１４０について説明する。サーバ１４０は、画像取り込み部１４１、キャリブレーション部１４２、仮想視点映像生成部１４３によって構成される。画像取り込み部１４１は、各カメラ１１０〜１３０の画像位置補正部１１３から動画像データを受信し、その用途に応じて内部転送する。すなわち、受信した動画像データがキャリブレーション用であればキャリブレーション部１４２に転送し、仮想視点映像の生成用であれば仮想視点映像生成部１４３に転送する。
【００１８】
キャリブレーション部１４２は、画像取り込み部１４１から受け取ったカメラ１１０〜１３０で撮影されたキャリブレーション用の動画像（以下、「キャリブレーション用画像」）を用いてキャリブレーション処理を行う。キャリブレーション処理は、多視点映像の撮影開始前に実行され、カメラ１１０〜１３０それぞれのカメラパラメータが求められる。カメラパラメータは、キャリブレーション用画像から検出した画像特徴点を用いて、カメラ間での画像特徴点のマッチングを行って世界座標（共通座標系の座標）と画像座標との対応付けを行うことで得ることができる。或いは、カメラ固有のパラメータである内部パラメータには予め用意した値を用い、画像データからはカメラの位置及び姿勢を表す外部パラメータのみを求めてもよい。さらには、予め用意した内部パラメータを初期値として用いて外部パラメータを求めた後に、内部パラメータを補正するようにしてもよい。また、キャリブレーション結果の評価として、画像特徴点の再投影誤差を求め、得られた誤差がある閾値以下になるまで誤検出や誤マッチングの削除を行って、カメラパラメータの最適化計算を行なうようにしてもよい。また、カメラパラメータの形式も特に限定されるものではない。カメラ１１０〜１３０それぞれについてのキャリブレーション結果（カメラパラメータ）は、仮想視点映像生成部１４３、及び各カメラ１１０〜１３０のリファレンス画像決定部１１２に送られる。
【００１９】
仮想視点映像生成部１４３は、キャリブレーション部１４２から受け取った各カメラ１１０〜１３０のカメラパラメータと、画像取り込み部１４１から受け取った画像位置補正後の多視点映像とに基づいて、仮想視点映像の生成処理を行う。具体的には、多視点映像内の注目する被写体（例えば選手やボール）についての、三次元モデルの生成、レンダリングなどの処理が、別途指定された仮想カメラパスや仮想視点パスに従って行われる。生成された仮想視点映像のデータは、不図示のモニタやメモリに出力される。
【００２０】
次に、本実施形態の画像処理システム１００において、キャリブレーション用画像の撮影から仮想視点映像が出来上がるまでの大まかな流れを説明する。なお、本実施形態では、リファレンス画像の複数の候補画像における画像特徴点の再投影誤差に基づきリファレンス画像の選択を行う態様について説明する。しかし、キャリブレーションの結果として得られたカメラの位置及び姿勢に最も近い位置及び姿勢のカメラから撮影した画像をリファレンス画像として選択できる方法であればよく、以下のフローで示す内容に限定されるものではない。図２は、本実施形態に係る、仮想視点映像生成までの一連の処理の流れを示すフローチャートである。この一連の処理は、サーバ１４０が備えるＣＰＵ（不図示）が、ＲＯＭやＨＤＤ等の記憶媒体（不図示）にされた所定のプログラムをＲＡＭ（不図示）に展開してこれを実行することで実現される。
【００２１】
まず、ステップ２０１では、カメラ１１０〜１３０の設置が完了した状態で、各カメラが備える撮像部１１１によって、キャリブレーション用画像が撮影される。この撮影は、例えば市松模様のパターンが形成された板（マーカ）を持った人間が、各カメラの画角を考慮してすべての撮影対象範囲を網羅するように移動し、撮影対象の空間の様々な場所で撮影することが想定される。これは、より多くの画像特徴点が撮影対象の空間に散らばって検出できるようにするためである。そして、撮影シーンがラグビー等のスポーツの試合であって、被写体として人物やボールといった動きのある物体が想定される場合は、各カメラによる撮影を同期させることが望ましい。一方、被写体が静止物体のみの場合は、カメラ間で同期撮影することは要しない。各カメラ１１０〜１３０の撮像部１１１によって取得されたキャリブレーション用画像のデータは、画像位置補正部１１３を介して、サーバ１４０の画像取り込み部１４１に送られる。この段階では、リファレンス画像が選択されていないので、前述のとおり、キャリブレーション用画像のデータに対して画像位置補正部１１３で位置補正処理が施されることはない。画像取り込み部１４１が受信したキャリブレーション用画像のデータは、キャリブレーション部１４２に順次送られ、キャリブレーション部１４２内に蓄積される。
【００２２】
ステップ２０２では、キャリブレーション用画像の撮影が完了したかどうかが判定される。キャリブレーション処理の実施に必要な量のキャリブレーション用画像が蓄積されていれば、撮影完了と判定されてステップ２０３に進む。一方、必要な量のキャリブレーション用画像が蓄積されていなければ、ステップ２０１に戻って撮影が続行される。
【００２３】
ステップ２０３では、キャリブレーション部１４２において、蓄積されたキャリブレーション用画像のデータを用いてキャリブレーション処理が実行され、各カメラ１１０〜１３０のカメラパラメータが求められる。ここで、各カメラで撮像されたキャリブレーション用画像には上述したマーカが映っている。例えば、３×３マスの市松模様のマーカを使用した場合であれば、計１６個の頂点を画像特徴点として検出することで、外部パラメータであるカメラの位置及び姿勢を推定することができる。このキャリブレーションにより、各カメラがどこに設置され、どの方向を撮影し、画角がどの程度あるのか、といった情報が得られる。求めたカメラパラメータは、仮想視点映像生成部１４３及び各カメラ１１０〜１３０のリファレンス画像決定部１１２に送られる。
【００２４】
ステップ２０４では、各カメラ１１０〜１３０のリファレンス画像決定部１１２において、撮像部１１１から受け取ったキャリブレーション用画像を構成するフレーム画像の中から、位置補正処理でリファレンス画像として用いる１のフレーム画像が選択される。リファレンス画像決定処理の詳細については後述する。リファレンス画像に決定されたフレーム画像のデータは、画像位置補正部１１３に送られる。
【００２５】
ステップ２０５では、各カメラ１１０〜１３０の撮像部１１１において、仮想視点映像の生成に用いる多視点映像を構成する各動画像が撮影される。この際、撮影シーンがラグビー等のスポーツの試合であれば、上述のとおり全カメラでの同期撮影となる。撮像部１１１で撮影された仮想視点画像のベースとなる動画像データは、画像位置補正部１１３へ送られる。
【００２６】
ステップ２０６では、各カメラ１１０〜１３０の画像位置補正部１１３において、ステップ２０５で取得した動画像データに対し、ステップ２０４で選択したリファレンス画像を用いて位置補正処理が実行される。これにより、仮想視点映像の生成に供される動画像を構成する各フレーム画像における画像位置が、各カメラの揺れに応じて調整される。図３は、位置補正処理を説明する図である。図３（ａ）は位置補正前のフレーム画像、同（ｂ）はリファレンス画像、同（ｃ）は位置補正後のフレーム画像をそれぞれ示している。位置補正前のフレーム画像とリファレンス画像との比較によって、当該フレーム画像を撮像した時のカメラは設置時よりも少し上を向いてしまっていることが分かる。よって、図３（ｃ）に示すように、リファレンス画像とのずれが生じている分だけカメラを下向きにした状態の画像に補正される。こうして、画像位置が補正された動画像データは画像位置補正部１１３からサーバ１４０へ送られる。この際、位置補正がなされた動画像データと併せて、同期撮影されたそれぞれの動画像データを識別するための情報も送られる。サーバ１４０では、各カメラ１１０〜１３０から受け取った画像位置補正後の動画像データが集約され、多視点映像データとして仮想視点映像生成部１４３に渡される。
【００２７】
ステップ２０７では、仮想視点映像生成部１４３において、多視点映像データ及び、キャリブレーション処理で得られたカメラパラメータを用いて、所望の仮想視点映像が生成される。すなわち、三次元空間内に仮想的に配置した実際には存在しないカメラ（仮想カメラ）から見た映像が、上述のようにして得られた多視点映像とカメラパラメータに従って生成される。
【００２８】
ステップ２０８では、所定の撮影時間が経過するなどして多視点映像の撮影が完了したかどうかが判定される。多視点映像の撮影が完了していなければ、ステップ２０５に戻って撮影が続行される。一方、多視点映像の撮影が完了していれば、本処理を終える。
【００２９】
以上が、本実施形態に係る、仮想視点映像が生成されるまでの一連の処理の流れである。なお、ステップ２０１〜ステップ２０４までは、カメラを設置してから多視点映像の撮影を開始するまでの準備段階の処理（前処理）である。そして、ステップ２０５〜ステップ２０８が、多視点映像を撮影し、それをベースに仮想視点映像を実際に生成する処理（本処理）である。図２のフローは、前処理と本処理とを一体とし、すべてのステップを画像処理システム１００において自動で実行する態様を想定している。しかし、本実施形態の手法は、このような態様に限定されない。例えば、キャリブレーション用画像の撮影完了（ステップ２０２）や多視点映像の撮影開始（ステップ２０５）の判断をユーザが行ない、次のステップへの移行を、不図示のユーザインタフェースを介したユーザ指示に係らしめてもよい。また、図２の処理をすべてサーバ１４０が行うようにしても良い。この場合、ステップ２０１及び２０５において、サーバ１４０はカメラに対して撮影指示を送信する。また、図２のフローは、多視点映像の撮影と並行してライブで仮想視点映像を生成するような用途を想定した内容となっている。しかし、例えば撮影した多視点映像のデータをＨＤＤ等に蓄積しておき、後から仮想視点映像の生成を行うようにしてもよい。
【００３０】
次いで、前述のステップ２０４におけるリファレンス画像決定処理の詳細について説明する。本実施形態では、キャリブレーション用画像を構成する複数のフレーム画像をリファレンス画像の候補とし、その中からリファレンス画像とする１のフレーム画像を選択する場合を例に説明する。
【００３１】
図４は、本実施形態に係る、リファレンス画像決定処理の詳細を示すフローチャートである。なお、図４のフローの実行を開始する時点で、リファレンス画像決定部１１２には、キャリブレーション処理で得られた自カメラのカメラパラメータ、及びリファレンス画像の候補となる複数のフレーム画像が既にＲＡＭ（不図示）等に保持されているものとする。
【００３２】
まず、ステップ４０１では、リファレンス画像の候補となる複数のフレーム画像から、後述の再投影誤差を求める際の基準となる画像特徴点が設定される。撮影シーンが例えばラグビーの試合であれば、ゴールポスト、広告板、ベンチなどが画像特徴点となり得る。この場合において、設定する画像特徴点の数は何点でもよいが、ここでは説明の便宜上、１つの画像特徴点が設定されたものとして説明を行う。また、設定方法も、ユーザが任意のフレーム画像を確認しながら手動で指定してもよいし、所定の条件に合致する画像特徴点を自動で設定するようにしてもよい。さらには、キャリブレーション処理の過程で検出した画像特徴点及び特徴点マッチング情報をキャリブレーション部１４２から取得し、より多くのフレーム画像で検出された画像特徴点を自動で設定するようにしてもよい。
【００３３】
ステップ４０２では、ステップ４０１で設定した画像特徴点を画像上に再投影したときの画像座標（x,y）が、キャリブレーション処理で得られた自カメラのカメラパラメータを用いて求められる。この画像座標（x,y）は、カメラパラメータに基づいて、画像特徴点の世界座標（x_w,y_w,z_w）から画像上における座標（x,y）を求める公知の変換手法を適用して求めることができる。こうして、各カメラが比較的安定していると推認される状態（≒静止状態）の下での、画像特徴点についての画像座標が得られる。図５（ａ）は、キャリブレーション結果のカメラパラメータを用いて得られた、再投影された画像特徴点の画像座標の一例を示す図である。図５（ａ）において、画像上の×印は、再投影された画像特徴点のイメージ（キャリブレーション結果であり、実際の画像データではない。）を示している。この例では、再投影された画像特徴点の画像座標として、（x,y）＝（1920,1080）が得られている。
【００３４】
ステップ４０３では、リファレンス画像の候補である複数のフレーム画像の中から、注目するフレーム画像（以下、「注目フレーム画像」と呼ぶ。）が決定される。そして、ステップ４０４では、注目フレーム画像における画像特徴点の画像座標が取得される。具体的には、当該注目フレーム画像内における対応する画像特徴点を検出して、ステップ４０１で設定した画像特徴点とのマッチングによって、その画像座標が取得される。図５（ｂ）にその一例を示す。図５（ｂ）では、３枚のフレーム画像（画像No.1〜画像No.3）における画像特徴点の位置と、それぞれのフレーム画像を撮影した時のカメラの位置が示されている。この例では、カメラは撮影方向（z方向）に対して縦方向（ｙ方向）にのみ振動しており、画像No.1は設置時よりも上に、画像No.3は設置時よりも下に変位している。そして、縦方向にカメラが振動していることから、画像特徴点のｘ座標については画像No.1〜No.3のいずれも同じ値“1920”であるが、ｙ座標については画像No.1〜No.3でそれぞれ違う値“1090”、“1080”、“1070”となっている。
【００３５】
ステップ４０５では、ステップ４０１で設定された画像特徴点についての、ステップ４０２で取得した画像座標と、ステップ４０４で取得した注目フレーム画像における画像座標との誤差が算出される。この誤差（以下、再投影誤差）は、両座標値の差分を求めることで得られるが、ピクセル単位で算出してもよいし、世界座標系に変換してメートル単位で算出してもよい。前述の図５（ａ）及び（ｂ）に示した例では、画像No.1とNo.3の再投影誤差がｘ座標は“0”、ｙ座標で“10”となり、画像No.2の再投影誤差はｘ座標とｙ座標で共に“0”となる。
【００３６】
ステップ４０６では、リファレンス画像の候補である複数のフレーム画像のすべてに対し、ステップ４０１で設定された画像特徴点についての再投影誤差の算出が完了しているか判定される。未処理のフレーム画像があれば、ステップ４０３に戻って処理が続行される。一方、すべてのフレーム画像に対してついて画像特徴点についての再投影誤差の算出が完了している場合はステップ４０７に進む。
【００３７】
ステップ４０７では、各フレーム画像から求めた画像特徴点についての再投影誤差が比較され、再投影誤差の最も小さいフレーム画像が、リファレンス画像として選択される。前述の図５（ａ）〜（ｃ）に示した例では、画像No.1〜3のフレーム画像のうち、最も再投影誤差が小さい画像No.2のフレーム画像が、リファレンス画像として選択されることになる。
【００３８】
以上が、本実施形態に係るリファレンス画像決定処理の内容である。こうして画像特徴点の再投影誤差の最も少ない画像をリファレンス画像として選択することで、キャリブレーション処理で得られたカメラの位置及び姿勢に最も近い条件で撮影されたフレーム画像を、位置補正処理におけるリファレンス画像とすることができる。
【００３９】
なお、カメラが縦方向（ｙ方向）にのみ振動している場合を例に説明を行ったが、横方向（ｘ方向）にも振動している場合は、縦方向と横方向の差分の合計値が最小となるフレーム画像を選択すればよい。この際、縦方向の差分と横方向の差分とにそれぞれ異なる重み付けを行って評価を行ってもよい。また、ステップ４０１で複数の画像特徴点を設定した場合は、画像特徴点毎にステップ４０２〜ステップ４０６までの処理を行い、各画像特徴点について得られた再投影誤差の平均値もしくは合計値を用いて、誤差が最小のフレーム画像をリファレンス画像として選択すればよい。さらには、それぞれの画像特徴点について重要度や信頼度で重み付けして、再投影誤差の平均値もしくは合算値を求めてもよい。例えば、画像特徴点毎の再投影誤差に応じて、誤差の小さい画像特徴点の信頼度を高くしたり、画像特徴点を検出したカメラ台数や画像枚数が多いほど信頼度を高くするといった具合である。さらには、画像中央に近いほど重要度を高くするといったように、画像特徴点の座標位置に応じて重み付けを行ってもよい。
【００４０】
＜変形例＞
本実施形態では、リファレンス画像を、キャリブレーション用画像の中から選択していた。これに代えて、例えばマーカを配置していない背景のみの撮影を別途行い、こうして得られたリファレンス用の動画像を構成するフレーム画像の中からリファレンス画像を選択するようにしてもよい。
【００４１】
また、本実施例では、設定された画像特徴点について、画像上に再投影した二次元の画像座標（x,y）を求めていたが（ステップ４０２）。これに代えて、三次元のカメラ座標（x,y,z）を求めても構わない。この場合、カメラパラメータに基づいて、画像特徴点の世界座標（x_w,y_w,z_w）からカメラ座標（x,y,z）を求める公知の変換手法を適用すればよい。なお、画像座標に代えてカメラ座標を求める場合は、ステップ４０４で各フレーム画像における画像特徴点のカメラ座標が取得され、ステップ４０５ではその誤差が算出され、ステップ４０７で当該算出された誤差に基づきリファレンス画像が選択されることになる。
【００４２】
また、本実施形態では、各カメラ１１０〜１３０がリファレンス画像決定部１１２を備え、自カメラについてのリファレンス画像の決定をそれぞれのカメラで行った。しかし、サーバ１４０において各カメラ１１０〜１３０についてのリファレンス画像をまとめて決定するように構成してもよい。同様に、本実施形態では各カメラ１１０〜１３０に備わった画像位置補正部１１３で行っている位置補正処理についても、サーバ１４０においてまとめて行うように構成してもよい。
【００４３】
また、キャリブレーション結果のカメラ位置及び姿勢を基準としてリファレンス画像を決定する本実施形態の場合、キャリブレーション結果のカメラ位置及び姿勢はできるだけカメラの静止状態に近い方が好ましいといえる。そのため、キャリブレーション用画像の撮影時に大きな振動が検出された場合は、当該検出時のフレーム画像を除いてキャリブレーション処理を行うようにしてもよい。その場合、振動値の閾値を設け、検出された振動値が当該閾値より小さい場合のフレーム画像のみを使用してキャリブレーション処理を行えばよい。振動値を取得する手法としては、例えば、カメラに内蔵された加速度センサあるいはジャイロセンサなどのセンサからの出力データに基づき算出したり、複数のフレーム画像を比較してフレーム画像間のずれ量を算出するといった手法が挙げられる。そして、振動値の閾値については、予め設定してもよいし、ユーザが任意のフレーム画像を見ながら設定してもよい。また、全カメラで同じ閾値を用いてもよいし、各カメラの設置環境に応じ、カメラ毎に異なる閾値を設定してもよい。また、数パターンの閾値を予め用意しておき、撮影時の振動値もしくは振幅値によって閾値を切り替えるようにしてもよい。
【００４４】
さらには、キャリブレーション結果を用いることなく、リファレンス画像の候補画像それぞれについて、評価対象とする画像特徴点の画像座標の平均値を算出し、平均値に最も近い画像をリファレンス画像として選択するようにしてもよい。特に、キャリブレーション用画像をリファレンス画像の候補として用いる場合は、キャリブレーション結果を用いる場合とほぼ同じ結果が得られる。キャリブレーション処理においても、それぞれの画像における画像特徴点の座標を用いてカメラパラメータを求めているためである。ただし、キャリブレーション処理では他カメラの画像も使用してカメラパラメータを求めるため、完全に同じ結果になるとは限らない。
【００４５】
また、リファレンス画像の候補画像の撮影時に、センサ等を用いて振動量を計測し、最も振動量の少ない画像をリファレンス画像として選択するようにしてもよい。これにより、カメラが最も静止状態に近い状態で撮影された画像をリファレンス画像とすることができる。キャリブレーション用画像から得られる平均的なカメラの位置及び姿勢は、カメラの静止状態に近くなる場合が多いため、この手法の場合は、キャリブレーション結果のカメラパラメータに最も近い画像を選択する場合とほぼ同じ結果が得られる。ただし、キャリブレーション用画像内に、カメラの静止状態に対して片寄った振動状態での画像が多く含まれる場合、キャリブレーション結果としては片寄った振動状態でのカメラパラメータが求められることになるため、完全に同じ結果になるとは限らない。
【００４６】
また、決定されたリファレンス画像から新たにカメラパラメータを求め、当該求めたカメラパラメータと、キャリブレーション結果のカメラパラメータとの差分を位置補正処理後に算出し、当該差分を考慮した仮想視点映像を生成するようにしてもよい。この場合、例えばサーバ１４０内にカメラパラメータ差分算出部を新たに設け、カメラパラメータ差分算出部は、キャリブレーション処理で得られた各カメラ１１０〜１３０のカメラパラメータをキャリブレーション部１４２から受け取って保持するようにする。また、リファレンス画像として決定された画像のデータをリファレンス画像決定部１１２から受け取ると、当該画像データから改めてカメラパラメータを求める。そして、各カメラ１１０〜１３０について、保持しておいたキャリブレーション結果のカメラパラメータと、リファレンス画像から求めたカメラパラメータとの差分を算出し、当該差分のデータを仮想視点映像生成部１４３に渡す。そして、仮想視点映像生成部１４３では、位置補正処理された多視点映像に対し、差分に応じて画像位置を再調整した上で、仮想視点映像の生成を行う。これにより、より高画質の仮想視点映像を得ることができる。
【００４７】
以上のとおり本実施形態によれば、キャリブレーション結果として得られたカメラの位置及び姿勢に最も近い位置及び姿勢のカメラから撮影した画像が、位置補正処理におけるリファレンス画像として決定される。これにより、複数のカメラを用いて撮影した多視点映像に基づき仮想視点映像を生成する場面において、異なるタイミングで行われるカメラの位置及び姿勢の推定結果を一致させることができる。
【実施形態２】
【００４８】
次に、仮想視点映像の生成に用いるカメラパラメータを随時更新する処理を追加した態様を、実施形態２として説明する。なお、実施形態１と共通する部分については説明を省略ないしは簡略化し、以下では差異点を中心に説明を行うものとする。
【００４９】
図６は、本実施形態に係る画像処理システムの構成を示すブロック図である。本実施形態の画像処理システム１００も、その基本的構成は実施形態１と同じであり、カメラ１１０〜１３０及びサーバ１４０から成る。図１の画像処理システム１００と同一の処理を行うものについては、同一の符号を付与して表している。実施形態１との違いは、サーバ１４０内にカメラパラメータ管理部６０１が追加されている点である。
【００５０】
カメラパラメータ管理部６０１は、キャリブレーション結果として得られた各カメラ１１０〜１３０のカメラパラメータをキャリブレーション部１４２から受け取り、仮想視点映像の生成時に使用する各カメラ１１０〜１３０のカメラパラメータを管理する。そして、リファレンス画像として選択された画像をリファレンス画像決定部１１２から受信すると、当該画像からカメラパラメータを求め、当該画像を撮影したカメラに対応するカメラパラメータを、新たに得られた内容で更新する。なお、カメラパラメータの求め方は、キャリブレーション部１４２においてカメラパラメータを求める手法と同様であり、特に限定されない。
【００５１】
図７は、本実施形態に係る、カメラパラメータの更新処理を含む、仮想視点映像生成までの一連の処理の流れを示すフローチャートである。この一連の処理は、サーバ１４０が備えるＣＰＵ（不図示）が、ＲＯＭやＨＤＤ等の記憶媒体（不図示）にされた所定のプログラムをＲＡＭ（不図示）に展開してこれを実行することで実現される。
【００５２】
ステップ７０１〜ステップ７０４は、実施形態１の図２のフローにおけるステップ２０１〜ステップ２０６にそれぞれ対応する。すなわち、まず、カメラ１１０〜１３０の設置が完了した状態でキャリブレーション用画像が撮影される（ステップ７０１）。そして、キャリブレーション用画像の撮影が完了した段階で（ステップ７０２でＹｅｓ）、キャリブレーション処理が実行されて各カメラ１１０〜１３０のカメラパラメータが求められる（ステップ７０３）。そして、各カメラ１１０〜１３０におけるリファレンス画像決定部１１２において、キャリブレーション用画像を構成するフレーム画像の中からリファレンス画像として用いる１のフレーム画像が選択される（ステップ７０４）。リファレンス画像として選択されたフレーム画像のデータは、本実施形態の場合、画像位置補正部１１３とサーバ１４０に送られる。
【００５３】
ステップ７０５では、サーバ１４０内のカメラパラメータ管理部６０１において、リファレンス画像として選択された、各カメラに対応するフレーム画像からカメラパラメータが求められる。そして、各カメラについてのカメラパラメータが、リファレンス画像から求めたカメラパラメータの内容で更新される。以降のステップ７０７〜ステップ７１０は、実施形態１の図２のフローにおけるステップ２０１〜ステップ２０６にそれぞれ対応する。すなわち、仮想視点映像の生成に用いる多視点映像を構成する動画像が各カメラで撮影され（ステップ７０７）、撮影された動画像それぞれに対してリファレンス画像を用いた位置補正処理が実行される（ステップ７０８）。そして、画像位置が補正された多視点映像データ及び、ステップ７０６で更新されたカメラパラメータを用いて、所望の仮想視点映像が生成される（ステップ７０９、７１０）。
【００５４】
以上が、本実施形態に係る、仮想視点映像が生成されるまでの一連の処理の流れである。このようにカメラパラメータを更新することで、仮想視点映像生成に用いる位置補正後の多視点映像と、仮想視点映像生成に使用するカメラパラメータが表すカメラの位置及び姿勢を完全に一致させることができる。
【００５５】
なお、本実施形態の場合、他カメラの画像データも使用して求めたキャリブレーション結果のカメラパラメータを更新によって変更してしまうため、カメラ間での位置合わせにずれが生じることになり、画質劣化の要因となる場合がある。つまり、カメラ間での位置合わせのずれ量、あるいは仮想視点映像生成の手法やカメラの配置状況などによっては、カメラパラメータを更新しない方が画質劣化を抑えることができる場合がある。そこで、キャリブレーション結果のカメラパラメータとリファレンス画像から求めたカメラパラメータとの差分の大きさ、カメラ間での位置合わせのずれ量、仮想視点映像の生成手法に応じて、カメラパラメータを更新するか否かを決定してもよい。もしくは、それぞれのカメラパラメータを用いて仮想視点映像を生成した上で、出来上がった仮想視点映像の画質評価を行い、カメラパラメータを更新するか否かを判定するようにしてもよい。
【００５６】
また、上記の実施形態では、多視点映像という表現を用いたが、複数視点であれば良い。例えば３つの異なる視点の映像は、本実施形態で説明する多視点映像の範疇である。
【００５７】
（その他の実施形態）  
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５８】
１００  画像処理システム
１１０  カメラ
１１１  撮像部
１１２  リファレンス画像決定部
１１３  画像位置補正部
１２０  カメラ
１３０  カメラ
１４０  サーバ
１４１  画像取り込み部
１４２  キャリブレーション部
１４３  仮想視点映像生成部
【図１】
2018207252.tif 000003
【図２】
2018207252.tif 000004
【図３】
2018207252.tif 000005
【図４】
2018207252.tif 000006
【図５】
2018207252.tif 000007
【図６】
2018207252.tif 000008
【図７】
2018207252.tif 000009