以下に、添付図面を参照して、本発明に係る画像照合処理装置、画像照合処理方法及び画像照合処理プログラムの好適な実施例を詳細に説明する。なお、以下に示す実施例1では、監視カメラで撮像された動画像データの中から特定の人物(例えば、迷子)を指定し、指定された人物が他の監視カメラのいずれに映るかを判定する場合について説明する。また、実施例2では、特定の人物を指定するのではなく、あらかじめ準備された人物のリスト(例えば、犯罪者リスト)に該当する人物が監視カメラに映るか否かを判定する場合について説明する。さらに、実施例3では、登録用として設けられた監視カメラで撮像した全ての人物の行動軌跡を他の監視カメラを用いて辿る場合について説明する。
まず、本実施例1に係る画像照合処理システムのシステム構成について説明する。図1は、本実施例1に係る画像照合処理システムのシステム構成図である。ここでは、遊園地の敷地内に複数の監視カメラ10a〜10d(以下、「監視カメラ10」と総称する場合がある)が設置されるとともに、各監視カメラ10a〜10dが遊園地内の迷子センタ等に設置された画像照合処理装置と接続された状況を示している。
迷子センタの係員が、保護者等から「子供が迷子になった」旨の相談を受けた場合には、各監視カメラ10a〜10dで過去に撮影した動画像データを表示部に表示して、この動画像データの中に子供が存在するか否かを保護者等に確認させる。その結果、子供が存在する場合には、該当する人物(子供)を指定して、人物の登録処理を行う。かかる登録処理を行うと、各監視カメラ10a〜10dに登録した人物が映った場合に、その旨が報知される。このため、迷子が現時点でどの設備に所在するかを特定し、迷子を効率的に保護することが可能となる。
具体的には、図1に示す遊園地には、遊園地に利用者が入場する際及び遊園地から利用者が退場する際に通過する入退場用のゲート11と、遊技施設等からなる設備12、設備13及び設備14が設けられている。ここで、監視カメラ10aは、ゲート11を通過する人物を撮像可能な位置に設置されており、監視カメラ10b、10c及び10dは、設備12、13及び14をそれぞれ訪れる人物を撮像可能な位置に設置されている。なお、かかる監視カメラ10は、カラー画像データを撮像できるCCDカメラである。
画像照合処理装置20は、監視カメラ10により撮像された動画像データを受信すると、この動画像データを動画像データ27aとして動画像データベース27に記憶する。そして、迷子センタの係員が、保護者から迷子の届出を受けたならば、この画像照合処理装置20に対して所定の操作入力を行って、過去の動画像データ27aを表示部に表示し、迷子となった人物を保護者に特定させる。保護者が過去の動画像データ27aから迷子となった人物を特定する際に、顔や髪型、服装等の入力を受け付けて画像を絞り込む処理を行うことで迷子となった人物の特定を支援してもよい。表示部上でかかる人物が指定されたならば、画像照合処理装置20は、指定された人物の特徴を示すテンプレート24bを生成する。
かかるテンプレート24bが生成されたならば、監視カメラ10からリアルタイムで受信した動画像データに含まれる人物の画像データを切り出し、切り出した人物の画像データとテンプレートを照合処理して、テンプレートがいずれかの監視カメラ10で撮影された画像データと一致する場合にはその旨を報知する。これにより、現時点での迷子の所在位置を特定することが可能となる。
次に、図1に示した画像照合処理装置の構成について説明する。図2は、図1に示した画像照合処理装置20の内部構成を示す機能ブロック図である。同図に示すように、この画像照合処理装置20は、入力部21、表示部22、通信インタフェース部23、動画像データベース27、記憶部24及び制御部25を有する。
入力部21は、キーボードやマウスからなる入力デバイスであり、表示部22は、液晶パネルやディスプレイ装置からなる表示デバイスである。通信インタフェース部23は、監視カメラ10と通信を行うためのインタフェース部である。
動画像データベース27は、フラッシュメモリやハードディスク装置等からなる記憶デバイスであり、通信インタフェース部23を介して受信した動画像データ27aを記憶する。ここでは、この動画像データ27aが、連続する複数枚の静止画像データ(以下では、単に「フレーム」と言う)からなるものとする。
記憶部24は、フラッシュメモリやハードディスク装置等からなる記憶デバイスであり、参照画像特徴量24a及びテンプレート24bを記憶する。この参照画像特徴量24aは、あらかじめ撮像した複数人の参照画像データの特徴量であり、後述するオフセットを生成する際に使用される。テンプレート24bは、迷子として指定された人物の画像データから算出された特徴量とオフセットを対応付けたデータである。なお、オフセットに関する説明については後述する。
制御部25は、画像照合処理装置20を全体制御する制御部であり、迷子となっている人物のテンプレートを登録する登録処理部25Aと、登録されたテンプレートと監視カメラ10で撮像された動画像データ内の人物の画像データの照合処理を行う照合処理部25Bとを有する。実際には、これらの機能部に対応するプログラムを図示しないROMや不揮発性メモリに記憶しておき、これらのプログラムをCPUにロードして実行することにより、登録処理部25A及び照合処理部25Bにそれぞれ対応するプロセスを実行させることになる。
登録処理部25Aは、指定人物画像切出部25A1、特徴量算出部25A2、オフセット算出部25A3及びテンプレート生成部25A4を有する。指定人物画像切出部25A1は、動画像データベース27に蓄積された撮像済みの動画像データ(当日分のもの)の中から、迷子として指定された人物の複数枚(例えば、5枚)の画像データを切り出す処理部である。
具体的には、遊園地の係員によって画像照合処理装置20に対して所定の操作がなされると、動画像データベース27に蓄積された撮像済みの動画像データ27aが表示部22に表示制御される。ここで、入力部21を用いて表示部22の所定の位置が指示されると、指示された動画像データ27a内のフレーム及び座標位置を特定し、特定されたフレーム内の座標位置に位置する人物の画像データを切り出すとともに、当該フレームの前後に位置する複数枚のフレームから同一人物の画像データを切り出し、その結果として複数枚の人物の画像データを切り出すことになる。
特徴量算出部25A2は、指定人物画像切出部25A1により切り出された複数枚の人物の画像データの特徴量を算出する処理部である。この特徴量算出部25A2は、カラーの画像データをモノクロ濃淡画像に変換した濃淡画像データ、色相ヒストグラム、Gaborフィルタを適用した振幅成分及びGaborフィルタを適用した方向成分をそれぞれ特徴量として抽出する。
オフセット算出部25A3は、特徴量算出部25A2により算出された特徴量と、あらかじめ撮像された複数の参照画像データから算出された参照画像データの特徴量(以下、「参照画像特徴量」と言う)24aとを用いてオフセットを算出する処理部である。
ここで、このオフセットとは、人物の各画像データがどの程度その人物の特徴を表しているか否かを示す一種の重み付けデータであり、画像データがその人物の特徴を表している程高い値となる。例えば、画像データがその人物を背面から撮像したものである場合にはオフセットが小さくなり、画像データがその人物の正面顔を含んでいる場合にはオフセットが大きくなる。かかるオフセットは、複数の画像データの特徴量から照合値を算出する際の重み付けデータとして利用される。
テンプレート生成部25A4は、迷子として指定された人物の画像データの特徴量とオフセットからなるテンプレート24bを生成する処理部であり、生成されたテンプレート24bは記憶部24に格納される。
次に、照合処理部25Bについて説明する。照合処理部25Bは、人物画像切出部25B1、特徴量算出部25B2、照合値算出部25B3及び判定処理部25B4を有する。人物画像切出部25B1は、監視カメラ10からリアルタイムに受信した動画像データの各フレームに含まれる人物の画像データをそれぞれ切出処理する処理部である。
特徴量算出部25B2は、人物画像切出部25B1により切り出された人物の画像データの特徴量を算出する処理部である。この特徴量算出部25B2は、上記特徴量算出部25A2と同様に、カラーの画像データをモノクロ濃淡画像に変換した濃淡画像データ、色相ヒストグラム、Gaborフィルタを適用した振幅成分及び方向成分をそれぞれ特徴量として抽出する。
照合値算出部25B3は、特徴量算出部25B2により算出された人物の画像データの特徴量と、テンプレート24bに含まれる特徴量との照合値を算出する処理部である。かかる照合値算出部25B3による照合値の算出処理の詳細な説明については後述するが、各特徴量だけではなくオフセットについても照合値を算出する際に利用される。
判定処理部25B4は、照合値算出部25B3により算出された照合値に基づいて、指定人物に該当する人物が監視カメラ10からリアルタイムに受信した動画像データに存在するか否かを判定する処理部である。なお、該当する人物が存在する場合には、その旨が表示部22に表示される。この表示部22に表示する情報は、どの監視カメラ10が撮像した動画像データにテンプレート24bに対応する人物が映っていたかを示す情報が含まれる。
次に、図2に示した人物画像切出部25B1の切出処理についてさらに具体的に説明する。図3は、図2に示した人物画像切出部25B1の切出処理を説明するための説明図である。人物画像切出部25B1では、監視カメラ10から受信した動画像データに人物が含まれているか否かを判定する。かかる判定に際しては、動画像データの一部を形成するフレームすなわち静止画の画像データに対して人物のテンプレートを適用する周知のテンプレートマッチング技術等で行うことができる。
図3に示すように、位置P1、P3及びP5を通過する人物の動画像データを監視カメラ10で撮像した場合には、位置P1で人物を撮像したフレームG1、位置P3で人物を撮像したフレームG3、位置P5で人物を撮像したフレームG5からそれぞれ人物の画像データA1、A3及びA5を切り出す。ここでは、画像データA1が人物の上半身(正面)を含む画像データであり、画像データA3が人物の上半身(側面)を含む画像データであり、画像データA5が人物の上半身(背面)を含む画像データである場合を示している。
このように、人物画像切出部25B1では、同一人物を撮像した動画像データに含まれる複数のフレームから画像データを切り出すことで、同一人物を複数の時点で撮像した複数の画像データを切り出す。なお、これら同一人物に係る一連の画像データを入力画像データ群31とする。
次に、図2に示した特徴量算出部25A2による特徴量の算出処理について説明する。図4は、図2に示した特徴量算出部25A2による特徴量の算出処理を説明するための説明図である。なお、図2に示した特徴量算出部25B2についても同様の処理を行う。ここでは、入力画像データ群31には、5枚の画像データB1〜B5が含まれており、濃淡画像データ、色相ヒストグラム、Gaborフィルタ(Gabor Filter)を適用した場合の振幅成分及び方向成分を特徴量とする場合を示している。
濃淡画像データは、カラー画像である画像データB1〜B5を白黒濃淡画像に変換することによって生成する。具体的には、画像データB1〜B5の各画素のR、G、B成分を加算した加算値を所定数で除算して正規化することにより濃淡画像データの画素値に変換する。ただし、かかる方法に限定されるものではなく、従来から周知な様々な変換方法を用いることができる。
色相ヒストグラムは、横軸を色相の値とし、縦軸を画素数としたヒストグラムである。具体的には、RGB表色系の画素値を持つ画像データB1〜B5を、色相、明度、彩度からなるマンセル表色系に変換し、同じ色相を持つ画素をヒストグラム上に投票することで、色相ヒストグラムを生成することができる。かかる色相ヒストグラムは、画像データB1〜B5の色の特性を示す特徴量となる。
Gaborフィルタを適用した場合の振幅成分及び方向成分は、画像データB1〜B5のエッジの大きさ及び方向をそれぞれ示す特徴量である。図4に示すように、ここでは、5×5画素のサイズからなるGaborフィルタ5と、7×7画素のサイズからなるGaborフィルタ7を適用した場合を示している。このため、Gabor5振幅、Gabor7振幅、Gabor5方向及びGabor7方向が特徴量となる。なお、本実施例では、Gaborフィルタを用いる場合について説明するが、SOBELやラプラシアン等の他のエッジ検出オペレータを用いることもできる。
次に、図2に示した照合値算出部25B3による照合値の算出処理について説明する。図5は、図2に示した照合値算出部25B3による照合値の算出処理を説明するための説明図である。ここでは、入力画像データ群31には画像データB1〜B5が含まれることとし、画像データB1〜B5の特徴量はすでに算出されているものとする。また、テンプレート24bには、迷子として指定された人物の画像データA1〜A5に対応する特徴量が含まれている。
図5に示すように、照合値算出部25B3は、入力画像データ群31に含まれる各入力画像データB1〜B5の特徴量と、テンプレート24bに含まれる迷子として指定された人物の画像データA1〜A5との全ての組み合わせについて照合値をそれぞれ算出し、複数の照合値の最大値を入力画像データ群31とテンプレート24bとの照合値とする。
このように、全ての組み合わせの照合値を算出して最大値を算出する理由は、入力画像データ群31に対応する人物とテンプレート24bに対応する人物が同一人物であれば、少なくともいずれかの組み合わせにおいて照合値が高くなることが期待できるからである。
ここで、すでに説明した通り、上記特徴量には、濃淡画像データ、色相ヒストグラム、Gaborフィルタを適用した場合の振幅成分及び方向成分という複数の種類のものが含まれる。このため、画像データ間の特徴量を算出する際には、特徴量の種類毎に照合値を算出し、種類毎に算出した照合値を合計する。例えば、画像データB1の特徴量と画像データA1の特徴量との間の照合値は、画像データB1の白黒濃淡画像データと画像データA1の白黒濃淡画像との照合値を算出し、画像データB1の色相ヒストグラムと画像データA1の色相ヒストグラムとの照合値を算出し、画像データB1のGabor5振幅成分と画像データA1のGabor5振幅成分の照合値を算出し、画像データB1のGabor7振幅成分と画像データA1のGabor7振幅成分の照合値を算出し、画像データB1のGabor5方向成分と画像データA1のGabor5方向成分の照合値を算出し、画像データB1のGabor7方向と画像データA1のGabor7方向成分の照合値を算出し、算出した照合値をそれぞれ重み付け加算したものを画像データB1の特徴量と画像データA1の特徴量との照合値とする。
なお、画像データB1の白黒濃淡画像データと画像データA1の白黒濃淡画像データの照合値を算出する場合には、図6に示すようにブロック分割を行ってブロックの位置をずらしながら正規化相関を取り、全ブロックの合計値を照合値とする。人物が動くことを考慮し、細かな位置あわせをするためである。
また、Gabor5振幅成分、Gabor7振幅成分、Gabor5方向成分及びGabor7方向成分の照合値を算出する場合にも、白黒濃淡画像データの照合値を算出する場合と同様に、ブロック分割を行ってブロックの位置をずらしながら正規化相関を取り、全ブロックの合計値を照合値とする。色相ヒストグラムの照合値を算出する場合には、ヒストグラムの一致度合いを求める周知の技術を用いて照合値を算出する。
なお、照合値算出部25B3は、テンプレート24bが複数存在する場合には、各テンプレートの特徴量に対して入力画像データ群31内の画像データの特徴量との照合値を算出する。
また、テンプレート24b及び入力画像データ群31に含まれる画像データ数が多くなればなるほど、同一人物の場合に高い照合値が得られるため、処理負荷が過大とならない範囲で画像データ数を増やすことが望ましい。具体的には、2〜3秒分、フレーム数にして30〜40フレーム程度から画像データを切り出すことが好適である。ただし、入力画像データ群31に含まれる画像データは、撮影環境によっては1枚であってもよい。
また、画像データには、上半身の画像が含まれていればよく、顔部分の解像度が顔のみによる画像照合処理には不足であっても人物の画像照合処理が可能である。また、後ろ向きなど顔が写っていなくてもよい。なお、上半身に加えて下半身も写っているならば画像照合処理の精度はさらに向上する。
次に、図2に示した照合値算出部25B3による照合値の算出をさらに詳細に説明する。図7は、図2に示した照合値算出部25B3による照合値の算出の具体例を示す図である。同図では、入力画像データ群31aの特徴量とテンプレート24bに含まれる特徴量とを照合した場合と、入力画像データ群31bの特徴量とテンプレート24bに含まれる特徴量とを照合した場合を示している。ただし、入力画像データ群31aの特徴量とテンプレート24bの特徴量は、同一人物を撮像した動画像データから生成したものであり、入力画像データ群31bの特徴量とテンプレート24bの特徴量は、異なる人物を撮像した動画像データから生成したものとする。
入力画像データ群31aの特徴量には、人物を前方から撮像した画像データB1aの特徴量と、人物を斜め前方から撮像した画像データB2aの特徴量と、人物を側方から撮像した画像データB3aの特徴量と、人物を斜め後方から撮像した画像データB4aの特徴量と、人物を後方から撮像した画像データB5aの特徴量とが含まれる。また、テンプレート24bの特徴量には、人物を前方から撮像した画像データA1の特徴量と、人物を斜め前方から撮像した画像データA2の特徴量と、人物を側方から撮像した画像データA3の特徴量と、人物を斜め後方から撮像した画像データA4の特徴量と、人物を後方から撮像した画像データA5の特徴量とが含まれる。
画像データB1aの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB1aの特徴量と画像データA1の特徴量との間で算出された照合値「0.60」が最大値となる。また、画像データB2aの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB2aの特徴量と画像データA2の特徴量との間で算出された照合値「0.56」が最大値となる。また、画像データB3aの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB3aの特徴量と画像データA3の特徴量との間で算出された照合値「0.53」が最大値となる。また、画像データB4aの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB4aの特徴量と画像データA4の特徴量との間で算出された照合値「0.59」が最大値となる。また、画像データB5aの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB5aの特徴量と画像データA5の特徴量との間で算出された照合値「0.60」が最大値となる。
ここで、入力画像データ群31aの特徴量とテンプレート24bの特徴量との照合値は、画像データB1aの特徴量と画像データA1の特徴量との照合値「0.60」、画像データB2aの特徴量と画像データA2の特徴量との照合値「0.56」、画像データB3aの特徴量と画像データA3の特徴量との照合値「0.53」、画像データB4aの特徴量と画像データA4の特徴量との照合値「0.59」及び画像データB5aの特徴量と画像データA5の特徴量との照合値「0.60」のうち最大の値である「0.60」となる。
一方で、画像データB1bの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB1bの特徴量と画像データA1の特徴量との間で算出された照合値「0.30」が最大値となる。また、画像データB2bの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB2bの特徴量と画像データA2の特徴量との間で算出された照合値「0.47」が最大値となる。また、画像データB3bの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB3bの特徴量と画像データA3の特徴量との間で算出された照合値「0.39」が最大値となる。また、画像データB4bの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB4bの特徴量と画像データA4の特徴量との間で算出された照合値「0.51」が最大値となる。また、画像データB5bの特徴量と画像データA1〜A5の特徴量とを照合すると、画像データB5bの特徴量と画像データA5の特徴量との間で算出された照合値「0.60」が最大値となる。
ここで、入力画像データ群31bの特徴量とテンプレート24bの特徴量との照合値は、画像データB1bの特徴量と画像データA1の特徴量との照合値「0.30」、画像データB2bの特徴量と画像データA2の特徴量との照合値「0.47」、画像データB3bの特徴量と画像データA3の特徴量との照合値「0.39」、画像データB4bの特徴量と画像データA4の特徴量との照合値「0.51」及び画像データB5bの特徴量と画像データA5の特徴量との照合値「0.60」のうち最大の値である「0.60」となる。
この結果から分かるように、本来は、同一人物を照合した場合の照合値は、異なる人物を照合した場合の照合値よりも高くなる必要があるにも係わらず、上記の具体例では、同一人物の場合の照合値と異なる人物の場合の照合値が、ともに「0.60」と同一の値となってしまっている。その理由は、前方から撮像した画像データや側方から撮像した画像データは人物の特徴を示す情報を多く含むのに対し、後方から撮像した画像データには人物の特徴を示す情報が少ないためである。
かかる問題を解決するために、本実施例では、テンプレート24b内の各画像データの特徴量に対して一種の補正データの役割を果たすオフセットを対応付けており、このオフセットを用いて、人物の特徴を示す情報が少ない画像データから算出された照合値を下げる処理を行う。これにより、テンプレート24bの特徴量と入力画像データ群31の特徴量との照合値は、人物の特徴を示す情報が多い画像データから算出した照合値が採用されることとなる。その結果、異なる人物を同一人物であると誤って判定することを防止し、画像照合処理の精度を高めることができる。
図8は、図2に示したオフセット算出部25A3によるオフセットの算出の概念を説明するための説明図である。ここでは、指定人物画像切出部25A1によって画像データA1〜A5(以下、「登録用画像データ群32」と総称する)が切り出されているとともに、オフセットを算出するために、あらかじめ複数の参照画像データ群24a1及び24a2が準備されているものとする。この参照画像データ群24a1及び24a2は、監視カメラ10で撮像された人物に関する画像データであるが、指定人物とは無関係に選択されたものである。
同図に示すように、オフセット算出部25A3は、この画像データA1〜A5について、複数の参照画像データ群24a1及び24a2に含まれる参照画像データとの間でそれぞれ照合値を算出する。具体的には、まず画像データA1と参照画像データ群24a1に含まれる各参照画像データとの照合値をそれぞれ算出してその最大値を選択する。同様に、該画像データA1と参照画像データ群24a2に含まれる各参照画像データとの照合値をそれぞれ算出してその最大値を選択する。そして、選択した2つの照合値の平均値を画像データA1の平均照合値とする。
同様の処理を画像データA2〜A5に対して行い、画像データA1〜A5の平均照合値を算出する。ここでは、画像データA1の平均照合値が「0.30」となり、画像データA2の平均照合値が「0.35」となり、画像データA3の平均照合値が「0.42」となり、画像データA4の平均照合値が「0.53」となり、画像データA5の平均照合値が「0.60」となった状況を示している。
その後、かかる画像データA1〜A5の平均照合値の平均値を算出し、これを基準値とする。ここでは、この基準値は、(0.30+0.35+0.42+0.53+0.60)/5=0.44の算定式から算定される。
このため、オフセット算出部25A3は、上記基準値である「0.44」から各画像データA1〜A5の平均照合値を減算した値をオフセットとして算出する。ここでは、画像データA1のオフセットが「0.14」であり、画像データA2のオフセットが「0.09」であり、画像データA3のオフセットが「0.02」であり、画像データA4のオフセットが「−0.09」であり、画像データA5のオフセットが「−0.16」である状況を示している。
すなわち、後方から撮像された画像データA5のように、人物の特徴を示す情報が少ない画像データは、たとえ他人の画像データであっても後方から撮像されたものであればその照合値が大きくなるため、他人との平均照合値が大きくなり、オフセットがマイナスの値となる。一方、前方から撮像された画像データA1のように、人物の特徴を示す情報が多い画像データは、他人の画像データとの平均照合値が小さくなり、オフセットがプラスの値となる。また、特徴を示す情報が多ければ多いほど、オフセットの値が大きくなる。
このようにして、オフセット算出部25A3により算出されたオフセットは、テンプレート24b内の特徴量に対応付けて記憶部24に格納される。図9は、図2に示したテンプレート24bの一例を説明するための説明図である。
同図に示すように、テンプレート24bは、画像データA1〜A5ごとに、白黒濃淡画像データ及びそのオフセット、色相ヒストグラム及びそのオフセット、Gabor5の振幅成分及びそのオフセット、Gabor7の振幅成分及びそのオフセット、Gabor5の方向成分及びそのオフセット並びにGabor7の方向成分及びそのオフセットを有する。
次に、画像照合処理装置20によるテンプレートの登録処理手順について説明する。図10は、図2に示した画像照合処理装置20によるテンプレートの登録処理手順を示すフローチャートである。
同図に示すように、まず登録人物の指定を行う(ステップS101)。すなわち、迷子センタの係員による所定の操作入力を受け付けたならば、動画像データベース27に蓄積された過去の動画像データ27a(当日分)を表示部22に表示する。そして、入力部21を用いて表示部22の所定の位置が指示されると(ステップS101)、指示された動画像データ27a内のフレーム及び座標位置を特定し、特定されたフレーム内の座標位置に位置する人物の上半身を含む画像データが切り出されるとともに、当該フレームの前後に位置する複数枚のフレームから同一人物の画像データを切り出し、その結果として複数枚の人物の画像データを含む登録用画像データ群が切り出される(ステップS102)。
その後、特徴量算出部25A2が、登録用画像データ群に含まれる各画像データの特徴量を算出する(ステップS103)。具体的には、特徴量算出部25A2は、ステップS102により切り出された複数枚の人物の画像データについて、カラーの画像データをモノクロ濃淡画像に変換した濃淡画像データ、色相ヒストグラム、Gaborフィルタを適用した振幅成分及びGaborフィルタを適用した方向成分をそれぞれ特徴量として算出する。
オフセット算出部25A3は、ステップS103により算出された特徴量と、あらかじめ撮像された複数の参照画像データから算出された参照画像特徴量とを用いてオフセット算出処理を行う(ステップS104)。このオフセット算出処理(ステップS104)の詳細については後述する。
ステップS104の後、特徴量算出部25A2は、全ての種類の特徴量が算出されたか否かを判定する(ステップS105)。算出されていない特徴量が残っているならば(ステップS105;No)、特徴量算出部25A2は、ステップS103に移行して特徴量の算出を行う。
全ての種類の特徴量が算出されたならば(ステップS105;Yes)、テンプレート生成部25A4は、算出された特徴量とオフセットとを対応付けてテンプレート24bとして記憶部24に登録し(ステップS106)、処理を終了する。
次に、図10に示したオフセット算出処理について詳細に説明する。図11は、図10に示したオフセット算出処理手順を示すフローチャートである。同図に示すように、オフセット算出部25A3は、まず、変数i及び基準値を「0」に初期化(ステップS201)する。また、変数j及び最大照合値を「0」に初期化する(ステップS202)。
オフセット算出部25A3は、登録用画像データ群内の画像データ(i)を読み出し(ステップS203)、参照画像データ群(j)内に含まれる複数の参照画像データを読み出す(ステップS204)。
オフセット算出部25A3は、画像データ(i)と参照画像データ群(j)に含まれる各参照画像データとの照合値をそれぞれ算出して、その最大値を参照画像データ群(j)の最大照合値とする(ステップS205)。
ステップS205の後、オフセット算出部25A3は、変数jの値をインクリメントし(ステップS206)、変数jの値が「2」に達したか否かを判定する(ステップS207)。変数jの値が「2」に達していなければ(ステップS207;No)、ステップS204に移行して、参照画像データ群(j)内に含まれる複数の参照画像データを読み出す。
変数jの値が「2」に達したならば(ステップS207;Yes)、オフセット算出部25A3は、参照画像データ群(j)の最大照合値を合計し、変数jの値である「2」で除算して画像データ(i)の平均照合値を算出する(ステップS208)。
ステップS208の後、オフセット算出部25A3は、変数iの値をインクリメントし(ステップS209)、変数iの値が「5」に達したか否かを判定する(ステップS210)。変数iの値が「5」に達していなければ(ステップS210;No)、オフセット算出部25A3は、ステップS202に移行して、変数j及び最大照合値を「0」に初期化する。
変数iの値が「5」に達したならば(ステップS210;Yes)、オフセット算出部25A3は、画像データ(i)の平均照合値を合計し、変数iの値である「5」で除算して基準値を算出する(ステップS211)。
ステップS211の後、オフセット算出部25A3は、変数iの値を「0」に初期化する(ステップS212)。ステップS212の後、オフセット算出部25A3は、基準値から画像データ(i)の平均照合値を減算して画像データ(i)のオフセットを算出する(ステップS213)。
ステップS213の後、オフセット算出部25A3は、変数iの値をインクリメントし(ステップS214)、変数iの値が「5」に達したか否かを判定する(ステップS215)。変数iの値が「5」に達していなければ(ステップS215;No)、オフセット算出部25A3は、ステップS213に移行して、画像データ(i)のオフセットを算出する。変数iの値が「5」に達したならば(ステップS215;Yes)、オフセット算出部25A3は、オフセット算出処理を終了する。なお、図11は、登録用画像データ群に含まれる画像データの数が「5」、参照画像データ群の数が「2」である場合を示したため、変数iの最大値を「5」、変数jの最大値を「2」としたが、変数i及びjの最大値は、登録用画像データ群に含まれる画像データの数並びに参照画像データ群の数により適宜変更可能である。
次に、画像照合処理装置20による画像照合処理手順について説明する。図12は、図2に示した画像照合処理装置20による画像照合処理手順を示すフローチャートである。同図に示すように、画像照合処理装置20の人物画像切出部25B1は、まず、監視カメラ10からリアルタイムに受信した動画像データの各フレームに含まれる人物を検知し(ステップS301)、動画像データの複数のフレームに渡る人物の移動を追跡して、複数のフレームから人物の上半身を含む画像データを入力画像データ群として切り出す(ステップS302)。
特徴量算出部25A2は、入力画像データ群の各画像データについて、カラーの画像データをモノクロ濃淡画像に変換した濃淡画像データ、色相ヒストグラム、Gaborフィルタを適用した振幅成分及び方向成分をそれぞれ特徴量として算出する(ステップS303)。
照合値算出部25B3は、テンプレートと入力画像データ群との照合値を算出する照合値算出処理を実行する(ステップS304)。この照合値算出処理(ステップS304)の詳細については後述する。照合値算出部25B3は、ステップS303により算出された特徴量(カラーの画像データをモノクロ濃淡画像に変換した濃淡画像データ、色相ヒストグラム、Gaborフィルタを適用した振幅成分及び方向成分)のうち、照合値の算出処理が未処理の特徴量があるかを判定し(ステップS305)、未処理の特徴量があるならば(ステップS305;Yes)、照合値算出処理(ステップS304)に移行する。
全ての種類の特徴量について照合値算出処理を行って、未処理の特徴量が無いならば(ステップS305;No)、照合値算出部25B3は、各特徴量について算出した照合値(後述の最大照合値)に重み係数を掛けて合計し(ステップS306)、判定処理部25B4に出力する。
判定処理部25B4は、ステップS306により算出された照合値の合計としきい値とを比較する(ステップS307)。照合値の合計がしきい値以上であるならば(ステップS307;Yes)、判定処理部25B4は、選択したテンプレート24bと入力画像データ群とが一致すると判定する(ステップS309)。選択したテンプレート24bと入力画像データ群とが一致するのは、選択したテンプレートに対応する人物が監視カメラ10からリアルタイムに受信した動画像データに存在する場合である。判定処理部25B4は、どの監視カメラ10が撮像した動画像データにテンプレート24bに対応する人物が映っていたかを示す情報とともに判定結果を表示部22に表示出力して(ステップS310)、画像照合処理を終了する。
判定処理部25B4は、ステップS306により算出された照合値の合計がしきい値未満であるならば(ステップS307;No)、未処理のテンプレートが残っているか否かを判定する(ステップS308)。未処理のテンプレートが残っているならば(ステップS308;Yes)、照合値算出部25B3は、ステップS304に移行する。未処理のテンプレートが残っていないならば(ステップS308;No)、画像照合処理を終了する。このフローでは、照合値の合計がしきい値以上のものがあれば判定結果を出力しているが、すべてのテンプレートについて、照合値の合計を算出し、照合値の合計が最大のものを判定結果としてもよい。また、しきい値以上のテンプレートが複数あった場合はエラーとしてもよい。
次に、図12に示した照合値算出処理について詳細に説明する。図13は、図12に示した照合値算出処理の処理手順を示すフローチャートである。同図に示すように、照合値算出部25B3は、まず、変数m及び最大照合値を「0」に初期化する(ステップS401)。また、変数nを「0」に初期化する(ステップS402)。
照合値算出部25B3は、入力画像データ群内の画像データ(m)を読み出し(ステップS403)、テンプレート内の画像データ(n)を読み出す(ステップS404)。照合値算出部25B3は、画像データ(m)と画像データ(n)との照合値を算出し(ステップS405)、画像データ(n)に対応するオフセットを加算する(ステップS406)。
照合値算出部25B3は、オフセット加算後の照合値が最大照合値を超えているならば(ステップS407;Yes)、オフセット加算後の照合値を最大照合値とする(ステップS408)。
ステップS408の後若しくはオフセット加算後の照合値が最大照合値以下である場合には(ステップS407;No)、照合値算出部25B3は、変数nの値をインクリメントし(ステップS409)、変数nの値が「5」に達したか否かを判定する(ステップS410)。変数nの値が「5」に達していなければ(ステップS410;No)、ステップS404に移行して、テンプレート内の画像データ(n)を読み出す。
変数nの値が「5」に達したならば(ステップS410;Yes)、照合値算出部25B3は、最大照合値を画像データ(m)の照合値として(ステップS411)、最大照合値の値を「0」に初期化する(ステップS412)。
ステップS412の後、照合値算出部25B3は、変数mの値をインクリメントし(ステップS413)、変数mの値が「5」に達したか否かを判定する(ステップS414)。変数mの値が「5」に達していなければ(ステップS414;No)、ステップS402に移行して、変数nを「0」に初期化する。変数mの値が「5」に達したならば(ステップS414;Yes)、照合値算出部25B3は、照合値算出処理を終了する。なお、図13は、入力画像データ群及びテンプレートに含まれる画像データの数がそれぞれ「5」である場合を示したため、変数m及びnの最大値を「5」としたが、変数m及びnの最大値は、入力画像データ群及びテンプレートに含まれる画像データの数により適宜変更可能である。
このようにして、入力画像データ群に含まれる各画像データの特徴量毎の最大の照合値を求め、前述したように、特徴量毎の最大の照合値に重み係数を掛けて合算し、テンプレートと入力画像データ群とが一致するか否かの判定を行う。
上述してきたように、本実施例1では、画像照合処理装置20は、監視カメラ10が撮像した動画像データを動画像データベース27に蓄積し、蓄積した動画像データから登録人物を指定された場合には、動画像データを形成する複数のフレームから登録人物に係る複数の画像データをそれぞれ切り出し、切り出された登録人物に係る複数の画像データから特徴量をそれぞれ算定し、算定された複数の特徴量を登録人物のテンプレートとして記憶部24に記憶する。そして、監視カメラ10が撮像した動画像データを形成する複数のフレームから照合対象者に係る複数の画像データをそれぞれ切り出し、切り出された照合対象者に係る複数の画像データから特徴量をそれぞれ算定し、算定された複数の特徴量とテンプレートを形成する複数の特徴量との全ての組み合わせについての照合値をそれぞれ算定し、算定された複数の照合値のうちの最大の値となる最大照合値が所定の値以上である場合に、照合対象者が前記テンプレート内の登録人物と一致すると判定する。かかる構成により、画像照合処理装置20は、人物の顔等の身体的特徴部分を含む適正な画像データが撮像されていない場合であっても、該画像データに含まれる人物と登録された人物が一致するか否かを正確かつ効率的に判定することができる。
また、登録人物のテンプレートを登録する際に、テンプレートに含まれる複数の画像データに対し、登録人物の特徴を示す情報が多い画像データほど照合値が大きくなるようにオフセットを算定して画像データに対応付ける。このため、登録人物の特徴を示す情報が少ない画像データから算出された照合値が最大照合値となることを防止し、画像照合処理の精度を向上することができる。
具体的には、顔の画像の解像度が十分でない場合や、顔が映っていない場合でも人物の照合が可能である。また、体の一部が写っていない場合でも人物の照合が可能である。さらに、互いに相関の小さい複数の特徴量を組み合わせて照合を行うことで、画像照合処理の精度を向上している。
本実施例3では、登録用として設けられた監視カメラに写った全ての人物が他の監視カメラのいずれに映るかを判定する場合について説明する。まず、本実施例3に係る画像照合処理システムのシステム構成について説明する。図17は、実施例3に係る画像照合処理システムのシステム構成図である。
図17に示すように、画像照合処理装置220は、ゲート11の近傍に設置された監視カメラ10aをテンプレートの登録用に使用する。画像照合処理装置220は、監視カメラ10aより受信した動画像データに含まれる全ての人物についてテンプレート24bを生成する。
テンプレート24bの生成後、画像照合処理装置220は、監視カメラ10b、監視カメラ10c及び監視カメラ10dより受信した動画像データに含まれる人物の画像とテンプレート24bとを照合する画像照合処理を行う。この画像照合処理によって、監視カメラ10b、監視カメラ10c及び監視カメラ10dより受信した動画像データに含まれる人物の画像とテンプレート24bとが一致すると判定したならば、画像照合処理装置220は、登録した人物が映っていた監視カメラ10の設置場所と動画像データの撮像時刻とを対応付けた行動ログを生成・更新する。この行動ログは、登録した人物毎に生成する。
次に、実施例3に係る画像照合処理装置の構成について説明する。図18は、図17に示した画像照合処理装置の内部構成を示す機能ブロック図である。同図に示す画像照合処理装置220は、動画像データベース27を有さず、記憶部24に行動ログ221をさらに記憶する。また、登録処理部25Aは、人物画像切出し部223、特徴量算出部25A2、オフセット算出部25A3、テンプレート生成部25A4及びテンプレート登録処理部224を有する。また、照合処理部25Bの判定処理部222は、実施例1に示した判定処理部25B4と処理が異なる。
行動ログ221は、テンプレート24bに登録された人物が監視カメラ10で撮像される度に、撮像された場所と時刻とを記録したデータである。この行動ログ221により、テンプレート24bに登録された人物の行動軌跡を辿ることができる。
画像照合処理装置220が監視カメラ10aより動画像データを受信すると、登録処理部25Aの人物画像切出部223により動画像データの各フレームに含まれる人物の画像データが切り出され、特徴量算出部25A2による特徴量の算出が行われる。
オフセット算出部25A3は、実施例1と同様に、特徴量算出部25A2により算出された特徴量と、あらかじめ撮像された複数の参照画像データから算出された参照画像特徴量24aとを用いてオフセットを算出する。テンプレート生成部25A4は、特徴量算出部25A2により算出された特徴量とオフセットとを対応付けてテンプレートを生成する。
テンプレート登録処理部224は、テンプレート生成部25A4により生成されたテンプレートを記憶部24に登録する処理部である。テンプレート登録処理部224は、テンプレート生成部25A4により生成されたテンプレートと、既に記憶部24bに記憶されたテンプレート24bとを照合処理する。かかる照合処理の結果、一致するテンプレート24bが記憶部24に登録されていなければ、テンプレート生成部25A4により生成されたテンプレートを新たな人物に対応する新規のテンプレートとして登録する。一方、一致するテンプレート24bが記憶部24に登録されているならば、テンプレート生成部25A4により生成されたテンプレートを既存の人物に対応する最新のテンプレートとしてテンプレート24bを更新する。
テンプレート登録処理部224は、新規のテンプレートを登録した場合には、該テンプレートに対応する行動ログ221を生成し、記憶部24に記憶させる。また、既存のテンプレートを更新した場合には、該テンプレートに対応する行動ログ221に監視カメラ10aの場所並びに撮像時刻を追加して更新する。
画像照合処理装置220が監視カメラ10b、監視カメラ10c及び監視カメラ10dより動画像データを受信すると、実施例1と同様に、人物画像切出部25B1が動画像データの各フレームに含まれる人物の画像データをそれぞれ切出処理する。特徴量算出部25B2は、人物画像切出部25B1により切り出された人物の画像データの特徴量を算出し、照合値算出部25B3による照合値の算出が行われる。
判定処理部222は、照合値算出部25B3により算出された照合値に基づいて、指定人物に該当する人物が監視カメラ10からリアルタイムに受信した動画像データに存在するか否かを判定する。判定処理部222は、該当する人物が存在する場合には、どの監視カメラ10が撮像した動画像データにテンプレート24bに対応する人物が映っていたかを示す情報、及び該動画データの撮像時刻とを対応付けて、行動ログ221に登録する。
次に、実施例3に係る画像照合処理装置220による処理動作について説明する。図19は、画像照合処理装置220が監視カメラ10aにより撮像された動画像データを処理する場合の処理手順を示すフローチャートである。図19に示すように、画像照合処理装置220は、監視カメラ10aが撮像した動画像データから人物の存在を検知し(ステップS601)、動画像データの複数のフレームに渡る人物の移動を追跡して、複数のフレームから人物の上半身を含む画像データを入力画像データ群として切り出す(ステップS602)。
画像照合処理装置220は、入力画像データ群に含まれる各画像データについて特徴量を算出し(ステップS603)、照合処理を行う(ステップS604)。照合処理の結果、入力画像データ群と一致するテンプレートがある場合には(ステップS605;Yes)、該テンプレートを上書きして更新登録する(ステップS606)。一方、照合処理の結果、入力画像データ群と一致するテンプレートがない場合には(ステップS605;No)、画像照合処理装置220は、ステップS603により算出した特徴量を用いてテンプレートを新規登録する(ステップS608)。
テンプレートの更新登録(ステップS606)又は新規登録(ステップS608)を行った後、画像照合処理装置220は、監視カメラ10の場所並びに撮像時刻を行動ログ221に登録して(ステップS607)処理を終了する。
図20は、画像照合処理装置220が監視カメラ10b、監視カメラ10c及び監視カメラ10dにより撮像された動画像データを処理する場合の処理手順を示すフローチャートである。
図20に示すように、画像照合処理装置220は、監視カメラ10b、監視カメラ10c及び監視カメラ10dが撮像した動画像データから人物の存在を検知し(ステップS701)、動画像データの複数のフレームに渡る人物の移動を追跡して、複数のフレームから人物の上半身を含む画像データを入力画像データ群として切り出す(ステップS702)。
画像照合処理装置220は、入力画像データ群に含まれる各画像データについて特徴量を算出し(ステップS703)、照合処理を行う(ステップS704)。この特徴量算出及び照合処理については、実施例1及び2と同様であるので、説明を省略する。
照合処理の結果、入力画像データ群と一致するテンプレートがある場合には(ステップS705;Yes)、画像照合処理装置220は、行動ログを登録して(ステップS706)処理を終了する。この行動ログの登録は、行動ログ221に監視カメラ10の場所並びに撮像時刻を追加して更新することで行われる。また、表示部22に判定結果を出力しても良い。一方、画像照合処理の結果、入力画像データ群と一致するテンプレートがない場合には(ステップS705;No)、画像照合処理装置220はそのまま処理を終了する。
上述してきたように、本実施例3では、画像照合処理装置220は、登録用の監視カメラ10aにより撮像された動画像データについては、テンプレートとの画像照合処理を行った後、照合結果に基づいてテンプレートの新規登録又は更新登録を行う。かかる構成においても実施例1と同様に、人物の顔等の身体的特徴部分を含む適正な画像データが撮像されていない場合であっても、該画像データに含まれる人物と登録された人物が一致するか否かを正確かつ効率的に判定することができる。オフセットを算定して画像データに対応付けることにより、画像照合処理の精度を向上することができる点も実施例1と同様である。
また、登録した人物が監視カメラ10に撮像される度に行動ログ221を更新することで、遊園地に入場した人物がどのような経路を辿ったかというデータや、各利用者の入場から退場までの滞在時間に関するデータを入手することも可能となる。
なお、上記実施例1、2及び3に図示した各構成は機能概略的なものであり、必ずしも物理的に図示の構成をされていることを要しない。すなわち、各装置の分散・統合の形態は図示のものに限られず、その全部または一部を各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
例えば、上記実施例1、2及び3では、4台の監視カメラが撮像した動画像データを単一の画像照合処理装置により処理する構成を例示したが、画像照合処理装置を複数設けて、複数の画像照合処理装置がテンプレートを共有する構成として実施してもよい。
また、画像照合処理装置に接続する監視カメラは任意の数を用いることができる。膨大な監視カメラを設置しても良いし、1台の監視カメラであっても良い。一台の監視カメラで実施する場合には、該監視カメラに登録人物が写る度にその時刻を記憶することが好ましい。このように、本発明は、ある時刻及び場所の動画像データを登録に使用し、時刻と場所とのうち少なくとも一方が異なる動画像データを画像照合処理に使用する場合に広く適用可能である。
また、上記実施例1、2及び3では、監視カメラが撮像した動画像データをリアルタイムでテンプレートと照合する構成を例示して説明を行ったが、監視カメラが撮像した動画像データを所定の記憶部に記憶させて保存しておき、保存した動画像データを任意のタイミングで読み出してテンプレートと照合するように構成してもよい。このように監視カメラが撮像した動画像データを一旦保存する構成とすれば、保存により蓄積された過去の動画像データを対象として照合を行うことが可能である。
また、上記実施例3では、監視カメラ10aをテンプレートの登録専用に使用する構成について説明を行ったが、監視カメラ10aを登録と画像照合処理の双方に使用する構成としてもよい。