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

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

▶ 株式会社NTTドコモの特許一覧

<>
  • 特開-位置計算装置 図1
  • 特開-位置計算装置 図2
  • 特開-位置計算装置 図3
  • 特開-位置計算装置 図4
  • 特開-位置計算装置 図5
  • 特開-位置計算装置 図6
  • 特開-位置計算装置 図7
  • 特開-位置計算装置 図8
  • 特開-位置計算装置 図9
  • 特開-位置計算装置 図10
  • 特開-位置計算装置 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183640
(43)【公開日】2023-12-28
(54)【発明の名称】位置計算装置
(51)【国際特許分類】
   G06T 13/40 20110101AFI20231221BHJP
【FI】
G06T13/40
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022097260
(22)【出願日】2022-06-16
(71)【出願人】
【識別番号】392026693
【氏名又は名称】株式会社NTTドコモ
(74)【代理人】
【識別番号】100088155
【弁理士】
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100113435
【弁理士】
【氏名又は名称】黒木 義樹
(74)【代理人】
【識別番号】100121980
【弁理士】
【氏名又は名称】沖山 隆
(74)【代理人】
【識別番号】100128107
【弁理士】
【氏名又は名称】深石 賢治
(72)【発明者】
【氏名】長田 知明
(72)【発明者】
【氏名】佐野 博之
【テーマコード(参考)】
5B050
【Fターム(参考)】
5B050AA10
5B050BA08
5B050BA09
5B050BA12
5B050DA01
5B050EA07
5B050EA09
5B050EA27
(57)【要約】
【課題】アバターの体の部位の位置をより正確に反映すること。
【解決手段】位置計算装置1は、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算する際に、ユーザの体の骨格とアバターの体の骨格との対応関係に基づいて計算する第一手法と、ユーザの体のうち対象部位以外の部位である基準部位と対象部位との位置関係と、ユーザの体の基準部位とアバターの体の基準部位との大きさ関係とに基づいて計算する第二手法と、に基づいて計算する計算部12を備える。第二手法は、ユーザの体における基準部位に対する対象部位の相対位置に、ユーザの体の基準部位とアバターの体の基準部位との大きさの比率を乗じて計算してもよい。計算部12は、第一手法にて計算されるアバターの体の対象部位の位置と、第二手法にて計算されるアバターの体の対象部位の位置とをそれぞれ重み付けして計算してもよい。
【選択図】図1
【特許請求の範囲】
【請求項1】
現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の前記対象部位の位置を計算する際に、
ユーザの体の骨格とアバターの体の骨格との対応関係に基づいて計算する第一手法と、
ユーザの体のうち前記対象部位以外の部位である基準部位と前記対象部位との位置関係と、ユーザの体の前記基準部位とアバターの体の前記基準部位との大きさ関係とに基づいて計算する第二手法と、
に基づいて計算する計算部を備える位置計算装置。
【請求項2】
前記第二手法は、ユーザの体における前記基準部位に対する前記対象部位の相対位置に、ユーザの体の前記基準部位とアバターの体の前記基準部位との大きさの比率を乗じて計算する、
請求項1に記載の位置計算装置。
【請求項3】
前記計算部は、前記第一手法にて計算されるアバターの体の前記対象部位の位置と、前記第二手法にて計算されるアバターの体の前記対象部位の位置とをそれぞれ重み付けして計算する、
請求項1に記載の位置計算装置。
【請求項4】
前記重み付けは、ユーザの体における前記基準部位と前記対象部位との距離に基づく、
請求項3に記載の位置計算装置。
【請求項5】
前記重み付けは、前記距離が長いほど前記第一手法の重みを大きくする、
請求項4に記載の位置計算装置。
【請求項6】
前記重み付けは、前記距離が短いほど前記第二手法の重みを大きくする、
請求項4に記載の位置計算装置。
【請求項7】
前記対象部位は手である、
請求項1に記載の位置計算装置。
【請求項8】
前記基準部位は頭、胸又は腰である、
請求項1に記載の位置計算装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の一側面は、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算する位置計算装置に関する。
【背景技術】
【0002】
下記特許文献1には、実空間上の複数の動作主体のモーションが反映されたモーションを行うように、仮想空間におけるアバターのモーションを動的に制御するプログラムが開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2019/203190号
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記プログラムでは、実空間上の動作主体の体と仮想空間におけるアバターの体との対応関係が考慮されていない。それゆえ、例えば、動作主体とアバターとの体形が大きく異なる場合、動作主体が手で頭を触るモーションを行っても、アバターも手で頭を触るモーションとはならず、アバターが空に手を挙げるモーションとなって反映されるなど、アバターの体の部位の位置を正確に反映できない。
【0005】
そこで、アバターの体の部位の位置をより正確に反映することが望まれている。
【課題を解決するための手段】
【0006】
本開示の一側面に係る位置計算装置は、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算する際に、ユーザの体の骨格とアバターの体の骨格との対応関係に基づいて計算する第一手法と、ユーザの体のうち対象部位以外の部位である基準部位と対象部位との位置関係と、ユーザの体の基準部位とアバターの体の基準部位との大きさ関係とに基づいて計算する第二手法と、に基づいて計算する計算部を備える。
【0007】
このような側面においては、アバターの体の対象部位の位置は、ユーザの体の骨格とアバターの体の骨格との対応関係と、ユーザの体の基準部位とアバターの体の基準部位との大きさ関係とに基づいて計算される。それゆえ、アバターの体の部位の位置をより正確に反映することができる。
【発明の効果】
【0008】
本開示の一側面によれば、アバターの体の部位の位置をより正確に反映することができる。
【図面の簡単な説明】
【0009】
図1】実施形態に係る位置計算装置の機能構成の一例を示す図である。
図2】モーションデータのアバターへの適用を説明する図である。
図3】リターゲットにおける課題の一例を説明する図である。
図4】リターゲットにおける課題の別の一例を説明する図である。
図5】リターゲットによるモーションデータのアバターへの適用を説明する図である。
図6】第二手法における適用元モデルを説明する図である。
図7】第二手法における適用先モデルを説明する図である。
図8】重み付けのイメージを説明するための図である。
図9】実施形態に係る位置計算装置が実行する処理の一例を示すフローチャートである。
図10】実施形態に係る位置計算装置によるモーションデータのアバターへの適用を説明する図である。
図11】実施形態に係る位置計算装置で用いられるコンピュータのハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【0010】
以下、図面を参照しながら本開示での実施形態を詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。また、以下の説明における本開示での実施形態は、本発明の具体例であり、特に本発明を限定する旨の記載がない限り、これらの実施形態に限定されないものとする。
【0011】
図1は、実施形態に係る位置計算装置1の機能構成の一例を示す図である。位置計算装置1は、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算するコンピュータ装置である。ユーザは、人を想定するが、動物又はロボットなどの動くものであってもよい。対象部位は手であってもよい。本実施形態では対象部位として手を想定するが、足など他の任意の体の部位であってもよい。
【0012】
位置計算装置1の技術分野は、モーションキャプチャにより得られたモーションデータ(モーションキャプチャデータ/アニメーションデータ)を入力として、仮想空間内に描画されたアバターの動きを制御(アバター動作制御)するための手法及び装置に関する。図2は、モーションデータのアバターへの適用を説明する図である。図2のうち左図は、コンピュータのアプリケーション上において、現実空間におけるユーザ(の体)が撮像されたカメラ映像に対してモーションキャプチャが行われている場面を示す。図2のうち右図は、モーションキャプチャにより得られたデータなどを含むモーションデータを仮想空間におけるアバターへ適用して得られたアバターを示す。ユーザの体の各部位の位置がアバターの体の各部位の位置に反映される結果、図2に示す通り、ユーザが両手を挙げると、アバターも同様に両手を挙げる。すなわち、位置計算装置1は、モーションデータに基づいてアバターの動きを制御することができる。
【0013】
図1に示す通り、位置計算装置1は、機能ブロックとして、格納部10、入力部11、計算部12(計算部)及び出力部13を含んで構成される。
【0014】
位置計算装置1の各機能ブロックは、位置計算装置1内にて機能することを想定しているが、これに限るものではない。例えば、位置計算装置1の機能ブロックの一部は、位置計算装置1とは異なるコンピュータ装置であって、位置計算装置1とネットワーク接続されたコンピュータ装置内において、位置計算装置1と情報を適宜送受信しつつ機能してもよい。また、位置計算装置1の一部の機能ブロックは無くてもよいし、複数の機能ブロックを一つの機能ブロックに統合してもよいし、一つの機能ブロックを複数の機能ブロックに分解してもよい。
【0015】
以下、図1に示す位置計算装置1の各機能について説明する。
【0016】
格納部10は、位置計算装置1における算出などで利用される任意の情報及び位置計算装置1における算出の結果などを格納してもよい。格納部10によって格納された情報は、位置計算装置1の各機能によって適宜参照されてもよい。
【0017】
入力部11は、位置計算装置1に入力されるデータである入力データを入力する。入力部11は、他の装置からネットワークを介して、又は、後述の入力装置1005を介して入力データを入力してもよい。入力部11は、入力した入力データを格納部10によって格納させてもよいし、計算部12及び出力部13に出力してもよい。
【0018】
入力データは、モーションデータのアバターへの適用によるアバターの動きの制御において必要な任意のデータを含む。例えば、入力データは、モーションデータ、適用元モデル(ユーザ)の体の各部位の位置及び大きさ(例えば、頭の縦及び横のサイズ、肩幅など)、適用先モデル(アバター)の体の各部位の位置及び大きさ(例えば、頭の縦及び横のサイズ、肩幅など)、並びに、適用先モデルに関するその他の情報(パラメータ)を含んでもよい。
【0019】
計算部12は、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算する。より具体的には、計算部12は、格納部10によって格納された又は入力部11から入力された入力データに基づいて、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算し、計算結果を格納部10によって格納させる又は出力部13に出力する。
【0020】
計算部12は、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算する際に、ユーザの体の骨格とアバターの体の骨格との対応関係に基づいて計算する第一手法と、ユーザの体のうち対象部位以外の部位である基準部位と対象部位との位置関係と、ユーザの体の基準部位とアバターの体の基準部位との大きさ関係とに基づいて計算する第二手法と、に基づいて計算してもよい。
【0021】
基準部位は頭、胸又は腰であってもよい。本実施形態では基準部位として頭を想定するが、胸又は腰など他の任意の体の部位であってもよい。また、本実施形態では頭と顔を同列に扱う。本実施形態において、用語「頭」は「顔」に適宜読み替えてもよいし、用語「顔」は「頭」に適宜読み替えてもよい。
【0022】
第一手法は、既存技術であるリターゲットであってもよい。以下、リターゲットについて説明する。
【0023】
モーションデータ(骨格の動きのデータ)をキャラクター(アバター)に適用する場合、キャラクターの体格の違いがあるため直接当てはめることができない。例えば、大人の演者からキャプチャしたモーションデータを子どもの3Dモデルに対して適用する場合が挙げられる。そのような場合に、モーションデータとキャラクターとの骨格の違いを踏まえた上で、モーションデータの動きをキャラクターに寄せる手法としてリターゲット(キャラクターアニメーションのリターゲット)と呼ばれるものがある。
【0024】
リターゲットにおける課題として、リターゲットの処理は骨格と骨格との対応関係を見て行われるため、キャラクターの皮膚や衣服の形状(メッシュ)は考慮されない点が挙げられる。そのため皮膚と皮膚とが触れ合う場合及び衣服と触れ合う場合などにおいては、実際の距離感がリターゲットでは表現できないことがある。具体例としては、モーションデータを作成する際の人物の顔の大きさとキャラクターの顔の大きさとが異なる場合、手と顔の位置関係が異なることが起きる。具体例について、図3図5を用いて説明する。
【0025】
図3は、リターゲットにおける課題の一例を説明する図である。図3のうち左図は、現実空間におけるユーザのモーションデータを示す。モーションデータでは、ユーザが手(図中の「12」-「11」-「13」-「15」の線に対応)で頭を触れている(「15」の箇所)。図3のうち右図は、モーションデータをリターゲットして仮想空間におけるアバターへ適用して得られたアバターを示す。図3のアバターは、ユーザよりも小顔である。小顔なアバターでは、手(図中の「12」-「11」-「13」-「15」の線に対応)で頭を触れていない。すなわち、図3に示すモーションデータとアバターとでは、手と顔の位置関係が異なっている。
【0026】
図4は、リターゲットにおける課題の別の一例を説明する図である。図3との差分について説明する。図4のアバターは、ユーザよりも頭でっかちである。頭でっかちなアバターでは、手(図中の「12」-「11」-「13」の線に対応)が顔へめり込んでいる(「13」の次にあるはずの「15」が顔へめり込んでいる)。すなわち、図4に示すモーションデータとアバターとでは、手と顔の位置関係が異なっている。
【0027】
図5は、リターゲットによるモーションデータのアバターへの適用を説明する図である。図2との差分について説明する。図5のうち左図では、ユーザの両手が頭を触れている。図5のうち右図は、リターゲットによりモーションデータが適用されたアバターを示す。アバターの両手が頭を触れておらず、万歳をしているように示されている。すなわち、モーションデータとアバターとでは、手と顔の位置関係が異なっている。別の観点から言うと、適用元モデルと適用先モデルとで腕の長さが異なるため、適用先モデルでは頭を触ることができていない。
【0028】
以上、リターゲットについて説明した。
【0029】
第二手法は、ユーザの体における基準部位に対する対象部位の相対位置に、ユーザの体の基準部位とアバターの体の基準部位との大きさの比率を乗じて計算してもよい。第二手法による計算の具体例について、図6及び図7を用いて説明する。
【0030】
図6は、第二手法における適用元モデルを説明する図である。図6に示す座標(相対座標)において、原点(0,0)を中心として適用元モデル(ユーザ)の頭(基準部位)があり、頭に触れるように座標(x,y)に手(p)がある。第二手法では、まず、適用元モデルの頭の中心を原点として手首の相対座標pを算出する。p=(x,y)である。pは、適用元モデルにおけるスケールである。なお、適用元モデルの頭の縦幅はhであり(モーションデータから算出可能)、適用元モデルの頭の横幅はwである(モーションデータから算出可能)。
【0031】
図7は、第二手法における適用先モデルを説明する図である。図7に示す座標(相対座標)において、原点(0,0)を中心として適用先モデル(アバター)の頭(基準部位)がある。適用先モデルの頭の縦幅はhであり(パラメータとして入力)、適用先モデルの頭の横幅はwである(パラメータとして入力)。第二手法では、適用元モデルの頭サイズと適用後モデルの頭サイズとに基づいて、適用元モデルのpの座標を補正する。より具体的には、頭の横幅比率及び縦幅比率を用いてpを補正する。例えば、第二手法では、補正後のpであるp’を「p’=(x’,y’)」、ここで「x’=x・w/w」及び「y’=y・h/h」として計算する。補正後のp’は適用先モデルにおけるスケールである。第二手法では、算出したp’を、適用先モデルの頭の中心座標に加算することで、適用先モデルの手の絶対座標に変換する。
【0032】
以上の通り、計算部12による第二手法では、顔中心座標を算出し、手の相対座標を算出し、手の相対座標を絶対座標に変換する処理を行う。
【0033】
以上が、第二手法による、頭の中心を原点として手の位置を計算する手法である。
【0034】
計算部12は、第一手法にて計算されるアバターの体の対象部位の位置と、第二手法にて計算されるアバターの体の対象部位の位置とをそれぞれ重み付けして計算してもよい。例えば、第一手法(リターゲット)によって計算した手の位置をp rtとし、第二手法(頭の中心を原点とする)によって計算した手の位置をp poiとした場合、計算部12は、モーションデータ適用後の手の座標pを、上記2つの座標p rt及びp poiの重み付き和(座標重み付き和)とする下記式1によって計算する。なお、wは重み(ウェイト)である。
[式1] p=w・p rt+(1-w)・p poi
【0035】
重み付けは、ユーザの体における基準部位と対象部位との距離に基づいてもよい。重み付けは、距離が長いほど(距離が所定の基準よりも長いほど)第一手法の重みを大きくしてもよい。重み付けは、距離が短いほど(距離が所定の基準よりも短いほど)第二手法の重みを大きくしてもよい。上記式1に当てはめると、式1における重みwは、モーションデータにおける頭と手の中心との距離rが小さいほど「0」に近く(頭の中心を原点として計算した結果p poiが重視される)、遠いほど「1」に近い値を与える(リターゲットの結果p rtが重視される)。
【0036】
重みwの詳細について説明する。図8は、重み付けのイメージを説明するための図である。適用元モデルのモーションデータにおいて、手の位置が図8中の円1の内側にある時(w=0)、第一手法(頭の中心を原点とする)によって計算した結果のみが考慮される。また、手の位置が図8中の円2の外側にある時(w=1)、第二手法(リターゲット)によって計算した結果のみが考慮される。また、手の位置が図8中の円1の外側かつ円2の内側にある時(0<w<1)、第一手法(頭の中心を原点とする)によって計算した結果と第二手法(リターゲット)によって計算した結果との両方が考慮される。
【0037】
重みwの計算の一例として以下の式2が挙げられる。
[式2] w=min(max(0,(r-heighthead)/(widthshoulder-heighthead)),1)
【0038】
上記式2では、rがheighthead以下の時にw=0、widthshoulder以上の時にw=1となるようにしているが、これらは実施例の一つであり、他の値を使用してもよい。
【0039】
出力部13は、位置計算装置1から出力されるデータである出力データを出力する。より具体的には、出力部13は、格納部10によって格納された又は計算部12から入力された計算結果そのもの、又は、当該計算結果に基づいて所定の処理(例えばアバター(適用先モデル)に関する制御など)を行った結果の情報を出力データとして出力する。出力部13は、出力データを、ネットワークを介して他の装置に送信してもよいし、後述の出力装置1006を介して出力(表示)してもよい。
【0040】
続いて、図9を参照しながら、位置計算装置1が実行する処理の例を説明する。図9は、実施形態に係る位置計算装置1が実行する処理の一例を示すフローチャートである。
【0041】
まず、入力部11が、入力データを入力する(ステップS1)。次に、計算部12が、第一手法にて、アバターの体の対象部位の位置を計算する(ステップS2)。次に、計算部12が、第二手法にて、アバターの体の対象部位の位置を計算する(ステップS3)。次に、計算部12が、S2の計算結果及びS3の計算結果それぞれを重み付けして計算する(ステップS4)。次に、出力部13が、S4の計算結果に基づく出力データを出力する(ステップS5)。なお、S2とS3の順番は逆でもよい。
【0042】
図10は、実施形態に係る位置計算装置1によるモーションデータのアバターへの適用を説明する図である。図5と対比すると明らかな通り、アバターの両手は、ユーザの両手がユーザの頭に触れているのと同様に、アバターの頭を触れている。すなわち、位置計算装置1の効果として、例えば、適用元モデルと適用先モデルの体形が異なる場合においても、アバターが手で体の一部を触ることができるようになるという効果を奏し得る。
【0043】
続いて、実施形態に係る位置計算装置1の作用効果について説明する。
【0044】
位置計算装置1によれば、計算部12が、現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の対象部位の位置を計算する際に、ユーザの体の骨格とアバターの体の骨格との対応関係に基づいて計算する第一手法と、ユーザの体のうち対象部位以外の部位である基準部位と対象部位との位置関係と、ユーザの体の基準部位とアバターの体の基準部位との大きさ関係とに基づいて計算する第二手法と、に基づいて計算する。この構成により、アバターの体の対象部位の位置は、ユーザの体の骨格とアバターの体の骨格との対応関係と、ユーザの体の基準部位とアバターの体の基準部位との大きさ関係とに基づいて計算される。それゆえ、アバターの体の部位の位置をより正確に反映することができる。
【0045】
また、位置計算装置1において、第二手法は、ユーザの体における基準部位に対する対象部位の相対位置に、ユーザの体の基準部位とアバターの体の基準部位との大きさの比率を乗じて計算してもよい。この構成により、ユーザの体の基準部位とアバターの体の基準部位との大きさを考慮した、より正確な計算を行うことができる。
【0046】
また、位置計算装置1において、計算部12は、第一手法にて計算されるアバターの体の対象部位の位置と、第二手法にて計算されるアバターの体の対象部位の位置とをそれぞれ重み付けして計算してもよい。この構成により、第一手法及び第二手法のそれぞれのメリットを活かした、より正確な計算を行うことができる。
【0047】
また、位置計算装置1において、重み付けは、ユーザの体における基準部位と対象部位との距離に基づいてもよい。この構成により、距離に基づいて第一手法及び第二手法の重み付けを変更することができるため、ユーザの体の状況に応じたより正確な計算を行うことができる。
【0048】
また、位置計算装置1において、重み付けは、距離が長いほど第一手法の重みを大きくしてもよい。この構成により、距離が長いほどメリットが活かせる第一手法の計算結果を反映することができるので、より正確な計算を行うことができる。
【0049】
また、位置計算装置1において、重み付けは、距離が短いほど第二手法の重みを大きくしてもよい。この構成により、距離が短いほどメリットが活かせる第二手法の計算結果を反映することができるので、より正確な計算を行うことができる。
【0050】
また、位置計算装置1において、対象部位は手であってもよい。この構成により、アバターの手の位置をより正確に反映することができる。
【0051】
また、位置計算装置1において、基準部位は頭、胸又は腰であってもよい。この構成により、アバターの頭、胸又は腰を基準として対象部位の位置をより正確に反映することができる。
【0052】
上述の通り、図3図5を用いてリターゲットの問題を説明した。当該問題が発生する原因は、リターゲットでは骨格と紐付けられている皮膚や衣服の形状(メッシュ)のサイズを考慮していないためである。位置計算装置1は、モーションデータの適用元モデル(ユーザ)と適用先モデル(アバター)の体形が異なる場合においても、アバターが体の一部を触るアニメーションを再現することができる。なお、コンピュータグラフィックスの業界におけるメッシュとは、3D形状を表現するデータのことを指す。
【0053】
位置計算装置1によれば、リターゲットによって計算した手首の座標(A)と、頭の中心を原点として計算した手首の座標(B)の重み付き和を計算し、モーション適用後の手の位置pを計算する。(A)及び(B)には下記のようなメリットがある。この2つを適切な重みを与えて組み合わせることにより、それぞれのメリットを享受することが可能になる。すなわち、(A)のメリットとして、腕を伸ばすような大きな動きの表現力が高いことが挙げられる。また、(B)のメリットとして、体の一部に触れるといった細かな動きの表現力が高いことが挙げられる。
【0054】
本開示の位置計算装置1は、以下の構成を有する。
【0055】
[1]
現実空間におけるユーザの体の対象部位の位置から、仮想空間におけるアバターの体の前記対象部位の位置を計算する際に、
ユーザの体の骨格とアバターの体の骨格との対応関係に基づいて計算する第一手法と、
ユーザの体のうち前記対象部位以外の部位である基準部位と前記対象部位との位置関係と、ユーザの体の前記基準部位とアバターの体の前記基準部位との大きさ関係とに基づいて計算する第二手法と、
に基づいて計算する計算部を備える位置計算装置。
【0056】
[2]
前記第二手法は、ユーザの体における前記基準部位に対する前記対象部位の相対位置に、ユーザの体の前記基準部位とアバターの体の前記基準部位との大きさの比率を乗じて計算する、
[1]に記載の位置計算装置。
【0057】
[3]
前記計算部は、前記第一手法にて計算されるアバターの体の前記対象部位の位置と、前記第二手法にて計算されるアバターの体の前記対象部位の位置とをそれぞれ重み付けして計算する、
[1]又は[2]に記載の位置計算装置。
【0058】
[4]
前記重み付けは、ユーザの体における前記基準部位と前記対象部位との距離に基づく、
[3]に記載の位置計算装置。
【0059】
[5]
前記重み付けは、前記距離が長いほど前記第一手法の重みを大きくする、
[4]に記載の位置計算装置。
【0060】
[6]
前記重み付けは、前記距離が短いほど前記第二手法の重みを大きくする、
[4]又は[5]に記載の位置計算装置。
【0061】
[7]
前記対象部位は手である、
[1]~[6]の何れか一項に記載の位置計算装置。
【0062】
[8]
前記基準部位は頭、胸又は腰である、
[1]~[7]の何れか一項に記載の位置計算装置。
【0063】
なお、上記実施形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
【0064】
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知(broadcasting)、通知(notifying)、通信(communicating)、転送(forwarding)、構成(configuring)、再構成(reconfiguring)、割り当て(allocating、mapping)、割り振り(assigning)などがあるが、これらに限られない。たとえば、送信を機能させる機能ブロック(構成部)は、送信部(transmitting unit)や送信機(transmitter)と呼称される。いずれも、上述したとおり、実現方法は特に限定されない。
【0065】
例えば、本開示の一実施の形態における位置計算装置1などは、本開示の位置計算方法の処理を行うコンピュータとして機能してもよい。図11は、本開示の一実施の形態に係る位置計算装置1のハードウェア構成の一例を示す図である。上述の位置計算装置1は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
【0066】
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。位置計算装置1のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
【0067】
位置計算装置1における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサ1001が演算を行い、通信装置1004による通信を制御したり、メモリ1002及びストレージ1003におけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
【0068】
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。例えば、上述の入力部11、計算部12及び出力部13などは、プロセッサ1001によって実現されてもよい。
【0069】
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ1003及び通信装置1004の少なくとも一方からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、入力部11、計算部12及び出力部13は、メモリ1002に格納され、プロセッサ1001において動作する制御プログラムによって実現されてもよく、他の機能ブロックについても同様に実現されてもよい。上述の各種処理は、1つのプロセッサ1001によって実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
【0070】
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つによって構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本開示の一実施の形態に係る無線通信方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
【0071】
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つによって構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及びストレージ1003の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。
【0072】
通信装置1004は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。通信装置1004は、例えば周波数分割複信(FDD:Frequency Division Duplex)及び時分割複信(TDD:Time Division Duplex)の少なくとも一方を実現するために、高周波スイッチ、デュプレクサ、フィルタ、周波数シンセサイザなどを含んで構成されてもよい。
【0073】
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
【0074】
また、プロセッサ1001、メモリ1002などの各装置は、情報を通信するためのバス1007によって接続される。バス1007は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
【0075】
また、位置計算装置1は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つを用いて実装されてもよい。
【0076】
情報の通知は、本開示において説明した態様/実施形態に限られず、他の方法を用いて行われてもよい。
【0077】
本開示において説明した各態様/実施形態は、LTE(Long Term Evolution)、LTE-A(LTE-Advanced)、SUPER 3G、IMT-Advanced、4G(4th generation mobile communication system)、5G(5th generation mobile communication system)、FRA(Future Radio Access)、NR(new Radio)、W-CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi-Fi(登録商標))、IEEE 802.16(WiMAX(登録商標))、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及びこれらに基づいて拡張された次世代システムの少なくとも一つに適用されてもよい。また、複数のシステムが組み合わされて(例えば、LTE及びLTE-Aの少なくとも一方と5Gとの組み合わせ等)適用されてもよい。
【0078】
本開示において説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【0079】
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【0080】
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
【0081】
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
【0082】
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。
【0083】
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【0084】
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
【0085】
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0086】
なお、本開示において説明した用語及び本開示の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
【0087】
本開示において使用する「システム」及び「ネットワーク」という用語は、互換的に使用される。
【0088】
また、本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。
【0089】
上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。
【0090】
本開示で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assuming)」、「期待する(expecting)」、「みなす(considering)」などで読み替えられてもよい。
【0091】
「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。例えば、「接続」は「アクセス」で読み替えられてもよい。本開示で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及びプリント電気接続の少なくとも一つを用いて、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどを用いて、互いに「接続」又は「結合」されると考えることができる。
【0092】
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0093】
本開示において使用する「第1の」、「第2の」などの呼称を使用した要素へのいかなる参照も、それらの要素の量又は順序を全般的に限定しない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本開示において使用され得る。したがって、第1及び第2の要素への参照は、2つの要素のみが採用され得ること、又は何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
【0094】
上記の各装置の構成における「手段」を、「部」、「回路」、「デバイス」等に置き換えてもよい。
【0095】
本開示において、「含む(include)」、「含んでいる(including)」及びそれらの変形が使用されている場合、これらの用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本開示において使用されている用語「又は(or)」は、排他的論理和ではないことが意図される。
【0096】
本開示において、例えば、英語でのa、an及びtheのように、翻訳により冠詞が追加された場合、本開示は、これらの冠詞の後に続く名詞が複数形であることを含んでもよい。
【0097】
本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。
【符号の説明】
【0098】
1…位置計算装置、10…格納部、11…入力部、12…計算部、13…出力部、1001…プロセッサ、1002…メモリ、1003…ストレージ、1004…通信装置、1005…入力装置、1006…出力装置、1007…バス。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11