(57)【特許請求の範囲】
【請求項１】
コンピュータ実装方法であって、
受信ユーザの拡張現実(AR)クライアント端末によって、前記受信ユーザのロケーションに関連付けられているライブマップを表示するステップであって、前記ライブマップは配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含み、前記配信ユーザは前記仮想オブジェクトを前記ターゲットロケーションに結びつけ、前記仮想オブジェクトが、電子レッドエンベロープであり、前記仮想オブジェクトを前記ターゲットロケーションに結びつけることが、
前記配信ユーザのARクライアント端末によって、前記配信ユーザが前記仮想オブジェクトを前記ターゲットロケーションに結びつけるための仮想オブジェクト結びつけページを表示することと、
前記配信ユーザの前記ARクライアント端末によって、前記ターゲットロケーションの環境の第2のイメージをスキャンすることと、
前記第2のイメージから結びつけられたターゲットを決定することと、
前記決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てることと、
前記配信ユーザの入力に基づき前記仮想オブジェクトの配信情報を受信することと、
サーバ端末に、前記仮想オブジェクトの前記配信情報、前記事前設定の結びつけられたターゲットの情報、および前記ターゲットロケーションの情報をアップロードすることであって、前記配信情報が、事前定義されたターゲット母集団を含む、アップロードすることとを含む、表示するステップと、
前記受信ユーザの前記ARクライアント端末によって、前記ターゲットロケーションの環境のイメージをスキャンするステップであって、前記イメージを正常にスキャンするための持続時間が閾値時間を超える場合、手がかりを受信ユーザに提示するステップを含む、スキャンするステップと、
前記スキャンされたイメージが事前設定の結びつけられたターゲットを含み、前記受信ユーザが前記事前定義されたターゲット母集団とマッチするとの決定に応答して、前記仮想オブジェクトの情報をサーバ端末から受信するステップであって、前記事前設定の結びつけられたターゲットは前記仮想オブジェクトおよび前記ターゲットロケーションに関連付けられる、受信するステップと
を含む、コンピュータ実装方法。
【請求項２】
前記受信ユーザの前記ロケーションと前記ターゲットロケーションとの間の距離を決定するステップと、
前記距離が閾値未満であるとの決定に応答して、前記ライブマップ内の前記ターゲットロケーションにあるロケーションキューマークを強調表示するステップとをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項３】
前記ターゲットロケーションの前記環境の前記イメージをスキャンするステップは、
前記受信ユーザの前記ロケーションと前記ターゲットロケーションとの間の距離を決定するステップと、
前記距離が閾値未満であるとの決定に応答して、
前記ターゲットロケーションに対応する仮想オブジェクト検索ページを表示するステップと、
前記ターゲットロケーションの前記環境の前記イメージを前記受信ユーザがスキャンするためのイメージスキャンプロンプトを前記仮想オブジェクト検索ページ内に表示するステップとを含む、請求項1に記載のコンピュータ実装方法。
【請求項４】
前記仮想オブジェクト検索ページ内に、イメージスキャン手がかりを表示するためのオプションを表示するステップと、
前記受信ユーザによる前記オプションの選択に応答して、前記仮想オブジェクト検索ページ内に手がかりイメージを表示するステップであって、前記手がかりイメージは前記配信ユーザによってスキャンされた前記第2のイメージの情報を含む、ステップとをさらに含む、請求項3に記載のコンピュータ実装方法。
【請求項５】
前記サーバ端末に、前記受信ユーザの前記ロケーションを含むライブマップ取得要求を送信するステップと、
前記サーバ端末から前記ライブマップの情報を受信するステップとをさらに含む、請求項1に記載のコンピュータ実装方法。
【請求項６】
コンピュータシステムによって実行可能である1つまたは複数の命令を記憶するコンピュータ可読記録媒体であって、前記コンピュータシステムは、
受信ユーザの拡張現実(AR)クライアント端末によって、前記受信ユーザのロケーションに関連付けられているライブマップを表示するステップであって、前記ライブマップは配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含み、前記配信ユーザは前記仮想オブジェクトを前記ターゲットロケーションに結びつけ、前記仮想オブジェクトが、電子レッドエンベロープであり、前記仮想オブジェクトを前記ターゲットロケーションに結びつけることが、
前記配信ユーザのARクライアント端末によって、前記配信ユーザが前記仮想オブジェクトを前記ターゲットロケーションに結びつけるための仮想オブジェクト結びつけページを表示することと、
前記配信ユーザの前記ARクライアント端末によって、前記ターゲットロケーションの環境の第2のイメージをスキャンすることと、
前記第2のイメージから結びつけられたターゲットを決定することと、
前記決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てることと、
前記配信ユーザの入力に基づき前記仮想オブジェクトの配信情報を受信することと、
サーバ端末に、前記仮想オブジェクトの前記配信情報、前記事前設定の結びつけられたターゲットの情報、および前記ターゲットロケーションの情報をアップロードすることであって、前記配信情報が、事前定義されたターゲット母集団を含む、アップロードすることとを含む、表示するステップと、
前記受信ユーザの前記ARクライアント端末によって、前記ターゲットロケーションの環境のイメージをスキャンするステップであって、前記イメージを正常にスキャンするための持続時間が閾値時間を超える場合、手がかりを受信ユーザに提示するステップを含む、スキャンするステップと、
前記スキャンされたイメージが事前設定の結びつけられたターゲットを含み、前記受信ユーザが前記事前定義されたターゲット母集団とマッチするとの決定に応答して、前記仮想オブジェクトの情報をサーバ端末から受信するステップであって、前記事前設定の結びつけられたターゲットは前記仮想オブジェクトおよび前記ターゲットロケーションに関連付けられる、受信するステップとを含む動作を実行する、コンピュータ可読記録媒体。
【請求項７】
前記動作は、
前記受信ユーザの前記ロケーションと前記ターゲットロケーションとの間の距離を決定するステップと、
前記距離が閾値未満であるとの決定に応答して、前記ライブマップ内の前記ターゲットロケーションにあるロケーションキューマークを強調表示するステップとをさらに含む、請求項6に記載のコンピュータ可読記録媒体。
【請求項８】
前記ターゲットロケーションの前記環境の前記イメージをスキャンするステップは、
前記受信ユーザの前記ロケーションと前記ターゲットロケーションとの間の距離を決定するステップと、
前記距離が閾値未満であるとの決定に応答して、
前記ターゲットロケーションに対応する仮想オブジェクト検索ページを表示するステップと、
前記ターゲットロケーションの前記環境の前記イメージを前記受信ユーザがスキャンするためのイメージスキャンプロンプトを前記仮想オブジェクト検索ページ内に表示するステップとを含む、請求項6に記載のコンピュータ可読記録媒体。
【請求項９】
前記動作は、
前記仮想オブジェクト検索ページ内に、イメージスキャン手がかりを表示するためのオプションを表示するステップと、
前記受信ユーザによる前記オプションの選択に応答して、前記仮想オブジェクト検索ページ内に手がかりイメージを表示するステップであって、前記手がかりイメージは前記配信ユーザによってスキャンされた前記第2のイメージの情報を含む、ステップとをさらに含む、請求項8に記載のコンピュータ可読記録媒体。
【請求項１０】
前記動作は、
前記サーバ端末に、前記受信ユーザの前記ロケーションを含むライブマップ取得要求を送信するステップと、
前記サーバ端末から前記ライブマップの情報を受信するステップとをさらに含む、請求項6に記載のコンピュータ可読記録媒体。
【請求項１１】
コンピュータ実装システムであって、
1つまたは複数のコンピュータと、
前記1つまたは複数のコンピュータと相互動作可能に結合され、前記1つまたは複数のコンピュータによって実行されたときに、1つまたは複数の動作を実行する1つまたは複数の命令を記憶している有形の非一時的機械可読媒体を有する、1つまたは複数のコンピュータメモリデバイスとを備え、前記動作は、
受信ユーザの拡張現実(AR)クライアント端末によって、前記受信ユーザのロケーションに関連付けられているライブマップを表示するステップであって、前記ライブマップは配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含み、前記配信ユーザは前記仮想オブジェクトを前記ターゲットロケーションに結びつけ、前記仮想オブジェクトが、電子レッドエンベロープであり、前記仮想オブジェクトを前記ターゲットロケーションに結びつけることが、
前記配信ユーザのARクライアント端末によって、前記配信ユーザが前記仮想オブジェクトを前記ターゲットロケーションに結びつけるための仮想オブジェクト結びつけページを表示することと、
前記配信ユーザの前記ARクライアント端末によって、前記ターゲットロケーションの環境の第2のイメージをスキャンすることと、
前記第2のイメージから結びつけられたターゲットを決定することと、
前記決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てることと、
前記配信ユーザの入力に基づき前記仮想オブジェクトの配信情報を受信することと、
サーバ端末に、前記仮想オブジェクトの前記配信情報、前記事前設定の結びつけられたターゲットの情報、および前記ターゲットロケーションの情報をアップロードすることであって、前記配信情報が、事前定義されたターゲット母集団を含む、アップロードすることとを含む、表示するステップと、
前記受信ユーザの前記ARクライアント端末によって、前記ターゲットロケーションの環境のイメージをスキャンするステップであって、前記イメージを正常にスキャンするための持続時間が閾値時間を超える場合、手がかりを受信ユーザに提示するステップを含む、スキャンするステップと、
前記スキャンされたイメージが事前設定の結びつけられたターゲットを含み、前記受信ユーザが前記事前定義されたターゲット母集団とマッチするとの決定に応答して、前記仮想オブジェクトの情報をサーバ端末から受信するステップであって、前記事前設定の結びつけられたターゲットは前記仮想オブジェクトおよび前記ターゲットロケーションに関連付けられる、受信するステップとを含む、コンピュータ実装システム。
【請求項１２】
前記1つまたは複数の動作は、
前記受信ユーザの前記ロケーションと前記ターゲットロケーションとの間の距離を決定するステップと、
前記距離が閾値未満であるとの決定に応答して、前記ライブマップ内の前記ターゲットロケーションにあるロケーションキューマークを強調表示するステップとをさらに含む、請求項11に記載のコンピュータ実装システム。
【請求項１３】
前記ターゲットロケーションの前記環境の前記イメージをスキャンするステップは、
前記受信ユーザの前記ロケーションと前記ターゲットロケーションとの間の距離を決定するステップと、
前記距離が閾値未満であるとの決定に応答して、
前記ターゲットロケーションに対応する仮想オブジェクト検索ページを表示するステップと、
前記ターゲットロケーションの前記環境の前記イメージを前記受信ユーザがスキャンするためのイメージスキャンプロンプトを前記仮想オブジェクト検索ページ内に表示するステップとを含む、請求項12に記載のコンピュータ実装システム。
【請求項１４】
前記1つまたは複数の動作は、
仮想オブジェクト検索ページ内に、イメージスキャン手がかりを表示するためのオプションを表示するステップと、
前記受信ユーザによる前記オプションの選択に応答して、前記仮想オブジェクト検索ページ内に手がかりイメージを表示するステップであって、前記手がかりイメージは前記配信ユーザによってスキャンされた前記第2のイメージの情報を含む、ステップとをさらに含む、請求項12に記載のコンピュータ実装システム。
【請求項１５】
前記1つまたは複数の動作は、
前記サーバ端末に、前記受信ユーザの前記ロケーションを含むライブマップ取得要求を送信するステップと、
前記サーバ端末から前記ライブマップの情報を受信するステップとをさらに含む、請求項13に記載のコンピュータ実装システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、参照によりその全体が組み込まれている、2016年12月13日に出願した中国特許出願第201611146666.3号および2017年12月12日に出願した米国出願第15/839,512号の優先権を主張するものである。
【背景技術】
【０００２】
拡張現実(AR)テクノロジーは、補足的情報(画像、映像、3次元(3D)モデル、および他の感覚強化など)を現実世界の環境に重ね合わせることによって現実世界の環境のイメージ(すなわち、現実)を拡張する。ARテクノロジーは、仮想オブジェクトを現実世界のイメージ上にオーバーレイして、ユーザによる現実の知覚を強化し、ユーザに没入感のあるインタラクティブ体験を提供する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本開示は、拡張現実(AR)に基づき仮想オブジェクトを割り振ることについて説明する。
【課題を解決するための手段】
【０００４】
一実装形態において、受信ユーザのARクライアント端末が受信ユーザのロケーションに関連付けられているライブマップを表示する。ライブマップは、配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含む。受信ユーザのARクライアント端末は、ターゲットロケーションの環境のイメージをスキャンする。スキャンされたイメージが、結びつけられたターゲット(Bound Target)を含むと決定することに応答して、受信ユーザのARクライアント端末は、仮想オブジェクトの情報をサーバ端末から受信する。事前設定の結びつけられたターゲットは、仮想オブジェクトおよびターゲットロケーションに関連付けられている。
【０００５】
前に説明されている実装形態を含む、説明されている主題の実装形態は、コンピュータ実装方法と、コンピュータ実装方法を実行するためのコンピュータ可読命令を記憶する非一時的コンピュータ可読媒体と、1つまたは複数のコンピュータと相互動作可能に結合されている1つまたは複数のコンピュータメモリデバイスを備え、1つまたは複数のコンピュータによって実行されたときに、非一時的コンピュータ可読媒体に記憶されているコンピュータ実装方法/コンピュータ可読命令を実行する命令を記憶している有形の非一時的機械可読媒体を有するコンピュータ実装システムとを使用して実装され得る。
【０００６】
本明細書において説明されている主題は、特定の実装形態で実装され、それにより、次の利点のうちの1つまたは複数を実現することができる。第1に、説明されているアプローチは、仮想オブジェクトを配信し、受信するユーザ体験を強化する。第2に、説明されているアプローチは、ARテクノロジーを使用してユーザのインタラクティブ性および楽しみを改善する。
【０００７】
本明細書の主題の1つまたは複数の実装形態の詳細は、「発明の概要」、「特許請求の範囲」、および添付図面において述べられる。主題の他の特徴、態様、および利点は、「発明の概要」、「特許請求の範囲」、および添付図面から当業者に明らかになるであろう。
【図面の簡単な説明】
【０００８】
【図１】本開示の一実装形態による、拡張現実(AR)テクノロジーに基づく仮想オブジェクトを配信し、受信するためのコンピュータ実装方法の一例を示すフローチャートである。
【図２】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトの配信および受信をアクティブ化するためのユーザインターフェースの第1の例を示す概略図である。
【図３】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトの配信および受信をアクティブ化するためのユーザインターフェースの第2の例を示す概略図である。
【図４】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信ユーザが配信するためのユーザインターフェースの第1の例を示す概略図である。
【図５】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信ユーザが配信するためのユーザインターフェースの第2の例を示す概略図である。
【図６】本開示の一実装形態による、構成インターフェースの一例を示す概略図である。
【図７】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信ユーザが配信するためのユーザインターフェースの第3の例を示す概略図である。
【図８】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを受信ユーザが見つけ、受信するためのユーザインターフェースの第1の例を示す概略図である。
【図９】本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを受信ユーザが見つけ、受信するためのユーザインターフェースの第2の例を示す概略図である。
【図１０】本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのARクライアント端末におけるシステムの一例を示すブロック図である。
【図１１】本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのARクライアント端末におけるハードウェアアーキテクチャの一例を示すブロック図である。
【図１２】本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのサーバ端末におけるシステムの一例を示すブロック図である。
【図１３】本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのサーバ端末におけるハードウェアアーキテクチャの一例を示すブロック図である。
【図１４】本開示の一実装形態による、説明されているアルゴリズム、方法、機能、プロセス、フロー、およびプロシージャに関連付けられている計算機能を提供するために使用されるコンピュータ実装システムの一例を示すブロック図である。
【発明を実施するための形態】
【０００９】
様々な図面中の同様の参照番号および名称は同様の要素を示す。
【００１０】
次の詳細な説明は、拡張現実(AR)に基づき仮想オブジェクトを割り振ることについて説明し、当業者であれば1つまたは複数の特定の実装形態の文脈において開示されている主題を形成し、使用することができるように提示される。開示されている実装形態の様々な修正、改変、および置換が行われてよく、当業者にとってはただちに明白であろうし、また定義されている一般原理は、本開示の範囲から逸脱することなく、他の実装形態および応用に適用され得る。いくつかの場合において、説明されている主題の理解を得るために不要である、また当業者の技能の範囲内にある1つまたは複数の技術的詳細は、1つまたは複数の説明されている実装形態をわかりにくくしないために省かれてよい。本開示は、説明または例示されている実装形態に限定されることを意図されておらず、説明されている原理および特徴と一致する最も広い範囲を適用されることを意図されている。
【００１１】
ARテクノロジーは、補足的情報(画像、映像、3次元(3D)モデル、および他の感覚強化など)を現実世界の環境に重ね合わせることによって現実世界の環境のイメージ(すなわち、現実)を拡張する。ARテクノロジーは、仮想オブジェクトを現実世界のイメージ上にオーバーレイして、ユーザによる現実の知覚を強化し、ユーザに没入感のあるインタラクティブ体験を提供する。
【００１２】
高い水準では、説明されているアプローチは、ARテクノロジーを使用して仮想オブジェクトを配信し、受信するユーザ体験を改善する。仮想オブジェクトは、電子証明書、電子バウチャー、電子クーポン、電子グリーティングカードもしくは電子マネーギフトを入れた仮想「レッドエンベロープ(Red Envelope)」、または任意の電子情報などの、オンラインで割り振るか、または配信できる任意のタイプの仮想オブジェクトであってよい。仮想オブジェクト配信ユーザ(配信ユーザとも呼ばれる)は、1つまたは複数の仮想オブジェクトを特定のロケーションに結びつける(bind)(または隠す(hide))ことができ、仮想オブジェクト受信ユーザ(受信ユーザとも呼ばれる)は、受信ユーザがその特定のロケーションにあるときに仮想オブジェクトのうちの1つまたは複数を受信する(または見つける)ことができる。たとえば、配信ユーザおよび受信ユーザは各々、ARクライアント端末を有する。配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけたときに、配信ユーザは、自分のARクライアント端末を使用して、ターゲットロケーションの周囲環境のイメージをスキャンする。結びつけられたターゲット(たとえば、イメージオブジェクト)は、スキャンされたイメージから認識され得る。認識された結びつけられたターゲットは、仮想オブジェクトおよびターゲットロケーションに関連付けられている事前設定の結びつけられたターゲットとしてみなされる。仮想オブジェクトは、事前設定の結びつけられたターゲット、仮想オブジェクト、およびターゲットロケーションの情報がサーバ端末に記憶されるときにターゲットロケーションに結びつけられる(またはそこに隠される)。
【００１３】
受信ユーザが仮想オブジェクトを見つけるのを助けるために、サーバ端末は、表示する受信ユーザのARクライアント端末に対してライブマップを送信する。ライブマップは、受信ユーザの現在ロケーションに対応し、仮想オブジェクトが予め他のユーザによって結びつけられているターゲットロケーションを示す。受信ユーザが仮想オブジェクトが結びつけられているターゲットロケーションに接近したときに、受信ユーザのARクライアント端末は、周囲環境のイメージをスキャンすることを受信ユーザに促すことができる。受信ユーザによってスキャンされたイメージが、仮想オブジェクトに関連付けられている事前設定の結びつけられたターゲットを含む場合、サーバ端末は、受信ユーザのARクライアント端末がARシーン(仮想オブジェクトとオーバーレイされた環境シーンである、ARクライアント端末によって表示されるシーン)内で受信された仮想オブジェクトを表示するように仮想オブジェクトの情報を受信ユーザに送信する。
【００１４】
ARクライアント端末は、ARテクノロジーに基づき開発されるか、またはARサービス機能と一体化されたソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの組合せとすることができる。たとえば、ARクライアント端末は、ARサービス機能と一体化されたALIPAY(商標)アプリとすることができる。いくつかの場合において、ARクライアント端末は、スマートフォンまたはタブレットタイプのコンピュータなどのユーザの携帯端末である。ARクライアント端末は、ARグラス、ヘッドセット、またはヘルメットなどの、ウェアラブルデバイスであってもよい。ARクライアント端末は、環境シーンのイメージスキャン(たとえば、ARクライアント端末のビュー内のイメージ)を実行し、スキャンされたイメージをサーバ端末にリアルタイムで伝送することができる。
【００１５】
サーバ端末は、サーバ、サーバクラスタ、またはサーバクラスタに基づくクラウドプラットフォームであってよい。サーバ端末は、サービスをARクライアント端末に提供することができる。たとえば、サーバ端末は、ARサービス機能を組み込んだALIPAY(登録商標)アプリに対してサービスを提供する決済プラットフォームであってよい。サーバ端末(またはサーバ端末内のバックエンドARエンジン)は、ARクライアント端末によってスキャンされたイメージに対してイメージ認識を実行し、イメージ内のコンテンツまたはイメージオブジェクトを認識することができる。サーバ端末は、仮想オブジェクトに関係する仮想データを管理することもできる。仮想データは、ARクライアント端末によってスキャンされた環境シーンイメージ上にオーバーレイされるべき仮想オブジェクトの情報を含むことができる。イメージ認識の結果に基づき、サーバ端末は、関係する仮想データをARクライアント端末に送信することができる。受信された仮想データに基づき、ARクライアント端末(またはARクライアント端末内のフロントエンドARエンジン)は、仮想オブジェクトを表示し、仮想オブジェクトをARクライアント端末によってスキャンされた環境シーンイメージ上に重ね合わせることができる。たとえば、受信ユーザのARクライアント端末によってスキャンされたイメージが仮想オブジェクトに関連付けられている事前設定の結びつけられたターゲットを含む場合、サーバ端末は仮想オブジェクトの情報を受信ユーザに送信し、受信ユーザのARクライアント端末はARシーン内に仮想オブジェクトを表示する。
【００１６】
いくつかの実装形態において、ARクライアント端末は、サーバ端末の代わりにイメージ認識を実行することができる。たとえば、ARクライアント端末は、スキャンされたイメージに対してイメージ認識を実行し、スキャンされたイメージ内のイメージオブジェクトまたはコンテンツを識別することができる。ARクライアント端末は、識別されたイメージオブジェクトの情報をサーバ端末に送信することができ、それにより、サーバ端末は識別されたイメージオブジェクトに関係する仮想データをARクライアント端末に送信することができる。
【００１７】
結びつけられたターゲットは、イメージ認識アルゴリズムによってスキャンされたイメージ内で認識されたイメージオブジェクトまたはコンテンツであってよい。たとえば、結びつけられたターゲットは、クイックレスポンス(QR)コードイメージ、ロゴイメージ、または顕著な特徴を有するイメージ領域(ストア名、通りの名前、または住所を含むイメージ領域など)であってよい。
【００１８】
図1は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信し、受信するためのコンピュータ実装方法100の一例を示すフローチャートである。わかりやすく提示するために、この後の説明は、一般的に、この説明の中の他の図の文脈において方法100を説明する。しかしながら、方法100は、たとえば、任意のシステム、環境、ソフトウェア、およびハードウェア、またはシステム、環境、ソフトウェア、およびハードウェアの組合せによって、適宜、実行されるものとしてよいことが理解されるであろう。いくつかの実装形態において、方法100の様々なステップは、並列に、組み合わせて、ループで、または任意の順序で実行することができる。次の説明では、レッドエンベロープを配信し、受信することを説明しているが、方法100は、他の任意の仮想オブジェクトに適用可能であることは理解される。図1の様々なステップは、図2〜図9にさらに例示されている。たとえば、図2〜図3は、ARテクノロジーに基づき仮想オブジェクトの配信および受信をアクティブ化するためのユーザインターフェースを例示している。図4〜図7、および図1のステップ102から110では、配信ユーザが仮想オブジェクトをロケーションにどのように結びつけるかを説明しており、図8〜図9、および図1のステップ112から116では、受信ユーザが仮想オブジェクトをどのように受信するかを説明している。
【００１９】
図2は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトの配信および受信をアクティブ化するためのユーザインターフェース200の第1の例を示す概略図である。ユーザインターフェース200は、ユーザのARクライアント端末202によって表示される。「lucky red envelope」オプション204および「ordinary red envelope」オプション206などの従来の機能オプションに加えて、インターフェース200は、「AR red envelope」オプション208も提供する。ユーザは、オプション208上で、またはオプション208の近くで、クリックするか、タップするか、または他のジェスチャーを実行することによってレッドエンベロープのARベースの配信をトリガーすることができる。「AR red envelope」オプション208が選択された後、ARクライアント端末は、図3に示されているような「AR red envelope homepage」に入るものとしてよい。
【００２０】
図3は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトの配信および受信をアクティブ化するためのユーザインターフェース300の第2の例を示す概略図である。ユーザインターフェース300は、ユーザのARクライアント端末302によって表示される。ユーザインターフェース300は2つのオプション、「hide red envelope」オプション304および「find red envelope」オプション306を有する。「find red envelope」オプション306を選択した後、ARクライアント端末302は、ユーザがレッドエンベロープを見つけて受信するのを助けるライブマップを表示することができる。「hide red envelope」オプション304を選択した後、ARクライアント端末302は、ユーザがレッドエンベロープをユーザの現在ロケーションに隠すか、または結びつけるための仮想オブジェクト結びつけページ(たとえば、図4)を表示することができる。
【００２１】
図1を参照すると、102において、配信ユーザのARクライアント端末が、仮想オブジェクトを配信ユーザの現在ロケーションに結びつけるための仮想オブジェクト結びつけページ(または仮想オブジェクト結びつけインターフェース)を表示する。たとえば、図4の結びつけページは、配信ユーザが図3の「hide red envelope」オプション304を選択した後に表示される。いくつかの実装形態において、結びつけページは、配信ユーザが周囲環境のイメージをスキャンするためのリアルタイムイメージスキャンインターフェースであってよい(すなわち、結びつけページの背景画像は配信ユーザの現在ロケーションの現実世界のシーン画像である)。方法100は102から104に進む。
【００２２】
104において、配信ユーザのARクライアント端末は、現在ロケーションの周囲環境のイメージをスキャンする。方法100は104から106に進む。
【００２３】
106において、配信ユーザのARクライアント端末は、スキャンされたイメージから結びつけられたターゲットを決定し、決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てる。方法100は106から108に進む。
【００２４】
108において、配信ユーザのARクライアント端末は、配信ユーザの入力に基づき仮想オブジェクトの配信情報を受信する。図6で説明されるように、配信情報は、配信されるべき仮想オブジェクトの数または仮想オブジェクトを受信するためのターゲット母集団などの、情報を含むことができる。方法100は108から110に進む。
【００２５】
110において、配信ユーザのARクライアント端末は、仮想オブジェクトの配信情報、事前設定の結びつけられたターゲットの情報、および配信ユーザのロケーションをサーバ端末にアップロードする。サーバ端末は、仮想オブジェクト、事前設定の結びつけられたターゲット、および対応するロケーションの間の結合関係を確立する。方法100は110から112に進む。
【００２６】
112において、受信ユーザのARクライアント端末が受信ユーザの現在ロケーションに関連付けられているライブマップ(たとえば、図8)を表示する。ライブマップは、配信ユーザが仮想オブジェクトを結びつけたターゲットロケーションを含む。方法100は112から114に進む。
【００２７】
114において、受信ユーザがライブマップ内のターゲットロケーション上でジェスチャーを実行した後、受信ユーザは仮想オブジェクト検索ページ(たとえば、図9)に入る。仮想オブジェクト検索ページは、イメージスキャンプロンプトを提供し、受信ユーザのARクライアント端末は、周囲環境のイメージをスキャンする。方法100は114から116に進む。
【００２８】
116において、受信ユーザによってスキャンされたイメージが事前設定の結びつけられたターゲット(配信ユーザによってスキャンされたイメージからのものである)を含むと決定することに応答して、受信ユーザのARクライアント端末は、サーバ端末から仮想オブジェクトの情報を受信する。116から方法100は停止する。
【００２９】
図4は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信ユーザが配信するためのユーザインターフェース400の第1の例を示す概略図である。ユーザインターフェース400は、配信ユーザのARクライアント端末402によって表示される仮想オブジェクト結びつけページ416を含む。配信ユーザが図3のオプション304を選択することによって結びつけページ416に入った後、配信ユーザのARクライアント端末402は、配信ユーザの現在ロケーションを決定し、決定されたロケーションを結びつけページ416に提示することができる。いくつかの実装形態において、ARクライアント端末402によって決定されたロケーションは、正確でない場合があるか、または何らかのエラーが生じている場合がある。結びつけページ416は、配信ユーザがそのロケーションを訂正するか、または精緻化することを可能にするようにできる。配信ユーザのロケーションを決定した後に、ARクライアント端末402は、結びつけページ416上に配信ユーザのロケーションを表示する。たとえば、配信ユーザの現在ロケーションは、「Huanglong Times Plaza」であり、テキストボックス404に表示される。いくつかの実装形態において、テキストボックス404上で、またはその近くでタップするか、クリックするか、または他のジェスチャーを実行した後にドロップダウンリスト406がさらに表示されるものとしてよい。
【００３０】
ドロップダウンリスト406は、住所入力フィールド408、さらには配信ユーザの現在ロケーションの近く、または関係する住所を含むものとしてよい。たとえば、住所項目410は、「Huanglong Times Plaza - Tower B」を示し、これはHuanglong Times Plaza内のビルである。そうすることによって、配信ユーザがテキストボックス404に用意されたロケーション情報に満足しない場合、配信ユーザは、テキストボックス404上でジェスチャー(たとえば、タップまたはクリック)を実行し、現在ロケーションに関係する住所を住所入力フィールド408に入力するか、またはドロップダウンリスト406から住所を選択して、レッドエンベロープを「隠す」ことができる。たとえば、図4に示されているように、ARクライアント端末402は、配信ユーザの現在ロケーションが「Huanglong Times Plaza」であると決定する。配信ユーザの正確なロケーションが、Tower B of Huanglong Times Plazaである場合、配信ユーザは、手動で、正確なロケーション「Tower B of Huanglong Times Plaza」を住所入力フィールド408に入力するか、または住所ドロップダウンリスト406から住所項目410「Huanglong Times Plaza - Tower B」を選択することができる。
【００３１】
レッドエンベロープを「隠す」ためのロケーションを決定した後に、ARクライアント端末402は、結びつけページ416内にイメージスキャンプロンプト412をさらに出力することができる。たとえば、イメージスキャンプロンプト412は、現在ロケーションの周囲環境のイメージスキャンを実行することを配信ユーザに促すための動的スキャンボックス(たとえば、動的に回転するリング形状のスキャンボックス)を含むことができる。いくつかの場合において、プロンプトテキスト414(たとえば、プロンプトテキスト「align with the location of the red envelope to be hidden」)が、イメージスキャンプロンプト412の下に表示される。
【００３２】
プロンプトテキスト414のコンテンツは、イメージスキャンの実行中に更新され得る。たとえば、周囲環境のイメージスキャンにおいて、イメージ認識アルゴリズムがスキャンされたイメージ内のイメージオブジェクトまたはイメージコンテンツを正常に認識しないか、またはスキャンされたイメージの品質(たとえば、解像度)が十分に高くない場合、プロンプトテキスト414は、「please keep the camera stable」、またはユーザがイメージスキャンを実行するのを案内するための他のテキストプロンプトに更新され得る。いくつかの場合において、ARクライアント端末402が結びつけページ416内にイメージスキャンプロンプト412を出力した後、ARクライアント端末402は、ARクライアント端末内のカメラを起動して、配信ユーザの周囲環境上でリアルタイムイメージスキャンを実行し、イメージ認識アルゴリズムを呼び出してスキャンされたイメージ上でイメージ認識を実行することができる。スキャンされたイメージから1つまたは複数のイメージオブジェクトが認識され得る。認識されたイメージオブジェクトは、事前設定の結びつけられたターゲットとしてサーブされるものとしてよい。
【００３３】
イメージ認識は、ARクライアント端末402によって、またはサーバ端末によって実行されるものとしてよい。いくつかの実装形態において、ARクライアント端末402は、イメージ認識を実行し、イメージ認識結果(たとえば、認識されたイメージオブジェクトまたはコンテンツ)をサーバ端末にアップロードする。いくつかの実装形態において、ARクライアント端末402は、スキャンされたイメージまたはスキャンされたイメージの情報をサーバ端末にリアルタイムでアップロードする。サーバ端末は、イメージ認識を実行し、イメージ認識結果をARクライアント端末402に送信する。いくつかの実装形態において、イメージ認識は、イメージ認識サンプルと組み合わせてニューラルネットワークに基づき訓練されたディープラーニングモデルによって実行され得る。
【００３４】
いくつかの実装形態において、1つまたは複数のイメージオブジェクトがスキャンされたイメージ内で認識された後、ARクライアント端末402は、「confirm binding」ユーザオプションを結びつけページ416内に出力し得る。「confirm binding」ユーザオプションを選択することによって、配信ユーザは、構成ページに入り、レッドエンベロープを配信ユーザの現在ロケーションに結びつけることができる。
【００３５】
図5は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信ユーザが配信するためのユーザインターフェース500の第2の例を示す概略図である。ユーザインターフェース500は、配信ユーザのARクライアント端末502によって表示される仮想オブジェクト結びつけページ514を含む。結びつけページ416と同様に、配信ユーザのロケーションを決定した後に、ARクライアント端末502は、配信ユーザのロケーション「Huanglong Times Plaza」をテキストボックス504内に表示し、配信ユーザが現在ロケーションの周囲環境のイメージスキャンを実行するためのイメージスキャンプロンプト506が表示される。1つまたは複数のイメージオブジェクトがARクライアント端末502によってスキャンされたイメージから認識されたときに、イメージスキャンプロンプト506内の動的に回転するリング形状のスキャンボックスが回転を停止するものとしてよく、それと同時に、「hide here」機能ボタン508(「confirm binding」ユーザオプションと同等である)が結びつけページ514内に出力される。配信ユーザは、「hide here」機能ボタン508を選択して、構成インターフェースに入り、現在ロケーションでレッドエンベロープを「隠す」ことができる。
【００３６】
いくつかの実装形態において、配信ユーザが「confirm binding」ユーザオプションまたは「hide here」機能ボタン508を選択した後、配信ユーザのARクライアント端末は、サーバ端末にメッセージを要求する構成インターフェース(または構成ページ)を送信することができる。メッセージを受信した後、サーバ端末は、構成インターフェースの情報をARクライアント端末に送信することができる。ARクライアント端末は、配信ユーザがレッドエンベロープに対する配信情報を入力するための構成インターフェースを表示し、レッドエンベロープを現在ロケーションに隠す(すなわち、レッドエンベロープを現在ロケーションに結びつける)ことができる。
【００３７】
配信情報は、レッドエンベロープの数(たとえば、最初の10人のユーザがレッドエンベロープを受信する)、レッドエンベロープに対する金額(たとえば、各レッドエンベロープは特定の金銭的価値を有する)、レッドエンベロープを受信することに対するターゲット母集団(たとえば、レッドエンベロープは配信ユーザの友達のみに対するものである)、配信ユーザによって入力された予約情報またはテキスト、およびレッドエンベロープの配信に関係する他の情報を含むことができる。構成インターフェースは、配信情報を入力するためのフィールドを用意することができる。構成インターフェースは、また、配信ユーザが選ぶためのレッドエンベロープ配信に関係する定義済みのターゲット母集団を提示することができる。
【００３８】
図6は、本開示の一実装形態による、構成インターフェース600の一例を示す概略図である。構成インターフェース600は、配信ユーザのARクライアント端末602によって表示される。構成インターフェース600は、配信ユーザがレッドエンベロープに対する配信情報、たとえば、レッドエンベロープの数604、レッドエンベロープに対する総額606、予約情報またはテキスト608、およびレッドエンベロープを受信することに対するターゲット母集団610(たとえば、レッドエンベロープを受信することができる)を入力するための入力フィールドを含む。予約情報またはテキスト608は、受信ユーザがレッドエンベロープを見つけたときに受信ユーザに表示できるテキストを含むことができる。ターゲット母集団610は、事前定義されたターゲット母集団、たとえば、「anyone」、「male only」、「female only」、および「friend only」を含む。たとえば、構成インターフェース600において、配信ユーザは、現在ロケーション「Huanglong Times Plaza」で「隠される」べきレッドエンベロープの金額および数、受信ユーザに対する予約テキスト、およびレッドエンベロープを受信することに対するターゲット母集団を入力することができる。レッドエンベロープに対する配信情報を入力した後、ユーザは、「hide red envelope」機能ボタン612をクリックするか、タップするか、または他のジェスチャーを実行して、その構成を確認することができる。「hide red envelope」機能ボタン612を選択した後、ARクライアント端末602は、配信ユーザがレッドエンベロープに対する決済方法を選択し、決済を完了するための決済インターフェースを表示することができる。
【００３９】
いくつかの場合において、配信ユーザがレッドエンベロープに対する決済を完了した後、ARクライアント端末602は、レッドエンベロープの配信情報をサーバ端末にアップロードする。アップロードした配信情報を受信した後、サーバ端末は、受信された配信情報を記憶することができる。サーバ端末は、事前設定の結びつけられたターゲット(たとえば、配信ユーザの周囲環境のスキャンされたイメージから認識されたイメージオブジェクト)、配信ユーザによって「隠された」レッドエンベロープ(レッドエンベロープの配信情報)、および配信ユーザがレッドエンベロープを隠したロケーションの間の結合関係を確立する。
【００４０】
結合関係を確立した後、サーバ端末は、ARクライアント端末602に、レッドエンベロープが事前設定の結びつけられたターゲットおよび対応するロケーションで正常に結びつけられたことを示す通知メッセージを送信することができる。通知メッセージを受信した後、ARクライアント端末602は、レッドエンベロープが正常に結びつけられたことを示すテキストプロンプト、さらにはレッドエンベロープについて受信ユーザに通知するための共有オプションを含むユーザインターフェース(たとえば、図7)を表示することができる。
【００４１】
図7は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを配信ユーザが配信するためのユーザインターフェース700の第3の例を示す概略図である。ユーザインターフェース700は、配信ユーザのARクライアント端末702によって表示される仮想オブジェクト結びつけページ708を含む。たとえば、配信ユーザが、図6の構成インターフェース上でレッドエンベロープの配信情報(たとえば、「female only」であるべきレッドエンベロープを受信することに対するターゲット母集団を指定する)を入力した後、ARクライアント端末702は、「The red envelope is hidden; location: Huanglong Times Plaza; condition: for female」というテキストプロンプト704および「invite people to find it」という共有機能ボタン706を含む結びつけページ708を表示することができる。
【００４２】
配信ユーザが共有機能ボタン706を選択した後、ARクライアント端末702は、「share to friends」サブインターフェース(または共有ページ)を表示することができ、1つまたは複数の事前設定のアプリケーションがサブインターフェースに提示され得る。配信ユーザは、レッドエンベロープを受信するための事前設定のアプリケーションから連絡先を選択することができる。配信ユーザは、サブインターフェース内のアプリケーションを選択し、アプリケーションを起動し、配信ユーザがレッドエンベロープを受信させたい連絡先をアプリケーションで選択し、次いで、「隠されている」レッドエンベロープの情報(たとえば、レッドエンベロープのロケーション)、さらにはイメージスキャン手がかり(たとえば、事前設定の結びつけられたターゲット)を連絡先に送信することができる。イメージスキャン手がかりは、受信ユーザがレッドエンベロープが隠されている場所を見つけるのを助けるために使用される。いくつかの場合において、レッドエンベロープを受信するために配信ユーザが選択した連絡先の情報もサーバ端末に送信され、それによりサーバ端末は、ユーザが受信するように勧誘したレッドエンベロープについての知識を有する。
【００４３】
いくつかの場合において、ユーザは、レッドエンベロープを隠している配信ユーザおよび他のユーザからレッドエンベロープを受信する受信ユーザの両方であってよい。たとえば、図3において、ユーザは、「hide red envelope」オプション304を使用してレッドエンベロープを隠し、「find red envelope」オプション306を使用して別のユーザからのレッドエンベロープを見つけることができる。たとえば、ユーザが「find red envelope」オプション306を選択したときに、ユーザのARクライアント端末は、ユーザがレッドエンベロープを見つけるのを案内するためのライブマップを表示することができる。いくつかの場合において、ユーザのARクライアント端末は、ライブマップ取得要求をサーバ端末に送信することができ、取得要求は、ユーザの現在ロケーションを伝える。取得要求を受信した後、サーバ端末は、ユーザの現在ロケーションに対応するライブマップデータをユーザのARクライアント端末に送信することができる。
【００４４】
いくつかの場合において、サーバ端末は、受信ユーザが受信することができるレッドエンベロープのすべてのまたはサブセットのロケーション情報を有する。サーバ端末は、さらに、ライブマップデータ内で、受信ユーザがレッドエンベロープを受信することができるターゲットロケーションにマークし、マークを含むライブマップデータを受信ユーザのARクライアント端末に送信することができる。ライブマップデータを受信した後、ARクライアント端末は、ARシーン内で受信ユーザに対してライブマップをレンダリングすることができる。受信ユーザが「隠されている」レッドエンベロープのターゲットロケーションを見つけるのをより適切に案内するために、ライブマップは、また、受信ユーザの現在ロケーションを示すナビゲーションプロンプトを表示することができる。
【００４５】
いくつかの場合において、ARシーンは、ARクライアント端末によってユーザインターフェースにシミュレートされる仮想シーンであってよい。サーバ端末からライブマップデータを受信したときに、ARクライアント端末は、シミュレートされた仮想シーン内でライブマップを表示することができる。ナビゲーションプロンプト(矢印など)は仮想シーン内にレンダリングされ、それにより受信ユーザがレッドエンベロープが「隠されている」ターゲットロケーションに行くのを案内することができる。
【００４６】
図8は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを受信ユーザが見つけ、受信するためのユーザインターフェース800の第1の例を示す概略図である。いくつかの実装形態において、ユーザインターフェース800は、受信ユーザのARクライアント端末802によって表示される。図8に示されているように、ユーザインターフェース800は、「find red envelope」インターフェースであってよい。サーバ端末からライブマップデータを受信した後、ARクライアント端末802は、ライブ「red envelope map」804を「find red envelope」インターフェース800内に表示し、レッドエンベロープがレッドエンベロープマップ804内で他のユーザによって「隠されている」ターゲットロケーションにマークすることができる。ターゲットロケーションは、キューマーク、たとえば、レッドエンベロープのような形をした図形識別子808および810を使用してマークされ得る。ARクライアント端末802は、また、受信ユーザの現在ロケーションを示すインジケータ806(たとえば、方向指示矢印)を表示することができる。ARクライアント端末802は、受信ユーザが移動するとともにインジケータ806をリアルタイムで更新することができる。ライブマップ804は、「隠されている」レッドエンベロープを受信するために受信ユーザがターゲットロケーションに行くのを案内する。
【００４７】
いくつかの実装形態において、ARクライアント端末802は、「隠された」レッドエンベロープがあるターゲットロケーションを2つのクラス、「attainable」と「unattainable」とに分類することができる。たとえば、ARクライアント端末802は、ターゲットロケーションと受信ユーザの現在ロケーションとの間の距離をリアルタイムで計算することができる。ターゲットロケーションは、距離が閾値未満の場合に「attainable」(到達可能)に、距離が閾値を超える場合に「unattainable」(到達不能)に分類される。受信ユーザが付近でレッドエンベロープを見つけるのを助けるために、ARクライアント端末802は、ライブマップ804内の到達可能ターゲットロケーションおよび到達不能ターゲットロケーションに異なるキューマークを使用することができる。いくつかの実装形態において、到達可能ターゲットロケーションのロケーションキューマークは強調表示されるか、または拡大されるものとしてよい。たとえば、到達可能ターゲットロケーションには大きいキューマーク810が、到達不能ターゲットロケーションには小さいキューマーク808が使用される。いくつかの実装形態において、ライブマップ804内で、到達可能ターゲットロケーションのみがマークされ、到達不能ターゲットロケーションはマークされない。いくつかの実装形態において、ロケーションキューマークは、また、レッドエンベロープを「隠す」配信ユーザの情報を含む。たとえば、ロケーションキューマーク808または810は、また、レッドエンベロープを隠す配信ユーザのアバターまたはプロファイルイメージを含むことができる。いくつかの場合において、到達可能ターゲットロケーションに対するキューマーク(キューマーク810など)のみが配信ユーザのアバターまたはプロファイルイメージを含む。
【００４８】
ライブマップの案内の下で、受信ユーザがレッドエンベロープが「隠されている」ターゲットロケーションに接近したときに、受信ユーザは、対応するキューマーク上で、またはその近くでジェスチャーまたは操作を実行し、図9に示されているような仮想オブジェクト検索ページ(たとえば、レッドエンベロープ検索ページ)に入ることができる。いくつかの場合において、受信ユーザが特定のターゲットロケーションのキューマーク上でジェスチャーを実行した後、ARクライアント端末は、特定のターゲットロケーションと受信ユーザの現在ロケーションとの間の距離が閾値未満であるかどうかを決定することができる。この距離が閾値未満である場合、ARクライアント端末は、図9のレッドエンベロープ検索ページを表示することができる。いくつかの場合において、レッドエンベロープ検索ページを表示するためにユーザがターゲットロケーションに十分に近くない場合、ARクライアント端末は、ユーザがレッドエンベロープから遠すぎることを示すプロンプトメッセージをライブマップ内に表示することができる。たとえば、プロンプトメッセージは、「You are too far away from the red envelope. Please move closer to receive it.」というテキストプロンプトであってよい。プロンプトメッセージは、ターゲットロケーションまでの距離を示すこともできる。レッドエンベロープ検索ページを表示するための閾値および到達可能ターゲットロケーションとして分類するための閾値は、同じであっても異なっていてもよい。たとえば、受信ユーザの現在ロケーションから500メートル以内のターゲットロケーションは、到達可能と分類され、ARクライアント端末は、受信ユーザがターゲットロケーションから50メートル以内に入るまでレッドエンベロープ検索ページを表示しない。
【００４９】
図9は、本開示の一実装形態による、ARテクノロジーに基づく仮想オブジェクトを受信ユーザが見つけ、受信するためのユーザインターフェース900の第2の例を示す概略図である。ユーザインターフェース900は、受信ユーザのARクライアント端末902によって表示されるレッドエンベロープ検索ページ904を含むことができる。レッドエンベロープ検索ページ904は、レッドエンベロープを隠す配信ユーザのアバター906またはユーザ名を含むことができる。レッドエンベロープ検索ページ904は、予約テキスト908、たとえば、「Can't find the red envelope? Ask me.」を含むこともできる。いくつかの場合において、予約テキスト908は、配信ユーザがレッドエンベロープを隠したときに構成インターフェース600の入力フィールド608内に配信ユーザによって入力されたテキストと同じである。いくつかの実装形態において、レッドエンベロープ検索ページ904を表示することを開始したときに、ARクライアント端末902は、配信ユーザの情報(アバターまたはユーザ名)さらには配信ユーザによって入力された予約テキストについてサーバ端末に問い合わせることができる。
【００５０】
レッドエンベロープ検索ページ904は、イメージスキャンプロンプト908も含むことができる。受信ユーザは、スキャンプロンプト910を使用して、周囲環境をスキャンし、スキャンされたイメージの情報をサーバ端末に送信する。サーバ端末は、イメージ認識を実行し、スキャンされたイメージ内の1つまたは複数のイメージオブジェクトを識別することができる。いくつかの場合において、ARクライアント端末は、イメージ認識を実行してイメージオブジェクトを識別することができる。識別されたイメージオブジェクトのうちの1つ、すべて、またはサブセットがレッドエンベロープに関連付けられている事前設定の結びつけられたターゲットとマッチした場合、受信ユーザは、レッドエンベロープを受信することができる。たとえば、事前設定の結びつけられたターゲットが1つまたは複数のイメージオブジェクトを含む場合、識別されたイメージオブジェクトは、識別されたイメージオブジェクトのうちの1つが事前設定の結びつけられたターゲットの1つのイメージオブジェクトとマッチした場合に事前設定の結びつけられたターゲットとマッチすると考えられ得る。
【００５１】
受信ユーザによってスキャンされたイメージが事前設定の結びつけられたターゲットを含む確率を高めるために、イメージスキャン手がかりが受信ユーザに提供されてよい。イメージスキャン手がかりを提示するための機能ボタン912は、レッドエンベロープ検索ページ904に含まれ得る。機能ボタン912上の選択を検出した後、ARクライアント端末902は、イメージスキャン手がかりについてサーバ端末に問い合わせ、レッドエンベロープ検索ページ904内に受信されたイメージスキャン手がかりを表示することができる。いくつかの場合において、スキャンイメージ手がかりは、手がかりイメージ、たとえば、配信ユーザがレッドエンベロープを隠したときにターゲットロケーションにおいて配信ユーザによってスキャンされる周囲環境のイメージであってよい。いくつかの場合において、スキャンイメージ手がかりは、ターゲットロケーションに関連付けられている事前設定の結びつけられたターゲットであってよい。いくつかの実装形態において、配信ユーザは、周囲環境の画像を撮影し、その画像を手がかり画像としてサーブするようにサーバ端末にアップロードすることを明示的に求められ得る。
【００５２】
イメージスキャン手がかりを見た後、受信ユーザは、イメージスキャンプロンプト910を使用して、イメージスキャン手がかりとして類似のイメージコンテンツまたはオブジェクトを有する周囲環境のイメージをスキャンする(または画像を撮影する)ことができる。たとえば、イメージスキャン手がかりが特定のストアのロゴを含む場合、受信ユーザは、周囲環境内でそのロゴを見つけ、画像を撮影することができる。ARクライアント端末は、スキャンされたイメージ上でイメージ認識を開始することができる。前述のように、ARクライアント端末またはサーバ端末は、イメージ認識を実行して、スキャンされたイメージ内のイメージオブジェクトまたはイメージコンテンツを認識することができる。サーバ端末は、受信ユーザによってスキャンされたイメージからの認識されたイメージオブジェクトまたはコンテンツがターゲットロケーションに関連付けられている事前設定の結びつけられたターゲットとマッチするかどうかを決定することができる。yesであれば、サーバ端末は、受信ユーザが配信ユーザがレッドエンベロープを受信することについて指定したターゲット母集団とマッチするかどうかをさらに決定することができる。たとえば、サーバ端末は、各ユーザの情報を有することができる。配信ユーザが「friend only」のターゲット母集団を指定し、受信ユーザが配信ユーザが使用しているソーシャルアプリケーションにおける配信ユーザの連絡先でない場合、サーバ端末は、受信ユーザがターゲットロケーションをすでに見つけているとしてもレッドエンベロープを受信ユーザに配信することをしない。
【００５３】
受信ユーザがターゲット母集団とマッチし、配信ユーザによって指定されているレッドエンベロープの総数を超えていない場合、サーバ端末は、レッドエンベロープを受信ユーザに配信することができる。たとえば、サーバ端末は、レッドエンベロープ内の資金の額を受信ユーザのアカウントに移すことができる。いくつかの場合において、ターゲットユーザがレッドエンベロープを受信することについてターゲット母集団とマッチしていない場合、ARクライアント端末は、受信ユーザがレッドエンベロープを受信する資格がないことを示すプロンプトを表示することができる。
【００５４】
いくつかの場合において、最初にイメージスキャン手がかりを求めるために機能ボタン912を使用する代わりに、受信ユーザは、イメージスキャンプロンプト910を直接使用して、周囲環境をスキャンするものとしてよい。受信ユーザが周囲環境のイメージを正常にスキャンするための持続時間が閾値時間を超える場合、ARクライアント端末は、イメージスキャン手がかりについてサーバ端末に自動的に問い合わせ、手がかりを受信ユーザに表示することができる。いくつかの実装形態において、受信ユーザがイメージを正常にスキャンするための持続時間が閾値時間を超える場合、ARクライアント端末は、レッドエンベロープ検索ページ904内に「ask for clue」機能ボタン914(またはセッションエントリオプション)を出力することができる。たとえば、「ask for clue」機能ボタン914は、レッドエンベロープを隠した配信ユーザの表示されるアバターまたはユーザ名の近くに表示され得る。受信ユーザが機能ボタン914を選択したときに、ARクライアント端末は、イメージスキャン手がかりについてサーバ端末に問い合わせることができる。いくつかの場合において、受信ユーザが機能ボタン914を選択した後、ARクライアント端末は、受信ユーザがイメージスキャン手がかりを求めるメッセージ(プライベートメッセージまたはリアルタイムインスタント通信メッセージなど)を配信ユーザに送信することができるようにセッションページに入ることができる。いくつかの実装形態において、イメージ認識アルゴリズムがスキャンされたイメージ内の1つもしくは複数のイメージオブジェクトもしくはコンテンツを正常に認識することができるか、またはスキャンされたイメージの品質または解像度が閾値を超えている場合に、イメージは正常にスキャンされる。
【００５５】
いくつかの実装形態において、ユーザがレッドエンベロープ結びつけページに入り、レッドエンベロープを検索している間に新しいレッドエンベロープを隠すことができる。たとえば、図8のライブマップにおいて、ARクライアント端末は、図5の仮想オブジェクト結びつけページに入るための機能ボタン812を備えることができる。同様に、レッドエンベロープを「隠した」後、ユーザが他のユーザによって付近に隠されているレッドエンベロープを検索するためにライブマップに入ることができる。たとえば、図5の仮想オブジェクト結びつけページは、図8の「find red envelope」インターフェースに入るための機能ボタン510を備えることができる。
【００５６】
いくつかの実装形態において、ユーザが付近でレッドエンベロープを見つけるのを助けるために、ARクライアント端末は、ユーザの現在ロケーションから閾値距離の範囲内にあるレッドエンベロープの数を示すことができる。たとえば、図3において、到達可能なレッドエンベロープ(たとえば、5個の到達可能なレッドエンベロープ)の数を示す数インジケータ308が表示される。同様に、図5において、数インジケータ512は、到達可能なレッドエンベロープの数を示す。
【００５７】
図10は、本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのARクライアント端末におけるシステム1000の一例を示すブロック図である。システム1000は、出力モジュール1001と、スキャンモジュール1002と、認識モジュール1003とを備えることができる。システム1000は、ソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの組合せによって実装され得る。
【００５８】
出力モジュール1001は、ARシーン内に、サーバ端末によって返されるライブマップデータに従って受信ユーザのロケーションに対応するライブマップを出力するように構成され、ライブマップは、仮想オブジェクトが予め他のユーザによって結びつけられるターゲットロケーションを含む。スキャンモジュール1002は、仮想オブジェクトが結びつけられるターゲットロケーションで受信ユーザによって実行されるイメージスキャン操作に応答して、ターゲットロケーションの周囲環境上でリアルタイムイメージスキャンを実行するように構成される。認識モジュール1003は、スキャンされたイメージ情報に対してイメージ認識を開始し、事前設定の結びつけられたターゲットがイメージ情報から認識されたときに、サーバ端末によって割り振られた仮想オブジェクトを受信するように構成される。事前設定の結びつけられたターゲットは、配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけたときにターゲットロケーションの周囲環境からスキャンされるイメージオブジェクトを含むことができる。
【００５９】
いくつかの実装形態において、出力モジュール1001は、ライブマップ取得要求をサーバ端末に送信し、ライブマップ取得要求は受信ユーザのロケーションを伝え、サーバ端末から受信ユーザのロケーションに対応するライブマップデータを受信し、仮想オブジェクトが予め他のユーザによって結びつけられるターゲットロケーションはライブマップデータ内で事前マークされ、受信されたライブマップデータに基づきARシーン内にライブマップを出力するように構成される。
【００６０】
いくつかの実装形態において、出力モジュール1001は、ライブマップ内に、受信ユーザが仮想オブジェクトが予め結びつけられているターゲットロケーションに行くのを案内するための受信ユーザのロケーションに対応するナビゲーションプロンプトを出力するようにさらに構成される。
【００６１】
いくつかの実装形態において、出力モジュール1001は、受信ユーザのロケーションと各ターゲットロケーションとの間の距離をリアルタイムで計算し、対応するロケーションキューマークを、受信ユーザのロケーションまでの距離が事前設定の閾値より小さいターゲットロケーションに追加するようにさらに構成される。
【００６２】
いくつかの実装形態において、出力モジュール1001は、受信ユーザのロケーションまでの距離が事前設定の閾値より小さいターゲットロケーションのロケーションキューマークを強調表示にすることを、対応するロケーションキューマークがライブマップ内のすべてのターゲットロケーションに追加される場合に行うようにさらに構成される。
【００６３】
いくつかの実装形態において、スキャンモジュール1002は、ターゲットロケーションと受信ユーザのロケーションとの間の距離が事前設定の閾値より小さいかどうかを決定し、ターゲットロケーションに対応する仮想オブジェクト検索ページに、ターゲットロケーションと受信ユーザのロケーションとの間の距離が事前設定の閾値より小さい場合に入り、ターゲットロケーションの周囲環境上でリアルタイムイメージスキャンを実行することを受信ユーザに促すためのイメージスキャンプロンプトを仮想オブジェクト検索ページ内に出力するようにさらに構成される。
【００６４】
いくつかの実装形態において、出力モジュール1001は、仮想オブジェクト検索ページ内に、仮想オブジェクトをターゲットロケーションに結びつける配信ユーザの関係する情報を出力するようにさらに構成される。
【００６５】
いくつかの実装形態において、出力モジュール1001は、仮想オブジェクト検索ページ内に、イメージスキャン手がかりを提示するためのインタラクションオプションを出力し、ユーザによるインタラクションオプションに対するトリガー操作に応答して仮想オブジェクト検索ページ内の事前設定の位置に手がかりイメージを出力し、手がかりイメージは配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけたときにスキャンされるイメージ情報を含む、ようにさらに構成される。
【００６６】
いくつかの実装形態において、出力モジュール1001は、イメージスキャン持続時間が事前設定の持続時間に達したときに仮想オブジェクトがまだ正常に割り振られていない場合に仮想オブジェクト検索ページ内に配信ユーザに対応するセッションエントリオプションを出力し、受信ユーザによるセッションエントリオプションに対するトリガー操作に応答して配信ユーザに対応するセッションページに入るようにさらに構成される。
【００６７】
いくつかの実装形態において、出力モジュール1001は、周囲環境上でリアルタイムイメージスキャンを実行することを配信ユーザに促すためのイメージスキャンプロンプトを配信ユーザのロケーションに対応する仮想オブジェクト結びつけページ内に出力するようにさらに構成される。
【００６８】
いくつかの実装形態において、認識モジュール1003は、スキャンされたイメージ情報に対してイメージ認識を開始し、結びつけられたターゲットがイメージ情報から正常に認識されたときに、サーバ端末によって返され、仮想オブジェクトをロケーションに結びつけるために使用される構成インターフェースを出力するようにさらに構成される。
【００６９】
システム1000は、取得モジュール(図10に示されていない)をさらに備えることができる。取得モジュールは、構成インターフェース内で配信ユーザによって入力された仮想オブジェクト配信情報を取得し、取得された配信情報と、ロケーションとをサーバ端末にアップロードし、それにより、サーバ端末が認識された結びつけられたターゲット(すなわち、事前設定の結びつけられたターゲット)と仮想オブジェクトとの間の結合関係を確立する、ように構成される。
【００７０】
いくつかの実装形態において、認識モジュール1003は、ローカルイメージ認識モデルに基づきスキャンされたイメージ情報に対するイメージ認識を開始し、認識結果をサーバ端末にアップロードするか、またはスキャンされたイメージ情報をサーバ端末にアップロードして、サーバ端末がそのローカルイメージ認識モデルに基づきイメージ情報上でイメージ認識を実行するようにし、サーバ端末から認識結果を受信するようにさらに構成される。
【００７１】
いくつかの実装形態において、ライブマップは、仮想オブジェクト結びつけページに入るためのページエントリを含み、仮想オブジェクト結びつけページは、ライブマップに入るためのページエントリを含む。
【００７２】
いくつかの実装形態において、出力モジュール1001は、仮想オブジェクト結びつけページ内に、仮想オブジェクトが正常に結びつけられたことを示す通知メッセージがサーバ端末によって返されることに応答して、仮想オブジェクトに対応する共有オプションを出力し、配信ユーザによる共有オプションに対するトリガー操作に応答して仮想オブジェクトに対応する共有ページに入るようにさらに構成される。
【００７３】
図11は、本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのARクライアント端末におけるハードウェアアーキテクチャ1100の一例を示すブロック図である。ハードウェアアーキテクチャ1100は、CPU1101と、ネットワークインターフェース1103と、メモリ1104と、不揮発性記憶装置デバイス1106とを備えることができる。ハードウェアアーキテクチャ1100は、CPU1101と、ネットワークインターフェース1103と、メモリ1104と、不揮発性記憶装置デバイス1106とを接続する内部バス1102も備える。メモリ1104は、仮想オブジェクト割り振りシステム1105を備えることができる。システム1105は、図10におけるシステム1000であってよい。ソフトウェア実装形態の一例において、仮想オブジェクト割り振りシステム1105は、CPU1101がメモリ1104にロードされるコンピュータプログラムを実行した後に形成されるソフトウェアハードウェア組合せ論理システムであってよい。
【００７４】
図12は、本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのサーバ端末におけるシステム1200の一例を示すブロック図である。システム1200は、返しモジュール1201と、決定モジュール1202と、割り振りモジュール1203とを備えることができる。システム1200は、ソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの組合せによって実装され得る。
【００７５】
返しモジュール1201は、受信ユーザのロケーションに対応するライブマップデータをARクライアント端末に返し、それによりARクライアント端末がARシーン内にライブマップを出力する、ように構成され、ライブマップは、仮想オブジェクトが予め他のユーザによって結びつけられるターゲットロケーションを含む。決定モジュール1202は、仮想オブジェクトが結びつけられているターゲットロケーションの周囲環境に対する受信ユーザのイメージスキャン操作に応答して、受信ユーザのARクライアント端末によってスキャンされたイメージ情報から事前設定の結びつけられたターゲットが認識されるかどうかを決定するように構成される。割り振りモジュール1203は、事前設定の結びつけられたターゲットが受信ユーザによってスキャンされたイメージ情報から認識された場合に仮想オブジェクトを受信ユーザに割り振るように構成され、事前設定の結びつけられたターゲットは、配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけたときにターゲットロケーションの周囲環境からスキャンされる結びつけられたターゲットを含む。
【００７６】
いくつかの実装形態において、決定モジュール1202は、配信ユーザが配信ユーザのロケーションに対応する仮想オブジェクト結びつけページに入り、仮想オブジェクト結びつけページを通じてロケーションの周囲環境上でリアルタイムイメージスキャンを実行したときに、事前設定の結びつけられたターゲットが配信ユーザのARクライアント端末によってスキャンされたイメージ情報から認識されるかどうかを決定するようにさらに構成される。
【００７７】
返しモジュール1201は、事前設定の結びつけられたターゲットが配信ユーザによってスキャンされたイメージ情報から認識される場合に配信ユーザのARクライアント端末に、仮想オブジェクトをロケーションに結びつけるための構成インターフェースを返すようにさらに構成される。
【００７８】
システム1200は、受信モジュールと、確立モジュール(図12に示されていない)とをさらに備えることができる。受信モジュールは、配信ユーザのARクライアント端末によってアップロードされた配信ユーザのロケーションと、構成インターフェース内に配信ユーザによって入力された仮想オブジェクト割り振り情報とを受信し、保存するように構成される。確立モジュールは、事前設定の結びつけられたターゲットと仮想オブジェクトとの間の結合関係を確立するように構成される。
【００７９】
いくつかの実装形態において、返しモジュール1201は、受信ユーザのARクライアント端末によって送信されたライブマップ取得要求を受信し、ライブマップ取得要求は受信ユーザのロケーションを伝え、受信されたライブマップ取得要求に応答して受信ユーザのロケーションに対応するライブマップデータを検索して、見つかったライブマップデータ内で、仮想オブジェクトが予め他のユーザによって結びつけられるターゲットロケーションにマークし、見つかったライブマップデータを受信ユーザのARクライアント端末に返す、ように構成される。
【００８０】
いくつかの実装形態において、割り振り情報は、構成ページ内で配信ユーザによって指定された割り振りのターゲット母集団を含む。割り振りモジュール1203は、受信ユーザが配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけるときに指定される割り振りのターゲット母集団とマッチするかどうかを決定し、受信ユーザが割り振りのターゲット母集団とマッチした場合に仮想オブジェクトを受信ユーザに割り振るように構成される。
【００８１】
図13は、本開示の一実装形態による、ARに基づく仮想オブジェクトの割り振りのためのサーバ端末におけるハードウェアアーキテクチャ1300の一例を示すブロック図である。ハードウェアアーキテクチャ1300は、CPU1301と、ネットワークインターフェース1303と、メモリ1304と、不揮発性記憶装置デバイス1306とを備えることができる。ハードウェアアーキテクチャ1300は、CPU1301と、ネットワークインターフェース1303と、メモリ1304と、不揮発性記憶装置デバイス1306とを接続する内部バス1302も備える。メモリ1304は、仮想オブジェクト割り振りシステム1305を備えることができる。システム1305は、図12におけるシステム1200であってよい。ソフトウェア実装形態の一例において、仮想オブジェクト割り振りシステム1305は、CPU1301がメモリ1304にロードされるコンピュータプログラムを実行した後に形成されるソフトウェアハードウェア組合せ論理システムであってよい。
【００８２】
図14は、本開示の一実装形態による、説明されているアルゴリズム、方法、機能、プロセス、フロー、およびプロシージャに関連付けられている計算機能を提供するために使用されるコンピュータ実装システム1400の一例を示すブロック図である。例示されている実装形態において、システム1400は、コンピュータ1402とネットワーク1430とを備える。
【００８３】
例示されているコンピュータ1402は、サーバ、デスクトップコンピュータ、ラップトップ/ノートブックコンピュータ、ワイヤレスデータポート、スマートフォン、携帯情報端末(PDA)、タブレットコンピュータ、コンピューティングデバイスの物理的もしくは仮想インスタンスを含む、これらのデバイス、別のコンピューティングデバイス、もしくはコンピューティングデバイスの組合せ内の1つもしくは複数のプロセッサ、またはコンピューティングデバイスの物理的もしくは仮想インスタンスの組合せなどの、任意のコンピューティングデバイスを包含することを意図されている。それに加えて、コンピュータ1402は、キーパッド、キーボード、タッチスクリーン、別の入力デバイス、またはユーザ情報を受け付けることができる入力デバイスの組合せなどの、入力デバイスと、グラフィックタイプのユーザインターフェース(UI)(もしくはGUI)または他のUI上でデジタルデータ、視覚的、聴覚的、別のタイプの情報、またはいくつかのタイプの情報の組合せを含む、コンピュータ1402の動作に関連付けられている情報を伝達する出力デバイスとを備えることができる。
【００８４】
コンピュータ1402は、クライアント、ネットワークコンポーネント、サーバ、データベースもしくは別の周辺機器として分散コンピューティングシステムクライアント内で1つの役割を果たすか、または本開示で説明されている主題を実行するための他の役割、またはいくつかの役割を組み合わせて果たすことができる。例示されているコンピュータ1402は、ネットワーク1430と通信可能に結合される。いくつかの実装形態において、コンピュータ1402の1つまたは複数のコンポーネントは、クラウドコンピューティングベース、ローカル、グローバル、別の環境、または環境の組合せを含む、環境内で動作するように構成され得る。
【００８５】
高い水準で、コンピュータ1402は、説明されている主題に関連付けられているデータおよび情報を受信するか、伝送するか、処理するか、記憶するか、または管理するように動作可能である電子コンピューティングデバイスである。いくつかの実装形態によれば、コンピュータ1402は、また、アプリケーションサーバ、電子メールサーバ、ウェブサーバ、キャッシュサーバ、ストリーミングデータサーバ、別のサーバ、またはサーバの組合せを含む、サーバを含むか、またはそれと通信可能に結合され得る。
【００８６】
コンピュータ1402は、ネットワーク1430上で要求を受信し(たとえば、別のコンピュータ1402上で実行しているクライアントソフトウェアアプリケーションから)、ソフトウェアアプリケーションまたはソフトウェアアプリケーションの組合せを使用して受信された要求を処理することによって受信された要求に応答することができる。それに加えて、要求は、内部ユーザ(たとえば、コマンドコンソールからまたは別の内部アクセス方法によって)、外部もしくは第三者、または他のエンティティ、個人、システム、もしくはコンピュータからコンピュータ1402にも送信され得る。
【００８７】
コンピュータ1402のコンポーネントの各々は、システムバス1403を使用して通信することができる。いくつかの実装形態において、ハードウェア、ソフトウェア、またはハードウェアとソフトウェアとの組合せを含む、コンピュータ1402のコンポーネントのうちのいずれかもしくはすべては、アプリケーションプログラミングインターフェース(API)1412、サービス層1413、またはAPI1412とサービス層1413との組合せを使用してシステムバス1403上でインターフェースすることができる。API1412は、ルーチン、データ構造体、およびオブジェクトクラスの指定を含むことができる。API1412は、コンピュータ言語独立または依存のいずれかであってよく、完全なインターフェース、単一の機能、または一組のAPIすら指す。サービス層1413は、ソフトウェアサービスをコンピュータ1402またはコンピュータ1402に通信可能に結合されている他のコンポーネント(例示されていようといまいと)に提供する。コンピュータ1402の機能は、サービス層1413を使用してすべてのサービス消費者に対してアクセス可能であるものとしてよい。サービス層1413によって提供されるものなどの、ソフトウェアサービスは、定義されているインターフェースを通じて再利用可能な定義済みの機能を提供する。たとえば、インターフェースは、JAVA(登録商標)、C++、別のコンピューティング言語、または拡張マークアップ言語(XML)形式、別の形式、または形式の組合せ内のデータを提供するコンピューティング言語の組合せで書かれたソフトウェアであってよい。コンピュータ1402の内蔵コンポーネントとして例示されているが、代替的実装形態は、API1412またはサービス層1413をコンピュータ1402の他のコンポーネントまたはコンピュータ1402に通信可能に結合されている他のコンポーネント(例示されていようといまいと)に関してスタンドアロンコンポーネントとして例示することができる。さらに、API1412の任意のもしくはすべての部分またはサービス層1413は、本開示の範囲から逸脱することなく別のソフトウェアモジュール、エンタープライズアプリケーション、またはハードウェアモジュールの子もしくはサブモジュールとして実装され得る。
【００８８】
コンピュータ1402は、インターフェース1404を備える。単一のインターフェース1404として例示されているが、2つまたはそれ以上のインターフェース1404は、コンピュータ1402の特定のニーズに、望み、または特定の実装形態に従って使用され得る。インターフェース1404は、分散環境においてネットワーク1430に通信可能にリンクされている別のコンピューティングシステム(例示されていようといまいと)と通信するためにコンピュータ1402によって使用される。一般的に、インターフェース1404は、ネットワーク1430と通信するように動作可能であり、ソフトウェア、ハードウェア、またはソフトウェアとハードウェアとの組合せで符号化された論理を備える。より具体的には、インターフェース1404は、ネットワーク1430またはインターフェース1404のハードウェアが例示されているコンピュータ1402の内部または外部で物理的信号を通信するように動作可能であるように通信に関連付けられている1つまたは複数の通信プロトコルをサポートするソフトウェアを備えることができる。
【００８９】
コンピュータ1402は、プロセッサ1405を備える。単一のプロセッサ1405として例示されているが、2つまたはそれ以上のプロセッサ1405は、コンピュータ1402の特定のニーズに、望み、または特定の実装形態に従って使用され得る。一般的に、プロセッサ1405は、命令を実行し、データを操作して、コンピュータ1402および本開示で説明されているようなアルゴリズム、方法、機能、プロセス、フロー、およびプロシージャの動作を実行する。
【００９０】
コンピュータ402は、また、コンピュータ1402、ネットワーク1430(例示されていようといまいと)に通信可能にリンクされている別のコンポーネント、またはコンピュータ1402と別のコンポーネントとの組合せのためにデータを保持することができるデータベース1406を備える。たとえば、データベース1406は、本開示と一致するデータを記憶するメモリ内の、従来の、または別のタイプのデータベースであってよい。いくつかの実装形態において、データベース1406は、コンピュータ1402および説明されている機能の特定のニーズ、望み、または特定の実装形態に従って2つまたはそれ以上の異なるデータベースタイプの組合せ(たとえば、メモリ内および従来のもののハイブリッドデータベース)であってよい。単一のデータベース1406として例示されているが、類似のもしくは異なるタイプの2つまたはそれ以上のデータベースは、コンピュータ1402および説明されている機能の特定のニーズに、望み、または特定の実装形態に従って使用され得る。データベース1406は、コンピュータ1402の内蔵コンポーネントとして例示されているが、代替的実装形態では、データベース1406は、コンピュータ1402の外部にあってもよい。
【００９１】
コンピュータ1402は、また、コンピュータ1402、ネットワーク1430(例示されていようといまいと)に通信可能にリンクされている別の1つのもしくは複数のコンポーネント、またはコンピュータ1402と別のコンポーネントとの組合せのためにデータを保持することができるメモリ1407を備える。メモリ1407は、本開示と一致する任意のデータを記憶することができる。いくつかの実装形態において、メモリ1407は、コンピュータ1402および説明されている機能の特定のニーズ、望み、または特定の実装形態に従って2つまたはそれ以上の異なるタイプのメモリの組合せ(たとえば、半導体と磁気記憶装置との組合せ)であってよい。単一のメモリ1407として例示されているが、2つもしくはそれ以上のメモリ1407または類似のもしくは異なるタイプは、コンピュータ1402および説明されている機能の特定のニーズに、望み、または特定の実装形態に従って使用され得る。メモリ1407は、コンピュータ1402の内蔵コンポーネントとして例示されているが、代替的実装形態では、メモリ1407は、コンピュータ1402の外部にあってもよい。
【００９２】
アプリケーション1408は、特に本開示において説明されている機能に関して、コンピュータ1402の特定のニーズ、望み、または特定の実装形態に従って機能を提供するアルゴリズムソフトウェアエンジンである。たとえば、アプリケーション1408は、1つもしくは複数のコンポーネント、モジュール、またはアプリケーションとしてサーブすることができる。さらに、単一のアプリケーション1408として例示されているが、アプリケーション1408は、コンピュータ1402上の複数のアプリケーション1408として実装されてもよい。それに加えて、コンピュータ1402に内蔵されているものとして例示されているが、代替的実装形態では、アプリケーション1408は、コンピュータ1402の外部にあってもよい。
【００９３】
コンピュータ1402は、電源1414を備えることもできる。電源1414は、ユーザ交換可能であるか、またはユーザ交換不可能であるかのいずれかとして構成され得る充電式または充電式でない電池を含むことができる。いくつかの実装形態において、電源1414は、節電または管理回路(充電、スタンバイ、または別のパワー管理機能を含む)を備えることができる。いくつかの実装形態において、電源1414は、コンピュータ1402をプラグで壁コンセントに差し込むための電源プラグ、またはたとえばコンピュータ1402に給電するか、もしくは充電式電池を充電するための別の電源を含むことができる。
【００９４】
各コンピュータ1402がネットワーク1430上で通信している、コンピュータ1402を含むコンピュータシステムに関連付けられるか、またはその外部にある、コンピュータ1402は多数あり得る。さらに、「クライアント」、「ユーザ」という語、または他の適切な用語は、本開示の範囲から逸脱することなく、適宜に、交換可能に使用され得る。さらに、本開示は、多くのユーザが1台のコンピュータ1402を使用できること、または1人のユーザが複数のコンピュータ1402を使用できることを企図している。
【００９５】
主題の説明されている実装形態は、1つまたは複数の特徴を、単独で、または組み合わせて含み得る。
【００９６】
たとえば、第1の実装形態において、コンピュータ実装方法は、受信ユーザのARクライアント端末によって、受信ユーザのロケーションに関連付けられているライブマップを表示することであって、ライブマップは、配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含む、表示することと、受信ユーザのARクライアント端末によって、ターゲットロケーションの環境のイメージをスキャンすることと、スキャンされたイメージが事前設定の結びつけられたターゲットを含むと決定することに応答して、仮想オブジェクトの情報をサーバ端末から受信することであって、事前設定の結びつけられたターゲットは仮想オブジェクトおよびターゲットロケーションに関連付けられている、受信することとを含む。
【００９７】
前述および他の説明されている実装形態は、各々、任意選択で、次の特徴のうちの1つまたは複数を含み得る。
【００９８】
次の特徴のうちのいずれかと組合せ可能である、第1の特徴であって、配信ユーザは仮想オブジェクトをターゲットロケーションに結びつけ、仮想オブジェクトをターゲットロケーションに結びつけることは、配信ユーザのARクライアント端末によって、配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけるための仮想オブジェクト結びつけページを表示することと、配信ユーザのARクライアント端末によって、ターゲットロケーションの環境の第2のイメージをスキャンすることと、第2のイメージから結びつけられたターゲットを決定することと、決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てることと、配信ユーザの入力に基づき仮想オブジェクトの配信情報を受信することと、サーバ端末に、仮想オブジェクトの配信情報、事前設定の結びつけられたターゲットの情報、およびターゲットロケーションの情報をアップロードすることとを含む、第1の特徴。
【００９９】
前のまたは次の特徴のいずれかと組合せ可能である、第2の特徴であって、仮想オブジェクトは、電子レッドエンベロープである、第2の特徴。
【０１００】
前のまたは次の特徴のいずれかと組合せ可能である、第3の特徴であって、受信ユーザのロケーションとターゲットロケーションとの間の距離を決定することと、距離が閾値未満であると決定することに応答して、ライブマップ内のターゲットロケーションにあるロケーションキューマークを強調表示することとをさらに含む、第3の特徴。
【０１０１】
前のまたは次の特徴のいずれかと組合せ可能である、第4の特徴であって、ターゲットロケーションの環境のイメージをスキャンすることは、受信ユーザのロケーションとターゲットロケーションとの間の距離を決定することと、距離が閾値未満であると決定することに応答して、ターゲットロケーションに対応する仮想オブジェクト検索ページを表示することと、ターゲットロケーションの環境のイメージを受信ユーザがスキャンするためのイメージスキャンプロンプトを仮想オブジェクト検索ページ内に表示することとを含む、第4の特徴。
【０１０２】
前のまたは次の特徴のいずれかと組合せ可能である、第5の特徴であって、仮想オブジェクト検索ページ内に、イメージスキャン手がかりを表示するためのオプションを表示することと、受信ユーザがオプションを選択することに応答して、仮想オブジェクト検索ページ内に手がかりイメージを表示することであって、手がかりイメージは配信ユーザによってスキャンされた第2のイメージの情報を含む、表示することとをさらに含む、第5の特徴。
【０１０３】
前のまたは次の特徴のいずれかと組合せ可能である、第6の特徴であって、サーバ端末に、受信ユーザのロケーションを含むライブマップ取得要求を送信することと、サーバ端末からライブマップの情報を受信することとをさらに含む、第6の特徴。
【０１０４】
第2の実装形態において、コンピュータシステムによって実行可能である1つまたは複数の命令を記憶する非一時的コンピュータ可読媒体であって、コンピュータシステムは受信ユーザのARクライアント端末によって、受信ユーザのロケーションに関連付けられているライブマップを表示することであって、ライブマップは、配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含む、表示することと、受信ユーザのARクライアント端末によって、ターゲットロケーションの環境のイメージをスキャンすることと、スキャンされたイメージが事前設定の結びつけられたターゲットを含むと決定することに応答して、仮想オブジェクトの情報をサーバ端末から受信することであって、事前設定の結びつけられたターゲットは仮想オブジェクトおよびターゲットロケーションに関連付けられている、受信することとを含む動作を実行する、非一時的コンピュータ可読媒体。
【０１０５】
前述および他の説明されている実装形態は、各々、任意選択で、次の特徴のうちの1つまたは複数を含み得る。
【０１０６】
次の特徴のうちのいずれかと組合せ可能である、第1の特徴であって、配信ユーザは仮想オブジェクトをターゲットロケーションに結びつけ、仮想オブジェクトをターゲットロケーションに結びつけることは、配信ユーザのARクライアント端末によって、配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけるための仮想オブジェクト結びつけページを表示することと、配信ユーザのARクライアント端末によって、ターゲットロケーションの環境の第2のイメージをスキャンすることと、第2のイメージから結びつけられたターゲットを決定することと、決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てることと、配信ユーザの入力に基づき仮想オブジェクトの配信情報を受信することと、サーバ端末に、仮想オブジェクトの配信情報、事前設定の結びつけられたターゲットの情報、およびターゲットロケーションの情報をアップロードすることとを含む、第1の特徴。
【０１０７】
前のまたは次の特徴のいずれかと組合せ可能である、第2の特徴であって、仮想オブジェクトは、電子レッドエンベロープである、第2の特徴。
【０１０８】
前のまたは次の特徴のいずれかと組合せ可能である、第3の特徴であって、動作は、受信ユーザのロケーションとターゲットロケーションとの間の距離を決定することと、距離が閾値未満であると決定することに応答して、ライブマップ内のターゲットロケーションにあるロケーションキューマークを強調表示することとをさらに含む、第3の特徴。
【０１０９】
前のまたは次の特徴のいずれかと組合せ可能である、第4の特徴であって、ターゲットロケーションの環境のイメージをスキャンすることは、受信ユーザのロケーションとターゲットロケーションとの間の距離を決定することと、距離が閾値未満であると決定することに応答して、ターゲットロケーションに対応する仮想オブジェクト検索ページを表示することと、ターゲットロケーションの環境のイメージを受信ユーザがスキャンするためのイメージスキャンプロンプトを仮想オブジェクト検索ページ内に表示することとを含む、第4の特徴。
【０１１０】
前のまたは次の特徴のいずれかと組合せ可能である、第5の特徴であって、動作は、仮想オブジェクト検索ページ内に、イメージスキャン手がかりを表示するためのオプションを表示することと、受信ユーザがオプションを選択することに応答して、仮想オブジェクト検索ページ内に手がかりイメージを表示することであって、手がかりイメージは配信ユーザによってスキャンされた第2のイメージの情報を含む、表示することとをさらに含む、第5の特徴。
【０１１１】
前のまたは次の特徴のいずれかと組合せ可能である、第6の特徴であって、動作は、サーバ端末に、受信ユーザのロケーションを含むライブマップ取得要求を送信することと、サーバ端末からライブマップの情報を受信することとをさらに含む、第6の特徴。
【０１１２】
第3の実装形態において、コンピュータ実装システムは1つまたは複数のコンピュータと、1つまたは複数のコンピュータと相互動作可能に結合され、1つまたは複数のコンピュータによって実行されたときに、1つまたは複数の動作を実行する1つまたは複数の命令を記憶している有形の非一時的機械可読媒体を有する、1つまたは複数のコンピュータメモリデバイスとを備え、動作は、受信ユーザのARクライアント端末によって、受信ユーザのロケーションに関連付けられているライブマップを表示することであって、ライブマップは、配信ユーザによって仮想オブジェクトが結びつけられたターゲットロケーションを含む、表示することと、受信ユーザのARクライアント端末によって、ターゲットロケーションの環境のイメージをスキャンすることと、スキャンされたイメージが事前設定の結びつけられたターゲットを含むと決定することに応答して、仮想オブジェクトの情報をサーバ端末から受信することであって、事前設定の結びつけられたターゲットは仮想オブジェクトおよびターゲットロケーションに関連付けられている、受信することとを含む。
【０１１３】
前述および他の説明されている実装形態は、各々、任意選択で、次の特徴のうちの1つまたは複数を含み得る。
【０１１４】
次の特徴のうちのいずれかと組合せ可能である、第1の特徴であって、配信ユーザは仮想オブジェクトをターゲットロケーションに結びつけ、仮想オブジェクトをターゲットロケーションに結びつけることは、配信ユーザのARクライアント端末によって、配信ユーザが仮想オブジェクトをターゲットロケーションに結びつけるための仮想オブジェクト結びつけページを表示することと、配信ユーザのARクライアント端末によって、ターゲットロケーションの環境の第2のイメージをスキャンすることと、第2のイメージから結びつけられたターゲットを決定することと、決定された結びつけられたターゲットを事前設定の結びつけられたターゲットとして割り当てることと、配信ユーザの入力に基づき仮想オブジェクトの配信情報を受信することと、サーバ端末に、仮想オブジェクトの配信情報、事前設定の結びつけられたターゲットの情報、およびターゲットロケーションの情報をアップロードすることとを含む、第1の特徴。
【０１１５】
前のまたは次の特徴のいずれかと組合せ可能である、第2の特徴であって、1つまたは複数の動作は、受信ユーザのロケーションとターゲットロケーションとの間の距離を決定することと、距離が閾値未満であると決定することに応答して、ライブマップ内のターゲットロケーションにあるロケーションキューマークを強調表示することとをさらに含む、第2の特徴。
【０１１６】
前のまたは次の特徴のいずれかと組合せ可能である、第3の特徴であって、ターゲットロケーションの環境のイメージをスキャンすることは、受信ユーザのロケーションとターゲットロケーションとの間の距離を決定することと、距離が閾値未満であると決定することに応答して、ターゲットロケーションに対応する仮想オブジェクト検索ページを表示することと、ターゲットロケーションの環境のイメージを受信ユーザがスキャンするためのイメージスキャンプロンプトを仮想オブジェクト検索ページ内に表示することとを含む、第3の特徴。
【０１１７】
前のまたは次の特徴のいずれかと組合せ可能である、第4の特徴であって、1つまたは複数の動作は、仮想オブジェクト検索ページ内に、イメージスキャン手がかりを表示するためのオプションを表示することと、受信ユーザがオプションを選択することに応答して、仮想オブジェクト検索ページ内に手がかりイメージを表示することであって、手がかりイメージは配信ユーザによってスキャンされた第2のイメージの情報を含む、表示することとをさらに含む、第4の特徴。
【０１１８】
前のまたは次の特徴のいずれかと組合せ可能である、第5の特徴であって、1つまたは複数の動作は、サーバ端末に、受信ユーザのロケーションを含むライブマップ取得要求を送信することと、サーバ端末からライブマップの情報を受信することとをさらに含む、第5の特徴。
【０１１９】
本明細書で説明されている主題および機能動作の実装は、本明細書で開示されている構造およびその構造的均等物を含む、デジタル電子回路で、有形に具現化されたコンピュータソフトウェアもしくはファームウェアで、コンピュータハードウェアで、またはこれらのうちの1つもしくは複数のものの組合せで実装することができる。説明されている主題のソフトウェア実装形態は、1つまたは複数のコンピュータプログラム、すなわち、コンピュータもしくはコンピュータ実装システムによる実行のため、またはコンピュータもしくはコンピュータ実装システムの動作を制御するために有形な非一時的コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。代替的に、またはそれに加えて、プログラム命令は、コンピュータもしくはコンピュータ実装システムによる実行のため受信機装置に伝送する情報を符号化するように生成される、人工的に生成された伝搬信号、たとえば、機械で生成された電気、光、または電磁信号において/その上で符号化され得る。コンピュータ記憶媒体は、機械可読記憶装置デバイス、機械可読記憶装置基板、ランダムもしくはシリアルアクセスメモリデバイス、またはコンピュータ記憶媒体の組合せとすることができる。1つまたは複数のコンピュータを構成することは、1つまたは複数のコンピュータが、ソフトウェアが1つまたは複数のコンピュータによって実行されたときに特定のコンピューティング動作が実行されるようにハードウェア、ファームウェア、またはソフトウェア(またはハードウェア、ファームウェア、ソフトウェアの組合せ)をすでにインストールしていることを意味する。
【０１２０】
「リアルタイム」(英語原文において「real-time」、「real time」、「realtime」)、「高速リアルタイム」(英語原文において「real (fast) time (RFT)」)、「近リアルタイム」(英語原文において「near(ly) real-time (NRT)」)、「準リアルタイム」(英語原文において「quasi real-time」)という語、または類似の語(当業者であれば理解するような)は、アクションおよび応答が、個人がアクションおよび応答が実質的に同時に生じたことを知覚するような時間的に近くにあることを意味する。たとえば、データにアクセスする個人のアクションの後に続くデータの表示(または表示の開始)までの応答の時間差は1ミリ秒(ms)未満、1秒未満、または5秒未満であるものとしてよい。要求されたデータは、瞬時に表示される(または表示を開始される)必要はないが、これは、説明されているコンピューティングシステムの処理制限およびたとえばデータを収集する、正確に測定する、分析する、処理する、記憶する、または伝送するのに要する時間を考慮して、意図的な遅延なく、表示される(または表示を開始される)。
【０１２１】
「データ処理装置」、「コンピュータ」、または「電子コンピュータデバイス」という語(または当業者によって理解されるような同等の語)はデータ処理ハードウェアを指し、たとえばプログラム可能プロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。コンピュータは、専用論理回路、たとえば、中央演算処理装置(CPU)、FPGA(フィールドプログラマブルゲートアレイ)、またはASIC(特定用途向け集積回路)でもあり得るか、またはさらに含み得る。いくつかの実装形態において、コンピュータまたはコンピュータ実装システムまたは専用論理回路(またはコンピュータまたはコンピュータ実装システムおよび専用論理回路の組合せ)は、ハードウェアまたはソフトウェアベースである(またはハードウェアとソフトウェアベースの両方の組合せに基づく)ものとしてよい。コンピュータは、任意選択で、コンピュータプログラム用の実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、または実行環境の組合せを構成するコードを含むこともできる。本開示では、何らかのタイプのオペレーティングシステム、たとえば、LINUX、UNIX(登録商標)、WINDOWS(登録商標)、MAC OS、ANDROID(登録商標)、IOS、別のオペレーティングシステム、またはオペレーティングシステムの組合せを用いたコンピュータまたはコンピュータ実装システムの使用を企図している。
【０１２２】
プログラム、ソフトウェア、ソフトウェアアプリケーション、ユニット、モジュール、ソフトウェアモジュール、スクリプト、コード、または他のコンポーネントとも称されるか、または記述され得る、コンピュータプログラムは、コンパイル言語またはインタプリタ言語または宣言型言語または手続き型言語を含む、任意の形態のプログラミング言語で書かれることが可能であり、たとえば、コンピューティング環境において使用するための、スタンドアロンプログラム、モジュール、コンポーネント、またはサブルーチンを含む、任意の形態でデプロイされることが可能である。コンピュータプログラムは、ファイルシステム内のファイルに対応してよいが、そうである必要はない。プログラムは、他のプログラムまたはデータ、たとえば、マークアップ言語ドキュメントに記憶される1つもしくは複数のスクリプトを保持するファイルの一部に、注目しているプログラム専用の単一ファイルに、または複数の協調ファイル、たとえば、1つもしくは複数のモジュール、副プログラム、またはコードの一部分を記憶するファイルに記憶され得る。コンピュータプログラムは、1つのコンピュータ上で、または1つのサイトに配置されるか、または複数のサイトにまたがって分散され、通信ネットワークによって相互接続されている複数のコンピュータ上で実行されるようにデプロイされることが可能である。
【０１２３】
様々な図で例示されているプログラムの一部分は、様々なオブジェクト、メソッド、または他のプロセスを使用して、説明されている特徴および機能を実装するユニットまたはモジュールなどの個別のコンポーネントとして例示され得るが、プログラムは、その代わりに、適宜、多数のサブユニット、サブモジュール、サードパーティサービス、コンポーネント、ライブラリ、または他のコンポーネントを含むことができる。逆に、様々なコンポーネントの特徴および機能は、適宜、単一のコンポーネントに組み合わされ得る。計算による決定を行うために使用される閾値は、静的に、動的に、または静的と動的の両方で決定され得る。
【０１２４】
説明されている方法、プロセス、または論理フローは、本開示と一致する機能の1つまたは複数の例を表し、本開示を説明または例示されている実装形態に限定することを意図されておらず、説明されている原理および特徴と一致する最も広い範囲を適用されることを意図されている。説明されている方法、プロセス、または論理フローは、入力データを操作し、出力を生成することによって機能を実行するように1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なコンピュータによって実行され得る。方法、プロセス、または論理フローは、専用論理回路、たとえば、CPU、FPGA、またはASICによっても実行され、コンピュータは、専用論理回路、たとえば、CPU、FPGA、またはASICとしても実装され得る。
【０１２５】
コンピュータプログラムの実行のためのコンピュータは、汎用マイクロプロセッサ、専用マイクロプロセッサ、その両方、または別のタイプのCPUに基づくものとしてよい。一般的に、CPUは、命令およびデータをメモリから受け取り、メモリに書き込む。コンピュータの不可欠な要素は、命令を遂行または実行するためのCPU、ならびに命令およびデータを記憶するための1つまたは複数のメモリデバイスである。一般的に、コンピュータは、データを記憶するための1つまたは複数の大容量記憶装置デバイス、たとえば、磁気ディスク、磁気光ディスク、または光ディスクも備え、これらからデータを受け取るか、またはこれらにデータを転送するか、またはその両方を行うように動作可能なように結合される。しかしながら、コンピュータは、そのようなデバイスを有している必要はない。さらに、コンピュータは、別のデバイス、たとえば、携帯電話、携帯情報端末(PDA)、携帯オーディオもしくはビデオプレーヤー、ゲーム機、グローバルポジショニングシステム(GPS)受信機、または携帯型メモリ記憶装置デバイスに組み込まれることが可能である。
【０１２６】
コンピュータプログラム命令およびデータを記憶するための非一時的コンピュータ可読媒体は、たとえば、半導体メモリデバイス、たとえば、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、消去可能プログラマブルリードオンリーメモリ(EPROM)、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、およびフラッシュメモリデバイス、磁気デバイス、たとえば、テープ、カートリッジ、カセット、内部/取り外し可能ディスク、光磁気ディスク、および光メモリデバイス、たとえば、デジタル多用途/ビデオディスク(DVD)、コンパクトディスク(CD)-ROM、DVD+/-R、DVD-RAM、DVD-ROM、高精細度/密度(HD)-DVD、およびBLU-RAY/BLU-RAY DISC(BD)、ならびに他の光メモリテクノロジーを含む、すべての形態の永久的/非永久的または揮発性/不揮発性メモリ、媒体、およびメモリデバイスを含むことができる。メモリは、キャッシュ、クラス、フレームワーク、アプリケーション、モジュール、バックアップデータ、ジョブ、ウェブページ、ウェブページテンプレート、データ構造体、データベーステーブル、動的情報を記憶するリポジトリ、またはパラメータ、変数、アルゴリズム、命令、規則、制約条件、もしくは参照を含む適切な他の情報を含む、様々なオブジェクトもしくはデータを記憶することができる。それに加えて、メモリは、ログ、ポリシー、セキュリティもしくはアクセスデータ、または報告ファイルなどの他の適切なデータを収めることができる。プロセッサおよびメモリは、専用論理回路によって補助されるか、または専用論理回路に組み込まれ得る。
【０１２７】
ユーザとインタラクティブにやり取りするために、本明細書で説明されている主題の実装形態は、ユーザに情報を表示するためのディスプレイデバイス、たとえば、CRT(陰極線管)、LCD(液晶ディスプレイ)、LED(発光ダイオード)、またはプラズマモニタ、ならびにユーザがコンピュータに入力を提供するためのキーボードおよびポインティングデバイス、たとえば、マウス、トラックボール、またはトラックパッドを有するコンピュータ上で実装され得る。入力は、また、感圧機能を有するタブレットコンピュータ画面、静電容量式もしくは電気的感知機能を有するマルチタッチスクリーン、または別のタイプのタッチスクリーンなどの、タッチスクリーンを使用するコンピュータに提供されるものとしてよい。他のタイプのデバイスもユーザとインタラクティブにやり取りするために使用され得る。たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(視覚フィードバックタイプ、聴覚フィードバックタイプ、触覚フィードバックタイプ、またはこれらのタイプの組合せ)とすることができる。ユーザからの入力は、音響、話声、または触覚の入力を含む、任意の形態で受け取ることができる。それに加えて、コンピュータは、ドキュメントをユーザによって使用されるクライアントコンピューティングデバイスに送信し、そのデバイスからドキュメントを受信することによって(たとえば、ウェブブラウザから受け取る要求に応答して、ウェブページをユーザのモバイルコンピューティングデバイス上のウェブブラウザに送信することによって)、ユーザとインタラクティブにやり取りすることができる。
【０１２８】
「グラフィカルユーザインターフェース」または「GUI」という語は、1つまたは複数のグラフィカルユーザインターフェースおよび特定のグラフィカルユーザインターフェースのディスプレイの各々を記述するために単数形または複数形で使用され得る。したがって、GUIは、限定はしないが、情報を処理し、情報結果をユーザに効率的に提示する、ウェブブラウザ、タッチスクリーン、またはコマンドラインインターフェース(CLI)を含む、任意のグラフィカルユーザインターフェースを表すものとしてよい。一般に、GUIは、インタラクティブフィールド、プルダウンリスト、およびボタンなどの、一部または全部がウェブブラウザに関連している多数のユーザインターフェース(UI)要素を含むものとしてよい。これらおよび他のUI要素は、ウェブブラウザの機能に関係するか、または表すものとしてよい。
【０１２９】
本明細書で説明されている主題の実装形態は、バックエンドコンポーネントを、たとえば、データサーバとして備えるか、またはミドルウェアコンポーネント、たとえば、アプリケーションサーバを備えるか、またはフロントエンドコンポーネント、たとえば、ユーザが本明細書で説明されている主題の実装形態とインタラクティブにやり取りするために使用することができるグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータを備えるコンピューティングシステムで、または1つまたは複数のそのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せで実装され得る。システムのコンポーネントは、有線もしくは無線デジタルデータ通信の任意の形態または媒体(またはデータ通信の組合せ)、たとえば、通信ネットワークによって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(LAN)、無線アクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、Worldwide Interoperability for Microwave Access(WIMAX)、たとえば、802.11 a/b/g/nもしくは802.20(もしくは802.11xと802.20との組合せもしくは本開示と一致する他のプロトコル)を使用するワイヤレスローカルエリアネットワーク(WLAN)、インターネットの全部もしくは一部、別の通信ネットワーク、または通信ネットワークの組合せを含む。通信ネットワークは、たとえば、インターネットプロトコル(IP)パケット、フレームリレーフレーム、非同期転送モード(ATM)セル、音声、映像、データ、またはネットワークノード間の他の情報で通信することができる。
【０１３０】
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは、一般に、互いに隔てられており、典型的には、通信ネットワークを通じてインタラクティブにやり取りを行う。クライアントとサーバとの関係は、コンピュータプログラムが各コンピュータ上で実行され、互いとの間にクライアント-サーバ関係を有することによって発生する。
【０１３１】
本明細書は、多くの実装形態固有の詳細事項を含んでいるが、これらは、発明の範囲または請求内容の範囲に対する制限として解釈すべきではなく、むしろ特定の発明の特定の実装形態に特有のものであり得る特徴の説明として解釈すべきである。本明細書において別々の実装形態の文脈で説明されているいくつかの特徴は、また、単一の実装形態において組み合わされて実現され得る。また、逆に、単一の実装形態の文脈で説明した様々な特徴は、複数の実装形態において別個に、あるいは任意の部分組合せで実装され得る。さらに、前述の特徴は、いくつかの組合せで働くものとして説明され、初めにそのように請求されることさえあるが、請求される組合せからの1つまたは複数の特徴は、場合によってはその組合せから削除され得、請求される組合せは、部分組合せ、または部分組合せの変形形態を対象とし得る。
【０１３２】
主題の特定の実装形態が説明されている。説明されている実装形態の他の実装形態、改変形態、および置換形態は、当業者には明らかなように次の請求項の範囲内にある。動作は特定の順序で図面もしくは請求項に示されているが、そのような動作は、望ましい結果を達成するために、示される特定の順序でもしくは順番に実行される必要がないことを、またはすべての例示されている動作が実行される必要があるとは限らない(いくつかの動作は任意選択であると考えてもよい)ことを、理解されたい。いくつかの状況において、マルチタスキングまたは並列処理(またはマルチタスキングと並列処理との組合せ)は、適切であるとみなされる場合に有利であり実行されてよい。
【０１３３】
さらに、前述の実装形態における様々なシステムモジュールおよびコンポーネントの分離または組み込みは、すべての実装形態においてそのような分離または組み込みが必要とされるものと理解されるべきではなく、説明されたプログラムコンポーネントおよびシステムが概して単一のソフトウェアプロダクトとして一体化されるかまたは複数のソフトウェアプロダクトとしてパッケージ化されてもよいことを理解されたい。
【０１３４】
したがって、前述の例示的な実装形態は、本開示を定義することも制約することもしない。他の変更、置換、および改変も、本開示の精神および範囲から逸脱することなく可能である。
【０１３５】
さらに、請求されている実装形態は、少なくともコンピュータ実装方法、コンピュータ実装方法を実行するためのコンピュータ可読命令を記憶する非一時的コンピュータ可読媒体、およびコンピュータ実装方法または非一時的コンピュータ可読媒体に記憶されている命令を実行するように構成されているハードウェアプロセッサと相互動作可能に結合されているコンピュータメモリを備えるコンピュータシステムに適用可能であると考えられる。
【符号の説明】
【０１３６】
100  コンピュータ実装方法
200  ユーザインターフェース
202  ユーザのARクライアント端末
204  「lucky red envelope」オプション
206  「ordinary red envelope」オプション
208  「AR red envelope」オプション
300  ユーザインターフェース
302  ユーザのARクライアント端末
304  「hide red envelope」オプション
306  「find red envelope」オプション
308  数インジケータ
400  ユーザインターフェース
402  配信ユーザのARクライアント端末
404  テキストボックス
406  ドロップダウンリスト
408  住所入力フィールド
410  住所項目
412  イメージスキャンプロンプト
414  プロンプトテキスト
416  仮想オブジェクト結びつけページ
500  ユーザインターフェース
502  ARクライアント端末
504  テキストボックス
506  イメージスキャンプロンプト
508  「hide here」機能ボタン
510  機能ボタン
512  数インジケータ
514  仮想オブジェクト結びつけページ
600  構成インターフェース
602  配信ユーザのARクライアント端末
604  レッドエンベロープの数
606  レッドエンベロープに対する総額
608  予約情報またはテキスト
610  ターゲット母集団
612  「hide red envelope」機能ボタン
700  ユーザインターフェース
702  配信ユーザのARクライアント端末
704  テキストプロンプト
706  共有機能ボタン
708  仮想オブジェクト結びつけページ
800  ユーザインターフェース
802  受信ユーザのARクライアント端末
804  ライブ「red envelope map」
806  インジケータ
808、810  図形識別子
812  機能ボタン
900  ユーザインターフェース
902  受信ユーザのARクライアント端末
904  レッドエンベロープ検索ページ
906  アバター
908  予約テキスト
910  スキャンプロンプト
912  機能ボタン
1000  システム
1001  出力モジュール
1002  スキャンモジュール
1003  認識モジュール
1100  ハードウェアアーキテクチャ
1101  CPU
1102  内部バス
1103  ネットワークインターフェース
1104  メモリ
1105  仮想オブジェクト割り振りシステム
1106  揮発性記憶装置デバイス
1200  システム
1201  返しモジュール
1202  決定モジュール
1203  割り振りモジュール
1300  ハードウェアアーキテクチャ
1301  CPU
1302  内部バス
1303  ネットワークインターフェース
1304  メモリ
1305  仮想オブジェクト割り振りシステム
1306  不揮発性記憶装置デバイス
1400  コンピュータ実装システム
1402  コンピュータ
1403  システムバス
1404  インターフェース
1405  プロセッサ
1406  データベース
1407  メモリ
1408  アプリケーション
1412  アプリケーションプログラミングインターフェース(API)
1413  サービス層
1414  電源
1430  ネットワーク
【図１】
0006756930.tif 000002
【図２】
0006756930.tif 000003
【図３】
0006756930.tif 000004
【図４】
0006756930.tif 000005
【図５】
0006756930.tif 000006
【図６】
0006756930.tif 000007
【図７】
0006756930.tif 000008
【図８】
0006756930.tif 000009
【図９】
0006756930.tif 000010
【図１０】
0006756930.tif 000011
【図１１】
0006756930.tif 000012
【図１２】
0006756930.tif 000013
【図１３】
0006756930.tif 000014
【図１４】
0006756930.tif 000015