(57)【要約】【課題】複数種類の変形が生じている場合に、精度良く類似度を算出できるようにする。【解決手段】入力画像の複数の部分画像がそれぞれ物体の平行移動または回転といった異なる変形をする場合に、それぞれの部分画像について平行移動に剛健な変形または回転に剛健な変形を行い、部分類似度を求める。そして、これらの部分類似度を重み付けし、入力画像の画像類似度を出力する。このとき、それぞれの部分画像の依存関係に基づいて探索範囲を設定することにより探索範囲を狭くして、部分類似度を算出する時間を短縮できるようにする。【選択図】図２
2013250727.tif 000002
【特許請求の範囲】
【請求項１】
入力画像及び比較画像の中の対応する複数の部分画像を比較する画像処理装置であって、
前記部分画像それぞれにおける変形の態様を示す変形種別の情報を取得する取得手段と、
前記取得手段によって取得された情報の示す変形種別に剛健な特徴量に基づいて前記複数の部分画像の部分類似度をそれぞれ算出する部分類似度算出手段と、
前記算出したそれぞれの部分類似度に基づいて前記入力画像と前記比較画像との間の画像類似度を算出する画像類似度算出手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記部分類似度算出手段は、前記変形種別に対応する変形を前記複数の部分画像を変形することにより部分類似度をそれぞれ算出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記部分類似度算出手段は、前記部分画像における変形種別が平行移動か回転かを判定し、前記判定した結果に基づいて前記部分画像を平行移動または回転させて部分類似度を算出することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記取得手段は、さらに前記複数の部分画像の間の依存関係の情報を取得し、
前記部分類似度算出手段は、前記複数の部分画像の間の依存関係に基づいて、前記部分画像を平行移動または回転させるパラメータを設定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記部分類似度算出手段は、複数の変形種別のそれぞれに対応する複数の算出部を備え、当該複数の算出部の中から前記取得された情報の示す変形種別に対応する算出部を選択的に用いて部分類似度をそれぞれ算出することを特徴とする請求項１〜４の何れか１項に記載の画像処理装置。
【請求項６】
前記画像類似度算出手段は、前記算出したそれぞれの部分類似度を重み付けして前記入力画像と前記比較画像との間の画像類似度を算出することを特徴とする請求項１〜５の何れか１項に記載の画像処理装置。
【請求項７】
前記比較画像における前記複数の部分画像の間の依存関係の情報、及び前記部分画像における変形の態様を示す変形種別の情報を前記比較画像から生成する生成手段をさらに備え、
前記取得手段は、前記生成手段によって生成された情報を取得することを特徴とする請求項１〜６の何れか１項に記載の画像処理装置。
【請求項８】
入力画像及び比較画像の中の対応する複数の部分画像を比較する画像処理方法であって、
前記部分画像それぞれにおける変形の態様を示す変形種別の情報を取得する取得工程と、
前記取得工程において取得された情報の示す変形種別に剛健な特徴量に基づいて前記複数の部分画像を変形することにより部分類似度をそれぞれ算出する部分類似度算出工程と、
前記算出したそれぞれの部分類似度に基づいて前記入力画像と前記比較画像との間の画像類似度を算出する画像類似度算出工程とを備えることを特徴とする画像処理方法。
【請求項９】
入力画像及び比較画像の中の対応する複数の部分画像を比較する画像処理装置を制御するためのプログラムであって、
前記部分画像それぞれにおける変形の態様を示す変形種別の情報を取得する取得工程と、
前記取得工程において取得された情報の示す変形種別に剛健な特徴量に基づいて前記複数の部分画像を変形することにより部分類似度をそれぞれ算出する部分類似度算出工程と、
前記算出したそれぞれの部分類似度に基づいて前記入力画像と前記比較画像との間の画像類似度を算出する画像類似度算出工程とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に、画像の類似度を算出するために用いて好適な画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
画像の類似度を求める手法は、特に被写体を検出する分野では、既にいくつか提案されている。例えば、面内回転に対する剛健性を確保しつつ、画像類似度を求める手法について、非特許文献１には、Ｃｉｒｃｕｌａｒ  ＨＯＧと呼ばれる、回転剛健となる特徴を取得し、その特徴に基づき被写体らしさを求める手法が開示されている。また、特許文献１には、非特許文献１に記載の手法のように、機械学習による物体検出の際に、その学習の教師画像群に回転した画像を含め、検出時に画像類似度の回転剛健性を向上させる手法が言及されている。
【０００３】
一方、部分的な平行移動に対する剛健性を確保しつつ、画像類似度を求める手法について、非特許文献２には、ｌａｔｅｎｔ  ＳＶＭと呼ばれる手法が開示されている。この手法では、ある画像類似度を定義し、その定義に基づき統計的に識別平面を求め、その識別平面に基づいて識別することにより、画像中から歩行者を検出している。また、この手法では、まず、画像の類似度を、部分画像同士の類似度の重み付き総和と定義している。ここで個々の部分画像同士は木構造をなす依存関係にあり、また、部分画像の類似度にはＲｅｃｔａｎｇｕｌａｒ  ＨＯＧと呼ばれる平行移動に剛健な特徴を用いている。次に、この部分画像の類似度を求める上で、類似度が極値となる部分画像領域を求めて画像上を探索する。この探索により平行移動を許容している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２５０７７５号公報
【非特許文献】
【０００５】
【非特許文献１】"Histogram of oriented gradients for human detection", Navneet Dalal and Bill Triggs, CVPR' 05
【非特許文献２】"A discriminatively trained, multiscale, deformable part model", Pedro Felzenszwalb, David McAllester, Deva Ramanan
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般に、画像から物体を検出する技術などは、その物体の部分的な変形に剛健であることが望ましい。ここで検出すべき物体の部分が取り得る変形は、平行移動だけではなく、画像の撮像面に対して平行な面内・面外での回転なども有り得る。しかしながら、従来知られている画像の類似度を求める手法では、画像に含まれる物体の一部が回転を伴って変形する場合に、その類似度が低下するという問題がある。
【０００７】
例えば、非特許文献１及び特許文献１に記載されている手法では、部分的に移動する物体については類似度が低下し、非特許文献２に記載されている手法では、部分的に回転する物体については類似度が低下する。なお、非特許文献２に記載されている人体の検出では、頭や肩の個体差は平行移動であって多くの変動を吸収可能である。このため、これらを部分画像とすることにより類似度を高く保つことができるが、腿などの回転運動を伴う箇所については類似度を高く保つことができない。その結果として類似度を求める部分画像として選択されにくい。
【０００８】
本発明は前述の問題点に鑑み、複数種類の変形が生じている場合に、精度良く類似度を算出できるようにすることを目的としている。
【課題を解決するための手段】
【０００９】
本発明の画像処理装置は、入力画像及び比較画像の中の対応する複数の部分画像を比較する画像処理装置であって、前記部分画像それぞれにおける変形の態様を示す変形種別の情報を取得する取得手段と、前記取得手段によって取得された情報の示す変形種別に剛健な特徴量に基づいて前記複数の部分画像の部分類似度をそれぞれ算出する部分類似度算出手段と、前記算出したそれぞれの部分類似度に基づいて前記入力画像と前記比較画像との間の画像類似度を算出する画像類似度算出手段とを備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、入力画像の複数の部分がそれぞれ異なった変形種別で変形する場合に、より好適な類似度を求めることができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係る画像処理装置のハードウェア構成例を示すブロック図である。
【図２】実施形態に係る画像処理装置の機能構成例を示すブロック図である。
【図３】全体画像の一例を示す図である。
【図４】入力画像における部分画像の一例を説明する図である。
【図５】実施形態における部分検出器の一例を示す図である。
【図６】部分画像間の依存関係に従って探索範囲を設定する概要を説明する図である。
【図７】実施形態において、画像類似度を算出する処理手順の一例を示すフローチャートである。
【図８】入力画像と部分検出器との関係を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら、本発明の実施形態について説明する。
図１は、本実施形態に係る画像処理装置１００のハードウェア構成例を示すブロック図である。
図１において、撮像素子１０１は、ＣＣＤ、ＭＯＳ、等で構成され、被写体像を光から電気信号に変換する。信号処理回路１０２は、撮像素子１０１から得られた被写体像に関する時系列信号を処理し、デジタル信号に変換する。ＣＰＵ１０３は、ＲＯＭ１０４に格納されている制御プログラムを実行することにより、画像処理装置１００全体を制御する。
【００１３】
ＲＯＭ１０４は、ＣＰＵ１０３が実行する制御プログラムや各種パラメータデータを格納している。この制御プログラムは、ＣＰＵ１０３によって実行されることにより、後述するフローチャートに示す各処理を実行するための各種手段として機能させる。ＲＡＭ１０５は、画像データや各種情報を記憶する。また、ＲＡＭ１０５は、ＣＰＵ１０３のワークエリアやデータの一時待避領域として機能する。ディスプレイ１０６は、例えば、ＬＣＤやＣＲＴで構成される。
【００１４】
なお、本実施形態では、後述するフローチャートの各ステップに対応する処理を、ＣＰＵ１０３を用いてソフトウェアで実現することとするが、その処理の一部または全部を電子回路などのハードウェアで実現するようにしても構わない。また、図１に示す画像処理装置１００から撮像素子１０１及び信号処理回路１０２を省いた構成で汎用ＰＣを用いて実現してもよいし、画像処理専用装置として実現するようにしても構わない。また、ネットワークまたは各種記憶媒体を介して取得したソフトウェア（プログラム）をパーソナルコンピュータ等の処理装置（ＣＰＵ、プロセッサ）にて実行してもよい。
【００１５】
図２は、本実施形態に係る画像処理装置１００の機能構成例を示すブロック図である。以下、検出対象物体画像に類似する全体画像から物体領域を求める例について説明する。
図２において、画像処理装置１００は、主に、辞書生成部２０４、走査部２０５、識別部２０６、及び類似度演算部２０７から構成されている。
【００１６】
辞書生成部２０４には、検出対象となる物体の画像の集合であって、色、大きさ、コントラスト、傾き等について学習に適するように正規化された検出対象物体画像２０１が記憶されている。また、辞書生成部２０４は、比較画像である検出対象物体画像２０１から検出辞書２０８を生成し、後述する走査部２０５、識別部２０６、類似度演算部２０７などの実行に先立ち、検出辞書２０８が生成されているものとする。なお、辞書生成部２０４は、他の装置の構成として存在してもよい。また、検出辞書２０８を作成する方法としては、非特許文献２に記載のＬａｔｅｎｔ  ＳＶＭ  に準ずるが、非特許文献２に記載の部分検出器の探索により、後述する部分検出部２１９と同等の探索が行われるものとする。
【００１７】
検出辞書２０８は、部分検出器構造２２５、及び部分検出器２２６を備え、さらに部分検出器２２６は、相対的探索範囲２２７、部分変形種別２２８、部分検出統計量２２９、及び畳み込み重み２３０を備えている。
【００１８】
部分検出器構造２２５は、図５（ａ）に示すような部分検出器２２６の木構造の情報を保持している。この構造は、辞書生成部２０４により検出対象物体画像２０１から予め取得される。
【００１９】
部分検出器２２６は、後述する部分類似度２２３を求めるために部分変形種別２２８及び部分検出統計量２２９を備えている。図５（ｂ）には、部分検出器２２６の例を示しており、６種類の第１の部分検出器５１１〜第６の部分検出器５１６を備えている。第１の部分検出器５１１は、鳥の胴体と足とを含む入力画像の全体を対象としており、第２の部分検出器５１２は鳥の胴体を対象としている。また、第３の部分検出器５１３は鳥の頭部について対象としており、それぞれ辞書生成部２０４にて生成される。
【００２０】
本実施形態では、入力画像は複数の部分画像がそれぞれ異なる変形の種別（態様）を持ち、部分画像間で依存関係が存在し、部分画像間の依存関係で部分画像の探索範囲を狭められることを前提としている。
【００２１】
図４は、入力画像の一例を示す図である。図４に示すように、例えば鳥の脚部である部分画像４１１〜部分画像４１３は、撮像面に対して平行移動の関係にある。一方で鳥の胴体である部分画像４２１〜部分画像４２３は同一の外見のものが回転した関係にある。同じく部分画像４３１〜部分画像４３３も同一の頭部が回転したものである。このように入力画像における複数の部分画像はそれぞれ異なる変形の種別を持っている。
【００２２】
また、部分画像間では依存関係が存在する。例えば、図４に示す例では、鳥の脚部の上には胴体が存在する。このことから、胴体部分を示す部分画像４２１〜部分画像４２３は、鳥の脚部を示す部分画像４１１〜部分画像４１３に依存して地面に対し平行移動する。同様に、頭部を示す部分画像４３１〜部分画像４３３は、頭部の回転については胴体部分から独立するが、その中心座標は胴体部分の回転に依存する。
【００２３】
このように、部分検出器間においても従属関係が成立する。図５（ａ）は、第１の部分検出器５１１〜第６の部分検出器５１６が検出するそれぞれの部分５０１〜５０６依存関係の例を示す図である。例えば、鳥の胴体は鳥の脚部に依存しているため、鳥の胴体に適応する第２の部分検出器５１２は鳥の全体に適応する第１の部分検出器５１１に依存する。また、鳥の脚部に適応する第２の部分検出器５１２及び第６の部分検出器５１６も第１の部分検出器５１１に依存し、鳥の口ばしに適応する第４の部分検出器５１４は頭部に適応する第３の部分検出器５１３に依存する。このように部分検出器の構造は木構造となる。
【００２４】
さらに、部分画像間の依存関係で部分画像の探索範囲を狭められる。ある部分検出器の中心は、その部分検出器が依存する部分検出器に依存する。このことから、部分検出器の探索範囲もその親となる部分検出器の結果に依存する。例えば、図４の頭部を示す部分画像４３１〜部分画像４３３を検出する第３の部分検出器５１３の中心座標が取り得る領域は、図６（ａ）に示す領域６０１となる。さらに、第３の部分検出器５１３は第２の部分検出器５１２に従属するため、第２の部分検出器５１２上の座標系では、第３の部分検出器５１３の中心座標が取り得る領域は図５（ｂ）に示す領域５２２となる。このように、部分検出器の探索範囲を、その部分検出器が従属する部分検出器の探索結果からの相対座標とすることにより、探索範囲を狭めることができる。
【００２５】
次に、図２に示す部分検出器２２６の詳細な構成要素について説明する。
相対的探索範囲２２７は、探索範囲を矩形とし、その親の部分検出器の中心座標から探索範囲の中心へのベクトル（角度、長さ）と、矩形の大きさとを保持している。例えば、第２の部分検出器５１２がその親となる第１の部分検出器５１１上で取り得る相対的探索範囲は、図５（ｂ）に示す領域５２１であり、部分検出器５１３の部分検出器５１２上の相対的探索範囲は、図５（ｂ）に示す領域５２２である。このように相対的探索範囲２２７は、親となる部分検出器の探索結果２２４と子となる部分検出器の探索範囲２１８との間の相対的な探索範囲である。但し、部分検出器２２６が木構造において幹であって親を持たない場合には例外値を用いる。
【００２６】
部分変形種別２２８は、その部分領域が取り得る変形の種別の情報である。本実施形態では、その部分領域が回転するか平行移動するかのいずれかの情報とする。図５（ｂ）に示す第１の部分検出器５１１〜第６の部分検出器５１６では、平行移動は格子上の背景によって示され、面内回転運動は同心円状の背景によって示される。図５（ｂ）に示す例では、第１の部分検出器５１１は平行移動に剛健であり、第２の部分検出器５１２、及び第３の部分検出器５１３は面内回転運動に剛健であることを示している。
【００２７】
部分検出統計量２２９は、事前に検出対象物体画像２０１の部分領域の特徴量を元に辞書生成部２０４にて求められた統計量である。部分検出統計量２２９は、後述する部分検出部２１９において類似度、即ち統計的距離を求めるために用いられる。平行移動剛健部分検出部２２２及び回転剛健部分検出部２２１で、その類似度の演算にＬｉｎｅａｒＳＶＭを用いる場合には、部分検出統計量２２９はサポートベクタ群及びその重みとなる。
【００２８】
図５（ｂ）に示す第１の部分検出器５１１〜第４の部分検出器５１４で、部分検出統計量２２９は、物体の輪郭として疑似的に描かれている。平行移動に剛健となる第１の部分検出器５１１では、回転する胴体部分の分散が大きく、胴体に対する部分類似度２２３が小さい。一方、回転に剛健となる第２の部分検出器５１２では、胴体領域の分散が小さく、胴体に対する部分類似度２２３が大きい。
【００２９】
畳み込み重み２３０は、部分検出器に対応する重みの情報である。
【００３０】
次に、走査部２０５、識別部２０６及び類似度演算部２０７について説明する。
走査部２０５は、入力された全体画像２０２から物体領域２０３を検出する。ここで、全体画像２０２は、物体の検出処理の対象となる画像であり、例えば撮像素子１０１から入力される画像である。走査部２０５は、例えば、図３に示すような全体画像３０１から物体領域３１１を検出する。
【００３１】
物体領域を検出する方法としては、後述する識別部２０６が求める検出物体確からしさ２０９から最も確からしい部分画像の領域を求め、物体領域２０３を検出する。本実施形態では、非特許文献２に記載されているＳｌｉｄｉｎｇ  Ｗｉｎｄｏｗ  アプローチを用いる。すなわち、まず、全体画像２０２の任意の部分画像について網羅的に、その部分画像を入力画像２１０とする。そして、識別部２０６により、入力画像２１０から検出物体確からしさ２０９を得て、その最も確からしい部分画像の領域を物体領域２０３とする。
【００３２】
識別部２０６は、入力画像２１０から検出物体確からしさ２０９を求める。本実施形態では、非特許文献２が示すＳｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ  アプローチを適用する。即ち、検出対象物体画像２０１群と入力画像２１０との画像類似度２１１の重み付き総和が識別平面からの距離となるように、事前に検出対象物体画像２０１群を選択しておき、その識別平面からの距離を検出物体確からしさ２０９とする。
【００３３】
類似度演算部２０７は、入力画像２１０と前述した検出辞書２０８とを入力し、入力画像２１０と検出対象物体画像２０１との画像類似度２１１を求める画像類似度算出を行う。類似度演算部２０７は、部分検出部２１９と、部分検出器制御部２１２と、探索範囲制御部２１５とから構成されており、非特許文献２に記載のＬａｔｅｎｔＳＶＭのカーネル演算を行う。
【００３４】
部分検出部２１９は、部分画像の変形に対応する構成要素である。部分検出部２１９は、探索範囲２１８内で、入力画像２１０と検出対象物体画像２０１とのそれぞれの部分画像の部分類似度算出を行って、部分類似度２２３、及び対応する探索結果２２４を求める。また、部分検出部２１９は、さらに部分検出部選択部２２０、回転剛健部分検出部２２１及び平行移動剛健部分検出部２２２を備えている。ここで、探索結果２２４とは、探索範囲２１８内で部分類似度２２３が得られた時のパラメータである。本実施形態では特徴量を取得した部分検出器の中心座標、及び部分検出器の回転角度である。この探索範囲２１８については後述する。
【００３５】
部分検出部選択部２２０は、検出辞書２０８から部分変形種別２２８を取得し、その部分変形種別２２８に従って部分検出部２１９の動作を切り替える。本実施形態においては、部分領域が回転である場合は回転剛健部分検出部２２１を選択し、部分領域が平行移動である場合には平行移動剛健部分検出部２２２を選択する。
【００３６】
平行移動剛健部分検出部２２２は、部分領域の平行移動に対して剛健な特徴量、探索、類似度演算を用いて、入力画像２１０のある部分領域と検出対象物体画像２０１との部分類似度２２３を求める。類似度を演算する際には、検出辞書２０８に含まれている部分検出統計量２２９を用いる。具体的には、特徴量として、非特許文献１に記載されるＲｅｃｔａｎｇｕｌａｒ  ＨＯＧを用いる。また、探索では、まず、特徴量を求める矩形領域について、その中心座標を探索範囲２１８の領域内で網羅的に平行移動、かつ矩形領域を探索範囲２１８の回転角度の範囲内で回転させる。次に、網羅的に移動及び回転させた矩形領域のそれぞれについて特徴量を求め、検出対象物体画像２０１と入力画像２１０の部分画像との類似度を演算し、矩形領域群の中で最大の類似度を部分類似度２２３として選択する。類似度の演算には、非特許文献２に記載される通りＬｉｎｅａｒ  ＳＶＭを用いる。
【００３７】
回転剛健部分検出部２２１は、部分領域の回転に対して剛健な特徴量、探索及び類似度演算を用いて、入力画像２１０上のある部分領域と検出対象物体画像２０１との部分類似度２２３を求める。具体的には、特徴量として非特許文献１に記載されるＣｉｒｃｕｌａｒ  ＨＯＧ  を用いる。また、探索及び類似度演算は、平行移動剛健部分検出部２２２と同様の手順により行われる。但し、非特許文献１に記載される通りＣｉｒｃｕｌａｒＨＯＧに基づく探索は一般に、ＲｅｃｔａｎｇｕｌａｒＨＯＧのそれに比べて回転が３６０度の範囲で起こり得る一方で、平行移動の範囲が狭い。
【００３８】
平行移動剛健部分検出部２２２も回転剛健部分検出部２２１も、その特徴量と探索手法との組み合わせにより、対象とする部分領域が平行移動または回転していても、検出対象物体画像の対応する部分領域に最も近い領域を探索する。例えば、図５（ｂ）に示す第２の部分検出器５１２は、同一部分の回転である部分画像４２１〜４２３に対し、高い類似度を算出する。
【００３９】
なお、類似度演算部２０７から出力される画像類似度２１１は、非特許文献２に記載されているものと同様に、入力画像２１０が複数の部分画像に分割され、その部分画像毎の検出対象物体画像２０１との部分類似度の重み付き和である。なお、本実施形態では、類似度は高い程類似するものとする。
【００４０】
部分検出器制御部２１２は、検出辞書２０８から部分検出器構造２２５を取得し、部分検出器の木構造の幹の部分から枝に向かって順に部分検出部２１９を駆動させる。また、部分検出器制御部２１２は、部分検出器構造取得部２１３と部分類似度畳み込み部２１４とを備えている。
【００４１】
部分検出器構造取得部２１３は、検出辞書２０８から部分検出器構造２２５を取得し、部分検出部２１９を呼び出す。
【００４２】
部分類似度畳み込み部２１４は、部分検出部２１９から得られたそれぞれの部分類似度２２３についてそれらの重み付き和を求め、画像類似度２１１を算出する。この部分検出器に対応する重みは、検出辞書２０８の中に部分検出器構造２２５とともに格納されている部分検出器２２６の中の畳み込み重み２３０から取得される。
【００４３】
探索範囲制御部２１５は、部分検出器２２６から相対的探索範囲２２７を取得し、取得した相対的探索範囲２２７と部分検出部２１９から出力される探索結果２２４とから探索範囲２１８を求める。また、探索範囲制御部２１５は、探索結果記憶部２１６と探索範囲設定部２１７とから構成されている。
【００４４】
探索結果記憶部２１６は、部分検出器２２６の実行後にその探索結果２２４を記憶する。探索範囲設定部２１７は、ある部分検出器２２６についての、その相対的探索範囲２２７を検出辞書２０８から取得し、その親となる部分検出器の探索結果２２４から、探索範囲２１８を設定する。ここで、探索範囲２１８は、回転剛健部分検出部２２１あるいは平行移動剛健部分検出部２２２が特徴量を取得する円または矩形の中心座標が取り得る領域、及びその領域の回転角度の範囲を示す。
【００４５】
例えば、第２の部分検出器５１２の探索結果２２４として、図６（ｂ）に示すような中心座標６１１と回転角度６１２とが得られたものとする。また、第３の部分検出器５１３の相対的探索範囲２２７として、図６（ｃ）に示すように、基準座標６１５から中心へのベクトル６１６と、矩形６１３とが得られたものとする。この場合、探索範囲２１８としては、図６（ｂ）に示す矩形６１７が得られる。
【００４６】
図７は、本実施形態における類似度演算部２０７による動作手順の一例を示すフローチャートである。
まず、ステップＳ７０１において、画像類似度２１１を０に初期化する。画像類似度２１１には重み付き総和を用いるので初期値を０とする。
【００４７】
次に、ステップＳ７０２において、検出辞書２０８内の部分検出器２２６群のそれぞれの部分検出器について、親の部分検出器から順に、ステップＳ７０３〜ステップＳ７１２の処理を繰り返す。
【００４８】
まず、ステップＳ７０３において、探索結果記憶部２１６は、後述するステップＳ７１１で記憶した親の部分検出器の探索結果２２４、即ち中心座標と回転角度の情報を取得する。例えば、検出辞書２０８の部分検出器２２６が、自身及び親の部分検出器の識別子を記憶しておく。そして、ステップＳ７１１で自身の識別子をキーとし、その探索結果２２４を値として連想配列として記憶するようにし、ステップＳ７０３では、親の部分検出器の識別子をキーとしてその値を呼び出す。
【００４９】
次に、ステップＳ７０４において、探索範囲設定部２１７は、ステップＳ７０２で着目した部分検出器について、その適用する探索範囲２１８を演算する。具体的にはまず、ステップＳ７０３で取得した親の部分検出器の中心座標及び回転角度に対し、相対的探索範囲２２７における相対座標を加算することにより探索範囲の中心座標を求める。次に、その中心座標の周囲に、相対的探索範囲２２７における探索範囲の矩形の回転角度及び大きさに従う矩形を求めることによって探索範囲２１８を演算する。ステップＳ７０２で着目した部分検出器が親の部分検出器であって相対的探索範囲２２７に例外値が格納されている場合は、探索範囲の指定方法は任意である。本実施形態では、中央付近に適宜領域を設定するものとする。
【００５０】
次に、ステップＳ７０５おいて、部分検出部２１９は、最大部分類似度を想定できる最大値を設定し、初期化する。なお、最大部分類似度は後述するステップＳ７０６〜ステップＳ７１０内のループ内を通して更新され続け、ループ終了時の最大部分類似度が後述するステップＳ７１２で画像類似度２１１に重み付き加算されることとなる。
【００５１】
次のステップＳ７０６〜Ｓ７１０は、部分検出部２１９により行われる処理である。まず、ステップＳ７０６において、ステップＳ７０４で設定した探索範囲２１８内について網羅的にステップＳ７０７〜Ｓ７１０の処理を繰り返す。ここで網羅的とは、探索範囲２１８を構成する探索範囲の中心座標の範囲と、回転角度の範囲とについて、その範囲内である刻みに従ってそれぞれの値を変化させることを示す。この刻みは任意であるが一般に刻みが小さい方が処理は遅いが検出性能が高い。
【００５２】
次に、ステップＳ７０７において、部分検出部選択部２２０は、検出辞書２０８から部分変形種別２２８を取得し、部分変形種別２２８が平行移動に対して剛健か回転に対して剛健かを判定する。この判定の結果、平行移動に対して剛健である場合はステップＳ７０８に遷移し、回転に対して剛健である場合はステップＳ７０９に遷移する。
【００５３】
ステップＳ７０８においては、平行移動剛健部分検出部２２２は、平行移動に対して剛健な特徴量に基づいて類似度を求める。具体的にはまず、ステップＳ７０６で着目した中心座標を中心にして、同じくステップＳ７０６で着目した回転角度だけ画像を回転させた画像を生成する。次に、その画像に対し、Ｒｅｃｔａｎｇｕｌａｒ  ＨＯＧ特徴量を取得する。そして、その取得した特徴量に対し、検出辞書２０８内の部分検出統計量２２９を参照してＬｉｎｅａｒ  ＳＶＭを施し、その識別平面からの距離の逆数を類似度とする。
【００５４】
一方、ステップＳ７０９においては、回転剛健部分検出部２２１は、回転に対して剛健な特徴量に基づいて類似度を求める。具体的にはステップＳ７０８と同様の手順によりＲｅｃｔａｎｇｕｌａｒ  ＨＯＧ特徴量を取得し、Ｃｉｒｃｕｌａｒ  ＨＯＧ特徴量に変換する。
【００５５】
次に、ステップＳ７１０において、部分検出部２１９は、ステップＳ７０８またはＳ７０９で求めた類似度が最大部分類似度を上回ったか否かを判定し、類似度が最大部分類似度を上回った場合には、最大部分類似度を更新する。さらに、ステップＳ７０６で着目した回転角度と中心座標とを記憶する。以上のように、ステップＳ７０６で説明した終了条件を満たすまでステップＳ７０６〜Ｓ７１０の処理を繰り返す。
【００５６】
次に、ステップＳ７１１において、探索結果記憶部２１６は、ステップＳ７１０で最大部分類似度となった回転角度と中心座標とを記憶する。そして、ステップＳ７１２において、部分類似度畳み込み部２１４は、画像類似度２１１を更新する。具体的にはまず、ステップＳ７０２で着目した部分検出器２２６について、検出辞書２０８から畳み込み重み２３０として、部分検出器２２６の重みと、探索結果２２４に対応する重みとを取得する。そして、ステップＳ７１１で得られた最大部分類似度と、部分検出器２２６の重みと、探索結果２２４に対応する重みとの積を求め、その積を画像類似度２１１に加算する。以上のように、ステップＳ７０２で説明した終了条件を満たすまでステップＳ７０３〜Ｓ７１２の処理を繰り返す。そして、ステップＳ７０３〜Ｓ７１２までのループを終了すると、最後にステップＳ７１２で求めた画像類似度２１１が類似度演算部２０７から出力される。
【００５７】
次に、図４に示す入力画像４０１が入力された場合に、図７のフローチャートに従って画像類似度２１１を求める手順の概略について、図８（ａ）を参照しながら説明する。
【００５８】
まず、ステップＳ７０２では、図５（ｂ）に示す第１の部分検出器５１１に着目する。第１の部分検出器５１１は親の部分検出器であるので、ステップＳ７０４では、図８（ａ）に示す探索範囲８１１を設定する。そして、ステップＳ７０６〜Ｓ７１０では、探索範囲８１１内を探索した結果、第１の部分検出器５１１の中心座標８１２と回転角度とを得る。次に、ステップＳ７１１〜Ｓ７１２では、この中心座標８１２と回転角度とを記憶し、画像類似度を更新する。
【００５９】
次の部分検出器として、ステップＳ７０２では、部分検出器構造２２５を参照し、全体に対応する第１の部分検出器５１１の子である、胴体に対応する第２の部分検出器５１２に着目する。そして、ステップＳ７０３〜Ｓ７０４では、ステップＳ７１１で記憶した第１の部分検出器５１１の中心座標８１２及び回転角度、並びに相対的探索範囲に従い、図８（ａ）に示す探索範囲８１３を設定する。なお、この探索範囲８１３は、脚部の上あたりに存在する。
【００６０】
ステップＳ７０６〜Ｓ７１０で、探索範囲８１３内を探索し、第２の部分検出器５１２の中心座標８１４と回転角度とを得る。そして、ステップＳ７１１〜Ｓ７１２では、この中心座標８１４と回転角度とを記憶し、画像類似度を更新する。
【００６１】
さらに、ステップＳ７０２に戻り、胴体に対応する第２の部分検出器５１２の子である、頭部に対応する第３の部分検出器５１３に着目する。そして、ステップＳ７０３〜Ｓ７０４では、ステップＳ７１１で記憶した第２の部分検出器５１２の中心座標８１４及び回転角度、並びに相対的探索範囲に従い、図８（ａ）に示す探索範囲８１５を設定する。なお、この探索範囲８１５は、頚部あたりに存在する。このような手順により、図８（ａ）に示す実行結果８０１が得られる。
【００６２】
以上のような手順を繰り返すことにより、入力画像４０１に好適となる部分検出器の中心座標及び回転角度の組み合わせを求めることができる。なお、図８（ｂ）には、図４に示す入力画像４０２が入力された場合の実行結果８０２を示し、図８（ｃ）には図４に示す入力画像４０３が入力されたときの実行結果８０３を示す。
【００６３】
以上のように本実施形態によれば、入力画像の複数の部分画像がそれぞれ種別の異なった変形をする場合に、それぞれの部分画像について部分検出部を切り替えることができる。これにより、そのような入力画像に対してより好適な類似度を求めることができ、例えば物体検出である場合には、より正確な検出を行うことができ、さらに前記変形がある物体の回転な移動及び平行移動である場合に、好適な類似度を求めることができる。また、本実施形態によれば、ある部分画像の変形が他の部分画像に依存する時に、後者の部分画像の探索領域を前者の探索結果に対し相対的に設定するにより、後者の部分画像の探索領域を狭めることができる。これにより、より高速に類似度を求めることができる。
【００６４】
（その他の実施形態）
その他の実施形態として、部分検出部２１９に面外回転剛健検出部と、線対象剛健検出部とを別途設けてもよい。この場合、面外回転剛健検出部は、相対的探索範囲２２７、探索範囲２１８及び探索結果２２４として、さらに逆透視変換パラメータを保持する。そして、逆透視変換パラメータを網羅的に変形させつつ、その逆透視変換パラメータに従って入力画像２１０に対して逆透視変換を施し、回転剛健部分を検出する。
【００６５】
また、線対象剛健検出部は、まず、相対的探索範囲２２７、探索範囲２１８及び探索結果２２４として、さらに基準線に対する対象線の角度を保持する。そして、対象線の角度を網羅的に変形させつつ、その角度をなす直線で入力画像２１０を線対象に反転させた画像を生成する。反転させた画像と反転させない画像との両方に対して回転剛健部分検出部２２１もしくは平行移動剛健部分検出部２２２が処理を行い、部分類似度が最小となる方を選択すればよい。この方法では、前記変形が面外回転もしくは線対称な移動となる場合に、好適な類似度を求めることができる。
【００６６】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６７】
２０７  類似度演算部
２１２  部分検出器制御部
２１５  探索範囲制御部
２１９  部分検出部
【図１】
2013250727.tif 000003
【図２】
2013250727.tif 000004
【図３】
2013250727.tif 000005
【図４】
2013250727.tif 000006
【図５】
2013250727.tif 000007
【図６】
2013250727.tif 000008
【図７】
2013250727.tif 000009
【図８】
2013250727.tif 000010