(58)【調査した分野】(Int.Cl.,DB名)
前記目の認識ハードウェアは、前記レンズの周辺に均等に配置された、前記複数のカメラと一対一の対応関係を有する複数のLED光源をさらに含む、請求項1に記載の方法。
前記仮想現実シナリオは、プリセット仮想要素を含み、前記プリセット仮想要素は、セキュリティ認証を必要とする前記ターゲットサービスをトリガするために使用される、請求項1に記載の方法。
プリセットセンシングハードウェアを使用して、前記仮想現実シナリオにおいて前記プリセット仮想要素上で前記ユーザによって行われるインタラクション動作を認識するステップと、
前記プリセット仮想要素上で前記ユーザによって行われる前記インタラクション動作がプリセットインタラクション動作であると認識された場合に前記ユーザがセキュリティ認証を必要とする前記ターゲットサービスを開始すると決定するステップと
をさらに含む、請求項8に記載の方法。
仮想現実シナリオに基づいたサービス実施のための装置であって、前記装置は、請求項1から14のいずれか一項に記載の方法を行うように構成された複数のモジュールを含む、装置。
【発明を実施するための形態】
【0010】
類似の参照番号および様々な図面内の記号は、類似の要素を示す。
【0011】
以下の詳細な説明は、仮想現実(VR)デバイスユーザの目の生理学的特性に基づいて生体認証を行うことに関連する技術を説明しており、任意の当業者が1つまたは複数の特定の実施形態に即して開示した発明の特定事項を作成または使用することができるように提示している。開示した実施形態の様々な修正、変更、および置換が、なされ得るとともに、当業者に容易に明らかとなるであろう、そして、定義されている一般的な原理は、本開示の範囲から逸脱しない限り、他の実施形態および応用に適用可能であり得る。いくつかの事例においては、説明した発明の特定事項についての理解を得る必要がなく、当業者の技術内にある、1つまたは複数の技術的詳細は、1つまたは複数の説明した実施形態を曖昧なものにしないように省略され得る。本開示は、説明または図示した実施形態に限定されることを意図しておらず、説明した原理および特徴と矛盾しない最大の範囲として扱われるべきである。
【0012】
VRは、時には物理的空間または複数投影環境と組み合わせてヘッドセットなどのVRデバイスを使用して、3次元(3D)仮想環境におけるユーザの物理的存在をシミュレートしVRユーザが仮想環境とのインタラクションを行うことを可能にする、現実感のある画像、サウンド、および他の知覚を生成する、コンピュータ技術である。ゲーミング、コンテンツ消費、および生産性についての活用などといった、多くの活用が、VR技術を使用して没入型体験をユーザに提供するように開発されてきた。多くのVRアプリケーションは、アプリケーション内購入、ユーザカスタマイズ、またはパレンタルコントロールが可能である。これらの動作は、セキュリティ目的のためにユーザ識別認証を必要とするであろう。
【0013】
本開示は、VRデバイスユーザの目の生理学的特性に基づいたより高速でより便利なユーザ識別認証のための技術を説明している。ユーザがVRデバイスを使用してサービスを実行する場合には、VRデバイスは、1つまたは複数のセンサを使用して、仮想現実シナリオにおいてレンダリングされる仮想要素とのユーザインタラクション動作を識別し得る。ユーザインタラクション動作が1つまたは複数の事前に記憶されている動作と一致すると識別された場合には、VRデバイスは、ユーザ識別検証のためにユーザの目の生理学的特性に基づいて生体認証を起動し得る。生体認証が成功した場合には、ユーザは、サービスを完遂するためにサービスインタラクションを行い得る。そのため、VRデバイスは、ユーザ識別認証プロシージャを簡潔にするとともにアカウントセキュリティを保証するために、VR環境における生体認証を素早く行うためにユーザの目の生理学的特性を収集し得る。例えば、VR環境において支払いサービスを使用する場合には、VRデバイスを介した生体認証は、仮想キーボードを用いて複雑なユーザインタラクションを介したパスワードを入力することと比較して、より高速なユーザ識別認証を可能にし得る。
【0014】
図1は、本開示の実施形態による、仮想現実シナリオにおける目の生理学的特性に基づいてユーザ識別認証を行うための例示的な方法を図示しているフローチャートである。提示を明確にするために、以下の説明は、本説明における他の図に即して方法100を一般的に説明している。しかしながら、方法100が、例えば、任意の適切なシステム、環境、ソフトウェア、およびハードウェアによって、または、必要に応じて、システムと、環境と、ソフトウェアと、ハードウェアとの組合せによって、行われ得ることは理解されよう。いくつかの実施形態においては、方法100の様々なステップは、並行して、組み合わせて、ループして、または任意の順序で動作され得る。VRソフトウェアは、3D没入型VRユーザエクスペリエンスを提供するように開発され得る。
【0015】
110において、VRアプリケーションのVRシナリオにおいてサービスを開始するためにVRデバイスユーザからの1つまたは複数のユーザインタラクションを検出する。サービスは、ユーザ識別認証を必要としユーザによって行われるVRアプリケーションにおいて提供される、任意のサービスまたはタスクであり得る。いくつかのケースにおいては、サービスは、ユーザコンピューティングデバイスによって行われるローカルタスクまたはサーバによって行われるオンラインタスクであり得る。例えば、サービスは、VRショッピング、VRゲーム、VRベースのビデオ・オン・デマンド、またはVRライブキャストへの寄付などといったVRアプリケーションにおいてなされる支払いなどのオンライン支払いサービスであり得る。あるいは、サービスは、ユーザアカウントのログインまたはパスワードで保護されたロック解除を必要とするローカルサービスであり得る。VRアプリケーションは、VRに基づいて開発された任意のソフトウェアまたはアプリケーションであり得る。VRアプリケーションは、ユーザに没入型3D体験を提供するために、VRデバイスを介してVRシナリオをレンダリングし得る。
【0016】
VRシナリオまたはVR環境は、UNITY、3DSMAX、またはPHOTOSHOP(登録商標)などのモデリングツールを使用してVRモデリングによって作成され得る。いくつかのケースにおいては、VRモデリングおよびVRシナリオテクスチャマッピングはリアルライフシナリオに基づき得る。例えば、マテリアルおよびリアルライフシナリオモデルのテクスチャマップは、実生活におけるオブジェクトまたはシナリオを撮影することによってまず収集され得る。PHOTOSHOP(登録商標)または3DMAXなどのモデリングツールは、その後、テクスチャ処理およびリアルライフ3Dモデル作成のために使用され得る。3Dモデルは、その後、UNITY3D(U3D)プラットフォームにインポートされ、サウンドエフェクト、グラフィカルインターフェース、プラグイン、およびライティングを経て多次元レンダリングされ得る。インタラクションコードが、その後、3DモデルをVRシナリオモデルに変換するために実行され得る。
【0017】
VRシナリオおよびサービスインターフェースのモデリングの後に、VRデバイスは、VRシナリオおよびサービスインターフェースをユーザに提示し得る。いくつかのケースにおいては、VRシナリオモデルまたはサービスインターフェースをトリガするための仮想要素がユーザに提示され得る。ユーザがVRシナリオにおける没入型体験を有している間にサービスを行う必要がある場合には、ユーザは、サービスインターフェースをトリガするために仮想要素とのインタラクションを行い得る。
【0018】
ユーザは、頭の動きおよび手のジェスチャなどの任意の動きまたはジェスチャを介して、仮想要素とのインタラクションを行い得る。例えば、ユーザは、彼らの頭を動かして、VRシナリオにおいて動作焦点(例えば、カーソル)として使用され得る彼らの視覚焦点の移動を制御し得る。VRデバイスは、センサを使用して頭の動きをトラッキングし、検知した動きを使用してVRシナリオにおける動作可能な焦点を変更し得る。ユーザが彼らの頭を動かして動作焦点を仮想要素に変更するとともに所定の時間量の間(例えば、3秒間)仮想要素上で焦点を維持すると、VRデバイスは、仮想要素が選択されたと決定し、VRシナリオにおいてサービスインターフェースをトリガし得る。
【0019】
別の例としては、ユーザは、彼らの手を動かすことによって仮想要素上に動作焦点を位置決定し、その後、所定の3Dジェスチャを使用して仮想要素を選択し得る。VRデバイスは、センサを使用してユーザの手の動きをトラッキングし、センサによって検知されたユーザの手の変位に基づいてVRシナリオに関するユーザの手の深度情報を計算し、その後、VRシナリオにおいてユーザによってなされた3Dジェスチャを復元し得る。3Dジェスチャが事前に記憶されているジェスチャのうちの1つと同一である場合には、VRデバイスは、仮想要素を選択し、VRシナリオにおいてサービスインターフェースをトリガし得る。
【0020】
いくつかのケースにおいては、1つまたは複数のユーザインタラクションは、音声コマンドを含み得る。VRデバイスは、音声認識ソフトウェアを使用してユーザの音声コマンドを認識し得る。そのため、ユーザがVRシナリオにおける没入型体験を有している間にサービスを行う必要がある場合には、ユーザは、1つまたは複数の仮想要素とのインタラクションを行ってサービスインターフェースをトリガする代わりに音声コマンドを使用してサービスを開始し得る。
【0021】
いくつかのケースにおいては、VRデバイスは、VRユーザから音声入力を収集し、音声認識ソフトウェアを使用してユーザによって口述された音声コマンドを認識し得る。いくつかの他のケースにおいては、音声認識は、サービスを提供するサーバによって行われ得る。例えば、サーバクラスタによって形成されるサービスプラットフォームは、音声認識サービスのためのサーバを指定し、VRデバイスが音声認識サービスにアクセスするためのアクセスインターフェースを提供し得る。ユーザから音声入力を収集した後に、VRデバイスは、収集した音声入力に基づいて音声認識要求を構築し、サーバにアクセスインターフェースを介して音声認識要求を送信し得る。
【0022】
音声認識要求を受信した後に、サーバは、音声認識要求を解析し、音声コマンドを識別し、音声認識アルゴリズムを使用して音声コマンドを認識し得る。音声コマンドを認識した後に、サーバは、音声コマンドをVRデバイスによって認識可能な文字列命令に変換し、文字列命令をVRデバイスに送信し得る。文字列命令を受信した後に、VRデバイスは、文字列命令がサービスに対応する実行可能な命令であるかどうかを決定し得る。yesの場合には、VRデバイスは、命令に応答してサービスを開始し得る。
【0023】
例えば、サービスがVRアプリケーションに基づいた支払いサービスである場合には、ユーザは、「支払いを開始」という音声コマンドを送信し得る。音声認識を行った後に、サーバは、音声コマンドをVRデバイスによって認識可能な文字列命令に変換し得るし、VRデバイスは、命令に応答して支払いプロセスを開始し得る。
【0024】
音声コマンドを使用してサービスを開始することに加えて、音声コマンドは、それらの制御機能がサービスにとって利用可能であるならば、サービスのキャンセルなどといった他の音声制御を行うために使用され得る。キャンセル音声コマンドを認識することに成功し文字列命令に変換すると、VRデバイスは、キャンセル命令に応答し、サービスを中止し得る。例えば、サービスがVRアプリケーションに基づいた支払いサービスである場合には、ユーザは、サービスが音声コマンド「支払いを開始」によって開始された後に、支払いサービスを中止し得る。ユーザは、音声コマンド「支払いを中止」を口述し得る。音声コマンド「支払いを中止」がサーバによって認識され文字列命令に変換された後に、VRデバイスは、命令に応答し、支払いプロセスを終了し得る。
【0025】
VRデバイスユーザはまた、音声コマンドを使用して、どのようにしてサービスを行うかを制御し得る。クレジットカード支払いを行うために、例えばVRアプリケーションに基づいて支払いサービスを再び使用して、ユーザは、「クレジットカードに切り替え」と口述して追加の音声コマンド「クレジットカードで支払いってください」を送信することによって、デビットカードからクレジットカードに支払い方法を切り替え得る。110から、方法100は120に進む。
【0026】
120において、VRデバイスユーザの1つまたは複数の目の生理学的特性をユーザ識別認証のために取得する。サービスを開始した後に、VRデバイスは、ユーザ識別認証のために仮想シナリオにおいてUIを提示し得る。いくつかのケースにおいては、VRデバイスは、ユーザ識別認証を容易にする目の認識機能を含み得る。目の認識機能を目の生理学的特性サンプリングアルゴリズムに基づいて行い得る。目の生理学的特性サンプリングアルゴリズムは、アイセンサによって収集されたユーザの目の生理学的特性のうちの1つまたは複数を使用して、ユーザの識別情報を検証し得る。例示的な目の生理学的特性は、眼紋および虹彩特性を含み得る。目の生理学的特性サンプリングアルゴリズムは、眼紋サンプリングアルゴリズムおよび虹彩サンプリングアルゴリズムを含み得る。
【0027】
アイセンサは、VRデバイスに内蔵され得る、VRデバイスから分離されているが通信可能なように結合され得る、またはスマートフォンなどのモバイルデバイスに統合され得る。いくつかのケースにおいては、VRデバイスは、ヘッドセットと通信し得るスマートフォンを挿入またはスライドインすることによって機能し、携帯電話上で表示される画像をVRシナリオに変換し得る、スライドインタイプのVRヘッドセットであり得る。そのようなケースにおいては、VRデバイスは、目の認識を行うために、内蔵されているアイセンサを当てにし得る。
【0028】
アイセンサは、VRデバイスユーザの目の位置に合わせて据え付けられた光学レンズと、光学レンズ周辺に配置された1つまたは複数のカメラとを含み得る。いくつかのケースにおいては、カメラは、レンズ周辺に均等に配置され得る。カメラは、レンズがユーザの目とカメラとの間に位置していることを保証するために、レンズの外部表面上または他の適切な場所に配置され得る。
【0029】
いくつかのケースにおいては、目の生理学的特性は、ユーザの虹彩である。ユーザの虹彩は、赤外線の光源の下で撮像され得る。そのため、レンズ周辺に配置されたカメラは、赤外線カメラであり得る。いくつかのケースにおいては、目の生理学的特性はユーザの眼紋であり、そのようなケースにおいては、カメラはRGBカメラであり得る。
【0030】
いくつかのケースにおいては、目の生理学的特性を収集するためにアイセンサを起動すると、VRデバイスは、VRデバイスの内部周辺光による影響を受け得る。アイセンサは、レンズ周辺に均等に配置された1つまたは複数のカメラと一対一の対応関係を有する1つまたは複数のLED光源をさらに含み得る。いくつかのケースにおいては、虹彩が目の生理学的特性として使用される場合には、LED光源は赤外線LED光源であり得る。
【0031】
VRデバイスはまた、VRデバイス内部の周辺光の光度を検知する光センサを含み得る。光度が目の生理学的特性の撮像に影響を与え得る所定の値を下回る場合には、VRデバイスは、LED光源のうちの1つまたは複数を点灯して、1つまたは複数のカメラに対する一対一の光補償を行い、VRデバイス内部の比較的悪い光条件を補償し得る。
【0032】
いくつかのケースにおいては、VRデバイスの物理的な寸法がカメラとユーザの目との間で不十分な被写界深度を引き起こし得る、その結果、カメラは虹彩または眼紋に正確に焦点を当てることができなくなる。そのようなケースにおいては、1つまたは複数のマクロレンズカメラを使用し得る。あるいは、焦点距離を適応的に調整するために、1つまたは複数の追加の光学レンズが、VRデバイスの内部形状(例えば、VRヘッドセットの空洞)に基づいて、ユーザの目から来る光線を反射または屈折するために、ユーザの目とレンズとの間の位置に据え付けられ得る。いくつかのケースにおいては、内視鏡などの特別なレンズが、ユーザの虹彩または眼紋の特徴を収集するために使用され得る。いくつかのケースにおいては、ユーザは、カメラの焦点距離を手動で調整して正確な虹彩または眼紋画像を取得し得る。120から、方法100は130に進む。
【0033】
130において、取得した1つまたは複数の目の生理学的特性を1つまたは複数の事前に記憶されている目の生理学的特性サンプルと比較する。いくつかのケースにおいては、ユーザは、VRデバイスを使用して、サービスアカウント登録中に1つまたは複数の目の生理学的特性サンプルを取得し得る。1つまたは複数の目の生理学的特性サンプルが、オフライン生体認証を可能にするアプリケーションのためにローカルに保存され得る、または、オンライン認証のためのサービスサーバに送信されることになる認証要求に含まれ得る。例えば、サービスがVR支払いサービスである場合には、ユーザのサービスアカウントは、支払いアカウントであり得る。VRデバイスは、統合されているアイセンサを使用して、支払いアカウント登録中にユーザの目の生理学的特性サンプルを取得し、サンプルをローカルまたは支払いサーバに保存し得る。目の生理学的特性サンプルは、ユーザの支払いアカウントと関連付けられ得る。
【0034】
いくつかのケースにおいては、ユーザは、VRデバイスを使用するためにユーザアカウントにログインし得る。VRデバイスは、サービスサーバに登録メッセージとして目の生理学的特性サンプルとVRデバイスユーザアカウントログイン情報とを送信し得る。サーバは、受信した情報を使用して、ユーザの目の生理学的特性サンプルをそのサービスアカウントに関連付け、目の生理学的特性サンプルを生体特性データベースに保存し得る。いくつかのケースにおいては、ユーザアカウントは、サービスアカウントと同一であり得る。
【0035】
いくつかのケースにおいては、目の生理学的特性をVRデバイスによって収集した後に、VRデバイスは、サービスサーバへの生体認識要求を生成し得る。生体認識要求は、ユーザのユーザ情報またはサービスアカウント情報とアイセンサによって取得された目の生理学的特性とを含み得る。サービスサーバは、要求を受信するためにVRデバイスに生体認識インターフェースを提供し、要求をサーバに送信し得る。いくつかのケースにおいては、サービスサーバは生体認識サーバと連携し得るし、生体認識インターフェースが生体認識サーバによって提供され得る。130から、方法100は140に進む。
【0036】
140において、VRデバイスユーザが、1つまたは複数の目の生理学的特性が1つまたは複数の事前に記憶されている目の生理学的特性サンプルの少なくとも一部と一致する場合には、認証される。生体認識要求を受信した後に、サービスサーバは、要求を解析し、目の生理学的特性およびユーザアカウント情報を獲得し、目の生理学的特性を生体特性データベースに記憶されている目の生理学的特性サンプルと比較し得る。いくつかのケースにおいては、目の生理学的特性が目の生理学的特性サンプルの少なくとも一部と一致する場合には、サービスサーバは、受信したユーザアカウント情報がマッチング生体サンプルに関連付けられたアカウントと一致しているかどうかをさらに検証し得る。生体情報およびユーザアカウント情報を生体特性データベースに記憶されている対応情報と比較した後に、サービスサーバは、認証結果をVRデバイスに返信し得る。認証結果は、ブーリアン型の戻り値(すなわち、falseまたはtrue)として返信され得る。生体情報およびユーザアカウント情報のうちの一方または両方が生体特性データベースに記憶されている対応情報と一致している場合には、生体認証が成功したことを示すために「true」値が返信され得る。さもなければ、生体認証が失敗したことを示すために「false」値が返信され得る。
【0037】
いくつかのケースにおいては、VRデバイスは、ローカルで生体認証を行い得る。ユーザの目の生理学的特性は、生体情報登録(例えば、VRデバイス上でユーザアカウントに眼紋情報を登録する処理)中にVRデバイスに保存され得る。ユーザがVRシナリオにおけるサービスを開始した後に、VRデバイスは、ユーザの目の生理学的特性を収集し、目の生理学的特性を生体情報登録の間に保存された目の生理学的特性サンプルと比較し得る。保存されている情報の少なくとも一部と目の生理学的特性が一致する場合には、サービスのための生体認証は成功となる。さもなければ、生体認証は失敗となる。
【0038】
いくつかのケースにおいては、VRデバイスは、強化されたセキュリティのためにサービスサーバに登録メッセージを送信する前に追加の生体認証を行い得る。例えば、VRデバイスは、ユーザの登録メッセージをサービスサーバに送信する前にユーザの識別情報を検証するために、パスワードまたは他のセキュリティ情報を入力するようにユーザに指示得る。このプロセスは、認証されていないユーザが彼らの生体情報を不正に登録して認証済みのユーザのユーザアカウントと紐付けることを防ぎ得る。サービス登録の後に、VRデバイスは、ユーザがサービスを開始した後に、ユーザの目の生理学的特性サンプルに基づいて生体認証を開始し得る。
【0039】
いくつかのケースにおいては、VRデバイスは、VRデバイスが本物の人物によって現在使用されていることを保証するために、生体情報を収集する前にバイオアッセイプロセスを行い得る。このプロセスは、認証されていないユーザが生体認証のために認証済みのユーザの眼紋または虹彩画像を使用して認証済みのユーザのサービスアカウントに不正にアクセスすることを防ぎ得る。例示的なバイオアッセイプロセスは、まばたきまたはハートビート認識を含み得る。
【0040】
本物のユーザがバイオアッセイプロセスを使用して検出された後に、VRデバイスは、サービスアカウントにアクセスするために生体認証を行うようにユーザに指示し得る。例えば、VR支払いサービスを再び使用して、VRデバイスは、「支払い認証のためにあなたの虹彩をスキャンしてください」などといったテキストプロンプトをVRシナリオにおいて提示し得る。140の後に、方法100は150に進む。
【0041】
150において、サービスを行うためにサーバと通信する。生体認証が成功した(例えば、戻り値が「true」である)場合には、VRデバイスは、サービスに関連しているデータを収集するためにサービスに対応するサービスインターフェースを提示し、サービス要求を確立し、サービスアクセスインターフェースを介してサービスサーバにサービス要求を送信し、サービスを行うために必要に応じてサービスサーバとさらなるインタラクションを行い得る。
【0042】
例えば、VR支払いサービスを再び使用して、VRデバイスは、ユーザ名称、注文情報、および価格などの支払い関連データを収集するために支払いインターフェースを提示し、その後、支払い処理要求を生成して支払い処理要求をサービスサーバに送信し得る。サービスサーバは、要求を処理して支払いを完遂し得る。
【0043】
以下の例では、目の生理学的特性に基づいた生体認証がどのようにしてより安全で、より高速で、より簡潔なサービスエクスペリエンスをユーザに提供することができるかを示すために、VRショッピングを使用する。使用される目の生理学的特性が眼紋であると仮定する。VRショッピングのためのサービスは、ALIPAYなどの支払いサービスであり得る。仮想要素は、VRショッピングシナリオにおいて提示される仮想ボタンであり得る。支払いサービスのためのサーバは、サーバクラスタに基づいたALIPAYプラットフォームなどの支払いサーバであり得る。
【0044】
ユーザは、ユーザアカウントまたは支払いアカウントを使用してVRデバイスにまずログインし、ユーザの眼紋を支払いアカウントに関連付けるためにVRデバイス上で眼紋登録を完了し得る。ユーザのアカウント情報および対応する眼紋情報を支払いサーバ上の生体特性データベースに記憶し得る。眼紋登録の後に、ユーザは、VR環境における生体認証のために彼らの指を使用し得る。
【0045】
VRショッピングのためにVRデバイスを身につけている場合には、売り出し中のアイテムがVRシナリオにおけるユーザに提示され得るし、ユーザは、アイテムリストをめくって調べ得る、アイテムを選択し得る、またはジェスチャもしくは頭の動きを使用してアイテムをショッピングカートに追加し得る。いくつかのケースにおいては、アイテムが選択された場合またはユーザのショッピングカートに追加された場合には、精算または支払いのための仮想ボタン(すなわち、仮想要素)が提示され得る。ユーザは、再び、ジェスチャまたは頭の動きを使用して動作焦点(例えば、カーソル)を仮想ボタンに移動し、所定のジェスチャまたは頭の動きを使用して仮想ボタンを選択し得る。
【0046】
支払いサービスは、サービスがユーザの音声コマンドによって開始された後に、開始され得る。いくつかのケースにおいては、VRデバイスは、バイオアッセイプロセスを行って、VRデバイスの本物のユーザが存在しているかどうかを決定し得る。そうである場合には、VRデバイスは、VRシナリオにおいて「支払い認証のためにあなたの目を開いたままにしてください」というメッセージを指示し得る。
【0047】
目の生理学的特性を収集した後に、VRデバイスは、収集した眼紋情報を含む生体認証要求とユーザのユーザ情報または支払いアカウント情報とを支払いサーバに送信し得る。支払いサーバは、眼紋情報を眼紋登録中に生体特性データベースに記憶された眼紋情報と比較し得る。受信した眼紋情報がデータベースに記憶されているユーザアカウントに関連付けられた眼紋と一致し、支払いアカウント情報が保存されているユーザアカウント情報と一致する場合には、支払いサーバは、眼紋認証が成功したことを示すために、ブーリアン型の「true」値をVRデバイスに返信し得る。
【0048】
支払いが成功したことが確認された後に、VRデバイスは、支払いサービスに関連しているユーザ名、注文情報、および支払い額などの支払いデータを入力するためにユーザのための支払いインターフェースを提示し、支払い処理要求を生成して支払いサーバに送信し得る。支払いサーバは、支払いを処理して、購入を完遂し得る。
【0049】
いくつかのケースにおいては、「小額については認証不要」の支払いプロセスが、支払い速度をさらに促進するために使用され得る。例えば、ユーザが音声コマンドを使用して支払いサービスを開始する場合には、VRデバイスは、アイテムの価格を照合し、支払い額が事前に設定された金額(例えば、20USD)未満であるかどうかを決定し得る。支払い額が事前に設定された金額未満である場合には、VRデバイスは、生体認証無しで直ちに支払い処理要求を生成して支払いサーバに送信し得る。さもなければ、ユーザは、支払いサービスを使用し得る前に、生体認証を行う必要があり得る。130の後に、方法100は終了する。
【0050】
図2は、本開示の実施形態による、説明したアルゴリズム、方法、関数、プロセス、フロー、および手順に関連する計算機能性を提供するために使用される、コンピュータ実施システム200の例を図示しているブロック図である。図示した実施形態においては、システム200は、コンピュータ202およびネットワーク230を含む。
【0051】
図示したコンピュータ202は、コンピューティングデバイスの物理もしくは仮想インスタンス、またはコンピューティングデバイスの物理もしくは仮想インスタンスの組合せを含む、サーバ、デスクトップコンピュータ、ラップトップ/ノードブックコンピュータ、無線データポート、スマートフォン、携帯情報端末(PDA)、タブレットコンピュータ、これらのデバイス内の1つまたは複数のプロセッサ、別のコンピューティングデバイス、またはコンピューティングデバイスの組合せなどといった、任意のコンピューティングデバイスを含むことを意図している。加えて、コンピュータ202は、ユーザ情報を受け取ることができる、キーパッド、キーボード、タッチスクリーン、別の入力デバイス、または入力デバイスの組合せなどの入力デバイスと、グラフィックタイプのユーザインターフェース(UI)(もしくはGUI)または他のUI上に、デジタルデータ、視覚、オーディオ、別のタイプの情報、または複数のタイプの情報の組合せを含む、コンピュータ202の動作に関連する情報を伝達する出力デバイスとを含み得る。
【0052】
コンピュータ202は、本開示において説明した発明特定事項を行うためのクライアント、ネットワークコンポーネント、サーバ、データベースもしくは別の持続性手段、別の役割、または役割の組合せとして分散コンピューティングシステムにおける役割を果たし得る。図示したコンピュータ202は、ネットワーク230と通信可能なように結合される。いくつかの実施形態においては、コンピュータ202の1つまたは複数のコンポーネントは、クラウドコンピューティングベース、ローカル、グローバル、別の環境、または環境の組合せを含む、環境内で動作するように構成され得る。
【0053】
高次においては、コンピュータ202は、説明した発明特定事項に関連するデータおよび情報を受信、送信、処理、記憶、または管理するように動作可能な電子コンピューティングデバイスである。いくつかの実施形態によれば、コンピュータ202はまた、アプリケーションサーバ、電子メールサーバ、ウェブサーバ、キャッシュサーバ、ストリーミングデータサーバ、別のサーバ、またはサーバの組合せを含む、サーバを含み得るまたはそのようなサーバと通信可能なように結合され得る。
【0054】
コンピュータ202は、(例えば、別のコンピュータ202上で動作しているクライアントソフトウェアアプリケーションから)ネットワーク230を介して要求を受信し、ソフトウェアアプリケーションまたはソフトウェアアプリケーションの組合せを使用して受信した要求を処理することによって受信した要求に応答する。加えて、要求はまた、内部ユーザから(例えば、コマンドコンソールからまたは別の内部アクセス方法によって)、外部もしくはサードパーティ、または他のエンティティ、個人、システム、もしくはコンピュータからコンピュータ202に送信され得る。
【0055】
コンピュータ202のコンポーネントの各々は、システムバス203を使用して通信し得る。いくつかの実施形態においては、ハードウェア、ソフトウェア、またはハードウェアの組合せおよびソフトウェアを含む、コンピュータ202のコンポーネントのいずれかまたはすべては、アプリケーションプログラミングインターフェース(API)212、サービスレイヤ213、またはAPI212とサービスレイヤ213との組合せを使用してシステムバス203を介したインターフェースで接続している。API212は、ルーチン、データ構造、およびオブジェクトクラスのための仕様を含み得る。API212は、コンピュータ言語的に独立したものか依存したもののいずれかであり得るし、インターフェース全体、単一の機能、またはAPIのセットさえも指し得る。サービスレイヤ213は、コンピュータ202またはコンピュータ202に通信可能なように結合されている他のコンポーネント(図示していてもいなくても)にソフトウェアサービスを提供する。コンピュータ202の機能性は、サービスレイヤ213を使用してすべてのサービス顧客に対してアクセス可能となり得る。サービスレイヤ213によって提供されているものなどといった、ソフトウェアサービスは、所定のインターフェースを介して再利用可能な所定の機能性を提供している。例えば、インターフェースは、拡張マークアップ言語(XML)フォーマット、別のフォーマット、またはフォーマットの組合せでデータを提供する、JAVA(登録商標)、C++、別のコンピューティング言語、またはコンピューティング言語の組合せで書かれたソフトウェアであり得る。コンピュータ202の統合されたコンポーネントとして図示しているが、代替の実施形態では、コンピュータ202の他のコンポーネントまたはコンピュータ202に通信可能なように結合されている他のコンポーネント(図示していてもいなくても)に関連するスタンドアロンコンポーネントとしてAPI212またはサービスレイヤ213を図示することもできる。さらに、API212またはサービスレイヤ213の任意またはすべてのパーツを、本開示の範囲から逸脱しない限り、別のソフトウェアモジュールの子モジュールまたはサブモジュール、企業アプリケーション、またはハードウェアモジュールとして実装し得る。
【0056】
コンピュータ202は、インターフェース204を含む。単一のインターフェース204として図示しているが、2つ以上のインターフェース204が、特定のニーズ、要望、またはコンピュータ202の特定の実施形態に従って使用され得る。インターフェース204は、分散環境におけるネットワーク230と通信可能なようにリンクしている別のコンピューティングシステム(図示していてもいなくても)と通信するためにコンピュータ202によって使用される。一般的に、インターフェース204は、ネットワーク230と通信するように動作可能であり、ソフトウェアで符号化されたロジック、ハードウェア、またはソフトウェアとハードウェアとの組合せを含む。より詳細には、インターフェース204は、ネットワーク230またはインターフェース204のハードウェアが図示したコンピュータ202の内部および外部の物理信号を通信するように動作可能となるように、通信に関連する1つまたは複数の通信プロトコルをサポートするソフトウェアを含み得る。
【0057】
コンピュータ202は、プロセッサ205を含む。単一のプロセッサ205として図示しているが、2つ以上のプロセッサ205が、特定のニーズ、要望、またはコンピュータ202の特定の実施形態に従って使用され得る。一般的に、プロセッサ205は、命令を実行し、データを操作してコンピュータ202の動作および本開示において説明したような任意のアルゴリズム、方法、関数、プロセス、フロー、および手順を行う。
【0058】
コンピュータ202はまた、コンピュータ202のためのデータ、ネットワーク230(図示していてもいなくても)と通信可能なようにリンクされた別のコンポーネント、またはコンピュータ202と別のコンポーネントとの組合せを保持し得る、データベース206を含む。例えば、データベース206は、本開示と矛盾しない、データを記憶しているインメモリ、従来型、または別のタイプのデータベースであり得る。いくつかの実施形態においては、データベース206は、特定のニーズ、要望、またはコンピュータ202の特定の実施形態およびその説明した機能性による、2つ以上の異なるデータベースタイプ(例えば、インメモリおよび従来型データベースのハイブリッド)の組合せであり得る。単一のデータベース206として図示しているが、同一または異なるタイプの2つ以上のデータベースが、特定のニーズ、要望、またはコンピュータ202の特定の実施形態およびその説明した機能性に従って使用され得る。データベース206をコンピュータ202の統合コンポーネントとして図示しているが、代替の実施形態においては、データベース206はコンピュータ202の外部に存在し得る。
【0059】
コンピュータ202はまた、コンピュータ202のためのデータ、ネットワーク230(図示していてもいなくても)と通信可能なようにリンクされた別のコンポーネントもしくはコンポーネント、またはコンピュータ202と別のコンポーネントとの組合せを保持し得る、メモリ207を含む。メモリ207は、本開示と矛盾しない任意のデータを記憶し得る。いくつかの実施形態においては、メモリ207は、特定のニーズ、要望、またはコンピュータ202の特定の実施形態およびその説明した機能性による、2つ以上の異なるタイプのメモリ(例えば、半導体と磁気ストレージとの組合せ)の組合せであり得る。単一のメモリ207として図示しているが、同一もしくは異なるタイプの2つ以上のメモリ207が、特定のニーズ、要望、またはコンピュータ202の特定の実施形態およびその説明した機能性に従って使用され得る。メモリ207をコンピュータ202の統合コンポーネントとして図示しているが、代替の実施形態においては、メモリ207はコンピュータ202の外部に存在し得る。
【0060】
アプリケーション208は、本開示において説明した機能性に特に関連する、特定のニーズ、要望、またはコンピュータ202の特定の実施形態に従って機能性を提供する、アルゴリズムに関するソフトウェアエンジンである。例えば、アプリケーション208は、1つまたは複数のコンポーネント、モジュール、またはアプリケーションとして機能を果たし得る。さらに、単一のアプリケーション208として図示しているが、アプリケーション208は、コンピュータ202上の複数のアプリケーション208として実装され得る。加えて、コンピュータ202に統合されているものとして図示しているが、代替の実施形態においては、アプリケーション208は、コンピュータ202の外部に存在し得る。
【0061】
コンピュータ202はまた、電源214を含み得る。電源214は、ユーザ交換可能または非ユーザ交換可能のいずれかとなるように構成され得る、再充電可能または非再充電可能バッテリを含み得る。いくつかの実施形態においては、電源214は、(再充電、スタンバイ、または別の電力管理機能性を含む)電力変換または管理回路を含み得る。いくつかの実施形態においては、電源214は、例えば、コンピュータ202に電力供給するまたは再充電可能バッテリを再充電するために、コンピュータ202が壁のソケットまたは別の電源に差し込むことを可能にする電源プラグを含み得る。
【0062】
各コンピュータ202がネットワーク230を介して通信する、コンピュータ202を含むコンピュータシステムに関連するまたは外部にある任意の数のコンピュータ202が存在する。さらに、「クライアント」、「ユーザ」という用語、または他の適切な専門用語が、本開示の範囲から逸脱しない限り、必要に応じて、相互交換可能に使用され得る。さらに、本開示は、多くのユーザが1つのコンピュータ202を使用し得ること、または、1人のユーザが複数のコンピュータ202を使用し得ることを考慮している。
【0063】
発明特定事項の説明した実施形態は、単独または組合せで1つまたは複数の特徴を含み得る。
【0064】
例えば、第1の実施形態においては、コンピュータ実施方法は、VRアプリケーションのVRシナリオにおいてサービスを開始するために仮想現実(VR)デバイスユーザからの1つまたは複数のユーザインタラクションを検出するステップと、ユーザ識別認証のためのVRデバイスユーザの1つまたは複数の目の生理学的特性を取得するステップと、取得した1つまたは複数の目の生理学的特性を1つまたは複数の事前に記憶されている目の生理学的特性サンプルと比較するステップと、1つまたは複数の目の生理学的特性が1つまたは複数の事前に記憶されている目の生理学的特性サンプルの少なくとも一部と一致する場合には、VRデバイスユーザを認証するステップと、サービスを提供および実行するサーバと通信するステップとを含む。
【0065】
上記および他の説明した実施形態は各々、必要に応じて、以下の特徴のうちの1つまたは複数を含み得る。
【0066】
下記の特徴のいずれかと組み合わせることが可能な第1の特徴としては、1つまたは複数のユーザインタラクションは、ジェスチャ、体の動き、または体の姿勢を含む。
【0067】
上記または下記の特徴のいずれかと組み合わせることが可能な第2の特徴としては、1つまたは複数のユーザインタラクションは、音声コマンドを含む。
【0068】
上記または下記の特徴のいずれかと組み合わせることが可能な第3の特徴としては、1つまたは複数の目の生理学的特性は、虹彩特性または眼紋特性を含む。
【0069】
上記または下記の特徴のいずれかと組み合わせることが可能な第4の特徴としては、ユーザを検出するためにバイオアッセイプロセスを行うステップと、ユーザがバイオアッセイプロセスに基づいて検出された場合には、生体認証を行うことをユーザに通知するためにVRシナリオにおいて通知を提示するステップとをさらに含む。
【0070】
上記または下記の特徴のいずれかと組み合わせることが可能な第5の特徴としては、バイオアッセイプロセスは、まばたき認識またはハートビート認識を含む。
【0071】
上記または下記の特徴のいずれかと組み合わせることが可能な第6の特徴としては、1つまたは複数の目の生理学的特性を取得するためにVRシナリオにおいて仮想ガイダンスを提示するステップをさらに含む。
【0072】
上記または下記の特徴のいずれかと組み合わせることが可能な第7の特徴としては、1つまたは複数の目の生理学的特性は、アイセンサによって取得され、アイセンサは、レンズおよび1つまたは複数のカメラを含む。
【0073】
上記または下記の特徴のいずれかと組み合わせることが可能な第8の特徴としては、レンズは、マクロレンズである。
【0074】
上記または下記の特徴のいずれかと組み合わせることが可能な第9の特徴としては、1つまたは複数のカメラは、赤外線カメラである。
【0075】
上記または下記の特徴のいずれかと組み合わせることが可能な第10の特徴としては、1つまたは複数のカメラは、1つまたは複数のLEDライトと組み合わされる。
【0076】
第2の実施形態においては、非一時的コンピュータ可読媒体は、VRアプリケーションのVRシナリオにおいてサービスを開始するために仮想現実(VR)デバイスユーザからの1つまたは複数のユーザインタラクションを検出するステップと、ユーザ識別認証のためのVRデバイスユーザの1つまたは複数の目の生理学的特性を取得するステップと、取得した1つまたは複数の目の生理学的特性を1つまたは複数の事前に記憶されている目の生理学的特性サンプルと比較するステップと、1つまたは複数の目の生理学的特性が1つまたは複数の事前に記憶されている目の生理学的特性サンプルの少なくとも一部と一致する場合には、VRデバイスユーザを認証するステップと、サービスを提供および実行するサーバと通信するステップとを含む動作を行うようにコンピュータシステムによって実行可能な1つまたは複数の命令を記憶している。
【0077】
上記および他の説明した実施形態は各々、必要に応じて、以下の特徴のうちの1つまたは複数を含み得る。
【0078】
下記の特徴のいずれかと組み合わせることが可能な第1の特徴としては、1つまたは複数のユーザインタラクションは、ジェスチャ、体の動き、または体の姿勢を含む。
【0079】
上記または下記の特徴のいずれかと組み合わせることが可能な第2の特徴としては、1つまたは複数のユーザインタラクションは、音声コマンドを含む。
【0080】
上記または下記の特徴のいずれかと組み合わせることが可能な第3の特徴としては、1つまたは複数の目の生理学的特性は、虹彩特性または眼紋特性を含む。
【0081】
上記または下記の特徴のいずれかと組み合わせることが可能な第4の特徴としては、ユーザを検出するためにバイオアッセイプロセスを行うステップと、ユーザがバイオアッセイプロセスに基づいて検出された場合には、生体認証を行うことをユーザに通知するためにVRシナリオにおいて通知を提示するステップとをさらに含む。
【0082】
上記または下記の特徴のいずれかと組み合わせることが可能な第5の特徴としては、バイオアッセイプロセスは、まばたき認識またはハートビート認識を含む。
【0083】
上記または下記の特徴のいずれかと組み合わせることが可能な第6の特徴としては、1つまたは複数の目の生理学的特性を取得するためにVRシナリオにおいて仮想ガイダンスを提示するステップをさらに含む。
【0084】
上記または下記の特徴のいずれかと組み合わせることが可能な第7の特徴としては、1つまたは複数の目の生理学的特性は、アイセンサによって取得され、アイセンサは、レンズおよび1つまたは複数のカメラを含む。
【0085】
上記または下記の特徴のいずれかと組み合わせることが可能な第8の特徴としては、レンズは、マクロレンズである。
【0086】
上記または下記の特徴のいずれかと組み合わせることが可能な第9の特徴としては、1つまたは複数のカメラは、赤外線カメラである。
【0087】
上記または下記の特徴のいずれかと組み合わせることが可能な第10の特徴としては、1つまたは複数のカメラは、1つまたは複数のLEDライトと組み合わされる。
【0088】
第3の実施形態においては、コンピュータ実施システムは、1つまたは複数のコンピュータと、1つまたは複数のコンピュータと相互運用可能なように結合されるとともに、1つまたは複数の命令を記憶している有形非一時的機械可読媒体を有する、1つまたは複数のコンピュータメモリデバイスとを含み、命令は、1つまたは複数のコンピュータによって実行されると、VRアプリケーションのVRシナリオにおいてサービスを開始するために仮想現実(VR)デバイスユーザからの1つまたは複数のユーザインタラクションを検出するステップと、ユーザ識別認証のためのVRデバイスユーザの1つまたは複数の目の生理学的特性を取得するステップと、取得した1つまたは複数の目の生理学的特性を1つまたは複数の事前に記憶されている目の生理学的特性サンプルと比較するステップと、1つまたは複数の目の生理学的特性が1つまたは複数の事前に記憶されている目の生理学的特性サンプルの少なくとも一部と一致する場合には、VRデバイスユーザを認証するステップと、サービスを提供および実行するサーバと通信するステップとを含む1つまたは複数の動作を行う。
【0089】
上記および他の説明した実施形態は各々、必要に応じて、以下の特徴のうちの1つまたは複数を含み得る。
【0090】
下記の特徴のいずれかと組み合わせることが可能な第1の特徴としては、1つまたは複数のユーザインタラクションは、ジェスチャ、体の動き、または体の姿勢を含む。
【0091】
上記または下記の特徴のいずれかと組み合わせることが可能な第2の特徴としては、1つまたは複数のユーザインタラクションは、音声コマンドを含む。
【0092】
上記または下記の特徴のいずれかと組み合わせることが可能な第3の特徴としては、1つまたは複数の目の生理学的特性は、虹彩特性または眼紋特性を含む。
【0093】
上記または下記の特徴のいずれかと組み合わせることが可能な第4の特徴としては、ユーザを検出するためにバイオアッセイプロセスを行うステップと、ユーザがバイオアッセイプロセスに基づいて検出された場合には、生体認証を行うことをユーザに通知するためにVRシナリオにおいて通知を提示するステップとをさらに含む。
【0094】
上記または下記の特徴のいずれかと組み合わせることが可能な第5の特徴としては、バイオアッセイプロセスは、まばたき認識またはハートビート認識を含む。
【0095】
上記または下記の特徴のいずれかと組み合わせることが可能な第6の特徴としては、1つまたは複数の目の生理学的特性を取得するためにVRシナリオにおいて仮想ガイダンスを提示するステップをさらに含む。
【0096】
上記または下記の特徴のいずれかと組み合わせることが可能な第7の特徴としては、1つまたは複数の目の生理学的特性は、アイセンサによって取得され、アイセンサは、レンズおよび1つまたは複数のカメラを含む。
【0097】
上記または下記の特徴のいずれかと組み合わせることが可能な第8の特徴としては、レンズは、マクロレンズである。
【0098】
上記または下記の特徴のいずれかと組み合わせることが可能な第9の特徴としては、1つまたは複数のカメラは、赤外線カメラである。
【0099】
上記または下記の特徴のいずれかと組み合わせることが可能な第10の特徴としては、1つまたは複数のカメラは、1つまたは複数のLEDライトと組み合わされる。
【0100】
本明細書において説明した発明特定事項および機能動作の実施形態は、本明細書において開示した構造およびそれらの構造的均等物を含む、デジタル電子回路の形で、有形に具現化されたコンピュータソフトウェアまたはファームウェアの形で、コンピュータハードウェアの形で、またはそれらの組合せのうちの1つまたは複数で実装され得る。説明した発明特定事項のソフトウェア実施形態は、1つまたは複数のコンピュータプログラムとして実装され得る、すなわち、コンピュータもしくはコンピュータ実施システムによる実行のためにまたはコンピュータもしくはコンピュータ実施システムの動作を制御する実行のために有形非一時的コンピュータ可読媒体上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。あるいは、または加えて、プログラム命令は、コンピュータまたはコンピュータ実施システムによる実行のために受信機装置への伝送のための情報を符号化するために生成された、例えば、機械生成された電気、光学、または電磁気信号といった、人為的に生成した伝搬信号内に/上に符号化され得る。コンピュータ記憶媒体は、機械可読ストレージデバイス、機械可読ストレージ回路基板、ランダムもしくはシリアルアクセスメモリデバイス、またはコンピュータ記憶媒体の組合せであり得る。1つまたは複数のコンピュータを構成するということは、ソフトウェアが1つまたは複数のコンピュータによって実行される際に、特定のコンピューティング動作が行われるように、1つまたは複数のコンピュータがハードウェア、ファームウェア、もしくはソフトウェア(またはハードウェア、ファームウェア、およびソフトウェアの組合せ)を導入済みであることを意味する。
【0101】
「リアルタイム」、「実時間」、「即時」、「リアル(ファスト)タイム(RFT)」、「ニアリアルタイム(NRT)」、「擬似リアルタイム」という用語、または(当業者によって理解されているような)同様の用語は、アクションとレスポンスとが実質的に同時に生じたと個人が知覚するようにアクションとレスポンスとが時間的にほぼ同時となっていることを意味している。例えば、データにアクセスする個人のアクションを受けてのデータの表示に対するレスポンスについての(または表示の開始についての)時間差は、1ミリ秒(ms)未満、1秒未満、または5秒未満であり得る。要求されたデータを、即座に表示する(または表示について開始する)必要はないが、説明したコンピューティングシステムの処理限界と、例えば、データを、収集、正確に評価、分析、処理、記憶、または送信するのに必要な時間とを考慮しつつも、いかなる意図的な遅延もなく表示する(または表示について開始する)。
【0102】
「データ処理装置」、「コンピュータ」、または「電子コンピュータデバイス」という用語(または当業者によって理解される同等の用語)は、データ処理ハードウェアを指し、例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、あらゆる種類のデータを処理するための装置、デバイス、およびマシンを含む。コンピュータはまた、特殊用途ロジック回路、例えば、中央処理ユニット(CPU)、FPGA(フィールドプログラマブルゲートアレイ)、またはASIC(特定用途向け集積回路)であり得るまたはさらに含み得る。いくつかの実施形態においては、コンピュータもしくはコンピュータ実施システムまたは特殊用途ロジック回路(またはコンピュータもしくはコンピュータ実施システムもしくは特殊用途ロジック回路の組合せ)は、ハードウェアベースまたはソフトウェアベース(またはハードウェアベースおよびソフトウェアベースの両方の組合せ)であり得る。コンピュータは、必要に応じて、コンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、または実行環境の組合せを構成するコードを含み得る。本開示は、例えば、LINUX、UNIX(登録商標)、WINDOWS(登録商標)、MAC OS、ANDROID(登録商標)、IOS、別のオペレーティングシステム、またはオペレーティングシステムの組合せといった、いくつかのタイプのオペレーティングシステムを有するコンピュータまたはコンピュータ実施システムの使用を考慮している。
【0103】
プログラム、ソフトウェア、ソフトウェアアプリケーション、ユニット、モジュール、ソフトウェアモジュール、スクリプト、コード、または他のコンポーネントとも称し得るまたは記載され得る、コンピュータプログラムは、コンパイル型もしくはインタプリタ型言語、または宣言型もしくは手続き型言語を含む、任意の形式のプログラミング言語で書かれ得るし、コンピューティング環境において使用するために、例えば、スタンドアロンプログラム、モジュール、コンポーネント、またはサブルーチンとして、といったことを含む任意の形式で、デプロイされ得る。コンピュータプログラムは、ファイルシステム内のファイルに対応し得るが、必ずしも必要ではない。プログラムは、例えば、マークアップ言語ドキュメントに記憶されている1つまたは複数のスクリプトといった、他のプログラムまたはデータを保持するファイルの一部に、当該のプログラム専用の単一のファイルに、または、例えば、1つまたは複数のモジュール、サブプログラム、またはコードの部分を記憶するファイルといった、複数の協調ファイルに、記憶され得る。コンピュータプログラムは、1つのコンピュータ上で、または、1つのサイトに位置しもしくは複数のサイトわたって分散され、通信ネットワークによって相互接続された、複数のコンピュータ上で、実行されるようにデプロイされ得る。
【0104】
様々な図に示したプログラムの部分は、様々なオブジェクト、方法、または他のプロセスを使用して説明した特徴および機能性を実施する、ユニットまたはモジュールなどの、個々のコンポーネントであり得る一方で、プログラムは、必要に応じて、代わりに、多数のサブユニット、サブモジュール、サードパーティサービス、コンポーネント、ライブラリ、および他のコンポーネントを含み得る。反対に、様々なコンポーネントの特徴および機能性は、必要に応じて、単一のコンポーネントに組合され得る。計算による決定を行うために使用される閾値は、静的に、動的に、または静的および動的の両方で決定され得る。
【0105】
説明した方法、プロセス、またはロジックフローは、本開示と矛盾しない機能性の1つまたは複数の例を表し、開示を説明または図示した実施形態に限定することを意図しておらず、説明した原理および特徴と矛盾しない最大の範囲として扱われるべきである。説明した方法、プロセス、またはロジックフローは、入力データを操作して出力データを生成することによって機能を行うように1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルコンピュータによって行われ得る。方法、プロセス、またはロジックフローはまた、例えば、CPU、FPGA、またはASICといった、特殊用途ロジック回路によって行われ得るし、コンピュータはまた、そのような特殊用途ロジック回路として実装され得る。
【0106】
コンピュータプログラムの実行のためのコンピュータは、汎用または特殊用途マイクロプロセッサ、その両方、または別のタイプのCPUに基づき得る。一般的に、CPUは、命令およびデータをメモリから受信しメモリに書き込むことになる。コンピュータの必須の要素は、命令を行うまたは実行するためのCPUと、命令およびデータを記憶するための1つまたは複数のメモリデバイスとである。一般的に、コンピュータはまた、例えば、磁気、光磁気ディスク、または光ディスクといった、データを記憶するための1つまたは複数のマスストレージデバイスを含むことになる、または、そのようなマスストレージデバイスからデータを受信もしくはそのようなマスストレージデバイスにデータを送信もしくはその両方を行うことが動作可能なように結合されることになる。ただし、コンピュータは、そのようなデバイスを必ずしも有する必要はない。さらに、コンピュータは、例えば、モバイル電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブルメモリストレージデバイスといった、別のデバイスに組み込まれ得る。
【0107】
コンピュータプログラム命令およびデータを記憶するための非一時的コンピュータ可読媒体は、例として、例えば、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、相変化メモリ(PRAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、消去可能プログラマブルリードオンリーメモリ(EPROM)、電気的消去可能プログラマブルリードオンリーメモリ(EEPROM)、およびフラッシュメモリデバイスといった、半導体メモリデバイスと、例えば、テープ、カートリッジ、カセット、内部/リムーバブルディスクといった、磁気デバイスと、光磁気ディスクと、例えば、デジタル多用途ディスク/デジタルビデオディスク(DVD)、コンパクトディスク(CD) ROM、DVD+/-R、DVD-RAM、DVD-ROM、高精細/高密度(HD)-DVD、およびBLU-RAY/BLU-RAY DISC(BD)といった、光学メモリデバイスと、他の光学メモリ技術とを含む、すべての形式の永続的/非永続的または揮発性/不揮発性メモリ、メディア、およびメモリデバイスを含み得る。メモリは、キャッシュ、クラス、フレームワーク、アプリケーション、モジュール、バックアップデータ、ジョブ、ウェブページ、ウェブページテンプレート、データ構造、データベーステーブル、動的情報を記憶するリポジトリ、または、任意のパラメータ、変数、アルゴリズム、命令、ルール、制約、もしくは参照を含む、他の適切な情報を含む、様々なオブジェクトまたはデータを記憶し得る。加えて、メモリは、ログ、ポリシー、セキュリティもしくはアクセスデータ、または報告ファイルなどといった、他の適切なデータを含み得る。プロセッサおよびメモリは、特殊用途ロジック回路によって補完され得る、またはそれに組み込まれ得る。
【0108】
ユーザとのインタラクションを提供するために、本明細書において説明した発明特定事項の実施形態は、ユーザに情報を表示するための、例えば、CRT(陰極線管)、LCD(液晶ディスプレイ)、LED(発光ダイオード)、またはプラズマモニタといった、表示デバイスと、ユーザがコンピュータに入力を提供することを可能にする、例えば、マウス、トラックボール、またはトラックパッドといった、キーボードおよびポインティングデバイスとを有するコンピュータ上で実施され得る。入力はまた、感圧性のタブレットコンピュータサーフェスなどのタッチスクリーン、静電容量式もしくは電気式センシングを使用するマルチタッチスクリーン、または別のタイプのタッチスクリーンを使用して、コンピュータに提供され得る。他のタイプのデバイスは、ユーザとのインタラクションを行うために使用され得る。例えば、ユーザに提供されるフィードバックは、任意の形式の感覚フィードバック(視覚、聴覚、触覚、またはフィードバックタイプの組合せなど)であり得る。ユーザからの入力は、音響、音声、または触覚入力を含む任意の形式で受信され得る。加えて、コンピュータは、ユーザによって使用されるクライアントコンピューティングデバイスにドキュメントを送信することおよびそのようなクライアントコンピューティングデバイスからドキュメントを受信することによって(例えば、ユーザのモバイルコンピューティングデバイス上のウェブブラウザから受信した要求に応答してウェブブラウザにウェブページを送信することによって)、ユーザとのインタラクションを行い得る。
【0109】
「グラフィックユーザインターフェース」または「GUI」という用語は、1つまたは複数のグラフィックユーザインターフェースおよび特定のグラフィックユーザインターフェースのディスプレイの各々を説明するために単数形または複数形で使用され得る。したがって、GUIは、情報を処理してユーザにその情報の結果を効率的に提示する、ウェブブラウザ、タッチスクリーン、またはコマンドラインインターフェース(CLI)を含むがそれらに限定されない、任意のグラフィックユーザインターフェースを表し得る。一般に、GUIは、多数のユーザインターフェース(UI)要素を含み得るし、その一部またはすべては、インタラクティブフィールド、プルダウンリスト、およびボタンなどといった、ウェブブラウザに関連付けられる。これらのおよび他のUI要素は、ウェブブラウザの機能に関連し得るまたは表し得る。
【0110】
本明細書において説明した発明特定事項の実施形態は、例えば、データサーバのような、バックエンドコンポーネントを含む、または、例えば、アプリケーションサーバといった、ミドルウェアコンポーネントを含む、または、例えば、ユーザが本明細書において説明した発明特定事項の実施形態とやり取りすることを可能にするグラフィックユーザインターフェースまたはWebブラウザを有するクライアントコンピュータといった、フロントエンドコンポーネントを含む、または、1つまたは複数のそのようなバックエンド、ミドルウェア、またはフロントエンドコンポーネントの任意の組合せを含む、コンピューティングシステムの形式で実装され得る。システムのコンポーネントは、例えば、通信ネットワークといった、任意の形式または媒体の有線もしくは無線デジタルデータ通信(またはデータ通信の組合せ)によって相互接続され得る。通信ネットワークの例としては、ローカルエリアネットワーク(LAN)、無線アクセスネットワーク(RAN)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WIMAX)、例えば、802.11a/b/g/nもしくは802.20(または、802.11xと802.20との組合せもしくは本開示と矛盾しない他のプロトコル)を使用する無線ローカルエリアネットワーク(WLAN)、インターネット、別の通信ネットワーク、または通信ネットワークの組合せのすべてまたは一部を含む。通信ネットワークは、ネットワークノード間で、例えば、インターネットプロトコル(IP)のパケット、フレームリレーのフレーム、非同期転送モード(ATM)のセル、音声、ビデオ、データ、または他の情報を用いて通信し得る。
【0111】
コンピューティングシステムは、クライアントとサーバとを含み得る。クライアントとサーバとは、一般的に互いにリモートにあり、通常は通信ネットワークを介してやりとりする。クライアントとサーバとの関係は、それぞれのコンピュータ上で動作し互いにクライアントサーバ関係を有するコンピュータプログラムによって生まれる。
【0112】
本明細書は多くの特定の実施形態詳細を含んでいるが、これらを、任意の発明の範囲または主張することができる範囲に対する制限として解釈すべきではなく、むしろ特定の発明の特定の実施形態に固有のものであり得る特徴の説明として解釈すべきである。別個の実施形態に即して本明細書において説明したある特徴もまた、組み合わせてまたは単一の実施形態で実施され得る。反対に、単一の実施形態に即して説明した様々な特徴もまた、複数の実施形態で、別々に、または任意のサブコンビネーションで実施され得る。さらに、上記で説明した特徴をある組合せで動作するものとして説明することはできるが、たとえ最初はそのように主張していたとしても、いくつかのケースにおいては、主張した組合せのうちの1つまたは複数の特徴を組合せから削除し得るし、主張した組合せをサブコンビネーションまたはサブコンビネーションの変形とし得る。
【0113】
発明特定事項の特定の実施形態を説明してきた。説明した実施形態の他の実施、変更、および置換も、当業者には明らかなように、以下の特許請求の範囲の範囲内にある。動作を特定の順序で図面または特許請求の範囲を説明しているが、このことを、示した特定の順序でもしくは一連の順序でそのような動作を行う必要があると理解すべきではないし、または、望ましい結果を得るために図示した動作のすべてを行う必要があると理解すべきではない(一部の動作はオプションとみなし得る)。ある環境においては、マルチタスク処理または並行処理(またはマルチタスク処理と並行処理との組合せ)が、有利であり得るし、適切とみなされる場合には行われ得る。
【0114】
さらに、上記で説明した実施形態における様々なシステムモジュールおよびコンポーネントの分離または集積が、すべての実施形態においてそのような分離または集積を必要とすると理解すべきではなく、説明したプログラムコンポーネントおよびシステムは一般的に単一のソフトウェア製品に一緒に統合され得るまたは複数のソフトウェア製品にパッケージ化され得ると理解されたい。
【0115】
それゆえ、上記で説明した例示的な実施形態は、本開示を定義または制約するものではない。他の変化、置換、および変更もまた、本開示の精神および範囲から逸脱しない限り可能である。
【0116】
さらに、任意の主張した実施形態は、少なくともコンピュータ実施方法と、コンピュータ実施方法を行うコンピュータ可読命令を記憶している非一時的コンピュータ可読媒体と、コンピュータ実施方法または非一時的コンピュータ可読媒体に記憶された命令を行うように構成されるハードウェアプロセッサと相互運用可能なように結合されたコンピュータメモリを含む、コンピュータシステムとに適用可能となるとみなす。