(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022027440
(43)【公開日】2022-02-10
(54)【発明の名称】コンピュータービジョンおよび機械学習アプリケーションにおけるコンピュータービジョンを分析するためのキーフレーム選択方法及びキーフレーム選択システム
(51)【国際特許分類】
G06T 7/00 20170101AFI20220203BHJP
G06T 7/20 20170101ALI20220203BHJP
【FI】
G06T7/00 350B
G06T7/20
【審査請求】有
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021060300
(22)【出願日】2021-03-31
(31)【優先権主張番号】16/943,149
(32)【優先日】2020-07-30
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】391007161
【氏名又は名称】エヌ・シー・アール・コーポレイション
【氏名又は名称原語表記】NCR CORPORATION
(74)【代理人】
【識別番号】100098589
【弁理士】
【氏名又は名称】西山 善章
(74)【代理人】
【識別番号】100098062
【弁理士】
【氏名又は名称】梅田 明彦
(74)【代理人】
【識別番号】100147599
【弁理士】
【氏名又は名称】丹羽 匡孝
(72)【発明者】
【氏名】ジョシュア ミグダル
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096CA04
5L096FA69
5L096GA08
5L096GA10
5L096GA26
5L096HA02
5L096HA04
5L096HA09
5L096KA04
(57)【要約】
【課題】コンピュータービジョンおよび機械学習アプリケーションにおけるコンピュータービジョンを分析するためのキーフレーム選択方法を提供する。
【解決手段】トリガーイベントを判定する際に、ビデオフィードのフレームがアクティビティまたは動作について分析される。一つのフレームまたはフレームのサブセットは、フレームから導出された一つまたは複数の指標に関連付けられた一つまたは複数の計量に基づいて、キーフレーム/複数のキーフレームとして選択される。キーフレーム/複数のキーフレームは、フレーム全体のアクティビティまたは動作の程度を最適に反映する。次いで、キーフレーム/複数のキーフレームは、コンピュータービジョンまたは機械学習アプリケーションへの入力として提供され、アプリケーションによって生成された、またはアプリケーションによって下された判定の結果の効率、正確性、および/または精度を改善する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
トリガーイベントを判定し、
前記トリガーイベントに基づいてビデオフィードのフレームを取得し、
前記フレームのサブセットから終了イベントを識別し、
算出計量に基づいて、前記フレームの前記サブセット内のアクティビティまたは動作の最適な表現として、少なくとも一つのキーフレームを選択し、
前記少なくとも一つのキーフレームを、前記フレームの前記サブセットに対する前記アクティビティまたは前記動作の前記最適な表現として提供する、
各工程を含むことを特徴とするコンピュータービジョンを分析するためのキーフレーム選択方法。
【請求項2】
前記トリガーイベントを判定することが、センサー、取引端末、スキャナ、コンピュータービジョンアプリケーション、または機械学習アプリケーションによって提供されるデータに基づいて前記イベントを判定することをさらに含む、請求項1に記載のキーフレーム選択方法。
【請求項3】
ビデオフィードのフレームを取得することが、前記フレームの生来の解像度を低減することをさらに含む、請求項1に記載のキーフレーム選択方法。
【請求項4】
前記終了イベントを識別することが、前記フレーム内の前記アクティビティまたは前記動作の終了を表し、前記フレーム内の終了フレームで終了するように前記フレームの前記サブセットを画定する前記フレームから、前記終了フレームを識別することをさらに含む、請求項3に記載のキーフレーム選択方法。
【請求項5】
前記少なくとも一つのキーフレームを選択することが、モデルフレーム内の前記動作の前記アクティビティのために前記フレームの前記サブセットの各々をモデル化することと、前記算出計量を前記最初のモデルフレームから計算することとをさらに含む、請求項4に記載のキーフレーム選択方法。
【請求項6】
前記モデル化することが、カメラによって撮像された領域の画像内のピクセル位置を識別する安定性モジュールを維持することをさらに含み、前記フレームおよび前記フレームのサブセットに表される前記領域、および前記ピクセル位置は、前記領域の動的変化部分を表す、請求項4に記載のキーフレーム選択方法。
【請求項7】
前記維持することが、前記領域のノイズの多い部分を画定する前記安定性モジュールで他のピクセル位置を維持することをさらに含む、請求項6に記載のキーフレーム選択方法。
【請求項8】
前記他のピクセル位置を維持することが、スライド時間窓にわたって撮像された前記ビデオフィードから他のフレームに基づいて、前記安定性モジュールを連続的に更新することをさらに含む、請求項7に記載のキーフレーム選択方法。
【請求項9】
カメラと、プロセッサーと、実行可能な命令を含む非一時的コンピューター可読記憶媒体とを含む装置と、を含み、
前記非一時的コンピューター可読記憶媒体から前記プロセッサーによって実行されたときの前記実行可能な命令は、前記プロセッサーに対して、
少なくとも一つのトリガーイベントに基づいて、領域について前記カメラによって撮像されたビデオフィードからフレームのサブセットを取得し、
前記フレームのサブセットの各々について、少なくとも一つの動作の指標を導出し、
前記対応する少なくとも一つの動作の指標に基づいて、前記フレームのサブセットのそれぞれに対する計量を計算し、
前記フレームのサブセットのそれぞれに関連付けられた前記対応する計量に基づいて、前記フレームのサブセットから少なくとも一つのキーフレームを選択し、
前記フレームのサブセットから判定される最適フレームとして前記少なくとも一つのキーフレームを提供する、
各工程を含むことを特徴とする、コンピュータービジョンを分析するためのキーフレーム選択システム。
【請求項10】
前記プロセッサーによって前記非一時的コンピューター可読記憶媒体から実行された前記実行可能な命令が、前記プロセッサーに、
前記少なくとも一つのキーフレームを、前記フレームのサブセット内に表される少なくとも一つの物体の物体認識または物体追跡のために、コンピュータービジョンアプリケーションまたは機械学習アプリケーションへの入力として提供することを含む、追加の処理を実行させる、請求項9に記載のキーフレーム選択システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータービジョンおよび機械学習アプリケーションにおけるコンピュータービジョンを分析するシステムに関し、特に、コンピュータービジョンを分析するためのキーフレーム選択方法に関する。
【背景技術】
【0002】
コンピュータービジョンおよび機械学習アプリケーションにおいて、キーフレームの選択は、重要な役割を果たす。キーフレーム選択は、ビデオシーケンスの各フレームに対して実行されるのではなく、キータイムで実行するために必要なコンピュータービジョンプロセスの量を低減する方法であり、ビデオシーケンスのフレームから何が必要かを識別または検出するのに、計算上高価である。キーフレームはまた、複雑な機械学習分類およびコンピュータービジョンアルゴリズムが、ビデオフィードのスプリアスの、冗長な、または重要でない部分で不必要に実行されないようにすることによって、正確性を最大化し、誤差を最小化するためにも使用される。
【0003】
さらに、キーフレームは、エンコーダーの状態をリセットできる単純なチェックポイントを作成するために、ビデオ符号化アルゴリズムで使用されることが多い。この方法で選択および使用されるキーフレームは、通常、特定の小さな時間の後で選択される。例えば、“キーフレーム間隔”は、30フレームごとに1キーフレームであり得る。キーフレームはまた、一定数のエラーまたはフレーム間の差異が蓄積され、エンコーダーが「リセットイベント」が必要であると判定したら、ビデオ符号化で選択され得る。
【0004】
ビデオ分析におけるキーフレームの別の使用は、カットシーン検出である。カットシーン検出は、ビデオを分析し、ビデオ編集の「カット」が行われた時を検出するプロセスである。これは、通常、ビデオの内容の急激な変化によって示され、フレーム差分解析またはオプティカルフロー解析によって検出され得る。
【0005】
画像の処理と分類は、コンピュータービジョン技術と機械学習技術において極めて重要であるため、操作するのに適切な画像を選択することは、これらの業界にとって根本的に懸念されるものである。
【発明の概要】
【発明が解決しようとする課題】
【0006】
さまざまな実施形態において、キーフレーム選択および判定のための方法およびシステムを提示する。
【課題を解決するための手段】
【0007】
実施形態によれば、キーフレームの選択および判定のための方法を提示する。例えば、トリガーイベントは判定され、ビデオフィードのトリガーイベントフレームに基づいて取得される。終了イベントは、フレームのサブセットから識別される。フレームのサブセット内のアクティビティまたは動作の最適な表現を表す少なくとも一つのキーフレームは、算出計量に基づいて選択/判定される。少なくとも一つのキーフレームは、フレームのサブセットのアクティビティまたは動作の最適な表現として提供される。
【図面の簡単な説明】
【0008】
【
図1A】本発明の例示的な実施形態による、キーフレームの選択および判定のためのシステムの図である。
【
図1B】本発明の例示的な実施形態による、フレームの一部内のアクティビティを描写する、撮像されたビデオのフレーム例である。
【
図1C】本発明の例示的な実施形態による、
図1Bからのビデオの例示的なフレームのそれぞれ内で検出されたアクティビティの量を反映する掃引アクティビティの図である。
【
図1D】本発明の例示的な実施形態による、
図1Bのビデオの例示的なフレームからのキーフレームの選択を示す図である。
【
図1E】本発明の例示的な実施形態による、
図1Bのビデオの例示的なフレームからの安定性、ノイズ、および動作の領域を示す図である。
【
図1F】本発明の例示的な実施形態による、
図1Dからのキーフレーム内の物体検出および追跡のために分析されたキーフレームの図である。
【
図2】本発明の例示的実施形態による、キーフレーム検出および判定の一方法を示す図である。
【
図3】本発明の例示的実施形態による、キーフレーム検出および判定の別の方法を示す図である。
【発明を実施するための形態】
【0009】
図1Aは、本発明の例示的な実施形態による、キーフレーム選択および判定のためのシステム100の図である。構成要素は、説明する実施形態の理解に関連する構成要素のみを残して大幅に単純化された形態により模式的に表されることが認められるべきである。
【0010】
さらに、さまざまな構成要素(
図1に示される)を説明し、そして構成要素の配置は説明のみを目的として提示する。本明細書中、以下に示すキーフレーム選択および判定の教示から逸脱することなく、より多くの、またはより少ない構成要素の配置が可能であることは認められるべきである。
【0011】
システム100は、一つまたは複数のカメラ110およびサーバー120を含む。
【0012】
カメラ110は、指定された領域(例えば、取引中の取引端末の取引エリアなど、および例としてのみ)のビデオ111を撮像し、ビデオ111は、リアルタイムでサーバー120またはサーバー120からアクセス可能な任意の他のネットワーク位置またはネットワークファイルにストリーミングされる。
【0013】
サーバー120は、プロセッサー121と、非一時的コンピューター可読記憶媒体122とを含む。媒体122は、キーフレーム選択マネジャー123ための実行可能な命令、および任意に消費アプリケーション125を含む。媒体122はまた、キーフレーム選択マネジャー124によって生成され、消費アプリケーション125への入力として提供される、キーフレーム124またはキーフレーム124への参照を含む。
【0014】
本明細書および以下でより完全に図示されるように、システム100は、ビデオ111、またはコンピュータービジョンおよび機械学習アプリケーション(例えば、消費アプリケーション125)用の画像のシーケンスからキーフレームの測定、識別、および選択のための高度な方法を可能にする。キーフレームの検索を開始するための正しい時間または時間のセットを選択するためのいくつかの技術が説明される。いくつかの技術も、そのサブセット内から単一または小さなセットのキーフレームを選択するために使用される主要性能計量を評価するための本明細書に記述される。
【0015】
さらに、システム100は、コンピュータービジョンを使用して、ビデオ111内の“トリガーポイント”を識別し、キーフレーム124の検索を開始および終了する。これらのトリガーポイントが識別されると、他の、追加のコンピュータービジョン技術がサブセットに適用され、完全なビデオ111に示されるように、そのアクティビティ期間を表すために使用できるキーフレーム124またはキーフレーム124の小さなサブセットが見つかる。これらのキーフレーム124は、コンピュータービジョンアプリケーションを含む、さらに消費アプリケーション125において、独立して、またはアクティビティ期間自体の概要表現として使用することができる。
【0016】
キーフレーム選択マネジャー123は、ビデオ111で提供される複数のフレームのそれぞれに対して関心領域を識別するように構成される。関心領域は、カメラ110からの視野全体とすることができ、またはカメラ110の視野内の一部分またはいくつかの部分として定義することができる。さらに、関心領域は、何らかのアクティビティについてキーフレーム選択マネジャー123によって監視される。
【0017】
実施形態および本明細書に記載される継続例では、単純な動作の指標が、アクティビティの計量として使用される。これは、標準フレーム差分技術を使用して達成することができる。これは、計算が容易であり、信頼性のある計量を提供するため、有用である。
【0018】
なお、他の措置も可能であることが認められるべきである。非限定的な例として、そのような計量には、顔認識および検出、色、色の変化、テクスチャ、配向のあるヒストグラム、オプティカルフロー、方向性および非方向性の両方、シルエット/ブロブベースの特徴、深層学習および他のベースの回帰、境界ボックス、分類、重心、および二項分類機能が含まれ、全て、関心領域に出入りするアクティビティの計量として使用できる。
【0019】
別段の記載がない限り、
図1B~1Fで以下に論じられる全ての処理は、キーフレーム選択マネジャー123によって実行される。
【0020】
図1Bは、例示的な実施形態による、フレームの一部内のアクティビティを描写する、撮像されたビデオのフレーム例である。
【0021】
図1Bは、システム100によって撮像されたアクティビティの実施例を示す。図示したアクティビティは、取引端末での取引中にバーコードスキャナ上で商品をスキャンすることに関連するフレームを描写する。端末は、レジ係が顧客精算中に操作するPOS(販売時点情報管理)端末とすることができ、または端末は、セルフ精算中に顧客が操作するセルフサービス端末(SST)とすることができる。
【0022】
アクティビティは動作のない時間から始まる。これは、こうした動作の開始によって定義され、関心領域内で動作が観察されなくなるまで継続する。関心領域は、商品がオペレーター(レジ係または顧客)によって保持され、取引端末の目的のためバーコードスキャナを通過またはスワイプし、商品を識別し、商品の詳細と価格を取得し、取引のための商品リストを更新する、バーコードスキャナの上の領域である。
【0023】
ビデオ111の5つのフレーム(アクティビティまたは動作を示さない開始フレーム130A-1、最初に検出されたモーションフレームまたはアクティビティフレームの開始、130A-2、バーコードスキャナフレームの真上での動作またはアクティビティ130A-3、バーコードスキャナフレームから離れる動作またはアクティビティ130A-4、および動作またはアクティビティが検出されていない最後のフレーム130A-5)が
図1Bに示される。
【0024】
図1Cは、例示的な実施形態による、
図1Bからのビデオの例示的なフレームのそれぞれ内で検出されたアクティビティの量を反映する掃引アクティビティの図である。
【0025】
図1Cは、フレーム130A-1~130A-5で検出されたアクティビティまたは動作をモデリングする目的で、フレーム130A-1~130A-5を130B-1~130B-5に再キャストする、心電図(EKG)スタイルのレンダリングにおけるこうしたアクティビティの記録および追跡を示す。
【0026】
キーフレーム選択マネジャー123は、検出されたアクティビティの計量(度、量、大きさ)を追跡する有効性を高めるために画像処理技術を実施する。例えば、
図1B~1Fでは、動作ぼかしがアクティビティトラッカーに適用されて、フレーム130B-1~130B-5でモデル化されるアクティビティまたは動作に関連付けられた信号を平滑化している。さらに、
図1Cでは、拡張技術が、オペレーターまたはビデオフィード自体の動作の小さな一時的な一時停止によって引き起こされる動作シグネチャの小さな中断が、アクティビティの中断を生じさせないように、動作シグネチャ自体に適用される。
【0027】
アクティビティが終了したと判断すると、アクティビティは関心アクティビティにセグメント化(
図1Cの静止したおよび実線で示されるように)され、キーフレームが選択される。
【0028】
キーフレーム選択マネジャー123によってキーフレームが選択されるいくつかの技術がある。
【0029】
一つの事例では、キーフレームは、関心アクティビティをブラケットするフレームとして選択される。これらのフレームは、アクティビティの最初および/または最後のフレーム、またはアクティビティの直前および過去のフレームのいずれかである。センターフレーム、または関心アクティビティの開始時刻および終了時刻の関数として選択されるフレームも選択され得る。
【0030】
さらに別の事例では、一部の計量は、関心アクティビティ内のフレームに適用することができ、その計量の一部の関数は、キーフレームまたはキーフレームを選択するために使用される。例えば、一実施形態では、領域内の動作の計量は、関心アクティビティの間、フレームごとに計算され、計算された動作の最大量を有するフレームが選択される。この計量に従って選択されたキーフレームの例については、以下1Dを参照のこと。
【0031】
前述のように、他の計量も使用され得る。計量追跡アクティビティがキーフレーム自体と同じスケールで行われる必要はない。そして、実際に、提供された例では、それはそうではない。この例では、アクティビティの測定および追跡は、ビデオの生来の解像度およびフレーム速度、よりも低い解像度および場合により低いフレーム速度、ならびに選択されたキーフレームの解像度で行われる。これは、計算の効率、信頼性、およびシステム100のさまざまな態様が、それらの特定の目的に最適化されたデータ上で動作することを可能にするためである。
【0032】
モデルフレーム130B-1は、オリジナルのフレーム130A-1に対しマッピングされ、黒色の空間の上にある実線は、記録または検出されないアクティビティまたは動作を表す。モデルフレーム130B-2は、オリジナルのフレーム130B-2に対しマッピングされ、実線はフレーム130B-1から下向きにスイープされ、より小さい黒い空間が表される前に、どちらかの側の空白によって分離される。実線のスイープダウン運動は、EKGまたは地震計の記録アクティビティのものと類似している。動作シグネチャは、バーと黒い空間を分離する白い空間で撮像される。動作シグネチャは、ノイズ、ジッタ、およびシーンの中のアクターおよびビデオ録画自体の両方の動作の軽微な中断を考慮に入れて拡張される。例示的なアクティビティは、キーフレーム選択マネジャー123が、モデルフレーム130B-5に図示されるように、中断のない動作の期間が終了していると判断すると終了する。フレーム130B-5の黒い空間の上の破線のより太い線は、キーフレーム選択マネジャー123が、黒い空間内の実線によって表されるアクティビティの始まりと、より太い破線によって表されるアクティビティの終わりとの間でアクティビティをセグメント化したことを示す。モデルフレーム130B-3は、フレーム130A-3に対しマッピングされ、モデルフレーム130B-4は、フレーム130A-4に対しマッピングされる。
【0033】
図1Dは、本発明の例示的な実施形態による、
図1Bのビデオの例示的なフレームからのキーフレームの選択を示す図である。
【0034】
図1Dは、フレーム130A-1~130A-5のための単一のキーフレームとして、キーフレーム選択マネジャー123によるフレーム130A-3の選択を、フレーム130A-1~130A-5の上に示される、キーフレーム130A-3’として示している。
図1Cに示されるように、それは、最大のアクティビティまたは動作を示すフレームであり、フレーム130A-3に対応する、アクティビティモデルフレーム130B-3である。
【0035】
図1Eは、本発明の例示的な実施形態による、
図1Bのビデオの例示的なフレームからの安定性、ノイズ、および動作の領域を示す図である。
【0036】
キーフレーム選択マネジャー123はまた、安定性を示す関心領域内の領域(動作またはアクティビティなし)をフレーム130A-1~130A-5から計算し得る。監視される関心領域内の特定の領域は、絶えずノイズが多く、いくつかの指標を使用してキーフレームまたはキーフレームの小さなサブセットを選択する際に、精度の点で性能が悪いものとなる。領域は、キーフレーム選択マネジャー123によって継続的に監視され、関心領域内に動的安定性領域を生成する。動的安定性領域は、キーフレームを選択するために使用される指標で無視するそれらの領域に沿って、キーフレームまたはキーフレームの小さなサブセットを選択するために使用される指標で考慮するマスクによって定義される。モデルフレーム130A-1-1は、関心領域の領域、または関心、または入力画像を示す。モデルフレーム130A-1-2は、現在のフレームの動作の計量を示す。モデルフレーム130A-1-3は、関心領域内に関連するノイズを示す。モデルフレーム130A-1-4は、フレーム130A-1-3のノイズモデルから計算された安定性マスクを示す。
多くの場合、キーフレームが導出される関心アクティビティを監視される関心領域は、計算されるアクティビティの計量に従ってノイズが多い。例えば、参考になる例では、フレーム差分を介して計算された動作が、アクティビティの計量として使用される。
図4に示すように、これは関心領域におけるノイズの多い計量であり得る。
【0037】
キーフレーム選択マネジャー123は、ノイズのない、従って、アクティビティの計量で使用するのに良い領域である、関心領域内の安定領域を定義することができる。提供される実施形態では、例えば、ノイズの計量は、10-minuteスライド時間窓のコースにわたって低アクティビティ時間中に取得された、個々の画素の信号対ノイズ比に従って計算される。このようにして、各ピクセルにおけるノイズのモデルが維持される。モデルは、関心領域内の安定領域を示すバイナリマスクを連続的に更新するために使用される。キーフレームを選択する際に、アクティビティ計量(指標)が計算されるのは、この領域内のみであり、改善された精度および正確性をもたらす。
【0038】
図1Fは、本発明の例示的な実施形態による、
図1Dからのキーフレーム内の物体検出および追跡のために分析されたキーフレームの図である。
【0039】
図1B~1Eに示される継続的な例に示されるように、システム100の実施形態は、例えば、選択されたキーフレーム130A-3′に関連付けられた画像が商品を示しているかどうか、商品が販売可能な商品であるか個人的な商品であるか、商品がスキャンされたかどうか、またはスキャンした商品が正しい商品であったかどうかを判定するコンピュータービジョンおよび/または機械学習分類アプリケーションを含む消費アプリケーション124を含み得る。このようなキーフレーム画像は、複数の再スキャンの試み、スキャンが困難な商品を識別することによって、品質保証の目的、およびその他の目的にも有用である。
【0040】
図1Fは、キーフレーム130A-3′において、追跡される複数の物体(商品(マーカー)に対する第一の重畳境界ボックス130A-3′-1を表す第一の物体130A-3′-1、および取引端末のオペレーターの手に対する第二の重畳境界ボックス130A-3′-2を表す第二の物体)を示す。再び、キーフレーム130A-3′は、キーフレーム130A-3′を処理し、第一の境界ボックス130A-3′-1を生成し、第二の境界ボックス130A-3′-2を生成するための、コンピュータービジョンおよび/または機械学習アプリケーションへの入力として提供され得る。
【0041】
システム100の別の実施形態では、消費アプリケーション124は、ATMにいる間に顧客の顔を監視する現金自動預払機(ATM)顔認識アプリケーションを含み得る。こうした実施形態では、アクティビティ計量/指標は、顔面認識に基づく。キーフレーム選択マネジャー123は、顔を探して識別し、顔の存在に基づいて関心アクティビティにセグメント化するように構成される。キーフレームは、顔認識分類技法の品質および信頼度計量に基づいて、関心対象のセグメント化されたアクティビティから選択される。
【0042】
システム100のさらに別の実施形態では、消費アプリケーション124は、YOLO(「人生は一度きり」)によって識別された物体の周りに境界ボックスを識別し配置するための、(YOLO)リアルタイム物体認識アプリケーションである。リアルタイム物体認識アプリケーションが、キーフレーム選択マネジャーによって提供されるキーフレームから追跡する物体を識別すると、ビデオ111からの次のフレーム(例えば、次の10フレーム)の構成される量は、次の10フレーム間のオプティカルフローを使用して処理され得る。従って、キーフレーム選択マネジャー123は、ビデオフィードに関連付けられたフレームの初期部分からキーフレームまたはキーフレームの小さなサブセットを識別する。キーフレームは、キーフレーム内の識別された物体の周りに境界ボックスを配置する、リアルタイム物体認識アプリケーションへの入力として提供され、ビデオフィードの次の10フレームは、次の10フレーム内のオプティカルフロー分析を使用して、境界ボックス(関心領域)から識別された物体を追跡する。これにより、物体を識別し、フレーム内の物体の境界ボックスを生成する際のリアルタイム物体認識アプリケーションの精度および正確性が改善され、また、実質的に高速(改善されたプロセッサースループット)かつ正確である、ビデオフィードからの次に構成されるフレーム量におけるオプティカルフロー分析を使用して、物体の動作またはアクティビティを追跡することが可能になる。
【0043】
システム100の一実施形態では、消費アプリケーション124は、物体(人または商品)が監視対象領域に入るか、または去るときの監視に関連するコンピュータービジョンアプリケーションまたは機械学習アルゴリズムを含む。次に、キーフレーム選択マネジャー123が処理されて、ビデオのフレームからキーフレームを選択または判定し、キーフレームは、物体が、期間中、監視領域内の物体のアクティビティを判定し、アクティビティの本質を撮像するために、監視領域内にある、期間中にコンピュータービジョンアプリケーションまたは機械学習アルゴリズムへの入力として提供される。
【0044】
キーフレーム選択マネジャー123は、トリガーされ、任意の構成されるトリガーイベントに基づいて、ビデオフィードから構成されるフレーム数を提供し得る。次いで、キーフレーム選択マネジャー123は、フレームから選択されたまたは判定されたキーフレームを提供し、キーフレームを消費アプリケーション124に提供するが、消費アプリケーション124によって行われるまたは出力される判定の正確性および精度を向上させ、消費アプリケーション124の処理効率を改善する。さらに、オプティカルフロー技術は、次に、消費アプリケーション124または他の追跡ベースのアプリケーションによって、ビデオフィードのフレームの次のセットから任意の所与の物体を追跡するために処理され得る。
【0045】
一実施形態では、システム100のキーフレーム選択技術は、消費アプリケーション124によって使用され、改善された商品認識、改善された人認識、人と商品との間の改善された関係判定(例えば、人が商品を所有している、人が商品を所有していない)、商品間の改善された関係判定(例えば、商品がカートに入れられる、商品がバッグに入れられる、商品がスキャナをバイパスするなど)、人の目の改善された追跡、改善された人の行動の判定(例えば、人が苦しんでいる、人が笑っている、人が怒っている、人が悲しんでいるなど)、改善されたグループアソシエーションの判定(例えば、二人以上が一緒にいる、二人以上が共通の利益のために行動しているなど)、個人または個人のグループの改善されたアクティビティまたはプロセスの判定(例えば、店舗での開店手続き、店舗での閉店手続きなど)、および/またはビデオ分析に依存するその他のコンピュータービジョンまたは機械学習アプリケーションを実行する。
【0046】
一実施形態では、キーフレーム選択マネジャー123は、トリガーイベントに基づいてビデオフィードから選択フレームを取得する。トリガーイベントは、センサー、取引データに基づく取引端末、スキャンされた商品バーコード、装置によって生成されたイベント、周辺機器、および/またはアプリケーション、画像またはビデオフィード内の検出された特徴に基づくコンピュータービジョンアプリケーション、および/または機械学習アプリケーションによって生成される判定、予測、および/または分類によって発生され得る。本明細書および上記で論じたアクティビティおよび動作解析に基づいて、選択フレーム内で検出された終了イベントにより、キーフレーム選択マネジャー123は、選択フレームのサブセットを取得することができる。フレームのサブセットが、キーフレーム選択マネジャー123が、上述したアプローチによってキーフレームまたはキーフレームのサブセットを判定する、ビデオフレームを表す。
【0047】
一実施形態では、キーフレーム選択マネジャー123は、サーバー120以外の装置上で実行される。デバイスは、取引端末(POS端末、SST端末、ATM、またはキオスク)とすることができる。デバイスは、ラップトップ、デスクトップ、電話、タブレット、ウェアラブル処理装置、またはモノのインターネット(IoT)装置とすることができる。
【0048】
上に議論された実施形態および他の実施形態について
図2、3を参照して議論する。
【0049】
図2は、本発明の例示的な実施形態による、キーフレームの選択および判定のための方法200の図である。方法200を実施するソフトウェアモジュールを、「キーフレーム選択マネジャー」という。キーフレーム選択マネジャーはプログラムされた実行可能な命令として実装され、メモリおよび/または非一時的なコンピューターにより読み取り可能な(プロセッサー読み取り可能な)記憶メディアの内部に常駐し、機器の一つまたは複数のプロセッサーにより実行される。キーフレーム選択マネジャーを実行する装置のプロセッサーは、キーフレーム選択マネジャーを処理するように特定的に構成され、プログラムされる。キーフレーム選択マネジャーは、その処理中に一つまたは複数のネットワーク接続へのアクセスを有し得る。ネットワークは有線、無線、または有線と無線の組み合わせであり得る。
【0050】
本発明の一実施形態では、キーフレーム選択マネジャーは、サーバー120上で実行される。一実施形態では、サーバー120は、クラウド処理環境(クラウド)を表す単一のサーバーとして論理的に協働する複数のサーバーのうちの一つである。
【0051】
本発明の一実施形態では、キーフレーム選択マネジャーを実行する装置は、取引端末(POS端末、SST端末、ATM、またはキオスク)である。
【0052】
本発明の一実施形態では、キーフレーム選択マネジャーを実行する装置は、ラップトップ、デスクトップ、電話、タブレット、ウェアラブル処理装置又はIoT装置である。
【0053】
本発明の一実施形態では、キーフレーム選択マネジャーはキーフレーム選択マネジャー123である。
【0054】
210で、キーフレーム選択マネジャーはトリガーイベントを判定する。トリガーイベントは、上述の技術のいずれかに基づいて判定することができる。
【0055】
例えば、211で、キーフレーム選択マネジャーは、センサー、取引端末、スキャナ、コンピュータービジョンアプリケーション、または機械学習アプリケーションによって提供されるデータに基づいてイベントを判定する。
【0056】
220で、キーフレーム選択マネジャーは、トリガーイベントに基づいてビデオフィードのフレームを取得する。
【0057】
211および220の一実施形態では、221で、キーフレーム選択マネジャーは、フレームに関連付けられた生来の解像度を減少させる。
【0058】
230で、キーフレーム選択マネジャーは、フレームのサブセットから検出された終了イベントまたは終了状態を識別する。
【0059】
221および230の一実施形態では、231で、キーフレーム選択マネジャーは、フレーム内のアクティビティまたは動作の終了を表し、フレーム内の終了フレームで終了するようにフレームのサブセットを画定するフレームから、終了フレームを識別する。
【0060】
210~230の一実施形態では、キーフレーム選択マネジャーは、第一のコンピュータービジョン分類に基づいて計算されるトリガーイベントに基づいて、フレームのサブセットを選択する。そして、キーフレーム選択マネジャーは、次に、第二のコンピュータービジョン分類を、第一のコンピュータービジョン分類に依存する後続のフレームに適用し、第一のコンピュータービジョン分類は、第二のコンピュータービジョン分類よりも速く処理する。
【0061】
240で、キーフレーム選択マネジャーは、算出計量に基づいて、フレームのサブセット内のアクティビティまたは動作の最適な表現として、少なくとも一つのキーフレームを選択する。
【0062】
231および240の一実施形態では、241で、キーフレーム選択マネジャーは、モデルフレーム内の動作のアクティビティのためにフレームのサブセットの各々をモデル化し、最初のモデルフレームから算出計量を計算する。
【0063】
231および240の一実施形態では、242で、キーフレーム選択マネジャーは、カメラによって領域を撮像された画像内のピクセル位置を識別する安定性モジュールを維持し、フレームおよびフレームのサブセットに表される領域、およびピクセル位置は、領域の動的変化部分を表す。
【0064】
242の一実施形態では、243で、キーフレーム選択マネジャーは、安定性モジュールで領域のノイズの多い部分を画定する他のピクセル位置を維持する。
【0065】
243の一実施形態および244では、キーフレーム選択マネジャーは、スライディング窓の時間にわたって撮像されたビデオフィードからの他のフレームに基づいて、安定性モジュールを連続的に更新する。
【0066】
244の一実施形態および245では、キーフレーム選択マネジャーは、フレームのサブセットから対応するフレームに関連付けられたピクセル位置を使用して、フレームのそれぞれのサブセットに対して算出計量を計算する一方で、フレームのサブセットから対応するフレームに関連付けられた他のピクセル位置を無視する。
【0067】
本発明の一実施形態では、246で、キーフレーム選択マネジャーは、フレームのサブセットの各々に対する動作の程度として、算出計量を計算する。
【0068】
246の一実施形態および247では、キーフレーム選択マネジャーは、動作の最大程度に基づいて、少なくとも一つのキーフレームを選択する。
【0069】
本発明の一実施形態では、248で、キーフレーム選択マネジャーは、フレームのそれぞれのサブセット内に画定される関心領域から算出計量を計算する。
【0070】
248の一実施形態および249では、キーフレーム選択マネジャーは、少なくとも一つのキーフレーム内に表される少なくとも一つの物体の物体認識のために、コンピュータービジョンまたは機械学習アプリケーションに対して、関心領域の少なくとも一つのキーフレームを提供する。
【0071】
250で、キーフレーム選択マネジャーは、フレームのサブセットのアクティビティまたは動作の最適な表現として、少なくとも一つのキーフレームを提供する。
【0072】
250の一実施形態では、キーフレーム選択マネジャーは、ビデオフィードからストリームされるフレームからのキーフレームを、構成されるトリガーイベントまたはイベントのセットに基づいて第一のコンピュータービジョン分類アプリケーションへ連続的に提供し(210に戻り繰り返す)、第一のコンピュータービジョン分類アプリケーションは、第一の分類を、提供されるキーフレームに割り当て、その後、ビデオフィードからの後続のフレームを第二のコンピュータービジョン分類アプリケーションに渡す。第二のコンピュータービジョン分類アプリケーションは、第二の分類を後続するフレームに割り当てる。第二のコンピュータービジョン分類アプリケーションは、第一のコンピュータービジョン分類アプリケーションよりも高速で処理される。一実施形態では、第一のコンピュータービジョン分類アプリケーションは、YOLO物体認識アプリケーションであり、第二のコンピュータービジョン分類アプリケーションは、後続のフレームにおいて、YOLO物体認識アプリケーションによって提供される境界ボックスの動きを追跡するオプティカルフロー分析アプリケーションである。一実施形態では、第一および第二のコンピュータービジョンアプリケーションは、任意のコンピュータービジョンおよび/または機械学習アプリケーションであり得る。一実施形態では、検出された品質指標に基づいて、第二のコンピュータービジョン分類アプリケーションによって実行される追跡/分類を、例えば、後続のフレームが10フレームの場合、第五のフレームの品質指標により、後続のフレームで検出された品質が一つまたは複数の構成済み指標しきい値を下回った場合に、追跡を改善する目的で、キーフレーム判定のために第六のフレームがキーフレーム選択マネジャーに戻されることができるように、短くすることができる。
【0073】
図3は、例示的な実施形態による、キーフレームの選択および判定のための方法300の図である。方法300を実施するソフトウェアモジュールを「キーフレーム判定マネジャー」という。キーフレーム判定マネジャーはプログラムされた実行可能な命令として実装され、メモリおよび/または非一時的なコンピューター可読(プロセッサー可読)記憶媒体の内部に常駐し、機器の一つまたは複数のプロセッサーにより実行される。キーフレーム判定マネジャーを実行する装置のプロセッサーは、キーフレーム判定マネジャーを処理するように特定的に構成され、プログラムされる。キーフレーム判定マネジャーは、その処理中に一つまたは複数のネットワーク接続へのアクセスを有し得る。ネットワークは有線、無線、または有線と無線の組み合わせであり得る。
【0074】
一実施形態では、キーフレーム判定マネジャーを実行する装置はサーバー120である。一実施形態では、サーバー120は、クラウド処理環境に関連付けられた単一のサーバーとして協働し、論理的に存在する複数のサーバーのうちの一つである。
【0075】
一実施形態では、キーフレーム判定マネジャーを実行する装置は、取引端末(POS端末、SST、ATM、またはキオスク)である。
【0076】
一実施形態では、キーフレーム判定マネジャーを実行する装置は、ラップトップ、デスクトップ、電話、タブレット、ウェアラブル処理装置、またはIoT装置である。
【0077】
一実施形態では、キーフレーム判定マネジャーは、キーフレーム選択マネジャー123および/または方法200の全て、または一部の組み合わせである。
【0078】
キーフレーム判定マネジャーは、別の、いくつかの点で、方法200について上述したものの改良された処理の視点を表す。
【0079】
310で、キーフレーム判定マネジャーは、トリガーイベントに基づいて、ビデオフィードからフレームのサブセットを選択する。
【0080】
一実施形態では、311で、キーフレーム判定マネジャーは、フレームのサブセットと関連付けられ、およびフレームのサブセットと関連付けられていないビデオフィードのフレームからの動的変化部分およびノイズの多い部分について領域の安定性モジュールを維持する。
【0081】
320で、キーフレーム判定マネジャーは、フレームのサブセットの各々について、少なくとも一つの指標に基づいて算出計量を計算する。
【0082】
311および320の一実施形態では、321で、キーフレーム判定マネジャーは、フレームのそれぞれのサブセットで表される動的変化部分に関連付けられたピクセル値を使用して、対応する算出計量を計算する。
【0083】
一実施形態では、322で、キーフレーム判定マネジャー部は、対応する少なくとも一つの指標について、フレームのサブセットの各々をモデル化する。
【0084】
一実施形態では、323で、キーフレーム判定マネジャー部は、フレームのサブセットのそれぞれのための少なくとも一つの指標を、フレームのサブセットの対応するフレームにおいて表される動作の程度として取得する。
【0085】
330で、キーフレーム判定マネジャー部は、対応する少なくとも一つの指標を使用して、対応する算出計量に基づいて、フレームのサブセットから少なくとも一つのキーフレームを判定する。
【0086】
340で、キーフレーム判定マネジャー部は、カメラによって撮像され、フレームのサブセット内で表される領域を監視するコンピュータービジョンアプリケーションまたは機械学習アプリケーションへの入力として、フレームのサブセットの代わりに、少なくとも一つのキーフレームを提供する。
【0087】
ソフトウエアが特定の形態(構成要素またはモジュールなど)で説明される場合、それは単に理解を助けるためであり、それらの機能を実施するソフトウエアがどのように設計されるか、あるいはどのような構造であるかを限定するものではないことが理解されるべきである。例えば、モジュールは別個のモジュールとして説明されるが、同種のコードとして、個別の構成要素として実施されてもよく、またこうしたモジュールの全体でなく一部を組み合わせてもよく、その他の任意の都合の良い方法で構造化されたソフトウエア内で機能が実施され得る。
【0088】
さらに、ソフトウェアモジュールは、一つのハードウエア上で実行されるものとして説明されるが、ソフトウエアは、複数のプロセッサーにまたがる、またはその他の任意の都合の良い方法で分布され得る。
【0089】
上述の説明は、例証的なものであって制限的なものではない。当業者には、上述の説明を検討することにより、その他の数多くの実施形態が明らかとなるであろう。従って、実施形態の範囲は、これらの請求項が権利を持つ均等物の完全な範囲とともに、添付の請求項を参照して、判定されるべきである。
【0090】
上述した本発明の実施形態においては、本発明の開示を合理化する目的でさまざまな特徴が単一の実施形態でひとまとめにされる。この開示方法は、請求された実施形態が、各請求項で明示的に詳述されるものよりも多くの特徴を有することを反映するとは解釈されない。むしろ、下記の請求項で反映されるとおり、発明の主題は、単一の開示された実施形態の全ての特徴よりも少ない。従って、以下の特許請求の範囲は、本明細書に実施形態の明細書に組み込まれるが、各特許請求の範囲は別個の例示的な実施形態としてそれ自体で存在する。