(57)【要約】  装置は、ユーザデバイスからの位置データを受信し、顔認識データも格納するユーザプロファイルデータ構造に位置データを格納することができるプロセッサを含んでよい。またプロセッサは、少なくとも１つの画像を受信し、少なくとも１つの画像における特徴のセットに少なくとも部分的に基づいて位置を識別してよい。プロセッサは、データベースに格納された各ユーザプロファイルデータ構造について、そのユーザプロファイルデータ構造の位置データと位置とを比較してよい。プロセッサは、ユーザプロファイルデータ構造の位置データと位置とがマッチする場合、ユーザプロファイルデータ構造に関連するユーザが少なくとも１つの画像内で識別され得るかを決定するために顔認識を実施してよい。プロセッサはその後、ユーザが識別され得る場合、少なくとも１つの画像をユーザプロファイルデータ構造に関連付けしてよい。【選択図】図１Ａ
2018536929.tif 000002
【特許請求の範囲】
【請求項１】
メモリと、
前記メモリに動作可能に結合されたプロセッサと
を備える装置であって、
前記プロセッサは、第１の時間に、ユーザデバイスからの位置データを受信するように構成され、ユーザプロファイルデータ構造に前記位置データを格納するように構成され、前記ユーザプロファイルデータ構造は、２次元顔認識分析、３次元顔認識分析、または重畳ニューラルネット（ＣＮＮ）の少なくとも１つに基づく、ユーザに関連する前記ユーザデバイスの前記ユーザの顔認識データを含み、前記プロセッサは、前記第１の時間とは異なる第２の時間に、画像捕捉デバイスからの少なくとも１つの画像を受信するように構成され、
前記プロセッサは、前記受信した少なくとも１つの画像における特徴のセットに少なくとも部分的に基づいて位置を識別するように構成され、前記ユーザプロファイルデータ構造を含む複数のユーザプロファイルデータ構造をデータベースから取得するように構成され、前記複数のユーザプロファイルデータ構造の各ユーザプロファイルデータ構造について、そのユーザプロファイルデータ構造内の位置データと前記位置とを比較するように構成され、
前記プロセッサは、前記ユーザプロファイルデータ構造の前記位置データと前記位置とが互いに所定の距離内にある場合、顔認識信頼性スコアを識別するために、前記２次元顔認識分析、前記３次元顔認識分析、または前記ＣＮＮの少なくとも１つに基づく前記ユーザの前記顔認識データに対して前記少なくとも１つの画像を分析することによって、前記ユーザプロファイルデータ構造に関連する前記ユーザが前記少なくとも１つの画像内で識別され得るかを決定するように構成され、前記顔認識信頼性スコアが所定の基準を満たすことに基づいて、前記ユーザプロファイルデータ構造に前記少なくとも１つの画像を関連付けするように構成される、装置。
【請求項２】
前記位置データは、ｉＢｅａｃｏｎデータ、グローバルポジショニングサービス（ＧＰＳ）データ、座席識別子、またはＷｉＦｉネットワーク識別子の少なくとも１つである、請求項１に記載の装置。
【請求項３】
前記ユーザは第１のユーザであり、前記第１の画像捕捉デバイスは、前記第１のユーザとは異なる第２のユーザに関連するユーザクライアントデバイスまたは自律カメラの１つである、請求項１に記載の装置。
【請求項４】
前記プロセッサは、
前記少なくとも１つの画像に画像処理を実行すること、
前記画像処理に基づいて少なくとも１つの会場ランドマークを識別すること、および
前記会場ランドマークの位置を決定することによって前記位置を識別すること
によって前記位置を識別するように構成される、請求項１に記載の装置。
【請求項５】
前記ユーザの前記顔認識データは、前記ユーザプロファイルデータ構造に関連する前記ユーザの写真に関するデータを含む、請求項１に記載の装置。
【請求項６】
前記少なくとも１つの画像内で前記ユーザが識別され得る場合、前記少なくとも１つの画像は、前記データベースに格納される、請求項１に記載の装置。
【請求項７】
第１の時間に、ユーザデバイスからのユーザ位置データを受信することと、
前記ユーザ位置データを、データベース内のユーザプロファイルデータ構造に格納することと、
前記第１の時間とは異なる第２の時間に、画像捕捉デバイスからの少なくとも１つの画像を受信することと、
前記少なくとも１つの画像における特徴のセットに少なくとも部分的に基づいて位置を識別することと、
前記データベースに格納された複数のユーザプロファイルデータ構造の各ユーザプロファイルデータ構造のユーザ位置データを前記位置と比較することであって、前記ユーザプロファイルデータ構造は前記複数のユーザプロファイルデータ構造に含まれることと、
前記複数のユーザプロファイルデータ構造のうちの前記ユーザプロファイルデータ構造の前記ユーザ位置データが前記位置とマッチする場合、
前記ユーザプロファイルデータ構造内の顔認識データを前記少なくとも１つの画像に対して分析することと、
前記少なくとも１つの画像が前記顔認識データとマッチする場合、前記少なくとも１つの画像を、前記ユーザプロファイルデータ構造と関連するものとして格納することと
を備える、方法。
【請求項８】
前記ユーザ位置データは、ｉＢｅａｃｏｎデータ、グローバルポジショニングサービス（ＧＰＳ）データ、座席番号、またはＷｉＦｉネットワーク識別子の少なくとも１つである、請求項７に記載の方法。
【請求項９】
前記顔認識データと前記少なくとも１つの画像とを比較する前に、コンテキスト情報を決定するために前記少なくとも１つの画像を前処理することを更に備え、
前記コンテキスト情報は、会場名、前記少なくとも１つの画像が捕捉された時間、または前記少なくとも１つの画像が捕捉された時と発生が一致するイベントを含む、請求項７に記載の方法。
【請求項１０】
前記顔認識データと前記少なくとも１つの画像との前記比較に基づいて前記少なくとも１つの画像の信頼性レベルを計算することと、
前記信頼性レベルが所定の閾値を超える場合、前記少なくとも１つの画像が前記顔認識データとマッチすると決定することと
を更に備える、請求項７に記載の方法。
【請求項１１】
前記少なくとも１つの画像は、前記少なくとも１つの画像を含む写真またはビデオの１つであり、
前記少なくとも１つの画像がビデオである場合、前記ビデオを一連の画像に分割し、前記顔認識データが前記少なくとも１つの画像と比較される際に前記顔認識データが前記一連の画像における各画像と比較されるようにすること
を更に備える、請求項７に記載の方法。
【請求項１２】
前記少なくとも１つの画像が前記顔認識データとマッチする場合、前記ユーザデバイスに前記少なくとも１つの画像をグラフィックレンダリングするための信号を送信することを更に備える、請求項７に記載の方法。
【請求項１３】
前記位置を識別することは、前記少なくとも１つの画像に含まれる背景風景または背景ランドマークに少なくとも部分的に基づいて前記位置を識別することを含む、請求項７に記載の方法。
【請求項１４】
前記少なくとも１つの画像が、前記複数のユーザプロファイルデータ構造のうちの少なくとも１つのユーザプロファイルデータ構造の顔認識データとマッチしない場合、前記少なくとも１つの画像を破棄することを更に備える、請求項７に記載の方法。
【請求項１５】
メモリと、
前記メモリに動作可能に結合されたプロセッサと
を備える装置であって、
前記プロセッサは、少なくとも１つの画像を取得するように構成され、前記少なくとも１つの画像における特徴のセットを識別するように構成され、前記特徴のセットとデータベースに格納されたランドマーク位置との比較に基づいて、前記少なくとも１つの画像が捕捉された位置を識別するように構成され、
前記プロセッサは、複数のクライアントデバイスからクライアントデバイスのセットを選択するように構成され、前記クライアントデバイスのセットの各クライアントデバイスは、そのクライアントデバイスに関連するユーザ位置データが、前記位置から所定の距離内にあることに基づいて選択され、
前記プロセッサは、前記クライアントデバイスに関連する顔認識データおよび前記少なくとも１つの画像の分析に基づいて、前記クライアントデバイスのセット内のクライアントデバイスを前記少なくとも１つの画像とマッチさせるように構成され、前記少なくとも１つの画像が前記クライアントデバイスにおいてレンダリングされるように信号を送信するように構成される、装置。
【請求項１６】
前記分析は、前記少なくとも１つの画像内で前記顔認識データに関連するユーザを検出するための前記少なくとも１つの画像の顔認識分析である、請求項１５に記載の装置。
【請求項１７】
前記特徴のセットは、会場ランドマークまたは背景風景の少なくとも１つを含む、請求項１５に記載の装置。
【請求項１８】
前記プロセッサは更に、前記少なくとも１つの画像を格納し、前記クライアントデバイスに関連する前記顔認識データに前記少なくとも１つの画像を関連付けするように構成される、請求項１５に記載の装置。
【請求項１９】
前記クライアントデバイスは、前記少なくとも１つの画像の信頼性レベルが所定の基準を満たす場合、前記少なくとも１つの画像とマッチしており、前記信頼性レベルは、前記少なくとも１つの画像および前記顔認識データの前記分析に基づいて決定される、請求項１５に記載の装置。
【請求項２０】
前記少なくとも１つの画像は、前記少なくとも１つの画像を含む写真またはビデオの少なくとも１つである、請求項１５に記載の装置。 
【発明の詳細な説明】
【技術分野】
【０００１】
[1001]  本出願は、２０１５年１０月２１日に出願された“ＭＥＴＨＯＤ  ＡＮＤ  ＡＰＰＡＲＡＴＵＳ  ＦＯＲ  ＦＡＬＳＥ  ＰＯＳＩＴＩＶＥ  ＭＩＮＩＭＩＺＡＴＩＯＮ  ＩＮ  ＦＡＣＩＡＬ  ＲＥＣＯＧＮＩＴＩＯＮ  ＡＰＰＬＩＣＡＴＩＯＮＳ”と題された米国特許仮出願第６２／２４４，４１９号の利益およびこれに対する優先権を主張するものである。上記出願の内容全体が、参照によって本明細書に明確に組み込まれる。
【０００２】
[1002]  本明細書で説明される実施形態は、一般に顔認識およびビデオ分析に関し、特に、顔認識アプリケーションにおけるフォールスポジティブの最小化のための装置および方法に関する。
【背景技術】
【０００３】
[1003]  たとえばカメラ、タブレット、スマートフォンなどの電子デバイスの可用性および能力の増加は、一部の人々が自身の経験の写真を撮り、および／またはビデオを捕捉することを可能にした。たとえば、スマートフォン、タブレット、および／または他の同様のデバイスにおけるカメラの組込みおよびその進化は、これらのデバイスが写真（たとえばフォトグラフィックデータ、画像データなど）およびビデオ（たとえばビデオストリームデータ）を撮影するために用いられることの増加を招いた。しかし、一部の人々が自身の経験の写真および／またはビデオを撮影することは簡単になったが、（写真またはビデオを撮影する人間を含む）所望の人々を含むことには未だ困難が存在し得る。また、人は概して、写真および／またはビデオを撮影する機会を思い出し、および／または設けなければならず、それに失敗して機会を失うことがある。
【０００４】
[1004]  いくつかの例において、たとえばスポーツイベント、コンサート、会合、卒業式などの会場および／またはイベントは、出席者の写真および／またはビデオを撮影することができるカメラを有する。しかし、いくつかの例において、写真および／またはビデオストリームを分析、解析、および／または利用可能にすることは、比較的大量のリソースを使用し、不正確であり、および／または、関連するコンテキストデータなどを提供できないことがある。具体的には、いくつかの例において、写真内の人物を識別するために顔認識のみを用いることから得られるフォールスポジティブによって、写真内で検出された特定の人物が写真に捕捉された場所に実際にいたことを確認することは難しくなり得る。
【０００５】
[1005]  したがって、たとえば公的イベントなどにおいてフォールスポジティブを最小化するためにコンテキストデータおよび位置データを用いるための改善された装置および方法へのニーズが存在する。
【発明の概要】
【課題を解決するための手段】
【０００６】
[1006]  いくつかの実装において、装置は、メモリ、およびメモリに動作可能に結合されたプロセッサを含んでよい。プロセッサは、第１の時間に、ユーザデバイスからの位置データを受信し、位置データをユーザプロファイルデータ構造に格納してよい。ユーザプロファイルデータ構造は、２次元顔認識分析、３次元顔認識分析、または重畳ニューラルネット（ＣＮＮ）の少なくとも１つに基づく、ユーザに関連するユーザデバイスのユーザの顔認識データを含んでよい。プロセッサは、第１の時間とは異なる第２の時間に、画像捕捉デバイスからの少なくとも１つの画像を受信してよい。プロセッサは、受信した少なくとも１つの画像における特徴のセットに少なくとも部分的に基づいて位置を識別し、データベースから、上記ユーザプロファイルデータ構造を含む複数のユーザプロファイルデータ構造を取得してよい。プロセッサは、複数のユーザプロファイルデータ構造の各ユーザプロファイルデータ構造について、そのユーザプロファイルデータ構造内の位置データと上記位置とを比較してよい。プロセッサは、ユーザプロファイルデータ構造の位置データおよび上記位置が互いに所定の距離内にある場合、ユーザプロファイルデータ構造に関連するユーザが少なくとも１つの画像内で識別され得るかを決定してよい。たとえばプロセッサは、顔認識信頼性スコアを識別するために、２次元顔認識分析、３次元顔認識分析、またはＣＮＮの少なくとも１つに基づくユーザの顔認識データに対して少なくとも１つの画像を分析してよい。プロセッサはその後、顔認識信頼性スコアが所定の基準を満たすことに基づいて、少なくとも１つの画像をユーザプロファイルデータ構造に関連付けしてよい。
【図面の簡単な説明】
【０００７】
【図１Ａ】[1007]実施形態に係る認識システムの概略図である。
【図１Ｂ】[1008]他の実施形態に係る認識システムの概略図である。
【図２】[1009]図１の認識システムに含まれるホストデバイスの概略図である。
【図３】[1010]実施形態に係る、ビデオ認識システムを用いる方法を示すフローチャートである。
【図４】[1011]他の実施形態に係る、ビデオ認識システムを用いる方法を示すフローチャートである。
【図５】[1012]実施形態に係る、メディア内のコンテキスト情報を捕捉する画像捕捉デバイスの図である。
【図６】[1013]実施形態に係る、メディア内のユーザを識別するために位置データおよびメディア内のコンテキスト情報を用いることを示す論理フロー図である。
【発明を実施するための形態】
【０００８】
[1014]  いくつかの実装において、装置は、メモリ、およびメモリに動作可能に結合されたプロセッサを含んでよい。プロセッサは、第１の時間に、ユーザデバイスからの位置データを受信し、位置データをユーザプロファイルデータ構造に格納してよい。ユーザプロファイルデータ構造は、２次元顔認識分析、３次元顔認識分析、または重畳ニューラルネット（ＣＮＮ）の少なくとも１つに基づく、ユーザに関連するユーザデバイスのユーザの顔認識データを含んでよい。プロセッサは、第１の時間とは異なる第２の時間に、画像捕捉デバイスからの少なくとも１つの画像を受信してよい。プロセッサは、受信した少なくとも１つの画像における特徴のセットに少なくとも部分的に基づいて位置を識別し、データベースから、上記ユーザプロファイルデータ構造を含む複数のユーザプロファイルデータ構造を取得してよい。プロセッサは、複数のユーザプロファイルデータ構造の各ユーザプロファイルデータ構造について、そのユーザプロファイルデータ構造内の位置データと上記位置とを比較してよい。プロセッサは、ユーザプロファイルデータ構造の位置データおよび上記位置が互いに所定の距離内にある場合、ユーザプロファイルデータ構造に関連するユーザが少なくとも１つの画像内で識別され得るかを決定してよい。たとえばプロセッサは、顔認識信頼性スコアを識別するために、２次元顔認識分析、３次元顔認識分析、またはＣＮＮの少なくとも１つに基づくユーザの顔認識データに対して少なくとも１つの画像を分析してよい。プロセッサはその後、顔認識信頼性スコアが所定の基準を満たすことに基づいて、少なくとも１つの画像をユーザプロファイルデータ構造に関連付けしてよい。
【０００９】
[1015]  本明細書で説明される実施形態は、顔認識データおよび位置情報に基づいてメディア内のユーザを検出することに関する。いくつかの実施形態において、画像分析の方法は、ホストデバイスにおいて、クライアントデバイスからネットワークを介して、位置におけるユーザのチェックインを示す信号を受信することを含む。ユーザは、自身のモバイルデバイスを介してチェックインしてよい。画像捕捉デバイスは、ユーザを含み得るメディア（たとえば写真、ビデオ、オーディオ、および／または同様のコンテンツ）を捕捉してよい。ホストデバイスは、（たとえば画像処理技術によるメディアの処理後の）メディア内の風景および／または他の背景情報を用いて、メディアが捕捉された特定の位置を決定してよい。ホストデバイスは、たとえば画像捕捉デバイスの位置および／またはメディアが検出する位置を確認するために、画像捕捉デバイスに関する位置情報も受信してよい。ホストデバイスは、メディア内で検出された位置と、チェックインしたユーザの位置データとをマッチさせ、メディアが捕捉された位置と近い位置にどのユーザがチェックインしたかを決定してよい。ホストデバイスはその後、メディア内の位置付近にチェックインしたユーザがメディア内に出現するかを決定するために、メディアに画像処理を実行してよい。ホストデバイスは、ホストデバイスがメディア内で検出したユーザへ通知を送信してよい。このように、ホストデバイスは、特定のメディアファイルにおいて検索するユーザの数を低減し、ユーザの位置およびユーザの出現の両方をメディアから得たデータに結び付けることによってフォールスポジティブを低減することができる。
【００１０】
[1016]  本明細書で用いられる場合、単数形の「ａ」、「ａｎ」、および「ｔｈｅ」は、文脈が明確に例外を示さない限り、複数形への言及を含む。したがって、たとえば「ａ  ｍｏｄｕｌｅ」という用語は、単一のモジュールまたはモジュールの組み合わせを意味することが意図され、「ａ  ｎｅｔｗｏｒｋ」は、１または複数のネットワーク、あるいはそれらの組み合わせを意味することが意図されている。
【００１１】
[1017]  本明細書で用いられる場合、「モジュール」という用語は、たとえばメモリ、プロセッサ、電気トレース、光コネクタ、（ハードウェアにおいて実行中の）ソフトウェアなどを含み得る動作可能に結合された電気部品の任意のアセンブリおよび／またはセットを指す。たとえば、プロセッサにおいて実行されるモジュールは、そのモジュールに関連する１または複数の特定の機能を実行することができるハードウェアベースのモジュール（たとえばフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ））および／またはソフトウェアベースのモジュール（たとえばメモリに格納され、および／またはプロセッサにおいて実行されるコンピュータコードのモジュール）の任意の組み合わせであってよい。
【００１２】
[1018]  本明細書で説明される実施形態および方法は、（１）ビデオストリーム内の登録ユーザ（たとえば顔認識データが予め定められた人物）の１または複数の画像を検索するため、および（２）ユーザに関連するクライアントデバイス（たとえばスマートフォン、タブレット、コンピュータ、装着型電子デバイスなど）へコンテキストデータを含むビデオストリームを提供するために、顔認識データを用いてよい。顔認識は一般に、人間の顔の１または複数の画像を分析し、たとえば彼または彼女の顔構造の特徴（たとえば頬骨、顎、耳、目、口元、鼻、生え際など）を決定すること、およびその後、特徴に関連するおよび／または特徴を表す質的および／または量的データセットを定義することを伴う。たとえば１つのアプローチは、人間の顔の特徴に関連するデータを抽出し、幾何学ベースおよび／または座標ベースの情報を含むデータセットを定義すること（たとえば顔認識データの３次元（３Ｄ）分析）を含む。他のアプローチはたとえば、画像データを定性値に変換し、これらの値とテンプレートなどとを比較すること（たとえば顔認識データの２次元（２Ｄ）分析）を含む。いくつかの例において、他のアプローチは、３Ｄ分析および２Ｄ分析の任意の適切な組み合わせを含んでよい。
【００１３】
[1019]  いくつかの顔認識方法および／またはアルゴリズムは、固有顔（顔認識に関連する固有ベクトル）を用いた主成分分析、線形判別分析、Ｆｉｓｈｅｒｆａｃｅアルゴリズムを用いた弾性バンチグラフマッチング、隠れマルコフモデル、テンソル表現を用いたマルチリニアサブスペースラーニング、ニューロン動機付け動的リンクマッチング、重畳ニューラルネット（ＣＮＮ）など、またはそれらの組み合わせを含む。本明細書で説明される実施形態および／または方法のいずれかは、上述したような任意の適切な顔認識方法および／またはアルゴリズムまたはそれらの組み合わせを使用および／または実行してよい。
【００１４】
[1020]  図１Ａは、実施形態に係るビデオ認識システム１００の概略図である。いくつかの例において、（本明細書において「システム」とも称される）ビデオ認識システム１００は、顔認識データに少なくとも部分的に基づいてユーザのビデオストリームを提示するために用いられ得る。システム１００の少なくとも一部は、たとえば、メモリ内に格納され電子デバイス（たとえばホストデバイス、サーバまたはサーバのグループ、パーソナルコンピュータ（ＰＣ）、ネットワークデバイスなど）のプロセッサにおいて実行される命令またはコードのセットなどによって表現および／または記述され得る。たとえばいくつかの実施形態において、ホストデバイスは、ユーザに関連する顔認識データを登録する要求に関連する信号を受信し、それに応答して、顔認識データをデータベースに格納してよい。同様に、ホストデバイスは、ビデオストリームデータに関連する信号を受信してよい。いくつかの例において、ホストデバイスの１または複数のプロセッサはその後、顔認識データおよび／または（たとえばランドマークデータなどの）位置情報に少なくとも部分的に基づいて、ビデオストリーム内にユーザの１または複数の画像が存在するかを決定するためのビデオストリームデータの分析に関連する、ホストデバイスのメモリ内に格納された命令またはコードのセットを実行してよい。ビデオストリームデータ内に画像が発見された場合、１または複数のプロセッサは、ビデオストリームデータの関連部分を分離してよい。また、１または複数のプロセッサは、（１）たとえば時間、位置、イベントなどのコンテキストデータをビデオストリームデータに関連付けし、（２）ユーザのコンテキストビデオストリームを定義するための命令またはコードのセットを実行してよい。１または複数のプロセッサはその後、ユーザに関連するクライアントデバイスへ、クライアントデバイスのディスプレイに（たとえば、クライアントデバイスにインスタンスが生成されたインタフェースにコンテキストビデオストリームをグラフィックレンダリングすることによって）ユーザのコンテキストビデオストリームを提示するための命令を示す信号を送信してよい。
【００１５】
[1021]  システム１００は、データベース１４０、クライアントデバイス１５０、および画像捕捉システム１６０と通信状態にあるホストデバイス１１０を含む。ホストデバイス１１０は、データベース１４０、クライアントデバイス１５０、および画像捕捉システム１６０と電子通信状態にある、たとえばサーバまたはサーバのグループ、ネットワーク管理デバイス、パーソナルコンピュータ（ＰＣ）、処理ユニットなど任意の適切なホストデバイスであってよい。たとえばこの実施形態において、ホストデバイス１１０は、本明細書で更に詳しく説明するように、データベース１４０、クライアントデバイス１５０、および画像捕捉システム１６０とネットワーク１０５を介して電子通信状態にあるサーバまたは（実質的に同じ場所および／または施設に配置された、または複数の場所に散在する）サーバのグループであってよい。
【００１６】
[1022]  クライアントデバイス１５０は、たとえばＰＣ、ラップトップ、コンバーチブルラップトップ、タブレット、パーソナルデジタルアシスタント（ＰＤＡ）、スマートフォン、装着型電子デバイス（たとえばスマートウォッチなど）など任意の適切なデバイスであってよい。図１には示されないが、いくつかの実施形態において、クライアントデバイス１５０は、少なくともメモリ、プロセッサ、通信インタフェース、ディスプレイ、および１または複数の入力装置を含む電子デバイスであってよい。メモリ、プロセッサ、通信インタフェース、ディスプレイ、および入力装置（複数も可）は、それらの間の信号送信が可能であるように互いに接続および／または電気的に結合され得る。たとえばいくつかの実施形態において、メモリは、ランダムアクセスメモリ（ＲＡＭ）、メモリバッファ、ハードドライブ、読取専用メモリ（ＲＯＭ）、消去可能プログラマブル読取専用メモリ（ＥＰＲＯＭ）などであってよい。プロセッサは、たとえば汎用プロセッサ（ＧＰＰ）、中央処理ユニット（ＣＰＵ）、高速処理ユニット（ＡＰＵ）、グラフィックプロセッサユニット（ＧＰＵ）、特定用途向け集積回路（ＡＳＩＣ）など、（たとえばメモリに格納された）命令またはコードのセットを処理または実行するように構成された任意の適切な処理デバイスであってよい。そのようなプロセッサは、ＰＣアプリケーション、モバイルアプリケーション、インターネットウェブブラウザ、（ネットワークを介した）セルラおよび／または無線通信などの使用に関連する、メモリ内に格納された命令またはコードのセットを処理または実行してよい。具体的には、プロセッサは、本明細書で更に詳しく説明するように、ホストデバイス１１０への顔認識データの送信および／またはホストデバイス１１０からの顔認識データおよび／またはコンテキストビデオストリームデータの受信に関連する、メモリ内に格納された命令またはコードのセットを実行してよい。
【００１７】
[1023]  クライアントデバイス１５０の通信インタフェースは、たとえば１または複数のネットワークインタフェースカードなど、ホストデバイス１１０との通信にリソースを投入し得る任意の適切なモジュールおよび／またはデバイスであってよい。そのようなネットワークインタフェースカードは、ネットワーク（たとえばネットワーク１０５）などを介してクライアントデバイス１５０をホストデバイス１１０との通信状態に置くことができる、たとえばイーサネット（登録商標）ポート、ＷｉＦｉ（登録商標）無線、Ｂｌｕｅｔｏｏｔｈ（登録商標）無線、近距離通信（ＮＩＦ）無線、および／またはセルラ無線を含んでよい。このように、通信インタフェースは、ネットワーク１０５を介してホストデバイス１１０との電子的通信に関連する信号をプロセッサへ送信および／またはプロセッサから受信してよい。
【００１８】
[1024]  クライアントデバイス１５０のディスプレイは、システム１００の任意の適切な部分（たとえばウェブページ、ＰＣアプリケーション、モバイルアプリケーションなどに関連するグラフィカルユーザインタフェース（ＧＵＩ））をグラフィカルに表現することができる、たとえば陰極線管（ＣＲＴ）モニタ、液晶ディスプレイ（ＬＣＤ）モニタ、発光ダイオード（ＬＥＤ）モニタなどであってよい。いくつかの実施形態において、そのようなディスプレイは、ハプティックユーザ入力を受信するように構成されたタッチスクリーンであってよく、および／またはこれを含んでよい。いくつかの例において、ディスプレイは、本明細書で更に詳しく説明するように、顔認識プロセスに関連するデータおよび／またはビデオストリームに関連するデータをグラフィック表現するように構成され得る。
【００１９】
[1025]  クライアントデバイス１５０の入力装置（複数も可）は、１または複数の入力（たとえばユーザ入力）を受信し、１または複数の入力に関連する信号をプロセッサへ送信および／またはプロセッサから受信することができる任意の適切なモジュールおよび／またはデバイスであってよい。いくつかの実施形態において、入力装置（複数も可）は、デバイスとの電子通信状態に置かれるように構成されたポート、プラグ、および／または他のインタフェースであってよく、および／またはこれを含んでよい。たとえばそのような入力装置は、ユニバーサルシリアルバス（ＵＳＢ）ポート、米国電気電子学会（ＩＥＥＥ）１３９４（ＦｉｒｅＷｉｒｅ）ポート、サンダーボルトポート、ライトニングポートなどであってよい。いくつかの実施形態において、ディスプレイは、ハプティックユーザ入力を受信するように構成されたタッチスクリーンなどに含まれ得る。
【００２０】
[1026]  いくつかの実施形態において、入力装置は、カメラおよび／または他の撮像デバイスであってよい。たとえばいくつかの実施形態において、そのようなカメラは、（たとえばスマートフォン、タブレット、ラップトップなどのように）クライアントデバイス１５０に一体化されてよく、および／または（たとえば上述したもののように）ポートなどを介してクライアントデバイス１５０と通信状態であってよい。カメラは、たとえばスマートフォンまたはタブレットに含まれるウェブカメラまたは前向カメラ（たとえばディスプレイと実質的に同じ方向を向いたカメラ）など任意の適切な撮像デバイスであってよい。このように、ユーザは、クライアントデバイス１５０を操作し、カメラに画像（たとえば写真）またはビデオを捕捉させることができる。またいくつかの例において、ディスプレイは、カメラによって捕捉された画像に関連するデータをグラフィックレンダリングするように構成され得る。例として、いくつかの実施形態において、クライアントデバイス１５０は、前向カメラを含むスマートフォン、タブレット、または装着型電子デバイスであってよい。いくつかの例において、ユーザは、クライアントデバイス１５０を操作し、カメラを介して（たとえば「セルフィ」としても知られる）ユーザ自身の写真またはビデオを撮影することができる。
【００２１】
[1027]  いくつかの例において、クライアントデバイス１５０に含まれるカメラ（たとえば入力装置）は、ユーザの顔の画像を捕捉するために用いられ、これは、ユーザに関連する顔認識データを登録するために用いられ得る。具体的には、ユーザは、カメラがユーザの顔の画像を捕捉するようにクライアントデバイス１５０を操作することができる。いくつかの例において、ディスプレイは、ユーザの顔の画像に関する所望のアライメントに関連するインジケーションをユーザに提供することができる、インジケーション、フレーム、境界線、ガイド、および／または他の任意の適切なデータのグラフィック表現をグラフィックレンダリングするように構成され得る。カメラが所望の画像を捕捉すると、プロセッサは、ユーザの顔の画像に関連するデータを受信および／または取得し、顔認識プロセスに少なくとも一部に関連する（たとえばメモリ内に格納された）命令またはコードのセットを実行してよい。たとえばいくつかの例において、プロセッサは、ディスプレイにグラフィックレンダリングされたインジケーション、フレーム、境界線などとユーザの顔の捕捉画像とのアライメントを確認することに関連する命令またはコードのセットを実行してよい。いくつかの例において、クライアントデバイス１５０は、アライメントが確認されると、ユーザの画像を表現するデータに関連する信号を、ネットワーク１０５を介してホストデバイス１１０へ送信するように構成されてよく、それに応答してホストデバイス１１０は、本明細書で更に詳しく説明するように、データに任意の適切な顔認識プロセスまたは複数のプロセスを実行してよい。
【００２２】
[1028]  画像捕捉システム１６０は、画像データを捕捉するように構成された任意の適切なデバイスであってよく、および／またはこれを含んでよい。たとえば画像捕捉システム１６０は、画像（たとえば写真）を捕捉および／またはビデオストリームを記録するように構成された１または複数のカメラおよび／または画像記録デバイスであってよく、および／またはこれを含んでよい。いくつかの実施形態において、画像捕捉システム１６０は、たとえばサーバ、パーソナルコンピュータ、データストレージデバイス（たとえばネットワーク接続ストレージ（ＮＡＳ）デバイス、データベースなど）などの中央コンピューティングデバイスと通信状態である複数のカメラを含んでよい。そのような実施形態において、カメラは自律的であってよく（たとえば、ユーザプロンプトおよび／または入力なしで画像データを捕捉することができ）、各々が中央コンピューティングデバイスへ（たとえば有線または無線接続、ポート、シリアルバス、ネットワークなどを介して）画像データを送信してよく、中央コンピューティングデバイスは、メモリおよび／または他のデータストレージデバイスに画像データを格納してよい。また、中央コンピューティングデバイスは、ホストデバイス１１０と（たとえばネットワーク１０５を介して）通信状態であってよく、ホストデバイス１１０へ画像データの少なくとも一部を送信するように構成され得る。図１にはネットワーク１０５を介してホストデバイス１１０と通信状態であるものとして示されるが、そのような中央コンピューティングデバイスは他の実施形態において、ホストデバイス１１０に含まれ、ホストデバイス１１０の一部であり、および／または他の方法でホストデバイス１１０に結合されてよい。また他の実施形態において、カメラは、そのような中央コンピューティングデバイスなしでホストデバイス１１０と（たとえばネットワーク１０５を介して）通信状態であってよい。
【００２３】
[1029]  いくつかの実施形態において、画像捕捉システム１６０は、たとえばスポーツ競技場、テーマパーク、映画館、および／または他の任意の適切な会場などの会場などに関連し、および／または所有され得る。他の実施形態において、画像捕捉システム１６０は、会場において使用されるが、異なる組織（たとえば、スポーツイベントにおけるテレビカメラのように、会場において画像捕捉システム１６０を使用することが認可および／または許可された組織）によって所有され得る。また他の実施形態において、画像捕捉システム１６０は、カメラまたはレコーダとして使用され得る、たとえばスマートフォン、タブレットなど任意の数のクライアントデバイス（たとえばユーザデバイス）などを含んでよい。そのような実施形態において、クライアントデバイスの少なくともいくつかは、（たとえば上述したような）会場に関連するホストデバイス１１０および／または中央コンピューティングデバイスと通信状態であってよい。
【００２４】
[1030]  たとえばいくつかの実施形態において、クライアントデバイス１５０に一体化されたカメラは、図１Ｂに示すように、画像捕捉システム１６０の少なくとも一部を形成し、および／または備えてよい。このように、ユーザはクライアントデバイス１５０を操作して写真および／またはビデオを捕捉することができ、それに応答してクライアントデバイス１５０は、写真（たとえば画像データ、フォトグラフィックデータなど）および／またはビデオ記録データをホストデバイス１１０へアップロードおよび／または他の方法で送信することができる。いくつかの例において、写真および／またはビデオ記録データは、任意の適切な時間にクライアントデバイス１５０に格納され、後ほどホストデバイス１１０へアップロードおよび／または送信され得る。また、写真および／またはビデオ記録データは、写真および／またはビデオ記録データがホストデバイス１１０へ送信された後、クライアントデバイス１５０に格納されてよい。すなわち、写真および／またはビデオ記録データの送信は、クライアントデバイス１５０から写真および／またはビデオ記録データを削除および／または消去するものではない（たとえば、データのコピーがホストデバイス１１０へ送信される）。したがって、図１Ｂに示すように、画像捕捉システム１６０は、特定のイベントおよび／または会場に関連する必要はない。そのような例において、ユーザは、クライアントデバイス１５０（たとえばクライアントデバイス１５０のアプリケーション）を操作し、クライアントデバイス１５０に一体化されたカメラおよび／または記録デバイス（たとえば画像捕捉システム１６０）を介してユーザ生成コンテンツ（たとえば写真、画像データ、フォトグラフィックデータ、ビデオストリームデータなど）を捕捉することができる。
【００２５】
[1031]  いくつかの例において、画像捕捉システム１６０は、会場および／またはイベントに関連する画像データを捕捉するように構成される。すなわち、画像捕捉システム１６０は、所定、既知、および／または所与のコンテキスト内で画像データを捕捉するように構成される。たとえばいくつかの例において、画像捕捉システム１６０は、競技場などに設置され、競技場における後援者、客、演技者などに関連する画像データを捕捉するように構成された１または複数の画像捕捉デバイス（たとえばカメラおよび／またはビデオレコーダ）を含んでよい。このように、画像捕捉システム１６０は、競技場および／または競技場で発生するイベントのコンテキスト内で画像データを捕捉するように構成される。その結果、捕捉された画像データがたとえば「コンテキスト画像データ」であってよい。すなわち、画像データはコンテキストデータに関連する。本明細書で更に詳しく説明するように、ホストデバイス１１０は、画像捕捉システム１６０からの画像データおよび／またはビデオストリームデータ、および任意の適切なデータソースなどからのコンテキストに関連するデータ（たとえば、競技場および／または競技場で発生するイベントに関連する「コンテキストデータ」、および／または他の任意の適切なコンテキストおよび／またはメタデータ）を受信し、コンテキストデータをたとえば画像データに関連付け、たとえばクライアントデバイス１５０のユーザに関連するユーザ指定コンテキスト画像および／またはユーザ指定コンテキストビデオストリームを定義し、ユーザに関連するユーザ指定コンテキスト画像および／またはユーザ指定コンテキストビデオストリームをクライアントデバイス１５０へ送信してよい。
【００２６】
[1032]  上述したように、クライアントデバイス１５０および画像捕捉システム１６０は、１または複数のネットワークを介してホストデバイス１１０と通信状態であってよい。たとえば図１Ａに示すように、クライアントデバイス１５０および画像捕捉システム１６０は、自身の通信インタフェースおよびネットワーク１０５を介してホストデバイス１１０と通信状態であってよい。ネットワーク１０５はたとえば、ローカルエリアネットワーク（ＬＡＮ）、たとえば仮想ローカルエリアネットワーク（ＶＬＡＮ）などの仮想ネットワーク、広域ネットワーク（ＷＡＮ）、メトロポリタンエリアネットワーク（ＭＡＮ）、ワールドワイドインターオペラビリティフォーマイクロウェーブアクセスネットワーク（ＷｉＭＡＸ）、セルラネットワーク、インターネット、および／または、有線および／または無線ネットワークとして実装された他の任意の適切なネットワークなど、任意の種類のネットワークであってよい。例として、ネットワーク１０５は、（「ＷｉＦｉ（登録商標）」としても知られる）米国電気電子学会（ＩＥＥＥ）８０２．１１規格に基づく無線ローカルエリアネットワーク（ＷＬＡＮ）として実装され得る。また、ネットワーク１０５は、たとえばＬＡＮまたはＷＬＡＮおよびインターネットなど、任意の種類のネットワークの組み合わせを含んでよい。いくつかの実施形態において、クライアントデバイス１５０は、ネットワーク１０５と同様または異なってよい中間ネットワークおよび／または代替ネットワーク（不図示）を介してホストデバイス１１０およびネットワーク１０５と通信してよい。このように、クライアントデバイス１５０は、共通ネットワークを用いてホストデバイス１１０へ伝送されてもされなくてもよい（たとえば上述したネットワークのいずれかに関連する）複数の通信モードを用いて、ホストデバイス１１０へデータを送信および／またはホストデバイス１１０からのデータを受信してよい。たとえばクライアントデバイス１５０は、セルラネットワークおよびインターネット（たとえばネットワーク１０５）を介してホストデバイス１１０に接続されたモバイル電話（たとえばスマートフォン）であってよい。
【００２７】
[1033]  いくつかの例において、ネットワークは、たとえばピアネットワーキングセッションなどを容易にし得る。そのような例において、ピアネットワーキングセッションはたとえば、各々が共通の特徴を共有するクライアントデバイスおよび／または他の任意の適切な電子デバイスを含んでよい。たとえばいくつかの例において、ピアネットワーキングセッションは、会場、イベント、場所などの所定の近接範囲内にある任意の適切なクライアントデバイス（たとえば、データベース１４０などに登録された電子デバイス）を含んでよい。たとえばいくつかの例において、そのようなピアネットワーキングセッションは、会場（たとえばスポーツイベント）に存在する任意の数の登録クライアントデバイスを含んでよい。いくつかの例において、ピアネットワーキングセッションは、ユーザおよび／またはクライアントデバイスに関連するコンテキストデータに基づいて自動的に確立され得る。他の例において、ピアネットワーキングセッションは、１または複数のユーザが会場などに「チェックイン」することおよび／または他の方法で自身の存在を報知すること（たとえばユーザの存在を「スクォーク」すること）に基づいて自動的に確立され得る。いくつかの例において、ユーザは、ユーザがイベントなど（たとえばスポーツイベント、コンサート、結婚式、誕生日パーティ、会合など）に到着した時、登録時、画像またはビデオストリームの捕捉時などにおいて「チェックイン」してよい。また、「チェックイン」は、たとえば測位データ、日付および時刻データ、個人またはユーザ識別データなどの情報を識別することを含んでよい。いくつかの実装において、ユーザは、自身のクライアントデバイス１５０上のアプリケーションを介して、コンテキストビデオストリームが捕捉されたイベントおよび／または場所を検索することもできる。ユーザは、検索の結果得られたイベントおよび／または場所に「チェックイン」してよい。本明細書で説明するように、イベントおよび／または場所へのチェックインは、たとえばユーザがコンテキストビデオストリームデータにマッチし得るか否かを決定するために、そのイベントおよび／または場所に関連するコンテキストビデオストリームデータの処理を開始させ得る。
【００２８】
[1034]  他の例において、ユーザは、たとえば所定のユーザセットまたはグループを含むピアネットワーキングセッションを手動で確立してよい。いくつかの例において、そのようなピアネットワーキングセッションは、パブリックネットワーク、プライベートネットワーク、および／または他の限定されたアクセスネットワークであってよい。たとえばいくつかの例において、ユーザは、ネットワーキングセッションへの参加を要求し、および／またはネットワーキングセッションへの参加の招待などを受信してよい。いくつかの例において、ピアネットワーキングセッションの確立は、たとえば、ピアネットワーキングセッションに含まれるユーザ間での通信（たとえばグループチャットセッションなど）および／または画像および／またはビデオデータの共有を容易にし得る。
【００２９】
[1035]  ホストデバイス１１０は、データベース１４０、クライアントデバイス１５０、および／または画像捕捉システム１６０へデータを送信および／またはそこからのデータを受信するように構成された任意の適切なデバイスであってよい。いくつかの実施形態において、ホストデバイス１１０は、たとえばサーバデバイス（たとえばウェブサーバデバイス）、ネットワーク管理デバイス、管理者デバイスなどとして機能してよい。いくつかの実施形態において、ホストデバイス１１０は、同じブレード、ラック、および／または施設に集合的に収容された、あるいは複数のブレード、ラック、および／または施設に分散したサーバまたはデバイスのグループであってよい。ホストデバイス１１０は、少なくともメモリ１１５、プロセッサ１２０、および通信インタフェース１２５（たとえば図２を参照）を含む。いくつかの実施形態において、メモリ１１５、プロセッサ１２０、および通信インタフェース１２５は、メモリ１１５、プロセッサ１２０、および通信インタフェース１２５の間で信号が送信され得るように接続および／または電気的に結合される。ホストデバイス１１０は、ユーザデータ、顔認識データ、（たとえば時間、場所、会場、イベントなどに関連する）コンテキストデータ、ビデオストリームなどを格納するように構成されたデータベース１４０も含んでよく、および／またはこれに動作可能に結合され得る。
【００３０】
[1036]  メモリ１１５は、たとえばＲＡＭ、メモリバッファ、ハードドライブ、データベース、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭなどであってよい。いくつかの例において、ホストデバイス１１０のメモリ１１５は、１または複数の顔認識動作を実行するために用いられる、および／または１または複数の通信モードを用いて少なくとも１つのデバイス（たとえばクライアントデバイス１５０）とデータを通信（たとえば送信および／または受信）するために用いられる命令またはコードのセットを含む。プロセッサ１２０は、たとえばＧＰＰ、ＣＰＵ、ＡＰＵ、ＧＰＵ、ネットワークプロセッサ、フロントエンドプロセッサ、ＡＳＩＣ、ＦＰＧＡなど任意の適切なプロセッサであってよい。したがってプロセッサ１２０は、メモリ１１５内に格納された命令、モジュール、および／またはコードのセットを遂行および／または実行するように構成され得る。たとえばプロセッサ１２０は、本明細書で詳しく説明するように、特に、（たとえばクライアントデバイス１５０からの）顔認識データの受信、顔認識データの分析、顔認識データの登録および／または格納、（たとえば画像捕捉システム１６０からの）ビデオストリームデータの受信、ビデオストリームデータの分析およびビデオストリームデータと顔認識データとの比較、（たとえばクライアントデバイス１５０への）ビデオストリームデータの送信、ビデオストリームデータの特徴（たとえばビデオストリームデータに含まれる背景ランドマークおよび／または背景風景データなどに基づいて決定された位置情報など）の受信および／または分析、および／または他の任意の適切なプロセスに関連する命令および／またはモジュールのセットを実行するように構成され得る。通信インタフェース１２５は、ホストデバイス１１０を、データベース１４０、クライアントデバイス１５０、画像捕捉デバイス１６０、および／またはネットワーク１０５と通信状態にある他の任意の適切なデバイスおよび／またはサービス（たとえば、顔認識データ、ビデオストリームなどのデータを収集および／または少なくとも一時的に格納するように構成された任意のデバイス）との通信状態に置くことができる任意の適切なデバイスであってよい。いくつかの実施形態において、通信インタフェース１２５は、たとえばネットワークインタフェースカード（ＮＩＣ）、イーサネットインタフェース、光搬送波（ＯＣ）インタフェース、非同期転送モード（ＡＴＭ）インタフェース、および／または無線インタフェース（たとえばＷｉＦｉ（登録商標）無線、Ｂｌｕｅｔｏｏｔｈ（登録商標）無線、ＮＦＣ無線など）など、１または複数の有線および／または無線インタフェースを含んでよい。
【００３１】
[1037]  図１Ａを再び参照すると、ホストデバイス１１０に関連するデータベース１４０は、たとえばリレーショナルデータベース、オブジェクトデータベース、オブジェクトリレーショナルデータベース、階層型データベース、ネットワークデータベース、エンティティ関係データベース、構造化照会言語（ＳＱＬ）データベース、拡張マークアップ言語（ＸＭＬ）データベース、デジタルリポジトリ、メディアライブラリ、クラウドサーバまたはストレージなど、任意の適切なデータベースであってよい。いくつかの実施形態において、ホストデバイス１１０は、通信インタフェース１２５によって任意の適切なネットワーク（たとえばネットワーク１０５）を介してデータベース１４０と通信状態であってよい。そのような実施形態において、データベース１４０は、ネットワーク１０５および／または他の任意のネットワーク（複数も可）を介してホストデバイス１１０と通信することができるネットワーク接続ストレージ（ＮＡＳ）デバイスに含まれ、または格納され得る。他の実施形態において、データベースは、ホストデバイス１１０のメモリ１１５に格納され得る。また他の実施形態において、データベースは、ケーブル、バス、サーバラックなどを介してホストデバイス１１０に動作可能に結合され得る。
【００３２】
[1038]  データベース１４０は、ビデオ認識システム１００に関連するデータを格納および／または少なくとも一時的に保持してよい。たとえばいくつかの例において、データベース１４０は、ユーザプロファイル、リソースリスト、顔認識データ、モード、および／または方法、（たとえば時間、場所、会場、イベントなどに関連する）コンテキストデータ、ビデオストリームまたはその一部、（たとえばランドマークデータなどの）位置情報などに関連する、および／またはこれを表現するデータを格納してよい。すなわち、データベース１４０は、システム１００によって顔画像データが登録されているユーザ（たとえば「登録ユーザ」）に関連するデータを格納してよい。いくつかの実施形態において、データベース１４０はリレーショナルデータベースであり、および／またはこれを含んでよく、データはたとえば、リレーショナルモデルに従って表、マトリックス、ベクトルなどで格納され得る。例として、いくつかの例において、ホストデバイス１１０は、ビデオまたは画像供給源（たとえば画像捕捉システム１６０）から受信したビデオストリームデータおよびビデオストリームデータに関連するコンテキストデータをデータベース１４０に格納するように構成され得る。いくつかの例において、本明細書で更に詳しく説明するように、ビデオストリームデータおよびそれに関連するコンテキストデータは、集合的にコンテキストビデオストリームなどを定義してよい。他の例において、ビデオストリームデータは、コンテキストデータなどを伴わずにデータベース１４０に格納され得る。
【００３３】
[1039]  いくつかの実装において、ユーザプロファイルは、ビデオストリームデータにアクセスするユーザに関する情報を含むユーザプロファイルデータ構造であってよい。たとえばユーザプロファイルデータ構造は、ユーザプロファイル識別子、顔認識データ（たとえば、コンテキストビデオストリームデータからの画像とユーザとをマッチさせるために用いられ得る、ユーザの画像から得られたデータ（たとえば顔特徴データ））、データベース１４０に格納されたコンテキストビデオストリームデータ構造に関連し、ユーザに関連する識別子のリスト、ユーザが（たとえば友人および／または知人として）関連する他のユーザのユーザプロファイルデータ構造に関連する識別子のリスト、ユーザ位置データなどを含んでよい。
【００３４】
[1040]  いくつかの実装において、ユーザは、コンテキストビデオストリームデータにアクセスするためのアプリケーション内に互いを友人として追加してよい。またユーザは、たとえば第１のユーザプロファイルに関連するユーザが第２のユーザプロファイルに関連する別のユーザの知人である場合、自動的に関連付けされ得る。たとえば、クライアントデバイスを操作するユーザは、クライアントデバイスに格納された連絡先リストおよび／または他の連絡先情報を有してよい。アプリケーションは、連絡先情報を取得して取り込み、データベース内の少なくとも１つのユーザプロファイルにおける情報と連絡先情報とをマッチさせ、少なくとも１つのユーザプロファイルをそのユーザと自動的に関連付けしてよい。いくつかの実装において、ユーザは、各ユーザの各ユーザプロファイルにおける友人および／または知人のリスト（たとえば、特定のユーザの友人として追加されるユーザプロファイルの識別子のリスト）を格納することによって、互いに関連付けされ得る。ユーザが友人および／または知人を追加すると、ユーザは、友人および／または知人がコンテキストビデオストリームデータなどを記録および／または受信した場合、それを自動的に通知され得る。いくつかの実装において、ホストデバイス１１０は、ユーザに関連するコンテキストビデオストリームデータを自動的に処理するために（たとえば、ユーザの友人および／または知人がコンテキストビデオストリームデータ内に発見され得るかを決定するために）、格納されたユーザ間の関係を用いてもよい。たとえば、コンテキストビデオストリームデータが受信された時、友人および／または知人がユーザに関連する時などに、ホストデバイス１１０は、ユーザの友人および／または知人に関連する顔画像データがコンテキストビデオストリームデータとマッチし得るかを決定するためにコンテキストビデオストリームデータを自動的に処理してよい。
【００３５】
[1041]  図１を参照すると、ホストデバイス１１０は、データベース１４０（たとえば単一のデータベース）を含む、および／またはこれに動作可能に結合されるものとして図示され説明されるが、いくつかの実施形態において、ホストデバイス１１０は、任意の数のデータベースに動作可能に結合され得る。そのようなデータベースは、システム１００に関連するデータセットの少なくとも一部を格納するように構成され得る。たとえばいくつかの実施形態において、ホストデバイス１１０は、ユーザデータ、ユーザプロファイルなどを受信し少なくとも一時的に格納するように構成された第１のデータベース、およびビデオストリームデータおよびビデオストリームデータに関連するコンテキストデータを受信し少なくとも一時的に格納するように構成された第２のデータベースと動作可能に結合され、および／または通信状態であってよい。いくつかの実施形態において、ホストデバイス１１０は、クライアントデバイス１５０および／または画像捕捉システム１６０に格納されたデータベースと動作可能に結合され、および／または通信状態であってよい。すなわち、データベースの少なくとも一部は、クライアントデバイス１５０および／または画像捕捉システム１６０に実装および／または格納され得る。このように、ホストデバイス１１０、およびいくつかの例においてデータベース１４０は、ホストデバイス１１０と（たとえばネットワーク１０５を介して）通信状態でありながら、ホストデバイス１１０と異なる位置に物理的に配置され得る任意の数のデータベースと通信状態であってよい。
【００３６】
[1042]  いくつかの実施形態において、データベース１４０は、検索可能データベースおよび／またはリポジトリであってよい。たとえばいくつかの例において、データベース１４０は、ユーザに関連するビデオストリームデータ（たとえばコンテキストビデオストリームデータ）を格納してよい。いくつかの例において、ユーザは、データベース１４０に格納されたユーザに関連する１または複数のコンテキストビデオストリームを取得および／または視聴するためにデータベース１４０を検索してよい。いくつかの例において、ユーザは、自身のユーザプロファイルに関連するビデオストリーム（たとえばユーザ指定コンテキストビデオストリームなど）を更新、編集、削除、および／または追加するための限定されたアクセスおよび／または権利を有してよい。いくつかの例において、ユーザはたとえば、そのユーザに関連するユーザ指定ビデオストリームに関連する許可および／またはアクセスを更新および／または修正してよい。たとえばいくつかの例において、ユーザは、ユーザに関連するデータを再配信、共有、および／または保存してよい。他の例において、ユーザは、ユーザ指定データなどへのアクセスをブロックしてよい。いくつかの例において、ユーザは、ユーザと共有された（たとえばユーザと関連する、または関連しない）コンテンツ、データ、および／またはビデオストリームを再配信および／または共有してよい。
【００３７】
[1043]  図２を参照すると、上述したように、ホストデバイス１１０のプロセッサ１２０は、特定のモジュールを実行するように構成され得る。モジュールはたとえば、ハードウェアモジュール、メモリ１１５内に格納され、および／またはプロセッサ１２０において実行されるソフトウェアモジュール、および／またはそれらの任意の組み合わせであってよい。たとえば図２に示すように、プロセッサ１２０は、分析モジュール１２１、データベースモジュール１２２、提示モジュール１２３、および位置モジュール１２４を含み、および／または実行する。図２に示すように、分析モジュール１２１、データベースモジュール１２２、提示モジュール１２３、および位置モジュールは、接続および／または電気的に結合され得る。その結果、分析モジュール１２１、データベースモジュール１２２、提示モジュール１２３、および位置モジュール１２４の間で信号が送信され得る。
【００３８】
[1044]  分析モジュール１２１は、ユーザおよび／またはビデオストリームの顔認識に関連するデータを受信および／または収集することに関連する、プロセッサ１２０によって実行され得る命令のセット（またはその一部）を含む。特に、分析モジュール１２１は、通信インタフェース１２５と動作可能に結合され、および／または通信状態であってよく、そこからデータを受信してよい。そのようなデータは、たとえばユーザ（たとえば顔認識情報、プロファイル情報、嗜好、活動ログ、位置情報、連絡先情報、カレンダー情報、ソーシャルメディア活動情報など）、会場（たとえば位置データ、リソースデータ、イベントスケジュール）、イベントなどに関連し得る。本明細書で更に詳しく説明するように、分析モジュール１２１は、顔認識に関連する任意の数のプロセスを遂行および／または実行するための要求および／または命令に関連する信号を通信インタフェース１２５から受信してよい。
【００３９】
[1045]  いくつかの例において、分析モジュール１２１は、実質的にリアルタイムで通信インタフェース１２５からのデータを受信してよい。すなわち、いくつかの例において、システム１００に含まれる電子デバイス（たとえばクライアントデバイス１５０）は、ユーザの顔認識に関連するデータを定義および／または更新するためにユーザによって操作され、定義および／または更新されると、ネットワーク１０５を介してホストデバイス１１０へデータを送信してよい。したがって、通信インタフェース１２５は、データを受信すると分析モジュール１２１へ信号を送信し、分析モジュール１２１は、電子デバイスによる定義および／または更新後、非常に短い期間でデータを受信する。他の実施形態において、分析モジュール１２１は、たとえば集計プロセス、現在のおよび／または予測されるプロセッサ、メモリ、および／またはネットワーク負荷などに基づいて、所定の速度などで通信インタフェース１２５からデータを受信してよい。
【００４０】
[1046]  上述したように、分析モジュール１２１は、顔認識プロセスなどに関連するデータを受信、集計、分析、分類、解析、変更、および／または更新するように構成され得る。具体的には、いくつかの例において、ユーザはクライアントデバイス１５０を操作して、（本明細書で更に詳しく説明するように）自身の顔の１または複数の画像またはビデオストリームを捕捉することができ、画像データに関連する信号および／または画像データを表す信号を、たとえばネットワーク１０５を介してホストデバイス１１０へ送信してよい。いくつかの例において、通信インタフェース１２５は、画像データを受信し、関連信号を分析モジュール１２１へ送信してよい。受信すると、分析モジュール１２１は、画像データを集計、分析、分類、更新、解析、および／または他の方法で処理することに関連する（たとえば分析モジュール１２１および／またはメモリ１１５に格納された）命令またはコードのセットを実行してよい。具体的には、分析モジュール１２１は、たとえば固有顔（たとえば顔認識に関連する固有ベクトル）を用いた主成分分析、線形判別分析、Ｆｉｓｈｅｒｆａｃｅアルゴリズムを用いた弾性バンチグラフマッチング、隠れマルコフモデル、テンソル表現を用いたマルチリニアサブスペースラーニング、ニューロン動機付け動的リンクマッチング、重畳ニューラルネット（ＣＮＮ）など、またはそれらの組み合わせなど任意の適切な顔認識プロセスおよび／またはアルゴリズムを実行してよい。いくつかの実装において、ユーザがホストデバイス１１０へ提供する画像データは、分析モジュール１２１を介して、ユーザを識別するための後続の顔認識プロセスにおいて用いられ得る。
【００４１】
[1047]  分析モジュール１２１は、たとえば写真、ビデオ記録および／またはオーディオ記録、個人情報および／または識別情報（たとえば氏名、年齢、性別、誕生日、趣味など）、カレンダー情報、（たとえばユーザおよび／またはユーザの友人、家族、同僚などに関連する）連絡先情報、デバイス情報（たとえばメディアアクセスコントロール（ＭＡＣ）アドレス、インターネットプロトコル（ＩＰ）アドレスなど）、位置情報（たとえば現在位置データおよび／または履歴位置データ）、ソーシャルメディア情報（たとえばプロファイル情報、ユーザ名、パスワード、友人または知人リストなど）、および／または他の任意の適切な情報またはデータなど、ユーザの画像データおよびユーザに関連する他の任意の適切な情報またはデータを含むユーザプロファイルなどを定義してよい。このように、分析モジュール１２１は、本明細書で更に詳しく説明するように、データベース１４０にユーザプロファイルデータを格納するための命令を示す信号をデータベースモジュール１２２へ送信してよい。
【００４２】
[1048]  いくつかの例において、分析モジュール１２１は、ビデオストリームデータ（または、たとえば写真から得た画像データ）を受信してよく、ビデオストリームデータの一部がユーザの画像データの任意の適切な部分とマッチするかを決定するためにビデオストリームデータを分析および／または処理するように構成され得る。すなわち、分析モジュール１２１は、ビデオストリームに含まれるデータと比較するテンプレートとして、過去に格納されたユーザ画像データを用いてよい。言い換えると、分析モジュール１２１は、過去に格納されたユーザ画像データに少なくとも部分的に基づいて、ビデオストリームデータにおける顔認識処理および／または分析を実行する。いくつかの実施形態において、ホストデバイス１１０、具体的には通信インタフェース１２５は、画像捕捉システム１６０からのビデオストリームデータを直接（たとえばネットワーク１０５を介して１または複数のカメラから）または間接的に（たとえば１または複数のカメラと通信状態であるコンピューティングデバイスからネットワーク１０５を介して）受信する。いくつかの実施形態において、分析モジュール１２１は、ビデオストリームデータを個々のフレーム（たとえばビデオストリーム中の所定の時間における静止画）に分割、解析、分類、および／または他の方法で分解することに少なくとも部分的に基づいて、ビデオストリームデータを分析および／または処理するように構成され得る。このように、分析モジュール１２１は、過去に格納されたユーザ画像データに対し、ビデオストリームフレームに含まれるデータを比較および／または分析してよい。
【００４３】
[1049]  いくつかの例において、分析モジュール１２１は、たとえば場所、会場、時間、一致するイベント（たとえば「キスカム」において捕捉される、スポーツチームのゴール得点など）、および／または他の任意の適切なコンテキスト情報など、ビデオストリームに関連するコンテキスト情報を決定するためにビデオストリームデータを分析してもよい。いくつかの例において、分析モジュール１２１は、ビデオストリームの少なくとも一部をコンテキストデータにマッチさせ、集計し、および／または他の方法で関連付けするように構成され得る。たとえばいくつかの例において、ビデオストリームデータは、たとえばスポーツイベントにおけるユーザを表現してよい。そのような例において、コンテキストデータは、たとえばスポーツイベントまたは試合のビデオストリームであってよく、時間、場所、会場、チームなどに関連するデータを含んでよい。このように、分析モジュール１２１は、ビデオストリームデータとコンテキストデータとが実質的に一致する（実質的に同時間に発生および／または同時間に関連するデータを捕捉する）ように、ビデオストリームデータおよびコンテキストデータを集計するように構成され得る。他の例において、コンテキストデータは、他の任意の適切なコンテキストに関連するデータを含んでよい。いくつかの例において、分析モジュール１２１は、ビデオストリームを特定のユーザに更に結び付けるために、ユーザの位置に関するデータとともに、ビデオストリームに関連するコンテキスト情報を用いるように構成され得る。分析モジュール１２１は、ビデオストリームに含まれるデータと過去に格納されたユーザ画像データとを比較する前に、コンテキスト情報とユーザの位置とを比較するように構成され得る（詳しくは図５および図６を参照）。
【００４４】
[1050]  分析モジュール１２１が、ビデオストリーム内のデータの少なくとも一部が基準を満たす（たとえば過去に格納されたユーザ画像データと所定のおよび／または許容可能な確率までマッチする）と決定すると、分析モジュール１２１は、データベース１４０内の画像および／またはビデオストリームデータの少なくとも一部を格納し、そのデータを過去に格納されたユーザ画像データと関連付けおよび／または格納する命令を示す１または複数の信号をデータベースモジュール１２２へ送信してよい。いくつかの例において、分析モジュール１２１は、個々のフレームがデータベース１４０に格納され、その後ビデオストリームを定義するために取得および処理され得るように、データベースモジュール１２２へ信号を送信してよい。他の例において、分析モジュール１２１は、ビデオストリームデータの一部がデータベース１４０に格納されるように、データベースモジュール１２２へ１または複数の信号を送信してよい。すなわち、分析モジュール１２１は、（上述したように分割または分解された）個々のフレームからビデオストリームを少なくとも部分的に再定義および／または再構築してよい。
【００４５】
[1051]  いくつかの例において、ホストデバイス１１０は、（たとえば画像捕捉システム１６０から、ネットワーク１０５および通信インタフェース１２５を介して）ビデオストリームデータを受信してよく、分析モジュール１２１および／または図２には示されない他の任意の適切なモジュールは、（上述した）顔認識プロセスを実行する前に１または複数の前処理および／またはプリソート手順を実行してよい。たとえばいくつかの実施形態において、分析モジュール１２１（または他のモジュール）は、たとえば位置、時間、イベントなどの識別情報および／またはコンテキスト情報を含むデータセットを決定および／または定義するためにビデオストリームデータを分析してよい。定義されると、分析モジュール１２１は、たとえばビデオストリームに関連するコンテキスト情報を含むデータセットをマッチさせるなど、ユーザに関連するデータの一部が基準（複数も可）を満たすかを決定するために、（たとえばデータベース１４０などに照会する命令を示す信号をデータベースモジュール１２２へ送信することによって）データベース１４０に格納されたユーザデータを分析してよい。
【００４６】
[1052]  いくつかの例において、基準（複数も可）は、任意の適切な方法（たとえば１０進法、パーセンテージなどの値）で表される信頼性レベルおよび／またはマッチング閾値と関連し得る。たとえばいくつかの例において、基準（複数も可）は、たとえばビデオストリームデータとデータベースに格納されたデータの少なくとも一部との７０％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との７５％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との８０％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との８５％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との９０％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との９５％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との９７．５％マッチ、ビデオストリームデータとデータベースに格納されたデータの少なくとも一部との９９％マッチ、またはそれらの間の任意のパーセンテージといった閾値などであってよい。
【００４７】
[1053]  いくつかの例において、ユーザに関連するデータは、たとえばカレンダーデータ、位置データ、嗜好データなどを含んでよい。たとえば、データが基準を満たさない場合、分析モジュール１２１は、ユーザに関連するデータが、たとえば顔認識プロセスから除外され得るというインジケーションを定義してよい。このように、前処理および／またはプリソートは、顔認識プロセスにおける処理負荷の量などを低減させ得る。ユーザデータに関してデータベース１４０に照会するものとして上述されたが、いくつかの実施形態において、ホストデバイス１１０は、ユーザに関連するデバイス（たとえばクライアントデバイス１５０）へ、そのデバイスに関連する位置データなどの要求を示す信号を送信してよい。位置データの受信（たとえば、デバイスのグローバルポジショニングサービス（ＧＰＳ）データ、画像またはビデオ内のランドマークおよび／または背景風景などの特徴および／または位置情報の使用など）時などに、分析モジュール１２１は、上述したように、位置データがビデオストリームに関連する位置データとマッチするかを決定してよい。
【００４８】
[1054]  例として、いくつかの例において、分析モジュール１２１は、たとえば競技場に関連する位置データも含む、スポーツイベントからのビデオストリームデータを受信してよい。それに応答して、分析モジュール１２１は、ユーザに関連するクライアントデバイス（たとえばクライアントデバイス１５０）からの位置データの要求を送信してよい。たとえば、ビデオストリームに関連する位置データと、クライアントデバイスに関連する位置データとが実質的に同様である（たとえば、ビデオストリームに関連する位置データおよびクライアントデバイスに関連する位置データが、ビデオストリームの供給源およびクライアントデバイスが互いに所定の距離内にあるおよび／またはあったことを示す）場合、および／またはクライアントデバイスに関連する位置データが所定の位置データ値範囲内などにある場合、分析モジュール１２１は、信頼性スコアを増加させ、および／または、結果が閾値を満たすことに貢献する、および／または基準（複数も可）を満たすものであると見なしてよい。位置データはたとえば、ＧＰＳに基づく測位データ、（たとえばＮＦＣ照合、Ｂｌｕｅｔｏｏｔｈ照合、セルラ三角測量、コグニティブネットワーク切替えおよび／またはプロトコルなどを介した）ネットワーク位置および／またはデータ、たとえば「チェックイン」などのソーシャルネットワークデータなどであってよい。たとえば位置モジュール１２４は、ビデオストリームおよび／またはユーザの位置を識別し、分析モジュール１２１が信頼性スコアを修正することができるように分析モジュール１２１へデータを提供するために、位置データを処理してよい。このように、信頼性スコアは、位置データに基づいて計算され得る。
【００４９】
[1055]  他の実装において、位置モジュール１２４は、位置データを処理し、ビデオストリームに関連する位置データおよびユーザに関連する位置データが実質的に同様である（たとえば、ビデオストリームに関連する位置データおよびクライアントデバイスに関連する位置データが、ビデオストリームの供給源およびクライアントデバイスが互いに所定の距離内にあるおよび／またはあったことを示す）場合、処理された位置データを分析モジュール１２１へ提供してよい。分析モジュール１２１は、その後、位置データおよびビデオストリームの顔認識分析に基づいて信頼性スコアを生成および／または修正してよい。このように、信頼性スコアは、ビデオストリームに関連する位置データおよびユーザに関連する位置データが実質的に同様であると決定された場合、生成および／または修正され、ビデオストリームに関連する位置データおよびユーザに関連する位置データが実質的に同様ではないと決定された場合、生成および／または修正されなくてよい。また、このように信頼性スコアは、位置データ分析および顔認識分析の両方の結果として計算され得る。位置モジュール１２４の更なる詳細は、少なくとも図５〜図６に示され得る。このように、ホストデバイス１１０は、たとえばビデオストリームデータが捕捉された位置とクライアントデバイスとの近接度を（たとえば分析モジュール１２１を介して）決定することができる。
【００５０】
[1056]  分析モジュール１２１は、位置データを分析するものとして説明されたが、他の例において、任意の適切な供給源、活動、位置、パターン、購買などに関連するデータを分析してよい。たとえばいくつかの例において、分析モジュール１２１は、会場に関連するチケット売上を分析してよい。他の例において、分析モジュール１２１は、ソーシャルメディアのポスト、コメント、ライクなどを分析してよい。いくつかの例において、分析モジュール１２１は、（上述したように）ユーザに関連するデータを収集および／または分析し、たとえば、特にユーザ識別データ、顔認識データ、クライアントデバイスデータ、購買データ、インターネットウェブ閲覧データ、位置データ、ソーシャルメディアデータ、嗜好データなどを含み得るユーザプロファイルを定義してよい。したがって、ユーザのプロファイルデータは、信頼性スコア、値、および／またはインジケータを決定するために分析され、これは、ユーザデータおよび／またはビデオストリームデータが基準（複数も可）を満たすかを決定するために閾値スコア、値、および／またはインジケータに対して評価され得る。したがって、そのような実施形態において、非顔認識データ（たとえばチケット売上データ、ソーシャルメディアポスト、および／または、たとえばビデオまたは画像内の個人の服装などの特徴、たとえば画像内のランドマークなどの位置データ、背景風景データなど）は、顔認識データを裏付け、および／または信頼性スコアを増加／低減するために用いられ得る。
【００５１】
[1057]  分析モジュール１２１は、ビデオストリームに関連する顔認識データおよびコンテキストデータを定義するためにビデオストリームデータを分析するものとして上述されたが、他の実施形態において、顔認識プロセスおよびコンテキストデータプロセスは、個別におよび／または独立して実行され得る。たとえばいくつかの実施形態において、分析モジュール１２１は顔認識プロセスを実行するように構成され、異なるモジュール、プロセッサ、デバイス、サーバなどはコンテキストデータプロセスを実行するように構成され得る。たとえば位置モジュール１２４が、位置データ、画像の特徴などに基づいて、画像および／またはビデオストリームの分析を実行してよい。したがって、顔認識プロセスおよびコンテキストデータプロセスが同じモジュールによって実行される場合と比べて、ビデオストリームデータを分析するための時間が低減され、および／または処理負荷が分散され得る。
【００５２】
[1058]  上述したように、データベースモジュール１２２は、データベース１４０の監視および／またはそこに格納されたデータの更新に関連する、プロセッサ１２０によって実行される命令のセット（またはその一部）を含む。たとえばデータベースモジュール１２２は、プロセッサ１２０に、データベース１４０に格納されたデータを、分析モジュール１２１から受信した顔認識データの少なくとも一部を用いて更新させる命令を含んでよい。具体的には、データベースモジュール１２２は、たとえば分析モジュール１２１からユーザに関連するユーザ画像データを受信し、それに応答して、データベース１４０にユーザ画像データを格納してよい。いくつかの例において、データベースモジュール１２２は、上述したように、データベース１４０に格納されユーザに関するユーザ画像データに関連するデータが、ビデオストリームデータの任意の適切な部分とマッチするかを決定するためにデータベース１４０に照会する要求を示す信号を分析モジュール１２１から受信してよい。たとえば、ビデオストリームデータの少なくとも一部が基準（複数も可）（以後、簡略化のために単数形の「基準」と称するが複数の基準を除外するものではない）を満たす場合、データベースモジュール１２２は、そのユーザに関連する、データベース１４０に格納されたデータを更新するように構成され得る。すなわち、ビデオストリームデータの少なくとも一部が、所定の確率の範囲内などでユーザ画像データにマッチする場合である。しかし、ビデオストリームデータが、データベース１４０に格納されたユーザ画像データにマッチしない場合、データベースモジュール１２２は、たとえば次のエントリ（たとえば次のユーザに関連するデータ）に関してデータベース１４０に照会し、および／またはデータベース１４０を更新しなくてよい。また、データベースモジュール１２２は、リレーショナルベース方式で（たとえばデータベース１４０はリレーショナルデータベースなどであってよく）、および／または他の任意の適切な方法でデータベース１４０にデータを格納するように構成され得る。
【００５３】
[1059]  提示モジュール１２３は、上述したように、コンテキストビデオストリームを定義すること、および／または顔認識プロセス中にビデオストリームデータの少なくとも一部が基準を満たすことを表す提示に関連する、プロセッサによって実行される命令のセット（またはその一部）を含む。具体的には、提示モジュール１２３は、コンテキストビデオストリームおよび／またはイベント、会場、場所などにおける（顔認識によって）識別されたユーザを表す提示を定義するように構成され得る。コンテキストビデオストリームが定義されると、提示モジュール１２３は、コンテキストビデオストリームに関連する信号を通信インタフェース１２５へ送信してよく、通信インタフェース１２５は、コンテキストビデオストリームをディスプレイにグラフィックレンダリングする命令を示す信号を（たとえばネットワーク１０５を介して）クライアントデバイス１５０へ送信してよい。
【００５４】
[1060]  提示モジュール１２３および／またはホストデバイス１１０の他の部分は、クライアントデバイス１５０のディスプレイにコンテキストビデオストリームを提示する命令を示す信号をクライアントデバイス１５０へ送信するものとして上述されたが、他の例において、提示モジュール１２３は、コンテキストビデオストリームを定義し、データベース１４０にコンテキストビデオストリームを格納する命令を示す信号をデータベースモジュール１２２へ送信してよい。そのような例において、コンテキストビデオストリームに関連するデータは、データベース１４０に格納されたユーザデータとともに格納され、および／または関連付けされ得る。いくつかの例において、ホストデバイス１１０は、クライアントデバイス１５０（および／または他の任意の適切なデバイス）からの要求に応答して、データベース１４０からコンテキストビデオストリームを取得してよい。具体的には、いくつかの実施形態において、ユーザは、クライアントデバイス１５０を操作し、ウェブページまたはインターネットにアクセスしてよい。認証（たとえばクレデンシャルの入力など）後、ユーザは、コンテキストビデオストリームへのアクセス要求がクライアントデバイス１５０からホストデバイス１１０へ送信されるように、ウェブページとインタラクトしてよい。したがって、ホストデバイス１１０（たとえばデータベースモジュール１２２）は、データベース１４０からコンテキストビデオストリームを取得し、（たとえばインターネットおよびウェブページを介してコンテキストビデオストリームをレンダリングすることによって）コンテキストビデオストリームをディスプレイに提示するために動作可能なクライアントデバイス１５０へ信号を送信してよい。すなわち、コンテキストビデオストリームは「クラウド」に格納され、ウェブブラウザおよびインターネットを介してアクセスされ得る。
【００５５】
[1061]  分析モジュール１２１、データベースモジュール１２２、および提示モジュール１２３は、ホストデバイス１１０において格納および／または実行されるものとして上述されたが、他の実施形態において、モジュールのいずれかは、たとえばクライアントデバイス１５０および／または画像捕捉システム１６０において格納および／または実行され得る。たとえばいくつかの実施形態において、クライアントデバイス１５０は、提示モジュールを（たとえばネイティブアプリケーションとして）含み、定義し、および／または格納してよい。提示モジュールは、ホストデバイス１１０の提示モジュール１２３と同一または実質的に同様であってよい。そのような実施形態において、クライアントデバイス１５０の提示モジュールは、ホストデバイス１１０において含まれおよび／または実行される提示モジュール１２３の機能を代替してよい。したがって、クライアントデバイス１５０の提示モジュールは、たとえば、コンテキストビデオストリームに関連するデータセットを受信し、受信すると、クライアントデバイス１５０のディスプレイに提示されるプレゼンテーションを定義してよい。
【００５６】
[1062]  図３は、実施形態に係る、コンテキストビデオストリームを定義する方法３００を示すフローチャートである。方法３００は、３０２において、ホストデバイスにおいて、ユーザに関連する顔画像データを登録する要求を示す信号をクライアントデバイスからネットワークを介して受信することを含む。たとえばいくつかの実施形態において、ネットワークは、たとえば図１に関して上述したネットワーク１０５など、任意の適切なネットワークまたはネットワークの組み合わせであってよい。ホストデバイスは、図１および図２に関して上述したホストデバイス１１０と同一または実質的に同様であってよい。同様に、クライアントデバイスは、図１〜図２に関して上述したクライアントデバイス１５０と同一または実質的に同様であってよい。いくつかの例において、クライアントデバイスは、初期顔画像データを捕捉し、初期顔画像データをホストデバイスへ送信してよい。具体的には、いくつかの実施形態において、クライアントデバイスは、ユーザの顔画像または複数の画像を任意の適切な方法で捕捉するように構成され得る。したがって、ホストデバイスは、クライアントデバイスから顔画像データを受信し、ユーザおよび／またはユーザの顔画像データの登録に関連する任意の適切なプロセスなどを実行してよい。
【００５７】
[1063]  方法３００は、３０４において、ユーザに関連する顔認識データを登録すること、およびホストデバイスと通信状態であるデータベースに顔認識データを格納することを含む。データベースは、たとえば図１を参照して上述したデータベース１４０など、任意の適切なデータベースであってよい。顔認識データの登録は、たとえば上述したもののような顔認識に関連する任意の適切なプロセス、方法、および／またはアルゴリズムを含んでよい。いくつかの例において、ホストデバイスは、顔認識に基づいてユーザ画像データなどを定義するように構成され、ユーザ画像データの少なくとも一部をデータベースに格納してよい。
【００５８】
[1064]  ３０６において、ホストデバイスは、イベントおよび／または位置に関連するコンテキストビデオストリームデータを受信する。ホストデバイスは、たとえば図１に関して上述した画像捕捉システム１６０（たとえばカメラおよび／またはクライアントデバイス）などの画像捕捉システムからコンテキストビデオストリームデータを受信してよい。具体的には、ホストデバイスは、直接（たとえば、ネットワークを介して１または複数のカメラから）、または間接的に（たとえば、１または複数のカメラと通信状態であるコンピューティングデバイスからネットワークを介して）コンテキストビデオストリームデータを受信してよい。
【００５９】
[1065]  １つの例において、カメラは、コンテキストビデオストリームデータを記録し、コンテキストビデオストリームデータをホストデバイスへ送信してよい。他の例において、ユーザは、ユーザによって操作されるクライアントデバイスで実行中のアプリケーションによって（たとえば、クライアントデバイスで実行中のアプリケーション内のユーザ生成コンテンツ（ＵＧＣ）インタフェースを介して）ビデオを記録してよい。アプリケーションによる記録を（たとえばＵＧＣインタフェースにおける「記録」および／または同様のボタンをクリックすることによって）開始することによって、ユーザはコンテキストビデオストリームを記録することができ、それを用いてクライアントデバイスは、位置データ（たとえば測位、近距離通信（ＮＦＣ）からのデータ、他のデバイスとのＢｌｕｅｔｏｏｔｈ通信からのデータ、セルラ三角測量、イベントおよび／または位置チェックインデータ、および／またはネットワークＷｉＦｉ接続情報）を、コンテキストビデオストリームに関連付けてよい。具体的には、コンテキストビデオストリームは、位置データにタグ付けされ、および／または位置データをカプセル化するデータ構造に関連付けされ得る。
【００６０】
[1066]  ３０８において、コンテキストビデオストリームデータは、コンテキストビデオストリームデータが、コンテキストビデオストリームデータ内の顔画像データの顔認識に関連する基準を満たすかを決定するために分析される。たとえばホストデバイスは、コンテキストビデオストリームデータ（または、たとえば写真から得た画像データ）を受信し、コンテキストビデオストリームデータの一部が顔画像データの任意の適切な部分にマッチするかを決定するために、コンテキストビデオストリームデータを分析および／または処理してよい。すなわち、ホストデバイスは、顔画像データを、コンテキストビデオストリームに含まれるデータと比較するテンプレートとして用いてよい。言い換えると、ホストデバイスは、顔画像データに少なくとも部分的に基づいて、コンテキストビデオストリームデータに顔認識プロセスおよび／または分析を実行する。いくつかの例において、基準はたとえば、所定のおよび／または許容可能な確率の範囲内のコンテキストビデオストリームデータと顔画像データとのマッチングに関連してよい。いくつかの実施形態において、ホストデバイスは、コンテキストビデオストリームデータを個々のフレーム（たとえば、ビデオストリーム中の所定の時間における静止画像）に分割、解析、分類、および／または他の方法で分解することに少なくとも部分的に基づいて、コンテキストビデオストリームデータを分析および／または処理するように構成され得る。このように、ホストデバイスは、コンテキストビデオストリームフレームに含まれるデータを顔画像データに対して比較および／または分析してよい。
【００６１】
[1067]  いくつかの例において、コンテキストビデオストリームデータの分析は、たとえば場所、会場、時間、一致するイベント（たとえば、「キスカム」において捕捉される、スポーツチームのゴール得点など）、画像内のランドマーク、および／または他の任意の適切なコンテキスト情報などのビデオストリームに関連するコンテキスト情報を決定するためにコンテキストビデオストリームを分析することも含む。いくつかの例において、ホストデバイスは、ビデオストリームの少なくとも一部をコンテキストデータにマッチ、集計、および／または他の方法で関連付けするように構成され得る。たとえばいくつかの例において、ビデオストリームデータは、たとえばスポーツイベントにおけるユーザを表現してよい。そのような例において、コンテキストデータは、たとえばスポーツイベントのビデオストリームであってよく、時間、場所、会場、チームなどに関連するデータを含んでよい。このように、ホストデバイスは、ビデオストリームデータおよびコンテキストデータが実質的に一致する（たとえば実質的に同じ時間に発生および／または同じ時間に関連するデータを捕捉する）ように、ビデオストリームおよびコンテキストデータを集計するように構成され得る。他の例において、コンテキストデータは、他の任意の適切なコンテキストに関連するデータを含んでよい。
【００６２】
[1068]  ３１０において、コンテキストビデオストリームデータ内の顔画像データの顔認識に関連する基準が満たされた場合、ユーザのコンテキストビデオストリームが定義される。たとえば、ホストデバイスは、コンテキストビデオストリーム内のデータの少なくとも一部が基準を満たす（たとえば所定および／または許容可能な確率まで顔画像データとマッチする）と決定すると、ユーザのコンテキストビデオストリームを定義し、ユーザのコンテキストビデオストリームをデータベースに格納してよい。ユーザのコンテキストビデオストリームが定義されると、３１２において、ホストデバイスは、（たとえば、クライアントデバイスにインスタンスが生成されたインタフェース内にコンテキストビデオストリームをグラフィックレンダリングすることによって）クライアントデバイスのディスプレイにユーザのコンテキストビデオストリームを提示する命令を示す信号を送信する。たとえばいくつかの実施形態において、ホストデバイスは、クライアントデバイスのディスプレイにユーザのコンテキストビデオストリームを提示するために動作可能なクライアントデバイスへ、ネットワークを介して信号を送信してよい。他の実施形態において、ホストデバイスは、コンテキストビデオストリームを（たとえばデータベースなどに）格納し、クライアントデバイス（および／または他の任意の適切なデバイス）からの要求に応答して、データベースからユーザのコンテキストビデオストリームを取得するように構成され得る。具体的には、いくつかの実施形態において、ユーザはクライアントデバイスを操作し、インターネット上のウェブページにアクセスしてよい。認証（たとえばクレデンシャルの入力など）後、ユーザは、コンテキストビデオストリームへのアクセス要求がクライアントデバイスからホストデバイスへ送信されるようにウェブページとインタラクトしてよい。このように、ホストデバイスは、コンテキストビデオストリームをデータベースから取得し、（たとえば、インターネットおよびウェブページを介してコンテキストビデオストリームをグラフィックレンダリングすることによって）ディスプレイにコンテキストビデオストリームを提示するために動作可能なクライアントデバイスへ信号を送信してよい。すなわち、コンテキストビデオストリームは「クラウド」に格納され、ウェブブラウザおよびインターネットを介してアクセスされ得る。
【００６３】
[1069]  他の実装において、コンテキストビデオストリームが基準を満たす場合（たとえば、コンテキストビデオストリームが、所定の確率までユーザの画像データとマッチする場合など）、ホストデバイスは、コンテキストビデオストリームデータを自動的にユーザへ送信してよい。たとえばいくつかの実装において、ユーザは、クライアントデバイスを操作し、そのユーザに関するユーザ位置データを追跡するアプリケーションのインスタンスを生成してもよい。画像捕捉デバイス（たとえば自律カメラおよび／または他のユーザなど）がコンテキストビデオストリームデータを記録すると、ホストデバイスは、ユーザに関連する顔画像データおよびコンテキストビデオストリームの顔分析に基づいて、コンテキストビデオストリームデータがユーザとマッチすることを決定してよい。ユーザのクライアントデバイスは、ユーザおよびクライアントデバイスに関連する位置データをホストデバイスへ送信することもできる。ホストデバイスは、顔分析および位置情報の両方を用いて、コンテキストビデオストリーム内にユーザが出現する確率を精密化してよい。ユーザがコンテキストビデオストリーム内に出現する確率が基準を満たす（たとえば所定の閾値を超えるなどの）場合、ホストデバイスは、コンテキストビデオストリームデータをユーザへ送信してよい。あるいはホストデバイスは、ユーザの位置情報がコンテキストビデオストリームの位置情報と実質的に同様である場合に確率が計算されるように、位置情報に基づいてコンテキストビデオストリームをプリフィルタしてよく、コンテキストビデオストリームの位置データがユーザの位置情報と実質的に同様ではない場合、確率を計算しない。
【００６４】
[1070]  他の実装において、コンテキストビデオストリームが基準を満たす場合（たとえば、コンテキストビデオストリームが、所定の確率までユーザの顔画像データとマッチする場合など）、ホストデバイスは、コンテキストビデオストリームデータを格納し、ユーザとビデオとのインタラクションに基づいて、コンテキストビデオストリームデータをユーザに関連付けしてよい。たとえばいくつかの実装において、ユーザは、コンテキストビデオストリームデータを検索および／またはこれにアクセスするために、ユーザに関連するクライアントデバイスにインスタンスが生成されたアプリケーションにアクセスしてよい。ユーザはたとえば、そのユーザに関連する別のユーザのユーザプロファイル内のコンテキストビデオストリームデータを視聴し、および／または、アプリケーションのインタフェース内で視聴するコンテキストビデオストリームデータを検索してよい。アプリケーション内でユーザがコンテキストビデオストリームデータにアクセスすると、アプリケーションは、ユーザがコンテキストビデオストリームデータにアクセスしていることを示す信号をホストデバイスへ送信してよい。ホストデバイスは、そのユーザに関連する顔画像データに基づいてコンテキストビデオストリームデータの顔分析が実行されたか否かを自動的に決定し、ユーザの顔画像データがコンテキストビデオストリームデータと過去に比較されていない場合、そのユーザの顔画像データに基づいてコンテキストビデオストリームデータの顔分析を自動的に実行してよい。このように、ホストデバイスは、ユーザがコンテキストビデオストリームデータにアクセスしようと試みるまで、コンテキストビデオストリームデータ内のユーザを識別するためにコンテキストビデオストリームデータを処理することを遅延させ得る。
【００６５】
[1071]  いくつかの例において、ユーザは、イベント後にイベントを検索し、そのイベントに「チェックイン」してよい。たとえばユーザは、（たとえばイベントのリストを閲覧すること、マップ上でイベントの位置を閲覧することなどによって）イベントを識別し、イベントを選択してよい。ユーザのイベント選択に基づいて、ホストデバイスは、ユーザの顔画像データに基づいて、そのイベントに関連するビデオストリームおよび／または画像の顔分析を実行してよい。ホストデバイスが、ビデオストリームおよび／または画像が（たとえば所定の確率内で）ユーザを含むことを識別した場合、ホストデバイスは、そのようなビデオストリームおよび／または画像をユーザへ提供してよい。
【００６６】
[1072]  方法３００は、ビデオストリーム、画像データ、コンテキストデータなどを送信および／または受信し、ユーザ指定ビデオストリームおよび／または画像データを１または複数のユーザに提示および／または共有するものとして上述されたが、システムは、ビデオストリームデータおよび／または画像データが任意の適切な方法で捕捉され、任意の適切なデバイスによって分析され、任意の適切なユーザまたはユーザデバイスに送信および／または共有され得るように構成され得ることを理解すべきである。例として、いくつかの例において、ユーザはユーザデバイス（たとえばクライアントデバイス１５０などのクライアントデバイス）を操作し、ユーザの顔画像を捕捉してよい。たとえばユーザは、（たとえば、ユーザまたはクライアントデバイスがスマートフォンまたは他のモバイルまたは装着型電子デバイスである場合）モバイルアプリケーションを開き、クライアントデバイスのカメラを介して顔画像（たとえば「セルフィ」）を捕捉してよい。すなわち、ユーザは、セルフィを撮るためにアプリケーションを介してクライアントデバイスのカメラを制御してよい。そのようなセルフィはユーザを登録するために提供されてよく、それによってアプリケーションは、ユーザの顔認識データ（たとえば顔特徴特性）を識別することができる。この顔認識データは、今後受信されるビデオおよび／または画像内のユーザを識別するために用いられ得る。
【００６７】
[1073]  いくつかの例において、ユーザは、アプリケーションを介してコンテンツ（たとえば画像データおよび／またはビデオストリーム）を捕捉してよい。上述したように、コンテンツは、たとえばスポーツイベントにおける１または複数の人間など、所与のコンテキストにおける１または複数の人間のビデオストリームであってよい。いくつかの例において、ユーザ捕捉（たとえば生成）コンテンツは、たとえば時間、日付、会場、イベントなどのコンテキストデータに関連付けされ、および／またはデータおよび／またはメタデータにタグ付けされ得る。他の例において、ユーザ生成コンテンツは、コンテキストデータに関連付けされる必要はない。ユーザ生成コンテンツ（たとえばビデオストリームデータなど）は、任意の登録ユーザ（たとえばデータベースに格納されたユーザプロファイルを有する任意のユーザ）の存在を決定するために、クライアントデバイスまたはホストデバイスを介して顔認識および／または他の画像分析によって分析され得る。ビデオストリーム内で登録ユーザが識別された場合、ユーザ、クライアントデバイス、および／またはホストデバイスは、識別されたユーザの１または複数に関連するユーザ指定ビデオストリームを定義してよい。ユーザ、クライアントデバイス、および／またはホストデバイスはその後、ユーザ指定ビデオストリームを識別された各ユーザと共有するかを決定してよい。いくつかの例において、ユーザ指定ビデオストリーム（複数も可）の共有は、ユーザプロファイルおよび／または嗜好に基づいて、および／またはモバイルアプリケーションまたはアカウント内の設定などに基づいて自動的であってよい。他の例において、ユーザ指定ビデオストリーム（複数も可）の共有は、ユーザによる操作または他の入力に基づいて（たとえば選択などに基づいて）よい。また他の例において、ユーザ指定ビデオストリーム（複数も可）の共有は、ピアネットワーキングセッションに基づいてよく、セッション内で、各ユーザ（またはピアネットワーキングセッションにおいて用いられる各クライアントデバイス）は、ユーザ指定ビデオストリームを受信する。このように、ユーザ生成コンテンツ（たとえばユーザが捕捉したビデオストリームおよび／または画像データ）は、本明細書で説明される方法と同様に捕捉、分析、および／または共有され得る。
【００６８】
[1074]  図４は、実施形態に係る、たとえばユーザに関連するモバイルデバイスにコンテキストビデオストリームを提示する方法を示すフローチャートである。いくつかの例において、ビデオファイル（複数も可）および／またはフォトファイル（複数も可）は、メディアアップローダ４８５にアップロードされ得る。メディアアップローダ４８５は、たとえば図１Ａ、図１Ｂ、および図２に関して上述したホストデバイス１１０など、ビデオおよび／または画像ファイルを受信および／または処理するように構成された任意の適切なデバイスであってよい。その後、マスタビデオおよび／またはフォトファイルは、マスタメディアストレージ４８６に格納される。マスタメディアストレージ４８６は、任意の適切なストレージデバイスであってよい。たとえばマスタメディアストレージ４８６は、メディアアップローダ４８５に含まれるメモリに含まれ、および／またはその一部であってよい。他の実施形態において、マスタメディアストレージ４８６は、たとえば図１Ａおよび図１Ｂに関して上述したデータベース１４０などのデータベースであってよい。
【００６９】
[1075]  いくつかの例において、マスタビデオファイルは、マスタメディアストレージ４８６からビデオエンコーダ４８７へ送信され得る。ビデオエンコーダ４８７は、マスタビデオファイルを１または複数の所望のフォーマットに変換するように構成された任意の適切なデバイスまたはデバイスの一部であってよい。たとえば図４に示すように、ビデオエンコーダ４８７は、マスタビデオファイルを顔認識ビデオおよびモバイル対応ビデオファイルに変換してよく、その各々がマスタメディアストレージ４８６に格納される。１または複数の顔認識ビデオファイルおよび／またはフォトファイルのリストはその後、ワークフローコンダクタ４８８へ送信され、ワークフローコンダクタ４８８は、本明細書で更に詳しく説明するように、続いてファイルが処理される順番を優先順位付け、編成、および／または他の方法で制御し、顔認識ビデオファイル（複数も可）および／またはフォトファイル（複数も可）の処理を開始するために動作可能な信号を、顔検出およびマッチングプロセッサ４９１（たとえば、図２に関して上述した分析モジュール１２１などのプロセッサ、モジュール、デバイスなど）へ送信してよい。また、ワークフローに関連するインジケーションがワークフローコンダクタ４８８からデータベース４９３へ送信されてよく、データベース４９３は、本明細書で更に詳しく説明するように、ワークフローに関連するインジケーションを格納し、インジケーションに関連するデータをウェブサービスプロセッサ４９４（たとえばインターネットウェブサイトサービスプロバイダ、プロセッサ、モジュール、および／またはデバイス）へ送信してよい。
【００７０】
[1076]  図４に示すように、モバイル対応ビデオファイルは、マスタメディアストレージ４８６からビデオクリップカッタ４８９へ送信され、ビデオクリップカッタ４８９は、本明細書で更に詳しく説明するように、認識イベントに関連するデータも受信し得る。マスタビデオファイルまたはフォトファイルは、マスタメディアストレージ４８６からサムネイルリサイザ４９０へ送信され、サムネイルリサイザ４９０は、本明細書で更に詳しく説明するように、認識イベントに関連するデータも受信し得る。顔認識ビデオまたはフォトファイル（複数も可）は、マスタメディアストレージ４８６から顔検出およびマッチングプロセッサ４９１へ送信され、顔検出およびマッチングプロセッサ４９１は、認識イベントを定義するために任意の適切な顔認識プロセスを実行してよい。また、顔検出およびマッチングプロセッサ４９１は、ワークフローコンダクタ４８８によって定義された優先順位および／または順序に従って、顔認識ビデオおよび／またはフォトファイルを分析および／または処理してよい。
【００７１】
[1077]  上述したように、認識イベントに関連するデータは、その後、顔検出およびマッチングプロセッサ４９１からビデオクリップカッタ４８９およびサムネイルリサイザ４９０へ送信され得る。ビデオクリップカッタ４８９は、モバイル対応ビデオファイルを受信し、その後、顔認識ビデオおよび／またはフォト内のユーザの認識イベントに関連するビデオクリップをトリミング、切出し、抽出、分離、および／または他の方法で定義することができる任意の適切なプロセッサ、モジュール、および／またはデバイスであってよい。ユーザの認識イベントに関連するビデオクリップはその後、ビデオクリップカッタ４８９からモバイル対応メディアストレージ４９２へ送信され得る。サムネイルリサイザ４９０は、マスタビデオおよび／またはフォトファイル（複数も可）を受信し、その後、１または複数のサムネイル（たとえば、大きな画像および／またはビデオに関連し、および／またはそれを示し得る、比較的小さなファイルサイズの小さな画像）を定義することができる任意の適切なプロセッサ、モジュール、および／またはデバイスであってよい。この実施形態において、サムネイルは、認識イベントに関連し、および／または認識イベントを示してよく、サムネイルリサイザ４９０からモバイル対応メディアストレージ４９２へ送信され得る。
【００７２】
[1078]  図４に示すように、ビデオクリップおよびサムネイルは、モバイル対応メディアストレージ４９２から、たとえば１または複数のモバイルアプリケーションおよび／またはウェブサイト４９５へ送信され得る。たとえばいくつかの例において、ビデオクリップおよびサムネイルは、ビデオクリップおよびサムネイルをウェブサイトなどに提示することができるインターネットサーバなどへ送信され得る。他の例において、ビデオクリップおよびサムネイルは、（たとえばモバイルアプリケーションが開かれ、選択され、実行中などの場合に）ビデオクリップおよびサムネイルをディスプレイに提示することができる、ユーザに関連するクライアントデバイスへ送信され得る。また、（上述した）ワークフローのインジケーションに関連するメタデータ（たとえば、ユーザアイデンティティ、イベントのアイデンティティ、イベントの場所、クライアントデバイスの場所など）などが、ウェブサービスプロセッサ４９４からモバイルアプリケーションおよび／またはウェブサイト４９５へ送信され得る。このように、ユーザのビデオクリップおよびそれに伴う任意のコンテキストおよび／またはメタデータは、モバイルアプリケーションおよび／またはウェブサイトを介してユーザへ送信および／またはユーザによってアクセスされ得る。
【００７３】
[1079]  図５は、実施形態に係る、メディア内のコンテキスト情報を捕捉する（たとえば図１に示す画像捕捉システム１６０と同様の）画像捕捉システム５６０の図である。最初に、画像捕捉システム５６０は、会場の画像および／またはビデオを捕捉してよい。画像捕捉システム５６０は、たとえば会場の画像および／またはビデオ内の背景ランドマーク、壁、床、設計要素、家具などの独自の特徴といった特徴を識別してよい。画像捕捉システム５６０は、これらの（本明細書においてランドマークデータおよび／または情報とも称される）特徴をホストデバイス５１０へ送信してよく、ホストデバイス５１０は、この情報を（たとえばデータベースに）格納してよい。ホストデバイス５１０は、会場の位置情報に関連してこの情報を格納してよい。言い換えると、ホストデバイス５１０は、ランドマーク情報が会場におけるランドマークの位置と関連付けされるようにランドマーク情報を格納してよい。
【００７４】
[1080]  いくつかの（図１〜図４において説明するような）実装において、画像捕捉システム５６０は、ユーザ５０２を含むメディア（たとえばビデオストリーム、写真、および／または他のメディア）を捕捉してよい。ユーザ５０２は、たとえばモバイルデバイスが会場に関連する信号および／またはＷｉＦｉネットワークを検出すると、位置データ５０６（たとえばグローバルポジショニングシステム（ＧＰＳ）座標、アクセスポイントの範囲内にあることを示すＷｉＦｉ信号、ＮＦＣ信号情報、ｉＢｅａｃｏｎの範囲内にあることを示すＢｌｕｅｔｏｏｔｈ通信、セルラ三角測量情報、コンテンツ捕捉地点からの距離を推定するコグニティブネットワーク切替えおよびプロトコル情報、たとえば座席番号またはセクションなど会場内の位置に関連する位置データ、および／または同様の位置データ）をホストデバイス１１０へ送信するように構成されたモバイルアプリケーションを含むモバイルデバイス５０４を使用してよい。いくつかの実装において、モバイルアプリケーションは、ｉＢｅａｃｏｎ（および／または他のデバイスへ情報を伝送するように構成された同様のデバイス）とインタラクトするように構成され、ホストデバイス１１０へ位置データ（たとえばｉＢｅａｃｏｎ識別子、モバイルデバイスＧＰＳデータ、および／または他のそのような情報など）を送信するように構成され得る。
【００７５】
[1081]  画像捕捉システム１６０によって捕捉されたメディア５０８（たとえば写真、ビデオ、および／または関連メディアファイル）は、ユーザ５０２の画像またはビデオとともに、建物、会場の特徴、物体、背景ランドマーク、および／またはシーンの背景５１０の他の態様を含んでよい。たとえばメディアは、ユーザ５０２だけではなく、スポーツ会場におけるユーザ５０２の隣の座席、メディアの背景にあり（たとえば会場内の）特定の場所に関連するランドマーク、標識、および／または他のそのような情報（たとえば壁、床、設計要素、家具などの独自の特徴）を含んでよい。ホストデバイス１１０は、ユーザ５０２がメディア内に出現する可能性が高いことを更に確認するためにユーザの位置データとともに背景を用いてよい。具体的には、いくつかの例において、ホストデバイス５１０の（たとえば図２に示す分析モジュール１２１と同様の）分析モジュールは、たとえば風景および／または他の（ランドマークデータとも称される）背景の非人物データをビデオストリームから抽出するために、ビデオストリームに画像処理を実行してよい。たとえば分析モジュールは、メディア内の座席番号２００を検出するために画像処理技術を用いてよい。ホストデバイス５１０の（たとえば図２に示す１２４と同様の）位置モジュールは、ビデオストリームの位置を推定するために、抽出されたデータと、（たとえばメタデータ、キーワード、および／または過去に格納された位置画像の画像処理を用いて）データベース内の位置データとをマッチさせ得る。たとえば位置モジュールは、メディア内でユーザ５０２が座って現れる座席５１４を推定するために座席番号２００を用いてよく、会場内の座席の位置に基づいてメディアが捕捉された概略位置を決定してよい。他の例として、位置モジュールは、ビデオストリーム内のランドマークデータと、ホストデバイス５１０によって過去に捕捉された画像および／またはビデオとを比較してよい。ホストデバイス５１０によって格納されたランドマークデータと位置との関連性によって、ホストデバイス５１０は、ビデオストリームの位置を識別し得る。
【００７６】
[1082]  いくつかの例において、ユーザは会場にチェックインすることもできる。具体的には、ユーザのモバイルデバイスは、ユーザに関する位置情報（たとえばユーザのモバイルデバイスのＧＰＳ座標、ｉＢｅａｃｏｎの識別子、ＮＦＣタグ、セルラネットワーク、ＷｉＦｉおよび／または他のネットワーク、および／またはモバイルデバイスに近接している同様のデバイスなど）を含むメッセージを送信してよい。位置モジュールは、ユーザのアカウントデータに位置データを格納してよい。位置モジュールがビデオストリームおよびユーザの位置を決定した後、位置モジュールは、ユーザ５０２が実際に座席２０８に座っていた可能性を決定するために、ユーザのモバイルデバイスによって提供された位置データと座席２０８とを比較してよい。たとえば位置モジュールは、最も新しい位置データがメディアの推定位置と厳密にマッチする（たとえば、最新位置データがメディアの推定位置から所定のメートル数範囲内にあるなどの）ユーザの記録を取得してよい。取得されたユーザ記録ごとに、分析モジュールは、メディア内にユーザが出現するかを決定するために、たとえば比較用のユーザ画像データを用いてメディアに顔認識を実行してよい。この情報に基づいて、ホストデバイスは、特定の位置においてメディア内に自身の画像が捕捉されたユーザのリストを決定し、この低減されたユーザのプールから、メディア内の人物とユーザリスト内のユーザ５０２のいずれかとのポジティブマッチが成立したかを決定してよい。いくつかの例において、その後、低減されたユーザのプール（たとえば、ランドマーク情報および／またはユーザデバイス位置情報に基づく概略エリア内にいると識別されたユーザ）のうちどのユーザがメディア内で識別されるかを識別するために、画像に顔認識が実行され得る。ランドマークデータおよびユーザデバイス位置情報を用いてユーザのプールを低減することによって、顔認識を用いた時のフォールスポジティブの数が低減される。いくつかの実装において、ホストデバイスは、データベース内のビデオストリームを格納および／または破棄（たとえば格納せずおよび／または削除）するか否かを決定するために、顔認識分析および位置データを用いてよい。他の実装において、ホストデバイスは、ビデオストリームが特定のユーザとマッチし得るか否かにかかわらず、ビデオストリームを格納してよい。ホストデバイスはその後、ビデオストリームにおいてユーザが識別され得るか否かを決定するために、ユーザデバイス位置およびユーザに関連する顔認識データが、ランドマークおよび／または他の位置データと併用された場合、ビデオストリームを特定のユーザに関連付けしてよい。
【００７７】
[1083]  図６は、実施形態に係る、メディア内でユーザを識別するためにメディア内のコンテキスト情報および位置データを使用することを示す論理フロー図である。いくつかの実装において、たとえばユーザのモバイルデバイス５０４は、６０２において、（たとえば、位置データおよび／またはｉＢｅａｃｏｎ識別子を（図１に示す）ホストデバイス１１０へ送信することによって）会場および／または他の場所に「チェックイン」してよい。これによって、会場および／またはビデオ認識システムに関連するホストデバイス（たとえば図１のホストデバイス１１０）に、ユーザが会場および／またはイベントにいるというインジケーションが提供され得る。また、これによって、会場および／またはイベントにおけるユーザの位置のインジケーションが提供され得る。いくつかの実装において、モバイルデバイス５０４は、デバイスに格納されたモバイルアプリケーションを介して、ホストデバイス１１０へ更新されたＧＰＳデータを定期的に送信するように構成され、および／または、モバイルデバイス５０４がｉＢｅａｃｏｎ、ＷｉＦｉホットスポット、および／または同様のデバイスの近傍に到来すると、ホストデバイス１１０へ位置データを送信するように促され得る。ホストデバイス１１０は、位置データをデータベース１４０に格納６０４してよい。
【００７８】
[1084]  いくつかの実装において、ユーザのモバイルデバイスがチェックインする代わりに、会場のチケット販売および／またはチケット処理デバイスが、ユーザが会場における特定のイベントのチケットを購入および／または使用したこと、チケットが購入および／または引換えされた時間などを示すメッセージをホストデバイス１０へ送信してよい。他の実装において、ユーザの位置は、たとえば過去に格納されたユーザに関する位置データ、ユーザが特定の会場におけるイベントのために購入したチケットなどに基づいて推測され得る。
【００７９】
[1085]  画像捕捉システム１６０（図１に示す）は、６０６において、（たとえば、映像素材の記録および／または少なくとも１つの写真の捕捉を含むがこれに限定されない）メディアを捕捉してよく、６０８において、（図１に示す）ホストデバイス１１０へメディアを送信してよい。画像捕捉システム１６０は、自身の位置データ（たとえば画像捕捉システム１６０のＧＰＳ座標など）をホストデバイス１１０へ送信することもできる。ホストデバイス１１０は、６１０において、（たとえばメディアの風景および／または背景におけるランドマークデータを用いて）メディア内の位置を識別してよい。たとえばいくつかの実装において、ホストデバイス１１０は、画像認識処理技術を用いて、（たとえば図１に示す分析モジュール１２１を介して）背景における特定の物体（座席、ローカルランドマークなど）を検出し、背景における識別情報（たとえば標識、座席番号、会場特徴など）を検出し、および／または画像捕捉デバイス１６０とユーザ５０２との距離を（たとえば、画像捕捉システムの位置および／またはユーザ５０２の位置に対するメディア内の物体のサイズを用いて距離を推定することによって）推定してよい。ホストデバイス１１０はその後、メディア内に捕捉された場所を識別するために（たとえば位置モジュール１２４を介して）識別情報、物体、および／または距離を用いてよい。たとえば分析モジュール１２１がスポーツ会場における座席番号を検出した場合、位置モジュール１２４は、どのスポーツ会場に画像捕捉システム１６０が位置するかを決定するために画像捕捉システムの位置データを用い、その座席番号を有する座席が会場内のどこにあるかを決定するために会場のマップおよび／または他のデータを取得してよい。他の例として、位置モジュール１２４は、全国的ランドマーク（たとえば有名な像）および／または行政標識を検出し、全国的ランドマークおよび／または行政標識に関する既知の位置データに基づいてユーザのＧＰＳ位置を決定してよい。画像捕捉デバイス１６０が位置データを提供した場合、位置モジュール１２４は、画像捕捉デバイスからの位置データに基づいて、検出された位置を確認してよい。
【００８０】
[1086]  いくつかの実装において、位置モジュール１２４は、ホストデバイス１１０に過去に格納された他のメディアに基づいて位置を決定することもできる。たとえば、画像捕捉システム１６０は、有名な像を含むビデオを記録してよく、位置モジュール１２４は、その像のＧＰＳ座標を決定し、その座標を、たとえばデータベース１４０に格納されたようなビデオデータに関するメタデータとして格納してよい。画像捕捉デバイス１６０が、その像を含むメディアを後に送信した場合、位置モジュール１２４は、本明細書に開示するものと同様の画像処理技術を用いて、過去に記録されたビデオデータを用いて像のアイデンティティを検出し、過去のビデオデータを用いて（たとえばビデオデータとともに格納されたメタデータなどによって）像の位置を決定してよい。他の例として、位置モジュールは、メディア内に捕捉された会場内の場所を識別するために、ランドマークを会場内の場所に関連付けする、会場内のランドマークの過去に捕捉された画像データを用いてよい。
【００８１】
[1087]  位置モジュール１２４はその後、６１２において、ユーザに関するユーザ位置データ（たとえばＧＰＳデータ、ｉＢｅａｃｏｎデータ、チケット購入データなど）を取得してよい。６１６において、各ユーザ６１４についてホストデバイスは、ユーザの位置データを会場および／またはイベントにおける位置にマッピングしてよい。たとえば、ユーザ位置データが、ユーザが特定のスポーツ会場にいることを示した場合、位置モジュール１２４は、たとえば会場のマップおよび／または同様のデータを用いて、ユーザの位置データを会場内の位置にマップしてよい。位置モジュール１２４はその後、会場内のユーザの位置が、メディアにおいて識別された位置モジュール１２４の位置とマッチするか否かを決定６１８してよい。たとえばホストデバイス１１０は、メディア内で検出された座席番号が、ユーザモバイルデバイスのチェックインメッセージにおいて識別されたｉＢｅａｃｏｎに近い座席番号とマッチするか、および／または、座席番号が、ユーザのチケットに関連する座席番号に近接するかを決定してよい。２つの位置がマッチしない場合、位置モジュール１２４は、メディアが記録された場所にユーザがいない可能性が高いことを決定し、次のユーザの位置データを分析６２０してよい。
【００８２】
[1088]  ２つの位置がマッチした場合、（たとえば図２に示す）分析モジュール１２１は、たとえばユーザの過去に格納された画像データおよび画像捕捉システム１６０から受信したメディアを用いて、メディアに顔認識を実行６２２してよい。分析モジュール１２１が、メディア内の人物とユーザとのマッチを検出６２４した場合、ホストデバイスは、（たとえば、メディアが記録された場所、ユーザに関連する識別子、および／または他の情報などのメタデータを含む）メディアを格納６２６してよい。ホストデバイス１１０はその後、ユーザに（たとえばｅメール、テキスト（たとえばショートメッセージサービス（ＳＭＳ）および／またはマルチメディアメッセージングサービス（ＭＭＳ）メッセージ、モバイルデバイスアプリケーション通知などを介して）、画像捕捉システム１６０がユーザを含むメディアを捕捉したことを通知してよい。その後ユーザはメディアにアクセスしてよい。２つの位置がマッチしない場合、分析モジュールは顔認識を実行せず、ユーザとメディアとのマッチングプロセスを終了してよい。
【００８３】
[1089]  いくつかの実装において、位置モジュール１２４は、メディアに顔認識を実行する前に位置分析を実行してよい。他の実装において、ホストデバイス１１０は、メディアに顔認識を実行した後に位置分析を実行してよい。顔認識の前に位置分析を実行することによって、行われる比較の数が低減され（それによって顔認識を実行するために用いられる時間およびリソースの量が低減され）、データベース１４０から取得され処理されるデータの量が低減され得る。これによって、画像の位置と位置がマッチしない個人ではなく、画像の位置とマッチする位置を有する個人に顔認識分析が実行され得るので、顔認識プロセスによって生じるフォールスポジティブの数も低減され得る。
【００８４】
[1090]  いくつかの例において、顔認識信頼性スコアは、メディア内のランドマークデータによって識別される位置情報に基づいて計算され得る。たとえば、メディア内のランドマークが、ビデオが会場の特定の部分のものであることを示し、ユーザのデバイスが、会場のその部分にユーザがいることを示した場合、ユーザがメディア内に存在する信頼性スコアは増加し得る。逆に、メディア内のランドマークが、ビデオが会場の特定の部分のものであることを示し、ユーザのデバイスが、ユーザが会場のその部分にいないことを示した場合、ユーザがメディア内に存在する信頼性スコアは低減し得る。したがって、顔認識が実行される個人の人数を限定することなく、ランドマークデータは、ユーザの信頼性スコアに作用することによってフォールスポジティブを低減させ得る。
【００８５】
[1091]  ユーザデバイスから受信した位置情報および画像および／またはビデオ内のランドマークデータから導出された位置情報は、顔認識と併用されるものとして上述されたが、他の実施形態において、ビデオ内のユーザを識別するために顔認識を用いずに用いられてよい。具体的には、たとえば（たとえば図２に示す）位置モジュールは、ビデオ内の情報を用いて（たとえば、メディアの風景および／または背景における情報を用いて）ビデオの位置を決定してよい。ユーザデバイスが、ユーザが特定の位置にいることを示す場合、ユーザは、ビデオ内に含まれるものとして識別され得る。ビデオはその後、上述したようにユーザへ提供され得る。
【００８６】
[1092]  画像捕捉デバイスから位置情報（たとえば会場内の位置）を受信するものとして説明されたが、他の実施形態において、そのような位置情報は受信されず、画像捕捉デバイスの位置は、メディア内のランドマークデータのみに基づいて（たとえばメディアの風景および／または背景における情報を用いて）識別され得る。そのような実施形態において、ビデオ認識システム（たとえば図１のビデオ認識システム１００）に関連しない画像捕捉デバイス、および／またはビデオ認識システムと通信可能に結合されていない画像捕捉デバイスが、画像および／または背景ビデオを捕捉するために用いられ得る。そのような画像の位置は、画像捕捉デバイスによって提供される（画像自体以外の）位置固有データを用いずに識別され得る。
【００８７】
[1093]  様々な実施形態が上述されたが、これらは限定ではなく例示として提示されたにすぎないことを理解すべきである。たとえば、実施形態および方法は、本明細書において、イベントなどにおけるユーザのコンテキストビデオストリームを定義し、コンテキストビデオストリームをクライアントデバイスへ送信し、および／またはたとえばウェブブラウザおよびインターネットを介してコンテキストビデオストリームへのアクセスを可能にするものとして説明されたが、他の実施形態において、ホストデバイスは、ユーザに関連する任意の数のコンテキストビデオストリームをデータベースに格納してよい。いくつかの例において、ホストデバイスは、ユーザの任意の数のコンテキストビデオストリームを含み得るユーザプロファイルなどを定義するように構成され得る。いくつかの例において、ユーザは、モバイルアプリケーション、コンピュータアプリケーション、ウェブブラウザおよびインターネットなどを介して自身のユーザプロファイルにアクセスしてよい。またいくつかの例において、ユーザは、ユーザの任意の数のコンテキストビデオストリームを異なるユーザと、および／またはソーシャルメディアサイトを介して共有し、または共有することをホストデバイスに要求してよい。いくつかの例において、ユーザは、自身のユーザプロファイルの一部へのアクセスを許可し、そこに含まれるコンテキストビデオストリームを他のユーザが閲覧できるようにしてよい。
【００８８】
[1094]  特定の例が具体的に上述されたが、本明細書で説明される実施形態および方法は、任意の適切な方法で用いられ得る。たとえばシステム１００は、スポーツイベントにおけるユーザのコンテキストビデオストリームを定義するものとして上述されたが、他の実施形態において、本明細書で説明される方法は、たとえば任意の適切な環境、会場、競技場、イベントなどにおいて顔認識およびビデオ分析を用いて個人を識別するために用いられ得る。たとえばいくつかの実施形態において、上述された方法は、コンサート、会合、卒業式、パーティ、ショッピングモール、事業所などでコンテキストビデオストリームを捕捉するために用いられ得る。１つの例において、ホストデバイスは、たとえば卒業式からのコンテキストビデオストリームを受信してよい。いくつかの例において、上述したように、ホストデバイスは、卒業生（および／または任意の個人および／またはユーザ）を識別するために任意の適切な顔認識および／またはビデオ分析を実行してよい。またホストデバイスは、たとえば卒業生に関連するユーザプロファイル、生徒が壇上を横断する順番、卒業生のクライアントデバイスに関連する位置データ、および／または他の任意の適切なデータなどのコンテキスト情報を分析するように構成され得る。このように、ホストデバイスは、（たとえばデータが基準（複数も可）を満たす場合）卒業生のアイデンティティを確認するためにデータを分析し、たとえば卒業生が卒業証書などを受け取るために壇上を横断する際の卒業生のコンテキストビデオストリームを定義してよい。他の例において、ホストデバイスは、卒業生の家族または友人を識別し、彼または彼女のコンテキストビデオストリームを同様に定義してよい。
【００８９】
[1095]  実施形態は、特定のデバイスおよび／またはデバイスの特定の部分において実行されるものとして上述されたが、他の実施形態において、本明細書で説明される実施形態および／または方法のいずれかは、任意の適切なデバイスにおいて実行され得る。たとえば、コンテキストビデオストリームは、顔認識および／または画像分析のためにホストデバイス（たとえばホストデバイス１１０）へ送信されるものとして上述されたが、他の実施形態において、任意の適切な分析がクライアントデバイスにおいて実行され得る。たとえばいくつかの例において、ユーザは、クライアントデバイスのカメラを介してビデオストリーム（たとえばコンテキストビデオストリーム）を捕捉し、それに応答して、クライアントデバイスは、ビデオストリーム内の任意の数の登録ユーザなどを識別するためにビデオを分析してよい。いくつかの例において、分析は、クライアントデバイスに送信および／または格納された（たとえばメモリに格納され、システムアプリケーションに関連する）重畳ニューラルネットを介してよい。いくつかの例において、上述したように、分析は、たとえばユーザの連絡先リスト、友人リスト、確立した接続などに基づいて前処理および／または事前格納され得る。いくつかの例において、クライアントデバイスは、上述したように、識別された任意のユーザへユーザ指定ビデオストリームを送信してよい。他の実施形態において、クライアントデバイスは、分析されたビデオストリームおよび／またはユーザ指定ビデオストリーム（複数も可）をホストデバイス１１０および／またはデータベース１４０にアップロードおよび／または送信してよい。
【００９０】
[1096]  ビデオストリームおよび／または画像データは、「コンテキスト」として上述されたが、ビデオストリームデータおよび／または画像データは「コンテキストデータ」と無関係および／または関連しなくてもよいことを理解すべきである。たとえばいくつかの例において、ユーザは、ビデオストリームおよび／または画像を捕捉し、ビデオストリームおよび／または画像データと関連するコンテキストデータを定義および／または送信することなくビデオストリームおよび／または画像を処理するためにアップロードしてよい。いくつかの例において、ホストデバイスなど（たとえばホストデバイス１１０）は、ユーザ生成ビデオストリームおよび／または画像データを受信し、それに応答して、たとえばコンテキストデータと無関係のユーザ指定ビデオストリームまたはユーザ指定画像を定義するために、１または複数の顔認識プロセスおよび／または他の任意の適切な分析をデータに実行してよい。
【００９１】
[1097]  実施形態は具体的に図示され説明されたが、形式および細部における様々な変更がなされ得ることが理解される。様々な実施形態は、特定の特徴および／または構成要素の組み合わせを有するものとして説明されたが、上述したような実施形態のいずれかにおける任意の特徴および／または構成要素の組み合わせを有する他の実施形態が可能である。
【００９２】
[1098]  上述した方法および／またはイベントが、特定の順序で発生する特定のイベントおよび／または手順を示す場合、特定のイベントおよび／または手順の順序は変更されてよい。また、特定のイベントおよび／または手順は、上述したように連続して実行されるのと同様に、可能であれば並行処理で同時に実行されてよい。顔認識の特定の方法が特定の実施形態に従って上述されたが、いくつかの例において、顔認識の方法のいずれかは、結合され、増強され、改善され、および／または顔認識データのセットに集合的に実行されてよい。たとえばいくつかの例において、顔認識の方法は、固有ベクトル、固有顔、および／または他の２Ｄ分析とともに、たとえば複数の２Ｄ画像の３Ｄ再構成など任意の適切な３Ｄ分析を用いて顔認識データを分析することを含んでよい。いくつかの例において、２Ｄ分析法および３Ｄ分析法の使用は、たとえば、３Ｄ分析のみまたは２Ｄ分析のみによる結果よりもリソース（たとえば処理デバイス）への負荷が少なく、より正確な結果を生じることができる。いくつかの例において、顔認識は、重畳ニューラルネット（ＣＮＮ）を介して、および／または任意の適切な２次元（２Ｄ）および／または３次元（３Ｄ）顔認識分析法とＣＮＮとの組み合わせを介して実行され得る。また、複数の分析法の使用は、たとえば冗長性、誤り検査、負荷分散などのために用いられ得る。いくつかの例において、複数の分析法の使用により、システムは、顔認識データセットに含まれる特定のデータの少なくとも一部に基づいて顔認識データセットを選択的に分析することができる。
【００９３】
[1099]  本明細書で説明されるいくつかの実施形態は、様々なコンピュータ実装動作を実行するための命令またはコンピュータコードを有する（非一時的プロセッサ可読媒体とも称され得る）非一時的コンピュータ可読媒体を備えたコンピュータ記憶製品に関する。コンピュータ可読媒体（またはプロセッサ可読媒体）は、それ自体が一時的伝搬信号（たとえば、スペースまたはケーブルなどの伝送媒体において情報を搬送する伝搬電磁波）を含まないという意味で非一時的である。媒体および（コードとも称され得る）コンピュータコードは、特定の目的または複数の目的のために設計および構成されたものであってよい。非一時的コンピュータ可読媒体の例は、たとえばハードディスク、フロッピーディスク、および磁気テープなどの磁気記憶媒体、たとえばコンパクトディスク／デジタルビデオディスク（ＣＤ／ＤＶＤ）、コンパクトディスク読取専用メモリ（ＣＤ−ＲＯＭ）、およびホログラフィックデバイスなどの光記憶媒体、たとえば光ディスクなどの光磁気記憶媒体、搬送波信号処理モジュール、および、たとえば特定用途向け集積回路（ＡＳＩＣ）、プログラマブル論理デバイス（ＰＬＤ）、読取専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）デバイスなど、プログラムコードを格納および実行するように特別に構成されたハードウェアデバイスを含むがこれに限定されない。本明細書で説明される他の実施形態は、たとえば本明細書に記載される命令および／またはコンピュータコードを含み得るコンピュータプログラム製品に関する。
【００９４】
[1100]  本明細書で説明されるいくつかの実施形態および／または方法は、（ハードウェアにおいて実行される）ソフトウェア、ハードウェア、またはそれらの組み合わせによって実行され得る。ハードウェアモジュールは、たとえば汎用プロセッサ、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、および／または特定用途向け集積回路（ＡＳＩＣ）を含んでよい。（ハードウェアにおいて実行される）ソフトウェアモジュールは、Ｃ、Ｃ＋＋、Ｊａｖａ（登録商標）、Ｒｕｂｙ、Ｖｉｓｕａｌ  Ｂａｓｉｃ（登録商標）、および／または他のオブジェクト指向型、手続き型、または他のプログラミング言語および開発ツールを含む様々なソフトウェア言語（たとえばコンピュータコード）で表現され得る。コンピュータコードの例は、マイクロコードまたはマイクロ命令、たとえばコンパイラによって生成される機械命令、ウェブサービスを生成するために用いられるコード、およびインタープリタを用いてコンピュータによって実行される高次命令を含むファイルを含むが、これに限定されない。たとえば実施形態は、命令型プログラミング言語（たとえばＣ、Ｆｏｒｔｒａｎなど）、関数型プログラミング言語（Ｈａｓｋｅｌｌ、Ｅｒｌａｎｇなど）、論理型プログラミング言語（たとえばＰｒｏｌｏｇ）、オブジェクト指向型プログラミング言語（たとえばＪａｖａ、Ｃ＋＋など）、または他の適切なプログラミング言語および／または開発ツールを用いて実装され得る。コンピュータコードの更なる例は、制御信号、暗号化コード、および圧縮コードを含むが、これに限定されない。
【図１Ａ】
2018536929.tif 000003
【図１Ｂ】
2018536929.tif 000004
【図２】
2018536929.tif 000005
【図３】
2018536929.tif 000006
【図４】
2018536929.tif 000007
【図５】
2018536929.tif 000008
【図６】
2018536929.tif 000009
【国際調査報告】
2018536929.tif 000010