以下、本発明の実施形態として、人が存在し得る空間が撮影された撮影画像を解析することによって、その空間における人の分布を推定する分布推定装置の例を含み、分布画像等の推定結果を監視員に対して表示する画像監視装置の例を説明する。すなわち本実施形態では推定対象とする対象物体を人、特に立位の人とする例を説明するが、本発明は、立位の人に限らず、人の上半身などの人体の一部を対象物体としてもよいし、車両などの人以外の物体を対象物体としてもよい。
図1は画像監視装置1の概略の構成を示すブロック図である。画像監視装置1は、撮影部2、通信部3、記憶部4、画像処理部5、および表示部6からなる。
撮影部2は、監視カメラであり、通信部3を介して画像処理部5と接続され、監視空間を所定の時間間隔で撮影して撮影画像を生成し、撮影画像を順次画像処理部5に入力する撮影手段である。例えば、撮影部2は、イベント会場に設置されたポールに当該監視空間を俯瞰する視野を有して設置される。その視野は固定されていてもよいし、予めのスケジュール或いは通信部3を介した外部からの指示に従って変更されてもよい。また、例えば、撮影部2は監視空間をフレーム周期1秒で撮影してカラー画像を生成する。カラー画像の代わりにモノクロ画像を生成してもよい。
通信部3は、通信回路であり、その一端が画像処理部5に接続され、他端が同軸ケーブルまたはLAN(Local Area Network)、インターネットなどの通信網を介して撮影部2および表示部6と接続される。通信部3は、撮影部2から撮影画像を取得して画像処理部5に入力し、画像処理部5から入力された推定結果を表示部6に出力する。
記憶部4は、ROM(Read Only Memory)、RAM(Random Access Memory)等のメモリ装置であり、各種プログラムや各種データを記憶する。記憶部4は、画像処理部5と接続されて画像処理部5との間でこれらの情報を入出力する。
画像処理部5は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)、MCU(Micro Control Unit)等の演算装置で構成される。画像処理部5は、記憶部4および表示部6と接続され、記憶部4からプログラムを読み出して実行することにより各種処理手段・制御手段として動作し、各種データを記憶部4に記憶させ、読み出す。また、画像処理部5は、通信部3を介して撮影部2および表示部6とも接続され、通信部3経由で撮影部2から取得した撮影画像を解析することにより監視空間における人の分布を推定し、推定結果を通信部3経由で表示部6に表示させる。
表示部6は、液晶ディスプレイ又はCRT(Cathode Ray Tube)ディスプレイ等のディスプレイ装置であり、通信部3を介して画像処理部5と接続され、画像処理部5による推定結果を表示する表示手段である。監視員は表示された推定結果を視認して混雑の発生等を判断し、必要に応じて人員配置の変更等の対処を行う。
なお、本実施形態においては、撮影部2と画像処理部5の個数が1対1である画像監視装置1を例示するが、別の実施形態においては、撮影部2と画像処理部5の個数を多対1或いは多対多とすることもできる。
図2は画像監視装置1の機能ブロック図である。通信部3は画像取得手段30および分布出力手段31等として機能し、記憶部4は単体識別器記憶手段40および密度推定器記憶手段41等として機能する。画像処理部5は、単体識別手段50、密度推定手段51および終了判定手段52等として機能する。また、単体識別手段50は識別用特徴抽出手段500、推定スコア混合手段501および識別スコア算出手段502としての機能を含み、密度推定手段51は推定用特徴抽出手段510、識別スコア混合手段511および推定スコア算出手段512としての機能を含む。
以下、図2を参照して各手段について説明する。
画像取得手段30は、撮影手段である撮影部2から撮影画像を順次取得して、取得した撮影画像を単体識別手段50および密度推定手段51に順次出力する。
単体識別手段50は、画像取得手段30から入力された撮影画像から単体識別用の特徴量(識別用特徴量)を抽出して、抽出した識別用特徴量を単体識別器に入力し、当該入力に応じた単体識別器の出力値を取得し、取得した出力値を密度推定手段51および終了判定手段52に出力する。単体識別器については後述する。
密度推定手段51は、画像取得手段30から入力された撮影画像から密度推定用の特徴量(推定用特徴量)を抽出して、抽出した推定用特徴量に単体識別手段50が取得した出力値を混合し、混合した特徴量(推定用混合特徴量)を密度推定器に入力して取得される出力値を用いて人の密度を推定する。密度推定器については後述する。
つまり、密度推定手段51は、単に撮影画像から抽出しただけの推定用特徴量から密度を推定するのではなく、自身が処理対象とする撮影画像について単体識別手段50が単体識別器から取得した出力値をも推定に用いて推定精度を向上させるのである。
さらに、密度推定手段51は密度推定器に入力して取得した出力値を単体識別手段50および終了判定手段52に出力し、単体識別手段50は、密度推定手段51が取得した出力値を識別用特徴量に混合し、混合した特徴量(識別用混合特徴量)を単体識別器に入力して新たな出力値を取得する。つまり単体識別手段50は識別用混合特徴量を単体識別器に入力することによって出力値を更新する。密度推定手段51は、単体識別手段50が出力値を更新した場合に、単体識別手段50が更新した出力値を用いて密度推定器の出力値および人の密度の推定結果を更新する。
つまり、単体識別手段50も、単に撮影画像から抽出しただけの推定用特徴量から識別するのではなく、自身が処理対象とする撮影画像について密度推定手段51が密度推定器から取得した出力値をも識別に用いて識別精度を向上させる。そして、密度推定手段51は、単体識別器の出力値が更新されると、再びその更新値を用いることによって推定精度を向上させるのである。
このように、単体識別手段50と密度推定手段51は、自身が取得した値を相手に出力し、相手が取得した値を用いて自身が取得する値を更新する反復処理を行う。
終了判定手段52は、単体識別手段50と密度推定手段51が行う反復処理の終了を制御する手段である。終了判定手段52は、密度推定手段51による更新が予め定めた基準を満たすか否かを判定して、基準を満たすと判定した場合に密度推定手段51による更新を停止させて、その時点の画素ごとの推定密度に応じた分布画像を分布出力手段31に出力する。
具体的には、終了判定手段52は、密度推定手段51から入力された密度推定器の出力値が収束したか否かを判定し、および反復回数が予め定めた上限回数に達したか否かを判定し、密度推定器の出力値が収束したと判定した場合または反復回数が上限回数に達したと判定した場合に反復処理を停止させる。ここで、密度推定器の出力値の変化量が小さくなっても単体識別器の出力値の変化量が未だ大きければ密度推定器の出力値の改善が生じ得る。このように変化量の一時的な減少を収束と誤判定をしないよう、終了判定手段52は、単体識別手段50から入力された単体識別器の出力値をも参照し、密度推定器の出力値が収束したと判定し且つ単体識別器の出力値が収束したと判定した場合に密度推定手段51による更新を停止させる。
以下、単体識別手段50が参照する単体識別器記憶手段40、および単体識別手段50が具備する識別用特徴抽出手段500、推定スコア混合手段501および識別スコア算出手段502について説明する。
単体識別器記憶手段40は、画像の特徴量を入力されると当該画像が単独の人が撮影されている画像(単体画像)であることの尤もらしさを表すスコア(識別スコア)を算出して出力する識別器(単体識別器)の情報、つまりスコア算出関数の係数等のパラメータを予め記憶している。
単体識別器記憶手段40が記憶している単体識別器は2つであり、その内訳は、反復処理の1回目で用いるための初回用単体識別器と、反復処理の2回目以降で用いるための反復用単体識別器である。
初回用単体識別器は単体画像の特徴量を学習した識別器である。反復用単体識別器は、単体画像の特徴量に、後述する密度推定器の出力値である推定密度および推定スコアのうちの少なくともひとつを混合した特徴量を学習した識別器である。反復用単体識別器の学習に用いる推定密度や推定スコアは、単体識別器の学習に用いた単体画像を密度推定器に入力して得られた出力値である。
例えば、初回用単体識別器は、多数の単独画像とそれぞれが人以外しか写っていない多数の無人画像からなる学習用画像の特徴量に線形SVM(Support Vector Machine:サポートベクターマシーン)法を適用して求めた重みベクトルとして記憶されている。また、反復用単体識別器は、上記学習用画像の特徴量に、上記学習用画像を密度推定器に入力して得られた出力値を混合した特徴量に線形SVM法を適用して求めた重みベクトルとして記憶される。これらの重みベクトルは特徴量の各要素に対する重みであり、入力された特徴量と重みベクトルとの内積が識別スコアとなる。いずれも学習用画像の特徴量はHOG(Histograms of Oriented Gradients)特徴量である。
このように、単体識別器記憶手段40は、予め、単独の所定物体が撮影された単体画像の特徴量を学習した初回用単体識別器と、単体画像の特徴量を密度推定器に入力して得られた出力値を単体画像の特徴量に混合した特徴量を学習した反復用単体識別器を記憶している。
識別用特徴抽出手段500は、撮影画像から単体識別器用の特徴量(識別用特徴量)を抽出して推定スコア混合手段501に出力する。識別用特徴量は単体識別器が学習した特徴量と同種でありHOG特徴量である。
識別用特徴抽出手段500は、識別用特徴量の抽出を窓(識別用抽出窓)ごとに行い、撮影画像の各画素の位置に識別用抽出窓を設定して識別用特徴量の抽出を行う。また、識別用抽出窓の大きさは単体識別器の学習に用いた学習用画像と同じサイズに設定される。
すなわち、識別用特徴抽出手段500は、撮影画像の各画素の位置に識別用抽出窓を設定し、各識別用抽出窓における撮影画像の識別用特徴量を算出することによって、画素ごとに識別用特徴量を抽出する。
推定スコア混合手段501は、識別用特徴抽出手段500から識別用特徴量を入力されるとともに、密度推定手段51から推定スコアを入力され、識別用特徴量に推定スコアを混合して新たな特徴量(識別用混合特徴量)を生成し、生成した識別用混合特徴量を識別スコア算出手段502に出力する。
混合は各画素について推定用抽出窓を考慮して行われる。すなわち、推定スコア混合手段501は、各画素について、当該画素について抽出された識別用特徴量に、当該画素に対応する推定用抽出窓内の各画素について算出された推定スコアを混合して新たな識別用混合特徴量を生成する。
後述するように推定スコアは撮影画像の画素ごとに算出され、画像データとして扱うことができる。以降、撮影画像の画素ごとに当該画素について算出された推定スコアが並んだデータを推定スコアマップと称する。密度推定手段51からの推定スコアは推定スコアマップの形式で入力される。なお、後述するように各推定スコアは4つのスコアからなる。
また、各識別用抽出窓から抽出された識別用特徴量への推定スコアの混合は、ベクトルである当該識別用特徴量と当該識別用抽出窓内の推定スコアを並べたベクトルを連結することで行われる。
すなわち、推定スコア混合手段501は、各画素について、推定スコアマップから当該画素に対応する識別用抽出窓内の推定スコアを切り出して、切り出した推定スコアと当該画素について抽出された識別用特徴量とを連結して識別用混合特徴量を生成する。
なお、反復処理の初回は推定スコアマップに値が設定されていない状態となるため、推定スコア混合手段501は混合を省略し、識別用混合特徴量として識別用特徴量をそのまま出力する。
識別スコア算出手段502は、単体識別器記憶手段40から単体識別器を読み出し、画素ごとに、当該画素に対応して推定スコア混合手段501から入力された識別用混合特徴量を単体識別器に入力することによってその出力値である識別スコアを取得し、取得した識別スコアを終了判定手段52および識別スコア混合手段511に出力する。
上述したように、単体識別器には初回用単体識別器と反復用単体識別器がある。反復の初回に推定スコア混合手段501から入力される識別用混合特徴量は混合を省略したものであるため、識別スコア算出手段502は、反復の初回は混合を省略した形式の特徴量を学習した初回用単体識別器に識別用混合特徴量を入力して識別スコアを取得する。一方、識別スコア算出手段502は、反復の2回目以降は反復用単体識別器に識別用混合特徴量を入力して識別スコアを取得する。
識別スコアも推定スコアと同様、画像データとして扱うことができる。以降、撮影画像の画素ごとに当該画素について算出された識別スコアが並んだデータを識別スコアマップと称する。識別スコア算出手段502は識別スコアを識別スコアマップの形式で出力する。
以下、密度推定手段51が参照する密度推定器記憶手段41、および密度推定手段51が具備する推定用特徴抽出手段510、識別スコア混合手段511および推定スコア算出手段512について説明する。
密度推定器記憶手段41は、画像の特徴量を入力されると当該画像に撮影されている人の密度の推定値(推定密度)、さらには推定密度の尤もらしさを表す推定スコアを算出して出力する推定器(密度推定器)の情報、つまり推定スコア算出関数の係数等のパラメータを予め記憶している。
密度推定器は多クラスの画像を識別する識別器で実現することができ、多クラスSVM法で学習した識別器とすることができる。
密度は、例えば、人が存在しない「背景」クラス、0人/m2より高く2人/m2以下である「低密度」クラス、2人/m2より高く4人/m2以下である「中密度」クラス、は4人/m2より高い「高密度」クラスの4クラスと定義することができる。
推定密度は各クラスに予め付与された値であり、分布推定の結果として出力される値である。本実施形態では各クラスに対応する値を「背景」「低密度」「中密度」「高密度」と表記する。
従前のものに倣えば密度推定器は「背景」クラス、「低密度」クラス、「中密度」クラス、「高密度」クラスのそれぞれに帰属する多数の画像(密度画像)の特徴量を学習したものとなるのだが、密度推定器記憶手段41が記憶している密度推定器は、密度画像の特徴量に、密度画像の特徴量を単体識別器に入力して得られる識別スコアを混合した特徴量を学習したものである。この学習により導出された推定スコア算出関数等のパラメータが密度推定器として記憶されている。密度画像の特徴量はHOG特徴量である。
このように密度推定器記憶手段41は、予め、所定の密度ごとに当該密度にて所定物体が存在する空間を撮影した密度画像の特徴量を単体識別器に入力して得られた出力値を当該密度画像の特徴量に混合した特徴量を学習した密度推定器を記憶している。
また、推定スコアは、密度推定器が入力された特徴量に対する推定の過程で算出する、当該特徴量が抽出された画像の「背景」クラスと他のクラスのうちの「背景」クラスであることの尤もらしさを表すスコア、「低密度」クラスと他のクラスのうちの「低密度」クラスであることの尤もらしさを表すスコア、「中密度」クラスと他のクラスのうちの「中密度」クラスであることの尤もらしさを表すスコア、「高密度」クラスと他のクラスのうちの「高密度」クラスであることの尤もらしさを表すスコアのそれぞれを、1/(1+exp(−スコア))に変換し、変換後の全スコアの合計値で割ることで、スコアの合計が1になるようにした4種類のスコアである。本実施形態では、反復用単体識別器の学習および識別の際にこれら4種類のスコアからなる推定スコアを混合する。
推定用特徴抽出手段510は、撮影画像から密度推定器用の特徴量(推定用特徴量)を抽出して識別スコア混合手段511に出力する。推定用特徴量は密度推定器が学習した特徴量と同種でありHOG特徴量である。
推定用特徴抽出手段510は、推定用特徴量の抽出を窓(推定用抽出窓)ごとに行い、撮影画像の各画素の位置に推定用抽出窓を設定して推定用特徴量の抽出を行う。また、推定用抽出窓の大きさは密度推定器の学習に用いた学習用画像と同じサイズに設定される。
すなわち、推定用特徴抽出手段510は、撮影画像の各画素の位置に推定用抽出窓を設定し、各推定用抽出窓における撮影画像の推定用特徴量を算出することによって、画素ごとに推定用特徴量を抽出する。
識別スコア混合手段511は、推定用特徴抽出手段510から推定用特徴量を入力されるとともに、識別スコア算出手段502から識別スコアを入力され、推定用特徴量に識別スコアを混合して新たな特徴量(推定用混合特徴量)を生成し、生成した推定用混合特徴量を推定スコア算出手段512に出力する。
混合は各画素について識別用抽出窓を考慮して行われる。すなわち、推定スコア混合手段501は、各画素について、当該画素について抽出された推定用特徴量に、当該画素に対応する識別用抽出窓内の各画素について算出された識別スコアを混合して新たな推定用混合特徴量を生成する。
識別スコアは識別スコアマップの形式で入力され、各推定用抽出窓から抽出された推定用特徴量への識別スコアの混合は、ベクトルである当該推定用特徴量と当該推定用抽出窓内の識別スコアを並べたベクトルを連結することで行われる。
すなわち、識別スコア混合手段511は、各画素について、識別スコアマップから当該画素に対応する推定用抽出窓内の識別スコアを切り出して、切り出した識別スコアと当該画素について抽出された推定用特徴量とを連結して推定用混合特徴量を生成する。
推定スコア算出手段512は、密度推定器記憶手段41から密度推定器を読み出し、画素ごとに、当該画素に対応して識別スコア混合手段511から入力された推定用混合特徴量のそれぞれを密度推定器に入力することによってその出力値である推定密度および推定スコアを取得し、取得した推定密度および推定スコアを終了判定手段52に出力し、推定スコアを推定スコア混合手段501に出力する。
具体的には、推定スコアは上述したように各クラスに対応して得られる4つのスコアであり、推定密度は4つのスコアのうちの最も高いスコアと対応するクラスに付与された値(「背景」、「低密度」、「中密度」、「高密度」のいずれか)である。
なお、上述したように、推定スコア算出手段512は識別スコアを識別スコアマップの形式で出力する。
分布出力手段31は終了判定手段52から入力された分布画像を表示部6に順次出力し、表示部6は分布出力手段31から入力された分布画像を表示する。例えば、分布画像は、インターネット経由で送受信され、表示部6に表示される。分布画像においては「背景」、「低密度」、「中密度」、「高密度」が色分けされている。監視員は、表示された分布画像を視認することによって監視空間に混雑が発生している地点を把握し、当該地点に警備員を派遣し或いは増員するなどの対処を行う。
図3および図4のフローチャートを参照して画像監視装置1の動作を説明する。
画像監視装置1が動作を開始すると、イベント会場に設置されている撮影部2は所定時間おきに監視空間を撮影して撮影画像を順次画像処理部5が設置されている画像解析センター宛に送信する。画像処理部5は撮影画像を受信するたびに図3のフローチャートに従った動作を繰り返す。
まず、通信部3は画像取得手段30として動作し、撮影部2からの撮影画像の受信待ち状態となる。撮影画像を取得した画像取得手段30は当該撮影画像を画像処理部5に出力する(ステップS10)。
撮影画像を入力された画像処理部5は単体識別手段50の識別用特徴抽出手段500として動作し、撮影画像の画素ごとに識別用特徴量を算出する(ステップS20)。画像処理部5は単体識別手段50の推定スコア混合手段501として動作し、算出された識別用特徴量を保持する。
続いて、画像処理部5は密度推定手段51の推定用特徴抽出手段501として動作し、撮影画像の画素ごとに推定用特徴量を算出する(ステップS30)。画像処理部5は密度推定手段51の識別スコア混合手段511として動作し、算出された推定用特徴量を保持する。
続いて、画像処理部5は終了判定手段52として動作し、反復回数をカウントする変数Cを用意して0に初期化し(ステップS40)、以降、ステップS50からステップS100の処理を収束条件を満たす、またはCが予め定めた回数以上になるまで繰り返す制御を開始する。
反復処理においては、まず、画像処理部5は単体識別手段50の推定スコア混合手段501として動作し、推定スコア混合処理を行う(ステップS50)。
図4のフローチャートを参照し、推定スコア混合処理について説明する。
推定スコア混合手段501は、推定スコアマップの有無を確認するために反復回数Cが0回か否かを判定する(ステップS500)。
反復回数Cが0回の場合(ステップS500にてYES)、推定スコア混合手段501は保持している画素ごとの識別用特徴量をそのまま複製して混合識別用特徴量を作成し(ステップS510)、図3のステップS60へと処理をすすめる。
他方、反復回数が0ではない場合(ステップS500にてNO)、推定スコア混合手段501は推定スコアマップから特徴量を算出する(ステップS520)。本実施形態においては、推定スコア混合手段501は、推定スコアマップから各画素に対応する識別用抽出窓内の推定スコアを切り出す処理となる。
続いて、推定スコア混合手段501は、保持している各画素についての識別用特徴量それぞれに対し、同画素についてステップS520にて算出された特徴量を連結することによって識別用混合特徴量を作成し(ステップS530)、図3のステップS60へと処理をすすめる。
再び図3を参照し、画像処理部5は単体識別手段50の識別スコア算出手段502として動作して記憶部4の単体識別器記憶手段40から単体識別器を読み出し、単体識別処理を行う(ステップS60)。識別スコア算出手段502は、単体識別器に各画素の識別用混合特徴量を入力して識別スコアを得ることにより、識別スコアマップを作成する。このとき、反復回数Cが0であれば初回用単体識別器を用い、反復回数Cが0でなければ反復用単体識別器を用いる。
続いて、画像処理部5は識別スコア混合手段511として動作し、推定用混合特徴量を作成する(ステップS70)。識別スコア混合手段511は、識別スコアマップから各画素に対応する推定用抽出窓内の識別スコアを切り出し、当該画素に対応して保持している推定用特徴量に混合する。
続いて、画像処理部5は密度推定手段51の推定スコア算出手段512として動作して記憶部4の密度推定器記憶手段41から密度推定器を読み出し、密度推定処理を行う(ステップS80)。推定スコア算出手段512は、密度推定器に各画素の推定用混合特徴量を入力して推定スコアを得ることにより、推定スコアマップを作成する。これにより各画素における「背景」、「低密度」、「中密度」、「高密度」クラスそれぞれの推定スコアと、推定密度が算出される。
続いて、画像処理部5は終了判定手段52として動作し、反復回数をインクリメントし(ステップS90)、反復処理を停止するか否かの判定を行う(ステップS100)。
すなわち、終了判定手段52は、今回と1回前の推定密度の差の絶対値D1を算出して予め定めた閾値E1と比較し、今回と1回前の識別スコアの差の絶対値D2を算出して予め定めた閾値E2と比較し、さらに反復回数Cを予め定めた上限回数Aと比較する。終了判定手段52は、D1<E1且つD2<E2であれば収束したとして反復処理停止と判定する。または、終了判定手段52は、C≧Aであれば反復回数が上限に達したとして反復処理停止と判定する。ただし、Cが0の場合は収束判定は省略する。
反復処理停止でないと判定した場合(ステップS100にてNO)、終了判定手段52は、処理をステップS50に戻して反復処理を継続させる。
反復処理停止と判定した場合(ステップS100にてYES)、終了判定手段52は、その時点の画素ごとの推定密度のそれぞれを各クラスに予め割り当てられた画素値に変換して対応する画素にセットした分布画像を生成し、通信部3に出力する。分布画像を入力された通信部3は分布出力手段31として動作し、分布画像を表示部6に送信する。
図5〜図8を参照して、本発明の処理例を説明する。
図5は、撮影画像600の一例を模式的に示した図である。領域601は人が少なく、領域602は人がやや多い。領域603は混み合っており、領域604には木が生い茂っている。
図6は、図5の撮影画像600を従前の密度推定器で走査して密度推定を行った結果、得られた分布画像700の一例を模式的に示した図である。白抜きの矩形は推定密度が低密度である領域、斜線の矩形は推定密度が中密度である領域、縦縞の矩形は推定密度が高密度である領域、矩形の無い領域は背景と推定されたことを示している。
人が少ない領域701の推定密度は低密度、人がやや多い領域702の推定密度は中密度が支配的、混み合ってる領域703の推定密度は高密度と中密度が支配的であり、良好な推定結果となっている。
しかしながら、木が生い茂っている領域705は、本来、背景と推定されるべきところ、推定密度が低密度、中密度および高密度である領域が現れてしまっている。
このように、混雑時の人の集まりの像の雑然とした特徴を重視して学習した従前の密度推定器には、生い茂った木のような雑然とした像に対して高い密度と推定し易い特性がある。
図7は、図5の撮影画像600を単体識別器で走査して識別スコアを算出した結果、得られた識別スコアマップ800の一例を模式的に示した図である。
白抜きの矩形は識別スコアが低め、つまり人らしさが低いとされた領域、斜線の矩形は識別スコアが中程度、つまり人らしさが中程度とされた領域、縦縞の矩形は識別スコアが高め、つまり人らしさが特に高いとされた領域、矩形の無い領域は背景を示す識別スコアが算出されたことを示している。
人が少ない領域801は高めの識別スコアが支配的、人がやや多い領域802および混み合ってる領域803は中程度の識別スコアが支配的である。
一方、木が生い茂っている領域804は、一部に背景を示さない識別スコアが算出されているものの、低めの識別スコアが支配的である。
単独の人の特徴を重視して学習した単体識別器には、人の集まりの像に対して単独の人の像に対してよりも低めの識別スコアを出力する傾向があるものの、人の集まりの像よりも人の特徴が希薄な生い茂った木の像に対してはさらに低い識別スコアを出力する傾向があり、識別スコアは人の集まりの像と生い茂った木の像とを弁別するための情報を有していると言える。
本発明の密度推定器はこの傾向を示す単体識別器の出力値を含めて学習している。そのため、生い茂った木のような雑然とした像に対して高い密度と推定し易い特性を抑制でき、精度の高い密度推定が可能となる。
図8は、図5の撮影画像600に本発明を適用した結果、得られた分布画像900の一例を模式的に示した図である。白抜き、斜線および縦縞の矩形、矩形の無い領域が示す意味は図6でのそれと同じである。
上述した抑制効果によって、木が生い茂っている領域の推定密度は背景を表す値となり、その一方で、人が撮影されている領域901,902,903の推定密度は低下しておらず副作用無いことが分かる。よって、本発明によれば、撮影された空間に分布の推定対象である対象物体以外の雑然とした外乱物体が存在していても、対象物体の分布を精度良く推定することが可能となる。
<変形例>
(1)上記実施形態においては、密度推定手段51による推定と単体識別手段50と識別とが繰り返し処理を行う例を示したが、密度推定手段51が単体識別手段50の出力値を1回だけ用いる形態であっても一定の精度向上効果を奏する。
その場合の単体識別器は、推定スコアを混合した特徴量を学習しておく必要がなく、推定スコアを混合した特徴量による識別を行う必要もない。また終了判定手段52も必要がない。すなわち、単体識別器記憶手段40は単独の所定物体が撮影された単体画像の特徴量を学習した単体識別器を記憶し、密度推定器記憶手段41は所定の密度ごとに当該密度にて所定物体が存在する空間を撮影した密度画像の特徴量を単体識別器に入力して得られた出力値を当該密度画像の特徴量に混合した特徴量を学習した密度推定器を記憶している。また、単体識別手段50は撮影画像の特徴量を単体識別器に入力して出力値を取得し、密度推定手段51は撮影画像から密度推定用の特徴量を抽出して当該特徴量に単体識別手段50が取得した出力値を混合し、当該混合した特徴量を密度推定器に入力して取得される出力値を用いて所定物体の密度を推定して、推定結果を分布出力手段31に出力する。
(2)上記実施形態およびその変形例においては、線形SVM法により学習された単体識別器を例示したが、線形SVM法に代えてアダブースト(AdaBoost)法など、従来知られた各種の学習法を用いて学習した単体識別器とすることもできる。また、識別器の代わりにパターンマッチング器を用いることもでき、その場合の識別スコアは人の学習用画像から抽出した特徴量の平均パターンと入力画像の特徴量との内積などとなり、識別スコア算出関数は当該スコアを出力値とし入力画像の特徴量を入力値とする関数とすることができる。
(3)上記実施形態およびその各変形例においては、反復の2回目以降に反復用単体識別器が用いられる例を示した。この反復用単体識別器を1つではなく2回目用、3回目用、…というように各回について学習しておくことも可能である。
また、例示した密度推定器もまた反復用である。密度推定器もまた2回目用、3回目用、…というように各回について学習しておくことも可能である。
すなわち学習時点で学習用画像に対する反復処理を行って各回の出力値を作成し、各回の出力値を用いて当該回用の反復用単体識別器および密度推定器を学習させ、記憶させておく。そして、撮影画像に対する反復処理の回数に合わせて、識別スコア算出手段502は当該反復回数に対応する反復用単体識別器を用い、推定スコア算出手段512も当該反復回数に対応する密度推定器を用いる。そうすることでさらなる精度改善が期待できる。
(4)上記実施形態およびその各変形例においては、単体識別手段50および密度推定手段51は画素ごとに走査して処理を行う例を示した。これらの走査は画素間隔を空けて行うことも可能である。
(5)上記実施形態およびその各変形例においては、単体識別器が学習する特徴量、識別用特徴抽出手段500が抽出する識別用特徴量、密度推定器が学習する特徴量および推定用特徴抽出手段510が抽出する推定用特徴量としてHOG特徴量を例示したが、これらはHOG特徴量に代えて、局所二値パターン(Local Binary Pattern:LBP)特徴量、ハールライク(Haar-like)特徴量、輝度パターンなどの種々の特徴量とすることができ、またはHOG特徴量とこれらのうちの複数を組み合わせた特徴量とすることもできる。
また、単体識別器用の特徴量と密度推定器用の特徴量とを異なる種類の特徴量としてもよい。
(6)上記実施形態およびその各変形例においては、推定スコア混合手段501が識別用特徴量に推定スコアそのものを連結する例を示したが混合方法はこれに限らない。推定スコア混合手段501は、識別用抽出窓内の推定スコアの平均値を連結することで混合してもよいし、スコアマップを画像に見立てて識別用抽出窓内の各位置から求めたHOG特徴量、局所二値パターン特徴量、ハールライク特徴量、GLCM(Gray Level Co-occurrence Matrix)特徴などの既存の特徴量を連結することで混合してもよいし、これらの複数を組み合わせたものを連結することで混合してもよい。
識別スコア混合手段511が行う混合方法についても同様であり、識別スコア混合手段511は、推定用抽出窓内の識別スコアの平均値を連結することで混合してもよいし、スコアマップを画像に見立てて推定用抽出窓内の各位置から求めたHOG特徴量、局所二値パターン特徴量、ハールライク特徴量、GCLM特徴などの既存の特徴量を連結することで混合してもよいし、これらの複数を組み合わせたものを連結することで混合してもよい。
(7)上記実施形態およびその各変形例においては、多クラスSVM法にて学習した密度推定器を例示したが、多クラスSVM法に代えて、決定木型のランダムフォレスト法、多クラスのアダブースト(AdaBoost)法または多クラスロジスティック回帰法などにて学習した密度推定器など種々の密度推定器とすることができる。
また、上記実施形態およびその各変形例においては、密度推定器が推定する密度のクラスを4クラスとしたが、より細かくクラスを分けてもよい。
或いは多クラスに分類する密度推定器に代えて、特徴量から密度の値を回帰する回帰型の密度推定器とすることもできる。すなわち、リッジ回帰法、サポートベクターリグレッション法または回帰木型のランダムフォレスト法などによって、特徴量から密度を求めるための回帰関数のパラメータを学習した密度推定器とすることができる。