(57)【要約】【課題】カメラの設置時におけるマーカを用いたキャリブレーション後、マーカなしで再度キャリブレーションを精度よく行う。【解決手段】複数のカメラ１０２により撮影されたマーカを含む画像群を用いてカメラ設置時にキャリブレーションを行うことにより、各カメラ１０２の位置姿勢を表すカメラパラメータを算出する。そのキャリブレーションの後、カメラ設置時に使用した画像群の画像及び複数のカメラ１０２により新たに撮影されたマーカを含まない画像群の画像からそれぞれ抽出された画像特徴点とカメラ設置時に算出されたカメラパラメータとを用いて再びキャリブレーションを行うことにより、各カメラ１０２の位置姿勢を表すカメラパラメータを再び算出する。【選択図】  図２
2020193950.tif 000002
【特許請求の範囲】
【請求項１】
複数の撮影装置のそれぞれの位置姿勢を表すパラメータと、当該パラメータを算出する第１のキャリブレーションを行う際に用いた前記複数の撮影装置により撮影されて取得されたマーカを含む第１の画像群と、を取得する取得手段と、
前記第１のキャリブレーションの後に前記複数の撮影装置により撮影されて取得された前記マーカを含まない第２の画像群の画像、及び前記取得手段により取得された第１の画像群の画像からそれぞれ抽出された画像特徴点と、前記取得手段により取得されたパラメータと、に基づいて第２のキャリブレーションを行うことにより、各撮影装置の位置姿勢を表すパラメータを算出する算出手段と、
を備えることを特徴とする画像処理装置。
【請求項２】
撮影装置ごとに保持されているリファレンス画像を基準として、各撮影装置について、撮影された一連の画像群の位置合わせを行う画像補正手段をさらに備え、
前記画像補正手段は、前記第２の画像群の画像を前記リファレンス画像として使用することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記算出手段は、前記画像補正手段の位置合わせ方法に基づいて、前記位置合わせ方法に適した画像を前記第２のキャリブレーションで使用する前記第２の画像群の画像として特定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記第２のキャリブレーションを行うか否かを判定する判定手段をさらに備え、
前記判定手段は、撮影装置の振動が前記位置合わせ可能な範囲を超えた場合に、前記第２のキャリブレーションを行うと判定することを特徴とする請求項２又は３に記載の画像処理装置。
【請求項５】
前記振動を検出する検出手段をさらに備えることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記第１のキャリブレーション又は前記第２のキャリブレーションにより算出されたパラメータを用いて、前記複数の撮影装置により撮影された画像から仮想視点の映像生成を行う映像生成手段と、
前記第２のキャリブレーションの実行に応じて、前記映像生成手段により使用されるパラメータの更新及び前記リファレンス画像の更新を反映するタイミングを、画像のシーン内容に基づいて判定する反映判定手段と、
をさらに備えることを特徴とする請求項２乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記反映判定手段は、前記パラメータの更新を反映する画像と、前記リファレンス画像の更新を反映する画像とを一致させるように制御することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記パラメータの更新及び前記リファレンス画像の更新を反映する前記タイミングは、シーンの区切りとなるタイミング、又は、仮想視点の切り替えタイミングであることを特徴とする請求項６又は７に記載の画像処理装置。
【請求項９】
前記第１の画像群及び第２の画像群はそれぞれ、前記複数の撮影装置により複数の時刻に複数の視点で撮影された画像群であることを特徴とする請求項１乃至８の何れか１項に記載の画像処理装置。
【請求項１０】
前記算出手段は、前記第２の画像群から、前記第２のキャリブレーションを行う際に使用する画像を特定することを特徴とする請求項９に記載の画像処理装置。
【請求項１１】
前記算出手段は、前記第２の画像群のうち仮想視点の映像生成を行う対象となる特定のシーンに対応する画像群の中から、前記特定のシーンの先頭画像、前記特定のシーンの後尾画像、又は、所定数以上の特徴点が含まれる画像を、前記第２のキャリブレーションを行う際に使用する画像として特定することを特徴とする請求項９に記載の画像処理装置。
【請求項１２】
画像処理装置の制御方法であって、
複数の撮影装置のそれぞれの位置姿勢を表すパラメータと、当該パラメータを算出する第１のキャリブレーションを行う際に用いた前記複数の撮影装置により撮影されて取得されたマーカを含む第１の画像群と、を取得する取得工程と、
前記第１のキャリブレーションの後に前記複数の撮影装置により撮影されて取得された前記マーカを含まない第２の画像群の画像、及び前記取得工程により取得された第１の画像群の画像からそれぞれ抽出された画像特徴点と、前記取得工程により取得されたパラメータと、に基づいて第２のキャリブレーションを行うことにより、各撮影装置の位置姿勢を表すパラメータを算出する算出工程と、
を有することを特徴とする画像処理装置の制御方法。
【請求項１３】
コンピュータを、請求項１乃至１１の何れか１項に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理装置の制御方法及びプログラムに関するものである。
【背景技術】
【０００２】
複数のカメラを異なる位置に設置して多視点で同期撮影し、当該撮影により得られた多視点画像を用いて仮想視点画像を生成する技術が注目されている。多視点画像から仮想視点画像を生成する技術によれば、例えば、サッカーやラグビーのハイライトシーンを様々な角度から閲覧することができるため、通常の画像と比較してユーザに高臨場感を与えることができる。
【０００３】
複数のカメラの撮影画像を用いて仮想視点画像の生成を行う場合には、カメラ設置時に各カメラの位置姿勢推定を行うキャリブレーション（以降、設置時キャリブレーション）を行う必要がある。設置時キャリブレーションでは、特別なマーカを撮影した各カメラのキャリブレーション用の撮影画像を用いて、各カメラのカメラパラメータを求める処理を行う。カメラパラメータとは、カメラ固有の内部パラメータ（焦点距離、画像中心、レンズ歪みパラメータ等）や、カメラの位置姿勢を表す外部パラメータ（回転行列、位置ベクトル等）などである。
【０００４】
ここで、設置時キャリブレーションによるカメラ位置姿勢推定後、画像生成用の撮影までの間や撮影中に、経時的にカメラ位置姿勢が変化してしまうことがある。特に、スポーツの試合等を撮影する際には、試合当日にフィールド上にマーカ配置が必要な設置時キャリブレーション用の撮影を行うことができず、試合前日以前に設置時キャリブレーション用の撮影を行うことがある。この場合、カメラ位置姿勢が変化してしまう可能性がある。すると、設置時キャリブレーションで算出したカメラ位置姿勢と、映像生成用の撮影画像のカメラ位置姿勢とがずれてしまうため、生成される仮想視点画像の画質が劣化する可能性がある。
【０００５】
特許文献１では、ステレオ画像を撮影する車載カメラにおいて、保持している前回キャリブレーションデータに対して、新たに撮影したステレオ画像のみから抽出した特徴点を用いてキャリブレーションずれを補正することが開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−３５４２５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、新たに撮影したマーカなしの画像を用いた特徴点マッチングでは精度の高いキャリブレーションを行うことが難しいため、特許文献１に記載の技術では、マーカなしで再度キャリブレーションを精度よく行うことが難しいという課題がある。
【０００８】
本発明は、上記の課題に鑑みてなされたものであり、カメラの設置時におけるマーカを用いたキャリブレーション後、マーカなしで再度キャリブレーションを精度よく行うための技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成する本発明に係る画像処理装置は、
複数の撮影装置のそれぞれの位置姿勢を表すパラメータと、当該パラメータを算出する第１のキャリブレーションを行う際に用いた前記複数の撮影装置により撮影されて取得されたマーカを含む第１の画像群と、を取得する取得手段と、
前記第１のキャリブレーションの後に前記複数の撮影装置により撮影されて取得された前記マーカを含まない第２の画像群の画像、及び前記取得手段により取得された第１の画像群の画像からそれぞれ抽出された画像特徴点と、前記取得手段により取得されたパラメータと、に基づいて第２のキャリブレーションを行うことにより、各撮影装置の位置姿勢を表すパラメータを算出する算出手段と、
を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、カメラの設置時におけるマーカを用いたキャリブレーション後、マーカなしで再度キャリブレーションを精度よく行うことができる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態に係る画像処理システムの模式図である。
【図２】実施形態１における画像処理システムの構成を示すブロック図である。
【図３】実施形態１における画像処理装置が実施する処理の手順を示すフローチャートである。
【図４】実施形態１における再キャリブレーション処理の詳細な手順を示すフローチャートである。
【図５】実施形態１における再キャリブレーション処理に用いる画像例を示す図である。
【図６】実施形態２における画像処理システムの構成を示すブロック図である。
【図７】実施形態２における画像処理装置が実施する処理の手順を示すフローチャートである。
【図８】一実施形態に係る画像処理装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【００１３】
（実施形態１）
実施形態１では、映像生成用の撮影を完了した後に、映像生成を行うシーンの画像を用いてキャリブレーションを行う処理について説明する。以降、設置時キャリブレーション後に、キャリブレーション用マーカなしの画像を用いて行うキャリブレーションを再キャリブレーションと呼ぶ。
【００１４】
＜画像処理システムの配置構成＞
図１は、本実施形態に係る画像処理システム１０１の一例を示した模式図である。
【００１５】
画像処理システム１０１は、複数のカメラ（撮影装置）１０２と画像処理装置画像処理装置１０３とを含んで構成されている。複数のカメラ１０２は、撮影対象であるフィールド１０４を囲むように配置され、複数のカメラ１０２が撮影した画像を画像処理装置１０３が取得し、画像処理装置１０３が映像生成を行う。
【００１６】
なお、図１に示す画像処理システム１０１では、複数のカメラ１０２がそれぞれ画像処理装置１０３に接続されるスター型の構成を例示したが、図示の例に限定されるものではない。例えば、カメラ１０２同士がデイジーチェーンにより接続され、そこから画像処理装置１０３に接続される構成としてもよい。また、カメラ１０２を１０台としたが、カメラ台数は何台でもよく、台数を限定するものではない。
【００１７】
＜画像処理システムの構成＞
図２は、実施形態１における画像処理システム１０１の構成を示すブロック図である。
【００１８】
カメラ１０２は、撮像部２０１を備える。図１に示すように本実施形態の画像処理システム１０１は、複数のカメラ１０２を含んで構成されるが、各カメラ１０２は同等の構成であるため図示しない。また、カメラ１０２と記載した場合には複数のカメラ１０２を指すものとする。
【００１９】
撮像部２０１は、画像の撮影を行い、撮影した画像を画像処理装置１０３へ送信する。次に、画像処理装置１０３は、画像取り込み部２０２、設置時キャリブレーション処理部２０３、再キャリブレーション処理部２０４、データ管理部２０５、画像補正部２０６、映像生成部２０７、及びシーン選択部２０８を備える。
【００２０】
画像取り込み部２０２は、カメラ１０２の撮像部２０１から送信された撮影画像群（複数のカメラ１０２により複数の時刻に複数の視点で撮影された画像群）を受信して保存し、処理に応じて、設置時キャリブレーション処理部２０３、再キャリブレーション処理部２０４、画像補正部２０６へ画像を送信する。画像取り込み部２０２には、全てのカメラ１０２の撮影画像群が集約される。
【００２１】
設置時キャリブレーション処理部２０３は、画像取り込み部２０２から、カメラ１０２がマーカを撮影した設置時キャリブレーション用画像を受信し、設置時キャリブレーション処理を行う。設置時キャリブレーション処理では、設置時キャリブレーション用画像から、画像特徴点として、設置時キャリブレーション用のマーカと、人物や構造物などの自然特徴点とを検出する。そして、カメラ間での画像特徴点のマッチングを行い、世界座標と画像座標との対応付けを行い、カメラ１０２のカメラパラメータを算出する。
【００２２】
カメラパラメータの算出手法としては、カメラ固有のパラメータである内部パラメータについては予め算出した値を使用し、画像からはカメラ位置姿勢を表す外部パラメータのみを算出するようにしてもよい。もしくは、予め算出した内部パラメータを初期値として用いて外部パラメータを算出した後に、内部パラメータを補正するようにしてもよい。また、設計値あるいは設置時に計測した外部パラメータを初期値として用いてもよく、算出手法を限定するものではない。また、設置時キャリブレーション結果の評価として特徴点の再投影誤差を算出し、誤差がある閾値以下になるまで誤検出や誤マッチングの削除を行って最適化計算を行い、パラメータを算出するようにしてもよい。また、算出されるカメラパラメータの形式についても特に限定されるものではない。
【００２３】
そして、設置時キャリブレーション処理部２０３は、算出したカメラ１０２のカメラパラメータ、及び、設置時キャリブレーション処理に使用した設置時キャリブレーション用画像を、データ管理部２０５に送信する。
【００２４】
再キャリブレーション処理部２０４は、画像取り込み部２０２から、カメラ１０２が撮影した映像生成シーン（例えば、得点シーンや好プレーのシーンなど）の画像群のうち１フレームを再キャリブレーション用画像として受信する。そして、映像生成用の撮影時のカメラ位置姿勢を算出する再キャリブレーション処理を行う。再キャリブレーション処理では、再キャリブレーション用画像と、データ管理部２０５から取得した設置時キャリブレーション時のカメラパラメータと、設置時キャリブレーション用画像とを用いて、カメラ１０２のカメラパラメータを算出する。
【００２５】
データ管理部２０５は、設置時キャリブレーション処理部２０３から受信した設置時キャリブレーション結果のカメラパラメータ及び設置時キャリブレーション用画像を保持する。また、映像生成シーンに対応した、再キャリブレーション処理部２０４から受信した再キャリブレーション結果のカメラパラメータと、画像補正部２０６で行う位置補正処理のリファレンス画像とを管理する。リファレンス画像の詳細は後述する。
【００２６】
画像補正部２０６は、画像取り込み部２０２から、カメラ１０２が撮影した映像生成用画像を受信する。そして、データ管理部２０５から取得した映像生成シーンに応じたカメラ毎のリファレンス画像を用いて、カメラの振動やブレに対して画像の位置を安定させるための位置合わせを行う位置補正処理を実施し、映像生成部２０７に送信する。画像補正部２０６で実施する補正処理として更に、カメラ毎の色のばらつきを抑えるための色補正処理等を行うようにしてもよい。また、更にブレに対する補正処理として、カメラに内蔵された加速度センサあるいはジャイロセンサなどのセンサからの出力データに基づいた画像のブレ量の推定を行ってもよい。また、時間的に連続した複数のフレーム画像を比較することで画像の移動量を推定することでブレ量を推定してもよい。そして、推定されたブレを補正する処理を行ってもよい。
【００２７】
映像生成部２０７は、画像補正部２０６から受信した映像生成用画像から、データ管理部２０５から取得した映像生成シーンに応じたカメラ１０２のカメラパラメータを用いて仮想視点の映像生成処理を行う。映像生成部２０７で行う複数のカメラの撮影画像を用いた仮想視点の映像生成処理としては、三次元モデル生成、レンダリングなどの処理を行い、生成された映像は不図示のモニタやメモリに出力される。
【００２８】
シーン選択部２０８は、画像取り込み部２０２に蓄積された撮影画像の中から、映像生成を行うシーンを選択する。映像生成シーンは、例えば得点シーンや好プレーのシーンである。シーン選択部２０８は、不図示の操作入力部を用いたユーザ選択に基づいてシーン選択を行ってもよいし、シーン内容を判別することにより自動でシーン選択を行うようにしてもよい。
【００２９】
＜画像処理装置のハードウェア構成＞
画像処理装置１０３のハードウェア構成について、図２を用いて説明する。なお、画像処理装置３００のハードウェア構成も、以下で説明する画像処理装置１０３の構成と同様である。画像処理装置１０３は、ＣＰＵ２１１、ＲＯＭ２１２、ＲＡＭ２１３、補助記憶装置２１４、表示部２１５、操作部２１６、通信Ｉ／Ｆ２１７、及びバス２１８を有する。
【００３０】
ＣＰＵ２１１は、ＲＯＭ２１２やＲＡＭ２１３に格納されているコンピュータプログラムやデータを用いて画像処理装置１０３の全体を制御することで、図１に示す画像処理装置１０３の各機能を実現する。なお、画像処理装置１０３がＣＰＵ２１１とは異なる１又は複数の専用のハードウェアを有し、ＣＰＵ２１１による処理の少なくとも一部を専用のハードウェアが実行してもよい。専用のハードウェアの例としては、ＡＳＩＣ（特定用途向け集積回路）、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）、およびＤＳＰ（デジタルシグナルプロセッサ）などがある。ＲＯＭ２１２は、変更を必要としないプログラムなどを格納する。ＲＡＭ２１３は、補助記憶装置２１４から供給されるプログラムやデータ、及び通信Ｉ／Ｆ２１７を介して外部から供給されるデータなどを一時記憶する。補助記憶装置２１４は、例えばハードディスクドライブ等で構成され、画像データや音声データなどの種々のデータを記憶する。
【００３１】
表示部２１５は、例えば液晶ディスプレイやＬＥＤ等で構成され、ユーザが画像処理装置１０３を操作するためのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）などを表示する。操作部２１６は、例えばキーボードやマウス、ジョイスティック、タッチパネル等で構成され、ユーザによる操作を受けて各種の指示をＣＰＵ２１１に入力する。
【００３２】
通信Ｉ／Ｆ２１７は、画像処理装置１０３の外部の装置との通信に用いられる。例えば、画像処理装置１０３が外部の装置と有線で接続される場合には、通信用のケーブルが通信Ｉ／Ｆ２１７に接続される。画像処理装置１０３が外部の装置と無線通信する機能を有する場合には、通信Ｉ／Ｆ２１７はアンテナを備える。バス２１８は、画像処理装置１０３の各部をつないで情報を伝達する。
【００３３】
本実施形態では表示部２１５と操作部２１６が画像処理装置１０３の内部に存在するものとするが、表示部２１５と操作部２１６との少なくとも一方が画像処理装置１０３の外部に別の装置として存在していてもよい。この場合、ＣＰＵ２１１が、表示部２１５を制御する表示制御部、及び操作部２１６を制御する操作制御部として動作してもよい。?
＜処理＞
次に、図３のフローチャートを参照して、本実施形態に係る画像処理装置１０３が実施する処理の手順を説明する。
【００３４】
Ｓ３０１において、画像取り込み部２０２は、カメラ１０２の設置が完了した状態で、撮像部２０１で撮影された設置時キャリブレーション用の画像を取り込み、設置時キャリブレーション処理部２０３に蓄積する。設置時キャリブレーション用の撮影においてはマーカを撮影するが、マーカをフィールド上に配置するなど撮影画像の被写体が静止物体のみである場合はカメラ間で同期せずに撮影してもよい。あるいは、マーカを持った人物が歩き回るなど被写体が動きのある物体を含む場合はカメラ間で同期して撮影するものとしてもよい。設置時キャリブレーション用画像としては、より多くの画像特徴点が対象空間に散らばって検出できることが求められるため、画像特徴点となるマーカ等をカメラの撮影範囲内で動かして複数回撮影することが想定される。Ｓ３０１の完了時点では、設置時キャリブレーション処理部２０３に、カメラ１０２で撮影された複数枚の設置時キャリブレーション用画像が全て集約された状態となる。
【００３５】
Ｓ３０２において、設置時キャリブレーション処理部２０３は、蓄積された画像データを用いて設置時キャリブレーション処理を行い、カメラ１０２のカメラパラメータを算出する。Ｓ３０３において、設置時キャリブレーション処理部２０３は、設置時キャリブレーション用画像と算出したカメラパラメータをデータ管理部２０５に送信する。データ管理部２０５が設置時キャリブレーション用画像及びカメラパラメータを保存する。
【００３６】
Ｓ３０１からＳ３０３までの処理は、カメラ１０２の設置後から試合などの映像生成用の撮影前に行う処理である。
【００３７】
次いで、Ｓ３０４において、画像取り込み部２０２は、撮像部２０１で撮影された映像生成用の画像を取り込んで蓄積する。この際、撮像部２０１で撮影した画像はすぐに画像取り込み部２０２に送信されてもよいし、撮像部２０１に一定量の画像が蓄積されたら都度送信するようにしてもよいし、全ての撮影が完了してから送信するようにしてもよい。なお、映像生成は複数カメラの撮影画像を用いて行うために、カメラ１０２同士は同期して撮影を行うものとする。
【００３８】
後述するＳ３０５以降の処理は、試合などの映像生成用の撮影よりも後の処理であり、この時点で画像取り込み部２０２には、映像生成用画像が全て蓄積されているものする。映像生成用画像とは、試合中の一定時間のみを撮影して得られた画像であってもよいし、１試合を全て撮影して得られた画像であってもよいし、もしくは連続して行われる複数の試合を続けて撮影して得られた画像であってもよい。
【００３９】
Ｓ３０５において、シーン選択部２０８は、Ｓ３０４で画像取り込み部２０２に蓄積された撮影画像の中から、映像生成を行うシーンを選択する。映像生成シーンとしては、得点シーンや好プレーなどが考えられるが、シーンの長さや内容については限定するものではない。シーン選択部２０８は、ユーザによる選択に基づいてシーン選択を行ってもよいし、シーン内容を判別することにより自動でシーン選択を行うようにしてもよい。
【００４０】
Ｓ３０６において、再キャリブレーション処理部２０４は、Ｓ３０５で選択された映像生成シーンの中から１フレームの再キャリブレーション用画像を画像取り込み部２０２から取得する。そして、再キャリブレーション処理を行って、カメラ１０２のカメラパラメータを算出する。再キャリブレーション処理の詳細については図４を参照して後述する。
【００４１】
Ｓ３０７において、データ管理部２０５は、再キャリブレーション処理部２０４で算出されたカメラパラメータを受信し、保持するカメラパラメータを更新する。Ｓ３０８において、データ管理部２０５は、再キャリブレーション処理部２０４が再キャリブレーション処理に使用した各カメラ１０２の再キャリブレーション用画像を受信し、画像補正部２０６の位置補正処理で用いるリファレンス画像として保持する。
【００４２】
Ｓ３０９において、画像補正部２０６は、Ｓ３０５で選択された映像生成シーンの撮影画像を画像取り込み部２０２から受信する。そして、Ｓ３０８でデータ管理部２０５に保存された各カメラ１０２のリファレンス画像を用いて、カメラの振動に対して撮影画像の位置合わせを行う補正処理を行う。なお、本実施形態では、画像補正部２０６は画像処理装置１０３が備える例を説明したが、カメラ１０２が画像補正部を備え、それぞれのカメラ１０２において位置補正処理を行うようにしてもよい。
【００４３】
Ｓ３１０において、映像生成部２０７は、Ｓ３０９で実施した補正処理後の画像と、Ｓ３０７で更新された再キャリブレーション結果のカメラ１０２のカメラパラメータとを用いて、仮想視点の映像生成処理を行う。Ｓ３１１において、シーン選択部２０８は、映像生成シーンの選択が全て完了したか否かを判定する。未選択のシーンが存在する場合、Ｓ３０５に戻って処理を繰り返す。一方、全て選択した場合、処理を終了する。
【００４４】
なお、複数の映像生成シーンについて、全ての映像生成をできるだけ早く完了するために、Ｓ３０５のシーン選択処理からＳ３１０の映像生成処理までの一連の処理を並列に実行してもよい。その場合は、データ管理部２０５がシーンに応じたカメラパラメータとリファレンス画像とを管理するものとする。
【００４５】
また、映像生成用の撮影後のＳ３０５以降の処理と並列に、次のＳ３０４の映像生成用の撮影を行うようにしてもよい。これにより、例えば、試合の撮影を続けながら、試合中に映像生成処理を行うことで、試合中に（例えばハーフタイム中に前半のハイライト映像として）生成した映像を使用することができる。
【００４６】
＜再キャリブレーション処理の詳細＞
続いて、図４のフローチャートを参照して、Ｓ３０６における、再キャリブレーション処理部２０４での再キャリブレーション処理の詳細を説明する。
【００４７】
本実施形態では、再キャリブレーション処理として、カメラ固有の内部パラメータについては設置時キャリブレーション結果をそのまま使用し、カメラの位置姿勢を表す外部パラメータのみを算出するものとする。ただし、カメラ１０２の特性や、熱や振動によって内部パラメータが変わってしまうことが想定される場合には、内部パラメータも算出するようにしてもよい。
【００４８】
Ｓ４０１において、再キャリブレーション処理部２０４は、Ｓ３０５で選択された映像生成シーン撮影時におけるカメラ１０２の位置姿勢を算出するための再キャリブレーション用画像を、映像生成シーンの中から特定する。本実施形態では、シーンの先頭画像１フレームを再キャリブレーション用画像として使用する例を説明する。
【００４９】
Ｓ４０２において、再キャリブレーション処理部２０４は、再キャリブレーション処理に用いる設置時キャリブレーション用画像を特定する。本実施形態では、複数フレームの設置時キャリブレーション用画像のうち最初の１フレームを使用するものとする。ただし、設置時キャリブレーション用画像の撮影時にカメラ１０２が振動していた場合、画像を撮影した際のカメラ位置姿勢と、それらの画像から算出したカメラパラメータが示すカメラ位置姿勢とにずれが生じる。そのため、複数フレームの設置時キャリブレーション用画像の中から、算出したカメラ位置姿勢に最も近い画像を選択して使用してもよい。もしくは、設置時キャリブレーション用画像のみに映っている人物やマーカを映像処理によって除去した画像を使用するようにしてもよい。
【００５０】
Ｓ４０３において、再キャリブレーション処理部２０４は、Ｓ４０１で特定した再キャリブレーション用画像と、Ｓ４０２で特定された設置時キャリブレーション用画像との両方の画像を用いて、それぞれ画像特徴点の検出を行う。そして、検出された画像特徴点について画像間でのマッチングを行う。設置時キャリブレーション用画像については、データ管理部２０５から既知のカメラパラメータを取得し、再キャリブレーション用画像についても同様のカメラパラメータをカメラの初期値として、画像間での特徴点マッチング処理を行う。図１に示すように、カメラ１０２が１０台であった場合、２０枚の画像を用いた画像間の特徴点マッチング処理となる。再キャリブレーション処理における画像特徴点は、再キャリブレーション用画像として映像生成用画像であるマーカなしの画像を使用するため、人物や構造物などの自然特徴点のみとなる。
【００５１】
Ｓ４０４において、再キャリブレーション処理部２０４は、Ｓ４０３における画像特徴点のマッチング結果を用いて、カメラ１０２のカメラ位置姿勢推定を行う。Ｓ４０３では、再キャリブレーション用画像と設置時キャリブレーション用画像との合計２０枚の画像について特徴点マッチングを行った。これに対し、Ｓ４０４では、設置時キャリブレーション用画像は設置時キャリブレーション結果のカメラパラメータで固定したまま、再キャリブレーション用画像と対応する１０台のカメラ１０２についてカメラ位置姿勢推定を行い、カメラパラメータを算出する。
【００５２】
Ｓ４０５において、再キャリブレーション処理部２０４は、全カメラについて位置姿勢推定が成功したか否かを判定する。全カメラについて成功した場合、処理を終了する。一方、推定できていないカメラがある場合は、Ｓ４０６へ進む。
【００５３】
Ｓ４０６において、再キャリブレーション処理部２０４は、Ｓ４０３での検出及びマッチングに成功した画像特徴点が少ないために推定できないと判定し、再キャリブレーション用画像上に対応点の追加を行う。対応点の追加は、画像上での指定操作によりユーザが手動で追加することにより行う。推定できていないカメラの画像及びそのカメラに隣接した推定できているカメラの画像上に対応点の追加を行うことで特徴点を増やし、全カメラについて推定ができるまで、Ｓ４０３からＳ４０５の処理を繰り返す。
【００５４】
以上の処理により、再キャリブレーション処理部２０４において、映像生成を行うシーンの１フレームの画像と、設置時キャリブレーション用画像と、設置時キャリブレーション結果のカメラパラメータとを用いて、再キャリブレーションを行うことができる。これにより、設置時キャリブレーションの実施後、試合中やフィールドに侵入できない状況であっても、キャリブレーション用の特別なマーカなしで再度キャリブレーションを高精度に実施することができる。
【００５５】
＜再キャリブレーション用画像及び設置時キャリブレーション用画像の一例＞
ここで、図５は、本実施形態における再キャリブレーション用画像及び設置時キャリブレーション用画像の例を示す。ここでは、２台のカメラ１０２の画像について説明する。ここでは明示的に別のカメラであることを示すために、２台のカメラ１０２をカメラＡ１０２、カメラＢ１０２と呼ぶ。
【００５６】
図５（Ａ）は、Ｓ４０１で特定された、カメラＡ１０２の再キャリブレーション用画像を示す。図５（Ｂ）は、Ｓ４０１で特定された、カメラＢ１０２の再キャリブレーション用画像を示す。なお、カメラＡ１０２とカメラＢ１０２は隣接して配置されているものとする。図５（Ｃ）は、Ｓ４０２で特定された、カメラＢ１０２の設置時キャリブレーション用画像を示す。
【００５７】
図５（Ａ）及び図５（Ｂ）に示すように、隣接するカメラＡ１０２及びカメラＢ１０２の再キャリブレーション用画像は、映像生成用画像であるため、マーカ５０５は撮影されていない。しかし、同期画像であるため、ライン５０１や看板５０２の他に、人物５０３やボール５０４について多くの画像特徴点の検出及びマッチングが可能である。ただし、シーンの内容やカメラ毎の撮影範囲の違いによって、人物５０３の有無や数にばらつきがある。また、三次元において複雑な形状である人物５０３は撮影する方向によって見え方が異なるため、精度の高い特徴点マッチングが難しい。
【００５８】
これに対して、図５（Ｂ）及び図５（Ｃ）に示すように、カメラＢ１０２の設置時キャリブレーション用画像と再キャリブレーション用画像との間は、多少のカメラ位置姿勢の変化はあるものの、概ね同じ範囲を撮影した画像となる。ただし、撮影されたタイミングが異なるため、人物５０３やボール５０４、マーカ５０５については画像特徴点のマッチングは難しい。しかし、上述したように特徴点マッチングの際、カメラの初期値として同じカメラ位置姿勢を示すカメラパラメータを使用するため、ライン５０１や看板５０２など時間不変の特徴点は画像内のほぼ同位置に検出されるので精度の高いマッチングができる。また、上述したように図５（Ｃ）に示す設置時キャリブレーション用画像のカメラ位置姿勢は固定したまま、図５（Ｂ）に示す再キャリブレーション用画像のカメラ位置姿勢推定を行うことで、精度の高い推定を行うことができる。
【００５９】
なお、本実施形態では、再キャリブレーション用画像として、映像生成シーンの先頭画像を用いるものとしたが、シーンの真ん中の画像や後尾画像でもよい。または、再キャリブレーション処理の推定はマーカ５０５なしの自然特徴点のみで行うため、例えばカメラ１０２の注視点周辺に人物５０３が多くいる画像など、特徴点が多い画像（例えば所定数以上の特徴点が含まれる画像）を選択してもよい。または、再キャリブレーション用画像は、位置補正処理のリファレンス画像として使用するため、位置補正処理の位置合わせ方法に応じて最適な画像を選択してもよい。例えば、位置補正処理にライン５０１を用いる場合は、ライン５０１上に人物が重なっていない画像を選択するようにしてもよい。
【００６０】
なお、本実施形態では、画像処理装置１０３が一連の処理を実行する例を説明したが、必ずしも全ての処理を実行する必要はない。例えば、画像処理装置１０３が行った設置時キャリブレーション処理の結果と、その際に使用された画像とを、画像処理装置１０３とは異なる別の装置が取得し、当該別の装置が再キャリブレーション処理を行うようにしてもよい。
【００６１】
（実施形態２）
実施形態２では、映像生成用の撮影を行いながらリアルタイムで映像生成を行う画像処理システムにおいて、撮影中に再キャリブレーションを行い、再キャリブレーション結果をリアルタイム映像生成処理に反映する処理について説明する。
【００６２】
＜画像処理システムの構成＞
図６は、本実施形態に係る画像処理システムの構成例を示す図である。画像処理システム６０１は、複数のカメラ１０２と、画像処理装置６０３とを含んで構成される。画像処理装置６０３は、画像処理装置１０３のシーン選択部２０８以外の構成要素に加えて、実施判定部６０４と、反映判定部６０５とを備えている。
【００６３】
なお、図６において、図２の画像処理システム１０１と同一の処理を行うものについては、同一の符号を付与して表すものとし、実施形態１との相違点を主に説明する。なお、画像処理装置６０３のハードウェア構成は実施形態１で図８を参照して説明した構成と同様であるため、説明を省略する。
【００６４】
実施判定部６０４は、画像取り込み部２０２から映像生成用画像を受信し、その画像を用いた再キャリブレーションを実施するか否かを判定する。判定基準については後述する。
【００６５】
反映判定部６０５は、再キャリブレーション処理部２０４から受信した再キャリブレーション結果のカメラパラメータと、画像補正部２０６で行う位置補正処理のリファレンス画像とを反映するタイミングを判定し、キャリブレーション管理部２０５に送信する。その際、画像補正部２０６の位置補正処理に用いるリファレンス画像の更新を反映するフレームと、映像生成部２０７の映像生成に用いるカメラパラメータの更新を反映するフレームとを、それぞれの処理間のフレーム遅延を考慮して一致させるようにキャリブレーション管理部２０５に指示する。もし反映するフレームがずれると、カメラパラメータのカメラ位置姿勢が映像生成処理の際に使用する画像とずれてしまうため、生成された画像の画質が劣化してしまうことになる。判定基準については後述する。
【００６６】
＜処理＞
続いて、図７のフローチャートを参照して、本実施形態に係る画像処理装置６０３が実施する処理の手順を説明する。本実施形態では、映像生成用の撮影中に再キャリブレーションを行い、再キャリブレーション結果をリアルタイム映像生成処理に反映する処理を行う。なお、図７において、図３のフローチャートと同一の処理を行うものについては、同一の符号を付与して表すものとし、実施形態１との相違点を主に説明する。
【００６７】
Ｓ７０１において、データ管理部２０５は、Ｓ３０３での設置時キャリブレーションデータの保存後、保存した設置時キャリブレーション用画像の中から各カメラについて１フレームを画像補正部２０６の位置補正処理で用いるリファレンス画像として特定する。設置時キャリブレーション用画像の中から１フレームをリファレンス画像として選択する方法としては、図４のＳ４０２における設置時キャリブレーション用画像を特定する方法と同様である。
【００６８】
Ｓ７０２において、実施判定部６０４は、Ｓ３０４で映像生成用の撮影が開始されると、映像生成用画像を用いた再キャリブレーション処理を実施するフレームを判定する。本実施形態では、映像生成用画像におけるカメラ１０２の振動が、画像補正部２０６における位置補正処理により位置合わせ可能な範囲あるいはそれより狭い範囲を閾値とした場合に、当該閾値を超えた場合に再キャリブレーションを行うと判定する。また、閾値を超えたフレームが数フレーム続いた場合や、数フレームの振動の平均値が閾値を超えた場合に再キャリブレーションを行うと判定してもよい。実施判定部６０５におけるカメラ１０２の振動の検出方法は、リファレンス画像との画像比較によって振動を検出する方法であってもよいし、カメラ１０２に取り付けられたセンサで振動を検出する方法であってもよい。または、カメラ位置姿勢が継時的に変化するような場合や、Ｓ３０６の再キャリブレーション処理時間を考慮して、一定時間撮影する毎に再キャリブレーション処理を実施してもよい。
【００６９】
Ｓ７０３において、反映判定部６０５は、Ｓ３０６の再キャリブレーション処理結果のカメラパラメータの更新及びリファレンス画像の更新を反映するフレームを判定する。本実施形態では、撮影画像のシーン内容判別により、プレーの区切りなど連続性の低いタイミングを判定して自動で更新を反映するフレームを判定する。または、ユーザが試合の状況を見ながら判定するように構成してもよい。一連のプレーの最中に更新を反映した場合は、反映前後のカメラ位置姿勢の変化によっては視聴者に違和感を与えてしまうことになるかもしれない。そのため、プレーの中断時を見計らって更新を反映するとよい。また、突風の影響や、カメラ１０２にボールが当たったなどの影響でカメラ位置姿勢が大きくずれた場合などは、カメラ位置姿勢の変化量や既に生成された画像の画質劣化を検出して、即時に反映するようにしてもよい。あるいは、映像生成部２０７において生成される仮想視点映像の視点情報が予め与えられる場合は、仮想視点の切り替えなどの視聴者に認識されにくいタイミングを判定して更新を反映してもよい。
【００７０】
Ｓ７０４において、データ管理部２０５は、再キャリブレーション処理部２０４で算出されたカメラパラメータを、Ｓ７０３で判定された更新を反映するタイミングで更新する。
【００７１】
Ｓ７０５において、データ管理部２０５は、リファレンス画像を、再キャリブレーション処理部２０４が再キャリブレーション処理に使用した各カメラ１０２の再キャリブレーション用画像を用いて、Ｓ７０３で判定された更新を反映するタイミングで更新する。
【００７２】
Ｓ７０６において、画像取り込み部２０２は、撮像部２０１による映像生成用画像の撮影が終了したか否かを判定する。撮影が終了した場合、一連の処理を終了する。一方、撮影が終了していない場合、Ｓ３０４に戻って処理を繰り返す。
【００７３】
これより、映像生成用画像の撮影中に、カメラの振動が補正できなくなることを判定して再キャリブレーションを行い、視聴者に違和感を与えないタイミングで再キャリブレーション結果をリアルタイム映像生成処理に反映することができる。
【００７４】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７５】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。
【符号の説明】
【００７６】
１０１：画像処理システム、１０２：カメラ、１０３：画像処理装置、２０１：撮像部、２０２：画像取り込み部、２０３：設置時キャリブレーション処理部、２０４：再キャリブレーション処理部、２０５：データ管理部、２０６：画像補正部、２０７：映像生成部、６０４：実施判定部、６０５：反映判定部
【図１】
2020193950.tif 000003
【図２】
2020193950.tif 000004
【図３】
2020193950.tif 000005
【図４】
2020193950.tif 000006
【図５】
2020193950.tif 000007
【図６】
2020193950.tif 000008
【図７】
2020193950.tif 000009
【図８】
2020193950.tif 000010