(57)【特許請求の範囲】
【請求項１】
画像に対して反射率の高い特定領域を設定する領域設定手段と、
前記画像の位置に対応して検出する被写体のサイズを設定するサイズ設定手段と、
前記画像と入力画像との比較によって、変化領域を検出する検出手段とを有し、
前記検出手段は、前記変化領域が前記特定領域の境界をまたぐ場合には、前記変化領域の位置に対応する前記被写体のサイズに基づいて前記特定領域内の変化領域を出力することを特徴とする画像処理装置。
【請求項２】
前記変化領域から被写体を検出する被写体検出手段を更に有することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記検出手段は、予め取得した画像と前記入力画像との差分に基づいて変化画素を検出し、互いに近傍の複数の変化画素を変化領域塊としてまとめることを特徴とする請求項１または２記載の画像処理装置。
【請求項４】
画像に対して反射率の高い特定領域を設定する領域設定工程と、
前記画像の位置に対応して検出する被写体のサイズを設定するサイズ設定工程と、
前記画像と入力画像との比較によって、変化領域を検出する検出工程とを有し、
前記検出工程においては、前記変化領域が前記特定領域の境界をまたぐ場合には、前記変化領域の位置に対応する前記被写体のサイズに基づいて前記特定領域内の変化領域を出力することを特徴とする画像処理方法。
【請求項５】
請求項４記載の画像処理方法の各工程をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置等に関し、特に、動画像から、人物、動物、車両、物体などの特定の被写体又は被写体の一部を検出する装置や方法などに適用されて有効な技術に関する。
【背景技術】
【０００２】
従来、カメラで撮影した画像から被写体を検出する技術として、以下のような技術が開示されている。まず、背景差分法によって移動物体を検出する方法がある。背景差分法は、固定したカメラにおいて、予め、被写体がいない画像を撮影し、背景として登録しておく。そして、被写体の検出時にカメラから入力された画像と背景との差分を求め、異なる領域を移動物体として検出する方法であり、これを改良した技術も開示されている。
【０００３】
例えば、特許文献１に記載の技術では、背景を時刻別に記録し、かつ、鏡や光沢の明るさや色の情報の変動を記録することにより検出精度を改善している。また、特許文献２に記載の技術では、影の揺れらしさを評価して影による誤検知を低減させる検知領域を自動的に設定している。この影の揺れらしさは、背景差分により求めた変化領域と、画素の輝度変動に基づいて求めた変動領域との、面積比や変化領域と変動領域が重なった継続時間などを利用する。
【０００４】
また、特許文献３に記載の技術では、検知領域で検知した移動物体が、無視すべきものであるか否かを判定して誤検知を低減し、検知領域を自動的に修正している。具体的には、非検知領域をはみ出た変化領域を検出した時間に基づき侵入物体か否かを判定する。また、この結果に基づき検知領域を自動的に修正する。
【０００５】
一方、画像から顔や人などの被写体を検出する技術の例としては、非特許文献１に記載されているＶｉｏｌａとＪｏｎｅｓの報告がある。これは、所定の大きさの検出ウィンドウを入力画像上で走査させ、検出ウィンドウ内の画像を切り出したパターン画像に対し、被写体であるか否かを２クラスで判別する。この判別を行うためには、アダブーストを用いて多くの弱判別器を有効に組合せた判別器を構成し、判別精度を向上させるとともに、この判別器を直列に繋ぎ、カスケード型の検出器を構成するようにしている。更に夫々の弱判別器をＨａａｒタイプの矩形特徴量で構成し、矩形特徴量の算出を、積分画像を利用して高速に行っている。このカスケード型の検出器は、まず前段の単純な（計算量のより少ない）判別器を使って明らかに被写体でないパターンの候補をその場で除去する。それ以外の候補に対してのみ、より高い識別性能を持つ後段の複雑な（計算量のより多い）判別器を使って被写体かどうかの判別を行う。従って、すべての候補に対して複雑な判別を行う必要がないので高速に処理することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００４−２１３５７２号公報
【特許文献２】特開２００８−２９９５１６号公報
【特許文献３】特許第４１７１３１０号公報
【非特許文献】
【０００７】
【非特許文献１】2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition "Rapid Object Detection using a Boosted Cascade of Simple Features", Paul Viola and Michael Jones
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、入力画像に窓や反射率の高い壁がある反射領域では、映り込みによって従来の被写体検出技術では誤検知してしまうため、この反射領域を非検出領域として扱っていた。このため、反射領域の前を横切る被写体を検出することができなくなり、カメラの設置場所に制約を設ける以外に方法がなかった。
【０００９】
本発明は前述の問題点に鑑み、反射像による誤検知を低減できるようにすることを目的としている。
【課題を解決するための手段】
【００１０】
本発明の画像処理装置は、画像に対して反射率の高い特定領域を設定する領域設定手段と、前記画像の位置に対応して検出する被写体のサイズを設定するサイズ設定手段と、前記画像と入力画像との比較によって、変化領域を検出する検出手段とを有し、前記検出手段は、前記変化領域が前記特定領域の境界をまたぐ場合には、前記変化領域の位置に対応する前記被写体のサイズに基づいて前記特定領域内の変化領域を出力することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、入力画像に窓や反射率の高い壁などの反射する領域があり、その前を被写体が通る場合においても誤検出を低減した被写体検出を実現することができる。
【図面の簡単な説明】
【００１２】
【図１】画像処理装置の機能構成例を示すブロック図である。
【図２】画像処理装置のハードウェア構成例を示すブロック図である。
【図３】設定モードにおける処理手順の一例を示すフローチャートである。
【図４】検出モードにおける処理手順の一例を示すフローチャートである。
【図５】変化領域検出処理の詳細な手順の一例を示すフローチャートである。
【図６】複数の解像度に縮小し、検出ウィンドウを走査する状態を示す図である。
【図７】歩道の電柱に設置したカメラが撮影したカメラ画像の例を示す図である。
【図８】画像処理装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１３】
図２は、本実施形態における画像処理装置のハードウェア構成例を示すブロック図である。
図２において、ＣＰＵ２０１は、ＲＯＭ２０２やＲＡＭ２０３に格納されたプログラムに従って命令を実行する。ＲＯＭ２０２は、不揮発性メモリであり、本実施形態のプログラムやその他の制御に必要なプログラムやデータを格納する。ＲＡＭ２０３は、揮発性メモリであり、フレーム画像やパターン判別結果などの一時的なデータを記憶する。
【００１４】
２次記憶装置２０４は、ハードディスクドライブやフラッシュメモリーなどの書き換え可能な記憶装置であり、画像情報や画像処理プログラムや、各種設定内容などを記憶する。これらの情報はＲＡＭ２０３に転送され、ＣＰＵ２０１がプログラムを実行したりデータを利用したりする。画像入力装置２０５は、デジタルビデオカメラやネットワークカメラ、赤外線カメラなどであり、画像を入力する装置である。入力装置２０６は、キーボードやマウスなどであり、オペレータからの指示を入力する。
【００１５】
表示装置２０７は、ブラウン管ＣＲＴや液晶ディスプレイなどである。ネットワークＩ／Ｆ２０８は、インターネットやイントラネットなどのネットワークと接続を行うモデムやＬＡＮなどである。ネットワークＩ／Ｆ２０８からネットワークカメラなどの画像入力装置と接続して、ネットワークを介して画像を入力してもよい。バス２０９は、これらの構成を互いに接続して相互にデータの入出力を行う。本実施形態の画像処理装置はオペレーティングシステムの上で動作するアプリケーションとして実装されている。
【００１６】
図１は、本実施形態の画像処理装置の機能構成例を示すブロック図である。
図１において、１０１は画像入力部であり、画像入力装置２０５が利用される。１０２は特定領域設定部であり、被写体を検出したい領域のうち、窓や壁などの映り込みが多い反射領域を指定する。さらに、画像入力部１０１で取得する画角に応じて入力装置２０６から特定領域を設定する。
【００１７】
１０３は被写体サイズ設定部であり、画像入力部１０１で取得する画角に応じて、検出すべき被写体のサイズを入力装置２０６から入力して設定する。１０４は変化領域検出部であり、画像入力部１０１から入力された画像において通常と異なる変化した領域を検出する。１０５は被写体検出部であり、変化領域検出部１０４が検出する変化領域から被写体サイズ設定部１０３で設定された制約条件の下で入力画像における被写体の位置を検出する。被写体検出部１０５は、被写体候補選定部１０６と被写体判定部１０７とにより構成される。
【００１８】
次に、本実施形態における処理の流れについて説明する。本実施形態では、天井や電柱などに固定された画像入力装置２０５によって被写体の一例として歩行者などの人体を検出する画像処理装置を挙げて説明する。なお、歩行者以外にも車椅子やベビーカー、自転車などに乗車した人物やショッピングカートなどを押す人物、動物、車両、物体など様々な被写体の検出に適用することが可能である。
【００１９】
図７は、歩行者が歩いている様子を説明する図であり、歩道の電柱に設置したカメラが撮影したカメラ画像の例を示している。７０１は例えばガラス窓や金属パネルのような反射率の高い壁であり、７０３、７０４は人物である。このように人物を斜め上から撮影することで顔による人物確認が容易になる。７０２は壁７０１に反射することにより生成された人物７０３の虚像である。この画像上で実空間における直線は本画像上でも直線であり、実空間で水平な直線は図７でも水平になることを仮定している。レンズ歪などによって座標軸が直線にならない場合は、カメラキャリブレーションを行って幾何歪補正を行えばよい。
【００２０】
本実施形態による画像処理装置は大きく２つの動作モードがある。１つは、カメラを設置し、画角が決まったあとに行う設定モードである。２つ目は設定モードでの設定に基づいて移動体の検出を行う検出モードである。
【００２１】
まず、設定モードの流れを説明する。図３は、設定モードにおける処理手順の一例を示すフローチャートである。
まず、ステップＳ３０１において、画像入力部１０１から動画像を入力する。本実施形態では動画像の解像度はＶＧＡであり、１秒あたり３０枚の画像が入力される。次に、ステップＳ３０２において、入力した動画像を表示装置２０７に表示する。
【００２２】
次に、ステップＳ３０３において、特定領域設定部１０２によって特定領域を設定する。特定領域の設定は、入力装置２０６によって、表示装置２０７に表示された動画像上で特定領域を包含する多角形の頂点を指定することにより行う。図７に示す例では、反射率の高い壁７０１の領域を特定領域として設定する。なお、歩行者を検出する際は、特定領域の下にある被写体の足元の動きを利用するため、画像入力装置２０５の撮像方向を、被写体の足元が画面内におさまるように調整し、特定領域を設定する。
【００２３】
次に、ステップＳ３０４において、被写体サイズ設定部１０３によって、動画上の位置に応じて検出すべき被写体サイズを設定する。本実施形態では、カメラからの距離が異なる２地点における人物７０３、７０４を撮影し、人物の大きさをガイドとして検出したい被写体のサイズの矩形７０５、７０６を入力装置２０６により入力する。そして、被写体サイズ下部の点７０７、７０８に対応して記録する。図７に示す映像では、カメラが水平に設置されているので点７０７、７０８と高さが同じである場合には被写体サイズは同じである。また、他の点の高さに対応する被写体サイズは線形補間により求めることが出来る。
【００２４】
また、被写体サイズを設定する別の方法として、空間情報を設定することにより、より簡便に設定することができる。ここで、空間情報とは、撮影している実空間の３次元座標系と入力画像の画像上の座標系とを交互に変換する式であり、カメラキャリブレーションによって変換式のパラメータを推定することができる。また、主要な検出対象となる被写体のサイズをＲＯＭ２０２に予め記憶しておき、入力装置２０６から検出対象となる被写体を選択することにより、空間情報から動画上の位置に応じて検出すべき被写体サイズを求めることができ、簡便に設定することができる。
【００２５】
次に、ステップＳ３０５において、特定領域設定部１０２で設定した多角形の頂点、及び被写体サイズ設定部１０３で設定した２点における被写体サイズを２次記憶装置２０４に記憶する。また、実空間と動画との対応が予めわかっている場合には、被写体のサイズを設定するだけで動画上の位置における被写体のサイズを求めることができる。
【００２６】
次に、ステップＳ３０６において、予め被写体がいない状態で画像を用いて背景モデルを構築する。すなわち、被写体がいない状態のフレーム画像を背景モデルとする。また、所定時間の映像を蓄積し、画素ごとに平均と分散とを求めることにより時間変動をモデル化してもよい。なお、画素ごとではなく、画像を格子状に分割したブロックなど、所定サイズの領域単位でモデル化してもよい。その他、特許文献１などの改良技術によって構築することができる。
【００２７】
次に、検出モードの流れについて説明する。図４は、検出モードにおける処理手順の一例を示すフローチャートである。
まず、ステップＳ４０１において、画像入力部１０１から、１枚のフレーム画像を入力する。次に、ステップＳ４０２において、変化領域検出部１０４によって変化領域を検出する。この処理の詳細は後述するが、この処理により被写体とおぼしき領域が変化領域として出力される。
【００２８】
次に、ステップＳ４０３において、被写体候補選定部１０６によって被写体判定する検出ウィンドウの絞込みを行う。検出ウィンドウは、図６に示すように入力画像を複数の解像度に縮小し、各解像度における縮小画像６０２上で検出ウィンドウ６０１を走査する。検出ウィンドウ６０１は固定サイズなので、縮小率の大きな画像で検出した被写体ほど大きなサイズとなる。
【００２９】
このとき、検出したい被写体サイズの範囲内か否かによる絞込みと、変化領域であるかという２つの絞込みによって被写体判定の回数を削減すると同時に誤検出を低減することができる。被写体サイズは、ステップＳ３０４の設定内容に基づき、検出したい被写体サイズと位置との関係から範囲外のサイズとなる場合には除外する。また、変化領域であるかという絞込みは、検出ウィンドウ内に占める変化領域の割合が所定の閾値以下である場合に除外する。検出ウィンドウ内に被写体形状のテンプレートを配し、テンプレート内に占める変化領域の割合が所定の閾値以下の場合に除外するようにしても良い。
【００３０】
次に、ステップＳ４０４において、被写体判定部１０７によって被写体候補は人体か否か判定する。これは非特許文献１のように検出ウィンドウ内の画像が被写体か否かの判別を行うことができる。被写体付近では複数の検出ウィンドウが被写体と判定されるので、同一被写体を示す検出ウィンドウをグルーピングする。これは、検出ウィンドウの中心位置とサイズでクラスタ化し、各クラスタの位置を平均することで最終的な被写体の位置を判定できる。
【００３１】
次に、ステップＳ４０５において、被写体の位置情報を表示装置２０７へ出力する。被写体の位置情報は次のような用途がある。例えば、被写体の移動軌跡を分析することにより通行人数をカウントしたり、通常とは異なる軌跡か否かを判定して異常時に警告信号を生成したりするなどである。
【００３２】
次に、ステップＳ４０２における、変化領域検出部１０４の処理について詳しく説明する。図５は、変化領域検出処理の詳細な手順の一例を示すフローチャートである。
まず、ステップＳ５０１において、入力されたフレーム画像の画素ごとにステップＳ３０６にて構築した背景モデルの対応画素と比較し、背景か否かを判定する。具体的には、各画素値がステップＳ３０６の背景モデルとの差分が所定の範囲を超えた場合に背景ではないと判定する。すべての画素に対して判定した結果、画素が変化したことを示す入力画像と同じサイズの２値画像が生成される。なお、画素単位ではなく、例えば８＊８画素などのブロック単位で判定してもよい。これにより、処理コストを減らすことができ、画素より大域を参照した判定によりノイズなどにロバストな判定が可能となる。
【００３３】
次に、ステップＳ５０２において、前ステップで生成された２値画像の特定領域を除いた領域について互いに近傍の複数の変化画素を１つにまとめ、変化領域塊を作成する。ここで、特定領域を除くのは、単に反射が発生するだけではなく、ビルの壁や窓は鏡のように平面度が高くなく、反射光の乱れが多く誤判定が多いためである。また、特定領域では、特定領域外とは異なるパラメータで変化画素の判定、膨張、縮退を行ってもよい。また、変化領域塊を作成する前に、縮退処理や膨張処理を行って移動体に対応した変化領域塊を作成することができる。この縮退処理は孤立した小さな画素を削減する効果がある。また、膨張処理は移動体上で背景と判定された画素を修正する効果がある。
【００３４】
次に、ステップＳ５０３〜ステップＳ５０８において、すべての変化領域塊について処理を行う。具体的には、まず、ステップＳ５０３において、注目する変化領域塊を１つ選ぶ。ここでは、変化領域塊が特定領域内を通して繋がって大きな変化領域塊となることを避けるため、特定領域の境界で変化領域塊を区切り、特定領域外にある各々の変化領域塊を１つずつ選ぶ。
【００３５】
次に、ステップＳ５０４において、変化領域塊が特定領域内外の下部の境界をまたいでいるか否かを判定する。この判定の結果、境界をまたいでいる場合は、次のステップＳ５０５に進み、またいでいない場合には、ステップＳ５０８に進む。
【００３６】
次に、ステップＳ５０５において、変化領域塊に対応する被写体のサイズを得るため変化領域塊の下部に対して代表点を決定する。この代表点は、変化領域塊の重心から下ろした垂線と下部塊境界との交点である。なお、特定領域との境界が水平でない場合には重心位置に誤差が発生する。この場合には、特定領域との境界の最下部を通る水平線より下の変化領域塊の重心を求めればよい。また、被写体の影や床面による反射がある場合には、図示しない影除去方法や床面反射除去方法により変化領域塊を補正した上で代表点を求めればよい。また、人が足を開いている場合のように変化領域が下部で割れることがある。この場合は、変化領域塊を、変化領域塊を含む最小の凸多角形に置き換えて、重心から下ろした垂線と下部塊境界の交点としても良い。また、変化領域の重心の代わりに変化領域塊や変化領域塊を含む最小の凸多角形の外接多角形の重心、左右端からの中央点としても良い。
【００３７】
次に、ステップＳ５０６において、代表点に対応する被写体サイズ大の矩形領域を特定領域内に設定する。被写体サイズはステップＳ３０５で設定した被写体下部の位置と被写体サイズとの設定に基づいて決定する。このとき、必ずしも矩形である必要はなく、被写体をあらわす任意の形状でよい。ただし、人物のようにサイズにばらつきや姿勢などの変動がある場合には、これらの変動を含む領域を設定することが望ましい。また、設定した領域から非変化画素を除外した領域としてもよい。このように、領域を限定することによって、ステップＳ４０３の被写体候補選定部１０６がより精度よく選定することができる。
【００３８】
次に、ステップＳ５０７において、ステップＳ５０６で設定した領域内の変化領域をステップＳ５０３で注目している変化領域と結合（ＯＲ）して新たな変化領域塊とする。そして、ステップＳ５０８に進み、最後の変化領域であれば終了し、そうでなければステップＳ５０３に戻る。この処理によって特定領域で検出した変化領域から、映り込みによる虚像と特定領域と干渉した被写体とを正しく区別することができる。
【００３９】
（その他の実施形態）
図８は、本実施形態における画像処理装置のハードウェア構成例を示すブロック図である。なお、第１の実施形態と共通する部分には図２と同じ番号を付与している。ブロック構成としては、プログラムを記録したＤＶＤまたはＣＤのような光ディスク２１１、外部記憶入出力装置２１０を追加しているところが第１の実施形態と異なる。この構成によれば、光ディスク２１１を外部記憶入出力装置２１０に挿入するとＣＰＵ２０１は光ディスク２１１からプログラムを読み取って、ＲＡＭ２０３に展開することにより、第１の実施形態と同様の処理を実現することができる。
【００４０】
また、図２においては、各装置はバス２０９によって接続されているが、一部の装置をネットワークＩ／Ｆ２０８により接続して構成しても良い。例えばネットワークカメラの様な画像入力装置をネットワークＩ／Ｆ２０８により接続して画像を入力するように構成しても良い。また、画像入力装置は雲台に搭載しパンチルトなどの姿勢制御ができるようにしてもよい。この場合、カメラの姿勢に応じた背景モデルを作成するか、カメラの水平、垂直方向の角度を座標軸とした座標系を定義し、ズーム倍率に応じたスケールに変換した背景モデルを構築することで、カメラの姿勢が変化しても本発明を適用することができる。
【００４１】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００４２】
１０１  画像入力部、１０２  特定領域設定部、１０３  被写体サイズ設定部、１０４  変化領域設定部、１０５  被写体検出部、１０６  被写体候補選定部、１０７  被写体判定部
【図１】
0005665401.tif 000002
【図２】
0005665401.tif 000003
【図３】
0005665401.tif 000004
【図４】
0005665401.tif 000005
【図５】
0005665401.tif 000006
【図６】
0005665401.tif 000007
【図７】
0005665401.tif 000008
【図８】
0005665401.tif 000009