(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-19
(45)【発行日】2023-10-27
(54)【発明の名称】提示システム、サーバ、第2端末及びプログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20231020BHJP
【FI】
G06T19/00 A
(21)【出願番号】P 2020140059
(22)【出願日】2020-08-21
【審査請求日】2022-07-07
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100092772
【氏名又は名称】阪本 清孝
(74)【代理人】
【識別番号】100119688
【氏名又は名称】田邉 壽二
(72)【発明者】
【氏名】加藤 晴久
【審査官】村松 貴士
(56)【参考文献】
【文献】特開2019-032844(JP,A)
【文献】米国特許出願公開第2014/0173674(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 15/00 - 19/20
(57)【特許請求の範囲】
【請求項1】
第1ユーザのコミュニケーションに関連する状態を認識して第1認識情報を得る第1認識部と、
第2ユーザの位置姿勢を測位して第2測位情報を得る第2測位部と、
前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを描画した第3描画情報を得る第3描画部と、
前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様よりも高品質に描画した第4描画情報を得る第4描画部と、
前記第3描画情報と前記第4描画情報との相違を第2抽出情報として抽出する抽出部と、
前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様と同一品質で描画した第2描画情報を得る第2描画部と、
前記第2描画情報に前記第2抽出情報を反映することで、前記第4描画情報を模したものとしての前記第1ユーザのアバタである第2統合情報を得る第2統合部と、
前記第2統合情報を前記第2ユーザに対して表示する第2提示部と、を備えることを特徴とする提示システム。
【請求項2】
前記第1認識部は前記第1ユーザが利用する第1端末に備わり、
前記
第2測位部、前記第2描画部、前記第2統合部及び前記第2提示部は前記第2ユーザが利用する第2端末に備わり、
前記第3描画部、前記第4描画部及び前記抽出部はサーバに備わることを特徴とする請求項1に記載の提示システム。
【請求項3】
前記第1端末、前記第2端末及び前記サーバは、ネットワークを介して相互に通信可能に構成されることを特徴とする請求項2に記載の提示システム。
【請求項4】
前記第1認識部は、前記第1ユーザのコミュニケーションに関連する状態として、表情及び/又はポーズを認識して前記第1認識情報を得ることを特徴とする請求項1ないし3のいずれかに記載の提示システム。
【請求項5】
前記抽出部は、前記第3描画情報と前記第4描画情報との相違を抑制するように、前記第3描画情報と前記第4描画情報の一方に変換処理を施したものと、当該もう一方と、の相違を、当該施した変換処理の情報と共に前記第2抽出情報として抽出することを特徴とする請求項1ないし4のいずれかに記載の提示システム。
【請求項6】
前記変換処理は、一次変換または定数加算であることを特徴とする請求項5に記載の提示システム。
【請求項7】
前記抽出部は、前記第3描画情報と前記第4描画情報との相違として算出される画素差分値マップにおける各差分値を、量子化誤差を抑制するように量子化したものとして、前記第2抽出情報を抽出することを特徴とする請求項1ないし6のいずれかに記載の提示システム。
【請求項8】
前記抽出部は、前記量子化する際の量子化ステップを限定することを特徴とする請求項7に記載の提示システム。
【請求項9】
前記第2測位部では、前記第2ユーザの位置姿勢を測位して前記第2測位情報を得る際に、前記第2ユーザが存在する環境における深度情報も取得し、
前記第2描画部、前記第3描画部及び前記第4描画部では、前記第1ユーザのアバタを前記第2描画情報、前記第3描画情報及び前記第4描画情報としてそれぞれ描画する際に、前記深度情報によって遮蔽されている部分については描画しないことを特徴とする請求項1ないし8のいずれかに記載の提示システム。
【請求項10】
前記第1ユーザの位置姿勢を測位して第1測位情報を得る第1測位部をさらに備え、
前記第2描画部、前記第3描画部及び前記第4描画部では、前記第1ユーザのアバタを前記第1測位情報に応じた位置姿勢に配置して、前記第2描画情報、前記第3描画情報及び前記第4描画情報としてそれぞれ描画することを特徴とする請求項1ないし9のいずれかに記載の提示システム。
【請求項11】
第1ユーザが利用し、第1認識部を備える第1端末と、
第2ユーザが利用し、第2測位部、第2描画部、第2統合部及び第2提示部を備える第2端末と、
第3描画部、第4描画部及び抽出部を備えるサーバと、を備える提示システムにおけるサーバであって、
前記第1認識部は、前記第1ユーザのコミュニケーションに関連する状態を認識して第1認識情報を得て、
前記第2測位部は、前記第2ユーザの位置姿勢を測位して第2測位情報を得て、
前記第3描画部は、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを描画した第3描画情報を得て、
前記第4描画部は、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様よりも高品質に描画した第4描画情報を得て、
前記抽出部は、前記第3描画情報と前記第4描画情報との相違を第2抽出情報として抽出し、
前記第2描画部は、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様と同一品質で描画した第2描画情報を得て、
前記第2統合部は、前記第2描画情報に前記第2抽出情報を反映することで、前記第4描画情報を模したものとしての前記第1ユーザのアバタである第2統合情報を得て、
前記第2提示部は、前記第2統合情報を前記第2ユーザに対して表示することを特徴とするサーバ。
【請求項12】
第1ユーザが利用し、第1認識部を備える第1端末と、
第2ユーザが利用し、第2測位部、第2描画部、第2統合部及び第2提示部を備える第2端末と、
第3描画部、第4描画部及び抽出部を備えるサーバと、を備える提示システムにおける第2端末であって、
前記第1認識部は、前記第1ユーザのコミュニケーションに関連する状態を認識して第1認識情報を得て、
前記第2測位部は、前記第2ユーザの位置姿勢を測位して第2測位情報を得て、
前記第3描画部は、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを描画した第3描画情報を得て、
前記第4描画部は、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様よりも高品質に描画した第4描画情報を得て、
前記抽出部は、前記第3描画情報と前記第4描画情報との相違を第2抽出情報として抽出し、
前記第2描画部は、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様と同一品質で描画した第2描画情報を得て、
前記第2統合部は、前記第2描画情報に前記第2抽出情報を反映することで、前記第4描画情報を模したものとしての前記第1ユーザのアバタである第2統合情報を得て、
前記第2提示部は、前記第2統合情報を前記第2ユーザに対して表示することを特徴とする第2端末。
【請求項13】
コンピュータを請求項11に記載の
サーバとして機能させることを特徴とするプログラム。
【請求項14】
コンピュータを請求項12に記載の第2端末として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、遠隔コミュニケーション等に利用可能な、アバタ描画を行う提示システム、サーバ、端末及びプログラムに関する。
【背景技術】
【0002】
遠隔コミュニケーション等に利用可能な遠隔地間の映像通信技術に関し、非特許文献1は、3D(3次元)映像伝送として深度センサで計測したユーザの点群情報を通信相手へ伝送し、相手側のデバイスで描画する取り組みを開示している。また、特許文献1は、端末で撮影した複数映像をサーバへ伝送しサーバで推定した骨格情報を通信相手に伝送した上で端末が骨格情報をアバタに適用する手法を開示している。
【先行技術文献】
【特許文献】
【0003】
【非特許文献】
【0004】
【文献】Ben Cutler、他2名、"holoportation",[online],2018年9月4日[令和2年7月17日検索]、インターネット<URL:https://www.microsoft.com/en-us/research/project/holoportation-3>
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら従来技術においては、ユーザの側で利用する端末の計算資源や通信帯域等に関して必ずしも潤沢に利用できない制約がある状況下において、高品位な情報提示を実現することができなかった。
【0006】
非特許文献1は膨大な点群情報を伝送するため通信帯域が狭いと実現できないという問題がある。また、ユーザの点群情報を全方位から取得するには深度センサを複数配置する必要があり装置が大規模化する問題がある。さらに、深度センサの分解能に限界があるため利用者と背景との分離が十分ではなくユーザの点群に背景が混在し低品質であるという問題がある。なおかつ、ユーザの姿勢によっては死角が生じ当該箇所の点群を取得できないという問題がある。
【0007】
特許文献1は異なる視点からの複数映像を端末からサーバへ伝送するため通信帯域が狭いと実現できないという問題がある。また、計算資源に制約がある端末でアバタを描画するため、リアルタイムに描画しようとする場合に、計算資源が潤沢なサーバでの描画と比較して低品質であるという問題がある。
【0008】
上記従来技術の課題に鑑み、本発明は、効率的にアバタ描画を行うことができる提示システム、サーバ、第2端末及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するため、本発明は、提示システムであって、第1ユーザのコミュニケーションに関連する状態を認識して第1認識情報を得る第1認識部と、第2ユーザの位置姿勢を測位して第2測位情報を得る第2測位部と、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを描画した第3描画情報を得る第3描画部と、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様よりも高品質に描画した第4描画情報を得る第4描画部と、前記第3描画情報と前記第4描画情報との相違を第2抽出情報として抽出する抽出部と、前記第2測位情報に配置した仮想カメラ視点において、前記第1認識情報を反映して前記第1ユーザのアバタを前記第3描画部の描画態様と同一品質で描画した第2描画情報を得る第2描画部と、前記第2描画情報に前記第2抽出情報を反映することで、前記第4描画情報を模したものとしての前記第1ユーザのアバタである第2統合情報を得る第2統合部と、前記第2統合情報を前記第2ユーザに対して表示する第2提示部と、を備えることを特徴とする。また、本発明は、前記第3描画部、前記第4描画部及び前記抽出部を備えるサーバであることを特徴とする。また、本発明は、前記2測位部、前記第2描画部、前記第2統合部及び前記第2提示部を備える第2端末であることを特徴とする。さらに、本発明は、コンピュータを前記サーバまたは前記第2端末として機能させるプログラムであることを特徴とする。
【発明の効果】
【0010】
本発明によれば、互いに異なる品質で描画された2つの共通のアバタの相違として第2抽出情報の形で抽出されることで通信帯域の狭い回線を利用する場合であっても高速に第2抽出情報を第2ユーザの側へと伝送し、第2ユーザの側において第4描画部による高品質な描画を行うことなく、第4描画部と同等の高品質な描画結果としての第2統合情報を得て第1ユーザのアバタとして第2ユーザに表示することが可能であるため、効率的にアバタ描画を行うことができる。
【図面の簡単な説明】
【0011】
【
図1】一実施形態に係る提示システムの構成図である。
【
図2】N=2の場合の一実施形態に係る提示システムの機能ブロック図である。
【
図3】一実施形態に係る提示システムの動作のシーケンス図である。
【
図4】アバタによるリアルタイムでの遠隔コミュニケーションの模式例を示す図である。
【
図5】第1認識情報の模試例として、表情認識の場合の顔画像から抽出した表情に関する特徴点分布を示す図である。
【
図6】量子化ステップqiを1または4に限定して量子化誤差を最小化した模式例を示す図である。
【
図7】各描画情報及び第2抽出情報の模式例を示す図である。
【
図8】アバタ表示処理を双方向に行う場合の一実施形態に係る提示システムの機能ブロック図である。
【
図9】一般的なコンピュータにおけるハードウェア構成の例を示す図である。
【発明を実施するための形態】
【0012】
図1は、一実施形態に係る提示システム100の構成図であり、提示システム100は、互いにインターネット等のネットワークNWを介して通信可能に構成されているN個(N≧2)の端末10,20,…、N0と、サーバ30と、を備える。端末10,20,…、N0を利用するユーザがそれぞれユーザU1,U2,…,UNであり、これらN人のユーザU1,U2,…,UNは各自の端末10,20,…、N0(例えばスマートフォン端末やヘッドマウントディスプレイ端末など)を利用することにより、各自の遠隔地に存在しながら提示システム100によってアバタ(コミュニケーション相手側ユーザのアバタ)を用いた遠隔コミュニケーションを行うことが可能である。
【0013】
以下、説明のためにN=2とし、第1端末10を利用する第1ユーザU1と第2端末20を利用する第2ユーザU2との間で、サーバ30を介して提示システム100において遠隔コミュニケーションを実現する場合を例とする。N≧3の場合も、N人のユーザのうち任意の2ユーザ間での遠隔コミュニケーションを2ユーザU1,U2の場合と同様にして実現することにより、全く同様にしてN人での遠隔コミュニケーションを行うことが可能である。
【0014】
図2は、N=2の場合の一実施形態に係る提示システム100の機能ブロック図である。提示システム100は、第1ユーザU1が利用する第1端末10と、第2ユーザU2が利用する第2端末20と、サーバ30と、を備える。第1端末10、第2端末20ではそれぞれユーザU1,U2より遠隔コミュニケーションを行うために必要となる情報の取得を行い、当該取得した情報を相手側の端末へと送信する。サーバ30は、当該送信された情報を中継して相手側の端末へと送信する処理を行うが、当該中継する際に送信された情報を用いて所定の描画処理等を行ったうえで相手側の端末へと送信することで、計算資源等に制約がある第1端末10及び第2端末20を利用する状況においても、ユーザU1,U2間での高品位な遠隔コミュニケーションを実現することができる。
【0015】
図2に示すように、第1端末10は第1認識部11及び第1測位部12を備え、第2端末20は第2測位部22、第2描画部26、第2統合部27及び第2提示部28を備え、サーバ30は第3描画部33、第4描画部34及び抽出部35を備える。
【0016】
なお、
図2では、サーバ30の第3描画部33及び第4描画部34をまとめて機能部31として示しているが、これは次の情報送受を表すものである。すなわち、第1端末10の第1認識部11及び第1測位部12でそれぞれ取得する第1認識情報及び第1測位情報と、第2端末20の第2測位部22で取得する第2測位情報と、がサーバ30側へと送信され、第3描画部33及び第4描画部34においてこれらの情報が利用されることを表現するために、機能部31としてまとめて示している。
【0017】
図3は、一実施形態に係る提示システム100の動作のシーケンス図であり、所定の処理レートの各時刻t=1,2,3,…においてそれぞれ
図3の動作全体が行われることにより、提示システム100により第1端末10を利用する第1ユーザU1と第2端末20を利用する第2ユーザU2との間でリアルタイムに、アバタを利用した遠隔コミュニケーションを行うことが可能となる。
【0018】
図2及び
図3にも示されるように、当該各時刻tでのリアルタイムの処理概要は以下の通りである。(なお、各機能部の処理と、各機能部間での処理情報の授受の流れの観点から概要のみをまず説明し、各機能部の個別処理の詳細に関しては後述する。)
【0019】
第1端末10において、第1認識部11はユーザU1の表情等を認識して時刻tでの第1認識情報R1(t)を得て、この第1認識情報R1(t)をサーバ30の第3描画部33及び第4描画部34へと送信する(ステップS111,S112)。第1端末10において、第1測位部12は時刻tでの第1ユーザU1の位置姿勢を測位して第1測位情報P1(t)を得て、この第1測位情報P1(t)をサーバ30の第3描画部33及び第4描画部34へと送信する(ステップS121,S122)。
【0020】
第2端末20において、第2測位部22は時刻tでの第2ユーザU2の位置姿勢を測位して第2測位情報P2(t)を得て、この第2測位情報P2(t)をサーバ30の第3描画部33及び第4描画部34へと送信する(ステップS221,S222)と共に、第2端末20内の第2描画部26へと出力する(ステップS223)。
【0021】
サーバ30の第3描画部33は、第1測位情報P1(t)及び第2測位情報P2(t)によって定まる位置姿勢において、時刻tでの第1ユーザU1のアバタを標準品質で描画した結果として第3描画情報G3(t)を得て、この第3描画情報G3(t)を抽出部35へと出力する(ステップS331)。第4描画部34は、第1測位情報P1(t)及び第2測位情報P2(t)によって定まる位置姿勢において、時刻tでの第1ユーザU1のアバタを高品質で描画した結果として第4描画情報G4(t)を得て、この第4描画情報G4(t)を抽出部35へと出力する(ステップS341)。
【0022】
ここで、第4描画部34は、第3描画部33の描画品質と比べてより高品質に描画を行う。また、第3描画部33の描画品質は、第2端末20の第2描画部26の描画品質と同一であり、第3描画部33及び第2描画部26では同一の描画を行う。第2描画部26、第3描画部33及び第4描画部34では、第1測位情報P1(t)及び第2測位情報P2(t)によって定まる共通の位置姿勢において、それぞれの描画品質により時刻tでの第1ユーザU1のアバタを描画する。
【0023】
サーバ30においてさらに、抽出部35は、第3描画情報G3(t)と第4描画情報G4(t)との相違(差分)を時刻tでの第2抽出情報E2(t)として抽出し、この第2抽出情報E2(t)を第2端末20の第2統合部27へと送信する(ステップS352)。
【0024】
ここで、アバタの直接の描画結果である第3描画情報G3(t)や第4描画情報G4(t)ではなく、情報量が削減されたその差分としての第2抽出情報E2(t)をサーバ20から第2端末20へと送信することにより、ネットワークNWの通信帯域の圧迫を抑制することが可能となる。
【0025】
サーバ30ではまた、第1端末10から第2端末20への情報送信の中継処理として、第1認識部11及び第1測位部12からそれぞれ得られた時刻tでの第1ユーザの第1認識情報R1(t)及び第1測位情報P1(t)を、そのまま第2端末20の第2描画部26へと送信する(ステップS351)。(なお、
図2及び
図3では、便宜上、第1認識情報R1(t)及び第1測位情報P1(t)の中継送信元を抽出部35として描いているが、抽出部35において特に第1認識情報R1(t)及び第1測位情報P1(t)をさらに加工する処理等が行われるわけではない。)
【0026】
第2端末20の第2描画部26は、第1測位情報P1(t)及び第2測位情報P2(t)によって定まる位置姿勢において、時刻tでの第1ユーザU1のアバタを標準品質で描画した結果として第2描画情報G2(t)を得て、この第2描画情報G2(t)を第2統合部27へと出力する(ステップS261)。
【0027】
既に説明したように、第2端末20の第2描画部26ではサーバ30の第3描画部33と同一品質で、第1測位情報P1(t)及び第2測位情報P2(t)によって定まる共通の位置姿勢において、時刻tでの第1ユーザU1のアバタを描画する。すなわち、第2描画部26で得られる第2描画情報G2(t)は、第3描画部33で得られる第3描画情報G3(t)と同一である。
【0028】
第2統合部27は、第2描画情報G2(t)に対して、サーバ30の抽出部35から得られた第2抽出情報E2(t)を加算することにより、時刻tでの第2統合情報G2S(t)を得て、この第2統合情報G2S(t)を第2提示部28へと出力する(ステップS271)。第2提示部28はディスプレイとして構成され、第2統合情報G2S(t)を第2ユーザU2に対して表示する。
【0029】
ここで、第2抽出情報E2(t)はサーバ30において高品質で描画された第4描画情報G4(t)と標準品質で描画された第3描画情報G3(t)との差分(「E2(t)=G4(t)-G3(t)」)として得られており、第3描画情報G3(t)と同一情報である第2描画情報G2(t)が第2端末20の第2描画部26で得られている。従って、第2統合部27で加算して得られる第2統合情報G2S(t)は、サーバ30において高品質で描画された第4描画情報G4(t)と同一情報となり、サーバ30の第4描画部34において高品質に描画された結果としての第1ユーザU1のアバタを、第2端末20自身において直接描画することなく、第2統合情報G2S(t)として加算により復元して第2ユーザU2に対して提示することが可能となる。
【0030】
なお、後述するように第2抽出情報E2(t)は差分(「E2(t)=G4(t)-G3(t)」)として得たうえでさらに量子化による非可逆圧縮を適用する場合もあるが、この場合も、第2統合部27で加算して得られる第2統合情報G2S(t)は、サーバ30において高品質で描画された第4描画情報G4(t)とは完全には同一ではないが、これを可能な限り模したものとして得られることとなる。
【0031】
図4は、以上の
図2,3の構成によって実現されるアバタによるリアルタイムでの遠隔コミュニケーションの模式例を示す図である。例EX11に示すように、第1端末10を利用する第1ユーザU1は環境E1(部屋など)に存在し、これとは遠隔地に、第2端末20を利用する第2ユーザU2が環境E2(部屋など)に存在する。例EX11のような遠隔環境E1,E2に対して、例EX12には提示システム100により実現される拡張現実表示によるアバタコミュニケーションが示されている。第1端末10を利用する第1ユーザU1は環境E1に対して拡張現実表示(アバタA2の重畳表示)を加えた仮想空間V1において、コミュニケーション相手である第2ユーザU2のアバタA2が表示され、アバタA2に対してコミュニケーションを行うことで、遠隔に存在する第2ユーザU2とコミュニケーションを行うことが可能となる。同様に、第2端末20を利用する第2ユーザU2は環境E2に対して拡張現実表示(アバタA1の重畳表示)を加えた仮想空間V2において、コミュニケーション相手である第1ユーザU1のアバタA1が表示され、アバタA1に対してコミュニケーションを行うことで、遠隔に存在する第1ユーザU1とコミュニケーションを行うことが可能となる。
【0032】
なお、以上の
図2,3の構成は、
図4の例EX12に示すうちの右側を実現するものである。(すなわち、第2統合情報G2S(t)とは、第1ユーザU1のアバタA1であり、第2ユーザU2に対して拡張現実表示として提供されるものである。)第1端末10と第2端末20の役割を入れ替えることで
図4の例EX12に示すうちの左側も全く同様に実現可能となる。
【0033】
ここで、アバタA1は、第2統合情報G2S(t)の形で第1ユーザU1の位置姿勢である第1測位情報P1(t)及び表情等である第1認識情報R1(t)が反映されてリアルタイムに描画されているため、アバタとして第1ユーザU1のリアルタイムの挙動がそのまま反映され、第2ユーザU2に対して仮想空間V2において拡張現実表示されるものとなる。すなわち、第1ユーザU1が位置姿勢を変えればアバタA1も追従して仮想空間V2内における3次元的な位置姿勢が変化し、第1ユーザU1が表情等を変化させればアバタA1も追従して表情等が変化する。(この逆の、仮想空間V1におけるアバタA2と第1ユーザU1との関係も全く同様となる。)
【0034】
さらに、アバタA1は、第2統合情報G2S(t)の形で第2ユーザU2の視点の位置姿勢である第2測位情報P2(t)から見た状態として(画像平面へ描画するための仮想カメラの位置姿勢として第2測位情報P2(t)の位置姿勢を用いて)リアルタイムに描画されているため、第2ユーザU2が移動して、アバタA1の例えば横や後ろに回り込んだ状態で、アバタA1を見るといったことも可能となる。
【0035】
このように各時刻tで第2統合情報G2S(t)として描画されるアバタA1は、時刻tを固定すると画像平面上の2次元領域として描画されるものであるが、3次元モデルのアバタの描画結果として2次元的に描画されているため、時刻tの進行に伴うユーザU1,U2の移動に応じて、3次元形状として変化しながら表示されることとなる。
【0036】
なお、
図4の例EX12に示される双方向でのアバタコミュニケーションは、後述する
図8の構成によって実現されるが、この
図8の構成は、
図2,3の構成を双方向として書き換えたに過ぎないものであり、
図2,3の構成に対して第1端末10及び第2端末20の役割を入れ替えた構成を追加したのが
図8の構成に相当する。
【0037】
以下、
図3のように各時刻t=1,2,3,…についてリアルタイムに動作する
図2の各機能部の詳細に関して、説明する。
【0038】
第1認識部11は、第1ユーザU1のコミュニケーションに関連する状態の情報として、例えば姿勢(ポーズ)及び/又は表情を認識して、時刻tでの第1認識情報R1(t)を得る。
図5は、第1認識情報の模試例として、表情認識の場合の顔画像から抽出した表情に関するランドマーク座標分布を示す図である。表情認識としては以下の非特許文献2のような顔のランドマークの座標を推定する既存技術を利用できる。姿勢認識は身体の各部に装着したセンサを用いたトラッキング技術やカメラを用いた画像認識技術のような骨格情報を推定する既存技術を利用できる。
[非特許文献2] A. Bulat and et al. ``How far are we from solving the 2D & 3D Face Alignment problem?,'' International Conference on Computer Vision, 2017
【0039】
第1測位部12及び第2測位部22はそれぞれ、第1ユーザU1及び第2ユーザU2の位置姿勢として時刻tの第1測位情報P1(t)及び第2測位情報P2(t)を得る。第1測位部12及び第2測位部22の処理は共通であり、位置姿勢(カメラの外部パラメータに相当する情報)を測位する任意の既存手法として、Visual SLAM(画像ベースの自己位置推定と環境地図作成の同時実行)や6DOF(6自由度)センサなど既存技術を利用できる。測位に際しユーザが存在する環境の深度情報を得られる場合は測位情報の一部として含めることもできる。
【0040】
なお、第1認識部11、第1測位部12及び第2測位部22をそれぞれ以上のような任意の既存手法により実現する際に、第1ユーザU1及び第2ユーザU2を撮像やキャプチャするためのハードウェアとしてカメラや専用センサ等を利用する場合は、当該ハードウェアは第1端末10や第2端末20に固定的に備わるもの(例えば各端末がスマートフォン等のモバイル端末である場合の当該モバイル端末の内蔵カメラ)であってもよいし、第1ユーザU1や第2ユーザU2が存在する環境E1,E2に設置されて備わるものであってもよい。
【0041】
サーバ30において、第3描画部33及び第4描画部34は共に、第1測位情報P1(t)及び第2測位情報P2(t)によって定まる3次元座標(第2ユーザU2の仮想空間V2の3次元カメラ座標)に第1ユーザU1のアバタA1を配置し、第1認識情報R1(t)を反映してこのアバタA1を描画することにより、それぞれ、第3描画情報G3(t)及び第4描画情報G4(t)を得る。既に説明したように、第3描画情報G3(t)及び第4描画情報G4(t)は同一の3次元アバタを同一状態且つ同一配置で描画したものであるが、その描画品質のみが異なるものであり、描画品質を区別するものとしては3次元コンピュータグラフィックスにおける光源モデルや表面反射モデルの設定等の、レンダリングに関する設定が挙げられる。
【0042】
ここで、描画対象となる第1ユーザU1のアバタA1に関しては、第1認識情報R1(t)をパラメータ(表情やポーズを決定するパラメータ)として描画に反映可能に構成されている所定の3次元モデルを予め用意しておけばよい。表情やポーズに応じた描画は、任意の既存の3次元コンピュータグラフィックスの手法を利用してよい。
【0043】
第2測位情報P2(t)は、第1ユーザU1のアバタA1を見る側である第2ユーザU2の視点の位置姿勢を表すものとして、第2ユーザU2が存在する環境E2の3次元世界座標内における位置姿勢(カメラの外部パラメータ)として取得しておき、アバタA1として描画される対象である第1ユーザU1の第1測位情報P1(t)に対して所定変換(並進及び回転変換)Tを施すことにより、当該環境E2の3次元世界座標内に変換した第1測位情報T・P1(t)をアバタA1の位置姿勢として、第2測位情報P2(t)で定まる仮想カメラ位置からこのアバタA1を描画すればよい。
【0044】
例えば、変換した第1測位情報T・P1(t)における位置(並進成分)をアバタの顔の位置とし、姿勢(回転成分)をアバタの顔の向きとして描画してよい。
【0045】
サーバ30において抽出部35は、第3描画情報G3(t)と第4描画情報G4(t)(共に、画像平面内の同一領域のみにマスク画像としてアバタA1を描画した状態として得られている)の差分として第2抽出情報E2(t)=G4(t)-G3(t)を得る。
【0046】
ここで、第2抽出情報の伝送量を抑制するため、第3描画情報G3(t)に一次変換を施した「a・G3(t)+b」と第4描画情報G4(t)との差分として以下のように第2抽出情報E2(t)を得るようにしてもよい。一次変換の係数a,bは最小二乗法により各時刻tにおいて求め、第2端末20の第2描画部26へと第2抽出情報E2(t)に付随する情報として送信するようにしてもよい。a=1とし、第3描画情報G3(t)に値bを加算(各画素位置に一律に加算)した「G3(t)+b」の画素値平均と第4描画情報G4(t)の画素値平均が一致するようにbの値を求めてもよい。
E2(t)=G4(t)- a・G3(t)-b
【0047】
なお、上記の係数a,bによる一次変換で第3描画情報G3(t)と第4描画情報G4(t)との相違を抑制する際に、一次変換は第3描画情報G3(t)に対してではなく第4描画情報G4(t)に対して「a・G4(t)+b」として適用して、相違としての第2抽出情報E2(t)を以下のように求めるようにしてもよい。
E2(t)= a・G4(t)+b-G3(t)
【0048】
また、上記の係数a,b等は、第3描画情報G3(t)及び第4描画情報G4(t)を画像平面内の部分領域としてのマスク画像の全体において共通の値として求めるようにしてもよいし、マスク画像全体を複数のブロック領域に区切ったうえで、当該ブロック領域ごとの値として求めるようにしてもよい。
【0049】
ここで、元の画像としての第3描画情報G3(t)と第4描画情報G4(t)が例えば8ビットで画素値0~255の範囲で構成される場合、これらの差分画像として得られる第2抽出情報E2(t)は通常、当初のビット数よりも広い-255~+255の範囲の画素値で構成されうるものとなる。このため、当初の色深度B bpp(bit per pixel)(Bは例えば8ビット/ピクセル)に収まるように差分値を量子化するために、抽出部35では量子化誤差を抑制するように差分値を量子化したうえで、当該量子化された第2抽出情報E2(t)[量子化]を第2統合部27へと送信してもよい。具体的には、以下の式のように、差分値のヒストグラムの値Pi(当該差分値に該当する画素の個数としての頻度Pi)に対して量子化誤差を最小化する量子化ステップqiを求める(貪欲法等の任意の既存手法により求める)ことで量子化すればよい。
【0050】
【0051】
上記の式において、int()は整数化関数、Nはヒストグラムのビン数を表す。ここでさらに、解の自由度を下げることによる解の算出の高速化のために、量子化ステップを限定する制約を課すようにしてもよく、量子化ステップの情報は、当該量子化された第2抽出情報E2(t)[量子化]に付随する情報として第2統合部27へと送信してもよい。
【0052】
図6は、量子化ステップqiの値の候補を所定の組み合わせとして例えば1または4に限定(q1=1,q2=4)して量子化誤差を最小化した模式例を示す図(B=8ビット)であり、上段側に示すヒストグラムでは取りうる範囲-255~+255の全体ではなく、min~maxの範囲で差分値が分布している。上段側の横方向の双方向矢印で示される範囲が、差分値のヒストグラムの頻度の上位q1*{2
B*q2-(max-min)}/(q2-q1)個の範囲(上位範囲)であり、下段側に量子化誤差を最小化して量子化した結果を8ビットの量子化値と差分値(範囲-255~+255)との対応付けを表すグラフとして示すように、この上位範囲は量子化ステップを細かく1とし、上位範囲以外は量子化ステップを粗く4としている。(なお、当該上位の個数の意義は次の通りである。8ビットの0~255に収まりきらない(minからmaxに存在する)画素値を8ビットの0~255にマッピングしたいとき、A個の画素値をq1=1で量子化し、残りの255-A個の画素値をq2=4で量子化する際、誤差を最小化するにはAを最大化することとなる。個数だけで考えているため、仮にヒストグラムが単調減少で0からmax-minの画素値を0から255にマッピングすると考えると、y=(1/q1)*xとy=(1/q2)*x+255-(max-min)/q2の交点が最大のA個となる。)
【0053】
第2端末20において、第2描画部26で第2描画情報G2(t)を得る処理は既に説明したように、サーバ30における第3描画部33で第3描画情報G3(t)を得る処理と同一(描画品質も同一)であるため、重複する説明を省略する。
【0054】
第2統合部27では、第3描画情報G3(t)と同一である第2描画情報G2(t)に対して、第2抽出情報E2(t)を加算することにより、高品質に描画された第4描画情報G4(t)と同一のものとして、または、第4描画情報G4(t)を模したものとして第2統合情報G2S(t)を得る。この第2統合部27の処理は、サーバ30の抽出部35の処理の逆に相当するものである。
【0055】
なお、第2統合部27では、第2抽出情報E2(t)が前述した係数a,bによる一次変換を用いて抽出されている場合は、当該係数a,bを同様に利用して第2統合情報G2S(t)を得るようにすればよい。また、第2抽出情報E2(t)が前述した量子化ステップで量子化されている場合、第2統合部27では、逆量子化により量子化値より対応する差分値を定めたうえで、差分値分布としての第2抽出情報E2(t)を求めて、第2統合情報G2S(t)を得るようにすればよい。
【0056】
第2提示部28は、ハードウェアとしてはディスプレイで構成され、第2統合部27で得た第1ユーザU1のアバタA1を描画したものとしての第2統合情報G2S(t)を第2ユーザに対して表示する。第2提示部28を構成するディスプレイが光学シースルー型の場合、アバタの描画結果である第2統合情報G2S(t)のみを表示すればよく、この光学シースルー型ディスプレイをユーザU2が装着した際の視点の位置姿勢が、第2測位部22の測位する第2測位情報P2(t)の位置姿勢と一致するように、この光学シースルー型ディスプレイを配置しておけばよい。(すなわち、第2測位部22は、当該配置されている光学シースルー型ディスプレイの位置姿勢(第2ユーザU2が装着することで第2ユーザU2の視点の位置姿勢に一致する)を、第2測位情報P2(t)(第2ユーザU2の仮想空間V2を描画するための仮想カメラの位置姿勢)として測位するようにすればよい。)また同様に、第2提示部28を構成するディスプレイがビデオシースルー型の場合、アバタの描画結果である第2統合情報G2S(t)を背景映像に対して重畳して表示すればよく、このビデオシースルー型ディスプレイに表示する背景映像は、第2測位部22の測位する第2測位情報P2(t)の位置姿勢と一致するカメラで現時刻tについて撮影したものを用いるようにすればよい。(すなわち、第2測位部22は、当該背景映像を撮影するカメラの位置姿勢を第2測位情報P2(t)として測位すればよい。第2測位部22が画像撮像を行いこの画像から第2測位情報P2(t)を測位している場合は、この画像撮像を行うカメラによる映像を、このビデオシースルー型ディスプレイに表示する背景映像とすればよい。)
【0057】
図7は、各描画情報及び第2抽出情報の模式例を示す図であり、標準品質で同一のものとして描画される第3描画情報G3(t)及び第2描画情報G2(t)と、これらと比べて高品質に描画される第4描画情報G4(t)と、第3描画情報G3(t)及び第4描画情報G4(t)の差分としての第2抽出情報E2(t)と、の例が示されている。各描画情報は第1ユーザU1のアバタとして顔部分のみを描いた例となっているが、身体部分も含めたアバタを描画するようにしてもよい。第4描画情報G4(t)では方向性光源を配置し、アバタの表面での反射や陰も考慮したレンダリングを行うことにより、これらを考慮しない第3描画情報G3(t)及び第2描画情報G2(t)よりも高品質に描画されている。
【0058】
以上、本実施形態の提示システム100によれば、アバタを利用した遠隔コミュニケーションにおいて、サーバ30の豊富な計算資源を利用して高品質に描画された3次元アバタと同一またはほぼ同等の3次元アバタをユーザ端末において直接描画することなく表示することにより、高品質な3次元アバタを用いて臨場感を持った遠隔コミュニケーションが可能となり、且つ、サーバ30の描画結果から得られる差分のみを伝送することでサーバ30とユーザ端末との間の通信量も抑制することが可能となる。
【0059】
以下、各実施形態についての種々の補足等を説明する。
【0060】
(1) 概略説明において説明したように、提示システム100では所定の処理レートの各時刻t=1,2,3,…における情報を同期してリアルタイムで処理するが、第1端末10、第2端末20及びサーバ30ではネットワークタイムプロトコル等の既存手法により予め時計(計時機能)を同期しておくことにより、共通の各時刻tで処理を行うことができる。なお、最終的に第2提示部28で第2統合情報G2S(t)を提示する際の現在時刻が、伝送遅延や処理遅延により第2統合情報G2S(t)に紐づく時刻tよりも未来の時刻t+Δt(Δt>0)となっていてもよい。
【0061】
第1端末10、第2端末20及びサーバ30では各情報(第1認識情報R1(t)、第1測位情報P1(t)、第2測位情報P2(t))を取得した時刻tを同期し、これに基づいて当該時刻tをタイムスタンプとして紐づけて第2,第3,第4描画情報G2(t),G3(t),G4(t)や第2抽出情報E2(t)、第2統合情報G2S(t)を得る。時刻tをこのように同期したうえで、第1端末10、第2端末20及びサーバ30の全部または一部において、互いに処理レートが異なっていてもよい。
【0062】
(2) 第2測位部22の測位において深度情報を含めて第2測位情報P2(t)を得た場合、第2描画部26、第3描画部33、第4描画部34において第1ユーザU1の3次元アバタとして第2,第3,第4描画情報G2(t),G3(t),G4(t)をそれぞれ描画する際に、3次元アバタの全体のうち、深度情報よりも奥側(仮想カメラから見て遠方側)に位置する部分が存在する場合は、当該奥側に位置する部分を描画しないようにしてもよい。当該奥側に位置する部分は、第2ユーザU2の存在する環境E2においては何らかの現実物体によって遮蔽される部分であるため、描画しないことにより、現実物体によるオクルージョンを反映して自然な描画結果が得られる場合がある。(なお、位置関係によっては部分的のみ描画されたアバタが現実物体内(例えば壁の内部)に埋もれているように描画される場合もありうる。)
【0063】
(3) 遠隔コミュニケーションの利用設定上、第1ユーザU1のアバタA1を第2ユーザU2に対して提供される仮想空間V2内の固定位置姿勢で表示する場合は、第1測位部12において各時刻tでリアルタイムに第1測位情報P1(t)を得る処理は省略してよい。この場合、リアルタイムの第1測位情報P1(t)が時刻tによらず一定値(予め与えられる所定値)であるものとみなして、サーバ30の第3描画部33、第4描画部34及び抽出部35の処理と、第2端末20の第2描画部26、第2統合部27及び第2提示部28の処理とを、同様に行うようにすればよい。(当該一定値及び前述の所定変換Tにより、仮想空間V2内での固定位置姿勢が定まることとなる。)
【0064】
(4) 以上の
図2や
図3による説明は、概略説明で前述した通り、第1ユーザU1のアバタA1を第2ユーザU2に対してその仮想空間V2内で表示する処理(「第1アバタ表示処理」とする)に関するものであったが、第1端末10及び第2端末20の役割を入れ替えて全く同様に、第2ユーザU2のアバタA2を第1ユーザU1に対してその仮想空間V1内で表示する処理(「第2アバタ表示処理」とする)を行うことも可能である。
【0065】
図8は、第1アバタ表示処理及び第2アバタ表示処理を双方向に行う場合の一実施形態に係る提示システム100の機能ブロック図である。
図8において第1アバタ表示処理を行う構成は、
図2と同様であるため、重複した説明は省略する。
図8において、第2アバタ表示処理を行うための構成として、第1端末10は第1測位部12、第1描画部16、第1統合部17及び第1提示部18を備え、第2端末20は第2認識部21及び第2測位部22を備え、これら各部が第2アバタ表示処理を行う際の動作はそれぞれ、第1アバタ表示処理の際の第2端末20における第2測位部22、第2描画部26、第2統合部27及び第2提示部28と、第1端末10における第1認識部11及び第1測位部12と、同一である(処理対象となる第1ユーザの情報と第2ユーザの情報とを入れ替えて全く同一である)ため、重複した説明は省略する。サーバ30での処理も第2アバタ表示処理と第1アバタ表示処理とは同一である(処理対象となる第1ユーザの情報と第2ユーザの情報とを入れ替えて全く同一である)ため、重複した説明は省略する。
【0066】
(5) 提示システム100によりアバタを用いてユーザU1,U2間で遠隔コミュニケーションを行う際は、音声もリアルタイムで録音して相手ユーザ側で再生するようにしてもよい。第1認識情報P1(t)にユーザU1の口の動きが反映されている場合は、ユーザU1のアバタA1はユーザU1が喋る口の動きと連動して喋るようにして、相手ユーザU2に対して表示され、喋っている内容も音声として再生されることとなる。
【0067】
(6)
図9は、一般的なコンピュータ装置70におけるハードウェア構成の例を示す図である。提示システム100における第1端末10、第2端末20及びサーバ30はそれぞれ、このような構成を有する1台以上のコンピュータ装置70として実現可能である。なお、2台以上のコンピュータ装置70で第1端末10、第2端末20及びサーバ30のそれぞれを実現する場合、ネットワークNW経由で処理に必要な情報の送受を行うようにしてよい。コンピュータ装置70は、所定命令を実行するCPU(中央演算装置)71、CPU71の実行命令の一部又は全部をCPU71に代わって又はCPU71と連携して実行する専用プロセッサとしてのGPU(グラフィックス演算装置)72、CPU71(及びGPU72)にワークエリアを提供する主記憶装置としてのRAM73、補助記憶装置としてのROM74、通信インタフェース75、ディスプレイ76、マウス、キーボード、タッチパネル等によりユーザ入力を受け付ける入力インタフェース77、環境やユーザを撮像するカメラ78及びLiDARセンサ等の画像撮像以外を用いたセンシングや計測を行う1種類以上のセンサ79と、これらの間でデータを授受するためのバスBSと、を備える。
【0068】
第1端末10、第2端末20及びサーバ30のそれぞれの各機能部は、各部の機能に対応する所定のプログラムをROM74から読み込んで実行するCPU71及び/又はGPU72によって実現することができる。なお、CPU71及びGPU72は共に、演算装置(プロセッサ)の一種である。ここで、表示関連の処理が行われる場合にはさらに、ディスプレイ76が連動して動作し、データ送受信に関する通信関連の処理が行われる場合にはさらに通信インタフェース75が連動して動作する。第1提示部18及び第2提示部28はディスプレイ76として実現することで、拡張現実表示を出力してよい。
【符号の説明】
【0069】
100…提示システム、10…第1端末、20…第2端末、30…サーバ
11…第1認識部、12…第1測位部
22…第2測位部、26…第2描画部、27…第2統合部、28…第2提示部
33…第3描画部、34…第4描画部、35…抽出部