以下、図面を参照して、開示の技術に関する実施形態の一例を詳細に説明する。本実施形態では、対象物が人物である場合を例に説明する。
<第1の実施形態>
図1に示すように、第1の実施形態に係る画像解析装置10は、カメラAと、制御部14と、表示装置48とを備えている。
カメラAは、例えば監視カメラとして所定の箇所に設置され、所定の箇所における動画像を逐次撮像する。本実施形態では、カメラAが周辺領域を俯瞰するように設置されている場合を例に説明する。
制御部14は、人物検出部16と、検出結果記憶部18と、人物追跡部20と、追跡結果記憶部22と、統合部24と、統合結果記憶部26と、人物方向決定部28と、重なり判定部32と、向き重なり結果記憶部30とを備えている。また、制御部14は、他カメラ検出結果取得部34と、他カメラ検出結果記憶部36と、対応付け候補決定部38と、特徴分布生成部40と、特徴選択部42と、処理順番決定部44と、対応付け部46とを備えている。特徴分布生成部40及び特徴選択部42は、開示の技術の決定部の一例であり、対応付け部46は開示の技術の特定部の一例である。
図2に、本実施形態の画像解析装置10の処理を説明するための説明図を示す。画像解析装置10は、カメラAによって撮像されたフレーム画像に含まれる人物領域の各々と、カメラAとは異なる他カメラBによって撮像されたフレーム画像に含まれる人物領域の各々とを対応付ける。
異なるカメラによって撮像された動画像中の人物領域を対応付ける際、各人物領域から適切な特徴量が抽出されないことにより、人物領域同士を対応付けられない場合がある。
そこで、本実施形態の画像解析装置10は、人物領域を対応付ける際に、複数の画像の各々から検出された人物領域の状態に応じて、人物領域の対応付けに使用する特徴量の種類を決定する。そして、本実施形態の画像解析装置10は、人物領域の各々から抽出され、かつ人物領域の対応付けに使用すると決定された種類の特徴量の一致度に応じて、複数の画像の各々のうちの対応する人物領域を特定する。
具体的には、画像解析装置10は、カメラAによって撮像された動画像の各フレーム画像の人物領域が示す人物の向きと、他のカメラBによって撮像された動画像の各フレーム画像の人物領域が示す人物の向きとに応じて特徴量の種類を選択する。本実施形態では、人物領域の上半身領域の色、人物領域の下半身領域の色、人物領域の頭部領域の色、及び人物領域の靴領域の色を特徴量として用いる場合を例に説明する。
例えば、図2に示されるように、他のカメラBによって撮像されたフレーム画像の人物領域の人物JB1の向きと、カメラAによって撮像されたフレーム画像の人物領域の各人物JA1,JA2,JA3,JA4,JA5の向きとに応じて、特徴量の種類を選択する。図2に示される例では、画像解析装置10は、人物JB1の向きと人物JA2の向きとが異なるため、人物JA2の頭部領域の特徴量及び上半身領域の特徴量については抽出せずに、下半身領域及び靴領域の特徴量を抽出する。画像解析装置10は、1つのフレーム画像から検出された複数の人物領域の各々から抽出された特徴量の各々を、特徴量の種類毎に特徴空間へ投影して、種類毎に特徴量の分布を生成する。例えば、画像解析装置10は、図2に示すように、人物領域の上半身領域の色の特徴量の分布F1、人物領域の下半身領域の色の特徴量の分布F2、人物領域の頭部領域の色の特徴量の分布F3、及び人物領域の靴領域の色の特徴量の分布F4を生成する。各種類の特徴量の分布における1点は、1つの人物領域から抽出された該当の種類の特徴量に対応する。
また、本実施形態では、人物領域を対応付ける際に、カメラAによって撮像された動画像の各フレーム画像の人物領域の重なりに応じて、特徴量の種類を選択する。
例えば、図2に示される例では、画像解析装置10は、人物JA3の人物領域の下半身領域に重なりが存在するため、下半身領域の特徴量については抽出せずに、上半身領域、頭髪領域、及び靴領域の特徴量を抽出する。また、画像解析装置10は、人物JA4の人物領域の頭部領域に重なりが存在するため、頭部領域の特徴量については抽出せずに、上半身領域、下半身領域、及び靴領域の特徴量を抽出する。
カメラAによって撮像された動画像を解析する画像解析装置10によって生成された特徴量の分布は、他のカメラBによって撮像された動画像を解析する画像解析装置(図示省略)へ送信され、人物領域の対応付けに用いられる。
以下、本実施形態の画像解析装置10の構成について具体的に説明する。
人物検出部16は、カメラAによって撮像された動画像の各フレーム画像から人物領域を検出する。例えば、人物検出部16は、特許文献(特開2013‐117865号公報)に記載の手法を用いて、動画像の各フレーム画像から人物領域を検出する。
図3に、人物検出部16における人物領域の検出例を説明するための説明図を示す。図3に示されるように、人物検出部16は、時刻t−1のフレーム画像It−1と時刻tのフレーム画像Itとが入力された場合、時刻t−1のフレーム画像It−1と時刻tのフレーム画像Itとの間の背景差分Difを求める。
次に、人物検出部16は、背景差分Difに基づいて人物領域候補Caを特定する。次に、人物検出部16は、人物領域候補Caを、正解の人物領域から予め学習された識別器へ入力し、人物領域候補Caが人物領域であるか否かを表す判定結果を得る。そして、人物検出部16は、人物領域であると判定された人物検出結果Reを得る。
そして、人物検出部16は、人物領域と判定された領域の検出枠に対して人物領域IDを付与する。そして、人物検出部16は、人物領域ID、人物領域の検出枠内の画像情報、人物領域の検出枠の左上のx座標、人物領域の検出枠の左上のy座標、人物領域の検出枠の幅、及び人物領域の検出枠の高さを、人物検出結果とする。そして、人物検出部16は、人物検出結果を検出結果記憶部18へ格納する。
検出結果記憶部18には、人物検出部16によって検出された人物検出結果が格納される。人物検出結果は、例えば、図4に示されるように、テーブルの形式で格納される。図4に示すテーブルには、人物領域が検出されたフレーム画像の画像ID及びそのフレーム画像の撮像時刻に対応付けて、人物検出部16で検出された人物検出結果が格納される。
人物追跡部20は、各フレーム画像における人物領域の位置に応じて、同一人物の人物領域を追跡する。
図5に、同一人物の追跡処理を説明するための説明図を示す。図5に示されるように、人物追跡部20は、時刻t−1のフレーム画像It−1から検出された人物領域を、追跡に用いるテンプレートとして設定する。図5では、テンプレートT1とテンプレートT2とを設定した例を示している。
そして、人物追跡部20は、時刻tのフレーム画像Itから、テンプレートT1と類似した人物領域を、テンプレートマッチングにより特定する。また、人物追跡部20は、時刻tのフレーム画像Itから、テンプレートT2と類似した人物領域を、テンプレートマッチングにより特定する。テンプレートマッチングを行う際には、例えば、以下の式(1)に示される正規化相互相関関数R(x,y)を類似度として用いることができる。この場合、人物追跡部20は、時刻tのフレーム画像の領域のうち、正規化相互相関関数R(x,y)が閾値より大きい領域を人物領域として特定する。そして、時刻tのフレーム画像の人物領域と同一であると判定された、時刻tのフレーム画像の人物領域に対して、時刻tのフレーム画像の人物領域の人物領域IDと同一の人物領域IDを付与する。
(1)
なお、上記式(1)における、T(x’,y’)はテンプレート内の画素(x’,y’)の画素値を表し、hはテンプレートの高さを表し、wはテンプレートの幅を表し、Iは時刻tのフレーム画像を表す。(x,y)はフレーム画像の画素のxy座標上の位置を表す。
これにより、時刻t−1のフレーム画像と時刻tのフレーム画像とから同一の人物領域が特定される。そして、人物追跡部20は、追跡結果を追跡結果記憶部22へ格納する。
追跡結果記憶部22には、人物追跡部20によって得られた追跡結果が格納される。追跡結果は、例えば、図6に示されるように、テーブルの形式で格納される。図6に示すテーブルには、人物領域ID、人物領域の検出枠内の画像情報、人物領域の検出枠の左上のx座標、人物領域の検出枠の左上のy座標、人物領域の検出枠の幅、及び人物領域の検出枠の高さが対応付けられて格納される。図6のテーブルに示される網掛け部分のように、異なる時刻において同一の人物であると判定された人物領域については、同一の人物領域IDが付与される。
統合部24は、検出結果記憶部18に格納された検出結果と、追跡結果記憶部22に格納された追跡結果とを統合する。人物領域の検出結果及び人物領域の追跡結果の何れか一方による検出処理では、人物領域の検出漏れが発生する場合がある。そのため、本実施形態では、人物検出部16による人物領域の検出処理と、人物追跡部20による追跡処理とを組み合わせることにより、人物領域を精度良く特定する。
具体的には、統合部24は、各フレーム画像について、検出結果記憶部18に格納された検出結果のうちの人物領域の検出枠と、追跡結果記憶部22に格納された追跡結果のうちの人物領域の検出枠との間の重複する領域に応じて、検出結果と追跡結果とを統合する。
図7に、検出結果と追跡結果との統合を説明するための説明図を示す。図7に示されるように、時刻tのフレーム画像It内において、検出結果の検出枠KRと追跡結果の検出枠TRとの間の重複率が閾値より大きい場合には、それらの領域は同一人物であるとして、検出結果と追跡結果とを統合する。本実施形態では、重複率が閾値より大きい場合には、追跡結果に格納されている情報を優先する。
一方、図7に示されるように、検出結果の検出枠KRと追跡結果の検出枠TRとの間の重複がない場合(図7の例では、追跡結果が存在しない場合)には、新たに出現した人物に対応する人物領域であるとして、その人物が検出された検出枠に対応する人物領域とする。そして、統合部24は、統合結果を統合結果記憶部26に格納する。
統合結果記憶部26には、統合部24の統合処理によって得られた統合結果が格納される。統合結果としては、例えば、上記図4又は上記図6に示されるようなテーブルの形式の情報が格納される。
人物方向決定部28は、統合結果記憶部26に格納された、各フレーム画像間で対応付けられた同一人物の人物領域の各々に基づいて、各人物領域の移動方向を推定する。そして、人物方向決定部28は、同一人物の人物領域の各々の移動方向に基づいて、各人物領域の向きを特定する。なお、本実施形態では、画像における座標系は図8に示されるように設定される。また、本実施形態では、人物は、カメラの撮像範囲の奥行き方向の手前側又は奥側に向かって移動する場合を例に説明する。したがって、画像上での人物の移動方向はy軸方向に対応する。
具体的には、人物方向決定部28は、統合結果記憶部26に格納された統合結果から各時刻のフレーム画像の各人物領域を読み出す。そして、人物方向決定部28は、人物領域IDが同一である人物領域の各々について、時刻t−1のフレーム画像の人物領域のy座標値をp(t−1)とし、時刻tにおける人物領域のy座標値をp(t)とする。また、人物方向決定部28は、以下の式(2)〜式(4)に応じて、人物領域に映る人物の移動方向を判定する。そして、人物方向決定部28は、人物領域に映る人物の移動方向に応じて、人物の向きを判定する。
p(t)−p(t−1)<0 (2):人物は後ろ向き
p(t)−p(t−1)>0 (3):人物は前向き
p(t)−p(t−1)=0 (4):時刻t−1のフレーム画像で判定された向きと同じ向き
人物方向決定部28は、上記式(2)が満たされる場合、人物領域はフレーム画像上で上方向へ移動しており、人物領域に映る人物は奥側に向かって移動していることを表しているため、人物領域に映る人物は後ろ向きであると判定する。
また、人物方向決定部28は、上記式(3)が満たされる場合、人物領域はフレーム画像上で下方向へ移動しており、人物領域に映る人物は手前に向かって移動していることを表しているため、人物領域に映る人物は前向きであると判定する。
また、人物方向決定部28は、上記式(4)が満たされる場合、人物領域は、前時刻t−1からy座標の変化がないため、ここでは、前時刻t−1の方向と同じ向きであると判定する。そして、人物方向決定部28は、各人物領域について決定された人物領域の向きを、向き重なり結果記憶部30へ格納する。
重なり判定部32は、統合結果記憶部26に格納された統合結果に基づいて、各人物領域に対し、人物領域同士の重なりが存在するか否かを判定する。図9に、人物領域同士の重なりを説明するための説明図を示す。
図9に示されるように、人物領域JAの検出枠KAのx座標の最小値をx1s、x座標の最大値をx1e、人物領域JAの検出枠KAのy座標の最小値をy1s、最大値をy1eとする。また、人物領域JBの検出枠KBのx座標の最小値をx2s、x座標の最大値をx2e、人物領域JBの検出枠KBのy座標の最小値をy2s、最大値をy2eとする。この場合、重なり判定部32は、以下の式(5)〜(12)に応じて、人物領域同士で重なりが生じているか否かを判定する。
x1s<x2s<x1e (5)
x1s<x2e<x1e (6)
y1s<y2s<y1e (7)
y1s<y2e<y1e (8)
x2s<x1s<x2e (9)
x2s<x1e<x2e (10)
y2s<y1s<y2e (11)
y2s<y1e<y2e (12)
重なり判定部32は、上記式(5)及び上記式(6)の少なくとも一方を満たし、かつ上記式(7)及び上記式(8)の少なくとも一方を満たす場合には、人物領域JAと人物領域JBとの間で重なりが生じていると判定する。また、重なり判定部32は、上記式(9)及び上記式(10)の少なくとも一方を満たし、かつ上記式(11)及び上記式(12)の少なくとも一方を満たす場合には、人物領域JAと人物領域JBとの間で重なりが生じていると判定する。そして、重なり判定部32は、重なりの判定結果を、向き重なり結果記憶部30へ格納する。
向き重なり結果記憶部30には、人物方向決定部28によって得られた各人物領域の向きの情報と、重なり判定部32によって得られた各人物領域の重なりの情報が格納される。なお、人物領域のうちの重なりが生じている領域の4隅座標が、重なりの情報として格納される。向き重なり結果記憶部30には、例えば、図10に示されるようなテーブルの形式の情報が格納される。図10に示されるように、向き重なり結果記憶部30のテーブルには、統合結果記憶部26に格納されたテーブルに、人物領域の向きの情報と人物領域の重なりの情報とが追加される。
他カメラ検出結果取得部34は、カメラAとは異なるカメラを表す他カメラBによって撮像された動画像の各フレーム画像の人物領域の情報を取得する。他カメラ検出結果取得部34によって取得される情報は、向き重なり結果記憶部30に格納された情報と同様の情報である。また、他カメラ検出結果取得部34によって取得される情報は、他カメラBの動画像を解析する画像解析装置(図示省略)によって得られた情報である。
他カメラ検出結果記憶部36には、他カメラ検出結果取得部34によって取得され、向き重なり結果記憶部30に格納されたテーブルと同様の形式の情報が格納される。なお、以下では、カメラAによって撮像された動画像の各フレーム画像に含まれる人物領域を人物領域X、他カメラBによって撮像された動画像の各フレーム画像に含まれる人物領域を対応付け候補Yとする。
対応付け候補決定部38は、向き重なり結果記憶部30に格納された、新たに出現した人物に対応する人物領域Xを逐次読み出す。次に、対応付け候補決定部38は、読み出した人物領域Xの各々について、人物領域Xを含むフレーム画像の撮像時刻から、過去の所定の時間範囲内に存在する他カメラ検出結果記憶部36の人物領域を、人物領域Xの対応付け候補Yとして設定する。
図11に、対応付け候補決定部38の処理を説明するための説明図を示す。図11に示されるように、例えば、人物JA1がカメラAによって新たに撮像された場合を例に考える。この場合、人物JA1がカメラAによって撮像された時刻tから所定の時間範囲range内に、カメラBによって撮像された人物領域JB1,JB2,JB3,及びJB4が人物JA1の同一人物候補であるとして、対応付け候補Yとして設定される。なお、1つの人物領域IDは、1つの人物領域X1に対応する。
特徴分布生成部40は、人物領域の状態である、人物領域の向き及び人物領域内の重なりに応じて、人物領域の対応付けに使用する特徴量の種類を決定する。具体的には、特徴分布生成部40は、人物領域の重なりの領域とは異なる領域から抽出される特徴量を、対象物領域の対応付けに使用する特徴量として決定する。また、特徴分布生成部40は、一方の人物領域と他方の人物領域との向きが同一でない場合には、人物領域の頭部および上半身とは異なる領域から抽出される特徴量を、人物領域の対応付けに使用する特徴量として決定する。本実施形態では、特徴分布生成部40は、人物領域の上半身領域の色、人物領域の下半身領域の色、人物領域の靴領域の色、及び人物領域の頭髪領域の色を、特徴量として抽出する。
そのため、特徴分布生成部40は、人物領域Xと対応付け候補Yとのペアの各々について、向き重なり結果記憶部30に格納された人物領域Xの向きと対応付け候補Yとの向き、及び人物領域Xの重なりに基づき、対応付けに使用する特徴量の種類を決定する。
具体的には、特徴分布生成部40は、以下の表に従って、各人物領域から特徴量を抽出する。なお、所定時間範囲内の複数時刻のフレーム画像の各々に同じ人物領域IDの人物領域が存在する場合、最新の時刻のフレーム画像の人物領域Xから特徴量を抽出する。
特徴分布生成部40は、人物領域Xの向きと対応付け候補Yとの向きとが一致し、かつ人物領域X及び対応付け候補Y内に重なりが存在しない場合には、人物領域X及び対応付け候補Yから、全ての種類の特徴量を抽出する。
また、特徴分布生成部40は、人物領域Xの向きと対応付け候補Yの向きとが異なり、かつ人物領域X及び対応付け候補Y内に重なりが存在しない場合には、人物領域X及び対応付け候補Yから、下半身領域の特徴量及び靴領域の特徴量を抽出する。
また、特徴分布生成部40は、人物領域Xの向きと対応付け候補Yの向きとが一致し、かつ人物領域X及び対応付け候補Yの少なくとも一方内に重なりが存在する場合には、人物領域X及び対応付け候補Yから、重なりが存在しない領域の特徴量を抽出する。
また、特徴分布生成部40は、人物領域Xの向きと対応付け候補Yの向きとが一致せず、かつ人物領域X及び対応付け候補Yの少なくとも一方内に重なりが存在する場合、予め設定された領域の特徴量を抽出する。具体的には、特徴分布生成部40は、下半身領域の特徴量及び靴領域の特徴量の少なくとも一方の特徴量でありかつ重なりが存在しない領域の特徴量を抽出する。
また、特徴分布生成部40は、各対応付け候補Yから抽出された各種類の特徴量の分布を生成する。特徴分布生成部40は、1つの対応付け候補Yから抽出された1つの種類の特徴量が1つの点となるように、各種類の特徴量の分布を生成する。そして、特徴分布生成部40は、各種類の特徴量の分布の分散を計算する。
特徴選択部42は、人物領域の状態である、複数の人物領域の各々から抽出される特徴量の分布の状態に応じて、人物領域の対応付けに使用する特徴量の種類を更に決定する。具体的には、特徴選択部42は、複数の人物領域の各々について、複数の人物領域の各々から抽出される特徴量の分散に応じて、人物領域の対応付けに使用する特徴量の種類を決定する。
より詳細には、特徴選択部42は、特徴分布生成部40によって計算された特徴量の分布の分散が閾値よりも大きい種類の特徴量を、対応付けに使用する特徴量として選択する。特徴量の分布の分散が大きいほど、特徴量の分布内において、各人物領域の特徴量がばらばらに配置されているため、人物領域の対応付けに適していると考えられる。そのため、特徴選択部42は、特徴量の分布の分散が閾値よりも大きい種類の特徴量を、対応付けに使用する特徴量として選択する。
処理順番決定部44は、人物領域同士の照合の順番を決定する。具体的には、処理順番決定部44は、人物領域から抽出される複数の特徴量の分散に応じて、複数の人物領域の対応付けの順番を設定する。例えば、処理順番決定部44は、対応付け候補Y毎に、複数時刻分の各フレーム画像から抽出された各種類の特徴量の分布を生成し、人物領域の対応付けに使用することが決定された種類の特徴量のばらつきが少ない対応付け候補Yから順に照合を行う。ここで、ばらつきが少ないとは、各フレーム画像の人物領域から抽出される特徴量の分散が小さいことをいう。処理順番決定部44によって決定された順番に応じて、人物領域Xと対応付け候補Yとのペアの各々についての照合が行われる。
図12に、処理順番決定部44の処理を説明するための図を示す。図12に示されるように、人物A1と人物B1とを照合し、人物A1と人物B2とを照合する場合を例に説明する。図12に示される例では、各フレーム画像から検出された人物B1の対応付け候補から抽出される特徴量の分布は、上半身領域の特徴量の分布FP1、下半身領域の特徴量の分布FP2、靴領域の特徴量の分布FP3、及び頭髪領域の特徴量の分布FP4である。各特徴量の分布において、1つの点は1つのフレーム画像の対応付け候補から抽出された1つの種類の特徴量を表す。
特徴選択部42による特徴量の種類の選択の結果、上半身領域の特徴量を用いて照合が行われると決定された場合、処理順番決定部44は、人物B1の上半身領域の特徴量の分布F1の分散と、人物B2の上半身領域の特徴量の分布F1の分散とを比較する。そして、処理順番決定部44は、上半身の特徴量の分布の分散が小さい方の人物B2と、人物A1との照合が先に行われるように順番を設定する。各時刻のフレーム画像の対応付け候補Yから抽出された特徴量の分布の分散が小さいほど、安定して特徴量が抽出されていると考えることができる。そのため、処理順番決定部44は、各時刻のフレーム画像の対応付け候補Yから抽出された特徴量の分布の分散が小さい対応付け候補Yほど先に処理が行われるように設定する。図12に示される例では、照合の順番は、人物A1と人物B2との照合が行われた後に、人物A1と人物B1との照合が行われる。
対応付け部46は、処理順番決定部44によって決定された照合の順番に従って、特徴選択部42によって選択された種類の特徴量に基づいて、人物領域Xと対応付け候補Yとの間の対応付けを行う。
具体的には、対応付け部46は、以下の式(13)に従って、人物1の色の特徴量(R1,G1,B1)と人物2の色の特徴量(R2,G2,B2)との間の相関値を求める。また、対応付け部46は、以下の式(14)に従って、人物1の色の特徴量(R1,G1,B1)と人物2の色の特徴量(R2,G2,B2)との間の距離を求める。そして、対応付け部46は、例えば、人物領域間の相関値が閾値より大きく、かつ人物領域間の距離が閾値より小さい場合に、人物1と人物2とを対応付ける。
(13)
(14)
表示装置48は、制御部14によって出力された、人物領域同士の対応付け結果を表示する。
画像解析装置10の制御部14は、例えば、図13に示すコンピュータ50で実現することができる。コンピュータ50はCPU51、一時記憶領域としてのメモリ52、及び不揮発性の記憶部53を備える。また、コンピュータ50は、表示装置48及び入力装置等(図示省略)が接続される入出力interface(I/F)54、並びに記録媒体59に対するデータの読み込み及び書き込みを制御するread/write(R/W)部55を備える。また、コンピュータ50は、インターネット等のネットワークに接続されるネットワークinterface(I/F)56を備える。CPU51、メモリ52、記憶部53、入出力装置54、R/W部55、及びネットワークI/F56は、バス57を介して互いに接続される。
記憶部53は、Hard Disk Drive(HDD)、Solid State Drive(SSD)、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部53には、コンピュータ50を画像解析装置10として機能させるための画像解析プログラム60が記憶されている。画像解析プログラム60は、人物検出プロセス63と、人物追跡プロセス64と、統合プロセス65と、人物方向決定プロセス66と、重なり判定プロセス67と、他カメラ検出結果取得プロセス68と、対応付け候補決定プロセス69と、特徴分布生成プロセス70とを有する。また、画像解析プログラム60は、特徴選択プロセス71と、処理順番決定プロセス72と、対応付けプロセス73とを有する。また、記憶部53は、検出結果記憶部18と、追跡結果記憶部22と、統合結果記憶部26と、向き重なり結果記憶部30と、他カメラ検出結果記憶部36とを構成する情報が記憶される情報記憶領域74を有する。
CPU51は、画像解析プログラム60を記憶部53から読み出してメモリ52に展開し、画像解析プログラム60が有するプロセスを順次実行する。CPU51は、人物検出プロセス63を実行することで、図1に示す人物検出部16として動作する。また、CPU51は、人物追跡プロセス64を実行することで、図1に示す人物追跡部20として動作する。また、CPU51は、統合プロセス65を実行することで、図1に示す統合部24として動作する。また、CPU51は、人物方向決定プロセス66を実行することで、図1に示す人物方向決定部28として動作する。また、CPU51は、重なり判定プロセス67を実行することで、図1に示す重なり判定部32として動作する。また、CPU51は、他カメラ検出結果取得プロセス68を実行することで、図1に示す他カメラ検出結果取得部34として動作する。また、CPU51は、対応付け候補決定プロセス69を実行することで、図1に示す対応付け候補決定部38として動作する。また、CPU51は、特徴分布生成プロセス70を実行することで、図1に示す特徴分布生成部40として動作する。また、CPU51は、特徴選択プロセス71を実行することで、図1に示す特徴選択部42として動作する。また、CPU51は、処理順番決定プロセス72を実行することで、図1に示す処理順番決定部44として動作する。また、CPU51は、対応付けプロセス73を実行することで、図1に示す対応付け部46として動作する。また、CPU51は、情報記憶領域74から情報を読み出して、検出結果記憶部18をメモリ52に展開する。また、CPU51は、情報記憶領域74から情報を読み出して、追跡結果記憶部22をメモリ52に展開する。また、CPU51は、情報記憶領域74から情報を読み出して、統合結果記憶部26をメモリ52に展開する。また、CPU51は、情報記憶領域74から情報を読み出して、向き重なり結果記憶部30をメモリ52に展開する。また、CPU51は、情報記憶領域74から情報を読み出して、他カメラ検出結果記憶部36をメモリ52に展開する。これにより、画像解析プログラム60を実行したコンピュータ50が、画像解析装置10として機能することになる。ソフトウェアである画像解析プログラム60を実行するCPU51はハードウェアである。
なお、画像解析プログラム60により実現される機能は、例えば半導体集積回路、より詳しくはApplication Specific Integrated Circuit(ASIC)等で実現することも可能である。
次に、本実施形態に係る画像解析装置10の作用について説明する。
まず、画像解析装置10のカメラAによって動画像が撮像され、他の画像解析装置(図示省略)から他カメラBによって撮像された動画像についての他カメラ検出結果が取得され始めると、画像解析装置10において、図14に示す処理が実行される。以下、各処理について詳述する。
ステップS100において、人物検出部16は、カメラAによって撮像された動画像を取得する。
次に、ステップS102において、人物検出部16は、上記ステップS100で取得された動画像の各フレーム画像から人物領域を検出する。ステップS102は、図15に示す処理によって実現される。
図15に示すステップS200において、人物検出部16は、各時刻のフレーム画像に対し、時刻t−1のフレーム画像と時刻tのフレーム画像との間の背景差分を求める。
ステップS202において、人物検出部16は、上記ステップS200で得られた背景差分に基づいて人物領域候補を特定する。次に、人物検出部16は、人物領域候補を、予め学習された識別器へ入力し、人物領域候補が人物領域であるか否かを表す判定結果を得る。
ステップS204において、人物検出部16は、上記ステップS202で人物領域であると判定された検出結果を、検出結果記憶部18へ格納する。
次に、図14のステップS104において、人物追跡部20は、各フレーム画像における人物領域に応じて、同一人物の人物領域を追跡する。ステップS104は、図16に示す処理によって実現される。図16の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS300において、人物追跡部20は、時刻t−1のフレーム画像内の人物領域の検出結果を検出結果記憶部18から読み込む。
ステップS301において、人物追跡部20は、上記ステップS300で読み込まれた時刻t−1のフレーム画像内の各人物領域から、1つの人物領域を設定する。
ステップS302において、人物追跡部20は、上記ステップS301で設定された人物領域の画像情報をテンプレートとして設定し、時刻tのフレーム画像に対してテンプレートマッチングを行い、時刻tのフレーム画像の各位置について類似度を算出する。
ステップS304において、人物追跡部20は、上記ステップS302で算出された類似度が最も高い位置を算出する。
ステップS306において、人物追跡部20は、上記ステップS304で算出された類似度が最も高い位置に基づいて、時刻t−1のフレーム画像内の人物領域の各々と、時刻tのフレーム画像内の人物領域の各々との間における同一の人物領域を特定する。そして、人物追跡部20は、同一であると判定された人物領域に対して、同一の人物領域IDを付与して、追跡結果記憶部22に格納する。
ステップS307において、人物追跡部20は、上記ステップS300で読み込まれた時刻t−1のフレーム画像内の全ての人物領域について、上記ステップS301〜ステップS306の処理を実行したか否かを判定する。上記ステップS300で読み込まれた時刻t−1のフレーム画像内の全ての人物領域について、上記ステップS301〜ステップS306の処理を実行した場合には、ステップS308へ進む。一方、上記ステップS301〜ステップS306の処理を実行していない人物領域が存在する場合には、ステップS301へ戻る。
ステップS308において、人物追跡部20は、検出結果記憶部18に格納された全ての時刻のフレーム画像について、上記ステップS300〜ステップS307の処理を実行したか否かを判定する。全ての時刻のフレーム画像について、上記ステップS300〜ステップS307の処理を実行した場合には、処理を終了する。上記ステップS300〜ステップS307の処理を実行していない時刻のフレーム画像が存在する場合には、ステップS300へ戻る。
次に、図14のステップS106において、統合部24は、上記ステップS102で検出結果記憶部18に格納された検出結果と、上記ステップS104で追跡結果記憶部22に格納された追跡結果とを統合する。ステップS106は、図17に示す処理によって実現される。図17の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS310において、統合部24は、検出結果記憶部18に格納された時刻tの検出結果を読み込む。
ステップS312において、統合部24は、追跡結果記憶部22に格納された時刻tの追跡結果を読み込む。
ステップS314において、統合部24は、上記ステップS310で読み込まれた時刻tのフレーム画像内の各人物領域から、1つの人物領域を設定する。
ステップS316において、統合部24は、上記ステップS314で設定された人物領域と、上記ステップS312で読み込まれた時刻tのフレーム画像内の人物領域との間の重複率を算出する。
ステップS318において、統合部24は、上記ステップS316で算出された重複率が閾値以上であるか否かを判定する。上記ステップS316で算出された重複率が閾値以上である場合には、ステップS320へ進む。一方、上記ステップS316で算出された重複率が閾値未満である場合には、ステップS321へ進む。
ステップS320において、統合部24は、上記ステップS314で設定された人物領域についての、検出結果と追跡結果とを統合して、統合結果記憶部26に格納する。
ステップS321において、統合部24は、上記ステップS314で設定された人物領域を、新たに出現した人物であるとして、統合結果記憶部26に格納する。
ステップS322において、統合部24は、上記ステップS310で読み込まれた時刻tのフレーム画像内の全ての人物領域について、上記ステップS314〜ステップS321の処理を実行したか否かを判定する。上記ステップS310で読み込まれた時刻tのフレーム画像内の全ての人物領域について、上記ステップS314〜ステップS321の処理を実行した場合には、ステップS324へ進む。一方、上記ステップS314〜ステップS321の処理を実行していない人物領域が存在する場合には、ステップS314へ戻る。
ステップS324において、統合部24は、検出結果記憶部18に格納された全ての時刻のフレーム画像について、上記ステップS310〜ステップS322の処理を実行したか否かを判定する。全ての時刻のフレーム画像について、上記ステップS310〜ステップS322の処理を実行した場合には、処理を終了する。上記ステップS310〜ステップS322の処理を実行していない時刻のフレーム画像が存在する場合には、ステップS310へ戻る。
次に、図14のステップS108において、人物方向決定部28は、上記ステップS106で統合結果記憶部26に格納された、各フレーム画像間で対応付けられた同一人物の人物領域の各々に基づいて、各人物領域の移動方向を推定する。そして、人物方向決定部28は、同一人物の人物領域の各々の移動方向に基づいて、各人物領域が示す人物の向きを特定する。ステップS108は、図18に示す処理によって実現される。図18の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS326において、人物方向決定部28は、統合結果記憶部26に格納された統合結果から時刻t−1の統合結果と時刻tの統合結果とを読み出す。
ステップS328において、人物方向決定部28は、上記ステップS326で読み出された時刻t−1のフレーム画像内の各人物領域から、1つの人物領域を設定する。また、人物方向決定部28は、時刻t−1のフレーム画像内で設定された人物領域の人物領域IDと同一の人物領域IDの人物領域を、上記ステップS326で読み出された時刻tのフレーム画像内の各人物領域から設定する。
ステップS330において、人物方向決定部28は、上記ステップS328で設定された時刻t−1の人物領域のy座標p(t−1)と、時刻tの人物領域のy座標p(t)とに基づいて、人物領域の画像上での移動方向に応じて、人物領域に映る人物の向きを算出する。そして、人物方向決定部28は、上記ステップS328で設定された人物領域に対して算出された向きを、向き重なり結果記憶部30へ格納する。
ステップS332において、人物方向決定部28は、上記ステップS326で読み込まれた時刻t−1のフレーム画像内の全ての人物領域について、上記ステップS328〜ステップS330の処理を実行したか否かを判定する。上記ステップS326で読み込まれた時刻t−1のフレーム画像内の全ての人物領域について、上記ステップS328〜ステップS330の処理を実行した場合には、ステップS334へ進む。一方、上記ステップS328〜ステップS330の処理を実行していない人物領域が存在する場合には、ステップS328へ戻る。
ステップS334において、人物方向決定部28は、統合結果記憶部26に格納された全ての時刻のフレーム画像について、上記ステップS326〜ステップS332の処理を実行したか否かを判定する。全ての時刻のフレーム画像について、上記ステップS326〜ステップS332の処理を実行した場合には、処理を終了する。上記ステップS326〜ステップS332の処理を実行していない時刻のフレーム画像が存在する場合には、ステップS326へ戻る。
次に、図14のステップS110において、重なり判定部32は、上記ステップS106で統合結果記憶部26に格納された統合結果に基づいて、人物領域同士の重なりが存在するか否かを判定する。ステップS110は、図19に示す処理によって実現される。図19の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS400において、重なり判定部32は、統合結果記憶部26に格納された統合結果から時刻tの統合結果を読み出す。
ステップS401において、重なり判定部32は、上記ステップS400で読み込まれた時刻tの統合結果のフレーム画像内の各人物領域から、1つの人物領域を設定する。
ステップS402において、重なり判定部32は、上記ステップS401で設定された人物領域とは異なる人物領域の位置情報を読み出す。
ステップS404において、重なり判定部32は、上記ステップS401で設定された人物領域の位置情報と、上記ステップS402で読み出された人物領域の位置情報との間で、重なりが存在するか否かを判定する。重なりが存在する場合には、ステップS406へ進む。一方、重なりが存在しない場合には、ステップS408へ進む。
ステップS406において、重なり判定部32は、上記ステップS401で設定された人物領域の位置情報と、上記ステップS402で読み込まれた人物領域の位置情報との間で、y座標の値が小さい方の人物領域に重なりが存在すると判定する。そして、重なり判定部32は、重なりが存在することを示す情報を、向き重なり結果記憶部30へ格納する。
ステップS408において、重なり判定部32は、上記ステップS401で設定された人物領域とは異なる全ての人物領域について、上記ステップS402〜ステップS406の処理を実行したか否かを判定する。上記ステップS401で設定された人物領域とは異なる全ての人物領域について、上記ステップS402〜ステップS406の処理を実行した場合には、ステップS410へ進む。一方、上記ステップS402〜ステップS406の処理を実行していない人物領域が存在する場合には、ステップS402へ戻る。
ステップS412において、重なり判定部32は、上記ステップS400で読み込まれた時刻tのフレーム画像内の全ての人物領域について、上記ステップS401〜ステップS408の処理を実行したか否かを判定する。上記ステップS400で読み込まれた時刻tのフレーム画像内の全ての人物領域について、上記ステップS401〜ステップS408の処理を実行した場合には、ステップS412へ進む。一方、上記ステップS401〜ステップS408の処理を実行していない人物領域が存在する場合には、ステップS401へ戻る。
ステップS412において、重なり判定部32は、統合結果記憶部26に格納された全ての時刻のフレーム画像について、上記ステップS400〜ステップS410の処理を実行したか否かを判定する。全ての時刻のフレーム画像について、上記ステップS400〜ステップS410の処理を実行した場合には、処理を終了する。上記ステップS400〜ステップS410の処理を実行していない時刻のフレーム画像が存在する場合には、ステップS400へ戻る。
次に図14に示すステップS112において、対応付け候補決定部38は、向き重なり結果記憶部30に格納された、新たに出現した人物に対応する人物領域Xの各々を逐次読み出す。そして、対応付け候補決定部38は、人物領域Xとの対応付け候補Yを、他カメラ検出結果記憶部36に格納された人物領域の各々から設定する。ステップS112は、図20に示す処理によって実現される。
ステップS500において、対応付け候補決定部38は、向き重なり結果記憶部30から人物領域Xを読み込む。なお、対応付け候補決定部38は、現時刻から過去の所定の時間区間内に、人物領域IDが1つしか存在しない人物領域を、新たな人物に対応する人物領域Xとして読み込む。
ステップS502において、対応付け候補決定部38は、上記ステップS500で読み込まれた人物領域Xを含むフレーム画像が撮像された時刻から、過去の所定時間区間内の人物領域を他カメラ検出結果記憶部36から読み出す。そして、対応付け候補決定部38は、他カメラ検出結果記憶部36から読み出された所定時間区間内の人物領域の各々を、対応付け候補Yとして設定する。
次に図14に示すステップS114において、特徴分布生成部40は、上記ステップS112で設定された対応付け候補Yと人物領域Xとのペアの各々について、人物領域の向き及び人物領域内の重なりに応じて、対応付けに使用する特徴量の種類を決定する。ステップS114は、図21に示す処理によって実現される。図21の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS600において、特徴分布生成部40は、上記ステップS112で得られた対応付け候補Yの各々から、1つの対応付け候補を設定する。
ステップS602において、特徴分布生成部40は、向き重なり結果記憶部30及び他カメラ検出結果記憶部36に格納されている情報に基づいて、人物領域X及び上記ステップS600で設定された対応付け候補Yに重なりが存在するか否かを判定する。人物領域X及び対応付け候補Yに重なりが存在しない場合には、ステップS604へ進む。一方、人物領域X及び対応付け候補Yの少なくとも一方に重なりが存在する場合には、ステップS608へ進む。
ステップS604において、特徴分布生成部40は、向き重なり結果記憶部30及び他カメラ検出結果記憶部36に格納されている情報に基づいて、上記ステップS600で設定された対応付け候補Yの向きと人物領域Xの向きとが同じであるか否かを判定する。上記ステップS600で設定された対応付け候補Yの向きと人物領域Xの向きとが同じである場合には、ステップS606へ進む。一方、上記ステップS600で設定された対応付け候補Yの向きと、人物領域Xの向きとが異なる場合には、ステップS608へ進む。
ステップS606において、特徴分布生成部40は、上記ステップS600で設定された対応付け候補Y及び人物領域Xから、全ての種類の特徴量を抽出する。
ステップS608において、特徴分布生成部40は、人物領域Xの向きと対応付け候補Yの向き及び人物領域Xの重なりと対応付け候補Yの重なりに応じて、対応付けに用いる特徴量の種類を決定し、決定された種類の特徴量を抽出する。具体的には、特徴分布生成部40は、人物領域Xの向きと対応付け候補Yの向きとが異なり、かつ人物領域X及び対応付け候補Yの何れにも重なりが存在しない場合には、下半身領域の特徴量及び靴領域の特徴量を抽出する。また、特徴分布生成部40は、人物領域Xの向きと対応付け候補Yの向きとが一致し、かつ人物領域X及び対応付け候補Yの何れか一方に重なりが存在する場合には、重なりが存在しない領域の特徴量を抽出する。また、人物領域Xの向きと対応付け候補Yの向きとが一致せず、かつ人物領域X及び対応付け候補Yの何れか一方に重なりが存在する場合、下半身領域の特徴量及び靴領域の特徴量の少なくとも一方の特徴量でありかつ重なりが存在しない領域の特徴量が抽出される。
ステップS610において、特徴分布生成部40は、全ての対応付け候補について、上記ステップS600〜ステップS608の処理を実行したか否かを判定する。全ての対応付け候補について、上記ステップS600〜ステップS608の処理を実行した場合には、ステップS612へ進む。一方、上記ステップS600〜ステップS608の処理を実行していない対応付け候補が存在する場合には、ステップS600へ戻る。
ステップS612において、特徴分布生成部40は、上記ステップS606又は上記ステップS608で抽出された対応付け候補Yの各々の特徴量の分布を生成する。そして、特徴分布生成部40は、複数の対応付け候補Yから抽出された各特徴量の分布の分散を算出する。
次に、図14に示すステップS116において、特徴選択部42は、上記ステップS114で抽出された特徴量の中から、人物領域同士の対応付けに使用する特徴量の種類を更に選択する。ステップS116は、図22に示す処理によって実現される。図22の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS700において、特徴選択部42は、上記ステップS112で得られた対応付け候補から、1つの対応付け候補を設定する。
ステップS702において、特徴選択部42は、ステップS700で対応付け候補から抽出された特徴量のうち、特徴量の分布の分散が最も大きい特徴量を、ステップS700で設定された対応付け候補と人物領域Xとの対応付けに使用する特徴量として選択する。
ステップS704において、特徴選択部42は、全ての対応付け候補について、上記ステップS700〜ステップS702の処理を実行したか否かを判定する。全ての対応付け候補について、上記ステップS700〜ステップS702の処理を実行した場合には、処理を終了する。一方、上記ステップS700〜ステップS702の処理を実行していない対応付け候補が存在する場合には、ステップS700へ戻る。
次に、図14に示すステップS118において、処理順番決定部44は、人物領域Xと対応付け候補Yとの照合の順番を決定する。ステップS118は、図23に示す処理によって実現される。図23の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS800において、処理順番決定部44は、上記ステップS116において対応付け候補毎に選択された特徴量を読み込む。
ステップS801において、処理順番決定部44は、1つの対応付け候補を設定する。
ステップS802において、処理順番決定部44は、上記ステップS800で読み込まれた対応付け候補毎の特徴量であって、かつ各時刻のフレーム画像の対応付け候補から得られる特徴量を取得する。そして、処理順番決定部44は、各時刻のフレーム画像の対応付け候補から得られる特徴量に基づいて、上記ステップS801で設定された対応付け候補の特徴量の分布の分散を算出する。
ステップS804において、処理順番決定部44は、全ての対応付け候補について、上記ステップS801〜ステップS802の処理を実行したか否かを判定する。全ての対応付け候補について、上記ステップS801〜ステップS802の処理を実行した場合には、ステップS806へ進む。一方、上記ステップS801〜ステップS802の処理を実行していない対応付け候補が存在する場合には、ステップS801へ戻る。
ステップS806において、処理順番決定部44は、上記ステップS802で算出された対応付け候補毎の特徴量の分布の分散に基づいて、照合の順番を決定する。処理順番決定部44は、分散の小さい対応付け候補については、分散の大きい対応付け候補よりも照合の順番が先になるように設定する。
次に、図14に示すステップS120において、対応付け部46は、上記ステップS118で決定された照合の順番に従って、上記ステップS116で選択された種類の特徴量を用いて人物同士の対応付けを行う。ステップS120は、図24の処理によって実現される。図24の処理は、各フレーム画像から検出された人物領域毎に実行される。
ステップS900において、対応付け部46は、人物領域Xの特徴量を取得する。
ステップS902において、対応付け部46は、上記ステップS118で決定された照合の順番に従って、1つの対応付け候補Yを設定する。
ステップS904において、対応付け部46は、上記ステップS902で設定された対応付け候補Yの特徴量であって、上記ステップS116で対応付け候補Yに対して選択された特徴量を取得する。
ステップS906において、対応付け部46は、上記ステップS900で取得した人物領域Xの特徴量と、上記ステップS904で取得した対応付け候補Yの特徴量とを照合して、照合の一致度を算出する。
ステップS908において、対応付け部46は、上記ステップS906で算出された対応付け候補の一致度が閾値以上であるか否かを判定する。上記ステップS906で算出された対応付け候補の一致度が閾値以上である場合には、ステップS912へ進む。一方、上記ステップS906で算出された対応付け候補の一致度が閾値未満である場合には、ステップS910へ進む。
ステップS910において、対応付け部46は、全ての対応付け候補について、上記ステップS902〜ステップS908の処理を実行したか否かを判定する。全ての対応付け候補について、上記ステップS902〜ステップS908の処理を実行した場合には、処理を終了する。一方、上記ステップS902〜ステップS908の処理を実行していない対応付け候補が存在する場合には、ステップS902へ戻る。
ステップS912において、対応付け部46は、他カメラ検出結果の人物領域と、上記ステップS902で設定された対応付け候補とを、同一人物として対応付ける。
ステップS122において、対応付け部46は、対応付け結果を結果として出力する。例えば、対応付け部46は、同一人物として対応付けられた人物領域IDを対応付け結果として出力する。
ステップS124において、制御部14は処理を続行するか否かを判定する。処理を続行する場合には、ステップS100へ戻り、処理を続行しない場合には処理を終了する。
以上説明したように、第1の実施形態に係る画像解析装置は、複数の画像の各々から検出された人物領域の状態に応じて、人物領域の対応付けに使用する特徴量の種類を決定する。そして、決定された種類の特徴量の一致度に応じて、複数の画像の各々のうちの対応する人物領域を特定する。これにより、人物領域同士の対応付けを精度良く行なうことができる。また、複数のカメラによって撮像された画像の各々から、人物領域の特徴量の一部が得られない場合であっても、同一の人物を特定することができる。
また、人物領域から正しく特徴が得られるかを事前に判定した上で、対応付けに用いる特徴を選択することで、対応付け候補が持つ特有の特徴量を用いることができるため、人物同士の正確な照合が可能となり、対応付け精度を向上させることができる。
<第2の実施形態>
次に、第2の実施形態について説明する。第2実施形態では、対応付け候補が含まれる過去のフレーム画像から、他カメラ検出結果の人物領域の向きと同一の向きの対応付け候補から得られる特徴量、及び重なりが存在しない対応付け候補から得られる特徴量を照合に用いる点が第1の実施形態と異なる。なお、第2の実施形態の構成は、第1の実施形態と同様の構成となるため、同一符号を付して説明を省略する。
第2の実施形態の特徴選択部42は、複数の人物領域の各々について、各時刻に撮像された複数のフレーム画像の各々から検出された人物領域の状態に応じて、人物領域の対応付けに使用する特徴量の種類を決定する。具体的には、第2の実施形態の特徴選択部42は、過去のフレーム画像に含まれる対応付け候補から、他カメラ検出結果の人物領域の向きと同一の向きの対応付け候補から得られる特徴量、及び重なりが存在しない対応付け候補から得られる特徴量を設定する。
図25に、第2の実施形態の特徴量の選択を説明するための図を示す。第2の実施形態では、対応付け候補Y1,Y2の過去のフレーム画像FY1,FY2から、人物領域X1と向きが異なる対応付け候補から抽出された特徴量を用いず、人物領域X1と向きが同一である対応付け候補の特徴量が用いられる。また、特徴選択部42は、対応付け候補Y1,Y2の過去のフレーム画像から得られた対応付け候補の各々のうち、重なりが存在する対応付け候補については特徴量を抽出せずに、重なりが存在しない対応付け候補から特徴量を抽出する。なお、過去のフレーム画像FY1,FY2は、対応付け候補を設定する際に用いられる所定の時間範囲range内のフレーム画像である。
これにより、対応付け候補の向きと他カメラ検出結果の人物領域の向きとが同一であり、かつ対応付け候補に重なりが存在しない特徴量が照合に用いられるため、精度良く対応付けを行うことができる。
次に、第2の実施形態に係る画像解析装置10の特徴選択部42の作用について説明する。図14に示すステップS116において、特徴選択部42は、ステップS114で抽出された特徴量の中から、人物領域同士の対応付けに使用する特徴量の種類を更に選択する。第2の実施形態のステップS116は、図26に示す処理によって実現される。
ステップS700において、特徴選択部42は、ステップS112で得られた対応付け候補から、1つの対応付け候補を設定する。
ステップS752において、特徴選択部42は、上記ステップS700で設定された対応付け候補が、過去のフレーム画像に存在するか否かを判定する。対応付け候補が、過去のフレーム画像に存在する場合には、ステップS754へ進む。一方、対応付け候補が、過去のフレーム画像に存在しない場合には、ステップS756へ進む。
ステップS754において、特徴選択部42は、上記ステップS700で設定された対応付け候補が含まれる過去のフレーム画像から、他カメラ検出結果の人物領域と向きが同一であって、かつ重なりが存在しない対応付け候補を探索する。
ステップS756において、特徴選択部42は、上記ステップS754で探索された対応付け候補から抽出された特徴量の各々のうち、ステップ612で算出された特徴量の分布の分散が最も大きい特徴量を、人物同士の対応付けに使用する特徴量として選択する。
ステップS704において、特徴選択部42は、全ての対応付け候補について、上記ステップS700〜ステップS756の処理を実行したか否かを判定する。全ての対応付け候補について、上記ステップS700〜ステップS756の処理を実行した場合には、処理を終了する。一方、上記ステップS700〜ステップS756の処理を実行していない対応付け候補が存在する場合には、ステップS700へ戻る。
以上説明したように、第2の実施形態に係る画像解析装置は、対応付け候補が含まれる過去のフレーム画像から、新たな人物領域の向きと同一の向きの対応付け候補から得られる特徴量、及び重なりが存在しない対応付け候補から得られる特徴量を照合に用いる。これにより、人物領域を精度良く対応付けることができる。
<第3の実施形態>
次に、第3の実施形態について説明する。第3実施形態では、対応付け候補の各々から抽出される特徴量の分布において、平均からのずれが大きい特徴量を持つ対応付け候補から照合を行う点が第1又は第2の実施形態と異なる。なお、第3の実施形態の構成は、第1の実施形態と同様の構成となるため、同一符号を付して説明を省略する。
第3の実施形態の処理順番決定部44は、複数の人物領域の各々について、複数の人物領域の各々から抽出される特徴量の分布の平均と、人物領域から抽出される特徴量との間のずれに応じて、人物領域の各々の対応付けの順番を設定する。具体的には、処理順番決定部44は、対応付け候補の各々から抽出される特徴量の分布において、平均からのずれが大きい特徴量を持つ対応付け候補から照合を行うように、照合の順番を設定する。
図27に、第3の実施形態の処理順番の設定を説明するための図を示す。図27に示される例では、各対応付け候補から抽出される特徴量の分布が示されている。特徴量の分布における1点が1つの対応付け候補から抽出された特徴量を表す。第3の実施形態に係る画像解析装置10の処理順番決定部44は、対応付け候補から抽出される特徴量の分布の平均からのずれに応じて、対応付け候補の照合の順番を設定する。図27に示される例では、人物領域Y2の特徴量の方が、人物領域Y1の特徴量よりも平均からずれているため、処理順番決定部44は、人物領域Y2の照合が人物領域Y1の照合よりも先に行われるように、照合の順番を設定する。平均からのずれが大きい特徴量を持つ対応付け候補は、他の対応付け候補と比較して特有の特徴を持っていることを表すため、高精度の照合を行うことができる可能性が高まるため、優先的に照合を行われる。
以上説明したように、第3の実施形態に係る画像解析装置は、複数の対応付け候補から得られる特徴量の分布の平均に基づいて、照合の順番を設定する。これにより、人物領域同士の特徴量の照合の処理量を軽減できる可能性が高まる。
なお、上記では、画像解析プログラム60が記憶部53に予め記憶(インストール)されている態様を説明したが、これに限定されない。開示の技術に係るプログラムは、CD−ROM、DVD−ROM、USBメモリ等の記録媒体に記録された形態で提供することも可能である。
次に、実施形態の変形例を説明する。
本実施形態では、対象物が人物である場合を例に説明したがこれに限定されるものではない。例えば、対象物としては、車両などの移動体や動物等であってもよい。
また、上記実施形態では、他カメラ検出結果として、他のカメラBから撮像された人物領域が送信される場合を例に説明したがこれに限定されるものではない。例えば、他カメラ検出結果として、対応付けに使用する選択特徴情報(例えば、上記特許文献2)が併せて送付されてもよい。この場合には、選択特徴情報を考慮して、カメラAによって撮像された人物領域と、他カメラ検出結果の人物領域とを対応付けることができる。
また、本実施形態の画像解析装置10は、特徴選択部42によって選択された人物領域毎の特徴量を、他の画像解析装置へ送信してもよい。この場合には、他の画像解析装置において、人物領域の向き及び重なりを考慮した対応付けが可能となる。また、同様に、画像解析装置10は、他の画像解析装置によって得られた人物領域の向き及び重なりに関する情報を取得し、人物領域の向き及び重なりを考慮した対応付けを行うこともできる。
以上の各実施形態に関し、更に以下の付記を開示する。
(付記1)
複数の画像の各々から検出された対象物領域の状態に応じて、前記複数の画像間における前記対象物領域の対応付けに使用する特徴量の種類を決定し、
前記対象物領域の各々から抽出された前記種類の前記特徴量の一致度に応じて、複数の画像の各々において対応する前記対象物領域を特定する、
処理をコンピュータに実行させる画像解析プログラム。
(付記2)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
前記対象物領域の状態である、前記対象物領域が示す対象物の向き及び前記対象物領域が示す前記対象物と該対象物とは異なる物体との間の重なりの少なくとも一方に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記1に記載の画像解析プログラム。
(付記3)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
異なる前記画像の各々から検出された前記対象物領域のペアの各々について、
前記対象物領域の少なくとも一方において前記重なりが含まれる場合には、前記重なりの領域とは異なる領域から抽出される前記特徴量を、前記対象物領域の対応付けに使用する特徴量として決定する、
付記2に記載の画像解析プログラム。
(付記4)
前記対象物領域としての人物領域の対応付けに使用する特徴量の種類を決定する際に、
複数の前記人物領域のペアの各々について、
一方の前記人物領域と他方の前記人物領域との向きが対応していない場合には、前記人物領域の上半身とは異なる領域から抽出される前記特徴量を、前記対象物領域の対応付けに使用する特徴量として決定する、
付記2又は付記3に記載の画像解析プログラム。
(付記5)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
複数の前記対象物領域の各々について、前記対象物領域の状態である、複数の前記対象物領域の各々から抽出される特徴量の分布の状態に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記1〜付記4の何れか1項に記載の画像解析プログラム。
(付記6)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
複数の前記対象物領域の各々について、各時刻に撮像された前記複数の画像の各々から検出された前記対象物領域の状態である、前記対象物領域が示す対象物の向き及び前記対象物領域が示す前記対象物と該対象物とは異なる物体との間の重なりの少なくとも一方に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記1〜付記5の何れか1項に記載の画像解析プログラム。
(付記7)
複数の画像の各々のうちの対応する前記対象物領域を特定する際に、
前記対象物領域の対応付けに使用する種類の特徴量の分散が小さい対象物領域から順に、他の画像から検出された対象物領域の特徴量との一致度を判定する、
付記1〜付記6の何れか1項に記載の画像解析プログラム。
(付記8)
複数の画像の各々のうちの対応する前記対象物領域を特定する際に、
複数の前記対象物領域の各々から抽出される特徴量の分布の平均と、前記対象物領域から抽出される特徴量との間のずれが大きい対象物領域から順に、他の画像から検出された対象物領域の特徴量との一致度を判定する、
付記1〜付記6の何れか1項に記載の画像解析プログラム。
(付記9)
複数の画像の各々から検出された対象物領域の状態に応じて、前記複数の画像間における前記対象物領域の対応付けに使用する特徴量の種類を決定し、
前記対象物領域の各々から抽出された前記種類の前記特徴量の一致度に応じて、複数の画像の各々において対応する前記対象物領域を特定する、
処理をコンピュータに実行させる画像解析方法。
(付記10)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
前記対象物領域の状態である、前記対象物領域が示す対象物の向き及び前記対象物領域が示す前記対象物と該対象物とは異なる物体との間の重なりの少なくとも一方に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記9に記載の画像解析方法。
(付記11)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
異なる前記画像の各々から検出された前記対象物領域のペアの各々について、
前記対象物領域の少なくとも一方において前記重なりが含まれる場合には、前記重なりの領域とは異なる領域から抽出される前記特徴量を、前記対象物領域の対応付けに使用する特徴量として決定する、
付記10に記載の画像解析方法。
(付記12)
前記対象物領域としての人物領域の対応付けに使用する特徴量の種類を決定する際に、
複数の前記人物領域のペアの各々について、
一方の前記人物領域と他方の前記人物領域との向きが対応していない場合には、前記人物領域の上半身とは異なる領域から抽出される前記特徴量を、前記対象物領域の対応付けに使用する特徴量として決定する、
付記10又は付記11に記載の画像解析方法。
(付記13)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
複数の前記対象物領域の各々について、前記対象物領域の状態である、複数の前記対象物領域の各々から抽出される特徴量の分布の状態に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記9〜付記12の何れか1項に記載の画像解析方法。
(付記14)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
複数の前記対象物領域の各々について、各時刻に撮像された前記複数の画像の各々から検出された前記対象物領域の状態である、前記対象物領域が示す対象物の向き及び前記対象物領域が示す前記対象物と該対象物とは異なる物体との間の重なりの少なくとも一方に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記9〜付記13の何れか1項に記載の画像解析方法。
(付記15)
複数の画像の各々のうちの対応する前記対象物領域を特定する際に、
前記対象物領域の対応付けに使用する種類の特徴量の分散が小さい対象物領域から順に、他の画像から検出された対象物領域の特徴量との一致度を判定する、
付記9〜付記14の何れか1項に記載の画像解析方法。
(付記16)
複数の画像の各々のうちの対応する前記対象物領域を特定する際に、
複数の前記対象物領域の各々から抽出される特徴量の分布の平均と、前記対象物領域から抽出される特徴量との間のずれが大きい対象物領域から順に、他の画像から検出された対象物領域の特徴量との一致度を判定する、
付記9〜付記14の何れか1項に記載の画像解析方法。
(付記17)
複数の画像の各々から検出された対象物領域の状態に応じて、前記複数の画像間における前記対象物領域の対応付けに使用する特徴量の種類を決定する決定部と、
前記対象物領域の各々から抽出された前記種類の前記特徴量の一致度に応じて、複数の画像の各々において対応する前記対象物領域を特定する特定部と、
を備える画像解析装置。
(付記18)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
前記対象物領域の状態である、前記対象物領域が示す対象物の向き及び前記対象物領域が示す前記対象物と該対象物とは異なる物体との間の重なりの少なくとも一方に応じて、前記対象物領域の対応付けに使用する特徴量の種類を決定する、
付記17に記載の画像解析装置。
(付記19)
前記対象物領域の対応付けに使用する特徴量の種類を決定する際に、
異なる前記画像の各々から検出された前記対象物領域のペアの各々について、
前記対象物領域の少なくとも一方において前記重なりが含まれる場合には、前記重なりの領域とは異なる領域から抽出される前記特徴量を、前記対象物領域の対応付けに使用する特徴量として決定する、
付記18に記載の画像解析装置。
(付記20)
複数の画像の各々から検出された対象物領域の状態に応じて、前記複数の画像間における前記対象物領域の対応付けに使用する特徴量の種類を決定し、
前記対象物領域の各々から抽出された前記種類の前記特徴量の一致度に応じて、複数の画像の各々において対応する前記対象物領域を特定する、
処理をコンピュータに実行させる画像解析プログラムを記憶した記憶媒体。