(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-11
(45)【発行日】2024-09-20
(54)【発明の名称】推定装置、推定方法、推定プログラム及び学習装置
(51)【国際特許分類】
G06T 7/00 20170101AFI20240912BHJP
G06N 20/00 20190101ALI20240912BHJP
【FI】
G06T7/00 350B
G06N20/00 130
(21)【出願番号】P 2020050053
(22)【出願日】2020-03-19
【審査請求日】2023-03-09
(73)【特許権者】
【識別番号】000108085
【氏名又は名称】セコム株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】弁理士法人はるか国際特許事務所
(72)【発明者】
【氏名】能上 絢香
【審査官】宮島 潤
(56)【参考文献】
【文献】特開2020-140295(JP,A)
【文献】Cong Zhang et al.,Cross-scene Crowd Counting via Deep Convolutional Neural Networks,CVPR2015,米国,IEEE,2015年,p.833-841,htpps://ieeexplore.org/document/7298684
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
G06V 40/20
G06F 18/00 - 18/40
G06N 3/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
画像に現れる検知対象についての存在度を
関数表現した存在度関数であって、
前記画像の各画素の位置及び
該位置で推定される前記検知対象のサイズをパラメータ
として有する所定の
確率分布である前記存在度関数
を前記画素ごとに算出し、
該画素ごとの前記存在度関数を全画素について足し合わせることにより前記画像における前記検知対象の存在度分布を生成する分布生成モデルであって、
前記画像に基づいて、前記画像における
前記各画素の位置が前記検知対象の位置
である尤度を推定する位置推定部と、
前記画像に基づいて、前記画像の各画
素での前記検知対象のサイズを推定するサイズ推定部と、
前記各画素の位置及び当
該位置での前記サイズ推定部による前記検知対象の推定サイズにより
該画素の前記存在度関数の前記パラメータの値を設定
することにより当該画素の前記存在度関数を算出し、前記位置推定部により推定された前記各画素の前記尤度により重み付けした該画素の前記存在度関数を全画素について足し合わせることにより前記存在度
分布を算出する存在度算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記存在度分布の正解データを用いた学習
により前記位置推定部及び前記サイズ推定部の学習パラメータの更新が行われた学習済みの
分布生成モデルを記憶する記憶手段と、
処理対象の画像を前記分布生成モデルに入力し、前記存在度分布を推定する推定手段と、
を備えたことを特徴とする推定装置。
【請求項2】
請求項
1に記載の推定装置において、
前記分布生成モデルは、前記存在度関数が互いに異なる複数の前記存在度算出部
であって、前記位置推定部及び前記サイズ推定部それぞれの出力がそれぞれに入力される複数の前記存在度算出部を含
み、
前記推定手段は、前記処理対象の画像を前記分布生成モデルに入力し、前記各存在度算出部にそれぞれ対応する複数の前記存在度分布を推定し、
前記分布生成モデルは更に、
学習用画像及び当該学習用画像に対し予め与えられた正解データである、複数の前記存在度関数それぞれに対応する複数の学習用存在度分布それぞれと、推定された複数の前記存在度分布それぞれと、の誤差が小さくなるように前記位置推定部及び前記サイズ推定部の学習パラメータの更新が行われたものである、
を特徴とする推定装置。
【請求項3】
請求項
1又は請求項
2に記載の推定装置において、
前記存在度関数は、正規分布
に基づく存在度関数、一様分布
に基づく存在度関数、又は矩形関数
に基づく存在度関数であること、を特徴とする推定装置。
【請求項4】
請求項
3に記載の推定装置において、
前記存在度関数は矩形関数に基づく存在度関数であり、
前記存在度分布に基づいて、前記画像における前記検知対象に対応する関心領域とそれ以外である非関心領域とを区別する二値画像を取得する二値画像取得手段と、
前記各画素の画素値に対し前記二値画像
における該画素に対応する画素の画素値を乗算するマスク処理を行
うことにより、前記非関心領域に属する前記
画素の位置を削除するマスク手段と、を有し、
前記存在度算出部は、前記パラメータの値に、前記マスク手段での削除後
に残った位置を用いること、
を特徴とする推定装置。
【請求項5】
画像における検知対象の存在度分布を生成する
学習モデルを学習する学習装置であって
、
前記画像に現れる検知対象についての存在度を
関数表現した存在度関数であって、
前記画像の各画素の位置及び
該位置で推定される前記検知対象のサイズをパラメータ
として有する所定の
確率分布である前記存在度関数
を前記画素ごとに算出し、
該画素ごとの前記存在度関数を全画素について足し合わせることにより前記画像における前記検知対象の存在度分布を生成する
前記学習モデルであって、
前記画像に基づいて、前記画像における
前記各画素の位置が前記検知対象の位置
である尤度を推定する位置推定部と、
前記画像に基づいて、前記画像の各画
素での前記検知対象のサイズを推定するサイズ推定部と、
前記各画素の位置及び当
該位置での前記サイズ推定部による前記検知対象の推定サイズにより
該画素の前記存在度関数の前記パラメータの値を設定
することにより当該画素の前記存在度関数を算出し、前記位置推定部により推定された前記各画素の前記尤度により重み付けした該画素の前記存在度関数を全画素について足し合わせることにより前記存在度
分布を算出する存在度算出部とを含んだ
前記学習モデルを記憶する学習モデル記憶手段と、
学習用画像及び当該学習用画像に対し予め与えられた前記存在度分布の正解データを記憶している学習用データ記憶手段と、
前記学習モデルに前記学習用画像を入力し、前記存在度算出部の出力に基づく前記存在度分布の前記正解データに対する誤差
が小さくなるように前記学習モデル
の前記位置推定部及び前記サイズ推定部の学習パラメータを更新する学習を行う学習手段と、
を有することを特徴とする学習装置。
【請求項6】
画像に現れる検知対象についての
存在度を関数表現した存在度関数であって、前記画像の各画素の位置及び該位置で推定される前記検知対象のサイズをパラメータとして有する所定の
確率分布である前記存在度関数
を前記画素ごとに算出し、
該画素ごとの前記存在度関数を全画素について足し合わせることにより前記画像における前記検知対象の
存在度分布を生成する分布生成モデルであって、
前記画像に基づいて、前記画像
における前記各画素の位置が前記検知対象の位置である尤度を推定する位置推定部と、前記画像に基づいて、前記画像の各画素での前記検知対象のサイズを推定するサイズ推定部と、前記各画素の位置及び当該位置での前記サイズ推定部による前記検知対象の推定サイズにより該画素の前記
存在度関数の
前記パラメータの値を設定
することにより当該画素の前記存在度関数を算出し、前記位置推定部により推定された前記各画素の前記尤度により重み付けした該画素の前記存在度関数を全画素について足し合わせることにより前記
存在度分布を算出する
存在度算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記
存在度分布の正解データを用いた学習
により前記位置推定部及び前記サイズ推定部の学習パラメータの更新が行われた学習済みの
分布生成モデルを用意するステップと、
処理対象の画像を前記分布生成モデルに入力し、前記
存在度分布を推定する推定ステップと、
を有することを特徴とする推定方法。
【請求項7】
画像における検知対象の
存在度分布を推定する処理をコンピュータに行わせる
推定プログラムであって、
当該コンピュータを、
前記画像に現れる検知対象についての
存在度を関数表現した存在度関数であって、前記画像の各画素の位置及び該位置で推定される前記検知対象のサイズをパラメータとして有する所定の
確率分布である前記存在度関数
を前記画素ごとに算出し、
該画素ごとの前記存在度関数を全画素について足し合わせることにより前記画像における前記検知対象の
存在度分布を生成する分布生成モデルであって、
前記画像に基づいて、前記画像
における前記各画素の位置が前記検知対象の位置である尤度を推定する位置推定部と、前記画像に基づいて、前記画像の各画素での前記検知対象のサイズを推定するサイズ推定部と、前記各画素の位置及び当該位置での前記サイズ推定部による前記検知対象の推定サイズにより該画素の前記
存在度関数の
前記パラメータの値を設定
することにより当該画素の前記存在度関数を算出し、前記位置推定部により推定された前記各画素の前記尤度により重み付けした該画素の前記存在度関数を全画素について足し合わせることにより前記
存在度分布を算出する
存在度算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記
存在度分布の正解データを用いた学習
により前記位置推定部及び前記サイズ推定部の学習パラメータの更新が行われた学習済みの
分布生成モデルを記憶する記憶手段、及び、
処理対象の画像を前記分布生成モデルに入力し、前記
存在度分布を推定する推定手段、
として機能させることを特徴とする推定プログラム。
【請求項8】
画像の各画素の位置が該画像に現れる検知対象の位置である尤度を推定する分布生成モデルであって、前記画像に基づいて、前記画像における前記検知対象の存在度分布を推定する存在度分布推定部と、前記画像に基づいて、前記各画素の位置での前記検知対象のサイズを推定するサイズ推定部と、前記各画素の位置を平均値とし、該位置での前記サイズ推定部による前記検知対象の推定サイズを標準偏差とする正規分布のラプラシアンフィルタを画素ごとに算出し、該画素ごとの正規分布のラプラシアンフィルタと、該画素ごとの前記存在度分布と、の内積を該画素における前記尤度として算出する位置推定部と、を含み、学習用画像及び当該学習用画像に対し予め与えられた前記尤度の正解データを用いた学習により前記存在度分布推定部及び前記サイズ推定部の学習パラメータの更新が行われた学習済みの分布生成モデルを記憶する記憶手段と、
処理対象の画像を前記分布生成モデルに入力し、該処理対象の画像の各画素の尤度を推定する推定手段と、
を備えたことを特徴とする推定装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像から検知対象の存在度などに関する画像内での分布を推定する技術、及び画像から当該分布を生成する分布生成モデルを学習させる技術に関する。
【背景技術】
【0002】
雑踏やイベント会場を撮影した画像を解析して混雑度合いや群衆を構成する人数を自動認識する研究が盛んに行われており、このようにして認識される情報はイベント警備を円滑に運用するための情報などとして期待される。
【0003】
下記非特許文献1には、画像を入力とし人の頭の位置と人の頭の密度マップ(density map)とを出力とする畳み込みニューラルネット―ワーク(CNN;Convolutional Neural Networks)を学習させて、群衆を画像解析する技術が記載されている。その学習に用いるデータは、群衆が撮影された学習用画像と、当該学習用画像において人の頭の領域それぞれの重心位置を示すデータと、人の頭の領域それぞれについてその重心位置を平均値としそのサイズに応じた分散を有する総和が1の2次元正規分布を足し合わせてなる密度マップとで構成される。
【0004】
非特許文献1に記載のCNNは、位置の出力と位置の学習データとの誤差を最小化するように学習され、また、密度マップの出力と密度マップの学習データとの誤差を最小化するように学習されていた。
【先行技術文献】
【非特許文献】
【0005】
【文献】H. Idrees, M. Tayyab, K. Athrey, D. Zhang, S. Maadeed, N. Rajpoot, and M. Shah, “Composition Loss for Counting, Density Map Estimation and Localization in Dense Crowds”, European Conference on Computer Vision(ECCV), Munich, Germany, 2018.
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来技術では、例えば頭の位置ではないことを示す出力がなされる画素に対して一定以上の密度が出力されるなど、誤出力が多い問題があった。
【0007】
これは、従来技術において位置の出力と密度の出力とが独立していることや位置及び密度の誤差がそれぞれに小さくなるように学習することと関連していると考えられる。すなわち、本来は頭の位置であるとの出力と密度についての出力とが共に高い値となるよう整合性をもった出力とすべきところ、従来技術においては両出力間の拘束が弱く、頭の位置であることを示す出力がなされる画素で低い密度を出力してしまう場合のあるモデル又は一定以上の密度が出力される画素で頭の位置ではないことを示す出力がなされてしまう場合のあるモデルが学習されると考えられる。
【0008】
また、このような問題は、さらに人の頭のサイズを加えた3パラメータ(位置、密度、サイズ)のうちの1つ以上を出力するモデルについても同様に生じ得る。
【0009】
本発明は、上記問題を鑑みてなされたものであり、画像から検知対象の目的量に関する画像内での分布、例えば密度マップ等である存在度分布を高精度に推定できる技術、及び画像から検知対象の当該分布を高精度に生成できる分布生成モデルを学習させる技術を提供することを目的とする。
【課題を解決するための手段】
【0010】
(1)本発明に係る推定装置は、画像に現れる検知対象についての目的量を、第1パラメータ及び第2パラメータを有する所定の目的量関数により算出し、前記画像における前記検知対象の目的量分布を生成する分布生成モデルであって、前記画像の各画素と対応する対応位置での前記第1パラメータを推定する第1パラメータ推定部と、前記対応位置での前記第2パラメータを推定する第2パラメータ推定部と、前記第1パラメータ推定部及び前記第2パラメータ推定部による推定値により前記目的量関数の前記第1パラメータ及び前記第2パラメータそれぞれの値を設定し前記目的量を算出する目的量算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記目的量分布の正解データを用いた学習が行われた学習済みのモデルを記憶する記憶手段と、処理対象の画像を前記分布生成モデルに入力し、前記目的量分布を推定する推定手段と、を備える。
【0011】
(2)他の本発明に係る推定装置は、画像に現れる検知対象についての存在度を、当該存在度が集中する領域の位置及びサイズをパラメータで設定できる所定の存在度関数により算出し、前記画像における前記検知対象の存在度分布を生成する分布生成モデルであって、前記画像における前記検知対象の位置を推定する位置推定部と、前記画像の各画素と対応する対応位置での前記検知対象のサイズを推定するサイズ推定部と、前記位置推定部による前記検知対象の推定位置及び当該推定位置での前記サイズ推定部による前記検知対象の推定サイズにより前記存在度関数の前記パラメータの値を設定し前記存在度を算出する存在度算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記存在度分布の正解データを用いた学習が行われた学習済みのモデルを記憶する記憶手段と、処理対象の画像を前記分布生成モデルに入力し、前記存在度分布を推定する推定手段と、を備える。
【0012】
(3)上記(2)に記載の推定装置において、前記分布生成モデルは、前記存在度関数が互いに異なる複数の前記存在度算出部を含む構成とすることができる。
【0013】
(4)上記(2),(3)に記載の推定装置において、前記存在度関数は、正規分布、一様分布、又は矩形関数である構成とすることができる。
【0014】
(5)上記(2)~(4)に記載の推定装置において、前記画像における前記検知対象に対応する関心領域とそれ以外である非関心領域とを区別する二値画像を取得する二値画像取得手段と、前記位置推定部による前記推定位置に対し前記二値画像を用いてマスク処理を行い、前記非関心領域に属する前記推定位置を削除するマスク手段と、を有し、前記存在度算出部は、前記パラメータの値に、前記マスク手段での削除後の前記推定位置を用いる構成とすることができる。
【0015】
(6)上記(2)~(5)に記載の推定装置において、前記存在度を算出する関数として、前記分布生成モデルの前記存在度関数とは別の所定の関数であって、前記存在度が集中する領域の位置及びサイズをパラメータで設定できる第2の存在度関数を記憶する手段を有し、前記推定手段は、処理対象の画像を前記分布生成モデルに入力し、前記位置推定部による前記推定位置及び当該推定位置での前記サイズ推定部による前記推定サイズにより前記第2の存在度関数の前記パラメータの値を設定して当該第2の存在度関数により前記存在度分布を推定する構成とすることができる。
【0016】
(7)本発明に係る学習装置は、画像における検知対象の存在度分布を生成する分布生成モデルを学習させる学習装置であって、前記分布生成モデルの学習モデルとして、前記画像に現れる前記検知対象についての存在度を、当該存在度が集中する領域の位置及びサイズをパラメータで設定できる所定の存在度関数により算出し、前記画像における前記検知対象の存在度分布を生成するモデルであって、前記画像における前記検知対象の位置を推定する位置推定部と、前記画像の各画素と対応する対応位置での前記検知対象のサイズを推定するサイズ推定部と、前記位置推定部による前記検知対象の推定位置及び当該推定位置での前記サイズ推定部による前記検知対象の推定サイズにより前記存在度関数の前記パラメータを設定し前記存在度を算出する存在度算出部とを含んだモデルを記憶する学習モデル記憶手段と、学習用画像及び当該学習用画像に対し予め与えられた前記存在度分布の正解データを記憶している学習用データ記憶手段と、前記学習モデルに前記学習用画像を入力し、前記存在度算出部の出力に基づく前記存在度分布の前記正解データに対する誤差に基づいて前記学習モデルを更新する学習を行う学習手段と、を有する。
【0017】
(8)本発明に係る推定方法は、画像に現れる検知対象についての目的量を、第1パラメータ及び第2パラメータを有する所定の目的量関数により算出し、前記画像における前記検知対象の目的量分布を生成する分布生成モデルであって、前記画像の各画素と対応する対応位置での前記第1パラメータを推定する第1パラメータ推定部と、前記対応位置での前記第2パラメータを推定する第2パラメータ推定部と、前記第1パラメータ推定部及び前記第2パラメータ推定部による推定値により前記目的量関数の前記第1パラメータ及び前記第2パラメータそれぞれの値を設定し前記目的量を算出する目的量算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記目的量分布の正解データを用いた学習が行われた学習済みのモデルを用意するステップと、処理対象の画像を前記分布生成モデルに入力し、前記目的量分布を推定する推定ステップと、を有する。
【0018】
(9)本発明に係る推定プログラムは、 画像における検知対象の目的量分布を推定する処理をコンピュータに行わせるプログラムであって、当該コンピュータを、前記画像に現れる前記検知対象についての目的量を、第1パラメータ及び第2パラメータを有する所定の目的量関数により算出し、前記目的量分布を生成する分布生成モデルであって、前記画像の各画素と対応する対応位置での前記第1パラメータを推定する第1パラメータ推定部と、前記対応位置での前記第2パラメータを推定する第2パラメータ推定部と、前記第1パラメータ推定部及び前記第2パラメータ推定部による推定値により前記目的量関数の前記第1パラメータ及び前記第2パラメータそれぞれの値を設定し前記目的量を算出する目的量算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた前記目的量分布の正解データを用いた学習が行われた学習済みのモデルを記憶する記憶手段、及び、処理対象の画像を前記分布生成モデルに入力し、前記目的量分布を推定する推定手段、として機能させる。
【発明の効果】
【0019】
本発明によれば、例えば、分布生成モデルにおいて検知対象の位置とサイズと存在度分布との間で整合性を維持できるため画像から検知対象の存在度分布を高精度に推定することが可能となる。
【0020】
また、本発明によれば、例えば、分布生成モデルにおいて検知対象の位置とサイズと存在度分布との間で整合性を維持できるため画像から検知対象の存在度分布を高精度に生成できる分布生成モデルを学習させることが可能となる。
【図面の簡単な説明】
【0021】
【
図1】本発明の実施形態に係る画像監視装置の概略の構成を示すブロック図である。
【
図2】本発明の実施形態における分布生成モデルの概略の構造を示すブロック図である。
【
図3】存在度分布作成の処理を説明する模式図である。
【
図4】本発明の実施形態に係る画像監視装置の学習装置としての概略の機能ブロック図である。
【
図5】異なる形の関数に基づく学習用存在度分布の作り方を示す模式図である。
【
図6】本発明の実施形態に係る画像監視装置の学習装置としての動作の概略のフロー図である。
【
図7】本発明の実施形態に係る画像監視装置の推定装置としての概略の機能ブロック図である。
【
図8】本発明の実施形態に係る画像監視装置の推定装置としての動作の概略のフロー図である。
【
図9】本発明の実施形態の変形例に係る分布生成モデルの概略の構造を示すブロック図である。
【
図10】本発明の実施形態の他の変形例に係る分布生成モデルの概略の構造を示すブロック図である。
【発明を実施するための形態】
【0022】
以下、本発明の実施の形態(以下実施形態という)である画像監視装置1について、図面に基づいて説明する。当該画像監視装置1は本発明に係る学習装置20及び推定装置30を含んで構成され、推定結果を報知する。ここで、学習装置20は画像から検知対象の存在度分布を推定するモデル10を構築し、推定装置30は学習装置20で作成された分布生成モデル10を用いて、撮影画像から検知対象の存在度分布を推定する。本実施形態の存在度分布は、検知対象の位置とサイズをパラメータ(入力パラメータ)とする関数で検知対象の存在度を表現した分布である。1個の検知対象に対して関数表現した存在度を、画像内の全ての検知対象について足し合わせたものを、その画像における存在度分布とする。存在度分布の各画素の値は、1画素当たりの検知対象の個数を表す。
【0023】
本実施形態では、検知対象を人の頭部として説明する。すなわち、画像監視装置1は例えば、群衆が存在し得る空間が撮影された画像を解析することで、頭部の存在度分布を推定する。
【0024】
また、本実施形態では、頭部の位置を画像上での頭部領域の重心の座標と定義し、頭部のサイズを画像上での頭部領域の幅で規定される大きさと定義する。
【0025】
[画像監視装置の構成]
図1は実施形態に係る画像監視装置1の概略の構成を示すブロック図である。画像監視装置1は、撮影部2、通信部3、記憶部4、画像処理部5及び表示部6を含んで構成される。
【0026】
撮影部2は監視カメラであり、通信部3を介して画像処理部5と接続され、監視空間を所定の時間間隔で撮影して撮影画像を生成し、撮影画像を順次、画像処理部5に入力する。例えば、撮影部2はイベント会場に設置され、監視空間である当該会場を所定のフレーム周期(例えば、1秒)で撮影してカラー画像又はモノクロ画像を生成する。
【0027】
通信部3は通信回路であり、その一端が画像処理部5に接続され、他端が同軸ケーブルまたはLAN(Local Area Network)、インターネットなどの通信網を介して撮影部2及び表示部6と接続される。通信部3は撮影部2から撮影画像を取得して画像処理部5に入力し、画像処理部5から入力された推定結果を表示部6に出力する。
【0028】
記憶部4はHDD(Hard Disk Drive)、半導体メモリなどで構成される記憶装置であり、各種プログラムや各種データを記憶する。記憶部4は画像処理部5と接続されて画像処理部5との間でこれらの情報を入出力する。例えば、記憶部4は、画像処理部5を後述する分布生成モデル10、学習装置20及び推定装置30の各手段として機能させるためのプログラムを記憶する。また、記憶部4は学習装置20にて学習用データ記憶手段21、学習モデル記憶手段24として機能し、推定装置30にて分布生成モデル記憶手段34として機能する。
【0029】
画像処理部5はCPU(Central Processing Unit)、DSP(Digital Signal Processor)、MCU(Micro Control Unit)、GPU(Graphics Processing Unit)、FPGA(field-programmable gate array)等の演算装置で構成される。画像処理部5は記憶部4と接続され、記憶部4からプログラムを読み出して実行することにより各種の処理手段、制御手段として動作し、また記憶部4との間で各種データを入出力する。また、画像処理部5は通信部3を介して撮影部2及び表示部6とも接続され、通信部3経由で撮影部2から取得した撮影画像を解析することにより検知対象の分布を推定し、推定結果を通信部3経由で表示部6に表示させる。
【0030】
表示部6はディスプレイ装置であり、通信部3を介して画像処理部5と接続され、画像処理部5による推定結果を表示する。例えば、監視員が表示された推定結果を視認して状況を判断し、必要に応じて対処員を派遣する。
【0031】
以下、画像監視装置1の構成に関し、まず、画像を入力とし存在度分布を出力する分布生成モデル10の構造を説明し、その後、当該モデルを学習する学習装置20としての構成及び動作について説明し、次いで、画像から存在度分布を推定する推定装置30としての構成及び動作について説明する。
【0032】
[分布生成モデルの構造]
図2は本実施形態における分布生成モデル10の概略の構造を示すブロック図である。分布生成モデル10は、画像に現れる検知対象についての存在度を、当該存在度が集中する領域の位置及びサイズを入力パラメータで設定できる所定の存在度関数により算出し、画像における検知対象の存在度分布を生成するモデルであって、画像における検知対象の位置を推定する位置推定部と、画像の各画素と対応する対応位置での検知対象のサイズを推定するサイズ推定部と、位置推定部による検知対象の推定位置及び当該推定位置でのサイズ推定部による検知対象の推定サイズにより存在度関数の入力パラメータの値を設定し存在度を算出する存在度算出部とを含み、学習用画像及び当該学習用画像に対し予め与えられた存在度分布の正解データを用いた学習が行われた学習済みのモデルである。本実施形態では分布生成モデル10をCNNでモデル化する。当該CNNは、共通特徴量抽出手段11、位置マップ生成手段12、サイズマップ生成手段13及び存在度分布生成手段14が接続されたネットワークとして構成され、これらのうち位置マップ生成手段12、サイズマップ生成手段13、存在度分布生成手段14がそれぞれ上述の位置推定部、サイズ推定部、存在度算出部に当たる。
【0033】
本実施形態においては、共通特徴量抽出手段11、位置マップ生成手段12及びサイズマップ生成手段13をいずれもCNNでモデル化する。すなわち共通特徴量抽出手段11、位置マップ生成手段12及びサイズマップ生成手段13のそれぞれは、畳み込み層、プーリング層、ReLU関数(活性化関数)の層などが連結された多層のネットワーク構造を有し、これらの層で用いられるフィルタや関数のパラメータが学習の対象(学習パラメータ)となる。
【0034】
共通特徴量抽出手段11は、画像を入力されて当該画像から特徴量を抽出し、抽出した特徴量を位置マップ生成手段12とサイズマップ生成手段13とに出力する。抽出する特徴量は2つの手段に共通して入力されることから、この特徴量を共通特徴量と称する。なお、画像監視装置1が学習装置20として動作する場合に入力される画像は学習用画像であり、画像監視装置1が推定装置30として動作する場合に入力される画像は撮影画像である。
【0035】
位置マップ生成手段12は、共通特徴量抽出手段11から入力された共通特徴量から頭部の推定位置を表す位置マップを生成し、生成した位置マップを存在度分布生成手段14に出力する。本実施形態において、位置マップは、共通特徴量抽出手段11に入力される画像の各画素の位置が頭部の位置である尤度が当該画像の画素と同じ配置で並んだデータである。つまり、位置マップは1チャンネルの特徴マップであり、入力される画像の幅、高さをM画素、N画素とすると、位置マップはM画素×N画素×1チャンネルのデータである。以下では、位置マップの各要素の値を位置マップの値とも称する。位置マップの値の値域は[0,1]であり、値が大きな要素と対応する画素の位置ほど頭部の位置らしさが高いと推定されたことを意味する。
【0036】
サイズマップ生成手段13は、共通特徴量抽出手段11から入力された共通特徴量から頭部の推定サイズを表すサイズマップを生成し、生成したサイズマップを存在度分布生成手段14に出力する。本実施形態において、サイズマップは、共通特徴量抽出手段11に入力される画像の各画素の位置にその存在が推定される頭部のサイズが当該画像の画素と同じ配置で並んだデータである。つまり、サイズマップも1チャンネルの特徴マップであり、サイズマップはM画素×N画素×1チャンネルのデータである。以下では、位置マップの各要素の値をサイズマップの値と称する。なお、好適にはサイズマップ生成手段13の最終層に、ReLU関数によってサイズマップの値を0以上に変換した後に値が予め定めた下限値未満である場合は当該下限値で置き換える処理を含ませ、存在度分布生成手段14での0割りを防止する。
【0037】
位置マップ生成手段12から算出された位置マップ、サイズマップ生成手段13から算出されたサイズマップそれぞれは存在度分布生成手段14に入力される。本実施形態では、存在度分布生成手段14は、位置及びサイズを入力パラメータとする存在度関数として正規分布を用い、存在度分布を作成する。作成させる存在度分布は、入力画像と同サイズとなる。
【0038】
図3は存在度分布作成の処理を説明する模式図である。上述のように位置マップ、サイズマップは入力される画像と同じ画素数であり、それらは互いに対応する画素を有する。分布生成モデル10は、当該画素ごとに、位置マップ及びサイズマップそれぞれの値を用いて2次元の正規分布を作成する。そして、この画素ごとの正規分布を全て足し合わせたものを1枚の画像における存在度分布とする。具体的には、存在度分布生成手段14は、幅、高さがそれぞれM画素、N画素である画像にて、座標(i,j)の画素にξ=i+M(j-1)で定義するインデックスξを付与し、ξ=1~MNの範囲で画素ξの座標(i,j)を平均値(分布の中心)とし、画素ξにおけるサイズマップの値s
ξに定数αを乗じた値h
ξを標準偏差とする正規分布を導出し、各画素ξの正規分布に画素ξにおける位置マップの値w
ξを重みとして乗じて全画素について総和して存在度分布を生成する。ただしαは分布調整用定数であり、0<α<1の範囲で予め設定される。このように正規分布に基づいて存在度分布を作成した場合、存在度分布の和は頭部の個数となる。なお、存在度関数は位置とサイズが決まれば一意に決まる関数であるので、学習パラメータは存在しない。
【0039】
[学習装置の構成]
学習装置20は、事前に用意した学習データを用いて分布生成モデル10を学習する装置である。
【0040】
図4は画像監視装置1の学習装置20としての概略の機能ブロック図である。学習装置20は、学習用データ記憶手段21、学習用存在度分布生成手段22、学習手段23、学習モデル記憶手段24を含み、記憶部4が学習用データ記憶手段21及び学習モデル記憶手段24として機能し、画像処理部5が学習用存在度分布生成手段22及び学習手段23として機能する。
【0041】
学習用データ記憶手段21は学習用画像と学習用画像に映っている頭部の位置とサイズのデータを紐づけて予め記憶している。また学習用データ記憶手段21は学習用の存在度分布(学習用存在度分布)を記憶する。
【0042】
学習用存在度分布生成手段22は学習用存在度分布を生成する。学習用存在度分布は、学習手段23での学習にて、学習用画像に対応する存在度分布の正解データとして用いられる。具体的には、学習用存在度分布は、対応する学習用画像と同じ幅、高さをもったマップであり、各画素に対応して存在度が格納される。
【0043】
学習用存在度分布生成手段22は、学習用データ記憶手段21から頭部の位置及びサイズのデータを読み込み、学習用存在度分布を作成する。学習用存在度分布の作り方を
図5(a)に示す。まず、1個の頭部の位置(x,y)とサイズsを入力パラメータとする存在度関数で存在度を表す分布を作成する。存在度関数は、位置(
図5にて×印)を平均値に用い、サイズ×αの値を標準偏差に用いた正規分布を作成する。正規分布の重み(
図3のwに相当)は1とする。αは上述した分布調整用定数である。そして、各画素に存在度を割り当てる際に座標が離散的になるため、画素に割り当てる存在度の和が1になるように正規化する。このような1個の頭部に対する分布を、画像内の全ての頭部に対して同様に作成し、これらを足し合わせたものを学習画像に対する学習用存在度分布とする。このように作成された学習用存在度分布は足し合わせると画像内の頭部個数になる。作成した学習用存在度分布は学習用データ記憶手段21に出力され、対応する学習画像と紐づけて記憶される。
【0044】
学習手段23は、学習用データ記憶手段21から学習用画像と対応する学習用存在度分布を読み取り、分布生成モデル10の学習モデルに学習用画像を入力し、存在度分布生成手段14の出力に基づく存在度分布について学習用存在度分布に対する誤差を求め、当該誤差に基づいて学習モデルを更新する学習を行う。よって、学習用画像と学習用存在度分布はペアで与えられる。学習用データの読み出しでは、1回に全学習用データを読み出すのではなく、予め定めたペア数を読み出し、逐次的に学習を行う。
【0045】
このモデルの学習は、学習用画像を入力した際に分布生成モデル10から出力される存在度分布と、入力した学習用画像に対応する学習用存在度分布とから算出される誤差関数を最小化させることで行う。最小化する誤差関数は下記のように算出する。
【0046】
誤差関数は、頭部の存在度分布についての推定に関する誤差関数と、頭部の個数に相当する存在度分布の和についての推定に関する誤差関数の重みづけ和からなる。前者は存在度分布の誤差を画素ごとに計算する微視的な視点の誤差であり、後者は画像全体の存在度分布の和の誤差を計算する大局的な視点の誤差である。これら2種類の誤差関数を用いることで、画像手前の大きい頭部、画像奥の小さい頭部といった異なる見え方の対象物に対して推定精度を向上させる効果がある。
【0047】
存在度分布についての推定に関する誤差関数には、正解データである学習用存在度分布と分布生成モデル10が出力する存在度分布とに対して、画素ごとに差の二乗を計算し、全画素の平均(以降、平均二乗誤差と呼ぶ)を用いる。このとき、存在度分布は、頭部が存在する部分(存在度分布の値がゼロより大きい部分)と頭部が存在しない部分(存在度分布の値がゼロの部分)との画素数比率が大きく偏っている場合がある。このような状況で、平均二乗誤差を誤差関数としてしまうと、画素数の多い状態を推定しやすくなってしまう。そこで、正解データにおいて頭部が存在する部分と頭部が存在しない部分とに対して、別々に平均二乗誤差を計算し、正解データの対象物が存在する部分と対象物が存在しない部分との画素数の逆比率に基づいて、それぞれの平均二乗誤差に重みづけをしてから加算する。
【0048】
一方、頭部の個数に関する誤差関数には、頭部の学習用存在度分布の和と分布生成モデル10が出力する存在度分布の和との差の二乗を用いる。この誤差関数も、存在度分布の誤差関数と同様に、正解データにおいて頭部が存在する部分と頭部が存在しない部分とに対して、別々に存在度分布の和について差の二乗を計算し、正解データの頭部が存在する部分と頭部が存在しない部分との画素数の逆比率に基づいて、それぞれの差の二乗に重みづけをしてから加算する。
【0049】
なお、誤差計算は分布生成モデル10が出力する存在度分布に対してのみ行い、位置マップ、サイズマップに対しては正解データを用いた誤差計算を行わない。存在度関数が学習パラメータを有さず且つ入力パラメータが位置及びサイズと定められているため、存在度分布の正解データを与えれば位置マップ生成手段12及びサイズマップ生成手段13の出力が正解データに整合する位置マップ及びサイズマップに近づく学習が十分に行われるからである。
【0050】
上記の誤差関数の最小化には確率的勾配法を用いる。確率的勾配法による学習では、誤差逆伝播法にて各処理の勾配を算出し、その勾配をもとに各学習パラメータを更新していく。学習後、得られたモデルを学習モデル記憶手段24に記憶する。
【0051】
学習モデル記憶手段24には、分布生成モデル10を学習する際の分布生成モデル10の構造とその初期値が格納され、学習手段23から必要に応じて読み出される。学習後においては、学習モデル記憶手段24には、学習手段23によって算出した学習済みモデルが記憶される。
【0052】
[学習装置の動作]
画像監視装置1は、撮影画像に現れる対象物の存在度分布を推定する推定装置30としての動作に先立って、学習装置20として動作し、分布生成モデル10を学習する。
【0053】
図6は学習装置20の動作に関する概略のフロー図である。
【0054】
学習動作開始が指示されると、画像処理部5は、まず、学習用存在度分布生成手段22として機能し、学習用データ記憶手段21から頭部位置及び頭部サイズを読み込み、学習用存在度分布を作成する(ステップS10)。
【0055】
次に画像処理部5は学習手段23として機能し、学習手段23は分布生成モデル10の学習を行うために、学習モデル記憶手段24から学習モデルを読み出す(ステップS11)。この時点での学習モデルの学習パラメータは初期値である。
【0056】
しかる後、学習手段23は当該モデルについての学習動作(ステップS12~S16)を開始する。以下、当該動作を説明する。
【0057】
学習手段23は学習用データ記憶手段21から、学習用画像、及び当該画像の学習用存在度分布を読み込む(ステップS12)。
【0058】
学習手段23は、学習モデルへ学習用画像を入力して推定処理を行う(ステップS13)。そして、学習手段23は、推定された存在度分布と学習用存在度分布との乖離度を予め定めた誤差関数を用いて計算し(ステップS14)、その誤差を用いて学習モデルの学習パラメータを更新する(ステップS15)。
【0059】
続いて、学習手段23は、予め定められた反復終了条件が満たされているかを判定する(ステップS16)。学習手段23はステップS12~S15の処理を、学習データを変えながら、反復終了条件が満たされるまで繰り返し(ステップS16にて「NO」の場合)、反復終了条件を満たすと(ステップS16にて「YES」の場合)、学習モデル記憶手段24に学習済みモデルの学習パラメータを記憶させ(ステップS17)、学習動作を終了する。反復終了条件としては、例えば、誤差関数の変動量が事前に定めた閾値よりも小さくなったことや、事前に定めた反復回数に達したことなどを用いることができる。
【0060】
[推定装置の構成]
図7は画像監視装置1の推定装置30としての概略の機能ブロック図である。推定装置30は、画像入力手段31、推定手段32、結果出力手段33、分布生成モデル記憶手段34を含み、記憶部4が分布生成モデル記憶手段34として機能し、画像処理部5が推定手段32として機能する。また、通信部3が画像処理部5と協働し、画像入力手段31及び結果出力手段33として機能する。
【0061】
分布生成モデル記憶手段34は学習済みの分布生成モデル10を記憶している。本実施形態において分布生成モデル記憶手段34は学習装置20の構成として上述した学習モデル記憶手段24と同一である。
【0062】
画像入力手段31は撮影部2から撮影画像を順次取得して推定手段32に入力する。
【0063】
推定手段32は、分布生成モデル記憶手段34に記憶されている分布生成モデル10を読み込む。そして、画像入力手段31から入力された撮影画像を分布生成モデル10に入力することによって存在度分布を算出する。また、推定手段32は算出した存在度分布を、撮影画像と共に結果出力手段33に出力する。
【0064】
結果出力手段33は、推定手段32から入力された撮影画像と存在度分布を表示部6に出力する。
【0065】
[推定装置の動作]
図8は推定装置30の動作に関する概略のフロー図である。
【0066】
監視開始が指示されると画像監視装置1は推定装置30としての動作を開始する。画像処理部5は推定手段32として機能し、推定手段32は、分布生成モデル記憶手段34から学習済みの分布生成モデル10を読み込む(ステップS20)。また、撮影部2は所定時間おきに監視空間を撮影した画像を順次出力する動作を開始する。
【0067】
画像処理部5は通信部3と協働して画像入力手段31として機能し、撮影部2が出力する撮影画像を取得して推定手段32に入力する(ステップS21)。
【0068】
推定手段32は、入力された撮影画像を分布生成モデル10に入力することで存在度分布を推定する(ステップS22)。
【0069】
画像処理部5は通信部3と協働して結果出力手段33として機能し、推定した存在度分布と撮影画像とを表示部6へ出力する(ステップS23)。これにより、表示部6に存在度分布等が表示される。
【0070】
推定装置30は基本的に、撮影部2による撮影に連動して、ステップS21~S23の処理を繰り返す。この反復動作は例えば、停止指示があるまで継続される。
【0071】
[変形例]
(1)上記実施形態では検知対象が頭部である例を説明したが、画像内に複数現れ得る他の物体、例えば椅子、車両、魚、羊、馬または商品など、を検知対象としても良い。
【0072】
(2)学習用データに、学習用画像それぞれに現れている検知対象の個数に応じたクラス分類情報を含ませてもよい。クラス分類情報とは、例えば、撮影されている頭部の個数が5個未満の画像を「クラス1」、5個以上10個未満の画像を「クラス2」、10個以上の画像を「クラス3」というようにクラス分けした情報である。学習用データ記憶手段21にはこのクラス分類情報を学習用画像と紐づけて予め記憶させておく。上記実施形態の説明にて、学習手段23が、予め定めたペア数の学習用データを用いて逐次的に学習を行うことを述べた。変形例において学習手段23は、クラス分類情報を参照し、上記所定ペア数の学習用データにおける各クラスの比率が予め定めた比率となるようにする。こうすることで1回の学習で用いる学習用画像における検知対象数が偏らないように調整されて高精度な分布生成モデル10を学習させることが可能となる。
【0073】
(3)上記実施形態及びその変形例では共通特徴量抽出手段11をCNNでモデル化したが、共通特徴量抽出手段11を、画像からHOG(Histograms of Oriented Gradients)、GLCM(Gray-Level Co-Occurrence Matrix)、他の周知の画像特徴量、またはこれらのうちの1以上の画像特徴量を抽出する手段としてもよい。
【0074】
(4)或いは、共通特徴量抽出手段11を省略し、画像を位置マップ生成手段12とサイズマップ生成手段13とに直接入力する分布生成モデル10としてもよい。
【0075】
(5)上記実施形態及びその変形例の分布生成モデル10は1つの存在度分布生成手段14によって1つの存在度分布を生成したが、存在度関数が互いに異なる複数の存在度分布生成手段を備えて互いに異なる複数の存在度分布を生成する分布生成モデルとしても良い。この場合、位置マップ生成手段12及びサイズマップ生成手段13の出力が複数の存在度分布生成手段のそれぞれに入力される分布生成モデルとなる。すなわち複数の存在度分布生成手段のそれぞれは共通の位置マップ及びサイズマップを互いに異なる存在度関数に入力して互いに異なる存在度分布を生成する。
【0076】
正規分布以外に基づく存在度関数として一様分布、矩形関数、正規分布の1次微分、正規分布の2次微分に基づく存在度関数が挙げられる。
図5(a)~(e)はそれぞれ、正規分布、一様分布、矩形関数、正規分布の1次微分、正規分布の2次微分に基づく存在度関数を用いて学習用存在度分布を生成する様子の模式図である。一様分布に基づく存在度関数は、各頭部に対して、その位置を重心、そのサイズを直径とする頭部領域に総和を1とする一様な値を算出する。つまり頭部領域内の各画素の値は1/(頭部領域面積)となる。矩形関数に基づく存在度関数は、各頭部に対して、その位置を重心、そのサイズを直径とする頭部領域の内側にて1、外側にて0を算出する。正規分布の1次微分、2次微分に基づく存在度関数はそれぞれ、各頭部に対して、その位置を平均値、そのサイズのα倍を標準偏差とした正規分布の1次微分値、2次微分値を算出する。ここでαは上述した分布調整用定数である。正規分布の1次微分には、x方向微分、y方向微分の2種類がある。
図5(d)はx方向微分を示している。正規分布の2次微分にはx方向2次微分、y方向2次微分、xy方向(x方向及びy方向)2次微分の3種類がある。
図5(e)はx方向2次微分を示している。
【0077】
各存在度分布生成手段は、正規分布の場合と同様、画像内の全ての頭部に対して算出した分布を合成した分布を1枚の画像の学習用存在度分布とする。なお、矩形関数に基づく存在度関数は、合成後、画素ごとの存在度のうち1より大きな存在度を1に補正する上限値設定処理を行って学習用存在度分布とする。
【0078】
各存在度関数の存在度分布生成手段14では、
図3を用いて説明した存在度分布作成の処理にて正規分布の関数を用いたところを、それぞれの分布に対応する関数に置き換えて、存在度分布を作成する。
【0079】
一様分布と矩形関数では、サイズマップの値を直径として頭部領域を計算している。但し、矩形関数を用いて作成された存在度分布については、その値が1を超える場合があるため、存在度分布を作成した後に、値を0~1の範囲に収める為の後処理を追加する。具体的には、(矩形関数にて作成した存在度分布-0.5)×定数という演算をし、その演算結果をシグモイド関数に入力することで、0~1の値の範囲に収める。ここでの定数は予め定めた1より大きい値である。このように変換した値が矩形関数にて作成した存在度分布の出力となる。
【0080】
分布生成モデル10の学習では、複数の存在度分布生成手段14それぞれについて、対応する学習用存在度分布を作成し、推定された存在度分布との誤差計算を行う。学習で用いる誤差関数は、複数種類の存在度分布に対してそれぞれ誤差関数を設定し、これらの重みづけ和とする。頭部の存在度分布の推定に関する誤差関数として、一様分布、正規分布の1次微分分布、正規分布の2次微分分布を用いて作成した存在度分布には、正解データである学習用存在度分布と分布生成モデルが出力する存在度分布とに対して、平均二乗誤差を計算する。矩形関数を用いて作成した存在度分布に対しては、頭部領域とそれ以外の領域を識別する交差エントロピー誤差を画素ごとに計算し、全画素の平均を用いる。また、一様分布に対しては、頭部の個数の推定に関する誤差関数として、学習用存在度分布の和と分布生成モデルが出力する存在度分布の和との差の二乗を用いる。
【0081】
複数種類の存在度分布を用いた学習は、様々な見方で存在度分布を学習することになるため、精度向上の効果がある。特に、一様分布はサイズの精度に効果があり、矩形関数は頭部領域と頭部領域以外を区別する精度に効果がある。また、正規分布の1次微分、2次微分は、正規分布の形状を反映する勾配に関する関数なので、位置とサイズの両方の精度に効果がある。さらに、各存在度分布の作成に際し、共通の位置マップ及びサイズマップから存在度関数の入力パラメータを設定するので、存在度分布間での整合が取れる。したがって、整合が取れた複数の存在度分布での学習という観点から、従来手法よりも大きな精度向上の効果がある。従来手法においても、複数の存在度分布を用いた学習はできる。しかし、従来手法で複数の存在度分布を作成する場合、存在度分布間の整合性は学習次第であるため、各存在度分布が独立し、精度向上の効果が小さくなってしまう傾向がある。
【0082】
推定動作の際の分布生成モデル10は、学習に用いた複数種類の存在度分布のうち出力したいものに対応する存在度分布生成手段14を複数持つネットワークとして構成することができる。共通の位置マップ、サイズマップをそれぞれの存在度分布生成手段14に入力して、
図3での処理と同様に、それぞれ対応する関数によって存在度分布作成の処理を行い、それぞれの存在度分布を出力する。
【0083】
(6)また、変形例(5)で述べた矩形関数を用いて生成する存在度分布を、推定時の誤報削除処理に利用できる。この誤報削除処理はマスク処理で行うことができるが、本変形例では、推定された存在度分布を利用して位置マップ上で当該マスク処理を行う。
図9は本変形例に係る分布生成モデル10Bのネットワーク構造の概略のブロック図である。
【0084】
まず、画像を共通特徴量抽出手段11に入力し、共通特徴量を出力する。この共通特徴量を位置マップ生成手段12及びサイズマップ生成手段13の各々に入力し、それぞれから位置マップとサイズマップが出力される。そして、位置マップとサイズマップを二値画像取得手段15に入力する。二値画像取得手段15は、上記変形例(5)で説明した矩形関数を用いた存在度分布生成手段14と同様にして存在度分布を作成する。そして、二値画像取得手段15は予め定めた閾値処理にて当該存在度分布の値を二値化し、マスクを作成する。当該二値化では例えば、閾値以上の位置に1が設定され、閾値未満の位置に0が設定される。つまり、二値画像取得手段15は、共通特徴量抽出手段11に入力された画像における検知対象に対応する関心領域(1が設定された領域)とそれ以外である非関心領域とを区別する二値画像をマスクとして取得する。
【0085】
二値画像取得手段15が作成したマスクはマスク処理手段16(本発明のマスク手段)に入力される。マスク処理手段16は、位置マップ生成手段12から入力された位置マップと、二値画像取得手段15から入力されたマスクとの掛け算処理を行い、マスク処理後位置マップを出力する。つまり、マスク処理手段16は、位置マップ生成手段12による推定位置に対し二値画像を用いてマスク処理を行い、非関心領域に属する推定位置を削除する。その後、マスク処理後位置マップとサイズマップ生成手段13から出力されたサイズマップとを存在度分布生成手段14に入力する。存在度分布生成手段14は
図3の存在度分布作成処理と同様に、正規分布を用いて存在度分布を作成し、マスク処理後存在度分布を出力する。つまり、存在度分布生成手段14は存在度関数の入力パラメータの1つとしてマスク処理手段16での削除後に残った推定位置を用いて存在度分布を推定する。
【0086】
このように、マスク処理を位置マップ上で行うことで精度よく誤報を削除できる効果が得られる。すなわち、存在度分布の値は複数の頭部の値の和となっており分離できないため、存在度分布に対して誤報要因を削除するためのマスク処理をすると真の頭部も削除してしまう場合がある。これに対し、位置マップは頭部の中心付近に値が局在しているため、位置マップに対して誤報要因を削除するためのマスク処理をすれば誤報要因だけを削除できる。よって、位置マップ上でマスク処理を行うことによって、誤報のみを削除し、頭部の存在度分布を残すことができる。
【0087】
本変形例の
図9に示す分布生成モデル10Bでは、二値画像取得手段15が位置マップ生成手段12及びサイズマップ生成手段13の出力を用いて二値画像を取得した。これに対し、二値画像取得手段15を、分布生成モデル10の位置マップ生成手段12及びサイズマップ生成手段13の出力を用いずに二値画像を取得する構成としてもよい。例えば、二値画像取得手段15を、画像を入力されて別モデルにて二値画像を取得する構成、または画像を入力されて背景差分処理により二値画像を取得する構成等とすることができる。
【0088】
(7)上記実施形態及びその変形例では入力される画像と同じ画素数の存在度分布を生成する分布生成モデルを示したが、入力される画像よりも少ない画素数の存在度分布を生成する分布生成モデルとしても良い。こうすることで処理負荷の小さな学習装置20、推定装置30とすることができる。
【0089】
例えば、分布生成モデルが出力する存在度分布を1/2スケール(画素数は1/4倍)とする場合、学習用存在度分布生成手段は頭部の位置のX座標、Y座標及び頭部のサイズをそれぞれ1/2倍して学習用存在度分布を作成する。そして、学習手段23は、原スケールの学習用画像と1/2スケールの学習用存在度分布を用いて分布生成モデルを学習させる。また、存在度分布生成手段は、撮影画像を分布生成モデルに入力して得られる存在度分布に対し、バイリニア補間処理を行って撮影画像と同じ画素数の存在度分布を生成する。ただし、正規分布に基づく存在度分布生成手段及び一様分布に基づく存在度分布生成手段は、さらに、バイリニア補間処理後の存在度分布の各値を1/4倍して存在度分布の全体の積分値が撮影画像内の頭部個数になるようにする。
【0090】
(8)変形例(7)では分布生成モデル外で存在度分布を拡大したが、分布生成モデル内で拡大する構成とすることもできる。その場合、分布生成モデルを、入力される画像よりも少ない画素数の(以下「縮小スケールの」と表現する)存在度分布、位置マップ、サイズマップを前段部が求め、後段部がこれらを特徴量として用いて、入力された画像と同じ画素数の(以下「原スケールの」と表現する)存在度分布を出力する構成とするのがさらに好ましい。
【0091】
図10は本変形例に係る分布生成モデル10Cの概略のブロック図である。分布生成モデル10Cは、第一共通特徴量抽出手段11a、第一位置マップ生成手段12a、第一サイズマップ生成手段13a及び第一存在度分布生成手段14aからなる前段部と、第二共通特徴量抽出手段11b、第二位置マップ生成手段12b、第二サイズマップ生成手段13b及び第二存在度分布生成手段14bからなる後段部とで構成される。ここで、第一共通特徴量抽出手段11a及び第二共通特徴量抽出手段11bの機能は基本的に上記実施形態の共通特徴量抽出手段11の機能に対応し、同様に、第一位置マップ生成手段12a及び第二位置マップ生成手段12bは位置マップ生成手段12に、また第一サイズマップ生成手段13a及び第二サイズマップ生成手段13bはサイズマップ生成手段13に、さらに第一存在度分布生成手段14a及び第二存在度分布生成手段14bは存在度分布生成手段14に対応するが、それぞれが扱う画像や特徴マップの画素数において前段部と後段部、またそれらと上記実施形態との間で違いを有し得る。
【0092】
前段部は画像を入力され、縮小スケールの存在度分布を作成する。具体的には、第一共通特徴量抽出手段11aは入力された画像から特徴量を抽出し、第一位置マップ生成手段12a及び第一サイズマップ生成手段13aは当該特徴量からそれぞれ縮小スケールの位置マップ及びサイズマップを作成し、第一存在度分布生成手段14aは第一位置マップ生成手段12a及び第一サイズマップ生成手段13aの出力に基づいて縮小スケールの存在度分布を作成する。
【0093】
後段部は前段部からの入力に基づいて原スケールの存在度分布を作成する。具体的には、第二共通特徴量抽出手段11bに、第一共通特徴量抽出手段11aで作成された特徴量と、第一位置マップ生成手段12a、第一サイズマップ生成手段13a及び第一存在度分布生成手段14aでそれぞれ作成された縮小スケールの位置マップ、サイズマップ及び存在度分布とが入力され、第二共通特徴量抽出手段11bはこれらを連結した特徴量から共通特徴量を作成する。これ以降は、
図2のネットワーク構造と同様であり、第二存在度分布生成手段14bから原スケールの存在度分布が出力される。
【0094】
なお、分布生成モデル10Cの学習で用いる誤差関数は、縮小スケールの存在度分布に関する誤差関数と、原スケールの存在度分布に関する誤差関数との重みづけ和からなる。
【0095】
このように、扱うスケールが異なる前段部と後段部を含んだ分布生成モデルとすることで、縮小スケールで広い範囲を畳み込んで大まかに解析し、且つ原スケールで狭い範囲を畳み込んで詳細に解析するので高精度な分布を生成できる効果がある。
【0096】
(9)上記実施形態及びその変形例の分布生成モデルは正規分布に基づく分布関数を用いたが、正規分布以外に基づく分布関数を用いることもできる。
【0097】
(10)上記実施形態及びその変形例では学習装置20にて学習させた分布生成モデルを推定装置30の存在度分布生成手段がそのまま用いたが、推定装置30の存在度分布生成手段は学習装置20により学習させた分布生成モデルにおける存在度関数を置換した分布生成モデルを用いることもできる。ただし、存在度関数以外は変更しないこと、置換前後の存在度関数が存在度を設定するための入力パラメータ(例えば頭部の位置とサイズ)が共通することが置換の条件となる。
【0098】
例えば、学習時点で用いた正規分布よりも標準偏差が小さい正規分布を使って存在度分布を推定したい場合、推定装置30の存在度分布生成手段14は、正規分布で用いる標準偏差の値をサイズマップ×β(0<β<α、αは学習時に用いた分布調整用定数)に変更した分布生成モデル10を用いて存在度分布を生成する。また例えば、推定装置30の存在度分布生成手段14は、正規分布を、変形例(5)で述べた一様分布、矩形関数、正規分布の1次微分または正規分布の2次微分に変更した分布生成モデル10を用いて存在度分布を生成する。
【0099】
つまり、本発明の分布生成モデルに含まれる存在度関数は、学習によって更新されない関数であるから、存在度を設定するための入力パラメータが共通であれば置換可能である。また、整合がとれた高精度な位置マップとサイズマップを利用しての置換が可能である。換言すると、改めての学習を行うことなく高精度を維持して存在度分布の種類を変更可能であり、利用者の仕様変更などに柔軟に対応可能な推定装置を提供できる。
【0100】
(11)上記実施形態及び各変形例では、分布生成モデル10は画像に現れる検知対象の存在度についての分布を生成するものであったが、存在度以外の目的量についての分布を生成する分布生成モデルに関して本発明を適用することもできる。つまり、分布生成モデルは、画像に現れる検知対象についての目的量を、複数の入力パラメータ(第1パラメータ及び第2パラメータ)を有する所定の目的量関数により算出し、画像における検知対象の目的量分布を生成するものとすることができる。そして、この分布生成モデルに処理対象の画像を入力し目的量分布を推定する推定手段を備えた推定装置を構成することができる。
【0101】
上記実施形態の分布生成モデル10では、位置マップ生成手段12から算出された位置マップの値と、サイズマップ生成手段13から算出されたサイズマップの値とを入力パラメータとし、存在度分布生成手段14において存在度関数を用いて存在度分布を作成・出力したのに対し、本変形例では、存在度分布の値とサイズマップの値とを入力パラメータ(第1パラメータ及び第2パラメータ)とし、予め定めた関数処理にて位置マップを出力する分布生成モデルを説明する。つまり、本変形例は検知対象である頭部の位置を目的量とし、目的量分布として位置マップを推定する。学習での誤差計算は、上記実施形態では存在度分布に対して行ったが、本変形例では位置マップに対して行う。なお、本変形例でのサイズマップの値は、位置マップを作成するのに適切なサイズであり、学習によって求まる値である。
【0102】
本変形例の画像を入力とし位置マップを出力する分布生成モデルを分布生成モデル50と表すこととし、以下、まず、分布生成モデル50の構造を説明し、その後、分布生成モデル50の学習について説明する。
【0103】
分布生成モデル50は、共通特徴量抽出手段51、存在度分布生成手段52、サイズマップ生成手段53、位置マップ生成手段54から構成される。ここで存在度分布生成手段52、サイズマップ生成手段53が第1パラメータ推定部、第2パラメータ推定部であり、位置マップ生成手段54が目的量算出部である。そのネットワーク構造については図示を省略するが、
図2において位置マップ生成手段12と存在度分布生成手段14とを入れ替えたような構造である。本変形例において共通特徴量抽出手段51、存在度分布生成手段52及びサイズマップ生成手段53は学習により更新され、位置マップ生成手段54は学習により更新されない。
【0104】
よって、共通特徴量抽出手段51は
図2の共通特徴量抽出手段11に対応し、共通特徴量抽出手段51はCNNでモデル化でき、画像を入力され、共通特徴量を出力する。当該共通特徴量は存在度分布生成手段52とサイズマップ生成手段53それぞれに入力される。
【0105】
存在度分布生成手段52とサイズマップ生成手段53は、CNNでモデル化され、共通特徴量から1チャンネルの特徴マップとして存在度分布、サイズマップを生成し出力する。存在度分布生成手段52の最終層は存在度分布の値が0から1の範囲になるようにする。サイズマップ生成手段53はサイズマップの値を0以上に変換した後、その値が予め定めた下限値未満である場合は当該下限値で置き換える。
【0106】
位置マップ生成手段54は、サイズマップから定まるフィルタを用いて、存在度分布に対してフィルタリング処理を行い、位置マップを作成する。作成される位置マップは入力画像と同サイズとなる。フィルタはサイズマップ上の1画素ごとに作成する。具体的には、ある注目点におけるフィルタとして、当該注目点の座標を平均値とし、また注目点におけるサイズマップの値×α(0<α<1)を標準偏差とする正規分布のラプラシアンフィルタを作成する。位置マップ生成手段54はこのフィルタと存在度分布との内積を計算し、計算した結果を注目点での位置マップの値とする。なお、サイズマップの値が予め定めた値より小さい場合は、内積計算は行わず、注目点での位置マップの値はゼロとする。全画素を注目点として、フィルタの作成と内積計算とが行われ、位置マップが生成される。なお、位置マップとの内積計算で用いるフィルタは、サイズマップの値により一意に決まるため、学習により更新されない。
【0107】
分布生成モデル50は学習用画像と学習用位置マップを学習用データに用いて学習される。これに対応して、本変形例に関する学習装置は上記実施形態に関する
図4の機能ブロック図にて、学習用存在度分布生成手段22に代えて学習用位置マップ生成手段を設けた構成となり、学習用データ記憶手段21は、学習用位置マップ生成手段が生成した学習用位置マップを格納し、これを学習手段23に供する。ちなみに、学習用位置マップは、各頭部位置に1の値を入れたマップである。
【0108】
分布生成モデル50の学習は、共通特徴量抽出手段51に学習用画像を入力した際に位置マップ生成手段54から出力される位置マップと、入力した学習用画像に対応する学習用位置マップとから算出される誤差関数を最小化させることで行う。最小化する誤差関数は、正解データである学習用位置マップと分布生成モデル50が出力する位置マップとから計算される平均二乗誤差を用いる。誤差計算は位置マップに対してのみ行っているため、この誤差が小さくなるように、サイズマップ及び存在度分布それぞれの値は学習により調整されていく。よって、サイズマップに入る値は、分布生成モデル50が位置マップを作成しやすいサイズとなる。
【0109】
分布生成モデル50のネットワーク構造にすると、頭部位置に対して、存在度分布と、位置マップ作成に適したサイズとが整合の取れた状態でモデルを学習できるため、頭部位置の推定精度が向上する効果がある。
【0110】
(12)上記実施形態では、分布生成モデル10の学習で用いる誤差関数として、存在度分布生成手段14から出力される存在度分布に対してのみ計算を行ったが、併せて、存在度分布生成手段14にて存在度関数の入力パラメータとしてサイズマップ生成手段13から出力されるサイズマップに対しても誤差関数を計算してモデル全体の誤差を評価する学習を行ってもよい。以下では、サイズマップの正解データの作成方法、サイズマップに対する誤差関数、全体の誤差関数の順に説明する。
【0111】
正解データのサイズマップは、学習用データ記憶手段21に記憶されている頭部位置、サイズを用い、1個の頭部に対して、頭部位置(頭部の中心)の座標に、頭部サイズを入れる操作を画像内の全ての頭部に対して同様に行うことで作成される。例えば、この処理は学習用存在度分布生成手段22が学習用データ記憶手段21から頭部位置、サイズのデータを読み込んで行い、作成された正解データのサイズマップは学習用データ記憶手段21に出力され、対応する学習画像と紐づけて記憶される。
【0112】
サイズマップに対する誤差関数は、正解データのサイズマップとサイズマップ生成手段13が出力するサイズマップとの平均二乗誤差を用いる。サイズマップに対して誤差計算を行う領域は、正解データのサイズマップで値を代入した領域(各頭部の中心座標)のみであり、それ以外の領域では計算を行わない。
【0113】
全体の誤差関数は、存在度分布に対する誤差関数とサイズマップに対する誤差関数との重みづけ和からなる。このとき、サイズマップに対する誤差関数は存在度分布に対する誤差関数より小さくなるように重みづけを行い、存在度分布に対する誤差関数が主要な誤差関数となるようにする。
【0114】
このような目的量分布に対する誤差関数と目的量関数の入力パラメータに対する誤差関数とを総合して分布生成モデルの誤差を評価する手法は、上記変形例(10)の分布生成モデル50の学習においても適用することができる。具体的には、位置マップに対する誤差関数だけでなく、サイズマップに対する誤差関数も計算し、全体の誤差関数は、位置マップに対する誤差関数とサイズマップに対する誤差関数との重みづけ和とする。なお、サイズマップの正解データの作成、及びサイズマップに対する誤差関数の計算は上述した本変形例の分布生成モデル10の学習の場合と同様である。ちなみに、このネットワーク構造にすると、頭部位置、頭部サイズに対して、存在度分布が整合の取れた状態でモデルを学習できるため、頭部位置と頭部サイズの推定精度が向上する効果がある。
【0115】
(13)上記実施形態及びその各変形例では、存在度関数の入力パラメータの1つであるサイズを人の頭部領域の幅で規定される大きさとし、正規分布の標準偏差に対応する入力パラメータとした。別の実施形態では、サイズを検知対象の幅と高さで規定される大きさとし、正規分布の標準偏差に対応する入力パラメータをx方向とy方向の2つにしてもよい。例えば、幅サイズ×α(0<α<1)をx方向の標準偏差、高さサイズ×α(0<α<1)をy方向の標準偏差とする。サイズを検知対象の幅と高さとすることで、検知結果を矩形、楕円など検知対象の形状に応じた検知結果を適宜定義することができるようになる。
【0116】
(14)上記実施形態及びその各変形例では、検知対象を人の頭部、目的量を頭部の存在度、第1パラメータを頭部の位置、第2パラメータを頭部のサイズとする例を示したが、本発明はこれ以外にも適用できる。例えば、検知対象を凸多角形の剛体とし、目的量を剛体の構造量、第1パラメータを剛体の重心位置、第2パラメータを頂点位置とすることができる。剛体が机の上面、椅子の背もたれなど4角形の剛体である場合を例に説明する。第1パラメータの特徴マップの値は剛体の重心位置である尤度とする。第2パラメータは重心から4頂点への相対ベクトルとし、第2パラメータの特徴マップにおいて剛体の重心位置に対応する要素は相対ベクトルを並べた8次元ベクトルとする。目的量である剛体の構造量は剛体の傾き、重心から4頂点までの長さ、4頂点の角度、表裏の別、面積とし、目的量分布において剛体の重心位置に対応する要素を傾き、長さ、角度、表裏の別、面積が列挙されたベクトルとする。剛体の傾きは、画像x軸正方向を基準とした第1頂点の相対ベクトルの傾きであり、第1頂点の相対ベクトルを長さ1に正規化した単位ベクトルのx座標とy座標が列挙された2次元ベクトルである。重心から4頂点までの長さは4つの長さが列挙された4次元ベクトルである。4頂点の角度は第n頂点の相対ベクトルに対する第n+1頂点の相対ベクトルの角度が列挙された4次元ベクトルである。表裏の別は表裏(傾きを時計回りに算出するか反時計回りに算出するか)を表すフラグである。面積は4角形の面積を表すスカラである。よって、構造量は12次元ベクトルである。目的量関数は4頂点の座標から、傾き、長さ、角度、表裏の別、面積を導出する関数となる。そして、第1パラメータである剛体の重心位置の特徴マップを参照し、尤度が最大の位置に対応する目的量のマップの要素から、傾き、長さ、角度、表裏の別、面積を求める。学習においては第1パラメータである剛体の重心位置の特徴マップと、構造量の傾き、長さ、角度、表裏の別、面積の正解データを与え、それぞれの誤差計算を行う。なお、第2パラメータである4頂点への相対ベクトルと、目的量の剛体の構造量を入れ替えた分布生成モデルとすることもできる。つまり、第2パラメータを剛体の構造量、目的量を重心から4頂点への相対ベクトルとすることもできる。
【符号の説明】
【0117】
1 画像監視装置、2 撮影部、3 通信部、4 記憶部、5 画像処理部、6 表示部、10 分布生成モデル、11 共通特徴量抽出手段、12 位置マップ生成手段、13 サイズマップ生成手段、14 存在度分布生成手段、15 二値画像取得手段、16 マスク処理手段、20 学習装置、21 学習用データ記憶手段、22 学習用存在度分布生成手段、23 学習手段、24 学習モデル記憶手段、30 推定装置、31 画像入力手段、32 推定手段、33 結果出力手段、34 分布生成モデル記憶手段。