IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社コロプラの特許一覧

<>
  • 特開-プログラム 図1
  • 特開-プログラム 図2
  • 特開-プログラム 図3
  • 特開-プログラム 図4
  • 特開-プログラム 図5
  • 特開-プログラム 図6
  • 特開-プログラム 図7
  • 特開-プログラム 図8
  • 特開-プログラム 図9
  • 特開-プログラム 図10
  • 特開-プログラム 図11
  • 特開-プログラム 図12
  • 特開-プログラム 図13
  • 特開-プログラム 図14
  • 特開-プログラム 図15
  • 特開-プログラム 図16
  • 特開-プログラム 図17
  • 特開-プログラム 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024107935
(43)【公開日】2024-08-09
(54)【発明の名称】プログラム
(51)【国際特許分類】
   G06T 13/40 20110101AFI20240802BHJP
   H04N 21/854 20110101ALI20240802BHJP
【FI】
G06T13/40
H04N21/854
【審査請求】有
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023012137
(22)【出願日】2023-01-30
(71)【出願人】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】110000442
【氏名又は名称】弁理士法人武和国際特許事務所
(72)【発明者】
【氏名】梶山 万悠子
【テーマコード(参考)】
5B050
5C164
【Fターム(参考)】
5B050AA08
5B050BA08
5B050BA09
5B050BA12
5B050CA07
5B050EA07
5B050EA12
5B050EA27
5C164FA29
5C164MA03S
5C164MC05P
5C164SB41S
5C164YA27
(57)【要約】
【課題】簡単な操作で、魅力ある映像コンテンツの素材を得ることができるプログラム及びシステムを提供する。
【解決手段】プログラムは、コンピュータを、仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、複数の仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させる。
【選択図】図11
【特許請求の範囲】
【請求項1】
コンピュータを、
仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させる、プログラム。
【請求項2】
請求項1に記載のプログラムにおいて、
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を設定し、
前記コンピュータを、設定された前記撮像条件を満たすように、前記対象オブジェクトの動作に追従して複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させる、プログラム。
【請求項3】
請求項1に記載のプログラムにおいて、
前記対象オブジェクトは、ユーザ端末を通じて操作されるユーザキャラクタであり、
前記映像生成手段は、さらに、前記ユーザキャラクタの自己視点から前記仮想空間内を撮像した自己視点映像を生成すると共に、複数の前記仮想カメラそれぞれを前記自己視点映像に含めるか否かを切り替え、
前記コンピュータを、前記ユーザキャラクタを操作する前記ユーザ端末に前記自己視点映像を表示させる映像表示手段として機能させる、プログラム。
【請求項4】
請求項1に記載のプログラムにおいて、
前記映像生成手段は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記対象オブジェクトと前記仮想カメラとの間に位置する前記周辺オブジェクトを、前記設定視点映像に含めるか否かを切り替える、プログラム。
【請求項5】
請求項4に記載のプログラムにおいて、
前記映像生成手段は、前記対象オブジェクトと前記仮想カメラとの間に位置する前記周辺オブジェクトのうち、前記仮想カメラとの距離が閾値距離以上の前記周辺オブジェクトのみを前記設定視点映像に含める、プログラム。
【請求項6】
請求項1に記載のプログラムにおいて、
前記コンピュータを、複数の前記設定視点映像を編集して視聴映像を生成する編集手段として機能させる、プログラム。
【請求項7】
請求項6に記載のプログラムにおいて、
前記編集手段は、複数の前記対象オブジェクトそれぞれを撮像した複数セットの前記設定視点映像を用いて、前記視聴映像を生成する、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラムに関する。
【背景技術】
【0002】
従来より、ユーザの動きをキャプチャしてVR空間内のキャラクタを動作させる技術が知られている。そして、この技術を利用して、VR空間内のキャラクタにパフォーマンス(例えば、歌唱、楽器演奏、ダンス等)をさせた様子が、映像コンテンツとして配信されている。
【0003】
このような映像コンテンツの魅力を高める方法の一つとして、様々な方向(例えば、正面、側面、上半身のアップなど)から撮影したキャラクタの映像を組み合わせることが考えられる。そこで、仮想空間内に配置された仮想カメラの位置を切り替える技術が、特許文献1に開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2021-099825号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、キャラクタを操作しながら仮想カメラの位置を切り替えようとすると、作業が煩雑になるばかりでなく、キャラクタの動きの連続性が失われて、映像コンテンツとしての魅力が損なわれる。
【0006】
本発明は、上記の事情に鑑みてなされたものであり、その目的は、簡単な操作で、魅力ある映像コンテンツの素材を得ることができるプログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明は、前記課題を解決するため、本発明に係るプログラムは、コンピュータを、仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させる。
【発明の効果】
【0008】
本発明によれば、簡単な操作で、魅力ある映像コンテンツの素材を得ることができる。
【図面の簡単な説明】
【0009】
図1】本実施形態に係るシステムの概要を示す図である。
図2】サーバのハードウェア構成図である。
図3】ユーザ端末の一例であるHMDセットのハードウェア構成図である。
図4】ユーザ端末の他の例であるタブレット端末のハードウェア構成図である。
図5】仮想空間の一態様を概念的に表す図である。
図6】仮想空間において視界領域をX方向から見たYZ断面を表す図である。
図7】仮想空間において視界領域をY方向から見たXZ断面を表す図である。
図8】サーバ及びユーザ端末の機能ブロック図である。
図9】撮像条件設定画面の画面例である。
図10】ユーザ端末の処理を示すフローチャートである。
図11】ステップS11、S12に対応する仮想空間の概念図である。
図12】自己視点映像生成&表示処理のフローチャートである。
図13】設定視点カメラの表示/非表示を切り替えた場合の自己視点映像の例を示す図である。
図14】設定視点映像生成&保存処理のフローチャートである。
図15】設定視点カメラで他人アバターの表示/非表示を切り替えた場合の設定視点映像の例を示す図である。
図16】設定視点カメラで閾値距離を変更した場合の設定視点映像の例を示す図である。
図17】設定視点映像を編集する処理のフローチャートである。
図18】編集画面及び視聴映像の例である。
【発明を実施するための形態】
【0010】
以下、実施形態に係るシステム1を図面に基づいて説明する。なお、以下に記載する本発明の実施形態は、本発明を具体化する際の一例を示すものであって、本発明の範囲を実施形態の記載の範囲に限定するものではない。従って、本発明は、実施形態に種々の変更を加えて実施することができる。
【0011】
[システム1の概要]
図1は、本実施形態に係るシステム1の概要を示す図である。図1に示すように、システム1は、サーバ10と、ユーザ端末20A、20B、20C(以下、これらを総称して、「ユーザ端末20」と表記することがある。)とを主に備える。なお、図1には3つのユーザ端末20が図示されているが、システム1に含まれるユーザ端末20の例はこれに限定されない。サーバ10及びユーザ端末20は、通信ネットワーク2を介して相互通信可能に接続されている。通信ネットワーク2の具体例は特に限定されないが、例えば、インターネット、移動体通信システム(例えば、4G、5Gなど)、Wi-Fi(登録商標)などの無線ネットワーク、またはこれらの組み合わせで構成される。
【0012】
本実施形態に係るシステム1は、サーバ10が提供する共通の仮想空間を、複数のユーザ端末20A~20Cそれぞれのユーザに体験させるためのシステムである。より詳細には、ユーザ端末20は、ユーザに関連付けられたユーザキャラクタ(以下、「アバター」と表記することがある。)を仮想空間に配置し、予め設定された視点から仮想空間を見た画像をユーザ端末20に表示させる。
【0013】
また、ユーザ端末20は、操作装置に対するユーザの操作に連動して、仮想空間内でアバターを動作させる。アバターの動作とは、例えば、仮想空間内で移動すること、身体の各部を動かすこと、姿勢を変えること、顔の表情を変化させること、発話すること、仮想空間内に配置されたオブジェクトを動かすことなどを含む。
【0014】
また、ユーザ端末20は、アバターの動作やステータスの変化を示すアバターデータを、通信ネットワーク2を通じてサーバ10に送信する。サーバ10は、ユーザ端末20から受信したアバターデータを、通信ネットワーク2を通じて他のユーザ端末20に送信する。そして、ユーザ端末20は、サーバ10から受信したアバターデータに基づいて、仮想空間内の対応するアバターの動作やステータスを更新する。
【0015】
また、ユーザ端末20は、仮想空間内のアバターを予め設定した設定視点から撮像して、設定視点映像を生成する。また、ユーザ端末20は、生成した設定視点映像を編集して視聴映像を生成し、生成した視聴映像をサーバ10にアップロードする。さらに、ユーザ端末20は、サーバ10から視聴映像をダウンロードしてユーザに視聴させる。
【0016】
以下、アバターを動作させるためのユーザ端末20を「プレイ端末」と表記し、設定視点映像を編集するためのユーザ端末20を「編集端末」と表記し、視聴映像を視聴するためのユーザ端末20を「視聴端末」と表記することがある。プレイ端末、編集端末、視聴端末は、同一の端末でもよいし、異なる端末でもよい。例えば、プレイ端末としてはHMDセットが好適であり、編集端末としてはラップトップ型コンピュータまたはデスクトップコンピュータが好適であり、視聴端末としてはタブレット端末またはスマートフォンが好適である。但し、各端末の具体的な形態は、前述の例に限定されない。
【0017】
[サーバ10の構成]
図2は、サーバ10のハードウェア構成図である。サーバ10は、例えば、ワークステーション、またはパーソナルコンピュータなどの汎用コンピュータで実現される。図2に示すように、サーバ10は、プロセッサ11と、メモリ12と、ストレージ13と、入出力インタフェース14と、通信インタフェース15とを主に備える。サーバ10の各構成要素は、通信バス19に接続されている。
【0018】
プロセッサ11は、メモリ12またはストレージ13に格納されているサーバプログラム13Pに含まれる一連の命令を実行することによって、後述する処理を実現する。プロセッサ11は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)、その他のデバイスとして実現される。
【0019】
メモリ12は、サーバプログラム13P及びデータを一時的に保持する。サーバプログラム13Pは、例えば、ストレージ13からロードされる。データは、サーバ10に入力されたデータと、プロセッサ11によって生成されたデータとを含む。例えば、メモリ12は、RAM(Random Access Memory)、その他の揮発メモリとして実現される。
【0020】
ストレージ13は、サーバプログラム13P及びデータを永続的に保持する。ストレージ13は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。また、ストレージ13は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに他の例として、ストレージ13は、サーバ10に内蔵されることに代えて、外部記憶装置としてサーバ10に接続されていてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のユーザ端末20が使用される場面において、サーバプログラム13Pやデータの更新を一括して行うことが可能になる。
【0021】
入出力インタフェース14は、モニタ、入力装置(例えば、キーボード、ポインティングデバイス)、外部記憶装置、スピーカ、カメラ、マイク、センサ等の外部装置をサーバ10に接続するためのインタフェースである。プロセッサ11は、入出力インタフェース14を通じて外部装置と通信する。入出力インタフェース14は、例えば、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(High-Definition Multimedia Interface、登録商標)、その他の端子で用いて実現される。
【0022】
通信インタフェース15は、通信ネットワーク2に接続されている他の装置(例えば、ユーザ端末20)と通信する。通信インタフェース15は、例えば、LAN(Local Area Network)など有線通信インタフェース、Wi-Fi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)などの無線通信インタフェースとして実現される。
【0023】
[ユーザ端末20の構成]
図3は、ユーザ端末20の一例であるHMD(Head Mounted Display)セットのハードウェア構成図である。図4は、ユーザ端末20の他の例であるタブレット端末のハードウェア構成図である。ユーザ端末20は、例えば、図3に示すHMDセット、図4に示すタブレット端末の他、スマートフォン、フィーチャーフォン、ラップトップ型コンピュータ、デスクトップコンピュータなどとして実現される。
【0024】
図3に示すように、HMDセットとして実現されるユーザ端末20は、プロセッサ21と、メモリ22と、ストレージ23と、入出力インタフェース24と、通信インタフェース25とを有するコンピュータ26を備える。コンピュータ26の各構成要素は、通信バス29に接続されている。プロセッサ21、メモリ22、ストレージ23、入出力インタフェース24、通信インタフェース25、通信バス29の基本的な構成は、図2に示すプロセッサ11、メモリ12、ストレージ13、入出力インタフェース14、通信インタフェース15、通信バス19と共通する。また、ストレージ23は、端末プログラム23Pを保持する。
【0025】
また、HMDセットとして実現されるユーザ端末20は、コンピュータ26の外部装置として、HMD30と、動きセンサ41と、操作装置42とを備える。HMD30、動きセンサ41、及び操作装置42は、入出力インタフェース24を通じてプロセッサ21に接続されている。
【0026】
HMD30は、ユーザの頭部に装着されて、仮想空間をユーザに提供する。より詳細には、HMD30は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。HMD30は、モニタ31(表示装置)と、注視センサ32と、カメラ33、34と、マイク35と、スピーカ36とを主に備える。
【0027】
一例として、モニタ31は、非透過型の表示装置として実現される。モニタ31は、例えば、ユーザの両目の前方に位置するようにHMD30の本体に配置されている。非透過型のモニタ31は、例えば、液晶モニタ、有機EL(Electro Luminescence)モニタとして実現される。
【0028】
他の例として、モニタ31は、透過型の表示装置として実現される。この場合のHMD30は、ユーザの目を覆う密閉型ではなく、メガネ型のような開放型となる。モニタ31は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。一例として、透過型のモニタ31は、HMD30に搭載されたカメラで撮像した現実空間の画像を表示してもよい。他の例として、透過型のモニタ31は、透過率を調整可能に構成されていてもよい。そして、透過型のモニタ31は、表示領域の一部の透過率を高く設定して、現実空間を直接視認できるようにしてもよい。
【0029】
また、モニタ31は、ユーザに3次元画像を視認させるために、以下の構成を採用してもよい。一例として、モニタ31は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含んでもよい。他の例として、モニタ31は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合のモニタ31は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。
【0030】
注視センサ32は、ユーザの右目及び左目の視線が向けられる方向を検知する。つまり、注視センサ32は、ユーザの視線を検知する。注視センサ32は、例えば、アイトラッキング機能を有するセンサにより実現される。注視センサ32は、右目用のセンサ及び左目用のセンサを含むことが好ましい。注視センサ32は、ユーザの右目及び左目に赤外光を照射するとともに、照射光に対する角膜及び虹彩からの反射光を受けることにより各眼球の回転角を検知する。そして、注視センサ32は、検知した各回転角に基づいて、ユーザの視線を特定する。
【0031】
カメラ33は、HMD30を装着したユーザの顔の上部(より詳細には、ユーザの目、眉など)を撮像する。カメラ34は、HMD30を装着したユーザの顔の下部(より詳細には、ユーザの鼻、口など)を撮像する。例えば、HMD30の筐体のうち、ユーザに対面する側にカメラ33が取り付けられ、ユーザと対面する側と反対側にカメラ34が取り付けられる。なお、HMD30は、2台のカメラ33、34に代えて、ユーザの顔全体を撮像する1台のカメラを備えてもよい。
【0032】
マイク35は、ユーザの発話を音声信号(電気信号)に変換してコンピュータ26に出力する。スピーカ36は、コンピュータ26から出力された音声信号を音声に変換してユーザに出力する。なお、HMD30は、スピーカ36に替えてイヤホンを含み得る。
【0033】
動きセンサ41は、HMD30の動きを検出するためのポジショントラッキング機能を有する。一例として、動きセンサ41は、HMD30が発する複数の赤外線を読み取って、現実空間内におけるHMD30の位置及び傾きを検出してもよい。他の例として、動きセンサ41は、カメラで実現されてもよい。この場合の動きセンサ41は、カメラから出力されるHMD30の画像情報を解析して、HMD30の位置及び傾きを検出する。さらに他の例として、動きセンサ41は、角速度センサ、地磁気センサ、あるいは加速度センサで実現されてもよい。
【0034】
操作装置42は、有線または無線によりコンピュータ26に接続されている。操作装置42は、ユーザによるコンピュータ26に対する命令の入力(操作)を受け付ける。一例として、操作装置42は、ユーザが把持した状態で操作する、所謂コントローラでもよい。他の例として、操作装置42は、ユーザの身体あるいは衣類の一部に装着可能に構成され、モーションセンサによってユーザの動きを検知するものでもよい。但し、操作装置42の具体例はこれらに限定されず、キーボード、ポインティングデバイス、タッチパネルなどでもよい。
【0035】
図4に示すように、タブレット端末として実現されるユーザ端末20は、プロセッサ21と、メモリ22と、ストレージ23と、通信インタフェース25と、モニタ31と、カメラ33、34と、マイク35と、スピーカ36と、動きセンサ41と、操作装置42とを主に備える。タブレット端末の各構成要素は、通信バス29に接続されている。プロセッサ21、メモリ22、ストレージ23、通信インタフェース25、モニタ31、カメラ33、34、マイク35、スピーカ36、動きセンサ41、操作装置42の基本的な構成は、HMDセットの場合と共通するので、以下、タブレット端末に特有の構成を説明する。
【0036】
モニタ31は、平板状の筐体の表面に設けられている。カメラ33は、平板状の筐体の表面に取り付けられて、モニタ31を視認するユーザの顔を撮像する、所謂インカメラである。カメラ34は、平板状の筐体の裏面(モニタ31と反対側の面)に取り付けられて、周囲を撮像する、所謂アウトカメラである。動きセンサ41は、筐体の動き(例えば、互いに直交する3軸周りの回転)を検知する。タブレット端末に好適な操作装置42としては、例えば、モニタ31に重畳されて、ユーザによる各種タッチ操作(例えば、タップ、スライド、フリック、ピンチイン、ピンチアウトなど)を受け付けるタッチパネルである。
【0037】
[仮想空間90の概要]
図5は、仮想空間90の一態様を概念的に表す図である。図6は、仮想空間90において視界領域94をX方向から見たYZ断面を表す図である。図7は、仮想空間90において視界領域94をY方向から見たXZ断面を表す図である。
【0038】
図5に示すように、仮想空間90は、中心Cの360度方向の全体を覆う全天球状の構造を有する。図5では説明を複雑にしないために、仮想空間90の上半分の天球が例示されている。仮想空間90では各メッシュが規定される。各メッシュの位置は、仮想空間90に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。仮想空間90に展開可能なパノラマ画像91(静止画、動画等)を構成する各部分画像は、仮想空間90において対応する各メッシュにそれぞれ対応付けられる。
【0039】
例えば、仮想空間90では、中心Cを原点とするXYZ座標系が規定される。XYZ座標系は、例えば、実座標系に平行である。XYZ座標系における水平方向、鉛直方向(上下方向)、及び前後方向は、それぞれX軸、Y軸、Z軸として規定される。したがって、XYZ座標系のX軸(水平方向)が実座標系のx軸と平行であり、XYZ座標系のY軸(鉛直方向)が実座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)が実座標系のz軸と平行である。
【0040】
仮想空間90には、ユーザ端末20に対応付けられた仮想カメラ92が配置される。仮想空間90内における仮想カメラ92の位置は、仮想空間90内におけるユーザの視点に相当する。また、仮想カメラ92の向きは、仮想空間90におけるユーザの視線(基準視線93)に相当する。そして、プロセッサ21は、仮想カメラ92の位置と向きとに基づいて、仮想空間90における視界領域94(仮想カメラ92の画角)を規定する。
【0041】
図6に示すように、視界領域94は、YZ断面において領域95を含む。領域95は、仮想空間90内で基準視線93を含む鉛直断面(YZ断面)において、基準視線93を中心とする極角αの範囲である。図7に示すように、視界領域94は、XZ断面において領域96を含む。領域96は、仮想空間90内で基準視線93を含む水平断面(XZ断面)において、基準視線93を中心とする方位角βの範囲である。
【0042】
プロセッサ21は、仮想空間90に展開されたパノラマ画像91のうち、視界領域94に含まれる部分画像を、仮想カメラ92が撮像した仮想空間画像97として生成(抽出)する。そして、プロセッサ21は、生成した仮想空間画像97をモニタ31に表示させる。すなわち、視界領域94は、仮想空間90内におけるユーザの視界に相当する。さらに、仮想空間90内で仮想カメラ92の位置及び向きの変化に追従して視界領域94が移動し、モニタ31に表示される仮想空間画像97が更新される。すなわち、ユーザの視界が移動する。
【0043】
例えば、プロセッサ21は、操作装置42で受け付けたユーザの操作に連動して、仮想空間90内で仮想カメラ92を移動させる。また、プロセッサ21は、動きセンサ41で検知されたユーザ端末20の動き(例えば、互いに直交する3軸周りの回転)に連動して、仮想カメラ92の向き(すなわち、基準視線93)を変化させる。さらに、プロセッサ21は、位置及び向きが変化した後の仮想カメラ92で撮像した仮想空間画像97をモニタ31に表示させる。
【0044】
[サーバ10及びユーザ端末20の機能ブロック図]
図8は、サーバ10及びユーザ端末20の機能ブロック図である。図8に示すように、メモリ12にロードされたサーバプログラム13Pは、サーバ10を、アバター同期手段110、編集補助手段120、視聴補助手段130として機能させる。また、メモリ22にロードされた端末プログラム23Pは、ユーザ端末20(コンピュータ26)を、仮想空間定義手段210、配置手段220、カメラ設定手段230、カメラ移動手段240、映像生成手段250、映像表示手段260、編集手段270として機能させる。
【0045】
アバター同期手段110は、ユーザ端末20の1つから通信ネットワーク2を通じて受信したアバターデータを、他のユーザ端末20に送信(中継)する。これにより、全てのユーザ端末20A~20Cは、同一のアバターデータを保持する。その結果、全てのユーザ端末20A~20Cそれぞれで定義される仮想空間90において、同一の位置に同一のアバターが配置される。すなわち、全てのユーザ端末20A~20Cにおいて、アバターが同期される。
【0046】
編集補助手段120は、例えば、プレイ端末(ユーザ端末20A)で生成された設定視点映像を、編集端末(ユーザ端末20B)で編集するのを補助する。より詳細には、編集補助手段120は、通信ネットワーク2を通じてプレイ端末から受信した設定視点映像データを、ストレージ13に保存する。また、編集補助手段120は、編集端末の要求に応じて、ストレージ13に保存された設定視点映像データを、通信ネットワーク2を通じて編集端末に送信する。さらに、編集補助手段120は、通信ネットワーク2を通じて編集端末から受信した視聴映像データを、ストレージ13に保存する。視聴補助手段130は、視聴端末(ユーザ端末20C)の要求に応じて、ストレージ13に保存された視聴映像データを、通信ネットワーク2を通じて視聴端末に送信する。
【0047】
なお、編集補助手段120及び視聴補助手段130の機能の一部または全部は、サーバ10と独立したコンピュータ上で実現されてもよい。一例として、編集補助手段120は、クラウド上で記憶領域を提供するストレージサーバによって実現可能である。他の例として、視聴補助手段130は、映像視聴サービス(ストリーミングサービス)を提供するサーバによって実現可能である。
【0048】
仮想空間定義手段210は、現実空間に対応する仮想空間90を定義する。より詳細には、仮想空間定義手段210は、仮想空間90を示す仮想空間データをメモリ22に展開する。仮想空間データは、例えば、パノラマ画像91と、仮想空間90内に配置されるオブジェクト(例えば、建物、植物)の形状及び位置とを示す。なお、仮想空間データは、予めサーバ10からダウンロードしてストレージ23に保持されていてもよいし、仮想空間90を定義する際にサーバ10からダウンロードされてもよい。また、仮想空間定義手段210は、複数の仮想空間90のうちから操作装置42を通じて選択された仮想空間90を定義してもよい。仮想空間90を定義する具体的な処理は既に周知なので、詳細な説明は省略する。
【0049】
配置手段220は、仮想空間定義手段210で定義された仮想空間90にキャラクタを配置する。ここでは、ユーザ端末20Aで端末プログラム23Pが実行される場合を説明する。配置手段220が仮想空間90に配置するキャラクタは、ユーザ端末20Aのユーザのアバター(以下、「本人アバター」と表記する。)と、他のユーザ端末20B、20Cのユーザのアバター(以下、「他人アバター」と表記する。)とを含む。
【0050】
まず、配置手段220は、ストレージ23に予め記憶されているアバターデータに基づいて、本人アバターを仮想空間90に配置する。そして、配置手段220は、本人アバターのアバターデータを、通信ネットワーク2を通じてサーバ10に送信する。また、配置手段220は、本人アバターの動作を指示するユーザの操作を操作装置42を通じて受け付けた場合に、当該操作に従って仮想空間90内で本人アバターを動作させる。そして、配置手段220は、本人アバターの動作後の状態を示すようにアバターデータを更新し、更新したアバターデータを通信ネットワーク2を通じてサーバ10に送信する。
【0051】
また、配置手段220は、他人アバターのアバターデータを、通信ネットワーク2を通じてサーバ10から受信する。そして、配置手段220は、サーバ10から受信したアバターデータに基づいて、他人アバターを仮想空間90に配置する。さらに、配置手段220は、アバターデータが更新される度に他人アバターを配置し直すことによって、仮想空間90内で他人アバターが動作する。
【0052】
カメラ設定手段230は、操作装置42を通じたユーザの操作に従って、仮想カメラ92(より詳細には、設定視点カメラ92B~92D)の撮像条件を設定する。図9は、撮像条件設定画面の画面例である。図9に示すように、撮像条件設定画面は、撮像条件として、設定距離、設定角度、撮像部位、設定視点カメラの表示/非表示、他人アバターの表示/非表示、閾値距離の設定を受け付ける。但し、撮像条件の具体例は、これらに限定されない。また、撮像条件を設定するインタフェースは、図9の例に限定されない。そして、カメラ設定手段230は、操作装置42を通じてユーザに指定された撮像条件を満たすように、仮想空間90内に仮想カメラ92を配置する。
【0053】
なお、図11に示すように、本実施形態に係る仮想カメラ92は、自己視点カメラ92Aと、複数の設定視点カメラ92B、92C、92Dとを含む。以下、自己視点カメラ92Aによって撮像された映像を「自己視点映像」と表記し、設定視点カメラ92B~92Dによって撮像された映像を「設定視点映像」と表記する。自己視点映像及び設定視点映像は、複数の仮想空間画像97を時系列に並べて構成される。
【0054】
自己視点カメラ92Aは、本人アバターの自己視点から基準視線93に向かって仮想空間90を撮像する仮想カメラである。すなわち、自己視点カメラ92Aの撮像範囲は、本人アバターの視界に一致する。但し、自己視点カメラ92Aは、本人アバターの後方から基準視線93に向かって仮想空間90を撮像してもよい。設定視点カメラ92B、92C、92Dは、本人アバターと異なる位置に予め設定された設定視点から本人アバターを撮像する仮想カメラである。なお、設定視点カメラ92B、92C、92Dの数は3つに限定されず、2つ以上であればよい。以下、設定視点カメラ92Bの撮像条件について説明する。
【0055】
「設定距離」は、本人アバターと設定視点カメラ92Bとの距離を示す。「設定角度」は、本人アバターの基準視線93と、本人アバター及び設定視点カメラ92Bを結ぶ直線とのなす角を示す。すなわち、本人アバターの正面を撮像する場合の設定角度は0°であり、本人アバターの右側面を撮像する場合の設定角度は90°である。「撮像部位」は、設定視点カメラ92Bが撮像する本人アバターの部位(例えば、全身、上半身、顔など)を示す。「設定視点カメラの表示/非表示」は、自己視点映像に設定視点カメラ92Bを含めるか否かを示す。
【0056】
「他人アバターの表示/非表示」は、本人アバターと設定視点カメラ92Bとの間に位置する他人アバターを、設定視点映像に含めるか否かを示す。「閾値距離」は、他人アバターの非表示が選択された場合において、他人アバターを非表示にする設定視点カメラ92Bからの距離を示す。一例として、閾値距離を5mに設定すると、本人アバターと設定視点カメラ92Bとの間に位置する他人アバターのうち、設定視点カメラ92Bからの距離が5m未満の他人アバターが設定視点映像から除かれ、設定視点カメラ92Bからの距離が5m以上の他人アバターが設定視点映像に含められる。他の例として、設定距離=閾値距離に設定すると、本人アバターと設定視点カメラ92Bとの間に位置する全ての他人アバターが設定視点映像から除外される。
【0057】
カメラ移動手段240は、動きセンサ41で検知されたユーザ端末20の動きまたは操作装置42を通じたアバターの動作指示に基づいて、仮想空間90内で仮想カメラ92を移動させる。ユーザ端末20を動かすこと及び操作装置42を通じてアバターの動作を指示することは、移動操作の一例である。そして、カメラ移動手段240は、配置手段220が移動させた本人アバターに追従して、カメラ設定手段230によって設定された撮像条件を満たすように仮想カメラ92を移動させる。
【0058】
映像生成手段250は、仮想カメラ92で仮想空間90内を撮像した映像を生成する。より詳細には、映像生成手段250は、パノラマ画像91のうちの視界領域94に相当する画像を仮想空間画像97として抽出する。また、映像生成手段250は、所定の時間間隔(例えば、1/60秒間隔)で抽出した仮想空間画像97を時系列に並べて映像を生成する。
【0059】
なお、映像生成手段250は、自己視点カメラ92Aで仮想空間90内を撮像した自己視点映像と、設定視点カメラ92B~92Dそれぞれで仮想空間90内を撮像した複数の設定視点映像とを生成する。そして、映像生成手段250は、自己視点映像を示す自己視点映像データをメモリ22に記憶させる。また、映像生成手段250は、設定視点映像を示す設定視点映像データをストレージ23に記憶させる。
【0060】
映像表示手段260は、自己視点映像をモニタ31に表示させる。より詳細には、映像表示手段260は、映像生成手段250によって生成された自己視点映像データを、モニタ31のグラフィックメモリに展開する。そして、仮想空間90内のキャラクタが更新される度に、映像生成手段250が仮想空間画像97を新たに生成し、新たに生成された仮想空間画像97を映像表示手段260がモニタ31に表示させる。これにより、ユーザ端末20のユーザは、仮想空間90内で動作するキャラクタの視界を示す自己視点映像を、モニタ31を通じて視聴することができる。
【0061】
編集手段270は、操作装置42を通じたユーザの操作に従って、映像生成手段250によって生成された複数の設定視点映像を編集して、視聴映像を生成する。編集とは、例えば、複数の設定視点映像それぞれから抽出した静止画像を時系列に並べることを指す。なお、図8の例では、編集手段270と他の手段210~270とが異なるユーザ端末20A、20Bに実装されているが、同一のユーザ端末20に実装されてもよい。また、編集手段270は、周知の映像編集プログラムで代替することができる。
【0062】
図10図16を参照して、設定視点映像を生成する際のシステム1の動作を説明する。本実施形態では、2人のアバター50、51が仮想空間90内で行うパフォーマンス(例えば、歌唱、楽器演奏、ダンスなど)を、ユーザ端末20のユーザがアバター52、53を通じて視聴することを想定する。以下、アバター50に関連付けられたユーザ端末20Aの処理を中心に説明する。そして、ユーザ端末20Aのアバター50を「本人アバター50」と表記し、他のユーザ端末20のアバター51、52、53を「他人アバター51、52、53」と表記する。
【0063】
また、本実施形態では、本人アバター50のパフォーマンスを、3台の設定視点カメラ92B~92Dで撮像して、3つの設定視点映像を生成する。そして、本実施形態では、設定視点カメラ92Bの撮像条件を、設定距離=15m、設定角度=0°、撮像部位=全身、設定視点カメラ=表示、他人アバター=非表示、閾値距離=5mとする。また、設定視点カメラ92Cの撮像条件を、設定距離=10m、設定角度=0°、撮像部位=上半身、設定視点カメラ=非表示、他人アバター=非表示、閾値距離=10mとする。さらに、設定視点カメラ92Dの撮像条件を、設定距離=10m、設定角度=90°、撮像部位=全身、設定視点カメラ=非表示、他人アバター=非表示、閾値距離=3mとする。
【0064】
図10は、ユーザ端末20Aの処理を示すフローチャートである。図11は、ステップS11、S12に対応する仮想空間90の概念図である。図12は、自己視点映像生成&表示処理のフローチャートである。図13は、設定視点カメラ92Bの表示/非表示を切り替えた場合の自己視点映像の例を示す図である。図14は、設定視点映像生成&保存処理のフローチャートである。図15は、設定視点カメラ92Cで他人アバターの表示/非表示を切り替えた場合の設定視点映像の例を示す図である。図16は、設定視点カメラ92Dで閾値距離を変更した場合の設定視点映像の例を示す図である。
【0065】
図10に示すように、ユーザ端末20A(仮想空間定義手段210)は、ストレージ23に記憶された仮想空間データをメモリ12に展開することによって、仮想空間90を定義する(S11)。次に、ユーザ端末20A(配置手段220及びカメラ設定手段230)は、図11に示すように、ステップS11で定義された仮想空間90に本人アバター50及び仮想カメラ92を配置すると共に、通信ネットワーク2を通じてサーバ10にアバターデータを送信する(S12)。本人アバター50の初期位置は、例えば、仮想空間90の中心Cである。また、自己視点カメラ92Aの初期位置は、本人アバター50の頭の位置である。さらに、設定視点カメラ92B~92Dの初期位置は、撮像条件設定画面で設定された撮像条件で示される位置である。
【0066】
次に、ユーザ端末20A(配置手段220)は、通信ネットワーク2を通じてサーバ10からアバターデータを受信した場合に(S13:Yes)、例えば図11に示すように、受信したアバターデータに従って仮想空間90に他人アバター51、52、53を配置する(S14)。なお、他人アバター51、52、53は、ユーザ端末20Aと異なるユーザ端末20から送信されたアバターデータに対応する。
【0067】
次に、ユーザ端末20A(映像生成手段250及び映像表示手段260)は、自己視点映像の一部を構成する仮想空間画像97に他人アバター51、52、53を反映させるために、図12に示す自己視点映像生成&表示処理を実行する(S17)。これにより、自己視点映像の一部を構成する仮想空間画像97が生成され、ユーザ端末20Aのユーザがモニタ31を通じて視認する。
【0068】
また、ユーザ端末20A(映像生成手段250)は、設定視点映像の一部を構成する仮想空間画像97に他人アバター51、52、53を反映させるために、設定視点カメラ92B~92Dそれぞれに対して、図14に示す設定視点映像生成&保存処理を実行する(S18)。これにより、設定視点映像の一部を構成する仮想空間画像97が生成され、設定視点映像データの一部としてストレージ23に記憶される。
【0069】
また、ユーザ端末20A(配置手段220及びカメラ移動手段240)は、本人アバター50の動作を指示する操作を操作装置42を通じて受け付けた場合に(S15:Yes)、操作装置42に対するユーザの操作に従って本人アバター50を動作させ、本人アバター50に追従して仮想カメラ92を移動させ、動作後の本人アバター50を示すアバターデータを、通信ネットワーク2を通じてサーバ10に送信する(S16)。また、ユーザ端末20A(カメラ移動手段240)は、動きセンサ41で検知されたユーザ端末20Aの動きに追従して、仮想カメラ92を移動させる。
【0070】
次に、ユーザ端末20A(映像生成手段250及び映像表示手段260)は、自己視点カメラ92Aの移動後の画角に対応する仮想空間画像97を生成するために、自己視点映像生成&表示処理を実行する(S17)。モニタ31に表示される自己視点映像が更新される。また、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92B~92Dそれぞれの移動後の画角に対応する仮想空間画像97を生成するために、設定視点映像生成&保存処理を実行する(S18)。これにより、設定視点映像に新たな仮想空間画像97が追加される。
【0071】
ユーザ端末20Aは、端末プログラム23Pの終了を指示する操作(例えば、ログアウト)を操作装置42を通じて受け付けるまで(S19:No)、ステップS13~S18の処理を繰り返し実行する。なお、ユーザ端末20Aは、アバターデータを不定期に受信し、ユーザ操作を不定期に受け付ける。すなわち、ステップS14、S16の処理は、任意のタイミング及び頻度で実行される。そして、ユーザ端末20Aは、端末プログラム23Pの終了を指示する操作を操作装置42を通じて受け付けた場合に(S19:Yes)、図10の処理を終了する。
【0072】
また、図12に示すように、ユーザ端末20A(映像生成手段250)は、自己視点カメラ92Aの視界領域94を特定する(S21)。次に、ユーザ端末20A(映像生成手段250)は、撮像条件に基づいて、視界領域94に含まれる設定視点カメラ92B、92Cの表示または非表示を判定する(S22)。そして、ユーザ端末20A(映像生成手段250)は、「設定視点カメラ=表示」が設定された設定視点カメラ92Bを仮想空間画像97に含め(S22:Yes→S23)、「設定視点カメラ=非表示」が設定された設定視点カメラ92Cを仮想空間画像97から除く(S22:No→S24)。
【0073】
次に、ユーザ端末20A(映像生成手段250)は、図11の視界領域94に含まれる他人アバター52、53及び設定視点カメラ92B、92Cのうち、他人アバター52、53及び設定視点カメラ92Bを含む仮想空間画像97を、自己視点映像の一部として生成する(S25)。次に、ユーザ端末20A(映像表示手段260)は、ステップS25で生成した仮想空間画像97をモニタ31に表示させる(S26)。
【0074】
これにより、図13(A)に示すように、ユーザ端末20Aのユーザは、設定視点カメラ92Bの位置を意識しながら、本人アバター50にパフォーマンスさせることができる。一方、設定視点カメラ92Bが邪魔な場合は、撮像条件を「設定視点カメラ=非表示」とすることによって、図13(B)に示すように、設定視点カメラ92Bが含まれない仮想空間画像97が生成される。
【0075】
さらに、図14に示すように、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92B~92Dそれぞれの視界領域94を特定する(S31)。次に、ユーザ端末20A(映像生成手段250)は、撮像条件に基づいて、視界領域94に含まれる他人アバター51~53の表示または非表示を判定する(S32)。次に、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92B~92Dの撮像条件に「他人アバター=非表示」が設定されていると判定した場合に(S32:No)、視界領域94に含まれる他人アバター51~53が、本人アバター50と設定視点カメラ92B~92Dそれぞれとの間に位置しているか否かを判定する(S33)。次に、ユーザ端末20A(映像生成手段250)は、視界領域94の他人アバター51~53が本人アバター50と設定視点カメラ92B~92Dそれぞれとの間に位置すると判定した場合に(S33:Yes)、設定視点カメラ92B~92Dから当該他人アバター51~53までの距離と閾値距離とを比較する(S34)。
【0076】
仮に、設定視点カメラ92Bの撮像条件に「他人アバター=表示」が設定されている場合(S32:Yes)、ユーザ端末20A(映像生成手段250)は、ステップS33~S34の判定処理をスキップして、設定視点カメラ92Bの視界領域94に含まれる全ての他人アバター51、52を仮想空間画像97に含める(S35)。これにより、図15(A)に示すように、聴衆として設定視点カメラ92Bの近くにいる他人アバター52が仮想空間画像97に大きく映り込んで、本人アバター50の大部分を覆い隠してしまう。
【0077】
そこで、前述したように、設定視点カメラ92Bの撮像条件に「他人アバター=非表示、閾値距離=5m」を設定するのが望ましい。これにより、ユーザ端末20A(映像生成手段250)は、設定視点カメラ92Bの視界領域94に含まれる他人アバター51、52のうち、本人アバター50に重ならない他人アバター51を仮想空間画像97に含め(S33:No→S35)、本人アバター50に重なり且つ設定視点カメラ92Bからの距離が閾値距離未満の他人アバター52を仮想空間画像97から除く(S33:Yes&S34:No→S36)。これにより、図15(B)に示すように、聴衆として設定視点カメラ92Bの近くにいる他人アバター52に邪魔されずに、本人アバター50を適切に撮像することができる。
【0078】
また、設定視点カメラ92Dの撮像条件に「他人アバター=非表示、閾値距離=3m」を設定することによって、ユーザ端末20A(映像生成手段250)は、本人アバター50に重なり且つ設定視点カメラ92Bからの距離が閾値距離以上の他人アバター51を仮想空間画像97に含める(S33:Yes&S34:Yes→S35)。これにより、図16(A)に示すように、本人アバター50の近くで一緒にパフォーマンスする他人アバター51を、本人アバター50と共に設定視点映像に含めることができる。
【0079】
一方、設定視点カメラ92Dの撮像条件に「設定距離=10m、他人アバター=非表示、閾値距離=10m」を設定することによって、ユーザ端末20A(映像生成手段250)は、本人アバター50に重なる全ての他人アバター51を仮想空間画像97から除く(S33:Yes&S34:No→S36)。その結果、図16(B)に示すように、設定視点カメラ92Dからの距離に関係なく、本人アバター50に重なる全ての他人アバター51を非表示にできる。
【0080】
次に、ユーザ端末20A(映像生成手段250)は、例えば図15図16に示す仮想空間画像97を、設定視点映像の一部として生成する(S37)。次に、ユーザ端末20A(映像生成手段250)は、ステップS37で生成した仮想空間画像97をストレージ23に保存(すなわち、設定視点映像データに追加)する(S38)。そして、設定視点映像生成&保存処理を繰り返し実行することによって、設定視点映像がストレージ23に蓄積される。
【0081】
次に、図17及び図18を参照して、設定視点映像を編集する際のシステム1の動作を説明する。図17は、設定視点映像を編集する処理のフローチャートである。図18は、編集画面及び視聴映像の例である。
【0082】
まず、プレイ端末であるユーザ端末20A(映像生成手段250)は、生成した複数の設定視点映像を通信ネットワーク2を通じてサーバ10に送信する(S41)。次に、サーバ10(編集補助手段120)は、通信ネットワーク2を通じてユーザ端末20Aから受信した複数の設定視点映像を、ストレージ13に保存する(S42)。
【0083】
次に、編集端末であるユーザ端末20B(編集手段270)は、設定視点映像の編集を開始する際に、通信ネットワーク2を通じてサーバ10に編集要求を送信する(S43)。サーバ10(編集補助手段120)は、通信ネットワーク2を通じてユーザ端末20Bから受信した編集要求の返信として、ストレージ13に保存した複数の設定視点映像を、通信ネットワーク2を通じてユーザ端末20Bに送信する(S44)。
【0084】
次に、ユーザ端末20B(編集手段270)は、操作装置42を通じたユーザの操作に従って、通信ネットワーク2を通じてサーバ10から受信した複数の設定視点映像を編集して、視聴映像を生成する(S45)。ユーザ端末20B(編集手段270)は、例えば、図18(A)に示す編集画面をモニタ31に表示させて、設定視点映像を編集するユーザの操作を操作装置42を通じて受け付ける。
【0085】
図18(A)に示す編集画面は、複数の設定視点映像それぞれを構成する複数の静止画像を時系列に並べて表示する。次に、ユーザ端末20B(編集手段270)は、時刻t1~t4それぞれについて、同一時刻の複数の静止画像の1つを選択するユーザの操作を、操作装置42を通じて受け付ける。そして、ユーザ端末20B(編集手段270)は、図18(B)に示すように、操作装置42を通じて選択された静止画像(図18(A)において、太枠で囲った静止画像)を抽出し、抽出した複数の静止画像を時系列に並べて視聴映像を生成する。
【0086】
次に、ユーザ端末20B(編集手段270)は、ステップS45で生成した視聴映像を、通信ネットワーク2を通じてサーバ10に送信する(S46)。次に、サーバ10(編集補助手段120)は、通信ネットワーク2を通じてユーザ端末20Aから受信した視聴映像を、ストレージ13に保存する(S47)。さらに、サーバ10(視聴補助手段130)は、視聴端末であるユーザ端末20Cの要求に応じて、ストレージ13に保存した視聴映像を、通信ネットワーク2を通じて視聴端末に送信する。そして、ユーザ端末20Cは、通信ネットワーク2を通じてサーバ10から受信した視聴映像を、モニタ31に表示させる。
【0087】
一例として、図17に示す処理は、図10に示す処理が終了した後に開始されてもよい。すなわち、図17に示す処理は、設定視点映像が完成した後に、図10に示す処理とは非同期に実行されてもよい。他の例として、図10に示す処理と、図17に示す処理とは、並行して実行されてもよい。すなわち、ユーザ端末20A(映像生成手段250)は、設定視点映像の一部を構成する仮想空間画像97を生成する度に、ステップS41の処理を実行してもよい。また、ユーザ端末20B(編集手段270)は、サーバ10がユーザ端末20Aから仮想空間画像97を受信する度に、ステップS43~S46の処理を実行してもよい。これにより、本人アバター50のパフォーマンスと同時に(厳密には、僅かに遅れて)視聴端末が生成される。
【0088】
また、ユーザ端末20B(編集手段270)は、複数セットの設定視点映像をサーバ10から取得して、これらから抽出した仮想空間画像97を時系列に並べて視聴映像を生成してもよい。例えば、ユーザ端末20B(編集手段270)は、アバター50を本人アバターとする複数の設定視点映像と、アバター51を本人アバターとする複数の設定視点映像とを用いて、視聴映像を生成してもよい。
【0089】
[本実施形態の作用効果]
上記の実施形態によれば、複数の設定視点カメラ92B~92Dを予め設定した状態で、本人アバター50にパフォーマンスさせることによって、視聴映像の素材となる複数の設定視点映像が生成される。すなわち、設定視点カメラ92B~92Dの設定と、本人アバター50をパフォーマンスさせる操作とを別々のタイミングで実行することによって、本にアバター50の動作の連続性が損なわれることがない。その結果、簡単な操作で、魅力ある視聴映像の素材を得ることができる。
【0090】
また、上記の実施形態によれば、設定視点カメラ92B~92Dの撮像条件を予め設定しておくことによって、所望の設定視点映像を得ることができる。なお、撮像条件の具体例は、図9の例に限定されない。他の例として、水平線と、本人アバター50及び設定視点カメラ92Bを結ぶ直線とのなす角(すなわち、仰角または俯角)を、撮像条件に加えてもよい。
【0091】
また、上記の実施形態によれば、設定視点カメラ92B~92Dを自己視点映像に含めるか否かを切り替えることによって、本人アバター50を操作するユーザの好み(すなわち、設定視点カメラ92B~92Dを意識するか否か)に合わせて、適切な自己視点映像をモニタ31に表示させることができる。
【0092】
また、上記の実施形態によれば、本人アバター50と設定視点カメラ92B~92Dとの間に位置する他人アバター51~53の表示及び非表示を切り替えることによって、さらに魅力ある視聴映像の素材を得ることができる。例えば、本人アバター50のパフォーマンスの魅力を向上させる他人アバター51を表示させ、本人アバター50のパフォーマンスの邪魔になる他人アバター52を非表示とすればよい。
【0093】
例えば、本人アバター50の近くにいる他人アバター51はパフォーマンスの魅力を向上させる可能性が高く、設定視点カメラ92B~92Dの近くにいる他人アバター52、53はパフォーマンスの邪魔になる可能性が高い。そこで、上記の実施形態によれば、設定視点カメラ92B~92Dからの距離に応じて、他人アバター51~53の表示及び非表示を切り替えることによって、簡単な設定で魅力ある視聴映像の素材を得ることができる。但し、他人アバター51~53の表示及び非表示を切り替えるパラメータは、前述の例に限定されない。他の例として、ユーザ端末20A(映像生成手段250)は、仮想空間90内に予め設定された表示領域に位置する他人アバターを設定視点映像に含め、仮想空間90内に予め設定された非表示領域に位置する他人アバターを設定視点映像から除いてもよい。
【0094】
さらに、上記の実施形態によれば、複数セットの設定視点映像を用いて視聴映像を生成することによって、例えば、複数のアバター50、51がグループとしてパフォーマンスする場合に、さらに魅力的な視聴映像を生成することができる。
【0095】
なお、本実施形態において、本人アバター50は「対象オブジェクト」の一例であり、他人アバター51~53は「周辺オブジェクト」の一例である。但し、オブジェクト(対象オブジェクト、周辺オブジェクト)は、仮想空間90内に配置されて移動したり、形を変えるものであれば、人の形をした「キャラクタ」に限定されない。他の例として、オブジェクトは、自動車、船舶、航空機、建設中の建物、動物などでもよい。また、設定視点カメラ92B~92Dで撮像するのは、本人アバター50(対象オブジェクト)のパフォーマンスに限定されず、仮想空間90内での任意の動作であってよい。
【0096】
また、本発明に係るプログラムは、単一のプログラムに限定されず、複数のプログラムの集合体でもよい。また、本発明に係るプログラムは、単一の装置で実行されるものに限定されず、複数の装置で分担して実行されてもよい。さらに、サーバ10及びユーザ端末20の役割分担は、前述の例に限定されない。すなわち、サーバ10の処理の一部がユーザ端末20によって実行されてもよいし、ユーザ端末20の処理の一部がサーバ10によって実行されてもよい。
【0097】
さらに、プログラムによって実現される各手段の一部または全部は、集積回路などのハードウェアで実現することもできる。さらに、プログラムは、コンピュータによって読み出し可能な非一過性の記録媒体に記録されて提供されてもよい。記録媒体とは、例えば、ハードディスク、SDカード、DVDの他、インターネット上のサーバ等を指す。
【符号の説明】
【0098】
1…システム、2…通信ネットワーク、3…検知装置、10…サーバ、11,21…プロセッサ、12,22…メモリ、13,23…ストレージ、13P…サーバプログラム、14,24…入出力インタフェース、15,25…通信インタフェース、19,29…通信バス、20…ユーザ端末、23P…端末プログラム、26…コンピュータ、30…HMD、31…モニタ、32…注視センサ、33,34…カメラ、35…マイク、36…スピーカ、41…動きセンサ、42…操作装置、50…本人アバター、51,52,53…他人アバター、90…仮想空間、91…パノラマ画像、92…仮想カメラ、92A…自己視点カメラ、92B,92B,92C,92D…設定視点カメラ、93…基準視線、94…視界領域、95,96…領域、97…仮想空間画像、110…アバター同期手段、120…編集補助手段、130…視聴補助手段、210…仮想空間定義手段、220…配置手段、230…カメラ設定手段、240…カメラ移動手段、250…映像生成手段、260…映像表示手段、270…編集手段
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
【手続補正書】
【提出日】2023-07-06
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正の内容】
【0007】
本発明は、前記課題を解決するため、本発明に係るプログラムは、操作装置を備えるコンピュータを、仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させる
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
操作装置を備えるコンピュータを、
仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、
前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させる、プログラム。
【請求項2】
コンピュータを、
仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段して機能させ
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を設定し、
前記コンピュータを、設定された前記撮像条件を満たすように、前記対象オブジェクトの動作に追従して複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させ、
前記撮像条件は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記対象オブジェクトと前記仮想カメラとの間に位置する前記周辺オブジェクトを、前記設定視点映像に含めるか否か含み、
前記映像生成手段は、前記撮像条件に従って、複数の前記仮想カメラそれぞれの前記設定視点映像に前記周辺オブジェクトを含めるか否かを切り替える、プログラム。
【請求項3】
請求項に記載のプログラムにおいて、
前記映像生成手段は、前記対象オブジェクトと前記仮想カメラとの間に位置する前記周辺オブジェクトのうち、前記仮想カメラとの距離が閾値距離以上の前記周辺オブジェクトのみを前記設定視点映像に含める、プログラム。
【請求項4】
コンピュータを、
仮想空間内に配置される対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段して機能させ
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を設定し、
前記コンピュータを、設定された前記撮像条件を満たすように、前記対象オブジェクトの動作に追従して複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させ、
前記対象オブジェクトは、ユーザ端末を通じて操作されるユーザキャラクタであり、
前記映像生成手段は、さらに、前記ユーザキャラクタの自己視点から前記仮想空間内を撮像した自己視点映像を生成し、
前記撮像条件は、複数の前記仮想カメラそれぞれを前記自己視点映像に含めるか否かを含み、
前記コンピュータを、前記撮像条件に従って複数の前記仮想カメラそれぞれを含めるか否かが切り替えられた前記自己視点映像を、前記ユーザキャラクタを操作する前記ユーザ端末に表示させる映像表示手段として機能させる、プログラム。
【請求項5】
請求項1に記載のプログラムにおいて、
前記コンピュータを、複数の前記設定視点映像を編集して視聴映像を生成する編集手段として機能させる、プログラム。
【請求項6】
請求項に記載のプログラムにおいて、
前記編集手段は、複数の前記対象オブジェクトそれぞれを撮像した複数セットの前記設定視点映像を用いて、前記視聴映像を生成する、プログラム。
【手続補正書】
【提出日】2023-11-17
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正の内容】
【0007】
本発明は、前記課題を解決するため、本発明に係るプログラムは、操作装置を備えるコンピュータを、仮想空間内に配置される一の対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させる。
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
操作装置を備えるコンピュータを、
仮想空間内に配置される一の対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、
前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させる、プログラム。
【請求項2】
請求項1に記載のプログラムにおいて、
前記撮像条件は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記対象オブジェクトと前記仮想カメラとの間に位置する前記周辺オブジェクトを、前記設定視点映像に含めるか否か含み、
前記映像生成手段は、前記撮像条件に従って、複数の前記仮想カメラそれぞれの前記設定視点映像に前記周辺オブジェクトを含めるか否かを切り替える、プログラム。
【請求項3】
請求項2に記載のプログラムにおいて、
前記映像生成手段は、前記対象オブジェクトと前記仮想カメラとの間に位置する前記周辺オブジェクトのうち、前記仮想カメラとの距離が閾値距離以上の前記周辺オブジェクトのみを前記設定視点映像に含める、プログラム。
【請求項4】
請求項1に記載のプログラムにおいて、
前記対象オブジェクトは、ユーザ端末を通じて操作されるユーザキャラクタであり、
前記映像生成手段は、さらに、前記ユーザキャラクタの自己視点から前記仮想空間内を撮像した自己視点映像を生成し、
前記撮像条件は、複数の前記仮想カメラそれぞれを前記自己視点映像に含めるか否かを含み、
前記コンピュータを、前記撮像条件に従って複数の前記仮想カメラそれぞれを含めるか否かが切り替えられた前記自己視点映像を、前記ユーザキャラクタを操作する前記ユーザ端末に表示させる映像表示手段として機能させる、プログラム。
【請求項5】
請求項1に記載のプログラムにおいて、
前記コンピュータを、複数の前記設定視点映像を編集して視聴映像を生成する編集手段として機能させる、プログラム。
【請求項6】
請求項5に記載のプログラムにおいて、
前記編集手段は、複数の前記対象オブジェクトそれぞれを撮像した複数セットの前記設定視点映像を用いて、前記視聴映像を生成する、プログラム。
【手続補正書】
【提出日】2024-07-19
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正の内容】
【0007】
本発明は、前記課題を解決するため、本発明に係るプログラムは、操作装置を備えるコンピュータを、仮想空間内に配置される一の対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させ、前記撮像条件は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記仮想カメラから見て前記対象オブジェクトに重なる前記周辺オブジェクトを、前記設定視点映像に含めるか否かを含み、前記映像生成手段は、前記撮像条件に従って、複数の前記仮想カメラそれぞれの前記設定視点映像に前記周辺オブジェクトを含めるか否かを切り替える
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
操作装置を備えるコンピュータを、
仮想空間内に配置される一の対象オブジェクトを、互いに異なる設定視点から撮像する複数の仮想カメラを設定するカメラ設定手段と、
複数の前記仮想カメラそれぞれで撮像された複数の設定視点映像を生成する映像生成手段として機能させ、
前記カメラ設定手段は、複数の前記仮想カメラそれぞれに対して、前記対象オブジェクトからの距離、前記対象オブジェクトに対する角度、前記対象オブジェクトの撮像部位の少なくとも1つを含む撮像条件を、前記操作装置を通じたユーザの操作に従って設定し、
前記コンピュータを、前記操作装置を通じたユーザの操作に従った前記対象オブジェクトの動作に追従して、設定された前記撮像条件を満たすように複数の前記仮想カメラそれぞれを移動させるカメラ移動手段として機能させ、
前記撮像条件は、複数の前記仮想カメラそれぞれについて、前記対象オブジェクトと異なる周辺オブジェクトのうち、前記仮想カメラから見て前記対象オブジェクトに重なる前記周辺オブジェクトを、前記設定視点映像に含めるか否かを含み、
前記映像生成手段は、前記撮像条件に従って、複数の前記仮想カメラそれぞれの前記設定視点映像に前記周辺オブジェクトを含めるか否かを切り替える、プログラム。
【請求項2】
請求項に記載のプログラムにおいて、
前記映像生成手段は、
前記仮想カメラから見て前記対象オブジェクトに重なる前記周辺オブジェクトのうち、前記仮想カメラとの距離が閾値距離以上の前記周辺オブジェクトのみを前記設定視点映像に含め
前記仮想カメラから見て前記対象オブジェクトに重ならない前記周辺オブジェクトを、前記仮想カメラからの距離に拘わらず前記設定視点映像に含める、プログラム。
【請求項3】
請求項1に記載のプログラムにおいて、
前記対象オブジェクトは、ユーザ端末を通じて操作されるユーザキャラクタであり、
前記映像生成手段は、さらに、前記ユーザキャラクタの自己視点から前記仮想空間内を撮像した自己視点映像を生成し、
前記撮像条件は、複数の前記仮想カメラそれぞれを前記自己視点映像に含めるか否かを含み、
前記コンピュータを、前記撮像条件に従って複数の前記仮想カメラそれぞれを含めるか否かが切り替えられた前記自己視点映像を、前記ユーザキャラクタを操作する前記ユーザ端末に表示させる映像表示手段として機能させる、プログラム。
【請求項4】
請求項1に記載のプログラムにおいて、
前記コンピュータを、複数の前記設定視点映像を編集して視聴映像を生成する編集手段として機能させる、プログラム。
【請求項5】
請求項に記載のプログラムにおいて、
前記編集手段は、複数の前記対象オブジェクトそれぞれを撮像した複数セットの前記設定視点映像を用いて、前記視聴映像を生成する、プログラム。