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

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

▶ ソニー株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-29
(45)【発行日】2024-08-06
(54)【発明の名称】情報処理装置および方法
(51)【国際特許分類】
   G06F 3/01 20060101AFI20240730BHJP
   H04Q 9/00 20060101ALI20240730BHJP
   B25J 13/02 20060101ALI20240730BHJP
   B25J 3/00 20060101ALI20240730BHJP
【FI】
G06F3/01 560
H04Q9/00 301B
B25J13/02
B25J3/00 A
【請求項の数】 20
(21)【出願番号】P 2021565454
(86)(22)【出願日】2020-12-03
(86)【国際出願番号】 JP2020044985
(87)【国際公開番号】W WO2021124902
(87)【国際公開日】2021-06-24
【審査請求日】2023-10-13
(31)【優先権主張番号】P 2019227550
(32)【優先日】2019-12-17
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100121131
【弁理士】
【氏名又は名称】西川 孝
(74)【代理人】
【氏名又は名称】稲本 義雄
(74)【代理人】
【識別番号】100168686
【弁理士】
【氏名又は名称】三浦 勇介
(72)【発明者】
【氏名】塚越 郁夫
【審査官】槙 俊秋
(56)【参考文献】
【文献】特開2019-063951(JP,A)
【文献】特開2019-198939(JP,A)
【文献】国際公開第2019/224994(WO,A1)
【文献】特開2005-014166(JP,A)
【文献】特開平06-134687(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
H04Q 9/00
B25J 13/02
B25J 3/00
B25J 3/00
(57)【特許請求の範囲】
【請求項1】
インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを送信する送信部
を備える情報処理装置。
【請求項2】
前記力覚データは、前記観測点の位置に関する情報または前記観測点の速度に関する情報を含む
請求項1に記載の情報処理装置。
【請求項3】
前記触覚データは、前記観測点において接触した他の物体の硬さに関する情報、前記物体の摩擦係数に関する情報、および前記物体の温度に関する情報の内の少なくともいずれか1つを含む
請求項1に記載の情報処理装置。
【請求項4】
前記ハプティクスデータは、前記観測点毎に分類された、前記力覚データ、前記触覚データ、および前記力データの内の少なくともいずれか1つを含む
請求項1に記載の情報処理装置。
【請求項5】
前記観測点間の関係を示す情報は、支点方向に上流に位置する隣接観測点を示す情報である
請求項1に記載の情報処理装置。
【請求項6】
前記送信部は、前記観測点毎の前記ハプティクスデータを、前記デバイスの制御構造に応じた前記観測点のグループ毎に互いに異なるトラックに格納して送信する
請求項1に記載の情報処理装置。
【請求項7】
前記ハプティクスデータを符号化して符号化データを生成する符号化部をさらに備え、
前記送信部は、前記符号化部により生成された前記符号化データを送信する
請求項1に記載の情報処理装置。
【請求項8】
前記符号化部は、前記ハプティクスデータについて、サンプル間の予測を行って予測残差を導出し、前記予測残差を符号化して前記符号化データを生成する
請求項7に記載の情報処理装置。
【請求項9】
前記ハプティクスデータの再生を制御する制御情報を生成する生成部をさらに備え、
前記送信部は、前記生成部により生成された前記制御情報を送信する
請求項1に記載の情報処理装置。
【請求項10】
情報処理装置が、
インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを送信する
情報処理方法。
【請求項11】
インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを受信する受信部と、
前記受信部により受信された前記ハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点を駆動する駆動部と
を備える情報処理装置。
【請求項12】
前記ハプティクスデータの再生を制御する制御情報に基づいて前記受信部を制御する制御部をさらに備え、
前記受信部は、前記制御部により指定された前記ハプティクスデータを受信する
請求項11に記載の情報処理装置。
【請求項13】
前記受信部は、前記制御部により指定されたビットレートの前記ハプティクスデータを受信する
請求項12に記載の情報処理装置。
【請求項14】
前記受信部は、前記制御部により指定された前記観測点のグループの前記ハプティクスデータを受信する
請求項12に記載の情報処理装置。
【請求項15】
前記受信部は、前記ハプティクスデータの符号化データを受信し、
前記受信部により受信された前記符号化データを復号化して、前記ハプティクスデータを生成する復号化部をさらに備える
請求項11に記載の情報処理装置。
【請求項16】
前記符号化データは、サンプル間の予測が行われて導出された前記ハプティクスデータの予測残差の符号化データであり、
前記復号化部は、前記符号化データを復号化して前記予測残差を生成し、前記予測残差に過去サンプルの復号化結果を加算することにより現サンプルの前記ハプティクスデータを生成する
請求項15に記載の情報処理装置。
【請求項17】
前記復号化部は、前記符号化データに含まれる所定の符号列を検出し、前記サンプル間の予測の開始位置を特定する
請求項16に記載の情報処理装置。
【請求項18】
前記被駆動点を有する前記デバイスの観測点において検出されたハプティクスデータと、前記受信部により受信された前記ハプティクスデータとに基づいて、前記駆動部を制御する制御情報を生成するレンダリング処理を行うレンダリング処理部をさらに備え、
前記駆動部は、前記レンダリング処理部により生成された前記制御情報に基づいて、前記デバイスの複数の前記被駆動点を駆動する
請求項11に記載の情報処理装置。
【請求項19】
前記レンダリング処理部は、絶対座標を用いて、前記制御情報を補正する
請求項18に記載の情報処理装置。
【請求項20】
情報処理装置が、
インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを受信し、
受信された前記ハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点を駆動する
情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置および方法に関し、特に、より高精度に遠隔制御を行うことができるようにした情報処理装置および方法に関する。
【背景技術】
【0002】
従来、力覚データや触覚データ等を伝送することにより、遠隔操作を行うシステムが考えられた(例えば非特許文献1および非特許文献2参照)。近年においては、情報処理技術の向上に伴い、より高精度な遠隔制御が求められている。
【先行技術文献】
【非特許文献】
【0003】
【文献】"Definition and Representation of Haptic-Tactile Essence For Broadcast Production Applications", SMPTE ST2100-1:2017
【文献】P. Hinterseer, S. Hirche, S. Chaudhuri, E. Steinbach, M. Buss, “Perception-based data reduction and transmission of haptic data in telepresence and teleaction systems,” IEEE Transactions on Signal Processing
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、従来の場合、単一の観測点の情報しか伝送していなかった。そのため、遠隔制御の精度を十分に向上させることが困難であり、リモート側では単純な動作しか再現することができなかった。
【0005】
本開示は、このような状況に鑑みてなされたものであり、より高精度に遠隔制御を行うことができるようにするものである。
【課題を解決するための手段】
【0006】
本技術の一側面の情報処理装置は、インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを送信する送信部を備える情報処理装置である。
【0007】
本技術の一側面の情報処理方法は、情報処理装置が、インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを送信する情報処理方法である。
【0008】
本技術の他の側面の情報処理装置は、インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを受信する受信部と、前記受信部により受信された前記ハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点を駆動する駆動部とを備える情報処理装置である。
【0009】
本技術の他の側面の情報処理方法は、情報処理装置が、インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、前記観測点間の関係を示す情報とを含むハプティクスデータを受信し、受信された前記ハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点を駆動する情報処理方法である。
【0010】
本技術の一側面の情報処理装置および方法においては、インタフェースとなるデバイスの複数の観測点についての、その観測点において検出された力覚に関する情報を含む力覚データ、その観測点において検出された触覚に関する情報を含む触覚データ、およびその観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、その観測点間の関係を示す情報とを含むハプティクスデータが送信される。
【0011】
本技術の他の側面の情報処理装置および方法においては、インタフェースとなるデバイスの複数の観測点についての、その観測点において検出された力覚に関する情報を含む力覚データ、その観測点において検出された触覚に関する情報を含む触覚データ、およびその観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つと、その観測点間の関係を示す情報とを含むハプティクスデータが受信され、その受信されたハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点が駆動される。
【図面の簡単な説明】
【0012】
図1】ハプティクスシステムの概要を説明する図である。
図2】遠隔操作システムの例を説明する図である。
図3】ローカルシステムの主な構成例を示すブロック図である。
図4】MPDシステムの主な構成例を示すブロック図である。
図5】ハプティクスインタフェースの例を説明する図である。
図6】立体刺激デバイスの例を示す図である。
図7】ハプティクスデータの例を示す図である。
図8】刺激操作のデータの例を示す図である。
図9】グローブ型デバイスの例を示す図である。
図10】グローブ型デバイスの使用例を示す図である。
図11】ハプティクスデータの例を示す図である。
図12】KTマップの例を示す図である。
図13】遠隔操作システムの適用例を示す図である。
図14】遠隔操作システムの適用例を示す図である。
図15】遠隔操作システムの適用例を示す図である。
図16】触覚データの例を示す図である。
図17】遠隔操作システムの適用例を示す図である。
図18】遠隔操作システムの適用例を示す図である。
図19】レンダラの主な構成例を示すブロック図である。
図20】レンダラの主な構成例を示すブロック図である。
図21】GPS情報の例を示す図である。
図22】傾斜角の導出例を説明する図である。
図23】KTマップの例を示す図である。
図24】KTマップの例を示す図である。
図25】ハプティクスデータの例を示す図である。
図26】符号化データのフレーム構造の例を示す図である。
図27】デッドバンドによる符号化の例を示す図である。
図28】ハプティクスデータの符号化の例を示す図である。
図29】符号化部と復号化部の主な構成例を示すブロック図である。
図30】処理の様子の例を示す図である。
図31】符号化データのフレーム内構造の例を示す図である。
図32】ハプティクスデータ送信処理の流れの例を説明するフローチャートである。
図33】ハプティクスデータ受信処理の流れの例を説明するフローチャートである。
図34】MPD生成処理の流れの例を説明するフローチャートである。
図35】MPD制御処理の流れの例を説明するフローチャートである。
図36】MPDを用いたデータ参照の様子の例を示す図である。
図37】MPDを用いたデータ参照の様子の例を示す図である。
図38】MPDを用いたデータ参照の様子の例を示す図である。
図39】コンテナの構成例を示す図である。
図40】コンテナの構成例を示す図である。
図41】コンテナの構成例を示す図である。
図42】ファイルフォーマット内のデータの配置例を示す図である。
図43】ファイルフォーマットの例を示す図である。
図44】ファイルフォーマット内のデータの配置例を示す図である。
図45】ファイルフォーマット内のデータの配置例を示す図である。
図46】ファイルフォーマットの例を示す図である。
図47】MPDの例を示す図である。
図48】MPDの例を示す図である。
図49】MPDの例を示す図である。
図50】MPDの例を示す図である。
図51】MPDの例を示す図である。
図52】MPDの例を示す図である。
図53】MPDの例を示す図である。
図54】MPDの例を示す図である。
図55】MPDの例を示す図である。
図56】MPDの例を示す図である。
図57】MPDの例を示す図である。
図58】MPDの例を示す図である。
図59】セマンティクスの例を示す図である。
図60】セマンティクスの例を示す図である。
図61】HDMI伝送の構成例を示す図である。
図62】メタデータの例を示す図である。
図63】メタデータの例を示す図である。
図64】セマンティクスの例を示す図である。
図65】TMDSチャンネルによるハプティクスデータの伝送フォーマットの例を示す図である。
図66】コンピュータの主な構成例を示すブロック図である。
【発明を実施するための形態】
【0013】
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.ハプティクス伝送
2.第1の実施の形態(遠隔操作システム)
3.第2の実施の形態(MPDの適用)
4.第3の実施の形態(デジタルインタフェース)
5.付記
【0014】
<1.ハプティクス伝送>
<ハプティクスシステム>
テレイグジスタンス社会、これの意図するところは、空間的に離れた場所に自分の意のままになるデバイスを配置し、それを、ネットワークを介してコントロールすることで瞬時空間移動の効果を実現するもので、コントロールを主導するローカル側のアクションをリモート側で再現させ、それによってリモートデバイスが動作することで随時途中経過や結果がローカル側にフィードバックされ、そのフィードバックによってローカルの活動が継続するというように、人間がフィードバック系の内部に組み入れられることで時空間的な制約から解放され、単に臨場感というよりも人間の能力の増幅を可能とするHuman Augmentationの実現につながると考えられている。
【0015】
例えば、図1のハプティクスシステム10は、互いに遠隔地に設置され、センサやアクチュエータ等よりなるハプティックデバイス11およびハプティックデバイス15を有する。それらの一方が、センサにより検出されたハプティクスデータ(力覚データや触覚データ等)を送信し、他方がそのハプティクスデータを受信し、それに基づいてアクチュエータを駆動させる。このようなハプティクスデータの授受により、一方のハプティックデバイスの操作を他方のハプティックデバイスにおいて再現することができる。つまり、遠隔操作が実現される。このようなハプティクスデータの授受は、通信デバイス12と通信デバイス14がネットワーク13を介して通信を行うことにより実現される。
【0016】
なお、通信デバイス12は、ハプティックデバイス11からのハプティクスデータをハプティックデバイス11にフィードバックさせることもできる。同様に、通信デバイス14は、ハプティックデバイス15からのハプティクスデータをハプティックデバイス15にフィードバックさせることもできる。
【0017】
このようなハプティクスデータの伝送では、ローカルの複数の力覚センサ(kinesthetic sensor)出力が相互にどういう関係で連動して変化するかを正確に記述しリモートの受け側デバイスに伝える必要がある。
【0018】
ハプティックデバイスは、例えば、折れ曲がった骨格アーム状の形状のデバイスであったり、手にはめるグローブ状のデバイスであったりする。オペレータがHaptic Displayとしての骨格アーム、あるいはグローブをローカル側で動かすと、各々の関節における位置情報と運動状態が変動する。
【0019】
ハプティックデバイスとしては、従来から、力覚センサの構成の自由度を1次(1DoF(Degree of Freedom))から3次(3DoF)にしたり、関節点を増大させたりする等、より高次のハプティックデバイスは考えられてきた。しかしながら、それをリモート側への伝送をする場合は、単数の関節点の情報に限定されていた。また、立体空間における単一のベクトルに対する要素の射影を想定して、圧縮符号化を行って配信する検討がされていた。
【0020】
力覚センサの骨格を形成する複数の関節点の情報はそれらを組み合わせることで末端部の動きの記述が可能であり、それらの相互接続情報が明確に記載されないと、受け側の再生デバイスで正確なトレースができなかった。
【0021】
そこで、力覚センサで構成される各関節部分の接続情報を記述し、伝送する際にメタデータとして受け側に伝送するようにする。このようにすることで高度な力覚再現性、そして触感再現性を実現することができる。
【0022】
<2.第1の実施の形態>
<遠隔操作システム>
図2は、本技術を適用した通信システム(情報処理システム)の一実施の形態である遠隔操作システムの概要を説明する図である。図2に示される遠隔操作システム100は、互いに遠隔地のローカルシステム101およびリモートシステム102を有する。ローカルシステムおよびリモートシステム102は、それぞれハプティックデバイスを有しており、ネットワーク110を介して互いに通信を行い、ハプティクスデータを授受することによりハプティックデバイス遠隔操作を実現する。例えば、一方のハプティックデバイスに入力された操作を、他方のハプティックデバイスにおいて再現することができる。
【0023】
ここでは、説明において、通信の主体側のシステムをローカルシステム101と称し、その通信相手側のシステムをリモートシステム102と称するが、ローカルシステム101とリモートシステム102は、基本的に互いに同様の役割を担うことができるシステムである。したがって、特に言及しない限り、以下に記載のローカルシステム101についての説明は、リモートシステム102にも適用することができる。
【0024】
なお、ローカルシステム101およびリモートシステム102の構成はそれぞれ任意である。ローカルシステム101の構成とリモートシステム102の構成は、互いに異なっていてもよいし、互いに同一であってもよい。また、図2においては、ローカルシステム101およびリモートシステム102が1台ずつ示されているが、遠隔操作システム100は、それぞれ任意の数のローカルシステム101およびリモートシステム102を有することができる。
【0025】
また、遠隔操作システム100は、MPDサーバ103を有することができる。MPDサーバ103は、ローカルシステム101やリモートシステム102に対してMPD(Media Presentation Description)の登録や提供に関する処理を行う。ローカルシステム101やリモートシステム102は、このMPDを用いて必要な情報を選択し、取得することができる。もちろん、このMPDサーバ103の構成も任意であり、その数も任意である。
【0026】
なお、このMPDサーバ103は、省略することもできる。例えば、ローカルシステム101やリモートシステム102がMPDを通信相手に対して供給するようにしてもよい。また、例えば、ローカルシステム101およびリモートシステム102がMPDを用いずにハプティクスデータを授受するようにしてもよい。
【0027】
なお、ネットワーク110は、例えばローカルエリアネットワーク、専用線によるネットワークあるいはWAN(Wide Area Network)、インターネット、衛星通信等、任意の有線通信網若しくは無線通信網、またはその両方により構成される。また、ネットワーク110が複数の通信網により構成されてもよい。
【0028】
<ローカルシステム>
図3は、ローカルシステム101の主な構成例を示すブロック図である。図3に示されるように、ローカルシステム101は、ハプティックデバイス121、通信デバイス122、デジタルインタフェース123、およびデジタルインタフェース124を有する。
【0029】
ハプティックデバイス121は、ユーザやリモートデバイスのインタフェースとなり得るデバイスであり、ハプティクスデータを生成したり、ハプティクスデータに基づいて駆動したりする。また、例えば、ハプティックデバイス121は、デジタルインタフェース123を介して通信デバイス122にハプティクスデータ等を供給することができる。さらに、ハプティックデバイス121は、デジタルインタフェース124を介して通信デバイス122から供給されるハプティクスデータ等を取得することができる。
【0030】
通信デバイス122は、ネットワーク110(図2)を介して他の装置と通信を行うことができる。通信デバイス122は、その通信により、例えば、ハプティクスデータの授受を行ったり、MPDの授受を行ったりすることができる。また、通信デバイス122は、例えば、デジタルインタフェース123を介してハプティックデバイス121から供給されるハプティクスデータ等を取得することができる。さらに、通信デバイス122は、デジタルインタフェース124を介してハプティックデバイス121にハプティクスデータ等を供給することができる。デジタルインタフェース123およびデジタルインタフェース124は、例えば、USB(Universal Serial Bus)(登録商標)やHDMI(High-Definition Multimedia Interface)(登録商標)等、任意の規格のデジタル機器用インタフェースである。
【0031】
ハプティックデバイス121は、センサ部131、レンダラ132、アクチュエータ133、およびハプティクスインタフェース(I/F)134を有する。
【0032】
センサ部131は、ハプティクスインタフェース134における観測点について、力覚データや触覚データ等を検出し、ハプティクスデータとして通信デバイス122に供給する。また、センサ部131は、ハプティクスデータをレンダラ132に供給することもできる。
【0033】
センサ部131のセンサは、必要なデータを検出可能なものであれば、例えば、位置や動きの検出を行う磁気センサ、超音波センサ、GPS(Global Positioning System)センサ、角速度などの運動状態を検知するジャイロセンサ、加速度を検知する加速度センサ等、どのようなセンサであってもよい。例えば、センサ部131がイメージセンサ141および空間座標変換部142を有するようにしてもよい。イメージセンサ141は、その撮像画像データを空間座標変換部142に供給する。空間座標変換部142は、その画像から、ハプティクスインタフェース134の観測点(例えば関節等)の空間座標(3次元座標系の座標)を導出する。空間座標変換部142は、その座標データをハプティクスデータとして通信デバイス122やレンダラ132に供給することができる。
【0034】
なお、イメージセンサ141が、デプス方向の検出機能を有していてもよい。そのようにすることにより、空間座標変換部142は、撮像画像とそのデプス値を用いてより容易に観測点の空間座標を導出することができる。また、センサ部131が複数のセンサを有してもよい。
【0035】
レンダラ132は、通信デバイス122から供給される、外部の他の装置から送信されたハプティクスデータを用いてレンダリングを行い、アクチュエータに対する制御情報を生成する。レンダラ132は、その制御情報をアクチュエータ133に供給する。なお、レンダラ132は、センサ部131(空間座標変換部142)から供給されるハプティクスデータも用いてレンダリングを行うこともできる。
【0036】
アクチュエータ133は、レンダラ132から供給される制御情報に対応してハプティクスインタフェース134を駆動させる。例えば、アクチュエータ133は、伝送されたハプティクスデータにより表現される動き(力覚や触覚等)をハプティクスインタフェース134に再現させる。
【0037】
ハプティクスインタフェース134は、ユーザであるオペレータやリモートデバイス等に対する力覚データや触覚データ等のインタフェースとして機能する。例えば、ハプティクスインタフェース134は、アクチュエータ133に制御されてレンダラ132から出力されるハプティクスデータに対応する動きや触覚等を再現する。
【0038】
通信デバイス122は、ハプティクスデータの送受信に関する処理を行う。図3の例の場合、通信デバイス122は、コンポーザ151、符号化部152、コンテナ処理部153、MPD生成部154、撮像部155、およびビデオ符号化部156を有する。
【0039】
コンポーザ151は、ハプティックデバイス121(センサ部131)から供給されるハプティクスデータを伝送用のフォーマットに変換する(例えば後述するKTマップを生成する)。コンポーザ151は、その伝送用のハプティクスデータを符号化部152に供給する。また、コンポーザ151は、その伝送用のハプティクスデータをMPD生成部154にも供給することができる。
【0040】
符号化部152は、コンポーザ151から供給されるハプティクスデータを取得して符号化し、ハプティクスデータの符号化データを生成する。符号化部152は、その符号化データをコンテナ処理部153に供給する。
【0041】
コンテナ処理部153は、送信用データの生成に関する処理を行う。例えば、コンテナ処理部153は、符号化部152から供給されるハプティクスデータの符号化データを取得し、その符号化データを送信用データに格納し、それをリモートシステム102宛てに送信することができる。
【0042】
また、通信デバイス122は、ハプティックデバイス121において生成されたハプティクスデータについて、その再生を制御する制御情報であるMPDを生成することができる。
【0043】
例えば、MPD生成部154は、コンポーザ151からハプティクスデータを取得し、そのハプティクスデータについてのMPDを生成し、その生成したMPDを符号化部152に供給し得る。その場合、符号化部152は、MPD生成部154から供給されるMPDを取得して符号化し、MPDの符号化データを生成し、その符号化データをコンテナ処理部153に供給し得る。コンテナ処理部153は、その符号化部152から供給されるMPDの符号化データを送信用データに格納し、それを例えばMPDサーバ103宛てに送信することができる。なお、コンテナ処理部153が、そのMPDの符号化データを格納した送信用データを、リモートシステム102宛てに送信するようにしてもよい。
【0044】
さらに、通信デバイス122は、ハプティクスデータでないデータを送信することもできる。例えば、通信デバイス122は、ハプティックデバイス121を撮像し、その撮像画像をリモートシステム102宛てに伝送することができる。
【0045】
例えば、撮像部155は、イメージセンサ等よりなり、ハプティックデバイス121(またはそのハプティックデバイス121のユーザ)を撮像し、撮像画像データを生成し、その撮像画像データをビデオ符号化部156に供給し得る。ビデオ符号化部156は、その撮像部155から供給される撮像画像データを取得して符号化し、撮像画像データの符号化データを生成し、その符号化データをコンテナ処理部153に供給し得る。その場合、コンテナ処理部153は、そのビデオ符号化部156から供給される撮像画像データの符号化データを送信用データに格納し、その送信用データを例えばリモートシステム102宛てに送信することができる。
【0046】
さらに、通信デバイス122は、コンテナ処理部161、復号化部162、MPD制御部163、ビデオ復号化部164、および表示部165を有する。
【0047】
コンテナ処理部161は、送信用データから所望のデータを抽出する処理を行う。例えば、コンテナ処理部161は、リモートシステム102から送信される送信用データを受信し、その送信用データからハプティクスデータの符号化データを抽出し、その抽出した符号化データを復号化部162に供給することができる。
【0048】
復号化部162は、コンテナ処理部161から供給されるハプティクスデータの符号化データを取得して復号化し、ハプティクスデータを生成し、その生成したハプティクスデータをハプティックデバイス121(のレンダラ132)に供給することができる。
【0049】
また、通信デバイス122は、MPDを用いてハプティクスデータの再生を制御することができる。
【0050】
例えば、コンテナ処理部161は、MPDサーバ103から所望のハプティクスデータに対応するMPDが格納された送信用データを取得し、その送信用データからMPDの符号化データを抽出し、それを復号化部162に供給することができる。復号化部162は、その符号化データを復号化してMPDを生成し、そのMPDをMPD制御部163に供給し得る。MPD制御部163は、復号化部162から供給されたMPDを取得し、そのMPDを用いてコンテナ処理部161を制御し、所望のハプティクスデータの符号化データを格納する送信用データを取得させることができる。
【0051】
さらに、通信デバイス122は、ハプティクスデータでないデータを受信することもできる。例えば、通信デバイス122は、ハプティックデバイス121の撮像画像をリモートシステム102から受信することができる。
【0052】
その場合、コンテナ処理部161は、リモートシステム102から送信される送信用データを受信し、その送信用データから撮像画像データの符号化データを抽出し、その抽出した符号化データをビデオ復号化部164に供給することができる。ビデオ復号化部164は、コンテナ処理部161から供給される符号化データを取得して復号化し、その撮像画像データを生成し、その生成した撮像画像データを表示部165に供給することができる。そして、表示部165は、モニタやプロジェクタ等の任意の表示デバイスを有し、その供給された撮像画像データに対応する撮像画像を表示することができる。
【0053】
なお、リモートシステム102は、ローカルシステム101と同様の構成を有することができる。つまり、図3を参照して行った説明は、リモートシステム102にも適用することができる。
【0054】
<MPDサーバ>
図4は、MPDサーバ103の主な構成例を示すブロック図である。図4に示されるMPDサーバ103において、CPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203は、バス204を介して相互に接続されている。
【0055】
バス204にはまた、入出力インタフェース210も接続されている。入出力インタフェース210には、入力部211、出力部212、記憶部213、通信部214、およびドライブ215が接続されている。
【0056】
入力部211は、例えば、キーボード、マウス、マイクロホン、タッチパネル、イメージセンサ、モーションセンサ、その他各種センサ等、任意の入力デバイスを含み得る。また、入力部211が入力端子を含むようにしてもよい。出力部212は、例えば、ディスプレイ、プロジェクタ、スピーカ等、任意の出力デバイスを含み得る。また、出力部212が出力端子を含むようにしてもよい。
【0057】
記憶部213は、例えば、ハードディスク、RAMディスク、不揮発性のメモリ等、任意の記憶媒体と、その記憶媒体に対する情報の書き込みや読み出しを行う記憶制御部を備える。通信部214は、例えば、ネットワークインタフェースよりなる。ドライブ215は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等、任意のリムーバブル記録媒体221を駆動し、そのリムーバブル記録媒体221に対する情報の書き込みや読み出しを行う。
【0058】
以上のように構成されるMPDサーバ103では、CPU201が、例えば、記憶部213に記憶されているプログラムを、入出力インタフェース210およびバス204を介して、RAM203にロードして実行することにより、後述する機能ブロックで示される各種機能を実現する。RAM203にはまた、CPU201がプログラムの各種の処理を実行する上において必要なデータなども適宜記憶される。
【0059】
コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体221に記録して適用することができる。その場合、プログラムは、リムーバブル記録媒体221をドライブ215に装着することにより、入出力インタフェース210を介して、記憶部213にインストールすることができる。
【0060】
また、このプログラムは、ローカルエリアネットワーク、専用線によるネットワークあるいはWAN、インターネット、衛星通信等といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部214で受信し、記憶部213にインストールすることができる。
【0061】
その他、このプログラムは、ROM202や記憶部213に、あらかじめインストールしておくこともできる。
【0062】
<Force表現・多関節情報の伝送>
遠隔操作システム100は、例えば、図5のように、ハプティクスインタフェース134に装着されたスタイラスやハンドル等のオブジェクトに力を加えた場合にハプティクスインタフェース134のデバイスポジション(関節等)に加わる力を表現する。
【0063】
また、遠隔操作システム100は、複数のデバイスポジション(多関節等)について、ハプティクスデータ(力覚データや触覚データ)の伝送を行う。
【0064】
なお、以下においては、ハプティクスデータが、デバイスポジションにおいて検出される力覚データ、デバイスポジションにおいて検出される触覚データ、デバイスポジションに印加される力を表現する力データの内の少なくともいずれか1つを含むものとする。
【0065】
末端部の動きだけを再現する場合は、位置情報は1つでも表現できるが、視点から末端へ至る関節点の動きを忠実再現することはできなく、利用用途が限定されてしまう。関節点が多段で構成され、各関節点の位置と、その各関節点位置における力やトルクなどの作用点情報を再現させたい場合、センサ出力のYaw/Pitch/RollのRotation情報と共に、力・トルクの情報を各関節点に関して記述することにより、より高精度な制御が可能になる。
【0066】
また、多段のセンサ出力の各々を記述すると共に、接続情報をメタデータとして受信側に伝送することにより、受け側の再生デバイスでより正確なトレースが可能になる。遠隔操作システム100は、力覚センサで構成される各関節部分の接続情報を記述し、伝送する際にメタデータとして受け側に伝送することで高度な力覚再現性を実現することを可能とする。
【0067】
<ユースケース1>
このような遠隔操作システム100の適用例について説明する。例えば、ハプティクスインタフェース134として、図6に示されるような立体刺激デバイス301を適用し、この立体刺激デバイス301の動きを遠隔地において再現するシステムに、遠隔操作システム100を適用してもよい。
【0068】
立体刺激デバイス301は、複数の関節を持つアームの先端に棒状のオブジェクト302が装着されており、そのアームによってオブジェクト302の位置や姿勢を支持している。換言するに、例えばユーザ等がこのオブジェクト302を移動させたり姿勢を変化させたりすると立体刺激デバイス301は、そのアームによってオブジェクト302の位置や姿勢の変化を検出することができる。
【0069】
オブジェクト302は、例えば、ペンや指示棒等としての機能を果たす。例えば、ユーザがオブジェクト302を動かして文字を書いたり、線や絵を描いたりすると、立体刺激デバイス301は、アームによって、そのオブジェクト302の位置や姿勢の変化を検出し、その変化を表現可能なハプティクスデータを得ることができる。例えば、このハプティクスデータを用いて、立体刺激デバイス301と同様の駆動機構を有するデバイスの動きを制御することにより、上述のオブジェクト302の動きを再現することができる。
【0070】
図6に示されるように、このアームは複数の関節(可動部)を有する。センサ部131は、このような立体刺激デバイス301(ハプティクスインタフェース134)の複数の関節と、オブジェクト302が装着されるアームの先端とを観測点とし、各観測点についてのハプティクスデータを検出する。
【0071】
例えば、アームの3つの関節点を、付け根側(図中左側)から順に、観測点Art_1、観測点Art_2、観測点Art_3とする。また、アームの先端(オブジェクト302が装着された位置)を観測点Art_4とする。各観測点の接続位置関係は動きの原点(Origin)から順に、Art_1 -> Art_2 -> Art_3 -> Art_4となっていて、Art_1が動きの原点となり、以後の接続関係の支点となる。なお、原点を別の位置に設け、Art_1を原点からのオフセットをもつ位置とすることもできる。
【0072】
センサ部131は、ハプティクスデータとして、観測点についての、位置に関する情報、動きに関する情報、および印加される力に関する情報を検出する。位置に関する情報は、観測点の位置を示す情報を含む。動きに関する情報は、観測点に装着されるオブジェクト302の動き(姿勢の変動量)を示す情報を含む。図6の例の場合、オブジェクト302が装着される観測点Art_4についてのみこの情報が得られる。印加される力に関する情報は、観測点における鉛直方向に加わる力の大きさと方向(押す、引く等)を示す情報を含む。図6の例の場合、この力は、オブジェクト302を介して印加される力を表す。したがって、オブジェクトが装着される観測点Art_4についてのみこの情報が得られる。
【0073】
センサ部131は、図7の表に示されるような情報をハプティクスデータとして出力する。図7の例は図6の例に対応する。この図7の表において、P_IDは、観測点の識別情報(ID)である。図7の例の場合、A1(図6のArt_1)乃至A4(図6のArt_4)の4つの観測点についてハプティクスデータが検出されている。UPSPは、支点方向に上流に位置する隣接観測点(関節点)を示す。例えば、観測点A2(Art_2)のUPSPは、観測点A1(Art_1)、観測点A3(Art_3)のUPSPは、観測点A2(Art_2)、観測点A4(Art_4)のUPSPは、観測点A4(Art_4)となる。なお、観測点A1(Art_1)は、最上位の(アームの一番付け根側の)観測点であるので、UPSPにはその観測点A1自身が割り当てられる。
【0074】
支点関節点位置は、観測点の位置を示す情報である。観測点の位置の表現方法は任意である。例えば、その観測点の支点を原点とする座標(例えば、xyz座標)により表してもよい(x1/y1/z1、x2/y2/z2、x3/y3/z3、x4/y4/z4)。隣接する関節点とのベクトルの絶対値を取ることで回転半径r が一意に求まる。また、この座標と、上述の観測点間の接続位置関係を組み合わせることより、各観測点の位置を単一の座標系で表すことができる。
【0075】
刺激操作は、観測点の動きに関する情報である。上述したように、オブジェクトが装着される観測点Art_4についてのみこの情報が得られている。この動きの表現方法は任意である。例えば、図8に示されるように、x,y,zの各座標軸を回転軸とする回転方向(ピッチ(PITCH)、ヨー(YAW)、ロール(ROLL))の動き(速度)で表してもよい(pt4/yw4/rl4)。
【0076】
力は、観測点に印加される力に関する情報である。上述したように、オブジェクトが装着される観測点Art_4についてのみこの情報が得られている。この力の表現方法は任意である。例えばニュートン(N)のように、力の大きさにより表すようにしてもよい(N4)。また、値の符号でその力の向きを表すようにしてもよい。例えば、値が正の場合、オブジェクト302を観測点Art_4に向かって押す向きの力であることを示し、値が負の場合、オブジェクト302を観測点Art_4から離れる向き(引っ張る向き)の力であることを示すようにしてもよい。また、例えば、アーム等の質量(m)を既知の情報とし、加速度(a)を用いてこの力を表すようにしてもよい(F=ma)。
【0077】
なお、動作が連鎖する(動きに関連がある)観測点同士をグループ化してもよい。また、グループ内の観測点の内、より関連性の強い観測点によってサブグループ(Sub_Gp)を形成してもよい。例えば、観測点A1乃至観測点A4は、1つの立体刺激デバイス301の観測点であるので、互いの動作に関連性があり、これらをグループ化することができる。また、観測点A1乃至観測点A4は、1つのアームの観測点でもあるので互いの動作により強い関連性があり、サブグループを形成することができる。図7の例の場合、観測点A1からなるサブグループと、観測点A2乃至A4からなるサブグループとが形成されている。このように支点となる最も付け根側の観測点は固有のサブグループを形成してもよい。
【0078】
図7の表は一例であり、センサ部131が出力するハプティクスデータは、図7の例に限定されない。センサ部131が出力するハプティクスデータは、観測点において検出される力覚に関する情報を含む力覚データ、観測点において検出された触覚に関する情報を含む触覚データ、および観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つを含んでいればよい。
【0079】
図7の例において、支点関節点位置は、観測点の位置に関する情報であり、力覚に関する情報である。また、刺激操作は、観測点の速度に関する情報であり、力覚に関する情報である。つまり、支点関節点位置および刺激操作のデータは、力覚データに含まれる。また、力は、観測点に印加される力の大きさに関する情報である。つまり、力のデータは、力データに含まれる。
【0080】
つまり、例えば、センサ部131が出力するハプティクスデータに、触覚データが含まれていてもよいし、図7に示される情報の一部が省略されてもよい。
【0081】
図7の例のような、複数の観測点についてのハプティクスデータを伝送することにより、遠隔操作システム100は、例えば、観測点Art_4の位置情報のみからでは表現できないオブジェクト302の動きを表現することができる。また、印加される力も表現することができる。したがって、より高精度に遠隔制御を行うことができる。
【0082】
<ユースケース2>
また、例えば、ハプティクスインタフェース134として、図9に示されるようなグローブ型デバイス311を適用し、このグローブ型デバイス311の動きを遠隔地において再現するシステムに、遠隔操作システム100を適用してもよい。
【0083】
グローブ型デバイス311は、グローブ型のデバイスであり、例えばユーザ等がそのグローブ型デバイスをグローブのように手に装着して動かすと、その動きが検出され得る。図9に示されるように、センサ部131は、グローブ型デバイス311の手首、関節、指先端等を観測点とする。観測点A1はグローブ型デバイス311の手首である。観測点A2およびA3は親指の関節であり、観測点B1は親指の先端である。観測点A4乃至A6は人差し指の関節であり、観測点B2は人差し指の先端である。観測点A7乃至A9は中指の関節であり、観測点B3は中指の先端である。観測点A10乃至A12は薬指の関節であり、観測点B4は薬指の先端である。観測点A13乃至A15は小指の関節であり、観測点B5は小指の先端である。
【0084】
ユースケース1の場合と同様に、センサ部131は、これらの観測点についてハプティクスデータを検出する。例えば、図10のように、ユーザがこのグローブ型デバイス311を装着してオブジェクト312(例えばスマートフォン)を把持すると、その指の動き、つまり、各観測点の動きがセンサ部131により検出され、ハプティクスデータが出力される。図11の表は、そのハプティクスデータの例を示す。
【0085】
図11の表には、図7の例と同様に、各観測点について、P_ID、UPSP、および支点関節位置が示されている。また、オブジェクト312と接触する観測点(例えば、観測点A2,A3,A6,A9,A12,A15)のそれぞれについて、刺激操作が示されている。さらに、指の先端の観測点(例えば観測点B1乃至B5)のそれぞれに印加される力が示されている。これらの情報の表現方法は、ユースケース1の場合と同様に任意である。
【0086】
また、この場合、図11の表において点線枠で示されるように、指毎に観測点がサブグループ化されている。例えば、支点となる観測点A1、親指の観測点A2,A3,B1、人差し指の観測点A4,A5,A6,B2、中指の観測点A7,A8,A9,B3、薬指の観測点A10,A11,A12,B4、小指の観測点A13,A14,A15,B5がそれぞれサブグループ化されている。
【0087】
図11の表は一例であり、センサ部131が出力するハプティクスデータは、図11の例に限定されない。センサ部131が出力するハプティクスデータは、観測点において検出される力覚に関する情報を含む力覚データ、観測点において検出された触覚に関する情報を含む触覚データ、および観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つを含んでいればよい。
【0088】
図11の例において、支点関節点位置は、観測点の位置に関する情報であり、力覚に関する情報である。また、刺激操作は、観測点の速度に関する情報であり、力覚に関する情報である。つまり、支点関節点位置および刺激操作のデータは、力覚データに含まれる。また、力は、観測点に印加される力の大きさに関する情報である。つまり、力のデータは、力データに含まれる。
【0089】
つまり、例えば、センサ部131が出力するハプティクスデータに、触覚データが含まれていてもよいし、図11に示される情報の一部が省略されてもよい。
【0090】
図11の例のような、複数の観測点についてのハプティクスデータを伝送することにより、遠隔操作システム100は、例えば、指先の観測点B1乃至B5の位置情報のみからでは表現できないオブジェクト302の動きを表現することができる。また、印加される力も表現することができる。したがって、より高精度に遠隔制御を行うことができる。
【0091】
<KTマップ>
以上のような複数の観測点についてのハプティクスデータの各情報を、例えば、図12に示されるKT(Kinesthetic & Tactile)マップ331を用いて、観測点毎にまとめてもよい(観測点毎に分類してもよい)。図12に示されるKTマップは、各観測点についてのハプティクスデータを、観測点毎にまとめた(観測点毎に分類した)表である。
【0092】
図12に示されるようにこのKTマップ331においては、観測点がグループ毎にまとめられ、そのグループの識別情報(グループID)が示される。そのグループにおいては、各観測点の識別情報(P_ID)が示され、各P_IDに対して、UPSP、支点関節点位置、刺激操作、力(N)、硬さ(G)、摩擦係数(μ)、温度(℃)等の情報が紐づけされている。
【0093】
P_ID、UPSP、支点関節点位置、刺激操作、および力(N)は、図7図11の例と同様の情報である。なお、力の種類は圧力であってもよい。圧力は単位面積にかかる力で表現されるもので例えば、N/m2またはパスカルPが単位となる。硬さ(G)は、観測点において検出された、ハプティクスインタフェース134が接触した物体表面の硬さを示す情報である。硬さを表す単位をここでは剛性率で表すこととする。剛性率は弾性率の一種で変形のしにくさをきめる物性値であり、Gpaで表すことができる。Gpa値が大きいほど硬いことになる。摩擦係数(μ)は、観測点において検出された、ハプティクスインタフェース134が接触した物体表面の摩擦係数を示す情報である。摩擦係数は、摩擦力を接触面に作用する垂直抗力で割った無次元量(μ=F/N)で求めることができる。温度(℃)は、観測点において検出された、ハプティクスインタフェース134が接触した物体表面の温度を示す情報である。つまり、これらの硬さ(G)、摩擦係数(μ)、温度(℃)は、いずれも、ハプティクスインタフェース134が接触した物体表面に関する情報であり、すなわち触覚に関する情報である。つまりこれらのデータは、触覚データに含まれる。
【0094】
このように、ハプティクスデータを観測点毎にまとめたKTマップ331とすることにより、より容易に、所望の観測点のハプティクスデータを選択し、授受することができる。また、ハプティクスデータを、図12の例のような表形式のKTマップ331とすることにより、より容易に、所望の観測点の所望の情報を選択し、授受することができる。したがって、ハプティクスデータの伝送に関する通信や処理の負荷を制御し調整することが可能となる。
【0095】
なお、KTマップ331には、観測点毎のハプティクスデータが含まれていればよく、その内容は図12の例に限定されない。例えば、図12に示されていない情報がKTマップ331に含まれるようにしてもよいし、図12に示される情報の一部が省略されてもよい。また、図7図11の例の場合と同様に、観測点をサブグループ化してもよい。
【0096】
<ユースケース3>
遠隔操作システム100は、このようなハプティクスデータを双方向に伝送することもできる。例えば、図13に示されるように、ローカルオペレータがグローブ型デバイス311を操作すると、そのグローブ型デバイス311の複数の観測点(黒丸)において検出されたハプティクスデータ(各観測点の位置、速度、加速度等のデータや印加される力データ等)が遠隔地のリモートデバイス351に伝送される(forward)。このリモートデバイス351は、グローブ型デバイス311に対応する手型のデバイス(所謂ロボットハンド)であり、リモートシステム102のハプティクスインタフェース134である。
【0097】
リモートデバイス351は、伝送された複数の観測点ハプティクスデータに基づいて、自身の関節等の複数の制御点(白丸)を制御し、所定の把持対象のオブジェクト352(例えばボール等)を把持する。
【0098】
リモートデバイス351の複数の観測点(白丸)において、そのオブジェクト352の把持による力覚データ、触覚データ、力データ等のハプティクスデータが検出されると、そのハプティクスデータ(各観測点の位置、速度、加速度等のデータや印加される力データ等)がローカルオペレータのグローブ型デバイス311に伝送される(feedback)。つまり、この場合、デバイスの力点(オブジェクトを把持する部分)には力覚センサがあって、加えた力を検知し数値化して相手側へ伝送する。力点の位置は関節点の位置とは独立で任意の位置とできる。
【0099】
このようにfeedback伝送を行うことにより、グローブ型デバイス311は、リモートデバイス351において検出された、オブジェクト352を把持した時の反作用の力を再現することができる。つまり、ローカルオペレータがその反作用の力を感じることができる。したがって、リモートデバイス351において、反作用の力として受信信号と同じ大きさの力で反対方向の向きをfeedbackするとローカルオペレータ側では指で掴んで位置が安定していると感じる。ローカルオペレータが、このような感覚を得られるようにグローブ型デバイス311に印加する力を調節することにより、リモートデバイス351が安定的にオブジェクト352を把持することができるように遠隔操作を行うことができる。つまり、より高精度に遠隔制御を行うことができる。
【0100】
なお、このfeedback伝送は、forward伝送された力覚データがオブジェクト352の把持によって更新される場合のみ行われるようにしてもよい。
【0101】
<ユースケース4>
なお、ハプティクスデータの伝送は無線通信によって行われるようにしてもよい。例えば、図14に示されるように、所謂ドローン等の飛行体361に設けられたロボットハンド362の遠隔制御に遠隔操作システム100を適用してもよい。この場合、ローカルオペレータは、グローブ型デバイス311を操作してロボットハンド362に対する操作を入力する。ローカルシステム101は、そのグローブ型デバイス311において検出された力覚データとしての位置データやフォースデータを無線通信により飛行体361に送信する。飛行体361は、その情報をロボットハンド362に供給し、ロボットハンド362は、その制御に従って駆動し、オブジェクトを掴む等の動作を行う。ロボットハンド362がオブジェクトを掴む等すると、ユースケース3の場合と同様に、その位置データやフォースデータがグローブ型デバイス311にフィードバックされる。ローカルオペレータは、そのフィードバックされた位置データやフォースデータに基づいてグローブ型デバイス311により再現された力覚や触覚等を体感しながらロボットハンド362の遠隔制御を行うことができる。
【0102】
このような遠隔操作は、例えば、救助用の飛行体361が事件現場に飛んでいき、そこで発見された人の体をロボットハンド362により掴んで救助する等の作業に適用することができる。例えば、ローカルオペレータの手に連動する形で、ロボットハンド362が動き、人を抱きかかえるようにホールドするようにしてもよい。また、その時フィードバック伝送によりローカルオペレータが人をホールドしているか否かを確認することができるようにしてもよい。なお、フィードバックデータに映像や音声のデータが含まれていてもよい。
【0103】
<ユースケース5>
またリモートデバイスにより素材の表面の様子を検知するシステムに、遠隔操作システム100を適用してもよい。例えば、図15に示されるように、ローカルオペレータがグローブ型デバイス311を装着して図中上から下に向かって走査させると、グローブ型デバイス311において検出されたハプティクスデータが遠隔地のリモートデバイス371にforward伝送され、そのリモートデバイス371においてグローブ型デバイス311の動きが再現される。つまり、リモートデバイス371は、物体表面372において、図中上から下に向かって走査する。
【0104】
この走査により、リモートデバイス371は、その物体表面372の凹凸具合等を検出する。このハプティクスデータがローカルオペレータ側のグローブ型デバイス311にfeedback伝送される。グローブ型デバイス311は、触感アクチュエータにより、そのハプティクスデータに基づいてリモートデバイス371において検出された物体表面372の凹凸を再現する。これによりローカルオペレータは、直接触れていないその凹凸を把握することができる。
【0105】
例えば、ローカルオペレータが触感の検知に関して、所定の力でもって指2本で操作することで幅をもった範囲を同時に検知することができる。ある時間において位置情報が変化すると、それにより計算される速度V(mm/sec)で、表面の凹凸の間隔がλmmである素材をなぞると、皮膚表面には周波数f=V/λHzの振動が生じる。この振動をトレースすると例えば図16のようになる。したがって、2本の指(触覚点)のposition情報から、左右横に並んで2本の指が並行走査した結果の触感データのフィードバックパターンが多少の時間差分をもって類似関係にあることが分かる。したがって、2本指で走査した距離において表面の凹凸が斜めに存在することが分かる。
【0106】
このように2本の指の位置と各々の位置において得られた触感フィードバック情報をローカル側で比較することにより、複数positionの表面の形状や凹凸感、ざらざら、すべすべ感をより正確に、効率的に把握し、面としてのテクスチャ構造を把握することが可能になる。ローカル側から送信される力の情報により、リモート側でのどの程度の力で押すか制御することができる。このように、映像の配信がない、触覚のみの伝送においても複数ポイントを同時に走査することで物体表面のテクスチャの把握が可能となる。
【0107】
<ユースケース6>
また、XR(Extended Reality)をシステムに適用してもよい。例えば、図17のように、仮想の手の映像を表示する等して感覚の現実性を向上させるようにしてもよい。図17の例の場合、ローカルオペレータはグローブ型デバイス311-1を装着し、遠隔地のリモートオペレータとの仮想的な握手動作を行う。そのリモートオペレータもグローブ型デバイス311-2を装着しており、同様に、ローカルオペレータとの仮想的な握手動作を行う。
【0108】
forward伝送およびfeedback伝送により、それぞれのグローブ型デバイス311において検出されたハプティクスデータが交換され、相手側のグローブ型デバイス311の力覚・触感アクチュエータによりその動きが再現される。
【0109】
また、ローカルオペレータは、ヘッドマウントディスプレイ(HMD(Head Mounted Display))381-1を装着している。同様に、リモートオペレータは、ヘッドマウントディスプレイ(HMD)381-2を装着している。ヘッドマウントディスプレイ381-1およびヘッドマウントディスプレイ381-2を互いに区別して説明する必要が無い場合、ヘッドマウントディスプレイ381と称する。ヘッドマウントディスプレイ381には、自身の周りを認識するためのイメージセンサが装着されている。
【0110】
ヘッドマウントディスプレイ381-1には、ローカルオペレータが操作するグローブ型デバイス311-1に対応するリアルな手の画像と、リモートオペレータが操作するグローブ型デバイス311-2に対応する仮想的な手の画像とを含む仮想空間の映像が表示される。グローブ型デバイス311-1に対応する仮想的な手の画像は、グローブ型デバイス311-1において検出されたハプティクスデータに基づいて生成される。つまり、このリアルな手の画像は、ローカルオペレータにより操作されるグローブ型デバイス311-1の動きの様子を再現する。同様に、グローブ型デバイス311-2に対応する仮想的な手の画像は、グローブ型デバイス311-2から伝送されたハプティクスデータに基づいて生成される。つまり、この仮想的な手の画像は、リモートオペレータにより操作されるグローブ型デバイス311-2の動きの様子を再現する。
【0111】
ローカルオペレータは、そのヘッドマウントディスプレイ381-1に表示された映像を見ながらグローブ型デバイス311-1を操作することにより、例えば、ヘッドマウントディスプレイ381-1に表示される仮想空間において、仮想的な手同士の握手を行うことができる。さらに、グローブ型デバイス311-1は、力覚・触感アクチュエータにより、グローブ型デバイス311-2からフィードバックされたハプティクスデータを用いて力覚や触覚を再現することができるので、ローカルオペレータは、その握手する際の相手の手の動きや力加減、そして温度などの感覚を感じることができる。さらに、本システムの場合、ローカルオペレータが握手の様子の映像を見ることができるので、その握手の感覚の現実性を向上させることができる。
【0112】
リモートオペレータ側も同様である。ヘッドマウントディスプレイ381-2には、ローカルオペレータが操作するグローブ型デバイス311-1に対応する仮想的な手の画像と、リモートオペレータが操作するグローブ型デバイス311-2に対応する仮想的な手の画像とを含む仮想空間の映像が表示される。グローブ型デバイス311-1に対応する仮想的な手の画像は、グローブ型デバイス311-1から伝送されたハプティクスデータに基づいて生成される。つまり、この仮想的な手の画像は、ローカルオペレータにより操作されるグローブ型デバイス311-1の動きの様子を再現する。同様に、グローブ型デバイス311-2に対応する仮想的な手の画像は、グローブ型デバイス311-2において検出されたハプティクスデータに基づいて生成される。つまり、この仮想的な手の画像は、リモートオペレータにより操作されるグローブ型デバイス311-2の動きの様子を再現する。
【0113】
リモートオペレータは、そのヘッドマウントディスプレイ381-2に表示された映像を見ながらグローブ型デバイス311-2を操作することにより、例えば、ヘッドマウントディスプレイ381-2に表示される仮想空間において、仮想的な手同士の握手を行うことができる。さらに、グローブ型デバイス311-2は、力覚・触感アクチュエータにより、グローブ型デバイス311-1からフィードバックされたハプティクスデータを用いて力覚や触覚を再現することができるので、リモートオペレータは、その握手する際の相手の手の感覚を感じることができる。さらに、本システムの場合、リモートオペレータが握手の様子の映像を見ることができるので、その握手の感覚の現実性を向上させることができる。
【0114】
例えば、ローカルシステム101は、基準位置RP1(Reference Position 1)の絶対座標位置、絶対座標軸の向き(水平面と鉛直方向)、絶対座標での座標値(x,y,z)、基準観測点BP1(例えば、Group1(= Organ1)の支点)、基準位置RP1からのオフセット等の情報によりグローブ型デバイス311-1の位置を表現する。
【0115】
同様に、例えば、リモートシステム102は、基準位置RP2(Reference Position 2)の絶対座標位置、絶対座標軸の向き(水平面と鉛直方向)、絶対座標での座標値(x,y,z)、基準観測点BP2(例えば、Group2(= Organ2)の支点)、基準位置RP2からのオフセット等の情報によりグローブ型デバイス311-2の位置を表現する。
【0116】
これらの情報を授受することにより、グローブ型デバイス311-1とグローブ型デバイス311-2の相対位置を導出することができ、仮想的な空間で握手を行うことができる。
【0117】
<ユースケース7>
また、図17のシステムと同様に遠隔地のオペレータ同士による仮想的な握手を実現するシステムにおいて、ローカルオペレータとリモートオペレータがそれぞれ、実在のロボットハンドと握手を行うようにしてもよい。
【0118】
この場合、ヘッドマウントディスプレイ381は不要である。代わりに、ローカルオペレータの付近には、ロボットハンド391-1が設置されている。ローカルオペレータは、グローブ型デバイス311-1を操作して、このロボットハンド391-1と実際に握手をする。このロボットハンド391-1は、グローブ型デバイス311-2から伝送されたハプティクスデータに基づいて駆動し、リモートオペレータが操作するグローブ型デバイス311-2の動きを再現する。つまり、ローカルオペレータとリモートオペレータは、互いに相手と本当に握手を行っているかのような感覚(力覚や触覚)を得ることができる。また、実在のロボットハンド391-1が駆動するので、ローカルオペレータは、その握手の感覚の現実性を向上させることができる。
【0119】
リモートオペレータ側も同様である。つまりリモートオペレータの付近には、ロボットハンド391-2が設置されている。リモートオペレータは、グローブ型デバイス311-2を操作して、このロボットハンド391-2と実際に握手をする。このロボットハンド391-2は、グローブ型デバイス311-1から伝送されたハプティクスデータに基づいて駆動し、ローカルオペレータが操作するグローブ型デバイス311-1の動きを再現する。つまり、ローカルオペレータとリモートオペレータは、互いに相手と本当に握手を行っているかのような感覚(力覚や触覚)を得ることができる。また、実在のロボットハンド391-2が駆動するので、リモートオペレータは、その握手の感覚の現実性を向上させることができる。
【0120】
例えば、ローカルシステム101は、基準位置RP1(Reference Position 1)の絶対座標位置、絶対座標軸の向き(水平面と鉛直方向)、絶対座標での座標値(x,y,z)、基準観測点BP1(例えば、Group1(= Organ1)の支点)、基準位置RP1からのオフセット等の情報によりグローブ型デバイス311-1の位置を表現する。
【0121】
同様に、例えば、リモートシステム102は、基準位置RP2(Reference Position 2)の絶対座標位置、絶対座標軸の向き(水平面と鉛直方向)、絶対座標での座標値(x,y,z)、基準観測点BP2(例えば、Group2(= Organ2)の支点)、基準位置RP2からのオフセット等の情報によりグローブ型デバイス311-2の位置を表現する。
【0122】
これらの情報を授受することにより、グローブ型デバイス311-1とグローブ型デバイス311-2の相対位置を導出することができ、仮想的な握手(実在のロボットハンド391との握手)を行うことができる。
【0123】
<レンダラ>
次に、レンダラ132について説明する。レンダラ132は、力データについて、例えば、ローカル動作で発生する力データとリモートから受信した力データとの合成を行うようにしてもよい。その場合のレンダラ132の主な構成例を図19に示す。図19に示されるように、この場合のレンダラ132は、合成部401を有する。この合成部401は、センサ部131から供給される、ローカル動作で発生する力データ(Force1(power,direction))を取得する。また、合成部401は、復号化部162から供給される、リモートから受信した力データ(Force2(power,direction))を取得する。合成部401は、それらの力データを合成し、アクチュエータ133の制御情報(Synth_force(power,direction))を生成する。合成部401は、その制御情報をアクチュエータ133に供給する。
【0124】
また、レンダラ132が、絶対位置でのハプティクスシステムの姿勢補正を行うようにしてもよい。さらに、レンダラ132が、ローカルの位置関係上にリモートの位置情報を補正マッピングさせてもよい。その場合のレンダラ132の主な構成例を図20に示す。この場合、レンダラ132は、位置関係決定部411および位置補正部412を有する。
【0125】
位置関係決定部411は、ローカルの絶対座標1からリファレンスポジションRP1と基準関節点BP1の位置関係を決定する。同様にRP1とローカルの従属関節点CP1の位置関係を決定する。
【0126】
位置補正部412は、リモートからの絶対座標2からリモートのリファレンスポジションRP2とリモートの基準観測点BP2の位置関係、リモートの従属関節点CP2の位置関係が求まる。それらの位置関係を上述のように求めたローカルの位置関係上にスケーリング変換し補正する。そして、補正後の位置データをアクチュエータに送る。
【0127】
なお、同様の処理はリモート側のレンダラにおいても行われるようにしてもよい。
【0128】
<位置検知センサによる遅延補償>
ローカル側、リモート側それぞれに、動きを検知するセンサには予測器を設け、直前の履歴を用いて直後の位置を予測するようにしてもよい。この予測機能により、実際に伝送する位置情報は、ローカル側の現在位置よりも先に進んだ値(先取り位置データ)を伝送することができる。
【0129】
リモート側ではその先取りデータ位置におけるフィードバック情報を送信する。ローカル側での実際の動きが進んだ時に、リモート側からのフィードバック情報を受信しアクチュエータで再現するようにチューニングすることで、ローカル側レンダラ出力を得ることが可能となる。同様のことがリモート側から発信されるセンサ情報にもいえ、リモート側からの先取り位置情報に対して、ローカル側のフィードバックが返されることで、リモート側のレンダラ出力で遅延を感じることなく力覚触感情報を得ることができる。
【0130】
<絶対位置の特定>
GPS(Global Positioning System)情報と3軸方位センサにより北に対する傾きを検出し、ハプティックデバイスの支点位置と設定された方向を特定するようにしてもよい。GPS情報には、例えば、空間座標として、2次元座標(latitude, longitude)、標高(elevation)、時刻(time)等の情報が定義されている。GPS情報のxml型式表現による記述例を図21に示す。
【0131】
<鉛直方向のズレ>
また、例えば図22に示されるように、加速度センサ421を用いてその加速度センサが設置されたデバイス420の傾斜角度を求めるようにしてもよい。例えば、加速度センサ421が重力の働く方向と一致すると加速度センサ421には加速度9.8m/sec2が検出される。これに対して、加速度センサ421が重力の働く方向と直角の方向に配置されると、重力の影響は無くなり、加速度センサ421の出力は0になる。任意の角度θの傾きの加速度a が加速度センサ421の出力として求まると、以下の式(1)により傾斜角θを導出することができる。
【0132】
【0133】
このようにして、ハプティックデバイスの鉛直方向とのズレを算出することができる。
【0134】
<ハプティクスデータ(KTマップ)の他の例>
なお、ハプティクスデータ(KTマップ)の構成は任意であり、上述の例に限定されない。図7の例のハプティクスデータを、図23に示されるような構成としてもよい。図11の例のハプティクスデータを、図24に示されるような構成としてもよい。つまり、支点関節点位置として、各観測点の位置、速度、加速度を示すようにしてもよい。
【0135】
<ハプティクスデータの符号化>
観測点のハプティクスデータ(力覚データ、触覚データ、力データ)の値は、例えば図25のグラフのように、時間軸に沿って動的に変化する。そこで、このようなハプティクスデータを符号化する際に、例えば図26に示されるように、所定の時間毎にフレーム(ハプティクスフレーム(Haptics_frame))を形成するようにしてもよい。
【0136】
図26において、長方形は時系列に並べられたハプティクスデータを示しており、そのハプティクスデータが、所定の時間毎に区切られ、ハプティクスフレーム(Haptics_frame)451-1、ハプティクスフレーム451-2、ハプティクスフレーム451-3、・・・が形成されている。各ハプティクスフレームを互いに区別して説明する必要が無い場合、ハプティクスフレーム451と称する。
【0137】
そして、ハプティクスフレーム451内においてハプティクスデータのサンプル間の予測を行うこともでき、それを行う場合は情報量の増大が抑制される。
【0138】
1次元のデータの符号化方法として、例えばデッドバンド(deadband)がある。デッドバンド方式の場合、例えば、図27のAに示されるような1次元のデータにおいて、直前の値の変動が大きい一部のデータ(黒丸で示されるデータ)のみが符号化され、変動の少ないグレーの部分のデータについては符号化が省略される。復号化の際、符号化されていない区間については、符号化・復号化されたデータが複製される。したがって、復号化されたデータは、図27のBのようになる。つまり、デッドバンド方式の場合、微小な変化分の再生が困難となるおそれがあった。逆に、高精細度の動きを再現しようとすると、Perception thresholdの範囲はごく狭くなり、伝送するデータの頻度が高くなるので、符号化効率が低減してしまうおそれがあった。
【0139】
そこで、ハプティクスデータの符号化においては、時系列の隣接ポイント間で差分を取り、差分値を可変長符号化するようにする。例えば、図28のAに示されるように1次元のハプティクスデータのハプティクスフレーム451内において、時系列の隣接ポイント間で差分を導出する。なお、ハプティクスフレームの先頭のデータは、差分を導出せず、そのままの値を用いる。
【0140】
このようにすることにより、ハプティクスフレーム毎のハプティクスデータ(差分値)は、例えば曲線461乃至曲線464のようになる。そして、この差分値を量子化し、さらに可変長符号化するようにする。このようにすることにより、元のデータをそのまま符号化する場合に比べて、情報量を低減させることができ、符号化効率の低減を抑制することができる。また、このような符号化データを復号化すると、図28のBに示される曲線465のように、元のデータを忠実に復元することができる。したがって、デッドバンド方式のような符号化・復号化による再生精度の低減を抑制することができる。つまり、受信側で高精細な動きの再現が可能であり、また常に一定のデータ圧縮効果も図ることができる。これは3次元空間の動きの場合においても同様である。
【0141】
なお、このような予測処理を行う場合、伝送時のエラー等に起因する不正な復号化値が後続のサンプルに伝搬するおそれがあるが、上述のように、所定の時間毎にハプティクスフレーム化し、その先頭において予測をリフレッシュし、差分値を導出せずに符号化することにより、例えば復号化に失敗した場合にもその伝搬を抑制することができる。これにより、例えば、伝送エラー等に対する耐性を向上させることができる。
【0142】
<符号化部>
この場合の符号化部152(図3)の主な構成例を図29のAに示す。この場合、符号化部152は、遅延部501、演算部502、量子化部503、および可変長符号化部504を有する。
【0143】
遅延部501は、入力されたハプティクスデータ(Input data(t))を遅延させ、遅延されたハプティクスデータ(dd(t))を生成する。演算部502は、入力されたハプティクスデータ(Input data(t))と遅延部501により遅延されたハプティクスデータ(dd(t))との差分値(予測残差値とも称する)(Predicted data(t))を導出する。つまり、サンプル間の予測が行われ、その予測残差が導出される。量子化部503は、その予測残差値(Predicted data(t))を量子化し、量子化係数(quantized data(t))を生成する。可変長符号化部504は、その量子化係数(quantized data(t))を可変長符号化し、符号化データ(variable length code(t))を生成し、出力する。
【0144】
<復号化部>
また、この場合の復号化部162の主な構成例を図29のBに示す。この場合、復号化部162は、可変長復号化部511、逆量子化部512、演算部513、および遅延部514を有する。
【0145】
可変長復号化部511は、入力された符号化データ(variable length code(t))を可変長復号化し、量子化係数(quantized data(t))を生成する。逆量子化部512は、その量子化係数(quantized data(t))を逆量子化し、逆量子化係数(dequantized data(t))を導出する。この逆量子化係数(dequantized data(t))は、復元された予測残差値(Predicted data'(t))である。量子化が行われており量子化ステップ幅によっては非可逆であるので、この復元された予測残差値(Predicted data'(t))は、符号化部152の予測残差値(Predicted data(t))と同一とならない可能性がある。
【0146】
演算部513は、その逆量子化係数(dequantized data(t))に、ハプティクスデータ(Reconstructed data(t))を遅延部514で遅延させたデータ(dd'(t))を加算し、復元されたハプティクスデータ(Reconstructed data(t))を導出する。つまり、演算部513は、予測残差に過去サンプルの復号結果を加算することにより現サンプルのハプティクスデータを生成する。
【0147】
例えば、符号化部152に入力されるハプティクスデータ(Input data(t))値が時系列に沿って「2」→「8」→「4」→「6」→「10」のように変化すると、ハプティクスデータ(dd(t))、予測残差値(Predicted data(t))、ハプティクスデータ(dd'(t))、ハプティクスデータ(Reconstructed data(t))は、それぞれ、図30に示されるような値となる。一般に、可変長符号化では入力値がゼロに近い程、符号長を短くするようなマッピングが行われるので、この結果、情報量を低減させ、符号化効率の低減を抑制することができる。
【0148】
なお、ハプティクスフレーム内においては、支点関節点位置、刺激操作、および力等の情報は、図31のA乃至Cに示されるように、それぞれ、サンプル間の予測がなされ、非予測値と予測残差値により構成される。
【0149】
<ハプティクスデータ送信処理の流れ>
次に、ローカルシステム101において実行される処理について説明する。ローカルシステム101は、ハプティクスデータ送信処理を行うことにより、ハプティクスデータの送信を行う。このハプティクスデータ送信処理の流れの例を図32のフローチャートを参照して説明する。
【0150】
ハプティクスデータ送信処理が開始されると、センサ部131は、ステップS101においてハプティクスインタフェース134の複数の観測点において、力覚データ、触覚データ、力データ等を検出する。ステップS102において、センサ部131は、それらの情報を用いて、マルチポイントのハプティクスデータを生成する。ステップS103において、コンポーザ151は、そのマルチポイントのハプティクスデータを観測点毎にまとめる等して、KTマップを生成する。
【0151】
ステップS104において、符号化部152は、そのKTマップを、サンプル間の予測を用いて符号化し、符号化データを生成する。
【0152】
ステップS105において、コンテナ処理部153は、その符号化データをコンテナに格納し、送信用データを生成する。ステップS106において、コンテナ処理部153は、その送信用データを送信する。
【0153】
以上のようにハプティクスデータを含む送信用データが送信されるとハプティクスデータ送信処理が終了する。
【0154】
このようにすることにより、複数観測点のハプティクスデータを送信することができ、より高精度に遠隔制御を行うことができる。
【0155】
<ハプティクスデータ受信処理の流れ>
次に、図33のフローチャートを参照してハプティクスデータ受信処理の流れの例を説明する。
【0156】
ハプティクスデータ受信処理が開始されると、コンテナ処理部161は、ステップS131において、送信されたデータを受信し、符号化データを抽出する。ステップS132において、復号化部162は、その符号化データを復号化し、KTマップを再現する。ステップS133において、復号化部162は、そのKTマップを用いてマルチポイントのハプティクスデータを再現する。
【0157】
ステップS134において、レンダラ132は、そのマルチポイントのハプティクスデータを用いてレンダリングを行い、アクチュエータ133を制御する制御情報を再現する。
【0158】
ステップS135において、アクチュエータ133は、ステップS134において生成された制御情報に基づいてハプティクスインタフェース134を駆動させる。
【0159】
ハプティクスインタフェース134が駆動するとハプティクスデータ受信処理が終了する。
【0160】
このようにすることにより、複数観測点のハプティクスデータを受信することができ、より高精度に遠隔制御を行うことができる。
【0161】
<3.第2の実施の形態>
<MPDの適用>
上述のように、遠隔操作システム100は、ハプティクスデータの再生にMPDを適用することもできる。その場合、ローカルシステム101は、自身が検出したハプティクスデータについてMPDを生成し、そのMPDをMPDサーバ103に登録することができる。
【0162】
<MPD生成処理の流れ>
このようなMPDを生成するMPD生成処理の流れの例を、図34のフローチャートを参照して説明する。
【0163】
MPD生成処理が開始されると、MPD生成部154は、ステップS161において、コンポーザ151からマルチポイントのハプティクスデータを取得し、そのマルチポイントのハプティクスデータに基づいて、そのマルチポイントのハプティクスデータに対応するMPDを生成する。
【0164】
ステップS162において、コンテナ処理部153は、ステップS161において生成されたMPDをMPDサーバ103宛てに送信する。MPDが送信されるとMPD送信処理が終了する。
【0165】
このようにマルチポイントのハプティクスデータについてMPDを生成し、MPDサーバに登録することにより、MPDに基づいた再生制御を行うことができる。
【0166】
<MPD制御処理の流れ>
MPDを用いたハプティクスデータの再生制御に関する処理であるMPD制御処理の流れの例を、図35のフローチャートを参照して説明する。
【0167】
MPD制御処理が開始されると、MPD制御部163は、ステップS191において、コンテナ処理部161を介してMPDをMPDサーバ103に要求し、取得する。
【0168】
ステップS192において、MPD制御部163は、ステップS191の処理により取得したMPDに基づいて、取得するハプティクスデータを選択する。
【0169】
ステップS193において、MPD制御部163は、コンテナ処理部161を介して、リモートシステム102に対して、ステップS192の処理により選択したハプティクスデータを要求する。
【0170】
以上のような要求に基づいて供給されるハプティクスデータは、ローカルシステム101が上述のハプティクスデータ受信処理を行うことにより取得することができる。
【0171】
<コンテナ構成例>
ハプティクスデータを格納するコンテナの主な構成例を図36のAに示す。ハプティクスデータは、例えば、ISOBMFF(ISO Base Media File Format)形式のコンテナ(送信用データ)に格納される。このISOBMFFの場合、図36のAに示されるように、コンテナは、IS(Initialization Segment)とMS(Media Segment)とを有する。MSには、トラックの識別情報(trackID)やタイムスタンプ(Timestamp)等が格納される。また、DASH MPDは、このMSに紐づけられる。
【0172】
図36のAは、メディアセグメントがフラグメントされない場合のコンテナの様子の例を示す。図36のBは、メディアセグメントがフラグメントされる場合のコンテナの様子の例を示す。メディアセグメントは、ムービーフラグメント(Movie Fragment)として、moofやmdatを内包する。
【0173】
DASHのMPDは、グループID(Group_id)により、メディアセグメントのmoofに紐づけされる。図37のAは、ローカルからの送信の場合の例を示す。図37のBは、リモートからの送信の場合の例を示す。
【0174】
また、ローカルにハプティックデバイスが複数存在する場合、図38に示されるように、1つのMPDを複数のmoofに紐づけることもできる。その場合も、グループIDにより紐づけが行われる。この例のように、ハプティクスデータをグループ毎に互いに異なるトラックに格納するようにしてもよい。
【0175】
<トラックの割り当て>
ハプティクスデータは、1つのグループをメディアファイルの1トラックに割り当ててもよい。図7の例のハプティクスデータを格納する場合のコンテナ構成の例を図39に示す。また、図11の例のハプティクスデータを格納する場合のコンテナ構成の例を図40に示す。さらに、図16の例のハプティクスデータを格納する場合のコンテナ構成の例を図41に示す。
【0176】
<ファイルフォーマット内のデータ配置>
例えば、図42に示されるように、1つのハプティックデバイス121(ハプティクスインタフェース134)の全ての観測点のハプティクスデータを、コンテナの1トラック内に配置するようにしてもよい。この場合、トラックは、1ファイルに割り当てられ、moofはトラック内で独立して配置される。HapticsSampleGroupEntry (‘hsge’)により、各観測点の接続配置と共に、同一時刻におけるsubpart間のoffset位置、時間軸昇順offset位置、sample間のoffset位置等が示される。なお、符号化対象が触覚データ(tactile data)の場合も同様である。subpart間のoffset位置を示すsubpt_grp_offsetにより、再生側での観測点の構造に応じて適宜必要なsubptrepのグループのみをピックアップすることが容易にできる。
【0177】
量子化テーブル(Q_table)、値の精度(Precision_of_positions)、およびコネクションチェイン(connection_chain)の例を図43に示す。connection_chain情報は、subpartrep_ordering_typeが“interleaved”の場合に符号化されたサンプル要素の配置順を示す。positionの代わりにvelocityやacceleration情報を送受信することもできる。また、rotaccelerationの代わりに rotposition やrotvelocity 情報を送受信することもできる。
【0178】
<エラー耐性への配慮>
復号化部162が符号化対象データを可変長復号化する際、通常のデータとは別の意味を持つ所定の符号列(ユニークワード)を検出することにより、伝送の過程でエラーによる劣化の影響を最小限で食い止め、次のタイムデータ(time data)あるいは、次のハプティクスフレーム(frame)の最初を検知し、そこから復号化処理をリスタート(restart)することができるようにしてもよい。図44にその例を示す。図44において、斜線模様の四角が、可変長符号化ユニークワード(unique word)によりハプティクスフレームの先頭(Frame Top)を識別する識別情報を示す。また、グレーの四角が、可変長符号化ユニークワード(unique word)によりタイムデータの先頭(Time_data Top)を識別する識別情報を示す。
【0179】
例えば、‘1111111111’が、ハプティクスフレームの先頭(Frame Top)を識別するユニークワードであるとし、‘1111111110’が、タイムデータの先頭(Time Data Top)を識別するユニークワードであるとしてもよい。つまり、ハプティクスフレームの先頭(Frame Top)においては、’1’がN個連続し、タイムデータの先頭(Time Data Top)においては、’1’が(N-1)個連続するようにし、それ以外の符号化データにおいては’1’が最大(N-2)個連続するようにしてもよい。
【0180】
受信機では、パケットロス発生時(上位レイヤのチェックサムなどでチェックすることは可能)でも、’1’の連続数を検査することでユニークワードの検出ができ、所定のタイミングからのリカバリが可能となる。
【0181】
<受信側の再生選択制の確保>
送受信間デバイスで持つ関節点の規模が異なる場合(つまり送信側の観測点の数と受信側の制御点の数とが異なる場合)がある。送信側動作させる関節点の数(M)と受信側で再生可能な関節点の数(P)とが異なる場合、特に、M>Pである場合に受信側が再生可能な関節点に相当するSubpoint groupのみを復号化させることができるようにしてもよい。例えば、図45のように、再生するサブグループ(Sbgsp)のみを選択し、それ以外の復号化あるいは再生をスキップするようにしてもよい。図45の例の場合、グレーで示されるサブグループ(例えば、Sbgsp4, Sbgsp6)の復号化あるいは再生がスキップされている。
【0182】
その際、受信側におけるdecisionとしては、MPDの中の各々のサブリプレゼンテーション(subRepresentation)で括られるsubgroupset毎に関節点の位置情報の初期値をチェックする。受信機で再生可能な関節点と位置情報が近いものを多く持つsubgroupsetを再生対象として採用する。例えば、subgroupset=1と2と3と5を採用する場合、図45においてグレーで示されるサブグループ(subgroupset)をスキップする。スキップするにあたり、MPDにあるSubpt_grp_offset情報が利用される。
【0183】
そのようにして再生された場合のローカル側へのフィードバック情報は採用された分のみがリモート側から送信されることになる。この機能により、ハプティクス力覚再生デバイスとして、より広範囲なタイプの再生デバイスが利用可能となる。
【0184】
なお、KTマップに対応するISOBMFFファイルフォーマットにおけるmoofのシンタクスの例を図46に示す。図46において、/hsgeと/connection_chainがKTマップに対応するために設けられた要素である。
【0185】
<受信側のMPDによる配信対象の制御>
受信側ではMPDサーバ103にアクセスし、MPDファイルを取得し解析し、受信側ネットワークでの可能な帯域を考慮し、適切なビットレート(bitrate)となるようにビットレートの選択を行ってもよい。また、受信側のデバイス構成により、再生可能な範囲内となるように、配信される観測点の規模を選択する制御を行ってもよい。
【0186】
以上の機能を実現するために、MPDにおいて、Supplementary descriptorを用いて新規スキーマ定義をする。
【0187】
例えば、MPDサーバ103経由で送信側がビットレートのリクエストを受けると、送信側は、それを実現するような量子化ステップサイズで符号化量子化制御を行う。その場合のMPDの例を図47に示す。図47は、図11のハプティクスデータに対応するMPDの例である。図47の一点鎖線枠701および一点鎖線枠702の部分には、図48乃至図50のサブリプレゼンテーションの記述が挿入される。図48乃至図50のサブリプレゼンテーション以下のpositiondata, rotaccdate, forcedataは、動的変化の初期値を示す。この例では、符号化ビットレートの総量が4Mbpsか2Mbpsかの選択を行えるようになされている。
【0188】
また、MPDサーバ103経由で送信側が関節点規模の削減のリクエストを受けると、送信側は、それを実現するようにサブグループ(sub_group)数を減らして符号化を行う。その場合のMPDの例を図51に示す。図51は、図11のハプティクスデータに対応するMPDの例である。図51の一点鎖線枠711および一点鎖線枠712の部分には、図52および図53のサブリプレゼンテーションの記述が挿入される。図52および図53のサブリプレゼンテーション以下のpositiondata, rotaccdate, forcedataは、動的変化の初期値を示す。この例では、サブグループ数が6か4かの選択を行えるようになされている。
【0189】
なお、図47乃至図53の例は、単数の力覚デバイスからハプティクスデータを送信する場合のMPDについて説明したが、複数の力覚デバイスからハプティクスデータを送信してもよい。その場合のMPDの例を図54に示す。図54の例の場合、アダプテーションセットが2つ設けられている。各アダプテーションセットには互いに異なるグループIDが割り当てられており、各アダプテーションセットは、互いに異なる力覚デバイスに対応する。
【0190】
また、ハプティクスデータを双方向に送信する場合の、ローカルシステム101からリモートシステム102へのハプティクスデータの伝送に対応するMPDの例を図55に示す。この場合、このローカルシステム101からの伝送に対応するMPD内において、リモートシステム102に対して、硬さ、摩擦係数、温度情報等の触覚データを返すようにリクエストが行われる。例えば、図55のMPD中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrhardness” value= “ptB1queryhardness”/>は、リモートシステム102に対してtactile(触感データ)として「硬さ」を返信してもらうことを要求する記述である。また、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrfriction” value= “ptB1queryfriction”/>は、リモートシステム102に対してtactile(触感データ)として「摩擦係数」を返信してもらうことを要求する記述である。さらに、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrtemp” value= “ptB1querytemperature”/>は、リモートシステム102に対してtactile(触感データ)として「温度情報」を返信してもらうことを要求する記述である。同様に、図55のMPD中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrhardness” value= “ptB2queryhardness”/>は、リモートシステム102に対してtactile(触感データ)として「硬さ」を返信してもらうことを要求する記述である。また、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrfriction” value= “ptB2queryfriction”/>は、リモートシステム102に対してtactile(触感データ)として「摩擦係数」を返信してもらうことを要求する記述である。さらに、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrtemp” value= “ptB2querytemperature”/>は、リモートシステム102に対してtactile(触感データ)として「温度情報」を返信してもらうことを要求する記述である。
【0191】
また、この図55のMPDに対応する、リモートシステム102からローカルシステム101へのハプティクスデータの伝送(feedback伝送)に対応するMPDの例を図56に示す。このフィードバック伝送においては、図55のMPDに記載のリクエストに基づいて、硬さ、摩擦係数、温度情報等の触覚データが返される。例えば、図56のMPDの中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:pthardness” value= “ptB1hardness”/>は、ローカルシステム101からのリクエストに応じる形で、tactile data(触感データ)として「硬さ」をフィードバックし、その初期値をptB1hardnessに反映していることを示す記述である。また、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:ptfriction” value= “ptB1friction”/>は、ローカルシステム101からのリクエストに応じる形で、tactile data(触感データ)として「摩擦係数」をフィードバックし、その初期値をptB1frictionに反映していることを示す記述である。さらに、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:pttemp” value= “ptB1temperature”/>は、ローカルシステム101からのリクエストに応じる形で、tactile data(触感データ)として「温度情報」をフィードバックし、その初期値をptB1temperatureに反映していることを示す記述である。同様に、図56のMPDの中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:pthardness” value= “ptB2hardness”/>は、ローカルシステム101からのリクエストに応じる形で、tactile data(触感データ)として「硬さ」をフィードバックし、その初期値をptB2hardnessに反映していることを示す記述である。また、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:ptfriction” value= “ptB2friction”/>は、ローカルシステム101からのリクエストに応じる形で、tactile data(触感データ)として「摩擦係数」をフィードバックし、その初期値をptB2frictionに反映していることを示す記述である。さらに、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:pttemp” value= “ptB2temperature”/>は、ローカルシステム101からのリクエストに応じる形で、tactile data(触感データ)として「温度情報」をフィードバックし、その初期値をptB2temperatureに反映していることを示す記述である。
【0192】
図57は、ハプティクスデータを双方向に送信する場合の、ローカルシステム101からリモートシステム102へのハプティクスデータの伝送に対応するMPDの他の例を示す図である。この場合、このローカルシステム101からの伝送に対応するMPD内において、リモートシステム102に対して、振動情報を周波数と振幅値で返すようにリクエストが行われる。例えば、図57のMPD中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrvibfreqency” value= “ptB1queryvibfrequency”/>は、リモートシステム102に対して振動情報を周波数で返信してもらうことを要求する記述である。また、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrvibamplitude” value= “ptB1queryvibamplitude”/>は、リモートシステム102に対して振動情報を振幅値で返信してもらうことを要求する記述である。同様に、図57のMPD中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrvibfreqency” value= “ptB2queryvibfrequency”/>は、リモートシステム102に対して振動情報を周波数で返信してもらうことを要求する記述である。また、<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:qrvibamplitude” value= “ptB2queryvibamplitude”/>は、リモートシステム102に対して振動情報を振幅値で返信してもらうことを要求する記述である。
【0193】
また、この図57のMPDに対応する、リモートシステム102からローカルシステム101へのハプティクスデータの伝送(feedback伝送)に対応するMPDの例を図58に示す。このフィードバック伝送においては、図57のMPDに記載のリクエストに基づいて、振動情報が周波数と振幅値とで返される。例えば、図58のMPDの中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:vibfreqency” value= “ptB1vibfrequency”/>は、ローカルシステム101からのリクエストに応じる形で、振動情報を周波数でフィードバックし、その初期値をptB1vibfrequencyに反映していることを示す記述である。また、例えば、図58のMPDの中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:vibamplitude” value= “ptB1vibamplitude”/>は、ローカルシステム101からのリクエストに応じる形で、振動情報を振幅値でフィードバックし、その初期値をptB1vibamplitudeに反映していることを示す記述である。同様に、図58のMPDの中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:vibfreqency” value= “ptB2vibfrequency”/>は、ローカルシステム101からのリクエストに応じる形で、振動情報を周波数でフィードバックし、その初期値をptB2vibfrequencyに反映していることを示す記述である。また、例えば、図58のMPDの中の<SupplementaryDesctiptor schemeIdUri=“urn:bicom:haptic3d:vibamplitude” value= “ptB2vibamplitude”/>は、ローカルシステム101からのリクエストに応じる形で、振動情報を振幅値でフィードバックし、その初期値をptB2vibamplitudeに反映していることを示す記述である。
【0194】
なお、MPDのセマンティクスの例を図59および図60に示す。
【0195】
<4.第3の実施の形態>
<デジタルインタフェース>
ローカルシステム101やリモートシステム102の一方または両方において、ハプティックデバイス121と通信デバイス122との間のハプティクスデータの伝送は、図3に示されるようにデジタルインタフェース123やデジタルインタフェース124を介して行われるようにすることができる。上述したようにこれらのデジタルインタフェースには、任意の規格のデジタル機器用インタフェースを適用することができる。例えば、HDMIを適用する場合のデジタルインタフェース123の主な構成例を図61に示す。なお、HDMIを適用する場合のデジタルインタフェース124の主な構成例もこの図61の例と同様である。この場合、ハプティックデバイス121および通信デバイス122間のハプティクスデータの伝送は、HDMIのTMDS(Transition Minimized Differential Signaling)チャンネルを用いて行われる。なお、TMDSチャンネルで送るデータは光伝送路あるいは無線電波でなされるとしても同様の前提として考えることができる。
【0196】
ハプティクスデータの伝送は、映像データと同期させるか、または、ブランキング期間を利用して行われる。このデータアイランドスロットにおけるメタデータ挿入の様子の例を、図62および図63に示す。また、セマンティクスの例を図64に示す。また、ハプティクスデータのTMDSチャンネルにおける伝送フォーマットの例を図65に示す。
【0197】
<5.付記>
<コンピュータ>
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
【0198】
図66は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【0199】
図66に示されるコンピュータ900において、CPU(Central Processing Unit)901、ROM(Read Only Memory)902、RAM(Random Access Memory)903は、バス904を介して相互に接続されている。
【0200】
バス904にはまた、入出力インタフェース910も接続されている。入出力インタフェース910には、入力部911、出力部912、記憶部913、通信部914、およびドライブ915が接続されている。
【0201】
入力部911は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部912は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部913は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部914は、例えば、ネットワークインタフェースよりなる。ドライブ915は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体921を駆動する。
【0202】
以上のように構成されるコンピュータでは、CPU901が、例えば、記憶部913に記憶されているプログラムを、入出力インタフェース910およびバス904を介して、RAM903にロードして実行することにより、上述した一連の処理が行われる。RAM903にはまた、CPU901が各種の処理を実行する上において必要なデータなども適宜記憶される。
【0203】
コンピュータが実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体921に記録して適用することができる。その場合、プログラムは、リムーバブル記録媒体921をドライブ915に装着することにより、入出力インタフェース910を介して、記憶部913にインストールすることができる。
【0204】
また、このプログラムは、ローカルエリアネットワーク、専用線によるネットワークあるいはWAN、インターネット、衛星通信等といった、有線または無線の伝送媒体を介して提供することもできる。その場合、プログラムは、通信部914で受信し、記憶部913にインストールすることができる。
【0205】
その他、このプログラムは、ROM902や記憶部913に、あらかじめインストールしておくこともできる。
【0206】
<本技術の適用対象>
以上においては、本技術の適用例として遠隔操作システム100の各装置について説明したが、本技術は、任意の構成に適用することができる。
【0207】
例えば、本技術は、衛星放送、ケーブルTVなどの有線放送、インターネット、ローカルエリアネットワーク、専用線によるネットワークあるいはWAN上での配信、およびセルラー通信による端末への配信などにおける送信機や受信機(例えばテレビジョン受像機や携帯電話機)、または、光ディスク、磁気ディスクおよびフラッシュメモリなどの媒体に画像を記録したり、これら記憶媒体から画像を再生したりする装置(例えばハードディスクレコーダやカメラ)などの、様々な電子機器に適用され得る。
【0208】
また、例えば、本技術は、システムLSI(Large Scale Integration)等としてのプロセッサ(例えばビデオプロセッサ)、複数のプロセッサ等を用いるモジュール(例えばビデオモジュール)、複数のモジュール等を用いるユニット(例えばビデオユニット)、または、ユニットにさらにその他の機能を付加したセット(例えばビデオセット)等、装置の一部の構成として実施することもできる。
【0209】
また、例えば、本技術は、複数の装置により構成されるネットワークシステムにも適用することもできる。例えば、本技術を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングとして実施するようにしてもよい。例えば、コンピュータ、AV(Audio Visual)機器、携帯型情報処理端末、IoT(Internet of Things)デバイス等の任意の端末に対して、画像(動画像)に関するサービスを提供するクラウドサービスにおいて本技術を実施するようにしてもよい。
【0210】
なお、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、および、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
【0211】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
【0212】
<その他>
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【0213】
例えば、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
【0214】
また、例えば、上述したプログラムは、任意の装置において実行されるようにしてもよい。その場合、その装置が、必要な機能(機能ブロック等)を有し、必要な情報を得ることができるようにすればよい。
【0215】
また、例えば、1つのフローチャートの各ステップを、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。さらに、1つのステップに複数の処理が含まれる場合、その複数の処理を、1つの装置が実行するようにしてもよいし、複数の装置が分担して実行するようにしてもよい。換言するに、1つのステップに含まれる複数の処理を、複数のステップの処理として実行することもできる。逆に、複数のステップとして説明した処理を1つのステップとしてまとめて実行することもできる。
【0216】
また、例えば、コンピュータが実行するプログラムは、プログラムを記述するステップの処理が、本明細書で説明する順序に沿って時系列に実行されるようにしても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで個別に実行されるようにしても良い。つまり、矛盾が生じない限り、各ステップの処理が上述した順序と異なる順序で実行されるようにしてもよい。さらに、このプログラムを記述するステップの処理が、他のプログラムの処理と並列に実行されるようにしても良いし、他のプログラムの処理と組み合わせて実行されるようにしても良い。
【0217】
また、例えば、本技術に関する複数の技術は、矛盾が生じない限り、それぞれ独立に単体で実施することができる。もちろん、任意の複数の本技術を併用して実施することもできる。例えば、いずれかの実施の形態において説明した本技術の一部または全部を、他の実施の形態において説明した本技術の一部または全部と組み合わせて実施することもできる。また、上述した任意の本技術の一部または全部を、上述していない他の技術と併用して実施することもできる。
【0218】
なお、本技術は以下のような構成も取ることができる。
(1) インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つを含むハプティクスデータを送信する送信部
を備える情報処理装置。
(2) 前記力覚データは、前記観測点の位置に関する情報または前記観測点の速度に関する情報を含む
(1)に記載の情報処理装置。
(3) 前記触覚データは、前記観測点において接触した他の物体の硬さに関する情報、前記物体の摩擦係数に関する情報、および前記物体の温度に関する情報の内の少なくともいずれか1つを含む
(1)または(2)に記載の情報処理装置。
(4) 前記ハプティクスデータは、前記観測点毎に分類された、前記力覚データ、前記触覚データ、および前記力データの内の少なくともいずれか1つを含む
(1)乃至(3)のいずれかに記載の情報処理装置。
(5) 前記ハプティクスデータは、さらに、前記観測点間の関係を示す情報を含む
(4)に記載の情報処理装置。
(6) 前記送信部は、前記観測点毎の前記ハプティクスデータを、前記デバイスの制御構造に応じた前記観測点のグループ毎に互いに異なるトラックに格納して送信する
(4)または(5)に記載の情報処理装置。
(7) 前記ハプティクスデータを符号化して符号化データを生成する符号化部をさらに備え、
前記送信部は、前記符号化部により生成された前記符号化データを送信する
(1)乃至(6)のいずれかに記載の情報処理装置。
(8) 前記符号化部は、前記ハプティクスデータについて、サンプル間の予測を行って予測残差を導出し、前記予測残差を符号化して前記符号化データを生成する
(7)に記載の情報処理装置。
(9) 前記ハプティクスデータの再生を制御する制御情報を生成する生成部をさらに備え、
前記送信部は、前記生成部により生成された前記制御情報を送信する
(1)乃至(8)のいずれかに記載の情報処理装置。
(10) インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つを含むハプティクスデータを送信する
情報処理方法。
【0219】
(11) インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つを含むハプティクスデータを受信する受信部と、
前記受信部により受信された前記ハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点を駆動する駆動部と
を備える情報処理装置。
(12) 前記ハプティクスデータの再生を制御する制御情報に基づいて前記受信部を制御する制御部をさらに備え、
前記受信部は、前記制御部により指定された前記ハプティクスデータを受信する
(11)に記載の情報処理装置。
(13) 前記受信部は、前記制御部により指定されたビットレートの前記ハプティクスデータを受信する
(12)に記載の情報処理装置。
(14) 前記受信部は、前記制御部により指定された前記観測点のグループの前記ハプティクスデータを受信する
(12)または(13)に記載の情報処理装置。
(15) 前記受信部は、前記ハプティクスデータの符号化データを受信し、
前記受信部により受信された前記符号化データを復号化して、前記ハプティクスデータを生成する復号化部をさらに備える
(11)乃至(14)のいずれかに記載の情報処理装置。
(16) 前記符号化データは、サンプル間の予測が行われて導出された前記ハプティクスデータの予測残差の符号化データであり、
前記復号化部は、前記符号化データを復号化して前記予測残差を生成し、前記予測残差に過去サンプルの復号化結果を加算することにより現サンプルの前記ハプティクスデータを生成する
(15)に記載の情報処理装置。
(17) 前記復号化部は、前記符号化データに含まれる所定の符号列を検出し、前記サンプル間の予測の開始位置を特定する
(16)に記載の情報処理装置。
(18) 前記被駆動点を有する前記デバイスの観測点において検出されたハプティクスデータと、前記受信部により受信された前記ハプティクスデータとに基づいて、前記駆動部を制御する制御情報を生成するレンダリング処理を行うレンダリング処理部をさらに備え、
前記駆動部は、前記レンダリング処理部により生成された前記制御情報に基づいて、前記デバイスの複数の前記被駆動点を駆動する
(11)乃至(17)のいずれかに記載の情報処理装置。
(19) 前記レンダリング処理部は、絶対座標を用いて、前記制御情報を補正する
(18)に記載の情報処理装置。
(20) インタフェースとなるデバイスの複数の観測点についての、前記観測点において検出された力覚に関する情報を含む力覚データ、前記観測点において検出された触覚に関する情報を含む触覚データ、および前記観測点に印加される力の大きさに関する情報を含む力データの内の、少なくともいずれか1つを含むハプティクスデータを受信し、
受信された前記ハプティクスデータに基づいて、インタフェースとなるデバイスの複数の被駆動点を駆動する
情報処理方法。
【符号の説明】
【0220】
100 遠隔操作システム, 101 ローカルシステム, 102 リモートシステム, 103 MPDサーバ, 121 ハプティックデバイス, 122 通信デバイス, 131 センサ部, 132 レンダラ, 133 アクチュエータ, 134 ハプティクスインタフェース, 141 イメージセンサ, 142 空間座標変換部, 151 コンポーザ, 152 符号化部, 153 コンテナ処理部, 154 MPD生成部, 155 撮像部, 156 ビデオ符号化部, 161 コンテナ処理部, 162 復号化部, 163 MPD制御部, 164 ビデオ復号化部, 165 表示部, 301 立体刺激デバイス, 302 オブジェクト, 311 グローブ型デバイス, 312 オブジェクト, 331 KTマップ, 351 リモートデバイス, 352 オブジェクト, 353 仮想オブジェクト, 361 飛行体, 362 ロボットハンド, 371 リモートデバイス, 372 物体表面, 381 ヘッドマウントディスプレイ, 391 ロボットハンド, 401 合成部, 411 位置関係決定部, 412 位置補正部, 420 デバイス, 421 加速度センサ, 451 ハプティクスフレーム, 501 遅延部, 502 演算部, 503 量子化部, 504 可変長符号化部, 511 可変長復号化部, 512 逆量子化部, 513 演算部, 514 遅延部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35
図36
図37
図38
図39
図40
図41
図42
図43
図44
図45
図46
図47
図48
図49
図50
図51
図52
図53
図54
図55
図56
図57
図58
図59
図60
図61
図62
図63
図64
図65
図66