(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-04
(45)【発行日】2023-10-13
(54)【発明の名称】制御サーバ、端末、配信システム、制御方法、情報処理方法、及びプログラム
(51)【国際特許分類】
H04N 21/258 20110101AFI20231005BHJP
【FI】
H04N21/258
(21)【出願番号】P 2020075125
(22)【出願日】2020-04-21
(62)【分割の表示】P 2019120101の分割
【原出願日】2019-06-27
【審査請求日】2022-06-24
(73)【特許権者】
【識別番号】598138327
【氏名又は名称】株式会社ドワンゴ
(74)【代理人】
【識別番号】100083806
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100101247
【氏名又は名称】高橋 俊一
(74)【代理人】
【識別番号】100095500
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100098327
【氏名又は名称】高松 俊雄
(72)【発明者】
【氏名】川上 量生
(72)【発明者】
【氏名】清水 俊博
(72)【発明者】
【氏名】小嶋 尚
(72)【発明者】
【氏名】齊藤 寛明
【審査官】大西 宏
(56)【参考文献】
【文献】特表2000-516371(JP,A)
【文献】特開2005-295431(JP,A)
【文献】特開2008-097233(JP,A)
【文献】特開2019-071650(JP,A)
【文献】国際公開第2018/030206(WO,A1)
【文献】計良拓行、大野義夫,動的仮想3次元空間の表示アルゴリズム,第99回グラフィックスとCAD研究会,日本,情報処理学会,2000年04月28日,99-2,7-12
【文献】岡本和憲、中野有紀子、西田豊明,台本に基づく会話エージェントのジェスチャ自動生成,2004年度人工知能学会全国大会(第18回)論文集,日本,人工知能学会,2004年06月04日,1-4
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 -21/858
(57)【特許請求の範囲】
【請求項1】
仮想空間を撮影する仮想カメラを制御する制御サーバであって、
複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルを
複数記憶する記憶部と、
前記仮想空間の状況を解析する解析部と、
解析結果に基づき、前記遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御部を備え、
視聴者が端末で前記仮想空間を撮影した映像を視聴する際に、前記端末から受信した情報に応じて複数の遷移モデルの中から適用する遷移モデル
を選択する
制御サーバ。
【請求項2】
請求項1に記載の制御サーバであって、
前記端末から受信した前記端末の種別に応じた遷移モデルを選択する
制御サーバ。
【請求項3】
請求項1に記載の制御サーバであって、
前記端末から受信した視聴者によって選択された遷移モデルを示す情報に応じた遷移モデルを選択する
制御サーバ。
【請求項4】
請求項1ないし3のいずれかに記載の制御サーバであって、
前記遷移モデルは、前記状態における仮想空間内のオブジェクトの配置を示すレイアウト情報を含み、
前記制御部は、遷移後の状態のレイアウト情報に従って仮想空間内にオブジェクトを配置する
制御サーバ。
【請求項5】
仮想空間を仮想カメラで撮影した映像を視聴するための端末であって、
前記仮想カメラは、複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御サーバによって制御され、
視聴者が当該端末で前記仮想空間を撮影した映像を視聴する際に、複数の遷移モデルの中から適用する遷移モデルを選択するための情報を前記制御サーバへ送信する
端末。
【請求項6】
仮想空間を撮影した映像を端末へ配信する配信システムであって、
仮想空間を撮影する仮想カメラを制御する制御サーバと、前記仮想カメラによって撮影された映像を配信する配信サーバと、前記映像を視聴するための端末とを有し、
前記制御サーバは、
複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルを
複数記憶する記憶部と、
前記仮想空間の状況を解析する解析部と、
解析結果に基づき、前記遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御部を備え、
前記端末は、
視聴者が端末で前記仮想空間を撮影した映像を視聴する際に、複数の遷移モデルの中から適用する遷移モデルを選択するための情報を前記制御サーバへ送信し、
前記制御サーバは、前記端末から受信した情報に応じて複数の遷移モデルの中から適用する遷移モデル
を選択する
配信システム。
【請求項7】
仮想空間を撮影する仮想カメラを制御する制御方法であって、
コンピュータが、
複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルを
複数記憶し、
前記仮想空間の状況を解析し、
解析結果に基づき、前記遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御し、
視聴者が端末で前記仮想空間を撮影した映像を視聴する際に、前記端末から受信した情報に応じて複数の遷移モデルの中から適用する遷移モデル
を選択する
制御方法。
【請求項8】
仮想空間を撮影する仮想カメラを制御する制御サーバとしてコンピュータを動作させるプログラムであって、
複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルを
複数記憶する処理と、
前記仮想空間の状況を解析する処理と、
解析結果に基づき、前記遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する処理
と、
視聴者が端末で前記仮想空間を撮影した映像を視聴する際に、前記端末から受信した情報に応じて複数の遷移モデルの中から適用する遷移モデル
を選択する処理を前記コンピュータに実行させる
プログラム。
【請求項9】
仮想空間を仮想カメラで撮影した映像を視聴するための端末が実行する情報処理方法であって、
前記仮想カメラは、複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御サーバによって制御され、
視聴者が当該端末で前記仮想空間を撮影した映像を視聴する際に、複数の遷移モデルの中から適用する遷移モデルを選択するための情報を前記制御サーバへ送信する
情報処理方法。
【請求項10】
仮想空間を仮想カメラで撮影した映像を視聴するための端末としてコンピュータを動作させるプログラムであって、
前記仮想カメラは、複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御サーバによって制御され、
視聴者が当該端末で前記仮想空間を撮影した映像を視聴する際に、複数の遷移モデルの中から適用する遷移モデルを選択するための情報を前記制御サーバへ送信する処理を前記コンピュータに実行させる
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御サーバ、配信システム、制御方法及びプログラムに関する。
【背景技術】
【0002】
仮想現実(VR)技術を利用し、仮想空間内のスタジオでの番組を仮想カメラで撮影した映像を配信するサービスが知られている。配信者は、仮想空間内でアバターとして番組に参加する。仮想空間内のスタジオを利用することで、遠隔地の複数の配信者が共同して番組を進行することもできる。また、視聴者もアバターとして番組に参加することもできる。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
仮想空間内に複数のアバターが存在する番組では、参加しているアバター全員を撮影した映像や発言しているアバターのアップの映像など、番組の進行に応じてカメラ割りを変えると見やすい番組を配信できる。
【0005】
しかしながら、状況に適したカメラ割りをするためには、仮想空間内の仮想カメラを操作するスタッフが必要である。1人または少人数で番組を生配信する場合は、カメラを操作する専門のスタッフはおらず、状況に応じたカメラ割りをすることが難しいという問題があった。
【0006】
特許文献1には、ユーザの指示またはシナリオによりアバターを仮想空間内で自動的に行動させ、ユーザからの指示によって位置の異なる複数のカメラの撮影画像を切り替える技術が開示されている。特許文献1には、仮想空間内の複数の位置に配置されたカメラの撮影画像を切り替えることは開示されているが、カメラの切り替えは、ユーザの指示または仮想空間内の所定の位置及び時間を予め定めたシナリオに基づくものであり、状況に応じて自動的に切り替わるものではない。
【0007】
本発明は、上記に鑑みてなされたものであり、仮想空間を撮影した動画の配信において、状況に応じて適したカメラ割りを自動的に行うことを目的とする。
【課題を解決するための手段】
【0008】
本発明の一態様の制御サーバは、仮想空間を撮影する仮想カメラを制御する制御サーバであって、複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルを複数記憶する記憶部と、前記仮想空間の状況を解析する解析部と、解析結果に基づき、前記遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御部を備え、視聴者が端末で前記仮想空間を撮影した映像を視聴する際に、前記端末から受信した情報に応じて複数の遷移モデルの中から適用する遷移モデルを選択する。
【0009】
本発明の一態様の配信システムは、仮想空間を撮影した映像を端末へ配信する配信システムであって、仮想空間を撮影する仮想カメラを制御する制御サーバと、前記仮想カメラによって撮影された映像を配信する配信サーバと、前記映像を視聴するための端末とを有し、前記制御サーバは、複数のカメラ割りのそれぞれを状態とし、前記状態、前記状態の遷移条件、および前記状態における前記仮想カメラの制御情報を含む遷移モデルを複数記憶する記憶部と、前記仮想空間の状況を解析する解析部と、解析結果に基づき、前記遷移モデルに従ってカメラ割りの状態を遷移させて、遷移後の状態の制御情報に従って前記仮想カメラを制御する制御部を備え、前記端末は、視聴者が端末で前記仮想空間を撮影した映像を視聴する際に、複数の遷移モデルの中から適用する遷移モデルを選択するための情報を前記制御サーバへ送信し、前記制御サーバは、前記端末から受信した情報に応じて複数の遷移モデルの中から適用する遷移モデルを選択する。
【発明の効果】
【0010】
本発明によれば、仮想空間を撮影した動画の配信において、状況に応じて適したカメラ割りを自動的に行うことができる。具体的には、本発明によれば、有限オートマトンを用いてカメラ割りを制御することにより、VRコンテンツにおける配信者の挙動に応じて無限にシナリオ(カメラ割り)が増えることなく、効果のあるシナリオに絞られて演出上の効果が発揮される。
【図面の簡単な説明】
【0011】
【
図1】
図1は、本実施形態の番組配信システムの全体的な構成例を示すブロック図である。
【
図2】
図2は、配信者がヘッドマウントディスプレイを装着した様子を示す図である。
【
図3】
図3は、制御サーバの構成例を示す機能ブロック図である。
【
図4】
図4は、制御サーバの保持する有限オートマトンの一例を示す図である。
【
図5】
図5は、制御サーバによる仮想カメラの制御処理の流れを示すフローチャートである。
【
図6】
図6は、仮想空間内のスタジオの一例を示す図である。
【
図7】
図7は、仮想空間内のスタジオの全体を撮影した画面例を示す図である。
【
図8】
図8は、2人の配信者アバターを撮影した画面例を示す図である。
【
図9】
図9は、一方の配信者アバターのアップを撮影した画面例を示す図である。
【
図10】
図10は、他方の配信者アバターのアップを撮影した画面例を示す図である。
【
図11】
図11は、画面を分割して配信者アバターを表示した画面例を示す図である。
【
図12】
図12は、ディスプレイオブジェクトの両脇に配信者アバターを配置した画面例を示す図である。
【発明を実施するための形態】
【0012】
[システム構成]
以下、本発明の一実施形態の番組配信システムについて図面を用いて説明する。
【0013】
本実施形態の番組配信システムは、配信者が3次元仮想空間内で配信者アバターとして番組に参加し、番組が進行する仮想空間を撮影した映像をライブ配信するシステムである。また、本実施形態の番組配信システムでは、視聴者も配信者と同じ仮想空間内に視聴者アバターとして番組に参加できる。
【0014】
図1に示す本実施形態の番組配信システムは、配信サーバ10、制御サーバ20、配信者端末30、および視聴者端末40を備える。各装置は、ネットワークを介して接続されている。配信サーバ10と制御サーバ20は動画配信サービスを提供する事業者が用意する装置である。配信者端末30と視聴者端末40は、配信者および視聴者のそれぞれが自身で所有または用意する端末である。事業者から見れば、配信者と視聴者の双方が自社サービスを利用するユーザである。もちろん、事業者自身が配信者となってもよい。
図1では、2台の配信者端末30と3台の視聴者端末40を図示しているが、各装置の台数をこれに限るものではない。
【0015】
配信サーバ10は、ネットワークを介して、配信者端末30から配信者の音声および配信者アバターのモーションデータを受信する。例えば、2人の配信者が参加する番組であれば、2人の配信者それぞれの配信者端末30から2人の配信者それぞれの音声および配信者アバターのモーションデータを受信する。配信サーバ10は、モーションデータに基づいて配信者アバターの動きを制御する。モーションデータはアバターの表情を含んでもよい。
【0016】
配信サーバ10は、音声および仮想カメラで仮想空間を撮影した映像(配信サーバ10がレンダリングした映像)を視聴者端末40へ配信する。配信サーバ10は、仮想空間をレンダリングするためのデータセットを視聴者端末40へ送信し、視聴者端末40が仮想空間をレンダリングしてもよい。配信サーバ10は、配信者端末30へ映像を配信してもよい。
【0017】
配信者端末30や視聴者端末40がヘッドマウントディスプレイ(HMD)などを備えたVR機能を有する端末であれば、配信サーバ10は、仮想空間を構築するためのデータセットを端末へ送信する。端末は、受信したデータセットに基づいて仮想空間を構築し、HMDで検知した視線方向に基づいて仮想空間をレンダリングして、HMDに映像を映す。なお、仮想空間のレンダリングは配信サーバ10が行ってもよい。例えば、配信サーバ10が端末から視線方向を受信し、配信サーバ10が受信した視線方向に基づいて仮想空間をレンダリングした映像を端末へ配信し、端末は受信した映像をHMDに映す。
【0018】
配信サーバ10は、視聴者端末40からコメントを受信し、配信する映像にコメントを重畳させてもよい。
【0019】
番組に視聴者を参加させてもよい。例えば、視聴者が視聴者端末40に対して番組に参加する操作を行うと、配信サーバ10は、視聴者が番組に参加することを知らせる通知を視聴者端末40から受信する。配信サーバ10は、視聴者に対応する視聴者アバターを仮想空間内に配置する。視聴者が番組に参加しているときは、配信サーバ10は、視聴者の音声および視聴者アバターのモーションデータを視聴者端末40から受信し、モーションデータに基づいて視聴者アバターの動きを制御する。
【0020】
制御サーバ20は、仮想空間での番組を撮影する仮想カメラを制御する装置である。制御サーバ20は、カメラ割りを状態とし、仮想空間の状況を遷移条件とした有限オートマトンに従って仮想空間内の仮想カメラを制御する。制御サーバ20は、状態の遷移に従って仮想空間内のレイアウト(オブジェクトの配置)を変更してもよい。制御サーバ20の詳細については後述する。本実施形態が用いる有限オートマトンとは、有限個の状態と遷移と動作の組み合わせからなる数学的に抽象化されたモデルである。有限個の「状態」のうちある時点では1つの状態しかとらず、何らかのイベントや条件によってある状態から別の状態へと移行する。ある状態から別の状態へ移行することを「遷移」と呼ぶ。有限オートマトンは、それぞれの状態から遷移しうる状態と、遷移のきっかけとなる条件を列挙することで定義される。
【0021】
配信者端末30は、配信者が番組を配信するために使用する端末である。配信者端末30として、VR機能を有するスマートフォンおよびパーソナルコンピュータなどの任意のコンピュータ機器を用いることができる。配信者端末30は、
図2に示すように、配信者が装着するHMD31を備える。配信者端末30は、配信者からの入力を受け付けて、仮想空間内に配置される配信者アバターを操作するためのコントローラ32を備えてもよい。配信者端末30は、HMD31で検知する配信者の頭の動きおよびコントローラ32による操作に基づいて配信者アバターのモーションデータを生成する。
【0022】
配信者端末30は、配信サーバ10から仮想空間を構築するためのデータセットを受信し、受信したデータに基づいて仮想空間を構築し、仮想空間をレンダリングして、HMD31に映像を映す。
【0023】
配信者端末30は、配信者の音声および配信者アバターのモーションデータを配信サーバ10へ送信する。配信者は、配信者アバターを動かしながら、他の配信者や視聴者と会話することで番組を進行する。
【0024】
なお、配信者端末30として、HMD31を備えず、カメラを内蔵またはカメラを接続した端末を用いてもよい。この場合、配信者端末30は、カメラで配信者を撮影し、配信者を撮影した映像から配信者アバターのモーションデータを生成する。配信者端末30は、配信サーバ10から仮想カメラで仮想空間内を撮影した映像を受信して表示する。
【0025】
視聴者端末40は、視聴者が番組を視聴するために使用する端末である。視聴者端末40は、配信サーバ10から番組の映像を受信して表示できる機能を備える機器であれば、スマートフォン、タブレット端末、テレビシステム、パーソナルコンピュータなどの任意のコンピュータ機器を用いることができる。視聴者端末40は、視聴者から入力したコメントを配信サーバ10へ送信してもよい。
【0026】
視聴者が視聴者アバターとして番組に参加する場合、視聴者端末40は、視聴者の音声および視聴者アバターのモーションデータを配信サーバ10へ送信する。
【0027】
[サーバ構成]
図3を参照し、制御サーバについて説明する。
【0028】
図3に示す制御サーバ20は、解析部21、制御部22、および記憶部23を備える。制御サーバ20は、複数のカメラ割りのそれぞれを状態として持ち、仮想空間の状況に応じて状態間を遷移させて、カメラ割りを自動的に制御する。
【0029】
解析部21は、仮想空間の状況を解析する。解析対象の仮想空間の状況には、アバターの音声(配信者および視聴者の音声)を含めてもよい。例えば、解析部21は、発話したアバター、発話したアバターの順番、発話の音量、発話の長さ、発話の内容、アバターのポーズ、コメント数、番組に参加した視聴者アバターの数などを解析する。
【0030】
制御部22は、解析結果に基づき、有限オートマトンに従ってカメラ割りの状態を遷移させる。制御部22は、状態を遷移させると、遷移後の状態に紐付けられた仮想カメラの制御情報に基づいて仮想カメラを制御する。
【0031】
制御部22は、例えば
図4に示すような、有限オートマトンに従って仮想カメラを制御する。
図4の例では、4つのカメラ割りの状態S1~S4を持ち、制御部22の保持する状態は、状態S1~S4間を条件A~Hに従って遷移する。
図4の有限オートマトンを用いた画面の遷移については後述する。
【0032】
記憶部23は、複数のカメラ割りのそれぞれを状態とし、仮想空間の状況を遷移条件とした有限オートマトンと、状態ごとの仮想カメラの制御情報を記憶する。
【0033】
記憶部23は、複数種類の有限オートマトンを記憶してもよい。例えば、有限オートマトンの例としては、配信者アバターが1人の番組のカメラ割りの遷移を示す有限オートマトン、配信者アバターが2人の番組のカメラ割りの遷移を示す有限オートマトン、複数の配信者アバターが討論する番組のカメラ割りの遷移を示す有限オートマトン、配信者アバターが動画やゲーム画面を見ながら解説する番組のカメラ割りの遷移を示す有限オートマトンなど様々なものが考えられる。記憶部23は、上記に限らず、配信する番組に応じた有限オートマトンを記憶する。有限オートマトンは事業者が用意したものであってもよいし、配信者が作成したものであってもよい。
【0034】
上記制御サーバ20には、例えば、中央演算処理装置(CPU)と、メモリと、ストレージと、通信装置と、入力装置と、出力装置とを備える汎用的なコンピュータシステムを用いることができる。このコンピュータシステムにおいて、CPUがメモリ上にロードされた所定のプログラムを実行することにより、制御サーバ20が実現される。このプログラムは磁気ディスク、光ディスク、半導体メモリ等のコンピュータ読み取り可能な記録媒体に記録することも、ネットワークを介して配信することもできる。制御サーバ20の機能を配信サーバ10が備えてもよい。
【0035】
[カメラ制御処理]
図5を参照し、制御サーバによる仮想カメラの制御処理の流れについて説明する。
【0036】
配信者は、番組配信前に、番組に適した有限オートマトンを選択しておく。もしくは、配信者は、番組用に複数の有限オートマトンを選択しておき、その中から、視聴者が有限オートマトンを選択してもよい。例えば、2人の配信者アバターが参加する番組において、各配信者アバターのそれぞれを重点的に映すカメラ割りの有限オートマトンを別々に用意しておく。スタジオ全体を重点的に映すカメラ割りの有限オートマトンを用意してもよい。視聴者は、番組を視聴する際に、自分の応援する配信者アバターをより重点的に映すカメラ割りの有限オートマトンを選択できる。各有限オートマトンでは、遷移条件のウエイトを配信者アバターごとに異ならせておく。視聴者の属性情報を収集しておき、制御サーバ20が視聴者の属性情報に基づいて有限オートマトンを選択してもよい。制御サーバ20は、配信先の視聴者端末40の種別に応じて適用する有限オートマトンを選択してもよい。
【0037】
番組の配信を開始すると、ステップS11にて、解析部21は、仮想空間の状況を解析する。発話の解析に関して、アバターごとにウエイト付けを異ならせてもよい。例えば、解析部21は、配信者アバターと視聴者アバターとでは配信者アバターの発話により大きいウエイト付けをする。解析部21は、発話の解析結果をスコアに換算し、ウエイトに基づいてスコアを補正する。有限オートマトンでは、スコアに基づく遷移条件を設定しておく。
【0038】
ステップS12にて、制御部22は、解析結果に基づき、現在の状態から別の状態への遷移条件が成立したか否かを判定する。遷移条件が成立していない場合、制御部22は、ステップS14に処理を進める。
【0039】
遷移条件が成立した場合、ステップS13にて、制御部22は、保持する状態を遷移条件を満たした先の状態へ遷移させるとともに、遷移後の状態に応じて仮想カメラを制御する。例えば、状態S1から状態S2へ遷移する条件Aが成立した場合、制御部22は、保持する状態を状態S2へ遷移させるとともに、状態S2に対応するカメラ割りとなるように仮想カメラを制御する。
【0040】
ステップS14にて、制御部22は、番組が終了したか否か判定する。番組の配信が続く場合はステップS11に戻り、処理を繰り返す。
【0041】
[仮想空間内の配置]
図6を参照し、番組を撮影する仮想空間について説明する。
【0042】
図6に示す仮想空間内のスタジオは、2人の配信者アバター100,200が進行する番組を配信するために用意されたものである。スタジオ内には、2人の配信者アバター100,200が配置される。この番組には、視聴者アバター300A~300Cも参加可能である。視聴者アバター300A~300Cは、配信者アバター100,200の後ろ側に配置される。
【0043】
また、
図6では、ディスプレイオブジェクト400をスタジオ内に配置している。ディスプレイオブジェクト400は、視聴者からのコメント、静止画、動画、およびゲーム画面などをはめ込んで表示できる。配信者アバター100,200は、ディスプレイオブジェクト400に表示される動画などを見ながら番組を進行してもよい。なお、
図6では、スタジオの床オブジェクト、壁オブジェクトなどの背景オブジェクトは図示していない。上記以外のオブジェクトをスタジオ内に配置してもよい。
【0044】
仮想空間内に配置された仮想カメラ500が仮想空間内のスタジオを撮影する。制御サーバ20が仮想カメラを制御し、配信サーバ10が仮想カメラで撮影された映像を配信する。
【0045】
[画面の遷移例]
図7ないし
図10を参照し、
図4に示した有限オートマトンを番組のカメラ割りの遷移を示す有限オートマトンとして用いたときの、番組の画面の遷移例について説明する。
【0046】
図4の有限オートマトンは、2人の配信者アバターが進行する番組用のカメラ割りの有限オートマトンである。
図4の有限オートマトンにおいて、状態S1のカメラ割りはスタジオ全体を撮影するカメラ割りであり、状態S2のカメラ割りは2人の配信者アバター100,200がフレーム内に収まるカメラ割りであり、状態S3のカメラ割りは配信者アバター100のアップを映すカメラ割りであり、状態S4のカメラ割りは配信者アバター200のアップを映すカメラ割りである。
【0047】
番組開始時は、状態S1からスタートする。状態S1では、仮想カメラで撮影された映像は、
図7に示すように、仮想空間内のスタジオ全体を撮影した映像となる。
【0048】
状態S1のとき、条件Aが成立すると、状態S2へ遷移する。条件Aは、例えば、配信者アバター100,200のいずれかが発話した、という条件である。条件Aとして、オープニング音楽が終了した、所定時間経過した、などを設定してもよい。
【0049】
制御サーバ20は、状態S1のとき、配信者アバター100,200のいずれかの発話を検知すると、保持する状態を状態S1から状態S2へ遷移させるとともに、2人の配信者アバター100,200がフレーム内に収まるように、仮想カメラの位置、撮影方向、および画角等を制御する。状態S2へ遷移すると、
図8に示すように、配信者アバター100,200の2人を撮影した映像となる。演出上の工夫の一環として、仮想カメラで撮影するとき仮想空間内のオブジェクトの位置は無視し、オブジェクトの位置を、見やすく、興趣性がある位置に変えて、仮想カメラによる撮影画面としてもよい。例えば、離れた位置に立つ2人の配信者アバター100,200を、近くで向い合せて、仮想カメラで撮影する。あるいは、同じ仮想空間にいる他のアバター、例えば視聴者アバターを、配信者アバター100,200を囲む位置に配置する。2人の配信者アバター100,200の間に他のアバターや仮想オブジェクトが存在し、配信者アバター100,200が隠れてしまう場合に、あえて障害となる仮想オブジェクト等を表示しない。
【0050】
状態S2のとき、条件Bが成立すると状態S1に遷移し、条件Cが成立すると状態S3に遷移し、条件Eが成立すると状態S4に遷移する。
【0051】
条件Cは、例えば、配信者アバター100が所定時間以上発話を続けた、という条件である。条件Eは、例えば、配信者アバター200が所定時間以上発話を続けた、という条件である。配信者アバター100,200の2人で会話している間は、状態S2とし、配信者アバター100,200のいずれかが所定時間以上続けて話すようになると、状態S3または状態S4に遷移する。
【0052】
制御サーバ20は、状態S2のとき、配信者アバター100が所定時間以上発話を続けたことを検知すると、保持する状態を状態S2から状態S3へ遷移させるとともに、配信者アバター100がアップで写るように、仮想カメラを制御する。状態S3へ遷移すると、
図9に示すように、配信者アバター100のアップを撮影した映像となる。
【0053】
また、制御サーバ20は、状態S2のとき、配信者アバター200が所定時間以上発話を続けたことを検知すると、保持する状態を状態S2から状態S4へ遷移させるとともに、配信者アバター200がアップで写るように、仮想カメラを制御する。状態S4へ遷移すると、
図10に示すように、配信者アバター200のアップを撮影した映像となる。
【0054】
なお、状態S3,S4において、配信者アバター100,200のそれぞれの背景を別々に用意してもよい。例えば、状態S3,S4のそれぞれに背景オブジェクトを紐付けておき、状態S3,S4に遷移した際に、紐付けられた背景オブジェクトを指定の場所(配信者アバター100,200の後ろ)に出現させる。配信者アバター100の背景と配信者アバター200の背景とを異ならせることができる。
【0055】
状態S3のとき、条件Hが成立すると状態S4に遷移し、状態S4のとき、条件Gが成立すると状態S3に遷移する。
【0056】
条件Hは、例えば、配信者アバター200が発話した、という条件である。条件Gは、例えば、配信者アバター100が発話した、という条件である。配信者アバター100,200が話しているときに、相手の配信者アバター100,200が発話すると、仮想カメラは、相手の配信者アバター100,200を撮影するように制御される。条件H,Gとして、配信者アバター100,200が大きくうなずいた、などの配信者アバター100,200の動きを設定してもよい。
【0057】
また、状態S3のとき、条件Dが成立すると状態S2に遷移し、状態S4のとき、条件Fが成立すると状態S2に遷移する。条件D,Fは、例えば、配信者アバター100,200が所定時間以上発話していない、という条件である。配信者アバター100,200の会話が一旦終了すると、配信者アバター100,200の2人を写した映像に戻す。あるいは、条件D,Fを、配信者アバター100,200のいずれかが「続いては」「では次の」などの番組を進行させる発話をした、という条件にして、番組のコーナーが変化する際に状態S2に遷移させて、配信者アバター100,200の2人を写すカメラ割りにしてもよい。もしくは、条件D,Fを、例えば、状態S3と状態S4との間の遷移の間隔が所定時間より短い、という条件として、配信者アバター100,200のアップを撮影した映像が頻繁に切り替わるときは、配信者アバター100,200の2人を写すカメラ割りに戻してもよい。
【0058】
状態S2から状態S1に遷移する条件Bは、例えば、配信者アバター100,200の両方が手を振る動作をした、という条件である。番組終了前、配信者アバター100,200が手を振って視聴者にお別れの挨拶をすると、状態S1に遷移させてスタジオ全体の映像を配信した後、番組を終了する。条件Bとして、配信者アバター100,200の発話内容が終了の挨拶であった、番組終了時刻になった、などを設定してもよい。
【0059】
遷移条件は上記に限るものではない。仮想空間内の盛り上がりを遷移条件としてもよい。例えば、配信者たちの会話を解析し、会話の盛り上がり度合いを遷移条件としてもよいし、仮想空間にいる視聴者アバターの増加傾向を遷移条件としてもよいし、あるいは仮想空間にはいないが視聴だけをしている視聴者の増加傾向を遷移条件としてもよい。また、視聴者の応援状況を遷移条件としてもよい。例えば、視聴者たちの発言、応援の数、投稿されるコメントの数や内容、どちらを応援しているか、などを遷移条件としてもよい。
【0060】
このように、制御サーバ20が、単なる条件分岐でなく、状態の遷移を記した有限オートマトンに基づいて仮想カメラを制御することで、番組の進行に応じて、より自然で見やすい映像を配信できる。本発明がもたらす効果を他の局面から説明する。VR空間の配信コンテンツに限らず、例えばテレビ放送(地上波、BS放送など)される対談番組、バラエティ番組などでは、視聴者を飽きさせず興味を持たせ、盛り上がりを演出する進行(台本、カメラ割りを含む)はおのずとパターンが決まっていて、熟練した演出者やスイッチャーが最適な進行、特にカメラ割りを実行している。しかし、出演者がアドリブで発言をしたり、スタジオに居る観客の反応が盛り上がったりした場合には台本に無い進行を行うことがあり、この進行にはカメラ割りを含んでいる。一方、近年、個人で動画配信を行うことが盛んになっており、これら動画配信にはVR空間内に配信者アバターを配置したり、複数の配信者が共通の仮想空間中にアバターとして出現して対話や動作を行ったりすることも含まれている。この場合、先に説明したような演出効果が高い進行(台本、カメラ割りなど)を行なえば、配信番組やコンテンツの充実が可能である。しかし、個人で配信を行う場合には、テレビ放送における熟練した演出者、スイッチャーを配置することは困難である。そこで本実施形態では、あらかじめ、最適な演出効果を実現するためのシナリオ(カメラ割り)を有限オートマトンとして準備しておき、実際の配信者アバターの発言や視聴者の盛り上がりなどを見てカメラ割りを最適な状態へ遷移させる。これにより、あたかも熟練の演出者やスイッチャーの手で進行がなされているかのような、演出効果が高く興趣性も高いVR動画配信、VR動画コンテンツの生成が行える。
【0061】
図11に示すように、画面を分割し、分割したそれぞれの領域に、配信者アバター100,200のそれぞれを表示するカメラ割りの状態を保持してもよい。
【0062】
さらに、
図12に示すように、ディスプレイオブジェクト400の両脇に配信者アバター100,200を立たせて、ディスプレイオブジェクト400を映すカメラ割りの状態を保持してもよい。配信者は、配信者アバター100,200をディスプレイオブジェクト400の脇に動かす必要はない。状態にアバターやオブジェクトのレイアウトを紐付けておく。つまり、制御サーバ20は、状態に対応した仮想カメラの制御情報に加えてオブジェクトの配置を示すレイアウト情報を記憶しておく。状態が遷移したとき、制御サーバ20は、仮想カメラだけでなく、配信者アバター100,200やディスプレイオブジェクト400の位置を指定のレイアウトに合わせて変更する。
【0063】
また、制御サーバ20は、番組の配信先の端末の種別または性能に応じてレイアウトを変更してもよい。例えば、パーソナルコンピュータなどの画面サイズの大きな端末に配信するときは、配信者アバター100,200のモデルとして、通常の頭身のモデルを配置し、携帯端末など画面サイズの小さな端末に配信するときは、頭を多くデフォルメした頭身の小さなモデルを配置する。同じ番組を視聴する場合であっても、パーソナルコンピュータには通常の頭身のモデルの映像が配信され、携帯端末にはデフォルメした投信のモデルの映像が配信される。視聴に用いる端末の違いで異なる映像が配信される。
【0064】
制御サーバ20は、パーソナルコンピュータ用の有限オートマトンと携帯端末用の有限オートマトンを用意しておき、携帯端末用の有限オートマトンの状態には、配信者アバター100,200のモデルをデフォルメしたモデルに差し替える情報を紐付けておく。パーソナルコンピュータから視聴するときは、パーソナルコンピュータ用の有限オートマトンが選択され、携帯端末から視聴するときは、携帯端末用の有限オートマトンが選択される。携帯端末用の有限オートマトンの各状態には、デフォルメしたアバターのモデルを配置するレイアウト情報が紐付けられているので、携帯端末で番組を視聴したときにはデフォルメしたアバターが表示される。あるいは、モデルを差し替える代わりに、携帯端末用の有限オートマトンでは、パーソナルコンピュータ用の有限オートマトンよりも、配信者アバター100,200がよりアップに写るカメラ割りとしてもよい。
【0065】
以上説明したように、本実施形態の番組配信システムの制御サーバ20は、複数のカメラ割りのそれぞれを状態とし、仮想空間の状況を遷移条件とした有限オートマトンを記憶しておく。制御サーバ20は、仮想空間の状況を解析し、解析結果に基づき、有限オートマトンに従ってカメラ割りの状態を遷移させて、遷移後の状態に応じたカメラ割りとなるように仮想カメラを制御する。制御サーバ20が、事前に決めた有限オートマトンに基づいて仮想カメラを制御することにより、不自然なカメラ割りの遷移を排除できるので、状況に応じて適したカメラ割りを行える。
【符号の説明】
【0066】
10…配信サーバ
20…制御サーバ
21…解析部
22…制御部
23…記憶部
30…配信者端末
31…HMD
32…コントローラ
40…視聴者端末