(57)【特許請求の範囲】
【請求項１】
フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、
フレーム画像に含まれる被写体を人物の顔に基づいて検出する第二の検出手段と、
撮像手段よりフレーム画像を取得する取得手段と、
前記取得手段で取得されたフレーム画像に含まれる被写体の混雑度を判定する判定手段と、
前記判定手段で判定された混雑度が低い場合に前記第一の検出手段を選択し、前記混雑度が高い場合に前記第二の検出手段を選択する選択手段と、
前記選択手段で選択された検出手段により、前記取得手段で取得されたフレーム画像から検出された検出結果に基づいて、前記フレーム画像に含まれる被写体の数を計数する計数手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記選択手段で選択された検出手段で検出された検出結果の被写体の予め定められた時間内の軌跡を求める被写体追跡手段を更に有し、
前記計数手段は、前記被写体追跡手段で求められた軌跡が予め定められた条件を満たしている被写体の数を計数することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、
フレーム画像に含まれる被写体を人物の顔に基づいて検出する第二の検出手段と、
撮像手段よりフレーム画像を取得する取得手段と、
前記取得手段で取得されたフレーム画像に含まれる被写体の混雑度を判定する判定手段と、
前記取得手段で取得されたフレーム画像から前記第一の検出手段及び前記第二の検出手段により検出された検出結果の内、前記判定手段で判定された混雑度が低い場合に前記第一の検出手段の検出結果を選択し、前記混雑度が高い場合に前記第二の検出手段の検出結果を選択する選択手段と、
前記選択手段で選択された検出結果に基づいて、前記取得手段で取得されたフレーム画像に含まれる被写体の数を計数する計数手段と、
を有することを特徴とする画像処理装置。
【請求項４】
前記計数手段で計数された被写体の数を表示する表示手段を更に有することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記撮像手段を更に有することを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記判定手段は、前記取得手段で取得されたフレーム画像と、背景画像と、の差分を求め、求めた差分に基づいて、前記混雑度を判定することを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
前記第二の検出手段は、人物の顔と背景差分とに基づいて被写体を検出することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
前記第二の検出手段は、人物の顔と楕円エッジとに基づいて被写体を検出することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項９】
フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、前記被写体を人物の顔に基づいて検出する第二の検出手段とを有する画像処理装置における画像処理方法であって、
撮像手段よりフレーム画像を取得する取得ステップと、
前記取得ステップで取得されたフレーム画像に含まれる被写体の混雑度を判定する判定ステップと、
前記判定ステップで判定された混雑度が低い場合に前記第一の検出手段を選択し、前記混雑度が高い場合に前記第二の検出手段を選択する選択ステップと、
前記選択ステップで選択された検出手段により、前記取得ステップで取得されたフレーム画像から検出された検出結果に基づいて、前記フレーム画像に含まれる被写体の数を計数する計数ステップと、
を含むことを特徴とする画像処理方法。
【請求項１０】
フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、前記被写体を人物の顔に基づいて検出する第二の検出手段とを有する画像処理装置における画像処理方法であって、
撮像手段よりフレーム画像を取得する取得ステップと、
前記取得ステップで取得されたフレーム画像に含まれる被写体の混雑度を判定する判定ステップと、
前記取得ステップで取得されたフレーム画像から前記第一の検出手段及び前記第二の検出手段により検出された検出結果の内、前記判定ステップで判定された混雑度が低い場合に前記第一の検出手段の検出結果を選択し、前記混雑度が高い場合に前記第二の検出手段の検出結果を選択する選択ステップと、
前記選択ステップで選択された検出結果に基づいて、被写体の数を計数する計数ステップと、
を含むことを特徴とする画像処理方法。
【請求項１１】
フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、前記被写体を人物の顔に基づいて検出する第二の検出手段とを有するコンピュータに、
撮像手段よりフレーム画像を取得する取得ステップと、
前記取得ステップで取得されたフレーム画像に含まれる被写体の混雑度を判定する判定ステップと、
前記判定ステップで判定された混雑度が低い場合に前記第一の検出手段を選択し、前記混雑度が高い場合に前記第二の検出手段を選択する選択ステップと、
前記選択ステップで選択された検出手段により、前記取得ステップで取得されたフレーム画像から検出された検出結果に基づいて、前記フレーム画像に含まれる被写体の数を計数する計数ステップと、
を実行させることを特徴とするプログラム。
【請求項１２】
フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、前記被写体を人物の顔に基づいて検出する第二の検出手段とを有するコンピュータに、
撮像手段よりフレーム画像を取得する取得ステップと、
前記取得ステップで取得されたフレーム画像に含まれる被写体の混雑度を判定する判定ステップと、
前記取得ステップで取得されたフレーム画像から前記第一の検出手段及び前記第二の検出手段により検出された検出結果の内、前記判定ステップで判定された混雑度が低い場合に前記第一の検出手段の検出結果を選択し、前記混雑度が高い場合に前記第二の検出手段の検出結果を選択する選択ステップと、
前記選択ステップで選択された検出結果に基づいて、前記取得ステップで取得されたフレーム画像に含まれる被写体の数を計数する計数ステップと、
を実行させることを特徴とするプログラム。
【請求項１３】
請求項１１又は１２に記載のプログラムを記憶したコンピュータにより読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、プログラム及び記憶媒体に関する。
【背景技術】
【０００２】
店舗等の入り口や通路を通行する人をカメラで撮影し、撮影した映像より人物を検出して、通過した人数を計測する技術がある。このような技術において、入り口や通路が混雑している状況において、人数を正確に計測することが困難であることが知られている。
特許文献１では、通路の幅方向のライン上に通路の上からスリット光を照射し、ラインを周期的に撮影して、得られた像より移動物体（人物）を検出している。そして、特許文献１では、移動物体が同一の人物かどうかを移動物体間の距離に閾値を設けて判定し、この結果より通過した人を計数している。このとき、混雑度が低いと、移動物体の方向が一様でなくなり、スリット光に対して斜めに通ることもある。そこで、特許文献１では、混雑度を判定する手段を設け、混雑度に応じて閾値を変更している。
【０００３】
また、特許文献２では、スリット光は用いていないものの、特許文献１と同様に、通路の幅方向のライン上の画像を周期的に撮影し、得られた像より移動物体を検出し、計数している。このとき、混雑度が高くなると移動速度が遅くなるため、計数を正しく行うことが難しくなる。そこで、特許文献１と同様に特許文献２では、混雑度を判定する手段を設け、混雑度に応じて、計数方式を変更するようにしている。より具体的に説明すると、混雑度が高いときは、厳密な計数が難しくなるので、特許文献２では、全移動物体の総面積を、所定の標準的な移動物体の面積で除する、という方法に変更している。
【０００４】
【特許文献１】特開２００５−９２５１３号公報
【特許文献２】特開平１１−２８２９９９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、混雑度が高くなると移動方向や移動速度に変化が生じるだけでなく、移動物体（人物）同士の重なりが大きくなりやすい、という現象も生じる。例えば、人物同士が肩を触れ合うようになれば、真上から撮影していても、従来の技術では二人を一つの移動物体（人物）として検出してしまう。一方、斜め上から撮影するようにすれば、人物の顔などの属性を確認できるというメリットが生まれるが、このような場合においては、混雑度が高くなると人物同士の重なりはより起こりやすくなる。従来の技術では、やはり複数の人物を一つと検出してしまう。また、例えば後述する上半身検出のように人物の上半身を検出するようにした場合は、重なりが大きくなると上半身の大きな特徴である輪郭部分も隠れてしまい、未検出となる可能性がある。従って、従来の技術のように計数するときの閾値や計数方式を変更しても、通過する人物そのものを正しく検出することができなければ、正しく計数することができなってしまう。
【０００６】
本発明はこのような問題点に鑑みなされたもので、混雑度が高く、被写体と被写体との重なりが生じやすくなるような場合であっても、被写体を精度よく検出し、計数することを目的とする。
【課題を解決するための手段】
【０００７】
そこで、本発明の画像処理装置は、フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、フレーム画像に含まれる被写体を人物の顔に基づいて検出する第二の検出手段と、撮像手段よりフレーム画像を取得する取得手段と、前記取得手段で取得されたフレーム画像に含まれる被写体の混雑度を判定する判定手段と、前記判定手段で判定された混雑度が低い場合に前記第一の検出手段を選択し、前記混雑度が高い場合に前記第二の検出手段を選択する選択手段と、前記選択手段で選択された検出手段により、前記取得手段で取得されたフレーム画像から検出された検出結果に基づいて、前記フレーム画像に含まれる被写体の数を計数する計数手段と、を有することを特徴とする。
【０００８】
また、本発明の画像処理装置は、フレーム画像に含まれる被写体を人物の上半身に基づいて検出する第一の検出手段と、フレーム画像に含まれる被写体を人物の顔に基づいて検出する第二の検出手段と、撮像手段よりフレーム画像を取得する取得手段と、前記取得手段で取得されたフレーム画像に含まれる被写体の混雑度を判定する判定手段と、前記取得手段で取得されたフレーム画像から前記第一の検出手段及び前記第二の検出手段により検出された検出結果の内、前記判定手段で判定された混雑度が低い場合に前記第一の検出手段の検出結果を選択し、前記混雑度が高い場合に前記第二の検出手段の検出結果を選択する選択手段と、前記選択手段で選択された検出結果に基づいて、前記取得手段で取得されたフレーム画像に含まれる被写体の数を計数する計数手段と、を有することを特徴とする。
【０００９】
また、本発明は、画像処理方法、プログラム及び記憶媒体としてもよい。
【発明の効果】
【００１０】
本発明によれば、混雑度が高く、被写体と被写体との重なりが生じやすくなるような場合であっても、被写体を精度よく検出し、計数することができる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態について図面に基づいて説明する。
【００１２】
＜実施形態１＞
図１は、システム構成の一例を示す図である。
１０１は、通路の天井である。１０２は、通路の床である。１０３は、通路を通行している人物である。１０４は、撮像部（カメラ）である。撮像部１０４は、人物１０３を斜め上から撮影できるように、天井１０１に設置されている。１０５は、ＬＡＮケーブル、又は、同軸ケーブルである。ケーブル１０５は、撮像部１０４で撮像される映像を、画像処理装置又はコンピュータの一例であるＰＣ１０６に送信する。ＰＣ１０６は、映像を解析し、計数する装置である。
【００１３】
図２は、ＰＣ１０６のハードウェア構成の一例を示す図である。図２において、ＣＰＵ８０１は、ＰＣ１０６の各種制御を実行する。ＲＯＭ８０２は、本装置の立ち上げ時に実行されるブートプログラムや各種データを格納する。ＲＡＭ８０３は、ＣＰＵ８０１によって実行される制御プログラムを格納すると共に、ＣＰＵ８０１が各種制御を実行する際の作業領域を提供する。キーボード８０４及びマウス８０５は、ユーザによる各種入力操作環境を提供する。
【００１４】
外部記憶装置８０６は、ハードディスクや光ディスク、磁気ディスク、光磁気ディスク、磁気テープ等で構成される。但し、外部記憶装置８０６は、制御プログラムや各種データを全てＲＯＭ８０２に持つようにすれば、必ずしも必要な構成要素ではない。表示器８０７は、ディスプレイ等で構成され、処理結果等をユーザに対して表示する。ネットワークインターフェース（ＮＩＣ）８０８は、ネットワーク上の撮像部１０４とＬＡＮケーブル等を介した通信を可能とする。ビデオインターフェース（ビデオＩ／Ｆ）８０９は、撮像部１０４とケーブル１０５を介したフレーム画像の取り込みを可能とする。また、バス８１０は、上記各構成を接続する。
【００１５】
図３は、ＰＣ１０６と撮像部１０４とで構成されるシステムの機能構成の一例を示す図である。図３において、撮像部１０４は、映像を入力する。
画像取得部２０２は、撮像部１０４よりフレーム画像を取得する。ケーブル１０５がＬＡＮケーブルで構成されている場合、フレーム画像は撮像部１０４から、ケーブル１０５を介してｈｔｔｐプロトコルのパケットデータとして送られ、ＰＣ１０６上のネットワークインターフェース８０８を介して取得される。一方、ケーブル１０５が同軸ケーブルで構成されている場合、フレーム画像は撮像部１０４から、ケーブル１０５を介してＰＣ１０６上のビデオインターフェース８０９で取得される。
【００１６】
混雑度判定部２０３は、画像取得部２０２より得られたフレーム画像を解析し、混雑度を判定する。
被写体検出方法選択部２０４は、フレーム画像から被写体を検出する方法を、混雑度判定部２０３で求めた混雑度に基づいて、選択する。
第一被写体検出部２０５は、フレーム画像より被写体を後述する第一の方法で検出する。
第二被写体検出部２０６は、フレーム画像より被写体を後述する第二の方法で検出する。
【００１７】
被写体追跡部２０７は、被写体検出方法選択部２０４によって選択された第一被写体検出部２０５又は第二被写体検出部２０６によって検出された被写体を時間順に追跡し、同一の被写体の軌跡を生成する。
計数部２０８は、被写体追跡部２０７によって生成された被写体の軌跡が所定の条件を満たしているかどうかを判定することにより、被写体を計数する。
表示部２０９は、計数部２０８の結果を表示器８０７に表示する。
【００１８】
図４は、被写体の検出及び計数処理の一例を示すフローチャートである。
ステップＳ４０１において、画像取得部２０２は、電源ＯＦＦやキーボード８０４及び／又はマウス８０５を介したユーザからの指示に基づいて、処理を終了するか否かを判定する。画像取得部２０２は、処理を終了すると判定すると、図４に示す処理を終了し、処理を終了しないと判定すると、ステップＳ４０２に進む。
ステップＳ４０２において、画像取得部２０２は、撮像部１０４よりフレーム画像を取得する。
【００１９】
ステップＳ４０３において、混雑度判定部２０３は、ステップＳ４０２で取得されたフレーム画像から混雑度を判定する。本実施形態では混雑度判定部２０３は、混雑度を「高」又は「低」の何れかに判定するものとする。なお、混雑度の判定処理の詳細は後述する。
ステップＳ４０４において、被写体検出方法選択部２０４は、ステップＳ４０３において求められた混雑度に基づいて、第一の被写体検出方法か第二の被写体検出方法か、被写体の検出方法を選択する。その結果として、第一被写体検出部２０５で検出するか第二被写体検出部２０６で検出するかが選択される。本実施形態において、被写体検出方法選択部２０４は、混雑度が「低」である場合、被写体検出方法を第一の被写体検出方法（第一被写体検出部２０５）、混雑度が「高」である場合、被写体検出方法を第二の被写体検出方法（第二被写体検出部２０６）、と選択するものとする。つまり、被写体検出方法選択部２０４は、混雑度が「低」ならば第一を選択し、「高」ならば第二を選択する。
【００２０】
ステップＳ４０５において、被写体検出方法選択部２０４は、選択した検出方法を確認する。被写体検出方法選択部２０４は、選択した検出方法が第一であれば、ステップＳ４０６に進み、選択した検出方法が第二であれば、ステップＳ４０７に進む。
ステップＳ４０６において、第一被写体検出部２０５は、第一の被写体検出方法で被写体を検出する。一方、ステップＳ４０７において、第二被写体検出部２０６は、第二の被写体検出方法で被写体を検出する。なお、検出された結果は、第一被写体検出部２０５又は第二被写体検出部２０６によって、検出されたフレームのタイムコードと対応付けて、ＲＡＭ８０３に記憶される。なお、第一の被写体検出方法による被写体の検出処理及び第二の被写体の検出方法による被写体の検出処理の詳細は後述する。
【００２１】
次に、ステップＳ４０８において、被写体追跡部２０７は、現在から所定時間前までの間に検出された被写体領域をＲＡＭ８０３より読み出し、軌跡を生成する。これは所定時間内に検出された複数ある被写体の内、どれが同一の人物の動きに対応するかを求める処理である。この処理の詳細について図５を用いて説明する。図５は、軌跡の生成を説明するための図である。３０１は、フレーム全体である。ここに、所定の時間に検出された被写体の領域を、矩形で表現して重ね描きされている（３０３から３０８まで）。図５の例では、３フレーム分が重ね描きされており、最も古いフレームでは３０３と３０６とが、次のフレームでは３０４と３０７とが、その次の現在のフレームでは、３０５と３０８とが検出されているものとする。これらの軌跡を求める方法としては、各領域の中心を求め、各領域の中心間の距離が最小となるもの同士を同一の被写体とみなし、線分で接続するようにすればよい。このようにして求めた軌跡が、図５の例では３０９、３１０の２本となる。即ち、２人の人物の軌跡が求まったことになる。時間順に追うことによって被写体追跡部２０７は、３０９は、カメラに対して向かってくる（ＩＮ）人物であり、３１０はカメラから離れていく（ＯＵＴ）人物であることが判別できる。
【００２２】
ステップＳ４０９において、計数部２０８は、被写体追跡部２０７で作成された軌跡が、所定の条件を満たすかどうかをチェックし、条件を満たしていればカウントする。ここで所定の条件とは例えば、図５に示した３０２のような計測ラインを横切っているかどうかである。３０２は、ユーザによってフレーム画面内に設定される。図５の例では、３０９が計測ライン３０２をＩＮ方向に、３１０がＯＵＴ方向に横切っているので、計数部２０８は、ＩＮが１、ＯＵＴが１というようにカウントする。もし、まだ、計測ライン３０２を横切っていない軌跡が存在すれば、この時点では、計数部２０８は、カウントしない。
【００２３】
ステップＳ４１０において、表示部２０９は、計数部２０８でカウントされた結果、例えば「ＩＮ＝１，ＯＵＴ＝１」等を、表示器８０７上に表示する。
なお、ステップＳ４０８からステップＳ４１０までの処理は、必ずしも毎フレーム行う必要はなく、現在の映像と計数の表示とのずれが、ユーザが許容できる範囲内であれば、これに合わせて、例えば０．５秒ごとに周期的に処理するようにしてもよい。
【００２４】
以下、混雑度判定処理の詳細について述べる。
本実施形態では背景差分法による判定方法を用いるものとする。例えば混雑度判定部２０３は、通路を誰も通過していない状態で撮影されたフレーム画像を、ＲＡＭ８０３に背景画像として一時記憶する。この後、混雑度判定部２０３は、検出を行うフレームごとにＲＡＭ８０３に一時記憶した背景画像とフレーム画像との差分を求める。図６は、背景差分法による判定方法を説明するための図である。５０１は、２人の人物が離れて歩いている様子が映っているフレーム画像であり、混雑度が「低」の状態に対応する。５０３は、４人の人物が固まって歩いている様子が映っているフレーム画像であり、混雑度が「高」の状態に対応する。５０２は、混雑度判定部２０３が５０１と背景画像との差分をとった結果であり、人物の領域のみが残っている（斜線で示した領域、以降、前景領域という。）。同様に５０４は、混雑度判定部２０３が５０３と背景画像との差分をとった結果であり、人物の領域が一つの大きな前景領域として残っている。このように、フレーム画像と、背景画像と、の差分をとった結果、得られた前景領域の面積は、混雑度と関連がある。
【００２５】
混雑度判定部２０３は、この性質を利用して、前景領域の総面積が所定の値よりも小さいときは混雑度を「低」、多きときは「高」と判定する。また、混雑度判定部２０３は、前景領域の大きさが、一つであるのにも関わらず、人物の標準サイズよりも大きければ、人の重なりが生じている可能性が高いので、このような場合は混雑度「高」と判定する。このことにより精度の高い判定が可能になる。
【００２６】
以下、第一の被写体検出方法の詳細について述べる。
第一の被写体検出方法は、混雑度が「低」である場合の被写体の検出方法である。本実施形態では、第一の被写体検出方法は、人物の上半身を検出する方法（処理の詳細は後述する）とする。この第一の検出方法によれば、荷車等の他の移動物体に惑わされることなく、人物のみを検出することができる。また、この方法は、顔検出を用いる方法に比べ、人がうつむいたり横を向いたり、又は、後ろ向きであっても被写体を検出することができるため、高精度な検出が可能である。
【００２７】
以下、第二の被写体検出方法の詳細について述べる。
第二の被写体検出方法は、混雑度が「高」である場合の被写体の検出方法である。混雑度が「高」であるときは人の重なりが大きくなるので、混雑度が「低」のときと同様に上半身を検出する方法を用いようとすると、検出率が低下してしまう。そこで、本実施形態では、第二の被写体検出方法は、重なりにより強い検出方法を用いるものとする。例として、まず、顔検出と背景差分法とを用いる方法がある。上述したように顔検出はＩＮ方向のみ有効で、かつ、顔が正面でなければならないが、斜め上から撮影する場合、重なりが生じにくいというメリットがある。ＯＵＴ方向については、背景差分法で得られた前景領域と顔検出の結果とに基づいて、推測することができる。
【００２８】
図７は、第二被写体検出部２０６における第二の被写体検出方法の一例を説明するための図である。フレーム全体６０１は、図６の５０４に対応する。６０２は、図６の５０４の前景領域（斜線で表現した領域）に対応する。図６の５０３に示したように実際には人物は４人おり、右より３人はＩＮ方向、１人はＯＵＴ方向に歩いていたとする。このとき、顔検出を行うことにより顔が矩形の領域として６０３から６０５までのように第二被写体検出部２０６において検出される。この顔の下方向に人物が存在する可能性は低いので、第二被写体検出部２０６は、前景領域６０２よりこのような領域を除いた６０６（横線で表現した領域）を標準の人物のサイズで除算する等して、人物を求める（検出する）ことができる。
【００２９】
第二の検出方法の他の例としては、顔検出と楕円エッジ検出とを用いる方法もある。第二被写体検出部２０６は、ＩＮ方向は上述と同様に顔検出を用いる。そして、ＯＵＴ方向に関しては、第二被写体検出部２０６は、楕円エッジ検出を用いて後頭部のエッジを検出することにより、人物の検出を行う。楕円エッジ検出とは、以下のような処理である。第二被写体検出部２０６は、フレーム画像からＳｏｂｅｌフィルタ等を用いてエッジ強度画像を求める。次に、第二被写体検出部２０６は、大きさを可変として楕円状のマスクを変化させながら、既に顔検出された領域を除いた部分について、エッジ強度画像にマスクをかける。このときの強度の和が所定値以上であれば、第二被写体検出部２０６は、後頭部のエッジであると判定する。
【００３０】
以下、顔検出処理及び上半身検出処理の詳細について述べる。
本質的には顔検出も上半身検出も同様であるので、以下、顔検出で説明するが、顔を上半身に置き換えれば、上半身検出が可能となる。
本実施形態では、以下の文献１で提案されているニューラル・ネットワークにより画像中の顔パターンを検出する方法を適用した場合について説明する。
文献１：Ｒｏｗｌｅｙ  ｅｔ  ａｌ，  "Ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ−ｂａｓｅｄ  ｆａｃｅ  ｄｅｔｅｃｔｉｏｎ"，  ＩＥＥＥ  ＴＲＡＮＳＡＣＴＩＯＮＳ  ＯＮ  ＰＡＴＴＥＲＮ  ＡＮＡＬＹＳＩＳ  ＡＮＤ  ＭＡＣＨＩＮＥ  ＩＮＴＥＬＬＩＧＥＮＣＥ，  ＶＯＬ．２０  ，  ＮＯ．１，  ＪＡＮＵＡＲＹ  １９９８
まず、第二被写体検出部２０６は、顔の検出を行う対象である画像データをメモリに読み込み、顔と照合する所定の領域を、読み込んだ画像中から切り出す。そして、第二被写体検出部２０６は、切り出した領域の画素値の分布を入力としてニューラル・ネットワークによる演算で一つの出力を得る。このとき、ニューラル・ネットワークの重み、閾値が膨大な顔画像パターンと非顔画像パターンとにより予め学習されており、第二被写体検出部２０６は、例えば、ニューラル・ネットワークの出力が０以上なら顔、それ以外は非顔であると判別する。そして、第二被写体検出部２０６は、ニューラル・ネットワークの入力である顔と照合する画像パターンの切り出し位置とを、例えば、図８に示すように画像全域から縦横順次に走査していくことにより、画像中から顔を検出する。ここで、図８は、顔検出処理の一例を示す図である。また、様々な大きさの顔の検出に対応するため、第二被写体検出部２０６は、図８に示すように読み込んだ画像を所定の割合で順次縮小し、それに対して上述した顔検出の走査を行うようにしている。
【００３１】
なお、画像中から顔を検出する方法は上で説明したニューラル・ネットワークによる方法に限定されるものではなく、例えば文献２に挙げられている各種方式が適用可能である。
文献２：Ｙａｎｇ  ｅｔ  ａｌ，  "Ｄｅｔｅｃｔｉｎｇ  Ｆａｃｅｓ  ｉｎ  Ｉｍａｇｅｓ：  Ａ  Ｓｕｒｖｅｙ"，  ＩＥＥＥ  ＴＲＡＮＳＡＣＴＩＯＮＳ  ＯＮ  ＰＡＴＴＥＲＮ  ＡＮＡＬＹＳＩＳ  ＡＮＤ  ＭＡＣＨＩＮＥ  ＩＮＴＥＬＬＩＧＥＮＣＥ，  ＶＯＬ．２４  ，  ＮＯ．１，  ＪＡＮＵＡＲＹ  ２００２
【００３２】
本実施形態では、混雑度判定部２０３は、背景差分法を用いるよう説明を行ったが、フレーム間差分を用いて、差分画像を求め、この差分画像の面積に基づいて混雑度を判断（判定）するようにしてもよい。又は、図１に示したシステムに、レンジセンサや足圧センサ等のセンサを更に設置し、混雑度判定部２０３は、これらセンサの出力から混雑度を判定するようにしてもよい。
【００３３】
また、本実施形態では、混雑度判定部２０３は、混雑度を「高」と「低」との２種類に判定するものとして説明を行ったが、「高」、「中」、「低」の３種類とする等、より細かく場合分けを行うようにしてもよい。つまり、混雑度の度合いに応じて、適切な被写体検出方法（又は適切な被写体検出方法に対応する検出部）が存在すれば、混雑度判定部２０３は、何種類もの混雑度に場合分けを行ってもよい。
【００３４】
また、本実施形態では、第一被写体検出部２０５は混雑度「低」に、第二被写体検出部２０６は混雑度「高」に、対応するように説明を行った。しかしながら、ＰＣ１０６に異なる検出方法でフレーム画像に含まれる被写体を検出する複数の被写体検出部を設けておき、被写体検出方法選択部２０４により、混雑度に応じて被写体検出部を複数選択するようにしてもよい。なお、この場合、ＰＣ１０６は、複数の検出結果を統合する処理を行う統合部を有し、被写体追跡部２０７は、この統合部で統合された検出結果である被写体の予め定められた時間内の軌跡を求める。
【００３５】
また、本実施形態では、被写体検出方法選択部２０４が、被写体検出部を選択するよう説明を行った。しかしながら、常に複数の被写体検出部が被写体の検出を行い、これらの結果のどれを採用するかを被写体検出方法選択部２０４で選択するようにしてもよい。なお、この場合、被写体検出を行ってから、混雑度を判定し、被写体検出方法（被写体検出部）を選択するようにしてもよい。
【００３６】
また、本実施形態では、ＰＣ１０６にて混雑度判定から被写体検出、計数、表示まで行うように構成した。しかしながら、例えば、混雑度判定部２０３から計数部２０８まで各機能構成をチップに納め、撮像部１０４と一体化させるようにしてもよい。そして、ＰＣ１０６は、撮像部１０４より計数結果のみケーブル１０５を介して受信し、計数結果を表示するようにしてもよい。或いは、第一被写体検出部２０５と第二被写体検出部２０６とを撮像部１０４と一体化させるようにしてもよい。そして、ＰＣ１０６は、被写体検出結果を、ケーブル１０５を介して受信し、混雑度判定を行って、被写体検出方法選択部２０４は、検出結果の採用のみを行うようにしてもよい。
【００３７】
＜その他の実施形態＞
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段（ＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【００３８】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム（ＯＳ）等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【００３９】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【００４０】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【００４１】
以上、上述した実施形態によれば、混雑度が高く、被写体と被写体との重なりが生じやすくなるような場合であっても、被写体を精度よく検出し、計数することができる。
【００４２】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【００４３】
【図１】システム構成の一例を示す図である。
【図２】ＰＣ１０６のハードウェア構成の一例を示す図である。
【図３】ＰＣ１０６と撮像部１０４とで構成されるシステムの機能構成の一例を示す図である。
【図４】被写体の検出及び計数処理の一例を示すフローチャートである。
【図５】軌跡の生成を説明するための図である。
【図６】背景差分法による判定方法を説明するための図である。
【図７】第二被写体検出部２０６における第二の被写体検出方法の一例を説明するための図である。
【図８】顔検出処理の一例を示す図である。
【符号の説明】
【００４４】
１０４  撮像部
１０６  ＰＣ
【図１】
0005121508.tif 000002
【図２】
0005121508.tif 000003
【図３】
0005121508.tif 000004
【図４】
0005121508.tif 000005
【図５】
0005121508.tif 000006
【図６】
0005121508.tif 000007
【図７】
0005121508.tif 000008
【図８】
0005121508.tif 000009