首页 / 专利库 / 资料储存系统 / 自动识别与数据采集技术 / 人脸识别 / ソーシャルネットワークの支援による顔認識

ソーシャルネットワークの支援による顔認識

阅读:477发布:2024-02-16

专利汇可以提供ソーシャルネットワークの支援による顔認識专利检索,专利查询,专利分析的服务。并且【課題】顔認識検索システムが、クエリ内の1つまたは複数の顔画像に対応する、1つまたは複数の適当な名前(または他の個人識別子)を特定する。 【解決手段】1つまたは複数の顔画像を有する視覚クエリを受け取った後、このシステムは、視覚的類似性基準に応じてそれぞれの顔画像に潜在的に一致する画像を特定する。次いで、それらの潜在的な画像に関連する1人または複数の人物を特定する。特定した人物ごとに、通信アプリケーション、ソーシャルネットワーキングアプリケーション、カレンダアプリケーション、共同アプリケーションなど、複数のアプリケーションから、要求者に対する社会的なつながりについてのメトリクスを含む人物固有データを取得する。次いで、少なくともそれぞれの顔画像と潜在的な画像の一致との間の視覚的類似性のメトリクスに応じて、および社会的つながりメトリクスに応じて特定した人物をランク付けすることにより、順序付き人物一覧を生成する。最後に、その一覧からの少なくとも1つの人物識別子を要求者に送る。 【選択図】図16A,下面是ソーシャルネットワークの支援による顔認識专利的具体信息内容。

1つまたは複数の画像を含む視覚クエリを、クライアント装置から受信することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられたオブジェクトまたはオブジェクトカテゴリを認識することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたオブジェクトまたはオブジェクトカテゴリに関連付けられた視覚的類似性基準を認識することと、 前記オブジェクトまたはオブジェクトカテゴリに関連付けられた前記視覚的類似性基準に基づいて、前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することと、 前記視覚的類似性基準に基づいて前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することに応答して、前記視覚クエリの前記1つまたは複数の画像のそれぞれと複数の潜在的な画像の一致の各々との間の視覚的類似性の1つまたは複数の測定値を判断することと、 前記視覚クエリの前記1つまたは複数の画像のそれぞれと前記候補画像一致の各々との間の視覚的類似性の前記1つまたは複数の測定値に基づいて、前記候補画像一致の各々をランク付けすることと、 候補画像一致の前記ランク付けから、前記視覚クエリに基づく関連画像として、少なくとも1つの画像を前記クライアント装置に提供することと 含む、コンピュータによって実施される方法。前記認識されたオブジェクトまたはオブジェクトカテゴリに関連付けられた視覚識別子と、前記視覚識別子に対応するユーザ選択可能リンクとを含む関連画像インターフェイスを生成すること を含み、 前記ユーザ選択可能リンクは、前記視覚クエリに基づく関連画像として前記クライアント装置に提供される候補画像一致の前記ランク付けからの前記少なくとも1つの画像に対応する、請求項1に記載のコンピュータによって実施される方法。前記視覚識別子に対応する前記ユーザ選択可能リンクに関連付けられたユーザ入を受信することに応答して、前記クライアント装置上での表示のために、候補画像一致の前記ランク付けから前記少なくとも1つの画像を提供すること を含む、請求項2に記載のコンピュータによって実施される方法。前記視覚クエリの前記1つまたは複数の画像に関連付けられたオブジェクトまたはオブジェクトカテゴリを認識することは、 前記視覚クエリの前記1つまたは複数の画像に関連付けられたテキストを認識することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたテキストに基づいて、前記オブジェクトまたはオブジェクトカテゴリを検出することと を含む、請求項1に記載のコンピュータによって実施される方法。前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することは、ソーシャルグラフからの社会的つながりデータに更に基づく、請求項1に記載のコンピュータによって実施される方法。前記候補画像一致の各々をランク付けすることは、ソーシャルグラフからの社会的つながりデータに更に基づく、請求項1に記載のコンピュータによって実施される方法。前記候補画像一致は、前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたオブジェクトまたはオブジェクトカテゴリに対応する、請求項1に記載のコンピュータによって実施される方法。1つまたは複数のコンピュータと、1つまたは複数の記憶装置とを含むシステムであって、前記記憶装置は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに動作を実行させるように実施可能な命令を記憶し、前記動作は、 1つまたは複数の画像を含む視覚クエリを、クライアント装置から受信することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられたオブジェクトまたはオブジェクトカテゴリを認識することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたオブジェクトまたはオブジェクトカテゴリに関連付けられた視覚的類似性基準を認識することと、 前記オブジェクトまたはオブジェクトカテゴリに関連付けられた前記視覚的類似性基準に基づいて、前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することと、 前記視覚的類似性基準に基づいて前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することに応答して、前記視覚クエリの前記1つまたは複数の画像のそれぞれと複数の潜在的な画像の一致の各々との間の視覚的類似性の1つまたは複数の測定値を判断することと、 前記視覚クエリの前記1つまたは複数の画像のそれぞれと前記候補画像一致の各々との間の視覚的類似性の前記1つまたは複数の測定値に基づいて、前記候補画像一致の各々をランク付けすることと、 候補画像一致の前記ランク付けから、前記視覚クエリに基づく関連画像として、少なくとも1つの画像を前記クライアント装置に提供することと 含む、システム。前記動作は、 前記認識されたオブジェクトまたはオブジェクトカテゴリに関連付けられた視覚識別子と、前記視覚識別子に対応するユーザ選択可能リンクとを含む関連画像インターフェイスを生成すること を含み、 前記ユーザ選択可能リンクは、前記視覚クエリに基づく関連画像として前記クライアント装置に提供される候補画像一致の前記ランク付けからの前記少なくとも1つの画像に対応する、請求項8に記載のシステム。前記動作は、 前記視覚識別子に対応する前記ユーザ選択可能リンクに関連付けられたユーザ入力を受信することに応答して、前記クライアント装置上での表示のために、候補画像一致の前記ランク付けから前記少なくとも1つの画像を提供すること を含む、請求項9に記載のシステム。前記視覚クエリの前記1つまたは複数の画像に関連付けられたオブジェクトまたはオブジェクトカテゴリを認識することは、 前記視覚クエリの前記1つまたは複数の画像に関連付けられたテキストを認識することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたテキストに基づいて、前記オブジェクトまたはオブジェクトカテゴリを検出することと を含む、請求項8に記載のシステム。前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することは、ソーシャルグラフからの社会的つながりデータに更に基づく、請求項8に記載のシステム。前記候補画像一致の各々をランク付けすることは、ソーシャルグラフからの社会的つながりデータに更に基づく、請求項8に記載のシステム。前記候補画像一致は、前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたオブジェクトまたはオブジェクトカテゴリに対応する、請求項8に記載のシステム。1つまたは複数のコンピュータによって実行可能な命令を記憶するコンピュータ可読記憶装置であって、前記命令は、そのような実行時に、前記1つまたは複数のコンピュータに動作を実行させ、前記動作は、 1つまたは複数の画像を含む視覚クエリを、クライアント装置から受信することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられたオブジェクトまたはオブジェクトカテゴリを認識することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたオブジェクトまたはオブジェクトカテゴリに関連付けられた視覚的類似性基準を認識することと、 前記オブジェクトまたはオブジェクトカテゴリに関連付けられた前記視覚的類似性基準に基づいて、前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することと、 前記視覚的類似性基準に基づいて前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することに応答して、前記視覚クエリの前記1つまたは複数の画像のそれぞれと複数の潜在的な画像の一致の各々との間の視覚的類似性の1つまたは複数の測定値を判断することと、 前記視覚クエリの前記1つまたは複数の画像のそれぞれと前記候補画像一致の各々との間の視覚的類似性の前記1つまたは複数の測定値に基づいて、前記候補画像一致の各々をランク付けすることと、 候補画像一致の前記ランク付けから、前記視覚クエリに基づく関連画像として、少なくとも1つの画像を前記クライアント装置に提供することと 含む、コンピュータ可読記憶装置。前記動作は、 前記認識されたオブジェクトまたはオブジェクトカテゴリに関連付けられた視覚識別子と、前記視覚識別子に対応するユーザ選択可能リンクとを含む関連画像インターフェイスを生成すること を含み、 前記ユーザ選択可能リンクは、前記視覚クエリに基づく関連画像として前記クライアント装置に提供される候補画像一致の前記ランク付けからの前記少なくとも1つの画像に対応する、請求項15に記載のコンピュータ可読記憶装置。前記動作は、 前記視覚識別子に対応する前記ユーザ選択可能リンクに関連付けられたユーザ入力を受信することに応答して、前記クライアント装置上での表示のために、候補画像一致の前記ランク付けから前記少なくとも1つの画像を提供すること を含む、請求項16に記載のコンピュータ可読記憶装置。前記視覚クエリの前記1つまたは複数の画像に関連付けられたオブジェクトまたはオブジェクトカテゴリを認識することは、 前記視覚クエリの前記1つまたは複数の画像に関連付けられたテキストを認識することと、 前記視覚クエリの前記1つまたは複数の画像に関連付けられた前記認識されたテキストに基づいて、前記オブジェクトまたはオブジェクトカテゴリを検出することと を含む、請求項15に記載のコンピュータ可読記憶装置。前記視覚クエリの前記1つまたは複数の画像と一致するとして示される候補画像一致を判断することは、ソーシャルグラフからの社会的つながりデータに更に基づく、請求項15に記載のコンピュータ可読記憶装置。前記候補画像一致の各々をランク付けすることは、ソーシャルグラフからの社会的つながりデータに更に基づく、請求項15に記載のコンピュータ可読記憶装置。

说明书全文

開示する諸実施形態は、一般に、ソーシャルネットワークの情報および特定される1人または複数の人物の他の写真から得られた情報を利用して、最も良く一致する1人または複数の人物を特定することを促進することにより、画像クエリ内の顔に潜在的に一致する1人または複数の人物を特定することに関する。

ユーザが語または語句を検索エンジンに入し、様々な結果を受け取るテキストベースの検索または用語ベースの検索は、検索を行うための有用なツールである。しかし用語ベースのクエリでは、ユーザが関連語を入力できることが必要である。ときとして、ユーザは画像に関する情報を知りたい場合がある。例えば、ユーザは写真の中の人物の名前を知りたい場合がある。人は、写真内の人物の連絡先情報など、他の情報を知りたい場合もある。したがって、顔画像クエリを受け取り、その顔画像クエリ内の特定される人物に関係する様々な検索結果を提供することができるシステムが望ましい。

特開2009−059042号公報

米国特許出願公開第2009/0132264号明細書

特開2009−110147号公報

特開2007−316939号公報

特開2008−278510号公報

特開2006−285964号公報

特開2008−033755号公報

一部の実施形態によれば、顔画像を含む視覚クエリを処理する、コンピュータによって実施される方法が、1個または複数個のプロセッサと、その1個または複数個のプロセッサが実行するための1つまたは複数のプログラムを記憶するメモリとを有するサーバシステム上で実行される。この方法は、以下に概説するプロセスを含む。要求者から、それぞれの顔画像を含む1つまたは複数の顔画像を含む視覚クエリを受け取る。視覚的類似性基準に応じて、それぞれの顔画像に潜在的に一致する潜在的な画像の一致を特定する。その潜在的な画像の一致は、要求者に関するデータに応じて特定される1つまたは複数の画像源からの画像を含む。潜在的な画像の一致に関連する1人または複数の人物を特定する。特定した人物ごとに、複数のアプリケーションから得られる、要求者に対する社会的なつながりについての社会的つながりメトリクスを含む人物固有データを取得する。その複数のアプリケーションは、通信アプリケーション、ソーシャルネットワーキングアプリケーション、カレンダアプリケーション、および共同アプリケーションからなる群から選択される。それぞれの顔画像と潜在的な画像の一致との間の視覚的類似性についての1つまたは複数のメトリクスに応じて、および少なくとも社会的つながりメトリクスを含むランク付け情報にも応じて1人または複数の特定した人物をランク付けすることにより、順序付き人物一覧を生成する。次いで、その順序付き一覧からの少なくとも1つの人物識別子を要求者に送る。こうした方法は、以下の節の中で論じる追加のオプションを実行するためのプログラム命令を含んでもよい。 一部の実施形態によれば、顔画像を含む視覚クエリを処理するためのサーバシステムが提供される。このサーバシステムは、プログラムを実行するための1個または複数個のプロセッサと、その1個または複数個のプロセッサが実行するための1つまたは複数のプログラムを記憶するメモリとを含む。その1つまたは複数のプログラムは、以下に概説するプロセスのための命令を含む。要求者から、それぞれの顔画像を含む1つまたは複数の顔画像を含む視覚クエリを受け取る。視覚的類似性基準に応じて、それぞれの顔画像に潜在的に一致する潜在的な画像の一致を特定する。その潜在的な画像の一致は、要求者に関するデータに応じて特定される1つまたは複数の画像源からの画像を含む。潜在的な画像の一致に関連する1人または複数の人物を特定する。特定した人物ごとに、複数のアプリケーションから得られる、要求者に対する社会的なつながりについての社会的つながりメトリクスを含む人物固有データを取得する。その複数のアプリケーションは、通信アプリケーション、ソーシャルネットワーキングアプリケーション、カレンダアプリケーション、および共同アプリケーションからなる群から選択される。それぞれの顔画像と潜在的な画像の一致との間の視覚的類似性についての1つまたは複数のメトリクスに応じて、および少なくとも社会的つながりメトリクスを含むランク付け情報にも応じて1人または複数の特定した人物をランク付けすることにより、順序付き人物一覧を生成する。次いで、その順序付き一覧からの少なくとも1つの人物識別子を要求者に送る。こうしたシステムは、以下の節の中で論じる追加のオプションを実行するためのプログラム命令を含んでもよい。

一部の実施形態によれば、顔画像を含む視覚クエリを処理するための持続性コンピュータ可読記憶媒体が提供される。このコンピュータ可読記憶媒体は、コンピュータが実行するように構成される1つまたは複数のプログラムを記憶し、その1つまたは複数のプログラムは以下のことを実行するための命令を含む。要求者から、それぞれの顔画像を含む1つまたは複数の顔画像を含む視覚クエリを受け取る。視覚的類似性基準に応じて、それぞれの顔画像に潜在的に一致する潜在的な画像の一致を特定する。その潜在的な画像の一致は、要求者に関するデータに応じて特定される1つまたは複数の画像源からの画像を含む。潜在的な画像の一致に関連する1人または複数の人物を特定する。特定した人物ごとに、複数のアプリケーションから得られる、要求者に対する社会的なつながりについての社会的つながりメトリクスを含む人物固有データを取得する。その複数のアプリケーションは、通信アプリケーション、ソーシャルネットワーキングアプリケーション、カレンダアプリケーション、および共同アプリケーションからなる群から選択される。それぞれの顔画像と潜在的な画像の一致との間の視覚的類似性についての1つまたは複数のメトリクスに応じて、および少なくとも社会的つながりメトリクスを含むランク付け情報にも応じて1人または複数の特定した人物をランク付けすることにより、順序付き人物一覧を生成する。次いで、その順序付き一覧からの少なくとも1つの人物識別子を要求者に送る。こうしたコンピュータ可読記憶媒体は、以下の節の中で論じる追加のオプションを実行するためのプログラム命令を含んでもよい。

図面全体を通して、同様の参照番号は一致する部分を指す。

視覚クエリサーバシステムを含むコンピュータネットワークを示すブロック図である。

一部の実施形態による、視覚クエリに応答するプロセスを示すフローチャートである。

一部の実施形態による、対話型結果ドキュメントにより視覚クエリに応答するプロセスを示すフローチャートである。

一部の実施形態による、クライアントと視覚クエリサーバシステムとの間の通信を示すフローチャートである。

一部の実施形態によるクライアントシステムを示すブロック図である。

一部の実施形態によるフロントエンド視覚クエリ処理サーバシステムを示すブロック図である。

一部の実施形態による、視覚クエリを処理するために利用する並列検索システムの汎用システムを示すブロック図である。

一部の実施形態による、視覚クエリを処理するために利用するOCR検索システムを示すブロック図である。

一部の実施形態による、視覚クエリを処理するために利用する顔認識検索システムを示すブロック図である。

一部の実施形態による、視覚クエリを処理するために利用する画像−用語検索システムを示すブロック図である。

一部の実施形態による、例示的な視覚クエリのスクリーンショットを有するクライアントシステムを示す図である。

一部の実施形態による、境界ボックスを伴う対話型結果ドキュメントのスクリーンショットを有するクライアントシステムを示す図である。

一部の実施形態による、境界ボックスを伴う対話型結果ドキュメントのスクリーンショットを有するクライアントシステムを示す図である。

一部の実施形態による、タイプごとにコード化された対話型結果ドキュメントのスクリーンショットを有するクライアントシステムを示す図である。

一部の実施形態による、ラベルを伴う対話型結果ドキュメントのスクリーンショットを有するクライアントシステムを示す図である。

一部の実施形態による、結果一覧と同時に表示される対話型結果ドキュメントおよび視覚クエリのスクリーンショットを示す図である。

一部の実施形態による、顔画像を含む視覚クエリに応答するプロセスを示すフローチャートである。

一部の実施形態による、顔画像を含む視覚クエリに応答するプロセスを示すフローチャートである。

一部の実施形態による、視覚クエリ内の顔画像に潜在的に一致する人物の順序付き一覧を生成する際に使用する、様々な要素および特徴を示すフローチャートである。

一部の実施形態による、顔認識検索システムが利用する顔画像データベースのデータ構造の一部分を示すブロック図である。

一部の実施形態による、ソーシャルネットワークアプリケーションや通信アプリケーションなどの複数のアプリケーションにわたる人間同士の関係を示す図である。

一部の実施形態による、画像に由来する一部の特徴を示すブロック図である。

次に、その例を添付図面に示す諸実施形態について詳しく言及する。以下の詳細な説明では、本発明の完全な理解を与えるために数多くの具体的詳細を記載する。しかし、本発明はそれらの具体的詳細なしに実施され得ることが当業者には明らかであろう。他の例では、実施形態の諸側面を無用に不明瞭にしないように、よく知られている方法、手法、コンポーネント、回路、およびネットワークについて詳しくは記載していない。

本明細書では様々な要素を説明するために第1の、第2のなどの語を使用する場合があるが、これらの要素はこれらの語によって限定されるべきではないことも理解されたい。これらの語は、単にある要素を別の要素と区別するために使用する。例えば、本発明の範囲から逸脱せずに第1の接点を第2の接点と称することができ、同様に第2の接点を第1の接点と称することもできる。第1の接点および第2の接点はいずれも接点だが、同じ接点ではない、

本明細書の本発明の説明の中で使用する用語は、特定の実施形態を説明するためのものに過ぎず、本発明を限定するように意図されていない。本発明の説明および特許請求の範囲の中で使用するとき、単数形「a」、「an」および「the」は、特に明確な指示がない限り複数形も含むことを意図する。本明細書で使用するとき、用語「および/または」は、列挙する関連項目の1つまたは複数の任意のおよびあり得るすべての組合せを指し、包含することも理解されたい。さらに本明細書で使用するとき、用語「備える(comprises)」および/または「備えている(comprising)」は、述べた特徴、完全体、ステップ、動作、要素、および/またはコンポーネントが存在することを規定するが、1つもしくは複数の他の特徴、完全体、ステップ、動作、要素、コンポーネント、および/またはそれらのグループが存在すること、もしくは追加されることを除外しないことも理解されたい。

本明細書で使用するとき、用語「もし(if)」は、文脈に応じて「場合(when)」もしくは「とき(upon)」、または「決定することに応答して(in response to determining)」もしくは「検出することに応答して(in response to detecting)」を意味するものと解釈されてもよい。同様に、語句「決定する場合(if it is determined)」または「(述べた条件または事象を)検出する場合(if (a stated condition or event) it is detected)」は、文脈に応じて「決定するとき(upon determining)」もしくは「決定することに応答して(in response to determining)」、または「(述べた条件または事象を)検出するとき(upon detecting)」もしくは「(述べた条件または事象を)検出することに応答して(in response to detecting)」を意味するものと解釈されてもよい。

図1は、一部の実施形態による視覚クエリサーバシステムを含むコンピュータネットワークを示すブロック図である。コンピュータネットワーク100は、1つまたは複数のクライアントシステム102および視覚クエリサーバシステム106を含む。これらのコンポーネントを1つまたは複数の通信ネットワーク104が相互接続する。通信ネットワーク104は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、無線ネットワーク、有線ネットワーク、インターネット、またはそうしたネットワークの組合せを含む、様々なネットワークのうちの任意のものとしてもよい。

クライアントシステム102は、視覚クエリ(例えば図11の視覚クエリ1102)を受け取るためにクライアントシステムが実行するクライアントアプリケーション108を含む。視覚クエリとは、検索エンジンまたは検索システムにクエリとしてサブミットされる画像である。視覚クエリの非限定的な例には、写真、スキャンドキュメントおよびスキャン画像、ならびに絵図が含まれる。一部の実施形態では、クライアントアプリケーション108は、検索アプリケーション、ブラウザアプリケーション用の検索エンジンプラグイン、およびブラウザアプリケーション用の検索エンジン拡張機能からなる組から選択される。一部の実施形態では、クライアントアプリケーション108は、視覚クエリとして使用する任意形式の画像をユーザが検索ボックスの中にドラッグアンドドロップすることを可能にする「手当たり次第の(omnivorous)」検索ボックスである。

クライアントシステム102は、視覚クエリサーバシステム106にクエリを送り、視覚クエリサーバシステム106からデータを受け取る。クライアントシステム102は、視覚クエリサーバシステム106と通信することができる任意のコンピュータまたは他の装置としてもよい。非限定的な例には、デスクトップコンピュータおよびノートブックコンピュータ、メインフレームコンピュータ、サーバコンピュータ、携帯電話や携帯情報端末などのモバイル機器、ネットワーク端末、およびセットトップボックスが含まれる。

視覚クエリサーバシステム106は、フロントエンド視覚クエリ処理サーバ110を含む。フロントエンドサーバ110はクライアント102から視覚クエリを受け取り、その視覚クエリを同時処理用の複数の並列検索システム112に送る。検索システム112は互いに異なる視覚クエリ検索処理をそれぞれ実施し、自らの別個の検索処理により視覚クエリを処理するために、必要に応じて自らの対応するデータベース114にアクセスする。例えば顔認識検索システム112−Aは、画像クエリに対する顔の一致を探すために顔画像データベース114−Aにアクセスする。図9に関してより詳細に説明するように、視覚クエリが顔を含む場合、顔認識検索システム112−Aは顔画像データベース114−Aから1つまたは複数の検索結果(例えば名前、一致する顔等)を返す。別の例では、光学的文字認識(OCR)検索システム112−Bが、視覚クエリ内の任意の認識可能テキストを、1つまたは複数の検索結果として返すためのテキストへと変換する。光学的文字認識(OCR)検索システム112−Bでは、図8に関してより詳細に説明するように、特定のフォントまたはテキストパターンを認識するためにOCRデータベース114−Bにアクセスすることができる。

任意の数の並列検索システム112を使用してもよい。一部の例には、顔認識検索システム112−A、OCR検索システム112−B、(オブジェクトまたはオブジェクトカテゴリを認識し得る)画像−用語検索システム112−C、(本の表紙やCDなどの2D画像を認識するように構成してもよく、家具などの3D画像を認識するように構成してもよい)製品認識検索システム、(1Dおよび2D形式のバーコードを認識する)バーコード認識検索システム、固有表現認識検索システム、(エッフェル塔のような特定の有名な名所を認識するように構成することができ、ビルボードなど、特定の画像のコーパスを認識するように構成してもよい)ランドマーク認識、クライアントシステム102内のGPS受信機または携帯電話網が提供する地理位置情報によって支援される場所認識、色認識検索システム、および(視覚クエリに似た画像を検索して特定する)類似画像検索システムが含まれる。図1のシステム112−Nによって示す、さらなる検索システムを追加の並列検索システムとして加えることができる。OCR検索システムを除くすべての検索システムを、画像一致処理を実行する検索システムとして本明細書では集合的に定義する。OCR検索システムを含むすべての検索システムを、画像によるクエリ検索システムと集合的に呼ぶ。一部の実施形態では、視覚クエリサーバシステム106が、顔認識検索システム112−A、OCR検索システム112−B、および少なくとも1つの他の画像によるクエリ検索システム112を含む。

並列検索システム112は視覚検索クエリを個々に処理し、自らの結果をフロントエンドサーバシステム110に返す。一部の実施形態では、フロントエンドサーバ100は、結果を複合ドキュメントへと集約すること、表示するための結果の一部を選択すること、および結果をランク付けすることのうちの1つまたは複数など、図6に関してより詳細に説明するように検索結果に対して1つまたは複数の解析を行ってもよい。フロントエンドサーバ110は、検索結果をクライアントシステム102に伝える。

クライアントシステム102は、1つまたは複数の検索結果をユーザに提供し得る。それらの結果はディスプレイ上に、音声スピーカにより、またはユーザに情報を伝えるために使用する他の任意の手段によって提供することができる。ユーザは、様々な方法で検索結果と対話してもよい。一部の実施形態では、ユーザの選択、注釈、および検索結果との他の対話を視覚クエリサーバシステム106に伝送し、視覚クエリとともにクエリ/注釈データベース116内に記録する。クエリ/注釈データベース内の情報は、視覚クエリの結果を改善するために使用することができる。一部の実施形態では、クエリ/注釈データベース116からの情報を並列検索システム112に周期的にプッシュし、並列検索システム112はその情報の任意の関連部分を個々のデータベース114内に取り入れる。

コンピュータネットワーク100は、用語クエリに応答して検索を行うための用語クエリサーバシステム118を場合により含んでもよい。用語クエリとは、画像を含む視覚クエリとは対照的に、1つまたは複数の用語を含むクエリである。用語クエリサーバシステム118は、視覚クエリサーバシステム106内の様々な検索エンジンによってもたらされる情報を補足する検索結果を生成するために使用してもよい。用語クエリサーバシステム118から返される結果は、任意の形式を含み得る。用語クエリサーバシステム118は、テキストドキュメント、画像、映像等を含み得る。図1では用語クエリサーバシステム118を別個のシステムとして図示するが、場合により視覚クエリサーバシステム106が用語クエリサーバシステム118を含んでもよい。

視覚クエリサーバシステム106の動作に関するさらなる情報は、図2〜4のフローチャートに関して以下に示す。

図2は、本発明の特定の実施形態による、視覚クエリに応答するための視覚クエリサーバシステムの方法を示すフローチャートである。図2に示す操作のそれぞれは、コンピュータメモリまたはコンピュータ可読記憶媒体の中に記憶される命令に対応し得る。

視覚クエリサーバシステムが、クライアントシステムから視覚クエリを受け取る(202)。図1に関して説明したように、このクライアントシステムは、例えばデスクトップコンピューティング装置、モバイル機器、または別の同様の装置としてもよい(204)。図11に、クライアントシステムの一例上の視覚クエリの一例を示す。

視覚クエリは、任意の適切な形式の画像ドキュメントである。例えば視覚クエリは、写真、スクリーンショット、スキャン画像、または映像の複数のフレームのうちの1フレームもしくはシーケンスとすることができる(206)。一部の実施形態では、視覚クエリはコンテンツオーサリングプログラム(図5、736)が作成する絵図である。そのため、一部の実施形態ではユーザが視覚クエリを「描く」のに対し、他の実施形態ではユーザが視覚クエリをスキャンしまたは撮影する。一部の視覚クエリは、Acrobat、写真編集プログラム、描画プログラム、画像編集プログラムなどの画像生成アプリケーションを使用して作成される。例えば視覚クエリは、ユーザが自身の携帯電話上で友人の写真を撮り、その写真を視覚クエリとしてサーバシステムにサブミットすることから生じることができる。視覚クエリは、ユーザが雑誌のページをスキャンし、またはデスクトップコンピュータ上でウェブページのスクリーンショットをとり、そのスキャンまたはスクリーンショットを視覚クエリとしてサーバシステムにサブミットすることから生じることもできる。一部の実施形態では、視覚クエリはブラウザアプリケーションの検索エンジン拡張機能により、ブラウザアプリケーション用のプラグインにより、またはクライアントシステム102が実行する検索アプリケーションによりサーバシステム106にサブミットされる。視覚クエリは、クライアントシステムが遠隔設置されたサーバに伝送可能な画像をサポートするか、または生成する、(クライアントシステムが実行する)他のアプリケーションプログラムによってサブミットしてもよい。

視覚クエリは、テキスト要素と非テキスト要素との組合せとすることができる(208)。例えばクエリは、道路標識の隣に立っている人物など、画像およびテキストを含む雑誌ページのスキャンとすることができる。視覚クエリは、クライアントシステム内に埋め込まれるカメラによって撮影されたか、またはクライアントシステムによって、スキャンもしくは他の方法で受け取られたドキュメントからの人物の顔の画像を含むことができる。視覚クエリは、テキストだけを含むドキュメントのスキャンとすることもできる。視覚クエリは、森の中にいる数羽の鳥、人物とオブジェクト(例えば車、公園のベンチ等)、人物と動物(例えばペット、家畜、蝶等)など、数多くの別個のサブジェクトの画像とすることもできる。視覚クエリは、2つ以上の別個の要素を有してもよい。例えば視覚クエリは、バーコードと、製品の画像または製品パッケージ上の製品名とを含むことができる。例えば視覚クエリは、本のタイトル、表紙絵、およびバーコードを含む本の表紙の写真とすることができる。以下により詳細に論じるように、一部の例では1つの視覚クエリが、その視覚クエリの様々な部分に対応する2つ以上の別個の検索結果をもたらす。

サーバシステムは、以下のように視覚クエリを処理する。フロントエンドサーバシステムが、同時処理用の複数の並列検索システムに視覚クエリを送る(210)。各検索システムは互いに異なる視覚クエリ検索処理を実施し、すなわち個々の検索システムは独自の処理スキームにより視覚クエリを処理する。

一部の実施形態では、処理するために視覚クエリが送られる検索システムの1つが光学的文字認識(OCR)検索システムである。一部の実施形態では、処理するために視覚クエリが送られる検索システムの1つが顔認識検索システムである。一部の実施形態では、互いに異なる視覚クエリ検索処理を実行する複数の検索システムは、少なくとも光学的文字認識(OCR)、顔認識、ならびにOCRおよび顔認識以外の別の画像によるクエリ処理を含む(212)。他の画像によるクエリ処理は、これだけに限定されないが、製品認識、バーコード認識、オブジェクトまたはオブジェクトカテゴリ認識、固有表現認識、および色認識が含まれる1組の処理から選択される(212)。

一部の実施形態では、OCR検索システムの後処理として固有表現認識が行われ、有名な人物、位置、オブジェクトなどがあるかどうかOCRのテキスト結果を解析し、固有表現であると特定した用語を用語クエリサーバシステム(図1、118)内で検索する。他の実施形態では、画像−用語検索システムが、有名な名所、ロゴ、人物、アルバムカバー、商標等の画像を認識する。他の実施形態では、画像−用語検索システムとは別に、独特の固有表現の画像によるクエリ処理を利用する。オブジェクトまたはオブジェクトカテゴリ認識システムは、「車」のような総称的な結果の種類を認識する。一部の実施形態では、このシステムは製品ブランド、特定の製品モデルなども認識し、「ポルシェ」のようなより具体的な説明を提供する。検索システムの一部は、特別なユーザに固有の検索システムとすることができる。例えば、色認識および顔認識の特定のバージョンを、目の不自由な人が使用する専用の検索システムとすることができる。

フロントエンドサーバシステムが、並列検索システムから結果を受け取る(214)。一部の実施形態では、それらの結果に検索スコアが付随する。一部の視覚クエリでは、検索システムの一部は関連する結果を見出さない。例えば視覚クエリが花の写真であった場合、顔認識検索システムおよびバーコード検索システムは関連する結果を一切見出さない。一部の実施形態では、関連する結果が見出されない場合、ヌルまたはゼロの検索スコアをその検索システムから受け取る(216)。一部の実施形態では、あらかじめ定めた期間(例えば0.2秒、0.5秒、1秒、2秒、または5秒)を過ぎてもフロントエンドサーバが検索システムから結果を受け取らない場合、フロントエンドサーバは、あたかもそのタイムアウトしたサーバがヌルの検索スコアを生成したかのように受け取られる結果を処理し、他の検索システムから受け取る結果を処理する。

場合により、受け取った検索結果の少なくとも2つが所定の基準を満たすとき、それらの検索結果をランク付けする(218)。一部の実施形態では、所定の基準の1つが無効な結果を除去する。所定の基準は、結果が無効ではないことである。一部の実施形態では、所定の基準の1つが、所定の最小スコアを下回る(例えば適合率に関する)数値スコアを有する結果を除去する。場合により、複数の検索結果をフィルタする(220)。一部の実施形態では、結果の総数が定義済み閾値を上回る場合にのみ結果をフィルタする。一部の実施形態ではすべての結果をランク付けするが、所定の最小スコアを下回る結果は除外する。一部の視覚クエリでは、結果のコンテンツをフィルタする。例えば、結果の一部が個人情報または個人が保護する情報を含む場合、それらの結果をフィルタにかけて除去する。

場合により、視覚クエリサーバシステムは複合検索結果を作成する(222)。複合検索結果を作成することの一実施形態は、図3に関して説明するように、対話型結果ドキュメント内に複数の検索システムの結果を埋め込む場合である。用語クエリサーバシステム(図1、118)は、用語検索の結果を用いて並列検索システムのうちの1つからの結果を増補してもよく、その追加の結果はドキュメントもしくは情報源へのリンク、または視覚クエリに関連し得る追加情報を含むテキストおよび/もしくは画像である。したがって、例えば複合検索結果は、OCRの結果とOCRドキュメント内の固有表現へのリンクとを含んでもよい(224)。

一部の実施形態では、OCR検索システム(図1、112−B)またはフロントエンド視覚クエリ処理サーバ(図1、110)が、テキスト内の関連しそうな語を認識する。例えば、有名な人物や場所などの固有表現を認識し得る。固有表現は、クエリ用語として用語クエリサーバシステム(図1、118)にサブミットされる。一部の実施形態では、用語クエリサーバシステムがもたらす用語クエリの結果を、視覚クエリの結果の中に「リンク」として埋め込む。一部の実施形態では、用語クエリの結果が別個のリンクとして返される。例えば本の表紙の写真が視覚クエリである場合、その本についてオブジェクト認識検索システムが高スコアのヒットをもたらす可能性が高い。そのため、その本のタイトルを得るための用語クエリが用語クエリサーバシステム118上で実行され、視覚クエリの結果とともに用語クエリの結果が返される。一部の実施形態では、用語クエリの結果をラベル付けしたグループ内に提示して、それらを視覚クエリの結果と区別する。結果は個々に検索してもよく、または特に関連のある追加の検索結果をもたらすために、検索クエリ内で認識されるすべての固有表現を使用して検索を行ってもよい。例えば、視覚クエリがパリに関するスキャンされた旅行パンフレットである場合、返される結果は、用語クエリ「ノートルダム」についての検索を開始するための、用語クエリサーバシステム118へのリンクを含むことができる。同様に、複合検索結果は、一般に認められた有名な画像に関するテキスト検索の結果を含む。例えば同じ旅行パンフレットにおいて、「エッフェル塔」や「ルーブル」のようにパンフレット内に写真として示されている有名な目的地についての用語クエリの結果へのライブリンクも(たとえ用語「エッフェル塔」および「ルーブル」がパンフレット自体に登場しなくても)示してもよい。

次いで、視覚クエリサーバシステムが少なくとも1つの結果をクライアントシステムに送る(226)。典型的には、視覚クエリ処理サーバが複数の検索システムの少なくとも一部から複数の検索結果を受け取る場合、視覚クエリ処理サーバは、その複数の検索結果のうちの少なくとも1つをクライアントシステムに送る。一部の視覚クエリでは、1つの検索システムだけが関連する結果を返す。例えば、テキストの画像だけを含む視覚クエリでは、OCRサーバの結果だけが関連する場合がある。一部の視覚クエリでは、1つの検索システムからの1つの結果だけが関連する場合がある。例えば、スキャンしたバーコードに関係する製品だけが関連する場合がある。これらの例では、フロントエンド視覚処理サーバは、関連する1つまたは複数の検索結果だけを返す。一部の視覚クエリでは、複数の検索結果がクライアントシステムに送られ、その複数の検索結果は並列検索システムのうちの複数からの検索結果を含む(228)。これは、視覚クエリの中に複数の別個の画像がある場合に起こり得る。例えば、視覚クエリが馬に乗っている人物の写真であった場合、馬に関するオブジェクト認知結果とともに、その人物の顔認識の結果を表示することができる。一部の実施形態では、特定の画像によるクエリ検索システムのすべての結果をグループ化し、まとめて提供する。例えば、上位N個の顔認識結果を見出し「顔認識結果」の下に表示し、上位N個のオブジェクト認識結果を見出し「オブジェクト認識結果」の下にまとめて表示する。あるいは、以下に論じるように、特定の画像検索システムからの検索結果を画像領域によってグループ化することができる。例えば視覚クエリが2つの顔を含む場合、その両方が顔認識結果をもたらし、それぞれの顔についての結果が別個のグループとして提示される。一部の視覚クエリ(例えばテキストおよび1つまたは複数のオブジェクトの両方の画像を含む視覚クエリ)では、検索結果はOCRの結果と1つまたは複数の画像一致の結果とを含み得る(230)。

一部の実施形態では、ユーザが特定の検索結果についてもっと詳しく知りたい場合がある。例えば、視覚クエリがイルカの写真であり、「画像−用語」検索システムが用語「」、「イルカ」、「青」、および「ひれ足」を返す場合、ユーザは「ひれ足」についてのテキストベースクエリ用語検索を実行したい場合がある。ユーザが(例えば検索結果内の対応するリンクをクリックし、または他の方法で選択することにより指示するように)用語クエリによる検索を実行したい場合、クエリ用語サーバシステム(図1、118)にアクセスし、選択した1つまたは複数の用語による検索を実行する。対応する検索語の結果が、別個にまたは視覚クエリの結果と併せてクライアントシステム上に表示される(232)。一部の実施形態では、フロントエンド視覚クエリ処理サーバ(図1、110)が、自動で(すなわち最初の視覚クエリ以外のユーザコマンドを一切受け取ることなしに)視覚クエリについての1つまたは複数の最も可能性があるテキスト結果を選択し、用語クエリサーバシステム118上でそれらのテキスト結果を実行し、少なくとも1つの検索結果をクライアントシステムに送ることの一部として、視覚クエリの結果とともにそれらの用語クエリの結果をクライアントシステムに返す(232)。上記の例では、「ひれ足」がイルカの視覚クエリ写真についての第1の用語結果であった場合、フロントエンドサーバは「ひれ足」による用語クエリを実行し、視覚クエリの結果とともにそれらの用語クエリの結果をクライアントシステムに返す。視覚クエリの検索結果をユーザに送る前に、ユーザが選択するのではないかと思われる用語結果を自動で実行するこの実施形態は、ユーザの時間を節約する。一部の実施形態では、上記で説明したようにこれらの結果を複合検索結果として表示する(222)。他の実施形態では、結果は、複合検索結果の代わりに、または複合検索結果に加えて、検索結果一覧の一部である。

図3は、対話型結果ドキュメントにより視覚クエリに応答するプロセスを示すフローチャートである。最初の3つの動作(202、210、214)は図2に関して上述した。並列検索システムから受け取った検索結果から(214)、対話型結果ドキュメントを作成する(302)。

次に対話型結果ドキュメントを作成すること(302)について詳しく説明する。一部の視覚クエリでは、対話型結果ドキュメントが、視覚クエリのそれぞれの副部分の1つまたは複数の視覚的識別子を含む。それぞれの視覚的識別子は、検索結果の少なくとも1つへの少なくとも1つのユーザ選択可能リンクを有する。視覚的識別子は、視覚クエリのそれぞれの副部分を識別する。一部の視覚クエリでは、対話型結果ドキュメントが、1つまたは複数の結果への1つのユーザ選択可能リンクを有する1つの視覚的識別子しか有さない。一部の実施形態では、検索結果の1つまたは複数へのそれぞれのユーザ選択可能リンクが活性化領域を有し、その活性化領域は、対応する視覚的識別子に関連する視覚クエリの副部分に対応する。

一部の実施形態では、視覚的識別子が境界ボックスである(304)。一部の実施形態では、その境界ボックスは、図12Aに示すように視覚クエリの副部分を囲む。境界ボックスは正方形または長方形のボックス型である必要はなく、図12Bに示すように円形、楕円形、(例えば視覚クエリ内のオブジェクトに、視覚クエリ内のエンティティに、または視覚クエリの領域に)準拠する形、不整形、または他の任意の形を含む任意の種類の形とすることができる。一部の視覚クエリでは、境界ボックスが視覚クエリの副部分内の識別可能エンティティの境界の輪郭を描く(306)。一部の実施形態では、各境界ボックスが1つまたは複数の検索結果へのユーザ選択可能リンクを含み、そのユーザ選択可能リンクは、境界ボックスによって囲まれる、視覚クエリの副部分に対応する活性化領域を有する。ユーザが境界ボックス内の空間(ユーザ選択可能リンクの活性化領域)を選択すると、輪郭が描かれた副部分の中の画像に対応する検索結果が返される。

一部の実施形態では、図14に示すように視覚的識別子がラベルである(307)。一部の実施形態では、ラベルは、視覚クエリのそれぞれの副部分内の画像に関連する少なくとも1つの用語を含む。各ラベルは、それぞれの副部分上またはその付近において対話型結果ドキュメント内で提示するためにフォーマットされる。一部の実施形態ではラベルを色分けする。

一部の実施形態では、視覚クエリのそれぞれの副部分内で認識されるエンティティの種類に応じて、視覚的に区別できる方法で提示するためにそれぞれの視覚的識別子をフォーマットする。例えば図13に示すように、製品、人物、商標、および2つのテキスト領域を取り囲む境界ボックスを、各様に特色を与えられた透明な境界ボックスを表す互いに異なるクロスハッチングパターンを使ってそれぞれ提示する。一部の実施形態では、オーバーレイの色、オーバーレイパターン、ラベルの背景色、ラベルの背景パターン、ラベルのフォントの色、枠線色など、視覚的に区別できる方法で提示するために視覚的識別子をフォーマットする。

一部の実施形態では、対話型結果ドキュメント内のユーザ選択可能リンクは、視覚クエリの対応する副部分に関係する1つまたは複数の結果を含むドキュメントもしくはオブジェクトへのリンクである(308)。一部の実施形態では、少なくとも1つの検索結果が視覚クエリの対応する副部分に関係するデータを含む。そのため、ユーザがそれぞれの副部分に関連する選択可能リンクを選択すると、ユーザは視覚クエリのそれぞれの副部分内で認識されるエンティティに対応する検索結果に導かれる。

例えば、視覚クエリがバーコードの写真であった場合、そのバーコードが添付された包装の無関連部分である写真の部分があり得る。対話型結果ドキュメントは、バーコードだけを取り囲む境界ボックスを含んでもよい。ユーザが、輪郭が描かれたバーコードの境界ボックス内を選択すると、そのバーコードの検索結果が表示される。バーコードの検索結果は、1つの結果、そのバーコードに対応する製品名を含んでもよく、またはバーコードの結果は、その製品を購入、吟味等できる様々な場所など、いくつかの結果を含んでもよい。

一部の実施形態では、それぞれの視覚的識別子に対応する視覚クエリの副部分が1つまたは複数の語からなるテキストを含む場合、それぞれの視覚的識別子に対応する検索結果は、そのテキスト内の語の少なくとも1つによる用語クエリ検索の結果を含む。一部の実施形態では、それぞれの視覚的識別子に対応する視覚クエリの副部分が、所定の信頼性(または他の)基準を満たす少なくとも1つの一致(すなわち検索結果)が見出される人物の顔を含む場合、それぞれの視覚的識別子に対応する検索結果は、選択可能な副部分内に顔が含まれている人物、選択可能な副部分内に顔が含まれている人物の他の画像、およびその人物の顔に関する潜在的な画像の一致に関連する名前、ハンドル、連絡先情報、アカウント情報、アドレス情報、かかわりのあるモバイル機器の現在地のうちの1つまたは複数を含む。一部の実施形態では、それぞれの視覚的識別子に対応する視覚クエリの副部分が、所定の信頼性(または他の)基準を満たす少なくとも1つの一致(すなわち検索結果)が見出される製品を含む場合、それぞれの視覚的識別子に対応する検索結果は、製品情報、製品レビュー、その製品の購入を開始するオプション、その製品に対する入札を開始するオプション、同様の製品の一覧、および関連製品の一覧のうちの1つまたは複数を含む。

場合により、対話型結果ドキュメント内のそれぞれのユーザ選択可能リンクは、リンクを活性化する必要なしにドキュメント内に表示されるアンカーテキストを含む。アンカーテキストは、リンクを活性化するときに得られる情報に関係する主要語や重要語などの情報を提供する。アンカーテキストは、ラベルの一部として(307)、または境界ボックスの一部の中に(304)、またはユーザが1秒などの所定期間にわたりユーザ選択可能リンク上にカーソルを乗せるときに表示される追加情報として表示されてもよい。

場合により、対話型結果ドキュメント内のそれぞれのユーザ選択可能リンクは、テキストベースクエリ(本明細書では用語クエリと呼ぶこともある)に対応する情報またはドキュメントを検索するための検索エンジンへのリンクである。リンクを活性化することは検索エンジンによる検索の実行を引き起こし、クライアントシステムに結果が返されることを伴い、クエリおよび検索エンジンはリンクによって指定される(例えば検索エンジンはリンク内のURLによって指定され、テキストベースの検索クエリはリンクのURLパラメータによって指定される)。場合により、この例におけるリンクは、検索クエリ内のテキストまたは語に特性をもたせるアンカーテキストを含んでもよい。

一部の実施形態では、視覚クエリに応答して生成される対話型結果ドキュメントが、同じ検索システムからの結果に対応する複数のリンクを含むことができる。例えば、視覚クエリを人の集団の画像または写真としてもよい。対話型結果ドキュメントは、それぞれの人物を取り囲む境界ボックスを含んでもよく、その境界ボックスは活性化されると、その集団の中の顔ごとに顔認識検索システムからの結果を返す。一部の視覚クエリでは、対話型結果ドキュメント内の複数のリンクが、複数の検索システムからの検索結果に対応する(310)。例えば、人物と犬の写真が視覚クエリとしてサブミットされた場合、対話型結果ドキュメント内の境界ボックスは、その人物と犬とで別々に輪郭を描いてもよい。(対話型結果ドキュメント内の)人物を選択すると、顔認識検索システムからの検索結果が返され、(対話型結果ドキュメント内の)犬を選択すると、画像−用語検索システムからの結果が返される。一部の視覚クエリでは、対話型結果ドキュメントがOCRの結果と画像一致の結果とを含む(312)。例えば、標識の隣に立っている人物の写真が視覚クエリとしてサブミットされた場合、対話型結果ドキュメントは、その人物の視覚的識別子とその標識内のテキストの視覚的識別子とを含んでもよい。同様に、雑誌のスキャンが視覚クエリとして使用された場合、対話型結果ドキュメントは、そのページ上の広告内の写真または商標の視覚的識別子、ならびに同じくそのページ上の記事のテキストの視覚的識別子を含んでもよい。

対話型結果ドキュメントを作成した後、その対話型結果ドキュメントをクライアントシステムに送る(314)。一部の実施形態では、対話型結果ドキュメント(例えば図15、ドキュメント1200)を、図2に関して上記で論じたように1つまたは複数の並列検索システムからの検索結果一覧と併せて送る。一部の実施形態では、図15に示すように、対話型結果ドキュメントを、1つまたは複数の並列検索システムからの検索結果一覧の上にあるいはその一覧に隣接してクライアントシステムにおいて表示する(315)。

場合により、ユーザは、結果ドキュメント内の視覚的識別子を選択することにより結果ドキュメントと対話する。サーバシステムは、対話型結果ドキュメント内の視覚的識別子についてのユーザ選択に関する情報をクライアントシステムから受け取る(316)。上記で論じたように、一部の実施形態では、リンクは境界ボックス内の活性化領域を選択することによって活性化される。他の実施形態では、リンクは、境界ボックスではない視覚クエリの副部分の視覚的識別子をユーザが選択することによって活性化される。一部の実施形態では、リンクされた視覚的識別子は、ホットボタン、副部分の近くに位置するラベル、テキスト内の下線を引いた語、または視覚クエリ内のオブジェクトもしくはサブジェクトの他の表現である。

検索結果一覧が対話型結果ドキュメントとともに提示される実施形態では(315)、ユーザがユーザ選択可能リンクを選択すると(316)、選択されたリンクに対応する検索結果一覧内の検索結果が特定される。一部の実施形態では、選択されたリンクに対応する最初の結果にカーソルがジャンプし、または自動的に移動する。対話型結果ドキュメントおよび全検索結果一覧の両方を表示するにはクライアント102のディスプレイが小さすぎる一部の実施形態では、対話型結果ドキュメント内のリンクを選択することが、選択されたリンクに対応する少なくとも最初の結果を表示するように、検索結果一覧をスクロールまたはジャンプさせる。他の一部の実施形態では、対話型結果ドキュメント内のリンクをユーザが選択することに応答し、そのリンクに対応する最初の結果が結果一覧の最も上に表示されるように結果一覧を並べ替える。

一部の実施形態では、ユーザがユーザ選択可能リンクを選択すると(316)、視覚クエリサーバシステムが、視覚クエリの対応する副部分に関係する結果の少なくとも一部をユーザに表示するためにクライアントに送る(318)。一部の実施形態では、ユーザは複数の視覚的識別子を同時に選択することができ、選択した視覚的識別子のすべての結果の一部を同時に受け取る。他の実施形態では、対話型結果ドキュメント内の1つまたは複数のリンクをユーザが選択することに応答してほぼ瞬時に検索結果をユーザに提供するために、ユーザ選択可能リンクのいずれかをユーザが選択する前に、ユーザ選択可能リンクに対応する検索結果をクライアント上にあらかじめロードしておく。

図4は、クライアントと視覚クエリサーバシステムとの間の通信を示すフローチャートである。クライアント102が、ユーザ/クエリ/要求者側から視覚クエリを受け取る(402)。一部の実施形態では、視覚クエリシステムにサインアップし、または「オプトイン」しているユーザからのみ視覚クエリを受け付けることができる。一部の実施形態では、顔認識の一致を得るための検索は顔認識視覚クエリシステムにサインアップしているユーザに対してのみ実行される一方で、他の種類の視覚クエリは、顔認識部分に「オプトイン」しているかいないかに関係なく誰に対しても実行される。

上記で説明したように、視覚クエリの形式は多くの形態をとることができる。視覚クエリは、視覚クエリドキュメントの副部分内に位置する1つまたは複数のサブジェクトを含む可能性が高い。一部の視覚クエリでは、クライアントシステム102が視覚クエリに対してタイプ認識事前処理を実行する(404)。一部の実施形態では、クライアントシステム102が、この事前処理システム内で特定の認識可能パターンを検索する。例えば一部の視覚クエリでは、クライアントが色を認識し得る。一部の視覚クエリでは、クライアントは特定の副部分が(その領域が淡い空間によって囲まれる小さな濃い文字で構成されている等の理由で)テキストを含む可能性が高いと認識し得る。クライアントは、任意の数の事前処理タイプ認識器またはタイプ認識モジュールを含み得る。一部の実施形態では、クライアントが、バーコードを認識するためのタイプ認識モジュール(バーコード認識406)を有する。クライアントは、長方形領域内の特有の縞模様を認識することによってバーコードを認識し得る。一部の実施形態では、クライアントは、視覚クエリの特定のサブジェクトまたは副部分が顔を含む可能性が高いことを認識するためのタイプ認識モジュール(顔検出408)を有する。

一部の実施形態では、認識した「タイプ」を検証するためにユーザに返す。例えばクライアントシステム102は、「あなたの視覚クエリの中にバーコードが見つかりました。バーコードのクエリ結果を受け取りたいですか?」と述べるメッセージを返すことができる。一部の実施形態では、メッセージは、そのタイプが見つかった視覚クエリの副部分さえも示し得る。一部の実施形態では、この提示は図3に関して論じた対話型結果ドキュメントに似ている。例えばこの提示は、視覚クエリの副部分の輪郭を描いてもよく、その副部分が顔を含む可能性が高いことを示してもよく、ユーザに顔認識結果を受け取りたいかどうか尋ねてもよい。

クライアント102が視覚クエリのオプションの事前処理を実行した後、クライアントは、その視覚クエリを視覚クエリサーバシステム106、とりわけフロントエンド視覚クエリ処理サーバ110に送る。一部の実施形態では、事前処理が関連する結果をもたらした場合、すなわちタイプ認識モジュールの1つが、クエリまたはクエリの副部分が特定のタイプ(顔、テキスト、バーコード等)のものである可能性が高いことを示す一定の閾値を上回る結果をもたらした場合、クライアントは事前処理の結果に関する情報を伝える。 例えばクライアントは、視覚クエリの特定の副部分が顔を含むと顔認識モジュールが75%確信していることを示し得る。より一般には、事前処理の結果が、もしあれば、1つまたは複数のサブジェクトタイプ値(例えばバーコード、顔、テキスト等)を含む。場合により、視覚クエリサーバシステムに送られる事前処理の結果は、事前処理結果内の各サブジェクトタイプ値について、そのサブジェクトタイプ値に対応する視覚クエリの副部分を特定する情報、ならびに事前処理結果内の各サブジェクトタイプ値について、そのサブジェクトタイプ値の信頼水準を示す信頼値および/または視覚クエリの対応する副部分の特定についての信頼水準を示す信頼値のうちの1つまたは複数を含む。

フロントエンドサーバ110が、クライアントシステムから視覚クエリを受け取る(202)。受け取られる視覚クエリは、上記で論じた事前処理情報を含み得る。上記で説明したように、フロントエンドサーバが視覚クエリを複数の並列検索システムに送る(210)。特定の種類のサブジェクトを副部分が含んでいた可能性に関する事前処理情報をフロントエンドサーバ110が受け取る場合、フロントエンドサーバは、この情報を並列検索システムの1つまたは複数に伝えてもよい。例えばフロントエンドサーバは、特定の副部分が顔である可能性が高いという情報を伝えてもよく、それにより、顔認識検索システム112−Aは視覚クエリのその小区分を最初に処理することができる。同様に、その副部分を無視するために、または他の副部分を最初に解析するために、他の並列検索システムは(特定の副部分が顔である可能性が高いという)同一情報を送ることを使用してもよい。一部の実施形態では、フロントエンドサーバは、事前処理情報を並列検索システムに伝えないが、代わりにこの情報を使用して、並列検索システムから受け取る結果を自らが処理する方法を増強する。

図2に関して説明したように、一部の視覚クエリに関しては、フロントエンドサーバ110が並列検索システムから複数の検索結果を受け取る(214)。次いで、図2および図3に関して説明したように、フロントエンドサーバは、様々なランク付けおよびフィルタリングを実行してもよく、対話型検索結果ドキュメントを作成してもよい。特定の種類のサブジェクトを副部分が含んでいた可能性に関する事前処理情報をフロントエンドサーバ110が受け取る場合、フロントエンドサーバは、事前処理され認識されたサブジェクトタイプに一致する結果を優先することにより、フィルタおよび順序付けしてもよい。特定の種類の結果を要求したことをユーザが示した場合、フロントエンドサーバは結果を処理する際にユーザの要求を考慮に入れる。例えばフロントエンドサーバは、ユーザがバーコード情報だけを要求した場合、他のすべての結果をフィルタにかけて除去してもよく、または他の結果を列挙する前に要求された種類に関連するすべての結果を列挙する。対話型視覚クエリドキュメントが返される場合、サーバは、ユーザが関心をもっていると示した結果の種類に関連するリンクを事前に検索し得る一方で、対話型結果ドキュメント内に示される他のサブジェクトについては、関係する検索を行うためのリンクを提供するに過ぎない。次いで、フロントエンドサーバ110が、検索結果をクライアントシステムに送る(226)。

クライアント102が、サーバシステムから結果を受け取る(412)。該当する場合、これらの結果は事前処理段階で見つかる結果の種類に一致する結果を含む。例えば一部の実施形態では、これらの結果は、1つもしくは複数のバーコードの結果(414)、または1つもしくは複数の顔認識の結果(416)を含む。特定の種類の結果が見込まれることをクライアントの事前処理モジュールが示し、その結果が見つかった場合、その種類の見つかった結果を目立つように列挙する。

場合により、ユーザが結果の1つまたは複数を選択し、または注釈を付ける(418)。ユーザは、1つの検索結果を選択してもよく、特定の種類の検索結果を選択してもよく、かつ/または対話型結果ドキュメントの一部を選択してもよい(420)。結果が選択されることは、返した結果がクエリに関連していたという暗黙のフィードバックである。そのようなフィードバック情報は、将来のクエリ処理操作で利用することができる。注釈は返された結果に関する明示的なフィードバックを提供し、同じく将来のクエリ処理操作で利用することができる。注釈は、(誤ってOCRされた語を訂正するように)返された結果の一部を訂正すること、または(自由な形式のまたは構造化された)別個の注釈の形をとる。

ユーザが1つの検索結果を選択すること、一般にいくつかの同じ種類から「正しい」結果を選択すること(例えば顔認識サーバからの正しい結果を選択すること)は、解釈の中での選択(selection among interpretations)と呼ばれるプロセスである。ユーザが特定の種類の検索結果を選択すること、一般にいくつかの異なる種類の返される結果から関心のある結果の「種類」を選択すること(例えば雑誌の中の広告の視覚的結果ではなく、やはり同じページ上の記事のOCRされたテキストを選択すること)は、意図の曖昧性除去と呼ばれるプロセスである。図8に関して詳しく説明するように、ユーザは、OCRされたドキュメント内の特定のリンクされた語(認識されている固有表現など)を同様に選択してもよい。

ユーザは、代わりにまたは加えて、特定の検索結果に注釈を付けたいことがある。この注釈を付けることは、自由形式スタイルで、または構造化された形式で行ってもよい(422)。注釈は、結果の説明としてもよく、または結果のレビューとしてもよい。例えば注釈は、結果内の1つもしくは複数のサブジェクトの名前を示してもよく、または「これは良書だ」や「この製品は購入してから1年以内に壊れた」ことを示すことができる。注釈の別の例は、視覚クエリの副部分を取り囲むユーザによって描かれる境界ボックス、および境界ボックス内のオブジェクトまたはサブジェクトを特定するユーザによって提供されるテキストである。ユーザの注釈については図5に関してより詳細に説明する。

検索結果のユーザ選択および他の注釈をサーバシステムに送る(424)。フロントエンドサーバ110がその選択および注釈を受け取り、それらをさらに処理する(426)。この情報が、対話型結果ドキュメント内のオブジェクト、副領域、または用語の選択であった場合、その選択に関するさらなる情報を必要に応じて要求してもよい。例えば選択が1つの視覚的結果についての選択であった場合、その視覚的結果に関するさらなる情報が要求される。選択が(OCRサーバまたは画像−用語サーバからの)語であった場合、その語のテキスト検索が用語クエリサーバシステム118に送られる。選択が顔画像認識検索システムからの人物についての選択であった場合、その人物のプロファイルが要求される。選択が対話型検索結果ドキュメントの特定の部分についてのものであった場合、基礎をなす視覚クエリの結果が要求される。

サーバシステムが注釈を受け取る場合、図5に関して説明するように、その注釈はクエリ/注釈データベース116内に記憶される。その後、図7〜10に関して以下で論じるように、注釈データベース116からの情報を、並列サーバシステムの1つまたは複数のための個々の注釈データベースに周期的にコピーする。

図5は、本発明の一実施形態によるクライアントシステム102を示すブロック図である。クライアントシステム102は、典型的には1個または複数個の処理ユニット(CPU)702、1つまたは複数のネットワークインターフェイスもしくは他の通信インターフェイス704、メモリ712、およびこれらのコンポーネントを相互接続するための1つまたは複数の通信バス714を含む。クライアントシステム102は、ユーザインターフェイス705を含む。ユーザインターフェイス705は、ディスプレイ装置706を含み、場合によりキーボード、マウス、他の入力ボタン708などの入力手段を含む。あるいは、またはそれに加えて、ディスプレイ装置706はタッチセンス表面709を含み、その場合、ディスプレイ706/709はタッチセンスディスプレイである。タッチセンスディスプレイ706/709を有するクライアントシステムでは、物理的なキーボードはオプションである(例えばキーボード入力が必要な場合はソフトキーボードを表示してもよい)。さらに、一部のクライアントシステムは、マイクロフォンおよび音声認識を使用してキーボードを補足しまたは置換する。場合により、クライアント102は、自らの位置を求めるためのGPS(地球投影位置決定衛星)受信機または他の位置検出機器707を含む。一部の実施形態では、クライアントシステム102の位置を示す位置情報をクライアントシステム102が視覚クエリサーバシステムに提供することを必要とする、視覚クエリ検索サービスが提供される。

クライアントシステム102は、カメラやスキャナなどの画像取込装置710も含む。メモリ712には、DRAM、SRAM、DDR RAM、または他のランダムアクセス固体メモリデバイスなどの高速ランダムアクセスメモリが含まれ、1つまたは複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体記憶デバイスなどの不揮発性メモリが含まれ得る。メモリ712には、1個または複数個のCPU702から離れて位置する1つまたは複数の記憶装置が場合により含まれ得る。メモリ712あるいはメモリ712内の1つまたは複数の不揮発性メモリ装置は、持続性コンピュータ可読記憶媒体を含む。一部の実施形態では、メモリ712またはメモリ712のコンピュータ可読記憶媒体が、以下のプログラム、モジュール、およびデータ構造またはその一部を記憶する。 ・ 様々な基本システムサービスを処理し、ハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム716。 ・ クライアントシステム102を、1つまたは複数の通信ネットワークインターフェイス704(有線または無線)、およびインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1つまたは複数の通信ネットワークを介して他のコンピュータに接続するために使用するネットワーク通信モジュール718。 ・ 画像取込装置/カメラ710が取り込んだそれぞれの画像を処理するための画像取込モジュール720であって、それぞれの画像は(例えばクライアントアプリケーションモジュールにより)、視覚クエリとして視覚クエリサーバシステムに送ってもよい。 ・ これだけに限定されないが、視覚クエリサーバシステムに視覚クエリをサブミットするための画像によるクエリサブミットモジュール724、場合により、画像内の関心領域が選択されたこと(タッチセンスディスプレイ706/709上でのジェスチャなど)を検出し、その関心領域を視覚クエリとして準備する関心領域選択モジュール725、視覚クエリの結果を表示するための結果ブラウザ726、および場合により、フォームに記入するなどの構造化された注釈テキスト入力のためのオプションモジュール730を有し、または様々な形式からの注釈を受け付けることができる自由形式の注釈テキスト入力のためのオプションモジュール732を有し、ユーザが注釈用に画像の特定の副部分を選択することを可能にする画像領域選択モジュール734(本明細書では結果選択モジュールと呼ぶこともある)を有する注釈モジュール728を含む、画像によるクエリを行う様々な側面を処理するための1つまたは複数のクライアントアプリケーションモジュール722。 ・ 画像取込装置710により単に画像を取り込むのではなく、画像を作成しまたは編集することによりユーザが視覚クエリを作成することを可能にする、1つまたは複数のオプションのコンテンツオーサリングアプリケーション736、場合により、そのようなアプリケーション736の1つは、視覚クエリとして使用するための画像の副部分をユーザが選択できるようにする命令を含んでもよい。 ・ 視覚クエリサーバシステムに送る前に視覚クエリを事前処理する、オプションのローカル画像解析モジュール738。ローカル画像解析は、特定の種類の画像または画像内の副領域を認識し得る。そのようなモジュール738が認識し得る画像の種類の例には、顔タイプ(視覚クエリ内で認識される顔画像)、バーコードタイプ(視覚クエリ内で認識されるバーコード)、およびテキストタイプ(視覚クエリ内で認識されるテキスト)のうちの1つまたは複数が含まれる。 ・ 電子メールアプリケーション、電話アプリケーション、ブラウザアプリケーション、マッピングアプリケーション、インスタントメッセージングアプリケーション、ソーシャルネットワーキングアプリケーションなど、さらなるオプションのクライアントアプリケーション740。一部の実施形態では、作動可能検索結果を選択すると、該当する作動可能検索結果に対応するアプリケーションを起動し、またはそのアプリケーションにアクセスすることができる。

場合により、ユーザが注釈用に画像の特定の副部分を選択することを可能にする画像領域選択モジュール734は、ユーザが、必ずしもさらなる注釈を付けることなく検索結果を「正しい」ヒットとして選択することも可能にする。例えば、ユーザに上位N個の顔認識の一致を提示してもよく、ユーザがその結果一覧から正しい人物を選択してもよい。一部の検索クエリでは、複数の種類の結果が提示され、ユーザは結果の種類を選択する。例えば、画像クエリが木の隣に立っている人物を含むが、ユーザはその人物に関する結果だけに興味がある場合がある。したがって画像選択モジュール734は、ユーザが、どの画像の種類が「正しい」種類であるか、すなわちそのユーザが受け取りたいと思う種類であるかを指示することを可能にする。ユーザは、(フォームに記入するための)注釈テキスト入力モジュール730または自由形式注釈テキスト入力モジュール732のいずれかを使用し、個人的なコメントまたは説明的な言葉を加えることにより検索結果に注釈を付けたい場合もある。

一部の実施形態では、オプションのローカル画像解析モジュール738がクライアントアプリケーション(図1、108)の一部である。さらに一部の実施形態では、オプションのローカル画像解析モジュール738が、視覚クエリまたは視覚クエリの一部を事前処理しもしくは分類するためのローカル画像解析を実行するための、1つまたは複数のプログラムを含む。例えばクライアントアプリケーション722は、検索エンジンに視覚クエリをサブミットする前に画像がバーコード、顔、またはテキストを含むことを認識し得る。一部の実施形態では、視覚クエリが特定の種類の画像を含むとローカル画像解析モジュール738が検出する場合、そのモジュールは、対応する種類の検索結果に興味があるかどうかをユーザに尋ねる。例えば、ローカル画像解析モジュール738は、その一般的特徴に基づいて(すなわち誰の顔かを決定することなしに)顔を検出し得、視覚クエリサーバシステムにクエリを送る前にユーザに即時フィードバックを提供する。ローカル画像解析モジュール738は、「顔を検出しました。この顔について顔認識の一致を得たいですか?」のような結果を返してもよい。このようにすることで、視覚クエリサーバシステム(図1、106)の時間を節約し得る。一部の視覚クエリでは、フロントエンド視覚クエリ処理サーバ(図1、110)は、ローカル画像解析モジュール738が認識した画像の種類に対応する検索システム112にしか視覚クエリを送らない。他の実施形態では、検索システム112への視覚クエリは、検索システム112A〜Nのすべてに視覚クエリを送ってもよいが、ローカル画像解析モジュール738が認識した画像の種類に対応する、検索システム112からの結果をランク付けする。一部の実施形態では、視覚クエリサーバシステムの動作にローカル画像解析が影響を及ぼす様式は、クライアントシステムの構成、またはユーザもしくはクライアントシステムに関連する構成または処理パラメータによって決まる。さらに、任意の特定の視覚クエリの実際のコンテンツおよびローカル画像解析によってもたらされる結果は、クライアントシステムおよび視覚クエリサーバシステムのいずれかまたは両方において異なるように処理すべき異なる視覚クエリをもたらす場合がある。

一部の実施形態では、バーコード認識を2つのステップで行い、視覚クエリがバーコードを含むかどうかの解析を、ローカル画像解析モジュール738においてクライアントシステム上で実行する。次いで、視覚クエリがバーコードを含む可能性が高いとクライアントが判断する場合にのみ、視覚クエリをバーコード検索システムに渡す。他の実施形態では、バーコード検索システムがすべての視覚クエリを処理する。

場合により、クライアントシステム102は、追加のクライアントアプリケーション740を含む。

図6は、本発明の一実施形態によるフロントエンド視覚クエリ処理サーバシステム110を示すブロック図である。フロントエンドサーバ110は、典型的には1個または複数個の処理ユニット(CPU)802、1つまたは複数のネットワークインターフェイスもしくは他の通信インターフェイス804、メモリ812、およびこれらのコンポーネントを相互接続するための1つまたは複数の通信バス814を含む。メモリ812には、DRAM、SRAM、DDR RAM、または他のランダムアクセス固体メモリデバイスなどの高速ランダムアクセスメモリが含まれ、1つまたは複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体記憶デバイスなどの不揮発性メモリが含まれ得る。メモリ812には、1個または複数個のCPU802から離れて位置する1つまたは複数の記憶装置が場合により含まれ得る。メモリ812あるいはメモリ812内の1つまたは複数の不揮発性メモリ装置は、持続性コンピュータ可読記憶媒体を含む。一部の実施形態では、メモリ812またはメモリ812のコンピュータ可読記憶媒体が、以下のプログラム、モジュール、およびデータ構造またはその一部を記憶する。 ・ 様々な基本システムサービスを処理し、ハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム816。 ・ フロントエンドサーバシステム110を、1つまたは複数の通信ネットワークインターフェイス804(有線または無線)、およびインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1つまたは複数の通信ネットワークを介して他のコンピュータに接続するために使用するネットワーク通信モジュール818。 ・ クライアントシステム102から来る視覚クエリを処理し、それらの視覚クエリを複数の並列検索システムに送るためのクエリマネージャ820であって、本明細書のいたるところに記載するように、視覚クエリがクライアントによって生成された命令(例えば「顔認識検索のみ」)を含む場合など、一部の特別な状況では視覚クエリを検索システムのうちの1つだけに導くことがある。 ・ 1つまたは複数の並列検索システムからの結果を場合によりフィルタし、提示するために最上位のまたは「関連する」結果をクライアントシステム102に送るための結果フィルタリングモジュール822。 ・ 1つまたは複数の並列検索システムからの結果を場合によりランク付けし、提示するために結果をフォーマットするための結果ランク付け/フォーマットモジュール824。 ・ 結果ドキュメント作成モジュール826は、対話型検索結果ドキュメントを作成するために適切な場合に使用し、モジュール826は、これだけに限定されないが、境界ボックス作成モジュール828およびリンク作成モジュール830を含むサブモジュールを含んでもよい。 ・ 視覚クエリのそれぞれの副部分の視覚的識別子であるラベルを作成するための、ラベル作成モジュール831。 ・ ユーザから注釈を受け取り、それらの注釈を注釈データベース116に送るための注釈モジュール832。 ・ 視覚クエリに応答し、クライアント側のアクションを起動するようにそれぞれが構成される、1つまたは複数の作動可能検索結果要素を生成するための作動可能検索結果モジュール838であって、作動可能検索結果要素の例は、通話を開始するためのボタン、電子メールメッセージを開始するためのボタン、住所の地図を描くためのボタン、レストランを予約するためのボタン、および製品を購入するオプションを提供するためのボタンである。 ・ データベース自体834およびデータベースの索引836を含む、クエリ/注釈データベース116。

結果ランク付け/フォーマットモジュール824は、1つまたは複数の並列検索システム(図1、112−A〜112−N)から返される結果をランク付けする。既に上記で述べたように、一部の視覚クエリでは、1つの検索システムからの結果しか関連しない場合がある。そのような場合、その1つの検索システムからの関連する検索結果だけをランク付けする。一部の視覚クエリでは、数種類の検索結果が関連することがある。これらの例では、一部の実施形態において、結果ランク付け/フォーマットモジュール824は、より関連性が低い検索システムの結果に優先して、最も関連する結果(例えば最も高い関連性スコアを有する結果)を有する検索システムからの結果のすべてをランク付けする。他の実施形態では、結果ランク付け/フォーマットモジュール824が、関連する各検索システムからの最上位の結果を残りの結果に優先してランク付けする。一部の実施形態では、結果ランク付け/フォーマットモジュール824が、検索結果のそれぞれについて計算される関連性スコアに従って結果をランク付けする。一部の視覚クエリでは、並列視覚検索システムによる検索に加えて拡張(augmented)テキストクエリを実行する。一部の実施形態では、テキストクエリも実行する場合、それらの結果を視覚検索システムの結果と視覚的に区別できる方法で提示する。

結果ランク付け/フォーマットモジュール824はさらに、結果をフォーマットする。一部の実施形態では、結果が一覧形式で提示される。一部の実施形態では、結果が対話型結果ドキュメントによって提示される。一部の実施形態では、対話型結果ドキュメントおよび結果一覧の両方が提示される。一部の実施形態では、クエリの種類が、結果を提示する方法を決定づける。例えば、視覚クエリ内で複数の検索可能サブジェクトが検出される場合、対話型結果ドキュメントが作成されるのに対し、検索可能サブジェクトが1つしか検出されない場合、結果は一覧形式でのみ表示される。

結果ドキュメント作成モジュール826は、対話型検索結果ドキュメントを作成するために使用する。対話型検索結果ドキュメントは、1つまたは複数の検出済みおよび検索済みサブジェクトを有し得る。境界ボックス作成モジュール828は、検索済みサブジェクトのうちの1つまたは複数を取り囲む境界ボックスを作成する。境界ボックスは長方形のボックスとしてもよく、または1つもしくは複数のサブジェクトの1つもしくは複数の形の輪郭を描いてもよい。リンク作成モジュール830は、対話型検索結果ドキュメント内のそれぞれのサブジェクトに関連する検索結果へのリンクを作成する。一部の実施形態では、境界ボックス領域内でクリックすることは、リンク作成モジュールが挿入した対応するリンクを活性化する。

クエリ/注釈データベース116は、視覚クエリの結果を改善するために使用することができる情報を含む。一部の実施形態では、視覚クエリの結果が提示された後、ユーザは画像に注釈を付けてもよい。さらに一部の実施形態では、ユーザは、画像に注釈を付けてからその画像を視覚クエリ検索システムに送ってもよい。事前に注釈を付けることは、結果の的を絞ることにより、または視覚クエリ検索に並列して注釈が付けられた語に対するテキストベース検索を実行することにより、視覚クエリの処理を促進し得る。一部の実施形態では、潜在的な画像一致ヒットとして返されるように、注釈を付けたバージョンの写真を(例えばその画像および1つまたは複数の注釈を非公開ではないと指定することにより、例えばユーザに公開する許可が与えられている場合)公開することができる。例えば、ユーザが花の写真を撮り、その花に関する詳細な属および種の情報を与えることによりその画像に注釈を付ける場合、ユーザは、その花を探している視覚クエリ調査を行うすべての人にその画像を提示したい場合がある。一部の実施形態では、クエリ/注釈データベース116からの情報を並列検索システム112に周期的にプッシュし、並列検索システム112はその情報の関連部分を(もしあれば)個々のデータベース114内に取り入れる。

図7は、視覚クエリを処理するために利用する並列検索システムのうちの1つを示すブロック図である。図7は、本発明の一実施形態による「汎用」サーバシステム112−Nを示す。このサーバシステムは、視覚クエリ検索サーバ112−Nのうちのいずれか1つを表すという点でのみ汎用である。汎用サーバシステム112−Nは、典型的には1個または複数個の処理ユニット(CPU)502、1つまたは複数のネットワークインターフェイスもしくは他の通信インターフェイス504、メモリ512、およびこれらのコンポーネントを相互接続するための1つまたは複数の通信バス514を含む。メモリ512には、DRAM、SRAM、DDR RAM、または他のランダムアクセス固体メモリデバイスなどの高速ランダムアクセスメモリが含まれ、1つまたは複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体記憶デバイスなどの不揮発性メモリが含まれ得る。メモリ512には、1個または複数個のCPU502から離れて位置する1つまたは複数の記憶装置が場合により含まれ得る。メモリ512あるいはメモリ512内の1つまたは複数の不揮発性メモリ装置は、持続性コンピュータ可読記憶媒体を含む。一部の実施形態では、メモリ512またはメモリ512のコンピュータ可読記憶媒体が、以下のプログラム、モジュール、およびデータ構造またはその一部を記憶する。 ・ 様々な基本システムサービスを処理し、ハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム516。 ・ 汎用サーバシステム112−Nを、1つまたは複数の通信ネットワークインターフェイス504(有線または無線)、およびインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1つまたは複数の通信ネットワークを介して他のコンピュータに接続するために使用するネットワーク通信モジュール518。 ・ 特定のサーバシステムに固有の検索アプリケーション520であって、検索アプリケーション520は、例えばバーコード検索アプリケーション、色認識検索アプリケーション、製品認識検索アプリケーション、オブジェクトまたはオブジェクトカテゴリ検索アプリケーション等としてもよい。 ・ 特定の検索アプリケーションが索引を利用する場合は、オプションの索引522。 ・ 特定の検索アプリケーションに関連する画像を記憶するためのオプションの画像データベース524であって、記憶される画像データは、もしあれば、検索処理の種類に依拠する。 ・ 検索アプリケーションからの結果にランク付けするためのオプションの結果ランク付けモジュール526(関連性スコアリングモジュールと呼ぶこともある)であって、このランク付けモジュールは、検索アプリケーションからの結果ごとに関連性スコアを割り当ててもよく、所定の最小スコアに達する結果がない場合、このサーバシステムの結果が関連しないことを示すヌルまたはゼロ値スコアをフロントエンド視覚クエリ処理サーバに返してもよい。 ・ 注釈データベース(図1、116)から注釈情報を受け取り、注釈情報のいずれかが特定の検索アプリケーションに関連するかどうかを判定し、注釈情報のうちの決定した任意の関連部分をそれぞれの注釈データベース530内に取り入れるための注釈モジュール528。

図8は、本発明の一実施形態による、視覚クエリを処理するために利用するOCR検索システム112−Bを示すブロック図である。OCR検索システム112−Bは、典型的には1個または複数個の処理ユニット(CPU)602、1つまたは複数のネットワークインターフェイスもしくは他の通信インターフェイス604、メモリ612、およびこれらのコンポーネントを相互接続するための1つまたは複数の通信バス614を含む。メモリ612には、DRAM、SRAM、DDR RAM、または他のランダムアクセス固体メモリデバイスなどの高速ランダムアクセスメモリが含まれ、1つまたは複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体記憶デバイスなどの不揮発性メモリが含まれ得る。メモリ612には、1個または複数個のCPU602から離れて位置する1つまたは複数の記憶装置が場合により含まれ得る。メモリ612あるいはメモリ612内の1つまたは複数の不揮発性メモリ装置は、持続性コンピュータ可読記憶媒体を含む。一部の実施形態では、メモリ612またはメモリ612のコンピュータ可読記憶媒体が、以下のプログラム、モジュール、およびデータ構造またはその一部を記憶する。 ・ 様々な基本システムサービスを処理し、ハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム616。 ・ OCR検索システム112−Bを、1つまたは複数の通信ネットワークインターフェイス604(有線または無線)、およびインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1つまたは複数の通信ネットワークを介して他のコンピュータに接続するために使用するネットワーク通信モジュール618。 ・ 視覚クエリ内のテキストを認識しようと試み、文字画像を文字へと変換する光学的文字認識(OCR)モジュール620。 ・ OCRモジュール620が特定のフォント、テキストパターン、および文字認識に固有の他の特徴を認識するために利用する、オプションのOCRデータベース114−B。 ・ 変換された語を辞書と突き合わせて確認し、さもなければ辞書の語に一致する語の中のもしかしたら誤変換された文字を置換することにより、文字画像の文字への変換を改善するオプションのスペルチェックモジュール622。 ・ 変換されたテキスト内で固有表現を探し、認識した固有表現を用語クエリ内の用語として用語クエリサーバシステム(図1、118)に送り、用語クエリサーバシステムからの結果を、認識した固有表現に関連するOCR済みテキスト内に埋め込まれたリンクとして提供する、オプションの固有表現認識モジュール624。 ・ 変換されたセグメント(変換された文や段落など)をテキストセグメントのデータベースと突き合わせて確認し、さもなければテキスト一致アプリケーションのテキストセグメントに一致するOCR済みテキストセグメントの中のもしかしたら誤変換された文字を置換することにより、文字画像の文字への変換を改善するオプションのテキスト一致アプリケーション632であって、一部の実施形態では、テキスト一致アプリケーションが見つけるテキストセグメントがリンクとしてユーザに提供される(例えばユーザがNew York Timesの1ページをスキャンした場合、テキスト一致アプリケーションはNew York Timesのウェブサイト上に投稿されたすべての記事へのリンクを提供してもよい)。 ・ OCRされた結果を提示するためにフォーマットし、固有表現へのオプションのリンクをフォーマットし、さらにテキスト一致アプリケーションからの関係する任意の結果を場合によりランク付けするための結果ランク付け/フォーマットモジュール626。 ・ 注釈データベース(図1、116)から注釈情報を受け取り、注釈情報のいずれかがOCR検索システムに関連するかどうかを判定し、注釈情報のうちの決定した任意の関連部分をそれぞれの注釈データベース630内に取り入れるためのオプションの注釈モジュール628。

図9は、本発明の一実施形態による、少なくとも1つの顔画像を有する視覚クエリを処理するために利用する顔認識検索システム112−Aを示すブロック図である。顔認識検索システム112−Aは、典型的には1個または複数個の処理ユニット(CPU)902、1つまたは複数のネットワークインターフェイスもしくは他の通信インターフェイス904、メモリ912、およびこれらのコンポーネントを相互接続するための1つまたは複数の通信バス914を含む。メモリ912には、DRAM、SRAM、DDR RAM、または他のランダムアクセス固体メモリデバイスなどの高速ランダムアクセスメモリが含まれ、1つまたは複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体記憶デバイスなどの不揮発性メモリが含まれ得る。メモリ912には、1個または複数個のCPU902から離れて位置する1つまたは複数の記憶装置が場合により含まれ得る。メモリ912あるいはメモリ912内の1つまたは複数の不揮発性メモリ装置は、持続性コンピュータ可読記憶媒体を含む。一部の実施形態では、メモリ912またはメモリ912のコンピュータ可読記憶媒体が、以下のプログラム、モジュール、およびデータ構造またはその一部を記憶する。 ・ 様々な基本システムサービスを処理し、ハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム916。 ・ 顔認識検索システム112−Aを、1つまたは複数の通信ネットワークインターフェイス904(有線または無線)、およびインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1つまたは複数の通信ネットワークを介して他のコンピュータに接続するために使用するネットワーク通信モジュール918。 ・ クエリ内の顔画像に潜在的に一致する潜在的な画像の一致を特定するための視覚的識別モジュール924と、潜在的な画像の一致に関連する人物を特定するための個人識別モジュール926と、要求者(および/または画像内の別の人物)に対する社会的なつながりについてのメトリクスを含む人物固有データを取得するための社会的つながりメトリクスモジュール928と、顔画像と潜在的な一致との間の視覚的類似性についてのメトリクスに応じて、ならびに社会的つながりメトリクスに応じて、特定した人物のランク付けした一覧を生成するためのランク付けモジュール930とを含む、顔認識検索アプリケーション920。 ・ クエリ内の顔画像に潜在的に一致する画像を探すために検索する顔画像データベース114−Aは、ソーシャルネットワークの画像932、ウェブアルバムの画像934、写真共有の画像936、前回のクエリの画像938など、1つまたは複数の画像源を含む。特定のクエリに応答して使用する画像源は、要求者に関するデータに応じて特定する。一部の実施形態では、それらの画像源は、要求者のソーシャルネットワーキングアカウント、要求者のウェブアルバムなど、要求者に属しまたは関連するアカウント内の画像しか含まない。他の実施形態では、これらの情報源は、要求者と社会的につながりがある他の人々、例えばソーシャルグラフ上で要求者と直接つながりがある人々に属しまたは関連する画像を含む。場合により、顔画像データベース114−Aは有名人の画像940を含む。一部の実施形態では、この顔画像データベースは、パブリックドメイン内で適法な顔画像の供給業者など、外部の情報源から得た顔画像を含む。 ・ 画像特徴エクストラクタ942は、顔画像データベース114−A内の画像に由来する特徴を抽出し、その情報を人物固有データのデータベース964内に記憶する。一部の実施形態では、視覚的特徴エクストラクタ944を使い、屋内環境要素、屋外環境要素、性別要素、人種要素、眼鏡要素、顔ひげ要素、頭髪要素、帽子要素、眼の色要素、出現情報、同時出現情報などの視覚的特徴を抽出する。一部の実施形態では、メタデータ特徴エクストラクタ946を使い、日付情報、時間情報、位置情報などのメタデータの特徴を抽出する。 ・ 公開データベース948は、潜在的な画像の一致に関連する人物と要求者との間の、社会的なつながりについてのつながりメトリクスを含む人物固有データの情報源である。データは、これだけに限定されないが、ソーシャルネットワークデータベース922、ソーシャルマイクロブログデータベース950、ブログデータベース952、電子メールデータベース954、IMデータベース956、カレンダデータベース958、連絡先一覧960、および/または公開URL962を含む、複数のアプリケーションから得られる。 ・ 特定の人物に固有の情報を記憶する、人物固有データのデータベース964。人物固有データの一部またはすべてを公開データベースから得る。人物固有データについては、図18A〜Cに関してより詳細に説明する。 ・ 提示するために結果をフォーマットするための結果フォーマットモジュール966であって、一部の実施形態では、フォーマットされる結果が、潜在的な画像の一致および人物固有データのデータベース964からの情報の一部を含む。 ・ 注釈データベース(図1、116)から注釈情報を受け取り、注釈情報のいずれかが顔認識検索システムに関連するかどうかを判定し、注釈情報のうちの決定した任意の関連部分をそれぞれの注釈データベース970内に記憶するための注釈モジュール968。 ・ 人物位置モジュール972は、要求者、および視覚クエリ内の顔画像への潜在的な一致として特定される1人または複数の人物の現在地に関する位置情報を取得する。人物位置モジュール972により位置情報を取得すること、および位置情報を使用して検索アプリケーション920による顔画像に対する人物の突き合わせを改善することについては、図16A、17、18A、および18Cに関して以下に論じる。

図10は、本発明の一実施形態による、視覚クエリを処理するために利用する画像−用語検索システム112−Cを示すブロック図である。一部の実施形態では、この画像−用語検索システムは視覚クエリ内のオブジェクトを認識する(インスタンス認識)。他の実施形態では、この画像−用語検索システムは視覚クエリ内のオブジェクトカテゴリを認識する(タイプ認識)。一部の実施形態では、この画像−用語システムは、オブジェクトおよびオブジェクトカテゴリの両方を認識する。この画像−用語検索システムは、視覚クエリ内の画像に関する潜在的な用語の一致を返す。画像−用語検索システム112−Cは、典型的には1個または複数個の処理ユニット(CPU)1002、1つまたは複数のネットワークインターフェイスもしくは他の通信インターフェイス1004、メモリ1012、およびこれらのコンポーネントを相互接続するための1つまたは複数の通信バス1014を含む。メモリ1012には、DRAM、SRAM、DDR RAM、または他のランダムアクセス固体メモリデバイスなどの高速ランダムアクセスメモリが含まれ、1つまたは複数の磁気ディスク記憶装置、光学ディスク記憶装置、フラッシュメモリ装置、または他の不揮発性固体記憶デバイスなどの不揮発性メモリが含まれ得る。メモリ1012には、1個または複数個のCPU1002から離れて位置する1つまたは複数の記憶装置が場合により含まれ得る。メモリ1012あるいはメモリ1012内の1つまたは複数の不揮発性メモリ装置は、持続性コンピュータ可読記憶媒体を含む。一部の実施形態では、メモリ1012またはメモリ1012のコンピュータ可読記憶媒体が、以下のプログラム、モジュール、およびデータ構造またはその一部を記憶する。 ・ 様々な基本システムサービスを処理し、ハードウェア依存タスクを実行するためのプロシージャを含むオペレーティングシステム1016。 ・ 画像−用語検索システム112−Cを、1つまたは複数の通信ネットワークインターフェイス1004(有線または無線)、およびインターネット、他の広域ネットワーク、ローカルエリアネットワーク、メトロポリタンエリアネットワークなどの1つまたは複数の通信ネットワークを介して他のコンピュータに接続するために使用するネットワーク通信モジュール1018。 ・ 画像検索データベース114−C内で、視覚クエリ内の1つまたは複数のサブジェクトに一致する画像を検索する、画像−用語検索アプリケーション1020。 ・ 視覚クエリの1つまたは複数のサブジェクトに似た画像を探すために、検索アプリケーション1020によって検索され得る画像検索データベース114−C。 ・ テキストベースクエリ検索エンジン1006を使用して画像を検索する際にユーザが使用するテキスト用語を記憶する、用語−画像逆索引1022。 ・ 潜在的な画像の一致をランク付けし、かつ/または用語−画像逆索引1022内で確認される、潜在的な画像の一致に関連する用語をランク付けするための、結果ランク付け/フォーマットモジュール1024。 ・ 注釈データベース(図1、116)から注釈情報を受け取り、注釈情報のいずれかが画像−用語検索システム112−Cに関連するかどうかを判定し、注釈情報のうちの決定した任意の関連部分をそれぞれの注釈データベース1028内に記憶するための注釈モジュール1026。

図5〜図10は、本明細書に記載の諸実施形態の構造上の概略図であるよりも、むしろ1組のコンピュータシステム内にあり得る様々な機能についての機能上の説明であることを意図する。実際には、および当業者によって理解されているように、別々に図示した項目を組み合わせることができ、一部の項目を分けてもよい。例えば、これらの図面の中で別々に示した一部の項目を単一のサーバ上に実装することができ、単一の項目を1つまたは複数のサーバによって実装することができる。視覚クエリの処理を実施するために使用するシステムの実際の数、およびそれらのシステム間でどのように機能を割り振るのかは実施形態ごとに異なる。

本明細書に記載の方法のそれぞれは、持続性コンピュータ可読記憶媒体の中に記憶され、1つまたは複数のサーバもしくはクライアントの1個または複数個のプロセッサによって実行される命令に準拠し得る。上記に特定したモジュールまたはプログラム(すなわち命令のセット)は、必ずしも別個のソフトウェアプログラム、プロシージャ、またはモジュールとして実装する必要はなく、よって様々な実施形態において、これらのモジュールの様々なサブセットを組み合わせ、またさもなければ再編成してもよい。図5〜図10に示す操作のそれぞれは、コンピュータメモリまたは持続性コンピュータ可読記憶媒体の中に記憶される命令に対応し得る。

図11は、例示的な視覚クエリ1102のスクリーンショットを有するクライアントシステム102を示す。図11に示すクライアントシステム102は、携帯電話、携帯型音楽プレーヤ、携帯型電子メール装置などのモバイル機器である。クライアントシステム102は、ディスプレイ706、およびこの図面の中に示すボタンのような1つまたは複数の入力手段708を含む。一部の実施形態では、ディスプレイ706がタッチセンスディスプレイ709である。タッチセンスディスプレイ709を有する実施形態では、ディスプレイ709上に表示されるソフトボタンが電気機械的ボタン708の一部またはすべてを場合により置換してもよい。以下により詳細に説明するように、タッチセンスディスプレイは、視覚クエリの結果と対話する際にも役立つ。クライアントシステム102は、カメラ710などの画像取込機構も含む。

図11は、店の棚の上にあるパッケージの写真または映像フレームである視覚クエリ1102を示す。ここに記載する実施形態では、視覚クエリは、2つの次元のそれぞれにおいて視覚クエリのサイズに画素単位で対応する解像度を有する、二次元画像である。この例における視覚クエリ1102は、三次元オブジェクトの二次元画像である。視覚クエリ1102は、背景要素、製品パッケージ1104、ならびに人物の画像1106、商標の画像1108、製品の画像1110および様々なテキスト要素1112を含む、パッケージ上の様々な種類のエンティティを含む。

図3に関して説明したように、視覚クエリ1102をフロントエンドサーバ110に送り、フロントエンドサーバ110は視覚クエリ1102を複数の並列検索システム(112A〜N)に送り、結果を受け取って対話型結果ドキュメントを作成する。

図12Aおよび図12Bは、対話型結果ドキュメント1200の一実施形態のスクリーンショットを有するクライアントシステム102をそれぞれ示す。対話型結果ドキュメント1200は、視覚クエリ1102のそれぞれの副部分についての1つまたは複数の視覚的識別子1202を含み、その副部分は、検索結果の一部へのユーザ選択可能リンクをそれぞれ含む。図12Aおよび図12Bは、境界ボックス1202(例えば境界ボックス1202−1、1202−2、1202−3)である視覚的識別子を有する対話型結果ドキュメント1200を示す。図12Aおよび図12Bに示す実施形態では、ユーザは、境界ボックス1202によって輪郭が描かれる空間内の活性化領域上でタップすることにより、特定の副部分に対応する検索結果の表示を活性化する。例えばユーザは、人物の画像を取り囲んでいる境界ボックス1306(図13)上でタップすることにより、その人物の画像に対応する検索結果を活性化することになる。他の実施形態では、タッチセンスディスプレイではなく、マウスまたはキーボードを使用して選択可能リンクを選択する。一部の実施形態では、ユーザが境界ボックス1202をプレビューするとき(すなわちユーザが境界ボックス上でシングルクリックし、一度タップし、またはポインタを乗せるとき)、第1の対応する検索結果を表示する。ユーザがその境界ボックスを選択するとき(すなわちユーザがダブルクリックし、二度タップし、または別の機構を使用して選択したことを示すとき)、そのユーザは複数の対応する検索結果の表示を活性化する。

図12Aおよび図12Bでは、視覚的識別子は、視覚クエリの副部分を取り囲んでいる境界ボックス1202である。図12Aは、正方形または長方形の境界ボックス1202を示す。図12Bは、ドリンクボトルの境界ボックス1202−3など、視覚クエリの副部分内の特定可能エンティティの境界の輪郭を描く境界ボックス1202を示す。一部の実施形態では、それぞれの境界ボックス1202が、その中により小さな境界ボックス1202を含む。例えば、図12Aおよび図12Bでは、パッケージを識別する境界ボックス1202−1が、商標を識別する境界ボックス1202−2および残りの境界ボックス1202のすべてを取り囲む。テキストを含む一部の実施形態では、テキスト用語の一部のためのアクティブホットリンク1204も含まれる。図12Bは、「Active Drink」および「United States」がホットリンク1204として表示されている一例を示す。これらの用語に対応する検索結果は、用語クエリサーバシステム118から受け取る結果であるのに対し、境界ボックスに対応する結果は、画像によるクエリ検索システムからの結果である。

図13は、視覚クエリ内で認識されたエンティティのタイプごとにコード化された対話型結果ドキュメント1200のスクリーンショットを有するクライアントシステム102を示す。図11の視覚クエリは、人物の画像1106、商標の画像1108、製品の画像1110、および様々なテキスト要素1112を含む。そのため、図13内に表示される対話型結果ドキュメント1200は、人物1306、商標1308、製品1310、および2つのテキスト領域1312を取り囲む複数の境界ボックス1202を含む。図13の境界ボックスは、各様に特色を与えられた透明な境界ボックス1202を表す別個のクロスハッチングを使ってそれぞれ提示する。一部の実施形態では、オーバーレイの色、オーバーレイパターン、ラベルの背景色、ラベルの背景パターン、ラベルのフォントの色、境界ボックスの枠線色など、視覚的に区別できる方法で提示するために境界ボックスの視覚的識別子(および/または対話型結果ドキュメント1200内のラベルもしくは他の視覚的識別子)をフォーマットする。認識される特定のエンティティについてのタイプコード化を図13の境界ボックスに関して図示するが、タイプごとのコード化は、ラベルである視覚的識別子にも適用することができる。

図14は、ラベル1402が図11の視覚クエリ1102のそれぞれの副部分の視覚的識別子である、対話型結果ドキュメント1200のスクリーンショットを有するクライアント装置102を示す。ラベルの視覚的識別子1402は、対応する検索結果の一部へのユーザ選択可能リンクをそれぞれ含む。一部の実施形態では、その選択可能リンクは、ラベル1402の領域内に表示される説明的テキストによって識別される。一部の実施形態は、1つのラベル1402の中に複数のリンクを含む。例えば図14では、飲み物を飲んでいる女性の上にあるラベルが、その女性に関する顔認識の結果へのリンクと、その特定の写真に関する画像認識の結果(例えば同じ写真を使用する他の製品や広告の画像)へのリンクとを含む。

図14では、ラベル1402が、対話型結果ドキュメントのそれぞれの副部分上に位置する、テキストを有する部分的に透明な領域として表示される。他の実施形態では、それぞれのラベルが、対話型結果ドキュメントのそれぞれの副部分上には位置しないが、その付近に配置される。一部の実施形態では、図13に関して論じたのと同じ方法でラベルをタイプごとにコード化する。一部の実施形態では、ユーザは、ラベル1302の縁または外周縁によって輪郭が描かれる空間内の活性化領域上でタップすることにより、ラベル1302に対応する特定の副部分に対応する検索結果の表示を活性化する。図12Aおよび図12Bの境界ボックスに関して上記で論じたのと同じプレビュー機能および選択機能が、ラベルである視覚的識別子1402にも当てはまる。

図15は、結果一覧1500と同時に表示される対話型結果ドキュメント1200および元の視覚クエリ1102のスクリーンショットを示す。図12〜図14に示すように、一部の実施形態では対話型結果ドキュメント1200を単独で表示する。図15に示すように、他の実施形態では対話型結果ドキュメント1200を元の視覚クエリと同時に表示する。一部の実施形態では、視覚クエリの結果一覧1500を、元の視覚クエリ1102および/または対話型結果ドキュメント1200とともに同時に表示する。結果一覧1500を対話型結果ドキュメント1200と同時に表示するかどうかは、クライアントシステムの種類およびディスプレイ706上の空間量によって決まり得る。一部の実施形態では、クライアントシステム102は、(視覚クエリサーバシステムにサブミットする視覚クエリに応答して)結果一覧1500および対話型結果ドキュメント1200の両方を受け取るが、ユーザが対話型結果ドキュメント1200の下方にスクロールする場合、結果一覧1500だけを表示する。クライアントシステム102は、視覚クエリに応答して結果一覧1500を受け取り、クライアントシステム102において局所的に記憶するので、これらの実施形態の一部では、クライアントシステム102は、ユーザが選択する視覚的識別子1202/1402に対応する結果を再度サーバにクエリする必要なしに表示する。

一部の実施形態では、結果一覧1500を複数のカテゴリ1502へと編成する。各カテゴリは少なくとも1つの結果1503を含む。一部の実施形態では、結果1503と区別するためにカテゴリのタイトルを強調表示する。カテゴリ1502は、その計算されたカテゴリウェイトに応じて順序付けられる。一部の実施形態では、カテゴリウェイトは、そのカテゴリ内の最上位のN個の結果の重みの組合せである。そのため、より関連性のある結果をもたらした可能性が高いカテゴリを最初に表示する。認識された同一エンティティについて複数のカテゴリ1502(図15に示す顔画像認識の一致および画像の一致など)が返される実施形態では、最初に表示されるカテゴリがより高いカテゴリウェイトを有する。

図3に関して説明したように、一部の実施形態では、クライアントシステム102のユーザが対話型結果ドキュメント1200内の選択可能リンクを選択すると、カーソルが適切なカテゴリ1502またはそのカテゴリ内の最初の結果1503に自動的に移動する。あるいは、クライアントシステム102のユーザが対話型結果ドキュメント内の選択可能リンクを選択すると、選択されたリンクに関連する1つまたは複数のカテゴリが最初に表示されるように、結果一覧1500が並べ替えられる。これは、例えば対応する検索結果を識別する情報を使って選択可能リンクをコード化することにより、または対応する選択可能リンクを示すように、もしくは対応する結果カテゴリを示すように検索結果をコード化することによって達成される。

一部の実施形態では、検索結果のカテゴリが、それらの検索結果をもたらす画像によるクエリ検索システムに対応する。例えば図15では、カテゴリの一部は、製品の一致1506、ロゴの一致1508、顔認識の一致1510、画像の一致1512である。元の視覚クエリ1102および/または対話型結果ドキュメント1200も、クエリ1504などのカテゴリタイトルにより同様に表示してもよい。同様に、用語クエリサーバが行う任意の用語検索の結果も、ウェブの結果1514などの別個のカテゴリとして表示してもよい。他の実施形態では、視覚クエリ内の複数のエンティティが、同じ画像によるクエリ検索システムからの結果をもたらす。例えば視覚クエリは、顔認識検索システム112−Aからの別個の結果を返すことになる2つの異なる顔を含むことができる。そのため一部の実施形態では、カテゴリ1502を、検索システムごとにではなく、認識するエンティティごとに分ける。一部の実施形態では、認識したエンティティの画像を認識エンティティカテゴリヘッダ1502の中に表示し、それにより、たとえ両方の結果が同じ画像によるクエリ検索システムによってもたらされても、認識したそのエンティティの結果を認識した別のエンティティの結果と区別することができる。例えば図15では、製品の一致カテゴリ1506が2つのエンティティ製品のエンティティを含み、そのため、それぞれが複数の対応する検索結果1503を有する、箱入りの製品1516およびボトル入りの製品1518である2つのエンティティカテゴリ1502を含む。一部の実施形態では、カテゴリを、認識するエンティティおよび画像によるクエリシステムの種類ごとに分けることができる。例えば図15では、製品の一致カテゴリの製品の下で、関連する結果を返した2つの別個のエンティティがある。

一部の実施形態では、結果1503がサムネイル画像を含む。例えば、図15の顔認識の一致結果について示すように、「女優X」および「ソーシャルネットワークの友人Y」に関する顔の一致写真の小さなバージョン(サムネイル画像とも呼ぶ)が、その画像内の人物の名前などの何らかのテキスト記述とともに表示される。

図16A〜図16Bは、一部の実施形態による、顔画像を含む視覚クエリに応答するプロセスを示すフローチャートである。これらの図面に示す操作のそれぞれは、コンピュータメモリまたは持続性コンピュータ可読記憶媒体の中に記憶される命令に対応することができる。顔認識検索システム112−Aが、1つまたは複数の顔画像をその中に有する視覚クエリを要求者から受け取る(1602)。一部の実施形態では、視覚クエリが少なくとも1つの顔を含むことを、フロントエンド視覚クエリ処理サーバ110が判定する。つまり、視覚クエリが顔認識検索システム112−Aによって処理される場合、その視覚クエリの画像の少なくとも一部が潜在的な顔を含むと判定されている。一部の状況では、複数の友人の写真や数人の集合写真など、視覚クエリが複数の顔を含む。視覚クエリが複数の顔画像を含む一部の事例では、要求者がそれらの顔のうちの1つにしか興味がない場合がある。そのため一部の実施形態では、視覚クエリが少なくともそれぞれの顔画像と第2の顔画像とを含む場合、潜在的な画像の一致を特定する前に、システムが、それぞれの顔画像の選択を要求者から受け取る。例えば一部の実施形態では、システムがそれぞれの潜在的な顔を特定し、クエリ内のどの1つまたは複数の顔が特定されることを要求者が望むのかに関する確認を要求する。

それぞれの顔画像に潜在的に一致する画像を特定する(1604)。これらの画像を、潜在的な画像の一致と呼ぶ。潜在的な画像の一致は、視覚的類似性基準に応じて特定される。さらに、潜在的な画像の一致は、要求者に関するデータに応じて特定される1つまたは複数の画像源から特定される(1606)。一部の実施形態では、要求者に関するデータを要求者のプロファイル情報から得る。一部の実施形態では、要求者のプロファイル情報を要求者から直接得る。あるいは、またはそれに加えて、要求者のプロファイル情報をソーシャルネットワークから受け取る。潜在的な画像の一致は、タグ付き画像、すなわち画像内の1人または複数の人物に関する個人識別子を含む画像を含む。一部の実施形態では、1つまたは複数の画像源には、要求者の1つまたは複数のソーシャルネットワーキングデータベース、1つまたは複数のウェブアルバム、1つまたは複数の写真共有データベース、およびその要求者に関連する他の画像源からの画像が含まれる。さらに一部の実施形態では、潜在的な画像の一致を得るために検索される画像源には、有名人の画像のデータベース(図9、940)も含まれる。一部の実施形態では、潜在的な画像の一致を得るために検索される画像源には、要求者の友人のまたは知人の、1つまたは複数のソーシャルネットワーキングデータベース、1つまたは複数のウェブアルバム、1つまたは複数の写真共有データベース、およびその要求者に関連する他の画像源からの画像も含まれる。要求者の友人のまたは知人のデータベースからの画像を含む実施形態では、どのデータベースを含めるのかについての決定を行う。例えば一部の実施形態では、所定の最大数の友人または知人のデータベースを含める。他の実施形態では、ソーシャルネットワーキングの直接の友人のデータベースだけを含める。

次いで、潜在的な画像の一致に関連する1人または複数の人物を特定する(1608)。一部の実施形態では、特定した画像の一致に関連する個人識別タグから1人または複数の人物を特定する。例えばこのシステムは、Bob Smith、Joe Jones、およびPeter Johnsonが、男の友人の画像を含むクエリに対する潜在的な画像の一致に関連する人物であると特定することができ、その理由は、これらの3人の人物が要求者に関連する他の画像内でタグ付けされており、これらの3人の人物がクエリ内の顔画像に視覚的に類似しているからである。

特定した人物ごとに、複数のアプリケーションから得られる社会的つながりメトリクスを含む人物固有データを取得する(1610)。その複数のアプリケーションには、通信アプリケーション、ソーシャルネットワーキングアプリケーション、カレンダアプリケーション、および共同アプリケーションが含まれる(1612)。例えばこれらのアプリケーションには、Facebook、Twitter、Buzz、G-mail(電子メールおよびIM)、ウェブカレンダ、「LiveJournal」などのブログ、個人の公開URL、およびこれらに関連する任意の連絡先一覧などのアプリケーションが含まれ得る。一部の実施形態では、これらのアプリケーション上の「公の」公表情報からのみデータを得る。他の実施形態では、データが要求者に属しまたは要求者と明確に共有されている場合、そのデータを得る。一部の実施形態では、人物固有データは、(図18Aに関してさらに詳細に論じるように)特定した個別の人物の名前、住所、職業、グループの帰属関係、関心、年齢、出身地、個人的統計、および仕事情報を含む。一部の実施形態では、この情報を上述したアプリケーションの1つまたは複数から収集する。

人物固有データは、特定した個別の人物と要求者との間の社会的なつながりについてのメトリクスである、社会的つながりメトリクスを含む(1614)。一部の実施形態では、この社会的つながりメトリクスは、上述したアプリケーションの1つまたは複数にわたる社会的なつながりについてのメトリクスを含む。例えば、この社会的つながりメトリクスは、特定した個別の人物と要求者とがソーシャルネットワーキングウェブサイト上で友人であるのかどうか、(もしあれば)要求者と特定した個別の人物とにより交換された電子メールおよび/またはIMメッセージの数、ならびに要求者と特定した個別の人物とが互いのソーシャルマイクロブログの投稿をフォローするかどうか等の1つまたは複数を考慮に入れることができる。

一部の実施形態では、特定した個別の人物に関する人物固有データは、その個別の人物の他の画像に由来する特徴も含む(1616)。一部の実施形態では、これらの特徴には、日付情報、時間情報、位置情報など、画像のメタデータ情報が含まれる。他の実施形態では、個別の人物の他の画像に由来する特徴には、屋内環境要素、屋外環境要素、性別要素、人種要素、眼鏡要素、顔ひげ要素、頭髪要素、帽子要素、眼の色要素などの視覚的要素が含まれる。さらに他の実施形態では、個別の人物の他の画像に由来する特徴には、1つまたは複数の画像源内で個別の人物が出現する量に関する出現情報、ならびに/または1つもしくは複数の画像源からの画像内で個別の人物が同時に出現する量、および第2の人物と同時に出現する量に関する情報が含まれる。

場合により、一部の実施形態では、人物位置モジュール972(図9)が、要求者の現在地情報および特定した個別の人物の現在地情報を得る(1618)。例えば、要求者または特定した個別の人物の現在地は、モバイル機器内に位置するGPS受信機から、その人物が使用するデスクトップ装置のIPアドレスから、その人物の自宅住所もしくは勤務先住所から、または(「私は現在ボストンの会議にいます」など)その人物について公開されている位置から得ることができる。

次いで、それぞれの顔画像と潜在的な画像の一致との間の視覚的類似性についての1つまたは複数のメトリクスに応じて、および少なくとも社会的つながりメトリクスを含むランク付け情報にも応じて1人または複数の特定した人物をランク付けすることにより、順序付き人物一覧を生成する(1620)。ランク付けに影響を及ぼすこれらのおよび他の要素については、図17に関して以下により詳細に論じる。

図16Bに示すようにこのプロセスは続く。場合により、オプトインリストを確認し、1つまたは複数の人物識別子を要求者に公開できるかどうかについての判定を行う(1622)。一部の実施形態では、この確認は、潜在的に一致する1つまたは複数の画像が、要求者自身の1つまたは複数のアカウント以外の情報源からのものである場合、または特定した個別の人物のタグ付き画像を要求者自身のアカウントが含まない場合に行う。

次いで、その順序付き一覧からの少なくとも1つの人物識別子を要求者に送り(1624)、それにより1人または複数の人物を特定する。一部の実施形態では、人物識別子が名前である。他の実施形態では、人物識別子がハンドル、電子メールアドレス、ニックネーム等である。一部の実施形態では、プロファイル写真、視覚クエリに最も良く一致する特定した人物の画像などの代表的な写真を人物識別子とともに送る。そのような実施形態では、潜在的な一致として複数の人物を特定した場合、特定した個別の人物の代表的な写真を画像クエリに対する応答とともに送る。一部の実施形態では、連絡先情報や最近の公の投稿の抜粋などの追加情報も人物識別子とともに送る。他の実施形態では、人物識別子に加え、要求者と画像内の人物との間に見つかるつながりも返す。例えばJoe Smithについてのランク付けされた結果は、「Joe Smithはあなたのアカウントの複数において知人としてリストアップされています」や、「あなたもJoe SmithもPalo Alto Tennis Clubのメンバです」や、「あなたもJoe SmithもKaren Jonesと友人です」という一文を含むことができる。要求者に返す結果には、その人物の連絡先情報、グループへの所属、ソーシャルグラフによる要求者と一致画像内の人物との間の人々の名前など、さらなる情報を含めることができる。一部の実施形態では、要求者に提示される増補された情報は、その要求者が(例えば自身のプロファイル内の構成値により、または視覚クエリ内のパラメータにより、または視覚クエリの種類により)明示的にまたは黙示的に指定する。一部の実施形態では、要求者に複数の人物識別子が送られる場合、特定される下位の人物よりも、特定される上位の人物に関するより多くの情報を提供する。

一部の実施形態では、1つまたは複数の人物識別子とともに、視覚クエリのコピー(またはそれぞれの顔画像を有するクエリの一部)も送る(1626)。元の視覚クエリの中に複数の顔画像があり、1つまたは複数の顔画像が明確に特定される場合、一部の実施形態では、特定される視覚クエリ内の人々の1人または複数にも視覚クエリのコピーを送る。したがって、集合写真を撮り、複数の人がその写真のコピーをほしい場合、要求者はその人たちの連絡先情報を探し、その写真のコピーをその人たちに手動で送る必要はない。一部の実施形態では、コピーを送る前に、特定した人々の1人または複数にそのコピーを送るべきことを要求者が最初に確認しなければならない。

一部の実施形態では、要求者から個人識別子の選択を受け取る(1628)。次いでその選択に応答して、選択された人物識別子に対応するデータを要求者に送る(1630)。一部の実施形態では、このデータは、人物識別子に関連する1つまたは複数の画像、人物識別子に関連する連絡先情報、人物識別子に関連する公開プロファイル情報等を含む。一部の実施形態では、この情報の一部またはすべてを要求者の連絡先一覧内に記憶するオプション、または特定した人物について要求者の連絡先情報を更新するオプションを要求者に与える。一部の実施形態では、この情報は要求者の視覚クエリに関連し、または人物識別子に対応する顔画像を有するクエリの一部を連絡先一覧情報とともに記憶する。

さらに一部の実施形態では、選択された人物識別子に対応する個別の人物の追加画像として視覚クエリの顔画像を記憶する(1632)。一部の実施形態では、その画像を、画像源の前回のクエリ部分(図9、938)の中に記憶する。一部の実施形態では、追加のデータを含めるために画像に注釈を付ける機会を要求者に与える。要求者が注釈データを入力する例では、顔認識検索システム112−Aがその注釈データを受け取り、記憶する(1634)。注釈モジュール(図9、968)は、注釈を受け付けて将来の顔認識検索を改善する。例えば、ユーザがある人物の写真にその人物の名前により注釈を付ける場合、将来の顔認識クエリでその写真を使用してその人物を認識することができる。一部の実施形態では、プライバシ上の理由から、その追加の注釈付き人物写真は、顔認識処理を補強するために顔認識検索システム112−Aによって使用され得るが、元の要求者を除く誰にも画像結果として返されない。一部の実施形態では、視覚クエリ内の特定される実際の人物だけが、画像を公開する(または要求者以外の人々が入手できるようにする)ことを許可される。一部の実施形態では、人物を明確に特定すると、その人物のソーシャルネットワーク内の人々のために、その画像を将来のクエリの結果として返すことを許可するかどうかを尋ねる要求をその人物に送る。

一部の実施形態では、ステップ1604で、同一人物の複数の画像を取得することがある。潜在的な一致画像を取得し、それらの画像が同一人物のものであると判定すると(この判定は、画像がどちらも同じ個人IDを有し、同じもしくは同様の人物固有データ(名前、住所等)を有し、または同じもしくは同様の社会的つながりを有することに気付くことによって行うことができる)、それらの画像を同じデータに関連付け、残りの処理ステップの間、単一ユニットのように扱う。場合により、ステップ1624において同じ人物識別子により2つ以上の画像が返される場合、画像クエリに対する応答の中で、同じ人物識別子の複数の取得画像が返される。

図17は、視覚クエリ内の顔画像に潜在的に一致する人物の順序付き一覧を生成する際に使用する、諸要素および特徴を示すフローチャートである。このフローチャートは、上記で論じたステップ1620に関するさらなる情報を提供する。

一部の実施形態では、ソーシャルネットワークのつながりメトリクスに応じて順序付き人物一覧内の個別の人物のランク付けスコアを決定する際、様々な要素を使用する(1702)。一部の実施形態では、1つまたは複数の通信アプリケーション上での個別の人物と要求者との間の通信量を求め、その後個別の人物のランク付けスコアを決定し、個別の人物のランク付けスコアを決定する際の要素は、1つまたは複数の通信アプリケーション上での個別の人物と要求者との間の求めた通信量である(1704)。通信アプリケーションには、ソーシャルネットワーキングアプリケーション、ソーシャルマイクロブログ、電子メールアプリケーション、および/またはインスタントメッセージングアプリケーションが含まれ得る。例えば、個別の人物が1つまたは複数の通信アプリケーションにより要求者と大量に通信している場合(例えば電子メールやソーシャルネットワークの投稿による大量の通信)、要求者はその個別の人物を非常によく知っている可能性が高く、よって視覚クエリ内の顔画像は、その個別の人物である可能性が高い。一部の実施形態では、この要素は通信量が所定の閾値(例えば設定した通信回数、一定期間内の通信回数、または全通信のうちの一定の割合)を上回る場合にのみ使用する。一部の実施形態では、1つまたは複数の通信アプリケーション上での個別の人物と要求者との間の通信量が閾値を超えるかどうかを顔認識検索システム112−Aが判定し、個別の人物のランク付けスコアを決定する際の要素は、1つまたは複数の通信アプリケーション上での個別の人物と要求者との間の通信量が閾値を超えるかどうかについての判定である。

一部の実施形態では、それぞれのソーシャルネットワーキングアプリケーション内で要求者と個別の人物とが直接つながっているかどうかの判定を行い、その後個別の人物のランク付けスコアを決定し、個別の人物のランク付けスコアを決定する際の要素は、それぞれのソーシャルネットワーキングアプリケーション内で要求者と個別の人物とが直接つながっているかどうかの判定である(1706)。例えば、要求者と個別の人物とが友人として直接つながっている場合、要求者はその個別の人物を非常によく知っている可能性が高く、よって視覚クエリ内の顔画像は、その個別の人物である可能性が高い。

個別の人物に関する人物固有データが、個別の人物の名前、住所、職業、グループの帰属関係、関心、年齢、出身地、個人的統計、および/または仕事情報のうちの2つ以上など、複数の特徴を含む場合、要求者についても同じ情報を、顔認識検索システム112−Aがそのような情報を入手できる範囲内で取得する。次いで、要求者の人物固有データが、特定した個別の人物の人物固有データに類似する程度に応じて、1つまたは複数の個人類似性メトリクス(personal similarity metrics)を決定する。特定した個別の人物のランク付けスコアを決定し、特定した個別の人物のランク付けスコアを決定する際の1つまたは複数の要素は、1つまたは複数の個人類似性メトリクスである(1708)。例えば要求者と個別の人物とが同様の年齢、同様の職業、および同様のグループのメンバである場合、両者は友人である可能性が高く、よって視覚クエリ内の顔画像は、その個別の人物である可能性が高い。

要求者および特定した人物の両方の現在地情報を成功裏に得る状況において、特定した個別の人物のランク付けスコアを決定し、特定した個別の人物のランク付けスコアを決定する際の要素は、要求者の現在地情報が特定した個別の人物の現在地情報に一致するかどうかである(1710)。例えば、要求者および個別の人物の両者が同じ場所にいると判定される場合、その近接性は、視覚クエリ内の顔画像がその個別の人物である可能性を高める。要求者および個別の人物が同じ場所にいないと判定される場合はなおさら、近接性がないことは、視覚クエリ内の顔画像がその個別の人物である可能性を著しく低下させる。さらに一部の実施形態では、要求者および特定した人物の両者の位置履歴または位置ログを取得し、一致がないか互いに比較する。一部の実施形態では、要求者および特定した人物の位置ログを、クエリ画像自体に由来する位置(および/または日時)的特徴とさらに比較する。例えば、画像が7月2日にSanta Cruz, CAで撮られたことをクエリの位置情報が示し、要求者および特定した人物の両者の位置ログも、2人が7月2日にSanta Cruz, CAにいたことを示す場合、この場所の一致は、視覚クエリ内の顔画像がその個別の人物の顔画像である可能性を高める。

個別の人物の人物固有データが、個別の人物の他の画像に由来する特徴も含む実施形態では(この実施形態についてはステップ1616に関して論じた)、ランク付けは、受け取ったクエリと個別の人物の他の画像に由来する特徴との間の類似性にさらに準拠する(1712)。個別の人物のランク付けスコアを決定する際は様々な要素を使用し、それらの要素は、個別の人物の他の画像に由来するこれらの特徴に準拠する(1714)。

一部の実施形態では、個別の人物の他の画像に由来する特徴には、画像取込日情報(例えば曜日、日付、および/または完全な日付)および画像取込時間情報が含まれる。次いで、受け取ったクエリが、個別の人物の1つまたは複数の他の画像の日時情報と同様の画像取込日時情報を有する程度に応じて、1つまたは複数の類似性メトリクスを決定する。個別の人物のランク付けスコアを決定し、個別の人物のランク付けスコアを決定する際の1つまたは複数の要素は、1つまたは複数の類似性メトリクスである(1716)。一部の実施形態では、この類似性メトリクスはブール値である(例えば、はい/いいえや1/0)。他の実施形態では、類似性メトリクスはブール値のベクトルである(例えば同じ日、はい/いいえ、1時間以内、はい/いいえ、5時間以内、はい/いいえ等)。類似性メトリクスは、類似性を測る(例えば0から1の)数値とすることができる。一部の実施形態では、個別の人物の他の画像ごとに類似性メトリクスを決定するが、実施形態によっては、個別の人物の画像のすべてについての階級値(group value)を決定する。一部の実施形態では、画像に由来するもう1つの特徴は場所/位置情報であり、この場所/位置情報は、上記で論じたように追加のまたは代わりの類似性メトリクスとして使用することができる。例えば、視覚クエリが1つまたは複数の他の画像と同様の日付、時間、および/または位置情報を有する場合、その類似性は、視覚クエリ内の顔画像が、同様の日付、時間、および/または位置情報を有する1つまたは複数の他の画像内にいた個別の人物である可能性を高める。

一部の実施形態では、個別の人物の他の画像に由来する特徴には、1つまたは複数の画像源からの画像内に個別の人物が出現する量に関する出現情報が含まれる。これらの実施形態の一部では、個別の人物のランク付けスコアを決定する際の要素は、個別の人物の出現情報である(1718)。例えば、他の多数の画像が個別の人物を含む場合、要求者はその個別の人物を非常によく知っている可能性が高く、そのことは、視覚クエリ内の顔画像がその個別の人物の顔画像である可能性を高める。

一部の実施形態では、個別の人物の他の画像に由来する特徴には、屋内環境要素、屋外環境要素、性別要素、人種要素、眼鏡要素、顔ひげ要素、頭髪要素、帽子要素、洋服要素、および眼の色要素のうちの1つまたは複数を含む、視覚的要素が含まれる。これらの実施形態の一部では、個別の人物のランク付けスコアを決定する際の1つまたは複数の要素は、個別の人物の視覚的要素を含む(1720)。

場合によっては、視覚クエリが複数の顔画像を含む。視覚クエリ内に複数の顔画像がある場合、それらの顔画像間の相互のつながりが、それらの顔画像を正しく特定するのに役立つ場合がある。例えば、それらの顔画像が強い社会的つながりを有しまたは他の画像内に一緒に登場する場合、そうした事実は、それらの顔画像がクエリ画像内でも一緒である可能性を高める。一部の実施形態では、視覚クエリが少なくともそれぞれの顔画像と第2の顔画像とを含む。視覚的類似性基準に従って第2の顔画像に潜在的に一致する、(本明細書では第2の潜在的な画像の一致と呼ぶ)画像を特定する。この第2の潜在的な画像の一致は、要求者に関するデータに応じて特定される1つまたは複数の画像源からの画像である。次いで、第2の潜在的な画像の一致に関連する第2の人物を特定する。この決定のために、第2の人物が高い確度で特定されると仮定する。それぞれの顔画像に対する潜在的な一致として特定した人物ごとに、第2の人物に対する社会的なつながりについての第2の社会的つながりメトリクスを含む、人物固有データを複数のアプリケーションから得る。次いで、少なくとも第2の社会的つながりメトリクスを含むランク付け情報にさらに準拠して1人または複数の特定した人物をランク付けすることにより、順序付き人物一覧を生成する。そのため、個別の人物のランク付けは、クエリ内の第2の人物に対する社会的なつながりについてのメトリクスを含む、第2の社会的つながりメトリクスにさらに準拠する(1722)。つまり一部の実施形態では、順序付き人物一覧を生成する際、要求者に対する社会的なつながりおよび第2の人物に対する社会的なつながりの両方を使用する。

他の実施形態では、最良の一致を見出すために、第2の人物と潜在的な一致として特定した個別の人物との間で、上記で論じた他の要素の1つまたは複数を比較する。例えば、第2の人物と個別の人物とが同じ会社に雇われ、同様の日付/時間情報を有する他の画像内に登場し、または互いに大量に通信する場合、この2人を正しく特定する際にこれらの要素を使用することができる。別の例では、個別の人物の他の画像に由来する特徴には、1つまたは複数の画像源からの画像内に個別の人物と第2の人物とが同時に出現する量に関する情報が含まれ、個別の人物のランク付けスコアを決定するとき、個別の人物のランク付けスコアを決定する際の要素は、1つまたは複数の画像源からの画像内にその人物と第2の人物とが同時に出現する量である(1724)。

図18Aは、顔認識検索システム112−Aが利用する顔画像データベース114−Aのデータ構造の一部分を示すブロック図である。一部の実施形態では、顔画像データベースは、要求者に関するデータに応じて特定される1つまたは複数の画像源から得る、ある人物の1つまたは複数の画像1802を含む。一部の実施形態では、顔画像データベース114−Aは、その人物の固有ID1804または人物識別子も含む。その人物に関する追加情報は人物識別子1804に関連付けられ、人物固有データのデータベース964内に記憶される。視覚クエリ内の顔画像についての潜在的な一致を決定する際、その追加情報の一部またはすべてを使用する。例えば一致するグループの帰属関係1812や強い社会的つながり1814など、要求者に対する社会的なつながりについてのメトリクスに応じて人物をランク付けすることにより、潜在的な画像の一致に関連する特定した人物の順序付き一覧を生成する。特定した人物の順序付き一覧を決定するとき、視覚クエリ内の顔画像に視覚的に類似している潜在的な画像に加え、人物固有データのデータベース964からのデータも使用する。人物固有データのデータベース964は、これだけに限定されないが、固有ID1804によって特定される人物の名前1806、住所1808、職業1810、グループの帰属関係1812、(図18Bに関してより詳細に説明する)ソーシャルネットワークのつながり1814、現在地1816、共有設定1818、関心1820、年齢1822、出身地1824、個人的統計1826、仕事情報1828のうちのいずれかを含むことができる。この情報は、通信アプリケーション、ソーシャルネットワーキングアプリケーション、カレンダアプリケーション、共同アプリケーションなど、複数のアプリケーションから得られる。一部の実施形態では、図18Cに関して論じるように、人物固有データが人物の1つまたは複数の画像に由来する特徴1830も含む。

図18Bは、ソーシャルネットワークのつながり1814の一例を示す。一部の実施形態では、特定した人物の人物固有データが、複数のアプリケーションから得られる、要求者(図18Bではクエリ者とする)に対する社会的なつながりについての社会的つながりメトリクスを含む。この図面の中の人々の間の線は、(電子メール、インスタントメッセージ、およびソーシャルネットワーキングウェブサイトによるつながりなど)互いの社会的つながりの1つまたは複数を表す。一部の実施形態では、潜在的な画像の一致のランク付けスコアを決定する際の要素として、2人の人物間の社会的距離を使用する。例えば、潜在的に一致するある画像が人物Cの画像であり、潜在的に一致する別の画像が人物Yの画像であった場合、一部の実施形態では、人物Cの潜在的に一致する画像に人物Yよりも高い(ランク付けスコアを計算する際に使用する)社会的つながりランク付け係数が与えられ、その理由は、他のすべての要素を無視し、要求者は、ソーシャルネットワークで3「ホップ」離れている人物(人物Y)よりも、自身と直接つながりがある人物(人物C)の写真を撮っていた可能性が高いからである。同様に、人物Wは要求者からソーシャルネットワークで2「ホップ」離れているのに対し、人物Aは要求者からソーシャルネットワークで3「ホップ」離れているため、人物Wには人物Aよりも高い社会的つながりランク付け係数が与えられる。一部の実施形態では、要求者の視覚クエリに応答する際にどの画像源を検索するのか決定するために、要求者に対するソーシャルネットワークのつながりも使用する。例えば一部の実施形態では、視覚クエリ内の顔画像に一致する画像を得るために検索される画像源に、ソーシャルネットワークで直接つながりがある人に属するアカウント内の画像が含まれるのに対し、要求者に対するソーシャルネットワークの直接のつながりがない人に属するアカウント内の画像は、視覚クエリ内の顔画像に一致する画像を得るために検索される画像源に含まれない。

一部の視覚クエリでは、図18Aの人物固有データのデータベース964からの他の情報を、図18Bのソーシャルネットワークつながりグラフ上の距離または「ホップ」と併せて使用する。例えば、要求者と個別の人物とが互いに近くに住む場合、同じ業界内で働く場合、同じソーシャルネットワーク「グループ」内にいる場合、および両者が(例えば両者のモバイル機器内のGPS受信機によって測定される)同じ位置に現在あるモバイル機器を有する場合、たとえその個別の人物がソーシャルネットワークつながりグラフ上で要求者から数「ホップ」離れていても、その個別の人物のランク付けスコアは依然として高い可能性がある。別の例では、潜在的に一致する画像内の個別の人物が、ソーシャルネットワークつながりグラフ上で要求者から1「ホップ」しか離れていない場合、人物固有データのデータベース964によって求められる弱いつながりにもかかわらず(宗教や政党を共有することのように、両者が多数の会員がいるグループのメンバであることなど)、その個別の人物は高くランク付けされる可能性がある。

一部の実施形態では、要求者が、人物固有データのデータベース964からの一定の情報を、人物固有データのデータベース964からの他の情報よりも重要であると特定することができる。例えば要求者が仕事関連の会合に出席し、よってクエリ画像は要求者と同じ業界内で働く他の人々の顔画像を含む可能性が高いため、その要求者は、人物が働く業界に関する情報に他の人物固有データよりも高い重みを与えることを指定することができる。他の例では、要求者が、全員または主に同年齢の人々が出席するパーティー(または他の会合)からのクエリ画像を提出するため、その要求者は、年齢に関する情報に他の人物固有データよりも高い重みを与えることを指定することができる。

図18Cは、要求者に関連する個別の人物の画像に由来する、画像に由来する一部の特徴1830を示すブロック図である。一部の実施形態では、(人物の少なくとも1つの画像に由来する)これらの由来する特徴は、データベース内に人物識別子ごとに記憶される。これらの由来する特徴には、屋内環境要素1832、屋外環境要素1834、性別要素1836、人種要素1838、眼鏡要素1840、顔ひげ要素1842、頭髪要素1844、帽子要素1846、洋服要素1847、および眼の色要素1848、ならびに1つまたは複数の画像源内で個別の人物が出現する量に関する出現情報1850、ならびに1つまたは複数の画像源からの画像内で個別の人物が同時に出現する量、および様々なさらなる人々と同時に出現する量に関する情報1852のうちの1つまたは複数(典型的には2つ以上)が含まれる。一部の実施形態では、それらの由来する特徴には、各画像についての日付情報1854、時間情報1856、位置情報1858など、画像のメタデータ情報も含まれる。個別の人物の他の画像に由来する、それぞれの由来する特徴に値および重みを与え、その値および重みは、個別の人物のランク付けスコアを決定する際にその由来する特徴を使用する場合に使用される。

上記の記載は、説明目的で特定の実施形態に関して記載してきた。しかし上記の実例的な解説は、網羅的であることも本発明を開示した厳密な形態に限定することも意図しない。上記の教示に照らし、多くの修正形態および改変形態があり得る。本発明の原理およびその実用的応用を最も良く説明して、それにより当業者が本発明、および考えられる特定の用法に適合される様々な修正が加えられる様々な実施形態を最も良く利用できるようにするために実施形態を選択して説明した。

100……コンピュータネットワーク 102……クライアントシステム 104……通信ネットワーク 106……視覚クエリサーバシステム 108……クライアントアプリケーション 110……フロントエンド視覚クエリ処理サーバ 116……クエリ/注釈データベース 118……用語クエリサーバシステム

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈