JP2024030610A - アバター制御装置、アバター制御方法、及びアバター制御プログラム - Google Patents
アバター制御装置、アバター制御方法、及びアバター制御プログラム Download PDFInfo
- Publication number
- JP2024030610A JP2024030610A JP2022133596A JP2022133596A JP2024030610A JP 2024030610 A JP2024030610 A JP 2024030610A JP 2022133596 A JP2022133596 A JP 2022133596A JP 2022133596 A JP2022133596 A JP 2022133596A JP 2024030610 A JP2024030610 A JP 2024030610A
- Authority
- JP
- Japan
- Prior art keywords
- avatar
- movement
- motion
- user
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 43
- 238000001514 detection method Methods 0.000 claims abstract description 80
- 238000004891 communication Methods 0.000 abstract description 48
- 230000036544 posture Effects 0.000 description 64
- 230000008569 process Effects 0.000 description 17
- 238000009877 rendering Methods 0.000 description 15
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000008859 change Effects 0.000 description 6
- 101000648219 Anemonia viridis Delta-actitoxin-Avd2c Proteins 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000000284 resting effect Effects 0.000 description 3
- 208000012661 Dyskinesia Diseases 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000002604 ultrasonography Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターを生成するよう制御することができるアバター制御装置を提供する。【解決手段】アバター制御装置103は、アバター動き設定部4及びアバター生成部7を備える。アバター生成部7は、各ユーザに対応するアバターを描画して各アバターを生成する。アバター動き設定部4は、各ユーザの動きを取得する動きセンサ21が生成する動き検出信号に基づいて、各アバターの動きを設定する。アバター動き設定部4は、動きが所定の大きさ以下であるアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態に設定する。【選択図】図1
Description
本発明は、アバター制御装置、アバター制御方法、及びアバター制御プログラムに関する。
近年、プロセッサの処理が高速化することに伴って、仮想現実(VR)空間において、各ユーザが、各ユーザに対応して生成されたアバターを動かしたり、アバターどうしを交流させたりすることが行われている(特許文献1参照)。典型的には、アバターを制御するサーバと各ユーザが所持するユーザ端末とがネットワークを介して互いに通信することにより、各ユーザに対応するアバターが生成される。
プロセッサの処理が高速化してはいるものの、各ユーザに対応するアバターを描画するための描画負荷が過大となったり、サーバとユーザ端末との間の通信負荷が過大となったりすることがある。すると、アバターが不用意に停止したり、ユーザの動きに追従しなくなったりして、アバターの動きが不自然になり、ユーザは違和感を覚えてしまう。
本発明は、描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターを生成するよう制御することができるアバター制御装置、アバター制御方法、及びアバター制御プログラムを提供することを目的とする。
本発明は、各ユーザに対応するアバターを描画して各アバターを生成するアバター生成部と、前記各ユーザの動きを取得する動きセンサが生成する動き検出信号に基づいて、前記各アバターの動きを設定するアバター動き設定部とを備え、前記アバター動き設定部は、動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定するアバター制御装置を提供する。
本発明は、各ユーザに対応するアバターを描画して各アバターを生成し、前記各ユーザの動きを取得する動きセンサが生成する動き検出信号に基づいて、前記各アバターの動きを設定し、動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定するアバター制御方法を提供する。
本発明は、コンピュータに、各ユーザに対応するアバターを描画して各アバターを生成するステップと、前記各ユーザの動きを取得する動きセンサが生成する動き検出信号に基づいて、前記各アバターの動きを設定するステップと、動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定するステップとを実行させるアバター制御プログラムを提供する。
本発明のアバター制御装置、アバター制御方法、及びアバター制御プログラムによれば、描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターを生成するよう制御することができる。
以下、各実施形態に係るアバター制御装置、アバター制御方法、及びアバター制御プログラムについて、添付図面を参照して説明する。
<第1実施形態>
図1に示すように、アバター制御サーバ10aとユーザ端末20a~20cがネットワーク50を介して接続されている。ユーザ端末20a~20cのいずれかを特定しないユーザ端末、及び図示していない他の任意のユーザ端末をユーザ端末20と称することとする。ネットワーク50を介してアバター制御サーバ10aに接続されているユーザ端末20の数は、1またはそれ以上の任意の数である。典型的には、ネットワーク50はインターネットである。
図1に示すように、アバター制御サーバ10aとユーザ端末20a~20cがネットワーク50を介して接続されている。ユーザ端末20a~20cのいずれかを特定しないユーザ端末、及び図示していない他の任意のユーザ端末をユーザ端末20と称することとする。ネットワーク50を介してアバター制御サーバ10aに接続されているユーザ端末20の数は、1またはそれ以上の任意の数である。典型的には、ネットワーク50はインターネットである。
アバター制御サーバ10aはアバター制御装置101を備える。アバター制御装置101は、通信部1、動き検出部2、トラッキング外れ検出部3、アバター動き設定部4、特定姿勢データ保持部5、アバター制御信号生成部6、アバター生成部7、レンダリング部8、制御部9、アバター位置制御部11、アバター・背景設定部12を備える。各ユーザ端末20は、動きセンサ21、制御部22、操作部23、通信部24、画像表示部25を備える。アバター生成部7は演算部71を含む。
通信部1は、インターネットプロトコル等の通信プロトコルを採用してユーザ端末20と通信する通信回路で構成することができる。通信部1以外のアバター制御装置101は、プロセッサ及びメモリを含むコンピュータで構成することができる。特定姿勢データ保持部5及びアバター・背景設定部12はコンピュータのメモリで構成することができる。アバター制御装置101の通信部1、特定姿勢データ保持部5、及びアバター・背景設定部12以外の部分はコンピュータのプロセッサで構成することができる。
ユーザ端末20aを所持しているユーザは、図2に示すユーザU1であるとする。動きセンサ21はTOF(Time Of Flight)センサまたはカメラである。動きセンサ21がTOFセンサであるとき、動きセンサ21はユーザU1に光または超音波を照射して光または超音波が戻ってくるまでの時間を計測して、ユーザU1がどのような姿勢であるかユーザU1がどのように動いているかを示す、ユーザU1の動き(姿勢を含む)に対応する動き検出信号を生成する。
動きセンサ21は、ユーザU1の体の複数の箇所に装着された加速度センサまたはジャイロセンサ等のセンサであってもよい。動きセンサ21はユーザU1の体の動きまたは姿勢を検出できればよく、どのようなセンサであってもよい。
動きセンサ21がカメラであるとき、動きセンサ21はユーザU1を撮影してユーザU1の動き(姿勢を含む)に対応する動き検出信号を生成する。動きセンサ21としてカメラを用いるとき、カメラはユーザU1を2次元的に撮影するカメラまたは3次元的に撮影するステレオカメラである。動きセンサ21としてステレオカメラを用いる方が、ユーザU1を立体的に撮影することができるので好ましい。動きセンサ21より出力された動き検出信号は、制御部22、通信部24、ネットワーク50を介して、アバター制御サーバ10aへと送信される。
通信部1は動き検出信号を受信して動き検出部2に供給する。動き検出部2は、入力された動き検出信号に基づいて、ユーザU1の複数の関節の位置及び体の特定の部位の位置を検出して、ユーザU1がどのような姿勢であるかユーザU1がどのように動いているかを示す、ユーザU1の骨格的な動きを示す骨格動き信号を生成する。骨格動き信号はユーザU1の体の動きを示す体動き信号の一例である。図2に示すように、ユーザU1は、立っていて両手を下ろしているポーズP1から、右腕を曲げて左腕を上方に突き上げたポーズP2へと移行させたとする。図3に示すように、動き検出部2は、ポーズP1に対応する骨格的姿勢Q1及びポーズP2に対応する骨格的姿勢Q2を含む骨格動き信号を生成する。
図3では図示していないが、動き検出部2は、ポーズP1からポーズP2までの途中の骨格動き信号を生成する。図4に示す骨格的姿勢Q1から骨格的姿勢Q2へと変化する骨格動き信号は、トラッキング外れ検出部3及びアバター動き設定部4に供給される。
ユーザ端末20が動き検出部2に相当する構成を備えてもよい。この場合、ユーザ端末20の通信部24は、各ユーザの骨格動き信号をアバター制御サーバ10aに送信し、アバター制御サーバ10aの通信部1は骨格動き信号を受信する。受信した骨格動き信号は、トラッキング外れ検出部3及びアバター動き設定部4に供給される。
トラッキング外れ検出部3は、骨格動き信号が入力されなくなると、動きセンサ21がユーザU1の動きに対応する動き検出信号を生成しなくなった状態であるトラッキング外れが発生したことを検出する。トラッキング外れ検出部3は、トラッキング外れが発生したことを検出すると、アバター動き設定部4にトラッキング外れが発生したことを通知する。トラッキング外れ検出部3は、骨格動き信号が通常ではあり得ない異常な動きを示すときもトラッキング外れが発生したと検出してもよい。例えば、ユーザU1の体の一部がTOFセンサまたはカメラから外れた場合には、骨格動き信号が異常な動きを示すことがある。
アバター動き設定部4は、トラッキング外れが発生したことが通知されていなければ、アバターに骨格動き信号に応じた動きをさせるようアバター制御信号生成部6に指示する。アバター制御信号生成部6は、アバターAvに骨格動き信号に応じた動きをさせるよう制御するアバター制御信号を生成してアバター生成部7に供給する。
アバター生成部7の演算部71は、骨格動き信号に応じた動きをするアバターを描画してアバターを生成する。アバター・背景設定部12には、アバター生成部7がどのような形態のアバターを生成するのかが設定されている。アバター・背景設定部12に設定されているアバターの形態が、図5に示すような人間の体を模した形態であるとする。アバター・背景設定部12には、人間の体の部位とアバターのどの部位が対応するのかの対応関係も設定されている。
従って、アバター生成部7は、図5に示すように、図3に示す骨格的姿勢Q1から骨格的姿勢Q2への変化に対応して、ポーズPav1からポーズPav2へと変化するアバターAv1を生成する。アバターAv1を含む任意のアバターをアバターAvと称することとする。
ユーザがユーザ端末20によって、アバター・背景設定部12にアバターAvの形態をアップロードするように構成されていてもよい。アバター・背景設定部12にアバターAvの複数の形態が設定されており、ユーザがいずれかの形態を選択可能に構成されていてもよい。
アバター・背景設定部12には、アバターAvが位置して移動する3次元的な仮想空間を決める背景データが設定されている。アバターAvが2次元の画像であれば、背景データは2次元の画像データであってもよい。レンダリング部8は、アバター・背景設定部12から背景データを取得し、背景データに基づく仮想空間内にアバターAvを位置させるようレンダリングする。
ユーザは、ユーザ端末20における操作部23を操作して仮想空間内でアバターAvを移動させるよう操作することができる。ユーザ端末20の制御部22は、操作部23の操作に応じてアバターAvを移動させる移動制御信号を生成する。移動制御信号は、通信部24、ネットワーク50を介して、アバター制御サーバ10aへと送信される。アバター制御サーバ10aの通信部1は移動制御信号を受信し、制御部9は移動制御信号をアバター位置制御部11に供給する。アバター位置制御部11は、仮想空間内のアバターAvを移動制御信号に従って移動させるようレンダリング部8を制御する。
以上のようにして、アバター制御サーバ10aは、各ユーザ端末20のユーザに対応するアバターAvを生成して仮想空間内に位置させたレンダリング画像を生成する。通信部1はレンダリング画像を各ユーザ端末20に送信する。通信部24はレンダリング画像を受信し、制御部22はレンダリング画像を画像表示部25に表示するよう制御する。ユーザは、画像表示部25に表示されているレンダリング画像を見ながら、自分自身の姿勢を変化させてアバターAvの姿勢を変化させたり、仮想空間内でアバターAvを移動させたりすることができる。
ここで、トラッキング外れ検出部3がトラッキング外れを検出したときのアバター制御サーバ10aの動作を説明する。特定姿勢データ保持部5には、アバターAvを静止状態または特定の動きとするための特定姿勢データが保持されている。一例として、特定姿勢データ保持部5には、特定姿勢データとして、図6に示す静止状態の骨格的姿勢Q0に相当する姿勢データが保持されている。ここでは、静止状態の骨格的姿勢Q0を図4に示す骨格的姿勢Q1と同じ骨格的姿勢としている。アバターAvを特定の動きとする特定姿勢データは、例えば骨格的姿勢Q0の一部の部位が周期的に変化するような骨格的姿勢の姿勢データとすればよい。
図6に示すように、動き検出部2が骨格的姿勢Q11に相当する骨格動き信号を生成した時点でトラッキング外れが発生したとする。アバター動き設定部4は、トラッキング外れ検出部3からトラッキング外れが発生したことを通知されると、アバターAvを、トラッキング外れ時の骨格的姿勢Q11に代えて静止状態の骨格的姿勢Q0(または特定の動きの骨格的姿勢)に応じた姿勢をさせるようアバター制御信号生成部6に指示する。このとき、動き検出部2は、骨格的姿勢Q11から骨格的姿勢Q0に即座に移行させるのではなく、骨格的姿勢Q11と骨格的姿勢Q0との間の骨格的姿勢である骨格的姿勢Q12及びQ13と順に変化させて、骨格的姿勢Q0に移行させるのがよい。
アバター動き設定部4は、静止状態の骨格的姿勢Q0とするよう制御するユーザ端末20と、特定の動きの骨格的姿勢とするよう制御するユーザ端末20とを設けてもよい。アバター動き設定部4は、ユーザ端末20に割り当てられているIDが奇数であるか偶数であるかによって、静止状態の骨格的姿勢Q0とするか特定の動きの骨格的姿勢とするかを選択してもよい。アバター動き設定部4は、自己のアバターAvを見ている他のアバターAvの数が多い場合には特定の動きの骨格的姿勢を選択し、少ない場合には静止状態の骨格的姿勢Q0を選択してもよい。
アバター動き設定部4は、トラッキング外れが発生する直前のアバターAvの動きが大きければ特定の動きの骨格的姿勢を選択し、小さければ静止状態の骨格的姿勢Q0を選択してもよい。特定姿勢データ保持部5に、複数の特定の動きとするための特定姿勢データが保持されていてもよい。アバター動き設定部4は、トラッキング外れが発生する直前のアバターAvの動きに応じて、複数の特定の動きの骨格的姿勢のうちからいずれかの特定の動きの骨格的姿勢を選択してもよい。ユーザが、静止状態の骨格的姿勢Q0と特定の動きの骨格的姿勢とを選択してもよい。
ところで、ネットワーク50を介してアバター制御サーバ10aに接続されているユーザ端末20の数が過度に多くなると、アバター生成部7が各ユーザに対応するアバターAvを描画するための描画負荷が過大となったり、アバター制御サーバ10aとユーザ端末20との間の通信負荷が過大となったりする。そこで、第1実施形態においては、描画負荷及び通信負荷を軽減するために、アバター制御装置101を以下のように構成している。
制御部9は、通信部1が通信するユーザ端末20の数を取得する。制御部9は、アバター制御サーバ10aに接続されたユーザ端末20の数が所定の数を超えるとき、少なくとも一部のユーザ端末20に、動き検出信号(または骨格動き信号)をアバター制御サーバ10aに送信しないように指示する指示信号を送信する。指示信号を取得して、動き検出信号をアバター制御サーバ10aに送信しないように指示されたユーザ端末20は、アバター制御サーバ10aへの動き検出信号の送信を停止する。従って、アバター制御サーバ10aとユーザ端末20との間の通信負荷が軽減される。
また、アバター制御サーバ10aへの動き検出信号の送信を停止したユーザ端末20は、アバター制御装置101において上記のトラッキング外れの状態となる。アバター制御サーバ10aへの動き検出信号の送信を停止したユーザ端末20のユーザに対応するアバターAvは、静止状態とされるか特定の動きのみをすることになる。従って、アバター生成部7における描画負荷が軽減される。
制御部9は、次のようにして動き検出信号をアバター制御サーバ10aに送信しないように指示するユーザ端末20を選択すればよい。第1の例として、制御部9は、ユーザ端末20に割り当てられているIDに基づき、動き検出信号をアバター制御サーバ10aに送信しないように指示するユーザ端末20を選択する。例えば、制御部9は、IDが奇数であるか偶数であるかによってユーザ端末20を2つのグループに分け、一方のグループのユーザ端末20に、動き検出信号をアバター制御サーバ10aに送信しないように指示する。
第2の例として、制御部9は、自己のアバターAvを見ている他のアバターAvの数が少ないアバターAvに対応するユーザのユーザ端末20を、動き検出信号をアバター制御サーバ10aに送信しないように指示するユーザ端末20として選択する。制御部9は、各アバターAvの仮想空間内の位置、各アバターAvが向いている方向を把握している。各アバターAvの視野は予め設定されている。
図7Aは、自己のアバターAv10を見ている他のアバターAvがアバターAv11の1体のみである状態を示している。図7Bは、自己のアバターAv10を見ている他のアバターAvがアバターAv11~Av14の4体である状態を示している。図7Aと図7Bとを比較すると、動いている自己のアバターAv10が突然静止状態となったときに、他のアバターAvに対応するユーザに違和感を覚えさせる程度が大きいのは、他のアバターAvの数が多い図7Bの場合である。
そこで、制御部9は、自己のアバターAv10を見ている他のアバターAvが1体も存在しないアバターAvに対応するユーザのユーザ端末20を、動き検出信号をアバター制御サーバ10aに送信しないように指示するユーザ端末20として最優先に選択する。制御部9は、選択したユーザ端末20を除いてもなおアバター制御サーバ10aに接続されたユーザ端末20の数が上記の所定の数を超えるとき、自己のアバターAv10を見ている他のアバターAvがより少ないアバターAvに対応するユーザのユーザ端末20を選択する。
制御部9は、選択したユーザ端末20を除いて、アバター制御サーバ10aに接続されたユーザ端末20の数が上記の所定の数以下となるまで、動き検出信号をアバター制御サーバ10aに送信しないように指示するユーザ端末20を選択すればよい。
図8に示すフローチャートを用いて、第1実施形態に係るアバター制御装置101の動作、第1実施形態に係るアバター制御方法、及び第1実施形態に係るアバター制御プログラムがコンピュータに実行させる処理を説明する。図8において、アバター制御装置101の処理が開始されると、制御部9は、ステップS1にて、接続されているユーザ端末20の数が所定の数を超えるか否かを判定する。ユーザ端末20の数が所定の数を超えていれば(YES)、制御部9は、ステップS2にて、少なくとも一部のユーザ端末20にユーザの動き検出信号の送信停止を指示して、処理をステップS10に移行させる。ユーザ端末20の数が所定の数を超えていなければ(NO)、制御部9は処理をステップS10に移行させる。
ステップS1と並行して、トラッキング外れ検出部3は、ステップS3にて、トラッキングが外れたユーザ端末が存在するか否かを判定する。トラッキングが外れたユーザ端末20が存在すれば(YES)、トラッキング外れ検出部3は、ステップS4にて、該当するユーザ端末20のユーザに対応するアバターを静止状態とするようアバター動き設定部4に通知する。ステップS4に続けて、また、ステップS3にてトラッキングが外れたユーザ端末20が存在しなければ(NO)、アバター動き設定部4は、ステップS5にて、各アバターAvの動きをアバター制御信号生成部6に指示する。
アバター制御信号生成部6は、ステップS6にて、アバター制御信号を生成する。アバター生成部7は、ステップS7にて、アバターAvを生成する。レンダリング部8は、ステップS8にて、仮想空間内にアバターAvを位置させるようレンダリングする。通信部1は、ステップS9にて、レンダリング画像を各ユーザ端末20に送信する。
アバター制御装置101は、ステップS10にて、アバター制御動作を終了するか否かを判定する。アバター制御動作を終了しなければ(NO)、アバター制御装置101は処理をステップS1及びS3に戻し、以降の処理を繰り返す。アバター制御動作を終了すれば(YES)、アバター制御装置101は処理を終了させる。
以上のように、第1実施形態に係るアバター制御装置101は、各ユーザに対応するアバターAvを描画して各アバターを生成するアバター生成部7と、アバター生成部7が生成するアバターAvの数に応じて、少なくとも一部のユーザの動きをアバターAvに反映させるか否かを設定するアバター動き設定部4とを備える。第1実施形態に係るアバター制御方法及びアバター制御プログラムは、各ユーザに対応するアバターAvを描画して各アバターを生成し、生成するアバターAvの数に応じて、少なくとも一部のユーザの動きをアバターAvに反映させるか否かを設定する。
従って、第1実施形態に係るアバター制御装置101、アバター制御方法、及びアバター制御プログラムによれば、描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターAvを生成するよう制御することができる。
アバター動き設定部4は、ユーザの動きを反映させないアバターAvを、静止状態または特定の動きに設定するのがよい。
第1実施形態に係るアバター制御装置101は、各ユーザ端末20とネットワーク50を介して接続されているアバター制御サーバ10aに設けられている。各ユーザ端末20は、各ユーザの動きを検出する動きセンサ21が生成する動き検出信号またはその動き検出信号に基づいて生成された各ユーザの骨格動き信号をアバター制御サーバ10aに送信する。
アバター制御装置101は、アバター制御サーバ10aに接続されているユーザ端末20の数を取得する。アバター制御装置101は、アバター制御サーバ10aに接続されているユーザ端末20の数が所定の数を超えるとき、少なくとも一部のユーザ端末20に、動き検出信号または骨格動き信号をアバター制御サーバ10aに送信しないように指示する制御部9を備える。従って、描画負荷または通信負荷が過大となることを防ぐアバター制御装置101を実現することができる。
<第2実施形態>
図9に示す第2実施形態において、第1実施形態と同一の箇所には同一の符号を付し、その説明を省略することがある。図9に示すように、アバター制御サーバ10bとユーザ端末20d~20fがネットワーク50を介して接続されている。ユーザ端末20d~20fのいずれかを特定しないユーザ端末、及び図示していない他の任意のユーザ端末をユーザ端末20と称することとする。ネットワーク50を介してアバター制御サーバ10bに接続されているユーザ端末20の数は、1またはそれ以上の任意の数である。
図9に示す第2実施形態において、第1実施形態と同一の箇所には同一の符号を付し、その説明を省略することがある。図9に示すように、アバター制御サーバ10bとユーザ端末20d~20fがネットワーク50を介して接続されている。ユーザ端末20d~20fのいずれかを特定しないユーザ端末、及び図示していない他の任意のユーザ端末をユーザ端末20と称することとする。ネットワーク50を介してアバター制御サーバ10bに接続されているユーザ端末20の数は、1またはそれ以上の任意の数である。
各ユーザ端末20はアバター制御装置222を備える。各ユーザ端末20は、第1実施形態のユーザ端末20と異なる構成として、動き検出部202、トラッキング外れ検出部203、アバター動き設定部204、特定姿勢データ保持部205、アバター制御信号生成部206、アバター生成部207、レンダリング部208、記憶部209を備える。アバター生成部207は演算部2071を含む。アバター制御サーバ10bは、通信部1、制御部9、アバター・背景設定部12、アバター位置管理部110を備える。
アバター制御装置222は、プロセッサ及びメモリを含むコンピュータで構成することができる。特定姿勢データ保持部205及び記憶部209はコンピュータのメモリで構成することができる。アバター制御装置222の動きセンサ21、操作部23、通信部24、画像表示部25、特定姿勢データ保持部205及び記憶部209以外の部分はコンピュータのプロセッサで構成することができる。
動き検出部202は、動き検出部2と同様に、各ユーザの骨格動き信号を生成する。骨格動き信号は、トラッキング外れ検出部203、アバター動き設定部204、通信部24に供給される。通信部24は、骨格動き信号をアバター制御サーバ10bに送信する。アバター制御サーバ10bの通信部1は、各ユーザ端末20から送信された骨格動き信号を受信する。通信部1は、制御部9による制御に従って、他の全てのユーザ端末20から送信された骨格動き信号を各ユーザ端末20に送信する。
図9に示す例では、通信部1は、ユーザ端末20e及び20fより受信した骨格動き信号をユーザ端末20dに送信する。通信部1は、ユーザ端末20d及び20fより受信した骨格動き信号をユーザ端末20eに送信する。通信部1は、ユーザ端末20d及び20eより受信した骨格動き信号をユーザ端末20fに送信する。
トラッキング外れ検出部203は、自己のユーザ端末20における動き検出部202より供給される骨格動き信号、及び他のユーザ端末20における動き検出部202が生成した骨格動き信号に基づいて、各ユーザ端末20におけるトラッキング外れの有無を検出する。トラッキング外れ検出部203は、いずれかのユーザ端末20においてトラッキング外れが発生したことを検出すると、アバター動き設定部204にトラッキング外れが発生したことを通知する。
アバター動き設定部204は、トラッキング外れが発生したことが通知されていなければ、アバターAvに骨格動き信号に応じた動きをさせるようアバター制御信号生成部206に指示する。アバター制御信号生成部206は、アバターAvに骨格動き信号に応じた動きをさせるよう制御するアバター制御信号を生成してアバター生成部207に供給する。アバター生成部207の演算部2071は、骨格動き信号に応じた動きをするアバターAvを描画してアバターAv生成する。
アバター制御サーバ10bのアバター・背景設定部12に設定されているアバターAvの形態を示す情報、人間の体の部位とアバターAvのどの部位が対応するのかの対応関係を示す情報、背景データは、各ユーザ端末20に送信されて記憶部209に記憶される。レンダリング部8は、記憶部209から背景データを取得し、背景データに基づく仮想空間内にアバターAvを位置させるようレンダリングする。
各ユーザ端末20の制御部22は、操作部23の操作に応じてアバターAvを移動させる移動制御信号を生成する。制御部22は、自己のユーザ端末20のユーザに対応するアバターAvを仮想空間内で移動制御信号に従って移動させるようレンダリング部208を制御する。移動制御信号は、アバター制御サーバ10bに送信される。アバター位置管理部110は、全てのユーザ端末20からの移動制御信号を取得して、各アバターAvの仮想空間内での位置を管理する。
通信部1は、制御部9による制御に従って、他の全てのユーザ端末20から送信された移動制御信号を各ユーザ端末20に送信する。図9に示す例では、通信部1は、ユーザ端末20e及び20fより受信した移動制御信号をユーザ端末20dに送信する。通信部1は、ユーザ端末20d及び20fより受信した移動制御信号をユーザ端末20eに送信する。通信部1は、ユーザ端末20d及び20eより受信した移動制御信号をユーザ端末20fに送信する。制御部22は、他のユーザ端末20のユーザに対応するアバターAvを仮想空間内で移動制御信号に従って移動させるようレンダリング部208を制御する。
画像表示部25は、レンダリング部208が生成したレンダリング画像を表示する。ユーザは、画像表示部25に表示されているレンダリング画像を見ながら、自分自身の姿勢を変化させてアバターAvの姿勢を変化させたり、仮想空間内でアバターAvを移動させたりすることができる。
特定姿勢データ保持部205には、アバターAvを静止状態または特定の動きとするための特定姿勢データが保持されている。トラッキング外れ検出部203がトラッキング外れを検出したときのアバター動き設定部204の動作はアバター動き設定部4と同様である。
第2実施形態においては、描画負荷及び通信負荷を軽減するために、アバター制御サーバ10bを以下のように構成している。制御部9は、アバター制御サーバ10bに接続されていて、通信部1が通信するユーザ端末20の数を取得する。制御部9は、アバター制御サーバ10bに接続されているユーザ端末20の数が所定の数を超えるとき、少なくとも一部のユーザ端末20に、骨格動き信号をアバター制御サーバ10bに送信しないように指示する指示信号を送信する。指示信号を取得して、骨格動き信号をアバター制御サーバ10bに送信しないように指示されたユーザ端末20は、アバター制御サーバ10bへの骨格動き信号の送信を停止する。従って、アバター制御サーバ10bとユーザ端末20との間の通信負荷が軽減される。
また、アバター制御サーバ10bへの骨格動き信号の送信を停止したユーザ端末20のユーザに対応するアバターAvは、他のユーザ端末20においてトラッキング外れの状態となる。アバター制御サーバ10bへの骨格動き信号の送信を停止したユーザ端末20のユーザに対応するアバターAvは、静止状態とされるか特定の動きのみをすることになる。従って、アバター生成部207における描画負荷が軽減される。
制御部9が、骨格動き信号をアバター制御サーバ10bに送信しないように指示するユーザ端末20の選択の仕方は、第1実施形態における動き検出信号をアバター制御サーバ10aに送信しないように指示するユーザ端末20の選択の仕方と同様でよい。
図10に示すフローチャートを用いて、第2実施形態に係るアバター制御装置222の動作、第2実施形態に係るアバター制御方法、及び第2実施形態に係るアバター制御プログラムがコンピュータに実行させる処理を説明する。図10において、アバター制御装置222の処理が開始されると、制御部22は、ステップS21にて、骨格動き信号の送信停止を指示されたか否かを判定する。骨格動き信号の送信停止を指示されていれば(YES)、通信部24は、ステップS22にて、骨格動き信号の送信を停止して、制御部22は処理をステップS210に移行させる。骨格動き信号の送信停止を指示されてなければ(NO)、制御部22は処理をステップS210に移行させる。
ステップS21と並行して、トラッキング外れ検出部203は、ステップS23にて、トラッキングが外れたユーザ端末が存在するか否かを判定する。トラッキングが外れたユーザ端末20が存在すれば(YES)、トラッキング外れ検出部203は、ステップS24にて、該当するユーザ端末20のユーザに対応するアバターを静止状態とするようアバター動き設定部204に通知する。ステップS24に続けて、また、ステップS23にてトラッキングが外れたユーザ端末20が存在しなければ(NO)、アバター動き設定部204は、ステップS25にて、各アバターAvの動きをアバター制御信号生成部206に指示する。
アバター制御信号生成部206は、ステップS26にて、アバター制御信号を生成する。アバター生成部207は、ステップS27にて、アバターAvを生成する。レンダリング部208は、ステップS28にて、仮想空間内にアバターAvを位置させるようレンダリングする。画像表示部25は、ステップS29にて、レンダリング画像を表示する。
アバター制御装置222は、ステップS210にて、アバター制御動作を終了するか否かを判定する。アバター制御動作を終了しなければ(NO)、アバター制御装置222は処理をステップS21及びS23に戻し、以降の処理を繰り返す。アバター制御動作を終了すれば(YES)、アバター制御装置222は処理を終了させる。
以上のように、第2実施形態に係るアバター制御装置222は、各ユーザに対応するアバターAvを描画して各アバターを生成するアバター生成部207と、アバター生成部207が生成するアバターAvの数に応じて、少なくとも一部のユーザの動きをアバターAvに反映させるか否かを設定するアバター動き設定部204とを備える。第2実施形態に係るアバター制御方法及びアバター制御プログラムは、各ユーザに対応するアバターAvを描画して各アバターを生成し、生成するアバターAvの数に応じて、少なくとも一部のユーザの動きをアバターAvに反映させるか否かを設定する。
従って、第2実施形態に係るアバター制御装置222、アバター制御方法、及びアバター制御プログラムによれば、描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターAvを生成するよう制御することができる。
アバター動き設定部204は、ユーザの動きを反映させないアバターAvを、静止状態または特定の動きに設定するのがよい。
第2実施形態に係るアバター制御装置222は、各ユーザ端末20に設けられている。各ユーザ端末20は、各ユーザの動きを取得する動きセンサ21が生成する動き検出信号に基づいて生成された各ユーザの骨格動き信号をアバター制御サーバ10bに送信する。各ユーザ端末20のアバター制御装置222は、自己のユーザ端末20以外の他のユーザ端末20が生成した骨格動き信号をアバター制御サーバ10bから取得する。
アバター制御サーバ10bは、アバター制御サーバに10bに接続されているユーザ端末20の数が所定の数を超えるとき、少なくとも一部のユーザ端末20に骨格動き信号をアバター制御サーバ10bに送信しないように指示する指示信号を送信する。従って、少なくとも一部のユーザ端末20のアバター制御装置222は、アバター制御サーバ10bから送信された指示信号を取得する。
アバター制御装置222は、指示信号を取得すると、骨格動き信号をアバター制御サーバ10bに送信しないよう制御する制御部22を備える。従って、第2実施形態によれば、描画負荷または通信負荷が過大となることを防ぐアバター制御装置222を実現することができる。
<第3実施形態>
図1に示すように、アバター制御サーバ10aは、アバター制御装置101と同様の構成を有する第3実施形態に係るアバター制御装置103を備える。図11に示すフローチャートを用いて、第3実施形態に係るアバター制御装置103の動作、第3実施形態に係るアバター制御方法、及び第3実施形態に係るアバター制御プログラムがコンピュータに実行させる処理を説明する。
図1に示すように、アバター制御サーバ10aは、アバター制御装置101と同様の構成を有する第3実施形態に係るアバター制御装置103を備える。図11に示すフローチャートを用いて、第3実施形態に係るアバター制御装置103の動作、第3実施形態に係るアバター制御方法、及び第3実施形態に係るアバター制御プログラムがコンピュータに実行させる処理を説明する。
図11において、アバター制御装置103の処理が開始されると、制御部9は、ステップS31にて、接続されているユーザ端末20の数が所定の数を超えるか否かを判定する。ユーザ端末20の数が所定の数を超えていれば(YES)、制御部9は、ステップS32にて、動きが所定の大きさ以下であるアバターに対応するユーザのユーザ端末20に動き検出信号の送信停止を指示して、処理をステップS310に移行させる。ユーザ端末20の数が所定の数を超えていなければ(NO)、制御部9は処理をステップS310に移行させる。ステップS33~S310は、図8のステップS3~S10と同じである。
第3実施形態に係るアバター制御装置103は、各ユーザに対応するアバターAvを描画して各アバターを生成するアバター生成部7と、各ユーザの動きを取得する動きセンサ21が生成する動き検出信号に基づいて、各アバターの動きを設定するアバター動き設定部4とを備える。アバター動き設定部4は、アバター生成部7が生成するアバターの数が所定の数を超えるとき、動きが所定の大きさ以下であるアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態または特定の動きに設定する。ここでの特定の動きは、上記の所定の大きさ未満の動きとするのがよい。
第3実施形態に係るアバター制御方法及びアバター制御プログラムは、各ユーザに対応するアバターを描画して各アバターを生成し、各ユーザの動きを取得する動きセンサ21が生成する動き検出信号に基づいて、各アバターの動きを設定する。第3実施形態に係るアバター制御方法及びアバター制御プログラムは、生成するアバターの数が所定の数を超えるとき、動きが所定の大きさ以下であるユーザに対応するアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態または特定の動きに設定する。
従って、第3実施形態に係るアバター制御装置103、アバター制御方法、及びアバター制御プログラムによれば、描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターAvを生成するよう制御することができる。動きが所定の大きさ以下であるアバターはさほど重要な動きをしてしないと考えられるから、静止状態に設定しても、静止状態に設定したアバターに対応するユーザ以外の他のユーザが違和感を覚えることは少ない。
第3実施形態に係るアバター制御装置103、アバター制御方法、及びアバター制御プログラムは、生成するアバターの数が所定の数を超えるか否かにかかわらず、動きが所定の大きさ以下であるユーザに対応するアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態または特定の動きに設定してもよい。
<第4実施形態>
図9に示すように、各ユーザ端末20は、アバター制御装置222と同様の構成を有する第4実施形態に係るアバター制御装置224を備える。アバター制御サーバ10bの制御部9は、アバター制御サーバ10bに接続されているユーザ端末20の数が所定の数を超えるとき、各ユーザ端末20から送信される骨格動き信号に基づいて、動きが所定の大きさ以下であるアバターに対応するユーザのユーザ端末20に、骨格動き信号をアバター制御サーバ10bに送信しないように指示する。骨格動き信号をアバター制御サーバ10bに送信しないように指示されたユーザ端末20は、アバター制御サーバ10bへの骨格動き信号の送信を停止する。
図9に示すように、各ユーザ端末20は、アバター制御装置222と同様の構成を有する第4実施形態に係るアバター制御装置224を備える。アバター制御サーバ10bの制御部9は、アバター制御サーバ10bに接続されているユーザ端末20の数が所定の数を超えるとき、各ユーザ端末20から送信される骨格動き信号に基づいて、動きが所定の大きさ以下であるアバターに対応するユーザのユーザ端末20に、骨格動き信号をアバター制御サーバ10bに送信しないように指示する。骨格動き信号をアバター制御サーバ10bに送信しないように指示されたユーザ端末20は、アバター制御サーバ10bへの骨格動き信号の送信を停止する。
第4実施形態に係るアバター制御装置224の動作、第4実施形態に係るアバター制御方法、及び第4実施形態に係るアバター制御プログラムは、図10と同様である。
第4実施形態に係るアバター制御装置224は、各ユーザに対応するアバターAvを描画して各アバターを生成するアバター生成部207と、各ユーザの動きを取得する動きセンサ21が生成する動き検出信号に基づいて、各アバターの動きを設定するアバター動き設定部204とを備える。アバター動き設定部204は、アバター生成部207が生成するアバターの数が所定の数を超えるとき、動きが所定の大きさ以下であるアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態に設定する。
第4実施形態に係るアバター制御方法及びアバター制御プログラムは、各ユーザに対応するアバターを描画して各アバターを生成し、各ユーザの動きを取得する動きセンサ21が生成する動き検出信号に基づいて、各アバターの動きを設定する。第4実施形態に係るアバター制御方法及びアバター制御プログラムは、生成するアバターの数が所定の数を超えるとき、動きが所定の大きさ以下であるユーザに対応するアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態に設定する。
従って、第4実施形態に係るアバター制御装置224、アバター制御方法、及びアバター制御プログラムによれば、描画負荷または通信負荷が過大となることを防ぎながら、ユーザに対応するアバターAvを生成するよう制御することができる。動きが所定の大きさ以下であるアバターはさほど重要な動きをしてしないと考えられるから、静止状態に設定しても、静止状態に設定したアバターに対応するユーザ以外の他のユーザが違和感を覚えることは少ない。
第4実施形態に係るアバター制御装置224、アバター制御方法、及びアバター制御プログラムは、生成するアバターの数が所定の数を超えるか否かにかかわらず、動きが所定の大きさ以下であるユーザに対応するアバターを、動きセンサ21が生成する動き検出信号とは無関係に静止状態または特定の動きに設定してもよい。
本発明は以上説明した第1~第4実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々変更可能である。
1,24 通信部
2,202 動き検出部
3,203 トラッキング外れ検出部
4,204 アバター動き設定部
5,205 特定姿勢データ保持部
6,206 アバター制御信号生成部
7,207 アバター生成部
8,208 レンダリング部
9,22 制御部
10a,10b アバター制御サーバ
11 アバター位置制御部
12 アバター・背景設定部
20a,20b,20c,20d,20e,20f ユーザ端末
21 動きセンサ
23 操作部
25 画像表示部
50 ネットワーク
101,103,222,224 アバター制御装置
110 アバター位置管理部
209 記憶部
2,202 動き検出部
3,203 トラッキング外れ検出部
4,204 アバター動き設定部
5,205 特定姿勢データ保持部
6,206 アバター制御信号生成部
7,207 アバター生成部
8,208 レンダリング部
9,22 制御部
10a,10b アバター制御サーバ
11 アバター位置制御部
12 アバター・背景設定部
20a,20b,20c,20d,20e,20f ユーザ端末
21 動きセンサ
23 操作部
25 画像表示部
50 ネットワーク
101,103,222,224 アバター制御装置
110 アバター位置管理部
209 記憶部
Claims (4)
- 各ユーザに対応するアバターを描画して各アバターを生成するアバター生成部と、
前記各ユーザの動きを取得する動きセンサが生成する動き検出信号に基づいて、前記各アバターの動きを設定するアバター動き設定部と、
を備え、
前記アバター動き設定部は、動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定する
アバター制御装置。 - 前記アバター動き設定部は、前記アバター生成部が生成するアバターの数が所定の数を超えるとき、動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定する請求項1に記載のアバター制御装置。
- 各ユーザに対応するアバターを描画して各アバターを生成し、
前記各ユーザの動きを取得する動きセンサが生成する動き検出信号に基づいて、前記各アバターの動きを設定し、
動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定する
アバター制御方法。 - コンピュータに、
各ユーザに対応するアバターを描画して各アバターを生成するステップと、
前記各ユーザの動きを取得する動きセンサが生成する動き検出信号に基づいて、前記各アバターの動きを設定するステップと、
動きが所定の大きさ以下であるアバターを、前記動きセンサが生成する動き検出信号とは無関係に静止状態または特定の動きに設定するステップと、
を実行させるアバター制御プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022133596A JP2024030610A (ja) | 2022-08-24 | 2022-08-24 | アバター制御装置、アバター制御方法、及びアバター制御プログラム |
PCT/JP2023/023557 WO2024042843A1 (ja) | 2022-08-24 | 2023-06-26 | アバター制御装置、アバター制御方法、及びアバター制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022133596A JP2024030610A (ja) | 2022-08-24 | 2022-08-24 | アバター制御装置、アバター制御方法、及びアバター制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024030610A true JP2024030610A (ja) | 2024-03-07 |
Family
ID=90012913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022133596A Pending JP2024030610A (ja) | 2022-08-24 | 2022-08-24 | アバター制御装置、アバター制御方法、及びアバター制御プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2024030610A (ja) |
WO (1) | WO2024042843A1 (ja) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5837860B2 (ja) * | 2012-06-11 | 2015-12-24 | Kddi株式会社 | 動き類似度算出装置、動き類似度算出方法およびコンピュータプログラム |
JP7098676B2 (ja) * | 2020-03-24 | 2022-07-11 | グリー株式会社 | 動画用アプリケーションプログラム、動画のオブジェクト描画方法、動画配信システム、動画配信サーバ及び動画配信方法 |
-
2022
- 2022-08-24 JP JP2022133596A patent/JP2024030610A/ja active Pending
-
2023
- 2023-06-26 WO PCT/JP2023/023557 patent/WO2024042843A1/ja unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024042843A1 (ja) | 2024-02-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220232191A1 (en) | Content distribution device, content distribution program, content distribution method, content display device, content display program, and content display method | |
EP3065030A1 (en) | Control system and method for virtual navigation | |
US12017351B2 (en) | Remote control system, information processing method, and non-transitory computer-readable recording medium | |
US20230076335A1 (en) | Remote control system, and remote operation apparatus, video image processing apparatus, and computer-readable medium | |
KR102503337B1 (ko) | 이미지 디스플레이 방법, 장치 및 시스템 | |
US11531401B2 (en) | Data replacement apparatus, computing device, and program for user and avatar coordination | |
JP2021135776A (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP7040521B2 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP2017121082A (ja) | プログラム及びコンピュータ | |
WO2024042842A1 (ja) | アバター制御装置、アバター制御方法、及びアバター制御プログラム | |
WO2024042843A1 (ja) | アバター制御装置、アバター制御方法、及びアバター制御プログラム | |
JP6223614B1 (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP2023095862A (ja) | プログラム及び情報処理方法 | |
US11610343B2 (en) | Video display control apparatus, method, and non-transitory computer readable medium | |
US20230260235A1 (en) | Information processing apparatus, information processing method, and information processing system | |
JP7257986B2 (ja) | コンテンツ配信装置、コンテンツ配信プログラム、コンテンツ配信方法、コンテンツ表示装置、コンテンツ表示プログラムおよびコンテンツ表示方法 | |
CN109756728B (zh) | 图像显示方法及装置,电子设备,计算机可读存储介质 | |
WO2023204104A1 (ja) | 仮想空間提供装置 | |
WO2023242981A1 (ja) | ヘッドマウントディスプレイ、ヘッドマウントディスプレイシステム、および、ヘッドマウントディスプレイの表示方法 | |
WO2023135941A1 (ja) | 情報処理装置、および情報処理システム、並びに情報処理方法 | |
JP2023070410A (ja) | 映像提示装置、プログラム及び映像提示方法 | |
WO2022220208A1 (ja) | データ処理装置、データ処理方法、プログラム及びデータ処理システム | |
JP7439431B2 (ja) | 情報配信装置、情報生成方法、及び情報生成プログラム | |
JP2018163637A (ja) | 情報処理方法、情報処理プログラム、情報処理システム及び情報処理装置 | |
JP2017097918A (ja) | 画像表示方法及びプログラム |