(57)【要約】【課題】画像から動体を高精度に検出することが可能な技術を提供する。【解決手段】動体検出装置１は、複数の背景画像から得られる複数の背景情報を、背景画像を分割して得られるブロックごとに、背景モデルとして記憶する背景モデル記憶部１４と、入力画像中の或るブロックにおける画像情報と、背景モデルにおいて、或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、各背景情報それぞれのベクトルの中に、画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、或るブロックから動体を検出する動体検出部１２２とを備える。【選択図】図２
2013254291.tif 000002
【特許請求の範囲】
【請求項１】
複数の背景画像から得られる複数の背景情報を、前記背景画像を分割して得られるブロックごとに、背景モデルとして記憶する記憶手段と、
入力画像中の或るブロックにおける画像情報と、前記背景モデルにおいて、前記或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、前記各背景情報それぞれのベクトルの中に、前記画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、前記或るブロックから動体を検出する動体検出手段と、
を備える動体検出装置。
【請求項２】
順次に入力される前記入力画像の画像情報を用いて、前記背景モデルを更新する更新手段と、
前記入力画像に存在する動体領域の割合に応じて、前記更新手段による前記背景モデルの更新間隔を調整する更新間隔調整手段と、
をさらに備える請求項１に記載の動体検出装置。
【請求項３】
前記更新間隔調整手段は、前記動体領域の割合が大きいほど、前記更新間隔を短くする請求項２に記載の動体検出装置。
【請求項４】
前記動体検出手段による、前記各ブロックについての動体検出結果に基づいて、検出された動体が人であるか否かを判定する判定手段、
をさらに備え、
前記判定手段は、動体を含む各ブロックにおいて、連続して繋がったブロックが存在する場合、検出された動体は人であると判定する請求項１から請求項３のいずれかに記載の動体検出装置。
【請求項５】
ａ）複数の背景画像から得られる複数の背景情報を、前記背景画像を分割して得られるブロックごとに、背景モデルとして記憶部に記憶する工程と、
ｂ）入力画像中の或るブロックにおける画像情報と、前記背景モデルにおいて、前記或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、前記各背景情報それぞれのベクトルの中に、前記画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、前記或るブロックから動体を検出する工程と、
を備える動体検出方法。
【請求項６】
入力画像から動体を検出する動体検出装置に内蔵されたコンピュータに、
ａ）複数の背景画像から得られる複数の背景情報を、前記背景画像を分割して得られるブロックごとに、背景モデルとして記憶部に記憶する工程と、
ｂ）前記入力画像中の或るブロックにおける画像情報と、前記背景モデルにおいて、前記或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、前記各背景情報それぞれのベクトルの中に、前記画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、前記或るブロックから動体を検出する工程と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像内の動体を検出する技術に関する。
【背景技術】
【０００２】
画像から動体を検出する動体検出手法としては、例えば、背景差分法が存在する。背景差分法は、検出対象の動体を含まない背景画像を用意し、当該背景画像と入力画像との画素値の差分を算出し、算出結果に基づいて入力画像中の動体を検出する手法である。
【０００３】
当該背景差分法では、数フレーム前の入力画像を背景画像として用いて、動体を検出することができるが、動体が静止した場合には、当該動体を検出することができなくなる。
【０００４】
信頼性の高い背景情報を用いて動体検出を行う手法としては、例えば、コードブック（Codebook）法が存在する（非特許文献１）。コードブック法では、学習期間において、コードワード（Codeword）と呼ばれる複数の背景情報を画素ごとに記録し、入力画像とコードワードとを比較することによって、動体検出を行う手法である。
【０００５】
しかし、コードブック法は、入力画像の画素情報と背景情報との差分の結果を利用して、動体検出を行う手法であるため、日照変動、照明変動等の明るさの変動を受けやすい。
【０００６】
明るさの変動に対して或る程度頑健な動体検出手法としては、例えば、コリニア（Colinear）判定基準を使用した動体検出手法がある（非特許文献２，３）。この手法は、入力画像中の或るブロックにおける画像情報と、当該ブロックに関する背景情報とをそれぞれベクトルとして扱い、２つのベクトルが同じ方向を向いているか否かに基づいて動体検出を行う手法であるため、明るさの変動に対して比較的頑健な手法である。
【先行技術文献】
【特許文献】
【０００７】
【非特許文献１】K.Kim,T.Chalidabhongse,D.Harwood,and L.Davis,“Real-time foreground-background segmentation using codebook model”Real-Time Imaging,vol.11,no.3,pp.172-185,Jun.2005.
【非特許文献２】P.Guha,D.Palai,K.S.Venkatesh,and A.Mukerjee,“A Multiscale Co-linearity Statistic Based Approach To Robust Background Modeling.”ACCV,2006.
【非特許文献３】R.Mester,T.Aach,and L.Dumbgen,“Illumination-invariant change detection using a statistical colinearity criterion”Proceedings of the 23rd DAGM-Symposium on Pattern Recognition,Springer-Verlag(2001)170-177
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、コリニア判定基準を使用した動体検出手法は、背景の更新を行わないため、大きな照明変動が起きた場合、または看板が置かれた場合等、環境が変化した場合に誤検出が生じる。
【０００９】
このように、画像から動体を検出する上記の各動体検出手法には、いずれも一長一短があり、画像から動体を高精度に検出することが難しかった。
【００１０】
そこで、本発明は、画像から動体を高精度に検出することが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る動体検出装置の第１の態様は、複数の背景画像から得られる複数の背景情報を、前記背景画像を分割して得られるブロックごとに、背景モデルとして記憶する記憶手段と、入力画像中の或るブロックにおける画像情報と、前記背景モデルにおいて、前記或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、前記各背景情報それぞれのベクトルの中に、前記画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、前記或るブロックから動体を検出する動体検出手段とを備える。
【００１２】
また、本発明に係る動体検出装置の第２の態様は、上記第１の態様であって、順次に入力される前記入力画像の画像情報を用いて、前記背景モデルを更新する更新手段と、前記入力画像に存在する動体領域の割合に応じて、前記更新手段による前記背景モデルの更新間隔を調整する更新間隔調整手段とをさらに備える。
【００１３】
また、本発明に係る動体検出装置の第３の態様は、上記第２の態様であって、前記更新間隔調整手段は、前記動体領域の割合が大きいほど、前記更新間隔を短くする。
【００１４】
また、本発明に係る動体検出装置の第４の態様は、上記第１の態様から上記第３の態様のいずれかであって、前記動体検出手段による、前記各ブロックについての動体検出結果に基づいて、検出された動体が人であるか否かを判定する判定手段、をさらに備え、前記判定手段は、動体を含む各ブロックにおいて、連続して繋がったブロックが存在する場合、検出された動体は人であると判定する。
【００１５】
また、本発明に係る動体検出方法は、ａ）複数の背景画像から得られる複数の背景情報を、前記背景画像を分割して得られるブロックごとに、背景モデルとして記憶部に記憶する工程と、ｂ）入力画像中の或るブロックにおける画像情報と、前記背景モデルにおいて、前記或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、前記各背景情報それぞれのベクトルの中に、前記画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、前記或るブロックから動体を検出する工程とを備える。
【００１６】
また、本発明に係るプログラムは、入力画像から動体を検出する動体検出装置に内蔵されたコンピュータに、ａ）複数の背景画像から得られる複数の背景情報を、前記背景画像を分割して得られるブロックごとに、背景モデルとして記憶部に記憶する工程と、ｂ）前記入力画像中の或るブロックにおける画像情報と、前記背景モデルにおいて、前記或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、前記各背景情報それぞれのベクトルの中に、前記画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、前記或るブロックから動体を検出する工程とを実行させる。
【発明の効果】
【００１７】
本発明によれば、画像から動体を高精度に検出することが可能になる。
【００１８】
本発明の目的、特徴、局面、および利点は、以下の詳細な説明と添付図面とによって、より明白となる。
【図面の簡単な説明】
【００１９】
【図１】本実施形態に係る動体検出装置によって実行される２つの動作段階と、各動作段階における詳細な処理内容とを示す図である。
【図２】動体検出装置の構成を示すブロック図である。
【図３】動体検出装置の全体動作を示すフローチャートである。
【図４】背景モデルの詳細を示す図である。
【図５】コードワードに含まれる情報の内容を示す図である。
【図６】背景モデル生成処理の概要を示す概念図である。
【図７】背景モデル生成処理で実行される各工程を示すフローチャートである。
【図８】動体検出処理の概要を示す概念図である。
【図９】動体検出処理で実行される各工程を示すフローチャートである。
【図１０】入力画像の注目ブロックおよび背景モデルの注目ブロックそれぞれからベクトルを抽出する様子を表した図である。
【図１１】入力画像の注目ブロックから抽出されたベクトルと、背景モデルの注目ブロックから抽出されたベクトルとの関係を示す図である。
【図１２】更新間隔規定値と、入力画像中の動体領域の割合との関係を示す図である。
【図１３】背景モデル更新処理で実行される各工程を示すフローチャートである。
【図１４】動体検出の対象となる画像を示す図である。
【図１５】本実施形態の動体検出装置による動体検出結果を示す図である。
【図１６】コリニア動体検出手法を用いて動体検出を行ったときの動体検出結果を示す図である。
【図１７】コードブック動体検出手法を用いて動体検出を行ったときの動体検出結果を示す図である。
【図１８】背景モデルの更新間隔を１００フレームに固定した場合の動体検出結果と、入力画像中の動体領域の割合の変化に応じて背景モデルの更新間隔を調整した場合の動体検出結果との対比を示す図である。
【発明を実施するための形態】
【００２０】
以下、各実施形態について図面を参照して説明する。なお、異なる図面において同一の符号を付した要素は、同一または相応する要素を示すものとする。
【００２１】
＜１．実施形態＞
［１−１．概要］
図１は、本実施形態に係る動体検出装置１によって実行される２つの動作段階と、各動作段階における詳細な処理内容とを示す図である。
【００２２】
図１に示されるように、動体検出装置１では、まず、準備段階において、順次に入力される基準画像（初期画像）を用いて、背景モデルの生成処理が実行される。背景モデルは、同一のシーン（被写体）を撮影して得られた各基準画像に含まれる情報を集めて構成されたモデルであり、後述の動体検出処理において、時系列で順次に入力される各入力画像から動体を検出する際に利用される。なお、背景モデルの生成処理が実行される準備段階は、「学習段階」とも称され、動体検出の対象となる入力画像は、「動体検出対象画像」または「検出対象画像」とも称される。
【００２３】
背景モデルの生成が完了すると、動作段階は、準備段階から実動作段階へと移行される。実動作段階では、入力画像から動いている人を検出する動体検出処理と、背景モデルへの情報の追加判定を行う間隔（背景モデルの更新間隔）を調整する処理（背景モデルの更新間隔調整処理）と、背景モデルの更新処理とが実行される。
【００２４】
［１−２．構成］
図２は、動体検出装置１の構成を示すブロック図である。
【００２５】
図２に示されるように、動体検出装置１は、画像入力部１１と、画像処理部１２と、検出結果出力部１３と、背景モデル記憶部１４と、キャッシュモデル記憶部１５とを備えている。
【００２６】
画像入力部１１は、画像処理部１２に画像を入力する機能を有している。具体的には、画像入力部１１が、画像を撮像するための撮像部を有している場合は、画像入力部１１は、撮像部によって取得される撮影画像を画像処理部１２に入力させる。また、画像入力部１１が、撮像部を有していない場合は、画像入力部１１は、動体検出装置１の外部から入力された画像を画像処理部１２に入力させる。
【００２７】
画像処理部１２は、画像入力部１１から入力される複数の基準画像を用いて背景モデルを生成する背景モデル生成機能と、画像入力部１１から入力される入力画像から動いている人を検出する動体検出機能と、背景モデルを更新する背景モデル更新機能とを実現する。画像処理部１２で実現される各機能は、ＲＯＭおよびＲＡＭ等が接続されたＣＰＵにおいて所定のプログラムを実行して実現される態様であってもよく、或いは、論理回路を用いたハードウェアにおいて実現される態様であってもよい。
【００２８】
画像処理部１２は、背景モデル生成部１２１と、動体検出部１２２と、判定部１２３と、背景更新間隔調整部１２４と、背景モデル更新部１２５とを有している。
【００２９】
背景モデル生成部１２１は、画像入力部１１から入力される複数の基準画像を用いて背景モデルを生成する背景モデル生成機能を実現する。背景モデル生成部１２１によって生成された背景モデルは、後述の背景モデル記憶部１４に記憶される。
【００３０】
動体検出部１２２は、画像入力部１１から入力される入力画像と、背景モデルとを用いて、入力画像中の動体を検出する。
【００３１】
判定部（「人判定部」とも称する）１２３は、動体検出部１２２によって検出された動体が人であるか否かを判定する。
【００３２】
このように、動体検出部１２２および判定部１２３は、画像入力部１１から入力される入力画像から動いている人を検出する動体検出機能を実現する。
【００３３】
背景更新間隔調整部１２４は、動体検出部１２２の動体検出結果に基づいて、背景モデルの更新間隔を調整する機能を有している。
【００３４】
背景モデル更新部１２５は、背景モデルの更新間隔で規定されるタイミングで、背景モデルの更新を行う機能を有している。背景モデルの更新の際には、背景モデル更新部１２５は、キャッシュモデルを生成して、当該キャッシュモデルを一時的に後述のキャッシュモデル記憶部１５に記憶させる。そして、背景モデル更新部１２５は、キャッシュモデルに含まれる情報のうち、一定時間経過した情報を背景情報として、背景モデルに追加することによって、背景モデルの更新を行う。
【００３５】
このように、背景更新間隔調整部１２４および背景モデル更新部１２５は、背景モデルを更新する背景モデル更新機能を実現する。
【００３６】
背景モデル記憶部１４は、フラッシュメモリ、ＥＰ−ＲＯＭまたはハードディスク（ＨＤ）等の書き換え可能な記憶手段で構成され、背景モデルを記憶する。
【００３７】
キャッシュモデル記憶部１５は、フラッシュメモリ、ＥＰ−ＲＯＭまたはハードディスク（ＨＤ）等の書き換え可能な記憶手段で構成され、キャッシュモデルを記憶する。なお、図２では、背景モデル記憶部１４と、キャッシュモデル記憶部１５とは、別個独立の記憶部として図示されているが、共通の記憶部内で、記憶領域を分けて構成される態様であってもよい。
【００３８】
検出結果出力部１３は、入力画像から動いている人が検出されたか否かの検出結果を出力する。検出結果は、例えば、動体検出装置１に設けられた表示部（不図示）に表示される態様であってもよく、音声等の音で通知される態様であってもよい。
【００３９】
また、検出結果は、他の外部装置に信号として出力されてもよい。この場合、動いている人を検出したことを示す信号を受け取った外部装置は、警報を発する等の検出結果に応じた動作を実行する。
【００４０】
［１−３．全体動作］
次に、動体検出装置１の全体動作について説明する。図３は、動体検出装置１の全体動作を示すフローチャートである。
【００４１】
図３に示されるように、ステップＳＰ１において画像が入力されると、動作工程は、ステップＳＰ２に移行される。
【００４２】
ステップＳＰ２では、背景モデルが存在するか否かが判定される。背景モデルが存在しない場合、動作工程は、ステップＳＰ３に移行される。
【００４３】
ステップＳＰ３では、入力された画像を基準画像として、当該基準画像から背景モデルを生成する背景モデル生成処理が背景モデル生成部１２１によって実行される。
【００４４】
背景モデルの生成は、複数の基準画像に基づいて行われ、背景モデルの生成が完了するまで、ステップＳＰ１〜ステップＳＰ３の処理が繰り返し実行されることになる。
【００４５】
ここで、複数の基準画像を用いて生成される背景モデルについて詳述する。図４は、背景モデルの詳細を示す図である。図５は、コードワード（Codeword）に含まれる情報の内容を示す図である。
【００４６】
背景モデルは、画像を分割して得られる矩形領域（ブロック）ごとに、背景情報および当該背景情報に関連する背景関連情報を、複数の基準画像から集めたものである。
【００４７】
具体的には、図４に示されるように、背景モデルＨＭは、例えば、３画素×３画素の大きさのブロックごとに割り当てられた複数のコードブック（Codebook）ＣＢを有している。各コードブックＣＢには、複数の基準画像ＫＧ１〜ＫＧ３から得られた各ブロックの画像情報を含むコードワードＣＷが複数保持されることになる。
【００４８】
例えば、複数の基準画像において、同じ位置の共通のブロックから、Ｌ個の画像情報が得られた場合、当該共通のブロックにおけるコードブックＣＢには、Ｌ個のコードワードＣＷが含まれることになる。図４には、背景モデルＨＭにおいて、ブロックＢＫのコードブックＣＢとして、複数の基準画像ＫＧ１〜ＳＧ３における共通のブロックから得られた３つのコードワードＣＷ１〜ＣＷ３が含まれている様子が示されている。
【００４９】
なお、図５に示されるように、コードワードＣＷには、ブロック内の各画素の画素値ＰＶが背景情報として含まれ、当該背景情報と入力画像の画像情報とが一致すると判定された最新の時刻（最新の一致時刻）Ｔｅ、およびコードワードの生成時刻Ｔｉが背景関連情報として含まれている。
【００５０】
動体検出装置１の全体動作の説明に戻って（図３）、背景モデルの生成が完了すると、動作工程は、ステップＳＰ４に移行される。
【００５１】
ステップＳＰ４では、入力された画像から動いている人を検出する動体検出処理が、動体検出部１２２および判定部１２３によって実行される。
【００５２】
次のステップＳＰ５では、背景モデルの更新間隔調整処理が、背景更新間隔調整部１２４によって実行される。
【００５３】
ステップＳＰ６では、背景モデルの更新処理が、背景モデル更新部１２５によって実行される。
【００５４】
以下では、ステップＳＰ３の背景モデル生成処理、ステップＳＰ４の動体検出処理、ステップＳＰ５の背景モデルの更新間隔調整処理、およびステップＳＰ６の背景モデルの更新処理について順次に詳述する。
【００５５】
［１−４．背景モデル生成処理］
まず、背景モデル生成処理について詳述する。図６は、背景モデル生成処理の概要を示す概念図である。図７は、背景モデル生成処理で実行される各工程を示すフローチャートである。
【００５６】
図６に示されるように、背景モデル生成処理では、順次に入力される基準画像ＫＧと背景モデルＨＭとの間で、画像情報の一致判定がブロック単位で行われ、背景モデルＨＭに存在しない画像情報が、背景情報として背景モデルＨＭに追加される。
【００５７】
具体的には、図７に示されるように、まず、ステップＳＰ１１において、基準画像ＫＧ中の或るブロック（注目ブロック）に関するコードワードが、背景モデルＨＭに存在するか否かが判定される。なお、当該判定は、背景モデルＨＭ中の注目ブロックにおけるコードブックが空か否かを判定していることに等しい。
【００５８】
注目ブロックに関するコードワードが背景モデルＨＭに存在しない場合、動作工程は、ステップＳＰ１４に移行される。ステップＳＰ１４では、当該注目ブロックに関する画像情報を含むコードワードが背景モデルＨＭに追加される。
【００５９】
一方、注目ブロックに関するコードワードが背景モデルＨＭに存在する場合、動作工程は、ステップＳＰ１２に移行される。
【００６０】
ステップＳＰ１２では、基準画像ＫＧ中の注目ブロックに関する画像情報が、背景モデルＨＭ中の注目ブロックに関する既存のコードワードに含まれる背景情報と一致するか否かの判定が行われる。当該一致判定により、基準画像ＫＧ中の注目ブロックに関する画像情報が、背景モデルＨＭ中の注目ブロックに関する既存のコードワードに含まれる背景情報と一致しないと判定された場合、動作工程は、ステップＳＰ１３からステップＳＰ１４に移行される。
【００６１】
ステップＳＰ１４では、当該注目ブロックに関する画像情報を含むコードワードが背景モデルＨＭに追加される。コードワードの追加が終了すると、動作工程は、ステップＳＰ１５に移行される。
【００６２】
一方、基準画像ＫＧ中の注目ブロックに関する画像情報が、背景モデルＨＭ中の注目ブロックに関する既存のコードワードに含まれる背景情報と一致すると判定された場合、動作工程は、ステップＳＰ１３からステップＳＰ１５に移行される。
【００６３】
ステップＳＰ１５では、基準画像ＫＧ中の全てのブロックについて、ステップＳＰ１１〜ステップＳＰ１４の一連の処理が終了したか否かが判定される。全てのブロックについて処理が終了していない場合、動作工程は、ステップＳＰ１１に移行され、未処理のブロックについてステップＳＰ１１〜ステップＳＰ１４の一連の処理が実行されることなる。一方、全てのブロックについてステップＳＰ１１〜ステップＳＰ１４の一連の処理が終了した場合、背景モデルの生成処理は終了となる。
【００６４】
［１−５．動体検出処理］
次に、動体検出処理について詳述する。図８は、動体検出処理の概要を示す概念図である。図９は、動体検出処理で実行される各工程を示すフローチャートである。
【００６５】
上述のように、動体検出処理は、順次に入力される入力画像から動体を検出する処理であり、図８に示されるように、入力画像ＮＧと背景モデルＨＭとの間で、画像情報の一致判定をブロック単位で行うことによって、ブロック単位で動体検出が行われる。そして、ブロック単位の動体検出結果に基づいて、検出された動体が人であるか否かが判定される。
【００６６】
具体的には、図９に示されるように、ステップＳＰ２１では、動体検出部１２２によって、入力画像ＮＧ中の或るブロック（注目ブロック）について動体検出が行われる。本実施形態の動体検出では、入力画像ＮＧ中の注目ブロックにおける画像情報が、背景モデルＨＭ中の注目ブロックに関する各コードワードに含まれる背景情報と一致するか否かを判定することによって、入力画像ＮＧ中の注目ブロックに動体が存在するか否かが検出される。なお、動体検出の具体的手法については、後述する。
【００６７】
ステップＳＰ２２では、注目ブロックについての動体検出結果が、記憶部（不図示）に記憶される。
【００６８】
ステップＳＰ２３では、入力画像ＮＧ中の全てのブロックについて、動体検出が終了したか否かが判定される。全てのブロックについて動体検出が終了していない場合、動作工程は、ステップＳＰ２１に移行され、未処理のブロックについてステップＳＰ２１〜ステップＳＰ２３の処理が実行されることなる。一方、全てのブロックについて動体検出が終了した場合、動作工程は、ステップＳＰ２４に移行される。
【００６９】
ステップＳＰ２４では、判定部１２３によって、入力画像ＮＧ中の各ブロックについての動体検出結果に基づいて、検出された動体が人であるか否かが判定される。
【００７０】
動いている人が動体として検出される場合、動体を含むブロック（「動体検出ブロック」とも称する）は或る程度の塊になると想定される。そこで、判定部１２３は、各動体検出ブロックの中から、他の動体検出ブロックと連続しない単独の動体検出ブロックを除去することによって、連続した動体検出ブロックを特定する。そして、判定部１２３は、入力画像ＮＧ中に、連続した動体検出ブロックが存在する場合、当該入力画像ＮＧにおいて検出された動体は、動いている人であると判定する。動いている人が検出された場合、判定部１２３は、動いている人を検出したことを示す結果を検出結果出力部１３に対して出力する。
【００７１】
ここで、動体検出部１２２によって行われる動体検出の具体的手法について詳述する。図１０は、入力画像ＮＧの注目ブロックおよび背景モデルＨＭの注目ブロックそれぞれからベクトルを抽出する様子を表した図である。図１１は、入力画像ＮＧの注目ブロックから抽出されたベクトルと、背景モデルＨＭの注目ブロックから抽出されたベクトルとの関係を示す図である。
【００７２】
本実施形態では、注目ブロックに関する動体検出は、入力画像ＮＧ中の注目ブロックにおける画像情報と、背景モデルＨＭ中の注目ブロックに関する各コードワードに含まれる背景情報とをそれぞれベクトルとして扱い、２つのベクトルが同じ方向を向いているか否かに基づいて行われる。２つのベクトルが同じ方向を向いている場合、入力画像ＮＧ中の注目ブロックは背景と変わらず、動体を含んでいないと判定される。一方、２つのベクトルが同じ方向を向いていない場合、入力画像ＮＧ中の注目ブロックは背景と異なり、動体を含んでいると判定される。
【００７３】
具体的には、まず、動体検出部１２２は、入力画像ＮＧ中の注目ブロックに含まれる各画素の画素値を成分とした、入力画像ＮＧの画像情報に関するベクトル（画像ベクトル）ｘｆを生成する。例えば、図１０には、９個の画素を有した注目ブロックＭＢｎについて、各画素ごとの画素値を成分とした画像ベクトルｘｆを抽出する様子が示されている。なお、ここでは、各画素は、Ｒ（赤）Ｇ（緑）Ｂ（青）それぞれの画素値を有している場合を想定しているため、画像ベクトルｘｆは、２７個の成分で構成されている。
【００７４】
同様に、動体検出部１２２は、背景モデルＨＭの注目ブロックに関する各コードワードに含まれる背景情報を用いて、背景情報に関するベクトル（背景ベクトル）を生成する。例えば、図１０には、９個の画素を有した注目ブロックＭＢｈについて、各画素ごとの画素値を成分とした背景ベクトルｘｂを抽出する様子が示されている。なお、背景モデルＨＭを構成する各コードブックには、複数の基準画像から得られた複数のコードワードが含まれているため、背景ベクトルｘｂは、複数のコードワードそれぞれを用いて複数抽出されることになる。
【００７５】
画像ベクトルｘｆと背景ベクトルｘｂとが同じ方向を向いている場合、入力画像ＮＧ中の注目ブロックの画像情報は、背景と変わらないことになるが、画像ベクトルｘｆおよび背景ベクトルｘｂには、或る程度のノイズ成分が含まれていると考えられる。よって、ここでは、或る程度のノイズを許容可能な基準を用いて、画像ベクトルｘｆと背景ベクトルｘｂとが同じ方向を向いているか否かを判定する。
【００７６】
画像ベクトルｘｆおよび背景ベクトルｘｂにノイズ成分が含まれていると仮定すると、真のベクトルｕに対する画像ベクトルｘｆと背景ベクトルｘｂとの関係は、図１１のように表すことができ、真のベクトルｕは、下記の式（１）を最小化することで推定できる。
【００７７】
【数１】
2013254291.tif 000003
【００７８】
ここで、行列Ｘを画像ベクトルｘｆと背景ベクトルｘｂとを用いて、式（２）のように表すと、式（１）で示されるＤ２は、２×２行列ＸＸＴの非ゼロの最小固有値となるため、Ｄ２を解析的に求めることができる。なお、Ｄ２が、２×２行列ＸＸＴの非ゼロの最小固有値となることについての詳細は、上記の非特許文献３に記載されている。
【００７９】
【数２】
2013254291.tif 000004
【００８０】
上述のように、背景ベクトルｘｂは、複数のコードワードそれぞれを用いて複数抽出されることから、画像ベクトルｘｆと背景ベクトルｘｂとを用いて表されるＤ２も、背景ベクトルｘｂの数に応じて、複数得られることになる。
【００８１】
入力画像ＮＧ中の注目ブロックが背景であるか否かは、複数得られたＤ２の最小値ｃと平均値μと標準偏差σとを用いて、式（３）で示されるチェビシェフ（Chebyshev）の不等式を満たすか否かに基づいて行われる。式（３）のチェビシェフの不等式を満たす場合、注目ブロックには動体が含まれると判定され、満たさない場合、注目ブロックには動体が含まれないと判定される。
【００８２】
【数３】
2013254291.tif 000005
【００８３】
このように、本実施形態では、注目ブロックに関する動体検出は、入力画像ＮＧ中の注目ブロックにおける画像情報と、背景モデルＨＭ中の注目ブロックに関する各コードワードに含まれる背景情報とをそれぞれベクトルとして扱い、２つのベクトルが同じ方向を向いているか否かに基づいて行われる。
【００８４】
本動体検出手法は、比較対象となる２つのブロックにおける画像情報から得られるベクトルの方向が同じか否かに基づいて、動体検出を行うため、日照変動、照明変動などの明るさの変動に対して比較的頑健な動体検出手法である。
【００８５】
［１−６．背景モデルの更新間隔調整処理］
次に、背景モデルの更新間隔調整処理について詳述する。
【００８６】
上述のように、背景モデルの更新間隔調整処理では、背景モデルへ情報を追加するか否かの判定を行う間隔が調整される。なお、背景モデルの更新間隔調整処理は、後述の背景モデル更新処理において用いられるパラメータ（更新間隔規定値）を調整する処理であり、背景モデル更新処理自体の実行間隔を調整する処理ではない。付言すると、背景モデル更新処理は、図３に示されるように、入力画像が入力される度に実行される処理である。図１２は、更新間隔規定値Ｄｔと、入力画像中の動体領域の割合Ｒｄとの関係を示す図である。
【００８７】
時系列的に順次に入力される入力画像では、急激な明るさ変動等により、背景が急に変化する場合がある。そこで、本実施形態の動体検出装置１は、背景の変化に対応して背景モデルを更新するための背景モデルの更新間隔を調整する。
【００８８】
背景モデルの更新間隔は、更新間隔規定値によって規定され、当該更新間隔規定値は、画像のフレーム数を用いて表された値である。例えば、更新間隔規定値が「１００」であった場合、１００フレーム分の画像が入力される間、キャッシュモデル中のコードワードが削除されずに残っていたときに、そのコードワードを背景モデルに追加することによって、背景モデルが更新される。
【００８９】
動体検出装置１では、このような更新間隔規定値を調整することによって、背景モデルの更新間隔が調整される。
【００９０】
より詳細には、更新間隔規定値Ｄｔは、入力画像中の動体領域の割合をＲｄ、初期の更新間隔規定値（更新間隔初期値）をＤｉ、固定しきい値をａとすると、以下の式（４）のように表される。
【００９１】
【数４】
2013254291.tif 000006
【００９２】
当該式（４）で示される、更新間隔規定値Ｄｔと、入力画像中の動体領域の割合Ｒｄとの関係を図示すると、図１２のようになる。図１２にも示されるように、式（４）によれば、入力画像中の動体領域の割合Ｒｄが大きくなるほど、更新間隔規定値Ｄｔが小さくなって更新間隔が短くなる。特に、入力画像中の動体領域の割合Ｒｄが、固定しきい値ａを超えた場合、更新間隔規定値Ｄｔが「１」となって、背景モデルの更新が急速に行われることになる。
【００９３】
なお、固定しきい値ａは、入力画像の何パーセント以上の領域に動体が存在すると異常と考えられるかという基準に基づいて予め設定される値であり、撮影対象となる被写体に応じて個別に設定されることになる。
【００９４】
また、入力画像中の動体領域の割合Ｒｄは、動体領域の画素数をＰｄ、入力画像の全画素数をＰaとすると、以下の式（５）となる。
【００９５】
【数５】
2013254291.tif 000007
【００９６】
動体領域の画素数Ｐｄは、動体を含むブロックの数に、１つのブロックに含まれる画素数を乗じることによって得ることができる。
【００９７】
このように、順次に入力される入力画像中の動体領域の割合に応じて、背景モデルの更新間隔を変更することによれば、急激な明るさ変動等により画像全体から動体を誤検出した場合でも、背景モデルを即座に更新することができるので、さらなる動体の誤検出を防止することができる。
【００９８】
［１−７．背景モデル更新処理］
次に、背景モデル更新処理について詳述する。図１３は、背景モデル更新処理で実行される各工程を示すフローチャートである。
【００９９】
背景モデル更新処理は、上述のように、背景モデル更新部１２５によって行われる。具体的には、図１３に示されるように、まず、ステップＳＰ３１において、入力画像における各ブロックの動体検出結果に基づいて、ブロックごとに動体を含むか否かが確認される。確認対象となったブロックが動体を含まない場合、動作工程は、ステップＳＰ３１からステップＳＰ３２に移行される。
【０１００】
ステップＳＰ３２では、確認対象となったブロックの動体検出（ステップＳＰ２１）において、一致すると判定された背景情報を含む、背景モデル中のコードワードの背景関連情報（ここでは、最新の一致時刻Ｔｅ）が更新される。
【０１０１】
一方、確認対象となったブロックが動体を含む場合、動作工程は、ステップＳＰ３１からステップＳＰ３３へと移行される。
【０１０２】
ステップＳＰ３３では、動体を含むブロックの画像情報を用いて、キャッシュモデルの生成が行われる。具体的には、動体を含むブロックの画像情報が、既存のキャッシュモデル中のコードワードに含まれている場合、当該画像情報を含む、既存のキャッシュモデル中のコードワードの背景関連情報（最新の一致時刻Ｔｅ）が更新される。これに対して、動体を含むブロックの画像情報が、既存のキャッシュモデル中のコードワードに含まれていない場合、当該画像情報を含むコードワードが新たに生成され、新たなコードワードがキャッシュモデルに追加される。
【０１０３】
このように、ステップＳＰ３３では、不足している画像情報を含むコードワードのキャッシュモデルへの追加、或いは、キャッシュモデル中のコードワードの背景関連情報の更新が行われる。
【０１０４】
次のステップＳＰ３４では、全ブロックについて動体を含むか否かの確認が終了したか否かが判定される。確認が終了していない場合、動作工程は、ステップＳＰ３１に移行され、全ブロックについて動体を含むか否かの確認が終了するまで、ステップＳＰ３１〜ステップＳＰ３４の各工程が繰り返し実行されることになる。一方、確認が終了している場合、動作工程は、ステップＳＰ３５に移行される。
【０１０５】
ステップＳＰ３５では、所定期間更新されないキャッシュモデル中のコードワードが削除される。背景関連情報（最新の一致時刻Ｔｅ）が所定期間更新されないコードワードは、動体の画像情報から生成されたものと考えられる。このため、所定期間更新されないコードワードを削除することによれば、キャッシュモデルから動体の画像情報に基づいて生成されたコードワードを省くことができる。換言すれば、背景の画像情報に基づいて生成されたコードワードをキャッシュモデルに残すことができる。
【０１０６】
なお、ここでの所定期間は、日照変動、照明変動などの明るさ変動等による画像情報の変化と、検出対象とする人等の動体を検出したときの画像情報の変化とを区別するために予め設定される期間である。
【０１０７】
ステップＳＰ３６では、キャッシュモデル中のコードワードのうち、背景モデルの更新間隔を経過して存在するキャッシュモデル中のコードワードが背景モデルに追加される。ここでの背景モデルの更新間隔は、上記の更新間隔既定値によって規定される間隔であり、上述のように、入力画像中の動体領域の割合に応じて変更される。
【０１０８】
次のステップＳＰ３７では、入力画像の画像情報と一定期間にわたって一致しなかった背景情報を含むコードワードが背景モデルから削除される。これによれば、時系列的な環境変化により既に背景ではなくなった、画像情報を含むコードワードを背景モデルから削除することができるので、背景モデルの情報量を低減することができる。また、背景モデルの情報量の低減により、背景モデルを用いた動体検出の処理速度の低下を防ぐことができる。なお、上記一定期間を求める際の始期には、最新の一致時刻Ｔｅ、或いは最新の一致時刻Ｔｅが存在しない場合は、コードワードの生成時刻Ｔｉが用いられる。
【０１０９】
このような背景モデルの更新処理を行うことによれば、明るさ変動等の環境変化に追従した背景モデルを用いて動体検出を行うことができるので、動体検出の精度を向上させることができる。
【０１１０】
以上のように、動体検出装置１は、複数の背景画像から得られる複数の背景情報を、背景画像を分割して得られるブロックごとに、背景モデルとして記憶する背景モデル記憶部１４と、入力画像中の或るブロックにおける画像情報と、背景モデルにおいて、或るブロックに対応するブロックの各背景情報とをそれぞれベクトルとして扱い、各背景情報それぞれのベクトルの中に、画像情報のベクトルと同じ方向を向いているベクトルが存在するか否かに基づいて、或るブロックから動体を検出する動体検出部１２２とを備える。
【０１１１】
このように、動体検出装置１は、動体検出手法として、明るさの変動に頑健な手法を用いつつ、信頼性の高い背景情報に基づいて動体検出を行うので、動体を高精度に検出することが可能になる。
【０１１２】
ここで、本実施形態の動体検出手法による動体検出結果と、他の動体検出手法を用いたときの動体検出結果との対比を行う。図１４は、動体検出の対象となる画像を示す図であり、図１５は、本実施形態の動体検出装置１による動体検出結果を示す図であり、図１６は、既存のコリニア動体検出手法を用いて動体検出を行ったときの動体検出結果を示す図であり、図１７は、既存のコードブック動体検出手法を用いて動体検出を行ったときの動体検出結果を示す図である。
【０１１３】
例えば、図１４に示されるような、動体としての人ＨＴを含んだ画像Ｇ１を本実施形態の動体検出装置１に入力させた場合、図１５に示される検出結果ＲＵ１を得ることがきる。これに対して、既存のコリニア動体検出手法を用いて画像Ｇ１から動体検出を行った場合は、図１６に示される検出結果ＲＵ２が得られ、既存のコードブック動体検出手法を用いて画像Ｇ１から動体検出を行った場合は、図１７に示される検出結果ＲＵ３が得られる。
【０１１４】
各検出結果ＲＵ１〜ＲＵ３を対比すると、本実施形態の動体検出装置１の検出結果ＲＵ１が最も高精度であることが分かる。
【０１１５】
既存のコードブック検出法では、背景情報を含むコードワードは、画像を構成する各画素ごとに存在していたが、本実施形態のコードワードは、各ブロックごとに存在する。
【０１１６】
本実施形態のように、各ブロックごとにコードワードを生成すれば、当該コードワードには、同一の時刻に取得された各画素の画像情報が含まれることになる。これに対して、画素ごとにコードワードを生成すると、画素ごとの各コードワードには、必ずしも同一の時刻に取得された画素の画素情報が含まれることにはならない。
【０１１７】
本実施形態の動体検出は、ブロックごとに行われるので、コードワードは、ブロックごとに生成する方が好ましい。本実施形態のように、コードワードをブロックごとに生成することによれば、同一の時刻に取得された各画素の画像情報を背景情報として用いて動体検出を行うことができるので、動体検出の精度を向上させることができる。
【０１１８】
また、本実施形態の動体検出装置１では、入力画像中の動体領域の割合に応じて、背景モデルの更新間隔が調整される。これによれば、急激な明るさ変動が発生した場合でも、背景モデルを即座に更新することができるので、動体の検出精度を向上させることができる。
【０１１９】
ここで、背景モデルの更新間隔を調整しなかった場合と、背景モデルの更新間隔を調整した場合との対比を行う。図１８は、背景モデルの更新間隔を１００フレームに固定した場合の動体検出結果と、入力画像中の動体領域の割合に応じて背景モデルの更新間隔を調整した場合の動体検出結果との対比を示す図である。
【０１２０】
例えば、図１８に示されるように、室内の照明を点灯させた明るい状態ＳＴ１から室内の照明を一斉に消灯させた場合、背景モデルの更新間隔を１００フレームに固定したときの動体検出結果ＲＫ１では、非動体が動体として検出されている箇所（図中の斜線ハッチングで示される領域）が多くなっている。これに対して、画像中の動体領域の割合に応じて背景モデルの更新間隔を調整したときの動体検出結果ＲＫ２では、動体として検出される非動体が減少している。
【０１２１】
このように、入力画像中の動体領域の割合に応じて、背景モデルの更新間隔を調整することによれば、急激な明るさ変動が発生した場合でも、背景モデルを即座に更新することができるので、動体の検出精度を向上させることができる。
【０１２２】
＜２．変形例＞
以上、動体検出装置１の実施形態について説明したが、この発明は、上記に説明した内容に限定されるものではない。
【０１２３】
例えば、上記実施形態では、画像を分割して得られるブロックの大きさを、３画素×３画素としていたが、これに限定されず、ブロックの大きさは、４画素×４画素、または５画素×５画素としてもよい。ブロックの大きさは、検出対象と想定する動体の画像内での大きさに応じて、適切な大きさに決定することが好ましい。
【０１２４】
また、上記実施形態では、或るブロックについてのコードワードには、当該ブロック内の全ての画素の画素値が背景情報として含まれている場合を例示したが、これに限定されず、コードワードには、背景情報としてブロック内の全ての画素の画素値が含まれていなくてもよい。具体的には、ブロックの大きさが、３画素×３画素であった場合、当該ブロックのコードワードには、５画素分の画素値が背景情報として含まれていてもよい。このように、コードワード内の情報量を減らすことによれば、処理量を低減することができるので、動体検出処理を高速化することができる。
【０１２５】
また、上記実施形態では、入力画像ＮＧ中の各画素が、Ｒ（赤）Ｇ（緑）Ｂ（青）それぞれの画素値を有している場合を想定していたが、これに限定されない。
【０１２６】
具体的には、入力画像ＮＧ中の各画素の画素値は、ＲＧＢ以外の他の色空間を用いて表されていてもよい。例えば、入力画像ＮＧがＹＵＶ形式の画像データである場合、輝度信号Ｙ、並びに２つの色差信号Ｕ，Ｖが、各画素の画素値として用いられることになる。
【０１２７】
本発明は詳細に説明されたが、上記した説明は、すべての局面において、例示であって、本発明がそれに限定されるものではない。例示されていない無数の変形例が、本発明の範囲から外れることなく想定され得るものと解される。
【符号の説明】
【０１２８】
１  動体検出装置
１１  画像入力部
１２  画像処理部
１２１  背景モデル生成部
１２２  動体検出部
１２３  判定部
１２４  背景更新間隔調整部
１２５  背景モデル更新部
１３  検出結果出力部
１４  背景モデル記憶部
１５  キャッシュモデル記憶部
ＢＫ  ブロック
ＣＢ  コードブック
ＣＷ，ＣＷ１〜ＣＷ３  コードワード
Ｄｔ  更新間隔規定値
ＨＭ  背景モデル
ＫＧ，ＫＧ１〜ＫＧ３  基準画像
ＮＧ  入力画像
ｘｂ  背景ベクトル
ｘｆ  画像ベクトル
【図１】
2013254291.tif 000008
【図２】
2013254291.tif 000009
【図３】
2013254291.tif 000010
【図４】
2013254291.tif 000011
【図５】
2013254291.tif 000012
【図６】
2013254291.tif 000013
【図７】
2013254291.tif 000014
【図８】
2013254291.tif 000015
【図９】
2013254291.tif 000016
【図１０】
2013254291.tif 000017
【図１１】
2013254291.tif 000018
【図１２】
2013254291.tif 000019
【図１３】
2013254291.tif 000020
【図１４】
2013254291.tif 000021
【図１５】
2013254291.tif 000022
【図１６】
2013254291.tif 000023
【図１７】
2013254291.tif 000024
【図１８】
2013254291.tif 000025