(57)【特許請求の範囲】
【請求項１】
映像フレームである対象フレームと前記対象フレームよりも前の映像フレームである前フレームと前記対象フレームよりも後の映像フレームである後フレームとを用いて、前記対象フレームと前記前フレームとの輝度の差を表す第１差分画像と、前記対象フレームと前記後フレームとの輝度の差を表す第２差分画像とを生成する差分画像生成部と、
前記第１差分画像の中のエッジを表す第１エッジ画像と、前記第２差分画像の中のエッジを表す第２エッジ画像とを生成するエッジ画像生成部と、
前記第１エッジ画像と前記第２エッジ画像とに共通するエッジを示す動体画像を生成する動体画像生成部と
を備える動体検出装置。
【請求項２】
前記動体画像に示されるエッジに基づいて、前記対象フレームに映った１つ以上の動体に対応する１つ以上の動体領域を前記動体画像から検出する動体領域検出部を備える
請求項１に記載の動体検出装置。
【請求項３】
前記動体領域検出部は、前記動体画像を複数のブロックに分割し、ブロック毎にエッジの一部を示す画素の数であるエッジ画素数を算出し、画素数閾値より多いエッジ画素数に対応するブロックである動体ブロックを特定し、隣接する動体ブロック同士を含む矩形の領域を前記動体領域として生成する
請求項２に記載の動体検出装置。
【請求項４】
前記動体画像生成部は、連続する３枚の映像フレームの組毎に動体画像を生成し、
前記動体検出装置は、前の動体画像に含まれる前の動体領域毎に前の動体領域に対応する動体領域を対象の動体画像から検出し、前記対象の動体画像に含まれるいずれの動体領域にも対応しない前の動体領域を前記前の動体画像から検出し、検出された前の動体領域に対応する領域を前記対象の動体画像から静止領域として検出する動体領域追跡部を備える
請求項２または請求項３に記載の動体検出装置。
【請求項５】
前記動体領域追跡部は、前記前の動体画像に含まれる静止領域毎に静止領域に対応する動体領域を対象の動体画像から検出し、前記対象の動体画像に含まれるいずれの動体領域にも対応しない静止領域を前記前の動体画像から検出し、検出された静止領域に対応する領域を前記対象の動体画像から前記対象の動体画像における静止領域として検出する
請求項４に記載の動体検出装置。
【請求項６】
前記動体領域追跡部は、前記対象の動体画像に含まれるいずれの動体領域とも対応しない静止領域である対象の静止領域が前記対象の動体画像に対応する時刻より追跡時間以上前の時刻に対応する動体画像から検出された静止領域に対応する場合、前記対象の動体画像における静止領域を破棄する
請求項５に記載の動体検出装置。
【請求項７】
映像フレームである対象フレームと前記対象フレームよりも前の映像フレームである前フレームと前記対象フレームよりも後の映像フレームである後フレームとを用いて、前記対象フレームと前記前フレームとの輝度の差を表す第１差分画像と、前記対象フレームと前記後フレームとの輝度の差を表す第２差分画像とを生成する差分画像生成処理と、
前記第１差分画像の中のエッジを表す第１エッジ画像と、前記第２差分画像の中のエッジを表す第２エッジ画像とを生成するエッジ画像生成処理と、
前記第１エッジ画像と前記第２エッジ画像とに共通するエッジを示す動体画像を生成する動体画像生成処理と
をコンピュータに実行させるための動体検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像フレームに映った動体を検出する技術に関するものである。
【背景技術】
【０００２】
人のような動体を画像処理によって検出するために、フレーム間差分を利用する技術が広く使われている。フレーム間差分とは、画像同士の輝度情報の差分である。
しかし、撮影環境における照度の変化などを起因として輝度情報の変化が起こるため、動体の動き以外のノイズがフレーム間差分の結果に含まれてしまう。【０００３】
特許文献１では、フレーム間差分および学習などにより動体同士の移動方向の違いおよび動体の変化をロバストに認識する技術について述べられている。
しかし、特許文献１では、外光が発生した時の照度の変化を起因とする輝度情報の変化を除去する技術については述べられていない。
したがって、特許文献１の技術では、外光が発生した時の照度の変化を起因とする輝度情報の変化が動体の動きとして検出されてしまう。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−９０７０８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
画像処理によって動体を検出する場合、動体の動き以外の要因が画像の輝度情報に影響を与えるため、検出精度が低下する。動体の動き以外の要因として、例えば照明のオンまたはオフによる照度の変化が考えられる。【０００６】
本発明は、動体の動き以外の要因による検出精度の低下を抑止できるようにすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明の動体検出装置は、
映像フレームである対象フレームと前記対象フレームよりも前の映像フレームである前フレームと前記対象フレームよりも後の映像フレームである後フレームとを用いて、前記対象フレームと前記前フレームとの輝度の差を表す第１差分画像と、前記対象フレームと前記後フレームとの輝度の差を表す第２差分画像とを生成する差分画像生成部と、
前記第１差分画像の中のエッジを表す第１エッジ画像と、前記第２差分画像の中のエッジを表す第２エッジ画像とを生成するエッジ画像生成部と、
前記第１エッジ画像と前記第２エッジ画像とに共通するエッジを示す動体画像を生成する動体画像生成部とを備える。
【発明の効果】
【０００８】
本発明によれば、第１エッジ画像と第２エッジ画像とに共通するエッジを示す画像が動体画像として生成される。そのため、動体の動き以外の要因が除去され、検出精度の低下を抑止できる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１における動体検出装置１００の構成図。
【図２】実施の形態１における前フレーム２０１と対象フレーム２０２と第１差分画像２１１との関係図。
【図３】実施の形態１における対象フレーム２０２と後フレーム２０３と第２差分画像２１２との関係図。
【図４】実施の形態１における第１差分画像２１１と第１エッジ画像２２１との官益図。
【図５】実施の形態１における第２差分画像２１２と第２エッジ画像２２２との関係図。
【図６】実施の形態１における第１エッジ画像２２１と第２エッジ画像２２２と動体画像２３０との関係図。
【図７】実施の形態１における動体検出方法のフローチャート。
【図８】外光に起因して輝度情報が変化した場合の差分画像２９３を示す図。
【図９】実施の形態２における動体検出装置１００の構成図。
【図１０】実施の形態２における動体画像２３０と動体ブロック２４１と動体領域２４２との関係図。
【図１１】実施の形態２における動体領域２４２の追跡を示す図。
【図１２】実施の形態２における動体領域２４２の追跡を示す図。
【図１３】実施の形態２における静止領域２５０の追跡を示す図。
【図１４】実施の形態２における静止領域２５０の追跡を示す図。
【図１５】実施の形態２における動体領域検出処理のフローチャート。
【図１６】実施の形態２における動体領域追跡処理のフローチャート。
【図１７】実施の形態２における動体領域追跡処理のフローチャート。
【図１８】実施の形態２における動体領域追跡処理のフローチャート。
【図１９】実施の形態における動体検出装置１００のハードウェア構成図。
【発明を実施するための形態】
【００１０】
実施の形態および図面において、同じ要素および対応する要素には同じ符号を付している。同じ符号が付された要素の説明は適宜に省略または簡略化する。図中の矢印はデータの流れ又は処理の流れを主に示している。
【００１１】
実施の形態１．
映像フレームに映った動体を検出する形態について、図１から図７に基づいて説明する。
【００１２】
＊＊＊構成の説明＊＊＊
図１に基づいて、動体検出装置１００の構成を説明する。
動体検出装置１００は、プロセッサ９０１とメモリ９０２と補助記憶装置９０３と入出力インタフェース９０４といったハードウェアを備えるコンピュータである。これらのハードウェアは、信号線を介して互いに接続されている。
【００１３】
プロセッサ９０１は、演算処理を行うＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）であり、他のハードウェアを制御する。例えば、プロセッサ９０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、またはＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）である。
メモリ９０２は揮発性の記憶装置である。メモリ９０２は、主記憶装置またはメインメモリとも呼ばれる。例えば、メモリ９０２はＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。メモリ９０２に記憶されたデータは必要に応じて補助記憶装置９０３に保存される。
補助記憶装置９０３は不揮発性の記憶装置である。例えば、補助記憶装置９０３は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、またはフラッシュメモリである。補助記憶装置９０３に記憶されたデータは必要に応じてメモリ９０２にロードされる。
【００１４】
入出力インタフェース９０４は入力装置および出力装置が接続されるポートである。例えば、入出力インタフェース９０４はＵＳＢ端子であり、入力装置はレシーバ、キーボードおよびマウスであり、出力装置はトランスミッタおよびディスプレイである。ＵＳＢはＵｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略称である。
【００１５】
動体検出装置１００は、差分画像生成部１１０とエッジ画像生成部１２０と動体画像生成部１３０といったソフトウェア要素を備える。ソフトウェア要素はソフトウェアで実現される要素である。
【００１６】
補助記憶装置９０３には、差分画像生成部１１０とエッジ画像生成部１２０と動体画像生成部１３０としてコンピュータを機能させるための動体検出プログラムが記憶されている。動体検出プログラムは、メモリ９０２にロードされて、プロセッサ９０１によって実行される。
さらに、補助記憶装置９０３にはＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が記憶されている。ＯＳの少なくとも一部は、メモリ９０２にロードされて、プロセッサ９０１によって実行される。
つまり、プロセッサ９０１は、ＯＳを実行しながら、動体検出プログラムを実行する。
動体検出プログラムを実行して得られるデータは、メモリ９０２、補助記憶装置９０３、プロセッサ９０１内のレジスタまたはプロセッサ９０１内のキャッシュメモリといった記憶装置に記憶される。
【００１７】
メモリ９０２はデータを記憶する記憶部１９１として機能する。但し、他の記憶装置が、メモリ９０２の代わりに、又は、メモリ９０２と共に、記憶部１９１として機能してもよい。
入出力インタフェース９０４は、入力を受け付ける受付部１９２として機能する。また、入出力インタフェース９０４は、データを出力する出力部１９３として機能する。
【００１８】
動体検出装置１００は、プロセッサ９０１を代替する複数のプロセッサを備えてもよい。複数のプロセッサは、プロセッサ９０１の役割を分担する。
【００１９】
動体検出プログラムは、磁気ディスク、光ディスクまたはフラッシュメモリ等の不揮発性の記憶媒体にコンピュータ読み取り可能に記憶することができる。不揮発性の記憶媒体は、一時的でない有形の媒体である。
【００２０】
＊＊＊機能の説明＊＊＊
差分画像生成部１１０とエッジ画像生成部１２０と動体画像生成部１３０とのそれぞれの機能を説明する。
【００２１】
図２および図３に基づいて、差分画像生成部１１０の機能を説明する。
図２において、差分画像生成部１１０は、対象フレーム２０２と前フレーム２０１とを用いて、第１差分画像２１１を生成する。
対象フレーム２０２は映像フレームである。映像フレームは画像のデータである。図２および図３の対象フレーム２０２は、移動している人がいる部屋を上から撮影して得られた画像のデータである。
前フレーム２０１は対象フレーム２０２よりも前の映像フレームである。具体的には、前フレーム２０１は対象フレーム２０２の一つ前の映像フレームである。図２において、対象フレーム２０２における部屋は、前フレーム２０１における部屋よりも明るい。
第１差分画像２１１は、対象フレーム２０２と前フレーム２０１との輝度の差を表す画像である。図２において、対象フレーム２０２における部屋は前フレーム２０１における部屋よりも明るいため、第１差分画像２１１には、移動している人の他に、部屋の照度差が表れている。
【００２２】
図３において、差分画像生成部１１０は、対象フレーム２０２と後フレーム２０３とを用いて、第２差分画像２１２を生成する。
後フレーム２０３は対象フレーム２０２よりも後の映像フレームである。具体的には、後フレーム２０３は対象フレーム２０２の次の映像フレームである。図３において、対象フレーム２０２における部屋の明るさは、後フレーム２０３における部屋の明るさと変わらない。
第２差分画像２１２は、対象フレーム２０２と後フレーム２０３との輝度の差を表す画像である。図３において、対象フレーム２０２における部屋の明るさは後フレーム２０３における部屋の明るさと変わらないため、第２差分画像２１２には、主に、移動している人が表れている。
【００２３】
図４および図５に基づいて、エッジ画像生成部１２０の機能を説明する。
図４において、エッジ画像生成部１２０は、第１差分画像２１１を用いて第１エッジ画像２２１を生成する。
第１エッジ画像２２１は、第１差分画像２１１の中のエッジを表す画像である。
エッジは、輝度の境となる箇所である。つまり、エッジを境にして輝度は大きく変わる。
【００２４】
図５において、エッジ画像生成部１２０は、第２差分画像２１２を用いて第２エッジ画像２２２を生成する。
第２エッジ画像２２２は、第２差分画像２１２の中のエッジを表す画像である。
【００２５】
図６に基づいて、動体画像生成部１３０の機能を説明する。
動体画像生成部１３０は、第１エッジ画像２２１と第２エッジ画像２２２とに共通するエッジを示す画像を生成する。生成される画像を動体画像２３０という。
動体画像２３０は、対象フレームに映った動体のエッジを示す画像に相当する。図６の動体画像２３０は、対象フレーム２０２（図２および図３参照）に映った人のエッジを示している。
【００２６】
＊＊＊動作の説明＊＊＊
動体検出装置１００の動作は動体検出方法に相当する。また、動体検出方法の手順は動体検出プログラムの手順に相当する。
【００２７】
図７に基づいて、動体検出方法を説明する。
ステップＳ１０１において、受付部１９２は映像フレームを受け付ける。
記憶部１９１は、映像フレームが受け付けられた時刻に対応付けて映像フレームを記憶する。
【００２８】
ステップＳ１１１において、差分画像生成部１１０は、対象フレームが記憶部１９１に記憶されているか判定する。
対象フレームは、ステップＳ１０１で受け付けられた映像フレームの前の時刻に対応付けられた映像フレームである。
対象フレームが記憶部１９１に記憶されている場合、処理はステップＳ１１２に進む。
対象フレームが記憶部１９１に記憶されていない場合、処理はステップＳ１０１に進む。
【００２９】
ステップＳ１１２において、差分画像生成部１１０は、対象フレームと後フレームとを用いて差分画像を生成する。後フレームは、ステップＳ１０１で受け付けられた映像フレームである。
記憶部１９１は、差分画像が生成された時刻に対応付けて差分画像を記憶する。
【００３０】
具体的には、差分画像生成部１１０は、差分画像を以下のように生成する。
差分画像生成部１１０は、対象フレームの画素毎に以下の処理を行う。
差分画像生成部１１０は、対象フレームの画素に対応する後フレームの画素を選択し、対象フレームの画素と後フレームの画素との輝度差を算出し、対象フレームの画素に対応する差分画像の画素を選択し、差分画像の画素に輝度差を設定する。
Ｘフレームの画素に対応するＹフレームの画素は、Ｙフレームに含まれる画素のうち、Ｘフレームの画素を識別する座標値と同じ座標値で識別される画素である。つまり、Ｘフレームの（ｕ、ｖ）に位置する画素に対応するＹフレームの画素は、Ｙフレームの（ｕ、ｖ）に位置する画素である。
【００３１】
ステップＳ１２１において、エッジ画像生成部１２０は、ステップＳ１１２で生成された差分画像を用いてエッジ画像を生成する。
記憶部１９１は、エッジ画像が生成された時刻に対応付けてエッジ画像を記憶する。
【００３２】
具体的には、エッジ画像生成部１２０は、差分画像に対してエッジ抽出を行うことによって、エッジ画像を生成する。
エッジ抽出は、輝度の境となる箇所をエッジとして抽出するための処理である。エッジ抽出は、従来の技術であり、エッジ検出とも呼ばれる。
【００３３】
ステップＳ１３１において、動体画像生成部１３０は、第１エッジ画像が記憶部１９１に記憶されているか判定する。
第１エッジ画像は、ステップＳ１２１で生成されたエッジ画像の前の時刻に対応付けられたエッジ画像である。
第１エッジ画像が記憶部１９１に記憶されている場合、処理はステップＳ１３２に進む。
第１エッジ画像が記憶部１９１に記憶されていない場合、処理はステップＳ１０１に進む。
【００３４】
ステップＳ１３２において、動体画像生成部１３０は、第１エッジ画像と第２エッジ画像とを用いて動体画像を生成する。第２エッジ画像は、ステップＳ１２１で生成されたエッジ画像である。
記憶部１９１は、動体画像が生成された時刻に対応付けて動体画像を記憶する。
【００３５】
具体的には、動体画像生成部１３０は、動体画像を以下のように生成する。
動体画像生成部１３０は、第１エッジ画像の画素毎に以下の処理を行う。
動体画像生成部１３０は、第１エッジ画像の画素に対応する第２エッジ画像の画素を選択し、第１エッジ画像の画素と第２エッジ画像の画素との論理積を算出し、第１エッジ画像の画素に対応する動体画像の画素を選択し、動体画像の画素に論理積を設定する。
Ｘ画像の画素に対応するＹ画像の画素は、Ｙ画像に含まれる画素のうち、Ｘ画像の画素を識別する座標値と同じ座標値で識別される画素である。つまり、Ｘ画像の（ｕ、ｖ）に位置する画素に対応するＹ画像の画素は、Ｙ画像の（ｕ、ｖ）に位置する画素である。
例えば、第１エッジ画像および第２エッジ画像において、エッジの一部である画素の値を「１」とし、エッジの一部でない画素の値を「０」とする。第１エッジ画像の画素と第２エッジ画像の画素とのそれぞれの値が「１」である場合、動体画像の画素の値は「１」である。第１エッジ画像の画素と第２エッジ画像の画素との少なくとも一方の値が「０」である場合、動体画像の画素の値は「０」である。
【００３６】
ステップＳ１４１において、出力部１９３は、ステップＳ１３２で生成された動体画像を出力する。
ステップＳ１４１の後、処理はステップＳ１０１に進む。
【００３７】
＊＊＊実施の形態１の効果＊＊＊
実施の形態１は、外光によって変化する輝度情報から動体のみを検出するという課題を解決する。外光が発生した時においても物体のエッジは変化しないため、外光にロバストなエッジ情報を使用することによって、動体および動体位置の検出が実現される。
実施の形態１により、照度変化に起因する映像フレーム中の輝度変化が除去されるため、ロバストに動体の動きの検出が可能となる。
【００３８】
図８に、外光に起因して輝度情報が変化した映像フレームの例を示す。
前フレーム２９１は後フレーム２９２の前に得られた映像フレームであり、後フレーム２９２は前フレーム２９１の後に得られた映像フレームである。差分画像２９３は、前フレーム２９１と後フレーム２９２との輝度の差分を表す画像である。
前フレーム２９１が得られた時から後フレーム２９２が得られた時までの間に外光が強くなったため、前フレーム２９１は後フレーム２９２よりも暗く、後フレーム２９２は前フレーム２９１よりも明るい。
そのため、差分画像２９３には、移動した人（右側の人）だけでなく、移動していない人（左側の人）と移動しない背景とを含めた全体が映っている。
しかし、動体検出装置１００は、第１差分画像と第２差分画像とを用いるため、外光に起因して映像フレームの輝度情報が大きく変化したとしても、映像フレーム中の動体をエッジ情報として抽出することが可能である。
【００３９】
実施の形態２．
動体を追跡する形態について、主に実施の形態１と異なる点を図９から図１８に基づいて説明する。
【００４０】
＊＊＊構成の説明＊＊＊
図９に基づいて、動体検出装置１００の構成を説明する。
動体検出装置１００は、差分画像生成部１１０とエッジ画像生成部１２０と動体画像生成部１３０との他に、動体領域検出部１４０と動体領域追跡部１５０とをソフトウェア要素として備える。
動体検出プログラムは、差分画像生成部１１０とエッジ画像生成部１２０と動体画像生成部１３０と動体領域検出部１４０と動体領域追跡部１５０としてコンピュータを機能させるためのプログラムである。
【００４１】
＊＊＊機能の説明＊＊＊
実施の形態１で説明したように、動体画像生成部１３０は、時系列順に連続する３枚の映像フレームの組毎に動体画像を生成する。
【００４２】
図１０に基づいて、動体領域検出部１４０の機能を説明する。
動体領域検出部１４０は、動体画像２３０に示されるエッジに基づいて、対象フレームに映った１つ以上の動体に対応する１つ以上の動体領域２４２を動体画像２３０から検出する。
動体領域２４２は、動体を表す領域である。
【００４３】
具体的には、動体領域検出部１４０は、動体領域２４２を以下の手順で検出する。
（１）動体領域検出部１４０は、動体画像２３０を複数のブロックに分割する。
（２）動体領域検出部１４０は、ブロック毎にエッジ画素数を算出する。エッジ画素数は、エッジの一部を示す画素の数である。
（３）動体領域検出部１４０は、ブロック毎のエッジ画素数に基づいて、１つ以上の動体ブロック２４１を特定する。動体ブロック２４１は、画素数閾値より多いエッジ画素数に対応するブロックである。
（４）動体領域検出部１４０は、隣接する動体ブロック２４１同士を含む矩形の領域を生成する。生成される領域が動体領域２４２である。
【００４４】
図１１および図１２に基づいて、動体領域追跡部１５０の機能を説明する。
図１１において、動体領域追跡部１５０は、前の動体画像に含まれる前の動体領域２４２Ｂ毎に前の動体領域２４２Ｂに対応する動体領域２４２Ｔを対象の動体画像から検出する。
図１２において、動体領域追跡部１５０は、対象の動体画像に含まれるいずれの動体領域２４２Ｔにも対応しない前の動体領域２４２Ｂを前の動体画像から検出する。
そして、動体領域追跡部１５０は、検出された前の動体領域２４２Ｂに対応する領域を対象の動体画像から静止領域２５０として検出する。
静止領域２５０は、静止している動体に対応する領域である。
【００４５】
さらに、動体領域追跡部１５０は、前の動体画像に含まれる静止領域毎に静止領域に対応する動体領域を対象の動体画像から検出する。
次に、動体領域追跡部１５０は、対象の動体画像に含まれるいずれの動体領域にも対応しない静止領域を前の動体画像から検出する。検出される静止領域を対象の静止領域という。
そして、動体領域追跡部１５０は、対象の静止領域に対応する領域を対象の動体画像から検出する。検出される領域を対象の動体画像における静止領域という。
【００４６】
但し、対象の静止領域が対象の動体画像に対応する時刻より追跡時間以上前の時刻に対応する動体画像から検出された静止領域に対応する場合、動体領域追跡部１５０は、対象の動体画像における静止領域を破棄する。
追跡時間は、能動的に動く動体が静止領域で静止していると仮定して静止領域が追跡される時間であり、予め決められた時間である。
【００４７】
具体的には、動体領域追跡部１５０は以下のように動作する。
まず、動体領域追跡部１５０は、静止領域毎に、静止領域が初めて検出されたときに追跡時間を残り時間として設定する。
次に、動体領域追跡部１５０は、静止領域毎に、静止領域が初めて検出されたときから静止領域に対応する動体領域が検出されるまで（又は静止領域が破棄されるまで）、動体画像が生成される毎に、静止領域の残り時間を減らす。
そして、動体領域追跡部１５０は、残り時間がゼロになった静止領域を破棄する。
【００４８】
図１３において、前の動体画像は動体領域２４２Ｂを含んでいる。動体領域２４２Ｂに対応する動体領域は対象の動体画像に無い。そのため、対象の動体画像から静止領域２５０が検出される。次の動体画像は動体領域２４２Ｎを含んでいる。動体領域２４２Ｎは静止領域２５０に対応する動体領域である。
追跡時間が経過する前に静止領域２５０に対応する動体領域２４２Ｎが検出されたものとする。その場合、動体領域２４２Ｂ、静止領域２５０および動体領域２４２Ｎは能動動体領域であると考えられる。能動動体領域は能動動体を表す領域である。能動動体は、動かされた物ではない動体である。つまり、能動動体は自ら動く動体である。例えば、能動動体は人である。
【００４９】
図１４において、対象の動体画像は動体領域２４２Ｂを含んでいる。動体領域２４２Ｂに対応する動体領域は対象の動体画像に無い。そのため、対象の動体画像から静止領域２５０が検出される。静止領域２５０に対応する動体領域は次の動体画像に無い。
追跡時間が経過する前に静止領域２５０に対応する動体領域が検出されなかったものとする。その場合、動体領域２４２Ｂおよび静止領域２５０は受動動体領域であると考えられる。受動動体領域は受動動体を表す領域である。受動動体は動かされた物である。つまり、受動動体は自ら動かない物である。例えば、受動動体は椅子である。
追跡時間が経過した場合、静止領域２５０は破棄される。
【００５０】
＊＊＊動作の説明＊＊＊
図１５に基づいて、動体領域検出処理を説明する。
動体領域検出処理は、新たな動体画像が生成される毎に動体領域検出部１４０によって行われる。
【００５１】
ステップＳ２０１において、動体領域検出部１４０は、動体画像を複数のブロックに分割する。
具体的には、動体領域検出部１４０は、動体画像をＷ×Ｈ画素の領域毎に区切る。Ｗ×Ｈ画素の領域がブロックである。ＷおよびＨは任意の整数である。
【００５２】
ステップＳ２０２において、動体領域検出部１４０は、ブロック毎にエッジ画素数を算出する。
【００５３】
具体的には、動体領域検出部１４０は、ブロック毎に以下のようにエッジ画素数を算出する。
エッジを示す画素の値がＸである場合、動体領域検出部１４０は、Ｘが設定された画素の数を数える。Ｘが設定された画素の数がエッジ画素数である。Ｘは特定の値である。
【００５４】
ステップＳ２０３において、動体領域検出部１４０は、複数のブロックに含まれる動体ブロックを特定する。
【００５５】
具体的には、動体領域検出部１４０は、対象ブロックが動体ブロックであるか以下のように判定する。
動体領域検出部１４０は、対象ブロックのエッジ画素数を画素数閾値と比較する。エッジ画素数は予め決められた値である。
対象ブロックのエッジ画素数が画素数閾値以上である場合、動体領域検出部１４０は、対象ブロックが動体ブロックであると判定する。
対象ブロックのエッジ画素数が画素数閾値未満である場合、動体領域検出部１４０は、対象ブロックが動体ブロックでないと判定する。
【００５６】
ステップＳ２０３により、１つ以上の動体ブロックが特定される。
【００５７】
ステップＳ２０４において、動体領域検出部１４０は、１つ以上の動体ブロックに基づいて、１つ以上の動体領域を生成する。
【００５８】
具体的には、動体領域検出部１４０は、動体ブロック毎に以下のように動体領域を生成する。
動体領域検出部１４０は、対象の動体ブロックに隣接している動体ブロックが有るか判定する。
対象の動体ブロックに隣接している動体ブロックが有る場合、動体領域検出部１４０は、対象の動体ブロックと隣接の動体ブロックとを囲う矩形を生成する。生成された矩形で囲われた領域が動体領域である。
対象の動体ブロックに隣接している動体ブロックが無い場合、対象の動体ブロックが動体領域である。
【００５９】
ステップＳ２０５において、動体領域検出部１４０は、動体領域毎に動体領域に領域識別子を付与する。領域識別子は動体領域を識別する識別子である。例えば、領域識別子は通し番号である。
具体的には、動体領域検出部１４０は、動体領域毎に位置情報と領域識別子とを互いに対応付けて記憶部１９１に記憶する。位置情報は、動体画像における動体領域の位置を特定する情報である。例えば、位置情報は、動体領域における４つの頂点のそれぞれの座標値である。
【００６０】
図１６、図１７および図１８に基づいて、動体領域追跡処理を説明する。
動体領域追跡処理は、新たな動体画像が生成される毎に動体領域検出処理の後に動体領域追跡部１５０によって実行される。
動体領域追跡処理の説明において、新たな動体画像を対象の動体領域といい、新たな動体画像の１つ前に生成された動体画像を前の動体画像という。
【００６１】
ステップＳ２１１（図１６参照）において、動体領域追跡部１５０は、対象の動体画像に含まれる動体領域のうち未選択の動体領域を１つ選択する。
【００６２】
ステップＳ２１１以降の説明において、ステップＳ２１１で選択された動体領域を対象の動体領域という。
【００６３】
ステップＳ２１２において、動体領域追跡部１５０は、前の動体画像に含まれる追跡領域毎に、対象の動体領域と追跡領域との間の距離を算出する。
追跡領域は、前の動体画像に含まれる動体領域または前の動体画像に含まれる静止領域である。
具体的には、動体領域追跡部１５０は、対象の動体領域の位置情報と追跡領域の位置情報とを用いて、対象の動体領域と追跡領域との間の距離を算出する。
例えば、動体領域追跡部１５０は、対象の動体領域の左上の頂点から追跡領域の左上の頂点までの距離を算出する。
【００６４】
ステップＳ２１３において、動体領域追跡部１５０は、対象の動体領域に対応する追跡領域が有るか判定する。対象の動体領域に対応する追跡領域を対応追跡領域という。
具体的には、動体領域追跡部１５０は、対象の動体領域との距離が距離閾値以下である追跡領域が有るか判定する。対象の動体領域との距離が距離閾値以下である追跡領域が対応追跡領域である。
対応追跡領域が有る場合、処理はステップＳ２１４に進む。
対応追跡領域が無い場合、処理はステップＳ２１５に進む。
【００６５】
ステップＳ２１４において、対象の動体領域の領域識別子を対応追跡領域の領域識別子に更新する。
【００６６】
ステップＳ２１５において、動体領域追跡部１５０は、対象の動体画像に含まれる動体領域の中に未選択の動体領域が有るか判定する。
未選択の動体領域が有る場合、処理はステップＳ２１１に進む。
未選択の動体領域が無い場合、処理はステップＳ２２１（図１７参照）に進む。
【００６７】
ステップＳ２２１（図１７参照）において、動体領域追跡部１５０は、前の動体画像に含まれる追跡領域のうち未選択の追跡領域を１つ選択する。
【００６８】
ステップＳ２１２以降の説明において、ステップＳ２２１で選択された追跡領域を対象の追跡領域という。
【００６９】
ステップＳ２２２において、動体領域追跡部１５０は、対象の動体画像に含まれる動体領域の中に、対象の追跡領域に対応する動体領域が有るか判定する。対象の追跡領域に対応する動体領域を対応動体領域という。
具体的には、動体領域追跡部１５０は、対象の追跡領域と領域識別子が同じ動体領域が対象の動体画像に含まれるか判定する。対象の追跡領域と領域識別子が同じ動体領域が対応動体領域である。
対応動体領域が有る場合、処理はステップＳ２２３に進む。
対応動体領域が無い場合、処理はステップＳ２３１（図１８参照）に進む。
【００７０】
ステップＳ２２３において、動体領域追跡部１５０は、対象の追跡領域が動体領域と静止領域とのいずれであるか判定する。
具体的には、動体領域追跡部１５０は、対象の追跡領域の領域識別子に対応付けて残り時間が記憶されているか判定する。対象の追跡領域の領域識別子に対応付けて残り時間が記録されている場合、対象の追跡領域は静止領域である。対象の追跡領域の領域識別子に対応付けて残り時間が記録されていない場合、対象の追跡領域は動体領域である。
対象の追跡領域が動体領域である場合、処理はステップＳ２３５（図１８参照）に進む。
対象の追跡領域が静止領域である場合、処理はステップＳ２２４に進む。
【００７１】
ステップＳ２２４において、動体領域追跡部１５０は、対象の追跡領域の残り時間を初期化する。
具体的には、動体領域追跡部１５０は、対象の追跡領域の領域識別子に対応付けられた残り時間を追跡時間に更新する。
ステップＳ２２４の後、処理はステップＳ２３５（図１８参照）に進む。
【００７２】
ステップＳ２３１（図１８参照）において、動体領域追跡部１５０は、対象の動体画像の中に、対象の追跡領域に対応する静止領域を生成する。対象の追跡領域に対応する静止領域を対応静止領域という。
具体的には、動体領域追跡部１５０は、対象の動体画像に対応付けて対応静止領域の位置情報と対応静止領域の領域識別子と対応静止領域の残り時間とを記憶部１９１に記憶する。対応静止領域の位置情報は、対象の追跡領域の位置情報と同じである。対応静止領域の領域識別子は、対象の追跡領域の領域識別子と同じである。対応静止領域の残り時間は、追跡時間と同じ時間である。
【００７３】
ステップＳ２３２において、動体領域追跡部１５０は、対象の追跡領域が動体領域と静止領域とのいずれであるか判定する。
具体的には、動体領域追跡部１５０は、対象の追跡領域の領域識別子に対応付けて残り時間が記憶されているか判定する。対象の追跡領域の領域識別子に対応付けて残り時間が記録されている場合、対象の追跡領域は静止領域である。対象の追跡領域の領域識別子に対応付けて残り時間が記録されていない場合、対象の追跡領域は動体領域である。
対象の追跡領域が動体領域である場合、処理はステップＳ２３５に進む。
対象の追跡領域が静止領域である場合、処理はステップＳ２３３に進む。
【００７４】
ステップＳ２３３において、動体領域追跡部１５０は、対象の追跡領域から対応静止領域に残り時間を引き継ぐ。
具体的には、動体領域追跡部１５０は、対象静止領域の領域識別子に対応付けられた残り時間を、対象の追跡領域の領域識別子に対応付けられた残り時間と同じ時間に更新する。
【００７５】
ステップＳ２３４において、動体領域追跡部１５０は、対応静止領域の残り時間を減らす。
具体的には、動体領域追跡部１５０は、対応静止領域の領域識別子に対応付けられた残り時間から単位経過時間を減らす。単位経過時間は、映像フレームが入力される時間間隔
または動体画像が生成される時間間隔として予め決められた時間である。
【００７６】
ステップＳ２３５において、動体領域追跡部１５０は、前の動体画像に含まれる追跡領域の中に未選択の追跡領域が有るか判定する。
未選択の追跡領域が有る場合、処理はステップＳ２２１（図１７参照）に戻る。
未選択の追跡領域が無い場合、処理はステップＳ２４１に進む。
【００７７】
ステップＳ２４１において、動体領域追跡部１５０は、対象の動体画像に含まれる静止領域のうち残り時間がゼロである静止領域を破棄する。
具体的には、動体領域追跡部１５０は、対象の動体画像に含まれる静止領域毎に静止領域の領域識別子に対応付けられた残り時間を参照する。そして、残り時間がゼロ以下である場合、動体領域追跡部１５０は、その静止領域の情報（領域識別子、位置情報、残り時間）を記憶部１９１から削除する。
ステップＳ２４１の後、動体領域追跡処理は終了する。
【００７８】
＊＊＊実施の形態２の効果＊＊＊
動体検出装置１００は、外乱に起因して映像フレームの輝度情報が大きく変化したとしても、映像フレーム中の動体領域をエッジ情報として抽出することが可能である。
さらに、動体検出装置１００は、エッジ情報を用いて、静止した動体の位置を検出することが可能である。また、動体検出装置１００は、静止した物体が能動動体と受動動体とのいずれであるかを判別することが可能である。
【００７９】
＊＊＊実施の形態の補足＊＊＊
実施の形態において、動体検出装置１００の機能はハードウェアで実現してもよい。
図１９に、動体検出装置１００の機能がハードウェアで実現される場合の構成を示す。
動体検出装置１００は処理回路９９０を備える。処理回路９９０はプロセッシングサーキットリともいう。
処理回路９９０は、差分画像生成部１１０とエッジ画像生成部１２０と動体画像生成部１３０と動体領域検出部１４０と動体領域追跡部１５０と記憶部１９１とを実現する専用の電子回路である。
例えば、処理回路９９０は、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ロジックＩＣ、ＧＡ、ＡＳＩＣ、ＦＰＧＡまたはこれらの組み合わせである。ＧＡはＧａｔｅ  Ａｒｒａｙの略称であり、ＡＳＩＣはＡｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔの略称であり、ＦＰＧＡはＦｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙの略称である。
【００８０】
動体検出装置１００は、処理回路９９０を代替する複数の処理回路を備えてもよい。複数の処理回路は、処理回路９９０の役割を分担する。
【００８１】
実施の形態は、好ましい形態の例示であり、本発明の技術的範囲を制限することを意図するものではない。実施の形態は、部分的に実施してもよいし、他の形態と組み合わせて実施してもよい。フローチャート等を用いて説明した手順は、適宜に変更してもよい。
【符号の説明】
【００８２】
１００  動体検出装置、１１０  差分画像生成部、１２０  エッジ画像生成部、１３０  動体画像生成部、１４０  動体領域検出部、１５０  動体領域追跡部、１９１  記憶部、１９２  受付部、１９３  出力部、２０１  前フレーム、２０２  対象フレーム、２０３  後フレーム、２１１  第１差分画像、２１２  第２差分画像、２２１  第１エッジ画像、２２２  第２エッジ画像、２３０  動体画像、２４１  動体ブロック、２４２  動体領域、２５０  静止領域、９０１  プロセッサ、９０２  メモリ、９０３  補助記憶装置、９０４  入出力インタフェース、９９０  処理回路。
【図１】
0006532627.tif 000002
【図２】
0006532627.tif 000003
【図３】
0006532627.tif 000004
【図４】
0006532627.tif 000005
【図５】
0006532627.tif 000006
【図６】
0006532627.tif 000007
【図７】
0006532627.tif 000008
【図８】
0006532627.tif 000009
【図９】
0006532627.tif 000010
【図１０】
0006532627.tif 000011
【図１１】
0006532627.tif 000012
【図１２】
0006532627.tif 000013
【図１３】
0006532627.tif 000014
【図１４】
0006532627.tif 000015
【図１５】
0006532627.tif 000016
【図１６】
0006532627.tif 000017
【図１７】
0006532627.tif 000018
【図１８】
0006532627.tif 000019
【図１９】
0006532627.tif 000020