(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-18
(45)【発行日】2023-01-26
(54)【発明の名称】アクティビティ署名を利用する画像/ビデオの解析方法及びその解析システム
(51)【国際特許分類】
G06T 7/20 20170101AFI20230119BHJP
G06T 7/00 20170101ALI20230119BHJP
【FI】
G06T7/20
G06T7/00
(21)【出願番号】P 2021060214
(22)【出願日】2021-03-31
【審査請求日】2021-03-31
(32)【優先日】2020-07-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】391007161
【氏名又は名称】エヌ・シー・アール・コーポレイション
【氏名又は名称原語表記】NCR CORPORATION
(74)【代理人】
【識別番号】100098589
【氏名又は名称】西山 善章
(74)【代理人】
【識別番号】100098062
【氏名又は名称】梅田 明彦
(74)【代理人】
【識別番号】100147599
【氏名又は名称】丹羽 匡孝
(72)【発明者】
【氏名】ジョシュア ミグダル
(72)【発明者】
【氏名】ヴィクラム スリニヴァサン
【審査官】藤原 敬利
(56)【参考文献】
【文献】特開2018-181273(JP,A)
【文献】特開平08-164139(JP,A)
【文献】特開2008-021225(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00- 1/40
G06T 3/00- 9/40
G06V 10/00-20/90
(57)【特許請求の範囲】
【請求項1】
ビデオからビデオフレームを取得し、
前記ビデオフレームから単一の画像を発生させ、
前記単一の画像を、前記ビデオフレームにキャプチャされたアクティビティの視覚的なフロープリントとして提供する、
各工程を含
み、
前記単一の画像を発生させることは、前記ビデオフレームの各ビデオフレーム内の、モデル化されたアクティビティに関連付けられた領域を追跡することをさらに含み、
前記領域を追跡することは、前記各ビデオフレームについて、前記領域内の前記モデル化されたアクティビティの予測移動経路に沿った点に関連付けられたピクセル値を取得することをさらに含み、
前記ピクセル値を取得することは、前記ビデオフレームに亘って前記予測移動経路に沿った各点の集約されたピクセル値を、前記ビデオフレームに亘って前記各点に対応する点についてキャプチャされた対応するピクセル値から決定することをさらに含む、
アクティビティ署名を用いた画像/ビデオの解析方法。
【請求項2】
決定することが、前記集約されたピクセル値を、前記ビデオフレームにわたる前記対応するピクセル値の平均として算出することをさらに含む、請求項
1に記載のアクティビティ署名を用いた画像/ビデオの解析方法。
【請求項3】
決定することが、前記集約されたピクセル値を、前記ビデオフレームにわたる前記対応するピクセル値に関連付けられた最小ピクセル値または最大ピクセル値として選択することをさらに含む、請求項
1に記載のアクティビティ署名を用いた画像/ビデオの解析方法。
【請求項4】
決定することが、前記集約されたピクセル値を、前記ビデオフレームにわたる前記対応するピクセル値に関連付けられた標準偏差として算出することをさらに含む、請求項
1に記載のアクティビティ署名を用いた画像/ビデオの解析方法。
【請求項5】
決定することが、前記集約されたピクセル値を、前記ビデオフレームにわたる前記対応するピクセル値の前記予測移動経路に沿った運動の大きさを表現する光学フロー要約値として算出することをさらに含む、請求項
1に記載のアクティビティ署名を用いた画像/ビデオの解析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、深層学習をビデオ分類タスクに適用するアクティビティ署名を用いた画像/ビデオの解析方法及びそのシステムに関する。
【背景技術】
【0002】
画像分類等の処理において深層学習が広く使用されるようになってきている。しかしながら、機械学習は計算的に高価であり得るため、深層学習をビデオ分類タスクに適用することは容易ではない。
【0003】
深層学習をビデオ分類タスクに適用するアクティビティ署名を用いた画像においては、単一の画像とは異なり、ビデオの内容は経時的に変化する。言い換えれば、静止画像には存在しない、ビデオを解析する時間的な側面がある。したがって、画像理解タスクは、画像中にあるものを理解することを伴い得るが、ビデオ理解タスクは、所与の時間におけるビデオ内にある物体を決定し、物体がどのようにビデオ内のフレームからフレームへと経時的に変化するかを決定することを必要とする。
【0004】
この時間ベースの解析は、ビデオアクティビティを理解するために必要であり、現在の機械学習アプローチに重大な課題を提示している。ビデオ解析に必要な検索空間は、静止画像解析に必要とされるものよりも指数関数的に大きい。その結果、機械学習アルゴリズムが注意深く構築されておらず、かつ適切に構成されていない場合、アルゴリズムによって処理されたビデオの学習および評価では、手に負えない問題に遭遇する可能性がある。
【0005】
さらに、ビデオ解析のための最適な機械学習アルゴリズムを用いても、対応するビデオフレームの真のデータサイズおよびフレームから追跡される特徴の数により、アルゴリズムがタイムリーな結果を配信することが妨げられる。典型的には、毎秒30個超のフレーム(30個の画像)が存在し得、1分間のビデオには、ほぼ2,000個の個々の画像が含まれる。さらに、アルゴリズムがビデオフレームを処理する間、プロセッサ負荷およびメモリ使用率などのハードウェアリソースが過度に酷使されるようになる。
【0006】
結果として、リアルタイム機械学習アプリケーションは、ほとんど実現不可能であり、業界では実用的ではない。
【発明の概要】
【発明が解決しようとする課題】
【0007】
このような課題を解決するべく、本発明は、機械学習及び深層学習をビデオ分類タスクに適用した種々のクティビティ署名を用いた画像/ビデオの解析方法及びそのシステムを提供するものである。
【課題を解決するための手段】
【0008】
本発明の一実施形態によれば、アクティビティ署名を用いた画像/ビデオ解析を利用した、例えば、ビデオフレームがビデオから取得され、単一の画像がビデオフレームから発生する。単一の画像は、ビデオフレームにキャプチャされたアクティビティの視覚的なフロープリントとして提供される。
【図面の簡単な説明】
【0009】
【
図1A】本発明の例示的な実施形態による、アクティビティ署名を用いた画像/ビデオ解析のためのシステムの図である。
【
図1B】本発明の例示的な実施形態による、例示的な視覚的なフロープリントまたはアクティビティ署名の図である。
【
図1C】本発明の例示的な実施形態による、トランザクション端末のトランザクションエリアについてキャプチャされたビデオフレームの例示的な頭上画像である。
【
図1D】本発明の例示的な実施形態による、
図1Cのビデオフレームの上に重ね合わされた複数のビデオフレームを通るフロープリントの予測経路の図である。
【
図1E】本発明の例示的な実施形態による、1つのフレームから次のフレームへの光学データの移動を表現する、重ね合わせられた光学フローデータを含む画像の図である。
【
図1F】本発明の例示的な実施形態による、異なる量の時間を使用したアクティビティに関連付けられた2つのフロープリントの図である。
【
図1G】本発明の例示的な実施形態による、同じサイズに正規化された異なる量の時間を使用したアクティビティに関連付けられた2つのフロープリントの図である。
【
図1H】本発明の例示的な実施形態による、2つのセンサによってキャプチャされたセンサデータで拡張されたフロープリントの図である。
【
図2】本発明の例示的な実施形態による、アクティビティ署名を用いた画像/ビデオ解析のための方法の図である。
【
図3】本発明の例示的な実施形態による、アクティビティ署名を用いた画像/ビデオ解析のための別の方法の図である。
【発明を実施するための形態】
【0010】
図1Aは、例示的な実施形態による、アクティビティ署名を用いた画像/ビデオ解析のためのシステム100の図である。構成要素が、例示される実施形態の理解に関連する構成要素のみを有して大幅に単純化された形態で概略的に示されていることに留意されたい。
【0011】
さらに、様々な構成要素(
図1に示される)を例示し、そして構成要素の配置は例示のみを目的として提示する。本明細書および以下に提示される、アクティビティ署名を用いた画像/ビデオ解析の教示から逸脱することなく、より多くの、またはより少ない構成要素を含む他の配置が可能であることに留意されたい。
【0012】
システム100は、トランザクション端末110、サーバ120、および1つ以上のカメラ130を含む。
【0013】
端末110は、ディスプレイ111、周辺デバイス112、プロセッサ113、および非一時的なコンピュータ可読ストレージ媒体114を備える。媒体114は、トランザクションマネージャ115に対する実行可能な命令を含む。
【0014】
サーバ120は、プロセッサ121、および非一時的なコンピュータ可読ストレージ媒体122を備える。媒体122は、トランザクションマネージャ123、視覚的な署名/フロープリントマネージャ124、および1つ以上のビデオベースのコンシューミングアプリケーション126に対する、実行可能な命令を含む。媒体122はまた、視覚的な署名/フロープリントマネージャ124によって生成され、ビデオベースのコンシューミングアプリケーション126への入力として提供される、ビデオ署名/フロープリント125を含む。
【0015】
カメラ130は、端末110に関連付けられたトランザクションエリアのビデオ131をキャプチャする。ビデオは、サーバ120、または視覚的な署名/フロープリントマネージャ124が解析のためにアクセス可能な他のネットワークベースのロケーション/ファイルにリアルタイムでストリーミングされ得る。
【0016】
本明細書においてその実施の形態が例示されるように、システム100は、ビデオ署名、またはビデオ内で監視される所与のアクティビティに対する視覚的なフロープリント、およびその対応するフレーム(個々の画像)を生成するために、ビデオの複数のフレームを解析することができる。生成されたアクティビティ署名または視覚的なフロープリントは、それが導出された元のビデオフレームよりもサイズが著しく小さく、アクティビティ署名または視覚的なフロープリントは、所与のアクティビティに関連付けられたより多くの記述的な特徴および関連データを含む。署名/フロープリントは、その後、機械学習アルゴリズムおよび/または他のコンシューミングアプリケーションによって処理され、その結果、実質的にプロセッサのスループットが改善され、その結果、業界で達成されたものよりも実質的にメモリ使用率が改善され得る。
【0017】
本明細書で使用される場合、「視覚的なフロープリント」、「ビデオ署名」、「アクティビティ署名」、「フロープリント」、および「署名」という用語および言い回しは、互換的にかつ同義で使用され得る。これらは、ビデオ131のビデオフレームからのモニタアクティビティを表現するために、特定の様式(本明細書および以下に記載)で構築される新規のデータ構造または画像を指す。
【0018】
視覚的な署名/フロープリントマネージャ124は、端末110のトランザクションエリアのキャプチャされたビデオ131を解析し、フロープリントを生成する。ビデオ131の名声は、視覚的な署名/フロープリントマネージャ124によって要約される。視覚的な署名/フロープリントマネージャ124は、長さTを有するビデオ131の断片の要約を表現するn次元数値配列を作成し、nは、Tに依存しないか、またはTに著しく依存しない。
【0019】
ビデオの長さTは、時間単位で、または同等にフレームの数で表され得る。このようにして、Tは、本明細書では、ビデオ131内のフレームの総数(およびビデオ131内のインデックス付けされた位置としてのt)とも称され得るが、それらは互換的に使用され得、区別は必要な場合にのみ行われる。問題のビデオが、3つの色チャネルと長さTの持続時間を含む、640×480の解像度を有すると仮定する。したがって、フロープリントを作成する単純な方法は、ビデオのフレームをサイズ(T,640,480,3)の4次元(n=4)データ構造に単に「積み重ねる」ことである。慣例により、1次元は時間軸であり、各「行」はビデオの単一のフレームの要約を表現する。この1次元は、すべての場合で同等に、フロープリントの時間軸、高さ、スキャンライン、または行と称され得る。他のn-1次元は、ビデオの各フレームを要約するために使用される。この単純なフロープリントの実施例では、要約は恒等変換の形態を取る。これは、フロープリントが、必ずしもビデオに含まれる任意の情報の簡素化、縮小、または除去を必要としない点を示す。
【0020】
図1B~
図1Hに関して以下で考察される処理は、視覚的な署名/フロープリントマネージャ124によって遂行される。生成されたフロープリントは、ビデオベースの機械学習アルゴリズムまたはアプリケーションなどの、様々なビデオベースのコンシューミングアプリケーション126への入力として提供され得る。
【0021】
図1Bは、例示的な実施形態による、例示的な視覚的なフロープリント140またはアクティビティ署名140の図である。
【0022】
フロープリント140は、ビデオ131内にキャプチャされた特定のアクティビティを要約する。「アクティビティ」は、人物、物体、群、またはこれらの任意の組み合わせの移動として定義され、それらの行為は反復的であるか、反復可能であるか、または別様にパターンを形成し、(コンシューミングアプリケーション126に関連付けられた機械学習または規則ベースの処理を通して)識別および学習され得る。
【0023】
学習されるアクティビティはドメイン固有のものであり、そのため、本明細書および以下に示される実施例は、非限定的なものであり、所与の小売チェックアウトドメイン内の例示のために提示されることに留意されたい。本明細書に提示される有益な教示から逸脱することなく、他のドメインを使用することができる。
【0024】
任意の所与のフロープリントは通常、少なくとも2つの次元を含み、1つの次元(1次元、スキャンライン、y軸、または行)は、時間を表現する。このように、各スキャンラインは、ビデオ131の単一のフレームの要約を表現する。フロープリントが画像として表現される場合、画像の高さは、ビデオ131と同等の長さである(高さ「h」=T)。
【0025】
画像は、ピクセル値のマトリックスを形成する、高さおよび幅の2つの次元を含む。ビデオは、時間の経過とともに複数の画像を一緒に、連続的に一列に並べることによって3つの次元を表現する。
【0026】
フロープリント140は、一連の1次元積層フレームに圧縮されたビデオのフレームを表現する。任意の所与のフレーム(画像)に対する列ピクセル値を合計、平均化、または別様に計算して、列当たり単一のピクセル値を取得し、それにより、単一の画像またはフレームは、単一の行の数値ピクセル値(元のフレームまたは画像内に存在する特定の列のピクセル値の要約/計算を表現する行の各ピクセル値)に圧縮される。各フレームは、高さまたは1のみを有する新規のデータ構造に圧縮される。さらに、各フレームは、前の行の上に積み重ねられた追加の行として含まれる。したがって、フロープリント140の行の総数は、所与のアクティビティに対応するビデオ131の部分でキャプチャされるフレームの総数と同等である。視覚的には、フロープリント140は、ビデオ131の対応するすべてのフレームを表現する単一の2次元画像として視認され得る。
【0027】
図1Cは、例示的な実施形態による、トランザクション端末のトランザクションエリアについてキャプチャされたビデオフレームの例示的な頭上画像である。
【0028】
例示の目的で、POS(ポイントオブセールス)端末110でレジ係に関連付けられたトランザクションエリアの頭上カメラ130によってキャプチャされた所与のビデオ131またはビデオフィード131を仮定する。ここでは、小売業者が、トランザクションエリア内の商品の袋詰めに関連付けられたレジ係のアクティビティを監視したいと仮定する。ここで、
図1Cにおいて、バーコードスキャナから袋詰めエリアまたは領域までのレジ係および商品の動きが追跡される(袋詰めエリアはレジ係の左側(レジ係にとっての左側)にある)。
【0029】
かかる行為の予想される動きは、
図1Dに例示される経路を追従する。
【0030】
図1Dは、例示的な実施形態による、
図1Cのビデオフレームの上に重ね合わされた複数のビデオフレームを通るフロープリントの予測経路141の図である。
【0031】
フロープリントの経路141は、商品の袋詰めに関連付けられたアクティビティに対して予測されるものである。アクティビティは、商品がスキャンされた直後に開始する。商品は、端末110のスキャナから、直接レジ係の左側の袋詰め領域まで経路141に追従する。このアクティビティの対応するフロープリントの各スキャンラインは、「a」から「b」までの経路141に直交する列ピクセルから抽出された要約統計量から導出される。「a」から「b」までの経路141の長さは、スキャンラインの幅、ひいては、対応するフロープリントの幅を決定する。高さ)h)は、要約統計量を抽出するために使用される、経路141に直交するピクセルの列の高さである。
【0032】
図1Dでは、動きは、点aで始まり、指定された経路141に沿って続き、点bで終了する。aからbまでの経路141に沿った点の数は、幅「w」である。点「p」は、この経路に沿ったその位置、ならびにビデオの時間におけるその位置に応じてインデックス付けされ得るpt、x。式中、xは、0とw-1との間であり、tは、0とT-1との間である。
【0033】
1つの要約変数を追跡するフロープリントの場合、これは、T×w次元を有するフロープリントをもたらす。各行は、ビデオの各フレームを通して取られた経路141内のアクティビティを要約する長さwの1つのスキャンラインを表現する。かかるフロープリント140の例を
図1Bに示す。
【0034】
結果として得られるフロープリントの点pt.xにおける要約統計量の値を計算するために(xは、経路141に沿った点であり、0とw-1との間の値を有し、tは、ビデオ131内のフレームにおける再生位置であり、0とT-1との間の値を有する)、位置xで経路141に直交する線の上に見つかるピクセル値は、ビデオ内の時間tで画像/フレーム内に集約される。ピクセルの対応する列は、高さhを有する。使用する要約統計量を決定する場合、2つの選択を行う必要がある。要約される値は何か、および使用される統計は何か。要約される値は、列内の各ピクセルの明るさまたは色の値と同程度に単純であってもよく、または値は一部の他の数量のものであってもよい。視覚的な署名/フロープリントマネージャ124によって使用され得る要約統計量のいくつかの実施例としては、ピクセル列の平均の明るさもしくは色、最小ピクセル値、最大ピクセル値、標準偏差、および/または任意の他の統計量が挙げられる。
【0035】
一実施形態では、フロープリントの任意の所与の点に使用される値は、フレームの光学フローから導出される。光学フローの使用は、緻密に計算することができるため様々な利点を有する。つまり、画像内の各ピクセルに対して値を導出することができる。さらに、効率的に計算することができ、計算的に高価な算出ではない。光学フローはまた、動きの堅牢な推定器、および現実世界のシナリオにコンピュータビジョンを適用する際に多くの共通の課題にほとんど影響されない動きのパターンであるという利点を有し、かかる課題には、多様で変化する照明条件、陰影、反射、鏡面ハイライト、閉塞、カモフラージュ、およびその他の条件が含まれる。
【0036】
図1Eは、例示的な実施形態による、1つのフレームから次のフレームへの光学データの移動を表現する、重ね合わせられた光学フローデータを含む画像の図である。
【0037】
光学フローを要約統計量の値として使用する場合、光学フローはビデオ131にわたって計算される。一実施形態では、要約統計量は、経路141に適合するバウンディングボックスのピクセル値に関して計算される。
【0038】
経路141に沿った各点で経路141に直交する各列を横切るフローが集約される。各列が中にh個のピクセルを有するため、集約はこれらのh個のフローに対して行われることを想起されたい。1つの実施形態では、フローは、各点pにおいて経路141の軸の下に射影され、フローピクセルごとに単一の値(およびw個の経路点が存在する、経路点ごとに列当たり合計h個の値)をもたらす。この射影は、経路141に沿ったアクティビティの大きさをキャプチャするため、有用である。点pにおける「経路の軸」は、pにおいて経路141を表現する曲線のタンジェントを意味するように与えられる。次いで、任意の種類の要約統計量を使用して、h個の値を、位置(t、x)において結果として得られるフロープリント内で使用されるpにおける単一の点の値まで下げて集約することができる。一実施形態では、値の合計が使用される。
【0039】
これは、実際には、
図1に示されるフロープリントがどのように計算されたかである。そのフロープリントは、60個の行の高さ、および200個の列の幅であり、グレースケール画像として表現される。グレースケール画像は、ピクセル当たり単一の値をキャプチャする。60個の行は、要約されたビデオの60個のフレームを表現する。200個の列は、ビデオ内の経路の長さを表現する。各グレースケール値は、黒色の場合、経路に沿って「開始点aに向かう」フロー、または白色の場合、経路に沿って「終了点bに向かう」フローのいずれかを表現する。色が強いほど、その点におけるaまたはbのいずれかに向かう経路に沿ったフローが強くなる。
【0040】
他の変形例もまた可能であることに留意されたい。さらなる非限定的な実施例として、例えば、ピクセル当たり2つのチャネルのフロープリントをもたらし得る、光学フローの両方の軸を使用することができる。これによって意味されることは、結果として得られるフロープリントは、サイズTの第1の次元、サイズwの第2の次元、および光学フローの2つの軸を表現するサイズ2の最後の次元を有する、3次元数値配列であり得るということである。
【0041】
軸は、経路141に沿って射影され、かつ経路141に直交するか、または画像軸指向であるか、または任意の他の基礎ベクトルを介して使用されるかのいずれかであり得る。
【0042】
同様の方法で、例えば、コンピュータ平均色にいくつかの要約統計量を使用すると、3つのチャネルのフロープリントをもたらすことになる。
【0043】
他の値も使用され得ることに留意されたい。上述のアプローチを、バックグラウンド減算、追跡、シルエット、およびブロブ解析などのコンピュータビジョン技術と組み合わせて、ビデオを通じてアクティビティを追跡することができる。
【0044】
説明されるアプローチは、特徴ベースのアプローチでも使用され得る。例えば、SIFTベースの特徴は、ビデオの各フレームから抽出され、要約される値として使用され得る。
【0045】
図1Eでは、光学フローデータは、フレームを通る移動がないことを例示するひし形形状142B、対応するひし形形状に関連付けられた線の長さで例示される大きさの下方および左への移動を例示する142Aとして示されている。
【0046】
図1Fは、例示的な実施形態による、異なる量の時間を使用したアクティビティに関連付けられた2つのフロープリントの図である。
【0047】
異なる持続時間を有するアクティビティから導出されたフロープリントを
図1Fに例示する。フロープリント143Aでは、監視対象のアクティビティが要した時間はごくわずかであった(したがって、フロープリント143Aの高さは小さい)。第2のフロープリント143Bでは、同じタイプのアクティビティが要した時間は著しく長かった(したがって、フロープリント143Aと比較した場合、フロープリント143Bの高さはより大きい)。これは、高さが劇的に異なる2つのフロープリント143Aおよび143Bをもたらす。これは、すべての入力が同じサイズのものであることを必要とする多くの機械学習アプローチに問題を提起する。
【0048】
機械学習フレームワークでは、多くの場合、すべての入力が同じサイズであることを確保する必要がある。ビデオを扱う際、これは、多くの場合、非常に難しい。ビデオは標準の長さではない。ビデオ内のアクティビティがすべて同じ時間を要するわけではない。
【0049】
図1Fは、同じタイプのアクティビティが完了するまでに著しく異なる時間を要するようなシナリオを例示している。これらのフロープリント143Aおよび143Bは、異なるサイズのものであるため、同じ機械学習分類器への入力としてそのまま使用することは不可能であり得る。
【0050】
一貫した入力サイズを確保するために、フレームを戦略的に追加および除去することを含む、ビデオを正規化しようとする様々なアプローチがある。しかしながら、これらには問題がないわけではない。例えば、フレームを除去すると、フレームが除去された箇所で、結果として生じるビデオがぎくしゃくした動きになる。これは、多くの結果、とりわけ、1つのフレームと別のフレームとの間のフロー推定値に一貫性がないという結果を有する。
【0051】
フレームを追加しなければならない場合、最も近いフレームを複製することによって、ビデオのプレゼンテーションおよびフローの推定に関して同じ問題が生じる。フレームを追加する際に、2つのフレームとの間を補間して、かかる問題を軽減することを試みる場合があるが、結果に悪影響を与える可能性のある他のアーチファクトが顕在化する。
【0052】
ここで提案するアプローチ、および本明細書に提示される教示に対する1つの重要な利点は、ビデオではなく、フロープリントを正規化することである。正規化は、データ表現において可能な限りの同等性を確保するために、すべての入力が特定の方法で浄化されることを確保することを伴う。これにより、分類器が、データ表現の不一致によってではなく、フロープリントによってモデル化されるアクティビティに固有の差異のみに関して、訓練され、評価されることを確保する。
【0053】
フロープリントは通常、画像として表現され得るため、正規化の作用は画像処理に還元され、そのドメインで利用可能なすべてのツールおよび方法は、フロープリント正規化タスクに影響を与え得る。例えば、
図1Fに示されるもののような時差を正規化するために、画像のリサイズ操作を遂行することができる。かかる操作は、最も近くの隣人であり得るか、またはバイキュービック補間などのより高度な方法を使用し得る。
図1Gは、
図1Fのサイズ正規化フロープリントの例を提示している。
【0054】
図1Gは、例示的な実施形態による、同じサイズに正規化された異なる量の時間を使用したアクティビティに関連付けられた2つのフロープリントの図である。
【0055】
フロープリントは通常、画像として表現されるため、データの正規化のために画像処理技術を使用することができる。この実施例では、異なる持続時間の同様のアクティビティを表現する2つのフロープリント143Aおよび143Bは、両方が同じサイズであるようにフロープリント144Aおよび144Bとしてリサイズされる。このようにして、より小さなフロープリント143Aは144Aとなり、より大きなフロープリント143Bは144Bとなる。ここで、2つの正規化されたフロープリント144Aおよび144Bは、一定のサイズの入力を必要とする多くの既存の機械学習フレームワーク/アプリケーションで処理され得る。
【0056】
フロープリント143Aおよび143Bは画像として表現されるため、超解像度強化技術を使用することによって、時間軸、またはその物質のその他の次元のいずれかをスケールアップすることも可能である。任意のかかる方法を使用して、フロープリント143Aおよび143Bのサイズを正規化されたフロープリント144Aおよび144Bに正規化することができる。
【0057】
さらに、データの値自体を正規化することができる。色のバランス調整、明るさおよびコントラストの調節、ならびにその他の無数の画像処理ツールのいずれかを使用して、フロープリントの視覚的な外観を正規化することができる。これは、データホワイトニングのより一般的なアプローチに類似しており、実際に、統計モデリングで標準的なこれらのアプローチをここで使用することもできる。
【0058】
これは、異なるビデオフレームレートに対して正規化するための光学フローベースの技術において有用である。例えば、一定の速度で移動している車両のフローを算出すると仮定する。その車両が、1つが12fps(1秒当たりのフレーム数)のフレームレートを有し、1つが24fpsのフレームレートを有する、2つのカメラによって記録されている場合、12fpsのビデオファイルの任意の2つのフレームとの間で、動きは、同じ車両を記録している24fpsのビデオの隣接するフレームを使用して算出されたフローの2倍の大きさである。
【0059】
画像表現に関して、黒から白までのグレーの色合いの大きさは、それぞれ開始点に向かう速度、および開始点から離れる速度の大きさを示すため、12fpsでのフロープリントの画像表現は、24fpsで記録されたものよりも高いコントラストで現れるべきである。
【0060】
これを補正するために使用され得る様々なアプローチの中でも、画像処理技術を使用した単純な色の改ざんは、データの正規化の単純かつ効率的な方法を提供する。
【0061】
図1Hは、例示的な実施形態による、2つのセンサによってキャプチャされたセンサデータで拡張されたフロープリントの図である。
【0062】
図1Hは、第1のセンサからの第1のセンサデータ145Cと、第2のセンサからの第2のセンサデータ145Dと、を含む、センサデータ145Bで拡張されたフロープリント145Aを例示している。
【0063】
フロープリントを他の検出器、センサ、およびデバイスからのデータで拡張して、モデル化されるアクティビティの分類を助けることができる。
図1Hでは、2つのセンサからのデータ145Cおよび145Dは、フロープリント145Aの時系列に拡張されている。
【0064】
フロープリントは、機械学習アプリケーションでの使用にうまく適合された簡潔かつ効率的な方法で時系列の現象を表現するために使用される。したがって、それらを他のソースからの他の時系列データも含めるように拡張すると役立つ場合がある。
【0065】
例えば、
図1Cに示される例示的なシナリオでは、レジ係が食料品精算時に商品をスキャンしている。特定の時間に発生したデータを有する、複数の異なる検出器、センサ、信号、およびさらには他の視覚アルゴリズムへの出力が存在し得る。これらのうちのいくつかは、視覚的な署名/フロープリントマネージャ124が発生したフロープリントによって要約されているアクティビティを裏付けるものでさえ、役立つ場合がある。
【0066】
図1Hでは、2つの他のセンサ源からのデータ145Cおよび145Dは、拡張データ145Bとしてフロープリント145Aの時系列に拡張されている。列に沿ったこれらのロケーションは、これらが属しているデータソースを示す。行(時間軸)に沿ったこれらの位置は、これらのセンサデバイスが信号を発した時間を示す。フロープリント145B内のセンサ信号の形状およびサイズを使用して、とりわけ、フロープリント自体、および拡張フロープリント内の他のセンサ信号に関連して、センサ信号の重要性またはその有意性をモデル化することができる。信号の画像表現の形状および色(データの値)を使用して、信号自体の不確実性(例えば、カルマンフィルタ検知)をモデル化することができる。
【0067】
フロープリントを拡張するために使用され得る、センサ、信号、および視覚的な検出の実施例としては、スキャナデータ、POSデータ、トランザクション情報、重量スケールの読み取り値、視覚的な検出、トリップワイヤ、電子商品監視機器(EAS)のアラート、およびその他の任意のものが挙げられるが、これらに限定されない。
【0068】
一実施形態では、端末110は、POS端末、セルフサービス端末(SST)、自動現金預払機(ATM)、またはキオスクである。
【0069】
一実施形態では、ビデオベースのコンシューミングアプリケーション126は、ビデオの追跡、監視、およびセキュリティ事象の発生のための機械学習アルゴリズムおよび/またはセキュリティベースのビデオアプリケーションを含む。
【0070】
ここで、上述の実施形態および他の実施形態を、
図2を用いて考察する。
【0071】
図2は、例示的な実施形態による、アクティビティ署名を用いた画像/ビデオ解析のための方法200の図である。方法200を実施するソフトウェアモジュール(複数可)は、「ビデオアクティビティ特徴発生器」と称される。ビデオアクティビティ特徴発生器は、実行可能なプログラムされた命令として実装され、メモリおよび/または非一時的なコンピュータ可読(プロセッサ可読)ストレージ媒体の内部に常駐し、デバイスの1つ以上のプロセッサによって実行される。ビデオアクティビティ特徴発生器を実行するデバイスのプロセッサ(複数可)は、ビデオアクティビティ特徴発生器を処理するように具体的に構成およびプログラムされている。ビデオアクティビティ特徴発生器は、その処理中に1つ以上のネットワーク接続へのアクセスを有し得る。ネットワーク接続は、有線であっても、無線であっても、有線と無線の組み合わせであってもよい。
【0072】
一実施形態では、ビデオアクティビティ特徴発生器は、サーバ120上で実行される。一実施形態では、サーバ120は、POS端末、SST、ATM、またはキオスクである。一実施形態では、サーバ120は、クラウド処理環境(クラウド)を表現する単一のサーバとして論理的に協働する、複数のサーバのうちの1つである。
【0073】
一実施形態では、ビデオアクティビティ特徴発生器は、視覚的な署名/フロープリントマネージャ124である。
【0074】
210では、ビデオアクティビティ特徴発生器は、ビデオからビデオフレームを取得する。ビデオは、供給されるリアルタイムのビデオであってもよく、または以前にキャプチャされたビデオであってもよい。
【0075】
220では、ビデオアクティビティ特徴発生器は、ビデオフレームから、またはビデオのすべてのビデオフレームにわたって、単一の画像を発生させる。
【0076】
一実施形態では、221において、ビデオアクティビティ特徴発生器は、モデル化されたアクティビティに関連付けられた各ビデオフレーム内の領域を追跡する。
【0077】
221の一実施形態では、222において、ビデオアクティビティ特徴発生器は、領域内のモデル化されたアクティビティに対する予想移動経路に沿った点に関連付けられた各ビデオフレームのピクセル値を取得する。
【0078】
222の一実施形態では、223において、ビデオアクティビティ特徴発生器は、ビデオフレームにわたる予想移動経路に沿った各点の集約されたピクセル値を、対応する点のビデオフレームにわたってキャプチャされた対応するピクセル値から決定する。
【0079】
223の一実施形態では、224において、ビデオアクティビティ特徴発生器は、集約されたピクセル値を、ビデオフレームにわたる対応するピクセル値の平均として算出する。
【0080】
223の一実施形態では、225において、ビデオアクティビティ特徴発生器は、集約されたピクセル値を、ビデオフレームにわたる対応するピクセル値に関連付けられた最小ピクセル値または最大ピクセル値として選択する。
【0081】
223の一実施形態では、226において、ビデオアクティビティ特徴発生器は、集約されたピクセル値を、ビデオフィードにわたる対応するピクセル値に関連付けられた標準偏差として算出する。
【0082】
223の一実施形態では、227において、ビデオアクティビティ特徴発生器は、集約されたピクセル値を、ビデオフレームにわたる対応するピクセル値の予測移動経路に沿った運動の大きさを表現する光学フロー要約値として算出する。
【0083】
220の一実施形態では、228において、ビデオアクティビティ特徴発生器は、220で単一の画像を発生させる前に、ビデオフレームから既知のバックグラウンドピクセル値を除去する。
【0084】
220の一実施形態では、229-1において、ビデオアクティビティ特徴発生器は、220で単一の画像を発生させる前に、ビデオフレームから、モデル化されたアクティビティの対象となる領域に関連付けられていないピクセル値を除去する。
【0085】
220の一実施形態では、229-2において、ビデオアクティビティ特徴発生装置は、ビデオフレームから特徴を抽出し、単一の画像をビデオフレームにわたる各特徴の要約として発生させる。
【0086】
230では、ビデオアクティビティ特徴発生器は、ビデオフレームにキャプチャされたアクティビティの視覚的なフロープリントまたは視覚的な署名として単一の画像を提供する。
【0087】
一実施形態では、231において、ビデオアクティビティ特徴発生器は、単一の画像のサイズが、機械学習アルゴリズムへの入力として入力画像で予想される第2のサイズと互換性がないと決定する。ビデオアクティビティ特徴発生器は、単一の画像を第2のサイズに正規化し、単一の画像を機械学習アルゴリズムへの入力として提供する。一実施形態では、単一の画像は、機械学習アルゴリズムによって予測される色のグラデーションに基づいて正規化される。これは、サイズに追加されるものであってもよく、または単一の画像が、既に機械学習アルゴリズムによる入力のために必要なサイズである場合、もしくは機械学習アルゴリズムによって予期された誤った色のグラデーションである場合に、サイズとは無関係であってもよい。
【0088】
図3は、例示的な実施形態による、アクティビティ署名を用いた画像/ビデオ解析のための方法300の図である。方法300を実施するソフトウェアモジュール(複数可)は、「ビデオアクティビティ解析器」と称される。ビデオアクティビティ解析器は、実行可能なプログラムされた命令として実装され、メモリおよび/または非一時的なコンピュータ可読(プロセッサ可読)ストレージ媒体の内部に常駐し、デバイスの1つ以上のプロセッサによって実行される。ビデオアクティビティ解析器を実行するデバイスのプロセッサ(複数可)は、ビデオアクティビティ解析器を処理するように具体的に構成およびプログラムされている。ビデオアクティビティ解析器は、その処理中に1つ以上のネットワーク接続へのアクセスを有し得る。ネットワーク接続は、有線、無線、または有線と無線の組み合わせであってもよい。
【0089】
一実施形態では、ビデオアクティビティ解析器を実行するデバイスは、サーバ120である。
【0090】
一実施形態では、ビデオアクティビティ解析器は、視覚的な署名/フロープリントマネージャ124のすべてまたは何らかの組み合わせである。
【0091】
ビデオアクティビティ解析器は、別の、およびある意味では、方法200について上で考察したものの強化された処理の観点を表現する。
【0092】
310では、ビデオアクティビティ解析器は、ビデオフィードから少なくとも1つの画像を取得する。
【0093】
320では、ビデオアクティビティ解析器は、モデル化されたアクティビティに対して、画像内のレイアウトされたアクティビティの経路を識別する。
【0094】
330では、ビデオアクティビティ解析器は、経路上の測定値を算出する。
【0095】
一実施形態では、331において、ビデオアクティビティ解析器は、測定値を、ビデオフィード内に現れる監視対象のアクティビティの光学フローとして算出する。
【0096】
一実施形態では、332において、ビデオアクティビティ解析器は、測定値を、ビデオフィード内に現れる監視対象のアクティビティのピクセル値に基づいて算出する。
【0097】
一実施形態では、333において、ビデオアクティビティ解析器は、測定値を、視覚的なトラッカから提供されたシルエット情報から算出する。
【0098】
340において、ビデオアクティビティ解析器は、経路上の各点における経路に沿った測定値を、集約された測定値として集約する。
【0099】
一実施形態では、341において、ビデオアクティビティ解析器は、測定値を、経路に沿った各点で、および固定された量だけ経路のいずれかの側に延在する対応する点で経路に直交する線に沿って、集約する。
【0100】
一実施形態では、342において、ビデオアクティビティ解析器は、少なくとも1つのデータソースからキャプチャされたデータでデータ構造を拡張する。少なくとも1つのデータソースは、重量センサ、バーコードスキャナ、カードリーダ、およびトランザクション端末のうちの1つ以上から取得されたソースデータを含む。
【0101】
350において、ビデオアクティビティ解析器は、集約された測定値を、時系列としてビデオフィードからの複数の追加画像にわたってデータ構造に蓄積する。
【0102】
360において、ビデオアクティビティ解析器は、ビデオフィード内に現れ、モデル化されたアクティビティに関連付けられている、監視対象のアクティビティについて、データ構造を正規化する。
【0103】
ソフトウエアが特定の形態(構成要素またはモジュールなど)で説明されている場合、それは単に理解を助けるためであり、それらの機能を実施するソフトウエアがどのように設計されるか、あるいはどのような構造であるかを限定するものではないことが理解される。例えば、モジュールは別個のモジュールとして説明されているが、同種のコードとして、個別の構成要素として実施されてもよく、またこうしたモジュールの全体でなく一部を組み合わせてもよく、その他の任意の都合の良い方法で構造化されたソフトウエア内で機能が実施されてもよい。
【0104】
さらに、ソフトウエアモジュールは、1つのハードウエア上で実行されるものとして説明されているが、ソフトウエアは、複数のプロセッサにまたがる、またはその他の任意の都合の良い方法で分布されてもよい。
【0105】
上述の説明は、例証的なものであって制限的なものではない。当業者には、上述の説明を検討することにより、その他の数多くの実施形態が明らかとなるであろう。したがって、実施形態の範囲は、これらの請求項が権利を持つ均等物の完全な範囲とともに、添付の請求項を参照して、決定されるべきである。
【0106】
実施形態についての上述の説明では、開示を合理化する目的で様々な特徴が単一の実施形態でひとまとめにされている。この開示方法は、請求された実施形態が、各請求項で明示的に詳述されるものよりも多くの特徴を有することを反映するとは解釈されない。むしろ、下記の請求項で反映されるとおり、発明の主題は、単一の開示された実施形態のすべての特徴よりも少ない。したがって、これによって、以下の特許請求の範囲は、実施形態の説明に組み込まれ、各特許請求の範囲は、それ自体を別個の例示的な実施形態として主張する。