(57)【特許請求の範囲】
【請求項１】
プロセッサにより、１つまたは複数のセンサから新たなビデオを受信するステップと、
前記プロセッサにより、前記新たなビデオに基づいて新たなコンテンツグラフ（ＣＧ）を生成するステップと、
前記プロセッサにより、前記新たなＣＧを複数の先行するＣＧと比較するステップであって、前記複数の先行するＣＧは、複数の以前に受信したビデオから生成される、比較するステップと、
前記プロセッサにより、前記複数の先行するＣＧの中で第１の先行するＣＧの一部分に一致する前記新たなＣＧの第１の部分、および、前記複数の先行するＣＧの中で第２の先行するＣＧの一部分に一致する前記新たなＣＧの第２の部分を識別するステップと、
前記プロセッサにより、前記第１の先行するＣＧの前記一部分と関連する第１の意味注釈（ＳＡ）セット、および、前記第２の先行するＣＧの前記一部分と関連する第２のＳＡセットを分析するステップと、
前記プロセッサにより、前記第１のＳＡセットおよび前記第２のＳＡセットの前記分析に基づいて、前記第１のＳＡセットおよび前記第２のＳＡセットを結合して、前記新たなビデオと時間的に対応する一連のＳＡを生成するステップと、
を含む、方法。
【請求項２】
前記新たなＣＧは、１つまたは複数のエッジを介して相互接続される複数のノードを含む、請求項１に記載の方法。
【請求項３】
前記複数のノードは、前記新たなビデオの中の複数の物体および複数の活動のうちの少なくとも１つを表す、請求項２に記載の方法。
【請求項４】
前記１つまたは複数のエッジは、前記複数のノードの間の空間的関係、時間的関係、および動的な関係のうちの少なくとも１つを表す、請求項２または３に記載の方法。
【請求項５】
前記プロセッサにより、前記第１の先行するＣＧの前記一部分を識別するステップは、前記新たなＣＧの前記第１の部分と前記第１の先行するＣＧの前記一部分との間での複数の一致するノードおよび複数の一致するエッジのうちの少なくとも１つを判定するステップをさらに含む、請求項２から４のいずれかに記載の方法。
【請求項６】
前記第１のＳＡセットおよび前記第２のＳＡセットを分析するステップは、前記第１のＳＡセットおよび前記第２のＳＡセットと関連する統計データを分析するステップをさらに含む、請求項１から５のいずれかに記載の方法。
【請求項７】
前記プロセッサにより、前記一連のＳＡが通知カテゴリを満たすか否かを判定するステップと、
前記プロセッサにより、前記一連のＳＡが前記通知カテゴリを満たすという判定に応答して通知を送るステップと、
をさらに含む、請求項１から６のいずれかに記載の方法。
【請求項８】
前記通知カテゴリは、安全性、盗難、破壊行為、および商機のうちの少なくとも１つを含む、請求項７に記載の方法。
【請求項９】
少なくとも１つのプロセッサと、
メモリに記憶され前記少なくとも１つのプロセッサによって実行可能なグラフモジュールであって、１つまたは複数のセンサから新たなビデオを受信し、前記新たなビデオに基づいて新たなコンテンツグラフ（ＣＧ）を生成するように構成されている、グラフモジュールと、
前記メモリに記憶され前記少なくとも１つのプロセッサによって実行可能な比較モジュールであって、前記新たなＣＧを複数の先行するＣＧと比較し、前記複数の先行するＣＧの中で第１の先行するＣＧの一部分に一致する前記新たなＣＧの第１の部分、および、前記複数の先行するＣＧの中で第２の先行するＣＧの一部分に一致する前記新たなＣＧの第２の部分を識別するために前記グラフモジュールに通信可能に結合されており、前記複数の先行するＣＧは、複数の以前に受信したビデオから生成される、比較モジュールと、
前記メモリに記憶され前記少なくとも１つのプロセッサによって実行可能なナラティブモジュールであって、前記第１の先行するＣＧの前記一部分と関連する第１の意味注釈（ＳＡ）セット、および、前記第２の先行するＣＧの前記一部分と関連する第２のＳＡセットを分析し、前記第１のＳＡセットおよび前記第２のＳＡセットの前記分析に基づいて、前記第１のＳＡセットおよび前記第２のＳＡセットを結合して前記新たなビデオと時間的に対応する一連のＳＡを生成するために前記比較モジュールに通信可能に結合されている、ナラティブモジュールと、
を備える、システム。
【請求項１０】
前記新たなＣＧは、１つまたは複数のエッジを介して相互接続される複数のノードを含む、請求項９に記載のシステム。
【請求項１１】
前記比較モジュールは、前記新たなＣＧの前記第１の部分と前記第１の先行するＣＧの前記一部分との間での複数の一致するノードおよび複数の一致するエッジのうちの少なくとも１つを判定するようにさらに構成されている、請求項１０に記載のシステム。
【請求項１２】
前記ナラティブモジュールは、前記第１のＳＡセットおよび前記第２のＳＡセットと関連する統計データを分析するようにさらに構成されている、請求項９に記載のシステム。
【請求項１３】
前記一連のＳＡが通知カテゴリを満たすか否かを判定し、前記一連のＳＡが前記通知カテゴリを満たすという判定に応答してユーザに通知を送るための通知モジュールをさらに備える、請求項９に記載のシステム。
【請求項１４】
少なくとも１つのプロセッサによる実行に応答して、前記プロセッサに、
１つまたは複数のセンサから新たなビデオを受信するステップと、
前記新たなビデオに基づいて新たなコンテンツグラフ（ＣＧ）を生成するステップと、
前記新たなＣＧを複数の先行するＣＧと比較するステップであって、前記複数の先行するＣＧは、複数の以前に受信したビデオから生成される、比較するステップと、
前記複数の先行するＣＧの中で第１の先行するＣＧの一部分に一致する前記新たなＣＧの第１の部分、および、前記複数の先行するＣＧの中で第２の先行するＣＧの一部分に一致する前記新たなＣＧの第２の部分を識別するステップと、
前記第１の先行するＣＧの前記一部分と関連する第１の意味注釈（ＳＡ）セット、および、前記第２の先行するＣＧの前記一部分と関連する第２のＳＡセットを分析するステップと、
前記第１のＳＡセットおよび前記第２のＳＡセットの前記分析に基づいて、前記第１のＳＡセットおよび前記第２のＳＡセットを結合して、前記新たなビデオと時間的に対応する一連のＳＡを生成するステップと、
を含む動作を行わせる符号化した命令を記録した非一時的なコンピュータ可読媒体。
【請求項１５】
前記新たなＣＧは、１つまたは複数のエッジを介して相互接続される複数のノードを含む、請求項１４に記載のコンピュータ可読媒体。
【請求項１６】
前記複数のノードは、前記新たなビデオの中の複数の物体および複数の活動のうちの少なくとも１つを表す、請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
前記１つまたは複数のエッジは、前記複数のノードの間の空間的関係、時間的関係、および動的な関係のうちの少なくとも１つを表す、請求項１５または１６に記載のコンピュータ可読媒体。
【請求項１８】
前記プロセッサに、前記新たなＣＧの前記第１の部分と前記第１の先行するＣＧの前記一部分との間での複数の一致するノードおよび複数の一致するエッジのうちの少なくとも１つを判定するステップを含む動作をさらに行わせる命令を記録した、請求項１４から１７のいずれかに記載のコンピュータ可読媒体。
【請求項１９】
前記プロセッサに、前記第１のＳＡセットおよび前記第２のＳＡセットと関連する統計データを分析するステップを含む動作をさらに行わせる命令を記録した、請求項１４から１８のいずれかに記載のコンピュータ可読媒体。
【請求項２０】
前記プロセッサに、
前記一連のＳＡが通知カテゴリを満たすか否かを判定するステップと、
前記一連のＳＡが前記通知カテゴリを満たすという判定に応答してユーザに通知を送るステップと、
を含む動作をさらに実行させる命令を記録した、請求項１４から１９のいずれかに記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書において開示される主題は、一般的に、意味注釈を生成することに関する。より詳細には、本主題は、先行するイベントの意味注釈に基づいてイベントナラティブ、すなわち、イベントの一連の意味注釈を生成するためのシステムおよび方法に関する。
【背景技術】
【０００２】
現在のインテリジェントプラットフォームは大量の入力（たとえば、ビデオ入力、オーディオ入力、グラフィック信号など）を受信して、規則ベースのシステム、有限状態機械などを使用して受信した入力から重大なイベントを判定している。たとえば、製造工場は、ライブビデオフィードを受信するビデオ監視システムを含み、受信したビデオフィードから犯罪現場を検出する。そのような例において、ビデオ監視システムは、ライブビデオフィードからメタデータを生成し、メタデータが、たとえば、犯罪を説明する所定の規則を満たすか否かを分析する。
【０００３】
そのようなインテリジェントプラットフォームには多数の問題がある。たとえば、そのようなインテリジェントプラットフォームは、以前に遭遇したことがなく、インテリジェントプラットフォームの管理者によって事前に定義されていないイベントを検出することができない。したがって、生のメタデータの分析の範疇を超えるイベントに対して判断を下すことを可能にする意味注釈を生成するための強化されたシステムおよび方法が必要とされている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】NAJIB BEN AOUN ET AL: "Graph Aggregation Based Image Modeling and Indexing for Video Annotation", 29 August 2011 (2011-08-29), COMPUTER ANALYSIS OF IMAGES AND PATTERNS, SPRINGER BERLIN HEIDELBERG, BERLIN, HEIDELBERG, PAGE(S) 324-331, XP019162243, ISBN: 978-3-642-23677-8 sect.1-5
【発明の概要】
【０００５】
本技法の一態様によれば、方法が開示される。方法は、１つまたは複数のセンサから新たなビデオを受信することと、新たなビデオに基づいて新たなコンテンツグラフ（ＣＧ）を生成することとを含む。方法はまた、新たなＣＧを複数の先行するＣＧと比較することを含み、複数の先行するＣＧは、以前に受信したビデオから生成される。方法は、第１の先行するＣＧの一部分に一致する新たなＣＧの第１の部分、および、第２の先行するＣＧの一部分に一致する新たなＣＧの第２の部分を識別することをさらに含む。方法は、第１の先行するＣＧの上記一部分と関連する第１の意味注釈（ＳＡ）セット、および、第２の先行するＣＧの上記一部分と関連する第２のＳＡセットを分析することをさらに含む。方法は、第１のＳＡセットおよび第２のＳＡセットの分析に基づいて新たなビデオの一連のＳＡを生成することをさらに含む。
【０００６】
本技法の一態様によれば、システムが開示される。システムは、１つまたは複数のセンサから新たなビデオを受信し、新たなビデオに基づいて新たなコンテンツグラフ（ＣＧ）を生成するためのグラフモジュールを含む。システムはまた、新たなＣＧを複数の先行するＣＧと比較し、第１の先行するＣＧの一部分に一致する新たなＣＧの第１の部分、および、第２の先行するＣＧの一部分に一致する新たなＣＧの第２の部分を識別するための比較モジュールをも含み、複数の先行するＣＧは、以前に受信したビデオから生成される。システムは、第１の先行するＣＧの上記一部分と関連する第１の意味注釈（ＳＡ）セット、および、第２の先行するＣＧの上記一部分と関連する第２のＳＡセットを分析し、第１のＳＡセットおよび第２のＳＡセットの分析に基づいて新たなビデオの一連のＳＡを生成するためのナラティブモジュールをさらに含む。
【０００７】
本技法の一態様によれば、命令を符号化するコンピュータプログラム製品が開示される。命令はプロセッサによって実行されると、プロセッサに、１つまたは複数のセンサから新たなビデオを受信することと、新たなビデオに基づいて新たなコンテンツグラフ（ＣＧ）を生成することとを行わせ、複数の先行するＣＧは、以前に受信したビデオから生成される。命令はさらに、プロセッサに、新たなＣＧを複数の先行するＣＧと比較させ、複数の先行するＣＧは、以前に受信したビデオから生成される。命令はさらに、プロセッサに、第１の先行するＣＧの一部分に一致する新たなＣＧの第１の部分、および、第２の先行するＣＧの一部分に一致する新たなＣＧの第２の部分を識別させる。命令はさらに、プロセッサに、第１の先行するＣＧの上記一部分と関連する第１の意味注釈（ＳＡ）セット、および、第２の先行するＣＧの上記一部分と関連する第２のＳＡセットを分析させる。命令はさらに、プロセッサに、第１のＳＡセットおよび第２のＳＡセットの分析に基づいて新たなビデオの一連のＳＡを生成させる。
【０００８】
本発明のこれらのおよび他の特徴、態様、および利点は、添付の図面を参照して以下の詳細な説明を読むとよりよく理解されることになる。図面において、同様の符号は図面全体を通じて同様の部分を表す。
【図面の簡単な説明】
【０００９】
【図１】一実施形態による意味注釈を生成するためのシステムを示すブロック図である。
【図２】一実施形態によるセマンティクスエンジンを示すブロック図である。
【図３】一実施形態による意味注釈を生成するための方法を示す、グラフィック表現の図である。
【図４】一実施形態による意味注釈を生成するための方法を示す流れ図である。
【発明を実施するための形態】
【００１０】
以下の明細書および特許請求の範囲においていくつかの用語を参照することになるが、これらは以下の意味を有するように定義されるものとする。
【００１１】
単数形「１つの」（“ａ”，“ａｎ”）および「その」（“ｔｈｅ”）は、別途文脈が明確に指示していない限り、複数の指示対象を含む。
【００１２】
本明細書において使用される場合、「非一時的なコンピュータ可読媒体」（“ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ−ｒｅａｄａｂｌｅ  ｍｅｄｉａ”）という用語は、コンピュータ可読命令、データ構造体、プログラムモジュールおよびサブモジュール、または他のデータのような情報を任意のデバイスに短期記憶および長期記憶するための任意の方法または技術において実装される、任意の有形のコンピュータベースのデバイスを表すように意図されている。それゆえ、本明細書に記載されている方法は、限定ではなく、記憶デバイスおよび／またはメモリデバイスを含む有形非一時的なコンピュータ可読媒体に具現化される実行可能命令として符号化されてもよい。そのような命令は、プロセッサによって実行されると、プロセッサに、本明細書に記載されている方法の少なくとも一部分を実行させる。さらに、本明細書において使用される場合、「非一時的なコンピュータ可読媒体」という用語は、限定ではなく、ファームウェア、物理および仮想ストレージ、ＣＤ−ＲＯＭ、ＤＶＤのような揮発性および不揮発性媒体、ならびに取り外し可能および取り外し不能媒体を限定ではなく含む非一時的なコンピュータ記憶デバイスを含むすべての有形コンピュータ可読媒体、ならびに、ネットワークまたはインターネットのような任意の他のデジタルソース、ならびにまだ開発されていないデジタル手段を含み、唯一の例外は一時的な伝播信号である。
【００１３】
本明細書において使用される場合、「ソフトウェア」（“ｓｏｆｔｗａｒｅ”）および「ファームウェア」（“ｆｉｒｍｗａｒｅ”）という用語は交換可能であり、限定ではなく、モバイルデバイス、クラスタ、パーソナルコンピュータ、ワークステーション、クライアント、およびサーバを含むデバイスによって実行するためにメモリ内に記憶されている任意のコンピュータプログラムを含む。
【００１４】
本明細書において使用される場合、「コンピュータ」（“ｃｏｍｐｕｔｅｒ”）という用語およびその関連用語、たとえば、「コンピューティングデバイス」（“ｃｏｍｐｕｔｉｎｇ  ｄｅｖｉｃｅ”）は、当該技術分野においてコンピュータと称される集積回路に限定されず、広く、少なくとも１つのマイクロコントローラ、マイクロコンピュータ、プログラマブル論理制御装置（ＰＬＣ）、特定用途向け集積回路、および他のプログラム可能回路を指し、これらの用語は本明細書において交換可能に使用されている。
【００１５】
明細書および特許請求の範囲全体を通じて本明細書において使用されているような近似を表す文言を適用して、結果として関連する基本機能を変化させることなく許容範囲で変化し得る任意の定量的表現を変更してもよい。したがって、「約」（“ａｂｏｕｔ”）および「実質的に」（“ｓｕｂｓｔａｎｔｉａｌｌｙ”）のような１つまたは複数の用語によって変更された値は、指定される厳密な値に限定されるべきではない。少なくともいくつかの事例において、近似を表す文言は、その値を測定するための器具の精度に対応してもよい。ここで、および、本明細書および特許請求の範囲全体を通じて、範囲の限定は組み合わせおよび／または交換されてもよく、文脈または文言が別途指示しない限り、そのような範囲は特定され、その中に含まれるすべての部分範囲を含む。
【００１６】
意味注釈を生成するためのシステムおよび方法が本明細書において説明される。図１は、一実施形態による意味注釈を生成するためのシステム１００を示すブロック図を示す。示されているシステム１００は、１つまたは複数のセンサ１２０と、ネットワーク１７０を介して通信可能に結合されているセマンティクスエンジン１３０とを含む。
【００１７】
センサ１２０は、物理量または特性、たとえば、圧力、光、音声、温度、動きなどを測定するように構成されている任意のタイプのデバイスである。センサ１２０は、画像センサ、音響センサ、近接センサ、バイオセンサ、メカニカルセンサ、ジャイロスコープセンサ、熱センサ、圧力センサなどを含んでもよく、入力データを生成することができる。一実施形態において、センサ１２０は、商用サイト、たとえば、ガソリンスタンド、コンビニエンスストア、病院などに設置される。そのような実施形態において、センサ１２０は、商用サイトにおいて発生するイベントと関連する入力データを生成するように構成される。
【００１８】
一例において、センサ１２０は、ガソリンスタンドに入ってくる車の画像をキャプチャし、および／またはそのビデオを記録するための画像センサ（たとえば、ビデオカメラ、閉回路テレビカメラなど）を含む。さらなる一例において、センサ１２０は、給油装置が取り外されており、かつガソリンが送り出されているか否かを判定するためのメカニカルセンサを含む。別の例において、センサ１２０は、顧客の発話を記録するための録音機を含む。別の例において、センサ１２０は、顧客がガソリンの代金を支払ったか否かを判定するための販売時点センサを含む。一実施形態において、センサ１２０は、生成した入力データを、ネットワーク１７０を介してセマンティクスエンジン１３０に送るようにさらに構成されている。センサ１２０は、信号線１２５を介してネットワーク１７０に通信可能に結合されている。信号線１２５は、例示を目的として与えられており、１つまたは複数のセンサ１２０が、有線手段によって、または、ネットワーク１７０を介して無線手段によって通信することを表す。一例において、センサ１２０は、センサおよびイメージングデータを送信するための送信機能を有する。別の例において、センサ１２０は、センサデータの送信を促進する通信デバイス（図示せず）に結合される。示されている実施形態には、複数のセンサ１２０が図示されているが、他の実施形態では、単一のセンサ１２０がネットワーク１７０に結合されてもよい。
【００１９】
セマンティクスエンジン１３０は、入力データ、すなわち、センサ１２０からのセンサデータを受信し、受信した入力データの意味注釈を生成するための任意のタイプのデバイスである。セマンティクスエンジン１３０は、以前に受信した入力データと関連する意味的関連性に基づいて受信した入力データの一連の意味注釈を生成する。示されているシステム１００において、セマンティクスエンジン１３０は、セマンティクスアプリケーション１４０を含む。セマンティクスエンジン１３０は、信号線１３５を介してネットワーク１７０に通信可能に結合されている。示されている実施形態には、セマンティクスエンジン１３０が１つ図示されているが、他の実施形態では、複数のセマンティクスエンジン１３０がネットワーク１７０に結合されてもよい。セマンティクスアプリケーション１４０および意味注釈については、下記において図２を参照してより詳細に説明される。
【００２０】
ネットワーク１７０は、有線通信タイプであってもよく、または無線通信タイプであってもよく、星形構成、トークンリング構成、または他の既知の構成のような任意の数の構成を有してもよい。さらに、ネットワーク１７０は、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）（たとえば、インターネット）、および／または、複数のデバイスが通信することができる任意の他の相互接続データ経路を含んでもよい。一実施形態では、ネットワーク１７０は、ピアツーピアネットワークであってもよい。ネットワーク１７０はまた、様々な異なる通信プロトコルにおいてデータを送信するための遠隔通信ネットワークの部分に結合されてもよく、またはその部分を含んでもよい。別の実施形態において、ネットワーク１７０は、ショートメッセージサービス（ＳＭＳ）、マルチメディアメッセージングサービス（ＭＭＳ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、直接データ接続、ＷＡＰ、電子メールなどを介するなどして、データを送信および受信するためのＢｌｕｅｔｏｏｔｈ（登録商標）通信ネットワークまたはセルラ通信ネットワークを含む。１つだけのネットワーク１７０が複数のセンサ１２０およびセマンティクスエンジン１３０に結合されているが、他のタイプのネットワーク１７０が構成要素に結合されてもよい。複数のネットワークが冗長性をもたらすことができ、設計基準に従って最適に構成することができる。
【００２１】
図２は、一実施形態によるセマンティクスエンジン１３０を示すブロック図である。セマンティクスエンジン１３０は、セマンティクスアプリケーション１４０と、プロセッサ２３５と、メモリ２３７とを含む。セマンティクスアプリケーション１４０は、通信モジュール２０２と、グラフモジュール２０４と、比較モジュール２０６と、ナラティブモジュール２０８と、通知モジュール２１０とを含む。セマンティクスアプリケーション１４０のモジュール、プロセッサ２３５、およびメモリ２３７は、互いとの通信のためにバス２２０に結合されている。
【００２２】
プロセッサ２３５は、計算を実行し、および／またはメモリ２３７に記憶されているデータを取り出すための、少なくとも１つの算術論理演算ユニット、マイクロプロセッサ、汎用コントローラまたは他のプロセッサアレイを含んでもよい。別の実施形態において、プロセッサ２３５はマルチコアプロセッサである。プロセッサ２３５は、データ信号を処理し、複合命令セットコンピュータ（ＣＩＳＣ）アーキテクチャ、縮小命令セットコンピュータ（ＲＩＳＣ）アーキテクチャ、または、命令セットの組合せを実装するアーキテクチャを含む様々なコンピューティングアーキテクチャを含んでもよい。一例におけるプロセッサ２３５の処理能力は、データの取り出しおよびデータの送信のサポートに限定され得る。別の例におけるプロセッサ２３５の処理能力はまた、様々なタイプの特徴抽出、変調、符号化、多重化などを含む、より複雑なタスクも実行することができる。他の実施形態においては、他のタイプのプロセッサ、オペレーティングシステム、および物理構成も構想される。
【００２３】
メモリ２３７は、非一時的な記憶媒体であってもよい。たとえば、メモリ２３７は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）デバイス、スタティックランダムアクセスメモリ（ＳＲＡＭ）デバイス、フラッシュメモリまたは他のメモリデバイスであってもよい。一実施形態において、メモリ２３７はまた、不揮発性メモリまたは同様の永続的記憶デバイス、および、ハードディスクドライブ、フロッピー（登録商標）ディスクドライブ、コンパクトディスク読み出し専用メモリ（ＣＤ−ＲＯＭ）デバイス、デジタル多用途ディスク読み出し専用メモリ（ＤＶＤ−ＲＯＭ）デバイス、デジタル多用途ディスクランダムアクセスメモリ（ＤＶＤ−ＲＡＭ）デバイス、デジタル多用途ディスク書き換え可能（ＤＶＤ−ＲＷ）デバイス、フラッシュメモリデバイス、または他の不揮発性記憶デバイスのような媒体をも含む。
【００２４】
メモリ２３７は、セマンティクスアプリケーション１４０に対して関連機能を実行するために必要とされるデータを記憶する。一実施形態において、メモリ２３７は、セマンティクスアプリケーション１４０のモジュール（たとえば、通信モジュール２０２、ナラティブモジュール２０８など）を記憶する。別の実施形態において、メモリ２３７は、たとえば、セマンティクスエンジン１３０の管理者によって定義される通知カテゴリを記憶する。通知カテゴリについては、通知モジュール２１０に関連して下記にさらに詳細に説明される。
【００２５】
また別の実施形態において、メモリ２３７は、複数の先行するコンテンツグラフと、複数の先行するコンテンツグラフと関連する意味注釈とを含む経験または履歴データを記憶する。コンテンツグラフ（ＣＧ）は、１つまたは複数のエッジを介して相互接続される複数のノードを含む入力データの表現である。ノードは、入力データから判定される物体（たとえば、人、車など）および／または活動（たとえば、人が喫煙している、燃料がノズルから供給されている、など）を表す。エッジは、物体および／または活動の間の関係を表す。先行するＣＧは、履歴データ、すなわち、センサによって以前生成された入力データに基づいて生成される。
【００２６】
たとえば、先行するＣＧは、商用サイトに設置された閉回路テレビカメラから過去５年間に受信されたビデオを表す。ＣＧの生成については、グラフモジュール２０４に関連して下記にさらに詳細に説明される。意味注釈（ＳＡ）は、入力データの機械可読記述（すなわち、コンピューティングデバイス、たとえば、セマンティクスエンジン１３０によって理解可能）をもたらす任意のタイプの情報である。一例において、ＳＡは、領域特定オントロジに基づく「述語」を含む。たとえば、入力データとして受信されたビデオが人（Ｂ）の付近にある車（Ａ）を表示する場合、述語は、車（Ａ）、人（Ｂ）、出ている（ｅｘｉｔｅｄ）（Ｂ，Ａ）として定義される。複数の先行するＣＧと関連するＳＡは、たとえば、セマンティクスエンジン１３０の管理者によって定義されてメモリ２３７内でインデックス付けされる。本明細書において使用される場合、ビデオとは、特定の活動またはイベントの１つまたは複数の画像フレームを指す。
【００２７】
通信モジュール２０２は、センサ、ネットワーク、およびセマンティクスエンジン１３０の他のモジュールの間の通信を処理するためのコードおよびルーチンを含む。一実施形態において、通信モジュール２０２は、センサ、ネットワーク、およびセマンティクスエンジン１３０の他のモジュールの間の通信を処理するための機能を提供するための、プロセッサ２３５によって実行可能な命令のセットを含む。別の実施形態において、通信モジュール２０２はメモリ２３７に記憶され、プロセッサ２３５によってアクセス可能かつ実行可能である。いずれの実施形態においても、通信モジュール２０２は、バス２２０を介してプロセッサ２３５およびセマンティクスアプリケーション１４０の他のモジュールと通信および協働するように適合されている。
【００２８】
一実施形態において、通信モジュール２０２は、センサから入力データを受信して、入力データをグラフモジュール２０４に送る。別の実施形態において、通信モジュール２０２は、通知モジュール２１０から通知を受信する。そのような実施形態において、通信モジュール２０２は、たとえば、セマンティクスエンジン１３０の管理者に通知を送る。
【００２９】
グラフモジュール２０４は、ＣＧを生成するためのコードおよびルーチンを含む。一実施形態において、グラフモジュール２０４は、ＣＧを生成するための機能を提供するための、プロセッサ２３５によって実行可能な命令のセットを含む。別の実施形態において、グラフモジュール２０４はメモリ２３７に記憶され、プロセッサ２３５によってアクセス可能かつ実行可能である。いずれの実施形態においても、グラフモジュール２０４は、バス２２０を介してプロセッサ２３５およびセマンティクスアプリケーション１４０の他のモジュールと通信および協働するように適合されている。
【００３０】
グラフモジュール２０４は、通信モジュール２０２を介して複数のセンサから入力データを受信し、受信した入力データを表すＣＧを生成する。一実施形態において、グラフモジュール２０４は、ガソリンスタンドに設置されたカメラから「新たなビデオ」を入力データとして受信する。そのような実施形態において、グラフモジュール２０４は、物体（たとえば、車、人など）、活動（たとえば、人が喫煙している、車が燃料ポンプから走り去っていく、など）、ならびに物体および／または活動の間の関係を判定する。関係は、空間的関係（たとえば、車と燃料ポンプとの間の距離）、時間的関係（たとえば、車が燃料ポンプ付近に停まった時刻）、および、動的な関係（たとえば、車が燃料ポンプに接近した速度）を含んでもよい。グラフモジュール２０４は、コンピュータビジョンアルゴリズム、たとえば、視覚的刺激分析、物体追跡などを使用した物体検出を使用してビデオを処理することによって、物体／活動および関係を判定する。グラフモジュール２０４は、新たなビデオの中の物体／活動および関係を、それぞれノードおよびエッジとして表す「新たなＣＧ」を生成する。グラフモジュール２０４はその後、新たなＣＧを比較モジュール２０６に送信する。
【００３１】
比較モジュール２０６は、新たなＣＧを複数の先行するＣＧと比較するためのコードおよびルーチンを含む。一実施形態において、比較モジュール２０６は、新たなＣＧを複数の先行するＣＧと比較するための機能を提供するための、プロセッサ２３５によって実行可能な命令のセットを含む。別の実施形態において、比較モジュール２０６はメモリ２３７に記憶され、プロセッサ２３５によってアクセス可能かつ実行可能である。いずれの実施形態においても、比較モジュール２０６は、バス２２０を介してプロセッサ２３５およびセマンティクスアプリケーション１４０の他のモジュールと通信および協働するように適合されている。
【００３２】
一例において、比較モジュール２０６は、グラフモジュール２０４から新たなＣＧを受信し、メモリ２３７から経験データ（すなわち、先行するＣＧ、および、先行するＣＧの各々と関連するＳＡ）を取り出す。比較モジュール２０６は、新たなＣＧを先行するＣＧと比較して、新たなＣＧの部分に一致する先行するＣＧの部分を識別する。一実施形態において、比較モジュール２０６は、部分グラフ同型法に基づいて新たなＣＧと先行するＣＧとの間で一致する部分を識別する。そのような実施形態において、比較モジュール２０６は、新たなＣＧと先行するＣＧの各々とのノードおよびエッジの間のマッピングを生成する。たとえば、比較モジュール２０６は、新たなＣＧの中の車を表すノードが、先行するＣＧの中の車を表すノードと一致すると判定する。さらなる一実施形態において、比較モジュール２０６はまた、新たなＣＧと先行するＣＧとの間で類似的に一致する部分も識別する。たとえば、比較モジュール２０６は、新たなＣＧの中の犬を散歩させている人を表すノードが、先行するＣＧの中の猫を散歩させている人を表すノードと類似的に一致すると判定する。別の例において、比較モジュール２０６は、新たなＣＧの中のオートバイを表すノードが、先行するＣＧの中の全地形対応車を表すノードと類似的に一致すると判定する。新たなＣＧの部分と一致する、先行するＣＧの部分が識別されると、比較モジュール２０６は、先行するＣＧの一致する部分と関連する１つまたは複数のＳＡを、新たなＣＧに対する可能性のあるＳＡとして指定する。一致する先行するＣＧの識別および関連するＳＡの指定については、下記において図３を参照してより詳細に説明される。ナラティブモジュール２０８および通知モジュール２１０についてはさらに、下記において詳細に説明される。
【００３３】
図３は、一実施形態によるＳＡを生成するための方法を示す、グラフィック表現３００である。示されている実施形態において、比較モジュールは、グラフモジュールから新たなＣＧ３０２を受信する。比較モジュールは、メモリから、先行するＣＧ３１０および関連するＳＡ３２０を含む経験データを取り出す。比較モジュールはその後、新たなＣＧ３０２と先行するＣＧ３１０の各々との間のマッピングを生成する。示されている実施形態において、比較モジュールは、新たなＣＧ３０２の第１の部分３０４と一致する第１の先行するＣＧ３１３の一部分３１４を識別する。比較モジュールはまた、新たなＣＧ３０２の第２の部分３０６と一致する第２の先行するＣＧ３１５の一部分３１６も判定する。示されている実施形態において、比較モジュールはそれぞれ先行するＣＧ３１３、３１５から一致する部分３１４、３１６を判定するが、他の実施形態においては、比較モジュールは、任意の数の先行するＣＧから任意の数の一致する部分を判定してもよい。比較モジュールはさらに、判定した一致の強度を示す強度データを判定する。強度データは、新たなＣＧの部分と、先行するＣＧの対応する一致部分との間の、一致するノードの数および一致するエッジの数を含む。示されている実施形態において、比較モジュールは、新たなＣＧ３０２の第１の部分３０４と、第１の先行するＣＧ３１３の一致する部分３１４との間に、３つの一致するノードおよび２つの一致するエッジがあると判定する。比較モジュールはその後、それぞれ一致する部分３１４および３１６と関連する第１のＳＡセット３２４および第２のＳＡセット３２６を、新たなＣＧ３０２に対する可能性のあるＳＡとして指定する。
【００３４】
図２に戻って参照して、比較モジュール２０６は、指定ＳＡをナラティブモジュール２０８に送る。一実施形態において、比較モジュール２０６はまた、指定ＳＡと関連する強度データも、ナラティブモジュール２０８に送信する。
【００３５】
ナラティブモジュール２０８は、指定ＳＡを分析してイベントナラティブを生成するためのコードおよびルーチンを含む。一実施形態において、ナラティブモジュール２０８は、指定ＳＡを分析してイベントナラティブ３３０を生成するための機能を提供するための、プロセッサ２３５によって実行可能な命令のセットを含む。別の実施形態において、ナラティブモジュール２０８はメモリ２３７に記憶され、プロセッサ２３５によってアクセス可能かつ実行可能である。いずれの実施形態においても、ナラティブモジュール２０８は、バス２２０を介してプロセッサ２３５およびセマンティクスアプリケーション１４０の他のモジュールと通信および協働するように適合されている。
【００３６】
一実施形態において、ナラティブモジュール２０８は、指定ＳＡを分析し、イベントナラティブ３３０（図３に示す）、すなわち、新たなビデオを説明する一連のＳＡを生成する。ナラティブモジュール２０８は、新たなＣＧの各部分に対する指定ＳＡからＳＡを選択することによってイベントナラティブ３３０を生成する。ナラティブモジュール２０８はその後、選択したＳＡを組み合わせて、新たなビデオと時間的に対応する一連のＳＡを生成する。
【００３７】
一実施形態において、ナラティブモジュール２０８は、指定ＳＡに対応する強度データを分析することによって、新たなＣＧの一部分に対するＳＡを選択する。一例において、新たなＣＧの一部分について、ナラティブモジュール２０８は、２つの異なる先行するＣＧの一致する部分と関連する２セットの指定ＳＡを受信する。第１の先行するＣＧの一致する部分に対応する強度データが、３つの一致するノードおよび２つの一致するエッジがあることを示す。第２の先行するＣＧの一致する部分に対応する強度データが、３つの一致するノードおよび４つの一致するエッジがあることを示す。そのような例において、ナラティブモジュール２０８は、第２の先行するＣＧの一致する部分と関連するＳＡのセットを選択する。
【００３８】
別の実施形態において、ナラティブモジュール２０８は、指定ＳＡと関連する統計データを分析することによって、新たなＣＧの一部分に対するＳＡを選択する。一例において、新たなＣＧの一部分について、ナラティブモジュール２０８は、２つの異なる先行するＣＧの一致する部分に対応する２セットの指定ＳＡを受信する。統計データは、経験データの中の第１のＳＡセットの出現が、第２のＳＡセットの出現よりも多いことを示す。そのような例において、ナラティブモジュール２０８は、新たなＣＧの部分に対する第１のＳＡセットを選択することによってイベントナラティブを生成する。
【００３９】
一実施形態において、ナラティブモジュール２０８は、指定ＳＡの選択および組合せが、１つまたは複数の論理制約を満たすか否かを分析する。たとえば、セマンティクスエンジン１３０の管理者によって、１つまたは複数の論理制約が定義される。一例において、ナラティブモジュール２０８は、新たなＣＧに対する３つの指定ＳＡを受信する。第１の指定ＳＡは、人（Ａ）、車（Ｂ）、燃料を補給する（Ｂ，Ａ）である。第２の指定ＳＡは、人（Ａ）、二輪車（Ｃ）、乗る（Ｃ，Ａ）である。第３の指定ＳＡは、人（Ａ）、車（Ｂ）、入る（Ｂ，Ａ）である。この例において、ナラティブモジュール２０８は、第１の指定ＳＡおよび第３の指定ＳＡを選択し組み合わせることによって、新たなＣＧのイベントナラティブを生成する。これは、この組合せが、人がガソリンスタンドにおいて車に燃料を補給した後、人が運転するために車に入るという論理制約を満たすためである。
【００４０】
新たなＣＧのイベントナラティブが生成されると、ナラティブモジュール２０８はイベントナラティブを通知モジュール２１０に送信する。一実施形態において、ナラティブモジュール２０８はさらに、メモリ２３７内の経験データを用いてイベントナラティブおよび新たなＣＧをインデックス付けする。そのようなインデックス付けは、将来において受信される入力データについてのＳＡの指定およびイベントナラティブの生成を改善することになるため、有利である。
【００４１】
通知モジュール２１０は、通知を生成し、たとえば、セマンティクスエンジン１３０の管理者に通知を送るためのコードおよびルーチンを含む。一実施形態において、通知モジュール２１０は、通知を生成し、たとえば、セマンティクスエンジン１３０の管理者に通知を送るための、プロセッサ２３５によって実行可能な命令のセットを含む。別の実施形態において、通知モジュール２１０はメモリ２３７に記憶され、プロセッサ２３５によってアクセス可能かつ実行可能である。いずれの実施形態においても、通知モジュール２１０は、バス２２０を介してプロセッサ２３５およびセマンティクスアプリケーション１４０の他のモジュールと通信および協働するように適合されている。
【００４２】
一実施形態において、通知モジュール２１０は、ナラティブモジュール２０８から新たなビデオのイベントナラティブを受信する。通知モジュール２１０は、イベントナラティブが、たとえば、セマンティクスエンジン１３０の管理者によって定義される１つまたは複数の通知カテゴリを満たすか否かを判定する。通知カテゴリは、たとえば、安全性、盗難、破壊行為、商機などを含む。受信したイベントナラティブが１つまたは複数の通知カテゴリを満たす場合、通知モジュール２１０は、たとえば、セマンティクスエンジンの管理者に通知を送る。通知は、たとえば、電子メール、警報、音声メッセージ、ショートメッセージサービス（ＳＭＳ）などを含む。
【００４３】
一例において、通知モジュール２１０は、スーパーマーケット内に立っている顧客が困惑しているように見えることを示すイベントナラティブを受信する。そのような例において、通知モジュール２１０は、イベントナラティブが商機カテゴリを満たすと判定し、スーパーマーケットの販売員に通知を送る。別の例において、通知モジュール２１０は、給油ポンプ付近で人が携帯電話で話していることを示すイベントナラティブを受信する。そのような例において、通知モジュール２１０は、イベントナラティブが安全性カテゴリを満たすと判定し、ガソリンスタンド内に警報を発する。
【００４４】
図４は、イベントナラティブを生成するための例示的な方法を示す流れ図４００である。通信モジュールが、１つまたは複数のセンサから新たなビデオを受信する。たとえば、通信モジュールは、ガソリンスタンド内で運転者の財布を盗む意図をもって運転者に接近している犯罪者を表示しているビデオを受信する４０２。グラフモジュールが、新たなビデオに基づいて新たなＣＧを生成する４０４。比較モジュールが、新たなＣＧを、複数の先行するＣＧと比較する４０６。比較モジュールは、メモリに記憶されている経験データから、複数の先行するＣＧを取り出す。たとえば、取り出された経験データは、２つの先行するＣＧと、２つの先行するＣＧと関連するＳＡとを含む。この例において、第１の先行するＣＧと関連するＳＡは、
１ａ）運転者がガソリンを供給し始める
１ｂ）人が運転者に接近している
１ｃ）人が運転者に道を尋ねる
１ｄ）人が去る
１ｅ）運転者が供給過程を終える
を含む。
【００４５】
第２の先行するＣＧと関連するＳＡは、
２ａ）運転者がガソリンを供給し始める
２ｂ）車に火がつく
２ｃ）運転者が危険な状況から逃げ出す
を含む。
【００４６】
上記の例において、単純にするために、ＳＡは、述語の代わりに自然言語記述子を使用して説明されている。比較モジュールは、第１の先行するＣＧの一部分に一致する新たなＣＧの第１の部分を識別する４０８。比較モジュールはまた、第２の先行するＣＧの一部分に一致する新たなＣＧの第２の部分も識別する４１０。ナラティブモジュールが、第１の先行するＣＧの上記一部分と関連する第１のＳＡセット、および、第２の先行するＣＧの上記一部分と関連する第２のＳＡセットを分析する４１２。ナラティブモジュールはその後、第１のＳＡセットおよび第２のＳＡセットの分析に基づいて新たなビデオの一連のＳＡ（すなわちイベントナラティブ）を生成する４１４。上記の例において、新たなビデオが犯罪者から逃げている運転者を表示する場合、比較モジュールが１ａ、１ｂ、２ａ、および２ｃを可能性のあるＳＡとして指定する。ナラティブモジュールが、指定ＳＡと関連する強度データを分析し、
１ａ、２ａ）運転者がガソリンを供給し始める
１ｂ）人が運転者に接近している
２ｃ）運転者が危険な状況から逃げ出す
を含むイベントナラティブを生成する。
【００４７】
通知モジュールが、この一連のＳＡが１つまたは複数の通知カテゴリを満たすか否かを判定する４１６。通知モジュールはその後、この一連のＳＡが通知カテゴリを満たすという判定に応答して、ユーザ（たとえば、セマンティクスエンジンの管理者）に通知を送信する４１８。上記の例において、通知モジュールは、この一連のＳＡが安全性カテゴリを満たすと判定し、通知を送る。セマンティクスエンジンは、たとえ新たなビデオを受信する前に事前に定義されていなかったとしても、新たなビデオに対する一連のＳＡを生成し、重大なイベント（すなわち、危険な人／犯罪者がガソリンスタンド内に存在する）を判定するため、これは上述のインテリジェントプラットフォームと比較して有利である。
【００４８】
ＣＧおよびイベントナラティブは、一実施形態に従ってビデオ入力データに関連して上述されたが、他の実施形態では、ＣＧおよびイベントナラティブは、音響入力、機械的入力、販売時点入力などに基づいて生成されてもよい。たとえば、グラフモジュールは、音声認識アルゴリズムを使用して新たな音響入力データを表す新たなＣＧを生成する。比較モジュールは、新たなコンテンツグラフに基づいてＳＡを指定する。その後、ナラティブモジュールが、新たな音響入力に基づいてイベントナラティブを生成する。
【００４９】
図４に関連して説明された犯罪者の検出と同様に、セマンティクスエンジンによって検出することができる重大なイベントのさらなる例について、下記において説明される。
【００５０】
静電放電：燃料補給所内の顧客が、自身の車両への給油を開始する。寒さから逃れるために、顧客は自身の車の中に戻る。顧客はその後、車を出て、その後、ガソリンノズルに手を伸ばす。しかしながら、車内にいる間、顧客は、その後ガソリンを発火させるおそれがある静電荷を蓄積している場合がある。そのような例において、セマンティクスエンジンは、一連のＳＡが安全性カテゴリを満たすと判定し、たとえば、ガソリンスタンドの従業員に、ガソリン供給装置を停止する旨のリアルタイムの警告を送る。
【００５１】
走り去り：顧客は、ガソリンノズルを車から取り外してホルダに置くことなく走り去ろうとする場合がある。
【００５２】
喫煙：顧客は、燃料補給所の内部で喫煙しようとするおそれがある。上記２つの例において、セマンティクスエンジンは、一連のＳＡが安全性カテゴリを満たすと判定し、警報（サイレン、アナウンスなど）を発して、顧客に車の運転を止め、ノズルを外す、喫煙を止めるなどの指示をする。
【００５３】
不正行為：個人が、燃料補給所の機械に不正行為をはたらこうとする場合がある。個人は、たとえば、ガソリンノズル内に物体を挿入し、ガソリン供給装置キャビネットを開き、長時間にわたってガソリン供給装置の見通しを遮るトラックまたは大型車両を駐めるなどする場合がある。セマンティクスエンジンは、一連のＳＡが盗難／破壊行為カテゴリを満たすと判定し、たとえば、警備員に、直ちにガソリン供給装置を確認する旨の警告を送る。
【００５４】
悩んでいるまたは有益な顧客：顧客は、ガソリン供給装置の不調に起因して悩んでしまうか、または、様々な洗車オプションが提示されていることで困惑してしまう場合がある。別の例において、顧客は、常客として認識されている場合がある。そのような例において、セマンティクスエンジンは、一連のＳＡが商機カテゴリを満たすと判定し、従業員に警告し、ガソリン供給装置にデジタル広告などの形態の値引きを送信する。
【００５５】
任意の特定の実施形態に従って、必ずしも上述したすべてのそのような目的および利点が達成され得るとは限らないことは理解されたい。したがって、たとえば、本明細書に記載のシステムおよび技法は、必ずしも本明細書に教示または示唆され得るような他の目的または利点を達成することなく、本明細書に教示されているような１つの利点または利点群を達成または最適化するように具現化または実行されてもよいことを、当業者は認識しよう。
【００５６】
本発明を限られた数の実施形態のみに関連して詳細に説明したが、本発明はそのような開示されている実施形態には限定されないことは容易に理解されるはずである。むしろ、本システムは、これまで記載しなかった任意の数の変形形態、変更形態、置換形態または均等な構成を組み込むように変更することができるが、これらは本発明の精神および範囲に相応のものである。加えて、本発明の様々な実施形態を説明してきたが、本発明の態様は記載の実施形態の一部のみを含んでもよいことは理解されたい。したがって、本発明は、上記の記載によって限定されているとみなされるべきではなく、添付の特許請求項の範囲のみによって限定される。新規であるとして特許請求され、米国特許明細書によって保護されるよう所望されるものは、添付の特許請求の範囲のとおりである。
【符号の説明】
【００５７】
１００  システム
１２０  センサ
１２５  信号線
１３０  セマンティクスエンジン
１３５  信号線
１４０  セマンティクスアプリケーション
１７０  ネットワーク
２０２  通信モジュール
２０４  グラフモジュール
２０６  比較モジュール
２０８  ナラティブモジュール
２１０  通知モジュール
２２０  バス
２３５  プロセッサ
２３７  メモリ
３００  グラフィック表現
３０２  新たなＣＧ
３０４  第１の部分
３０６  第２の部分
３１０  先行するＣＧ
３１３  第１の先行するＣＧ
３１４  一致する部分
３１５  第２の先行するＣＧ
３１６  一致する部分
３２０  関連するＳＡ
３２４  第１のＳＡセット
３２６  第２のＳＡセット
３３０  イベントナラティブ
４００  流れ図
【図１】
0006307082.tif 000002
【図２】
0006307082.tif 000003
【図３】
0006307082.tif 000004
【図４】
0006307082.tif 000005