(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-30
(45)【発行日】2024-08-07
(54)【発明の名称】情報処理装置、情報処理方法およびプログラム
(51)【国際特許分類】
G06T 15/20 20110101AFI20240731BHJP
G06T 19/00 20110101ALI20240731BHJP
H04N 23/60 20230101ALI20240731BHJP
【FI】
G06T15/20 500
G06T19/00 A
H04N23/60
(21)【出願番号】P 2020083365
(22)【出願日】2020-05-11
【審査請求日】2023-04-27
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】新井 智昭
【審査官】橋爪 正樹
(56)【参考文献】
【文献】国際公開第2019/056041(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 15/00-19/20
H04N 23/60-23/698
H04N 7/18
H04N 5/66- 5/70
H04N 13/00
(57)【特許請求の範囲】
【請求項1】
複数の撮影装置により所定の空間を撮影することで得られる複数の画像から仮想視点画像を生成するための仮想視点の位置および前記仮想視点からの視線方向を生成する情報処理装置であって、
前記仮想視点の第1の位置および第2の位置と、前記第1の位置および前記第2の位置に対応
し、前記所定の空間の撮影時刻を示す第1の時刻および第2の時刻
とを取得する取得手段と、
前記第1の位置と前記第2の位置を接続し、前記仮想視点が移動する動線を生成する生成手段と、
前記動線の前記第1の位置と前記第2の位置の間に前記仮想視点の複数の位置を設定し、前記複数の位置の各々
に対応する前記所定の空間の撮影時刻を前記第1の時刻と前記第2の時刻に基づいて設定する設定手段と、
前記複数の位置の各々における前記仮想視点からの視線方向を、前記所定の空間における特定のオブジェクトの、前記複数の位置の各々に設定された
前記撮影時刻における位置に基づいて決定する決定手段と、を備え、
前記取得手段は、前記仮想視点の前記第1の位置を含む複数の位置と当該複数の位置の各々における前記仮想視点からの視線方向および
撮影時刻を含む第1の動線情報と、前記仮想視点の前記第2の位置を含む複数の位置と当該複数の位置の各々における前記仮想視点からの視線方向および
撮影時刻を含む第2の動線情報と、を取得し、
前記生成手段は、前記第1の位置と前記第2の位置とを接続する前記動線を、前記仮想視点が移動する第3の動線情報の動線として生成することを特徴とする情報処理装置。
【請求項2】
前記第1の動線情報、前記第2の動線情報および前記第3の動線情報を結合して結合された動線情報を生成する結合手段をさらに備えることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記第1の動線情報または前記第2の動線情報によって得られる仮想視点画像に基づいて、前記特定のオブジェクトを選択する選択手段をさらに備えることを特徴とする請求項1または2に記載の情報処理装置。
【請求項4】
前記選択手段は、前記第1の位置または前記第2の位置の仮想視点から得られる仮想視点画像において最も中央に近い位置にあるオブジェクトを前記特定のオブジェクトに選択することを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記生成手段は、前記第1の動線情報が表す仮想視点の終点の位置を始点とし、前記第2の動線情報が表す仮想視点の始点の位置を終点とする動線を生成することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
【請求項6】
前記生成手段は、前記第1の位置と前記第2の位置の間を直線で結ぶことにより前記動線を生成することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
【請求項7】
前記生成手段は、前記第1の位置と前記第2の位置を所定の関数により表される曲線で結ぶことにより前記動線を生成することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
【請求項8】
前記設定手段は、前記第1の位置と前記第2の位置の間の距離または前記第1
の時刻
と前記第2の時刻との時間差に基づいて再生速度を設定し、前記再生速度に基づいて前記動線に前記仮想視点の位置と
撮影時刻を設定することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
【請求項9】
前記設定手段は、前記距離が所定値より大きい場合、または、前記時間差が所定値より大きい場合に、通常の再生速度よりも速い再生速度を設定することを特徴とする請求項8に記載の情報処理装置。
【請求項10】
前記設定手段は、前記距離が大きいほど、または、前記時間差が大きいほど、より速い再生速度を設定することを特徴とする請求項8または9に記載の情報処理装置。
【請求項11】
前記第1の動線情報と前記第2の動線情報に基づいて前記第3の動線情報を生成するか否かを判定する判定手段をさらに備えることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
【請求項12】
前記判定手段は、前記第1の動線情報に含まれる
撮影時刻の範囲と前記第2の動線情報に含まれる
撮影時刻の範囲が少なくとも部分的に重複する場合に、前記第3の動線情報を生成すると判定することを特徴とする請求項11に記載の情報処理装置。
【請求項13】
前記判定手段は、前記第1の動線情報によって生成される仮想視点画像と前記第2の動線情報によって生成される仮想視点画像が共通のオブジェクトを含む場合に、前記第3の動線情報を生成すると判定することを特徴とする請求項11または12に記載の情報処理装置。
【請求項14】
複数の撮影装置により所定の空間を撮影することで得られる複数の画像から仮想視点画像を生成するための仮想視点の位置および前記仮想視点からの視線方向を生成する情報処理方法であって、
前記仮想視点の第1の位置および第2の位置と、前記第1の位置および前記第2の位置に対応
し、前記所定の空間の撮影時刻を示す第1の時刻および第2の時刻
とを取得する取得工程と、
前記第1の位置と前記第2の位置を接続し、前記仮想視点が移動する動線を生成する生成工程と、
前記動線の前記第1の位置と前記第2の位置の間に前記仮想視点の複数の位置を設定し、前記複数の位置の各々
に対応する前記所定の空間の撮影時刻を前記第1の時刻と前記第2の時刻に基づいて設定する設定工程と、
前記複数の位置の各々における前記仮想視点からの視線方向を、前記所定の空間における特定のオブジェクトの、前記複数の位置の各々に設定された
前記撮影時刻における位置に基づいて決定する決定工程と、を備え、
前記取得工程は、前記仮想視点の前記第1の位置を含む複数の位置と当該複数の位置の各々における前記仮想視点からの視線方向および
撮影時刻を含む第1の動線情報と、前記仮想視点の前記第2の位置を含む複数の位置と当該複数の位置の各々における前記仮想視点からの視線方向および
撮影時刻を含む第2の動線情報と、を取得し、
前記生成工程は、前記第1の位置と前記第2の位置とを接続する前記動線を、前記仮想視点が移動する第3の動線情報の動線として生成することを特徴とする情報処理方法。
【請求項15】
コンピュータを、請求項1乃至13のいずれか1項に記載された情報処理装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想視点画像を生成する情報処理装置、情報処理方法およびプログラムに関する。
【背景技術】
【0002】
異なる位置に設置された複数のカメラを同期させて撮影することにより得られた複数視点画像を用いて、指定された仮想視点に応じた仮想視点画像を生成する技術が注目されている。仮想視点画像によれば、例えば、サッカーやバスケットボールなどにおける特定シーン(例えばゴールシーンなど)を様々な角度から視聴することができる。そのため、仮想視点画像は、従来の撮影画像と比較してユーザに高臨場感を与えることができる。
【0003】
仮想視点を任意の経路上を移動させながら、当該経路上に設定された仮想視点の位置・姿勢、時刻に対応する仮想視点画像を順次に生成する技術が知られている。以下、仮想視点が移動する経路を動線と称する。また、動線上に設定された仮想視点の位置、姿勢、時刻のセットを動線情報と称する。このような仮想視点の動線情報を生成する方法の一つとしてキーフレーム方式がある。キーフレーム方式では、仮想視点が移動する動線上に、基本となる複数のフレーム(基本フレーム)に対する仮想視点の位置と姿勢が指定される。基本フレームと基本フレームの間に位置する中間フレームに対する仮想視点の動線上の位置と姿勢は、補間により自動的に生成される。特許文献1は、中間フレームをスプライン関数で補間することにより、3次元仮想空間におけるカメラのモーションパスを生成する技術を開示している。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1などに開示されているキーフレーム方式では、基本フレームに設定された仮想視点の動線上の位置・姿勢に基づいて中間フレームのための仮想視点の動線上の位置・姿勢が補間され、仮想視点が動線を移動している間のオブジェクトの位置は考慮されない。そのため、生成される仮想視点画像に注目すべきオブジェクトが含まれなくなる可能性がある。所望のオブジェクトが確実に仮想視点画像に含まれるようにするためには、より細かく基本フレームを設定することになり、結果、仮想視点の動線情報の生成に係る手間が増大する。
【0006】
本発明は、所定のオブジェクトが含まれる仮想視点画像を生成するための仮想視点の設定を容易にするための技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一態様による情報処理装置は以下の構成を備える。すなわち、
複数の撮影装置により所定の空間を撮影することで得られる複数の画像から仮想視点画像を生成するための仮想視点の位置および前記仮想視点からの視線方向を生成する情報処理装置であって、
前記仮想視点の第1の位置および第2の位置と、前記第1の位置および前記第2の位置に対応し、前記所定の空間の撮影時刻を示す第1の時刻および第2の時刻を取得する取得手段と、
前記第1の位置と前記第2の位置を接続し、前記仮想視点が移動する動線を生成する生成手段と、
前記動線の前記第1の位置と前記第2の位置の間に前記仮想視点の複数の位置を設定し、前記複数の位置の各々に対応する前記所定の空間の撮影時刻を前記第1の時刻と前記第2の時刻に基づいて設定する設定手段と、
前記複数の位置の各々における前記仮想視点からの視線方向を、前記所定の空間における特定のオブジェクトの、前記複数の位置の各々に設定された前記撮影時刻における位置に基づいて決定する決定手段と、を備え、
前記取得手段は、前記仮想視点の前記第1の位置を含む複数の位置と当該複数の位置の各々における前記仮想視点からの視線方向および撮影時刻を含む第1の動線情報と、前記仮想視点の前記第2の位置を含む複数の位置と当該複数の位置の各々における前記仮想視点からの視線方向および撮影時刻を含む第2の動線情報と、を取得し、
前記生成手段は、前記第1の位置と前記第2の位置とを接続する前記動線を、前記仮想視点が移動する第3の動線情報の動線として生成する。
【発明の効果】
【0008】
本発明によれば、所定のオブジェクトが含まれる仮想視点画像を生成するための仮想視点の設定を容易にすることが可能になる。
【図面の簡単な説明】
【0009】
【
図9】情報処理装置における一連の処理の流れを示すフローチャート。
【
図11】動線生成部が生成した接続動線の一例を示す図。
【
図12】追従するオブジェクトの決定に係る説明図。
【
図13】接続動線の線上を移動する仮想視点の一例を示す図。
【
図14】3つの動線が結合された状態の一例を示す図。
【
図15】2つの動線を自動的に結合する条件の一例を示す図。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【0011】
(システム構成)
図1は、実施形態に係る画像処理システム100の一例を概略的に説明する図である。画像処理システム100は、スタジアム101に設置された複数の撮影装置(以下、カメラ104)を有する。スタジアム101は、観客席102と、実際に競技等が行われるフィールド103とを含む。複数のカメラ104は、それぞれが撮影対象であるフィールド103の少なくとも一部を撮影する。また、複数のカメラ104は、少なくとも2つのカメラの画角に重なりが生じるように配置される。
【0012】
図2は、画像処理システム100の概略の装置構成例を示す図である。画像処理システム100は、一例において、スタジアム101に設置された複数のカメラ104と、画像生成装置201と、情報処理装置202と、ユーザ端末203とを含む。複数のカメラ104は、例えば伝送ケーブルを介して相互に接続されるとともに、画像生成装置201に接続される。複数のカメラ104は、それぞれがフィールド103を撮影することにより取得した画像を、伝送ケーブルを介して画像生成装置201へ伝送する。
図1の例では、複数のカメラ104は、サッカー場などのスタジアム101の全てまたは一部の範囲が撮影されるように配置される。複数のカメラ104は、静止画像を撮影するように構成されてもよいし、動画像を撮影するように構成されてもよい。また、複数のカメラ104は、静止画像と動画像との両方を撮影するように構成されてもよい。なお、本実施形態では、特に断りがない限り、用語「画像」は、静止画と動画との両方をその意義として含む。
【0013】
画像生成装置201は、複数のカメラ104により撮影された複数の画像を集約、蓄積し、指定された仮想視点に対応する仮想視点画像を生成する。以下、カメラ104により撮影された画像を撮影画像と呼ぶ場合がある。また、仮想視点パラメータ群により指定される位置、姿勢、時刻に従った複数の仮想視点について生成された複数の仮想視点画像を仮想視点画像群と称する。また、本明細書において、仮想視点の経路(動線)に沿って設定された仮想視点の位置、姿勢、時刻のセットを含む仮想視点パラメータ群を動線情報と称する。画像生成装置201は、情報処理装置202から受信した動線情報に基づいて仮想視点画像群を生成し、生成した仮想視点画像群を情報処理装置202に伝送する。また、画像生成装置201は、メタデータを情報処理装置202に伝送する。メタデータは、例えば、フィールド103でプレーをする選手などの位置を示す位置情報を含む。メタデータの詳細については後述する。画像生成装置201は、複数の撮影画像および生成した仮想視点画像群を記憶するデータベース機能と、仮想視点画像群を生成するための画像処理機能とを有する。スタジアム101内の複数のカメラ104と画像生成装置201は、例えば、有線または無線による通信ネットワーク回線、または、SDI(Serial Digital Interface)等のケーブル回線によって接続される。画像生成装置201は、複数のカメラ104からこの回線を通じて撮影画像を受信し、受信した撮影画像をデータベースに格納する。
【0014】
情報処理装置202は、仮想視点(位置、姿勢など)を編集する装置である。情報処理装置202は、ユーザ端末203から受け付けた仮想視点パラメータ群を記憶部502(
図5)に記憶する。情報処理装置202は、画像生成装置201に動線情報を送信し、送信した動線情報に対応する仮想視点画像群を受信する。記憶部502には、複数の動線情報に対応する複数の仮想視点パラメータ群が記憶される。情報処理装置202は、記憶部502に記憶されている2つの動線情報(仮想視点パラメータ群)を取得し、それら動線情報を結合する。より具体的には、情報処理装置202は、2つの動線情報により示される2つの動線を結合する動線(以下、接続動線と呼ぶ場合がある。)を生成し、接続動線の線上を移動する仮想視点の位置、姿勢の情報を生成することで接続動線情報を生成する。その際、情報処理装置202は、所定のオブジェクトを追従するように、接続動線上を移動する仮想視点の姿勢情報を生成する。情報処理装置202は、2つの動線情報を、接続動線情報により結合し、新たな1つの動線情報を生成する。すなわち、情報処理装置202は、3つの動線情報を接続して新たな動線情報(仮想視点パラメータ群)を生成する。情報処理装置202は、例えば、パーソナルコンピュータである。なお、情報処理装置202は、画像生成装置201やユーザ端末203に組み込まれてもよい。即ち、情報処理装置202は、画像生成装置201とユーザ端末203との少なくともいずれかと一体の装置として実現されてもよい。
【0015】
ユーザ端末203は、画像処理システム100を利用するユーザが所持する情報処理装置である。ユーザ端末203は、仮想視点の位置や姿勢に関わるユーザの操作指示を受け付けることができる。
図6は仮想視点の操作の一例である。例えば、ユーザは、仮想視点602の位置を、選手601の右斜め前方となるように移動させながら、仮想視点602の視線を選手601へ向けることができる。なお、仮想視点602が移動した動線を動線603とする。ユーザ端末203は、仮想視点の位置や姿勢に変化が生じる度に、操作指示の内容を示す仮想視点パラメータを情報処理装置202へ伝送する。また、ユーザ端末203は、
図6で示すような一連の仮想視点の位置、姿勢の指定操作が完了した際に、当該一連の操作指示の内容を示す仮想視点パラメータ群を情報処理装置202へ伝送することもできる。
【0016】
図7に、動線情報を構成する仮想視点パラメータの構成例を示す。仮想視点パラメータは、時刻情報、位置情報および姿勢情報を含む。時刻情報は、HH(時間):MM(分):SS(秒).FF(フレーム)で構成される。位置情報は、3つの座標軸(x軸、y軸、z軸)が原点で直交するように交わる座標系の3次元直交座標によって示されて得る。原点は、撮影空間内の任意の位置とすることができる。例えば、原点は、サッカーフィールドのセンターサークルの中心とすることができる。姿勢情報は、パン(水平方向)、チルト(垂直方向)、ロール(カメラが回転する方向)の3軸に対する角度により示され得る。なお、仮想視点パラメータ群は、仮想視点パラメータを時系列に纏めたデータである。
【0017】
ユーザ端末203は、仮想視点パラメータに基づいて生成された仮想視点画像を情報処理装置202から受信し、表示装置に表示する。なお、表示装置はユーザ端末203に内蔵された表示装置であってもよいし、外部装置の表示装置であってもよい。ユーザ端末203は、例えば、パーソナルコンピュータや、スマートフォンやタブレットなどの携帯端末などである。ユーザ端末203は、マウス、キーボード、6軸コントローラ、及び、タッチパネルの少なくとも1つ等のユーザ操作を受け付けるためのインタフェースを有する。
【0018】
画像生成装置201、情報処理装置202及びユーザ端末203は、例えば、インターネットなどのネットワークを介して相互に情報のやり取りが可能となるように構成される。なお、装置間の通信は、無線通信と有線通信とのいずれか又はこれらの組み合わせのいずれによって行われてもよい。
【0019】
(装置のハードウェア構成)
続いて、
図3を参照して、上述の画像生成装置201、情報処理装置202及びユーザ端末203のハードウェア構成例について説明する。本実施形態では、各装置は、
図3のブロック図により示されるハードウェア構成を有しており、コントローラユニット300、操作ユニット309、および表示装置310を含む。なお、画像生成装置201、情報処理装置202及びユーザ端末203が同じハードウェア構成を備える必要はなく、また、以下に説明する構成の全てを備えていなくてもよい。
【0020】
コントローラユニット300は、CPU301、ROM302、RAM303、HDD304、操作部I/F305、表示部I/F306、及び通信I/F307を含む。なお、これらのハードウェアブロックは、例えばシステムバス308によって相互に通信可能となるように接続される。なお、CPUはCentral Processing Unitの頭字語であり、HDDはHard Disk Driveの頭字語であり、I/Fはインタフェースである。
【0021】
CPU301は、システムバス308を介して、ROM302、RAM303、HDD304、操作部I/F305、表示部I/F306、及び、通信I/F307の動作を制御する。CPU301は、ROM302に格納されているブートプログラムによりOS(Operating System)を起動する。CPU301は、このOS上で、例えばHDD304に格納されているアプリケーションプログラムを実行する。CPU301がアプリケーションプログラムを実行することによって、各装置の各種処理が実現される。ROM302は読み出し専用の半導体メモリであり、CPU301により実行される各種プログラムやパラメータを格納する。RAM303は、随時に読み出し及び書き込みが可能な半導体メモリであり、例えば、一時的な情報を格納する領域やCPU301の作業領域などを提供する。HDD304は、ハードディスクなどの大容量記憶装置であり、アプリケーションプログラム、画像データなどを格納する。なお、CPU301は、1つ以上の任意のプロセッサー(例えば、ASIC(特定用途向け集積回路)、DSP(デジタルシグナルプロセッサ)や、FPGA(フィールドプログラマブルゲートアレイ)等)によって置き換えられてもよい。
【0022】
操作部I/F305は、操作ユニット309をコントローラユニット300に接続するインタフェースである。操作部I/F305は、操作ユニット309によって受け付けられたユーザ操作の情報をCPU301へ転送する。操作ユニット309は、例えば、マウスやキーボード、タッチパネル等の、ユーザ操作を受付可能な機器を含んで構成される。表示部I/F306は、表示装置310をコントローラユニット300に接続するインタフェースである。例えば、CPU301は、表示されるべき画像データを、表示部I/F306を介して表示装置310に出力する。表示装置310は、液晶ディスプレイなどのディスプレイを含んで構成される。通信部I/F307は、例えばイーサネット(登録商標)等の通信を行うためのインタフェースである。通信部I/F307は、伝送ケーブルの接続を受け付けるためのコネクタ等を有する。なお、通信部I/F307は、無線通信インタフェースであってもよく、その場合、通信部I/F307は、例えばベースバンド回路、RF回路、及びアンテナを有する。コントローラユニット300は、通信部I/F307を介して外部装置と情報の入出力を行う。
【0023】
なお、各装置において表示装置310は、外部の装置であってもよい。すなわち、装置は、ケーブルやネットワークを介して接続された外部の表示装置310に画像を表示させる表示制御を行うこともできる。この場合、装置は、表示データを表示装置310に出力させるための表示制御を実行する。なお、
図3の構成は一例であり、その一部が省略され又は図示されていない構成が追加され、さらに、図示された構成が組み合わされてもよい。例えば、画像生成装置201は、表示装置310を有しなくてもよい。
【0024】
(画像生成装置201の機能構成)
図4に、画像生成装置201の機能構成例を示す。
図4に示される機能構成は、画像生成装置201のCPU301が、ROM302等に記録された各種プログラムを読み出して各部の制御を実行することにより実現される。なお、
図4に示される機能構成の一部または全部が専用のハードウェア(例えばASICやFPGA)により実現されてもよい。
【0025】
画像生成装置201は、一例において、制御部401、記憶部402、画像入力部403、画像記憶部404、画像生成部405、メタデータ生成部406、及び、データ送受信部407を有する。なお、これら機能部は、内部バス408によって相互に接続され、制御部401による制御の下で、相互にデータを送受信することができる。制御部401は、以下に説明する各機能部を含む、画像生成装置201全体の動作を制御する。記憶部402は、ROM302、RAM303、HDD304を含み、種々のプログラム、撮影画像等の種々のデータの格納、読み出しを行う。
【0026】
画像入力部403は、通信部I/F307を介して、スタジアム101に設置された複数のカメラ104によって撮影された画像(撮影画像)を所定のフレームレートで取得する。画像入力部403は、例えば有線もしくは無線の通信モジュール、又はSDI等の画像伝送モジュールにより、カメラ104から撮影画像を取得する。画像記憶部404は、画像入力部403によって取得された撮影画像と、それらの撮影画像に基づいて生成された仮想視点画像群と、オブジェクトの位置を示すメタデータとを、例えば、HDD304などに記憶する。なお、仮想視点画像群は後述の画像生成部405により、メタデータは後述のメタデータ生成部406によりそれぞれ生成される。画像記憶部404は、例えば、磁気ディスク、光ディスク、半導体メモリ等によって実現され得る。画像記憶部404は、画像生成装置201に内蔵された装置(RAM303、HDD304)によって実現されてもよいし、画像生成装置201とは物理的に切り離された外部の装置によって実現されてもよい。また、画像記憶部404に記憶される撮影画像及び仮想視点画像群は、例えば、MXF(Material eXchange Format)形式の画像フォーマットで記憶される。また、これら撮影画像及び仮想視点画像群は、例えば、MPEG2形式で圧縮される。ただし、画像フォーマットやデータ圧縮方式は、これらに限定されず、任意の画像フォーマットおよびデータ圧縮方式が用いられてもよい。
【0027】
画像生成部405は、画像記憶部404に記憶された複数の撮影画像から、複数の仮想視点に対応する仮想視点画像群を生成する。仮想視点画像群は、例えば、イメージベースレンダリング(Image-Based Rendering、以下、IBR)を用いて生成され得る。IBRとは、モデリング(幾何学図形を使用して物体の形状を作成する過程)を行わず、複数の実際の視点から撮影された画像から仮想視点画像を生成するレンダリング方法である。ただし、仮想視点画像群の生成方法はIBRに限られるものではない。例えば、モデルベースレンダリング(Model-Based Rendering、以下、MBR)を用いて仮想視点画像群が生成されてもよい。MBRとは、複数の方向から被写体を撮影して得られた複数の撮影画像に基づいて生成される三次元モデルを用いて、仮想視点画像を生成する方式である。MBRでは、例えば、視体積交差法、Multi-View-Stereo(MVS)などの三次元形状復元手法によって得られた対象シーンの三次元形状(モデル)を利用することにより、仮想視点からのシーンの見えが画像として生成される。
【0028】
なお、画像生成部405により生成される仮想視点画像群は、様々な仮想視点の位置及び視線の方向の仮想視点画像を含み、1つの画像ストリームとして空間方向及び時間方向に圧縮符号化される。但し、仮想視点画像群の形態はこのような画像ストリームに限られるものではなく、それぞれが独立した複数の画像によって構成されていてもよい。また、仮想視点画像群は、圧縮符号化されていなくてもよい。また、本実施形態では画像生成装置201が仮想視点画像群を生成するが、これに限られるものではない。例えば、画像生成装置201は、三次元形状データ等の三次元モデルを示す情報や、その情報によって示される三次元モデルにマッピングされる画像等の、仮想視点画像を生成するための情報を生成してもよい。すなわち、画像生成部405は、レンダリングされた仮想視点画像を生成することに代えて、情報処理装置202またはユーザ端末203で仮想視点画像をレンダリングするために必要な情報を生成してもよい。
【0029】
メタデータ生成部406は、画像記憶部404に記憶された撮影画像を解析し、オブジェクトの位置情報を取得する。メタデータ生成部406は、例えば、ビジュアルハルなどの技術を用いて特定のオブジェクトの位置情報を取得する。メタデータ生成部406は、画像記憶部404に記憶された撮影画像の撮影開始から撮影終了までのすべての時刻における、オブジェクトの位置情報を取得する。メタデータ生成部406は、オブジェクトについて取得した位置情報を含むメタデータを生成する。
図8に、メタデータ生成部406により生成されるメタデータの構成例を示す。メタデータは、例えば、時刻情報と各オブジェクトの位置情報とを含む。時刻情報は、HH(時間):MM(分):SS(秒).FF(フレーム)で構成される。位置情報は、3次元直交座標を用いて、オブジェクト(例えば、ボール、選手、審判)の位置を示す。オブジェクト名は、任意の名称とオブジェクトIDで構成される。オブジェクトIDは、アルファベットや数字で構成され、それぞれのオブジェクトを区別できるようにオブジェクトごとに割り振られた識別記号である。なお、メタデータは、メタデータ生成部406による撮影画像の解析により取得されるものに限定されず、画像生成装置201や情報処理装置202に事前に登録されたものであってもよい。
【0030】
データ送受信部407は、画像記憶部404に記憶される仮想視点画像群を情報処理装置202へ所定のフレームレートで出力する。また、データ送受信部407は、仮想視点画像群を出力する前に画像記憶部404に記憶されるメタデータを情報処理装置202へ出力する。また、データ送受信部407は、情報処理装置202から動線情報(仮想視点パラメータ群)を受信する。
【0031】
(情報処理装置202の機能構成)
図5は、情報処理装置202の機能構成例を示すブロック図である。
図5に示される機能構成は、情報処理装置202のCPU301が、ROM302等に記録された各種プログラムを読み出して各部の制御を実行することにより実現される。なお、
図5で示される機能部の一部または全部が専用のハードウェア(例えばASICやFPGA)により実現されてもよい。
【0032】
情報処理装置202は、一例において、制御部501、記憶部502、データ送受信部503、画像記憶部504、動線生成部505、姿勢生成部506、動線結合部507、画像取得部508、及び、入出力部509を有する。これらの機能部は、内部バス510によって相互に接続され、制御部501による制御の下で、相互にデータを送受信することができる。制御部501は、以下に説明する各機能部を含む、情報処理装置202全体の動作を制御する。記憶部502は、ROM302、RAM303、HDD304を含み、種々のプログラム、撮影画像等の種々のデータの格納、読み出しを行う。
【0033】
データ送受信部503は、画像生成装置201から仮想視点画像群とメタデータを受信する。またデータ送受信部503は、画像生成装置201に動線情報(仮想視点パラメータ群)を送信する。画像記憶部504は、データ送受信部503によって受信された仮想視点画像群およびメタデータ、動線結合部507および入出力部509が取得した動線情報(仮想視点パラメータ群)などを記憶する。画像記憶部504は、例えば、磁気ディスク、光ディスク、半導体メモリ等によって実現される。なお、画像記憶部504は、情報処理装置202に内蔵された装置(ROM302、RAM303、HDD304)によって実現されてもよいし、情報処理装置202とは物理的に切り離された外部の装置によって実現されてもよい。
【0034】
動線生成部505、姿勢生成部506、動線結合部507は、画像記憶部504に記憶されている2つの動線情報を接続するための接続動線情報を生成する。動線生成部505は、例えば、結合の対象となる2つの動線のうち、一方の動線(以下、第1の動線)上の点を接続動線の始点として決定し、もう一方の動線(以下、第2の動線)上の点を接続動線の終点として決定する。本実施形態では、第1の動線の終点、第2の動線の始点が用いられる。動線生成部505は、決定した接続動線の始点から終点へ仮想視点が移動するように直線状の接続動線を生成し、接続動線の線上を移動する仮想視点の位置情報を時刻単位で補間する。なお、本実施形態では始点と終点の間を直線により補間する例を示すが、これに限られるものではない。例えば、スプライン関数などにより表される曲線が接続動線として用いられてもよい。また、結合の対象となる2つの動線のうちのいずれを第1の動線、第2の動線とするかは、動線生成部505により自動的に決定されてもよいし、ユーザ端末203を介してユーザにより明示的に指定されてもよい。例えば、動線生成部505は、結合対象の2つの動線のうち、仮想視点パラメータ群の先頭に位置する仮想視点パラメータの時刻情報(開始時刻)が早い方を第1の動線に決定する。
【0035】
更に、動線生成部505は、接続動線上の仮想視点画像を表示する際の再生速度を決定する。動線生成部505は、接続動線の始点と終点の距離または時刻の差分(時間差)によって再生速度を調整する。例えば、動線生成部505は、接続動線の始点と終点の間の距離が所定値よりも大きい場合に、通常の再生速度よりも早い再生速度を設定する。これにより、仮想視点が接続動線を移動する間は早送り再生が行われる。また、接続動線の始点と終点の間の距離が大きいほど速い再生速度が設定されるようにしてもよい。また、例えば、動線生成部505は、接続動線の始点と終点の時間差が所定値よりも大きい場合に通常の再生速度よりも早い再生速度を設定するようにしてもよい。また、接続動線の始点と終点の時間差が大きいほど早い再生速度が設定されるようにしてもよい。なお、接続動線の始点と終点の距離や時間差に関係なく、無条件で、所定速度の早送り再生が行われるようにしてもよい。
【0036】
姿勢生成部506は、動線生成部505が生成した接続動線の線上を移動する仮想視点の姿勢情報を生成する。姿勢生成部506は、動線生成部505が結合の対象とした2つの動線のうちのどちらか一方の動線の始点または終点に位置する仮想視点パラメータを取得する。姿勢生成部506は、取得した仮想視点パラメータを画像取得部508へ提供することにより画像取得部508に仮想視点画像を取得させる。姿勢生成部506は、画像取得部508が取得した仮想視点画像の中央または中央付近に位置するオブジェクトを検出し、検出したオブジェクトの3次元直交座標を算出する。姿勢生成部506は、仮想視点パラメータの時刻情報と算出した3次元直交座標を用いて、画像記憶部504に記憶されるメタデータと照合し、検出したオブジェクトのオブジェクトIDを特定する。姿勢生成部506は、接続動線の動線上を移動する仮想視点の時刻情報と、特定したオブジェクトIDに基づいて、その時々のオブジェクトの位置情報をメタデータから抽出する。姿勢生成部506は、接続動線の動線上を移動する仮想視点の位置情報と、メタデータから抽出されたオブジェクトの位置情報に基づいて、仮想視点の姿勢を決定する。すなわち、姿勢生成部506は、仮想視点の位置とオブジェクトの位置を結ぶ直線がその仮想視点の方向と一致するように当該仮想始点の姿勢情報を生成する。
【0037】
動線結合部507は、動線生成部505が画像記憶部504から取得した、結合対象の2つの動線情報と、動線生成部505と姿勢生成部506により生成された接続動線情報(仮想視点の位置、姿勢情報が付与された接続動線)とを結合する。動線結合部507は、結合により得られた動線情報(仮想視点パラメータ群)を画像記憶部504へ記憶する。その際、動線結合部507は、動線生成部505が決定した再生速度を付与する。
【0038】
画像取得部508は、姿勢生成部506から提供された仮想視点パラメータ、または入出力部509から取得された仮想視点パラメータに基づいて、画像記憶部504が記憶している仮想視点画像群から仮想視点画像を選択する。また、画像取得部508は、画像記憶部504から仮想視点パラメータ群(動線情報)を取得し、仮想視点パラメータ群の先頭から順に抽出した仮想視点パラメータに基づいて仮想視点画像群の中から仮想視点画像を選択することもできる。すなわち、画像取得部508は、動線情報に従って画像記憶部504から仮想視点画像を順次に取得し、取得した仮想視点画像を、入出力部509を介してユーザ端末203に提供することができる。入出力部509は、画像取得部508によって取得された仮想視点画像をユーザ端末203へ出力する。また、入出力部509は、操作指示、仮想視点パラメータや仮想視点パラメータ群をユーザ端末203から入力する。
【0039】
(情報処理装置202の動作)
図9は、情報処理装置202における一連の処理の流れを示すフローチャートである。このフローチャートは、2つの動線情報を接続する接続動線情報を生成し、これらを結合して1つの動線情報を生成する処理を示す。このフローチャートは、例えば、ユーザ端末203から既に作成済みの2つ動線情報を結合する要求を受け付けた際に実行される。
【0040】
S901において、動線生成部505は、画像記憶部504に記憶されている2つの動線情報を取得する。
図10は、動線情報に含まれている仮想視点パラメータ群を図示化したものである。
図10において、1001および1002は選手であり、破線矢印に沿って矢印方向へ選手が移動している様子を示す。また、1011および1012は仮想視点であり、実線矢印に沿って矢印方向へ仮想視点が移動している様子を示す。また、1021および1022はそれぞれ仮想視点1011および仮想視点1012の動線を示す。仮想視点1011は、選手1001の斜め前方を選手1001の動きに合わせて移動し、常に選手1001を撮影できるように姿勢が調整される。仮想視点1012は、選手1001に向けて遠くから徐々に近づき、最後に選手1001を中心に旋回するように移動し、常に選手1001を撮影できるように姿勢が調整される。なお、説明の都合上、選手および仮想視点は、間引いて図示しているが、実際はフレームごとに存在する。また、動線1021および動線1022の撮影時刻を
図15(a)に示す。動線1021の撮影時刻は
図15(a)の動線Aであって、動線1022の撮影時刻は
図15(a)の動線Bである。動線Aと動線Bは、重複する期間があって、動線Aの方が動線Bよりも早く撮影が開始されており、撮影の終了時刻は動線Bの方が遅い。
【0041】
図9に戻り、S902において、動線生成部505は、S901で取得した2つの動線情報に含まれている動線を取得し、これら2つの動線を接続する接続動線を生成する。
図11は、動線生成部505が生成する接続動線の一例である。
図11において、動線1021,1022は
図10で示した動線である。1101は動線1021の終点を、1102は動線1022の始点を示している。また、接続動線1110は、終点1101から始点1102へ向けて生成された動線である。動線生成部505は、取得した2つの動線のうち動線1021を先方の動線として決定し、動線1022を後方の動線として決定する。動線生成部505は、例えば、仮想視点パラメータ群の先頭に位置する仮想視点パラメータの時刻情報を比較し、撮影の開始時刻が早い方を先方の動線として決定する。動線生成部505は、先方の動線1021の終点1101を接続動線1110の始点として決定し、後方の動線1022の始点1102を接続動線1110の終点として決定する。動線生成部505は、終点1101から始点1102へ向けた動線を接続動線1110として生成する。
【0042】
なお、本実施形態では、動線生成部505は、接続動線1110を終点1101と始点1102を結ぶ直線とし、接続動線1110の線上を移動する仮想視点の位置情報を時刻単位で補間する。もちろん、接続動線1110は、スプライン関数などの所定の関数により表される曲線であってもよい。また、終点1101の時刻よりも始点1102の時刻の方が過去になるので、接続動線1110の線上を移動する仮想視点の時刻情報は過去に遡るように時刻が戻る。したがって、接続動線1110による仮想視点画像の再生は逆再生となる。また、この時点における仮想視点の姿勢情報は空状態であって、S905で設定される。なお、補間方法については、スプライン関数によるものであってもよい。また、取得した2つの動線のうち先方の動線として選ばれる動線は、ユーザ端末203からユーザによって選択されるものであってもよい。
【0043】
S903において、動線生成部505は、S902で生成された接続動線1110の仮想視点画像を表示する際の再生速度を決定する。動線生成部505は、S902で生成された接続動線1110の再生方向を逆方向(逆再生)に設定し、再生速度を早送りに決定する。なお、上述したように、再生速度は、接続動線の始点と終点の距離または時間の差分によって調整されてもよい。また、距離または時間の差分が大きくなるにつれて早送りの速度を速めるようにしてもよい。また、ユーザ端末203からユーザによって再生速度が設定されてもよい。また、逆再生ならば早送りが、順方向の再生ならば通常再生が設定されるようにしてもよい。再生速度が決定されると、接続動線1110上における仮想視点の位置が決定される。例えば、始点と終点の時間差と再生速度から接続動線1110に対する再生時間を決定し、再生時間に基づいて決定されるフレーム数分の位置を接続動線1110上に等距離間隔で配置することで、仮想視点の位置が決定され得る。
【0044】
次に、S904において、姿勢生成部506は、S902で生成された接続動線1110の線上を移動する仮想視点が追従するオブジェクトを決定する。
図12は、追従するオブジェクトの決定方法を説明する図である。
図12(a)において、動線1021と1022、選手1001と1002は
図10で説明したとおりである。1201は動線1021の終点に位置する仮想視点を示す。また、1211は仮想視点1201の撮影範囲を示す。なお、選手1001および選手1002の斜線丸印は、仮想視点1201が動線1021の終点に位置する時刻に、選手がプレーしている場所を示す。
図12(b)は、仮想視点1201について取得される仮想視点画像である。
【0045】
姿勢生成部506は、S902で決定された先方の動線1021の終点に位置する仮想視点1201の仮想視点パラメータを取得する。姿勢生成部506は、取得した仮想視点パラメータを画像取得部508へ送り、画像取得部508から仮想視点画像を取得する。この時、画像取得部508から取得した仮想視点画像が
図12(b)である。姿勢生成部506は、仮想視点画像の中央または中央付近に位置するオブジェクトを検出し、検出したオブジェクトの3次元直交座標を算出する。姿勢生成部506は、仮想視点1201の仮想視点パラメータの時刻情報と算出した3次元直交座標を用いて、画像記憶部504に記憶されるメタデータと照合し、オブジェクトIDを特定する。
図12(a),(b)の例では、仮想視点1201の仮想視点画像から選手1001の位置が検出され、メタデータとの照合により選手1001のオブジェクトIDが特定される。なお、動線1021の終点における仮想視点画像から追従すべきオブジェクトを検出したがこれに限られるものではない。例えば、動線1022の始点における仮想視点画像から追従すべきオブジェクトが検出されてもよい。また、追従すべきオブジェクトがユーザ端末203から指定されてもよい。
【0046】
S905において、姿勢生成部506は、S902で生成された接続動線1110の線上を移動する仮想視点の各位置の姿勢を生成する。
図13は、接続動線1110の線上を移動する仮想視点の一例である。
図13において、1301は接続動線1110の線上を移動する仮想視点を示す。仮想視点1301は、実線矢印に沿って矢印の方向へ移動しながら、常に選手1001を撮影できるように姿勢が調整される。なお、接続動線1110の線上を移動する仮想視点1301の時刻情報は過去に遡るように時刻が戻るので、選手1001も破線矢印に沿って矢印方向を逆行する。姿勢生成部506は、接続動線1110の線上を移動する仮想視点1301の各位置の時刻情報と、S904で決定したオブジェクトIDに基づいて、メタデータの中から選手1001の位置情報を取得する。姿勢生成部506は、仮想視点の1301の視線がメタデータから抽出した選手1001の位置を向くように各位置の仮想視点の姿勢を調整することにより、仮想視点の姿勢情報を生成する。
【0047】
S906において、動線結合部507は、S901で取得した2つの動線情報と、S902~S905により生成された接続動線情報とを結合する。
図14は、これら3つの動線情報が結合された状態の一例を示す。動線結合部507は、S902で決定した先方の動線1021、S905で姿勢情報が付与された接続動線1110、S902で決定した後方の動線1022の順番で接続する。動線結合部507は、結合により得られた動線情報(仮想視点パラメータ群)を画像記憶部504へ記憶する。
【0048】
以上のように、本実施形態によれば、既に作成済みの2つの動線情報を結合する場合に、2つの動線を接続する接続動線を生成し、接続動線の線上を移動する仮想視点の視線を、常に移動するオブジェクトへ向けることができる。そのため、ユーザが仮想視点の位置や姿勢に係る操作を行わずとも、注目すべきオブジェクトが仮想視点画像の範囲から外れないように2つの動線を接続する動線情報を接続する動線情報を生成することできる。例えば、サッカー競技において、ドリブルからシュートまでの一連の動作を行った選手を注目オブジェクトとして追従するように仮想視点を移動させた後、時間を戻しながら(逆再生しながら)別の位置へ仮想視点を移動させることを考える。この場合に、逆再生のための仮想視点の動線を、基本フレームに対応して設定された動線上の位置・姿勢を単純に補間することにより生成すると、注目オブジェクトである選手の位置は考慮されない。従って、逆再生中に注目対象である選手が仮想視点の視界から外れてしまう場合がある。これに対して、上述した本実施形態によれば、注目対象のオブジェクトの位置を考慮して動線を補間するため、注目対象の選手が仮想視点の視界から外れてしまう虞を低減できる。
【0049】
なお、上記実施形態では、2つの動線の間を接続する接続動線を生成する例を説明したが、これに限られるものではない。例えば、時刻、位置、姿勢が設定された2つの仮想視点を指定することにより、これらの仮想視点間を結ぶ動線情報を自動生成する構成に適用することができる。すなわち、キーフレーム方式において2つの基本フレームの間の中間フレームに対応する仮想視点の位置および姿勢を決定するために、上述した動線情報の生成方法を適用することができる。これにより、所定のオブジェクトが仮想視点画像から外れないように、中間フレームの仮想視点を決定することができる。
【0050】
(その他の実施形態)
上述の実施形態では、ユーザ端末203から既に作成済みの2つ動線情報を結合する要求を受け付けると、
図9に示されるフローチャートの処理が実行されるものとして説明したが、これに限定されない。例えば、制御部501は、画像記憶部504に動線情報(仮想視点パラメータ群)が新規に追加される度に、
図9に示されるフローチャートの処理を実行するように制御してもよい。
【0051】
この場合、制御部501は、新規に追加された動線情報と、画像記憶部504に記憶されている既存の動線情報を解析し、これら動線情報の結合を実行するか否かを判定するようにしてもよい。例えば、
図15(a)で示すように2つの動線の撮影時刻の範囲が少なくとも部分的に重複し、かつ、
図15(b)で示すように2つの動線情報によって共通のオブジェクトが撮影されている場合、制御部501は2つの動線情報を結合すると判断する。なお、結合の実行の判定条件はこれに限定されるものではない。このようにすることで、ユーザが2つの動線を結合する指示を出さずとも、関係性の高い2つの動線情報が自動的に結合されるようにすることができる。なお、動線情報の結合の実行が、ユーザ端末203からユーザによって設定されるようにしてもよい。
【0052】
また、上述の実施形態では、サッカーの試合を撮影する場合を例示したが、撮影対象は必ずしもこれに限定されない。例えば、ラグビー、テニス、アイススケート、バスケットボール等の他のスポーツの試合や、ライブ、コンサート等の演奏の撮影にも、本実施形態を適用することができる。
【0053】
以上のように、各実施形態によれば、キーフレーム方式で中間フレームの仮想視点を補間する場合、仮想視点の撮影対象であるオブジェクトを追従するように仮想視点の姿勢を決定するので、仮想視点の撮影範囲からオブジェクトが外れることがなくなる。
【0054】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【0055】
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【符号の説明】
【0056】
202:情報処理装置、501:制御部、502:記憶部、503:データ送受信部、504:画像記憶部、505:動線生成部、506:姿勢生成部、507:動線結合部、508:画像取得部、509:入出力部、510:内部バス