(57)【特許請求の範囲】
【請求項１】
第１画像を取得する取得手段と、
前記第１画像を再帰的に縮小することで生成された画像を第Ｎ（Ｎは２以上の自然数）画像とした場合における前記第１乃至Ｎ画像に対して被写体検出処理を行う検出手段であって、第ｍ画像（１≦ｍ≦Ｎ）に含まれる各画像領域のうち、該第ｍ画像と関連づけられている画像領域に対して被写体検出処理を行う前記検出手段と
を備えることを特徴とする画像処理装置。
【請求項２】
更に、
前記第１乃至Ｎ画像において相対的に同じ位置の画像領域と、前記第１乃至Ｎ画像の何れかと、を関連づけたテーブルを保持する保持手段を備え、
前記検出手段は、前記第ｍ画像に含まれる各画像領域のうち、前記テーブルによって該第ｍ画像と関連づけられている画像領域に対して被写体検出処理を行う
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
更に、
前記第１画像に含まれる各画像領域に対し、該画像領域内に被写体が映った場合に想定される想定被写体サイズを、前記第１画像上に設定された１以上の領域のサイズから求める手段と、
前記第１乃至Ｎ画像において相対的に同じ位置の画像領域に対し、前記第１乃至Ｎ画像のうち該画像領域について求めた想定被写体サイズに対応づけられている画像を関連づけた前記テーブルを生成して前記保持手段に登録する登録手段と
を備えることを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記検出手段は、前記第１画像において動体が映っている領域を動体領域として検出し、前記第ｍ画像に含まれる各画像領域のうち、該第ｍ画像と関連づけられており且つ前記第ｍ画像内で前記動体領域に対応する領域を含む画像領域に対して被写体検出処理を行うことを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記検出手段は、前記第ｍ画像に含まれる各画像領域のうち、該第ｍ画像と関連づけられており且つ被写体が規定回数以上検出される画像領域として特定されている画像領域に対して被写体検出処理を行うことを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項６】
画像処理方法であって、
取得手段が、第１画像を取得する取得工程と、
検出手段が、前記第１画像を再帰的に縮小することで生成された画像を第Ｎ（Ｎは２以上の自然数）画像とした場合における前記第１乃至Ｎ画像に対して被写体検出処理を行う検出工程であって、第ｍ画像（１≦ｍ≦Ｎ）に含まれる各画像領域のうち、該第ｍ画像と関連づけられている画像領域に対して被写体検出処理を行う前記検出工程と
を有することを特徴とする画像処理方法。
【請求項７】
コンピュータを、請求項１乃至５の何れか１項に記載の画像処理装置の各手段として機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像から被写体を検出するための技術に関するものである。
【背景技術】
【０００２】
従来、監視カメラの画像から顔や人体等の特定の対象を検出する場合、パターンマッチング処理により対象の検出を行っていた。例えば、特許文献１では、画像の大きさを変更しながら照合パターンを画像全域に用いて複数の局所パターンを抽出し、それぞれの局所特徴量を算出する。そして、局所特徴量に重み付けを行った結果の総和から人体であるかを判定する。また、これらの特定物体の検出処理は、ネットワークカメラ機器の高画素化という背景や、監視等で実時間処理を行うために高速に実行できることが必要である。処理の高速化を実現する方法について、特許文献２には、パターンマッチングに用いる縮小画像（レイヤ）の優先度を過去の画像撮影結果に基づいて切り替える手法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−２１１３１１号公報
【特許文献２】特許第４６２６４９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特に監視カメラにおいては主に奥行のある広範囲を撮像することが多く、同一画面中に大きい被写体と小さい被写体が混在する場面があり、被写体が画面内で一様の大きさになるとは限らない。
【０００５】
この環境において、検出対象物体をもれなく検出するためには、物体の大きさが小さい場合から大きい場合までの照合パターンを用いる必要がある。そのため、照合処理に用いる縮小画像（レイヤ）の優先度を変えても結局高速度に検出処理を行うことが出来ない。
【０００６】
本発明は上述した問題を解決するためになされたものであり、画像中の検出対象物体の大きさによらず高速に特定物体検出を可能にするための技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の目的を達成するために、例えば、本発明の画像処理装置は、第１画像を取得する取得手段と、
前記第１画像を再帰的に縮小することで生成された画像を第Ｎ（Ｎは２以上の自然数）画像とした場合における前記第１乃至Ｎ画像に対して被写体検出処理を行う検出手段であって、第ｍ画像（１≦ｍ≦Ｎ）に含まれる各画像領域のうち、該第ｍ画像と関連づけられている画像領域に対して被写体検出処理を行う前記検出手段と
を備えることを特徴とする。
【発明の効果】
【０００８】
本発明の構成によれば、画像中の検出対象物体の大きさによらず高速に特定物体検出を行うことができる。
【図面の簡単な説明】
【０００９】
【図１】画像処理装置の機能構成例を示すブロック図。
【図２】人体検出処理を説明する図。
【図３】画像の分割例を示す図。
【図４】対応テーブルの構成例を示す図。
【図５】ＧＵＩの表示例を示す図。
【図６】画像処理装置が行う処理のフローチャート。
【図７】ステップＳ６０３，Ｓ６０５，Ｓ６０７，Ｓ６０９のフローチャート。
【図８】画像処理装置の機能構成例を示すブロック図。
【図９】人体検出処理を説明する図。
【図１０】画像処理装置が行う処理のフローチャート。
【図１１】ステップＳ１００７，Ｓ１０１０，Ｓ１０１３のフローチャート。
【図１２】対応テーブルの構成例を示す図。
【図１３】ＧＵＩの表示例を示す図。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１１】
［第１の実施形態］
本実施形態に係る画像処理装置は、監視カメラなどの撮像装置内に組み込まれる画像処理回路や、パーソナルコンピュータなどのコンピュータ装置に適用することができるものである。先ず、本実施形態に係る画像処理装置の機能構成例について、図１のブロック図を用いて説明する。
【００１２】
画像取得部１０１は、外部から供給された動画像若しくは静止画像を取得し、取得した動画像若しくは静止画像を後段の人体検出部１０２に送出する。画像取得部１０１は、動画像を取得した場合は、該動画像を構成する各フレームの画像を順次、人体検出部１０２に送出するし、静止画像を取得した場合は、この静止画像を人体検出部１０２に送出する。なお、動画像若しくは静止画像の供給元については特に限定するものではなく、有線若しくは無線を介して動画像若しくは静止画像を供給するサーバ装置や撮像装置であってもよい。また、外部に限るものではなく、画像処理装置内のメモリから動画像若しくは静止画像を取得するようにしてもよい。以下の説明では、画像取得部１０１が動画像を取得した場合であっても静止画像を取得した場合であっても、人体検出部１０２にある１枚の画像が入力された場合について説明する。前者の場合は、この１枚の画像が動画像を構成する各フレームに相当するし、後者の場合は、この１枚の画像が静止画像に相当する。
【００１３】
人体検出部１０２は、画像取得部１０１から供給された画像（第１画像）からそれぞれ異なる大きさの被写体を検出するために、先ず、第１画像を再帰的に縮小することで、複数枚の画像（第２乃至第Ｎ画像）を生成する。以下では、第１乃至Ｎ画像の各画像を処理レイヤと呼称する場合がある。処理レイヤについて詳しくは後述する。そして人体検出部１０２は第１乃至Ｎ画像のそれぞれに対して人体照合パターンとの照合を行うことで被写体検出処理を行うのであるが、その際、第ｍ画像（１≦ｍ≦Ｎ）上の各画像領域のうち予め該第ｍ画像と関連づけられている画像領域を対象画像領域とする。そして、該対象画像領域内の各位置に規定サイズの矩形領域を設定して該矩形領域に対して被写体検出処理を行う。本実施形態では、被写体が人体である場合について説明するが、被写体が他のオブジェクトであっても、以下の説明は同様に適用することができる。また、本実施形態では、被写体検出処理に上記の人体照合パターンを用いた周知のパターンマッチングを用いるが、他の技術を用いて被写体検出処理を実現させてもよい。
【００１４】
記憶部１０５には、第１乃至Ｎ画像において相対的に同じ位置の画像領域と、第１乃至Ｎ画像の何れかと、を関連づけたテーブル（対応テーブル）が保持（登録）されている。人体検出部１０２が、第ｍ画像（１≦ｍ≦Ｎ）上の各画像領域のうち、予め該第ｍ画像と関連づけられている画像領域を対象画像領域として特定する際には、この対応テーブルを参照することになる。また、記憶部１０５には、人体の検出処理で用いる上記の人体照合パターンが登録されている。
【００１５】
レイヤ設定部１０４は、入力部１０３からの操作入力に従って、上記の対応テーブルを作成する。入力部１０３は、キーボードやマウスなどにより構成されており、ユーザが操作することで、各種の指示を入力することができる。
【００１６】
表示部１０９は、ＣＲＴや液晶画面などにより構成されており、後述する様々な画面を表示することができる。なお、入力部１０３と表示部１０９とを統合して、タッチパネル式の画面を構成してもよい。
【００１７】
外部出力部１０６は、人体検出部１０２による処理結果を出力する。出力先については特定の出力先に限るものではなく、無線若しくは有線を介して外部の装置に対して出力してもよいし、表示部１０９に対して出力してもよい。また、出力する情報をそのまま出力してもよいし、可視可能な何らかのグラフィックスでもって出力してもよい。
【００１８】
つぎに、様々なサイズの画像（本実施形態の場合には第１乃至Ｎ画像）に対して、人体照合パターンを用いたパターンマッチングを行うことで、該画像から被写体を検出する処理について説明する。それぞれの画像上の各位置に人体照合パターンを配置してパターンマッチングを行うために、先ず、図２（ａ）に示す如く、第１画像である画像２０１の左上隅に人体照合パターン２０２を配置する。ここで、以下では第１画像を処理レイヤ０（Ｌ０）と呼称する場合がある。そして人体照合パターン２０２の配置後、そこから右側に、上から下に向かって人体照合パターン２０２の位置を移動させる。移動させる毎に人体照合パターン２０２と重なっている画像領域と人体照合パターン２０２とのパターンマッチングを行い、人体を検出する。
【００１９】
次に、図２（ｂ）に示す如く、第１画像を所定倍率（１よりも小さい倍率）だけ縮小した第２画像としての画像２０３を生成する。ここで、以下では第２画像を処理レイヤ１（Ｌ１）と呼称する場合がある。そして、第２画像である画像２０３の左上隅に人体照合パターン２０２を配置する。そして人体照合パターン２０２の配置後、そこから右側に、上から下に向かって人体照合パターン２０２の位置を移動させる。移動させる毎に人体照合パターン２０２と重なっている画像領域と人体照合パターン２０２とのパターンマッチングを行い、人体を検出する。
【００２０】
次に、図２（ｃ）に示す如く、第２画像を所定倍率（１よりも小さい倍率）だけ縮小した第３画像としての画像２０４を生成する。ここで、以下では第３画像を処理レイヤ２（Ｌ２）と呼称する場合がある。そして、第３画像である画像２０４の左上隅に人体照合パターン２０２を配置する。そして人体照合パターン２０２の配置後、そこから右側に、上から下に向かって人体照合パターン２０２の位置を移動させる。移動させる毎に人体照合パターン２０２と重なっている画像領域と人体照合パターン２０２とのパターンマッチングを行い、人体を検出する。
【００２１】
このように、同じ人体照合パターンを繰り返し縮小画像に用いることにより、画像中の様々な大きさの人体を検出することが可能である。ここで、処理レイヤとは、入力画像を拡大または縮小して生成される、解像度の異なる複数の画像集合である。これまで述べたように、本実施形態における処理レイヤとは、複数の処理レイヤの画像集合であり、元画像をレイヤ０、画像を縮小していく毎に処理レイヤ１、処理レイヤ２としている。また、上記のように処理レイヤと検出する人体の大きさは関連している。
【００２２】
これらの処理を繰り返し行って各種大きさの人体を検出し、規定時間だけ処理を続けると終了する。処理終了は、本実施形態では処理を開始してからの経過時間に基づき決定しているが、処理を終了させるための条件はこれに限るものではない。例えば、検出した人体の数、人体検出処理を実行した回数などから処理終了を決定するようにしてもよい。
【００２３】
また、処理レイヤＰ（Ｐ≧１）を生成するための縮小倍率は１倍未満であれば何倍でも構わない。縮小倍率が１に近いほど高精度ではあるが処理時間は長くなり、縮小倍率が低くなるほど一般的には低精度になるが処理時間は短くなるため、運用条件によって適切な縮小倍率を設定するのが望ましい。また、本実施形態では、第１画像を再帰的に縮小した画像群から順次大きな人体を検出しているが、小さな人体から大きな人体を検出するように処理順を変えても構わない。
【００２４】
また、本実施形態では被写体として人体を対象としているが、顔、自動車、動物等、であってもよい。更に、複数種類の特定物体を検出することができ、且つ同時に複数の被写体が検出可能であるならば、物体に複数の特定物体検出処理を実施してもよい。
【００２５】
また、別途設定した物体の大きさ、アスペクト比などの設定値に用いた物体の属性に応じて、複数の特定物体検出処理から所定の処理のみを選択し処理を実施してもよい。例えば、特定物体検出として、人体検出と車検出を行うとする。このとき、画面内で出現しうる車の大きさを車両最小サイズとして、ユーザの指示に従い予め設定する。そして、物体の大きさが車両最小サイズより小さい場合、車として検出される可能性は低いため、車検出は行わず、人体検出のみ実施する。一方で、物体の大きさが車両最小サイズより大きい場合、車として検出される可能性があるため、車検出を実施する。また、複数の人が集団で行動し、一つの物体として検出された可能性もあるため、人体検出も実施する。
【００２６】
次に、上記の対応テーブル及びこれを作成する手順について説明する。
【００２７】
先ずレイヤ設定部１０４は、図３に示す如く、画像取得部１０１が取得した画像、即ち第１画像としての画像３０１を複数の矩形領域（画像領域）３０２に分割する。図３では、３（縦）×４（横）個の矩形領域３０２に分割しているが、分割数や分割パターンについてはこれに限るものではない。即ち、画像を等間隔に分割しなくてもよいし、画像全体でなく一部の領域を複数の領域に分割するようにしてもよい。また、分割した領域の形状は矩形に限るものではなく、任意の形状の領域であってもよいし、ユーザが設定した多角形等のような形状であっても構わない。
【００２８】
そしてレイヤ設定部１０４は、それぞれの矩形領域３０２を識別するために、それぞれの矩形領域に識別番号を割り当てる。図３では、最上段の矩形領域３０２に対し、左端から順に（１，１）、（１，２）、（１，３）、（１，４）というように識別番号を割り当てている。また、中段の矩形領域３０２に対し、左端から順に（２，１）、（２，２）、（２，３）、（２，４）というように識別番号を割り当てている。また、最下段の矩形領域３０２に対し、左端から順に（３，１）、（３，２）、（３，３）、（３，４）というように識別番号を割り当てている。
【００２９】
図３において、識別番号が（１，３）の矩形領域内の人体３０３は、識別番号（２，１）の矩形領域及び識別番号（３，１）の矩形領域にまたがって映っている人体３０４に比べて奥に位置しているために、より小さく映っている。本実施形態では係る点に着目し、第１画像の全ての矩形領域に対して人体検出処理を行うのではなく、人体が比較的小さく映っている領域に関しては第１画像から検出し、人体が比較的大きく映っている領域に関してはより縮小した画像から検出する。
【００３０】
次に、レイヤ設定部１０４は、図５（ａ）に示す如く、表示部１０９の表示画面５０１上に、画像取得部１０１が取得した第１画像を表示する。そしてユーザは、入力部１０３を操作して、この第１画像内に写っている人体を囲む枠５０２，５０３を設定する。この枠５０２，５０３は、検出対象とする人体のサイズを示すサンプル矩形である。また、この枠５０２，５０３は四隅に制御点を持ち、その形状やサイズ、第１画像内における位置を変更可能である。なお、表示画面５０１に第１画像を表示することなく、ユーザは適当なサイズ及び位置の枠を入力部１０３を用いて設定するようにしてもよい。
【００３１】
いずれにせよ、図５（ａ）のように、奥行がある場合は、表示画面内で小さい枠と大きい枠を設定するのが望ましく、図５（ａ）では表示画面奥で小さな枠を設定し、表示画面手前では大きな枠が設定されている。
【００３２】
そしてユーザが入力部１０３を操作してこの設定が完了した旨を入力すると、レイヤ設定部１０４は、次のように動作する。先ず、表示画面５０１上で設定された１以上の枠のサイズから、第１画像上の各矩形領域に対し、該矩形領域内に人体が映った場合に想定される該人体を包含する枠（想定被写体サイズ）を求める。図５（ｂ）では、枠５０２及び枠５０３のサイズと枠５０２及び枠５０３への距離とから、線形補間により、各矩形領域における想定被写体サイズを求めており、点線で示している枠５０４は、この想定被写体サイズを有する枠である。もちろん、各矩形領域における想定被写体サイズを求める方法はこれに限るものではない。以下では、ユーザが設定した枠（図５（ａ）では枠５０２，５０３）及び該枠から補間により求めた枠（図５（ｂ）では枠５０４）を総称して被写体枠と呼称する。
【００３３】
レイヤ設定部１０４は各矩形領域における被写体枠が定まると、図４に例示する如く、各矩形領域の識別番号と、該矩形領域について求めた被写体枠のサイズに対応する処理レイヤとの対応関係を管理する上記の対応テーブルを生成して記憶部１０５に登録する。
【００３４】
図４に例示した対応テーブルは、図３に示した第１画像に対応するものである。図３に示した第１画像では、最上段の矩形領域については図５（ｂ）の如く、比較的サイズが小さい被写体枠が設定されるので、この場合、最上段の矩形領域に対しては、比較的サイズが大きい画像である第１，２画像（処理レイヤ０，１）が関連づけられている。
【００３５】
また、図３に示した第１画像では、中段の矩形領域については図５（ｂ）の如く、最上段の矩形領域よりも比較的サイズが大きい被写体枠が設定される。然るにこの場合、中段の矩形領域に対しては、最上段の矩形領域よりも比較的サイズが小さい画像である第２，３画像（処理レイヤ１，２）が関連づけられている。
【００３６】
また、図３に示した第１画像では、最下段の矩形領域については図５（ｂ）の如く、中段の矩形領域よりも比較的サイズが大きい被写体枠が設定される。然るにこの場合、最下段の矩形領域に対しては、中段の矩形領域よりも比較的サイズが小さい画像である第４，５画像（処理レイヤ３，４）が関連づけられている。
【００３７】
これらの設定は、画像上部の領域では小さい人体のみ検出処理を行い、大きい人体は検出処理を行わないように設定していることを示している。なお、被写体枠のサイズと、第１乃至Ｎ画像のそれぞれのサイズと、の対応関係は予め設定されており、被写体枠のサイズが決まると、これに対応する画像が第１乃至Ｎ画像の何れであるのかが特定できるようになっている。
【００３８】
しかし、図４のような対応テーブルの生成方法はこれに限るものではなく、ユーザが入力部１０３を操作して作成するようにしてもよい。例えば、識別番号（１，１）の矩形領域には被写体が映っていないので、この矩形領域に対しては、処理レイヤは関連づけなくてもよい。このような関連づけに係る例外操作などは、ユーザが入力部１０３を用いて行うようにしてもよい。
【００３９】
このように、人体検出処理時において、各領域の検出処理時に対応テーブルの処理レイヤのみを用いることにより、不要な大きさの人体検出処理を省略出来るため、人体検出処理の高速化が可能となる。
【００４０】
ここで、矩形領域と処理レイヤとの関連づけ方法には様々なものがあり、例えば、次のような方法が考え得る。例えば、ある矩形領域に対応する処理レイヤとして処理レイヤ２を登録するだけでなく、その前後の処理レイヤ（処理レイヤ１や処理レイヤ３）をも、該矩形領域に対応する処理レイヤとして登録するようにしてもよい。あるいは前後１レイヤではなく前後複数レイヤを登録するようにしてもよい。これは、人体検出処理における画像の縮小倍率に関連し、縮小倍率が０に近いほど検出漏れが発生する可能性が高いため、処理レイヤのマージンを広くとるようにするとよい。
【００４１】
また、例えば、上記のように、ユーザが設定した２つの枠から各矩形領域における枠を求めるのではなく、１つの枠と２つ以上の直線を設定させてこの１つの枠と２つ以上の直線とから各矩形領域における枠を求めてもよい。この場合、複数の直線から画像上の消失点を求める。そして消失点と設定した枠の位置に基づき各矩形領域における枠を設定し、設定した枠のサイズに対応する処理レイヤを求める。各矩形領域における枠の算出方法は、単純に消失点での人体サイズを０とし、消失点からの距離で比例的に求めることが可能である。
【００４２】
この場合、図５のＧＵＩの代わりに、図１３に例示するＧＵＩを表示し、このＧＵＩを用いて各矩形領域における枠を求めればよい。図１３において表示部１０９の表示画面１３０１上に枠１３０２と直線１３０３とをユーザに設定させる。直線１３０３は、直線抽出処理により抽出したものであってもよい。消失点１３０４は、２つの直線１３０３を延長した場合に交差した点である。
【００４３】
またあるいは、ハフ変換等の画像から直線を求める画像処理技術は多数知られており、これらを用いて自動的に画像から２つ以上の直線を求め、消失点を求め、同様に画像内の各位置における処理レイヤを求めるようにしても構わない。またここでは直線から消失点を求める例を挙げたが、画像における消失点を求める方法であればどのような手法であっても構わない。
【００４４】
次に、本実施形態に係る画像処理装置が行う処理について、同処理のフローチャートを示す図６を用いて説明する。なお、このフローチャートに従った処理を開始する時点で、記憶部１０５には、上記のような対応テーブルがすでに登録されているものとする。
【００４５】
ステップＳ６０１では、画像処理装置１００の不図示の制御部は、以下の処理を継続するか否かを判断する。この判断では上記の通り、図６のフローチャートの処理を開始してから規定時間以上が経過した場合には、処理を終了するものと判断し、まだ規定時間が経過していない場合は、以下の処理を継続するものと判断する。ステップＳ６０１における判断の結果、継続する場合は、処理はステップＳ６０２に進み、継続しない場合は、本処理を終了する。ステップＳ６０２では、画像取得部１０１は、第１画像としての入力画像を取得する。
【００４６】
ステップＳ６０３では、人体検出部１０２は、ステップＳ６０１で画像取得部１０１が取得した第１画像に対して人体検出処理を行う。ステップＳ６０３，Ｓ６０５，Ｓ６０７，Ｓ６０９のそれぞれにおける人体検出処理は何れも同じフローチャートに沿って行われる処理であるため、これらのステップにおける処理についての説明は、後述する。
【００４７】
ステップＳ６０３における処理が終わると、次にステップＳ６０４では、人体検出部１０２は、第１画像を縮小した画像である第２画像を生成する。
【００４８】
ステップＳ６０５では、人体検出部１０２は、ステップＳ６０４で生成した第２画像に対して人体検出処理を行う。ステップＳ６０５における処理が終わると、次にステップＳ６０６では、人体検出部１０２は、第２画像を縮小した画像である第３画像を生成する。
【００４９】
ステップＳ６０７では、人体検出部１０２は、ステップＳ６０６で生成した第３画像に対して人体検出処理を行う。以降、同様の処理を第Ｎ画像まで行う（Ｓ６０８，Ｓ６０９）。
【００５０】
ステップＳ６１０では、外部出力部１０６は、第１乃至Ｎ画像からの人体検出処理の結果を統合する。この統合処理では、第１乃至Ｎ画像のそれぞれにおける人体の検出領域に対応する、第１画像上の領域を求める処理である。そして外部出力部１０６は、この求めた領域の位置やサイズを出力する。
【００５１】
次に、ステップＳ６０３，Ｓ６０５，Ｓ６０７，Ｓ６０９のそれぞれにおける人体検出処理について、同処理のフローチャートを示す図７を用いて説明する。以下では、第ｍ画像（１≦ｍ≦Ｎ）に対する人体検出処理について説明する。然るに、ステップＳ６０３ではｍ＝１とすればよいし、ステップＳ６０５ではｍ＝２とすればよいし、ステップＳ６０７ではｍ＝３とすればよいし、ステップＳ６０９ではｍ＝Ｎとすればよい。
【００５２】
ステップＳ７０１では、人体検出部１０２は、第ｍ画像内での人体照合パターンの移動が完了したか否かを判断する。即ち、第ｍ画像内で人体照合パターンを用いた人体検出処理が完了したか否かを判断する。この判断の結果、第ｍ画像内での人体照合パターンの移動が完了した、即ち、第ｍ画像内で人体照合パターンを用いた人体検出処理が完了した場合は、図７のフローチャートに従った処理は完了する。一方、第ｍ画像内での人体照合パターンの移動がまだ完了していない、即ち、第ｍ画像内で人体照合パターンを用いた人体検出処理がまだ完了していない場合は、処理はステップＳ７０２に進む。ステップＳ７０２では、人体検出部１０２は、記憶部１０５から上記の対応テーブルを取得する。
【００５３】
ステップＳ７０３では、人体検出部１０２は、対応テーブルを参照し、第ｍ画像上における現在の人体照合パターンが、第ｍ画像に関連づけられている識別番号を有する矩形領域内に位置しているか否かを判断する。この判断の結果、「第ｍ画像に関連づけられている識別番号を有する矩形領域内に位置している」と判断した場合は、処理はステップＳ７０４に進む。一方、「第ｍ画像に関連づけられている識別番号を有する矩形領域内に位置している」と判断できなかった場合は、処理はステップＳ７０５に進む。
【００５４】
図４の例では、ｍ＝１の場合、人体照合パターンが識別番号（１，２）、（１，３）、（１，４）の矩形領域内に位置している場合にのみ、処理はステップＳ７０４に進み、それ以外はステップＳ７０５に進む。
【００５５】
ステップＳ７０４では、人体検出部１０２は、第ｍ画像において人体照合パターンと重なっている領域と人体照合パターンとのパターンマッチングにより人体検出処理を行い、人体を検知した位置やサイズを出力する。
【００５６】
ステップＳ７０５では、人体検出部１０２は、人体照合パターンを次の位置に移動させる。なお、ステップＳ７０４からステップＳ７０５に処理が進んだ場合、ステップＳ７０５では、人体照合パターンを数画素分だけ移動させればよい。一方、ステップＳ７０３からステップＳ７０５に処理が進んだ場合も同様の分だけ移動させてもよいが、数画素分だけ移動させても、移動した先の位置はまだ「第ｍ画像に関連づけられている識別番号を有する矩形領域内」ではない可能性がある。そこでこのような場合は、次の矩形領域まで移動させてもよい。このような処理を行うことで、同一矩形領域内の人体検出処理を一括して省略することが可能となる。
【００５７】
以上の説明により、本実施形態によれば、画像中に登場する被写体のサイズに関係なく、より高速に被写体の検出処理を行うことができる。
【００５８】
［第２の実施形態］
以下では、第１の実施形態と異なる点のみについて説明し、以下で特に触れない限りは、第１の実施形態と同様であるものとする。第１の実施形態では、画像全体に対して対象レイヤの人体検出処理を行っていた。しかし、例えば、元画像に対し動体検出処理を行い、動体を検出した領域に対してのみ人体検出処理を行う、というようにしてもよい。また、第１の実施形態では、人体検出処理の際の照合スキャン位置で対象レイヤを判別して用いていた。しかし、例えば、動体領域の位置で対象レイヤを判別して用いるようにしてもよい。
【００５９】
本実施形態に係る画像処理装置の機能構成例について、図８のブロック図を用いて説明する。なお、図８において、図１に示した構成要件と同じ構成要件については同じ参照番号を付しており、その説明は省略する。
【００６０】
動体領域検出部８０１は、画像取得部１０１が取得した第１画像から背景差分法により動体が映っている領域を動体領域として検出する。検出する内容は、第１画像上における動体領域の位置、動体領域の外接矩形、動体領域のサイズ、等、第１画像上における動体領域を規定する情報（動体領域情報）である。なお、第１画像から動体領域を検出する方法には、様々な技術が適用できるため、背景差分法に限らず、他の技術を適用してもよい。
【００６１】
そして動体領域検出部８０１は、検出した動体領域情報を後段の人体検出部１０２に送出する。人体検出部１０２は、第ｍ画像上の各画像領域のうち、予め該第ｍ画像と関連づけられている画像領域であって動体領域情報が示す動体領域を含む画像領域を対象画像領域とする。そして人体検出部１０２は、該対象画像領域内の各位置に規定サイズの矩形領域を設定して該対象画像領域に対して人体検出処理を行う。
【００６２】
なお、人体検出処理は、動体領域を完全に含む画像領域だけでなく部分的に含む画像領域に対しても行う方が、動体検出処理で誤って未検出と判別されてしまった動体領域箇所に対しても人体検出を行うことが出来る。
【００６３】
本実施形態で行う人体検出処理について、図９を用いて説明する。第１画像としての画像９０１に対して動体領域検出部８０１が動体検出処理を行うことで得られる動体領域が領域９０２，９０３であるとすると、この領域９０２，９０３内で人体照合パターン９０４を用いて人体検出処理を行う。もちろん、人体検出処理は、領域９０２，９０３内の全ての画像領域に対して行うのではなく、画像９０１に関連づけられている画像領域に対して行う。そして同様の処理を、第２画像、第３画像、…、第Ｎ画像の各画像に対しても行う。
【００６４】
次に、本実施形態に係る画像処理装置が行う処理について、同処理のフローチャートを示す図１０を用いて説明する。
【００６５】
ステップＳ１００１では、画像処理装置１００の不図示の制御部は、上記のステップＳ６０１と同様にして、以下の処理を継続するか否かを判断する。ステップＳ１００１における判断の結果、継続する場合は、処理はステップＳ１００２に進み、継続しない場合は、本処理を終了する。ステップＳ１００２では、画像取得部１０１は、第１画像としての入力画像を取得し、動体領域検出部８０１は、この第１画像から動体領域を検出する。
【００６６】
ステップＳ１００３では、人体検出部１０２は先ず、ステップＳ１００２で検出された動体領域のうちまだ以下の処理の対象となっていない動体領域を１つ、選択動体領域として選択する。選択順については特定の順序に限るものではないが、例えば第１画像の左上隅の位置からラスタースキャン順に選択すればよい。
【００６７】
ステップＳ１００４では、人体検出部１０２は、第１画像から選択動体領域を原画像Ｌ０として抽出する。ステップＳ１００５では、人体検出部１０２は、記憶部１０５に格納されている対応テーブルから、選択動体領域を含む画像領域の識別番号に関連づけられている処理レイヤを特定する。
【００６８】
ステップＳ１００６では、人体検出部１０２は、ステップＳ１００５で特定した処理レイヤに第１画像が含まれているか否かを判断する。この判断の結果、含まれている場合は、処理はステップＳ１００７に進み、含まれない場合は、処理はステップＳ１００８に進む。
【００６９】
ステップＳ１００７では、人体検出部１０２は、原画像Ｌ０に対して人体検出処理を行う。ステップＳ１００７，Ｓ１０１０，Ｓ１０１３のそれぞれにおける人体検出処理は何れも同じフローチャートに沿って行われる処理であるため、これらのステップにおける処理についての説明は、後述する。
【００７０】
ステップＳ１００８では、人体検出部１０２は、ステップＳ１００５で特定した処理レイヤに第２画像が含まれているか否かを判断する。この判断の結果、含まれている場合は、処理はステップＳ１００９に進み、含まれない場合は、第３画像についてステップＳ１００８〜Ｓ１０１０に対応する処理を行う。このようにして、第４画像、…、第Ｎ画像についても同様の処理を行う（Ｓ１０１１〜Ｓ１０１３）。
【００７１】
ステップＳ１００９では、人体検出部１０２は、第１画像を縮小した画像である第２画像を生成する。ステップＳ１０１０では、人体検出部１０２は、ステップＳ１００９で生成した第２画像中の、上記原画像Ｌ０に対応する領域（即ち第２画像中の動体領域）に対して人体検出処理を行う。
【００７２】
ステップＳ１０１４では、外部出力部１０６は、第１乃至Ｎ画像からの人体検出処理の結果を統合する。この統合処理では、第１乃至Ｎ画像のそれぞれにおける人体の検出領域に対応する、第１画像上の領域を求める処理である。そして外部出力部１０６は、この求めた領域の位置やサイズを出力する。
【００７３】
ステップＳ１０１５では、不図示の制御部は、ステップＳ１００２で検出された全ての動体領域について人体検出処理が行われたか否かを判断する。この判断の結果、全ての動体領域について人体検出処理が行われた場合は処理はステップＳ１００１に進み、まだ人体検出処理が行われていない動体領域が残っている場合は、処理はステップＳ１００３に進む。
【００７４】
ここで、本実施形態では、ステップＳ１００８やステップＳ１０１１にて、ステップＳ１００５で特定した処理レイヤに第ｍ画像が含まれているか否かを判断した後、この第ｍ画像を生成していた。しかし例えば、対応テーブルに処理するレイヤの縮小画像自体を予め作成しておくことで、ステップＳ１００９やステップＳ１０１２における処理を省くようにしてもよい。
【００７５】
次に、ステップＳ１００７，Ｓ１０１０，Ｓ１０１３のそれぞれにおける人体検出処理について、同処理のフローチャートを示す図１１を用いて説明する。以下では、第ｍ画像（１≦ｍ≦Ｎ）に対する人体検出処理について説明する。然るに、ステップＳ１００７ではｍ＝１とすればよいし、ステップＳ１０１０ではｍ＝２とすればよいし、ステップＳ１０１３ではｍ＝Ｎとすればよい。
【００７６】
ステップＳ１１０１では、人体検出部１０２は、第ｍ画像内における選択動体領域内での人体照合パターンの移動が完了したか否かを判断する。即ち、第ｍ画像内における選択動体領域内で人体照合パターンを用いた人体検出処理が完了したか否かを判断する。この判断の結果、完了した場合は、図１１のフローチャートに従った処理は完了する。一方、完了していない場合は、処理はステップＳ１１０２に進む。
【００７７】
ステップＳ１１０２では、人体検出部１０２は、第ｍ画像において人体照合パターンと重なっている領域と人体照合パターンとのパターンマッチングにより人体検出処理を行い、人体を検知した位置やサイズを出力する。
【００７８】
ステップＳ１１０３では、人体検出部１０２は、人体照合パターンを次の位置に移動させる。なお、この移動では、人体照合パターンを数画素分だけ移動させればよい。もちろん、移動量は特定の移動量に限るものではない。
【００７９】
以上の説明により、本実施形態によれば、画像中の検出対象物体の大きさによらず高速に特定物体検出処理を行うことが出来る。また、元画像に対し動体検出処理を行い、動体を検出した領域のみに対し人体検出処理を行うことで人体検出を高速に行うことが出来る。
【００８０】
［第３の実施形態］
以下では、第１の実施形態と異なる点のみについて説明し、以下で特に触れない限りは、第１の実施形態と同様であるものとする。第１の実施形態では、図４に例示したような対応テーブルを予め作成して人体検出処理に用いていた。しかし、例えば、過去の人体検出結果に基づいて対応テーブルを作成し、それを用いて人体検出を行うようにしてもよい。
【００８１】
本実施形態では予め、複数枚の入力画像のそれぞれに対して次のような処理を行う。先ず、入力画像から第１乃至Ｎ画像を生成する。そして、第１乃至Ｎ画像のそれぞれを図３に示す如く複数の矩形領域に分割し、それぞれの矩形領域に対して人体検出処理を行う。人体が検出された領域に対してはカウント値（初期値は０）を１つインクリメントする。
【００８２】
このような処理により、結果として図１２のような対応テーブルが得られる。この対応テーブルには、第１乃至Ｎ画像（Ｌ０〜Ｌｎ）のそれぞれに対し、識別番号（１，１）〜（３，４）の各矩形領域におけるカウント値が登録されている。
【００８３】
例えば、第１画像、第２画像、第３画像、第４画像のそれぞれにおける識別番号（１，２）の矩形領域には、人体が５回（カウント値が５）、４回（カウント値が４）、３回（カウント値が３）、０回（カウント値が０）検出されている。また、第１画像、第２画像、第３画像、第４画像のそれぞれにおける識別番号（３，２）の矩形領域には、人体が０回（カウント値が０）、０回（カウント値が０）、１回（カウント値が１）、４回（カウント値が４）検出されている。
【００８４】
つまりこの対応テーブルは、画像上方では比較的大きい人体がよく検出され、画像下方では比較的小さい人体が良く検出されていることを示している。このような対応テーブルを作成すると、記憶部１０５に登録する。この一連の処理は、入力部１０３からの操作とレイヤ設定部１０４による動作と、により行ってもよいし、外部装置が行ってもよい。
【００８５】
そして本実施形態においても、ステップＳ７０３における処理を除き、第１の実施形態と同様にして人体検出処理を行う。以下に、本実施形態に係るステップＳ７０３について説明する。
【００８６】
ステップＳ７０３では人体検出部１０２は、上記の対応テーブルを参照し、第ｍ画像上の現在の人体照合パターンが属する矩形領域の識別番号に対する第１乃至Ｎ画像のそれぞれのカウント値のうち最大カウント値に対応するものが第ｍ画像であるかを判断する。
【００８７】
ここで一例を挙げてステップＳ７０３を説明する。ステップＳ７０３の時点で、人体照合パターンが第３画像上の識別番号（２，３）の矩形領域上にあるとする。識別番号（２，３）における第１乃至Ｎ画像のそれぞれのカウント値は０，３，５，０，…（以降、全て０）であり、第３画像のカウント値が最も大きいため、この場合は処理はステップＳ７０４に進む。一方、人体照合パターンが第２画像上の識別番号（２，３）の矩形領域上にある場合、第３画像のカウント値が最も大きいため、この場合は処理はステップＳ７０５に進む。
【００８８】
なお、最大カウント値の代わりに、規定回数以上のカウント値に対応する（規定回数以上検出される）ものが第ｍ画像であるかを判断するようにしてもよい。この場合の規定回数は学習期間（上記複数枚の入力画像を取得する期間）により変動させるのが望ましい。またあるいは、最大カウント値の画像の前後の画像（レイヤ番号が前後）であれば、ステップＳ７０４に進むようにしてもよい（Ｒ（２，３）の場合はＬ１、Ｌ２、Ｌ２が処理レイヤとなる）。
【００８９】
以上の説明により、本実施形態によれば、画像中の検出対象物体の大きさによらず高速に特定物体検出処理を行うことが出来る。また、過去の検出結果に基づき検出処理を行うようにすることで検出処理に用いる処理レイヤの設定を簡易に行うことが出来る。
【００９０】
また、上記の各実施形態は適宜組み合わせて用いてもよい。また、図１，８に示した画像処理装置の各部のうち、入力部１０３、記憶部１０５、表示部１０９を除く各部の一部若しくは全部はハードウェアで構成してもよいし、ソフトウェア（コンピュータプログラム）で構成してもよい。後者の場合、このコンピュータプログラムは画像処理装置内の不図示のメモリに格納され、画像処理装置が有するＣＰＵ等の制御部により実行されることになる。
【００９１】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005795916.tif 000002
【図２】
0005795916.tif 000003
【図３】
0005795916.tif 000004
【図４】
0005795916.tif 000005
【図５】
0005795916.tif 000006
【図６】
0005795916.tif 000007
【図７】
0005795916.tif 000008
【図８】
0005795916.tif 000009
【図９】
0005795916.tif 000010
【図１０】
0005795916.tif 000011
【図１１】
0005795916.tif 000012
【図１２】
0005795916.tif 000013
【図１３】
0005795916.tif 000014