(57)【要約】      （修正有）【課題】仮想現実空間を提供する方法であって、簡易な方法で仮想現実空間に表示されるキャラクタのリップシンクを実現させる方法を提供する。【解決手段】複数のユーザ端末に表示される仮想現実空間を提供するサーバは、第１のユーザ端末から音声データを受信Ｓ１０４する送受信部と、音声データから音声パラメータを抽出するＳ１０５音声分析部と、音声データを基にキャラクタの音声を生成する音声生成部と、音声パラメータを基にキャラクタの画像を制御するＳ１０６画像生成部と、を有する。音声生成部及び画像生成部は、キャラクタの動作が、音声に同期するよう制御する。【選択図】図５
2020149399.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザ端末に表示される仮想現実空間を提供するサーバであって、
第１のユーザ端末から音声データを受信する送受信部と、
前記音声データから音声パラメータを抽出する音声分析部と、
前記音声データを基にキャラクタの音声を生成する音声生成部と、
前記音声パラメータを基に前記キャラクタの画像を制御する画像生成部と、を有し、
前記音声生成部及び前記画像生成部は、前記キャラクタの動作が、前記音声に同期するよう制御することを特徴とするサーバ。
【請求項２】
前記画像生成部は、前記キャラクタのリップの開閉を制御することを含む、請求項１に記載のサーバ。
【請求項３】
前記音声データを受信後、前記音声パラメータを抽出するまで所定の時差を有する、請求項１に記載のサーバ。
【請求項４】
前記キャラクタの音声の出力を、前記所定の時差に基づいたタイミングで行うことを特徴とする、請求項３に記載のサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想現実空間の提供方法に関する。詳しくは、ヘッドマウントディスプレイ（以下、「ＨＭＤ」という。）等のウェアラブルデバイスを介して制御されるキャラクタ画像を含む仮想現実空間の提供方法に関する。
【背景技術】
【０００２】
最近、パフォーマユーザ（演者）が、Ｏｃｕｌｕｓ  Rｉｆｔ（登録商標）に代表されるようなＨＭＤを頭部に装着して頭部の姿勢を変化させ、また、把持したコントローラの姿勢を変化し、操作することで、仮想現実空間に表示されるキャラクタの姿勢を制御することが可能な技術が提供されている。
【０００３】
このような技術が普及することにより、パフォーマユーザは、基本的に、ＨＭＤと個人ＰＣさえあれば、キャラクタを含む仮想現実空間画像を生成・表示させることが可能となり、また、動画配信サーバにアップロードすることが可能となる。
【０００４】
そして、複数のパフォーマユーザが、各々のキャラクタに扮して同じ仮想現実空間に接続することで、インタラクティブにコミュニケーションを図ることができる。
【０００５】
ここで、複数のパフォーマユーザの端末が各々遠隔に位置するため、通信に際して、受信側の端末において、他の端末から送信された音声データ、画像データ、及び動作や表情等の制御データのいずれかのデータの受信に遅延が生じ、例えば、受信側の端末において表示される他の端末が操作するキャラクタの唇の動きと音声が一致しない、という不具合が生じることがある。
【０００６】
アニメーション制作の分野において、キャラクタの唇の動きとキャラクタの音声の動きを一致させるリップシンクという技術がある（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１６−１６７６９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１は、バッファを用いて音声データ及び画像データのいずれかの遅延を吸収し、双方のデータの出力を同期させる技術に関するものであり、かかる方法の場合、バッファに十分な容量の確保できない場合、データに破損が生じ、画像及び音声が出力されない問題が生じる可能性がある。
【０００９】
そこで、本発明は、仮想現実空間を提供する方法であって、簡易な方法で仮想現実空間に表示されるキャラクタのリップシンクを実現させる方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明の一の実施形態において、本発明の一の実施形態において、複数のユーザ端末に表示される仮想現実空間を提供するサーバは、第１のユーザ端末から音声データを受信する送受信部と、前記音声データから音声パラメータを抽出する音声分析部と、前記音声データを基にキャラクタの音声を生成する音声生成部と、前記音声パラメータを基に前記キャラクタの画像を制御する画像生成部と、を有し、前記音声生成部及び前記画像生成部は、前記キャラクタの動作が、前記音声に同期するよう制御することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、簡易な方法で仮想現実空間に表示されるキャラクタのリップシンクを実現させることができる。
【図面の簡単な説明】
【００１２】
【図１】第１の実施形態に係るシステム構成図を示す。
【図２】第１の実施形態に係るサーバの機能構成図を示す。
【図３】第１の実施形態に係るパフォーマユーザ端末の機能構成図を示す。
【図４】第１の実施形態に係るＨＭＤの機能構成図を示す。
【図５】第１の実施形態に係る仮想現実空間の提供方法を説明するフローチャートを示す。
【図６】第１の実施形態に係るサーバの制御部及びストレージの詳細を示す。
【００１３】
＜第１実施形態＞
本発明の第１実施形態に係る仮想現実空間の提供方法を、以下の図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【００１４】
図１に、本発明の第１の実施形態に係るシステム構成図を示す。図１に示すように、本実施形態に係るシステムは、サーバ１と、サーバ１に、インターネット等のネットワークを介して接続される、パフォーマユーザ端末２Ａとパフォーマユーザ端末２Ｂとを含む。図１には、説明の便宜上パフォーマユーザ端末２Ａ、２Ｂ（以下、ユーザ端末２と総称する）が図示されているが、任意の数のユーザ端末がネットワークに接続可能である。
【００１５】
パフォーマユーザ端末２Ａ、２Ｂに関連付けられるパフォーマユーザは各々、ＨＭＤ３Ａ、３Ｂを頭部に装着し、また、（図示しない）コントローラを把持し、頭部またはコントローラの姿勢を変化させ、また、コントローラの所定の操作部（ボタン等）を操作することで、その入力データを、ＨＭＤ３Ａ、３Ｂに各々有線または無線のネットワークで接続されるユーザ端末２Ａ、２Ｂに送信し、その入力データに基づいて、ユーザ端末２Ａ、２Ｂは各々、仮想現実空間に配置されるアニメキャラクタ等の３Ｄオブジェクトの動きを制御し、その３Ｄオブジェクトが配置された仮想現実空間の画像を生成する。または、ユーザ端末２A、２Bは各々入力データを他のユーザ端末に送信し、送信先のユーザ端末が仮想現実空間に配置されるアニメキャラクタ等の３Ｄオブジェクトの動きを制御し、その３Ｄオブジェクトが配置された仮想現実空間の画像を生成することもできる。
【００１６】
なお、図１において、サーバ１をシステムの構成要素として記載しているが、ユーザ端末２Ａ、２Ｂが、相互に直接または間接に通信する構成であれば良いので、省略することもできる。また、ＨＭＤ３Ａ、３Ｂに替えて、ジャイロセンサや加速度センサ等の各種センサが内蔵され。ユーザの姿勢を検出可能な端末であれば、他のウェアラブルデバイスやスマートフォン等を適用することもできる。また、ＨＭＤ３Ａ、３Ｂに替えて、光学式のモーションキャプチャ技術を適用することもできる。本技術の例として、パフォーマユーザがマーカを備えた全身スーツを装着し、部屋や撮影スタジオ等の一定の空間にマーカをトラッキングする、デジタルカメラ等の複数のトラッカを配置することで、トラッカがマーカの反射を捕捉し、フレーム毎のマーカ位置の変化を分析することで、演者の時系列の動きを空間的表現として構成する方法を適用することができる。この空間的表現を仮想現実空間におけるキャラクタの制御に適用することで、パフォーマユーザの動きをキャラクタの動きとして再現することが可能となる。また、HMD３A、３Bとしてスタンドアローン型のHMDを用いる場合には、HMD３A、３Bは、各々ユーザ端末２A、２Bを介さずに、ネットワークを介して、他のHMDと通信することができる。
【００１７】
図２は、第１実施形態に係るサーバ１の機能構成図を示す。なお、図示された構成は一例であり、これ以外の構成を有していてもよい。
【００１８】
図示されるように、サーバ１は、データベース(図示せず)と接続されシステムの一部を構成する。サーバ１は、例えばワークステーションやパーソナルコンピュータのような汎用コンピュータとしてもよいし、或いはクラウド・コンピューティングによって論理的に実現されてもよい。
【００１９】
サーバ１は、少なくとも、制御部１０、メモリ１１、ストレージ１２、送受信部１３、入出力部１４等を備え、これらはバス１５を通じて相互に電気的に接続される。
【００２０】
制御部１０は、サーバ１全体の動作を制御し、各要素間におけるデータの送受信の制御、及びアプリケーションの実行及び認証処理に必要な情報処理等を行う演算装置である。例えば制御部１０はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、ストレージ１２に格納されメモリ１１に展開されたプログラム等を実行して各情報処理を実施する。
【００２１】
メモリ１１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ１１は、プロセッサ１０のワークエリア等として使用され、また、サーバ１の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、及び各種設定情報等を格納する。
【００２２】
ストレージ１２は、アプリケーション・プログラム等の各種プログラムを格納する。各処理に用いられるデータを格納したデータベース（図示せず）がストレージ１２に構築されていてもよい。
【００２３】
送受信部１３は、サーバ１をネットワークに接続する。なお、送受信部１３は、Ｂｌｕｅｔｏｏｔｈ（登録商標）及びＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）の近距離通信インターフェースを備えていてもよい。
【００２４】
入出力部１４は、キーボード・マウス類等の情報入力機器、及びディスプレイ等の出力機器である。
【００２５】
バス１５は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各種制御信号を伝達する。
【００２６】
図３は、第１実施形態に係るパフォーマユーザ端末２Ａ、２Ｂの機能構成図を示す。パフォーマユーザ端末２Ａ、２Ｂは同じ構成とすることができるので、以下、説明の便宜のため、パフォーマユーザ端末２として説明する。なお、図示された構成は一例であり、これ以外の構成を有していてもよい。
【００２７】
パフォーマユーザ端末２は、前述の通り、様々な情報端末や汎用コンピュータとすることができるか、以下、スマートフォンを例に説明する。ユーザ端末２は、少なくとも、制御部２０、メモリ２１、ストレージ２２、送受信部２３、入力部２４等を備え、これらはバス２５を通じて相互に電気的に接続される。
【００２８】
制御部２０は、ユーザ端末２全体の動作を制御し、各要素間におけるデータの送受信の制御、及びアプリケーションの実行及び認証処理に必要な情報処理等を行う演算装置である。例えば制御部２０はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、ストレージ２２に格納されメモリ２１に展開されたプログラム等を実行して各情報処理を実施する。
【００２９】
メモリ２１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ２１は、制御部２０のワークエリア等として使用され、また、ユーザ端末２の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、及び各種設定情報等を格納する。
【００３０】
ストレージ２２は、アプリケーション・プログラム等の各種プログラムを格納する。各処理に用いられるデータを格納したデータベース（図示せず）がストレージ２２に構築されていてもよい。
【００３１】
送受信部２３は、ユーザ端末２をネットワークに接続する。なお、送受信部２３は、Ｂｌｕｅｔｏｏｔｈ（登録商標）及びＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）の近距離通信インターフェースを備えていてもよい。
【００３２】
入出力部２４は、キーボード・マウス類等の情報入力機器、及びディスプレイ等の出力機器である。
【００３３】
バス２５は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各種制御信号を伝達する。
【００３４】
パフォーマユーザ端末２は、例えばワークステーションやパーソナルコンピュータのような汎用コンピュータとしてもよいし、或いはクラウド・コンピューティングによって論理的に実現されてもよい。
【００３５】
図４は、第１の実施形態に係るＨＭＤ３Ａ、３Ｂの機能構成図を示す。ＨＭＤ３Ａ、３Ｂは同じ構成とすることができるので、以下、説明の便宜のため、ＨＭＤ３として説明する。なお、図示された構成は一例であり、これ以外の構成を有していてもよい。
【００３６】
図４に示すように、ＨＭＤ３は、少なくとも、制御部３０、メモリ３１、ストレージ３２、表示制御部３３、表示部３４、送受信部３５、入出力部３６等を備え、これらはバス４０を通じて相互に電気的に接続される。
【００３７】
制御部３０は、ＨＭＤ３全体の動作を制御し、各要素間におけるデータの送受信の制御、及びゲーム処理に係るアプリケーションの実行及び認証処理に必要な情報処理等を行う演算装置である。例えば制御部３０はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、ストレージ３２に格納されメモリ３１に展開されたプログラム等を実行して各情報処理を実施する。
【００３８】
メモリ３１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ３１は、プロセッサ３０のワークエリア等として使用され、また、ゲームサーバ１の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、及び各種設定情報等を格納する。
【００３９】
ストレージ３２は、アプリケーション・プログラム等の各種プログラムを格納する。各処理に用いられるデータを格納したデータベース（図示せず）がストレージ３２に構築されていてもよい。
【００４０】
画像制御部３３は、例えば、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、主に画像処理に係る演算処理を実行する。画像制御部１３は、制御部１０により生成されたコンテンツデータを、各種オブジェクトの画像と合成し、仮想現実空間を構成する仮想現実空間画像を生成する。
【００４１】
表示部３４は、画像制御部３３から入力される画像信号に基づいて仮想現実空間画像を表示する。また、表示部３４は、例えば、ＬＣＤまたは有機ＥＬ等のディスプレイである。表示部３４には、左目用画像と右目用画像とが表示され、両目の視差を利用することにより立体感のある画像をユーザに提供することができる。左目用画像と右目用画像とを表示することができれば、左目用ディスプレイと右目用ディスプレイとを個別に備えることも可能であるし、左目用及び右目用の一体型のディスプレイを備えることも可能である。
【００４２】
送受信部３５は、ＨＭＤ３をネットワークに接続する。なお、送受信部１５は、Ｂｌｕｅｔｏｏｔｈ（登録商標）及びＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）の近距離通信インターフェースを備えていてもよい。送受信部３５は、（図示しない）コントローラからの指示信号をネットワーク経由で受信する。
【００４３】
入出力部３６は、画像生成装置や表示装置等を外部に設ける場合、画像信号や音信号等を入出力するためのインターフェースである。本実施形態においては、ユーザ端末２との間に接続を確立するためのインターフェースとすることもできる。
【００４４】
さらに、ＨＭＤ３は、センサ３７を備えることができる。センサとしては、ユーザの頭部の向きや傾きといった動きを検出するために、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。加速度センサは、加速度（単位時間当たりの速度の変化）を検出する。その中で、加速度センサは、３軸方向（ｘ、ｙ、ｚ方向）の加速度を検出することができる。例えば、ＨＭＤの前後方向をｘ軸、左右方向をｙ軸、上下方向をｚ軸とし、前方方向をｘ軸正方向、左方向をｙ軸正方向、下方向をｚ軸方向とすると、加速度センサ３０は、各方向の加速度を検出するとともに、ｘ軸回りの回転角（ロール角）、ｙ軸回りの回転角（ピッチ角）、ｚ軸回りの回転角（ヨー角）を検出する。
【００４５】
さらに、またはセンサ３７に代えて、ＨＭＤ３は、（図示しない）複数の光源（例えば、赤外光ＬＥＤ、可視光ＬＥＤ）を備えることもでき、ＨＭＤ３の外部（例えば、室内等）に設置されたカメラ（例えば、赤外光カメラ、可視光カメラ）がこれらの光源を検出することで、特定の空間におけるＨＭＤ３の位置、向き、傾きを検出することができる。または、同じ目的で、ＨＭＤ３に、ＨＭＤ３に設置された光源を検出するためのカメラを備えることもできる。
【００４６】
さらに、ＨＭＤ３は、アイトラッキング・センサを備えることもできる。アイトラッキング・センサは、ユーザの左目及び右目の視線方向及び注視点を検出するために用いられる。アイトラッキング・センサとしては様々な方式が考えられるが、例えば、左目および右目に弱い赤外光を照射してできる角膜上の反射光の位置を基準点とし、反射光の位置に対する瞳孔の位置により視線方向を検出し、左目及び右目の視線方向の交点を注視点として検出する方法などが考えられる。
【００４７】
さらに、スピーカ３８は、（図示しない）音生成部から入力される楽曲データ等の音信号を出力する。
【００４８】
さらに、マイク３９は、パフォーマユーザの声を集音する。
【００４９】
さらに、バス４０は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各種制御信号を伝達する。
【００５０】
なお、本実施形態のように、画像生成にあたり、ＨＭＤ３は、ユーザ端末２等の外部処理装置との間でデータを送受信することで、外部処理装置にデータを処理させることもできるし、外部処理装置に依存せずに、ＨＭＤ単体として、内蔵されたプログラムを実行する、スタンドアローン型の装置として機能することもできる。
【００５１】
図５は、第１実施形態に係るユーザ端末の機能構成図を示す。なお、図示された構成は一例であり、これ以外の構成を有していてもよい。
【００５２】
ユーザ端末４は、前述の通り、様々な情報端末や汎用コンピュータとすることができるか、以下、スマートフォンを例に説明する。ユーザ端末４は、少なくとも、制御部４０、メモリ４１、ストレージ４２、送受信部４３、入力部４４等を備え、これらはバス4７を通じて相互に電気的に接続される。
【００５３】
制御部４０は、ユーザ端末４全体の動作を制御し、各要素間におけるデータの送受信の制御、及びアプリケーションの実行及び認証処理に必要な情報処理等を行う演算装置である。例えば制御部２０はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、ストレージ４２に格納されメモリ４１に展開されたプログラム等を実行して各情報処理を実施する。
【００５４】
メモリ４１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ２１は、制御部２０のワークエリア等として使用され、また、ユーザ端末２の起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、及び各種設定情報等を格納する。
【００５５】
ストレージ４２は、アプリケーション・プログラム等の各種プログラムを格納する。各処理に用いられるデータを格納したデータベース（図示せず）がストレージ２２に構築されていてもよい。
【００５６】
送受信部４３は、ユーザ端末２をネットワークに接続する。なお、送受信部２３は、Ｂｌｕｅｔｏｏｔｈ（登録商標）及びＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）の近距離通信インターフェースを備えていてもよい。
【００５７】
入出力部４４は、キーボード・マウス類等の情報入力機器、及びディスプレイ等の出力機器である。
【００５８】
画像制御部４５は、例えば、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、主に画像処理に係る演算処理を実行する。画像制御部４５は、制御部４０により生成されたコンテンツデータを、各種オブジェクトの画像と合成し、仮想現実空間を構成する仮想現実空間画像を生成する。
【００５９】
表示部４６は、画像制御部４５から入力される画像信号に基づいて仮想現実空間画像を表示する。また、表示部３４は、例えば、ＬＣＤまたは有機ＥＬ等のディスプレイである。
【００６０】
バス４７は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各種制御信号を伝達する。
【００６１】
ユーザ端末２は、例えばワークステーションやパーソナルコンピュータのような汎用コンピュータとしてもよいし、或いはクラウド・コンピューティングによって論理的に実現されてもよい。
【００６２】
図５は、第１の実施形態に係る仮想現実空間の提供方法を説明するフローチャートを示す。図示の通り、諸データの送信元となるパフォーマユーザ端末２A、サーバ１及び送信先となるパフォーマユーザ端末２Bにおいて分担して実行され、例えば、ユーザ端末２においては、メモリ２２に展開されるプログラムを制御部２１が実行することで実現され、また、サーバ１及びパフォーマユーザ端末２Ｂにおいても各々メモリに展開されるプログラムを制御部が実行することで実現される。ここで、パフォーマユーザ端末２Ａ、２Ｂは、同等の構成、機能を有することを想定しているが、説明の便宜上、パフォーマユーザ端末２Ａにおいては、諸データの送信元としての機能に着目し、パフォーマユーザ端末２Ｂにおいては、諸データの送信先としての機能に着目して説明する。また、パフォーマユーザ端末２Ａ、２Ｂにより実現される機能は、仕様に応じて、各々ＨＭＤ３Ａ、３Ｂにより処理を実現することもできる。本方法の説明に当たり、パフォーマユーザ端末２Ａ、パフォーマユーザ端末２Ｂの構成を、図６及び図７を参照しながら説明する。また、説明中引用される図番について、パフォーマユーザ端末２Ａとの関連では、例えば、「制御部２０Ａ」等と、パフォーマユーザ端末２Ｂとの関連では、例えば、「制御部２０Ｂ」等のように、同様の構成について、説明の便宜のため、装置に応じて図番の末尾に「Ａ」「Ｂ」というような記号を付けて説明する。
【００６３】
まず、図６に示す、パフォーマユーザ端末２Ａの制御部２０Ａの入力検出部５１は、ユーザ入力を受信し、検出する（Ｓ１０１）。より具体的には、入力検出部５１は、送受信部２３を介して、ＨＭＤ３Ａのセンサ３７Ａまたは（図示しない）コントローラから検出されるデータ（例えば、加速度、動き、傾き等）（さらに、ＧＰＳ情報等）及びマイク３９Ａから入力されたパフォーマユーザの音声データ等を検出する。
【００６４】
次に、パフォーマユーザ端末２Ａの送受信部２３Ａは、検出した音声データをサーバ１に転送する（Ｓ１０２）。ここで、マイク３９Ａから入力された音声データは電気信号に変換されるが、さらに、ユーザ端末２Ａ及び内部処理及び他の端末における処理に供するため、デジタル化（具体的には、サンプリング、量子化処理）され、デジタル化された音声データがサーバ１に送信され、さらに、Ｓ１０３の処理に引き継がれる。ここで、音声データは所定のフォーマット（例えば、ＭＰ３等）にエンコードされ、エンコードされたデータとして送信することもできる。音声データは後述の動作パラメータと比較して、データ容量が大きいため、動作パラメータと同時に送信すると、サーバ１に到達する時間が動作パラメータと比較して遅くなる可能性があり、仮に動作パラメータに先駆けて送ったとしても、通信トラフィックの状況によっては、尚遅延が生じる可能性がある。この遅延が、音声データ及び動作パラメータの送信先であるユーザ端末２Ｂにおける音声出力と画像生成／出力とのタイミングに差を生じさせる要因となり得る。したがって、本タイミングのように、音声データを検出したタイミングで、動作パラメータに先駆けて、サーバ１等の他端末に送信することで、音声出力と画像生成／出力との不一致を解消することが可能となる。
【００６５】
次に、パフォーマユーザ端末２Ａの送受信部２３Aは、検出した動作パラメータをサーバ１に送信する（Ｓ１０３）。ここで、動作パラメータは、例えば、ＨＭＤ３のジャイロセンサにより検出されたユーザの頭部の向きや傾き等のユーザの動きに関するデータである。また、（図示しない）コントローラからユーザの手の動きに関するデータや操作信号を検出した場合においては、これらのデータも動作パラメータに含まれる。
【００６６】
並行して、サーバ１の送受信部１３は、ユーザ端末２Ａから音声データを受信する（Ｓ１０４）。
【００６７】
次に、サーバ１の制御部１０の音声分析部５１は、音声分析により音声データから音声パラメータを抽出する（Ｓ１０５）。ここで、音声パラメータとは、いわゆる音素を示すデータをさし、日本語においては、母音（ａ、ｉ、ｕ、ｅ、ｏ）、子音（ｋ、ｇ、ｓ、ｚ、ｔ、ｘ、ｄ、ｎ、ｈ、ｆ、ｐ、ｂ、ｍ、ｒ、ｙ、ｗ）、その他特殊音からなるが、処理の負荷軽減のため、例えば、母音のみ抽出しても良い。音声分析においては、例えば、デジタル化した音声データを高速フーリエ変換することでスペクトラムを算出し、さらに、スペクトラムを離散コサイン変換してケプストラムを算出することでフォルマントを抽出し、音素を認識する方法が考えられる。
【００６８】
次に、サーバ１の送受信部１３は、動作パラメータを受信する（Ｓ１０６）。動作パラメータについては、音声データと比較してデータ容量が小さいため、Ｓ１０４の音声データの受信タイミングと本ステップの動作パラメータの受信タイミングは略一致またはユーザ端末２Ａにおいて音声データを送信した時間と動作パラメータを送信した時間の時差より小さいことが想定される。
【００６９】
続いて、サーバ１の制御部１０のキャラクタ制御部５２、音声合成部５３及び画像生成部５４は、受信したユーザ入力情報を基に、音声出力、キャラクタ制御及び画像の出力処理を実行する（Ｓ１０６）。より具体的には、まず、受信した音声データを基に、音声合成部５３は、音声データをデコードし、デコードされた音声を出力する処理を行う。また、音声出力に際して、音声合成部５４は、ストレージ１２の音声データ記憶部６１に格納される音声データまたは音声変換ソフトウェアを参照し、例えば、パフォーマユーザの声を特定のアニメ声優の音声に変換することも可能である。また、音声合成部５３は、パフォーマユーザ端末２Ａから受信される音声データに含まれるリップノイズや背景ノイズをフィルタリングで除去し、明りょうな声質に変換したり、声量を上げたりすることもできる。
【００７０】
また、キャラクタ制御部５２は、抽出された音声パラメータを基に、すなわち、音素を示すデータに基づいて、キャラクタの唇の動きを制御する。音素、例えば、母音（ａ、ｉ、ｕ、ｅ、ｏ）の各々に対応する、キャラクタの唇の動作が関連付けてあり、キャラクタ制御部５２は、受信した音素を示すデータに基づいて、キャラクタの唇の動作（具体的には開閉動作）を制御する。ここで、サーバにおいて、音声パラメータを抽出するための音声分析処理に相当程度の時間を要することから、音声の出力タイミングを、音声データ受信後所定の時間遅れさせるようにすることができる。または、音声の出力を、音声分析処理が終了したことを待って実行することで、より高い精度のリップシンクを実現することができる。
【００７１】
また、キャラクタ制御部５２は、受信した動作データ（例えば、ＨＭＤ３Ａまたは（図示しない）コントローラの加速度、動き、傾き等）を基にＨＭＤ３Ａまたはコントローラの位置及び姿勢を算出し、例えば、ＨＭＤ３Ａのセンサ２７Ａから入力されたデータがパフォーマユーザの頭部の向きや傾き（例えば、ユーザの頭部を基準としたｘｙｚ軸まわりの回転角）に関する場合、キャラクタ制御部５２は、キャラクタの３Ｄオブジェクトを構成する頭部の動きを変化させることができる。動きを変化させる具体的な処理として、例えば、ＨＭＤ３Ａのジャイロセンサにより検出されたユーザの頭部の向きや傾き等の動きに関する情報を、オブジェクトの関節の動きや制約を規定したボーン構造における頭部の動きに変換し、ボーン構造における頭部の動きをキャラクタの３Ｄオブジェクトの頭部の動きに適用することで、キャラクタの動きを制御することができる。
【００７２】
また、サーバ１の制御部１０の画像生成部５４は、仮想現実空間画像を生成する。より具体的には、画像生成部５４は、３Ｄ形状データを所定の空間にマッピングし、画像記憶部６２に格納されたキャラクタ画像データから変換されたテクスチャデータを３Ｄ形状にマッピングさせることで、キャラクタの３Ｄオブジェクトを生成する。所定の空間背景画像にキャラクタの３Ｄオブジェクトを重畳することで、仮想現実空間の画像が生成される。
【００７３】
そして、生成されたキャラクタ画像が、ＨＭＤ３Ａ及びＨＭＤ３Ｂに送信され、ＨＭＤ３Ａ、ＨＭＤ３Ｂの表示部３４Ａ、３４Ｂに各々表示され、キャラクタの唇が動作するタイミングで、パフォーマユーザ端末２Ａから受信された音声が発声され、リップシンクが実現される。
【００７４】
以上のように、本実施形態において、サーバにおいて、音声データから音声パラメータを抽出し、音声パラメータからキャラクタの唇の開閉の動きを制御するに至るまで、それらの処理に所定の時間を要することを考慮し、音声の出力を音声データ受信後所定期間経過してから行うことで、より精度の高いキャラクタのリップシンクを実現することができる。パフォーマユーザの音声データを送信元端末から送信先端末に送信するタイミングを、動作データを送信するタイミングより先にすることで、サーバにおいてその時差を吸収して双方のデータを受信することができるため、結果として、サーバにおいて、音声の出力タイミングと対応する動作とを略一致とすることができ、簡易な方法でリップシンクを実現することができる。
【００７５】
また、リップシンクの精度をさらに向上させるため、送信先端末における音声データと動作パラメータとを受信するタイミングが略一致となるように、音声データが送信元から送信先端末に送信される時間、通信のトラフィック等を基に、送信元端末で音声データと動作パラメータとを送信するタイミングの時差を調整することも可能である。
【００７６】
上述した実施の形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
【符号の説明】
【００７７】
１  サーバ
２  パフォーマユーザ端末
３  ＨＭＤ
【図１】
2020149399.tif 000003
【図２】
2020149399.tif 000004
【図３】
2020149399.tif 000005
【図４】
2020149399.tif 000006
【図５】
2020149399.tif 000007
【図６】
2020149399.tif 000008