異常事象抽出装置、異常事象抽出方法、この方法のプログラム及びこのプログラムを記録した記録媒体
【課題】画像情報処理によって映像中から異常な事象を抽出し、抽出された原因が人であるか否かの判断、人であると判断したときの人の顔確認、及び異常の度合いを的確に求める。
【解決手段】シーケンス抽出部103は映像データベース102の映像を予め定められた基準に基づいてシーケンスに分割する。特徴ベクトル抽出部105は分割されたシーケンスから特徴ベクトルを抽出する。顔領域検出部106は分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする。クラスタ厚生部108はベクトル抽出部及び顔領域検出部において抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出する。
【解決手段】シーケンス抽出部103は映像データベース102の映像を予め定められた基準に基づいてシーケンスに分割する。特徴ベクトル抽出部105は分割されたシーケンスから特徴ベクトルを抽出する。顔領域検出部106は分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする。クラスタ厚生部108はベクトル抽出部及び顔領域検出部において抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像中から異常と思われる事象を抽出する異常事象抽出装置及び抽出方法に係り、特に異常な事象として抽出された原因が人であるか否かを判断し、人であると判断したときに人の顔検出によって異常の度合いを算出する装置及び方法に関する。
【背景技術】
【0002】
従来から、映像中から異常な状態を自動的に検出する技術としては、モニタリング映像から異常状態を検出する手法がある(例えば、非特許文献1参照)。
【0003】
非特許文献1では、映像中のイベントをシーケンス(部分映像)として抽出し、シーケンス中の動き物体の軌跡等を特徴量として、特徴空間で1つのクラスを生成する。生成されたクラスを正常な事象のクラスとして、クラスからの距離を異常度合いとすることで、事象に異常、正常の状態を定義することなく、異常な映像を抽出することができる。しかし、異常な事象を引き起こしたのが人であるか否か、人である場合には該人を確認する作業を、人手によって行わなければならない。
【非特許文献1】数藤,大澤,若林,安野,“映像時空間内での変化領域を特徴量とする監視映像からの非定常度推定,”電子情報通信学会 技術研究報告,PRMU2006−28,MI2006−28(2006−5)。
【発明の開示】
【発明が解決しようとする課題】
【0004】
前記のように、従来から映像中から異常な状態を自動的に検出する技術が提案されている。
【0005】
しかし、異常な状態として抽出された事象の原因が人か否か、また人である場合に、人の顔を確認する作業は、抽出された全ての映像を確認者が時間を追って確認しなければならず、時間的コストや人的負担が大きい。
【0006】
本発明の目的は、画像情報処理によって映像中から異常な事象を抽出し、抽出された原因が人であるか否かの判断、人であると判断したときの人の顔確認、及び異常の度合いを的確に求めることができる異常事象抽出装置、異常事象抽出方法、この方法のプログラム及びこのプログラムを記録した記録媒体を提供することにある。
【課題を解決するための手段】
【0007】
本発明では、前記の課題を解決するため、映像を複数のシーケンスに分割し、分割されたシーケンスから特徴ベクトルを抽出し、さらに同シーケンスから人の顔を検出して特徴ベクトルとし、抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成し、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するようにしたもので、以下の装置、方法、プログラム及び記録媒体を特徴とする。
【0008】
(装置の発明)
(1)画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出装置であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出部と、
前記シーケンス抽出部において分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出部と、
前記シーケンス抽出部において分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出部と、
前記ベクトル抽出部及び顔領域検出部において抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成部と、
を備えたことを特徴とする。
【0009】
(2)前記顔領域検出部は、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出部と、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定部と、
を備えたことを特徴とする。
【0010】
(3)前記顔領域判定部は、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする。
【0011】
(4)前記クラスタ構成部は、
特徴ベクトル抽出部及び顔領域検出部において抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリング部と、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択部と、
前記選択された代表ベクトルを記憶する代表ベクトル記憶部と、
を備えたことを特徴とする。
【0012】
(方法の発明)
(5)画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出方法であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出ステップと、
前記ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成ステップと、
からなることを特徴とする。
【0013】
(6)前記顔領域検出ステップは、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出ステップと、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定ステップと、
からなることを特徴とする。
【0014】
(7)前記顔領域判定ステップは、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする。
【0015】
(8)前記クラスタ構成ステップは、
特徴ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリングステップと、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択ステップと、
前記選択された代表ベクトルを記憶する代表ベクトル記憶ステップと、
からなることを特徴とする。
【0016】
(プログラムの発明)
(9)上記(5)〜(8)の各ステップの一部または全部を、コンピュータに読み込むプログラムで実行可能にしたことを特徴とする。
【0017】
(記録媒体の発明)
(10)上記(9)のプログラムをコンピュータが読み取り可能に記録したことを特徴とする。
【発明の効果】
【0018】
本発明によれば、映像を複数のシーケンスに分割し、分割されたシーケンスから特徴ベクトルを抽出し、さらに同シーケンスから人の顔を検出して特徴ベクトルとし、抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成し、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するため、映像中から異常な事象を抽出し、抽出された原因が人であるか否かの判断、人であると判断したときの人の顔確認、及び異常の度合いを的確に求めることができる。
【0019】
また、抽出された複数のシーケンスを算出された評価値に基づいて順位付けを行い、確認することが可能となる。
【0020】
さらに、異常とされた事象の映像からの顔の検出により、異常な事象の原因となった人の顔を、シーケンスの代表画像として提示したり、人の顔を検出して得られる特徴を異常度合いに反映させ、人の顔が検出される状態を、異常度合いを特に高く(あるいは低く)したり、反対に、人の顔が検出されない状態を、異常度合いを特に高く(あるいは低く)したりする設定が可能となる。
【発明を実施するための最良の形態】
【0021】
図1は、本発明の実施形態を示す異常事象抽出装置の基本構成図である。なお、各部の機能はコンピュータのハードウェア資源と、コンピュータに搭載するソフトウェアで実現される。
【0022】
映像入力部101では、カメラ等から入力される映像を取得し、映像データベース102に記録する。
【0023】
シーケンス抽出部103では、映像データベース102の映像から、連続したフレームをシーケンスとして抽出し、検出された順に番号を1から順に付与し、シーケンス番号とする。このシーケンス番号は、シーケンス蓄積部104に記憶する。
【0024】
特徴ベクトル抽出部105は、シーケンス蓄積部104に記憶する各シーケンスの画像毎に特徴ベクトルを抽出し、抽出元であるシーケンスのシーケンス番号とともに特徴ベクトル蓄積部107に記憶する。
【0025】
顔領域検出部106では、各シーケンスの画像毎に人の顔を検出する。検出された顔領域に関する情報は、抽出元であるシーケンスのシーケンス番号とともに特徴ベクトル蓄積部107に記憶される。
【0026】
クラスタ構成部108は、特徴ベクトル抽出部105ならびに顔領域検出部106において抽出され、抽出元であるシーケンスのシーケンス番号とともに特徴ベクトル蓄積部107に蓄積されている特徴ベクトルの分布に基づいて、シーケンス毎にクラスタを構成すると共に、各特徴ベクトルのクラスタからの距離(離れ具合)等を表す評価値を算出する。
【0027】
図2は、シーケンス抽出部103と特徴ベクトル抽出部105の抽出処理の一例を示す図である。
【0028】
シーケンス抽出処理は、図2(a)に示すように、入力映像から連続した複数のフレームの組を抽出し、シーケンス1,2,…とする。1つのシーケンスは、例えば、ひとつの動き物体が映像中に出現してから消失するまでという判定結果から抽出する。判定には、外部センサ111による信号をトリガとして用いてもよいし、画像の背景差分や2フレーム差分による動き物体検出などの手法を用いてもよい。外部センサ111を用いた動き物体の有無判定の方法としては、例えば、赤外センサや超音波センサにより物体の有無を検知する方法、マイクによって物体の通過音などを検知する方法、圧力センサなど接触型のセンサにより物体の有無を検知する方法などを利用できる。
【0029】
特徴ベクトル抽出部105は、動き物体の情報、例えば、画像中での動き領域の位置の時間変化を利用し、主成分分析等により次元圧縮したもの等をもとに特徴ベクトルを作成する。また、例えば動き領域の重心の時間変化などをもとに特徴ベクトルを作成してもよい。求められた特徴ベクトルには、特徴ベクトルを抽出した元のシーケンスのシーケンス番号を付与しておく。
【0030】
シーケンス中の動き物体の画像中での位置の時間変化を用いる場合を図2(b)を用いて説明する。ここで、背景画像との差分により、入力映像中のシーケンス2として図2(b)の(1)として示す4コマ画像が抽出された場合、図2(b)の(2)に背景との差分となる領域が動き領域として抽出される。ここで、背景と動き領域の2値化処理を行ってベクトルとし、シーケンス中の他の画像にも同様の処理を行ったものと合わせて、主成分分析により次元圧縮した特徴ベクトルを生成する。例えば、動き物体の画素を1、それ以外を0とする2値の画像の並び(画像の横×縦サイズ)をベクトルとし、構成画像数と同数のベクトルを主成分分析により次元圧縮して、特徴ベクトルとする。
【0031】
ここで、顔領域検出部106により顔領域が検出された場合には、動き領域と動き領域以外に加え、図2(b)の(3)として示すように、画像中の顔領域(例えば画素を2とする)を含めた、3値のベクトルを生成し、同様の処理を行ってもよいし、顔の向き(例えば画素を3とする)等を含めた複数値のベクトルとして処理してもよい。また、顔に関する情報を動き領域による特徴ベクトルとは統合せずに特徴ベクトル蓄積部107に記憶しておき、動き領域による特徴ベクトルとは別に異常度合いをはかる評価値を算出する際に、異常度合いの重み付けに使用してもよい。さらには、事前登録された人との照合による顔認識を行い、照合結果を異常度合いの算出に利用できるようにしてもよい。
【0032】
次に、図3〜図7を用いて、顔領域検出部106での顔検出について説明する。
顔検出の手法に関しては、ここでは、特開2006−293720号公報による手法、AdaBoost学習手法とカスケード検出器構造をもつHaar型の特徴量検出による手法(例えば、文献2「P.Viola,M.Jones,“Rapid object Detection using a Boosted Cascade of Simple Features”,In Proc.IEEE Conf.on Computer Vision and Pattern Recognition,Kauai,USA,2001」)による顔候補領域絞込みを行い、SVM(Support Vector Machine)により顔と非顔を学習して顔を識別する手法(例えば文献3「数理化学 NO.444,JUNE 2000 赤穂ら」)を用いて顔候補領域からさらに詳細な顔検出を行う手法を説明する。
【0033】
顔検出を行う手法は、人の顔が検出できるものであればよく、例えば、テンプレートマッチングによる手法でもよいし、SVMにより顔と非顔を学習して顔を識別する手法を単独で用いてもよいし、AdaBoost学習手法とカスケード検出器構造をもつ、Haar型の特徴量検出による手法を単独で用いてもよい。
【0034】
図3は、上記顔検出手法を用いた顔領域検出部106の構成例を示す図であり、図3(a)は、顔領域検出部106の全体の構成を示す図である。顔領域候補抽出部201では、シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する。顔領域判定部202では、顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無判定を行う。
【0035】
図3(b)は、顔領域候補抽出部201の構成を示す図である。顔領域候補抽出部201は、画像スケール変換部301と、検出対象領域切出部302と、空間周波数分析部303と、顔候補判定部304と、顔領域候補情報記憶部305とから構成される。
【0036】
画像スケール変換部301では、入力された画像のスケール変換を行う。ここで、最小画像サイズおよび、スケール変換幅はあらかじめ設定されているものとする。スケール毎に顔領域候補を探索し、全てのスケールでの探索終了時に顔領域候補抽出処理が終了となる。
【0037】
検出対象領域切出部302では、スケール変換された画像から既定のサイズの領域の切り出しを行う。ただし、ここで扱う領域の形状は、任意形状であってよいものとする。ここでは、図4(a)に例を示すように顔領域の形状を矩形として切り出す場合で説明する。
【0038】
空間周波数分析部303では、該領域に対し空間周波数フィルタリングを行うことができる。例えば、AdaBoost学習手法とカスケード検出器構造をもつHaar型の特徴量検出による手法を用いる。ただし、空間周波数フィルタリングの方法はHaar型の特徴量検出による手法に限るものではない。
【0039】
顔候補判定部304では、空間周波数分析部303の出力値をもとに、該領域が顔領域候補となり得るか否かを判定する。顔領域候補情報記憶部305では、顔領域候補及び候補検出時のスケールを記憶する。
【0040】
図3(c)は、顔領域判定部202の構成図である。顔領域判定部202は、顔領域候補情報入力部401と、顔度算出辞書402と、辞書読込部403と、対象領域切出部404と、顔度算出部405と、顔/非顔判定部406と、判定結果記憶部407から構成される。
【0041】
顔領域候補情報入力部401では、入力画像及び顔領域候補抽出部201で算出された顔領域候補情報を取得する。
【0042】
顔情報の詳細を見るための顔度算出辞書402は、あらかじめ作成してあるものとする。顔度算出辞書402は、作成時に一例として学習判別手法としてSVMを用い、既定のサイズの領域に限定した顔(以下、部分顔と記載)と非顔を学習し、作成するものとする。ただし、使用できる学習判別手法は、SVMに限らない。
【0043】
顔度算出辞書402内には、顔度算出部405で使用するパラメータが含まれるものとし、顔と非顔を判別する顔度を算出するのに必要な情報を含むものとする。すなわち、学習データをもとに、特徴空間において算出される顔クラスと非顔クラスの識別面を定義する式の係数を含むものとし、顔度は、識別面を定義する式により表される識別面からの距離により算出する。
【0044】
辞書読込部403は、顔度算出辞書402を読み込み、顔度算出部405で用いることができるようにする。
【0045】
対象領域切出部404では、顔領域候補抽出部201から取得した顔領域候補情報に基づき、入力画像から対象とする部分領域の切り出しを行う。
【0046】
顔度算出部405は、辞書読込部403で読み込まれた顔度算出辞書402を参照し、対象領域切出部404で対象とした領域の顔度を算出する。
【0047】
顔/非顔判定部406では、顔度算出部405により算出された顔度が顔に相当するものであるか、非顔に相当するものであるかを判定する。判定結果記憶部407では、顔/非顔判定部406で算出された判定情報を記憶する。
【0048】
図4は、顔領域判定部202による顔領域判定の際に、対象領域とする部分顔の例を示す図である。図4の(a)には画像中において顔領域判定部202において、顔領域候補抽出部201から顔領域候補として入力される、人の顔候補領域の例を示す図である。
【0049】
部分顔として、正面向きの顔の全領域を使用して顔度算出辞書402を作成した例を図4の(b)に示す。正面向きの顔の全領域を使用して辞書を作成した場合、検出される顔の向きは正面のみになり、横向き、上下向きの顔は検出されない。
【0050】
部分顔として、顔の半面を使用して顔度算出辞書402を作成した例を図4の(c)に示す。顔の半面を使用して辞書を作成した場合、検出される顔の向きは正面または横向きとなり、広い角度範囲の顔が検出できる。また、左右どちらの顔半面を使用したかによって、顔向きを判定できる。
【0051】
以上のように、検出したい顔向き範囲にあわせて顔度算出辞書402を作成し、検出に使用してもよい。また、顔度算出辞書402は単独で使用してもよいし、複数の顔度算出辞書402をあわせもち、統合して使用したり、向きの判定の要不要など用途に合わせて選択できるようにしたりしてもよい。
【0052】
顔度算出辞書402には、上記顔領域が学習され、顔と顔以外のものを識別する識別式が記憶されており、識別式によって得られる値を顔と顔以外のものに識別する閾値もあわせて記憶されているものとする。ただし、学習識別手法により、顔以外に顔領域と同じ大きさの非顔が学習されていてもよいものとする。
【0053】
図5は、顔領域検出部106における顔領域候補抽出処理の流れの一例を示す図である。具体的なステップは以下の通りである。
【0054】
ステップ1:シーケンスを構成する1画像を入力画像として取得する。
【0055】
ステップ2:画像の縮小処理を行うスケールパラメータを初期化する。
【0056】
ステップ3:入力画像から対象領域の切り出しを行う。このステップ3以降の処理は、画像をスケールパラメータにしたがって縮小しながらの繰り返し処理となる。ここで、スケールパラメータの繰り返し処理ごとの更新は、あらかじめ規定された最小スケールまで、規定のステップ幅で行われるものとする。
【0057】
ステップ4:対象領域の空間周波数フィルタリングを行う。
【0058】
ステップ5:ステップ4の結果として得られる数値が、規定の顔領域候補となり得る閾値以上の値であれば顔領域候補と判断、閾値以下の値であれば顔領域候補外とする。該領域が顔領域候補である場合にはステップ6へ、それ以外はステップ7へ遷移する。
【0059】
ステップ6:対象領域を顔領域候補として、画像中における位置、スケールを判定結果記憶部407に記憶する。
【0060】
ステップ7:画像中の全領域を対象領域として探索したか否かを判断する。全領域を対象領域として探索を終了した場合はステップ8へ、それ以外はステップ3に戻り、走査式で次の領域を対象領域とする。
【0061】
ステップ8:現在処理しているスケールが、入力画像に対し最小スケールとなるものであるか否かを判断する。最小スケールであれば終了、それ以外はステップ9へ遷移する。
【0062】
ステップ9:指定ステップ幅で入力画像を縮小(スケール変換)する。
【0063】
図6は、顔領域検出部106における顔領域判定処理の流れの一例を示す図である。具体的なステップは以下の通りである。
【0064】
ステップ1:顔度算出辞書402の読み込みを行う。
【0065】
ステップ2:顔領域候補抽出部201で記憶された顔領域候補の読み込みを行う。一度に読み込む顔領域候補の情報は1つとし、ステップ3以下の各ステップは領域候補数分、繰り返し処理を行う。
【0066】
ステップ3:顔候補領域から対象領域を切り出し、顔領域候補抽出部201で顔候補領域を抽出したスケールに変換する。
【0067】
ステップ4:スケール変換された対象領域の顔度を算出する。
【0068】
ステップ5:該領域が顔領域であるかを判定する。ステップ4で算出された顔領域の顔度と、あらかじめ設定された顔度の数値の大小を比較し、算出された顔領域の顔度の方が大きい場合は顔と判定、小さい場合は非顔と判定する。顔と判定された場合はステップ6へ、それ以外はステップ9へ遷移する。
【0069】
ステップ6:候補領域が顔として記憶されている領域(記憶のステップはステップ7及び8、10)と重なりがあるか否かを判断する。重なりがある場合にはステップ7へ、それ以外はステップ8へ遷移する。
【0070】
ステップ7:重なりがある場合には、両領域の顔度を比較し、同時に顔度の低い方の領域の情報を削除し、顔度の大きい方の領域を顔として判定結果記憶部407に記憶する(記憶情報は、ステップ6、10でも使用する)。
【0071】
ステップ8:候補領域を顔とし、判定結果記憶部407に記憶する(記憶情報は、ステップ6、10でも使用する)。
【0072】
ステップ9:全候補領域を探索したか否かを判断する。探索し終えた場合はステップ10へ、それ以外はステップ2へ遷移する。
【0073】
ステップ10:顔度算出辞書402の異なる検出を既に行っている場合、既検出の顔度値と比較し、辞書402で検出された顔度値の大きい顔情報を記憶し、顔度の小さい方の情報を削除する。
【0074】
ステップ11:顔度算出辞書402の全ての読み込み処理が完了したか否かを判断する。完了した場合には処理を終了し、それ以外はステップ1へ遷移する。
【0075】
図7は、顔領域検出部106における顔検出処理の具体例を示す図である。顔領域検出部106では、シーケンスを構成する各画像を入力画像として、スケール変換を繰り返しながら、画像中から対象領域を切り出して対象領域が顔領域候補であるかを識別し、対象領域を走査しながら、画像中の顔領域候補を探索する。顔候補領域を矩形とした場合、顔領域候補が存在した場合には、検出時のスケール及び入力画像中での座標、幅、高さを、顔領域候補情報記憶部305に記憶する。ここで、顔候補領域は矩形でなく、楕円や円形であってもよいものとする。
【0076】
次に、顔領域候補が存在した場合には、顔領域候補中から詳細検出を行うため、顔度算出辞書402を読み込み、顔領域候補中の検出対象領域を切り出し、対象領域の顔度を算出し、顔度により顔と非顔を判別する。顔度は顔度算出辞書402に登録されている顔クラスと非顔クラスの識別式により算出され、算出された数値が予め顔度算出辞書402に登録された閾値より顔クラスに近い数値であれば顔として判別する。例えば、顔と非顔を判別する閾値を0とすると、顔度が正の値であれば顔、負であれば非顔となる。ただし、閾値は識別式により異なるものであり、識別式は、顔度算出辞書402に登録されている顔、非顔のデータにより異なるものである。
【0077】
顔と判別された領域は、顔領域候補情報と顔度算出辞書402により決定される顔向き等の情報を判定結果記憶部407に記憶する。ここで、顔領域候補に大きな重なりがある場合、すなわち、記憶しようとした顔領域がすでに記憶された領域と大きな重なりをもつ場合には、両領域の顔度の大きい方を顔領域として更新記憶する。さらに、記憶しようとした顔領域が、すでに他の辞書402によって記憶された領域である場合には、顔度値の大きな値が得られた顔度算出辞書402による情報を該領域の顔情報として記憶する。顔領域候補が存在しない場合には、入力画像中に顔はないものとする。
【0078】
シーケンスを構成する全ての画像において顔検出処理が終わった場合、検出された顔情報を特徴ベクトルとして特徴ベクトル蓄積部107に記憶する。例えば、顔領域の時間変化、顔領域の重心の軌跡、顔向きの推移、顔度の推移、顔領域の有無等を顔情報による特徴ベクトルとする。
【0079】
以上、抽出された特徴ベクトルを用いて、クラスタの構成を行う。図8は、クラスタ構成部108の構成例を示す図である。クラスタ構成部108は、入力された特徴ベクトルをクラスタリングするクラスタリング部601と、クラスタの分布を代表するようなサンプルを選択する代表ベクトル選択部603と、選択された代表ベクトルを記憶する代表ベクトル記憶部602とからなる。
【0080】
クラスタリング部601には、特徴ベクトル抽出部105及び顔領域検出部106において抽出された特徴ベクトルが入力される。この特徴ベクトルのうち、特徴空間で距離が近いもののまとまりをクラスタとみなし、クラスタから遠いものほど入力映像の中で異常度合いの高いシーケンスであるとみなす。新たな特徴ベクトルが加わるごとに、特徴空間における分布の方よりは変化するため、クラスタの再構成が必要である。再構成は、特徴ベクトルの数が予め定めた所定値を超えるごとに行うか、または、クラスタ構成部108に対して、ユーザの指示による再構成のリクエストが入力された場合に行うようにすればよい。
【0081】
クラスタの構成の仕方には、1クラスSVMを用いる方法、クラスタ分析の手法、自己組織化マップを用いる方法、k−means法を用いる方法などがある。ここでは、例として、1クラスSVMを用いる場合について図9を参照して説明する。
【0082】
図9は、クラスタ構成部108で構成するクラスタの概念図である。クラスタリング部601では、ガウシャンカーネルを用いて、代表ベクトル記憶部602に記憶されている代表ベクトル、及び入力された特徴ベクトル、全ての特徴ベクトルを特徴空間へ写像し、原点からの距離を計算し評価値とする。次に、代表ベクトル選択部603は、サポートベクタを代表ベクトルとして選択し、代表ベクトル記憶部602に記憶する。以上の操作は、クラスタの再構成のたびに行う。
【0083】
さらに、クラスタリングと各特徴ベクトルに対応する評価値を算出し、代表ベクトルの選択を行った後、クラスタリング部601は特徴ベクトルに付与されたシーケンス番号と当該特徴ベクトルの評価値を対応付けて出力する。
【0084】
クラスタ構成部108から出力される評価値は、特徴ベクトルがクラスタから外れている度合いの指標となる。例えば、クラスタ構成部108において、前述のように1クラスSVMを用いた場合には、評価値の小さい順に特徴ベクトルのシーケンス番号をソートし、対応するシーケンスを順番に出力することで、正常状態と異なる異常度合いの高い順にシーケンスを提示することができる。このとき、特徴ベクトル蓄積部に蓄積された特徴ベクトルのうち、顔情報による特徴ベクトルを用いて、例えば、顔度の推移のベクトルから顔度の最も高い顔領域が検出された画像を選択し、該シーケンスの代表画像として提示してもよい。
【0085】
図10は、異常事象抽出処理の流れの一例を示す図である。ステップ1は入力映像に対し、映像から、あるいは外部センサ111により動き物体の検知がなされたことをトリガ入力とする。ステップ2はトリガ入力で入力映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出処理を行う。ステップ3はシーケンス抽出において分割されたシーケンスから特徴ベクトルを抽出する。ステップ4はシーケンス抽出において分割されたシーケンスを構成する画像から人の顔領域を検出する。ステップ5は特徴ベクトル抽出処理で抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成する。ステップ6は各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出する。
【0086】
図11は、異常事象抽出装置を利用した異常事象抽出例を示す図である。ここで、入退出の監視カメラによる映像を入力とする。シーケンスとして抽出されるパターンとしては、(ア)既知の人による決められた行為、(イ)不審者による決められた行為、(ウ)既知の人による不審行為、(エ)不審者による不審行為、(オ)既知の人による禁止行為、(カ)不審者による禁止行為などが考えられ、(イ)〜(カ)の事象を分類、抽出することが求められる。
【0087】
入力映像が図11中の(a)通常の行為、(b)禁止行為、(c)不審な行為であった場合、システムは、行動パターンをクラスタリングすることにより、通常の行為と異常な行為を識別し、(b)(c)を、(ウ)〜(カ)として抽出する。さらに、顔検出により、上記の事象を起こした人の顔画像を提示することができる。
【0088】
さらに、検出した顔画像を、予め登録してある人の顔画像と照合する等、顔認識を行うことで、既知の人と未知の人に分類し、(a)〜(c)の行為が既知の人によってなされたのか、不審者によってなされたのかを判断する。以上により、(イ)〜(カ)の分類、抽出を行う。
【0089】
また、システムのユーザは、予め、行動パターンによる異常度合いと、事象を起こした人の既知/未知による異常度合いの、どちらをより異常と判断するかを設定することにより、ユーザが確認したいシーケンスを優先的に提示させることができる。
【0090】
以上、本実施形態による処理は、同じシーケンス中に複数の人が写っている場合にも同様の処理が可能であり、人数により異常度合いの算出方法を設定することもできる。また、社員データベース等を利用し、個人の認識技術と組み合わせることで、警備員による通常行為はもちろん、通常とは異なる行為も除外することができ、真に不審者の行為で通常に似た行為、また通常とは異なる行為をレベル分けして検出することもできる。さらには、そうしたデータベースを検出される人の顔を記録していくことで作成し、検出回数の多い人を既知の人とすることも可能である。
【0091】
また、顔だけでなく、人の動作、人体の特徴、個人の特徴等を検出し、特徴量とすることで、人の動作や後姿、歩き方による不審者、異常状態の抽出を行うこともできる。
【0092】
なお、本発明は、図10等に示す方法の一部または全部の処理ステップを、コンピュータに読み込むプログラムで実行させることができる。また、該プログラムをコンピュータが読み取り可能に記録媒体に記録することも、ネットワークを介して提供することも可能である。
【図面の簡単な説明】
【0093】
【図1】本発明の実施形態を示す異常事象抽出装置の基本構成図。
【図2】シーケンス抽出部103と特徴ベクトル抽出部105の抽出処理の一例を示す図。
【図3】顔領域検出部106の構成の一例を示す図。
【図4】顔領域判定部202による顔領域判定の際に対象領域とする部分顔の例を示す図。
【図5】顔領域検出部106における顔領域候補抽出処理の流れの一例を示す図。
【図6】顔領域検出部106における顔領域判定処理の流れの一例を示す図。
【図7】顔領域検出部106における顔検出処理の具体例を示す図。
【図8】クラスタ構成部108の構成例を示す図。
【図9】クラスタ構成部108で構成するクラスタの概念図。
【図10】本発明による異常事象抽出処理の流れの一例を示す図。
【図11】本発明による異常事象抽出を利用した異常事象抽出例を示す図。
【符号の説明】
【0094】
101 映像入力部
102 映像データベース
103 シーケンス抽出部
104 シーケンス蓄積部
105 特徴ベクトル抽出部
106 顔領域検出部
107 特徴ベクトル蓄積部
108 クラスタ構成部
111 外部センサ
【技術分野】
【0001】
本発明は、映像中から異常と思われる事象を抽出する異常事象抽出装置及び抽出方法に係り、特に異常な事象として抽出された原因が人であるか否かを判断し、人であると判断したときに人の顔検出によって異常の度合いを算出する装置及び方法に関する。
【背景技術】
【0002】
従来から、映像中から異常な状態を自動的に検出する技術としては、モニタリング映像から異常状態を検出する手法がある(例えば、非特許文献1参照)。
【0003】
非特許文献1では、映像中のイベントをシーケンス(部分映像)として抽出し、シーケンス中の動き物体の軌跡等を特徴量として、特徴空間で1つのクラスを生成する。生成されたクラスを正常な事象のクラスとして、クラスからの距離を異常度合いとすることで、事象に異常、正常の状態を定義することなく、異常な映像を抽出することができる。しかし、異常な事象を引き起こしたのが人であるか否か、人である場合には該人を確認する作業を、人手によって行わなければならない。
【非特許文献1】数藤,大澤,若林,安野,“映像時空間内での変化領域を特徴量とする監視映像からの非定常度推定,”電子情報通信学会 技術研究報告,PRMU2006−28,MI2006−28(2006−5)。
【発明の開示】
【発明が解決しようとする課題】
【0004】
前記のように、従来から映像中から異常な状態を自動的に検出する技術が提案されている。
【0005】
しかし、異常な状態として抽出された事象の原因が人か否か、また人である場合に、人の顔を確認する作業は、抽出された全ての映像を確認者が時間を追って確認しなければならず、時間的コストや人的負担が大きい。
【0006】
本発明の目的は、画像情報処理によって映像中から異常な事象を抽出し、抽出された原因が人であるか否かの判断、人であると判断したときの人の顔確認、及び異常の度合いを的確に求めることができる異常事象抽出装置、異常事象抽出方法、この方法のプログラム及びこのプログラムを記録した記録媒体を提供することにある。
【課題を解決するための手段】
【0007】
本発明では、前記の課題を解決するため、映像を複数のシーケンスに分割し、分割されたシーケンスから特徴ベクトルを抽出し、さらに同シーケンスから人の顔を検出して特徴ベクトルとし、抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成し、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するようにしたもので、以下の装置、方法、プログラム及び記録媒体を特徴とする。
【0008】
(装置の発明)
(1)画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出装置であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出部と、
前記シーケンス抽出部において分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出部と、
前記シーケンス抽出部において分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出部と、
前記ベクトル抽出部及び顔領域検出部において抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成部と、
を備えたことを特徴とする。
【0009】
(2)前記顔領域検出部は、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出部と、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定部と、
を備えたことを特徴とする。
【0010】
(3)前記顔領域判定部は、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする。
【0011】
(4)前記クラスタ構成部は、
特徴ベクトル抽出部及び顔領域検出部において抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリング部と、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択部と、
前記選択された代表ベクトルを記憶する代表ベクトル記憶部と、
を備えたことを特徴とする。
【0012】
(方法の発明)
(5)画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出方法であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出ステップと、
前記ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成ステップと、
からなることを特徴とする。
【0013】
(6)前記顔領域検出ステップは、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出ステップと、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定ステップと、
からなることを特徴とする。
【0014】
(7)前記顔領域判定ステップは、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする。
【0015】
(8)前記クラスタ構成ステップは、
特徴ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリングステップと、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択ステップと、
前記選択された代表ベクトルを記憶する代表ベクトル記憶ステップと、
からなることを特徴とする。
【0016】
(プログラムの発明)
(9)上記(5)〜(8)の各ステップの一部または全部を、コンピュータに読み込むプログラムで実行可能にしたことを特徴とする。
【0017】
(記録媒体の発明)
(10)上記(9)のプログラムをコンピュータが読み取り可能に記録したことを特徴とする。
【発明の効果】
【0018】
本発明によれば、映像を複数のシーケンスに分割し、分割されたシーケンスから特徴ベクトルを抽出し、さらに同シーケンスから人の顔を検出して特徴ベクトルとし、抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成し、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するため、映像中から異常な事象を抽出し、抽出された原因が人であるか否かの判断、人であると判断したときの人の顔確認、及び異常の度合いを的確に求めることができる。
【0019】
また、抽出された複数のシーケンスを算出された評価値に基づいて順位付けを行い、確認することが可能となる。
【0020】
さらに、異常とされた事象の映像からの顔の検出により、異常な事象の原因となった人の顔を、シーケンスの代表画像として提示したり、人の顔を検出して得られる特徴を異常度合いに反映させ、人の顔が検出される状態を、異常度合いを特に高く(あるいは低く)したり、反対に、人の顔が検出されない状態を、異常度合いを特に高く(あるいは低く)したりする設定が可能となる。
【発明を実施するための最良の形態】
【0021】
図1は、本発明の実施形態を示す異常事象抽出装置の基本構成図である。なお、各部の機能はコンピュータのハードウェア資源と、コンピュータに搭載するソフトウェアで実現される。
【0022】
映像入力部101では、カメラ等から入力される映像を取得し、映像データベース102に記録する。
【0023】
シーケンス抽出部103では、映像データベース102の映像から、連続したフレームをシーケンスとして抽出し、検出された順に番号を1から順に付与し、シーケンス番号とする。このシーケンス番号は、シーケンス蓄積部104に記憶する。
【0024】
特徴ベクトル抽出部105は、シーケンス蓄積部104に記憶する各シーケンスの画像毎に特徴ベクトルを抽出し、抽出元であるシーケンスのシーケンス番号とともに特徴ベクトル蓄積部107に記憶する。
【0025】
顔領域検出部106では、各シーケンスの画像毎に人の顔を検出する。検出された顔領域に関する情報は、抽出元であるシーケンスのシーケンス番号とともに特徴ベクトル蓄積部107に記憶される。
【0026】
クラスタ構成部108は、特徴ベクトル抽出部105ならびに顔領域検出部106において抽出され、抽出元であるシーケンスのシーケンス番号とともに特徴ベクトル蓄積部107に蓄積されている特徴ベクトルの分布に基づいて、シーケンス毎にクラスタを構成すると共に、各特徴ベクトルのクラスタからの距離(離れ具合)等を表す評価値を算出する。
【0027】
図2は、シーケンス抽出部103と特徴ベクトル抽出部105の抽出処理の一例を示す図である。
【0028】
シーケンス抽出処理は、図2(a)に示すように、入力映像から連続した複数のフレームの組を抽出し、シーケンス1,2,…とする。1つのシーケンスは、例えば、ひとつの動き物体が映像中に出現してから消失するまでという判定結果から抽出する。判定には、外部センサ111による信号をトリガとして用いてもよいし、画像の背景差分や2フレーム差分による動き物体検出などの手法を用いてもよい。外部センサ111を用いた動き物体の有無判定の方法としては、例えば、赤外センサや超音波センサにより物体の有無を検知する方法、マイクによって物体の通過音などを検知する方法、圧力センサなど接触型のセンサにより物体の有無を検知する方法などを利用できる。
【0029】
特徴ベクトル抽出部105は、動き物体の情報、例えば、画像中での動き領域の位置の時間変化を利用し、主成分分析等により次元圧縮したもの等をもとに特徴ベクトルを作成する。また、例えば動き領域の重心の時間変化などをもとに特徴ベクトルを作成してもよい。求められた特徴ベクトルには、特徴ベクトルを抽出した元のシーケンスのシーケンス番号を付与しておく。
【0030】
シーケンス中の動き物体の画像中での位置の時間変化を用いる場合を図2(b)を用いて説明する。ここで、背景画像との差分により、入力映像中のシーケンス2として図2(b)の(1)として示す4コマ画像が抽出された場合、図2(b)の(2)に背景との差分となる領域が動き領域として抽出される。ここで、背景と動き領域の2値化処理を行ってベクトルとし、シーケンス中の他の画像にも同様の処理を行ったものと合わせて、主成分分析により次元圧縮した特徴ベクトルを生成する。例えば、動き物体の画素を1、それ以外を0とする2値の画像の並び(画像の横×縦サイズ)をベクトルとし、構成画像数と同数のベクトルを主成分分析により次元圧縮して、特徴ベクトルとする。
【0031】
ここで、顔領域検出部106により顔領域が検出された場合には、動き領域と動き領域以外に加え、図2(b)の(3)として示すように、画像中の顔領域(例えば画素を2とする)を含めた、3値のベクトルを生成し、同様の処理を行ってもよいし、顔の向き(例えば画素を3とする)等を含めた複数値のベクトルとして処理してもよい。また、顔に関する情報を動き領域による特徴ベクトルとは統合せずに特徴ベクトル蓄積部107に記憶しておき、動き領域による特徴ベクトルとは別に異常度合いをはかる評価値を算出する際に、異常度合いの重み付けに使用してもよい。さらには、事前登録された人との照合による顔認識を行い、照合結果を異常度合いの算出に利用できるようにしてもよい。
【0032】
次に、図3〜図7を用いて、顔領域検出部106での顔検出について説明する。
顔検出の手法に関しては、ここでは、特開2006−293720号公報による手法、AdaBoost学習手法とカスケード検出器構造をもつHaar型の特徴量検出による手法(例えば、文献2「P.Viola,M.Jones,“Rapid object Detection using a Boosted Cascade of Simple Features”,In Proc.IEEE Conf.on Computer Vision and Pattern Recognition,Kauai,USA,2001」)による顔候補領域絞込みを行い、SVM(Support Vector Machine)により顔と非顔を学習して顔を識別する手法(例えば文献3「数理化学 NO.444,JUNE 2000 赤穂ら」)を用いて顔候補領域からさらに詳細な顔検出を行う手法を説明する。
【0033】
顔検出を行う手法は、人の顔が検出できるものであればよく、例えば、テンプレートマッチングによる手法でもよいし、SVMにより顔と非顔を学習して顔を識別する手法を単独で用いてもよいし、AdaBoost学習手法とカスケード検出器構造をもつ、Haar型の特徴量検出による手法を単独で用いてもよい。
【0034】
図3は、上記顔検出手法を用いた顔領域検出部106の構成例を示す図であり、図3(a)は、顔領域検出部106の全体の構成を示す図である。顔領域候補抽出部201では、シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する。顔領域判定部202では、顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無判定を行う。
【0035】
図3(b)は、顔領域候補抽出部201の構成を示す図である。顔領域候補抽出部201は、画像スケール変換部301と、検出対象領域切出部302と、空間周波数分析部303と、顔候補判定部304と、顔領域候補情報記憶部305とから構成される。
【0036】
画像スケール変換部301では、入力された画像のスケール変換を行う。ここで、最小画像サイズおよび、スケール変換幅はあらかじめ設定されているものとする。スケール毎に顔領域候補を探索し、全てのスケールでの探索終了時に顔領域候補抽出処理が終了となる。
【0037】
検出対象領域切出部302では、スケール変換された画像から既定のサイズの領域の切り出しを行う。ただし、ここで扱う領域の形状は、任意形状であってよいものとする。ここでは、図4(a)に例を示すように顔領域の形状を矩形として切り出す場合で説明する。
【0038】
空間周波数分析部303では、該領域に対し空間周波数フィルタリングを行うことができる。例えば、AdaBoost学習手法とカスケード検出器構造をもつHaar型の特徴量検出による手法を用いる。ただし、空間周波数フィルタリングの方法はHaar型の特徴量検出による手法に限るものではない。
【0039】
顔候補判定部304では、空間周波数分析部303の出力値をもとに、該領域が顔領域候補となり得るか否かを判定する。顔領域候補情報記憶部305では、顔領域候補及び候補検出時のスケールを記憶する。
【0040】
図3(c)は、顔領域判定部202の構成図である。顔領域判定部202は、顔領域候補情報入力部401と、顔度算出辞書402と、辞書読込部403と、対象領域切出部404と、顔度算出部405と、顔/非顔判定部406と、判定結果記憶部407から構成される。
【0041】
顔領域候補情報入力部401では、入力画像及び顔領域候補抽出部201で算出された顔領域候補情報を取得する。
【0042】
顔情報の詳細を見るための顔度算出辞書402は、あらかじめ作成してあるものとする。顔度算出辞書402は、作成時に一例として学習判別手法としてSVMを用い、既定のサイズの領域に限定した顔(以下、部分顔と記載)と非顔を学習し、作成するものとする。ただし、使用できる学習判別手法は、SVMに限らない。
【0043】
顔度算出辞書402内には、顔度算出部405で使用するパラメータが含まれるものとし、顔と非顔を判別する顔度を算出するのに必要な情報を含むものとする。すなわち、学習データをもとに、特徴空間において算出される顔クラスと非顔クラスの識別面を定義する式の係数を含むものとし、顔度は、識別面を定義する式により表される識別面からの距離により算出する。
【0044】
辞書読込部403は、顔度算出辞書402を読み込み、顔度算出部405で用いることができるようにする。
【0045】
対象領域切出部404では、顔領域候補抽出部201から取得した顔領域候補情報に基づき、入力画像から対象とする部分領域の切り出しを行う。
【0046】
顔度算出部405は、辞書読込部403で読み込まれた顔度算出辞書402を参照し、対象領域切出部404で対象とした領域の顔度を算出する。
【0047】
顔/非顔判定部406では、顔度算出部405により算出された顔度が顔に相当するものであるか、非顔に相当するものであるかを判定する。判定結果記憶部407では、顔/非顔判定部406で算出された判定情報を記憶する。
【0048】
図4は、顔領域判定部202による顔領域判定の際に、対象領域とする部分顔の例を示す図である。図4の(a)には画像中において顔領域判定部202において、顔領域候補抽出部201から顔領域候補として入力される、人の顔候補領域の例を示す図である。
【0049】
部分顔として、正面向きの顔の全領域を使用して顔度算出辞書402を作成した例を図4の(b)に示す。正面向きの顔の全領域を使用して辞書を作成した場合、検出される顔の向きは正面のみになり、横向き、上下向きの顔は検出されない。
【0050】
部分顔として、顔の半面を使用して顔度算出辞書402を作成した例を図4の(c)に示す。顔の半面を使用して辞書を作成した場合、検出される顔の向きは正面または横向きとなり、広い角度範囲の顔が検出できる。また、左右どちらの顔半面を使用したかによって、顔向きを判定できる。
【0051】
以上のように、検出したい顔向き範囲にあわせて顔度算出辞書402を作成し、検出に使用してもよい。また、顔度算出辞書402は単独で使用してもよいし、複数の顔度算出辞書402をあわせもち、統合して使用したり、向きの判定の要不要など用途に合わせて選択できるようにしたりしてもよい。
【0052】
顔度算出辞書402には、上記顔領域が学習され、顔と顔以外のものを識別する識別式が記憶されており、識別式によって得られる値を顔と顔以外のものに識別する閾値もあわせて記憶されているものとする。ただし、学習識別手法により、顔以外に顔領域と同じ大きさの非顔が学習されていてもよいものとする。
【0053】
図5は、顔領域検出部106における顔領域候補抽出処理の流れの一例を示す図である。具体的なステップは以下の通りである。
【0054】
ステップ1:シーケンスを構成する1画像を入力画像として取得する。
【0055】
ステップ2:画像の縮小処理を行うスケールパラメータを初期化する。
【0056】
ステップ3:入力画像から対象領域の切り出しを行う。このステップ3以降の処理は、画像をスケールパラメータにしたがって縮小しながらの繰り返し処理となる。ここで、スケールパラメータの繰り返し処理ごとの更新は、あらかじめ規定された最小スケールまで、規定のステップ幅で行われるものとする。
【0057】
ステップ4:対象領域の空間周波数フィルタリングを行う。
【0058】
ステップ5:ステップ4の結果として得られる数値が、規定の顔領域候補となり得る閾値以上の値であれば顔領域候補と判断、閾値以下の値であれば顔領域候補外とする。該領域が顔領域候補である場合にはステップ6へ、それ以外はステップ7へ遷移する。
【0059】
ステップ6:対象領域を顔領域候補として、画像中における位置、スケールを判定結果記憶部407に記憶する。
【0060】
ステップ7:画像中の全領域を対象領域として探索したか否かを判断する。全領域を対象領域として探索を終了した場合はステップ8へ、それ以外はステップ3に戻り、走査式で次の領域を対象領域とする。
【0061】
ステップ8:現在処理しているスケールが、入力画像に対し最小スケールとなるものであるか否かを判断する。最小スケールであれば終了、それ以外はステップ9へ遷移する。
【0062】
ステップ9:指定ステップ幅で入力画像を縮小(スケール変換)する。
【0063】
図6は、顔領域検出部106における顔領域判定処理の流れの一例を示す図である。具体的なステップは以下の通りである。
【0064】
ステップ1:顔度算出辞書402の読み込みを行う。
【0065】
ステップ2:顔領域候補抽出部201で記憶された顔領域候補の読み込みを行う。一度に読み込む顔領域候補の情報は1つとし、ステップ3以下の各ステップは領域候補数分、繰り返し処理を行う。
【0066】
ステップ3:顔候補領域から対象領域を切り出し、顔領域候補抽出部201で顔候補領域を抽出したスケールに変換する。
【0067】
ステップ4:スケール変換された対象領域の顔度を算出する。
【0068】
ステップ5:該領域が顔領域であるかを判定する。ステップ4で算出された顔領域の顔度と、あらかじめ設定された顔度の数値の大小を比較し、算出された顔領域の顔度の方が大きい場合は顔と判定、小さい場合は非顔と判定する。顔と判定された場合はステップ6へ、それ以外はステップ9へ遷移する。
【0069】
ステップ6:候補領域が顔として記憶されている領域(記憶のステップはステップ7及び8、10)と重なりがあるか否かを判断する。重なりがある場合にはステップ7へ、それ以外はステップ8へ遷移する。
【0070】
ステップ7:重なりがある場合には、両領域の顔度を比較し、同時に顔度の低い方の領域の情報を削除し、顔度の大きい方の領域を顔として判定結果記憶部407に記憶する(記憶情報は、ステップ6、10でも使用する)。
【0071】
ステップ8:候補領域を顔とし、判定結果記憶部407に記憶する(記憶情報は、ステップ6、10でも使用する)。
【0072】
ステップ9:全候補領域を探索したか否かを判断する。探索し終えた場合はステップ10へ、それ以外はステップ2へ遷移する。
【0073】
ステップ10:顔度算出辞書402の異なる検出を既に行っている場合、既検出の顔度値と比較し、辞書402で検出された顔度値の大きい顔情報を記憶し、顔度の小さい方の情報を削除する。
【0074】
ステップ11:顔度算出辞書402の全ての読み込み処理が完了したか否かを判断する。完了した場合には処理を終了し、それ以外はステップ1へ遷移する。
【0075】
図7は、顔領域検出部106における顔検出処理の具体例を示す図である。顔領域検出部106では、シーケンスを構成する各画像を入力画像として、スケール変換を繰り返しながら、画像中から対象領域を切り出して対象領域が顔領域候補であるかを識別し、対象領域を走査しながら、画像中の顔領域候補を探索する。顔候補領域を矩形とした場合、顔領域候補が存在した場合には、検出時のスケール及び入力画像中での座標、幅、高さを、顔領域候補情報記憶部305に記憶する。ここで、顔候補領域は矩形でなく、楕円や円形であってもよいものとする。
【0076】
次に、顔領域候補が存在した場合には、顔領域候補中から詳細検出を行うため、顔度算出辞書402を読み込み、顔領域候補中の検出対象領域を切り出し、対象領域の顔度を算出し、顔度により顔と非顔を判別する。顔度は顔度算出辞書402に登録されている顔クラスと非顔クラスの識別式により算出され、算出された数値が予め顔度算出辞書402に登録された閾値より顔クラスに近い数値であれば顔として判別する。例えば、顔と非顔を判別する閾値を0とすると、顔度が正の値であれば顔、負であれば非顔となる。ただし、閾値は識別式により異なるものであり、識別式は、顔度算出辞書402に登録されている顔、非顔のデータにより異なるものである。
【0077】
顔と判別された領域は、顔領域候補情報と顔度算出辞書402により決定される顔向き等の情報を判定結果記憶部407に記憶する。ここで、顔領域候補に大きな重なりがある場合、すなわち、記憶しようとした顔領域がすでに記憶された領域と大きな重なりをもつ場合には、両領域の顔度の大きい方を顔領域として更新記憶する。さらに、記憶しようとした顔領域が、すでに他の辞書402によって記憶された領域である場合には、顔度値の大きな値が得られた顔度算出辞書402による情報を該領域の顔情報として記憶する。顔領域候補が存在しない場合には、入力画像中に顔はないものとする。
【0078】
シーケンスを構成する全ての画像において顔検出処理が終わった場合、検出された顔情報を特徴ベクトルとして特徴ベクトル蓄積部107に記憶する。例えば、顔領域の時間変化、顔領域の重心の軌跡、顔向きの推移、顔度の推移、顔領域の有無等を顔情報による特徴ベクトルとする。
【0079】
以上、抽出された特徴ベクトルを用いて、クラスタの構成を行う。図8は、クラスタ構成部108の構成例を示す図である。クラスタ構成部108は、入力された特徴ベクトルをクラスタリングするクラスタリング部601と、クラスタの分布を代表するようなサンプルを選択する代表ベクトル選択部603と、選択された代表ベクトルを記憶する代表ベクトル記憶部602とからなる。
【0080】
クラスタリング部601には、特徴ベクトル抽出部105及び顔領域検出部106において抽出された特徴ベクトルが入力される。この特徴ベクトルのうち、特徴空間で距離が近いもののまとまりをクラスタとみなし、クラスタから遠いものほど入力映像の中で異常度合いの高いシーケンスであるとみなす。新たな特徴ベクトルが加わるごとに、特徴空間における分布の方よりは変化するため、クラスタの再構成が必要である。再構成は、特徴ベクトルの数が予め定めた所定値を超えるごとに行うか、または、クラスタ構成部108に対して、ユーザの指示による再構成のリクエストが入力された場合に行うようにすればよい。
【0081】
クラスタの構成の仕方には、1クラスSVMを用いる方法、クラスタ分析の手法、自己組織化マップを用いる方法、k−means法を用いる方法などがある。ここでは、例として、1クラスSVMを用いる場合について図9を参照して説明する。
【0082】
図9は、クラスタ構成部108で構成するクラスタの概念図である。クラスタリング部601では、ガウシャンカーネルを用いて、代表ベクトル記憶部602に記憶されている代表ベクトル、及び入力された特徴ベクトル、全ての特徴ベクトルを特徴空間へ写像し、原点からの距離を計算し評価値とする。次に、代表ベクトル選択部603は、サポートベクタを代表ベクトルとして選択し、代表ベクトル記憶部602に記憶する。以上の操作は、クラスタの再構成のたびに行う。
【0083】
さらに、クラスタリングと各特徴ベクトルに対応する評価値を算出し、代表ベクトルの選択を行った後、クラスタリング部601は特徴ベクトルに付与されたシーケンス番号と当該特徴ベクトルの評価値を対応付けて出力する。
【0084】
クラスタ構成部108から出力される評価値は、特徴ベクトルがクラスタから外れている度合いの指標となる。例えば、クラスタ構成部108において、前述のように1クラスSVMを用いた場合には、評価値の小さい順に特徴ベクトルのシーケンス番号をソートし、対応するシーケンスを順番に出力することで、正常状態と異なる異常度合いの高い順にシーケンスを提示することができる。このとき、特徴ベクトル蓄積部に蓄積された特徴ベクトルのうち、顔情報による特徴ベクトルを用いて、例えば、顔度の推移のベクトルから顔度の最も高い顔領域が検出された画像を選択し、該シーケンスの代表画像として提示してもよい。
【0085】
図10は、異常事象抽出処理の流れの一例を示す図である。ステップ1は入力映像に対し、映像から、あるいは外部センサ111により動き物体の検知がなされたことをトリガ入力とする。ステップ2はトリガ入力で入力映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出処理を行う。ステップ3はシーケンス抽出において分割されたシーケンスから特徴ベクトルを抽出する。ステップ4はシーケンス抽出において分割されたシーケンスを構成する画像から人の顔領域を検出する。ステップ5は特徴ベクトル抽出処理で抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成する。ステップ6は各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出する。
【0086】
図11は、異常事象抽出装置を利用した異常事象抽出例を示す図である。ここで、入退出の監視カメラによる映像を入力とする。シーケンスとして抽出されるパターンとしては、(ア)既知の人による決められた行為、(イ)不審者による決められた行為、(ウ)既知の人による不審行為、(エ)不審者による不審行為、(オ)既知の人による禁止行為、(カ)不審者による禁止行為などが考えられ、(イ)〜(カ)の事象を分類、抽出することが求められる。
【0087】
入力映像が図11中の(a)通常の行為、(b)禁止行為、(c)不審な行為であった場合、システムは、行動パターンをクラスタリングすることにより、通常の行為と異常な行為を識別し、(b)(c)を、(ウ)〜(カ)として抽出する。さらに、顔検出により、上記の事象を起こした人の顔画像を提示することができる。
【0088】
さらに、検出した顔画像を、予め登録してある人の顔画像と照合する等、顔認識を行うことで、既知の人と未知の人に分類し、(a)〜(c)の行為が既知の人によってなされたのか、不審者によってなされたのかを判断する。以上により、(イ)〜(カ)の分類、抽出を行う。
【0089】
また、システムのユーザは、予め、行動パターンによる異常度合いと、事象を起こした人の既知/未知による異常度合いの、どちらをより異常と判断するかを設定することにより、ユーザが確認したいシーケンスを優先的に提示させることができる。
【0090】
以上、本実施形態による処理は、同じシーケンス中に複数の人が写っている場合にも同様の処理が可能であり、人数により異常度合いの算出方法を設定することもできる。また、社員データベース等を利用し、個人の認識技術と組み合わせることで、警備員による通常行為はもちろん、通常とは異なる行為も除外することができ、真に不審者の行為で通常に似た行為、また通常とは異なる行為をレベル分けして検出することもできる。さらには、そうしたデータベースを検出される人の顔を記録していくことで作成し、検出回数の多い人を既知の人とすることも可能である。
【0091】
また、顔だけでなく、人の動作、人体の特徴、個人の特徴等を検出し、特徴量とすることで、人の動作や後姿、歩き方による不審者、異常状態の抽出を行うこともできる。
【0092】
なお、本発明は、図10等に示す方法の一部または全部の処理ステップを、コンピュータに読み込むプログラムで実行させることができる。また、該プログラムをコンピュータが読み取り可能に記録媒体に記録することも、ネットワークを介して提供することも可能である。
【図面の簡単な説明】
【0093】
【図1】本発明の実施形態を示す異常事象抽出装置の基本構成図。
【図2】シーケンス抽出部103と特徴ベクトル抽出部105の抽出処理の一例を示す図。
【図3】顔領域検出部106の構成の一例を示す図。
【図4】顔領域判定部202による顔領域判定の際に対象領域とする部分顔の例を示す図。
【図5】顔領域検出部106における顔領域候補抽出処理の流れの一例を示す図。
【図6】顔領域検出部106における顔領域判定処理の流れの一例を示す図。
【図7】顔領域検出部106における顔検出処理の具体例を示す図。
【図8】クラスタ構成部108の構成例を示す図。
【図9】クラスタ構成部108で構成するクラスタの概念図。
【図10】本発明による異常事象抽出処理の流れの一例を示す図。
【図11】本発明による異常事象抽出を利用した異常事象抽出例を示す図。
【符号の説明】
【0094】
101 映像入力部
102 映像データベース
103 シーケンス抽出部
104 シーケンス蓄積部
105 特徴ベクトル抽出部
106 顔領域検出部
107 特徴ベクトル蓄積部
108 クラスタ構成部
111 外部センサ
【特許請求の範囲】
【請求項1】
画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出装置であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出部と、
前記シーケンス抽出部において分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出部と、
前記シーケンス抽出部において分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出部と、
前記ベクトル抽出部及び顔領域検出部において抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成部と、
を備えたことを特徴とする異常事象抽出装置。
【請求項2】
前記顔領域検出部は、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出部と、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定部と、
を備えたことを特徴とする請求項1に記載の異常事象抽出装置。
【請求項3】
前記顔領域判定部は、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする請求項1または2に記載の異常事象抽出装置。
【請求項4】
前記クラスタ構成部は、
特徴ベクトル抽出部及び顔領域検出部において抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリング部と、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択部と、
前記選択された代表ベクトルを記憶する代表ベクトル記憶部と、
を備えたことを特徴とする請求項1に記載の異常事象抽出装置。
【請求項5】
画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出方法であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出ステップと、
前記ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成ステップと、
からなることを特徴とする異常事象抽出方法。
【請求項6】
前記顔領域検出ステップは、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出ステップと、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定ステップと、
からなることを特徴とする請求項5に記載の異常事象抽出方法。
【請求項7】
前記顔領域判定ステップは、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする請求項5または6に記載の異常事象抽出方法。
【請求項8】
前記クラスタ構成ステップは、
特徴ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリングステップと、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択ステップと、
前記選択された代表ベクトルを記憶する代表ベクトル記憶ステップと、
からなることを特徴とする請求項5に記載の異常事象抽出方法。
【請求項9】
請求項5〜8の各ステップの一部または全部を、コンピュータに読み込むプログラムで実行可能にしたことを特徴とするプログラム。
【請求項10】
請求項9のプログラムをコンピュータが読み取り可能に記録したことを特徴とする記録媒体。
【請求項1】
画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出装置であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出部と、
前記シーケンス抽出部において分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出部と、
前記シーケンス抽出部において分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出部と、
前記ベクトル抽出部及び顔領域検出部において抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成部と、
を備えたことを特徴とする異常事象抽出装置。
【請求項2】
前記顔領域検出部は、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出部と、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定部と、
を備えたことを特徴とする請求項1に記載の異常事象抽出装置。
【請求項3】
前記顔領域判定部は、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする請求項1または2に記載の異常事象抽出装置。
【請求項4】
前記クラスタ構成部は、
特徴ベクトル抽出部及び顔領域検出部において抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリング部と、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択部と、
前記選択された代表ベクトルを記憶する代表ベクトル記憶部と、
を備えたことを特徴とする請求項1に記載の異常事象抽出装置。
【請求項5】
画像情報処理によって、映像中から異常と思われる事象を抽出する異常事象抽出方法であって、
前記映像を予め定められた基準に基づいてシーケンスに分割するシーケンス抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンスから特徴ベクトルを抽出する特徴ベクトル抽出ステップと、
前記シーケンス抽出ステップにおいて分割されたシーケンス中の人の顔を検出し、特徴ベクトルとする顔領域検出ステップと、
前記ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された複数の特徴ベクトルが構成する特徴空間においてクラスタを構成すると共に、各特徴ベクトルに対してクラスタから外れている程度の指標を表す評価値を算出するクラスタ構成ステップと、
からなることを特徴とする異常事象抽出方法。
【請求項6】
前記顔領域検出ステップは、
前記シーケンス画像のスケール変換を行い、各スケールの画像中から部分領域を切り出して空間周波数分析を行うことによって、該画像中から顔である可能性が高い領域を顔領域候補として抽出する顔領域候補抽出ステップと、
前記顔領域候補となった領域で詳細な顔検出を行い、顔領域候補内の一部を部分領域として切り出し、顔度を算出することによって、該領域内の顔の有無を判定する顔領域判定ステップと、
からなることを特徴とする請求項5に記載の異常事象抽出方法。
【請求項7】
前記顔領域判定ステップは、入力される顔領域候補の顔の半面を使用して作成した顔度算出辞書を参照して、正面または横向きの顔の有無を判定することを特徴とする請求項5または6に記載の異常事象抽出方法。
【請求項8】
前記クラスタ構成ステップは、
特徴ベクトル抽出ステップ及び顔領域検出ステップにおいて抽出された特徴ベクトルと、そのうちの代表ベクトルを特徴空間へ写像し、原点からの距離を前記評価値とするクラスタリングステップと、
前記特徴ベクトルが新たに抽出されるごとに、前記クラスタリングしたクラスタの分布を代表する特徴ベクトルを代表ベクトルとして選択する代表ベクトル選択ステップと、
前記選択された代表ベクトルを記憶する代表ベクトル記憶ステップと、
からなることを特徴とする請求項5に記載の異常事象抽出方法。
【請求項9】
請求項5〜8の各ステップの一部または全部を、コンピュータに読み込むプログラムで実行可能にしたことを特徴とするプログラム。
【請求項10】
請求項9のプログラムをコンピュータが読み取り可能に記録したことを特徴とする記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2008−140093(P2008−140093A)
【公開日】平成20年6月19日(2008.6.19)
【国際特許分類】
【出願番号】特願2006−325117(P2006−325117)
【出願日】平成18年12月1日(2006.12.1)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成20年6月19日(2008.6.19)
【国際特許分類】
【出願日】平成18年12月1日(2006.12.1)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]