(57)【特許請求の範囲】
【請求項１】
撮像手段と、
前記撮像手段により得られた画像から前景領域及び背景領域を判定する判定手段と、
前記画像からフィルタを用いた演算により輝度値の勾配方向及び勾配強度を表す特徴量を算出する算出手段と、
前記判定手段により判定された前景領域と背景領域との境界における前景領域を前記フィルタのサイズに対応する幅だけ膨張することで当該前景領域を膨張する膨張手段と、
前記膨張手段により前景領域を膨張した後の背景領域における前記特徴量を無効値に設定する設定手段と、
前記設定手段による設定後における前記膨張手段により膨張された前景領域の特徴量を用いて前記画像から被写体を検出する検出手段とを有することを特徴とする画像処理装置。
【請求項２】
前記特徴量とは、前記画像の畳み込み演算により算出する特徴量であることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記特徴量とは、前記画像の微分演算により勾配強度を算出する特徴量であることを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
撮像手段により得られた画像から前景領域及び背景領域を判定する判定工程と、
前記画像からフィルタを用いた演算により輝度値の勾配方向及び勾配強度を表す特徴量を算出する算出工程と、
前記判定工程において判定された前景領域と背景領域との境界における前景領域を前記フィルタのサイズに対応する幅だけ膨張することで当該前景領域を膨張する膨張工程と、
前記膨張工程において前景領域を膨張した後の背景領域における前記特徴量を無効値に設定する設定工程と、
前記設定工程による設定後における前記膨張工程において膨張された前景領域の特徴量を用いて前記画像から被写体を検出する検出工程とを有することを特徴とする画像処理方法。
【請求項５】
請求項４記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、画像処理方法及びプログラムに関し、特に、被写体を検出するために用いて好適な技術に関する。
【背景技術】
【０００２】
カメラで撮影した画像から被写体を検出する技術として、次のような技術が開示されている。まず、背景差分法によって移動物体を検出する方法がある。背景差分法は、固定したカメラにおいて、予め被写体がいない画像を撮影して背景として登録しておく。そして、被写体を検出した時には、カメラから入力された画像と背景との差分を求め、異なる領域を移動物体として検出する方法である。そして、最近ではこの技術を改良した技術が開示されている。
【０００３】
例えば特許文献１に記載の技術では、異なる解像度または空間周波数帯域で背景モデルの微分画像を作成し、対応する入力画像の微分画像との差分画像から対象物体であるかどうかを判別する。このように微分画像を用いることにより、照明の変化よる明るさの変動に対してロバストな判別をしている。また、特許文献２に記載の技術では、背景差分の後、前景背景の境界で多数決フィルタを用いて前景背景を判定する。この多数決フィルタは、注目画素の周囲の画素の状態の多数決によって注目画素の状態を決定するものであり、背景ノイズや虫食いのない移動体だけの画像を生成する。さらに、特許文献３に記載の技術では、動体検知において複数の背景差分２値化画像の論理積、膨張により不要移動体を除去している。
【０００４】
画像から顔や人などの被写体を検出する技術の例としては、例えば特許文献４に開示されている。この技術は、勾配方向ヒストグラム（Histograms of Oriented Gradients）特徴を評価することで、入力されたパターンが人体か否かを判定するものである。この勾配方向ヒストグラム特徴は、各画素について勾配強度と勾配方向とを求め、セルと呼ばれる矩形領域内の各画素の勾配強度の和を勾配方向別に求めたものである。更に勾配強度が画像のコントラスト等に依存するため、ブロックと呼ばれる矩形領域内の勾配強度の総和で割って正規化を行う。セルやブロックは、パターン上の様々な位置、サイズの中からＡｄａＢｏｏｓｔ学習によって判別に有効な領域が選ばれる。また、勾配方向ヒストグラム特徴に基づいて人体か否かを判定する判別器を直列に接続し、人体であると判定した場合にのみ後段の判別器で判別することにより、高速な処理を可能としている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第３７２９５６２号公報
【特許文献２】特開２００１−０１４４７４号公報
【特許文献３】特開２００６−０１８６５８号公報
【特許文献４】米国特許出願公開第２００７／０２３７３８７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術は、背景の移動に対してロバストでないという問題がある。例えば、風などのために背景の一部が振動するような場合に、良好な勾配差分画像を得ることができない。また、背景領域同士では背景モデルと入力画像との勾配が同じため、差分を取ることにより打ち消し合うが、前景領域では打ち消し合うことはないので、差分画像の前景領域内では背景領域の勾配成分が残ってしまうという問題がある。
【０００７】
また、特許文献２に記載の技術は、正しい移動体の画像が得られれば、移動体の輪郭によって移動体が何であるかを判定することが容易になるが、背景の判定解像度を落とした場合に剛健に対応できない。背景の判定を例えば８＊８画素のブロック単位で判定することによって判定精度の向上や、処理コスト削減が可能となる。しかしながら、特許文献２の技術を用いて身長が約１００画素相当の人体を検出する場合、人体は横４ブロック縦１２ブロック程度の大きさであるため、人体の輪郭が失われてしまう問題がある。
【０００８】
さらに特許文献３に記載の技術は、動体を検知する方法において不要移動体か否かを判断するために膨張や縮退処理により小さな移動体をノイズとして削除し、或いは膨張することにより接触した領域を結合して１つの移動体としてまとめるものである。ところが、移動体が人物であるかなどといった移動体の詳細を判定する方法に関する言及はなく、人と他の移動体とを精度よく区別できない。また、特許文献４に記載の技術は、画像から人物などの被写体を検出する技術である。ところが、本技術を動画に適用した場合、背景上の検出対象に似た領域を物体として誤って検出してしまう問題がある。
【０００９】
本発明は前述の問題点に鑑み、より精度よく被写体を検出できるようにすることを目的としている。
【課題を解決するための手段】
【００１０】
本発明の画像処理装置は、撮像手段と、前記撮像手段により得られた画像から前景領域及び背景領域を判定する判定手段と、前記画像からフィルタを用いた演算により輝度値の勾配方向及び勾配強度を表す特徴量を算出する算出手段と、前記判定手段により判定された前景領域と背景領域との境界における前景領域を前記フィルタのサイズに対応する幅だけ膨張することで当該前景領域を膨張する膨張手段と、前記膨張手段により前景領域を膨張した後の背景領域における前記特徴量を無効値に設定する設定手段と、前記設定手段による設定後における前記膨張手段により膨張された前景領域の特徴量を用いて前記画像から被写体を検出する検出手段とを有することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、被写体と背景の境界による輪郭が明瞭となり、被写体判定の精度が向上する。これにより、監視カメラによる防犯や人流を計測してスタッフ配置やマーケティングシステム等に応用できる。
【図面の簡単な説明】
【００１２】
【図１】画像処理装置の機能構成例を示すブロック図である。
【図２】画像処理装置のハードウェア構成例を示すブロック図である。
【図３】被写体を検出する処理手順の一例を示すフローチャートである。
【図４】被写体の検出処理の概要を示す図である。
【図５】縮小画像及び画素値の例を示す図である。
【図６】画像処理装置のハードウェア構成の他の例を示すブロック図である。
【発明を実施するための形態】
【００１３】
（第１の実施形態）
以下、本発明の第１の実施形態について図面を参照しながら説明する。
図２は、本実施形態における画像処理装置のハードウェア構成例を示すブロック図である。
図２において、ＣＰＵ２０１は、ＲＯＭ２０２やＲＡＭ２０３に格納されたプログラムに従って命令を実行する。ＲＯＭ２０２は不揮発性メモリであり、本実施形態の処理を行うためのプログラムやその他の制御に必要なプログラムやデータを格納する。ＲＡＭ２０３は揮発性メモリであり、フレーム画像データやパターン判別結果などの一時的なデータを記憶する。
【００１４】
２次記憶装置２０４は、ハードディスクドライブやフラッシュメモリーなどの書き換え可能な２次記憶装置であり、画像情報や画像処理プログラムや、各種設定内容などを記憶する。これらの情報はＲＡＭ２０３に転送してＣＰＵ２０１がプログラムの実行およびデータを利用する。画像入力装置２０５は、デジタルビデオカメラやネットワークカメラ、赤外線カメラなどであり、画像データを入力する。
【００１５】
入力装置２０６は、キーボードやマウスなどであり、オペレータからの入力を行う。表示装置２０７は、ブラウン管ＣＲＴや液晶ディスプレイなどである。ネットワークＩ／Ｆ２０８は、インターネットやイントラネットなどのネットワークと接続を行うモデムやＬＡＮなどである。ネットワークＩ／Ｆ２０８によりネットワークカメラなどの画像入力装置と接続して、ネットワークを介して画像データを入力してもよい。バス２０９は、これらを接続して相互にデータの入出力を行う。また、本実施形態の画像処理装置は、オペレーティングシステムの上で動作するアプリケーションとして実装されている。
【００１６】
図１は、本実施形態の画像処理装置の機能構成例を示すブロック図である。
図１において、１０１は撮像部であり、画像入力装置２０５が利用される。
１０２は背景領域判定部であり、撮像部１０１で撮像された映像から前景領域または背景領域を判定する。１０３は前景領域膨張部であり、背景領域判定部１０２の結果に基づいて前景領域の境界を法線方向に膨張させる。１０４は被写体検出部であり、撮像部１０１で撮像された映像から被写体を検出する。また、被写体検出部１０４は、画像縮小部１０５、特徴量算出部１０６、特徴設定部１０７、被写体特徴算出部１０８、及び被写体判定部１０９により構成される。
【００１７】
本実施形態では、固定された画像入力装置２０５によって入力された映像から被写体の一例として歩行者などの人体を検出する画像処理装置を例に説明する。なお、歩行者以外にも車椅子やベビーカー、自転車などに乗車した人物やショッピングカートなどを押す人物、動物、車両、物体など様々な被写体の検出に適用することが可能である。
【００１８】
図３は、本実施形態において、被写体を検出する処理手順の一例を示すフローチャートである。
まず、ステップＳ３０１において、撮像部１０１から映像として動画像データを入力する。本実施形態では動画像の解像度はＶＧＡであり、１秒あたり３０枚の輝度画像が入力される。また、本実施形態は解像度やフレームレートに関する制約はなく、画像はカラー画像であってもよい。
【００１９】
次に、ステップＳ３０２において、背景領域判定部１０２は、この入力された映像の背景領域を判定する。これは、あらかじめ被写体が映っていない状態で背景画像を作成しておき、入力画像との各画素における輝度差を求め、所定の閾値以内の画素を背景画素と判定するものである。判定結果は背景ならば０、前景ならば１とする２値の背景画像として表現する。また、この背景画像の代わりに一定時間の背景映像を撮影しておき、輝度の平均値を求めてもよい。また、輝度変化の分散に基づいて閾値を画素ごとに設定してもよい。また、入力画像を格子状のブロックなど複数の領域に分割し、輝度値の他に色情報やテクスチャ情報を反映した特徴量によって、領域ごとに背景か否かの判定を行ってもよい。このように領域単位で判定することによって精度向上や処理コスト削減を図ることができる。また、判定結果は背景らしさ、前景らしさを示す多値であってもよい。
【００２０】
次に、ステップＳ３０３〜ステップＳ３０８において、画像からの被写体の検出処理を行う。被写体の検出処理は特許文献４に記載されている手順と同様な処理で行う。すなわち、図４に示すように、入力画像を段階的に縮小した縮小画像４０１上で検出ウィンドウ４０２を走査し、検出ウィンドウ４０２内のパターン画像が被写体であるか否かを判定する。本実施形態では、検出ウィンドウ４０２は幅６４画素高さ１２８画素であり、その中央に立位状態で高さ９６画素の人物がいるか否かを判定する。また、検出ウィンドウ４０２の走査は縦横８画素おきに移動する。
【００２１】
まず、ステップＳ３０３において、画像縮小部１０５は、所定サイズの被写体テンプレートで様々な被写体を検出するため、入力画像を段階的に縮小し、ピラミッド状の縮小画像を作成する。次に、ステップＳ３０４において、特徴量算出部１０６は、特徴量の算出を行う。ここでは、入力画像の縮小画像４０１に対して、１×３画素のＰｒｅｗｉｔｔフィルタによって縦および横方向の微分演算を行い、勾配画像を出力する。
【００２２】
入力画像の座標（ｘ，ｙ）における輝度値をＩ（ｘ，ｙ）とすると、その横方向の微分画像Ｄｘ（ｘ，ｙ）、縦方向の微分画像Ｄｘ（ｘ，ｙ）、勾配強度Ｍ（ｘ、ｙ）、勾配方向θ（ｘ、ｙ）は式（１）のように表される。
Ｄｘ（ｘ，ｙ）＝Ｉ（ｘ＋１，ｙ）−Ｉ（ｘ−１，ｙ）
Ｄｙ（ｘ，ｙ）＝Ｉ（ｘ，ｙ＋１）−Ｉ（ｘ，ｙ−１）
Ｍ（ｘ，ｙ）＝  （Ｄｘ（ｘ，ｙ）2＋Ｄｙ（ｘ，ｙ）2）1/2
θ（ｘ，ｙ）＝  ｔａｎ-1（Ｄｙ（ｘ，ｙ）／Ｄｘ（ｘ，ｙ））      ・・・（１）
【００２３】
なお、勾配方向は被写体と背景のどちらが明るいかは検出に無関係であるので、１８０度で折り返す。そして、２０度ごとに９方向に量子化する。また、勾配画像を得るにはＰｒｅｗｉｔｔフィルタの他にラプラシアンフィルタ、Ｒｏｂｅｒｔｓフィルタ、Ｓｏｂｅｌフィルタ等を用いて畳み込み演算を行ってもよい。
【００２４】
次に、ステップＳ３０５において、前景領域膨張部１０３は、ステップＳ３０２の結果により得られた背景画像の前景領域を膨張する。この処理は、背景と前景との境界と被写体の境界とが重なった場合でも、被写体の輪郭を明瞭にするためのものである。すなわち、ステップＳ３０４で得られる勾配特徴量はフィルタサイズに応じた範囲で周囲の画素に分散し、画像で言えばぼかした状態となる。したがってステップＳ３０４において使用したフィルタサイズに対応する幅だけ膨張することにより、被写体輪郭上での勾配情報を保存することができるようになる。
【００２５】
前景領域の膨張処理は、特許文献３に記載されている膨張処理と同様であるが、処理の目的が異なる。特許文献３に記載されている例では、動体を検知する方法において不要移動体か否かを判断するために膨張処理を行っていた。一方、本実施形態では被写体の特徴量を明瞭にして、被写体の判定精度を向上するために使用する。
【００２６】
本実施形態では、膨張処理は５×５画素の平均化フィルタによって畳み込み演算を行い、その結果を２値化することにより実現する。その他の方法としては、ステップＳ３０３における縮小処理を、背景画像に対しても入力画像と同じ縮小率で縮小を行う。その際、２値の背景画像を多値画像として扱い、バイキュービック法やバイリニア法などの画素補間法によって行う。そして、各縮小サイズにおいて適切な閾値を設定し２値化することにより、縮小率に応じて膨張する場合と同じ効果を得ることができる。また、背景領域を縮退しても同様な効果を得ることができる。
【００２７】
次に、ステップＳ３０６において、特徴設定部１０７は、特徴量の設定を行う。これはステップＳ３０４で求めた勾配強度とステップＳ３０５で求めた前景領域を膨張した背景画像との論理積を画素ごとに求めることにより、勾配強度の背景領域に相当する領域を０クリアする。
【００２８】
次に、ステップＳ３０７において、パターン判定を行う。ここでは、縮小画像上で検出ウィンドウをラスタスキャンしながら、検出ウィンドウ内のパターンが被写体であるかを判定する処理を繰り返す。各検出ウィンドウの位置において、被写体か否かの判定はＡｄａＢｏｏｓｔにより機械学習した直列に接続したフィルタで判定する処理を繰り返すことにより行う。各フィルタではそれぞれ被写体特徴算出部１０８によりパターン内の所定の局所領域における被写体特徴量の算出を行う。これは、ステップＳ３０６で出力した勾配強度および勾配方向を用いて、勾配方向ヒストグラム特徴を算出する。局所領域の位置サイズは各フィルタによって様々であり、ＡｄａＢｏｏｓｔによる機械学習で判別に有効な局所領域を獲得する。
【００２９】
ある局所領域の勾配方向ヒストグラム特徴の算出方法の一例を説明する。まず、局所領域を２＊２個のセルに分割し、各セル内の画素について勾配方向ごとに勾配強度の総和を求め、セルあたり９次元のベクトルを得る。そして、これを局所領域内の画素の勾配強度の総和で割ることで正規化する。これにより４セル分の３６次元の特徴ベクトルを出力する。各フィルタは被写体特徴算出部１０８が出力する特徴ベクトルをリニアＳＶＭによって獲得した射影係数を用いて判別空間へ線形射影し、スカラー値を得る。このスカラー値を１次元ＬＵＴ（ルックアップテーブル）により被写体らしさを表す得点へ変換する。
【００３０】
直列に接続した各フィルタの得点を累積し、得点が閾値以上の場合のみ次のフィルタへ進み、得点が閾値未満である場合には、被写体でないとして検出ウィンドウを次の位置へ移動する。最後のフィルタで閾値以上となった場合に、その検出ウィンドウの位置において被写体判定部１０９は被写体が存在したと判定する。なお、被写体の検出方法は、その処理の一部に畳み込み演算を行う処理を伴う他の手段を用いてもよい。
【００３１】
次に、ステップＳ３０８において、すべての縮小画像で終了したか否かを判定する。この判定の結果、縮小画像の次の段がある場合は、ステップＳ３０４に戻り次の段について同様に被写体の探索処理を行う。一方、すべての縮小画像で終了した場合は、そのまま処理を終了する。
【００３２】
図５は、各部における画素値の例を示す図である。
図５（ａ）は、入力画像を画像縮小部１０５で縮小した縮小画像の一例を示す図であり、画像の中央に道路に立つ人物がいることを示す。図５（ｂ）は、背景画像を示す図であり、縮小画像の画素位置に対応して、前景領域を黒、背景領域を白で表している。また、図５（ａ）の前景背景境界５０１は、人物の背景の境界を含む５×５画素の領域を示し、図５（ｃ）〜図５（ｇ）は、この領域における各処理部の出力結果を示したものである。
【００３３】
図５（ｃ）には、図５（ｂ）に示す背景画像の前景背景境界５０１における画素値を示している。画素値が０の領域は背景であることを示し、１の領域は前景であることを示す。図５（ｄ）には、図５（ａ）に示す縮小画像の前景背景境界５０１における各画素の輝度値を示している。また、図５（ｅ）には、輝度値から式（１）によって算出した勾配強度Ｍを示している。
【００３４】
図５（ｆ）には、前景領域膨張部１０３によって前景を２画素分膨張した後の画素値を示している。また、図５（ｇ）には、特徴設定部１０７によって、前景領域膨張部１０３の結果に基づいて特徴設定した勾配強度Ｍを示している。図５（ｃ）に示した画素値の画像ではなく図５（ｆ）に示した前景を膨張した後の画像を用いて特徴設定することによって、前景背景境界の領域における勾配強度を多く維持することができる。また、背景領域の勾配強度を０に設定することによって人物の輪郭を相対的に明瞭にすることができる。
【００３５】
以上のように本実施形態によれば、被写体と背景の境界による輪郭が明瞭となり、被写体判定の精度が向上する。これにより、監視カメラによる防犯や人流を計測してスタッフ配置やマーケティングシステム等に応用できる。
【００３６】
（第２の実施形態）
図６は、本実施形態における画像処理装置のハードウェア構成例を示すブロック図である。なお、第１の実施形態と共通する部分には図２と同じ番号を付与している。
ブロック構成としては、プログラムを記録したＤＶＤまたはＣＤのような光ディスク２１１、外部記憶入出力装置２１０を追加しているところが第１の実施形態と異なる。プログラムを記録した光ディスク２１１を外部記憶入出力装置２１０に挿入するとＣＰＵ２０１は光ディスク２１１からプログラムを読み取って、ＲＡＭ２０３に展開することにより、第１の実施形態と同様の処理を実現することができる。
【００３７】
（その他の実施形態）
図１において、各装置はバス２０９によって接続されているが、一部の装置をネットワークＩ／Ｆ２０８により接続して構成してもよい。また、本発明のプログラムの一部または全部を画像入力装置内で実現してもよい。
また、画像入力装置は雲台に搭載しパンチルトなどの姿勢制御ができるようにしてもよい。この場合、カメラの姿勢に応じた背景モデルを作成するか、例えばカメラの水平、垂直方向の角度を座標軸とした座標系を定義し、ズーム倍率に応じたスケールに変換した背景モデルを構築によりすること、カメラの姿勢が変化しても本発明を適用することができる。
【００３８】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００３９】
１０１  撮像部、１０２  背景領域判定部、１０３  前景領域膨張部、１０４  被写体検出部
【図１】
0005975598.tif 000002
【図２】
0005975598.tif 000003
【図３】
0005975598.tif 000004
【図４】
0005975598.tif 000005
【図５】
0005975598.tif 000006
【図６】
0005975598.tif 000007