(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-07
(45)【発行日】2024-06-17
(54)【発明の名称】画像生成システム、その制御方法及びプログラム。
(51)【国際特許分類】
G06T 19/00 20110101AFI20240610BHJP
G09G 5/00 20060101ALI20240610BHJP
G09G 5/36 20060101ALI20240610BHJP
G09G 5/37 20060101ALI20240610BHJP
G09G 5/377 20060101ALI20240610BHJP
G09G 5/38 20060101ALI20240610BHJP
H04N 13/275 20180101ALI20240610BHJP
【FI】
G06T19/00 A
G09G5/00 510B
G09G5/00 510H
G09G5/00 510X
G09G5/00 520V
G09G5/00 530M
G09G5/00 550A
G09G5/36 500
G09G5/37 320
G09G5/377
G09G5/38
H04N13/275
(21)【出願番号】P 2020037639
(22)【出願日】2020-03-05
【審査請求日】2023-02-22
(73)【特許権者】
【識別番号】000001007
【氏名又は名称】キヤノン株式会社
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】榊間 英人
【審査官】▲高▼橋 真之
(56)【参考文献】
【文献】特開2018-041331(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
H04N 13/275
G09G 5/00
G09G 5/36 -5/399
(57)【特許請求の範囲】
【請求項1】
生成される仮想視点画像の画素数を示す画素数情報、および前記仮想視点画像に対応する第1仮想視点を示す第1仮想視点情報を取得する取得手段と、
前記画素数情報および前記第1仮想視点情報に基づいて、複数の第2仮想視点を示す複数の第2仮想視点情報を生成する第1生成手段と、
前記複数の第2仮想視点情報に基づいて複数の画像を生成する
複数の第2生成手段と、
前記
複数の第2生成手段により生成される複数の画像を合成して前記仮想視点画像を生成する合成手段と、
を有し、
前記複数の第2仮想視点情報のそれぞれは、前記仮想視点画像上における前記第2生成手段が生成する画像に対応する範囲を特定するための
画角情報を含
み、
前記画角情報が示す画角には、前記仮想視点画像に反映されない余剰領域が含まれる、
ことを特徴とする画像処理システム。
【請求項2】
前記仮想視点画像上における前記第2生成手段が生成する画像に対応する範囲は、前記仮想視点画像を前記複数の第2仮想視点の数で分割した範囲に前記余剰領域を加えた範囲である、ことを特徴とする請求項1に記載の画像処理システム。
【請求項3】
前記複数の第2仮想視点の位置のそれぞれは、同じ位置であり、
前記複数の第2仮想視点からの視線方向のそれぞれは、同じ視線方向であり、
前記複数の第2仮想視点情報のそれぞれは、前記第2仮想視点の位置を示す情報と、前記複数の第2仮想視点からの視線方向を示す情報と、を含む、
ことを特徴とする請求項1
又は2に記載の画像処理システム。
【請求項4】
前記第1仮想視点の位置と前記複数の第2仮想視点の位置は同じ位置であり、
前記第1仮想視点からの視線方向と前記複数の第2仮想視点からの視線方向は同じである、
ことを特徴とする請求項
3に記載の画像処理システム。
【請求項5】
前記第2生成手段は
、レンダラであって、
前記複数の画像は
、複数のレンダラで同時に生成される、
ことを特徴とする請求項1乃至
4のいずれか1項に記載の画像処理システム。
【請求項6】
前記複数の第2仮想視点の数は、前記複数のレンダラの性能に基づいて決定されることを特徴とする請求項
5に記載の画像処理システム。
【請求項7】
前記複数の画像のそれぞれの画素数は、前記仮想視点画像の画素数より少ないことを特徴とする請求項1乃至
6のいずれか1項に記載の画像処理システム。
【請求項8】
前記第1生成手段は、前記画素数情報に基づいて、前記複数の第2仮想視点情報の数を決定し、前記複数の第2仮想視点情報の数と、前記第1仮想視点情報とに基づいて、前記仮想視点画像上における前記
複数の第2生成手段
それぞれが生成する画像に対応する範囲を決定し、当該範囲を特定するための
画角情報を含む前記複数の第2仮想視点情報を生成することを特徴とする請求項1乃至
7のいずれか1項に記載の画像処理システム。
【請求項9】
前記画素数情報は、4Kに対応する画素数または8Kに対応する画素数を示す情報であることを特徴とする請求項1乃至
8のいずれか1項に記載の画像処理システム。
【請求項10】
前記第1仮想視点の焦点距離と前記複数の第2仮想視点の焦点距離は同じ焦点距離であることを特徴とする請求項1乃至
9のいずれか1項に記載の画像処理システム。
【請求項11】
前記第1仮想視点情報と前記複数の第2仮想視点情報は、同じ時刻を示す情報を含むことを特徴とする請求項1乃至
10のいずれか1項に記載の画像処理システム。
【請求項12】
生成される仮想視点画像の画素数を示す画素数情報、および前記仮想視点画像に対応する第1仮想視点を示す第1仮想視点情報を取得する取得工程と、
前記画素数情報および前記第1仮想視点情報に基づいて、複数の第2仮想視点を示す複数の第2仮想視点情報を生成する第1生成工程と、
前記複数の第2仮想視点情報に基づいて
、複数の画像生成手段が複数の画像を生成する第2生成工程と、
前記第2生成工程により生成される複数の画像を合成する合成工程と、
を有し、
前記複数の第2仮想視点情報のそれぞれは、前記仮想視点画像上における前記
複数の画像生成手段それぞれが生成すべき画像に対応する範囲を特定するための
画角情報を含
み、
前記画角情報が示す画角には、前記仮想視点画像に反映されない余剰領域が含まれる、
ことを特徴とする画像処理方法。
【請求項13】
コンピュータを、請求項1乃至
11のいずれか1項に記載の画像処理システムの一手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想視点映像を生成する技術に関する。
【背景技術】
【0002】
昨今、複数のカメラを異なる位置に設置して多視点で同期撮影し、当該撮影により得られた複数視点映像を用いて、任意の仮想視点から見た映像コンテンツ(仮想視点映像)を生成する技術が注目されている。上記仮想視点映像によれば、例えば、サッカーやバスケットボールのハイライトシーンを様々な角度から視聴することが出来るため、通常の映像と比較してユーザに高臨場感を与えることが出来る。
【0003】
上記仮想視点映像は、撮影された複数視点映像をサーバなどの画像処理装置に集約し、当該画像処理装置にて、三次元モデル生成、レンダリングなどの処理を施して得られる。そして、得られた仮想視点映像をモバイル端末等の映像表示装置に配信することでユーザの閲覧に供される。ここで、生成段階においては、オブジェクトの三次元モデル等の映像素材を事前に作っておくことにより、例えば4K画質に対応した仮想視点映像や8K画質に対応した仮想視点映像といったように、ユーザのニーズに合わせて様々な映像フォーマットの仮想視点映像を得ることができる。よって、仮想視点映像を生成する画像処理システムには、様々な映像フォーマットに柔軟に対応できることが求められる。
【0004】
この点、特許文献1には、複数のユーザそれぞれにより指定された仮想視点に応じた複数の仮想視点画像を生成し、それを複数のユーザ間で共有する技術が記載されている。特許文献1には、複数のプロジェクタを用いた映像投影技術において、プロジェクタ毎に投影方法を変更することにより、任意のフォーマットの映像を投影できる技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
複数の異なる映像フォーマットの仮想視点映像を生成する場合に、映像フォーマット毎に専用のレンダラを用いてレンダリングを行うこととすると、システム全体の構成が複雑になり、また、専用のハードやソフトの設計に伴うコストも大きくなってしまう。
【0007】
そこで本開示の技術は、異なる映像フォーマットの仮想視点映像を効率的に生成できるようにすることを目的とする。
【課題を解決するための手段】
【0008】
本開示に係る画像処理システムは、生成される仮想視点画像の画素数を示す画素数情報、および前記仮想視点画像に対応する第1仮想視点を示す第1仮想視点情報を取得する取得手段と、前記画素数情報および前記第1仮想視点情報に基づいて、複数の第2仮想視点を示す複数の第2仮想視点情報を生成する第1生成手段と、前記複数の第2仮想視点情報に基づいて複数の画像を生成する複数の第2生成手段と、前記複数の第2生成手段により生成される複数の画像を合成して前記仮想視点画像を生成する合成手段と、を有し、前記複数の第2仮想視点情報のそれぞれは、前記仮想視点画像上における前記第2生成手段が生成する画像に対応する範囲を特定するための画角情報を含み、前記画角情報が示す画角には、前記仮想視点画像に反映されない余剰領域が含まれる、ことを特徴とする。
【発明の効果】
【0009】
本開示の技術によれば、異なる映像フォーマットの仮想視点映像を効率的に生成することが可能となる。
【図面の簡単な説明】
【0010】
【
図2】画像処理サーバ101の内部構成を示す機能ブロック図。
【
図3】実施形態1に係る、仮想視点映像を生成する処理の全体の流れを示すフローチャート。
【
図4】仮想視点情報の変換方式決定処理の流れを示すフローチャート。
【
図5】(a)は仮想視点の概念を説明する図、(b)は仮想視点情報の一例を示す図。
【
図6】(a)は、8K画質の描画領域を示す図、(b)は各レンダラが処理可能な8K画質の描画領域を示す図。
【
図7】実施形態1に係る、(a)は変換前の仮想視点情報の一例(抜粋)を示す図、(b)は変換後の仮想視点情報の一例(抜粋)を示す図。
【
図8】仮想視点映像生成処理の流れを示すフローチャート。
【
図9】各レンダラへの割り当て結果の一例を示す図。
【
図10】実施形態1の変形例1に係る、画像生成システムの構成の一例を示す図。
【
図11】(a)及び(b)は、実施形態1の変形例1に係る、各レンダラへの仮想視点情報の割り当てを説明する図。
【
図12】実施形態2に係る、仮想視点情報の変換を模式的に示す図。
【
図13】実施形態2に係る、仮想視点情報の変換の一例を示す図。
【
図14】実施形態3に係る、(a)は変換前の仮想視点情報の一例(抜粋)を示す図、(b)は変換後の仮想視点情報の一例(抜粋)を示す図。
【
図15】実施形態3に係る、指定フォーマットに適合させる際の処理を説明する図。
【
図16】実施形態4に係る、(a)は変換前の仮想視点情報の一例(抜粋)を示す図、(b)は変換後の仮想視点情報の一例(抜粋)を示す図。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態について、図面を参照して説明する。なお、以下の実施形態は本発明を限定するものではなく、また、本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成については、同じ符号を付して説明する。
【0012】
[実施形態1]
本実施形態では、仮想視点映像のレンダリング処理を、その解像度に応じて複数のレンダラで分担する態様について説明する。
【0013】
(システム構成)
図1は、本実施形態に係る、仮想視点映像を生成する画像生成システムの構成の一例を示す図である。画像生成システム100は、画像処理サーバ101、仮想視点コントローラ102、データベース103、スイッチングハブ104で構成される。
【0014】
画像処理サーバ101は、レンダリング処理部111とフォーマット処理部112とを有する。レンダリング処理部111は、被写体(オブジェクト)の3次元モデルやテクスチャ情報といったレンダリングに必要なデータを取得して、フォーマット処理部112から提供される仮想視点情報に従ったレンダリングを行う。レンダリングのための3次元モデルやテクスチャ情報などのデータ(以下、「レンダリング用データ」と呼ぶ。)は、データベース103から取得する。フォーマット処理部112は、仮想視点コントローラ102から入力された仮想視点情報を、複数のレンダラで処理可能なように変換し、レンダリング処理部111に提供する。また、レンダリング処理部111によるレンダリング結果(暫定的な仮想視点映像)に対し、出力用の映像フォーマットに適合させる処理を行って、最終的な仮想視点映像として出力する。レンダリング処理部111とフォーマット処理部112とは高速な通信インタフェースで接続され、仮想視点情報やレンダリング結果の送受信を行う。レンダリング処理部111とフォーマット処理部112とを、別々の画像処理装置とし、両装置間を高速ネットワークで接続するような構成でもよい。この際の、高速ネットワークは、Ethernet(登録商標)であるIEEE標準準拠のGbE(ギガビットイーサーネット)や10GbEでもよいし、インターコネクトInfiniband、産業用イーサーネット等を組合せて構成されてもよい。また、これらに限定されず、他の種別のネットワークであってもよい。
【0015】
仮想視点コントローラ102は、ユーザが仮想視点を設定するためのコントローラである。ユーザは、視点位置、向き(姿勢)、焦点距離、画角といった仮想視点映像の生成に必要な情報を入力(或いは予め用意されたものの中から選択)する。そして、ユーザが入力・選択した内容に応じて、時間的に連続した仮想視点を定義した情報(仮想視点情報)が、スイッチングハブ104を介して画像処理サーバ101へ送られる。仮想視点情報の詳細については後述する。なお、
図1では、1つの仮想視点コントローラ102しか存在しないが、複数の仮想視点コントローラ102を設けてもよい。
【0016】
データベース103は、レンダリングに必要な映像素材である上述のレンダリング用データを格納するストレージサーバである。画像処理サーバ101からのデータ取得要求に応じて、レンダリング用データを提供する。
【0017】
(画像処理サーバの構成)
次に、画像処理サーバ101についてより詳細に説明する。
図2は、画像処理サーバ101の内部構成を示す機能ブロック図である。前述のとおり、画像処理サーバ101は、レンダリングに関する処理を担うレンダリング処理部111と、映像フォーマットに関する処理を担うフォーマット処理部112とを有する。
【0018】
まず、レンダリング処理部111の内部構成について説明する。レンダリング処理部101は、レンダラモジュール201、レンダラ管理部203及びレンダラ割り当て部204を有する。
【0019】
レンダラモジュール201は、レンダリング実行主体としての基礎的な単位の処理部であるレンダラ202を複数有し、それぞれのレンダラ202で、後述する変換後の仮想視点情報に従ったレンダリング画像をフレーム単位で生成する。本実施形態のレンダラモジュール201は、第1レンダラから第16レンダラまでの16個のレンダラ202を備えるものとする。但し、レンダリング処理部111が有するレンダラ202の数は本実施形態の16個に限定されるものではない。個々のレンダラ202は、後述のレンダラ割り当て部204によって自身に割り当てられた分のレンダリング処理を行って、ユーザが指定した任意の視点からの3次元モデルの見えを表す画像を、所定の演算処理を行って生成する。レンダラ202は、CPU(Central Processing Unit)やGPU(Graphics Processing)といった演算器上で動作するソフトウェアによって実現される。或いは、DSP(Digital Signal)やASIC(Application Specific Integration Circuit)といったハードウェアなどで実現される。
図2では、レンダラ202それぞれを識別するため、第1レンダラ202a、第2レンダラ202b、・・・第16レンダラ202pのようにアルファベットの下付き文字を沿えて表記している。なお、以下の説明において、第1レンダラ202a~第16レンダラ202pに共通して当て嵌まる内容については、単に「レンダラ202」と表す場合がある。
【0020】
レンダラ管理部203は、レンダラモジュール201が有する複数のレンダラ202に関する情報(以下、「レンダラ情報」と表記)を格納・管理する。ここで、レンダラ情報には、レンダラモジュール201に搭載されるレンダラ202の数(本実施形態では16個)や、各レンダラ202の性能に関する情報が含まれる。そして、性能に関する情報には、描画可能な画像解像度やフレームレートの情報が含まれる。本実施形態では、第1レンダラ202a~第16レンダラ202pそれぞれが、いわゆる2K画質(1920画素×1080画素)の画像解像度、60fpsのフレームレートで生成する能力を持つものとする。レンダラ管理部203の具体的な構成要素としては、不揮発メモリなどが挙げられ、レンダラモジュール201の仕様に基づき予め作成したレンダラ情報を、レンダラモジュール201に固有の情報として保持する。
【0021】
レンダラ割り当て部204は、後述の仮想視点変換部211から提供される変換後の仮想視点情報を基に、レンダラモジュール201内の各レンダラ202a~202pに対しそれぞれが担当するレンダリング内容(描画対象となる画像領域やフレーム等)を割り当てる。割り当てが決まるとその情報がレンダラモジュール201に渡され、各レンダラ202が自身の担当分のレンダリングを実行することになる。
【0022】
次に、フォーマット処理部112の内部構成について説明する。フォーマット処理部112は、仮想視点変換部211、フォーマット適合部212、映像出力部213を有する。
【0023】
仮想視点変換部211は、仮想視点コントローラ102から入力された仮想視点情報について、レンダラモジュール201の構成に応じた変換方式を決定し、変換する。変換方式の決定は、仮想視点コントローラ102から別途入力される映像フォーマットに関する情報(以下、「フォーマット情報」と表記。)と、レンダラ管理部203に保持されたレンダラ情報に基づいてなされる。本実施形態のフォーマット情報には、一般的な2D方式における画像解像度とフレームレートが少なくとも定義されているものとする。仮想視点変換部211は、決定した変換方式の内容をフォーマット情報と合わせて(まとめて「仮想視点変換情報」と呼ぶ。)、フォーマット適合部212に通知する。変換方式の決定や決定した変換方式に従った仮想視点情報の変換処理の詳細については後述する。変換後の仮想視点情報は、上述のレンダリング処理部111に送られる。
【0024】
フォーマット適合部212は、レンダリング処理部111から受け取ったレンダリング結果を用いて、仮想視点変換情報内のフォーマット情報で特定される所定の映像フォーマットに適合する仮想視点映像を生成する。レンダラモジュール201におけるレンダリング結果(本実施形態では最大で16個のレンダリング画像)から、所定の映像フォーマットに適合する仮想視点映像を生成する処理の詳細は後述する。生成された仮想視点映像のデータは、映像出力部213に渡される。
【0025】
映像出力部213は、フォーマット適合部212から提供された、所定の映像フォーマットに則った仮想視点映像のデータを、ユーザ視聴用端末(不図示)等に出力する。映像データの出力用インタフェースには、HDMI(登録商標)(High Definition Multimedia)やSDI(Serial Digital Interface)といった公知の通信インタフェースを利用すればよい。また、VoIP(Video over IP)など、ネットワークを介した映像出力用のインタフェースを利用してもよい。
【0026】
(仮想視点映像生成処理の流れ)
次に、画像処理サーバ101における仮想視点映像を生成する処理の全体的な流れを説明する。
図3は、本実施形態に係る、入力仮想視点情報をレンダラモジュール201の構成に応じて適宜変換した上でレンダリングを行って仮想視点映像を生成する処理の全体の流れを示すフローチャートである。
図3のフローチャートに示す一連の処理は、画像処理サーバ101内の不図示のCPUが、所定のプログラムを不図示のワークメモリ(RAM)に展開して実行することで実現される。なお、
図3を含むフローチャートの説明において登場する符号「S」はステップを表す。
【0027】
まず、S301にて、仮想視点コントローラ102から入力される仮想視点情報に対する変換方式が決定される。この変換方式を決定する処理は、レンダリング処理の実行に先立って、フォーマット処理部112内の仮想視点変換部211において実施される準備的な処理(事前処理)である。
【0028】
次に、S302では、フォーマット情報で特定される所定の映像フォーマットに準拠した仮想視点情報が仮想視点コントローラ102から、仮想視点映像の素材となるレンダリング用データがデータベース103から、それぞれ受信される。入力された仮想視点情報は仮想視点変換部211に入力され、レンダリング用データはレンダラモジュール201に入力される。
【0029】
そして、S303では、入力された仮想視点情報とレンダリング用データに基づき、仮想視点映像の生成処理が実行される。この仮想視点映像生成処理では、まず、S301で決定された変換方式に従って仮想視点情報を変換する処理が実行される。そして、変換後の仮想視点情報に従ったレンダリング処理、レンダリング結果から所定の映像フォーマットに適合した仮想視点映像を生成する処理が順に実行される。仮想視点映像生成処理の詳細については後述する。
【0030】
以上が、全体の処理フローである。
【0031】
(仮想視点情報の変換方式決定処理)
続いて、事前処理としての仮想視点情報の変換方式決定処理(S301)の詳細について、
図4に示すフローチャートを参照して説明する。
【0032】
変換方式決定処理の説明に入る前に、仮想視点情報について確認しておく。
図5(a)は仮想視点の概念を説明する図、同(b)は8K画質の映像フォーマットに準拠した仮想視点画像を生成するための仮想視点情報の一例を示す図である。仮想視点は、位置501、向き502、焦点距離503、画角504に、時刻を加えた5つの要素で特定される。位置501は、三次元空間上における仮想的な視点位置を示す座標情報である。向き502は、位置501からの向き(視線方向)を示す情報であり、三次元ベクトルで表現される。焦点距離503は、位置501から仮想視点映像平面までの距離に該当する。画角504は、生成する仮想視点映像において被写体が映る範囲を画定する情報であって、原点オフセットと幅・高さによって特定される。ここで原点オフセットとは、仮想視点映像平面上における、生成する仮想視点画像の原点(例えば左上隅の点)を示す情報である。具体的には、原点オフセットは、位置501から仮想視点映像平面へ下した垂線が仮想視点映像平面に交わる交点の位置と、生成すべき仮想視点画像の原点の位置との、差を示す座標情報である。
図5(b)のとおり、焦点距離と画角は、本実施形態ではピクセルを単位とする。時刻は、生成元となる複数視点映像が撮像された時刻のうち仮想視点映像の生成対象となる時刻を示す情報であり、時、分、秒、フレーム番号で特定される。以下では、仮想視点コントローラ102から、画像解像度がいわゆる8K画質(7680画素×4320画素)で、かつ、フレームレートが60fpsの映像フォーマットに準拠した仮想視点画像を生成するための仮想視点情報が入力されるものとして、
図4のフローの説明を行うこととする。
【0033】
まず、S401では、上述のレンダラ情報が、レンダリング処理部111のレンダラ管理部203から取得される。続くS402では、生成対象となる仮想視点映像の映像フォーマットを規定するフォーマット情報が、仮想視点コントローラ102からスイッチングハブ104を介して取得される。
【0034】
そして、S403では、フォーマット情報が示すユーザ指定の映像フォーマット(以下、「指定フォーマット」と呼ぶ。)が、レンダラ情報が示すレンダラモジュール201の構成によって対応可能な映像フォーマットであるかどうかが判定される。前述のとおり本実施形態のレンダラモジュール201を構成する各レンダラ202は、2Kの解像度でレンダリングする能力を有している。ここで、図を参照しつつ、レンダラモジュール201が指定フォーマットに対応可能か否かの判定について説明する。
図6(a)に示す横長の矩形600は、仮想視点コントローラ102から入力される仮想視点情報が準拠する8K画質の描画領域を示す。そして、
図6(b)に示す16個の横長矩形601~616それぞれは、各レンダラ202が処理可能な2K画質の描画領域を示している。本実施形態の場合、8K画質の映像フォーマットに従った仮想視点映像は、レンダラ202単独では生成できない。しかしながら、
図6(b)に示すように、2K画質の単位で16個の仮想視点映像を生成(すなわち、16個のレンダラ202で分担してレンダリング)を行い、得られた16個のレンダリング画像を結合することで8K画質の仮想視点映像を得ることができる。このように、本実施形態において、仮想視点コントローラ102から入力される仮想視点情報が8K画質の映像フォーマットに準拠したものである場合は、レンダラモジュール201において対応可能と判定されることになる。また、同様に、がいわゆる4K画質(3840画素×2160画素)の映像フォーマットに準拠した仮想視点情報の場合も、4個のレンダラ202で分担できるため、対応可能と判定されることになる。このような判定処理の結果、指定フォーマットが対応可能な映像フォーマットである場合はS404に進み、対応不可能な映像フォーマットである場合はS405に進む。
【0035】
S404では、生成対象となる仮想視点映像の映像フォーマットに準拠した、仮想視点コントローラ102から入力される仮想視点情報に対する変換方式が決定される。各レンダラ202が2K画質でレンダリングする能力を持つ場合において、8K画質用の仮想視点情報が入力されるとすれば、
図7の(a)及び(b)に示すように、16個の2K画質用の仮想視点情報に分割することが決定されることになる。
図7において、(a)は仮想視点コントローラ102から入力される8K画質用の仮想視点情報を説明する図であり、8K画質の描画領域701とその画角情報702が示されている。
図7(b)はレンダラモジュール201の構成に基づき変換した後の2K画質用の仮想視点情報を説明する図であり、変換後の単位描画領域703とその画角情報704が示されている。
図7の(a)と(b)とを比較すると明らかなように、この例の場合は画角情報が変化することになる。なお、画角情報の項目のうち、両図に記載のない項目(時刻、位置・向き・焦点距離)については、変換前と変わらないため省略している。
【0036】
S405では、指定フォーマットが対応不可能な映像フォーマットである旨の通知が、仮想視点コントローラ102に送信される。
【0037】
最後に、S406にて、S404で決定された変換方式の内容を示す仮想視点変換情報が、フォーマット適合部212に通知され、仮想視点変換方式の決定処理を終了する。
【0038】
(仮想視点映像生成処理)
次に、仮想視点映像の生成処理(S303)の詳細について、
図8に示すフローチャートを参照して説明することとする。
図8に示す一連の処理は、フレーム単位で実行される。ここでも、仮想視点コントローラ102から、8K画質の映像フォーマットに準拠した仮想視点情報が入力される場合を想定して説明を行うこととする。
【0039】
まず、S801では、仮想視点コントローラ102から受信した仮想視点情報がフォーマット処理部112に入力される。続くS802では、仮想視点変換部211において、事前処理にて決定された変換方式に従って、S801で入力された仮想視点情報が変換される。変換後の仮想視点情報は、レンダリング処理部111に送られる。
【0040】
S803では、レンダリング処理部111にて、変換後の仮想視点情報に基づくレンダリング処理が実行される。具体的には、まず、レンダラ割り当て部204が、仮想視点変換部211から受け取った変換後の仮想視点情報に基づき、レンダラモジュール201内の各レンダラ202a~202pに対する担当の割り当てを行う。
図9は、各レンダラ202a~202pへの割り当て結果の一例を示している。ここでは、第1レンダラ202aが2Kの描画領域601、第2レンダラ202bが2Kの描画領域602、・・・第16レンダラ202pが2Kの描画領域616といった具合に割り当てられている。16個のレンダラ202a~202pのそれぞれは、16個に分割された変換後の仮想視点情報に従って、自身が担当する描画領域についてのレンダリングを、データベース103から提供されたレンダリング用データを用いて実行する。16個のレンダラ202a~202pによるレンダリング結果(16個のレンダリング画像)は、フォーマット処理部112に送られる。
【0041】
S804では、フォーマット処理部112にて、レンダリング結果を用いて指定フォーマットに適合した仮想視点映像を生成する処理が実行される。本実施形態の場合、フォーマット適合部212において、レンダラモジュール201から受け取った16個の2K画質の仮想視点映像を結合して、指定フォーマットである8K画質の仮想視点映像が生成される。生成された仮想視点映像のデータは、映像出力部213に渡される。
【0042】
S805では、映像出力部213が、S804にて生成された指定フォーマットの仮想視点映像データを出力する。
【0043】
以上が、仮想視点映像生成処理の内容である。
【0044】
<変形例>
前述のとおり、仮想視点コントローラ102は複数設けてもよい。異なる映像フォーマットそれぞれに準拠した複数の仮想視点情報が、複数の仮想視点コントローラから送られてくるケースについて、変形例として説明する。
【0045】
≪変形例1≫
図10は、本変形例に係る、複数の仮想視点コントローラを備えた画像生成システムの構成の一例を示す図である。本変形例の画像生成システム100’は、第1から第7まで計7つの仮想視点コントローラ102a~102gを備えている。そして、第1仮想視点コントローラ102a~第3仮想視点コントローラ102cは、4K画質の映像フォーマットに準拠した仮想視点を設定するための仮想視点コントローラである。そして、残りの第4仮想視点コントローラ102d~第7仮想視点コントローラ102gは、2K画質の映像フォーマットに準拠した仮想視点を設定するための仮想視点コントローラである。図では省略しているが、これら7つの仮想視点コントローラ102a~102gはそれぞれ仮想視点情報とフォーマット情報を、スイッチングハブ104を介して画像処理サーバ101に対し送信する。複数の仮想視点コントローラそれぞれから仮想視点情報とフォーマット情報が入力される以外は、
図1の画像生成システム100と同じシステム構成である。
【0046】
図11の(a)及び(b)は、前述の
図6の(a)及び(b)にそれぞれ対応する図であり、本変形例における16個の各レンダラ202a~202pへの変換後の仮想視点情報の割り当てを示している。
図11(a)において、3つの横長の矩形1101~1103は、第1仮想視点コントローラ102a~第3仮想視点コントローラ102cからそれぞれ入力される仮想視点情報の前提となっている4K画質の描画領域を示している。また、
図11(a)において、4つの横長の矩形1104~1107は、第4仮想視点コントローラ102d~第7仮想視点コントローラ102gからそれぞれ入力される仮想視点情報の前提となっている2K画質の描画領域を示している。そして、
図11(b)は、16個のレンダラ202a~202gに割り当てられた描画領域を示している。本変形例の場合、4K画質の映像フォーマットに従った仮想視点映像は、レンダラ202単独では生成できない。しかしながら、
図11(b)に示すように、それぞれ4個のレンダラ202で分担して2K画質でレンダリングを行い、得られた4個のレンダリング画像を結合することで4K画質の仮想視点映像を得ることができる。例えば、第1仮想視点コントローラ102aから入力される仮想視点情報については4つの仮想視点情報に分割・変換し、第1レンダラ202a~第4レンダラ202dが分担してレンダリングを行うことで4K画質の仮想視点映像を得ることができる。第2仮想視点コントローラ102b及び第3仮想視点コントローラ102cから入力される仮想視点情報についても同様である。すなわち、第2仮想視点コントローラ102bから入力される仮想視点情報についても4つの仮想視点情報に分割・変換し、第5レンダラ202e~第8レンダラ202hが分担してレンダリングを行うことで4K画質の仮想視点映像を得ることができる。また、第3仮想視点コントローラ102cから入力される仮想視点情報についても4つの仮想視点情報に分割・変換し、第9レンダラ202i~第12レンダラ202lが分担してレンダリングを行うことで4K画質の仮想視点映像を得ることができる。一方、第4仮想視点コントローラ102d~第7仮想視点コントローラ102gから入力される仮想視点情報については、レンダラ202の単位処理能力と同じ2K画質を前提としている。よって、入力された仮想視点情報に従ったレンダリングをそのまま第13レンダラ202m~第16レンダラ202pにそれぞれ割り当て、各レンダラが自身の担当分をレンダリングすることで2K画質の仮想視点映像を生成できる。
【0047】
≪変形例2≫
次に、画像解像度が各レンダラ202の単位処理能力を超えるものの、フレームレートが各レンダラ202の単位処理能力に満たない映像フォーマットに準拠した仮想視点情報が、2つの仮想視点コントローラそれぞれから入力されるケースを説明する。ここでは、画像解像度が8Kで、フレームレートが30fpsの映像フォーマットに準拠した仮想視点情報が、別々の仮想視点コントローラ102から入力されるケースを想定する。いま、16個ある各レンダラ202の処理能力は、画像解像度が2K、フレームレートが60fpsである。つまり、フレームレートを基準とすると、各レンダラ202は2倍の処理能力を持つことになる。なので、16個のレンダラ202a~202pが協働することによって、8K画質・60fpsの時と同じレンダリング負荷で、8K画質・30fpsの仮想視点映像を2つ得ることができることになる。例えば、一方の仮想視点コントローラ102からの仮想視点情報を、2K画質に準拠した16個の仮想視点情報に分割した上で、単位描画領域(前述の
図6(b)を参照)2個分のレンダリングを1つのレンダラ202が担当するように変換後の仮想視点情報を割り当てる。こうして、2つの仮想視点情報のうちの一方を第1レンダラ202a~第8レンダラ202hで分担して処理させ、これと並行して、もう一方の仮想視点情報を第9レンダラ202i~第16レンダラ202pで分担して処理させる。このようにすることで、8K画質・30fpsの映像フォーマットに従った2種類の仮想視点映像を、同時並行的に生成することが可能となる。
【0048】
このように、複数の仮想視点コントローラから異なる映像フォーマットに従った仮想視点情報が別個に入力されるケースでも、レンダラ202の単位処理能力に応じてレンダリングを割り当てることで、所望の仮想視点映像を得ることが可能となる。なお、上述の変形例では複数の仮想視点コントローラ102が同時に起動している前提で説明を行ったが、これに限らない。例えば、既存の画像生成システムが稼働中に新規に仮想視点コントローラ102が追加されるということも考え得る。この場合も、いずれかのレンダラ202が空いており新規割り当てが可能であれば、他の仮想視点コントローラ102が動作中でも、当該新規の仮想視点コントローラ102から入力された仮想視点情報に従った仮想視点映像の生成を開始してもよい。
【0049】
以上のとおり本実施形態によれば、高解像度の映像フォーマットに準拠した仮想視点情報を、低解像度の映像フォーマットに準拠した仮想視点情報に分割して複数のレンダラで分担してレンダリングを行う。これにより、様々な解像度の映像フォーマットに則った仮想視点映像を、短期間・低コストで効率的に生成することが可能となる。
【0050】
[実施形態2]
実施形態1では、各レンダラ202の性能のうち画像解像度に着目し、画像解像度に応じて複数のレンダラ202でレンダリングを分担する態様を説明した。次に、各レンダラ202の性能のうちフレームレートに着目し、フレームレートに応じて複数のレンダラ202でレンダリングを分担する態様を、実施形態2として説明する。基本的なシステム構成や仮想視点映像生成の大まかな流れは実施形態1と共通であるため、以下では実施形態1との差異点を中心に説明を行うものとする。
【0051】
図12は、本実施形態における仮想視点情報の変換を模式的に示す図である。
図12において、フレーム群1200は、フレームレートが120fpsの場合のフレーム間隔を示している。いま、仮想視点コントローラ102から入力されるフォーマット情報には、解像度が2K画質であって、フレームレートが120fpsであることが規定されているものとする。
【0052】
図2の機能ブロック図で示すレンダラモジュール201の各レンダラ202のレンダリング能力は、前述のとおり、解像度が2K画質、フレームレートが60fpsである。そこで、2個のレンダラ20でレンダリングを分担することで、120fpsのフレームレートに対応した仮想視点映像を生成する。つまり、前述の
図4のフローのS404において、各レンダラ202が対応可能な60fpsの単位で、仮想視点コントローラ102から入力される120fpsを前提とする仮想視点情報を2つに分割し、レンダリングを分担する。
図12の例では、入力フレーム群1200のうち偶数番目のフレーム群1201のレンダリングを第1レンダラ202aが行い、残りの奇数番目のフレーム群1202を第2レンダラ202bが行うように、入力仮想視点情報が分割されることになる。
【0053】
図13は、本実施形態における仮想視点情報の変換を説明する図である。
図13において、「120fps」のテーブルが仮想視点コントローラ102から入力される変換前の1秒分の仮想視点情報を示し、「第1レンダラ用60fps」のテーブル及び「第2レンダラ用60fps」のテーブル」が変換後の仮想視点情報を示している。
図13に示すように、フレーム番号が偶数番目のフレーム群1201を第1レンダラ202aでレンダリングし、フレーム番号が奇数番目のフレーム群1202を第2レンダラ202bでレンダリングするよう、1フレーム分ずつ順に振り分けられている。これにより、それぞれのレンダラ202から60fps分のレンダリング画像を得ることができる。そして、双方のレンダリング画像を1フレーム毎に順に並べる処理をフォーマット適合部212にて行うことで、120fpsの仮想視点映像を生成することができる。
【0054】
<変形例>
なお、本実施形態では、各レンダラ202の性能を超えるフレームレートに準拠した仮想視点情報が入力された場合を想定し、レンダラ202の処理能力単位でレンダリングの対象フレームを分担する態様を説明したが、性能に満たないフレームレートが要求される場合もある。例えば、欧州などで採用されている50fpsや映画などで採用されている24fpsといったフレームレートの仮想視点映像を生成する場合である。このように各レンダラ202の単位処理能力に満たないフレームレートが要求される場合は、入力仮想視点情報に従ったレンダリングを、任意のレンダラ202において所定数のフレームを間引いて行えばよい。
【0055】
以上のとおり本実施形態によれば、各レンダラの性能を超えるフレームレートの仮想視点映像を前提とした仮想視点情報を、レンダラが処理可能な単位のフレームレートに分離してレンダリングする。これにより、様々なフレームレートの映像フォーマットに則った仮想視点映像を短期間・低コストで効率的に生成することが可能となる。
【0056】
[実施形態3]
次に、実施形態1で説明した、画像解像度に基づく仮想視点情報の変換の際に、画角に余剰領域を持たせる態様を、実施形態3として説明する。なお、以下の説明では、画像生成システムの基本的な構成は実施形態1と同じであるものとする。ただし、本実施形態の各レンダラ202は、2K画質よりもピクセル数が縦横共に多い2048画素×1200画素の解像度に対応したレンダリング能力を有するものとする。そして、実施形態1の場合と同様、解像度が8K画質であることを示すフォーマット情報と、8K画質を前提とした仮想視点情報が仮想視点コントローラ102から入力されるものとして説明を行うこととする。
【0057】
図14の(a)及び(b)は、実施形態1の
図7の(a)及び(b)にそれぞれ対応する図である。
図14において、(a)は仮想視点コントローラ102から入力される仮想視点情報を説明する図であり、8K画質の描画領域1401に対応する画角情報1402が示されている。
図14(b)はレンダラモジュール201を構成する各レンダラ202の性能に応じて変換した後の仮想視点情報を説明する図であり、変換後の単位描画領域1403に対応する画角情報1404が示されている。実施形態1の場合と同様、画角情報が変化しているが、
図7(b)の画角情報704と比較すると、
図14(b)の画角情報1404の方が上下
左右それぞれ20ピクセルずつ増加しているのが分かる。なお、ここでは増加分を20ピクセルとしているが、レンダラ202の解像度性能の範囲内であれば、余剰領域のピクセル数を増加させて仮想視点情報の変換を行えばよい。
【0058】
図15は、
図14(b)で示した変換後の仮想視点情報に従って生成されたレンダリング結果(16個のレンダリング画像)を、指定フォーマットである8K画質に適合させる際の処理を説明する図である。
図15において、破線で示す矩形が第1レンダラ202a~第16レンダラ202pそれぞれの担当描画領域を示している。
図15に示すように、各レンダラ202a~202pで生成された1960画素×1120画素の画像を、余剰領域(ここでは上下
左右20ピクセル)を除いて、すなわち、余剰領域分だけ重複させて結合することで、最終的に8K画質を得ることができる。
【0059】
以上のとおり本実施形態によれば、余剰領域分を重複させた上で分担してレンダリングを行うので、各レンダラが担当する描画領域間の境界における不連続性を抑えた、自然な結合画像を得ることが可能となる。
【0060】
[実施形態4]
続いて、仮想視点コントローラ102から入力された仮想視点情報を画像解像度に基づき分割する際に、各レンダラ202に等分しない態様を実施形態4として説明する。なお、以下の説明では、画像生成システムの基本的な構成は実施形態1と同じであるものとする。すなわち、各レンダラ202がレンダリング可能な画像解像度は、実施形態1と同様に1920画素×1080画素とする。そして、本実施形態では、仮想視点コントローラ102からは、解像度が4096画素×2160画素(すなわち、4K画質よりも縦横共にピクセル数が多い)の映像フォーマットに対応した仮想視点情報が入力されるものとする。
【0061】
図16の(a)及び(b)は、実施形態1の
図7の(a)及び(b)にそれぞれ対応する図である。
図16において、(a)は仮想視点コントローラ102から入力される仮想視点情報を説明する図であり、画像解像度が4096画素×2160画素の描画領域1601に対応する画角情報1602が示されている。
図16(b)はレンダラモジュール201を構成する各レンダラ202の性能に応じて変換した後の仮想視点情報を説明する図である。
図16(b)には、変換後の単位描画領域1603(解像度:1920画素×1080画素)に対応する画角情報1605と、変換後の単位描画領域1603(解像度:128画素×1080画素)に対応する画角情報1606が示されている。入力される仮想視点情報が、4096画素×2160画素の映像フォーマットを前提とする場合、幅が1920画素で割り切れない。そのため、単位描画領域に満たない残余領域(ここでは、128画素×1080画素)の画角情報を含む仮想視点情報を一部のレンダラ202に割り当てることになる。詳細には、まず、(w,h)=(4096,2160)の画角情報を含む仮想視点情報を、(w,h)=(1920,1080)の画角情報を含む4つの仮想視点情報と、(w,h)=(128,1080)の画角情報を含む2つの仮想視点情報に分割する。そして、得られた計6個の仮想視点情報を、6個のレンダラ202に割り当て、各レンダラ202にて割り当てられた担当分をレンダリングする。なお、ここで述べた分割の割合は一例であって、上記と異なる割合に分割してもよい。
【0062】
以上のとおり、各レンダラの処理能力単位で仮想視点情報を等分に分割・変換できない場合であっても、上述のように割合を変えて分割・変換することで、複数のレンダラを協働させて仮想視点映像を生成することができる。
【0063】
[その他の実施形態]
実施形態1~4では、投影方式が一般的な2D方式であることを念頭に、画像解像度やフレームレートが異なる仮想視点映像を生成する場合について説明を行ったが、これらに限定されない。例えば、2D方式を前提とした仮想視点情報を、2D方式以外の投影方式、例えば、視差のある2枚の画像を用いて立体視を実現する3D方式に対応した仮想視点情報に変換して、3Dの仮想視点映像を生成するようなケースにも適用可能である。この場合は、実施形態2で説明した手法を応用すればよい。すなわち、視差の異なる2種類の映像それぞれについてのレンダリングを2個のレンダラ202に分担させるように仮想視点情報を変換することで、立体視に必要な2種類の仮想視点映像を得ることができる。同様に、最大360度の範囲で視線方向を変更可能なパノラマ方式や、パノラマ方式で得た2枚の画像を用いて立体視を実現する3Dパノラマ方式で出力したい場合にも応用可能である。
【0064】
また、実施形態1~4では、レンダラモジュール201が有する16個のレンダラがすべて同一性能を有しているものとして説明したが、レンダラモジュール201の構成はこれに限定されない。例えば、4K画質の画像解像度を持つレンダラと2K画質の解像度を持つレンダラの組み合わせによって、レンダラモジュール201が構成されていてもよい。レンダラモジュール201に含まれる複数のレンダラが協働してレンダリングを実行し、そのレンダリング結果を結合等することで、仮想視点コントローラ102から入力される所定の映像フォーマットに従った仮想視点映像が生成できればよい。
【0065】
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
【符号の説明】
【0066】
100 画像生成システム
201 レンダラモジュール
202a~202p レンダラ
211 仮想視点変換部
212 フォーマット適合部