以下、本発明の実施の形態(以下実施形態という)である対象物検知装置1、及び学習装置2について、図面に基づいて説明する。対象物検知装置1は、例えば、監視空間から得られた監視画像等を入力画像とし、当該入力画像に現れる対象物を検知する。本実施形態は人を対象物とし、監視空間から得られた監視画像において、人の特徴点を検出することで侵入者を検知し、侵入者を検知すると異常信号を出力する。学習装置2は、対象物検知装置1に用いる特徴点情報を学習により生成する。
[対象物検知装置]
図1は、実施形態に係る対象物検知装置1の概略の構成を示すブロック図である。対象物検知装置1は、撮像部10、画像取得部11、検知記憶部12、特徴点情報設定部13、検知制御部14及び検知出力部15を含んで構成される。画像取得部11は撮像部10と接続され、画像取得部11、検知記憶部12、特徴点情報設定部13及び検知出力部15は検知制御部14と接続される。
撮像部10は監視カメラであり、監視空間内に設置される。例えば、監視カメラは監視空間の天井部に監視空間を俯瞰して設置される。当該監視カメラは、監視空間を所定の時間間隔(例えば1秒)で撮影し、各画素が多階調の画素値で表現される監視画像を順次、出力する。
画像取得部11は、撮像部10により撮影された監視画像を取得して検知制御部14に取り込むインターフェース回路である。以下、画像取得部11から検知制御部14に入力される画像を入力画像と称する。
検知記憶部12は、ROM(Read Only Memory)、RAM(Random Access Memory)、ハードディスク等の記憶装置であり、検知制御部14で使用されるプログラムやデータを記憶する。検知記憶部12はこれらプログラム、データを検知制御部14との間で入出力する。検知記憶部12に記憶されるデータには、特徴点情報120、投票画像121が含まれる。
特徴点情報120は、対象物の画像特徴を有する複数の特徴点ごとに、特徴点を識別する特徴点番号、対象物画像における重心位置等の基準点位置と特徴点位置との相対位置、入力画像から特徴点を検出するための検出基準、及び相対位置のばらつき度から構成されている。
この特徴点情報120は、対象物が撮像された多数の対象物標本画像を基に、後述する学習装置2によって予め生成される。
図2は、対象物標本画像の一例を示す模式図である。本実施形態では検知対象物は人であり、対象物標本画像は人の全体画像である。各対象物標本画像は、人の形状に合わせて幅(水平)方向64ピクセル×高さ(垂直)方向128ピクセルの縦長の矩形に規格化され、その重心座標(32,64)を対象物基準点Bと定める。
図3は、特徴点の例について特徴点情報120の一部のパラメータを対象物標本画像に対応する二次元領域上にて模式的に表現した模式図であり、図3(a)〜(c)はそれぞれ異なる特徴点に対応する。また、図4は、特徴点情報120を構成するパラメータ群を表形式に表した模式図である。図3,図4を参照して特徴点情報120を構成する各パラメータを説明する。ここで、設定されている特徴点の数はM(>1)個とし、各特徴点には1〜Mの特徴点番号(特徴点#)を通しで付与する。M個の特徴点の位置(図3にて“×”印)はそれぞれ異なり、特徴点#1〜#Mのそれぞれについてその位置から対象物基準点BへのベクトルR1〜RMが当該特徴点の相対位置として、特徴点情報120に記憶されている。また特徴点情報120には、M個の特徴点の検出基準として、特徴点#1〜#Mのそれぞれの位置における対象物標本画像の特徴量を表すN次元のベクトルA1〜AMが記憶されている。
特徴量は公知のシェイプコンテキスト(Shape Context)やヒストグラム・オブ・オリエンティッド・グラディエント(HOG:Histograms of Oriented Gradients;Navneet Dalal and Bill Triggs,“Histograms of Oriented Gradients for Human Detection”,In Proceedings of IEEE Conference Computer Vision and Pattern Recognition 2005)等である。
シェイプコンテキストは特徴点周辺におけるエッジの分布特性を表す特徴量であり、データはベクトル形式である。シェイプコンテキストは特徴点を中心に設定された分析窓内の画像を分析して算出され、そのベクトルの各要素のインデックスは分析窓内を複数に分割した小領域と量子化されたエッジ方向との組み合わせに対応し、各要素の値はインデックスが表す小領域においてインデックスが表すエッジ方向を有するエッジの強度の和に対応する。HOGも特徴点周辺における輝度微分値の分布特性を表すベクトル量である。シェイプコンテキストもHOGも、特徴点周辺における輝度勾配の分布特性を表しており、照明変動に頑強であることから対象物の検知に適している。
M個の特徴点のばらつき度も各特徴点ごとに異なり得る特徴量であり、特徴点#1〜#Mのそれぞれについてそのばらつき度V1〜VMが特徴点情報120として記憶されている。本実施形態では、ばらつき度は特徴点位置と基準点位置との相対位置に関する学習した複数の標本画像における分散値である。ばらつき度はx方向(水平方向)の成分vxと、y方向(垂直方向)の成分vyとを有している。図3にて特徴点を中心とする実線の楕円は所定の信頼度の信頼区間に相当する範囲を表しており、分散値から求められる。なお、当該楕円のx方向、y方向それぞれの半径に対応させて記したvx、vyそれぞれの平方根(つまり標準偏差)の表示は、それら半径の比がx方向、y方向の標準偏差の比で与えられることを示している。
なお、特徴点位置と基準点位置との相対位置の分布を解析して、分布の主軸を求め、この主軸に直交する軸との2軸で表してもよい。
特徴点位置と基準点位置との相対位置のばらつきは姿勢の変動やプロポーションの個人差などにより生じる。図3(a)に示す特徴点#1は頭部付近の特徴点を表しており、図3(c)に示す特徴点#Mは脚部付近の特徴点を表している。頭部に比べて脚部は可動域が大きいため、特徴点#1のばらつき度より特徴点#Mのばらつき度の方が大きい(vx1>vxM,vy1>vyM)。
投票画像121は、対象物判定に使用される情報であって、入力画像から検出された複数の特徴点について、特徴点それぞれのばらつき度を加味して入力画像と同じ大きさのフレーム上の相対位置に投票した結果を示す画像である。また、本実施形態では、後述するように複数の倍率(検知倍率)にて対象物検知処理が行われることに対応して、投票画像121は検知倍率ごとに用意される。
特徴点情報設定部13は、特徴点情報120を外部から入力するUSB端子、CDドライブ、ネットワークアダプタ等のインターフェース回路及びそれぞれのドライバ・プログラム、及び入力された特徴点情報120を検知記憶部12に格納させるプログラムからなる。この特徴点情報設定部13を介して、学習装置2にて生成された特徴点情報212が入力され、特徴点情報120として検知記憶部12に格納される。
検知制御部14はDSP(Digital Signal Processor)、MCU(Micro Control Unit)等の演算装置を用いて構成される。検知制御部14は、画像取得部11からの入力画像を処理して人の存在有無を判定し、人を検知すると異常信号を検知出力部15へ出力する処理を行う。具体的には、検知制御部14は検知記憶部12からプログラムを読み出して実行し、後述する特徴点検出部140、投票部141、対象物判定部142、異常判定部143として機能する。
特徴点検出部140は、入力画像から各特徴点を検出し、当該検出された特徴点の特徴点番号、当該特徴点が検出された入力画像内の位置(検出位置)、当該特徴点の検出度、及び当該特徴点を検出したときの検知倍率を対応付けた特徴点検出情報を投票部141に出力する。
特徴点検出部140は入力画像内の各位置を中心に分析窓を設定して分析窓内の特徴量を抽出し、当該特徴量を各特徴点の検出基準と比較して検出度を算出する。そして、算出された検出度が予め設定された特徴点検出閾値Tpを超えていれば当該位置に当該特徴点を検出し、検出度がTpを超えていなければ当該位置に当該特徴点を検出しない。特徴量は、本実施形態では上述したシェイプコンテキストとするが、HOGとすることもできる。なお、特徴量は、後述する学習装置2にて検出基準を学習したときに用いられた特徴量と同じ種類とする必要がある。
本実施形態では検出基準として特徴量を記憶しており、この場合、特徴点検出部140はパターンマッチングを行なって特徴点を検出する。すなわち、抽出された特徴量と検出基準の特徴量とのユークリッド距離dを検出度として算出し、dがTp以下であれば特徴点を検出する。
検出基準として識別関数を記憶する別の実施形態においては、特徴点検出部140は、抽出された特徴量を識別関数に入力してその出力値である尤度を検出度として算出し、尤度がTpより大きければ特徴点を検出する。つまり特徴点検出部140は識別器として動作するように構成される。
入力画像に撮像されている対象物のサイズは様々であることに対応して、特徴点検出部140は、特徴点の検出に際して、検知倍率を調整して対象物のサイズの多様性への適合処理を行う。ここで、検知倍率αは、対象物標本画像に撮像されていた対象物のサイズを基準にしたときの、入力画像に撮像されている対象物のサイズの倍率である。具体的には、入力画像に撮像されている対象物のサイズを対象物標本画像のサイズに合わせるために、入力画像の方を予め設定された複数段階の検知倍率に応じて拡大又は縮小する。その拡大・縮小により、入力画像は元のサイズの1/αとなる。検知倍率αは、例えば(1.05)3倍、(1.05)2倍、1.05倍、1.0倍、1/1.05倍、1/(1.05)2倍、1/(1.05)3倍の7段階に設定する。拡大・縮小処理は公知のバイリニア補間法などにより行うことができる。
投票部141は、入力画像にて検出された特徴点それぞれについて投票値を求める。具体的には、投票部141は、特徴点情報120及び、特徴点検出部140からの特徴点検出情報を参照して、特徴点検出部140により検出された各特徴点について、当該特徴点の検出位置Pから当該特徴点の相対位置Rだけずらした相対基準点Qを算出し、このQを中心とし当該特徴点のばらつき度に応じた距離特性の投票値を設定する。そして、設定された投票位置と投票値との関係を対象物判定部142へ出力する。検出時の検知倍率をαとすると、特徴点#jの相対基準点Qは次式により算出される。
Q=(P+Rj)/α ・・・・・・ (1)
ここで、検出された特徴点が真である場合には、相対基準点Qは、対象物基準点Bが存在する位置を表す。つまり、同一の対象物から検出される特徴点同士はそれぞれの相対基準点Qが理想的には互いに一致する。実際には検出された特徴点はそのばらつきにより、相対位置を表すベクトルRの始点とした特徴点の代表位置からのずれを有し、その分、同一の対象物から検出された特徴点同士の相対基準点Qの間にも距離が生じる。
特徴点#jの検出位置Pを(p
x,p
y)、相対基準点Qを(q
x,q
y)と表すと入力画像における各画素(x,y)の投票値f(x,y)を次式で定義することができる。
(2)式で表されるf(x,y)は平均が相対基準点Qであり、分散がばらつき度Vjである2次元正規分布である。(2)式で定義される投票値には、相対基準点Qで最大値を示し、相対基準点Qから遠ざかるほど小さくなる距離減衰特性が与えられる。そして、ばらつき度Vjが大きいほど緩慢な距離減衰特性が与えられ、ばらつき度Vjが小さいほど急峻な距離減衰特性が与えられる。つまり投票部141は、投票値を相対基準点からの距離に応じて減少させる。すなわち、相対基準点が対象物基準点Bに近いほど、対象物基準点Bにて高い投票値が設定される。
wは、検出度の関数であり、検出度が特徴点検出閾値Tpを超えるほど大きな値となるように設定される。つまり投票値f(x,y)は、検出度が特徴点検出閾値Tpを超えるほど大きく重みづけされる。すなわち検出の信頼性が高い特徴点ほど高い投票値が設定される。例えば、ユークリッド距離dに対してw=exp(−kd)と設定される。但し、kは予め設定された正の定数である。また、例えば、検出度が尤度Lである別の実施形態では、w=Lと設定することができる。
投票値の関数fは(2)式以外のものに定義することもでき、例えば、次に示す(3)式で表される四角錘型関数、又は(4)式で表される円錐型関数で規定することができる。
これら(3)式,(4)式の関数によれば上述したような距離減衰特性のほか、投票値が設定される距離範囲がばらつき度に応じた広さに制限される。なお、(2)式の投票関数においても、例えば次の(5)式を満たす距離範囲に制限することができる。ちなみに(5)式は正規分布における3σの信頼区間を表す。このように制限することで、真の対象物の基準点が存在することが確からしい範囲のみに投票値を設定でき、対象物検知の信頼性が向上する。
また、さらに別の実施形態として、(5)式の範囲にf(x,y)=wの投票値を設定する構成としてもよい。
図5は、入力画像400にて検出された特徴点の例を示す模式図である。図5において“×”印が検出された特徴点の位置を示す。例えば、特徴点401、402,403が同一人の肩、左足、右足に検出されている。
図6は同一の対象物に検出された特徴点401〜403について投票の様子を例示する模式図である。なお、入力画像400に撮像されている当該対象物の重心の真値は(x0,y0)であるとする。図6に示す画像430は入力画像400の一部である。また、グラフ450は入力画像430における直線y=y0に沿った位置での本実施形態による投票の様子を示すものであり、横軸が位置、縦軸は投票値f(x,y)を表す。領域411〜413はそれぞれ特徴点401〜403に対する相対基準点421〜423を中心として設定される投票範囲を表す。また、グラフ451〜453は当該投票範囲での投票値であり、それぞれ特徴点401〜403に対する投票値を表す。
対象物基準点Bである重心(x0,y0)と、各特徴点の相対基準点421〜423との位置の相違が各特徴点の検出位置のずれに対応する。(x0,y0)には、x方向に比較的小さなずれで検出された特徴点401及び402の投票値のみならず、比較的大きなずれで検出された特徴点403の投票値も設定されている。
一方、グラフ470は、本実施形態のグラフ450との対比のため、仮にばらつき度Vを全特徴点共通の一定値としたときの投票の様子を示したものである。グラフ470におけるグラフ471〜473がそれぞれグラフ450におけるグラフ451〜453に対応する。グラフ470は、ずれが大きい特徴点403の投票値(グラフ473)は(x0,y0)には設定されない点で、グラフ450と基本的な相違を有する。
特徴点のばらつき度が大きいということは当該特徴点が広範囲で検出される可能性があることを意味し、逆に特徴点のばらつき度が小さいということは当該特徴点が狭い範囲で検出されることを意味する。対象物検知装置1は上述したように、特徴点のばらつき度に応じた距離減衰特性の投票値を設定したり、特徴点のばらつき度に応じた距離範囲に投票値を設定したりすることによって、ばらつきやすい特徴点からも真に対象物が存在する対象物基準点に対する有効な投票が行なわれるため、ばらつきにくい特徴点に偏った投票が回避されて対象物の誤検出や検出漏れを防ぐことが可能となる。
また投票値に距離減衰特性を与えることによって特徴点の存在確率に相応した投票が行なわれるため、ばらつきやすい特徴点からの不当に高い投票を防いだ精度の高い投票が可能となる。
投票部141は、上述のように特徴点ごとに各位置(x,y)への投票値f(x,y)を設定する。対象物判定部142は、各位置に設定された投票値は投票画像121における当該位置の画素値に累積加算され集計される(一次集計)。この各特徴点についての投票値の設定は検知倍率ごとに行われ、また投票画像への加算も、当該検知倍率に対応した投票画像を用いて検知倍率ごとに行われる。
対象物判定部142は、投票部141にて投票値を設定された投票画像に基づき、入力画像の各位置における投票値についてさらに集計処理(二次集計)を行う。具体的には、対象物の撮像状態やプロポーションの個体差が原因で、同一対象物の投票値が複数の検知倍率に跨って設定されることがある。そこで対象物判定部142は、検知倍率が隣接する同一位置の投票値をさらに加算する(二次集計)。これにより撮像状態や個体差による部位間の大きさバランスを吸収することができ、対象物の検出漏れを防ぐことができる。そして、集計値が予め設定された対象物検知閾値Toを超える位置に対象物が存在すると判定し、一方、集計値がToを超える位置が1つも無い場合は入力画像内に対象物は存在しないと判定し、当該判定結果を出力する。判定結果は異常判定部143に入力される。
また、真に対象物が存在する位置の近傍において複数の位置で集計値がToを超える場合がある。そこで対象物判定部142は、投票画像121を複数のブロックに分割してブロックごとに集計値が極大となる位置(ピーク点)を検出し、ピーク点の集計値のみを対象物検知閾値Toと比較する。ブロックの大きさは検知倍率に応じて拡大・縮小した入力画像上での対象物の大きさより小さく設定する。これにより対象物の誤検出を防ぐことができる
対象物判定部142は、判定結果として対象物が存在すると判定された入力画像内の位置、当該位置における集計値、当該集計値が算出された検知倍率を対応付けた対象物検知情報を生成する。
図7は対象物判定処理の様子を説明するための図であり、図7(a)は入力画像500、及び対象物が撮像されている位置位置(x1,y1)及び(x2,y2)を示す模式図である。図7(b)は、図7(a)に示す入力画像500から検出された特徴点に対する投票値が、互いに検知倍率の異なる投票画像510〜516に対して設定されている様子を示す模式図である。なお、図7(b)は、各投票画像510〜516のx方向及びy方向のサイズを揃え、x軸、y軸と直交する方向に投票画像を検知倍率αの順に並べたxyα三次元空間を表している。図7(b)において、円は投票範囲を表しており、対象物が撮像されている位置(x1,y1)及び(x2,y2)に投票が集中していることが分かる。これらを集計すると位置(x1,y1)及び(x2,y2)に対象物検知閾値Toを超えるピークが検出され、位置(x1,y1)及び(x2,y2)に対象物の存在が判定される。
異常判定部143は対象物判定部142により対象物の存在が判定されると侵入異常が検知されたとして侵入異常信号を検知出力部15へ出力する。
検知出力部15は外部装置と接続され、当該外部装置へ侵入異常信号を出力するインターフェース回路である。外部装置は、侵入者の存在を警報するスピーカー、ブザー又はランプ等の警報表示手段や、通信網を介して接続される遠隔地のセンタ装置等である。
次に、対象物検知装置1の動作を説明する。図8は、対象物検知装置1の概略の動作を示すフロー図である。例えば、装置の管理者が電源を投入すると各部が動作を始める。画像取得部11は所定時間間隔で撮像された画像を検知制御部14に入力する。検知制御部14は画像が入力されるたびにステップS10〜S18からなる処理を繰り返す。
画像が入力されると(S10)、検知制御部14の特徴点検出部140は入力画像から特徴点を検出し、検知制御部14の投票部141は検出結果に応じた投票を投票画像121に対して行なう(S12)。
図9は、特徴点検出処理及び投票処理(S12)の概略のフロー図である。図9を参照して特徴点検出処理及び投票処理を説明する。
特徴点検出部140は、7段階の検知倍率を順次、注目倍率に設定し(S120)、全ての検知倍率に対してステップS121〜S132の処理を繰り返すループ処理を実行する。
検知倍率のループ処理において、まず特徴点検出部140は、注目倍率が1以外である場合には、拡大又は縮小を行うことで注目倍率に応じたサイズの入力画像を生成する(S121)。特徴点検出部140は、当該入力画像の全ての画素位置を順次、分析窓の中心に設定し、設定した各位置での当該分析窓内の特徴量を抽出する(S122)。抽出された特徴量はその抽出位置と対応付けられ、特徴量情報として検知記憶部12に一時記憶される。この段階で特徴量を算出し保存しておき、後の処理で随時利用可能とすることで、無駄な重複算出を省くことができる。また、投票部141は注目倍率の投票画像121の各画素値を0に初期化する(S123)。
次に、特徴点検出部140は、検知倍率のループ処理内において、特徴点情報120に記憶されているM個の特徴点#m(1≦m≦M)を順次、注目特徴点に設定し(S124)、さらに入力画像内の各画素位置を順次、注目位置に設定し(S125)、特徴点と画素位置の全組み合わせに対してステップS126〜S131の処理を繰り返すループ処理を実行する。
特徴点と画素位置とに関するループ処理において、特徴点検出部140は、特徴点情報120から注目特徴点の検出基準を読み出し、さらにステップS122にて生成された特徴量情報から注目位置の特徴量を読み出して、注目位置の特徴量を注目特徴点の検出基準と比較して検出度を算出し(S126)、算出された検出度を特徴点検出閾値Tpと比較する(S127)。
検出度が特徴点検出閾値Tpを超えていれば(S127にて「YES」)、注目位置に注目特徴点が検出されたとして、特徴点検出部140から投票部141に注目倍率、注目特徴点の特徴点番号、注目位置及び検出度が通知される。投票部141は、特徴点情報120から注目特徴点のばらつき度V及び相対位置Rを読み出し、通知された注目倍率α、注目位置P及び検出度dと、読み出したばらつき度V及び相対位置Rとを(1)式、(2)式に代入することで、入力画像内の各画素位置(x,y)に対する投票値f(x,y)を算出し(S128)、算出された各画素位置(x,y)の投票値f(x,y)を注目倍率の投票画像121において対応する画素位置(x,y)の画素値に加算する(S129)。ステップS129の加算処理は一次集計に相当する。一方、検出度がTp以下のときは(S127にて「NO」)、注目位置に注目特徴点は検出されなかったとしてステップS128とS129は省略される。
こうして全特徴点、全倍率について入力画像全体を走査し終えると(S130にて「YES」、かつS131にて「YES」、かつS132にて「YES」)、特徴点検出処理及び投票処理は終了する。
特徴点検出処理及び投票処理が終わると図8に示すように、対象物検知装置1の処理は対象物判定処理S14へ進む。対象物判定処理S14では、検知制御部14の対象物判定部142により、以下に説明するように、ステップS12で作成された投票画像を基にして入力画像中に対象物が存在するか否かの判定が行われる。
図10は、対象物判定処理(S14)の概略のフロー図である。図10を参照して対象物判定処理(S14)を説明する。
対象物判定部142は、検知倍率ごとに、検知倍率が隣接する投票画像の対応する画素値同士、すなわち一次集計値同士を加算し合い(S140)、各検知倍率の投票画像をブロック分割してブロックごとにピークの画素を検出する(S141)。ステップS140の加算処理は二次集計に相当する。
次に対象物判定部142は、各ピーク画素を順次、注目ピーク画素に設定し(S142)、全てのピーク画素に対してステップS143〜S145の処理を繰り返すループ処理を実行する。
ピーク画素に関するループ処理において、対象物判定部142は、注目ピーク画素の画素値(二次集計値)を対象物検知閾値Toと比較する(S143)。そして、集計値がToより大きければ注目ピーク画素の位置に対象物を検知したとして(S143にて「YES」)、注目ピーク画素の位置と、注目ピーク画素の画素値と、注目ピーク画素が属する投票画像の検知倍率とを対応付けた対象物検知情報を生成して、検知記憶部12に記憶させる(S144)。一方、集計値がTo以下の場合(S143にて「NO」)、ステップS144は省略される。
こうして全てのピーク画素について処理し終えると(S145にて「YES」)、対象物判定処理S14は終了する。
対象物判定部142が処理を終えると、検知制御部14の異常判定部143は検知記憶部12を参照して対象物検知情報の有無を確認し(S16)、対象物検知情報が1つでも記憶されていれば対象物が検知されたとして(S16にて「YES」)、侵入異常信号を検知出力部15へ出力し、検知出力部15に警報を出力させる(S18)。
以上の処理を終えると、処理は再びステップS10へ戻される。
上記実施形態では、画像取得部11は撮像部10と接続され、検知制御部14はオンライン処理で対象物を検知した。しかし、画像取得部11が録画装置と接続され、検知制御部14がオフライン処理で対象物を検知する構成としてもよい。
特徴点検出部140は上述の実施形態では、入力画像内の全画素位置を走査するようにしたが、入力画像からブロッブやコーナーを予備検出し、予備検出された位置及びその周辺のみを走査するようにしてもよい。このとき、標本点設定部220がブロッブを検出するのであれば特徴点検出部140もブロッブを予備検出し、標本点設定部220がコーナーを検出するのであれば特徴点検出部140もコーナーを予備検出する。
上記実施形態においては、学習装置2にて算出されたばらつき度が特徴点情報212の一部として特徴点情報設定部13から入力され検知記憶部12に格納された。別の実施形態として、特徴点情報設定部13はキーボード、マウス等の操作入力装置をさらに備え、対象物検知装置1の管理者が特徴点情報設定部13を操作してばらつき度を入力する構成としてもよい。
[学習装置]
図11は、実施形態に係る学習装置2の概略の構成を示すブロック図である。学習装置2は、学習操作部20、学習記憶部21、学習制御部22及び学習出力部23を含んで構成される。学習操作部20、学習記憶部21及び学習出力部23は学習制御部22と接続される。
学習操作部20はキーボード、マウス等のユーザインターフェース装置であり、装置の管理者により操作され、学習の開始指示や特徴点の情報の出力指示を学習制御部22に与える。
学習記憶部21はROM、RAM、ハードディスク等の記憶装置であり、学習制御部22で使用されるプログラムやデータを記憶する。学習記憶部21はこれらプログラム、データを学習制御部22との間で入出力する。学習記憶部21に記憶されるデータには、標本画像210、標本点情報211、特徴点情報212が含まれる。
標本画像210は特徴点情報212を作成する基礎となる画像であり、当該学習に先立って予め記憶される。標本画像210は、対象物が撮像された多数(数千〜数万枚程度)の対象物標本画像、及び対象物が撮像されていない多数(数千〜数万枚程度)の非対象物標本画像とからなる。標本画像210のそれぞれには当該画像を識別する標本番号が付与されている。対象物標本画像は64×128画素の基準サイズに予め揃えられている。
標本点情報211は各対象物標本画像内に設定された標本点(標本特徴点)の情報である。標本点情報211は、各標本点の位置、特徴量及び、当該標本点が設定された対象物標本画像を特定する標本番号を含む。
特徴点情報212は標本点情報211を基に作成された特徴点の情報である。その内容は上述した特徴点情報120と同じであり、各特徴点の特徴点番号、相対位置、特徴量、ばらつき度といったパラメータ群である。
学習出力部23は生成された特徴点情報212を学習装置2の外部へ出力するUSB端子、CDドライブ、ネットワークアダプタ等のインターフェース回路、及びそれぞれのドライバ・プログラムからなる。外部出力された各データは対象物検知装置1に入力される。
学習制御部22は、DSP、MCU等の演算装置を用いて構成される。学習制御部22は、標本画像210から特徴点情報212を生成して、生成した特徴点情報212を学習出力部23へ出力する処理を行う。具体的には、学習制御部22は、学習記憶部21からプログラムを読み出して実行し、後述する標本点設定部220、クラスタリング部221、特徴点情報生成部222として機能する。
標本点設定部220は、標本画像から所定の画像特徴を有する標本点を抽出する標本特徴点抽出部として機能する。具体的には、各対象物標本画像内に複数の標本点を設定して標本点における特徴量を抽出し、各標本点の位置と特徴量と当該標本点が設定された対象物標本画像の標本番号とを対応付けた標本点情報211を学習記憶部21に記憶させる。
本実施形態では、標本点として、コーナー(corner)と呼ばれるエッジの交点、又はブロッブ(blob)と呼ばれる輝度極大点などを用いる。具体的には、ハリス−ラプラス(Harris-Laplace)の方法など公知のコーナー検出方法により各対象物標本画像からコーナーを検出して特徴点に設定し、又は、SIFT(Scale-Invariant Feature Transform)など公知のブロッブ検出方法により各対象物標本画像からブロッブを検出して検出されたブロッブを特徴点に設定する。輝度に特徴のある標本点を設定することで、対象物の検知に有効な特徴点情報を効率的に生成できる。
なお、標本点の設定の仕方として、対象物標本画像の全体に予め設定された個数の複数の標本点をランダムに設定する方法や、対象物標本画像内に等間隔で複数の標本点をグリッド状に設定する方法を採用することもできる。
標本点設定部220は、各対象物標本画像の標本点それぞれに分析窓を設定して分析窓内の特徴量を抽出する。特徴量は、本実施形態では上述したシェイプコンテキストとするが、HOGとすることもできる。
クラスタリング部221は、標本画像相互間にて位置及び画像特徴が類似する標本点からなるクラスタ(cluster)を生成する。具体的には、クラスタリング部221は標本点情報211を参照し、位置及び特徴量に着目して標本点をクラスタリングすることによって、位置及び特徴量が類似する標本点のクラスタを生成する。これにより、多数の対象物標本画像間で対象物の同じ部位を表す標本点が1つのクラスタにまとめられる。生成されたクラスタの情報は、特徴点情報生成部222へ出力される。
クラスタリングにはk−平均クラスタリング、種々の凝集クラスタリング(群平均法など)など公知の手法を用いることができる。
またこのとき、位置及び特徴量に同時に着目してクラスタリングを行っても良いし、まず特徴量に着目したクラスタリングを行い、次いで位置に着目したクラスタリングを行っても良い。
特徴点情報生成部222は、クラスタごとに、統計分析により標本点の位置の分布(標本分布)の情報を求め、さらに、標本画像における所定の基準点の、標本分布における所定の代表位置からの相対位置である標本相対位置を求める。そして、クラスタごとの標本分布の情報及び標本相対位置に基づく特徴点分布の情報及び相対位置を含む特徴点情報を生成する。具体的には特徴点情報生成部222は、クラスタごとに、標本点の位置のばらつき度を統計分析すると共に、標本点の特徴量を用いて検出基準を学習し、当該ばらつき度と当該検出基準と当該クラスタの対象物基準点に対する相対位置とを対応付けた特徴点情報212を生成し、生成された特徴点情報212を学習記憶部21に記憶させる。特徴点情報212は1つのクラスタから1つ生成される。本実施形態では、クラスタ#mに属する標本点の位置の分散値を特徴点#mのばらつき度Vとして算出する。また、クラスタ#mに属する標本点の位置の平均値を当該クラスタの代表位置として算出し、算出した代表位置の座標から対象物基準点Bの座標を引いたベクトルを特徴点#mの相対位置として算出する。さらに、クラスタ#mに属する標本点の特徴量の平均(平均ベクトル)を特徴点#mの検出基準として算出する。
対象物検知装置1の特徴点検出部140が識別器として動作する構成では、特徴点情報生成部222は、クラスタ#mの代表位置における特徴量を非対象物標本画像のそれぞれからも抽出し、クラスタ#mに属する標本点の特徴量と非対象物標本画像から抽出された特徴量とに公知のブースティング(Boosting)又はサポートベクターマシーン(Support Vector Machine)等の学習アルゴリズムを適用して検出基準である識別関数を学習する。
なお、少数の対象物標本画像から生成されたクラスタからは、対象物を検知する十分な精度を有した特徴点情報を生成できる可能性が低い。そこで特徴点情報生成部222はクラスタに属する標本点の設定元となった対象物標本画像の数を計数して、計数値が所定値以下のクラスタの情報からは特徴点情報212を生成しないように構成することができる。これにより十分な対象物検知精度を有した特徴点情報を生成できる。また、これにより不当に小さいばらつき度や不当に大きなばらつき度が算出されることを防止できるため、高い対象物検知精度を有した特徴点情報を生成できる。
図12は、標本点とクラスタとの関係を示す模式図である。図12は、各対象物標本画像600〜603にて互いに対応する特徴を有する標本点であるコーナー610〜613(“×”印)が、点線で示す領域内にばらついて検出された様子を示している。コーナーにおいてクラスタリング用の特徴量を抽出する領域620〜623を、コーナーを示す“×”印を囲む実線の円で表している。この場合、コーナー610〜613は点線の領域に対応するクラスタ650にまとめられる。また、クラスタの代表位置630〜633(黒丸)は、当該クラスタにまとめられるコーナーの平均位置に設定されている。当該代表位置が当該クラスタに対応する特徴点となり、当該特徴点の特徴量を抽出する領域である局所領域640〜643を当該特徴点を囲む実線の円で表している。
次に、学習装置2の動作を説明する。図13は、学習装置2の概略の動作を示すフロー図である。例えば、管理者が学習装置2の電源を投入し学習操作部20を操作して学習の開始を指示すると、学習装置2は学習処理を行う。以下、図13を参照して学習処理を説明する。
学習制御部22は標本点設定部220により、各対象物標本画像内に複数の標本点を設定する(S20)。そして、各対象物標本画像において当該画像から抽出された標本点それぞれの位置に分析窓を設定して当該分析窓内から特徴量を抽出し(S21)、抽出された特徴量に抽出元の対象物標本画像の標本番号及び抽出元の標本点の位置を対応付けて標本点情報211を生成し学習記憶部21に記憶させる。
次に、学習制御部22はクラスタリング部221により、標本点情報211に対して位置と特徴量に着目したクラスタリング処理を行い、対象物標本画像間で位置及び特徴量が類似する標本点同士がまとめられたクラスタを生成する(S22)。クラスタリング部221は、クラスタリングの結果として、各標本点の標本点情報211に当該標本点が属するクラスタを識別するクラスタ番号を追記する。
学習制御部22は特徴点情報生成部222により、ステップS22にて生成された各クラスタを順次、注目クラスタに設定し(S23)、全てのクラスタに対してステップS24〜S29の処理を繰り返すループ処理を実行する。
クラスタのループ処理において、特徴点情報生成部222は、標本点情報211を参照して、注目クラスタに属する標本点の位置を代表する代表位置を算出し(S24)、また、算出された代表位置の対象物基準点Bに対する相対位置Rを算出し(S25)、さらに、注目クラスタに属する標本点の位置のばらつき度Vを算出する(S26)。
さらに、特徴点情報生成部222は、注目クラスタに属する標本点の特徴量を用いて検出基準の学習を行う(S27)。
対象物検知装置1の特徴点検出部140がパターンマッチングにより特徴点を検出する場合、特徴点情報生成部222は注目クラスタに属する標本点の特徴量の平均特徴量を検出基準として学習する。この場合、検出基準は対象物標本画像の画像情報のみを用いて学習されることになる。
対象物検知装置1の特徴点検出部140が識別器として動作する別の実施形態の場合、特徴点情報生成部222は、注目クラスタに属する標本点の特徴量すなわち対象物標本画像の画像情報に加え、非対象物標本画像の画像情報を用いて学習を行なう。すなわち、特徴点情報生成部222は、ステップS24において算出された代表位置における特徴量を非対象物標本画像のそれぞれからも抽出し、注目クラスタに属する標本点の特徴量と非対象物標本画像から抽出された特徴量とにブースティング又はサポートベクターマシーンを適用して検出基準を学習する。
特徴点情報生成部222は、以上ステップS24〜S27にて注目クラスタに対応する特徴点の情報を求めると、新たな特徴点番号、注目クラスタの相対位置R、注目クラスタのばらつき度V及び、注目クラスタの検出基準を対応付けて新たな特徴点情報212を生成し学習記憶部21に記憶させる(S28)。
全てのクラスタについて処理し終えると(S29にて「YES」)、学習処理は終了する。
学習処理の終了後、管理者が学習操作部20を操作して特徴点情報212の出力を指示すると、学習制御部22は学習記憶部21から特徴点情報212を読み出して学習出力部23に出力させる。
なお、上記実施形態においては基準点Bを標本画像210の重心位置に定めたが、特徴点間で共通していれば基準点Bは標本画像210の左上端、右下端など任意の位置でもよい。
また上記実施形態では、特徴点情報生成部222は特徴点のばらつき度として分散値を算出した。別の実施形態として、特徴点情報生成部222は、クラスタごとに標本点の平均位置からの差の絶対値の平均値を当該クラスタのばらつき度として算出したり、クラスタごとに標本点の平均位置からの距離の最大値を当該クラスタのばらつき度として算出する構成としてもよい。