(57)【要約】ビデオ異常検出のためのシステムは、シーンの入力ビデオを受け入れるように構成された入力インターフェースとメモリとを備える。メモリは、シーン内の正常な動きをキャプチャするシーンのトレーニングビデオのトレーニングビデオパッチを記憶し、２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークを記憶するように構成される。本システムは、入力ビデオを入力ビデオパッチに分割し、ニューラルネットワークを用いて、各入力ビデオパッチを、メモリから索出された対応するトレーニングビデオパッチと比較して、各入力ビデオが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断し、少なくとも１つの入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言するように構成された、プロセッサも備える。
2021533506.tif 000002
【特許請求の範囲】
【請求項１】
ビデオ異常検出のためのシステムであって、
シーンの入力ビデオを受け入れるように構成された入力インターフェースと、
メモリであって、
前記シーン内の正常な動きをキャプチャする前記シーンのトレーニングビデオのトレーニングビデオパッチを記憶し、
２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークを記憶する、
ように構成された、メモリと、
プロセッサであって、
前記入力ビデオを入力ビデオパッチに分割し、
前記ニューラルネットワークを用いて、各前記入力ビデオパッチを、前記メモリから索出された対応するトレーニングビデオパッチと比較して、各前記入力ビデオパッチが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断し、
少なくとも１つの前記入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言する、
ように構成された、プロセッサと、
を備える、システム。
【請求項２】
前記ニューラルネットワークを用いて比較されるいずれの２つのトレーニングビデオパッチも非類似である、請求項１に記載のシステム。
【請求項３】
前記トレーニングビデオパッチ及び前記入力ビデオパッチのそれぞれは、各ビデオフレーム内の時空間パッチの領域を定義する空間次元と、前記時空間パッチを形成するビデオフレームの数を定義する時間次元とによって空間及び時間において定義される前記時空間パッチであり、同じ領域のトレーニングビデオパッチ及び入力ビデオパッチは、互いに対応する、請求項１に記載のシステム。
【請求項４】
前記トレーニングビデオパッチ及び前記入力ビデオパッチのそれぞれは、特徴抽出ニューラルネットワークによって前記トレーニングビデオ及び前記入力ビデオから抽出された特徴ベクトルによって表される、請求項３に記載のシステム。
【請求項５】
前記トレーニングビデオパッチ及び前記入力ビデオパッチのそれぞれは、異なる時空間パッチから特徴ベクトルを抽出し、抽出された特徴ベクトルを比較して前記異なる時空間パッチの前記入力ビデオパッチを類似又は非類似と宣言するようにトレーニングされた前記ニューラルネットワークによって前記トレーニングビデオ及び前記入力ビデオから抽出された前記特徴ベクトルによって表される、請求項３に記載のシステム。
【請求項６】
前記プロセッサは、前記ビデオ異常検出に応答して、制御アクションを実行するように構成される、請求項１に記載のシステム。
【請求項７】
前記トレーニングビデオパッチを決定する前記プロセッサは、
前記トレーニングビデオをビデオパッチのセットに分割し、各前記ビデオパッチは、各ビデオフレーム内の時空間パッチの領域を定義する空間次元と、前記時空間パッチを形成するビデオフレームの数を定義する時間領域とによって空間及び時間において定義された前記時空間パッチであり、前記ビデオパッチの複数のセットのうちの１つのセット内のビデオパッチは、同じ領域に対応し、
各セット内の全てのビデオパッチを互いに比較して、各セット内の類似及び非類似のビデオパッチを決定し、
ビデオパッチの各セットからビデオパッチを除去して、前記トレーニングビデオパッチを形成し、全ての残りのビデオパッチが互いに非類似であるとともに、各除去されたビデオパッチが少なくとも１つの残りのビデオパッチに類似であるようにする、
ように構成される、請求項１に記載のシステム。
【請求項８】
ビデオ異常検出のための方法であって、前記方法は、前記方法を実施する記憶された命令と結合されたプロセッサを使用し、前記命令は、前記プロセッサによって実行されると、前記方法のステップを実行し、前記ステップは、
シーンの入力ビデオを受け入れるステップと、
前記シーン内の正常な動きをキャプチャする前記シーンのトレーニングビデオのトレーニングビデオパッチをメモリから索出するステップと、
２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークを前記メモリから索出するステップと、
前記入力ビデオを入力ビデオパッチに分割するステップと、
前記ニューラルネットワークを用いて、各前記入力ビデオパッチを、前記メモリから索出された対応するトレーニングビデオパッチと比較して、各前記入力ビデオパッチが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断するステップと、
少なくとも１つの前記入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言するステップと、
を含む、方法。
【請求項９】
前記ニューラルネットワークを用いて比較されるいずれの２つのトレーニングビデオパッチも非類似である、請求項８に記載の方法。
【請求項１０】
前記トレーニングビデオパッチ及び前記入力ビデオパッチのそれぞれは、各ビデオフレーム内の時空間パッチの領域を定義する空間次元と、前記時空間パッチを形成するビデオフレームの数を定義する時間次元とによって空間及び時間において定義される前記時空間パッチであり、同じ領域のトレーニングビデオパッチ及び入力ビデオパッチは、互いに対応する、請求項８に記載の方法。
【請求項１１】
前記トレーニングビデオパッチ及び前記入力ビデオパッチのそれぞれは、特徴抽出ニューラルネットワークによって前記トレーニングビデオ及び前記入力ビデオから抽出された特徴ベクトルによって表される、請求項１０に記載の方法。
【請求項１２】
前記トレーニングビデオパッチ及び前記入力ビデオパッチのそれぞれは、異なる時空間パッチから特徴ベクトルを抽出し、抽出された特徴ベクトルを比較して前記異なる時空間パッチの前記入力ビデオパッチを類似又は非類似と宣言するようにトレーニングされた前記ニューラルネットワークによって前記トレーニングビデオ及び前記入力ビデオから抽出された前記特徴ベクトルによって表される、請求項１０に記載の方法。
【請求項１３】
前記ビデオ異常検出に応答して、制御アクションを実行すること、
を更に含む、請求項８に記載の方法。
【請求項１４】
方法を実行するプロセッサによって実行可能なプログラムが具現化された非一時的コンピュータ可読記憶媒体であって、前記方法は、
シーンの入力ビデオを受け入れることと、
前記シーン内の正常な動きをキャプチャする前記シーンのトレーニングビデオのトレーニングビデオパッチを索出することと、
２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークを索出することと、
前記入力ビデオを入力ビデオパッチに分割することと、
前記ニューラルネットワークを用いて、各前記入力ビデオパッチを、メモリから索出された対応するトレーニングビデオパッチと比較して、各前記入力ビデオパッチが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断することと、
少なくとも１つの前記入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言することと、
を含む、非一時的コンピュータ可読記憶媒体。
【請求項１５】
前記ニューラルネットワークを用いて比較されるいずれの２つのトレーニングビデオパッチも非類似である、請求項１４に記載の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、包括的には、コンピュータビジョンに関し、より詳細には、ビデオにおける動きの異常を検出することに関する。
【背景技術】
【０００２】
閉回路テレビ（ＣＣＴＶ）は、セキュリティ、輸送及び他の目的で広く用いられる。用途の例としては、公共の広場又は建物（病院及び学校等）における犯罪又は破壊行為の監視、禁止区域への侵入の監視、道路交通の自由な流れのモニタリング、交通事故及び行列の検出、一方通行の道路において逆走している車両の検出がある。
【０００３】
（人間が）ＣＣＴＶディスプレイを監視することは非常に労力を要する作業であり、関心のある事象に気づかないリスクがある。これは、オペレータが複数のＣＣＴＶカメラ出力を同時にモニタリングする必要があるときには、特に当てはまる。結果として、多くのＣＣＴＶを設置する上において、ビデオデータに記録され、事象が発生したことがわかった場合にのみ詳細に調査することになる。この場合であっても、記録データ量が大きく、データを手作業によって調査することは労力を要する場合がある。結果として、自動デバイスがビデオ画像を処理して、関心のある事象が存在するときに、事象を検出することが必要とされている。そのような検出を、本明細書においてはビデオ異常検出と呼ぶ。これを用いて事象をオペレータに迅速に注目させ、記録されたビデオにインデックスマークを付け、及び／又はＣＣＴＶデータの選択的な記録をトリガーすることができる。
【０００４】
ビデオ異常検出の問題は、同じシーンの正常な（トレーニング）ビデオにおいて見られる動きとは異なる、ビデオにおける一部の動きを自動的に検出することである。例えば、人物が歩道を歩いている街路シーンのビデオであるとする。検出されるべき異常である動きは、争っている人物又はフェンスを乗り越えている人物である。
【０００５】
コンピュータビジョンの文献には、ビデオ異常検出問題への様々な手法が公開されている。非特許文献１の論文が代表例である１つのクラスの手法では、畳み込みニューラルネットワーク自己符号化器を用いてトレーニングビデオにおいて生じる通常の外観及び動きを学習する。自己符号化器は、トレーニングビデオの典型的なウィンドウを再構成するように学習する。異常を検出するために、自己符号化器を用いて、試験ビデオのウィンドウを再構成する。再構成誤差が大きいフレームは異常を含むとフラグが立てられる。この方法の主な欠点は、トレーニングビデオ内で生じる稀であるが正常な動きが十分モデル化されず、この結果、試験ビデオにおける多くの偽陽性異常検出が生じることである。
【０００６】
非特許文献２の論文が代表例である別のクラスの手法は、トレーニングビデオの特徴ベクトルから入力ビデオの一部から計算された特徴ベクトルを再構成することに基づく。しかしながら、このクラスの手法は、誤りを生じがちであり、計算コストが高く、また、トレーニングビデオにおいて生じる稀であるが正常な動きを見逃す可能性がある。
【０００７】
ビデオ異常検出に対する第３のクラスの手法では、ビデオの特徴の確率分布をモデル化する。非特許文献３は、この手法の例である。しかしながら、この手法も、トレーニングビデオにおいて生じる稀であるが正常な動きを見逃す可能性がある。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Hasan他「Learning Temporal Regularity in Video Sequences」（CVPR 2016）。
【非特許文献２】C. Lu他「Abnormal Event Detection at 150 FPS in MATLAB」（ICCV 2013）。
【非特許文献３】Kratz及びNishino「Anomaly Detection in Extremely Crowded Scenes Using Spatio-Temporal Motion Pattern Models」（CVPR 2009）。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
したがって、シーン内の稀であるが正常な動きと、非正常な動きとを区別することが可能な、入力ビデオにおける動きの異常を検出するシステム及び方法が依然として必要とされている。
【課題を解決するための手段】
【００１０】
いくつかの実施の形態の目的は、シーン内の非正常な動きを自動的に検出するために、固定された静的カメラによって取得されたシーンの入力ビデオを分析することである。監視の関心対象である典型的なシーンは、そのシーンについて正常であるとみなされる、それには、事実上無制限の数の動きの変形を含む可能性がある。そのため、シーンから取得されたビデオを、シーンの正常な動きの可能な変形すべてと比較してビデオ内の異常を検出することは実現困難である。複数の異常検出方法は、これを問題ではなく、動かすことのできない事実（fact of life）とみなす。そのため、様々な異常検出方法ではシーン内の正常な動きの集約を考案し、この集約を異常検出において用いることを目的とする。しかしながら、動きの集約を計算することはコストが高い可能性があるか、動きの集約はシーン内の稀であるが正常な動きを認識し損なう可能性があるか、又はその両方である。
【００１１】
いくつかの実施の形態の目的は、異常検出のために、入力ビデオにおける動きと、トレーニングビデオにおける動きとの直接比較を用いることである。そのような直接比較、例えばユークリッド距離に基づく比較は、計算効率がよく、稀な正常な動きであっても検討することができる。例えば、街道における通常の正常な動きが歩行である場合、集約に基づく方法は、歩行と転倒とを区別することができる。しかしながら、正常な動きが、人物が靴紐を結ぶ動きを含む場合、集約に基づく方法は、トレーニングビデオにおいて靴紐を結ぶ動きが時々存在する場合であっても、この動きを異常とみなす。対照的に、直接距離計算方法は、この靴紐を結ぶ動きを、そのような動きがトレーニングビデオ内に存在する場合、正常と認識することができる。
【００１２】
いくつかの実施の形態は、人工ニューラルネットワーク等の人工知能の進展が、異常検出のための、入力ビデオ内の動きとトレーニングビデオ内の動きとの間の直接比較の計算要件を簡略化することができるという認識に基づく。人工ニューラルネットワーク（ＡＮＮ）又はコネクショニストシステム（connectionist systems）は、動物の脳を構成する生物学的ニューラルネットワーク（biological neural networks）に漠然と着想を得たコンピューティングシステムである。ニューラルネットワークシステムは、複雑なデータ入力を処理することができる。そのようなシステムは、一般に一切のタスク固有の規則をプログラミングされることなく、例を検討することによってタスクを実行することを「学習する」。そのため、自動異常検出のための入力ビデオ内の動きとトレーニングビデオ内の動きとの直接比較のためにそのようなニューラルネットワークに基づくシステムを提供することは魅力的である。理論上、そのようなトレーニングされたニューラルネットワークは、例えば閉回路テレビ（ＣＣＴＶ）システムに適した実用的な計算要件及びメモリ要件を有する動きの直接比較に適した異常検出器を提供することができる。
【００１３】
そのため、ビデオ内の異常を検出する１つの手法は、例から分類器をトレーニングして、ビデオの各部分を正常又は非正常と分類することである。これを行うためには、分類器を、正常な動き及び非正常な動きを既述するビデオを用いてトレーニングしなければならない。しかしながら、正常な動きのビデオは、一般的には容易に入手可能である一方で、非正常な動きのビデオは、一般的には入手可能でない。正常な例のみのデータを有することによって、分類器をトレーニングすることはできない。なぜならば、分類器は、自身が見たことがないクラスを学習することはできないためである。その上、いくつかの実施の形態は、全て非常に稀にしか発生せず、それゆえ収集するのが非常に困難であるとともに高価であり、非正常な動きには多数のバリエーションが存在するという認識に基づく。分類器をトレーニングするのに十分な非正常な動きのバリエーションのサブセットのみであっても、これを有するビデオをキャプチャする試みはすべて非生産的である。
【００１４】
いくつかの実施の形態は、正常なビデオは、容易に収集され、正常な動きをキャプチャするビデオを完全なものとみなすことができるという認識に基づく。これは、トレーニングビデオ内の動きバリエーションが、正常な動きの異なるタイプを表すのみではなく、正常な動き自体も表すことを意味する。そのようにして、トレーニングビデオ内に存在する動きバリエーションは、正常とみなすことができ、一方、トレーニングビデオに存在しないバリエーションは、非正常とみなすことができる。
【００１５】
この理解を踏まえて、いくつかの実施の形態は、非正常な動き対正常な動きを分類するのではなく、シーンのビデオのビデオパッチを比較するのにニューラルネットワークをトレーニング及び／又は使用する。ビデオパッチは、ビデオの時空間領域内に含まれるピクセルの全てを含む。そのようにして、ビデオパッチを正常又は非正常と分類するために１つのビデオパッチをニューラルネットワークに提供する代わりに、実施の形態は、比較するために２つのビデオパッチをニューラルネットワークにサブミットする。或るビデオパッチが正常な動きのデータベースからのものであり、別のビデオパッチは、正常又は非正常と分類されることが必要である入力ビデオからのものである。正常な動きのデータベースに存在しない入力ビデオパッチは、非正常な動きを表す。そのようにして、いくつかの実施の形態は、ビデオパッチを正常又は非正常と分類するようにトレーニングせず、２つのビデオパッチを類似（similar）又は非類似（dissimilar）と分類するようにトレーニングされた分類器に基づく非正常な及び正常な動きのための検出器を提供する。類似／非類似分類器をトレーニングすることは、異常を含む動きの例を必要としない。
【００１６】
いくつかの実施の形態は、正常な動きのデータベースを改善するのにニューラルネットワーク自体を更に用いることができるという別の理解に基づく。具体的には、いくつかの実施の形態では、正常な動きのデータベースは、独自のビデオパッチのみを含む。すなわち、ニューラルネットワークを用いて比較されるいずれの２つのトレーニングビデオパッチも非類似である。そのため、いくつかの実施の形態では、正常な動きのデータベースからビデオパッチを除去し、全ての残りのビデオパッチが互いに非類似であるとともに、除去されたビデオパッチのそれぞれが残りのビデオパッチの少なくとも１つに類似であるようにする。そのようにして、正常動きのデータベースを記憶するメモリ要件を、異常検出の精度を低下させることなく削減することができる。
【００１７】
加えて、いくつかの実施の形態は、比較されることになるビデオから特徴を抽出する方法も、ニューラルネットワークによって実行することができるという理解に基づく。加えて、又は代替的に、いくつかの実施の形態は、比較のために有利であるビデオフレームから特徴を抽出するために、ビデオパッチを比較するようにトレーニングされた同じニューラルネットワークを用いる。そのようにして、このニューラルネットワークは、特徴抽出及び特徴比較の双方についてエンドツーエンド方式でトレーニングすることができ、それにより、ビデオ比較の精度を高めることができる。
【００１８】
したがって、１つの実施の形態は、ビデオ異常検出のためのシステムを開示する。本システムは、シーンの入力ビデオを受け入れるように構成された入力インターフェースと、メモリであって、前記シーン内の正常な動きをキャプチャするシーンのトレーニングビデオのトレーニングビデオパッチを記憶し、２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークを記憶するように構成された、メモリと、プロセッサであって、入力ビデオを入力ビデオパッチに分割し、ニューラルネットワークを用いて、各入力ビデオパッチを、メモリから索出された対応するトレーニングビデオパッチと比較して、各入力ビデオパッチが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断し、少なくとも１つの入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言するように構成された、プロセッサとを備える。
【００１９】
別の実施の形態は、ビデオ異常検出のための方法を開示する。方法は、方法を実施するように記憶された命令と結合されたプロセッサを使用する。命令は、プロセッサによって実行されると、方法のステップを実行する。ステップは、シーンの入力ビデオを受け入れるステップと、シーン内の正常な動きをキャプチャするシーンのトレーニングビデオのトレーニングビデオパッチをメモリから索出するステップと、２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークをメモリから索出するステップと、入力ビデオを入力ビデオパッチに分割するステップと、ニューラルネットワークを用いて、各入力ビデオパッチを、メモリから索出された対応するトレーニングビデオパッチと比較して、各入力ビデオパッチが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断するステップと、少なくとも１つの入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言するステップとを含む。
【００２０】
更に別の実施の形態は、方法を実行するプロセッサによって実行可能なプログラムが具現化された非一時的コンピュータ可読記憶媒体を開示する。方法は、シーンの入力ビデオを受け入れることと、シーン内の正常な動きをキャプチャするシーンのトレーニングビデオのトレーニングビデオパッチを索出することと、２つのビデオパッチを比較して、比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークを索出することと、入力ビデオを入力ビデオパッチに分割することと、ニューラルネットワークを用いて、各入力ビデオパッチを、メモリから索出された対応するトレーニングビデオパッチと比較して、各入力ビデオパッチが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断することと、少なくとも１つの入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常を宣言することとを含む。
【図面の簡単な説明】
【００２１】
【図１】いくつかの実施形態によるビデオ内の異常を検出する画像処理システムのブロック図である。
【図２】いくつかの実施形態による、ビデオのフレームを時空間パッチのセットに分割する一例を示す図である。
【図３】いくつかの実施形態による異常検出のための方法のフローチャートである。
【図４】１つの実施形態による、シーンの正常なビデオの時空間領域から抽出された正常なビデオパッチである典型例のセットを準備する方法のフローチャートである。
【図５】１つの実施形態による、トレーニングビデオパッチを記憶する例示の概略図である。
【図６】いくつかの実施形態によって用いられるシャムニューラルネットワーク（siamese neural network）のアーキテクチャの一例を示す図である。
【図７】試験ビデオパッチに最も近い典型例を発見するためにいくつかの実施形態によって用いられる最近傍探索方法の概略図である。
【発明を実施するための形態】
【００２２】
図１は、いくつかの実施形態による、固定された静的カメラによって録画されたビデオ内の異常を検出する画像処理システム１００のブロック図を示す。画像処理システム１００は、記憶された命令を実行するように構成されたプロセッサ１２０と、このプロセッサによって実行可能な命令を記憶するメモリ１４０とを備える。プロセッサ１２０は、シングルコアプロセッサ、マルチコアプロセッサ、コンピューティングクラスター、又は任意の数の他の構成とすることができる。メモリ１４０は、ランダムアクセスメモリ（ＲＡＭ：random access memory）、リードオンリーメモリ（ＲＯＭ：read only memory）、フラッシュメモリ、又は他の任意の適したメモリシステムを含むことができる。プロセッサ１２０は、バス１０６を通じて１つ以上の入出力デバイスに接続される。これらの命令は、ビデオシーケンス内の異常を検出する方法を実施する。
【００２３】
様々な実施形態において、異常検出は、各ビデオフレーム内の任意の異常のロケーション及びサイズを示すバウンディングボックスのセットを生成する。画像処理システム１００は、２つのビデオパッチを比較して、これらの比較されたビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワーク１３５を用いて、ビデオ内の異常を検出するように構成される。ニューラルネットワーク１３５を用いて、画像処理システム１００は、シーンの入力ビデオのビデオパッチを、同じシーンのトレーニングビデオのビデオパッチと比較して、入力ビデオのパッチがトレーニングビデオ内の全てのパッチ又は対応するパッチに非類似である場合、異常を宣言する異常検出器を実装する。例えば、記憶デバイス１３０は、トレーニング及び／又は入力ビデオフレームの異なる部分から抽出されたビデオパッチのセットを記憶するように適合することができる。記憶デバイス１３０は、ハードドライブ、光ドライブ、サムドライブ、ドライブのアレイ、又はそれらの任意の組み合わせを用いて実施することができる。
【００２４】
いくつかの実施態様では、画像処理システム１００内のヒューマンマシンインターフェース１１０が、システムをキーボード１１１及びポインティングデバイス１１２に接続する。ポインティングデバイス１１２は、とりわけ、マウス、トラックボール、タッチパッド、ジョイスティック、ポインティングスティック、スタイラス、又はタッチ画面を含むことができる。画像処理システム１００は、画像処理システム１００をディスプレイデバイス１６５に接続するように適合されたディスプレイインターフェース１６０に、バス１０６を通じて連結することができる。ディスプレイデバイス１６５は、とりわけ、コンピュータモニタ、カメラ、テレビ、プロジェクタ、又はモバイルデバイスを含むことができる。
【００２５】
画像処理システム１００は、システムを撮像デバイス１７５に接続するように適合された撮像インターフェース１７０にも接続することができる。１つの実施形態では、異常検出器の処理対象の入力ビデオフレームは、撮像デバイスから受信される。撮像デバイス１７５は、ビデオカメラ、コンピュータ、モバイルデバイス、ウェブカム、又はそれらの任意の組み合わせを含むことができる。
【００２６】
いくつかの実施形態では、画像処理システム１００は、異常検出の結果に基づいて動作することができるアプリケーションデバイス１８５に画像処理システム１００を接続するように適合されたアプリケーションインターフェース１８０に、バス１０６を通じて接続される。例えば、デバイス１８５は、検出された異常のロケーションを用いて、セキュリティガードに更に調査するように警告する監視システムである。
【００２７】
ネットワークインターフェースコントローラ１５０は、画像処理システム１００を、バス１０６を通じてネットワーク１９０に接続するように適合されている。ネットワーク１９０を通じて、ビデオフレーム１９５、例えばビデオ１３３の正常又はトレーニングパッチ及び／又はビデオ１３１の入力又は試験パッチのフレームを、記憶及び／又は更なる処理のためにダウンロードしてコンピュータの記憶システム１３０内に記憶することができる。いくつかの実施形態では、ビデオのトレーニング及び入力パッチは、対応するパッチから抽出された特徴のセットとして記憶される。そのようにして、記憶要件を削減することができると同時に、ビデオの後続の処理が改善される。
【００２８】
図２は、ビデオ２１０のフレームを時空間パッチ２３０のセットに分割する（２２０）一例を示している。各時空間パッチ、例えば、パッチ２５１は、各ビデオフレーム内の時空間パッチの領域を定義する空間次元２５０と、時空間パッチを形成するビデオフレームの数を定義する時間次元２４０とによって空間及び時間において定義される。ビデオ２１０は、入力ビデオ１３１及び／又はトレーニングビデオ１３３とすることができる。本明細書においては、同じ領域のトレーニングビデオパッチ及び入力ビデオパッチは、互いに対応する。
【００２９】
種々の実施形態が、シーンのビデオの異なる時空間分割を用いて、ビデオパッチを定義することができる。しかしながら、種々の実施態様において、入力ビデオの時空間分割は、トレーニングビデオの時空間分割と同一であり、比較を能率化する。ビデオをパッチに分割すること及びパッチから特徴を抽出することにより、異常検出が簡略化される。
【００３０】
いくつかの実施形態の目的は、異常検出のために、入力ビデオにおける動きと、トレーニングビデオにおける動きとの直接比較を用いることである。そのような直接比較、例えばユークリッド距離に基づく比較は、計算効率がよく、稀な正常な動きであっても検討することができる。例えば、街道における通常の正常な動きが歩行である場合、集約に基づく方法は、歩行と転倒とを区別することができる。しかしながら、正常な動きが、人物が靴紐を結ぶ動きを含む場合、集約に基づく方法は、トレーニングビデオにおいて靴紐を結ぶ動きが時々存在する場合であっても、この動きを異常とみなす。対照的に、直接距離計算方法は、この靴紐を結ぶ動きを、そのようなタイプの動きがトレーニングビデオ内に存在する場合、正常と認識することができる。
【００３１】
いくつかの実施形態は、人工ニューラルネットワーク等の人工知能の進展は、異常検出のための、入力ビデオ内の動きとトレーニングビデオ内の動きとの間の直接比較の計算要件を簡略化することができるという認識に基づく。人工ニューラルネットワーク（ＡＮＮ）又はコネクショニストシステムは、動物の脳を構成する生物学的ニューラルネットワークに漠然と着想を得たコンピューティングシステムである。ニューラルネットワークシステムは、複雑なデータ入力を処理することができる。そのようなシステムは、一般に一切のタスク固有の規則をプログラミングされることなく、例を検討することによってタスクを実行することを「学習する」。そのため、自動異常検出のための入力ビデオ内の動きとトレーニングビデオ内の動きとの直接比較のためにそのようなニューラルネットワークに基づくシステムを提供することは魅力的である。理論上、そのようなトレーニングされたニューラルネットワークは、例えば閉回路テレビ（ＣＣＴＶ）システムに適した実用的な計算要件及びメモリ要件を有する動きの直接比較に適した異常検出器を提供することができる。
【００３２】
そのために、ビデオ内の異常を検出する１つの手法は、例から分類器をトレーニングして、ビデオの各部分を正常又は非正常と分類することである。これを行うためには、分類器を、正常な動き及び非正常な動きを既述するビデオを用いてトレーニングしなければならない。しかしながら、正常な動きのビデオは、一般的には容易に入手可能である一方で、非正常な動きのビデオは、一般的には入手可能でない。正常な例のみのデータを有することによって、分類器をトレーニングすることはできない。なぜならば、分類器は、自身が見たことがないクラスを学習することはできないためである。その上、いくつかの実施形態は、全て非常に稀にしか発生せず、それゆえ収集するのが非常に困難であるとともに高価であり、非正常な動きには多数のバリエーションが存在するという認識に基づく。分類器をトレーニングするのに十分な非正常な動きのバリエーションのサブセットのみであっても、これを有するビデオをキャプチャする試みはすべて非生産的である。
【００３３】
いくつかの実施形態は、正常なビデオは、容易に収集され、正常な動きをキャプチャするビデオを完全なものとみなすことができるという認識に基づく。これは、トレーニングビデオ内の動きバリエーションが、正常な動きの異なるタイプを表すのみではなく、正常な動き自体も表すことを意味する。そのようにして、トレーニングビデオ内に存在する動きバリエーションは、正常とみなすことができ、一方、トレーニングビデオに存在しないバリエーションは、非正常とみなすことができる。
【００３４】
この理解を踏まえて、いくつかの実施形態は、非正常な動き対正常な動きを分類するのではなく、シーンのビデオのビデオパッチを比較するのにニューラルネットワークをトレーニング及び／又は使用する。ビデオパッチは、ビデオの時空間領域内に含まれるピクセルの全てを含む。そのようにして、ビデオパッチを正常又は非正常と分類するために１つのビデオパッチをニューラルネットワークに提供する代わりに、実施形態は、比較するために２つのビデオパッチをニューラルネットワーク１３５にサブミットする。或るビデオパッチが正常な動きのデータベースからのものであり、別のビデオパッチは、正常又は非正常と分類されることが必要である入力ビデオからのものである。正常な動きのデータベースに存在しない入力ビデオパッチは、非正常な動きを表す。そのようにして、いくつかの実施形態は、ビデオパッチを正常又は非正常と分類するようにトレーニングせず、２つのビデオパッチを類似又は非類似と分類するようにトレーニングされた分類器に基づく非正常な及び正常な動きのための検出器を提供する。類似／非類似分類器をトレーニングすることは、異常を含む動きの例を必要としない。
【００３５】
具体的には、いくつかの実施形態は、試験ビデオの異常を含む部分を検出することは、試験ビデオの各部分（すなわち、各時空間領域）を、同じ空間領域内の正常なトレーニングビデオの全てと比較することによって達成することができるという理解に基づく。試験ビデオを、同じ空間領域内の正常なトレーニングビデオと比較することは有利である。なぜならば、正常な動きは、ロケーションに依存するためである。例えば、側道に沿って歩行する人物は正常であるが、街道の中央で歩行する人物又は自動車の上にいる人物は、通常では異常である。それゆえ、異常検出の問題は、試験ビデオからのビデオパッチを、正常なトレーニングビデオからのビデオパッチと比較するという問題に還元することができる。しかしながら、２つのビデオパッチを比較する方法を決定する必要がある。例えば、ビデオパッチのいずれの特徴を比較のために用いるべきであるか、いずれの距離関数を用いるべきであるかを決定する必要がある。
【００３６】
いくつかの実施形態は、これらの問いに対する回答が、コンピュータプログラマによって手作業で設計されるのではなく、ニューラルネットワークによる例から最も良く学習されるという理解に基づく。それゆえ、いくつかの実施形態では、ニューラルネットワークが、２つのビデオパッチを入力として取り込み、ビデオパッチ同士の間の距離を出力するようにトレーニングされる。ビデオパッチペアのトレーニングセットの例は、類似のビデオパッチペアが０（又は０に近い小さい数字）のグラウンドトゥルースラベルを有するとともに、異なるビデオパッチペアが１（又は１に近い数字）のグラウンドトゥルースラベルを有するように作成される。ネットワークアーキテクチャは、ネットワークの最初の層が入力ビデオパッチが類似であるか否かを判断するのに有用な特徴を抽出するとともに、ネットワークの最後の層が入力ビデオパッチ同士の間の距離を計算するのにそれらの特徴を用いるように設計される。
【００３７】
図３は、いくつかの実施形態による異常検出のための方法のフローチャートを示している。方法は、メモリ１４０に記憶された命令に従ってプロセッサ１２０によって実行することができる。方法は、入力ビデオを入力ビデオパッチ３１５に分割する（３１０）ように構成される。ビデオパッチは、空間的広がりを定義するビデオフレーム内のバウンディングボックスと、時間的広がりを定義する固定フレーム数とによって定義することができる時空間領域である。したがって、時空間領域内のビデオのピクセルは、ビデオパッチを構成する。異なるビデオパッチは重複している場合がある。全てのビデオパッチの和集合がビデオシーケンス全体をカバーする。
【００３８】
方法は、ニューラルネットワーク１３５を用いて、各入力ビデオパッチ３１５を、ストレージメモリ１３０から索出された対応するトレーニングビデオパッチ３２５と比較して（３２０）、各入力ビデオが少なくとも１つの対応するトレーニングビデオパッチに類似であるか否かを判断する。例えば、ニューラルネットワークは、入力ビデオパッチと各対応するトレーニングビデオパッチとの間の距離を計算する。自身の最近傍への距離である最小距離は、入力ビデオパッチの異常スコアとして記憶される。
【００３９】
方法は、少なくとも１つの入力ビデオパッチが全ての対応するトレーニングビデオパッチに非類似である場合、異常３３５を宣言する（３３０）。例えば、ステップ３３０において、各異常スコアが閾値と比較され、スコアが閾値を超えた場合、閾値を超えた異常スコアを有するビデオパッチによって表される時空間領域は、異常を含むと分類される。そうでない場合、領域は、正常と分類される。例えば、１つの実施形態は、距離のセット内の少なくとも１つの距離が異常検出閾値３４０よりも大きい場合にシーンの入力ビデオ内で異常を検出するように構成される。実施形態は、異常３３５を検出することに応答して、制御アクションを更に実行することができる。方法のステップは、異なる入力パッチ３１５のそれぞれについて実行される。
【００４０】
このように、いくつかの実施形態は、例えば閉回路テレビ（ＣＣＴＶ）システムに適した実用的な計算要件及びメモリ要件を有する動きの直接比較に適した異常検出器を提供することができる。
【００４１】
図４は、１つの実施形態による、シーンの正常なビデオの時空間領域から抽出された正常なビデオパッチである典型例のセットを準備する方法のフローチャートを示している。典型例は、シーン内の正常な挙動を表すとみなされる。換言すれば、入力された試験ビデオパッチが典型例に類似である場合、入力ビデオパッチは、正常とみなされる。そうでない場合、その入力ビデオパッチは、異常を含むとみなされる。
【００４２】
典型例のセットは、シーンの正常なビデオを分析することと、正常なビデオ内に見られる多様な動きをカバーするビデオパッチを選択することとによって決定される。例えば、実施形態は、正常な動きのトレーニングビデオ４１０を試験ビデオの時空間領域４２０に分割する（Ｓ１１）ように構成される。入力ビデオの時空間領域の分解能の次元は、時空間領域４２０の次元及び／又は分解能に対応する。次に、実施形態は、正常なビデオ４２０内の時空間領域のそれぞれについてビデオパッチ４３０を抽出する（Ｓ２２）。
【００４３】
実施形態は、シーン内の同じ空間領域に対応する正常なビデオパッチの各ペア間の距離を計算して（Ｓ３３）、正常なビデオパッチ間の距離のセット４４０を生成するように構成される。次に、実施形態は、類似の正常なビデオパッチをプルーニングする。具体的には、実施形態は、正常なビデオの特定の空間領域を表す典型例を、その空間領域について全ての正常なビデオパッチを「カバーする」ようなビデオパッチのサブセットとして選択する（Ｓ４４）。ビデオパッチのサブセットは、スーパーセット（superset：上位集合）内の各ビデオパッチと、カバーするサブセット内の最近傍ビデオパッチとの間の距離が閾値未満である場合、ビデオパッチのスーパーセットをカバーする。換言すれば、スーパーセット内の全てのビデオパッチは、カバーするサブセット内のビデオパッチに近い。ビデオパッチ同士の間の距離は、ビデオパッチのペアを、類似又は非類似と分類するようにトレーニングされたニューラルネットワークを用いて計算される。カバーするサブセット内のビデオパッチ及び／又はカバーするサブセット内のビデオパッチから抽出された特徴は、メモリ１３０に記憶される（１３３）。
【００４４】
いくつかの実施形態は、正常な動きのデータベースを改善するのにニューラルネットワーク自体を更に用いることができるという別の理解に基づく。そのため、ビデオパッチ同士の間の距離は、事前にトレーニングされたニューラルネットワーク１３５を用いて計算される。具体的には、いくつかの実施形態では、正常な動きのデータベースは、独自のビデオパッチのみを含み、すなわち、ニューラルネットワークを用いて比較されるいずれの２つのトレーニングビデオパッチも非類似である。そのために、いくつかの実施形態は、正常な動きのデータベースからビデオパッチを除去し、全ての残りのビデオパッチが互いに非類似であるとともに、各除去されたビデオパッチが少なくとも１つの残りのビデオパッチに類似であるようにする。そのようにして、正常な動きのデータベースを記憶するメモリ要件を、異常検出の精度を低下させることなく削減することができる。
【００４５】
図５は、１つの実施形態による、トレーニングビデオパッチを記憶する一例示の概略図を示している。この例では、実施形態は、ニューラルネットワーク１３５を用いて、４つのトレーニングビデオパッチ５１０、５２０、５３０、及び５４０を互いに比較する。ニューラルネットワーク１３５に従って、パッチ５２０及び５３０が他のパッチ、例えばパッチ５１０に類似である場合、それらのパッチは、記憶されたトレーニングパッチ１３３からプルーニングされる（５５０）。パッチ５４０が他の全てのパッチと異なる場合、パッチ５４０は、記憶されたトレーニングパッチ１３３に記憶される。そのようにして、トレーニングパッチ１３３は、ニューラルネットワークを用いて比較されるときにメモリに記憶されたいずれの２つのトレーニングビデオパッチも非類似であるように、非類似のパッチのみを含む。
【００４６】
いくつかの実施形態は、比較されることになるビデオから特徴を抽出する方法も、ニューラルネットワークによって実行することができるという理解に基づく。加えて、又は代替的に、いくつかの実施形態は、比較のために有利であるビデオフレームから特徴を抽出するためにビデオパッチを比較するようにトレーニングされた同じニューラルネットワークを用いる。そのようにして、このニューラルネットワークは、特徴抽出及び特徴比較の双方についてエンドツーエンド方式でトレーニングすることができ、それにより、ビデオ比較の精度を高めることができる。
【００４７】
そのために、いくつかの実施形態は、トレーニングビデオパッチ及び入力ビデオパッチのそれぞれは、異なる時空間パッチから特徴ベクトルを計算し、抽出された特徴ベクトルを比較して異なる時空間パッチのビデオパッチを類似又は非類似と宣言するようにトレーニングされたニューラルネットワークによってトレーニングビデオ及び入力ビデオから計算された特徴ベクトルによって表される。
【００４８】
図６は、いくつかの実施形態によって用いられるシャムニューラルネットワークのアーキテクチャの一例を示している。このニューラルネットワークは、異なる時空間パッチから特徴ベクトルを抽出し、抽出された特徴ベクトルを比較して、異常検出器の性能を改善するとともに、メモリに記憶されたパッチの数を削減する。ニューラルネットワークは、異常スコア（試験ビデオパッチとその最近傍の典型例との間の距離）を割り当てること、及び、空間領域内の全ての正常なビデオパッチのセットをカバーする典型例のセットを選択することの双方について、２つのビデオパッチ間の距離を求めるのに用いられる。ニューラルネットワークは、入力として、２つのビデオパッチ６１０及び５２０を取り込み、それらの間の距離を出力するか（６９０）、又は、それらを「類似」又は「異なる」と分類する。ネットワークの最初の３つの層６２０は、入力に対する畳み込みのセットを適用する畳み込み層であり、これに、正規化線形関数又はシグモイド関数等の非線形性が後続する。これらの畳み込み層の結果は、後続の比較のための各ビデオパッチ内の重要な情報を含む特徴マップのセットである。これらの畳み込み層の重み及びパラメーターは、ネットワークの上側セクション及び下側セクションにおいて同一であり、特徴の同じセットが双方の入力ビデオパッチから抽出されるようになっている。上側セクション及び下側セクションの最後の畳み込み層によって出力された特徴マップは、連結、加算又は乗算等の単純な演算を用いて結合される（６４０）。結合された特徴マップは、その後、更なる畳み込み層６５０、６５５（非線形性を有する）を通過し、これに、畳み込み層６５５によって出力された特徴マップを単一の浮動小数点数にマッピングする全結合層６７０が後続する。その後、この数字を、入力ビデオパッチ同士の間の距離６９０を表す０〜１の浮動小数点数にマッピングするのに、シグモイド関数６８０が用いられる。しかしながら、代替的な実施形態は、種々のアーキテクチャのニューラルネットワーク１３５を用いる。
【００４９】
ネットワークアーキテクチャを問わず、ニューラルネットワークは、ビデオパッチ及び対応するラベル（０又は１等の数字によって表すことができる同じ又は異なる）のペアからなるトレーニング例に対してトレーニングされる。１つの実施形態では、ニューラルネットワークは、多くの異なるビデオからの多様なビデオパッチペアに対して１度トレーニングされ、その後、トレーニング中に用いられたいずれのものとも異なる新規のビデオを含む任意のビデオのためにビデオ異常検出システムにおいて用いられる。いくつかの実施態様では、ニューラルネットワークは、異常検出のために後に用いられる場合がある特定のターゲットビデオからのビデオパッチに対してトレーニングされない。換言すれば、ニューラルネットワークは、任意のビデオからの新規のビデオパッチの類似度を求める問題に適用するのに一般的に十分になるように、多様な異なるビデオを用いてトレーニングされる。
【００５０】
ニューラルネットワークをトレーニングするためのビデオパッチを作成するために、異なる実施形態が、種々のストラテジーを用いる。例えば、１つの実施形態は、１つのビデオパッチペアを定義するためにビデオの時空間領域を選び、その後、第２の類似のビデオパッチペアを定義するために時空間領域に小変換（並進、回転及び拡縮）を適用することによって、類似のビデオパッチペアを作成する。
【００５１】
別の実施形態では、或るシーンの全ての正常な動きを定義する正常なビデオを、いずれの異常も含まない同じシーンの試験ビデオとともに与えられると、試験ビデオの任意のビデオパッチは、定義により、同じ空間領域からの正常なビデオの少なくとも１つのビデオパッチに類似でなければならない。試験ビデオパッチへの最近傍の正常なビデオパッチは、例えば、未加工ピクセルの単純なユークリッド距離を用いて発見することができる。
【００５２】
別の実施形態では、或るシーンの全ての正常な動きを定義する正常なビデオを、（例えば、人間の注釈者によって）注釈を付けられた異常を含む同じシーンの試験ビデオとともに与えられると、全ての異常を含むビデオパッチは、定義により、同じ空間領域内の全ての正常なビデオパッチと異なる。それゆえ、各注釈付けされた異常を含むビデオパッチから多くの可能な異なるビデオパッチペアを作成することができる。
【００５３】
図７は、試験ビデオパッチに最も近い典型例を発見するためにいくつかの実施形態によって用いられる最近傍探索方法の概略図を示している。図７において、ｆｖ７１０は、入力ビデオパッチであり、各ｘｉ７２０は、正常なビデオパッチ（典型例）である。最近傍探索７３０は、ｆｖと最近傍のｘｉとの間の最小距離ｄ７４０を出力する。異なる実施形態は、異なる最近傍探索を用いる。例えば、１つの実施形態は、各入力特徴ベクトルを各トレーニング特徴ベクトルと比較するために力まかせ探索を用いる。いくつかの実施態様では、最近傍探索７３０は、近似最近傍探索であり、最小距離を得ることが保証されておらず、代わりに、最小値に近い特徴ベクトルを得ることができる。ｋｄ木、ｋ平均木、及び局所性鋭敏型ハッシュ等の、当該技術分野において既知の様々な最近傍探索アルゴリズムを用いることができる。
【００５４】
本発明の上記で説明した実施形態は、多数の方法のうちの任意のもので実施することができる。例えば、実施形態は、ハードウェア、ソフトウェア又はそれらの組み合わせを用いて実施することができる。ソフトウェアで実施される場合、ソフトウェアコードは、単一のコンピュータに設けられるのか又は複数のコンピュータ間に分散されるのかにかかわらず、任意の適したプロセッサ又はプロセッサの集合体において実行することができる。そのようなプロセッサは、１つ以上のプロセッサを集積回路部品に有する集積回路として実装することができる。しかしながら、プロセッサは、任意の適したフォーマットの回路類を用いて実装することができる。
【００５５】
また、本発明の実施形態は、例が提供された方法として実施することができる。この方法の一部として実行される動作は、任意の適切な方法で順序付けすることができる。したがって、動作が示したものと異なる順序で実行される実施形態を構築することができ、これには、例示の実施形態では一連の動作として示されたにもかかわらず、いくつかの動作を同時に実行することを含めることもできる。
【００５６】
請求項の要素を修飾する、特許請求の範囲における「第１」、「第２」等の序数の使用は、それ自体で、１つの請求項の要素の別の請求項の要素に対する優先順位も、優位性も、順序も暗示するものでもなければ、方法の動作が実行される時間的な順序も暗示するものでもなく、請求項の要素を区別するために、単に、或る特定の名称を有する１つの請求項の要素を、同じ（序数の用語の使用を除く）名称を有する別の要素と区別するラベルとして用いられているにすぎない。
【図１】
2021533506.tif 000003
【図２】
2021533506.tif 000004
【図３】
2021533506.tif 000005
【図４】
2021533506.tif 000006
【図５】
2021533506.tif 000007
【図６】
2021533506.tif 000008
【図７】
2021533506.tif 000009
【国際調査報告】
2021533506.tif 000010
2021533506.tif 000011