(57)【特許請求の範囲】
【請求項１】
コンピューティングデバイスであって、
少なくとも１つのプロセッサと、
ディスプレイ画面と、
少なくとも１つのカメラと、
前記少なくとも１つのプロセッサによって実行された時に、前記コンピューティングデバイスに、
前記少なくとも１つのカメラを使用してビデオデータを生成することと、
前記ディスプレイ画面上に、前記ビデオデータが生成されるにつれて、前記ビデオデータの少なくとも一部に基づいたビデオコンテンツを表示することと、
前記ビデオコンテンツ内に表示された少なくとも第１のオブジェクトを認識することと、
複数のグラフィック要素を前記ディスプレイ画面の少なくとも一部分に分散させ、前記複数のグラフィック要素を前記ディスプレイ画面の中で移動または浮遊させることにより、認識モードが始動されていることをユーザに示すことと、
前記少なくとも第１のオブジェクトが認識されているとき、当該少なくとも第１のオブジェクトが認識されていることをユーザに伝えるために、
ｉ）前記複数のグラフィック要素のうちの少なくともいくつかの見え方を変更し又は変更せずに前記複数のグラフィック要素の少なくとも一部を移動させて前記少なくとも第１のオブジェクトの近くに表示させること、
ｉｉ）前記少なくとも第１のオブジェクトに近接する前記複数のグラフィック要素の少なくとも一部をアニメ化された形に形成するように描画すること、
の前記ｉ）及びｉｉ）の少なくともいずれかを行うことと、
前記少なくとも第１のオブジェクトのための、ユーザが選択可能な少なくとも第１のアイコンを、前記ディスプレイ画面上に表示することであって、ユーザが選択可能な前記少なくとも第１のアイコンが、当該ユーザが選択可能な前記少なくとも第１のアイコンの近くの前記ディスプレイ画面上で発生するタッチイベントに応じて、前記コンピューティングデバイスが実行するように構成されている少なくとも第１の動作を伝達し、前記少なくとも第１の動作が、前記少なくとも第１のオブジェクトのタイプに少なくとも部分的に基づく、表示することと、
を行わせる命令を含むメモリと、
を備える、前記コンピューティングデバイス。
【請求項２】
前記命令が、実行されると、前記コンピューティングデバイスに、
ａ）第２のオブジェクトのための、ユーザが選択可能な第２のアイコンを、前記ディスプレイ画面上に表示することであって、ユーザが選択可能な前記第２のアイコンが、当該ユーザが選択可能な前記第２のアイコンの近くの前記ディスプレイ画面上で発生するタッチイベントに応じて、前記コンピューティングデバイスが実行するように構成されている第２の動作を伝達し、前記第２の動作が、前記第２のオブジェクトのタイプに少なくとも部分的に基づく、表示すること、
ｂ）２以上である閾値よりも多い数の、ユーザが選択可能なアイコンが表示のために生成されたことに応じて、ユーザが選択可能な少なくとも１つの過剰なアイコンを、前記ディスプレイ画面から除去することであって、前記過剰なアイコンが、少なくとも１つのナビゲーションアプローチを使用して、前記ユーザが後でアクセス可能である、除去すること、
ｃ）前記コンピューティングデバイスのマイクを使用して音声データを取得し、前記音声データのための、ユーザが選択可能な第３のアイコンを、前記ディスプレイ画面上に表示することであって、ユーザが選択可能な前記第３のアイコンが、当該ユーザが選択可能な前記第３のアイコンの近くの前記ディスプレイ画面上で発生するタッチイベントに応じて、前記コンピューティングデバイスが実行するように構成されている第３の動作を伝達し、前記第３の動作が、前記音声データ内の認識された音声の種類に少なくとも部分的に基づく、表示すること、
の少なくともいずれかをさらに行わせる、請求項１に記載のコンピューティングデバイス。
【請求項３】
前記命令が、実行されると、前記コンピューティングデバイスに、
ユーザが選択可能な前記第１のアイコンが、前記ディスプレイ画面上で、ユーザが次に選択可能なアイコンの上に積み重ねられて見えるように表示されるようにすること、
をさらに行わせる、請求項１に記載のコンピューティングデバイス。
【請求項４】
前記命令が、実行されると、前記コンピューティングデバイスに、
以前に表示されたユーザが選択可能なアイコンについての情報が、前記コンピューティングデバイスによって記憶されるようにすることと、
前記以前に表示されたユーザが選択可能なアイコンが、ユーザが前記ディスプレイ画面上でスワイプ動作を実行したことに応じて、表示されるようにすることであって、前記スワイプ動作が、以前に表示されたユーザが選択可能なアイコンを見つけるために使用され得る、表示されるようにすることと、
をさらに行わせる、請求項１に記載のコンピューティングデバイス。
【請求項５】
前記命令が、実行されると、前記コンピューティングデバイスに、
現在表示されているユーザが選択可能なアイコンと以前に表示されたユーザが選択可能なアイコンとについて記憶されている情報に対して、検索が実行されることを可能にする検索選択肢を提供すること、
をさらに行わせる、請求項１に記載のコンピューティングデバイス。
【請求項６】
コンピューティングデバイスの少なくとも１つのセンサを使用して取得されたセンサデータを取得することと、
前記コンピューティングデバイスの少なくとも１つのプロセッサを使用して、前記取得されたセンサデータ内に表示された少なくとも第１のオブジェクトを認識することと、
複数のグラフィック要素をディスプレイ画面の少なくとも一部分に分散させ、前記複数のグラフィック要素を前記ディスプレイ画面の中で移動または浮遊させることにより、認識モードが始動されていることをユーザに示すことと、
前記少なくとも第１のオブジェクトが認識されているとき、当該少なくとも第１のオブジェクトが認識されていることをユーザに伝えるために、
ｉ）前記複数のグラフィック要素のうちの少なくともいくつかの見え方を変更し又は変更せずに前記複数のグラフィック要素の少なくとも一部を移動させて前記少なくとも第１のオブジェクトの近くに表示させること、
ｉｉ）前記少なくとも第１のオブジェクトに近接する前記複数のグラフィック要素の少なくとも一部をアニメ化された形に形成するように描画すること、
の前記ｉ）及びｉｉ）の少なくともいずれかを行うことと、
前記少なくとも第１のオブジェクトのための、ユーザが選択可能な少なくとも第１のアイコンを、前記ディスプレイ画面上に表示することであって、ユーザが選択可能な前記少なくとも第１のアイコンが、前記コンピューティングデバイスが前記少なくとも第１のオブジェクトに対して実行するように構成されている少なくとも第１の動作を伝達する、表示することと、
を備える、コンピュータで実装された方法。
【請求項７】
ａ）最大で閾値の数までのユーザが選択可能なアイコンを表示し、ここで閾値は少なくとも２であり、そして
ユーザが選択可能な少なくとも１つの過剰なアイコンを、前記ディスプレイ画面から除去することであって、前記過剰なアイコンが、少なくとも１つのナビゲーションアプローチを使用して、前記ユーザが後でアクセス可能である、除去すること、
ｂ）ユーザが選択可能な前記第１のアイコンについての情報を前記コンピューティングデバイス上に記憶し、そして
ユーザが選択可能な前記第１のアイコンを前記ディスプレイ画面に、前記第１のオブジェクトが前記取得されたセンサデータ内にもはや表示されなくなってから少なくとも所定の期間表示すること、
の少なくともいずれかをさらに備える、請求項６に記載のコンピュータで実装された方法。
【請求項８】
前記ディスプレイ画面上に表示された前記第１のオブジェクトの描写物の近くにアニメ化された境界ボックスを形成することによって、前記第１のオブジェクトが認識されていることを示すために、前記複数のグラフィック要素の少なくとも幾つかをアニメ化することであって、前記アニメ化された境界ボックスが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている前記第1の動作を伝達する、アニメ化することと、
をさらに備える、請求項６に記載のコンピュータで実装された方法。
【請求項９】
ユーザが選択可能な前記第１のアイコン上に第１のラベルと第２のラベルとを表示することであって、前記第１のラベルが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている第１の動作を伝達し、前記第２のラベルが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている別の動作を伝達する、表示すること、
をさらに備える、請求項６に記載のコンピュータで実装された方法。
【請求項１０】
ユーザが選択可能な追加的なアイコンによって、ユーザが選択可能なアイコンの表示される数が許容可能な閾値を超えることに応じて、ユーザが選択可能な少なくとも１つのアイコンがディスプレイから除去されること、
をさらに備える、請求項６に記載のコンピュータで実装された方法。
【請求項１１】
前記コンピューティングデバイス上にもはや表示されないユーザが選択可能なアイコンについての情報を自動的に記憶することであって、一旦記憶された前記情報が、スクロール動作、タッチ画面ベースのプル動作、または検索要求のうちの少なくとも１つを使用してアクセス可能である、記憶することと、
をさらに備える、請求項１０に記載のコンピュータで実装された方法。
【請求項１２】
前記取得されたセンサデータ内に表示された以前に認識されたオブジェクトを識別することと、
前記以前に認識されたオブジェクトに対して記憶された情報を使用して、ユーザが選択可能なアイコンが表示されるようにすることと、
をさらに備える、請求項１０に記載のコンピュータで実装された方法。
【請求項１３】
ユーザが選択可能な前記少なくとも第１のアイコンを含む複数のアイコンが、積み重ねられる、または順番に配置される、のうちの少なくとも１つで表示され得る、請求項６に記載のコンピュータで実装された方法。
【請求項１４】
ユーザが選択可能な前記複数のアイコンのうちの少なくともサブセットが、１つより多い動作が前記少なくとも第１のオブジェクトを含む複数のオブジェクトの各オブジェクトに対して実行されることを可能にする、請求項１３に記載のコンピュータで実装された方法。
【請求項１５】
前記１つより多い動作のうちの主動作を、前記ユーザに関連する履歴データに少なくとも部分的に基づいて選択することであって、前記主動作についての情報が、ユーザが選択可能な各アイコン上に表示される、選択すること、
をさらに備える、請求項１４に記載のコンピュータで実装された方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、「Ｒｅｃｏｇｎｉｔｉｏｎ  Ｉｎｔｅｒｆａｃｅｓ  Ｆｏｒ  Ｃｏｍｐｕｔｉｎｇ  Ｄｅｖｉｃｅｓ」という題名の、２０１３年１２月２０日に出願された、それ自体が、２０１３年５月９日に出願された「Ｍｏｂｉｌｅ  Ｄｅｖｉｃｅ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ−Ｃａｍｅｒａ」という題名の、Ｕ．Ｓ．  Ｐｒｏｖｉｓｉｏｎａｌ  Ｐａｔｅｎｔ  Ａｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｉａｌ  Ｎｕｍｂｅｒ  ６１／８２１，６７７の優先権を主張する、Ｕ．Ｓ．  Ｎｏｎ−Ｐｒｏｖｉｓｉｏｎａｌ  Ｐａｔｅｎｔ  Ａｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｉａｌ  Ｎｕｍｂｅｒ  １４／１３７，７８３の優先権を主張し、参照によってその全体が、すべての目的のために本明細書に組み込まれる。
【背景技術】
【０００２】
人々は、携帯用電子デバイスをますます活用して、多種多様のタスクを実行している。一例として、人々は、そのようなデバイスのカメラを活用してオブジェクトの画像を撮影する。たとえば、ユーザは、カメラを使用して、カメラの視野内の環境の中にある物の静止画またはビデオを撮影することができる。画像または映像中には、複数のオブジェクトがあることがあり、ユーザは、そのオブジェクトが何なのか判断できないことがあり、またはそれらのオブジェクトについてあまり知らないことがあり得る。
【発明の概要】
【課題を解決するための手段】
【０００３】
本開示によるさまざまな実施形態を、図面を参照して説明する。
【図面の簡単な説明】
【０００４】
【図１（ａ）】さまざまな実施形態に従って活用され得る、オブジェクトの画像を撮影するために携帯型コンピューティングデバイスを使用しているユーザの、一実施例を示した図である。
【図１（ｂ）】さまざまな実施形態に従って活用され得る、オブジェクトの画像を撮影するために携帯型コンピューティングデバイスを使用しているユーザの、一実施例を示した図である。
【図２（ａ）】さまざまな実施形態に従って活用され得る、どのオブジェクトが現在のビュー内で認識されたかと、それらのオブジェクトを使用して達成され得る動作とをユーザに伝える、例示的なインターフェースを示した図である。
【図２（ｂ）】さまざまな実施形態に従って活用され得る、どのオブジェクトが現在のビュー内で認識されたかと、それらのオブジェクトを使用して達成され得る動作とをユーザに伝える、例示的なインターフェースを示した図である。
【図２（ｃ）】さまざまな実施形態に従って活用され得る、どのオブジェクトが現在のビュー内で認識されたかと、それらのオブジェクトを使用して達成され得る動作とをユーザに伝える、例示的なインターフェースを示した図である。
【図２（ｄ）】さまざまな実施形態に従って活用され得る、どのオブジェクトが現在のビュー内で認識されたかと、それらのオブジェクトを使用して達成され得る動作とをユーザに伝える、例示的なインターフェースを示した図である。
【図２（ｅ）】さまざまな実施形態に従って活用され得る、どのオブジェクトが現在のビュー内で認識されたかと、それらのオブジェクトを使用して達成され得る動作とをユーザに伝える、例示的なインターフェースを示した図である。
【図３（ａ）】さまざまな実施形態による、認識されたオブジェクトに対する動作が更新またはアクセスされ得る、例示的なインターフェースを示した図である。
【図３（ｂ）】さまざまな実施形態による、認識されたオブジェクトに対する動作が更新またはアクセスされ得る、例示的なインターフェースを示した図である。
【図３（ｃ）】さまざまな実施形態による、認識されたオブジェクトに対する動作が更新またはアクセスされ得る、例示的なインターフェースを示した図である。
【図３（ｄ）】さまざまな実施形態による、認識されたオブジェクトに対する動作が更新またはアクセスされ得る、例示的なインターフェースを示した図である。
【図４（ａ）】さまざまな実施形態に従って活用され得る、認識されたオブジェクトに対する動作をユーザが実行することを可能する、例示的なインターフェースを示した図である。
【図４（ｂ）】さまざまな実施形態に従って活用され得る、認識されたオブジェクトに対する動作をユーザが実行することを可能する、例示的なインターフェースを示した図である。
【図４（ｃ）】さまざまな実施形態に従って活用され得る、認識されたオブジェクトに対する動作をユーザが実行することを可能する、例示的なインターフェースを示した図である。
【図４（ｄ）】さまざまな実施形態に従って活用され得る、認識されたオブジェクトに対する動作をユーザが実行することを可能する、例示的なインターフェースを示した図である。
【図５】さまざまな実施形態に従って使用され得る、認識されたオブジェクトに対する動作をユーザが選択することを可能にするための、例示的なプロセスを示した図である。
【図６】さまざまな実施形態に従って活用され得る、認識されたオブジェクトに対する動作を更新するための、例示的なプロセスを示した図である。
【図７】さまざまな実施形態に従って使用され得る、例示的なコンピューティングデバイスを示した図である。
【図８】図７に示したものなどのコンピューティングデバイスの構成要素の例示的な構成を示した図である。
【図９】さまざまな実施形態が実装され得る、例示的な環境を示した図である。
【発明を実施するための形態】
【０００５】
本開示のさまざまな実施形態によるシステム及び方法は、環境内でオブジェクトを撮影することと、それらのオブジェクトについてより多くを学ぶこととへの、従来のアプローチにおいて経験された前述の欠陥と他の欠陥とのうちの１つまたは複数を克服することができる。具体的には、さまざまな実施形態は、コンピューティングデバイスが、コンピューティングデバイスの１つまたは複数のセンサによって取得されたセンサデータなどの情報を分析することと、情報内に表示される１つまたは複数のオブジェクトを識別することを試みることと、を可能にする。センサデータは、たとえば、カメラによって撮影された画像データまたはビデオデータと、マイクによって取得された音声と、全地球測位システムによって取得された位置データと、コンピューティングデバイスの１つまたは複数のセンサ（または他のそのような構成要素）によって取得され得る他の適切なデータと、を含むことができる。表示されるオブジェクトは、たとえば、文字列と、バーコードと、歌と、映画と、製品と、位置と、人々と、天候関連情報と、他の種類のアイテム、イベント、及び／または出来事とを含むことができるなど、有形及び／または無形のオブジェクトを含むことができる。さまざまな実施形態は、また、仮想「ファイヤーフライ」のセットまたは他の種類のグラフィック要素を、デバイスによって撮影されている画像（たとえば、ビデオ）情報のライブビュー上に表示することなどによって、どのオブジェクトが認識されたかをデバイスが伝えることを可能にするインターフェースも提供する。さまざまな実施形態は、また、特定のオブジェクトに対して実行され得る１つまたは複数の動作を決定することもでき、また、それらの動作のうちのいずれかの実行をユーザが指示することを可能にする、選択可能な選択肢を提供することもできる。インターフェースは、また、それらの動作のうちの少なくともいくつかのための情報を維持または保管することができ、対応するオブジェクトがカメラの視野内にあるかどうか、マイクによって受信されているかどうか、そうでなければ、コンピューティングデバイスの少なくとも１つのセンサまたは他のそのような構成要素によって現在検出されているかどうか、に関わらず、それらの動作が実行されるようにユーザがすることができるようにする。
【０００６】
さまざまな他のアプリケーションとプロセスと使用法とを、さまざまな実施形態に関して以下に提示する。
【０００７】
図１（ａ）は、ユーザ１０２がコンピューティングデバイス１０４で交流している例示的な状況１００を示している。携帯型コンピューティングデバイス（たとえば、スマートフォン、電子書籍リーダ、またはタブレットコンピュータ）を示しているが、入力を判断し、処理することができる、さまざまな他の種類の電子デバイスを、本明細書で開示するさまざまな実施形態にしたがって使用することができる、ということを理解すべきである。これらのデバイスは、たとえば、特に、デスクトップコンピュータと、ノートパソコンと、携帯情報端末と、携帯電話と、ビデオゲーム機またはコントローラと、多機能テレビと、ウェアラブルコンピュータ（たとえば、スマートウォッチまたは眼鏡）と、携帯型メディアプレーヤとを含むことができる。本実施例では、コンピューティングデバイス１０４は、カメラまたはカメラセンサなどの、画像撮影及び／またはビデオ撮影などの機能を実行するように動作可能な、少なくとも１つの画像取込要素１０６を有する。各画像取込要素は、たとえば、電荷結合素子（ＣＣＤ）、動き検出センサ、または赤外線センサであることができ、または他の適切な画像取込技術を活用することができる。本実施例では、ユーザ１０２は、特定の文書１１０についての情報を取得することに興味を持っている。これは、たとえば、文書内に含まれる情報、または文書自体についての情報を、そのような情報の中でも特に含むことができる。デバイスは、特に、音声データ１１４を取得するように動作可能な少なくとも１つのマイク１１２、または位置データを取得するための位置センサなどの、情報を取得するための他のセンサも含むことができる。
【０００８】
本実施例では、文書１１０は、ユーザが興味を示し得る情報を含む。この情報は、たとえば、テキストの本文と、電話番号と、ウェブアドレスとを含む。ユーザは、この情報のうちの一部または全部を、問い合わせ情報を更新する、電話をかける、アドレスに関連するウェブサイトにアクセスする、などの多数の理由のうちのいずれかのために取得することを望み得る。この情報を取得するために、ユーザは、文書１１０の少なくとも関連部分が、コンピューティングデバイスの少なくとも１つのカメラ１０６の視野１０８内にあるように、コンピューティングデバイス１０４を位置づけることができる。その後、結果として生じる画像を、図１（ｂ）の例示的状況１２０に示す通り、コンピューティングデバイスの表示画面１２２に表示することができる。画像１２２は、カメラによって撮影された静止画像であることができ、または、カメラのビデオモード、デバイスのカメラモード、などによって撮影された、「ライブ」ビューのフレームであることができる。例示の通り、画像１２２は、文書からの情報１２４を含むことができる。取得された情報の各インスタンスを「オブジェクト」と呼ぶことができ、それは、デバイス上で動いているソフトウェア、またはデバイスから離れたところで動いているソフトウェアによって分析され得る。本実施例では、画像から認識され得るオブジェクトは、文字列１２６、電話番号１２８、ウェブアドレスまたはＵＲＬ１３０などのオブジェクトを含むことができる。他の実施例では、本明細書のどこかで説明し、提案する通り、さまざまな他の種類のオブジェクトを検出することができる。画像を処理して、テキストを認識することを試みることができ、その後、テキストは、多数の異なる目的のうちのいずれかのために、ユーザによって活用され得る。
【０００９】
従来のアプローチを使用して、ユーザは、画像が、撮影され、１つまたは複数の画像認識アルゴリズムまたは画像分析アルゴリズムを画像に対して実行することができるサーバにアップロードされるようにして、画像内のテキストを識別することを試みることができる。これは、たとえば、少なくとも１つの光学式文字認識（ＯＣＲ）アルゴリズムを含むことができる。しかしながら、撮影された画像は、ユーザが興味を持つオブジェクトを認識するには十分な品質でないことが多い。たとえば、画像は、ピンぼけまたはぼやけていることがあり、または、画像の一部が不明瞭であることがある。さらに、時には、認識アルゴリズムは、画像の一部のみを認識することができ、そこには、ユーザが興味を持つ部分が含まれるかもしれず、含まれないかもしれない。ユーザが画像をサーバにアップロードしているため、ユーザは、関連情報が認識されたかどうかと、それが適切に認識されたかどうかとを判断する前に、画像がアップロードされ、分析されるのを待つ必要がある。そうでない場合は、ユーザは、別の画像が分析されるようにし、所望の結果が返されることを期待しなければならない。このプロセスは非効率であり得、潜在的にユーザを苛立たせ得る。
【００１０】
その結果、さまざまな実施形態によるアプローチは、どのオブジェクトが認識されたかをユーザが判断することができるインターフェースを提供することができ、興味のあるオブジェクトをデバイスに認識させるために、ユーザがほぼリアルタイムの調整を行うことができるようにする。そのようなインターフェースは、認識された各そのようなオブジェクトを示すことができ、可能な場合には、そのオブジェクトについての情報を提供することができる。さらに、そのオブジェクトが、たとえば、実施可能オブジェクト、または動作が関連付けられた種類のオブジェクトである場合、インターフェースは、その動作（または多数の関連動作のうちのいずれか）を、そのオブジェクトに対して実行することを可能にすることができる。本明細書のどこかで述べる通り、いくつかの実施形態では、種類に関わらず、認識されたオブジェクト、または認識されたオブジェクトのサブセットに対して動作を実行することができる。少なくともいくつかの実施形態では、これらの動作のための情報を記憶し、保持し、または保管することができ、オブジェクトがデバイスによってまだ認識可能であるかどうかに関わらず、ユーザが、その動作を実行させることができるようにする。これは、たとえば、オブジェクトが、カメラの視野内にもはやない状況、または、デバイスのマイクまたは他のセンサまたは構成要素によってもはや検出可能でない状況を含むことができる。そのようなインターフェースを、オペレーティングシステムの一部として、カメラソフトウェア／ハードウェアの一部として、またはカメラスタックの上部に位置するアプリケーションの一部として、他のそのような選択肢の中で特に提供することができる。
【００１１】
たとえば、図２（ａ）は、図１（ｂ）からの画像の一部が、ユーザが興味を持つっている文書のライブビューとして再び表示されている、例示的状況２００を示している。しかしながら、本実施例では、ユーザは、物理的なボタン２０２を押して、または他のそのような物理的入力または仮想入力を提供して、認識モードをデバイス上で始動させることができる。本明細書のどこかで説明する通り、コンピューティングデバイスは、カメラモードにある間にビデオデータを生成することができるが、認識モードにある間に、そのデータを分析して、１つまたは複数のオブジェクトを認識するように試みることもできる。認識または他のそのような目的のための他の種類の動作を活用することもできることと、他の始動機構を使用することができることまたは認識を自動的に起動させることができることとを、他のそのような選択肢の中でも特に理解すべきである。本実施例では、認識モード（及び少なくともいくつかの実施形態では、カメラモード）は、本明細書で「ファイヤーフライ」２０８と呼ぶものを使用する。ファイヤーフライは、コンピューティングデバイスのディスプレイ２０４または他のそのような要素を介して表示される、ライブカメラビュー、静止画像、または他のそのようなコンテンツ上に「浮く」ことができる、仮想インジケータのセットとして機能するように動かされ得る。ファイヤーフライを使用して、デバイスがオブジェクトを適切に追跡しているか、または追跡が失われたかどうか、オブジェクトが認識されたかどうか、及び／または画像内の特徴を識別するのに画像が適切であるかどうかなどの情報を、他のそのような選択肢の中でも特にユーザに伝えることができる。各ファイヤーフライは、蛍のように輝度が脈動または点滅する、画素のグループであることができ、または、蛍、電球、昆虫、または画面を動き回ることができる他のそのような生物または物体の実際の画像またはアニメーションを備えることができる。さまざまな他のオブジェクト、アイコン、画像、アニメーション、またはグラフィックスを、さまざまな実施形態の範囲内で使用することもできる。
【００１２】
いくつかのファイヤーフライは、画面を動き回るように動かされ得、一方、いくつかは、ある場所で、１度または何回も、点滅するように表示され得る。固定数のファイヤーフライがある所定の時間では画面上にあり得、または多数の異なる要因のうちのいずれかに依存し得る可変数があることもある。群がっている印象、またはユーザを多少当惑させ得る他の動きなしに、生物のグループという印象を与えるために、ある場所で点滅するいくつかのファイヤーフライがある一方、他のファイヤーフライは移動する。いくつかの実施形態では、ファイヤーフライは、自然界での蛍の光り方に類似する、たとえば、不可視または透明から明るい白または黄色の光で点滅する、小さな点または円であることができる。他の見え方も、異なる色、大きさ、輝度値、などと合わせて使用することができる。より自然な見え方を与えるために、同じ画面上の異なるファイヤーフライは、異なる輝度レベル、明度、色、距離、大きさなどを有することもできる。少なくともいくつかの実施形態では、ユーザ（または開発者またはアプリケーション、など）は、ファイヤーフライの見え方または動作を、他のそのような態様の中で特に変更することができる。認識モードに入ると、少なくともいくつかの実施形態では、カメラに関連するクロムまたはインターフェースを、取り除き、大きさまたは範囲を減らし、または別の方法で修正して、デバイスが異なる動作モードに入ったということをさらに示すことができる。少なくともいくつかの実施形態では、ファイヤーフライが異なる動作を実行した時にデバイスの音声も調整することができ、それらは、移動している時により大きなブーンという音を発する、または境界ボックスが作成された時には皆無かそれに近い音を発するなどである。さらに、ファイヤーフライが異なるように動かされた時に、異なるブーンという音を使用することができ、ファイヤーフライがディスプレイの少なくとも一部に渡って分散するように動かされた時に、第１のブーンという音を出す（または第１の振動量を提供する）、ファイヤーフライがオブジェクトの表示または起動ボタンに近い時に、異なるブーンという音を出す（または振動量を提供する）などを、他のそのような選択肢の中で特に行うことができる。
【００１３】
少なくともいくつかの実施形態では、ファイヤーフライを、動かし、描画し、または別の方法で、少なくともある程度の知性を持って動作するように表すことができる。たとえば、図２（ａ）に示す通り、画像情報２０６のどの部分も認識されていない間、ファイヤーフライを、画面の中で比較的ランダムに移動させまたは浮遊させることができる（完全にランダムな動きは自然に見えないことがある）。少なくともいくつかの実施形態では、知的な生物のグループという印象を与えるための動きの中にいくつかの関連動作があり得る。たとえば、ファイヤーフライがディスプレイで動き回っている間、コンピューティングデバイス（またはコンピューティングデバイスと通信しているコンピュータ）は、画像及び／またはビデオの少なくとも一部を分析して、画像内に表示された１つまたは複数のオブジェクト、または画像内に含まれる対応するオブジェクトの「視覚表示」を認識しようと試みることができる。たとえば、「ｔｏ  ｅｎｔｅｒｔａｉｎｍｅｎｔ」という文字列は、ＯＣＲエンジンまたは他のそのような構成要素または処理によって認識され得る。そのオブジェクトを認識したことに応じて、ファイヤーフライのうちのいくつかまたは全部は、ディスプレイを横切って移動し、図２（ｂ）の例示的状況２２０に示した通り、認識されたオブジェクトの表示の近くにアニメ化された境界ボックス２２２を形成して見えるように動かされることなどによって、アニメ化された形を形成するように描画され得る。アニメ化された形の中のファイヤーフライは、輝度及び／または強度を変更することなどによって、動き及び／または見え方を変えるように動かされ得、また、動きの量または種類を変えるように動かされ得る。いくつかの実施形態ではファイヤーフライは、何の情報も伝えない時は第１の状態で、情報を伝える時は第２の状態で動かされ得、第１と第２との状態は、最大輝度、平均強度、色範囲、平均輝度、密度、点滅速度、などの点において変化することができる。述べた通り、少なくともいくつかの実施形態では、群がっているような見え方を防ぐために、ファイヤーフライのいくつかは移動するように見え、いくつかは、オブジェクトの表示の近くにただ現れ得る。境界ボックス２２２を文字列の周りで作成しているファイヤーフライという結果は、テキストが、少なくとも文字列として、または認識可能なオブジェクトとして、認識されたことをユーザに示すことができる。ユーザがこのテキストに興味を持っている場合、その後、ユーザは、テキストをコピーするなどの動作を実行するために、テキストまたは境界ボックスの近くでディスプレイ２０４に触れることなどによって、適切な動作を取ることができる。ファイヤーフライがテキストの周りに現れていないが、代わりに、ディスプレイを比較的ランダムに動き回っている場合、ユーザは、デバイスがテキストを認識するには画像が十分でなかったことを判断することができ、カメラを動かす、オブジェクトを動かす、照明を調整する、ズームまたはフォーカスを変更する、などの動作を実行することができる。
【００１４】
いくつかの実施形態では、異なる認識アルゴリズム及び／またはサービスを使用して、異なる種類のオブジェクトを認識することができる。たとえば、ストリングは、テキストが電話番号またはＵＲＬであることを示すパターンなどの、所定のパターンに一致するテキストとして認識され得る。その結果、これらのオブジェクトについての情報を、異なるアルゴリズムまたは処理によって処理することができる。したがって、少なくともいくつかの実施形態では、異なる種類のプロセスにより、異なる時間で異なるオブジェクトが認識されることになる。同様に、他のそのような選択肢の中で特に、異なる時間で異なる部分が認識されることを可能にする画像の変化によって、異なる時間で異なるオブジェクトが認識される。
【００１５】
第２のオブジェクトが認識されたことに応じて、図２（ｃ）の例示的状況２４０に示す通り、ファイヤーフライの一部（第１の境界ボックス２２２または追加的なファイヤーフライうちのいずれかから、またはそれらの組み合わせ）は、境界ボックス２４２、または、ここでは電話番号である第２の認識されたオブジェクトについての他のそのような指示を作成するようにされ得る。少なくともいくつかの実施形態では、ファイヤーフライの一部は、第１の境界ボックス２２２から第２の境界ボックス２４２に移動するように動かされ得る。そのような表示は、両方のオブジェクトが認識及び／または識別されたことをユーザに示すことができる。異なる実施形態では、ファイヤーフライは、他のそのような選択肢の中で特に、ストリングが文字列として識別された時、ストリングが電話番号として識別された時、または電話番号についての情報を見つけた時などの、異なる時間に電話番号を囲むことができる。当技術分野で知られているまたは使用されている、さまざまなアプローチを使用して、オブジェクトを認識、識別することと、それらのオブジェクトの種類と、それらの種類のオブジェクトに対応するアプリケーションまたは動作とを判断することと、を試みることができる。たとえば、さまざまなコンピュータビジョンアルゴリズムを使用して、画像またはビデオシーケンス内のさまざまな種類のオブジェクトを見つけ、認識し、及び／または識別することを試みることができる。コンピュータビジョンアルゴリズムは、さまざまな異なるアプローチを活用することができ、それには、エッジマッチング、エッジ検出、部分認識、勾配マッチング、ヒストグラム比較、解釈ツリー、などを含むことができる。
【００１６】
さまざまな実施形態では、オブジェクトの種類を判断することもできる。少なくともいくつかの実施形態では、これは、少なくとも「実施可能な」または「非実施可能な」種類、または同等物を含むことができる。たとえば、「ｔｏ  ｅｎｔｅｒｔａｉｎｍｅｎｔ」などの文字列は、コピーやペーストのためなどの、通常のテキストとして扱われ得るテキストの一部であり得、少なくともいくつかの実施形態では、実施可能オブジェクトとみなされないことがある（一方、他の実施形態では、実施可能とみなされる）。電話番号またはＵＲＬなどのオブジェクトは、コンピューティングデバイスが、少なくとも１つの特定の機能を、ユーザが興味を持ち得るこれらのオブジェクトの各々に対して実行することができるため、実施可能オブジェクトとみなされ得る。たとえば、各実施可能オブジェクト、すべての認識されたオブジェクト、または少なくとも１つの認識された実施可能オブジェクトに対して、インターフェースは、そのオブジェクトの表示に関連する、ユーザが選択可能な入力、アイコン、または要素を提供することができる。他の実施形態では、ユーザが選択可能な入力または要素は、各認識されたオブジェクト、または認識されたオブジェクトの特定のサブセットに対して、他のそのような選択肢の中で特に提供され得る。バーコードやＱＲコード（登録商標）などのオブジェクトは、異なる実施形態で、実施可能オブジェクトまたは実施可能でないオブジェクトのいずれかにみなされ得る。同様に、歌などのオブジェクトは、ソフトウェアが歌識別ソース及び／または歌購入ソースにリンクされている場合は実施可能とみなされ得、テキストは、翻訳が利用可能である場合は実施可能とみなされ得る。
【００１７】
さまざまな実施形態では、ユーザが選択可能なアイコンは、本明細書で「リボン」２４４と呼ぶものの形を取ることができるが、さまざまな他の種類の要素またはオブジェクトも、本明細書のどこかで説明し、提案するさまざまな実施形態の範囲内で活用することができる。本実施形態では、リボン２４４は、オブジェクトについての情報と、取られ得る少なくとも１つの動作についての情報という、少なくとも２つの部分から成る。例示の通り、リボンは、認識された電話番号を示すことができ、その番号を使用する前に、ユーザが、電話番号が適切に認識されたかどうかを判断することができるようにする。リボンは、また、この場合、電話のアイコンを使用し、「電話をかける」という言葉を含んで、取られ得る動作を識別することができるが、さまざまな他の指示も使用され得る。いくつかの実施形態では、従来の電話の代わりに、テキストを送信すること、またはＳｋｙｐｅ（登録商標）ビデオコールを行うことを、他のそのような選択肢の中で特にユーザが望む場合など、ユーザは、異なる選択肢の中から選択することができ、または特定の動作をある種類のオブジェクトに関連付けることができる。いくつかの実施形態では、リボンは２つのタッチターゲットを有することができ、それらは、ユーザが一次動作を選択することを可能にする、リボンの面積の約８０％を構成する第１のターゲット、及びそのオブジェクトと、潜在的に、他のそのような可能性の中で特に、オブジェクトの内容を認識するために使用された画像のコピーとに適用可能な、他の動作またはプラグインを提供する詳細カードまたは他のそのような要素に、ユーザが行くことを可能にする、リボン面積の約２０％である第２のターゲットである。説明した通り、いくつかの実施形態では、リボンは、少なくとも３つの表示するものを含むことができ、それらは、オブジェクトに関連する画像、オブジェクトの題名または名前、及びユーザがそのオブジェクトを、同じまたは類似の名前または題名などを持つ他のオブジェクトから区別することを助けるための著者名またはアーティスト名などの、曖昧性を除去するためのソースである。リボン（または他のユーザが選択可能なアイコン）は、また、さまざまな種類のオブジェクトに対する異なる動作も提供することもできる。たとえば、リボンは、音声データから認識された歌を購入またはダウンロードする動作、またはデバイスの１つまたは複数のセンサによって取得された音声データ及び／またはビデオデータから認識された、映像を再生する動作を含むことができる。
【００１８】
本実施例では、リボンは、現在の向きでは、ディスプレイの「下部」近くに表示されるが、他の場所も活用することができる。少なくともいくつかの実施形態では、リボン２４４は、少なくとも所定の期間、画面上に留まることができ、それは、対応するオブジェクトの表示が、ディスプレイ内でまだ見えるかどうか、または別の方法でデバイスがアクセス可能かどうかに関わらない。たとえば、ユーザは、デバイスを介してアクセス可能な電話番号を得るために、カメラをその番号に向けることができる。一旦取得され及び／または認識されると、ユーザは、もはや、カメラの視野にその番号がある状態でデバイスを持ち続けることを望まないかもしれず、リボンにタッチするため、または他の方法でその番号を確認し、電話をかけるために、カメラをより楽な位置に持っていくことを望むかもしれない。いくつかの実施形態では、ユーザは、ユーザにとってより都合の良い後の時間に電話をかけるために、デバイスがその番号を記憶することを望むかもしれない。これらの場合、または他のそのような場合では、デバイスが、リボンをある期間表示すること、またはユーザが適切な時間にリボンにアクセスすることを少なくとも可能にすること、が望まれ得る。
【００１９】
図２（ｄ）の例示的状況２６０に示す通り、デバイスは、追加的なアルゴリズム、プラグイン、サービス、またはプロセスを使用することなどによって、他のそのような選択肢の中で特に、取得された画像の一部または品質が変化した時に、追加的なオブジェクトも認識することができる。本実施例では、別のオブジェクトが検出され、それにより、追加の境界ボックス２６２がファイヤーフライによって作成される。１つのオブジェクトが実施可能なため、新しく認識されたオブジェクトに対して特定の動作が実行されるようにユーザがすることができる、追加のリボン２６４が作成される。オブジェクトに対して複数の動作を実行することができるいくつかの実施形態では、複数のリボンをディスプレイ画面上に表示することができる。他の実施形態では、リボンは、１つより多いラベルを有することができ、各ラベルは異なる可能な動作を指す。たとえば、センサデータは、映画館のしるしの表示、新聞広告、音楽及び／またはさまざまな他のオブジェクトを含むことができ、ユーザは、（たとえば、予約／チケットのために）電話をかけること、またはそうする前に、オブジェクトについてより多くの情報を知ること（アーティストのウェブページを見る、映画の予告を見る、メニューを見る、など）を望むかもしれない。ラベルは、また、第三者のソーシャルメディアページ（たとえば、ポスター／広告に表示されたレストランまたは音楽アーティストのフェイスブックページ）を訪れる能力などの機能を示すことができる。例示の実施例では、第１のリボンは、追加的なリボンが右側に追加された状態で、ディスプレイの中央に表示されるが、他の実施形態では、他のそのような選択肢の中で特に、より新しいリボンが中央に提示され得、古いリボンを右または左に「押す」ように見えるように動かされ得る。他のリボンにアクセスするために、その後、ユーザは、そのような目的のために使用される多数のナビゲーションアプローチのうちのいずれかを使用して、それらのリボンをスワイプし、スクロールし、または他の方法でナビゲートすることができる。
【００２０】
図２（ｅ）の例示的状況２８０に示す通り、リボン２８２は、また、他のそのような選択肢の中で特に、互いの上に縦に積み重なって見えるように表示され得る。本実施例では、他のそのような選択肢の中で特に、第１のリボンは、他のリボンがその下に見える状態で一番上に現れ、一方、他の実施形態では、最も新しく生成されたリボンが、常に一番上に現れるようにすることができる。新しいリボンが生成され、リボンの数が、固定、可変、またはユーザが構成可能な数として表示できるリボンの数を超えると、たとえば、より古いリボンは、画面から「押し」出され得るが、本明細書のどこかで説明する１つまたは複数のナビゲーションアプローチを介して、ユーザが利用することができる。リボンまたは他の選択可能な要素を表示し、動かし、ナビゲートするためのさまざまな他のアプローチを、さまざまな実施形態の範囲内で活用することもできる。
【００２１】
追加的なオブジェクトが認識されると、ファイヤーフライは、それらのオブジェクトの表示を識別し、追加的なリボンを提供することができる。たとえば、図３（ａ）の状況３００では、文書の異なる部分がカメラの視野の中にあるように、わずかに異なるライブビューがデバイスのディスプレイを介して提供されるように、デバイス及び／または文書が動かされている。更新されたライブビューでは、追加的なオブジェクトの表示が識別され、ファイヤーフライの一部に、その表示の周りに境界ボックス３０２を作成させて、そのオブジェクトが認識されたことを示す。オブジェクトは、ユーザによって購入され得る製品（たとえば、映画、本、またはアプリケーション）として識別されている。たとえば、認識は、オブジェクトの表示を、製品の画像に対応するものとして識別したかもしれず、その製品についての情報をユーザに提供するために、製品データストアに対する検索を実行することができたかもしれない。結果として、別のリボン３０４をスタックの一番上などでユーザに提示することができ、それによって、以前に表示されたリボン２８２を、ディスプレイ上で「下に」移動させる（または別の方法で新しいリボンのための場所を作る）ことができる。新しいリボンは、たとえば、識別された製品の画像と、シングルクリック、または電子的にアイテムを購入するための、知られているまたは使用されている他の処理のいずれかを用いて、ユーザがその製品を購入または他の方法で取得することを可能にするための、リンクまたは他の選択可能な機構とを含むことができる。述べた通り、新しい境界ボックス３０２を作成するファイヤーフライは、以前に表示された境界ボックスから移動することができ、新しいファイヤーフライとして現れることができ、またはそれらの組み合わせであることができる。いくつかの実施形態では、ファイヤーフライは、また、画面外から飛んでくることができ、または他のそのような動作または動きを実行することができる。
【００２２】
述べた通り、デバイスがオブジェクトを認識し、ユーザが、デバイスをより快適な位置で使用して、そのオブジェクトに対して動作を行いたい時など、ユーザが、オブジェクトを、デバイスのカメラまたはセンサのうちの１つの視野内に留めておかないかもしれない場合がある。一実施例として、図３（ｂ）の状況３２０では、ライブビュー３２２は、以前に識別されたオブジェクトの表示をもはや表示せず、この場合、（いくつかの実施形態では潜在的な部分的文字列以外の）識別可能なオブジェクトの表示を含まない。例示の通り、境界を示す表示がもはやないため、ファイヤーフライは、先に述べた通り、再び散乱し、分散し、または他の方法でディスプレイを動き回ることができる。説明した通り、ファイヤーフライは、エッジ、角、色または輝度の急激な変化、などを含み得る、認識可能オブジェクトに対応し得る特徴を見つけようと試みることができる。しかしながら、例示の通り、リボン３２４は、少なくともある期間の間、ディスプレイ上に留まることができる。説明した通り、これは、対応するオブジェクトがコンピューティングデバイスによってまだ検出可能であるかどうかに関わらず、ユーザが、識別された動作のうちの１つを選択することを可能にすることができる。
【００２３】
図３（ｃ）の例示的状況３４０では、文書の以前に分析された部分が、再び、カメラの視野の中に含まれ、ライブビューで見ることができるように、デバイスが動かされている。先に説明した通り、アルゴリズムは、画像を再び分析して、画像内に表示されたオブジェクトを認識及び／または識別することを試みることができる。本明細書のどこかで説明する通り、デバイスがそのライブビューのオブジェクトをすでに認識したと判断することを、動き追跡または他の機構が可能にする場合、異なるアプローチを使用することができ、それにより、取得された画像内のさまざまなオブジェクトの存在を再判断しなければならいことに対する、少なくともいくつかの処理を省くことができる。先に説明した通り、アルゴリズムは、再びオブジェクトを検出し始め、境界ボックス３４２が、ファイヤーフライによって、各識別されたオブジェクトの表示の周りに形成され得る。本実施例では、デバイスは電話番号を認識することができ、たとえば、その番号について記憶された情報、またはその番号についての文脈情報について記憶された情報に基づいて、デバイスは、そのリボンのために、リボンがすでに生成されたかを判断することができる。そのような例では、少なくともいくつかの実施形態は、リボン３４４がリボンスタック３４６の一番上にもたらされるようにすることができ、対応する動作がユーザにとって容易にアクセス可能であるようにする。これが、その番号に対する動作が決定された最初の時である場合、または、この特定の動作が決定された最初の時である場合、新しいリボンを生成し、スタックの一番上または他の適切な場所に置くことができる。リボンがすでに生成されている場合、そのリボンを所望の位置に表示することができる。次いで、リボンスタック３４６内の他のリボンを、本明細書のどこかで説明し、提案する通り、下に移動することができ、または他の方法で調整することができる。
【００２４】
いくつかの例では、ユーザは、デバイスに関連オブジェクトを再び認識させる必要なしに、以前に生成されたリボンのうちの１つにアクセスすることを望み得る。図３（ｄ）の例示的状況３６０に例示する通り、少なくともいくつかの実施形態によるインターフェースは、所望のリボン及び／または動作を見つけるために、ユーザが以前に生成されたリボンにアクセスすることを可能にすることができる。本実施例では、ユーザは、特定のリボンを見つけるために、または１つまたは複数の以前に生成されたリボンを少なくとも見るために、指３６２または他のそのような物を使用して、リボンスタック３４６をナビゲートすることができる。ユーザは、タッチ画面を使用してリボンスタックを下にスクロールすることができるが、本明細書に含まれる教示と提案とを考慮して当業者に明白である、他のナビゲーションアプローチも使用することができる。これらは、たとえば、スタイラスペンまたは物理的ボタンを使用すること、デバイスを傾けること、ジェスチャーまたは動きによる入力を提供すること、などを含むことができる。次いで、ユーザは、以前に生成されたリボンのうちの１つに関連する動作を選択することができる。少なくともいくつかの実施形態では、ユーザはリボンに対して、リボンを消去または修正すること、リボンを並べ替えること、リボンを結合またはコピーすること、などの他のタスクを実行することができる。例示の通り、リボン（または他のユーザが選択可能なアイコン）は、様々な種類のオブジェクトに対して異なる動作を提供することができる。たとえば、リボンは、音声データから認識された歌を購入またはダウンロードする動作、またはデバイスの１つまたは複数のセンサによって取得された音声データ及び／またはビデオデータから認識された動画を再生する動作を含むことができる。
【００２５】
図４（ａ）から４（ｄ）は、さまざまな実施形態による、ファイヤーフライとリボンとを活用して、ユーザが認識されたオブジェクトに対して動作を実行することを可能にすることができる、別の例示的インターフェースを示している。本実施例では、図４（ａ）の状況４００に示す通り、ユーザは、特定のアイテム、この場合は本４０２についての情報を得ることに興味を持ち得る。本明細書のどこかで説明する通り、ユーザは、デバイスを発見モードで持つ（または置く）ことができ、または他の方法で、カメラの視野内の１つまたは複数のオブジェクトを認識することを試みるために分析され得る画像情報を取得しながら、カメラを持つことができる。この場合、本４０２の画像がカメラによって撮影され、画像は、コンピューティングデバイスのディスプレイ上で、ライブビューで表示される。先に述べた通り、デバイスは、少なくとも最初は、ディスプレイ画面上で比較的ランダムに（または少なくともいくらか散らばって）動き回るまたは点滅することができるファイヤーフライ４０４のグループを表示することができる。いくつかの実施形態では、デバイス上で実行している１つまたは複数のアルゴリズムは、認識可能オブジェクトに対応し得る、ライブビュー内の特徴を見つけることを開始することができる。説明した通り、これらは、当技術分野で知られている、または使用されている、コンピュータビジョンや画像認識などのタスクのために使用され得る、エッジ、推移、終点、他の特徴または態様のようなものを含むことができる。図４（ｂ）に示す例示的状況４２０では、ファイヤーフライ４２２のうちの少なくともいくつかは、これらの特徴のうちの少なくともいくつかの方に、それらが識別されるにつれて移動し始めることができる。たとえば、本のエッジは、潜在的に認識可能な特徴として検出されやすいため、ファイヤーフライ４２２のうちの少なくともいくつかは、本の表現のエッジの近くに移動及び／または現れ始めることができる。そのようなアプローチは、ファイヤーフライが知的であり、画像内に表示されたオブジェクトを識別しようと試みているという印象を提供することができる。そのようなアプローチは、また、デバイスが識別している特徴に関して、ユーザにフィードバックを提供することもでき、ユーザが興味を持っているオブジェクトの表示が、ファイヤーフライを「惹きつけ」ていない場合、それによって、ユーザは、認識を改善することを試みるには、ビュー、フォーカス、照明、またはいくつかの他の態様を調整すること、と気付くことができる。オブジェクトが識別されると、ファイヤーフライは、図４（ｃ）の例示的状況４４０に示す通り、移動して、境界ボックス４４２またはオブジェクトの表示についての他の指示を作ることができる。いくつかの実施形態では、例示の通り、ライブビューの他の部分は、暗く、色または輝度を変えて、または他の方法で修正されて見えて、認識されたオブジェクトに対応する画像の部分をさらに協調することができる。本実施例では、オブジェクトは、購入することができる本として識別され、それにより、リボン４４４がディスプレイ画面上に表示される。本実施例のリボンは、製品データストアから取得され得る本の画像と、本についての追加情報を購入または取得する能力とを含むことができる。本実施例では、図４（ｄ）の例示的状況４６０に示す通り、ユーザはリボン４４４を選択して、ユーザがその本の一冊を購入することを可能にするウェブページ４６２にデバイスを移動させることができる。ユーザがすでにその本の一冊を電子形態で購入している場合は、たとえば、リボンは、代わりに、選択されると、たとえば、その電子書籍を電子書籍リーダアプリケーションに表示させる動作を提供することができる。さまざまな他の動作を取ることもできる。
【００２６】
多くの場合で、述べた通り、取られ得る複数の動作があり得る。たとえば、電話番号は、テキストメッセージ、音声電話、またはビデオ電話のために使用され得る。ＵＲＬが外国語を含む場合、動作は、ＵＲＬをウェブブラウザで開くこと、またその言葉を翻訳することを含むことができる。さまざまな他の動作を適用することもできる。その結果、少なくともいくつかの実施形態では、動作の種類は、ユーザによって選択可能であることができ、またはこれらの動作を提案するためのアルゴリズムは、ランク付けされ、または他の方法で優先順位を付けられ得る。たとえば、ユーザは、平均的に、外国語を翻訳するよりもＵＲＬに従うことを望む可能性が高いため、ＵＲＬとして認識されているオブジェクトは、常に、外国語を含むと識別されているオブジェクトに優先することができる。たとえば、ユーザが、音声電話、ビデオ電話、またはＶｏＩＰ電話をかけることができるなどのいくつかの場合では、デバイスは、たとえば、ユーザの過去の使用法を分析することができ、またはどの動作をリボンでユーザに提供するかを決定することができる選択肢または優先度を、ユーザに提示することができる。述べた通り、いくつかの実施形態では、２つ以上の選択肢を同時に提示することができる。リボンは、また、ユーザが、他の利用可能な動作を見ることと、実行される、それらの動作のうちの１つまたは複数を選択することとを可能にする選択肢を含むことができる。
【００２７】
図５は、さまざまな実施形態に従って活用され得る、オブジェクトを認識するためと、動作がそれらのオブジェクトに対して実行されることを可能にするためとの、例示的プロセス５００を示している。本明細書で説明するプロセスについて、特に明記しない限り、さまざまな実施形態の範囲の中に、同様または代替的な順序で、または並行して実行される、追加的なステップ、より少ないステップ、または代替的なステップがあり得る、ということを理解すべきである。本実施例では、センサ始動命令が受信される５０２。これは、１つまたは複数のセンサを含むコンピューティングデバイス上で自動的に生成される、少なくとも１つのハードウェア命令及び／またはソフトウェア命令、ユーザ入力に応じて生成される命令、または他のそのような命令を含むことができる。これに応じて、デバイスは、説明した通り、音声データ、ビデオデータ、画像データ、位置データ、などのデータを含むことができるセンサデータを、取得または別の方法で取得することができる５０４。デバイスは、また、撮影されたビデオの「ライブビュー」をデバイスのディスプレイ上で表示することができ、ライブビューは選択されたカメラのビューに対応し、それは、そのカメラによって撮影され、その後、比較的小さな遅延で、デバイスのディスプレイ画面上に表示された画像によって示される。「ライブ」ビューが、表示のための画像を撮影し、読み込み、提供するために必要な時間のために、わずかな遅延を有し得ることを理解すべきである。
【００２８】
センサが動作している間、少なくともいくつかの実施形態では、コンピューティングデバイスを、本明細書で認識モードと呼ぶものまたは別のそのような状態に入らせる、次の命令が受信され得る５０６。認識モードにある間、コンピューティングデバイスは、「ファイヤーフライ」のグループまたは他のそのようなグラフィック要素を、指定されたカメラによって撮影された画像のライブビューの上、またはそれに沿って表示させることができる５０８。ライブビューは、いくつかの実施形態では、１つのカメラからの１つの画像ストリーム、複数のカメラからの複数の画像ストリーム、または１つまたは複数の立体カメラからの三次元ストリームを、他のそのような選択肢の中で特に含むことができる。ファイヤーフライがディスプレイを動き回り及び／または点滅している間、取得されたセンサデータのうちの少なくとも一部を分析して５１０、センサデータ内のオブジェクトの表示に少なくとも部分的に基づいて、少なくとも１つのオブジェクトを認識することを試みることができる。オブジェクトが認識されない場合５１２、プロセスは継続することができる。オブジェクトが認識された場合、ファイヤーフライの少なくとも一部またはグループに、ライブビュー内の表示を囲むこと、または他の方法で１つまたは複数の態様（たとえば、色、動き、など）を調整して認識を示すことなどによって、認識されたオブジェクトの表示を識別させることができる５１４。述べた通り、他のそのような選択肢の中で特に、ファイヤーフライのうちのいくつかは、アイテムの表示の近くのアニメ化された境界ボックスに移動するように見えることができ、一方、他のファイヤーフライは、境界ボックスのところで現れまたは点滅することができる。ファイヤーフライがオブジェクトの認識を識別する間、またはその時のあたりで、デバイス（またはデバイスと通信しているコンピューティングシステム）は、オブジェクトの種類を判断することを試みることができる５１６。これは、オブジェクトが実施可能オブジェクトであるかどうかを少なくとも含むことができ、少なくともいくつかの実施形態では、オブジェクトが、文字列、ＵＲＬ、電話番号、歌、映画、位置、ビデオファイル、Ｅメールアドレス、製品、または他のそのようなオブジェクトタイプかどうかを識別することができる。オブジェクトが、たとえば、実施可能な種類ではないと判断された場合５１８、プロセスは継続することができる。オブジェクトが、実施可能な種類であると判断された場合、そのオブジェクトに対する動作の種類を決定することができる５２０。これは、たとえば、番号に電話をかける動作、アドレスにＥメールを送るまたはアドレスを開く動作、歌を識別する動作、映画をダウンロードする動作、ビデオファイルを起動する動作、または本明細書のどこかで説明し、提案する他のそのような動作を含むことができる。説明した通り、複数の関連動作を有するオブジェクトに対して、少なくとも１つの動作をそのオブジェクトに対して選択することができる。また、いくつかの実施形態では、１つまたは複数の動作を、オブジェクトが実施可能であると判断されるかどうかに関わらず、各認識されたオブジェクトに対して決定することができる。動作が決定されると、リボンまたは他のそのようなユーザが選択可能なアイコンを生成し、表示することができ５２２、それにより、ユーザがオブジェクトに対してその動作を開始することを可能にする。リボンが、新しいリボン、または現在表示されていない以前に生成されたリボンである場合、リボンを表示することができ、表示されているリボンは、スタックまたはリボンの配列の下の方へまたはその中でリボンを移動するなど、適切に調整され得る。これは、少なくともいくつかの実施形態では、ユーザによって操作され得る。
【００２９】
一実施例として、図６は、さまざまな実施形態に従って活用され得る、表示されているユーザが選択可能なアイコンを更新するための例示的プロセス６００を示している。本実施例では、図５のプロセスに関して説明した通り、取得されたセンサデータが分析される６０２。新しいオブジェクトの表示は、センサデータ内で認識され得る６０４。この新しいオブジェクトは、以前デバイスによって遭遇されていないオブジェクト、または少なくともセンサデータ内で最近遭遇されていないオブジェクトであり得、そのオブジェクトに対するユーザが選択可能なアイコンは現在表示されていない。そのオブジェクトが以前に認識されたかどうかに関する判断を行うことができる６０６。認識されていなかった場合、オブジェクトの種類に対する動作の種類を決定することができる６０８。オブジェクトが実施可能であると判断された場合、１つまたは複数の動作を含む、オブジェクトに対するユーザが選択可能なアイコンも、生成することができる６１０。オブジェクトが以前に認識されていた場合、以前に決定された動作を、ユーザが選択可能なアイコンを用いて活用することができる。オブジェクトに対するユーザが選択可能なアイコンを、本明細書で説明し、提案した通り、要素スタックの一番上または他の適切な場所に、表示することができる６１２。要素の数が閾値を超えた場合など、表示の必要に応じて、他の要素を押し下げることができる６１４。ユーザは、その後、ユーザが選択可能なアイコンをスクロールし、検索し、または他の方法でナビゲートすることを可能にされ得る６１６。述べた通り、画面上にもはや表示されていないユーザが選択可能なアイコンは、それらの要素についての情報が、そのようなナビゲーションと他のそのような目的とのためにアクセス可能であることができるように、「保管」され得る。
【００３０】
少なくともいくつかの実施形態では、ユーザは、検索選択肢を活用して、保管されているユーザが選択可能なアイコンまたはそれ以外で現時点では表示されていない要素からの、情報を見つけることができる。いくつかの実施形態では、検出モードに入ることで、最も新しいユーザが選択可能なアイコンが表示され、その直後に保管されるようにすることができ、またはそうしない場合、ユーザに、画面の外に保管されている要素があることを示すまたは思い出させるために、画面からなくなるようにすることができる。いくつかの実施形態では、デバイスの現在の環境または状況に関係があると識別されたオブジェクトに対する要素は、いつでも表示される。ユーザは、要素をスクロールまたは別の方法でナビゲートして、生成された全要素を潜在的に見て、関連情報を取得することができる。この要素履歴をナビゲートするまたはそれにアクセスする、さまざまな他の方法も活用することができる。これらの要素を、作成日、最終アクセス日、作成された場所の現在の位置からの距離、などの適切な基準を使用して、記憶することができる。いくつかの実施形態では、履歴は、他のユーザ、または同じユーザの他のデバイスからの検出に基づき得る、現時点または将来の時点でユーザの近くにあることが分かっているオブジェクトに関連する要素などの、他の要素も含むことができる。いくつかの実施形態では、保管された要素をスクロールまたはナビゲートし始めたユーザは、デバイスを「識別」モードまたは他のそのようなモードに入らせることができ、そこでは、センサは、センサデータを取得することを停止し、及び／または取得されたセンサデータは分析されず、検索バー（または他の検索機構）が、ディスプレイの上部からドロップダウンすることなどによって、画面上に表れることができる。いくつかの実施形態では、検索バーは、ユーザが、画面の約５０％〜６０％以上に要素を含ませた時に表われることができるが、さまざまな他の基準も活用することができる。ユーザは、オブジェクトの種類、動作の種類、アクセス日、オブジェクト名、動作名、オブジェクトの位置、などのさまざまな種類のメトリクスを使用して検索を行うことができる。
【００３１】
少なくともいくつかの実施形態では、ユーザが選択可能なアイコンを生成するソフトウェアを、コンピューティングデバイスに、及び／またはウェブサービスとして提供され得るものなどのデバイスから離れたところに、記憶することができる。いくつかの実施形態では、１つまたは複数のアプリケーションプログラミングインターフェース（ＡＰＩ）などのインターフェースを使用して、オブジェクトの画像と説明とを提供することなどによって、オブジェクトの識別情報を取得することを助けることができる。そのようなインターフェースは、また、第三者のシステム及びサービスが、システムにつながるようにすることができ、他のそのような可能性の中で特に、オブジェクトを識別し、オブジェクトの情報を提供し、またはオブジェクトに対する特定の動作を可能にすることを助けることができる。
【００３２】
図７は、本明細書で説明し、提案するさまざまな実施形態による、方法を実行するために使用され得る例示的コンピューティングデバイス７００を示している。本実施例では、デバイスは、情報とコンテンツをユーザに表示するための主ディスプレイ画面７０２を有する。デバイスは、また、デバイスの正面と背面とにそれぞれ位置された２つのカメラ７０４、７０６も有する。より少ないまたは追加的な、カメラまたは他のそのような画像取込要素またはセンサを、そのようなデバイスのさまざまな他の位置に置くこともできる、ということを理解すべきである。本実施例では、各取込要素は、可視スペクトル及び／または赤外線（ＩＲ）スペクトルの画像情報を取得することができるカメラであり、少なくともいくつかの実施形態では、動作モードを選択することができる。しかしながら、他の実施形態では、より少ないまたは追加的な、同様または代替的な種類の要素があり得、カメラと赤外線検出器とジェスチャセンサとさまざまなデバイスと共に使用される他のそのような要素との組み合わせがあり得る、ということを理解すべきである。
【００３３】
本実施例では、光センサを使用して、撮影されるオブジェクトの大まかな方向の光の量を判断することができる。白色発光ダイオード（ＬＥＤ）または赤外線（ＩＲ）エミッタなどの少なくとも１つの照明要素を使用して、たとえば、光センサによって判断された通り、十分な光がない時に、特定の範囲の方向に照明を提供することができる。いくつかの実施形態では、画像取込要素の各々に対してエミッタがあり得、各エミッタは、各画像取込要素の近くに置かれている。さまざまな他の要素と要素の組み合わせとを、本明細書に含む教示と提案とを考慮して明らかである通り、さまざまな実施形態の範囲内で使用することもできる。デバイスは、少なくとも１つのネットワーキング構成要素７０８を含むことができ、デバイスがオブジェクトを識別すること、またはデバイスが識別されたオブジェクトに関する情報を取得することで、使用され得るものなど、少なくとも１つの遠隔システムまたはサービスと通信する。デバイスは、また、音声データを取得するための少なくとも１つのマイク７１０または他のそのようなセンサを含むことができる。
【００３４】
本明細書で説明するさまざまな機能を提供するために、図８は、図７に関連して説明したデバイス７００などの、コンピューティングデバイス８００の基本構成要素の例示的セットを示している。本実施例では、デバイスは、少なくとも１つのメモリデバイスまたは要素８０４内に記憶され得る命令を実行するための、少なくとも１つの中央処理装置８０２を含む。当業者に明白である通り、デバイスは、プロセッサ８０２による実行のためのプログラム命令のための第１のデータストレージ、画像またはデータのために使用され得る同じまたは別のストレージ、情報を他のデバイスと共有するために利用可能であり得る取り外し可能ストレージメモリなどの、多くの種類のメモリ、データストレージまたは他の種類の非一時的コンピュータ可読記憶媒体を含むことができる。デバイスは、通常、タッチ画面、電子インク（ｅ−ｉｎｋ）、有機発光ダイオード（ＯＬＥＤ）または液晶ディスプレイ（ＬＣＤ）などの、いくつかの種類のディスプレイ要素８０６を含むが、携帯型メディアプレーヤなどのデバイスは、音声スピーカを通してなど、他の手段を介して情報を伝達することができる。少なくともいくつかの実施形態では、ディスプレイ画面は、たとえば、容量性または抵抗性のタッチ技術を使用した、タッチベースまたはスワイプベースの入力を提供する。
【００３５】
説明した通り、多くの実施形態におけるデバイスは、デバイスの近くのユーザ、人々、または物体を撮影することができる１つまたは複数のカメラなどの、少なくとも１つの画像取込要素８０８を含む。画像取込要素は、所定の解像度と焦点距離と可視領域と取込率とを有するＣＣＤ画像取込要素またはＣＭＯＳ画像取込要素などの、適切な技術を含むことができ、またはそれに少なくとも部分的に基づくことができる。例示的デバイスは、ピントの合った画像を取得することを補助するための、デバイスの動きを判断することに使用される電子ジャイロスコープなどの、少なくとも１つの方向決定構成要素８１０を含む。デバイスは、また、照明を提供するための１つまたは複数の光源（たとえば、白色ＬＥＤ、ＩＲエミッタ、またはストロボ）を含むことができるものなどの、少なくとも１つの照明要素、及び／または周辺光または強度などを検出するための、１つまたは複数の光センサまたは光検出器を含むことができる。
【００３６】
例示的デバイスは、従来の入力をユーザから受信することができる、少なくとも１つの追加的な入力デバイス８１２を含むことができる。この従来の入力は、たとえば、押しボタン、タッチパッド、タッチ画面、ホイール、ジョイスティック、キーパッド、マウス、トラックボール、キーパッドまたはユーザがコマンドをデバイスに入力することができる他のそのようなデバイスまたは要素を含むことができる。これらのＩ／Ｏデバイスを、いくつかの実施形態では、ワイヤレス赤外線またはＢｌｕｅｔｏｏｔｈ（登録商標）または他のリンクによって、接続することさえもできる。しかしながら、いくつかの実施形態では、そのようなデバイスは、まったくボタンを含まないこともあり、ビジュアルコマンド（たとえば、ジェスチャ）と音声コマンド（たとえば、口頭の）との組み合わせのみを通して制御され得、ユーザが、デバイスに触れる必要なく、デバイスを制御することができるようにする。
【００３７】
説明した通り、異なるアプローチを、説明した実施形態によるさまざまな環境において実装することができる。たとえば、図９は、さまざまな実施形態による態様を実装するための環境９００の一実施例を示している。理解される通り、ウェブベースの環境が説明の目的のために使用されているが、さまざまな実施形態を実装するために、必要に応じて、異なる環境を使用することができる。システムは、電子クライアントデバイス９０２を含み、それは、要求、メッセージまたは情報を、適切なネットワーク９０４を介して送受信し、情報をデバイスのユーザに伝達し返すように動作可能な適切なデバイスを含むことができる。そのようなクライアントデバイスの例は、パーソナルコンピュータ、携帯電話、携帯型メッセージングデバイス、ラップトップコンピュータ、セットトップボックス、携帯情報端末、電子書籍リーダなどを含む。ネットワークは、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワークまたは他のそのようなネットワークまたはそれらの組み合わせを含む、適切なネットワークを含むことができる。そのようなシステムのために使用される構成要素は、選択されるネットワーク及び／または環境の種類に少なくとも部分的に依存し得る。そのようなネットワークを介して通信するためのプロトコル及び構成要素は、よく知られており、本明細書では詳細に説明しない。ネットワークを介した通信を、ワイヤード接続またはワイヤレス接続と、それらの組み合わせとを介して可能にすることができる。本実施例では、ネットワークは、環境が、要求を受信し、それに応じてコンテンツを提供するためのウェブサーバ９０６を含むように、インターネットを含むが、他のネットワークについては、当業者に明白な通り、同様の目的を提供する代替的なデバイスを使用することができる。
【００３８】
例示の環境は、少なくとも１つのアプリケーションサーバ９０８とデータストア９１０とを含む。繋げられ、または他の方法で構成され得、データを適切なデータストアから取得することなどのタスクを実行するために相互作用することができる、いくつかのアプリケーションサーバ、レイヤまたは他の要素、プロセスまたは構成要素、があり得ることを理解すべきである。本明細書で使用される通り、「データストア」という用語は、データを記憶し、データにアクセスし、データを読み出すことができる、デバイスまたはデバイスの組み合わせを指し、標準的環境、分散環境、またはクラスタ化された環境で、多くの、データサーバとデータベースとデータストレージデバイスとデータストレージ媒体と、それらの組み合わせとを含むことができる。アプリケーションサーバ９０８は、クライアントデバイスのために１つまたは複数のアプリケーションの態様を実行するために、必要に応じて、データストア９１０と相互作用するためと、アプリケーションについて、データアクセスとビジネス論理との大部分を扱うためとの、適切なハードウェアとソフトウェアとを含むことができる。アプリケーションサーバは、データストアと協力してアクセス制御サービスを提供し、ユーザに伝達される、テキスト、グラフィックス、音声及び／またはビデオなどのコンテンツを生成することができ、コンテンツは、ウェブサーバ９０６によって、ＨＴＭＬ、ＸＭＬ、または本実施例では他の適切な構造化言語の形態で、ユーザに提供され得る。すべての要求と応答との取り扱い、及びクライアントデバイス９０２とアプリケーションサーバ９０８との間でのコンテンツの配信は、ウェブサーバ９０６によって扱われ得る。本明細書で説明する構造化コードを、本明細書のどこかで説明する適切なデバイスまたはホストマシン上で実行することができるため、ウェブサーバ及びアプリケーションサーバは、必要ではなく、単に例示的な構成要素である、ということを理解すべきである。
【００３９】
データストア９１０は、特定の態様に関連するデータを記憶するための、いくつかの別々のデータ表、データベースまたは他のデータストレージ機構及び媒体を含むことができる。たとえば、例示のデータストアは、コンテンツ（たとえば、生産データ）９１２とユーザ情報９１６とを記憶するための機構を含み、それは、生産側のコンテンツを提供するために使用され得る。データストアは、また、ログまたはセッションデータ９１４を記憶するための機構を含むと示されている。ページ画像情報やアクセス権情報などの、データストアに記憶される必要があり得る、多くの他の態様があり得、それらが、必要に応じて、上記で挙げた機構のうちのいずれかの中に、またはデータストア９１０内の追加的な機構の中に記憶され得る、ということを理解すべきである。データストア９１０は、それに関連する論理を通して、命令をアプリケーションサーバ９０８から受信し、それに応じて、データを取得、更新または別の方法で処理するように動作可能である。一実施例では、ユーザは、特定の種類のアイテムに対する検索要求を提出することができる。この場合、データストアは、ユーザ情報にアクセスしてユーザの身元を確認することができ、カタログ詳細情報にアクセスしてその種類のアイテムについての情報を取得することができる。情報は、その後、ユーザがユーザデバイス９０２上のブラウザを介して見ることができる、ウェブページ上の結果一覧としてなど、ユーザに返され得る。興味のある特定のアイテムについての情報を、ブラウザの専用ページまたは専用ウィンドウで見ることができる。
【００４０】
各サーバは、通常、そのサーバの一般的管理と動作とのための実行可能なプログラム命令を提供するオペレーティングシステムを含み、通常、サーバのプロセッサによって実行された時に、サーバに、その意図する機能を実行させる命令を記憶するコンピュータ可読媒体を含む。サーバのオペレーティングシステムと一般的機能とのための適切な実装形態は、知られており、または市販されており、特に、本明細書の開示を考慮して、当業者によって容易に実装される。
【００４１】
一実施形態における環境は、１つまたは複数のコンピュータネットワークまたは直接接続を使用した通信リンクを介して相互接続されている、いくつかのコンピュータシステムと構成要素とを活用した分散コンピューティング環境である。しかしながら、そのようなシステムが、図９に示すものよりも少ない構成要素または多い構成要素を有するシステムでも等しく良く動作することができる、ということは当業者によって理解される。したがって、図９のシステム９００の図は、本来例示として、本開示の範囲を限定しないものとして理解されるべきである。
【００４２】
いくつかの場合では、多数のアプリケーションのうちのいずれかを動作させることに使用され得る、１つまたは複数のユーザコンピュータまたはコンピューティングデバイスを含むことができる多種多様な動作環境で、さまざまな実施形態をさらに実装することができる。ユーザデバイスまたはクライアントデバイスは、標準的なオペレーティングシステムを実行しているデスクトップコンピュータまたはノートパソコンなどの、多数の汎用パーソナルコンピュータのうちのいずれかと、モバイルソフトウェアを実行し、多数のネットワーキングプロトコルとメッセージングプロトコルとをサポートすることができる、セルラーデバイスとワイヤレスデバイスと携帯型デバイスと、を含むことができる。そのようなシステムは、また、さまざまな市販のオペレーティングシステムのうちのいずれかと、開発やデータベース管理などの目的のための他の知られているアプリケーションとを実行する多数のワークステーションを含むことができる。これらのデバイスは、また、ダミー端末、シンクライアント、ゲームシステム、及びネットワークを介して通信することができる他のデバイスなどの、他の電子デバイスを含むことができる。
【００４３】
ほとんどの実施形態は、ＴＣＰ／ＩＰ、ＦＴＰ、ＵＰｎＰ、ＮＦＳ、及びＣＩＦＳなどの、さまざまな市販のプロトコルのうちのいずれかを使用する通信をサポートするための、当業者によく知られている少なくとも１つのネットワークを活用する。ネットワークは、たとえば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、ワイヤレスネットワーク、及びそれらの組み合わせであることができる。
【００４４】
ウェブサーバを活用する実施形態では、ウェブサーバは、ＨＴＴＰサーバと、ＦＴＰサーバと、ＣＧＩサーバと、データサーバと、Ｊａｖａサーバと、ビジネスアプリケーションサーバとを含む、さまざまなサーバまたは中間アプリケーションのうちのいずれかを実行することができる。サーバは、また、Ｊａｖａ（登録商標）、Ｃ、Ｃ＃またはＣ＋＋などの任意のプログラミング言語、またはＰｅｒｌ、ＰｙｔｈｏｎまたはＴＣＬなどの任意のスクリプト言語で書かれた１つまたは複数のスクリプトまたはプログラムと、それらの組み合わせとして実装され得る、１つまたは複数のウェブアプリケーションを実行することなどによって、ユーザデバイスからの要求に応じて、プログラムまたはスクリプトを実行することもできる。サーバは、また、Ｏｒａｃｌｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ｓｙｂａｓｅ（登録商標）、及びＩＢＭ（登録商標）から市販されているものなどを限定せずに含む、データベースサーバを含むこともできる。
【００４５】
環境は、上記で説明した、さまざまなデータストアと他のメモリとストレージとを含むことができる。これらは、コンピュータのうちの１つまたは複数にローカルな（及び／またはその中に存在する）、またはコンピュータのうちのいずれかまたは全部からネットワークを隔てて離れている、ストレージ媒体上など、さまざまな場所に存在することができる。特定のセットの実施形態では、情報は、当業者によく知られているストレージエリアネットワーク（ＳＡＮ）内に存在し得る。同様に、コンピュータ、サーバまたは他のネットワークデバイスに帰属する機能を実行するために必要なファイルは、適切に、ローカルに及び／または遠隔で記憶され得る。システムがコンピュータ制御のデバイスを含む場合、各そのようなデバイスは、バスを介して電気的に連結され得るハードウェア要素を含むことができ、要素は、たとえば、少なくとも１つの中央処理装置（ＣＰＵ）と、少なくとも１つの入力デバイス（たとえば、マウス、キーパッド、コントローラ、タッチセンサ式ディスプレイ要素またはキーパッド）と、少なくとも１つの出力デバイス（たとえば、ディスプレイデバイス、プリンタまたはスピーカ）とを含む。そのようなシステムは、また、ディスクドライブ、光学ストレージデバイス、及びランダムアクセスメモリ（ＲＡＭ）またはリードオンリメモリ（ＲＯＭ）などの半導体ストレージデバイスなどの、１つまたは複数のストレージデバイスと、取り外し可能なメディアデバイスと、メモリカードと、フラッシュカードなどを含むこともできる。
【００４６】
そのようなデバイスは、また、コンピュータ可読記憶媒体リーダと、通信デバイス（たとえば、モデム、ネットワークカード（ワイヤレスまたはワイヤード）、赤外線通信デバイス）と、上記で説明した作業メモリとを含むこともできる。コンピュータ可読記憶媒体リーダは、遠隔の、ローカルの、固定及び／または取り外し可能なストレージデバイスを表す、非一時的コンピュータ可読記憶媒体と、コンピュータ可読情報を一時的及び／またはより恒久的に含み、記憶し、読み出すための記憶媒体とに接続され得、または受け入れるように構成され得る。システム及びさまざまなデバイスは、また、通常、オペレーティングシステムと、クライアントアプリケーションまたはウェブブラウザなどのアプリケーションプログラムとを含む、多数のソフトウェアアプリケーション、モジュール、サービス、または少なくとも１つの作業メモリデバイス内に置かれた他の要素を含む。代替的な実施形態が、上記で説明したものからの多数の変更を有することができる、ということを理解すべきである。たとえば、カスタムハードウェアも使用することができ、及び／または特定の要素を、ハードウェア、ソフトウェア（アプレットなどの高移植性ソフトウェアを含む）または両方で実装することができる。さらに、ネットワーク入力／出力デバイスなどの他のコンピューティングデバイスへの接続を使用することができる。
【００４７】
コードまたはコードの一部を含むための記憶媒体及び他の非一時的コンピュータ可読媒体は、当技術分野で知られているまたは使用されている適切な媒体を含むことができ、それには、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータなどの情報を記憶するための方法または技術で実装された、揮発性及び非揮発性、取り外し可能及び固定の媒体などであるがそれらに限定されない、記憶媒体と通信媒体とが含まれ、それらは、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光学式ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、または所望の情報を記憶することに使用され得、システムデバイスによってアクセスされ得る他の媒体を含む。本明細書で提供した開示と教示とに基づいて、当業者は、さまざまな実施形態を実装する他のやり方及び／または方法を理解する。
【００４８】
結果として、明細書及び図面は、限定的な意味というよりも、例示的な意味にみなされるものである。しかしながら、特許請求の範囲に明記する、本発明のより広い精神と範囲とから逸脱することなく、さまざまな修正と変更とを本明細書に行うことができる、ということは明白である。
【００４９】
条項
１．  コンピューティングデバイスであって、
少なくとも１つのプロセッサと、
ディスプレイ画面と、
少なくとも１つのカメラと、
前記少なくとも１つのプロセッサによって実行された時に、前記コンピューティングデバイスに、
前記少なくとも１つのカメラを使用してビデオデータを生成することと、
前記ディスプレイ画面上に、前記ビデオデータが生成されるにつれて、前記ビデオデータの少なくとも一部に基づいたビデオコンテンツを表示することと、
前記ビデオコンテンツ内に表示された少なくとも第１のオブジェクトと第２のオブジェクトとを認識することと、
第１の複数のグラフィック要素に、前記第１のオブジェクトが認識されたことを示させることと、
第２の複数の前記グラフィック要素に、前記第２のオブジェクトが認識されたことを示させることと、
前記第１のオブジェクトのための、第１の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上に表示することであって、前記第１のユーザが選択可能なアイコンが、前記第１のユーザが選択可能なアイコンの近くの前記ディスプレイ画面上で発生するタッチイベントに応じて、前記コンピューティングデバイスが実行するように構成されている第１の動作を伝達し、前記第１の動作が、第１のオブジェクトタイプに少なくとも部分的に基づく、表示することと、
前記第２のオブジェクトのための、第２の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上に表示することであって、前記第２のユーザが選択可能なアイコンが、前記第２のユーザが選択可能なアイコンの近くの前記ディスプレイ画面上で発生するタッチイベントに応じて、前記コンピューティングデバイスが実行するように構成されている第２の動作を伝達し、前記第２の動作が、第２のオブジェクトタイプに少なくとも部分的に基づく、表示することと、
２よりも大きい閾値数よりも多い、ユーザが選択可能なアイコンが表示のために生成されたことに応じて、少なくとも１つの過剰な、ユーザが選択可能なアイコンを前記ディスプレイ画面から除去することであって、前記過剰なユーザが選択可能なアイコンが、少なくとも１つのナビゲーションアプローチを使用して、前記ユーザが後でアクセス可能である、除去することと、
を行わせる命令を含むメモリと、
を備える、前記コンピューティングデバイス。
２．  前記命令が、実行されると、前記コンピューティングデバイスに、
前記コンピューティングデバイスのマイクを使用して音声データを取得することと、
前記音声データのための、第３の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上に表示することであって、前記第３のユーザが選択可能なアイコンが、前記第３のユーザが選択可能なアイコンの近くの前記ディスプレイ画面上で発生するタッチイベントに応じて、前記コンピューティングデバイスが実行するように構成されている第３の動作を伝達し、前記第３の動作が、前記音声データ内の認識された音声の種類に少なくとも部分的に基づく、表示することと、
をさらに行わせる、１項に記載のコンピューティングデバイス。
３．  前記命令が、実行されると、前記コンピューティングデバイスに、
前記第１のユーザが選択可能なアイコンが、前記ディスプレイ画面上で、前記第２のユーザが選択可能なアイコンの上に積み重ねられて見えるように表示されるようにすること、
をさらに行わせる、１項に記載のコンピューティングデバイス。
４．  前記命令が、実行されると、前記コンピューティングデバイスに、
以前に表示された、ユーザが選択可能なアイコンについての情報が、前記コンピューティングデバイスによって記憶されるようにすることと、
前記以前に表示されたユーザが選択可能なアイコンが、ユーザが前記ディスプレイ画面上でスワイプ動作を実行したことに応じて、表示されるようにすることであって、前記スワイプ動作が、以前に表示された、ユーザが選択可能なアイコンを見つけるために使用され得る、表示されるようにすることと、
をさらに行わせる、１項に記載のコンピューティングデバイス。
５．  前記命令が、実行されると、前記コンピューティングデバイスに、
現在表示されているユーザが選択可能なアイコンと、以前に表示されたユーザが選択可能なアイコンと、について記憶されている情報に対して、検索が実行されることを可能にする検索選択肢を提供すること、
をさらに行わせる、１項に記載のコンピューティングデバイス。
６．  コンピューティングデバイスの少なくとも１つのセンサを使用して取得されたセンサデータを取得することと、
前記コンピューティングデバイスの少なくとも１つのプロセッサを使用して、前記取得センサデータ内に表示された第１のオブジェクトと第２のオブジェクトとを認識することと、
第１の複数のグラフィック要素に、前記コンピューティングデバイスのディスプレイ画面上で、前記第１のオブジェクトが認識されたことを示させることと、
第２の複数の前記グラフィック要素に、前記ディスプレイ画面上で、前記第２のオブジェクトが認識されたことを示させることと、
前記第１のオブジェクトのための、第１の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上に表示することであって、前記第１のユーザが選択可能なアイコンが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている第１の動作を伝達する、表示することと、
前記第２のオブジェクトのための、第２の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上で表示することであって、前記第２のユーザが選択可能なアイコンが、前記コンピューティングデバイスが前記第２のオブジェクトに対して実行するように構成されている第２の動作を伝達する、表示することと、
最大で閾値の、ユーザが選択可能なアイコンを表示することであって、前記閾値数が、少なくとも２である、表示することと、
少なくとも１つの過剰な、ユーザが選択可能なアイコンを、前記ディスプレイ画面から除去することであって、前記過剰なユーザが選択可能なアイコンが、少なくとも１つのナビゲーションアプローチを使用して、前記ユーザが後でアクセス可能である、除去することと、
を備える、コンピュータで実装された方法。
７．  前記第１のユーザが選択可能なアイコンについての情報を前記コンピューティングデバイス上に記憶することと、
前記第１のユーザが選択可能なアイコンを前記ディスプレイ画面に、前記オブジェクトが前記取得センサデータ内にもはや表示されなくなってから少なくとも所定の期間表示することと、
をさらに備える、６項に記載のコンピュータで実装された方法。
８．  前記ディスプレイ画面上に表示された前記第１のオブジェクトの表示の近くにアニメ化された境界ボックスを形成することによって、前記第１のオブジェクトが認識されたことを示すために、前記第１の複数のグラフィック要素を動かすことであって、前記アニメ化された境界ボックスが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている前記第1の動作を伝達する、動かすことと、
をさらに備える、６項に記載のコンピュータで実装された方法。
９．  前記第１のユーザが選択可能なアイコン上に第１のラベルと第２のラベルとを表示することであって、前記第１のラベルが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている第１の動作を伝達し、前記第２のラベルが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている別の動作を伝達する、表示すること、
をさらに備える、６項に記載のコンピュータで実装された方法。
１０．  追加的な、ユーザが選択可能なアイコンが、表示される、ユーザが選択可能なアイコンの前記数に、許容可能閾値を超えさせることに応じて、少なくとも１つのユーザが選択可能なアイコンがディスプレイから除去されること、
をさらに備える、６項に記載のコンピュータで実装された方法。
１１．  前記コンピューティングデバイス上にもはや表示されていないユーザが選択可能なアイコンについての情報を自動的に記憶することであって、一旦記憶された前記情報が、スクロール動作、タッチ画面ベースのプル動作、または検索要求のうちの少なくとも１つを使用してアクセス可能である、記憶することと、
をさらに備える、１０項に記載のコンピュータで実装された方法。
１２．  前記取得センサデータ内に表示された以前に認識されたオブジェクトを識別することと、
前記以前に認識されたオブジェクトに対して記憶された前記情報を使用して、ユーザが選択可能なアイコンが表示されるようにすることと、
をさらに備える、１０項に記載のコンピュータで実装された方法。
１３．  複数の、ユーザが選択可能なアイコンが、積み重ねられる、または順番に配置される、のうちの少なくとも１つで表示され得る、６項に記載のコンピュータで実装された方法。
１４．  前記複数のユーザが選択可能なアイコンのうちの少なくともサブセットが、１つより多い動作が前記各オブジェクトに対して実行されることを可能にする、１３項に記載のコンピュータで実装された方法。
１５．  前記１つより多い動作のうちの主動作を、前記ユーザに関連する履歴データに少なくとも部分的に基づいて選択することであって、前記主動作についての情報が、前記各ユーザが選択可能なアイコン上に表示される、選択すること、
をさらに備える、１４項に記載のコンピュータで実装された方法。
１６．  前記取得センサデータ内に現在表示されているオブジェクトに対応する各ユーザが選択可能なアイコンについて優先度を決定することと、
前記ディスプレイ画面上で表示するために、前記ユーザが選択可能なアイコンのうちの少なくともサブセットを、前記優先度に少なくとも部分的に基づいて位置づけることと、
をさらに備える、６項に記載のコンピュータで実装された方法。
１７．  前記優先度を決定することが、前記取得センサデータ内の各実施可能オブジェクトの位置、前記各実施可能オブジェクトの種類、過去のユーザデータ、最終アクセス日、作成位置への距離、または前記ユーザが選択可能なアイコンの各々が生成された時間のうちの少なくとも１つに少なくとも部分的に基づく、１６項に記載のコンピュータで実装された方法。
１８．  コンピューティングデバイスの少なくとも１つのプロセッサによって実行された時に、前記コンピューティングデバイスに、
前記コンピューティングデバイスの少なくとも１つのセンサを使用してセンサデータを取得することと、
前記取得センサデータ内に表示された第１のオブジェクトと第２のオブジェクトとを認識することと、
第１の複数のグラフィック要素に、前記コンピューティングデバイスのディスプレイ画面上で、前記第１のオブジェクトが認識されたことを示させることと、
第２の複数の前記グラフィック要素に、前記ディスプレイ画面上で、前記第２のオブジェクトが認識されたことを示させることと、
前記第１のオブジェクトのための、第１の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上に表示することであって、前記第１のユーザが選択可能なアイコンが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている第１の動作を伝達する、表示することと、
前記第２のオブジェクトのための、第２の、ユーザが選択可能なアイコンを、前記ディスプレイ画面上に表示することであって、前記第２のユーザが選択可能なアイコンが、前記コンピューティングデバイスが前記第２のオブジェクトに対して実行するように構成されている第２の動作を伝達する、表示することと、
２よりも大きい閾値数よりも多い、ユーザが選択可能なアイコンが表示のために生成されたことに応じて、少なくとも１つの過剰な、ユーザが選択可能なアイコンを、前記ディスプレイ画面から除去することであって、前記過剰なユーザが選択可能なアイコンが、少なくとも１つのナビゲーションアプローチを使用して、前記ユーザが後でアクセス可能である、除去することと、
を行わせる命令を記憶する、非一時的なコンピュータ可読記憶媒体。
１９．  前記命令が、実行されると、前記コンピューティングデバイスに、
前記第１のユーザが選択可能なアイコンについての情報を、前記コンピューティングデバイス上で記憶することと、
前記第１のユーザが選択可能なアイコンを、前記ディスプレイ画面で、前記オブジェクトが前記取得センサデータ内にもはや表示されなくなってから所定の期間表示することと、
をさらに行わせる、１８項に記載の非一時的なコンピュータ可読記憶媒体。
２０．  前記命令が、実行されると、前記コンピューティングデバイスに、
前記ディスプレイ画面上に表示された前記第１のオブジェクトの表示の近くにアニメ化された境界ボックスを形成することによって、前記第１のオブジェクトが認識されたことを示すために、前記第１の複数のグラフィック要素を動かすことであって、前記アニメ化された境界ボックスが、前記コンピューティングデバイスが前記第１のオブジェクトに対して実行するように構成されている前記第１の動作を伝達する、動かすこと、
をさらに行わせる、１８項に記載の非一時的なコンピュータ可読記憶媒体。
【図１（ａ）】
0006502923.tif 000002
【図１（ｂ）】
0006502923.tif 000003
【図２（ａ）】
0006502923.tif 000004
【図２（ｂ）】
0006502923.tif 000005
【図２（ｃ）】
0006502923.tif 000006
【図２（ｄ）】
0006502923.tif 000007
【図２（ｅ）】
0006502923.tif 000008
【図３（ａ）】
0006502923.tif 000009
【図３（ｂ）】
0006502923.tif 000010
【図３（ｃ）】
0006502923.tif 000011
【図３（ｄ）】
0006502923.tif 000012
【図４（ａ）】
0006502923.tif 000013
【図４（ｂ）】
0006502923.tif 000014
【図４（ｃ）】
0006502923.tif 000015
【図４（ｄ）】
0006502923.tif 000016
【図５】
0006502923.tif 000017
【図６】
0006502923.tif 000018
【図７】
0006502923.tif 000019
【図８】
0006502923.tif 000020
【図９】
0006502923.tif 000021