[第一の実施形態]
以下、本発明の実施形態として、イベント会場が撮影された撮影画像から個々の人を検出する物体検出装置の例を含み、検出結果を監視員に対して表示する画像監視装置1の例を説明する。この実施形態に係る画像監視装置1は、特に、物体検出装置が人を模した物体モデルを用いて個々の人を検出し、その際に物体検出装置が人の密度によって物体モデルを切り替える例を含む。
<第一の実施形態に係る画像監視装置1の構成>
図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或いは多対多とすることもできる。
<第一の実施形態に係る画像監視装置1の機能>
図2および図3は画像監視装置1の機能を示す機能ブロック図である。通信部3は画像取得手段30および物体位置出力手段31等として機能し、記憶部4は密度推定器記憶手段40および単体特徴記憶手段41等として機能する。画像処理部5は、密度推定手段50および物体位置判定手段51等として機能する。また、単体特徴記憶手段41は物体モデル記憶手段410aとしての機能を含み、物体位置判定手段51は配置生成手段510a、モデル画像生成手段512a、評価値算出手段514aおよび最適配置決定手段516aとしての機能を含む。
画像取得手段30は、撮影手段である撮影部2から撮影画像を順次取得して、取得した撮影画像を密度推定手段50および物体位置判定手段51に順次出力する。
密度推定器記憶手段40は、所定の密度ごとに当該密度にて物体(人)が存在する空間を撮影した密度画像それぞれの画像特徴を学習した推定密度算出関数であって、画像の特徴量を入力されると当該画像に撮影されている物体の密度の推定値(推定密度)を算出し、算出した推定密度を出力する推定器(密度推定器)の情報を予め記憶している。つまり上記推定密度算出関数の係数等のパラメータを密度推定器の情報として予め記憶している。
密度推定手段50は、画像取得手段30から入力された撮影画像の各所から密度推定用の特徴量(推定用特徴量)を抽出するとともに密度推定器記憶手段40から密度推定器を読み出して、抽出した推定用特徴量のそれぞれを密度推定器に入力することによって推定密度の分布(密度分布)を推定し、推定した密度分布を物体位置判定手段51に出力する。
密度推定の処理と密度推定器について具体的に説明する。
密度推定手段50は、撮影画像の各画素の位置に窓(推定用抽出窓)を設定し、各推定用抽出窓における撮影画像から推定用特徴量を抽出する。推定用特徴量はGLCM(Gray Level Co-occurrence Matrix)特徴である。
各推定用抽出窓に撮影されている監視空間内の領域は同一サイズであることが望ましい。すなわち、好適には密度推定手段50は不図示のカメラパラメータ記憶手段から予め記憶されている撮影部2のカメラパラメータを読み出し、カメラパラメータを用いたホモグラフィ変換により撮影画像の任意の画素に撮影されている監視空間内の領域が同一サイズとなるように撮影画像を変形してから推定用特徴量を抽出する。
密度推定器は多クラスの画像を識別する識別器で実現することができ、多クラスSVM(Support Vector Machine)法で学習した識別関数とすることができる。
密度は、例えば、人が存在しない「背景」クラス、0人/m2より高く2人/m2以下である「低密度」クラス、2人/m2より高く4人/m2以下である「中密度」クラス、4人/m2より高い「高密度」クラスの4クラスと定義することができる。
推定密度は各クラスに予め付与された値であり、分布推定の結果として出力される値である。本実施形態では各クラスに対応する値を「背景」「低密度」「中密度」「高密度」と表記する。
すなわち、密度推定器は「背景」クラス、「低密度」クラス、「中密度」クラス、「高密度」クラスのそれぞれに帰属する多数の画像(密度画像)の特徴量に多クラスSVM法を適用して学習した、各クラスの画像を他のクラスと識別するための識別関数である。この学習により導出された識別関数のパラメータが密度推定器として記憶されている。なお、密度画像の特徴量は、推定用特徴量と同種であり、GLCM特徴である。
密度推定手段50は、各画素に対応して抽出した推定用特徴量のそれぞれを密度推定器に入力することによってその出力値である推定密度を取得する。なお、撮影画像を変形させて推定用特徴量を抽出した場合、密度推定手段50は、カメラパラメータを用いたホモグラフィ変換により密度分布を元の撮影画像の形状に変形させる。
こうして得られた、撮影画像の画素ごとの推定密度の集まりが密度分布である。
密度推定手段50が出力する密度分布から撮影画像の各所における人の粗密状況が分かるが、密度分布から個々の人の位置までは分からない。
これに対し、密度推定手段50の後段の物体位置判定手段51は、撮影画像に現れている個々の人の位置を判定する手段である。
物体位置判定手段51は、単独の物体(人)としての画像特徴が現れている箇所を撮影画像上で探索することにより個々の物体を検出して個々の物体の位置を判定する。すなわち、物体位置判定手段51は、撮影画像内に個々の物体が存在し得る候補位置を設定して当該候補位置の撮影画像に単独の物体の画像特徴(単体特徴)が現れている度合いを表す評価値を算出し、評価値が所定値以上である候補位置を物体の位置と判定する。例えば、単体特徴は人の形状であり、単体特徴記憶手段41が予め単体特徴を記憶している。また例えば、評価値は撮影画像のエッジと人の形状を表すモデルとの類似度である。
ここで、混雑が生じ得る空間が撮影された撮影画像においては、混雑によって人と人の間で生じる隠蔽が単体特徴の一部を隠し、それによって評価値が下がれば個々の人を検出し損ねる。撮影部2が俯瞰設置されている場合は、足元に近いほど隠蔽は発生しやすく、頭に近いほど隠蔽は発生しにくい。このことを考慮し、混雑に適応させるべく単体特徴を人の頭部だけにすると混雑時の検出し損ねは減少する。しかし、頭部だけの単体特徴は肩などに対しても比較的高い評価値が算出されてしまうため、混雑していないときの誤検出が増加する。
物体位置判定手段51は、密度分布を参照することによって、このような評価する部分の多寡と個々の物体の検出精度との間に存在するトレードオフを解消する。すなわち、物体位置判定手段51は、候補位置における密度に応じ、単独の物体を構成する部分のうちの重視する部分を変更して評価値を算出する。特に、物体位置判定手段51は、候補位置における密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視して評価値を算出する。例えば、物体位置判定手段51は、候補位置の推定密度が低密度であれば全身を均等に評価して評価値を算出し、中密度であれば上半身を重視して評価値を算出し、高密度であれば頭部近傍を重視して評価値を算出する。
以下、個々の物体の検出と単体特徴について説明する。
単体特徴記憶手段41は、単独の人(物体)の形状を模した物体モデルの情報を予め記憶した物体モデル記憶手段410aとして機能し、物体モデルの情報を単体特徴として記憶している。
図4は、単体特徴記憶手段41が記憶している単体特徴、すなわち物体モデル記憶手段410aが記憶している物体モデルの情報を模式的に表した図である。
物体モデル記憶手段410aが記憶している物体モデルは、具体的には立位の人の頭部、胴部、脚部に対応する3つの回転楕円体から構成される立体モデル700である。なお頭部重心を人の代表位置とする。さらに物体モデル記憶手段410aは、立体モデル700と併せて、密度ごとの評価範囲702を記憶し、また立体モデル700を撮影画像の座標系に投影するために撮影部2のカメラパラメータ701を記憶している。カメラパラメータ701は、実際の監視空間における撮影部2の設置位置及び撮像方向といった外部パラメータ、撮影部2の焦点距離、画角、レンズ歪みその他のレンズ特性や、撮像素子の画素数といった内部パラメータを含む情報である。
評価範囲702は密度が高いほど単独の物体を構成する部分のうちの少ない部分となっている。具体的には物体モデル記憶手段410aは、低密度クラスを表す値と対応付けて「全体」、中密度クラスを表す値と対応付けて「上部2/3」、高密度クラスを表す値と対応付けて「上部1/3」という設定を記憶している。以下、全体という評価範囲と立体モデル700との組み合わせによって表される低密度用の物体モデル710を全身モデル、上部2/3という評価範囲と立体モデル700との組み合わせによって表される中密度用の物体モデル711を上半身モデル、上部1/3という評価範囲と立体モデル700との組み合わせによって表される高密度用の物体モデル712を頭部近傍モデルと称する。
このように、物体モデル記憶手段410aは、低密度クラスと対応付けて全身モデル710を、中密度クラスと対応付けて上半身モデル711を、高密度クラスと対応付けて頭部近傍モデル712を、カメラパラメータ701ととともに物体モデルの情報として記憶している。
配置生成手段510aは、それぞれが1以上の候補位置を含む互いに異なる複数通りの配置を生成し、生成した各配置をモデル画像生成手段512aに出力する。
そのために、配置生成手段510aは、乱数に基づき撮影画像の画素のうちの推定密度が低密度、中密度または高密度である画素の中から1個以上上限個数以下の個数(配置数)の画素をランダムに決定し、決定した各画素の位置を候補位置とすることで配置を生成する。配置生成手段510aは、この生成を、配置数を順次増加させながら配置数ごとに予め定めた回数ずつ反復することによって、互いに異なる複数通りの配置を生成する。なお、配置数の上限個数は監視空間に存在し得る物体の数の上限とすることができ、例えば監視空間を模した仮想空間中に立位の人の立体モデルを重ならずに配置可能な数として算出できる。
モデル画像生成手段512aは、配置生成手段510aから入力された複数通りの配置それぞれについて、各候補位置に、当該候補位置における密度が高いほど、単独の物体を構成する部分のうちの少ない部分を模した物体モデルを描画してモデル画像を生成し、生成した各モデル画像を評価値算出手段514aに出力する。
そのために、モデル画像生成手段512aは、物体モデル記憶手段410aからカメラパラメータを読み出し、配置ごとに、カメラパラメータを用いて、各候補位置を立体モデルの頭部重心の高さ(例えば1.5m)の水平面に逆投影することで、当該候補位置に投影される立体モデルの、監視空間を模した仮想空間内における代表位置を算出する。
また、モデル画像生成手段512aは、物体モデル記憶手段410aから頭部近傍モデルを読み出して各候補位置と対応する仮想空間内の代表位置に頭部近傍モデルを配置し、カメラパラメータを用いて頭部近傍モデルを撮影画像の座標系に投影する。そして、モデル画像生成手段512aは、密度推定手段50から入力された密度分布を参照して各候補位置に対応する頭部近傍モデルの投影領域内の推定密度を集計し、各候補位置における最多の推定密度(ただし背景クラスは除く)を当該候補位置の密度と決定する。
また、モデル画像生成手段512aは、候補位置ごとに当該候補位置の密度に応じた物体モデルを物体モデル記憶手段410aから読み出す。具体的には、モデル画像生成手段512aは、候補位置の密度が低密度であれば全身モデルを読み出し、中密度であれば上半身モデルを読み出し、高密度であれば頭部近傍モデルを読み出す。そして、モデル画像生成手段512aは、各配置について、各候補位置に対応して読み出した物体モデルを当該候補位置と対応する仮想空間内の代表位置に配置し、カメラパラメータを用いて各全身モデルの形状を撮影画像の座標系に投影することによって、配置ごとのモデル画像を生成する。
なお、モデル画像生成手段512aは、撮影部2からの距離が遠い代表位置に配置した物体モデルから順に投影し、投影領域を上書きすることによって、物体モデル間の隠蔽を表現したモデル画像を生成する。
また、モデル画像生成手段512aは、配置ごとに、モデル画像における物体モデルどうしの重なり度合いを表す隠蔽度を次式に従って算出する。
隠蔽度=モデル間の重複領域の面積/モデルの投影領域の和領域の面積 (1)
そして、モデル画像生成手段512aは、配置とモデル画像と隠蔽度を対応付けて評価値算出手段514aに出力する。
図5は、第一の実施形態に係る密度推定手段50、配置生成手段510aおよびモデル画像生成手段512aによる処理例を模式的に示した図である。
画像720は、密度推定手段50が推定した密度分布を画像化したものである。当該密度分布においては、白抜き部は推定密度が背景である領域、横線部は推定密度が低密度である領域、斜線部は推定密度が中密度である領域、格子部は推定密度が高密度である領域をそれぞれ示している。
画像721は、配置生成手段510aが生成した配置に含まれる8個の候補位置を撮影画像の座標系に×印でプロットしたものである。
3次元モデル722は、モデル画像生成手段512aが画像721に示した8個の候補位置と対応する仮想空間内の代表位置に立体モデルを配置した様子を図示したものである。
画像723は、モデル画像生成手段512aが、画像720で示した密度分布に基づいて各候補位置の密度を特定し、当該密度に応じた評価範囲の立体モデルを各候補位置に投影して作成したモデル画像を示している。
評価値算出手段514aは、複数通りの配置それぞれについて、モデル画像生成手段512aから入力されたモデル画像の撮影画像に対する類似の度合いを表す評価値を算出し、配置ごとの評価値を最適配置決定手段516aに出力する。
具体的には、評価値算出手段514aは、各モデル画像と撮影画像の類似度を次式に従って算出する。
類似度 = 形状適合度 − WHa×隠蔽度 (2)
ただし、WHaは0より大きな重み係数であり、事前の実験に基づいて予め設定される。形状適合度から減じる隠蔽度は過剰な物体モデルの重なりを抑制するためのペナルティ値である。このように隠蔽度を含めた類似度に基づいて最適配置を決定することで、本来の物体数以上の物体モデルが当てはまることによる物体位置の誤検出を防止できる。
形状適合度は、モデル画像と撮影画像とのエッジの類似度とすることができる。評価値算出手段514aは、各モデル画像と撮影画像のそれぞれからエッジを抽出し、各モデル画像について、モデル画像から有効なエッジが抽出された画素ごとに、対応する撮影画像の画素のエッジとの差の絶対値を算出して総和し、総和値をモデル画像からエッジが抽出された画素数で除して符号を反転した値を、当該モデル画像の形状適合度として算出する。
或いは、評価値算出手段514aは、各モデル画像と撮影画像のそれぞれからエッジ画像を生成し、各モデル画像について、撮影画像から生成したエッジ画像と当該モデル画像から生成したエッジ画像とのチャンファーマッチング(Chamfer Matching)を行って得られるチャンファー距離の符号を反転した値を、当該モデル画像の形状適合度として算出する。
最適配置決定手段516aは、評価値算出手段514aから入力された配置ごとの評価値を参照し、評価値が最大の配置における候補位置を物体の位置と決定し、決定した物体位置の情報を物体位置出力手段31に出力する。すなわち、最適配置決定手段516aは、最大の類似度が算出された配置に含まれる各候補位置を撮影画像に撮影されている各人の位置と決定する。
例えば、最適配置決定手段516aは、監視員が視認し易いよう、各物体位置に物体モデルを当該物体位置の密度に応じて色分けして描画して物体位置の情報を生成し、出力する。または、物体位置の情報は物体位置の座標値そのものとすることもでき、物体位置の情報は、描画した各物体モデルの、他の物体モデルと重複していない領域とすることもできる。或いは、物体位置の情報は、上述したデータのうちの2以上を含んだデータとしてもよい。
物体位置出力手段31は物体位置判定手段51から入力された物体位置の情報を表示部6に順次出力し、表示部6は物体位置出力手段31から入力された物体位置の情報を表示する。例えば、物体位置の情報は、インターネット経由で送受信され、表示部6に表示される。監視員は、表示された情報を視認することによって監視空間に混雑が発生している地点を把握し、当該地点に警備員を派遣し或いは増員するなどの対処を行う。
<第一の実施形態に係る画像監視装置1の動作>
図6、図7および図8のフローチャートを参照して画像監視装置1の動作を説明する。
画像監視装置1が動作を開始すると、イベント会場に設置されている撮影部2は所定時間おきに監視空間を撮影して撮影画像を画像処理部5が設置されている画像解析センター宛に順次送信する。そして、画像処理部5は撮影画像を受信するたびに図6のフローチャートに従った動作を繰り返す。
まず、通信部3は画像取得手段30として動作し、撮影部2からの撮影画像の受信待ち状態となる。撮影画像を取得した画像取得手段30は当該撮影画像を画像処理部5に出力する(ステップS1)。
撮影画像を入力された画像処理部5は密度推定手段50として動作し、撮影画像から密度分布を推定する(ステップS2)。密度推定手段50は、撮影画像の各画素の位置にて推定用特徴量を抽出するとともに記憶部4の密度推定器記憶手段40から密度推定器を読み出し、各推定用特徴量を密度推定器に入力して撮影画像の各画素における推定密度を取得することにより密度分布を推定する。
密度分布を推定した画像処理部5は物体位置判定手段51としても動作し、物体位置判定手段51には画像取得手段30から撮影画像が入力されるとともに密度推定手段50から密度分布が入力される。これらを入力された物体位置判定手段51は、密度分布に背景クラス以外の推定密度が含まれているか否かを確認する(ステップS3)。
背景クラス以外の推定密度が含まれている場合は(ステップS3にてYES)、物体位置判定手段51は、少なくとも1人以上の人が撮影されているとして、撮影画像から個々の物体の位置を判定する処理を行う(ステップS4)。他方、背景クラスのみの場合は(ステップS3にてNO)、人が撮影されていないとして、ステップS4,S5の処理を省略する。
図7および図8のフローチャートを参照して、ステップS4の物体位置判定処理を説明する。単体特徴記憶手段41が物体モデル記憶手段410aとして動作し、物体位置判定手段51が配置生成手段510a、モデル画像生成手段512a、評価値算出手段514aおよび最適配置決定手段516aとして動作して、物体位置判定処理が実行される。
配置生成手段510aは、1から上限個数以下の範囲で配置数を順次設定して(ステップS100)、ステップS100〜S114のループ処理を制御する。
また、配置生成手段510aは、反復回数をカウントするための変数Tを用意してTを0に初期化し(ステップS101)、ステップS102〜S113の反復処理を開始する。
次に、配置生成手段510aは、密度推定手段50から入力された密度分布において推定密度が低密度、中密度または高密度の領域内に、ステップS100にて設定した配置数と同数の候補位置をランダムに設定することによって、当該配置数におけるT通り目の配置を生成し、モデル画像生成手段512aに出力する(ステップS102)。
モデル画像生成手段512aは、物体モデル記憶手段410aからカメラパラメータを読み出し、カメラパラメータを用いて、ステップS102で生成した配置に含まれる各候補位置を仮想空間の三次元座標に変換する(ステップS103)。
次に、モデル画像生成手段512aは、撮影画像と同サイズのモデル画像を用意して初期化するとともに、各候補位置の三次元座標の撮影部2までの距離を算出し、距離が遠い候補位置から順に処理対象に設定して(ステップS104)、ステップS104〜S108のループ処理を実行する。
続いて、モデル画像生成手段512aは密度分布を参照して処理対象の候補位置の密度を特定する(ステップS105)。モデル画像生成手段512aは、物体モデル記憶手段410aから頭部近傍モデルを読み出して当該候補位置の三次元座標に配置し、カメラパラメータを用いて頭部近傍モデルを撮影画像の座標系に投影し、投影領域内で最多の推定密度(ただし背景クラス以外)を候補位置の密度として特定する。
続いて、モデル画像生成手段512aは、ステップS105で特定した密度に対応する物体モデルを物体モデル記憶手段410aから読み出して(ステップS106)、処理対象の候補位置の三次元座標に配置し、カメラパラメータを用いて、配置した物体モデルをモデル画像に上書き投影する(ステップS107)。また、このとき、モデル画像生成手段512aは物体モデルの投影面積を記録しておく。
そして、モデル画像生成手段512aは、現配置数におけるT通り目の配置に含まれる全ての候補位置を処理し終えたか否かを確認し(ステップS108)、未処理の候補位置がある場合は(ステップS108にてNO)、処理をステップS104に戻して次の候補位置を処理する。
他方、全ての候補位置を処理し終えた場合は(ステップS108にてYES)、現配置数におけるT通り目の配置についてのモデル画像の完成となる。モデル画像を完成させたモデル画像生成手段512aは当該モデル画像における物体モデルの隠蔽度を算出する(ステップS109)。すなわち、モデル画像生成手段512aは、「モデルの投影領域の和領域の面積」であるモデル画像上の投影領域の面積を求めるとともに、ステップS107で記録していた物体モデルごとの投影面積を総和し、総和値からモデルの投影領域の和領域の面積を差し引いて「モデル間の重複領域の面積」を求め、これらを式(1)に代入して隠蔽度を算出する。
隠蔽度を算出したモデル画像生成手段512aはモデル画像と隠蔽度を評価値算出手段514aに出力する。
モデル画像と隠蔽度を入力された評価値算出手段514aは、当該モデル画像と撮影画像の形状適合度を算出し(ステップS110)、さらに、当該形状適合度と隠蔽度から、モデル画像と撮影画像の類似度を現配置数におけるT通り目の配置についての評価値として算出する(ステップS111)。すなわち、評価値算出手段514aは、モデル画像生成手段512aから入力されたモデル画像と撮影画像のそれぞれからエッジ画像を生成し、これらのエッジ画像の類似度を形状適合度として算出する。そして、形状適合度と隠蔽度を式(2)に代入して類似度を算出する。
現配置数におけるT通り目の配置についての評価値が算出されると、評価値算出手段514aは当該配置と評価値を対応付けて記録し、配置生成手段510aは反復回数Tを1だけ増加させて(ステップS112)、規定回数TMAXと比較し(ステップS113)、TがTMAX未満の場合は(ステップS113にてNO)、処理をステップS102に戻して現配置数における反復処理を継続させる。
反復回数Tが規定回数TMAXに達した場合(ステップS113にてYES)、配置生成手段510aは、現配置数における反復処理を終了させ、全ての配置数を設定し終えたか否かを確認する(ステップS114)。未設定の配置数がある場合は(ステップS114にてNO)、処理をステップS100に戻して次の配置数についての処理を行う。
他方、全ての配置数を設定し終えた場合は(ステップS114にてYES)、評価値算出手段514aはステップS112で記録した配置と評価値を最適配置決定手段516aに入力し、最適配置決定手段516aは、それらの中で評価値が最大の配置を特定し(ステップS115)、当該配置を撮影画像に撮影されている個々の人の位置を表している情報と判定する。
再び図6を参照して説明を続ける。物体位置判定手段51はステップS4にて判定した個々の人の位置(物体位置)の情報を通信部3に出力する(ステップS5)。物体位置の情報を入力された通信部3は物体位置出力手段31として動作し、物体位置の情報を表示部6に送信する。
以上の処理を終えると、処理はステップS1に戻され、次の撮影画像に対する処理が行われる。
[第二の実施形態]
以下、第一の実施形態とは異なる本発明の好適な実施形態として、人の密度によって物体モデルに対する重み付けを変更する物体検出装置の例を含んだ画像監視装置1の例を説明する。
第二の実施形態に係る画像監視装置は、単体特徴記憶手段41が記憶している単体特徴の細部および物体位置判定手段51が行う処理の細部が第一の実施形態に係る画像監視装置と異なり、概略の構成、概略の機能および動作の一部は共通する。そのため、概略の構成、概略の機能および動作の一部については、それぞれ第一の実施形態で参照した図1のブロック図、図2の機能ブロック図および図6のフローチャートを再び参照して説明する。
<第二の実施形態に係る画像監視装置1の構成>
図1のブロック図を参照して第二の実施形態に係る画像監視装置1の概略の構成を説明する。
画像監視装置1は、第一の実施形態と同様、監視空間を所定時間おきに撮影して撮影画像を出力する撮影部2と、物体位置の情報を入力されて当該情報を表示する表示部6と、撮影画像を取得して当該撮影画像から個々の人(物体)を検出し、検出した物体の位置(物体位置)の情報を生成して出力する画像処理部5とが、撮影画像および物体位置の情報等の入出力を介在する通信部3に接続されるとともに、プログラムおよび各種データ等を記憶してこれらを入出力する記憶部4が画像処理部5に接続されてなる。
<第二の実施形態に係る画像監視装置1の機能>
図2および図9の機能ブロック図を参照し、第二の実施形態に係る画像監視装置1の機能について説明する。
通信部3は、第一の実施形態と同様、撮影部2から撮影画像を取得して密度推定手段50と物体位置判定手段51に出力する画像取得手段30、および物体位置判定手段51から入力された物体位置の情報を表示部6に出力する物体位置出力手段31等としての機能を含む。
また、記憶部4は、第一の実施形態と同様、所定の密度ごとに当該密度にて物体が存在する空間を撮影した密度画像それぞれの画像特徴を学習した密度推定器を記憶している密度推定器記憶手段40、および予め単独の物体の画像特徴(単体特徴)を記憶している単体特徴記憶手段41等としての機能を含み、単体特徴記憶手段41が記憶している単体特徴は、密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視した評価ができるものとなっている。
また、画像処理部5は、第一の実施形態と同様、撮影画像を密度推定器で走査することによって撮影画像に撮影された物体の密度の分布を推定し、推定した密度分布を物体位置判定手段51に出力する密度推定手段50、および撮影画像内に個々の物体が存在し得る候補位置を設定して当該候補位置の撮影画像に単独の物体の画像特徴が現れている度合いを表す評価値を算出し、評価値が所定値以上である候補位置を物体の位置と判定し、物体位置の情報を物体位置出力手段31に出力する物体位置判定手段51等としての機能を含み、物体位置判定手段51は、候補位置の密度に応じた単体特徴を用いることによって、候補位置における密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視して評価値を算出する。
ただし、上述したように、第二の実施形態に係る物体位置判定手段51が行う処理の細部および単体特徴記憶手段41が記憶している単体特徴の細部が第一の実施形態に係る画像監視装置1と異なる。これらの点について、図9の機能ブロック図を参照して説明する。
第二の実施形態に係る単体特徴記憶手段41は、単独の人(物体)の形状を模した物体モデルの情報を予め記憶した物体モデル記憶手段410b、および評価値の算出において用いる重み係数を予め記憶した重み係数記憶手段412bとして機能し、物体モデルの情報および重み係数の情報を単体特徴として記憶している。
図10は、第二の実施形態に係る単体特徴記憶手段41が記憶している単体特徴、すなわち物体モデル記憶手段410bが記憶している物体モデルの情報および重み係数記憶手段412bが記憶している重み係数の情報を模式的に表した図である。
物体モデル記憶手段410bが記憶している物体モデルは立位の人の頭部、胴部、脚部に対応する3つの回転楕円体から構成される立体モデル750である。この立体モデル750は人の全身の形状を表す物体モデルとなっており、以下、全身モデルと称する。なお頭部重心を人の代表位置とする。そしてさらに物体モデル記憶手段410bは、この全身モデルを撮影画像の座標系に投影するために撮影部2のカメラパラメータ751を全身モデルと併せて記憶している。
重み係数は密度が高いほど単独の物体を構成する部分のうちの少ない部分に偏重させた設定となっている。重み係数記憶手段412bは、低密度クラスを表す値と対応付けて「上部1/3に適用する重み係数0.333」「中部1/3に適用する重み係数0.333」「下部1/3に適用する重み係数0.333」、中密度クラスを表す値と対応付けて「上部1/3に適用する重み係数0.500」「中部1/3に適用する重み係数0.400」「下部1/3に適用する重み係数0.100」、高密度クラスを表す値と対応付けて「上部1/3に適用する重み係数0.700」「中部1/3に適用する重み係数0.200」「下部1/3に適用する重み係数0.100」を記憶している。以下、全身に均等な低密度用の重み係数760を全身均等重み係数、上半身を重視した中密度用の重み係数761を上半身偏重重み係数、頭部近傍を重視した高密度用の重み係数762を頭部近傍偏重重み係数と称する。
このように、物体モデル記憶手段410bは全身モデルとカメラパラメータとを物体モデルの情報として記憶しており、重み係数記憶手段412bは低密度クラスと対応付けて全身均等重み係数760を、中密度クラスと対応付けて上半身偏重重み係数761を、高密度クラスと対応付けて頭部近傍偏重重み係数762を記憶している。
配置生成手段510bは、第一の実施形態において説明した配置生成手段510aと同様にして、それぞれが1以上の候補位置を含む互いに異なる複数通りの配置を生成する。そして、配置生成手段510bは、生成した各配置をモデル画像生成手段512bに出力する。
モデル画像生成手段512bは、配置生成手段510bから入力された複数通りの配置のそれぞれについて、各候補位置に単独の物体を模した物体モデルを描画してモデル画像を生成し、生成した各モデル画像を評価値算出手段514bに出力する。
そのために、モデル画像生成手段512bは、物体モデル記憶手段410bからカメラパラメータを読み出し、配置ごとに、カメラパラメータを用いて、各候補位置を立体モデルの頭部重心の高さの水平面に逆投影することで、当該候補位置に投影される立体モデルの、監視空間を模した仮想空間内における代表位置を算出する。
また、モデル画像生成手段512bは、物体モデル記憶手段410bから全身モデルを読み出し、各候補位置と対応する仮想空間内の代表位置に全身モデルを配置し、カメラパラメータを用いて全身モデルを撮影画像の座標系に投影する。そして、モデル画像生成手段512bは、密度推定手段50から入力された密度分布を参照して各候補位置に対応する全身モデルの投影領域における上部1/3の領域内の推定密度を集計し、各候補位置における最多の推定密度(ただし背景クラス以外)を当該候補位置の密度と決定する。
また、モデル画像生成手段512bは、候補位置ごとに当該候補位置の密度に応じた物体モデルを重み係数記憶手段412bから読み出す。すなわち、モデル画像生成手段512bは、候補位置の密度が低密度であれば全身均等重み係数を読み出し、中密度であれば上半身偏重重み係数を読み出し、高密度であれば頭部近傍偏重重み係数を読み出す。
また、モデル画像生成手段512bは、各配置について、各候補位置と対応する仮想空間内の代表位置に全身モデルを配置し、カメラパラメータを用いて各全身モデルの形状を撮影画像の座標系に投影することによって、配置ごとのモデル画像を生成する。
なお、モデル画像生成手段512bは、撮影部2からの距離が遠い代表位置に配置した物体モデルから順に投影し、投影領域を上書きすることによって、物体モデル間の隠蔽を表現したモデル画像とする。
また、モデル画像生成手段512bは、各モデル画像と対応して、当該モデル画像における各候補位置の全身モデルの投影領域に当該候補位置の密度に応じた重み係数を設定した重み画像を生成する。すなわち、重み画像中の密度が低密度である候補位置の投影領域においては、上部1/3の領域の画素に0.333、中部1/3の領域の画素に0.333、下部1/3の領域の画素に0.333がそれぞれ設定される。重み画像中の密度が中密度である候補位置の投影領域においては、上部1/3の領域の画素に0.500、中部1/3の領域の画素に0.400、下部1/3の領域の画素に0.100がそれぞれ設定される。重み画像中の密度が高密度である候補位置の投影領域においては、上部1/3の領域の画素に0.700、中部1/3の領域の画素に0.200、下部1/3の領域の画素に0.100がそれぞれ設定される。
そして、モデル画像生成手段512bは、配置ごとに、配置とモデル画像と重み画像とを対応付けて評価値算出手段514bに出力する。
図11は、図5で例示した密度分布および配置に対して、モデル画像生成手段512bが生成したモデル画像770と重み画像771を模式的に示した図である。なお、重み画像771においてはスペースの都合上、重み係数の値を有効数字1桁で示している。
評価値算出手段514bは、モデル画像生成手段512bから入力された複数通りの配置のモデル画像それぞれについて、物体を構成する部分ごとに物体モデルの撮影画像に対する類似度を求め、候補位置における密度が高いほど少ない部分に偏重させた重み付けを行って類似度を総和することにより評価値を算出し、配置ごとの評価値を最適配置決定手段516bに出力する。
具体的には、評価値算出手段514bは、各モデル画像と撮影画像の、当該モデル画像と対応する重み画像に従って重み付けた重み付け類似度を算出する。
重み付け類似度は、モデル画像と撮影画像とのエッジの重み付け類似度とすることができる。評価値算出手段514bは、各モデル画像と撮影画像のそれぞれからエッジを抽出し、各モデル画像について、モデル画像から有効なエッジが抽出された画素ごとに、対応する撮影画像の画素のエッジとの差の絶対値を算出して重み画像の当該画素に設定された重み係数にて重み付けて総和し、総和値をモデル画像からエッジが抽出された画素数で除して符号を反転した値を、当該モデル画像の重み付け類似度として算出する。
或いは、評価値算出手段514bは、各モデル画像と撮影画像のそれぞれからエッジ画像を生成し、各モデル画像について、撮影画像から生成したエッジ画像と当該モデル画像から生成したエッジ画像とのチャンファーマッチングを行って、その過程で算出される画素ごとの距離に重み画像に従った重み付けを行って得られるチャンファー距離の符号を反転した値を、当該モデル画像の重み付け類似度として算出してもよい。
最適配置決定手段516bは、評価値算出手段514bから入力された配置ごとの評価値を参照し、評価値が最大の配置における候補位置を物体の位置と決定し、決定した物体位置の情報を物体位置出力手段31に出力する。すなわち、最適配置決定手段516bは、最大の類似度が算出された配置に含まれる各候補位置を撮影画像に撮影されている各人の位置と決定する。
<第二の実施形態に係る画像監視装置1の動作>
以下、図6、図12および図13を参照し、第二の実施形態に係る画像監視装置1の動作を説明する。
画像監視装置1が動作を開始すると、第一の実施形態と同様に、撮影部2は順次撮影画像を送信し、画像処理部5は撮影画像を受信するたびに図6のフローチャートに従った動作を繰り返す。
通信部3は画像取得手段30として動作し、撮影画像を受信して画像処理部5に出力する(ステップS1)。撮影画像を入力された画像処理部5は密度推定手段50として動作して記憶部4の密度推定器記憶手段40から密度推定器を読み出し、撮影画像を密度推定器にて走査することによって密度分布を推定する(ステップS2)。
次に、画像処理部5は物体位置判定手段51として動作し、物体位置判定手段51は、画像取得手段30から撮影画像および密度推定手段50から密度分布を入力されて、密度分布に背景クラス以外の推定密度が含まれているか否かを確認する(ステップS3)。
物体位置判定手段51は、背景クラス以外の推定密度が含まれている場合は(ステップS3にてYES)、撮影画像から個々の物体の位置を判定する処理を行い(ステップS4)、背景クラスのみの場合は(ステップS3にてNO)、ステップS4,S5の処理を省略する。
図12および図13のフローチャートを参照して、ステップS4の物体位置判定処理を説明する。単体特徴記憶手段41が物体モデル記憶手段410bおよび重み係数記憶手段412bとして動作し、物体位置判定手段51が配置生成手段510b、モデル画像生成手段512b、評価値算出手段514bおよび最適配置決定手段516bとして動作して、物体位置判定処理が実行される。
配置生成手段510bは、1から上限個数以下の範囲で配置数を順次設定して(ステップS200)、ステップS200〜S214のループ処理を制御する。
また、配置生成手段510bは、反復回数をカウントするための変数Tを用意してTを0に初期化し(ステップS201)、ステップS202〜S213の反復処理を開始する。
次に、配置生成手段510bは、密度推定手段50から入力された密度分布において推定密度が低密度、中密度または高密度の領域内に、ステップS200にて設定した配置数と同数の候補位置をランダムに設定することによって、当該配置数におけるT通り目の配置を生成し、モデル画像生成手段512bに出力する(ステップS202)。
モデル画像生成手段512bは、物体モデル記憶手段410bからカメラパラメータを読み出し、カメラパラメータを用いて、ステップS202で生成した配置に含まれる各候補位置を仮想空間の三次元座標に変換する(ステップS203)。
次に、モデル画像生成手段512bは、撮影画像と同サイズのモデル画像および重み画像を用意して初期化するとともに、各候補位置の三次元座標の撮影部2までの距離を算出し、距離が遠い候補位置から順に処理対象に設定して(ステップS204)、ステップS204〜S208のループ処理を実行する。
続いて、モデル画像生成手段512bは密度分布を参照して処理対象の候補位置の密度を特定する(ステップS205)。モデル画像生成手段512bは、物体モデル記憶手段410bから全身モデルを読み出して当該候補位置の三次元座標に配置し、カメラパラメータを用いて、配置した全身モデルを撮影画像の座標系に投影する。そして、モデル画像生成手段512bは、投影領域の上部1/3の領域内で最多の推定密度を当該候補位置の密度として特定する。
続いて、モデル画像生成手段512bは、ステップS205で特定した密度に対応する重み係数を重み係数記憶手段412bから読み出し(ステップS206)、全身モデルと重み係数を投影する(ステップS207)。すなわち、モデル画像生成手段512bは、まず、カメラパラメータを用いて、ステップS205で配置した全身モデルをモデル画像に上書き投影する。また、このとき、モデル画像生成手段512bは物体モデルの投影面積を記録しておく。さらに、モデル画像生成手段512bは、読み出した重み係数を全身モデルの各部分に設定し、カメラパラメータを用いて、重み係数を設定した全身モデルを重み画像に上書き投影する。
そして、モデル画像生成手段512bは、現配置数におけるT通り目の配置に含まれる全ての候補位置を処理し終えたか否かを確認し(ステップS208)、未処理の候補位置がある場合は(ステップS208にてNO)、処理をステップS204に戻して次の候補位置を処理する。
他方、全ての候補位置を処理し終えた場合は(ステップS208にてYES)、現配置数におけるT通り目の配置についてのモデル画像および重み画像の完成となる。モデル画像を完成させたモデル画像生成手段512bはモデル画像と重み画像を評価値算出手段514bに出力する。
モデル画像と重み画像を入力された評価値算出手段514bは、当該重み画像に従って重み付けた当該モデル画像と撮影画像の重み付け類似度を現配置数におけるT通り目の配置についての評価値として算出する(ステップS210)。すなわち、評価値算出手段514bは、モデル画像生成手段512bから入力されたモデル画像と撮影画像のそれぞれからエッジ画像を生成し、これらのエッジ画像の画素ごとの類似度を当該画素の重み係数で重み付けて総和した重み付け類似度として算出する。
現配置数におけるT通り目の配置についての評価値が算出されると、評価値算出手段514bは当該配置と評価値を対応付けて記録し、配置生成手段510bは反復回数Tを1だけ増加させて(ステップS212)、規定回数TMAXと比較し(ステップS213)、TがTMAX未満の場合は(ステップS213にてNO)、処理をステップS202に戻して現配置数における反復処理を継続させる。
反復回数Tが規定回数TMAXに達した場合(ステップS213にてYES)、配置生成手段510bは、現配置数における反復処理を終了させ、全ての配置数を設定し終えたか否かを確認する(ステップS214)。未設定の配置数がある場合は(ステップS214にてNO)、処理をステップS200に戻して次の配置数についての処理を行う。
他方、全ての配置数を設定し終えた場合は(ステップS214にてYES)、評価値算出手段514bはステップS212で記録した配置と評価値を最適配置決定手段516bに入力し、最適配置決定手段516bは、それらの中で評価値が最大の配置を特定し(ステップS215)、当該配置を撮影画像に撮影されている個々の人の位置を表している情報と判定する。
再び図6を参照して説明を続ける。物体位置判定手段51はステップS4にて判定した物体位置の情報を通信部3に出力し(ステップS5)、通信部3は物体位置出力手段31として動作して物体位置の情報を表示部6に送信する。
以上の処理を終えると、処理はステップS1に戻され、次の撮影画像に対する処理が行われる。
[第三の実施形態]
以下、第一および第二の実施形態とは異なる本発明の好適な実施形態として、単独の人の画像特徴を学習した識別器を用いて個々の人を検出する物体検出装置の例を含んだ画像監視装置1の例を説明する。この実施形態に係る画像監視装置1は、特に、物体検出装置が人の密度によって識別器を切り替える例を含む。
第三の実施形態に係る画像監視装置は、単体特徴記憶手段41が記憶している単体特徴の細部および物体位置判定手段51が行う処理の細部が第一および第二の実施形態に係る画像監視装置と異なり、概略の構成、概略の機能および動作の一部は共通する。そのため、概略の構成、概略の機能および動作の一部については、それぞれ第一および第二の実施形態で参照した図1のブロック図、図2の機能ブロック図および図6のフローチャートを再び参照して説明する。
<第三の実施形態に係る画像監視装置1の構成>
図1のブロック図を参照して第三の実施形態に係る画像監視装置1の概略の構成を説明する。
画像監視装置1は、第一および第二の実施形態と同様、監視空間を所定時間おきに撮影して撮影画像を出力する撮影部2と、物体位置の情報を入力されて当該情報を表示する表示部6と、撮影画像を取得して当該撮影画像から個々の人(物体)を検出し、検出した物体の位置(物体位置)の情報を生成して出力する画像処理部5とが、撮影画像および物体位置の情報等の入出力を介在する通信回路である通信部3に接続されるとともに、プログラムおよび各種データ等を記憶してこれらを入出力する記憶部4が画像処理部5に接続されてなる。
<第三の実施形態に係る画像監視装置1の機能>
図2および図14の機能ブロック図を参照し、第三の実施形態に係る画像監視装置1の機能について説明する。
通信部3は、第一および第二の実施形態と同様、撮影部2から撮影画像を取得して密度推定手段50と物体位置判定手段51に出力する画像取得手段30、および物体位置判定手段51から入力された物体位置の情報を表示部6に出力する物体位置出力手段31等としての機能を含む。
記憶部4は、第一および第二の実施形態と同様、所定の密度ごとに当該密度にて物体が存在する空間を撮影した密度画像それぞれの画像特徴を学習した密度推定器を記憶している密度推定器記憶手段40、および予めの学習により生成された単独の物体の画像特徴(単体特徴)を記憶している単体特徴記憶手段41等としての機能を含み、単体特徴記憶手段41が記憶している単体特徴は、密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視した評価ができるものとなっている。
また、画像処理部5は、第一および第二の実施形態と同様、撮影画像を密度推定器で走査することによって撮影画像に撮影された物体の密度の分布を推定し、推定した密度分布を物体位置判定手段51に出力する密度推定手段50、および撮影画像内に個々の物体が存在し得る候補位置を設定して当該候補位置の撮影画像に単独の物体の画像特徴が現れている度合いを表す評価値を算出し、評価値が所定値以上である候補位置を物体の位置と判定し、物体位置の情報を物体位置出力手段31に出力する物体位置判定手段51等としての機能を含み、物体位置判定手段51は、候補位置の密度に応じた単体特徴を用いることによって、候補位置における密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視して評価値を算出する。
ただし、上述したように、第三の実施形態に係る物体位置判定手段51が行う処理の細部および単体特徴記憶手段41が記憶している単体特徴の細部が第一および第二の実施形態に係る画像監視装置1と異なる。これらの点について、図14の機能ブロック図を参照して説明する。
第三の実施形態に係る単体特徴記憶手段41は、単独の人(物体)の画像特徴を学習した識別器(単体識別器)を予め記憶した単体識別器記憶手段411cとして機能し、単体識別器の情報を単体特徴として記憶している。
図15は、第三の実施形態に係る単体特徴記憶手段41が記憶している単体特徴、すなわち単体識別器記憶手段411cが記憶している単体識別器の情報を模式的に表した図である。
単体識別器は、画像の特徴量を入力されると当該画像が単独の人が撮影されている画像(単体画像)であることの尤もらしさを表す評価値(識別スコア)を算出して出力する評価値算出関数の係数、および識別スコアに対して適用する閾値等のパラメータで表される。
単体識別器は多数の単体画像とそれぞれが人以外しか写っていない多数の無人画像からなる学習用画像の特徴量に線形SVM法を適用して学習した識別器とすることができる。
学習アルゴリズムとして線形SVMを用いた場合、評価値算出関数の係数は重みベクトルである。この重みベクトルは、特徴量の各要素に対する重みであり、入力された画像の特徴量と重みベクトルとの内積の値が識別スコアを表す。学習において、当該重みベクトルと特徴量との内積が0より大きい場合は人、0以下の場合は人以外と識別されるように調整される。よって、入力された画像が単体画像であるか否かを識別する閾値は原理上は0であり、通常、閾値は0に設定することができる。ただし、単体画像を単体画像でないと識別する誤りを減じるために、閾値を0よりも小さな値に設定してもよい。
なお、学習用画像の特徴量はHOG(Histograms of Oriented Gradients)特徴量である。
単体識別器記憶手段411cが記憶している単体識別器は、密度が高いほど単独の物体を構成する部分のうちの少ない部分の画像特徴を学習した識別器となっている。単体識別器記憶手段411cは、低密度クラスを表す値と対応付けて単独の人の全身の画像特徴を学習した単体識別器800、中密度クラスを表す値と対応付けて単独の人の上部2/3の画像特徴を学習した単体識別器801、高密度クラスを表す値と対応付けて単独の人の上部1/3の画像特徴を学習した単体識別器802を記憶している。以下、単体識別器800,801,802をそれぞれ全身識別器、上半身識別器、頭部近傍識別器と称する。
全身識別器800は単独の人の全身が撮影された単体画像を用いて学習した単体識別器であり、上半身識別器801は単独の人の上部2/3が撮影された単体画像(人の全身が撮影された単体画像の上部2/3を切り出した画像など)を用いて学習した単体識別器であり、頭部近傍識別器802は単独の人の上部1/3が撮影された単体画像(人の全身が撮影された単体画像の上部1/3を切り出した画像など)を用いて学習した単体識別器である。
このように、単体識別器記憶手段411cは、低密度クラスと対応付けて全身識別器800を、中密度クラスと対応付けて上半身識別器801を、高密度クラスと対応付けて頭部近傍識別器802を記憶している。
候補位置設定手段511cは、撮影画像内に所定間隔にて複数の候補位置を設定し、設定した候補位置を評価値算出手段514cに出力する。具体的には、所定間隔は1画素であり、候補位置設定手段511cは撮影画像の各画素の位置を順次候補位置に設定する。なお候補位置は人の頭部重心を表すものとする。
評価値算出手段514cは、候補位置設定手段511cから入力された候補位置のそれぞれについて、当該候補位置の密度が高いほど単独の物体を構成する部分のうちの少ない部分の画像特徴を学習した単体識別器に、当該候補位置の撮影画像の画像特徴を入力して評価値を算出し、算出した評価値とそれに付随する情報を位置決定手段517cに出力する。
そのために、評価値算出手段514cは、各候補位置に単独の人の上部1/3の形状に定められた窓を設定するとともに密度推定手段50から入力された密度分布を参照し、当該窓内の推定密度を集計する。当該窓は後述する識別用抽出窓である。そして、評価値算出手段514cは、各候補位置における最多の推定密度を当該候補位置の密度と決定する。
また、評価値算出手段514cは、各候補位置に当該候補位置の密度に応じた識別用抽出窓を設定し、識別用抽出窓内の撮影画像から単体識別用の特徴量(識別用特徴量)を抽出する。識別用抽出窓は、各密度に応じた単体識別器の学習に用いた単体画像の形状(図15に示した実線の矩形)を有し、予め定めた複数の倍率で拡大・縮小した大きさの窓である。すなわち、識別用抽出窓は、候補位置の密度が低密度であれば単独の人の全身の形状に定められた窓であり、中密度であれば単独の人の上部2/3の形状に定められた窓であり、高密度であれば単独の人の上部1/3の形状に定められた窓である。
図16は、図5で例示した密度分布が得られている場合に、図5で例示した各候補位置に評価値算出手段514cが設定する識別用抽出窓を模式的に示した図である。
また、評価値算出手段514cは、候補位置ごとに当該候補位置の密度に応じた単体識別器を単体識別器記憶手段411cから読み出す。すなわち、評価値算出手段514cは、候補位置の密度が低密度であれば全身識別器を読み出し、中密度であれば上半身識別器を読み出し、高密度であれば頭部近傍識別器を読み出す。そして、評価値算出手段514cは、各候補位置について、読み出した単体識別器に当該候補位置から抽出した識別用特徴量を入力し、その出力値である識別スコアを当該候補位置の評価値として取得する。
そして、評価値算出手段514cは、候補位置ごとに、候補位置、密度、識別スコア、使用した単体識別器の閾値および使用した識別用抽出窓を対応付けた情報を位置決定手段517cに出力する。
位置決定手段517cは、評価値算出手段514cから入力された情報を参照し、予め定めた基準を満たす評価値が算出された候補位置を物体の位置と決定する。
具体的には、位置決定手段517cは、識別スコアがそれに対応する閾値以上である候補位置を抽出し、抽出した候補位置のうち対応する密度が同一であり且つ互いに近接する複数の候補位置を一つにまとめ、まとめた候補位置を人が撮影されている位置と決定する。
この候補位置をまとめる処理は、実際に人が撮影されている位置に加えてその近傍においても同一人物に対して高い識別スコアが算出されることに対処するために行う。具体的には、例えば、位置決定手段517cは、密度ごとに、閾値以上の識別スコアが算出された候補位置を識別スコアが高い順に順次注目位置に設定するとともに注目位置より識別スコアが低い候補位置を比較位置に設定する。そして、位置決定手段517cは、比較位置のうち当該比較位置に設定された識別用抽出窓と注目位置に設定された識別用抽出窓との重なりが予め定めた割合より大きい比較位置の情報を削除することで複数の候補位置を一つにまとめる。
そして、位置決定手段517cは、人が撮影されている位置と決定した候補位置を物体位置の情報として物体位置出力手段31に出力する。
<第三の実施形態に係る画像監視装置1の動作>
以下、図6および図17を参照し、第三の実施形態に係る画像監視装置1の動作を説明する。
画像監視装置1が動作を開始すると、第一および第二の実施形態と同様に、撮影部2は順次撮影画像を送信し、画像処理部5は撮影画像を受信するたびに図6のフローチャートに従った動作を繰り返す。
通信部3は画像取得手段30として動作し、撮影画像を受信して画像処理部5に出力する(ステップS1)。撮影画像を入力された画像処理部5は密度推定手段50として動作して記憶部4の密度推定器記憶手段40から密度推定器を読み出し、撮影画像を密度推定器にて走査することによって密度分布を推定する(ステップS2)。
次に、画像処理部5は物体位置判定手段51として動作し、物体位置判定手段51は、画像取得手段30から撮影画像および密度推定手段50から密度分布を入力されて、密度分布に背景クラス以外の推定密度が含まれているか否かを確認する(ステップS3)。
物体位置判定手段51は、背景クラス以外の推定密度が含まれている場合は(ステップS3にてYES)、撮影画像から個々の物体の位置を判定する処理を行い(ステップS4)、背景クラスのみの場合は(ステップS3にてNO)、ステップS4の処理を省略する。
図17のフローチャートを参照して、ステップS4の物体位置判定処理を説明する。単体特徴記憶手段41が単体識別器記憶手段411cとして動作し、物体位置判定手段51が候補位置設定手段511c、評価値算出手段514cおよび位置決定手段517cとして動作して、物体位置判定処理が実行される。
候補位置設定手段511cは、撮影画像中の各画素の位置を順次候補位置に設定して評価値算出手段514cに入力し(ステップS300)、ステップS300〜S304のループ処理を制御する。
候補位置を入力された評価値算出手段514cは密度分布を参照して候補位置の密度を特定する(ステップS301)。評価値算出手段514cは候補位置に単独の人の上部1/3の形状に定められた窓を設定して当該窓内で最多の推定密度を候補位置の密度として特定する。
密度を特定した評価値算出手段514cは、単体識別器記憶手段411cから当該密度に応じた単体識別器を読み出し、当該密度に応じた識別用抽出窓を設定して識別用抽出窓内の撮影画像から識別用特徴量を抽出し(ステップS302)、抽出した識別用特徴量を当該密度に応じた単体識別器に入力して識別スコア(評価値)を算出する(ステップS303)。
そして、評価値算出手段514cは、候補位置と識別用抽出窓と密度と評価値とを対応付けて記録するとともに、撮影画像の全ての画素の位置を候補位置に設定し終えたか否かを確認し(ステップS304)、未設定の画素がある場合は(ステップS304にてNO)、処理をステップS300に戻して次の画素の位置を処理する。
他方、全ての画素の位置を候補位置に設定し終えた場合(ステップS304にてYES)、位置決定手段517cは、ステップS304で記録された候補位置と識別用抽出窓と密度と評価値の組の中から評価値が閾値未満の組を削除し(ステップS305)、さらに、削除されずに残った組について、密度ごとに、互いの識別用抽出窓が予め定めた割合よりも大きく重複している組を同一人物のものとして一つの組にまとめる(ステップS306)。そして位置決定手段517cはまとめた後の各組の候補位置を撮影画像に撮影されている個々の人の位置(物体位置)と判定する。
再び図6を参照して説明を続ける。物体位置判定手段51はステップS4にて判定した物体位置の情報を通信部3に出力し(ステップS5)、通信部3は物体位置出力手段31として動作して物体位置の情報を表示部6に送信する。
以上の処理を終えると、処理はステップS1に戻され、次の撮影画像に対する処理が行われる。
[第四の実施形態]
以下、第一、第二および第三の実施形態とは異なる本発明の好適な実施形態として、識別器が出力する部分評価値に対する重み付けを人の密度によって変更する物体検出装置の例を含んだ画像監視装置1の例を説明する。
第四の実施形態に係る画像監視装置は、単体特徴記憶手段41が記憶している単体特徴の細部および物体位置判定手段51が行う処理の細部が第一、第二および第三の実施形態に係る画像監視装置と異なり、概略の構成、概略の機能および動作の一部は共通する。そのため、概略の構成、概略の機能および動作の一部については、それぞれ第一、第二および第三の実施形態で参照した図1のブロック図、図2の機能ブロック図および図6のフローチャートを再び参照して説明する。
<第四の実施形態に係る画像監視装置1の構成>
図1のブロック図を参照して第四の実施形態に係る画像監視装置1の概略の構成を説明する。
画像監視装置1は、第一、第二および第三の実施形態と同様、監視空間を所定時間おきに撮影して撮影画像を出力する撮影部2と、物体位置の情報を入力されて当該情報を表示する表示部6と、撮影画像を取得して当該撮影画像から個々の人(物体)を検出し、検出した物体の位置(物体位置)の情報を生成して出力する画像処理部5とが、撮影画像および物体位置の情報等の入出力を介在する通信部3に接続されるとともに、プログラムおよび各種データ等を記憶してこれらを入出力する記憶部4が画像処理部5に接続されてなる。
<第四の実施形態に係る画像監視装置1の機能>
図2および図18の機能ブロック図を参照し、第四の実施形態に係る画像監視装置1の機能について説明する。
通信部3は、第一、第二および第三の実施形態と同様、撮影部2から撮影画像を取得して密度推定手段50と物体位置判定手段51に出力する画像取得手段30、および物体位置判定手段51から入力された物体位置の情報を表示部6に出力する物体位置出力手段31等としての機能を含む。
また、記憶部4は、第一、第二および第三の実施形態と同様、所定の密度ごとに当該密度にて物体が存在する空間を撮影した密度画像それぞれの画像特徴を学習した密度推定器を記憶している密度推定器記憶手段40、および予めの学習により生成された単独の物体の画像特徴(単体特徴)を記憶している単体特徴記憶手段41等としての機能を含み、単体特徴記憶手段41が記憶している単体特徴は、密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視した評価ができるものとなっている。
また、画像処理部5は、第一、第二および第三の実施形態と同様、撮影画像を密度推定器で走査することによって撮影画像に撮影された物体の密度の分布を推定し、推定した密度分布を物体位置判定手段51に出力する密度推定手段50、および撮影画像内に個々の物体が存在し得る候補位置を設定して当該候補位置の撮影画像に単独の物体の画像特徴が現れている度合いを表す評価値を算出し、評価値が所定値以上である候補位置を物体の位置と判定し、物体位置の情報を物体位置出力手段31に出力する物体位置判定手段51等としての機能を含み、物体位置判定手段51は、候補位置の密度に応じた単体特徴を用いることによって、候補位置における密度が高いほど、物体を構成する部分のうちの少ない部分の画像特徴を重視して評価値を算出する。
ただし、上述したように、第四の実施形態に係る物体位置判定手段51が行う処理の細部および単体特徴記憶手段41が記憶している単体特徴の細部が第一、第二および第三の実施形態に係る画像監視装置1と異なる。これらの点について、図18の機能ブロック図を参照して説明する。
第四の実施形態に係る単体特徴記憶手段41は、単独の人(物体)の画像特徴を学習した識別器(単体識別器)を予め記憶した単体識別器記憶手段411d、および評価値の算出において用いる重み係数を予め記憶した重み係数記憶手段412dとして機能し、単体識別器の情報および重み係数の情報を単体特徴として記憶している。
図19は、第四の実施形態に係る単体特徴記憶手段41が記憶している単体特徴、すなわち単体識別器記憶手段411dが記憶している単体識別器の情報および重み係数記憶手段412dが記憶している重み係数の情報を模式的に表した図である。
単体識別器は、第三の実施形態にて説明したように、画像の特徴量を入力されると当該画像が単体画像であることの尤もらしさを表す評価値(識別スコア)を算出して出力する評価値算出関数の係数、および識別スコアに対して適用する閾値等のパラメータで表され、多数の単体画像と多数の無人画像からなる学習用画像の特徴量に線形SVM法を適用して学習した識別器とすることができる。学習用画像の特徴量はHOG特徴量とすることができる。
単体識別器記憶手段411dが記憶している単体識別器は、単独の物体を構成する複数の部分の画像特徴を学習した識別器となっている。具体的には、単体識別器記憶手段411dはそれぞれが互いに異なる部分の画像特徴を学習した3つの単体識別器を記憶している。すなわち、単体識別器記憶手段411dは、人の上部1/3の画像特徴を学習した単体識別器850と、人の中部1/3の画像特徴を学習した単体識別器851と、人の下部1/3の画像特徴を学習した単体識別器852とを記憶している。以下、上部1/3を識別する単体識別器850を上部識別器、中部1/3を識別する単体識別器851を中部識別器、下部1/3を識別する単体識別器852を下部識別器と称する。
重み係数は密度が高いほど単独の物体を構成する部分のうちの少ない部分に偏重させた設定となっている。重み係数記憶手段412dは、低密度クラスを表す値と対応付けて「上部1/3に適用する重み係数0.333」「中部1/3に適用する重み係数0.333」「下部1/3に適用する重み係数0.333」、中密度クラスを表す値と対応付けて「上部1/3に適用する重み係数0.500」「中部1/3に適用する重み係数0.400」「下部1/3に適用する重み係数0.100」、高密度クラスを表す値と対応付けて「上部1/3に適用する重み係数0.700」「中部1/3に適用する重み係数0.200」「下部1/3に適用する重み係数0.100」を記憶している。以下、全身に均等な低密度用の重み係数860を全身均等重み係数、上半身を重視した中密度用の重み係数861を上半身偏重重み係数、頭部近傍を重視した高密度用の重み係数862を頭部近傍偏重重み係数と称する。
このように、単体識別器記憶手段411dは上部識別器850、中部識別器851および下部識別器852を単体識別器の情報として記憶しており、重み係数記憶手段412dは低密度クラスと対応付けられた全身均等重み係数860、中密度クラスと対応付けられた上半身偏重重み係数861および高密度クラスと対応付けられた頭部近傍偏重重み係数862を記憶している。
候補位置設定手段511dは、撮影画像内に所定間隔にて複数の候補位置を設定し、設定した候補位置を評価値算出手段514dに出力する。具体的には、所定間隔は1画素であり、候補位置設定手段511dは撮影画像の各画素の位置を順次候補位置に設定する。なお候補位置は人の頭部重心を表すものとする。
評価値算出手段514dは、候補位置設定手段511dから入力された候補位置のそれぞれについて、単独の物体を構成する複数の部分の画像特徴を学習した単体識別器に当該候補位置の撮影画像の画像特徴を入力して複数の部分の部分評価値を求め、候補位置における密度が高いほど少ない部分に偏重させた重み付けを行って部分評価値を総和することにより評価値を算出し、算出した評価値とそれに付随する情報を位置決定手段517dに出力する。
そのために、評価値算出手段514dは、各候補位置に人の各部分の識別用抽出窓を設定し、識別用抽出窓内の撮影画像から単体識別用の特徴量(識別用特徴量)を抽出する。識別用抽出窓は、各部分の単体識別器の学習に用いた単体画像の形状(図19に示した実線の矩形)を有し、予め定めた複数の倍率で拡大・縮小した大きさの窓である。すなわち、識別用抽出窓は、単独の人の上部1/3、中部1/3および下部1/3の形状に定められた3つの窓である。
また、評価値算出手段514dは、各部分の単体識別器を単体識別器記憶手段411dから読み出す。すなわち、評価値算出手段514dは、上部識別器、中部識別器および下部識別器を読み出す。そして、評価値算出手段514dは、各候補位置について、部分ごとに、読み出した単体識別器に当該候補位置から抽出した識別用特徴量を入力してその出力値である部分識別スコアを当該候補位置における当該部分の部分評価値として取得する。つまり、評価値算出手段514dは、候補位置ごとに上部識別器による部分識別スコア、中部識別器による部分識別スコアおよび下部識別器による部分識別スコアを算出する。
また、評価値算出手段514dは、密度推定手段50から入力された密度分布を参照し、各候補位置に設定した上部1/3の窓内の推定密度を集計する。そして、評価値算出手段514dは、各候補位置における最多の推定密度を当該候補位置の密度と決定する。
また、評価値算出手段514dは、候補位置ごとに当該候補位置の密度に応じた重み係数を重み係数記憶手段412dから読み出す。すなわち、評価値算出手段514dは、候補位置の密度が低密度であれば全身均等重み係数を読み出し、中密度であれば上半身偏重重み係数を読み出し、高密度であれば頭部近傍偏重重み係数を読み出す。そして、評価値算出手段514dは、各候補位置について、読み出した重み係数で対応する部分の部分評価値を重み付けて加算することによって当該候補位置の評価値を算出する。
すなわち、上部識別器による部分識別スコアをSU、中部識別器による部分識別スコアをSM、下部識別器による部分識別スコアをSLとすると、評価値算出手段514dは、注目している候補位置の密度が低密度であれば次式によって当該候補位置の識別スコアを算出する。
識別スコア=0.333SU+0.333SM+0.333SL (3)
また、評価値算出手段514dは、注目している候補位置の密度が中密度であれば次式によって当該候補位置の識別スコアを算出する。
識別スコア=0.500SU+0.400SM+0.100SL (4)
また、評価値算出手段514dは、注目している候補位置の密度が高密度であれば次式によって当該候補位置の識別スコアを算出する。
識別スコア=0.700SU+0.200SM+0.100SL (5)
図20は、図5で例示した密度分布が得られている場合に、図5で例示した各候補位置について評価値算出手段514dが識別スコアを算出する様子を模式的に示した図である。画像870は、これらの候補位置のうち密度が低密度である3つの候補位置について、各部分と重み係数の関係を示している。画像871は、密度が中密度である3つの候補位置について、各部分と重み係数の関係を示している。画像872は、密度が高密度である2つの候補位置について、各部分と重み係数の関係を示している。なお、スペースの都合上、重み係数の値を有効数字1桁で示している。
そして、評価値算出手段514dは、候補位置ごとに、候補位置、密度、識別スコアおよび使用した識別用抽出窓を対応付けた情報を位置決定手段517dに出力する。
位置決定手段517dは、評価値算出手段514dから入力された情報を参照し、予め定めた基準を満たす評価値が算出された候補位置を物体の位置と決定する。
具体的には、位置決定手段517dは、識別スコアが0以上である候補位置を抽出し、抽出した候補位置のうち対応する密度が同一であり且つ互いに近接する複数の候補位置(識別用抽出窓同士の重複が予め定めた割合より大きな候補位置)を一つにまとめ、まとめた候補位置を人が撮影されている位置と決定する。この候補位置をまとめる処理とその意義は、第三の実施形態に係る位置決定手段517cが行う処理およびその意義と同様である。
そして、位置決定手段517dは、人が撮影されている位置と決定した候補位置を物体位置の情報として物体位置出力手段31に出力する。
<第四の実施形態に係る画像監視装置1の動作>
以下、図6および図21を参照し、第四の実施形態に係る画像監視装置1の動作を説明する。
画像監視装置1が動作を開始すると、第一、第二および第三の実施形態と同様に、撮影部2は順次撮影画像を送信し、画像処理部5は撮影画像を受信するたびに図6のフローチャートに従った動作を繰り返す。
通信部3は画像取得手段30として動作し、撮影画像を受信して画像処理部5に出力する(ステップS1)。撮影画像を入力された画像処理部5は密度推定手段50として動作して記憶部4の密度推定器記憶手段40から密度推定器を読み出し、撮影画像を密度推定器にて走査することによって密度分布を推定する(ステップS2)。
次に、画像処理部5は物体位置判定手段51として動作し、物体位置判定手段51は、画像取得手段30から撮影画像および密度推定手段50から密度分布を入力されて、密度分布に背景クラス以外の推定密度が含まれているか否かを確認する(ステップS3)。
物体位置判定手段51は、背景クラス以外の推定密度が含まれている場合は(ステップS3にてYES)、撮影画像から個々の物体の位置を判定する処理を行い(ステップS4)、背景クラスのみの場合は(ステップS3にてNO)、ステップS4,S5の処理を省略する。
図21のフローチャートを参照して、ステップS4の物体位置判定処理を説明する。単体特徴記憶手段41が単体識別器記憶手段411dおよび重み係数記憶手段412dとして動作し、物体位置判定手段51が候補位置設定手段511d、評価値算出手段514dおよび位置決定手段517dとして動作して、物体位置判定処理が実行される。
候補位置設定手段511dは、撮影画像中の各画素の位置を順次候補位置に設定して評価値算出手段514dに入力し(ステップS400)、ステップS400〜S405のループ処理を制御する。
候補位置を入力された評価値算出手段514dは、単体識別器記憶手段411dから各部分(上部・中部・下部)の単体識別器を読み出し、各部分に対応する識別用抽出窓を設定して各識別用抽出窓内の撮影画像から識別用特徴量を抽出し(ステップS401)、抽出した各識別用特徴量を対応する部分の単体識別器に入力して部分識別スコア(部分評価値)を算出する(ステップS402)。
部分評価値を算出した評価値算出手段514dは、密度分布を参照して候補位置の密度を特定する(ステップS403)。評価値算出手段514dは候補位置に設定した上部1/3の窓内で最多の推定密度を候補位置の密度として特定する。
密度を特定した評価値算出手段514dは、重み係数記憶手段412dから当該密度に応じた重み係数を読み出し、式(3)、式(4)または式(5)のうちの密度に応じた式に従って、読み出した重み係数と部分評価値を積和することにより当該候補位置の評価値を算出する(ステップS404)。
そして、評価値算出手段514dは、候補位置と識別用抽出窓と密度と評価値とを対応付けて記録するとともに、撮影画像の全ての画素の位置を候補位置に設定し終えたか否かを確認し(ステップS405)、未設定の画素がある場合は(ステップS405にてNO)、処理をステップS400に戻して次の画素の位置を処理する。
他方、全ての画素の位置を候補位置に設定し終えた場合(ステップS405にてYES)、位置決定手段517dは、ステップS405で記録された候補位置と識別用抽出窓と密度と評価値の組の中から評価値が閾値未満の組を削除し(ステップS406)、さらに、削除されずに残った組について、密度ごとに、互いの識別用抽出窓が予め定めた割合よりも大きく重複している組を同一人物のものとして一つの組にまとめる(ステップS407)。そして位置決定手段517dはまとめた後の各組の候補位置を撮影画像に撮影されている個々の人の位置(物体位置)と判定する。
再び図6を参照して説明を続ける。物体位置判定手段51はステップS4にて判定した物体位置の情報を通信部3に出力し(ステップS5)、通信部3は物体位置出力手段31として動作して物体位置の情報を表示部6に送信する。
以上の処理を終えると、処理はステップS1に戻され、次の撮影画像に対する処理が行われる。
<変形例>
(1)上記各実施形態およびその変形例においては、検出対象の物体を人とする例を示したが、これに限らず、検出対象の物体を車両、牛や羊等の動物等とすることもできる。
(2)上記各実施形態およびその各変形例においては物体を1/3ずつに分けた部分を単位として単体特徴を設定する例を示したが、分け方はこれに限らない。検出対象や撮影する監視空間の特性、採用する特徴量や評価値の種類などの違いに応じ、それぞれに適した別の比率で分けた単体特徴とすることができる。また密度間でオーバーラップさせて単体特徴を設定してもよい。
(3)上記第二および第四の実施形態およびその各変形例において示した重み係数の値は一例であり、検出対象や撮影する監視空間の特性、採用する特徴量や評価値の種類などの違いに応じ、それぞれに適した別の値とすることができる。
(4)上記各実施形態およびその各変形例においては、多クラスSVM法にて学習した密度推定器を例示したが、多クラスSVM法に代えて、決定木型のランダムフォレスト法、多クラスのアダブースト(AdaBoost)法または多クラスロジスティック回帰法などにて学習した密度推定器など種々の密度推定器とすることができる。
或いは識別型のCNN(Convolutional Neural Network)を用いた密度推定器とすることもできる。
(5)上記各実施形態およびその各変形例においては、密度推定器が推定する背景以外の密度のクラスを3クラスとしたが、より細かくクラスを分けてもよい。
その場合、3段階(全身、上半身および頭部近傍)の単体特徴に代えて、クラス分けに対応したより細かい段階の単体特徴とし、クラスと単体特徴を対応付けて単体特徴記憶手段41に記憶させておくことができる。或いは、クラスと3段階の単体特徴を多対一で対応付けて単体特徴記憶手段41に記憶させておくこともできる。
(6)上記各実施形態およびその各変形例においては、多クラスに分類する密度推定器を例示したがこれに代えて、特徴量から密度の値(推定密度)を回帰する回帰型の密度推定器とすることもできる。すなわち、リッジ回帰法、サポートベクターリグレッション法、回帰木型のランダムフォレスト法またはガウス過程回帰(Gaussian Process Regression)などによって、特徴量から推定密度を求めるための回帰関数のパラメータを学習した密度推定器とすることができる。
或いは回帰型のCNNを用いた密度推定器とすることもできる。
これらの場合、密度クラスの値の代わりに連続値で出力される推定密度の値域を、単体特徴と対応付けて単体特徴記憶手段41に記憶させておく。
(7)第二および第四の実施形態およびその各変形例においては、各部分の重み係数を一定値とする例を示したが、各部分の重み係数を関数としてもよい。その場合、例えば重み係数記憶手段412b、412dは、各部分内の画素の位置を入力とし当該部分内の高さが高い位置ほど大きな重み係数を出力する関数を記憶し、評価値算出手段514b、514dは各部分内の画素の位置を当該関数に入力して画素ごとに重み付けを行う。
(8)上記各実施形態およびその各変形例においては、密度推定器が学習する特徴量および推定用特徴量としてGLCM特徴を例示したが、これらはGLCM特徴に代えて、局所二値パターン(Local Binary Pattern:LBP)特徴量、ハールライク(Haar-like)特徴量、HOG特徴量、輝度パターンなどの種々の特徴量とすることができ、またはGLCM特徴とこれらのうちの複数を組み合わせた特徴量とすることもできる。
(9)上記各実施形態およびその各変形例においては、密度推定手段50および物体位置判定手段51が1画素間隔で走査して処理を行う例を示したが、これらの走査を2画素以上の間隔を空けて行うことも可能である。
(10)上記各実施形態およびその各変形例においては、候補位置を推定密度が低密度、中密度または高密度の領域内から選んで設定する例を示したが、配置生成手段510a、配置生成手段510b、候補位置設定手段511cおよび候補位置設定手段511dのそれぞれは、変化領域内に限定して候補位置を設定することもできる。その場合、記憶部4は監視空間の背景画像を記憶する背景画像記憶手段(不図示)を備え、画像処理部5は、撮影画像と背景画像との差分処理を行って差分値が所定の差分閾値以上である画素の集まりを変化領域として抽出する、または撮影画像と背景画像との相関処理を行って相関値が所定の相関閾値以下である画素の集まりを変化領域として抽出する変化領域抽出手段(不図示)を備え、配置生成手段510a、配置生成手段510b、候補位置設定手段511cおよび候補位置設定手段511dのそれぞれは、変化領域抽出手段が抽出した変化領域を参照して候補位置を設定する。
なお、候補位置を設定する領域を限定する場合、配置生成手段510aおよび配置生成手段510bのそれぞれは、限定した領域の大きさに応じて配置数の上限個数を変更することができる。
このような候補位置を設定する領域の限定によって、撮影画像とモデル画像の偶発的な類似または背景に対する高い識別スコアの偶発的な算出を防止でき、物体位置の誤検出を低減できる。
(11)上記第一および第二の実施形態とその各変形例においては、配置生成手段510aおよび配置生成手段510bが反復の都度ランダムに配置を生成する例を示したが、反復の2回目以降に一回前の候補位置から微小にずらした候補位置に更新することで配置を生成してもよいし、反復の2回目以降に一回前の配置に対する類似度を参照してMCMC(Markov chain Monte Carlo)法により確率的に候補位置を探索する方法や山登り法により候補位置を逐次改善することで配置を生成してもよい。
(12)上記各実施形態およびその各変形例においては、注目している候補位置に人の上部1/3の形状に定められたモデルの投影領域または該形状に定められた窓を設定して当該領域内の推定密度を集計することによって、当該候補位置における推定密度を決定する例を示したが、処理量を削減するために当該領域に代えて候補位置の画素、候補位置の8近傍領域または16近傍領域などの小さな領域とすることもできる。或いは、確度を上げるために当該領域に代えて候補位置を代表位置とする単独の人の上部2/3の形状に定められたモデルの投影領域または該形状に定められた窓、または候補位置を代表位置とする単独の人の全身の形状に定められたモデルの投影領域または該形状に定められた窓などの大きな領域とすることもできる。
(13)第三の実施形態およびその各変形例において示した、識別スコアと対比する閾値は単体識別器ごとに異なる値とすることもできる。
(14)第三および第四の実施形態およびその変形例においては、線形SVM法により学習された単体識別器を例示したが、線形SVM法に代えてアダブースト(AdaBoost)法など、従来知られた各種の学習法を用いて学習した単体識別器とすることもできる。また、識別器の代わりにパターンマッチング器を用いることもでき、その場合の識別スコアは人の学習用画像から抽出した特徴量の平均パターンと入力画像の特徴量との内積などとなり、識別スコア算出関数は当該スコアを出力値とし入力画像の特徴量を入力値とする関数とすることができる。また単体識別器として識別型のCNNを用いても良い。
(15)第三および第四の実施形態およびその各変形例においては、単体識別器が学習する特徴量としてHOG特徴量を例示したが、これらはHOG特徴量に代えて、局所二値パターン特徴量、ハールライク特徴量、輝度パターンなどの種々の特徴量とすることができ、またはHOG特徴量とこれらのうちの複数を組み合わせた特徴量とすることもできる。
以上の各実施形態およびその変形例によれば、物体検出装置は、候補位置ごとの密度に応じ、当該密度により物体に生じ得る隠蔽状態に適した単体特徴(単独の物体の画像特徴)を用いて個々の物体の位置を判定するので、混雑状態の変化に伴う物体の隠蔽状態の変化と個々の物体の検出のために用いる部分の多寡に伴う検出精度の変動とのトレードオフを解消して精度の高い物体検出が可能となる。
そのうちの第一の実施形態およびその変形例に係る物体検出装置は、単体特徴を表す物体モデルを用い、候補位置ごとの密度に応じて物体モデルを切り替えることによって上記トレードオフを解消し、精度の高い物体検出を可能とする。
またそのうちの第二の実施形態およびその変形例に係る物体検出装置は、単体特徴を表す物体モデルおよび物体モデルの撮影画像に対する類似度を評価する際の重み係数を用い、候補位置ごとの密度に応じて重み係数を切り替えることによって上記トレードオフを解消し、精度の高い物体検出を可能とする。
またそのうちの第三の実施形態およびその変形例に係る物体検出装置は、単体特徴を学習した識別器を用い、候補位置ごとの密度に応じて識別器を切り替えることによって上記トレードオフを解消し、精度の高い物体検出を可能とする。
またそのうちの第四の実施形態およびその変形例に係る物体検出装置は、単体特徴を部分ごとに学習した識別器および識別器による部分ごとの部分評価値を総和する際の重み係数を用い、候補位置ごとの密度に応じて重み係数を切り替えることによって上記トレードオフを解消し、精度の高い物体検出を可能とする。