(58)【調査した分野】(Int.Cl.,DB名)
前記フィードバック・デバイスが、触覚効果を提供するよう構成された触覚出力デバイス、視覚効果を提供するよう構成された視覚デバイス、または聴覚効果を提供するよう構成された聴覚デバイスを含む、請求項1に記載のデバイス。
前記イベントが、前記デバイスと前記拡張現実環境との相互作用、前記拡張現実環境に対して起きているアクションの確認、または前記デバイスが前記拡張現実デバイスによって認識されていることの確認を含む、請求項1に記載のデバイス。
前記拡張現実デバイスとの無線または有線通信チャネルを確立するよう構成された通信ポートをさらに含み、前記制御信号が前記無線または有線通信チャネルを介して受信される、
請求項1に記載のデバイス。
入力を受け取るよう構成された入力コンポーネントをさらに含み、前記プロセッサが、前記入力を前記有線または無線通信チャネルを介して前記拡張現実デバイスに伝達するよう構成される、
請求項6に記載のデバイス。
前記プロセッサが、前記少なくとも一つの物理オブジェクトと前記デバイスとの間の距離を顧慮せずに、前記デバイスを前記拡張現実環境内に位置付けるよう構成される、請求項14に記載の拡張現実デバイス。
【発明の概要】
【発明が解決しようとする課題】
【0003】
拡張現実システムの進展にもかかわらず、拡張仮想環境と相互作用を行う能力は限られている。例えば、在来の拡張現実デバイスは、通常、拡張現実環境に関連して入力を与えるために音声認識を用いる。ユーザに対する有用なフィードバックの提供も限られている。さらに、仮想現実環境中のオブジェクトの認識も演算集約的となり得て、多くの事例で使い勝手を損ねている。
【課題を解決するための手段】
【0004】
本開示は、拡張現実環境中で生じたイベントに基づいてフィードバックを生成し、拡張現実環境に入力を提供し、拡張現実環境と関連付けて認識される、ように構成されたデバイスに関する。この拡張現実環境は、本デバイスに通信可能に連結された拡張現実デバイスによって生成することができる。
【0005】
本開示のデバイスは、拡張現実環境に基づいてフィードバックを提供するよう構成することが可能である。本デバイスには、例えば、拡張現実デバイスからの制御信号を受信するよう構成されたプロセッサと、受信された制御信号に基づいてフィードバックを提供するよう構成されたフィードバック・デバイスとを含めることができる。拡張現実デバイスは、拡張現実環境を生成することができ、本デバイスから遠隔に置くことが可能である。本デバイスによって受信される制御信号は、拡張現実環境内に生じたイベントを表すものとすることができる。拡張現実環境には、少なくとも一つの物理オブジェクトが中に存在する物理空間と、該物理オブジェクトを拡張する一つ以上の仮想オブジェクトが中に表示される拡張現実空間とを含めることができる。
【0006】
イベントには、本デバイスと拡張現実環境との相互作用、拡張現実環境に対して起きているアクションの確認、本デバイスが拡張現実デバイスによって認識されていることの確認、本デバイスと拡張現実空間中に表現された一つ以上の仮想オブジェクトとの相互作用、および/または拡張現実環境中の他の出来事を含めることが可能である。
【0007】
本デバイスには、例えば、通信ポート、位置または方位デバイス、入力コンポーネント、および/または他のコンポーネントを含めることができる。通信ポートには、例えば拡張現実デバイスとの、通信チャネルの維持を可能にするためのインターフェースを含めることができる。拡張現実デバイスからの制御信号は通信チャネルを通して受信することができ、このチャネルは有線または無線の通信チャネルを含み得る。位置または方位デバイスは、通信チャネルを介し、拡張現実デバイスに位置、方位またはその両方を提供するよう構成することができる。入力コンポーネントは、例えば、ボタン押し、ジェスチャ、および/または他の入力などの入力を受け取るよう構成することが可能である。この入力は、プロセッサによって通信チャネルを介して拡張現実デバイスに伝達することができる。
【0008】
いくつかの実施態様において、本デバイスのプロセッサは、例えば、フィードバック制御モジュール、通信モジュール、および/または他のコンピュータ・プログラム・モジュールを含む一つ以上のモジュールを実行するよう構成することができる。フィードバック制御モジュールは、制御信号を受信し、フィードバック・デバイスにフィードバックを提供させるよう構成することが可能である。通信モジュールは、本デバイスと拡張現実デバイスとの間の通信を推進するよう構成することができる。
【0009】
フィードバック制御モジュールは、制御信号を受信し、フィードバック・デバイスにフィードバックを提供させるよう構成することが可能である。制御信号は、拡張現実デバイスにおけるイベントを表すものとすることができる。このイベントには、例えば、拡張仮想環境中に表示されている一つ以上の仮想オブジェクト、本デバイスと該一つ以上の仮想オブジェクトとの間の一つ以上の相互作用、および/または拡張現実環境に関連する他の出来事を含めることができる。いくつかの実施形態において、フィードバック制御モジュールは、フィードバック・デバイスに制御信号を与えるよう構成することが可能である。この実施形態において、制御信号をフィードバック・デバイスに直接印加してフィードバックを行わせることができる。いくつかの実施形態において、フィードバック制御モジュールは、受信された制御信号に基づいてフィードバック信号を決めるよう構成することが可能である。これらの実施形態において、フィードバック制御モジュールは、受信制御信号に基づくフィードバック信号を決めるためにルックアップ・テーブルを参照することができる。
【0010】
通信モジュールは、本デバイスと拡張現実デバイスとの間の通信を推進するよう構成することができる。いくつかの実施態様において、通信モジュールは、本デバイス、拡張現実デバイス、サーバ、本デバイスのものと同様なコンポーネントおよび機能を含む携帯端末、および/または本デバイスと通信が可能な他のデバイス、の間での通信を推進するよう構成することが可能である。この通信モジュールは、本デバイス、拡張現実デバイス、サーバ、携帯端末、および/または他のデバイスの間での通信のため、有線または無線の通信チャネルを備えるよう構成することができる。
【0011】
いくつかの実施態様において、フィードバック・デバイスには、触覚効果の形で触覚フィードバックを提供するよう構成された触覚出力デバイス、視覚フィードバックを提供するよう構成された視覚デバイス、聴覚フィードバックを提供するよう構成された聴覚デバイス、および/またはフィードバックを生成する他のデバイスを含めることが可能である。触覚出力デバイスは、例えば、内部でモータが偏心質量を動かす偏心回転質量(“ERM”:Eccentric Rotating Mass)、内部でスプリングに取り付けられた質量が前後に駆動される線形共鳴アクチュエータ(“LRA”:Linear Resonant Actuator)、または、圧電物質、電気活性ポリマーまたは形状合金などの「スマート材料」、マクロ複合繊維アクチュエータ、静電気アクチュエータ、電気触感アクチュエータ、および/または、触覚(例、振動触覚)フィードバックなどの物理的フィードバック提供する他の種類のアクチュエータなど、アクチュエータを含めることができる。触覚出力デバイスには、静電気摩擦(ESF:electrostatic friction)、超音波表面摩擦(USF:ultrasonic surface friction)を使うもの、または超音波触覚トランスデューサを使い音響放射圧を誘導するもの、または触覚基板とフレキシブルまたは変形可能表面とを使うもの、またはエア・ジェットを用いたエア吐き出しなどの射出触覚出力を与えるものなど、非機械的または非振動型のデバイスを含めることが可能である。視覚デバイスは、デバイスでの可視光など視覚フィードバックを生成するよう構成することができる。例えば、視覚フィードバックは、拡張現実環境中のイベントの発生を視覚的に示すことが可能である。
【0012】
フィードバック・デバイスは、フィードバック制御モジュールから一つ以上の信号(例えば、制御信号またはフィードバック信号)を受信するよう構成することができる。触覚出力デバイス、視覚デバイス、聴覚デバイス、および/または他のフィードバック・デバイスは、これら一つ以上の信号に基づいて、本デバイスを介してフィードバックを提供することができる。
【0013】
本デバイスには、識別指標を生成するよう構成された識別子デバイスを含めることが可能である。識別指標は、拡張現実デバイスが本デバイスを識別するために用いることができる。この識別指標には、可視の光学署名(例えば、可視波長内の光の光学署名)または不可視の署名(例えば、可視波長外の光の光学署名)を含めることが可能である。いくつかの実施態様において、本デバイスの表面に拡張現実シンボルを配置することができる。この拡張現実シンボルは、例えば、拡張現実環境内の本デバイスの方位を測定したり、拡張現実環境中で本デバイスの存在を識別したり、および/または他の形での本デバイスの認識を可能にしたりするために用いることができる。いくつかの実施態様において、本デバイスは、可聴署名、赤外線署名、および/または拡張現実デバイスが認識できる他の署名を発することが可能である。
【0014】
いくつかの実施態様において、本デバイスは、指輪などウェアラブル・デバイスとして構成することができる。これらの実施態様において、フィードバック・デバイスには、指輪の周りに配置された発光バンドを含めることが可能である。発光バンドからのフィードバックには、拡張現実環境中の一つ以上の仮想オブジェクトにコーディネート可能な、色、パターン、および/または他の視覚特性を含めることができる。これらフィードバック・デバイスには、相隔てて指輪に配置された一つ以上の触覚出力デバイスを含めることも可能である。
【0015】
いくつかの実施態様において、本デバイスは、手袋、指ぬき、指輪、および/または身に着けられる他のデバイスを含み得る。これらの実施態様において、フィードバック・デバイスには、本デバイスの指先部分および/または本デバイスの他の部分に配置された発光バンドを含めることが可能である。フィードバック・デバイスには、該デバイス全体に相隔てて配置された一つ以上の触覚出力デバイスを含めることもできる。識別指標および/または拡張現実シンボルは、本デバイスの表面上に配置することが可能である。いくつかの実施態様において、本デバイスは、着用者の手指の少なくとも指先を覆うことができる。識別指標または拡張現実シンボルは、着用者の指先を覆う本デバイスの表面、および/または本デバイスの他の表面に配置することが可能である。
【0016】
いくつかの実施態様において、携帯端末にも同じまたは類似のコンポーネントおよび機能を含めることが可能で、該端末は、本デバイスと同じまたは類似の方法で拡張現実デバイスと相互作用することができる。この携帯端末には、例えば、タッチペン、ジョイスティック、携帯電話、ビデオ・ゲーム・コントローラ、および/または拡張現実デバイスと通信可能に連結できる他の携帯端末を含めることが可能である。いくつかの実施態様において、本デバイスおよび携帯端末の両方が、同時に拡張現実デバイスと相互作用することができる。
【0017】
拡張現実(“AR”:augmented reality)デバイスは、拡張現実空間および物理空間の両方を含む拡張現実環境を生成するよう構成することができる。ARデバイスには、例えば、通信ポート、撮像デバイス、プロセッサ、および/または他のコンポーネントを含めることが可能である。通信ポートには、例えば本デバイスとの、通信チャネルの維持を可能にするためのインターフェースを含めることができる。カメラなどの撮像デバイスは、物理空間を画像化するよう構成することが可能である。いくつかの実施態様において、拡張現実デバイスの撮像デバイスには、カメラ、赤外線検出装置、および/または他の画像記録デバイスを含めることができる。プロセッサは、物理空間に合わさった拡張現実空間を生成するよう構成することができる。プロセッサは、物理空間中の少なくとも一つの物理オブジェクトを認識し、拡張現実空間において、一つ以上の仮想オブジェクトを使って該少なくとも一つの物理オブジェクトを拡張するよう構成することが可能である。プロセッサは、拡張現実環境内のイベントを判定し、有線または無線通信チャネルを介して、本デバイスにそのイベントを表す制御信号を伝達するよう構成することができる。該制御信号は、本デバイスでフィードバックを生成させることができる。
【0018】
いくつかの実施態様において、ARデバイスのプロセッサは、例えば、オブジェクト認識モジュール、オブジェクト生成モジュール、イベント処理モジュール、制御信号生成モジュール、通信モジュール、および/または他のコンピュータ・プログラム・モジュールを含め、一つ以上のモジュールを実行するよう構成することが可能である。オブジェクト認識モジュールは、物理空間中の物理オブジェクトを認識するよう構成することができる。オブジェクト生成モジュールは、仮想オブジェクトを生成して、認識された物理オブジェクトを拡張するよう構成することが可能である。イベント処理モジュールは、拡張現実環境内にイベントが生じたかどうかを検出するよう構成することができる。制御信号生成モジュールは、イベントに関連する情報を受信し、本デバイスに送信するための制御信号を生成するよう構成することが可能である。通信モジュールは、拡張現実デバイスと本デバイスとの間の通信を推進するよう構成することができる。
【0019】
いくつかの実施態様において、拡張現実環境に基づいてフィードバックを提供するシステムには、拡張現実デバイス、本デバイスおよび/または携帯端末を含めることが可能である。
【0020】
本明細書で開示するシステムおよび/または方法のこれらまたは他の目的、特徴、および特性と、関連する構造体のエレメントの動作の方法および機能、並びに部品の組み合わせおよび製造の経済性は、添付の図面を参照しながら、以下の説明および添付の特許請求の範囲を考慮することによってさらに明らかになろう。これらはすべて、本明細書の一部を構成し、同じ参照番号は、様々な図面において対応する部分を示す。但し、当然のことながら、これらの図面は、例示と説明だけのためのものであって、本発明の限定範囲を定義することは意図されていない。本明細書と請求項での使用において、単数形「ある(“a”、“an”)」、および「該(“the”)」は、文脈上明確に別段に示されていなければ、複数対象も含むものと意図されている。
【発明を実施するための形態】
【0030】
図1は、拡張現実(“AR”)環境に基づいてフィードバックを提供する例示的なシステム10のブロック図を示す。システム10には、デバイス100、拡張現実(“AR”)デバイス200、通信チャネル300、サーバ400、携帯端末102、および/または、デバイス100、ARデバイス200、またはサーバ400と通信することが可能な他のデバイスを含めることができる。
【0031】
デバイス100は、AR環境に基づいてフィードバックを提供するよう構成することができる。例えば、デバイス100は、AR環境中に生じたイベントに基づいてフィードバックを生成し、AR環境に入力を与え、AR環境と関連して認識されるように構成することが可能である。AR環境は、デバイス100と通信可能に連結されたARデバイス200によって生成することができる。
【0032】
ARデバイス200は、AR環境を生成することができ、デバイス100から遠隔に置くことが可能である。デバイス100によって受信される制御信号は、AR環境に生じたイベントを表すことができる。AR環境には、少なくとも一つの物理オブジェクトが存在する物理空間と、該物理オブジェクトを拡張する一つ以上の仮想オブジェクトが表示された拡張現実(“AR”)空間とを含めることが可能である。後記で詳しく説明するように、いくつかの実施態様において、ARデバイス200は、眼鏡の形状に構成することができる。
【0033】
イベントには、デバイス100とAR環境との間の相互作用、AR環境に対して起きているアクションの確認、デバイス100がARデバイス200によって認識されていることの確認、デバイス100とAR空間中に表現された一つ以上の仮想オブジェクトとの間の相互作用、ユーザとAR環境との間の相互作用、および/またはAR環境中の他の出来事を含めることが可能である。
【0034】
いくつかの実施態様において、デバイス100には、例えば、ARデバイス200からの制御信号を受信するよう構成されたプロセッサ110、受信された制御信号に基づいてフィードバックを提供するよう構成されたフィードバック・デバイス120、通信ポート130、位置/方位デバイス140、入力コンポーネント150、識別子デバイス160、および/または他のコンポーネントを含めることができる。後記で詳しく説明するように、いくつかの実施態様において、デバイス100は手袋、指ぬき、指輪、および/または身に着けられる他のデバイスを含み得る。いくつかの実施態様において、デバイス100は、タッチペン、ジョイスティック、携帯電話、ビデオ・ゲーム・コントローラ、および/またはARデバイス200と通信可能に連結できる他の携帯端末など、携帯端末として構成することが可能である。いくつかの実施態様において、デバイス100とARデバイス200とは、単一の物理デバイス中の別個のデバイスとすることもでき、単一の物理デバイスに組み込むことも可能である。
【0035】
いくつかの実施態様において、デバイス100のプロセッサ110は、例えば、フィードバック制御モジュール111、通信モジュール112、および/またはデバイス100の他のコンピュータ・プログラム・モジュールなど、一つ以上のモジュールを実行するよう構成することができる。フィードバック制御モジュール111は、制御信号を受信して、フィードバック・デバイス120にフィードバックを提供させるよう構成することが可能である。通信モジュール112は、デバイス100とARデバイス200との間の通信を推進するよう構成することができる。
【0036】
フィードバック制御モジュール111は、(例えば、ARデバイス200から)制御信号を受信し、フィードバック・デバイス120にデバイス100を介してフィードバックを提供させるよう構成することが可能である。制御信号は、ARデバイス200におけるイベントを表すものとすることができる。このイベントは、例えば、拡張仮想環境中に表示されている一つ以上の仮想オブジェクト、デバイス100と該一つ以上の仮想オブジェクトとの間の一つ以上の相互作用、および/またはAR環境に関連する他の出来事を含み得る。いくつかの実施形態において、フィードバック制御モジュール111は、フィードバック・デバイス120に制御信号を与えるよう構成することが可能である。この実施形態において、制御信号をフィードバック・デバイス120に直接印加してフィードバックを行わせることもできる。いくつかの実施形態において、フィードバック制御モジュール111は、受信された制御信号に基づいてフィードバック応答を決めるよう構成することが可能である。これらの実施形態において、フィードバック制御モジュール111は、受信制御信号に基づくフィードバック応答を決めるためにルックアップ・テーブルを参照することができる。フィードバック応答は、受信制御信号に基づいて生成される対象の、一つ以上の種類のフィードバックと、指定フィードバックの種類に対する一つ以上のフィードバック信号とを含み得る。フィードバック制御モジュール111は、フィードバック応答の指定フィードバック信号を生成し、そのフィードバック信号を、それら信号が対応するそれぞれのフィードバック・デバイス120に送信するよう構成することができる。
【0037】
いくつかの実施態様において、フィードバック制御モジュール111は、受信制御信号に基づいて、どの種類のフィードバックおよびどのフィードバック信号をフィードバック応答に含めるかを決めるためにデバイス100のルックアップ・テーブルを参照することができる。フィードバック応答には、単一のフィードバック信号、単一のフィードバック・デバイス120に対する複数のフィードバック信号、複数のフィードバック・デバイス120に対する複数のフィードバック信号、一つ以上のフィードバック・デバイス120に対するフィードバック信号のパターン、および/または他の種類のフィードバック応答を含めることが可能である。いくつかの実施態様において、フィードバック応答の種類は、制御信号によって表されるイベントの種類を示すものとすることができる。例えば、単一の信号を含むフィードバック応答によって、イベントがAR環境中でのデバイス100の認識を表していることを示すことができよう。あるパターンの信号を含むフィードバック応答は、イベントがデバイス100とAR環境との間の相互作用を表していることを示すものとすることもできよう。各種のフィードバック応答に関連付けられた表示内容は上述した例に限定されない。
【0038】
いくつかの実施態様において、ルックアップ・テーブルは、複数の制御信号と複数のフィードバック応答との間の関連付けを格納することができる。例えば、ある制御信号があるイベントが発生したことを示す情報を含む場合、ルックアップ・テーブルには、その制御信号に関連付けられたフィードバック応答を格納することが可能である。ある制御信号がある種類のイベントが発生したことを示す情報を含む場合、ルックアップ・テーブルには、制御信号の情報によって示され得る一つ以上の種類のイベントに対する一つ以上の異なったフィードバック応答を格納することができる。ある制御信号が、拡張仮想環境中に仮想オブジェクト(群)が表示されたことを示す情報を含む場合、拡張仮想環境中に表示され得る各種の仮想オブジェクトに対する各種のフィードバック応答を格納することが可能である。例えば、フィードバック応答は、信号中に示された一つ以上の仮想オブジェクトに対し、フィードバック応答が信号中に示された一つ以上の仮想オブジェクトの一つ以上の特性に対応するようにコーディネートすることができる。フィードバックには、色、形状、パターン、フィードバック信号の数、および/または示された仮想オブジェクトと類似の特性を含めることが可能である。ある制御信号が、デバイス100と一つ以上の仮想オブジェクトとの間の相互作用を示す情報を含む場合、ルックアップ・テーブルは、デバイス100とAR環境との間に起こり得る各種の相互作用に対する相異なるフィードバック応答を格納することができる。いくつかの実施態様において、フィードバック制御モジュール111は、複数の制御信号と関連するフィードバック応答を含むルックアップ・テーブルを格納するよう構成されたサーバ400から、フィードバック応答を読み出すことが可能である。
【0039】
通信モジュール112は、デバイス100とARデバイス200との間の通信を推進するよう構成することができる。いくつかの実施態様において、通信モジュール112は、デバイス100と、ARデバイス200、サーバ400、携帯端末102(該端末にはデバイス100と類似のコンポーネントおよび機能を含めることができる)、および/またはデバイス100と通信が可能な他のデバイスと、の間の通信を推進するよう構成することができる。通信モジュール112は、デバイス100と、ARデバイス200、携帯端末102、サーバ400、および/またはデバイス100と通信する他のデバイスと、の間の通信のために有線または無線通信チャネル300を備えるよう構成することが可能である。
【0040】
フィードバック・デバイス120には、触覚効果の形で触覚フィードバックを提供するよう構成された一つ以上の触覚出力デバイス、視覚フィードバックを提供するよう構成された一つ以上の視覚デバイス、聴覚フィードバックを提供するよう構成された一つ以上の聴覚デバイス、および/またはフィードバックを生成する他のデバイスを含めることができる。触覚出力デバイスには、例えば、内部でモータが偏心質量を動かす偏心回転質量(“ERM”)、内部でスプリングに取り付けられた質量が前後に駆動される線形共鳴アクチュエータ(“LRA”)、または、圧電物質、電気活性ポリマーまたは形状合金などの「スマート材料」、マクロ複合繊維アクチュエータ、静電気アクチュエータ、電気触感アクチュエータ、および/または、触覚(例、振動触覚)フィードバックなどの物理的フィードバック提供する他の種類のアクチュエータなど、アクチュエータを含めることができる。触覚出力デバイスには、静電気摩擦(ESF)、超音波表面摩擦(USF)を使うもの、または超音波触覚トランスデューサを使い音響放射圧を誘導するもの、または触覚基板とフレキシブルまたは変形可能表面とを使うもの、またはエア・ジェットを用いたエア吐き出しなどの射出触覚出力を与えるものなど、非機械的または非振動型のデバイスを含めることが可能である。視覚デバイスは、デバイス100での可視光など視覚フィードバックを生成するよう構成することが可能である。例えば、視覚フィードバックは、AR環境中のイベントの発生を視覚的に示すことができる。
【0041】
フィードバック・デバイス120は、フィードバック制御モジュール111から一つ以上の信号(例えば、制御信号またはフィードバック信号)を受信するよう構成することができる。触覚出力デバイス、視覚デバイス、聴覚デバイス、および/または他のフィードバック・デバイス120は、一つ以上の信号に基づいて、デバイス100を介してフィードバックを提供することが可能である。
【0042】
通信ポート130には、例えばARデバイス200との、通信チャネル300の維持を可能にするためのインターフェースを含めることができる。ARデバイス200からの制御信号は通信チャネル300を通して受信することが可能で、該チャネルは有線または無線の通信チャネルを含み得る。
【0043】
位置/方位デバイス140は、通信チャネル300を介し、ARデバイス200に位置、方位またはその両方を提供するよう構成することができる。例えば、位置/方位デバイス140には、ジャイロスコープ、地理空間測位デバイス、コンパス、および/または他の方位または位置確認デバイスを含めることが可能である。
【0044】
入力コンポーネント150は、例えば、ボタン押し、ジェスチャ、および/または他の入力などの入力を受け取るよう構成することが可能である。この入力は、プロセッサ110によって通信チャネル300を介してARデバイス200に伝達することができる。例えば、入力コンポーネント150には、タッチ・パッド、タッチ・スクリーン、機械的ボタン、スイッチ、および/または入力を受け取ることが可能な他の入力コンポーネントを含めることができる。
【0045】
識別子デバイス160は、デバイス100に対する識別指標を生成するよう構成することができる。識別指標は、ARデバイス200がデバイス100を識別するために用いることができる。この識別指標には、可視の光学署名(例えば、可視波長内の光の光学署名)または不可視の署名(例えば、可視波長外の光の光学署名)を含めることが可能である。いくつかの実施態様において、フィードバック・デバイス120は、例えば光学署名を生成することによって、識別指標を生成することができる。
【0046】
いくつかの実施態様において、デバイス100の表面に拡張現実(“AR”)シンボルを配置することができる。このARシンボルは、例えば、AR環境内のデバイス100の方位を測定したり、AR環境中でデバイス100の存在を識別したり、および/または他の形でデバイス100の認識を可能にしたりするために用いることができる。いくつかの実施態様において、デバイス100は、可聴署名、赤外線署名、および/またはARデバイス200が認識できる他の署名を発することが可能である。
【0047】
いくつかの実施態様において、
図2Aに示すように、デバイス100は指輪200などウェアラブル・デバイスとして構成することができる。いくつかの実施態様において、デバイス100は、手袋、指ぬき、指輪、および/または、身に着けられる他のデバイス100を含み得る。フィードバック・デバイス120には一つ以上のデバイスを含めることができる。該一つ以上のデバイスは、デバイス100の一つ以上の部分に配置することが可能である。識別子デバイス160には、識別指標および/またはARシンボルを含めることができ、これらは、着用者の指先を覆うデバイス100の表面、および/またはデバイス100の他の表面に配置することが可能である。いくつかの実施態様において、識別子デバイス160は、識別指標および/またはARシンボルを生成することができる。いくつかの実施態様において、デバイス100は、着用者の手指の少なくとも指爪を覆うことが可能である。識別指標またはARシンボルは、着用者の指爪覆うデバイス100の表面、および/またはデバイス100の他の表面に配置することが可能である。
【0048】
図2Bに示すように、いくつかの実施態様において、デバイス100は携帯端末102として構成することができる。携帯端末102には、同一のまたは類似のコンポーネントおよび機能を含めることが可能で、該端末は、デバイス100と同じまたは類似の方法でARデバイス200と相互作用することができる。この携帯端末102には、例えば、タッチペン、ジョイスティック、携帯電話、ビデオ・ゲーム・コントローラ、および/またはARデバイス200と通信可能に連結できる他の携帯端末102を含めることが可能である。いくつかの実施態様において、デバイス100および携帯端末102の両方が、ARデバイス200と同時に相互作用することができる。
【0049】
図3に示すように、デバイス100のフィードバック・デバイス120は一つ以上のデバイスを含み得る。いくつかの実施態様において、該一つ以上のデバイスはデバイス100に相隔てて配置することができる。フィードバック・デバイス120には、一つ以上の触覚効果を提供するよう構成された一つ以上の触覚出力デバイス122、視覚フィードバックを提供するよう構成された一つ以上の視覚デバイス124、聴覚フィードバックを提供するよう構成された一つ以上の聴覚デバイス126、発光バンド128、および/またはフィードバックを生成する他のデバイスを含めることが可能である。
【0050】
触覚出力デバイス122には、例えば、内部でモータが偏心質量を動かす偏心回転質量(“ERM”)、内部でスプリングに取り付けられた質量が前後に駆動される線形共鳴アクチュエータ(“LRA”)、または、圧電物質、電気活性ポリマーまたは形状合金などの「スマート材料」、マクロ複合繊維アクチュエータ、静電気アクチュエータ、電気触感アクチュエータ、および/または、触覚(例、振動触覚)フィードバックなどの物理的フィードバック提供する他の種類のアクチュエータなど、アクチュエータを含めることができる。触覚出力デバイスには、静電気摩擦(ESF)、超音波表面摩擦(USF)を使うもの、または超音波触覚トランスデューサを使い音響放射圧を誘導するもの、または触覚基板とフレキシブルまたは変形可能表面とを使うもの、またはエア・ジェットを用いたエア吐き出しなどの射出触覚出力を与えるものなど、非機械的または非振動型のデバイスを含めることが可能である。いくつかの実施態様において、一つ以上の触覚出力デバイス122は、デバイス100全体に相隔てて配置することができる。
【0051】
視覚デバイス124は、デバイス100での可視光など視覚フィードバックを生成するよう構成することができる。例えば、視覚フィードバックは、AR環境中のイベントの発生を視覚的に示すことが可能である。
【0052】
聴覚デバイス126は、デバイス100での一つ以上の音声などの聴覚フィードバックを生成するよう構成することができる。例えば、聴覚フィードバックは、AR環境中のイベントの発生を音声で示すことができる。
【0053】
発光バンド128は、デバイス100から、および/またはその周りに発する発光バンドを生成するよう構成することが可能である。バンド128による発光には、色、パターン、および/または他の視覚特性を含めることができる。この視覚特性は、AR環境中の一つ以上の仮想オブジェクトにコーディネートすることが可能である。
【0054】
図1に戻って、ARデバイス200は、AR空間および物理空間の両方含むAR環境を生成するよう構成することができる。ARデバイス200には、例えばプロセッサ210、撮像デバイス200、通信ポート230、および/または他のコンポーネントを含めることができる。プロセッサ210は、物理空間に合わさったAR空間を生成するよう構成することができる。プロセッサ210は、物理空間中の少なくとも一つの物理オブジェクトを認識し、AR空間において、一つ以上の仮想オブジェクトを使って該少なくとも一つの物理オブジェクトを拡張するよう構成することが可能である。プロセッサ210は、AR環境内のイベントを判定し、有線または無線通信チャネル300を介して、デバイス100にそのイベントを表す制御信号を伝達するよう構成することができる。該制御信号は、デバイス100においてフィードバックを生成させることができる。撮像デバイス220は、物理空間を画像化するよう構成することが可能である。いくつかの実施態様において、撮像デバイス220には、一つ以上のカメラ、赤外線検出装置、ビデオ・カメラ、および/または他の画像記録デバイスを含めることができる。通信ポート230には、例えば、デバイス100との通信チャネル300の維持を可能にするためのインターフェースを含めることができる。
【0055】
いくつかの実施態様において、プロセッサ210は、例えば、オブジェクト認識モジュール211、オブジェクト生成モジュール212、イベント処理モジュール213、制御信号生成モジュール214、通信モジュール215、および/または他のコンピュータ・プログラム・モジュールを含め、一つ以上のモジュールを実行するよう構成することが可能である。オブジェクト認識モジュール211は、物理空間中の物理オブジェクトを認識するよう構成することができる。オブジェクト生成モジュール212は、認識された物理オブジェクトを拡張するため、仮想オブジェクトを生成するよう構成することが可能である。イベント処理モジュール213は、AR環境内にイベントが生じたかどうかを検出するよう構成することができる。制御信号生成モジュール214は、イベントに関連する情報を受信し、デバイス100に送信するための制御信号を生成するよう構成することが可能である。通信モジュール215は、ARデバイス200とデバイス100との間の通信を推進するよう構成することができる。
【0056】
いくつかの実施態様において、オブジェクト認識モジュール211は、物理空間中のオブジェクトを認識するよう構成することができる。オブジェクト認識モジュール211は、撮像デバイス220およびARデバイス200のストレージと通信して、物理空間中のオブジェクトを認識することができる。例えば、オブジェクト認識モジュール211は、撮像デバイス220が捕捉した視覚データを受信することができ、その視覚データを処理して、捕捉された視覚データ中に一つ以上のオブジェクトが存在するかどうかを判定することができる。オブジェクト認識モジュール211は、視覚データ中に存在する捕捉オブジェクトをストレージ中に格納されたオブジェクトと比較することが可能である。
【0057】
例えば、オブジェクト認識モジュール211は、既知の技法によって、捕捉オブジェクトのピクセルをストレージ中の格納オブジェクトのピクセルと比較することができる。捕捉オブジェクトのピクセルの閾値パーセント(例えば、80%、90%、100%および/または他のパーセント)が格納オブジェクトのピクセルと合致すれば、オブジェクト認識モジュール211は、その捕捉オブジェクトが当該格納オブジェクトとして認識されたと判定することが可能である。いくつかの実施態様において、閾値パーセントは、撮像デバイス220の解像度の如何によって決めるようにすることができる。
【0058】
オブジェクト認識モジュール211は、格納オブジェクトに関連する情報を取得し、該格納オブジェクトに関連する情報および捕捉オブジェクトに関連する情報をオブジェクト生成モジュール212に送信することができる。オブジェクト生成モジュール212に送信される情報には、例えば、格納オブジェクトに対する画像データ、格納オブジェクトの種類、捕捉オブジェクトの物理空間中の位置、捕捉オブジェクトの他の物理オブジェクトに対する近接度、格納オブジェクトに関連するコンテキスト情報、捕捉オブジェクトに関連するコンテキスト情報、および/または、格納オブジェクトまたは捕捉オブジェクトに関連する他のデータを含めることが可能である。いくつかの実施態様において、オブジェクト認識モジュール211は、格納オブジェクトに関連する情報および捕捉オブジェクトに関連する情報を、イベント処理モジュール213と、制御信号生成モジュール214と、および/または、プロセッサ210の他のモジュールと、のうちの一つ以上に送信することができる。
【0059】
いくつかの実施態様において、捕捉オブジェクトが格納オブジェクトと合致しない場合、オブジェクト認識モジュール211は、捕捉オブジェクトに関連するデータをサーバ400に送信し、サーバ400がオブジェクト認識を行なえるようにすることが可能である。サーバ400が捕捉オブジェクトを認識した場合、サーバ400は、捕捉オブジェクトに合致した格納オブジェクトに関連する情報を、オブジェクト認識モジュール211に伝達することができる。オブジェクト認識モジュールは、格納オブジェクトに関連する情報はサーバ400から、捕捉オブジェクトに関連する情報は自ら、オブジェクト生成モジュール212に送信することが可能である。サーバ400が捕捉オブジェクトを認識しない場合、サーバ400は、合致するものが見付からなかった旨を連絡することができる。
【0060】
いくつかの実施態様において、オブジェクト生成モジュール212は、オブジェクト認識モジュール211から物理オブジェクトに関連する情報を受信することができ、AR環境中で、その物理オブジェクトを拡張するために一つ以上の仮想オブジェクトを生成することが可能である。オブジェクト生成モジュール212は、ストレージにアクセスして、一つ以上の仮想オブジェクトが当該物理オブジェクトに関連付けられているかどうかを判定することができる。当該物理オブジェクトに関連付けられた仮想オブジェクトが無い場合、オブジェクト生成モジュール212は、サーバ400と通信し、サーバ400のストレージが、該一つ以上の物理オブジェクトと一つ以上の仮想オブジェクトとの間の一つ以上の関連付けを格納しているかどうかを判定することが可能である。サーバ400のストレージ中に関連付けが見付かった場合、サーバ400は、オブジェクト生成モジュール212に、関連付けられた仮想オブジェクトに関連するデータを伝達することができる。
【0061】
ある仮想オブジェクトが、オブジェクト認識モジュール211から受信した情報中で識別された物理オブジェクトに関連付けられている場合、オブジェクト生成モジュール212は、物理空間に合わさったAR空間を生成することができる。
図4は、例示的なAR環境500のブロック図を示す。AR環境500は、一つ以上の物理オブジェクト520a、520b、…、520nを含む物理空間520と、物理空間520中の一つ以上の物理オブジェクト520a、520b、…、520nを拡張する一つ以上の仮想オブジェクト510a、510b、…、510nを含むAR空間510とを含む。
【0062】
いくつかの実施態様において、オブジェクト生成モジュール212は、AR空間510中の一つ以上の仮想オブジェクト510a、510b、…、510nを使って、物理オブジェクト520nを拡張することができる。例えば、オブジェクト生成モジュール212は、ARデバイス200のディスプレイ面を用いてAR空間510(および一つ以上の仮想オブジェクト510a、510b、…、510n)を表示することが可能である。いくつかの実施態様において、表示されるAR空間510および一つ以上の仮想オブジェクト510a、510b、…、510nは、ARデバイス200のディスプレイ面を用いて三次元的に表現することができる。
【0063】
ARデバイス200のディスプレイを用いて表示されるAR環境500には、物理空間520およびAR空間510を含めることが可能である。いくつかの実施形態において、物理空間520は、撮像デバイス220によって画像化して該ディスプレイを介して表示することができる。いくつかの実施形態において、少なくとも部分的に透明なディスプレイ(例えば、レンズ)であって、それを通して物理空間520を見られるようにディスプレイが構成されている実施形態などにおいては、物理空間520は、ディスプレイを通してそのまま見ることが可能である。物理空間520を表示するためにいずれの実施形態が使われていても、一つ以上の仮想オブジェクト510a、510b、…、510nは、物理空間520中に存在する一つ以上の物理オブジェクト520a、520b、…、520nに一致してまたは関連付けて表示させ、これにより、AR環境500中の一つ以上の物理オブジェクト520a、520b、…、520nを拡張することができる。単一の仮想オブジェクト510aが、単一の物理オブジェクト520aを拡張することもあるいは複数の物理オブジェクト520a、520b、…、520nを拡張することも可能である。複数の仮想オブジェクト510a、510b、…、510nが、単一の物理オブジェクト520aを拡張することもあるいは複数の物理オブジェクト520a、520b、…、520nを拡張することも可能である。物理空間520中に存在する物理オブジェクト520a、520b、…、520nを拡張する仮想オブジェクト510a、510b、…、510nの数および種類は、上述の例には限定されない。
【0064】
いくつかの実施態様において、イベント処理モジュール213は、AR環境中でイベントが生じているどうかを検出するよう構成することができる。イベント処理モジュール213は、撮像デバイス220、オブジェクト認識モジュール211、オブジェクト生成モジュール212、ストレージ、および/または、ARデバイス200の他のモジュールまたはデバイスから、データを受信することが可能である。ARデバイス200のストレージは、ARデバイス200が認識可能な一つ以上のイベントに関連するデータを格納することができる。例えば、ARデバイス200のストレージは、例として、デバイス100とAR環境との間の相互作用、AR環境に対して起きているアクションの確認、デバイス100がARデバイス200によって認識されていることの確認、デバイス100とAR空間510中に表現された一つ以上の仮想オブジェクトとの間の相互作用、物理オブジェクトを拡張するための特定の種類の仮想オブジェクトの生成、デバイス100の認識、携帯端末102の認識、ユーザとAR環境との間の相互作用、および/またはAR環境に関連する他の出来事を含め、イベントに関連するデータを格納することが可能である。
【0065】
いくつかの実施態様において、イベント処理モジュール213は、撮像デバイス220からの視覚データ、視覚データ中の捕捉オブジェクトに関連するオブジェクト認識モジュール211からの情報、オブジェクト生成モジュール212によって生成された仮想オブジェクトに関連する情報、および/またはAR環境に関連する他の情報を受信することができる。イベント処理モジュール213は、受信した情報をストレージに格納されたイベントに関連するデータと比較して、それら情報(または情報の一部)が、あるイベントに関連するかどうかを判定することが可能である。受信した情報があるイベントに関連する場合、イベント処理モジュール213は該受信情報および関連するイベントについてのデータを、制御信号生成モジュール214に送信することができる。
【0066】
いくつかの実施態様において、イベント処理モジュール213は、プロセッサから、デバイス100とAR環境との間に生じた相互作用、AR環境中の変更された一つ以上の仮想オブジェクト、デバイス100からの入力が受信されたこと、デバイス100から受信された入力がARデバイス200によって処理されたこと、ユーザとAR環境との間で行われた相互作用、および/または他の処理がARデバイス200によって行われたことを示す、データ受信することが可能である。いくつかの実施態様において、イベント処理モジュール213は、プロセッサ210から受信したデータをストレージに格納されたデータと比較して、そのデータがあるイベントに関連付けられているかどうかを判定することができる。受信情報の一部または全部が、ストレージに格納されているイベントに関連付けられている場合、イベント処理モジュール213は、受信情報および関連イベントに関連するデータを含むイベント・データ、制御信号生成モジュール214に送信することが可能である。
【0067】
いくつかの実施態様において、受信情報がストレージに格納されているイベントに関連付けられていない場合、イベント処理モジュール213は、サーバ400がイベント処理を行なえるように、受信情報を含めイベント・データをサーバ400に送信することができる。受信情報の一部または全部が、サーバ400のストレージに格納されているイベントに関連付けられている場合、サーバ400は、関連するイベントに関連する情報をイベント処理モジュール213に伝達することが可能である。イベント処理モジュール213は、受信情報および関連イベントに関連するデータ含むイベント・データを、制御信号生成モジュール214に送信することができる。受信情報が、サーバ400のストレージに格納されているイベントに関連付けられていない場合、サーバ400は、合致するものが見付からなかった旨を連絡することができる。
【0068】
いくつかの実施態様において、制御信号生成モジュール214は、イベント処理モジュール213からイベント・データを受信し、デバイス100に送信するため該イベント・データに基づいて制御信号を生成するよう構成することが可能である。ARデバイス200のストレージには、複数のイベントと複数の制御信号とをそれぞれ関連付けるルックアップ・テーブルを含めることができる。制御信号生成モジュール214は、イベント処理モジュール213から受信したイベント・データに基づいて、デバイス100に送信するための制御信号を生成することができる。例えば、制御信号生成モジュール214は、受信したイベント・データをストレージに格納されたデータと比較することが可能である。イベント・データの一部または全部がストレージ中に格納されたイベントと合致する場合、制御信号生成モジュール214は、合致したイベントに関連付けられた制御信号に結び付く制御信号を生成することができる。イベント・データがストレージ中に格納されたイベントと合致しない場合、制御信号生成モジュール214は、そのイベント・データをサーバ400に連絡し、サーバのストレージが、該イベント・データの一部または全部に関連付けられた制御信号を格納しているかどうかを判定することが可能である。この制御信号には、例えば、イベントが生じたことを示す情報、特定の種類のイベントが生じたことを示す情報、拡張仮想環境中に一つ以上の仮想オブジェクトが表示された/されることを示す情報、デバイス100と一つ以上の仮想オブジェクトとの間の一つ以上の相互作用示す情報、および/またはAR環境中のイベントに関連する他の情報を含めることができる。
【0069】
通信モジュール215は、ARデバイス200とデバイス100との間の通信を推進するよう構成することができる。いくつかの実施態様において、通信モジュール215は、ARデバイス200と、デバイス100、サーバ400、携帯端末102、および/またはARデバイス200と通信可能な他のデバイスと、の間の通信を推進するよう構成することが可能である。通信モジュール215は、ARデバイス200と、デバイス100および/または携帯端末102との間の通信のための有線または無線通信チャネル300を備えるよう構成することができる。通信モジュール215は、有線または無線通信チャネル300を介し、あるいは別の通信チャネルを介して、ARデバイス200と、デバイス100、携帯端末102、サーバ、および/または他のデバイスと、の間の通信を提供するよう構成することが可能である。通信モジュール215は、制御信号生成モジュール214によって生成された制御信号を、有線または無線通信チャネル300を介してデバイス100および/または携帯端末102に通信するよう構成することができる。
【0070】
いくつかの実施態様において、ARデバイス200のプロセッサ210は、デバイス100が、撮像デバイス220の視界内、および/またはAR環境500の物理空間520内で移動されたとき、デバイス100を認識するよう構成することが可能である。例えば、ARデバイス200のオブジェクト認識モジュール211は、撮像デバイス220からの画像データとストレージに格納された画像データとを比較することによってデバイス100を認識するよう構成することができる。ARデバイス200のストレージには、デバイス100に対応する画像データを含めることが可能である。このストレージには、デバイス100上に配置が可能な一つ以上の指標に対応する画像データを含めることができる。この指標には、製品コード、QRコード、デバイス100に関連付けられた画像、および/またはデバイス100を識別するのに用いられる他の画像を含めることが可能である。ARデバイス200のプロセッサ210は、可聴署名、赤外線署名、および/またはデバイス100によって生成される他の署名を認識するよう構成することができる。これらの実施態様において、制御信号生成モジュール214が、デバイス100の認識を表すことが可能な制御信号を生成して、デバイス100で生成されるフィードバックがその認識を示すようにすることが可能である。
【0071】
いくつかの実施態様において、プロセッサ210は、デバイス100から、デバイス100の位置および/またはデバイス100の方位を受信するよう構成することができる。デバイス100の位置および方位は通信チャネル300を介して、デバイス100とARデバイス200との間で通信することが可能である。プロセッサ210は、受信された位置および/または方位に基づいて、AR環境500内のデバイス100の位置および/またはデバイス100の方位を判定するよう構成することができる。いくつかの実施態様において、デバイス100上に、位置インジケータ画像および/または方位インジケータ画像を配置することができる。オブジェクト認識モジュール211は、ウェアラブル・オブジェクト100が撮像デバイスの視界内および/またはAR環境500の物理空間520内にあることを認識する際に、この位置インジケータ画像および/または方位インジケータ画像を認識することが可能である。位置インジケータ画像および/または方位インジケータ画像のデータは、AR環境500内のデバイス100の位置および/または方位を判定するため、オブジェクト認識モジュール211、イベント処理モジュール213、および/またはARデバイス200の他のモジュールによって処理することができる。いくつかの実施態様において、プロセッサ210は、物理オブジェクトとデバイス100との間の距離を顧慮せずに、デバイス100をAR環境500内に位置付けるよう構成することが可能である。
【0072】
プロセッサ210は、デバイス100から入力を受信するよう構成することができる。例えば、プロセッサ210は、デバイス100から、入力コンポーネント150を介して受け取られた入力に関連するデータを受信することができる。入力コンポーネント150を介して受け取られる入力は、例えば、ボタン押し、ジェスチャ、および/または他の入力を含み得る。ARデバイス200のプロセッサ210は、受信されたデータを処理し、その処理に基づいて機能を遂行することができる。例えば、プロセッサ210は、AR環境500中の一つ以上の仮想オブジェクト510a、510b、…、510nを追加、削除、変更および別途に修正することが可能である。プロセッサ210は、この処理に基づいてデバイス100にデータを送信することができる。プロセッサ210は、該処理に基づいて他の機能を遂行することが可能である。いくつかの実施態様において、該プロセッサは、デバイス100から、デバイス100に対する識別指標および入力が識別指標を含むことの提示を含む入力を受信することができる。ARデバイス200は、識別指標を格納しておき、その識別指標をデバイス100と関連付けることが可能である。
【0073】
図5Aに示されるように、いくつかの実施態様において、ARデバイス200は眼鏡の形状に構成することができる。例えば、ARデバイス200は、眼鏡の一つまたは両方のレンズ250を用いてAR環境500(AR環境500A、500B)を表示するよう構成することが可能である。ARデバイス200のコンポーネント(例えば、撮像デバイス220、無線トランシーバ240、プロセッサなど)は眼鏡のさまざまな位置に配置することができる。以下は、単なる例示のためのものであって限定されない例である。一方のレンズ250Aの近くのフレームの部分(またはレンズ250Aの一部)に撮像デバイス220を含めることができる。他方のレンズの250Bの近くのフレームの部分(またはレンズ250Bの一部)に、通信ポートを包含可能な無線トランシーバ240を含めることが可能である。眼鏡のアーム210(レンズから耳に延び出している眼鏡フレームの部分を含む)には、プロセッサ、通信ポート、および/またはARデバイス200の他のコンポーネントを含めることができる。いくつかの実施態様において、眼鏡アーム210A,210Bには、プロセッサと、通信ポートと、および/またはARデバイス200の他のコンポーネントとのうちの一つ以上を含めることが可能である。他の構成も同様に用いることができる。
【0074】
図5Bに示すように、いくつかの実施態様において、ARデバイス200は、携帯電話、パーソナル・デジタル・アシスタント、スマートフォン、および/またはその他の携帯電話として構成することが可能である。撮像デバイス220は、一つ以上のカメラ(例えば、正面向きカメラ220A、背面向きカメラ220B、および/または携帯電話の他のカメラ)を含み得る。この携帯電話のプロセッサには、ARデバイス200のプロセッサのコンポーネントおよび機能を含めることができる。電話の通信コンポーネントおよび機能(例えば、一つ以上のポート、無線トランシーバ、一つ以上のアンテナ、他のデバイスとの通信を推進する処理機能、および/またはその他の通信コンポーネントおよび機能)には、ARデバイス200の通信ポートおよび通信モジュールを含めることが可能である。携帯デバイスのディスプレイは、AR環境500を表示するよう構成することができる。
【0075】
いくつかの実施態様において、ARデバイス200は、ラップトップ、デスクトップコンピュータ、タブレット、および/または他のコンピューティング・デバイスなど、コンピューティング・デバイスとして構成することが可能である。一つ以上の撮像デバイス220A、220Bは、正面向きカメラ、背面向きカメラ、コンピューティング・デバイスと通信可能に連結されたウェブカメラ、および/または他の撮像デバイスを含み得る。コンピューティング・デバイスのプロセッサには、ARデバイス200のプロセッサのコンポーネントおよび機能を含めることができる。コンピューティング・デバイスの通信コンポーネントおよび機能(例えば、一つ以上のポート、無線トランシーバ、一つ以上のアンテナ、他のデバイスとの通信を推進する処理機能、および/または他の通信コンポーネントおよび機能)には、ARデバイス200の通信ポートおよび通信モジュールを含めることが可能である。コンピューティング・デバイスのディスプレイは、AR環境500を表示するよう構成することができる。
【0076】
図5Cに示すように、いくつかの実施態様において、ARデバイス200は、テレビジョン、ビデオ・ゲーム・システム、および/または動画を表示するための他のデバイスを含み得る。一つ以上の撮像デバイス220は、正面向きカメラ、オブジェクト・センサ、コンピューティング・デバイスと通信可能に連結されたウェブカメラ、および/または他の撮像デバイスを含み得る。このデバイスのプロセッサには、ARデバイス200のプロセッサのコンポーネントおよび機能を含めることができる。該デバイスの通信コンポーネントおよび機能(例えば、一つ以上のポート、無線トランシーバ、一つ以上のアンテナ、他のデバイスとの通信を推進する処理機能、および/または他の通信コンポーネントおよび機能)には、ARデバイス200の通信ポートおよび通信モジュールを含めることが可能である。該デバイスのディスプレイ250は、AR環境500を表示するよう構成することができる。
【0077】
図1に戻って参照すると、いくつかの実施態様において、サーバ400は、一つ以上のデバイス100、ARデバイス200、携帯端末102、および/またはサーバ400と交信する他のデバイスと通信するよう構成することが可能である。いくつかの実施態様において、サーバ400には、プロセッサ、ストレージ、および通信ポートを含めることができる。
【0078】
サーバ400のプロセッサは、データを受信し、オブジェクトを認識し、イベントを処理し、データを送信し、および/または他の機能を提供するよう構成することが可能である。いくつかの実施態様において、サーバ400は、デバイス100のプロセッサ110から制御信号を受信するよう構成することができる。サーバ400のストレージには、複数の制御信号と複数のフィードバック応答とを含む、デバイス100のルックアップ・テーブルと類似または同じ仕方で構成可能な、ルックアップ・テーブルを含めることができる。このルックアップ・テーブルが当該制御信号に関連するエントリを含む場合、サーバ400は、フィードバック応答を含む情報をフィードバック制御モジュール111に伝達することが可能である。サーバ400のルックアップ・テーブルが制御信号に関連するエントリを含まない場合、サーバ400は、その制御信号に合致するものが見付からなかった旨を、フィードバック制御モジュール111に連絡することができる。いくつかの実施態様において、サーバ400は、デバイス100から受信したデータに関連する画像処理および/またはオブジェクト認識を実施することができる。
【0079】
いくつかの実施態様において、サーバ400は、ARデバイス200の撮像デバイス220によって捕捉されたオブジェクトに関連するデータを受信することができる。サーバ400のプロセッサは、捕捉オブジェクトに関連するオブジェクト認識を実施することができる。サーバ400のストレージには、一つ以上の物理オブジェクトを含むルックアップ・テーブルを含めることが可能である。サーバ400は、ルックアップ・テーブルが、受信されたデータから認識されたオブジェクトに関連するエントリを含んでいるかどうかを判定することができる。ルックアップ・テーブルが認識されたオブジェクトに関連するエントリを含む場合、サーバ400は、認識されたオブジェクトに合致する格納オブジェクトに関連する情報を、オブジェクト認識モジュール211に伝達することが可能である。サーバ400が認識されたオブジェクトを認知しなかった場合、サーバ400は、合致するものが見付からなかった旨をオブジェクト認識モジュール211に連絡することができる。
【0080】
いくつかの実施態様において、サーバ400は、ARデバイス200のプロセッサ210のオブジェクト認識モジュール211によって認識された物理オブジェクトに関連するデータを受信することが可能である。サーバ400のプロセッサは、サーバ400のストレージが、物理オブジェクトと一つ以上の仮想オブジェクトとの間の関連付けを格納しているかどうかを判定することができる。いくつかの実施態様において、サーバ400のストレージには、物理オブジェクト、仮想オブジェクト、および一つ以上の物理オブジェクトと一つ以上の仮想オブジェクトとの間の一つ以上の相互関係を含むルックアップ・テーブルを含めることが可能である。サーバ400のストレージ中に関連付けが見付かった場合、サーバ400は、オブジェクト生成モジュール212に、関連する仮想オブジェクトに関するデータを伝達することができる。サーバ400のストレージ中に関連付けが見付からなかった場合、サーバ400は、関連付けが見付からなかったことを連絡することができる。
【0081】
いくつかの実施態様において、サーバ400は、ARデバイス200のプロセッサ210のイベント処理モジュール213からイベント・データを受信するよう構成することができる。サーバ400のストレージには、複数のイベントと複数の制御信号とをそれぞれ関連付けるルックアップ・テーブルを含めることが可能である。イベント・データの一部または全部がサーバ400のストレージ中に格納されたイベントと合致する場合、サーバ400のプロセッサは、そのイベントに関連するイベント・データを、イベント処理モジュール213に伝達することができる。イベント・データがストレージ中に格納されたイベントと合致しない場合、サーバ400のプロセッサは、合致するものが見付からなかったことをARデバイス200に連絡することができる。
【0082】
サーバ400の通信ポートには、例えば、デバイス100、携帯端末102、ARデバイス200、および/またはサーバ400と交信する他のデバイスとの通信チャネル300の維持を可能にするためのインターフェースを含めることができる。データおよび/または信号は、通信チャネル300、および/または、サーバ400がデータおよび/または信号を受信するための他の通信チャネル、を介して受信することが可能である。
【0083】
図6は、本発明のある実施態様による、AR環境500に基づいてフィードバックを提供する例示的なプロセスのフローチャートを示す。
図6および他の図面に記載のオペレーションは、上記で詳しく説明したシステム・コンポーネントの一部または全部を使って達成することができ、いくつかの実施態様において、さまざまなオペレーションを色々なシーケンスで実施することが可能である。他の実施態様において、
図6および他の図面に示されたオペレーションの一部または全部と共に、追加のオペレーションを実施することが可能である。さらなる他の実施態様においては、一つ以上のオペレーションが同時に実行され得る。さらなる他の実施態様では、さまざまなオペレーションの一つ以上の組み合わせが実行され得る。いくつかの実施態様は、
図6および他の図面に関連して記載されたオペレーションの全部は実行しなくてもよい。上記のように記載されたオペレーションは例示的性質のものであり、しかして限定するものと見なすべきではない。
【0084】
いくつかの実施形態において、
図6および他の図面のオペレーションは、一つ以上のプロセシング・デバイス(例えば、デバイス100、ARデバイス200、サーバ400、携帯端末102、および/または他のデバイス)中に実装することができる。一つ以上のプロセシング・デバイスは、電子ストレージ媒体上に電子的に格納された命令に応じて、
図6および他の図面のオペレーションの一部または全部を実行する一つ以上のデバイスを含み得る。該一つ以上のプロセシング・デバイスには、
図6および他の図面のオペレーションの一つ以上を実行するため特別に設計されるハードウェア、ファームウエア、および/またはソフトウェアを用いて構成される一つ以上のデバイスも含めることができる。
【0085】
オペレーション602で、デバイス100とARデバイス200との間に通信チャネル300を確立することができる。
【0086】
オペレーション604で、AR環境500においてイベントの発生を検出することが可能である。ARデバイス200のプロセッサ210の、オブジェクト認識モジュール211およびオブジェクト生成モジュール212の一つまたは両方を、物理空間520に合わさったAR空間510を含む、AR環境500の生成を推進するよう構成することができる。イベント処理モジュール213は、プロセッサ210および撮像デバイス220のうちの一つ以上から受信した情報に基づいて、AR環境500内のイベントを判定するよう構成することができる。このイベントには、デバイス100とAR環境500との間の相互作用、AR環境500に対して起きているアクションの確認、デバイス100がARデバイス200によって認識されていることの確認、デバイス100とAR空間510中に表現された一つ以上の仮想オブジェクトとの間の相互作用、ユーザとAR環境との間の相互作用および/またはAR環境500中の他の出来事を含めることが可能である。
【0087】
オペレーション606で、デバイス100は、ARデバイス200から制御信号を受信することができる。制御信号生成モジュール214は、ARデバイス200のイベント処理モジュール213がイベントを検出したとき、検出されたイベントに関連付けられた制御信号を特定し、その制御信号を有線または無線通信チャネル300を介してデバイス100に伝達するよう構成することが可能である。プロセッサ110のフィードバック制御モジュール111がその制御信号を受信することができる。制御信号は、AR環境500中のイベント発生の検出に基づくものとすることができる。
【0088】
オペレーション608で、デバイス100を介してフィードバックを提供することができる。フィードバック制御モジュール111は、フィードバック・デバイス120に、デバイス100を介してフィードバックを提供させることが可能である。いくつかの実施態様において、フィードバック制御モジュール111は、フィードバック・デバイス120に制御信号を与えるように構成することができる。これの実施形態において、制御信号をフィードバック・デバイス120に直接印加してフィードバックを行わせることが可能である。いくつかの実施態様において、フィードバック制御モジュール111は、受信した制御信号に基づいてフィードバック応答を決めるよう構成することができる。フィードバック制御モジュール111は、一つ以上の種類のフィードバックと生成対象の指定フィードバックの種類の一つ以上のフィードバック信号とを含むフィードバック応答を提供することができる。フィードバック制御モジュール111は、フィードバック応答の指定フィードバック信号を生成し、そのフィードバック信号をそれら信号が対応するそれぞれのフィードバック・デバイス120に送信するよう構成することが可能である。
【0089】
デバイス100の一つ以上のフィードバック・デバイス120は、デバイス100を介してフィードバックを提供することができる。いくつかの実施態様において、提供するフィードバックは、フィードバック制御モジュール111から受信した一つ以上のフィードバック信号に基づくものとすることが可能である。このフィードバックは、AR環境500内で検出されたイベントに対応させることができる。例えば、フィードバックはイベントを表すことができる。
【0090】
図7は、本発明のある実施態様による、AR環境に基づいてフィードバックを提供する例示的なプロセスのフローチャートを示す。
【0091】
オペレーション702で、デバイス100とARデバイス200との間に通信チャネル300を確立することができる。
【0092】
オペレーション704で、ARデバイス200のAR環境500内でデバイス100を検出することが可能である。例えば、ARデバイス200の撮像デバイス220は、AR環境500の物理空間520中の画像を捕捉することができる。ARデバイス200のプロセッサ210のオブジェクト認識モジュール211は、撮像デバイス220によって捕捉された画像データに基づいて、デバイス100を検出することが可能である。いくつかの実施態様において、デバイス100は、画像中のオブジェクトを検出することができ、検出されたオブジェクトに関連付けられたデータに基づいて、該オブジェクトがデバイスかどうかを判定することが可能である。いくつかの実施態様において、オブジェクト認識モジュール211は、デバイス100に配された識別指標に基づいてデバイス100を検出することができる。いくつかの実施態様においては、ARデバイスのプロセッサ210は、デバイス100の識別指標に基づいてデバイス100を検出することが可能である。この識別指標には、可視の光学署名(例えば、可視波長内の光の光学署名)または不可視の署名(例えば、可視波長外の光の光学署名)を含めることが可能である。いくつかの実施態様において、デバイス100の表面にARシンボルを配置することができる。オブジェクト認識モジュール211は、デバイス100上に配置されたARシンボルに基づいてデバイス100を検出することが可能である。いくつかの実施態様において、ARデバイスのプロセッサ210は、可聴署名、赤外線署名、および/または、デバイス100が発する他の署名に基づいてデバイス100を検出することができる。
【0093】
オペレーション706で、デバイス100は、ARデバイス200から、AR環境500内でのデバイス100の認識を示す制御信号を受信することができる。オブジェクト認識モジュール211およびプロセッサ210のうちの一つ以上が、AR環境500内でデバイス100を識別したとき、イベント処理モジュール213にデバイス100の認識を示すデータを送信することが可能である。イベント処理モジュール213は、オブジェクト認識モジュール211から受信したデータをストレージ中に格納されたデータと比較して、そのデータがあるイベントと関連付けられているかどうかを判定することができる。受信した情報の一部または全部が、デバイス100の認識を含むイベントに関連している場合、イベント処理モジュール213は、受信情報およびデバイス100の認識に関連するデータを含むイベント・データを、制御信号生成モジュール214に送信することが可能である。制御信号生成モジュール214は、イベント処理モジュール213からイベント・データを受信し、デバイス100に送信するため、該イベント・データに基づいて制御信号を生成するよう構成することができる。
【0094】
プロセッサ110のフィードバック制御モジュール111は、制御信号生成モジュール214によって生成された制御信号を受信することが可能である。該制御信号は、AR環境500中のイベント発生の検出を示すことができる。
【0095】
オペレーション708で、AR環境500内でのデバイス100の認識を示すフィードバックを、デバイス100を介して提供することが可能である。フィードバック制御モジュール111は、フィードバック・デバイス120に、デバイス100を介してフィードバックを提供させることができる。いくつかの実施態様において、フィードバック制御モジュール111は、フィードバック・デバイス120に対し制御信号を与えるよう構成することが可能である。これらの実施形態において、該制御信号をフィードバック・デバイス120に直接印加してフィードバックを行わせることができる。いくつかの実施態様において、フィードバック制御モジュール111は、受信された制御信号に基づいてフィードバック応答を決めるよう構成することが可能である。フィードバック制御モジュール111は、フィードバック応答の指定フィードバック信号を生成し、該フィードバック信号を、それら信号が対応するそれぞれのフィードバック・デバイス120に送信するよう構成することが可能である。
【0096】
フィードバックはデバイス100を介して提供することができる。例えば、デバイス100の一つ以上のフィードバック・デバイス120は、デバイス100を介してフィードバックを提供することが可能である。いくつかの実施態様において、提供するフィードバックは、フィードバック制御モジュール111から受信された一つ以上のフィードバック信号に基づくものとすることができる。このフィードバックは、AR環境500内で検出されたイベントに対応させることが可能である。例えば、フィードバックは、AR環境500内でのデバイス100の認識を表すことができる。
【0097】
オペレーション710で、デバイス100とAR環境500との間の相互作用を検出することが可能である。例えば、ある相互作用は、入力コンポーネント150を介して受け取られデバイス100から受信された入力に基づいて検出することができる。相互作用は、AR環境500中のデバイス100の認識、AR環境500中のデバイス100の移動、デバイス100とAR環境500の物理空間520中の物理オブジェクト520aとの相互作用、デバイス100とAR環境500の仮想空間510中の仮想オブジェクト510aとの相互作用、AR環境500中のデバイス100によって提供されるフィードバック(例えば、物理空間510中で提供される視覚フィードバックおよび/またはARデバイス200が認識可能な他のフィードバック)、AR環境500中でのユーザの認識、AR環境500中でのユーザの移動、ユーザとAR環境500の物理空間520中の物理オブジェクト520aとの相互作用、ユーザとAR環境の仮想空間510中の仮想オブジェクト510aとの相互作用、および/またはデバイス100とAR環境500との間の別の相互作用、に基づいて検出することが可能である。
【0098】
オペレーション712で、デバイス100は、ARデバイス200から、デバイス100とAR環境500との間の相互作用を示す制御信号を受信することができる。ARデバイス200(例えば、オブジェクト認識モジュール211、イベント処理モジュール213、制御信号生成モジュール214、および/またはARデバイス200の他のモジュールまたはデバイスを含む)が、サービス100とAR環境500との間の相互作用を検出した場合、ARデバイス200(例えば、イベント処理モジュール213、制御信号生成モジュール214、および/またはARデバイス200の他のモジュールまたはデバイスを含む)は、相互作用の検出に基づいて、デバイス100に送信するための制御信号を生成することが可能である。
【0099】
プロセッサ110のフィードバック制御モジュール111は、ARデバイス200によって生成された制御信号を受信することができる。この制御信号は、デバイス100とAR環境500との間の相互作用の検出に基づくものとすることが可能である。
【0100】
オペレーション714で、デバイス100を介して、該相互作用を示すフィードバック提供することが可能である。フィードバック制御モジュール111は、フィードバック・デバイス120に、デバイス100を介してフィードバックを提供させることができる。いくつかの実施態様において、フィードバック制御モジュール111は、フィードバック・デバイス120に制御信号を与えるよう構成することが可能である。これらの実施形態において、制御信号をフィードバック・デバイス120に直接印加してフィードバックを行わせることができる。いくつかの実施態様において、フィードバック制御モジュール111は、受信された制御信号に基づいてフィードバック応答を決めるよう構成することが可能である。フィードバック制御モジュール111は、フィードバック応答の指定フィードバック信号を生成し、該フィードバック信号を、それら信号が対応するそれぞれのフィードバック・デバイス120に送信するよう構成することが可能である。
【0101】
フィードバックはデバイス100を介して提供することができる。例えば、デバイス100の一つ以上のフィードバック・デバイス120は、デバイス100を介してフィードバックを提供することが可能である。いくつかの実施態様において、提供するフィードバックは、フィードバック制御モジュール111から受信された一つ以上のフィードバック信号に基づくものとすることができる。このフィードバックは、デバイス100とAR環境500との間で検出された相互作用に対応させることが可能である。例えば、フィードバックは、デバイス100とAR環境500との間の相互作用を表すことが可能である。
【0102】
オペレーション716で、AR環境500内でのデバイス100の位置および/または方位を検出することができる。いくつかの実施態様において、デバイス100の位置/方位デバイス140は、通信チャネル300を介して、ARデバイス200に位置、方位、またはその両方を提供するよう構成することが可能である。例えば、位置/方位デバイス140には、ジャイロスコープ、地理空間測位デバイス、コンパス、および/または他の方位/位置確認デバイスを含めることが可能である。ARデバイス200のプロセッサ210は、受信された位置および/または方位に基づいて、AR環境500内のデバイス100の位置および/またはデバイス100の方位を判定するよう構成することができる。いくつかの実施態様において、デバイス100上に、位置インジケータ画像および/または方位インジケータ画像を配置することができる。オブジェクト認識モジュール211は、ウェアラブル・オブジェクト100が、撮像デバイスの視界内および/またはAR環境500の物理空間520内にあることを認識する際に、この位置インジケータ画像および/または方位インジケータ画像を認識することが可能である。位置インジケータ画像および/または方位インジケータ画像のデータは、オブジェクト認識モジュール211、イベント処理モジュール213、および/またはARデバイス200の他のモジュールによって処理され、AR環境500内のデバイス100の位置および/または方位を判定することができる。
【0103】
オペレーション718で、AR環境500中の仮想オブジェクトのある近接域内に、デバイス100があることを検出することができる。いくつかの実施態様において、ARデバイス200は、AR環境500中のデバイス100の位置および/または方位の測定に基づいて、デバイス100がAR環境500中の仮想オブジェクト(例えば、仮想オブジェクト510n)のある近接域内にあるかどうかを判定することが可能である。
【0104】
オペレーション720で、デバイス100は、ARデバイス200から、AR環境500の仮想オブジェクトの一つ以上の特性を示す制御信号を受信することができる。デバイス100は、仮想オブジェクト510aの一つ以上の特性を示す制御信号を受信することが可能である。いくつかの実施態様において、デバイス100は、仮想オブジェクト510aのある近接域内での当デバイスの検出に基づいた制御信号を受信することができる。いくつかの実施態様において、デバイス100は、仮想オブジェクト510aに対するデバイス100の位置の検出とは切り離して制御信号を受信することが可能である。
【0105】
オペレーション722で、仮想オブジェクトにコーディネートされたフィードバックをデバイス100を介して提供することができる。プロセッサ110のフィードバック制御モジュール111は、仮想オブジェクト510aの一つ以上の特性を示す制御信号を受信することが可能である。フィードバック制御モジュール111は、仮想オブジェクト510aの一つ以上の特性に基づいて、フィードバック・デバイス120に、デバイス100を介してフィードバックを提供させることができる。フィードバック制御モジュール111は、受信した制御信号に基づいてフィードバック応答を決めるように構成することが可能である。フィードバック制御モジュール111は、フィードバック応答の指定フィードバック信号を生成し、該フィードバック信号を、それら信号が対応するそれぞれのフィードバック・デバイス120に送信するよう構成することが可能である。該フィードバック信号は、それぞれのフィードバック・デバイス120に、仮想オブジェクト510aの一つ以上の特性に対応するフィードバックを提供させることができる。
【0106】
デバイス100の一つ以上のフィードバック・デバイス120は、デバイス100を介して、仮想オブジェクト510aの一つ以上の特性に対応するフィードバックを提供することが可能である。例えば、仮想オブジェクト510aの一つ以上の特性が、色、パターン、および/または他の視覚特性を含む場合、フィードバック・デバイス120は、同じ色、対応する視覚、聴覚、および/または触覚パターンのフィードバック、および/または他の対応するフィードバックを提供することができる。いくつかの実施態様において、フィードバック・デバイス120は、デバイス100の部分にある発行バンドを介してフィードバックを提供することが可能である。発光バンドには、仮想オブジェクト510aにコーディネートされた、色、パターン、および/または他の視覚特性を含めることができる。
【0107】
オペレーション724で、ユーザとAR環境500との間の相互作用を検出することが可能である。例えば、相互作用は、撮像デバイス220、通信ポート230、および/または他のデバイスを介しARデバイス200から受信された入力に基づいて検出することができる。相互作用は、AR環境500中でのユーザの認識、AR環境500中でのユーザの移動、ユーザとAR環境500の物理空間520中の物理オブジェクト520aとの相互作用、ユーザとAR環境500の仮想空間510中の仮想オブジェクト510aとの相互作用、AR環境500の物理空間520中の物理オブジェクト520aのある物理的近接域内でのユーザの検出、AR環境500の仮想空間510中の仮想オブジェクト510aのある近接域内でのユーザの検出、および/またはユーザとAR環境500との間の別の相互作用、に基づいて検出することが可能である。いくつかの実施態様において、ARデバイス200(例えば、オブジェクト認識モジュール211、イベント処理モジュール213、制御信号生成モジュール214、および/またはARデバイス200の他のモジュールまたはデバイスを含む)は、デバイス100および/またはARデバイス200に関連する情報を有するユーザ間の相互作用だけを検出することができる。いくつかの実施態様において、ARデバイス200(例えば、オブジェクト認識モジュール211、イベント処理モジュール213、制御信号生成モジュール214、および/またはARデバイス200の他のモジュールまたはデバイスを含む)は、任意のユーザとAR環境500との間の相互作用を検出することが可能である。
【0108】
オペレーション726で、デバイス100は、ARデバイス200から、ユーザとAR環境500との間の相互作用を示す制御信号を受信することができる。ARデバイス200(例えば、オブジェクト認識モジュール211、イベント処理モジュール213、制御信号生成モジュール214、および/またはARデバイス200の他のモジュールまたはデバイスを含む)が、ユーザとAR環境500との間の相互作用を検出したとき、ARデバイス200(例えば、イベント処理モジュール213、制御信号生成モジュール214、および/またはARデバイス200の他のモジュールまたはデバイスを含む)は、その相互作用の検出に基づいて、デバイス100への送信のための制御信号を生成することが可能である。
【0109】
プロセッサ110のフィードバック制御モジュール111は、ARデバイス200によって生成された制御信号を受信することができる。該制御信号は、ユーザとAR環境500との間の相互作用の検出に基づくものとすることが可能である。
【0110】
オペレーション728で、デバイス100を介して、該相互作用を示すフィードバックを提供することができる。フィードバック制御モジュール111は、フィードバック・デバイス120に、デバイス100を介してフィードバック提供させることが可能である。いくつかの実施態様において、フィードバック制御モジュール111は、フィードバック・デバイス120に制御信号を与えるよう構成することができる。これらの実施形態において、制御信号をフィードバック・デバイス120に直接印加してフィードバックを行わせることができる。いくつかの実施形態において、フィードバック制御モジュール111は、受信された制御信号に基づいてフィードバック信号を決めるよう構成することが可能である。フィードバック制御モジュール111は、フィードバック応答の指定フィードバック信号を生成し、そのフィードバック信号を、それら信号が対応するそれぞれのフィードバック・デバイス120に送信するよう構成することができる。
【0111】
フィードバックはデバイス100を介して提供することができる。例えば、デバイス100の一つ以上のフィードバック・デバイス120は、デバイス100を介してフィードバックを提供することが可能である。いくつかの実施態様において、提供するフィードバックは、フィードバック制御モジュール111から受信した一つ以上のフィードバック信号に基づくものとすることができる。このフィードバックは、デバイス100とAR環境500との間で検出された相互作用に対応させることが可能である。例えば、フィードバックは、デバイス100とAR環境500との間の相互作用を表すことができる。本開示のシステム(群)および/または方法(群)は、現在、最も実用的で好ましいと考えられる実施態様に基づいて、例示のために詳細に説明してきたが、当然ながら、かかる詳細は例示目的のためだけのものであって、本開示は、開示された実施態様に限定されるものでなく、それどころか、添付の請求項の精神および範囲内にある変更および等価なアレンジメントを網羅するよう意図されている。例えば、当然ながら、本開示は、可能な程度において任意の実施態様の一つ以上の特徴と任意の他の実施態様の一つ以上の特徴との組み合わせが可能なことを想定している。