(57)【要約】【課題】検出対象物体を高い検出精度で行える物体検出装置のための学習装置を提供する。【解決手段】学習画像中の検出対象物体の特徴点及び非検出対象物体の特徴点をそれぞれ検出し、前記学習画像から検出された前記各特徴点の周辺画像領域における特徴量を計算し、前記検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記検出対象物体のクラスを表すラベルを付与し、前記非検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記非検出対象物体を表すラベルの付与を行い、前記検出対象物体の前記特徴点の前記学習画像上の前記検出対象物体からの相対位置によって、前記パラメータ空間内での投票位置を算出し、前記学習画像のラベルが付与された前記特徴量を用いて、前記クラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように、前記第１の識別器を学習する。【選択図】      図１
2010204826.tif 000002
【特許請求の範囲】
【請求項１】
入力画像から検出される特徴点が検出対象物体に属するか否かを第１の識別器で識別し、前記検出対象物体に属すると識別された前記特徴点について、学習画像上の相対位置で構成されるパラメータ空間に投票を行って前記検出対象物体を検出する物体検出装置における前記パラメータ空間内の投票位置及び前記第１の識別器を学習する学習装置であって、
前記学習画像中の検出対象物体の特徴点及び非検出対象物体の特徴点をそれぞれ検出する特徴点検出部と、
前記学習画像から検出された前記各特徴点の周辺画像領域における特徴量を計算し、前記検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記検出対象物体のクラスを表すラベルを付与し、前記非検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記非検出対象物体を表すラベルの付与を行う特徴量計算部と、
前記検出対象物体の前記特徴点の前記学習画像上の前記検出対象物体からの相対位置によって、前記パラメータ空間内での投票位置を算出する投票学習部と、
前記学習画像のラベルが付与された前記特徴量を用いて、前記クラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように、前記第１の識別器を学習する識別器学習部と、
を具備することを特徴とする学習装置。
【請求項２】
前記識別器学習部は、
前記第１の識別器として複数のランダム木を用い、
前記クラス分布の偏りと、前記パラメータ空間への投票位置の集中の度合いと、が減少するように、前記複数のランダム木の各々の親ノードから子ノードを生成する、
ことを特徴とする請求項１に記載の学習装置。
【請求項３】
前記識別器学習部は、前記第１の識別器に加えて第２の識別器を学習するものであり、
前記第１の識別器によって、前記ラベル付き特徴量を前記ランダム木で識別することにより、前記検出対象物体として選択された葉ノードで第１の値をとり、それ以外の葉ノードは前記第１の値と異なる第２の値をとり、かつ、複数の前記ランダム木について前記第１の値と前記第２の値を結合した２値ベクトルを求め、
前記２値ベクトルを前記第２の識別器に入力して、前記第２の識別器を学習させる、
ことを特徴とする請求項２に記載の学習装置。
【請求項４】
前記識別器学習部は、
前記クラス分布のエントロピーの減少度及び前記パラメータ空間における前記投票位置の分散の減少度の重み付き和を用いて前記親ノードの分割を行い、
前記投票位置の分散の減少度に関する重みは検出対象物体割合の関数であり、前記検出対象物体割合は、前記ランダム木の前記ノードに属する全ての前記特徴量の数に対する、前記検出対象物体に対応する前記特徴量の数の割合である、
ことを特徴とする請求項２又は３に記載の学習装置。
【請求項５】
前記識別器学習部は、
前記各検出対象物体のそれぞれから抽出された前記特徴量である特徴ベクトルの各集合について、前記特徴ベクトルが類似し、かつ、前記投票位置が前記パラメータ空間内で集中するように前記特徴ベクトルをクラスタリングして前記クラスタを求め、
前記非検出対象物体から抽出された前記特徴ベクトルの各集合について、前記特徴ベクトルが類似しているように前記特徴ベクトルをクラスタリングして前記クラスタを求め、
前記各クラスタに属する前記特徴ベクトルの集合を代表する代表特徴ベクトルを計算する、
ことを特徴とする請求項１に記載の学習装置。
【請求項６】
入力画像から特徴点を検出する特徴点検出部と、
前記特徴点とその周辺画像領域に関する特徴量を計算する特徴量計算部と、
請求項１記載の前記識別器学習部によって学習された前記第１の識別器を用いて、前記特徴量が前記検出対象物体に属するか否かを識別する特徴量識別部と、
前記検出対象物体と識別された前記特徴量に対応する前記特徴点について、請求項１記載の前記投票学習部で学習した前記パラメータ空間内の投票位置に従って、前記検出対象物体のクラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように投票を行う投票部と、
前記投票された投票値が高い投票位置に、前記検出対象物体が検出されたとする物体検出部と、
を具備することを特徴とする物体検出装置。
【請求項７】
前記特徴量識別部は、
前記入力画像から得られる各特徴量について、前記第１の識別器で識別して前記２値ベクトルを算出し、
前記２値ベクトルを、請求項３記載の前記第２の識別器に入力して、前記特徴量が前記各検出対象物体に属するか否かを識別する、
ことを特徴とする請求項６に記載の物体検出装置。
【請求項８】
前記投票部は、
前記入力画像から得られる各特徴量を前記ランダム木によって前記検出対象物体として識別された葉ノードの前記検出対象物体割合、前記検出対象物体と識別した前記ランダム木の割合、又は、前記第２の識別器からの前記検出対象物らしさを表す識別値のいずれか、もしくは、これらの組み合わせに比例する投票値を前記パラメータ空間に投票する、
ことを特徴とする請求項６又は７に記載の物体検出装置。
【請求項９】
前記特徴量計算部は、
前記特徴量として特徴ベクトルを計算し、
前記特徴量識別部は、
前記特徴ベクトルと、請求項５記載の前記識別器学習部で計算した前記代表特徴ベクトルと照合して、最も類似している前記代表特徴ベクトルを選択し、
この選択した前記代表特徴ベクトルに関する前記クラスタを類似クラスタとして抽出し、
前記類似クラスタの一定割合以上が、特定の検出対象物体であった場合に、前記特徴ベクトルは前記特定の検出対象物体に属すると識別し、
前記投票部は、
前記検出対象物体に属すると識別された特徴ベクトルについて、前記類似クラスタに割り当てられ、かつ、請求項１記載の前記投票学習部の学習時に用いた特徴ベクトルを求め、
この求めた前記特徴ベクトルの前記特徴点に関して、請求項１記載の前記投票学習部で学習した前記パラメータ空間内の投票位置を取得し、
前記パラメータ空間内の前記投票位置に投票値を投票を行う、
ことを特徴とする請求項６に記載の物体検出装置。
【請求項１０】
入力画像から検出される特徴点が検出対象物体に属するか否かを第１の識別器で識別し、前記検出対象物体に属すると識別された前記特徴点について、学習画像上の相対位置で構成されるパラメータ空間に投票を行って前記検出対象物体を検出する物体検出方法における前記パラメータ空間内の投票位置及び前記第１の識別器を学習する学習方法であって、
特徴点検出部が、前記学習画像中の検出対象物体の特徴点及び非検出対象物体の特徴点をそれぞれ検出する特徴点検出ステップと、
特徴量計算部が、前記学習画像から検出された前記各特徴点の周辺画像領域における特徴量を計算し、前記検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記検出対象物体のクラスを表すラベルを付与し、前記非検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記非検出対象物体を表すラベルの付与を行う特徴量計算ステップと、
投票学習部が、前記検出対象物体の前記特徴点の前記学習画像上の前記検出対象物体からの相対位置によって、前記パラメータ空間内での投票位置を算出する投票学習部と、
識別器学習部が、前記学習画像のラベルが付与された前記特徴量を用いて、前記クラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように、前記第１の識別器を学習する識別器学習ステップと、
を具備することを特徴とする学習方法。
【請求項１１】
特徴点検出部が、入力画像から特徴点を検出する特徴点検出ステップと、
特徴量計算部が、前記特徴点とその周辺画像領域に関する特徴量を計算する特徴量計算ステップと、
特徴量識別部が、請求項１記載の前記識別器学習部によって学習された前記第１の識別器を用いて、前記特徴量が前記検出対象物体に属するか否かを識別する特徴量識別ステップと、
投票部が、前記検出対象物体と識別された前記特徴量に対応する前記特徴点について、請求項１記載の前記投票学習部で学習した前記パラメータ空間内の投票位置に従って、前記検出対象物体のクラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように投票を行う投票ステップと、
物体検出部が、前記投票された投票値が高い投票位置に、前記検出対象物体が検出されたとする物体検出ステップと、
を具備することを特徴とする物体検出方法。
【請求項１２】
入力画像から検出される特徴点が検出対象物体に属するか否かを第１の識別器で識別し、前記検出対象物体に属すると識別された前記特徴点について、学習画像上の相対位置で構成されるパラメータ空間に投票を行って前記検出対象物体を検出する物体検出プログラムにおける前記パラメータ空間内の投票位置及び前記第１の識別器を学習する学習プログラムであって、
コンピュータに、
前記学習画像中の検出対象物体の特徴点及び非検出対象物体の特徴点をそれぞれ検出する特徴点検出機能と、
前記学習画像から検出された前記各特徴点の周辺画像領域における特徴量を計算し、前記検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記検出対象物体のクラスを表すラベルを付与し、前記非検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記非検出対象物体を表すラベルの付与を行う特徴量計算機能と、
前記検出対象物体の前記特徴点の前記学習画像上の前記検出対象物体からの相対位置によって、前記パラメータ空間内での投票位置を算出する投票学習部と、
前記学習画像のラベルが付与された前記特徴量を用いて、前記クラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように、前記第１の識別器を学習する識別器学習機能と、
を実現させるための学習プログラム。
【請求項１３】
コンピュータに、
入力画像から特徴点を検出する特徴点検出機能と、
前記特徴点とその周辺画像領域に関する特徴量を計算する特徴量計算機能と、
請求項１２記載の前記識別器学習機能によって学習された前記第１の識別器を用いて、前記特徴量が前記検出対象物体に属するか否かを識別する特徴量識別機能と、
前記検出対象物体と識別された前記特徴量に対応する前記特徴点について、請求項１２記載の前記投票学習機能で学習した前記パラメータ空間内の投票位置に従って、前記検出対象物体のクラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように投票を行う投票機能と、
前記投票された投票値が高い投票位置に、前記検出対象物体が検出されたとする物体検出機能と、
を実現させるための物体検出プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像中に写っている特定の物体を検出し、その位置を推定する物体検出技術とその学習技術に関する。
【背景技術】
【０００２】
画像で撮影された特定の検出対象物体を、その姿勢や形状などの画像上の見え方の変化に影響されずに検出するために、検出対象物体が映っている多数の学習サンプル画像から特徴点を検出し、その周辺の画像パターンを検出対象物体の部分パターンとして予め学習しておく方法が提案されている。
【０００３】
学習サンプル画像の学習時には、この検出対象物体の部分画像パターンから計算した局所特徴量に加えて、局所特徴量に対する検出対象物体の位置、スケール、向き等のパラメータの相対的関係も同時に記憶しておく。
【０００４】
検出対象物体の検出時には、入力された画像から学習時と同様の方法で抽出したそれぞれの局所特徴量を、学習時に記憶しておいた各局所特徴量と照合して類似している各局所特徴量を選択し、記憶されている相対パラメータを用いて検出対象物体の種類、位置、スケール、方向等のパラメータ空間に投票を行い、投票値が十分大きい極大点を求めることによって、物体の検出とそのパラメータの推定を行う。
【０００５】
非特許文献１では、検出対象画像から抽出された局所特徴量と、学習時に記憶しておいた多数の代表的な局所特徴量を照合して類似しているものを選択し、検出対象物体の位置、スケールのパラメータ空間に投票を行って物体を検出している。
【０００６】
特許文献１では、ＫＤ木によって局所特徴量の照合を高速化している。また、複数の特徴量の組から計算した位置・姿勢パラメータをパラメータ空間に投票し、検出対象物体の位置・姿勢を求めている。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】B.Leibe,A.Leonardis,B.Schiele,「Robust Object Detection with Interleaved Categorization and Segmentation」,International Journal of Computer Vision, Vol.77,No.1-3,pp.259-289,2008
【特許文献】
【０００８】
【特許文献１】特開２００６−６５３９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記従来技術では、局所特徴量が検出対象物体の一部なのか、それ以外なのかを識別してないため、検出対象物体以外の局所特徴量に対しても投票が行われ検出精度が下がるという問題点がある。
【００１０】
そこで本発明は、上記問題点を解決するためになされたものであって、検出対象物体を高い検出精度で行える物体検出装置、その方法及びプログラムと、その学習装置、その方法及びそのプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、入力画像から検出される特徴点が検出対象物体に属するか否かを第１の識別器で識別し、前記検出対象物体に属すると識別された前記特徴点について、学習画像上の相対位置で構成されるパラメータ空間に投票を行って前記検出対象物体を検出する物体検出装置における前記パラメータ空間内の投票位置及び前記第１の識別器を学習する学習装置であって、前記学習画像中の検出対象物体の特徴点及び非検出対象物体の特徴点をそれぞれ検出する特徴点検出部と、前記学習画像から検出された前記各特徴点の周辺画像領域における特徴量を計算し、前記検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記検出対象物体のクラスを表すラベルを付与し、前記非検出対象物体の前記特徴点の前記周辺画像領域に関する前記特徴量には、前記非検出対象物体を表すラベルの付与を行う特徴量計算部と、前記検出対象物体の前記特徴点の前記学習画像上の前記検出対象物体からの相対位置によって、前記パラメータ空間内での投票位置を算出する投票学習部と、前記学習画像のラベルが付与された前記特徴量を用いて、前記クラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように、前記第１の識別器を学習する識別器学習部と、を具備することを特徴とする学習装置である。
【００１２】
本発明は、入力画像から特徴点を検出する特徴点検出部と、前記特徴点とその周辺画像領域に関する特徴量を計算する特徴量計算部と、請求項１記載の前記識別器学習部によって学習された前記第１の識別器を用いて、前記特徴量が前記検出対象物体に属するか否かを識別する特徴量識別部と、前記検出対象物体と識別された前記特徴量に対応する前記特徴点について、請求項１記載の前記投票学習部で学習した前記パラメータ空間内の投票位置に従って、前記検出対象物体のクラスのクラス分布が偏るように、かつ、前記パラメータ空間への投票位置が集中するように投票を行う投票部と、前記投票された投票値が高い投票位置に、前記検出対象物体が検出されたとする物体検出部と、を具備することを特徴とする物体検出装置である。
【発明の効果】
【００１３】
本発明の学習装置によれば、検出対象物体を高い検出精度で行える物体検出装置に用いるパラメータ空間の投票位置及び識別器を学習できる。また、本発明の物体検出装置によれば、検出対象物体を高い検出精度で行える。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係る学習装置の構成を示すブロック図である。
【図２】検出対象物体と非検出対象物体に関する特徴点、特徴ベクトル、ラベルの説明図である。
【図３】検出対象物体の画像上の位置、大きさのパラメータに関するパラメータ空間への投票位置の説明図である。
【図４】ランダム木の学習方法を説明する説明図である。
【図５】学習装置のフローチャートである。
【図６】第１の実施形態に係る物体検出装置の構成を示すブロック図である。
【図７】物体検出装置の処理の流れを説明する説明図である。
【図８】物体検出装置のフローチャートである。
【図９】第２の実施形態に係る第２の識別器への入力となる二値ベクトルの説明図である。
【図１０】第３の実施形態におけるパラメータ空間の説明図である。
【発明を実施するための形態】
【００１５】
（第１の実施形態）
以下、本発明の第１の実施形態の学習装置と物体検出装置について図面を参照して説明する。
【００１６】
本実施形態の物体検出装置は、入力画像から検出される特徴点が検出対象物体に属するか否かを識別器で識別する。そして、検出対象物体に属すると識別された各特徴点について、検出対象物体の種類、位置からなるパラメータ空間に投票を行って検出対象物体を検出するものである。
【００１７】
一方、本実施形態の学習装置は、前記パラメータ空間の投票位置と、前記物体検出装置において特徴点が検出対象物体に属するか否かを識別するための識別器を、学習画像から学習するものである。
【００１８】
まず、第１の実施形態の学習装置について図１〜図５を参照して説明する。
【００１９】
図１は、本実施形態に係わる物体検出装置のための学習装置の構成を示すブロック図である。
【００２０】
学習装置は、特徴点検出部１、特徴量計算部２、投票学習部３、識別器学習部４を有する。
【００２１】
学習画像は、１つ又は複数の検出対象物体に関する画像群及び検出対象物体以外の物体（以下、「非検出対象物体」という）の画像群で構成される。例えば、図２に示すように、検出対象物体を物体（掌）Ｈと物体Ｆの２種類とすると、学習画像Ａは、物体Ｈが写っている画像群、物体Ｆが写っている画像群、物体Ｈと物体Ｆが写っていない非検出対象物体の画像群の３クラスで構成される。物体Ｈと物体Ｆの検出対象物体の画像群については、各画像について検出対象物体が写っている領域も分かっているものとする。
【００２２】
学習画像は、記憶装置５に予め記憶しておいてもよく、また、外部から取得してもよい。
【００２３】
特徴点検出部１は、学習画像のそれぞれから多数の特徴点を検出する。
【００２４】
特徴点の検出方法としては、一般的な様々な方法を用いることができる。例えば、Ｈａｒｒｉｓコーナー検出器や、ＦＡＳＴコーナー検出器（E.Rosten and T.Drummond,「Machine learning for high-speed corner detection,」 in Proc. of European Conference on Computer Vision,pp.430-443,2006参照）等のコーナー検出器を用いる。
【００２５】
また、学習画像の解像度を徐々に落としていくことにより生成したピラミッド画像に対して適用することもできる。
【００２６】
また、学習画像の拡大縮小のスケール変換に対して不変性を持つ特徴点を用いてもよい。この場合には、Difference of Gaussian（ＤｏＧ）フィルタ出力の局所極値点を、特徴点として抽出するＳＩＦＴ特徴（D.Lowe,「Object recognition from local scale-invariant features,」in Proc.of International Conference on Computer Vision,Vol.2,pp.1150-1157, 1999参照、以下、「D. Lowe」という）等を用いる。
【００２７】
特徴量計算部２は、図２に示すように、特徴点検出部１で検出された各特徴点と、その特徴点の周辺画像領域２０１に関する特徴量として特徴ベクトルｆを計算する。周辺画像領域２０１の大きさは、例えば縦２４画素、横２４画素といった一定の大きさでもよい。
【００２８】
また、特徴点検出部１においてＳＩＦＴ特徴のようなスケール不変の特徴量でスケール情報が得られている場合には、このスケール情報に応じた周辺画像領域２０１の大きさを変化させてもよい。周辺画像領域２０１の大きさを変化させる場合は、一定の大きさに正規化してから特徴ベクトルｆを計算する。
【００２９】
特徴ベクトルｆとしては、一般的な様々な特徴量を利用することができる。例えば、画素値を離散化して一次元に並べたものや、又はこれを平均値と分散で正規化したものでも良い。さらに、微小な変化に頑健なヒストグラム特徴として、ＳＩＦＴ特徴（D. Lowe参照）等を用いてもよい。
【００３０】
以下では、このように学習画像から検出された全ての特徴点に関する特徴ベクトルｆを「学習特徴ベクトル」と呼び、各検出対象物体の学習画像領域内から検出された特徴点に関する特徴ベクトルを「学習検出物体特徴ベクトル」と呼ぶ。
【００３１】
投票学習部３や識別器学習部４で使用するため、学習検出物体特徴ベクトルには該当する検出対象物体のクラス（種類）を表すラベル付けを行い、それ以外の特徴ベクトルには非検出対象物体のラベル付けを行う。例えば図２の場合、物体Ｈが写っている画像領域内から抽出された特徴ベクトルｆには物体Ｈのラベル「＋１」を付与し、非検出対象物体の画像から検出された特徴ベクトルｆには非検出対象物体のラベル「−１」を付与する。
【００３２】
投票学習部３は、学習検出物体特徴ベクトルに対応する特徴点に関して、投票空間であるパラメータ空間内での投票位置情報を算出して記憶する。
【００３３】
以下では、検出対象物体のクラス（種類）ｒを表すラベル、画像内の二次元位置（ｘ，ｙ）、大きさｓの４次元のパラメータ空間（ｒ，ｘ，ｙ，ｓ）を用いて説明する。しかし、その他にも検出対象物体の姿勢、向きなどを加えたより多次元のパラメータ空間を利用しても良い。
【００３４】
図３（ａ）は、ｘ軸とｙ軸の直交二軸で画像位置が決められる画像上に検出対象物体（掌）Ｈの学習画像領域がある状態を示し、図３（ｂ）はパラメータ空間を示している。但し、４次元空間を表示できないため、検出対象物体のクラスを示すラベルｒを除いた３次元のパラメータ空間（ｘ，ｙ，ｓ）で表している。
【００３５】
検出対象物体のクラスｒについては、ラベルが特徴空間となり、＋１、＋２の２つの離散的な投票位置となる。
【００３６】
画像内の位置に関する投票位置情報は、図３（ａ）に示すように特徴点から検出対象物体の代表位置への２次元の相対ベクトルである。代表位置としては、例えば、検出対象物体の画像領域の重心位置や、外接四角形の中心である。
【００３７】
大きさｓは、検出対象画像中の検出対象物体領域の大きさを用いる。例えば、検出対象物体領域を囲む矩形の幅、高さ、もしくはこれらの最大値、対角線の長さ等である。
【００３８】
なお、位置や大きさについては、特徴ベクトルを計算した局所画像領域の大きさで正規化した相対値を用いても良い。このように、各学習検出物体特徴ベクトルについて、パラメータ空間内での投票位置を割り当てる。
【００３９】
識別器学習部４は、物体検出装置において検出された任意の特徴点が検出対象物体に属するか否かを識別するための識別器を、特徴量計算部２で抽出したラベル付き学習特徴ベクトルを用いて学習する。
【００４０】
識別器として複数のランダム木を用いる。そして、識別器は、各ランダム木の識別性能が高く、すなわち、クラス分布が偏るように、かつ、前記パラメータ空間への投票位置がパラメータ空間内で集中するように構成する。
【００４１】
任意の特徴量が検出対象物体に属するか否かを識別するためには、各ランダム木の識別性能が高いこと、すなわち、クラス分布が偏ることは必須であるが、これに加えて物体検出装置は検出対象物体の位置や姿勢といったパラメータ空間への投票によって物体検出及びパラメータ推定を行うため、パラメータ空間で投票値が鋭いピークを持つことによって、精度の良い物体検出を行うことが可能となる。このような性質を持ったランダム木の学習は以下のようにして行う。
【００４２】
以下では説明を簡単にするため、検出対象物体が１クラス（１種類）と、非検出対象物体の２クラス（２種類）の問題について図４を参照して説明する。しかし、検出対象物体が２つ以上の多クラスの場合も同様の方法が適用できる。なお、図４では、ランダム木の各ノードの横にクラス分布を示すグラフと、二次元に簡略化したパラメータ空間の図を示す。
【００４３】
まず、識別器学習部４は、根ノードＳに、特徴量計算部２で抽出した全てのラベル付き学習特徴ベクトルｆを割り当てる。
【００４４】
識別器学習部４は、この根ノードＳを２つに分割して２つの子ノードＬ、Ｒを作る際は、次のように行う。まず、図４に示すようにランダムに特徴ベクトルの要素ｆｉとその閾値Ｔｉを生成する。次に、ｆｉ＜Ｔｉを満たすラベル付き学習特徴ベクトルを左の子ノードＬ（図４のＹｅｓの場合）、満たさないラベル付き学習特徴ベクトルは右の子ノードＲ（図４のＮｏの場合）に仮に割り当てた場合の分割指標を計算する。分割指標は、分割の良さを表すものであり、後とから説明する。
【００４５】
識別器学習部４は、この仮割り当ての操作をＮ回繰り返し、最も良い分割指標を持つ要素ｆｉと閾値Ｔｉの組を選択し、実際にその要素ｆｉと閾値Ｔｉを用いて左右２つの子ノードＬ、Ｒを生成する。
【００４６】
識別器学習部４は、以下、再帰的に終了条件を満たすまでこの分割を繰り返す。終了条件としては、次の条件を採用する。第１の条件は、ノードに含まれるラベル付き学習特徴ベクトルの数が予め定めておいた数よりも小さいときである。第２の条件は、木構造の深さが予め定めておいた値よりも大きいときである。第３の条件は、分割の良さを表す指標の減少が予め定めておいた値よりも小さいときである。
【００４７】
識別器学習部４は、このようなランダム木の生成をＴ回行い複数のランダム木を生成する（P.Geurts,D.Ernst, and L. Wehenkel,「Extremely Randomized Trees,」Machine Learning,No.1,Vol.36,pp.3-42,2006参照）。
【００４８】
次に、分割の良さを表す分割指標について説明する。分割指標は、後から説明するクラス分布の偏りとパラメータ空間への投票位置の集中の度合いの２つを統合したものである。
【００４９】
まず、クラス分布の偏りについて説明する。
【００５０】
分割の良さとして、通常、識別性能が高くなるように上記したクラス分布の偏りを用いる。すなわち、ある分割を行ったことによって、クラス分布の偏りが大きくなったということは、学習サンプルをうまく識別できたということであり、未知のラベル付き学習特徴ベクトルに関しても識別性能が高いことが期待できる。
【００５１】
クラス分布の偏りは、エントロピーを用いて評価することができるので、識別性能の高いランダム木を構成するには分割前後のエントロピーをクラス分布の偏りとし、このクラス分布のエントロピーの減少度をＧ１とすればよい。分割前の親ノードのクラス分布のエントロピーをＨｃ、分割後の左右の子ノードのクラス分布エントロピーをそれぞれＨｌ，Ｈｒとすると、
Ｇ１＝２（Ｈｃ−Ｈｓ）／（Ｈｃ＋Ｈｓ）    ・・・（１）
Ｈｓ＝（ｎＬ／ｎ）Ｈｌ＋（ｎＲ／ｎ）Ｈｒ    ・・・（２）
となる。但し、ｎ、ｎＬ、ｎＲはそれぞれ親ノード、左子ノード、右子ノードに含まれる特徴ベクトル数、Ｈｓは分割後のエントロピーである。
【００５２】
エントロピー以外の分布の偏りを評価する指標を用いてもよく、例えば、変動係数やジニ係数といった集中度の指標（芳鐘，「計量書誌学的分布における集中度：集中度の概念と指標の特徴」、日本図書館情報学会誌. Vol. 46，No. 1，2000. p. 18-32参照）を用いても良い。
【００５３】
検出対象物体が２つ以上の場合は、３クラス以上の多クラス識別を行う必要があるが、エントロピー等の分布の偏りを評価する指標は多クラスになっても同様に計算することができる。
【００５４】
次に、パラメータ空間への投票位置の集中の度合いについて説明する。
【００５５】
物体検出装置では、検出された特徴量を識別器学習部４で学習した各ランダム木で識別し、選択された葉ノードに含まれている学習特徴ベクトルに割り当てられているパラメータ空間の投票位置に投票を行う。したがって、各葉ノードから行われる投票位置が、投票空間であるパラメータ空間で集中しているほど、最終的な投票結果もパラメータ空間で鋭いピークを持ち、物体検出性能が向上する。
【００５６】
投票位置の集中の度合い、言い換えれば、投票位置のばらつきは、分散で評価することができる。そのため、集中した投票を行うランダム木を構成するには、分割前後の各検出対象物体ｏに関する分散をパラメータ空間への投票位置の集中の度合いとし、この分散の減少度をＧ２ｏとすればよい。分割前の検出対象物体ｏに関する親ノードの投票位置の分散をσｃｏ２、分割後の左右の子ノードの投票位置の分散をそれぞれσｌｏ２，σｒｏ２とすると、
Ｇ２ｏ＝２（σｃｏ２−σｓｏ２）／（σｃｏ２＋σｓｏ２）    ・・・（３）
σｓｏ２＝（ｎＬｏ／ｎＴｏ）σｌｏ２＋（ｎＲｏ／ｎＴｏ）σｒｏ２
・・・（４）
となる。但し、ｎＴｏ、ｎＬｏ、ｎＲｏは、それぞれ親ノード、左の子ノード、右の子ノードに含まれる検出対象物体ｏに関する学習検出物体特徴ベクトル数である。
【００５７】
パラメータ空間への投票位置の集中の度合いについても、分散だけでなく、標準偏差や平均偏差など別の指標を用いても良い。
【００５８】
検出対象物体が２つ以上の場合は、各検出対象物体ｏについて、パラメータ空間への投票位置の集中の度合いＧ２ｏを計算する。
【００５９】
これらクラス分布の偏りとパラメータ空間への投票位置の集中の度合いを統合した分割指標Ｇは、下記の式（５）に示すようにクラス分布の偏りの減少度Ｇ１とパラメータ空間への投票位置の集中の度合いの減少度Ｇ２の重み付き和とする。
【００６０】
Ｇ＝Ｇ１＋Σｏ（ｗ（γｏ）＊Ｇ２ｏ）    ・・・（５）
但し、パラメータ空間への投票位置の集中の度合いの減少度Ｇ２ｏに関する重みは、検出対象物体割合γｏ＝ｎＴｏ／ｎに関する関数ｗ（γｏ）を用いる。検出対象物体割合γｏ＝ｎＴｏ／ｎは、ランダム木の親ノードに属する全学習特徴ベクトル数ｎに対する、各検出対象物体ｏに関する学習検出物体特徴ベクトル数ｎＴｏの割合である。関数ｗ（γｏ）としては、ｗ（γｏ）＝γｏ、ｗ（γｏ）＝ａ＊γｏ、ｗ（γｏ）＝ｍａｘ（γｏ−ｂ，０）等を用いる。ここで、ａとｂは予め定められた定数である。
【００６１】
この分割指標Ｇを用いることにより、識別性能の高さと投票位置の集中が両立したランダム木を構成することができる。
【００６２】
木構造の根ノードＳに近いノードでは、検出対象物体割合γｏは比較的小さく、識別性能を優先した分割が行われる。木構造の深い部分のノードでは、検出対象物体割合γｏが大きいノードと小さいノードができる。しかし、検出対象物体割合γｏが大きいノードでは、識別性能の向上（クラス分布の偏りＧ１の増加）が小さくなっても、投票位置が散らばっている間はノードの分割が行われ、投票位置を集中させるような分割が続けられる。
【００６３】
学習装置の処理について、図５のフローチャートを参照して説明する。
【００６４】
ステップ１では、特徴点検出部１は、１つ又は複数の検出対象物体に関する画像及び非検出対象物体の画像からなる学習画像が入力され、各学習画像について多数の特徴点を検出する。
【００６５】
ステップ２では、特徴量計算部２は、図２に示すように特徴点とその周辺画像領域２０１に関する特徴量を計算すると共に、各検出対象物体の学習画像領域内から検出された特徴点に関する特徴量に該当する検出対象物体のクラスを表すラベル、それ以外の特徴量には非検出対象物体のラベル付けを行う。
【００６６】
ステップ３では、投票学習部３は、検出対象物体のラベルが付与されている各特徴点に関して、パラメータ空間内での投票位置を算出して記憶する。
【００６７】
ステップ４では、識別器学習部４は、物体検出装置において特徴点が特定の検出対象物体に属するか否かを識別するための識別器を、特徴量計算部２で抽出したラベル付き特徴量を用いて学習する。
【００６８】
第１の実施形態の物体検出装置について図６〜図８を参照して説明する。
【００６９】
図６は、本発明の第１の実施形態に係わる物体検出装置の構成を示すブロック図である。
【００７０】
物体検出装置は、画像入力部１０、特徴点検出部１１、特徴量計算部１２、特徴量識別部１３、投票部１４、検出部１５を有する。
【００７１】
画像入力部１０には、カメラ等から画像が入力される。
【００７２】
特徴点検出部１１と特徴量計算部１２は、それぞれ前記学習装置の特徴点検出部１と特徴量計算部２と同様の方法で、図７に示すように入力画像から特徴点を検出し、その周辺の画像領域に関する特徴ベクトル計算する。特徴点検出部１１と特徴量計算部１２については、前記学習装置と同じ処理を行うので詳細の説明は省略する。
【００７３】
特徴量識別部１３は、前記識別器学習部４によって生成された複数のランダム木を用いて、各特徴量が前記各検出対象物体に属するか否かを識別する。
【００７４】
投票部１４は、特徴量識別部１３において検出対象物体と識別された特徴量に対応する特徴点について、投票学習部３で学習したパラメータ空間内の投票位置に従って投票を行う。
【００７５】
物体検出部１５では、投票結果に基づいて物体検出を行う。
【００７６】
特徴量識別部１３では、識別器学習部４で学習した複数のランダム木の各ランダム木で、特徴量計算部１２で計算した各特徴ベクトルを識別する。
【００７７】
すなわち、各ノードの分割テスト（例えばｆｉ＜Ｔｉ）で特徴ベクトルを識別し、分割テストを満たせば左のノードに進むといったように、識別結果に応じて木構造を葉ノードに到達するまで下っていく。
【００７８】
到達した葉ノードに属する学習特徴ベクトルのラベルをカウントし、最大のラベル数を持つクラスが検出対象物体ｏであれば、このランダム木による識別結果は検出対象物体ｏであるとする。
【００７９】
このようなランダム木の識別を識別器学習部４で学習した複数のランダム木について行い、検出対象物体ｏであると識別したランダム木の割合が閾値以上であれば、最終的にその特徴ベクトルを検出対象物体ｏの一部であると判別する。
【００８０】
特徴量識別部１３において、ある検出対象物体ｏの一部であると識別された特徴ベクトルについて、特徴ベクトルをランダム木で識別したときに到達した葉ノードが分かっている。
【００８１】
投票部１４では、到達した葉ノードに割り当てられている検出対象物体ｏに関する学習検出物体特徴ベクトルについて、投票学習部３で学習しておいた検出対象物体ｏのパラメータ空間内の投票位置を取得する。
【００８２】
特に、画像内の位置に関する投票位置情報について説明する。図３に示すように位置に関する投票位置情報は、特徴点から検出対象物体の代表位置への２次元相対ベクトルなので、検出対象物体であると識別された特徴ベクトルに対応する特徴点の画像上の位置にこの相対ベクトルを足した位置に投票を行う。
【００８３】
投票値は、各学習検出物体特徴ベクトルについて一定の値でもよいし、到達した葉ノードの検出対象物体割合γｏ、特徴量識別部１３で検出対象物体ｏであると識別したランダム木の割合、これらの積、又はこれらを到達した葉ノードに属する検出対象物体ｏに関する学習検出物体特徴ベクトルの数で割って正規化した値等を用いる。
【００８４】
特徴量計算部１２で検出された特徴ベクトルのうち、特徴量識別部１３でいずれかの検出対象物体の一部であると識別された全ての特徴ベクトルについて、各検出対象物体に対応するパラメータ空間に対して以上の投票処理を行う。非特徴物体であると識別された特徴ベクトルについては投票を行わない。
【００８５】
物体検出部１５では、パラメータ空間の投票値を用いて検出対象物体の検出を行う。
【００８６】
単純には、投票値が閾値以上である極大点を検出する。
【００８７】
特徴量計算部１２で検出された特徴ベクトルの数が画像によって大きくばらつく場合には、前記極大点位置に投票を行った特徴ベクトルの数で極大値を割って投票値の正規化を行ってもよい。
【００８８】
物体検出装置の処理について、図８のフローチャートを参照して説明する。
【００８９】
ステップ１１では、特徴点検出部１１は、入力画像から特徴点を検出する。
【００９０】
ステップ１２では、特徴量計算部１２は、特徴点の周辺画像領域２０１に関する特徴ベクトルを計算する。
【００９１】
ステップ１３では、特徴量識別部１３は、識別器学習部４で学習した識別器である複数のランダム木で、特徴量計算部１２で計算した各特徴ベクトルを識別する。
【００９２】
ステップ１４では、投票部１４は、到達した葉ノードに割り当てられている検出対象物体ｏに関する学習検出物体特徴ベクトルについて、投票学習部３で学習しておいた検出対象物体ｏのパラメータ空間内の投票位置を取得する。
【００９３】
ステップ１５では、物体検出部１５は、パラメータ空間の投票値を用いて検出対象物体の検出を行う。
【００９４】
（第２の実施形態）
第２の実施形態に係わる物体検出装置及び学習装置について図９を参照して説明する。
【００９５】
第２の実施形態の学習装置について図９を参照して説明する。
【００９６】
本実施形態に係わる学習装置では、第１の実施形態において識別器学習部３で学習した複数のランダム木からなる識別器（以下、「第１の識別器」という）に加えて、第２の識別器を学習する。
【００９７】
まず、図９に示すように、学習特徴ベクトルを前記第１の識別器の各ランダム木で識別した結果、検出対象物体として選択された葉ノードで＋１の値をとり、それ以外の葉ノードは０の値をとり、複数のランダム木についてこれらを結合した２値ベクトルｇを求める。次に、第２の識別器は、この２値ベクトルｇを入力して学習する。
【００９８】
すなわち、第２の識別器の学習には、全てのラベル付き学習特徴量ベクトルから計算される２値ベクトルｇを用いる。第２の識別器としては、一般的な識別器を用いることができる。例えば、サポートベクトルマシン、ニューラルネットワーク、ＡｄａＢｏｏｓｔ等を用いる。
【００９９】
検出対象物体が２つ以上の場合には、第２の識別器は３クラス以上の多クラス識別を行う必要がある。識別器として２クラス識別器を用いる場合には、複数の２クラス識別器を組み合わせることによって、多クラス識別を行うことができる。すなわち、あるクラスとそれ以外のクラスを識別する２クラス識別器を、各クラス毎に学習しておく方法や、あるクラスと別のあるクラスを識別する２クラス識別器を組み合わせの数だけ学習しておく方法などがある。
【０１００】
第２の実施形態の物体検出装置について説明する。
【０１０１】
第２の実施形態に係わる物体検出装置では、特徴量識別部１３において識別器学習部３で学習した複数のランダム木である第１の識別器と第２の識別器によって、特徴量計算部１２で抽出した各特徴ベクトルを識別する。
【０１０２】
第１の識別器は、第１の実施形態と同様の識別を行う。
【０１０３】
第２の識別器は、検出対象物体らしさを表す識別値を出力するので、この識別値が閾値よりも大きい場合に、特徴ベクトルを検出物体の一部であると識別する。
【０１０４】
また、投票部１４において投票値を計算するとき、第２の識別器の識別値をさらに用いてもよい。
【０１０５】
（第３の実施形態）
第３の実施形態に係わる物体検出装置及び学習装置について図１０を参照して説明する。
【０１０６】
第１の実施形態で示したように、特徴量の識別器として複数のランダム木を用いる以外にも、他の識別器を用いることもできる。第３の実施形態では、最近傍識別器を用いる場合について述べる。
【０１０７】
第３の実施形態の学習装置について図１０を参照して説明する。
【０１０８】
本実施形態に係わる学習装置では、識別器学習部４において、全ての学習特徴量をｋ平均法などのベクトル量子化方法によってｋ個のクラスタに分割する。
【０１０９】
ｋ平均法は、任意のベクトルデータに対してランダムにクラスタを割りあて、この割り当てで各クラスタの平均を計算する。各ベクトルと各クラスタ平均との距離を求め、各ベクトルを最も近い平均値をもつクラスタに割り当て直す。上記の処理で全てのベクトルのクラスタへの割り当てが変化しなかった場合は処理を終了する。それ以外の場合は処理を繰り返す。
【０１１０】
識別器学習部４では、学習検出物体特徴ベクトルと、非検出対象物体の特徴ベクトルに対して別々にｋ平均法を適用し、検出対象物体のクラスタと、非検出対象物体のクラスタをそれぞれＫ個、Ｋ’個生成する。
【０１１１】
学習検出物体特徴ベクトルについてｋ平均法を適用するとき、通常のｋ平均法では、クラスタに割り当てられた特徴ベクトルの各要素の平均値と、ユークリッド距離が使用されるが、各クラスタに分類された学習検出物体特徴ベクトルの投票位置が集中するように、クラスタ平均値やデータ間の距離を定義する。
【０１１２】
図１０に示すように、特徴ベクトルの要素ｆ１，ｆ２と投票位置ｖをつなげた結合ベクトルを定義し、この結合ベクトルの平均とユークリッド距離によってｋ平均法を行う。
【０１１３】
これにより、各クラスタは特徴ベクトルが類似しており、投票位置も近い特徴ベクトルの集合となる。各クラスタではクラスタに割り当てられた特徴ベクトルの平均値を計算し、代表特徴ベクトルとする。
【０１１４】
第３の実施形態の物体検出装置について説明する。
【０１１５】
本実施形態に係わる物体検出装置では、特徴量計算部１２で抽出した各特徴ベクトルについて、特徴量識別部１３において識別器学習部４で生成した代表特徴ベクトルと照合を最近傍識別器によって行い、距離の近い（複数の）代表特徴ベクトルを選択する。
【０１１６】
選択された代表特徴ベクトルが、非検出対象物体のクラスタである場合には、その特徴ベクトルは非検出対象物体であると識別し、投票を行わない。
【０１１７】
選択された代表特徴ベクトルが、検出対象物体のクラスタである場合には、その特徴ベクトルは検出対象物体の一部であると識別する。
【０１１８】
投票部１４は、検出対象物体の一部であると識別された特徴ベクトルについて、距離の近い代表特徴ベクトルを求める。投票部１４は、この代表特徴ベクトルに対応するクラスタに割り当てられた学習検出物体特徴ベクトルを求める。そして、投票部１４は、この学習検出物体特徴ベクトルに関して、投票学習部３で学習したパラメータ空間内の投票位置を取得する。投票部１４は、パラメータ空間内の前記投票位置に投票値を投票を行う。
【０１１９】
投票値は、各学習検出物体特徴ベクトルについて一定の値、代表特徴ベクトルとの類似度、これらをクラスタ内に含まれる学習検出物体特徴ベクトルの数で割って正規化したもの等とする。
【０１２０】
（変更例）
本発明は上記各実施形態に限らず、その主旨を逸脱しない限り種々に変更することができる。
【０１２１】
なお、上記各実施形態の学習装置と物体検出装置は、例えば、汎用のコンピュータを基本ハードウェアとして用いることでも実現することが可能である。すなわち、学習装置の特徴点検出部１、特徴量計算部２、投票学習部３、識別器学習部４及び物体検出装置の画像入力部１０、特徴点検出部１１、特徴量計算部１２、特徴量識別部１３、投票部１４、検出部１５は、上記のコンピュータに搭載されたプロセッサにプログラムを実行させることにより実現することができる。このとき、学習装置と物体検出装置は、上記のプログラムをコンピュータに予めインストールすることで実現してもよいし、ＣＤ−ＲＯＭなどの記憶媒体に記憶して、又はネットワークを介して上記のプログラムを配布して、このプログラムをコンピュータに適宜インストールすることで実現してもよい。
【符号の説明】
【０１２２】
１・・・特徴点検出部
２・・・特徴量計算部
３・・・投票学習部
４・・・識別器学習部
１０・・・画像入力部
１１・・・特徴点検出部
１２・・・特徴量計算部
１３・・・特徴量識別部
１４・・・投票部
１５・・・検出部
【図１】
2010204826.tif 000003
【図２】
2010204826.tif 000004
【図３】
2010204826.tif 000005
【図４】
2010204826.tif 000006
【図５】
2010204826.tif 000007
【図６】
2010204826.tif 000008
【図８】
2010204826.tif 000009
【図９】
2010204826.tif 000010
【図１０】
2010204826.tif 000011
【図７】
2010204826.tif 000012