(57)【要約】【課題】処理負荷を軽減できる画像探索装置を提供する。【解決手段】処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索装置であって、制御部１１が所定のルールに従って前記対象画像データから探索領域候補を特定し、所定の部分探索領域抽出ルールに従って、当該探索領域候補から複数の部分探索領域候補を抽出し、各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定して、当該決定された探索領域について、探索対象を探索する処理を行う。【選択図】        図１
2004246478.tif 000002
【特許請求の範囲】
【請求項１】
処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索装置であって、
所定のルールに従って前記対象画像データから探索領域候補を特定する探索領域特定手段と、
所定の部分探索領域抽出ルールに従って、前記探索領域候補から複数の部分探索領域候補を抽出する部分探索領域抽出手段と、
前記各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定する手段と、
を含み、
当該決定された探索領域について、探索対象を探索する処理を行うことを特徴とする画像探索装置。
【請求項２】
請求項１に記載の画像探索装置において、前記部分探索領域抽出手段は、前記探索領域候補から一部重複を許して前記部分探索領域候補を抽出することを特徴とする画像探索装置。
【請求項３】
請求項１又は２に記載の画像探索装置において、
前記探索処理手段は、予め学習獲得された変換データベースを参照して、前記決定された少なくとも一つの探索領域に含まれる画像データ部分の各々について適用すべき変換の方法及び変換の量を含んでなる変換条件を取得し、当該取得した変換条件に基づく変換を、対応する画像データ部分に対して少なくとも一度行う変換手段と、
基準状態での探索対象の画像データを用いて学習獲得された探索データベースを参照し、前記変換後の画像データ部分のうち少なくとも一つについて探索対象が含まれているか否かを判断する探索手段と、
を含むことを特徴とする画像探索装置。
【請求項４】
処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索方法であって、
所定のルールに従って前記対象画像データから探索領域候補を特定する工程と、
所定の部分探索領域抽出ルールに従って、前記探索領域候補から複数の部分探索領域候補を抽出する工程と、
前記各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定する工程と、
を含み、
当該決定された探索領域について、探索対象を探索する処理を行うことを特徴とする画像探索方法。
【請求項５】
処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索プログラムであって、コンピュータに、
所定のルールに従って前記対象画像データから探索領域候補を特定する手順と、
所定の部分探索領域抽出ルールに従って、前記探索領域候補から複数の部分探索領域候補を抽出する手順と、
前記各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定する手順と、
当該決定された探索領域について、探索対象を探索する処理を行う手順と、
を実行させることを特徴とする画像探索プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、写真などの画像データから、顔の部分などといった特定の画像部分を探索する画像探索装置に関する。
【０００２】
【従来の技術】
近年、写真等に含まれる特定の対象体、例えば人の顔などの部分を特定し、当該特定した部分に基づいて所定の処理を行うことが考えられている。その一例としては撮影された写真から各人の顔の部分を検出し、当該顔の部分のみを焼き付けたり、または撮像中の映像から人の顔部分を検出して顔の認証処理に供したり、といったものが考えられる。
【０００３】
従来の顔画像等、対象体を認識する装置では、画像データを所定のルールで探索領域に分割した上で、こうして得られた探索領域のすべてについて探索対象が含まれるか否かを判断する。この際、対象体の撮像状態（傾き、大きさ、照明状態など）によっては対象体の認識が困難になる場合に対応するため、撮像状態を所定の撮像状態（基準状態）に適合させる処理を行う。
【０００４】
従来、この処理では、具体的には撮像状態を変化させながら撮影した学習用画像データを用いてニューラルネットワークを学習させ、当該学習させたニューラルネットワークを利用して処理の対象となった写真での撮像状態が基準状態からどの程度ずれているかを検出し、当該ずれを補正するよう画像処理を行うことが考えられてきた。
【０００５】
なお、対象となる画像データから所望のパターンを検出する処理の例としては、特許文献１に開示される、カーネル非線形部分空間法等の方法が知られている。
【０００６】
【特許文献１】
特開２００１−９０２７４号公報
【０００７】
【発明が解決しようとする課題】
しかしながら一般に、対象画像データから所望の探索対象を検出する処理や基準状態に適合させる処理は負荷のかかる処理であり、上記従来の装置では、各探索領域についてそれぞれを行うので処理負荷が高くなる。
【０００８】
本発明は、上記実情に鑑みて為されたもので、処理の負荷を軽減できる画像探索装置を提供することをその目的の一つとする。
【０００９】
【課題を解決するための手段】
上記従来例の問題点を解決するための本発明は、処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索装置であって、所定のルールに従って前記対象画像データから探索領域候補を特定する探索領域特定手段と、所定の部分探索領域抽出ルールに従って、前記探索領域候補から複数の部分探索領域候補を抽出する部分探索領域抽出手段と、前記各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定する手段と、を含み、当該決定された探索領域について、探索対象を探索する処理を行うことを特徴としている。
【００１０】
ここで、前記部分探索領域抽出手段は、前記探索領域候補から一部重複を許して前記部分探索領域候補を抽出することとしてもよい。さらに前記探索処理手段は、予め学習獲得された変換データベースを参照して、前記決定された少なくとも一つの探索領域に含まれる画像データ部分の各々について適用すべき変換の方法及び変換の量を含んでなる変換条件を取得し、当該取得した変換条件に基づく変換を、対応する画像データ部分に対して少なくとも一度行う変換手段と、基準状態での探索対象の画像データを用いて学習獲得された探索データベースを参照し、前記変換後の画像データ部分のうち少なくとも一つについて探索対象が含まれているか否かを判断する探索手段と、を含むこととしてもよい。
【００１１】
また、上記従来例の問題点を解決するための本発明は、処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索方法であって、所定のルールに従って前記対象画像データから探索領域候補を特定する工程と、所定の部分探索領域抽出ルールに従って、前記探索領域候補から複数の部分探索領域候補を抽出する工程と、前記各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定する工程と、を含み、当該決定された探索領域について、探索対象を探索する処理を行うことを特徴としている。
【００１２】
さらに、上記従来例の問題点を解決するための本発明は、処理の対象となった対象画像データ内から、探索対象の画像データ部分を探索する画像探索プログラムであって、コンピュータに、所定のルールに従って前記対象画像データから探索領域候補を特定する手順と、所定の部分探索領域抽出ルールに従って、前記探索領域候補から複数の部分探索領域候補を抽出する手順と、前記各部分探索領域候補で画定される画像データ部分のそれぞれを用いて、それぞれの画像特徴量を演算し、各画像特徴量のうち所定の特徴量条件を満足する画像特徴量の個数をカウントし、当該個数が所定の個数条件を満足する場合に、対応する探索領域候補を探索領域として決定する手順と、当該決定された探索領域について、探索対象を探索する処理を行う手順と、を実行させることを特徴としている。
【００１３】
【発明の実施の形態】
［基本構成］
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る画像探索装置は、図１に示すように、制御部１１と、記憶部１２と、データベース部１３と、表示部１４と、操作部１５と、外部記憶部１６とを含んで構成された、一般的なコンピュータを用いて実現される。このコンピュータは、他の製品、例えばカメラなどに組み込まれたものであっても構わない。
【００１４】
制御部１１は、記憶部１２に格納されているプログラムに従って動作するものであり、処理の対象となった対象画像データのうち、探索領域を少なくとも一つ画定する探索領域画定処理と、基準状態に変換する変換処理と、探索対象が含まれている探索領域を検出する探索処理と、探索結果を用いた所定の処理とを実行する。これらの制御部１１の具体的処理内容については、後に詳しく述べる。
【００１５】
記憶部１２は、制御部１１が実行するソフトウエアを格納している。また、この記憶部１２は、制御部１１がその処理の過程で必要とする種々のデータを保持するワークメモリとしても動作する。具体的にこの記憶部１２は、ハードディスクなどの記憶媒体、あるいは半導体メモリ、ないしこれらの組み合わせとして実現できる。
【００１６】
データベース部１３は、後に説明するように、制御部１１の第１変換処理において用いられる変換データベース１３ａ、並びに探索処理において用いられる探索データベース１３ｂを含んだデータベースである。このデータベース部１３は、具体的にはハードディスクなどの記憶媒体であり、記憶部１２がこのデータベース部１３を兼ねてもよいが、ここでは説明のため、特に分けて示している。
【００１７】
表示部１４は、例えばディスプレイ装置やプリンタ装置などであり、制御部１１から入力される指示に従い、情報の表示などを行うものである。操作部１５は、例えばキーボードやマウスなどであり、ユーザの操作を受け入れて、当該操作の内容を制御部１１に出力する。
【００１８】
外部記憶部１６は、例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなど、コンピュータ可読なリムーバブルメディア（記憶媒体の一種）からプログラムやデータを読み出して制御部１１に出力し、制御部１１の処理によって記憶部１２に格納させる処理を行うものである。本実施の形態に係るプログラムは、例えばＣＤ−ＲＯＭなどの可搬的な記憶媒体に格納されて頒布でき、この外部記憶部１６を用いて記憶部１２に複写されて利用される。なお、本実施の形態に係るプログラムは、こうした記憶媒体だけでなく、ネットワーク上のサーバなどから図示しない通信部を介して記憶部１２に複写されることとしてもよい。
【００１９】
［制御部１１の処理］
ここで、制御部１１の処理の内容について具体的に説明する。本実施の形態においては、各処理の対象となる画像データ（対象画像データ）は、外部記憶部１６や通信部（図示せず）を介して外部から入力され、記憶部１２に格納される。ここで対象画像データは、一つであっても複数であっても構わない。ユーザが操作部１５を操作して、制御部１１に対し、特定の対象画像データについて探索対象を探索する処理を行うべき旨の指示（処理開始の指示）を行うと、制御部１１は、図２に示す処理を開始する。
【００２０】
制御部１１は、対象画像データを順次縮小変換しながら、各縮小変換された対象画像データについて探索領域を画定し、各探索領域について基準状態への変換処理と、探索処理とを行い、各縮小変換された対象画像データ上のどの部分に探索対象が含まれているかを表すマップデータを生成する。
【００２１】
具体的に制御部１１は、まず縮小率Ｓを最小縮小率（例えば１倍、つまり縮小せず）に設定し（Ｓ１）、対象画像データを縮小率Ｓで縮小する（Ｓ２）。そして縮小後の対象画像データのサイズに等しいサイズのマップデータの領域を記憶部１２上に確保し、当該領域の値を「偽（ｆａｌｓｅ）」に設定して、マップデータの初期化を実行する（Ｓ３）。例えば縮小後の対象画像データが１０００×１０００ピクセルの画像データであれば、１０００×１０００ビット分の領域を確保し、各ビット値を「０」に初期設定する。
【００２２】
次に制御部１１は、縮小後の対象画像データについて、少なくとも一つの探索領域を決定する処理を行う（Ｓ４）。この探索領域の決定処理については後に詳しく述べる。そして探索領域の一つを選択し（Ｓ５）、当該探索領域について変換処理を実行する（Ｓ６）。この変換処理についても後に詳しく述べる。
【００２３】
制御部１１は、変換処理後の探索領域に含まれる画像データ部分について、探索対象が含まれているか否かを判定する処理（探索処理）を実行し（Ｓ７）、含まれていると判断されるときには（Ｙｅｓのときには）、当該変換処理後の探索領域に相当する、マップデータ上の領域の値を「真（ｔｒｕｅ）」に設定する（Ｓ８）。そしてさらに選択していない探索領域があるか否かを調べ（Ｓ９）、選択していない探索領域があれば（Ｙｅｓであれば）、処理Ｓ５に戻り、当該選択していない探索領域の一つを選択して処理を続ける（Ａ）。
【００２４】
一方、処理Ｓ７における探索処理の結果、探索対象が含まれていないと判定されるときには（Ｎｏのときには）、そのまま処理Ｓ９に移行する。また、処理Ｓ９において、選択していない探索領域がなければ、つまり、すべての探索領域について変換処理と探索処理とを完了したならば（Ｎｏならば）、現在設定されている縮小率Ｓが事前に定められた最大縮小率を上回っているか否かを調べ（Ｓ１０）、上回っていなければ（Ｎｏならば）、縮小率Ｓを大きくするように調整して（Ｓ１１）、処理Ｓ２に戻って処理を続ける（Ｂ）。ここで、縮小率Ｓを大きく調整する処理Ｓ１１は、例えば縮小率Ｓを所定比で高めるような処理としてもよいし、縮小率Ｓである倍率に対し、所定乗率ΔＳを乗じて、Ｓ＝Ｓ×ΔＳとして新たな縮小率Ｓを定めてもよい。
【００２５】
また、処理Ｓ１０において現在設定されている縮小率Ｓが事前に定められた最大縮小率を上回っていれば（Ｙｅｓならば）、各縮小率での対象画像データに対応するマップデータに基づき、元の（縮小前の）対象画像データ内で、探索対象が含まれている領域を画定して（Ｓ１２）、処理を終了する。
【００２６】
［探索領域決定処理］
次に、制御部１１が探索領域を決定する処理（探索領域決定処理）について説明する。制御部１１は、図３に示すように、縮小後の対象画像データの左上隅の座標（例えばＸ＝０，Ｙ＝０）を開始点として、予め定められたサイズＬ×Ｌ′（例えば２７×２７）の矩形領域を探索領域候補として画定する（Ｓ２０）。なお、以下では説明のため、この探索領域候補上の座標系を次のように設定する。すなわち左上端をη＝０、ξ＝０として、右方向をη軸正の方向、下方向をξ軸正の方向として説明する。
【００２７】
制御部１１は、記憶部１２上にカウンタの記憶領域を確保し、「０」にリセットする（Ｓ２１）。また制御部１１は部分探索領域の抽出開始点の座標（η，ξ）を（０，０）に初期設定しておく。次に制御部１１は、探索領域候補から（η，ξ）を左上隅としたｎ×ｎ′（ｎ＜Ｌ、ｎ′＜Ｌ′、例えば９×９）の部分探索領域候補を抽出し（Ｓ２２）、この部分探索領域候補によって確定される画像データ部分について探索対象の性状に応じて予め定められている特徴量、例えばエントロピーｅを算出する（Ｓ２３）。
【００２８】
そしてこの算出したエントロピーｅが、所定のしきい値ｅｔｈ１より大であるか否かを判断し（Ｓ２４）、大であれば（Ｙｅｓならば）カウンタをインクリメントして（Ｓ２５）、部分探索領域候補をＸ軸方向に予め定めた移動量ｄ（例えば３画素、すなわち部分探索領域候補同士の部分的重複を許してもよい）だけ移動する（つまり、η＝η＋ｄ；Ｓ２６）。制御部１１は、新たな部分探索領域候補が探索領域候補の右端から逸脱したか、すなわちη＋ｎ＞Ｌとなったか否かを調べ（Ｓ２７）、逸脱していれば（Ｙｅｓならば）、ηを「０」とし、ξ＝ξ＋ｄとして、新たな（η，ξ）を左上端とする部分探索領域候補を抽出する（Ｓ２８）。制御部１１は、さらに新たな部分探索領域候補が探索領域候補の下端を逸脱したか、すなわちξ＋ｎ′＞Ｌ′となったか否かを調べ（Ｓ２９）、逸脱していれば（Ｙｅｓならば）、カウンタの値が予め定めたしきい値ＴＨ以上であるか否かを調べる（Ｓ３０）。そしてカウンタの値がしきい値ＴＨ以上であれば（Ｙｅｓならば）、処理している探索領域候補を探索領域として決定し（Ｓ３１）、次の探索領域候補を画定すべきか否かを調べ（対象画像データ上に画定可能な探索領域候補がまだあるかを調べ；Ｓ３２）、画定すべき、すなわち、まだ画定可能な探索領域候補があれば（Ｙｅｓならば）、処理Ｓ２０に戻って、開始点の座標をＸ方向にΔＸだけ移動し、Ｘ方向の端に到達したら、Ｘを「０」とし、Ｙ方向にΔＹだけ移動して、次のＬ×Ｌ′の探索領域を画定して処理を続ける。
【００２９】
またこの処理Ｓ３２において、画定すべき、すなわち、まだ画定可能な探索領域候補がなければ（Ｎｏならば）、処理を終了する。
【００３０】
さらに、処理Ｓ２７及びＳ２９において、それぞれ逸脱していないときは（それぞれにおいてＮｏであれば）、処理Ｓ２２に戻って処理を続ける。また、処理Ｓ３０においてカウンタの値が予め定めたしきい値ＴＨ未満であれば（Ｎｏならば）、処理している探索領域候補を探索領域とせずに、そのまま処理Ｓ３２に移行する。さらに処理Ｓ２４において、エントロピーｅが所定のしきい値ｅｔｈ１より大でなければ（Ｎｏならば）、処理Ｓ２６に移行する。
【００３１】
またここでは、特徴量条件として、エントロピーｅが所定のしきい値ｅｔｈ１より大であるか否かとの条件を用いているが、エントロピーｅが所定の２つのしきい値ｅｔｈ１と、ｅｔｈ２とで挟まれる範囲内であるか否かを特徴量条件としてもよい。
【００３２】
ここで制御部１１がエントロピーｅを算出する処理Ｓ２３の具体的内容について説明する。制御部１１は、処理の対象となった部分探索領域候補によって確定される画像データ部分に含まれる画素の輝度のヒストグラムを生成し、さらにこのヒストグラムを例えば線形近似等によって補完し、補完後のヒストグラムの総和をエントロピーｅとして算出する。このようにヒストグラムを補完するのは、エントロピーの値は本来連続量であるのに対して、ヒストグラムは離散量として演算されてしまうからである。そこで演算した輝度ヒストグラムを連続的関数で近似的に表現し、この近似的な連続的関数の積分としての総和をヒストグラムとする。
【００３３】
なお、ヒストグラムの補完は、線形近似でなくとも、ヒストグラムの値を所定の内挿法で内挿して二次以上の近似を行ってもよい。
【００３４】
このようにすると、単なる総和においてはヒストグラムのピーク位置同士の相対的関係が配慮されなくなるのに対して、近似関数の積分とすることで、ピーク位置同士の相対的距離等が積分結果に寄与するようになるので、エントロピープロファイルが高精度化される。
【００３５】
なお、ここでは開始点の移動量を幅方向、高さ方向にそれぞれΔＸ，ΔＹとしているが、これら移動量は対象画像データの縮小率Ｓに応じて、１倍のときのΔＸ，ΔＹに対してΔＸ／Ｓ，ΔＹ／Ｓとしてもよい。
【００３６】
本実施の形態においては、このように探索領域の候補に含まれる部分探索領域候補のそれぞれについて、各部分探索領域候補で確定される画像データ部分から演算されるエントロピーなどの特徴量が所定の条件を満たしているものがいくつあるかによって、当該探索領域候補を探索領域として決定するか否かが判断される。
【００３７】
これは例えば顔の部分の画像であれば、目や鼻、輪郭などの部分ではエントロピーが比較的高くなるのに対して、顔の内部、額や頬の部分などは比較的エントロピーが低くなるので、探索領域候補全体で特徴量を捉えると、平均的にエントロピーが低下してしまい、顔の部分を捉えにくいことに配慮したものである。つまり、領域内に特徴量が高くなる部分とそうでない部分とがある場合に、当該特徴量が領域全体で平均化され、当該特徴量による識別が困難になることを防止したのである。
【００３８】
このように本実施の形態によると、変換処理、探索処理の前に探索対象が含まれている可能性があるか否かを的確に判断して、可能性のない部分についての変換処理や探索処理を行わないようにするので、処理負荷が軽減される。
【００３９】
［変換処理］
次に変換処理について説明する。本実施の形態において特徴的なことの一つは、この変換処理が段階的に行われ、各段階では一つの変換自由度に対応する変換が行われることである。本実施の形態の制御部１１は、探索領域に含まれている画像データ部分に基づいて所定の特徴量ベクトル情報を演算する。ここで特徴量ベクトル情報は、探索対象の性状に合わせて選択された、複数の特徴量要素を含んでなるベクトル量である。
【００４０】
本実施の形態では、制御部１１は、この特徴量ベクトル情報と、変換データベース１３ａに格納されている特徴量ベクトル情報とを用いた、カーネル非線形部分空間法によって変換を特定することとして説明する。
【００４１】
［変換データベース１３ａの内容］
このカーネル非線形部分空間法は、データを何らかのカテゴリに分類する方法として広く知られているので、詳しい説明を省略するが、その概要を述べれば、特徴量要素を基底として張られる空間Ｆにおいて、当該空間Ｆに含まれる複数の部分空間Ωのそれぞれをデータの分類先であるカテゴリとして認識し、分類しようとするデータに基づいて作成される空間Ｆ内の特徴量ベクトル情報（例えばΦとする）を各部分空間Ωに射影し（射影の結果を例えばφとする）、射影前の特徴量ベクトル情報Φと、射影後の特徴量ベクトル情報φとの距離Ｅが最も小さくなる部分空間Ω（仮に最近接部分空間と呼ぶ）を検出し、分類しようとするデータは、その部分空間Ωによって表されるカテゴリに属すると判断する方法である。
【００４２】
そこで学習段階では、同一のカテゴリに属するべき学習用の例示データ（学習サンプル）に対応する特徴量ベクトル情報に基づく最近接部分空間Ωが同一となるよう、非線形写像（空間Ｆへの写像、すなわちカーネル関数に含まれるパラメータ等）と、各カテゴリに対応する部分空間Ω間を隔てる超平面との少なくとも一方を調整することとなる。
【００４３】
本実施の形態においては、探索対象を基準状態に変換する方法（変換の種類及び量）を決定するために、この変換データベース１３ａが形成される。つまり、基準状態にあるか否かが不明な画像データに対して、行うべき変換の種類及び変換の量（カテゴリ）を決定できるように変換データベース１３ａが学習獲得されている。本実施の形態では、画像の回転、平行移動、サイズ変更という、画像に対して行うべき変換の種類（自由度）ごとに、変換データベース１３ａを作成している。変換の各自由度に対応する変換データベース１３ａは、対応する変換の変換量をカテゴリとして学習獲得したものである。
【００４４】
この学習獲得のため、本実施の形態の変換データベース１３ａの学習過程では、学習サンプルを次のように生成する。すなわち、所定の基準状態での探索対象である画像データの例を複数用意し、各画像データの例について、変換の自由度ごとに、それぞれの自由度について、互いに異なる変換量での変換が行われた複数の変換画像データを生成する。こうして自由度ごとに生成された変換画像データを、各自由度ごとの学習サンプルとする。具体的に顔を探索対象とする場合、所定の基準状態（所定の撮影条件・姿勢）にある顔の画像データを例として複数用意し、各画像データについて、変換の自由度として、例えば回転・平行移動・サイズ変更等という各自由度ごとに、回転であれば−１８０度から１８０度までの範囲で５度ずつ等の角度で回転させた変換画像データを回転の自由度に対する学習サンプルとする。また、平行移動であれば、縦横にそれぞれ５ピクセルずつ移動させた複数の変換画像データを平行移動の自由度に対する学習サンプルとする。なお、これらの学習サンプルは、移動等の変換自由度を含むために、基準状態よりも広い領域の画像データのうちから基準状態の面積を５ピクセルずつ移動させながら取り出すことで生成する。
【００４５】
こうして複数の画像データ例のそれぞれについて、さらに自由度ごとにそれぞれ複数の変換が施された複数の画像データを生成し、各画像データにどのような変換を行ったかを表す情報（変換量の大きさ等）を関連づける。
【００４６】
なお、ここでは互いに異なる変換量の変換を施した画像データを得るために、変換量を所定のステップ（例えば回転で言えば５度）ずつ変化させながらそれぞれ変換を行った画像データを学習サンプルに含めるようにしたが、所定のステップずつ変化させながらでなくとも、変換量を乱数によって決定しながら変換を行って、それぞれを学習サンプルに含めるようにしてもよい。
【００４７】
次に、各自由度ごとの学習サンプルを用いて、各自由度に対応する変換データベース１３ａを学習させる。
【００４８】
［変換処理の動作］
制御部１１は、こうして学習された各変換データベース１３ａを用いて、探索領域画定処理によって画定された探索領域の各々について次のように変換処理を行う。すなわち、処理の対象となった探索領域に含まれている画像データ部分（例えば画素値の列としてベクトル値と同視し得る）を、空間Ｆ内の特徴量ベクトル情報（各変換データベース１３ａごと、つまり変換の各自由度ごとに定義されている特徴量の組）に写像し、さらにその写像を各部分空間Ωに射影する。そして、射影前の特徴量ベクトル情報と、射影後の特徴量ベクトル情報との距離Ｅが最小となる変換量を決定する。また制御部１１は、距離Ｅの二乗値Ｌを演算し、これを誤差として記憶部１２に保持する。
【００４９】
ここで変換量は、各変換データベース１３ａに基づき自由度ごとに決定されるが、制御部１１は、各自由度に対応する変換量のうち一つを所定の条件（例えば各変換量に対応する距離Ｅが最小となるもの等の条件）に基づいて選択し、選択した自由度に対応する変換を、選択した変換量の分だけ変換する。
【００５０】
つまり、探索領域に含まれている画像データ部分からは、各自由度に対応する各変換データベース１３ａに学習獲得された情報によって、例えば回転の自由度に対しては１０度の回転変換により基準状態に近づき、その誤差がＬｒであり、平行移動の自由度に対しては左へ５ピクセルの変換で基準状態に近づき、その誤差がＬｐといった情報が得られるので、この中から、誤差が最小となる自由度の変換を選択する。例えば上述の例の場合、Ｌｒ＜Ｌｐならば１０度の回転変換を探索領域に施して、新たな探索領域を画定する。そして、この新たな探索領域に含まれる画像データ部分をさらに空間Ｆ内の特徴量ベクトル情報に写像し、その写像をさらに各部分空間Ωに射影する。そして、射影前の特徴量ベクトル情報と、射影後の特徴量ベクトル情報との距離Ｅが最小となる変換量を決定する処理から繰り返す。
【００５１】
また、各自由度に対応する変換量がいずれも「０」（つまり無変換）を表すものとなっている場合は、その段階で処理を終了し、さらに未処理の探索領域があれば、当該未処理の探索領域のいずれかを処理の対象として変換処理を行う。
【００５２】
なお、ここでは対象画像データのうち、画定された探索領域に含まれる画像データ部分をそのまま用いているが、当該画像データ部分の解像度を低減する処理を行って、粗視データとし、当該粗視データを用いて変換処理を実行してもよい。この場合は、当該粗視データに対応する学習サンプルを用いて、各変換データベース１３ａを学習獲得させておく。
【００５３】
また、制御部１１は、特徴量ベクトル情報の演算、部分空間への写像、距離の評価、誤差の評価といった処理を各自由度ごとに順次行うのではなく、並列して行ってもよい。
【００５４】
さらにここではカーネル非線形部分空間法を用いる場合を例として説明したが、データの分類と、分類時の誤差評価が可能であれば例えばオートエンコーダ等、他の方法を用いても構わない。
【００５５】
［探索処理］
次に探索処理について説明する。この探索処理では変換処理を完了した探索領域の各々にそれぞれ含まれる画像データ部分について、探索データベース１３ｂを用いて、探索対象が含まれているか否かを判定する。具体的な探索処理の例としては、特開２００２−３２９１８８号公報に開示された方法などがある。次にその概要を説明する。
【００５６】
［探索データベースの学習課程］
この探索データベース１３ｂは、基準状態にある探索対象の画像データの例を学習サンプルとして用い、ニューラルネットワークを学習させて形成する。すなわち、制御部１１は、複数の学習サンプルの入力を受けて、その各々について、探索対象の性状に合わせて予め選択された特徴量のセット（特徴量ベクトル）を演算し、学習用データを生成する。次に、この学習用データを用いて、記憶部１２に格納されたＭ×Ｍ′の格子空間上に、ＳＯＭ（自己組織化マップ）によって格子空間マップを形成する。つまり、制御部１１は、入力された学習用データである特徴量ベクトルと、各格子ごとに割り当てられた重みベクトルとの距離を所定の測度（例えばユークリッド測度）で演算し、この距離が最小となる格子（最整合ノード）ｃを検出する。そしてこの最整合ノード近傍の複数の格子について、その重みベクトルを当該入力された特徴量ベクトルを用いて更新する。この処理の繰り返しにより、記憶部１２上に格子空間マップが形成され、互いに類似する特徴量ベクトルに対する最整合ノードが連続的な領域を形成するようになる。つまり、この格子空間には、多次元の入力信号である特徴量ベクトルから２次元のマップへの非線形射影が位相を保持したまま形成され、重みの更新により、データの特徴部分が組織化され、その学習成果として類似のデータに反応する格子が近接して存在しているようになる。
【００５７】
各学習データに基づく学習が完了すると、次に制御部１１は、格子空間マップの各格子をカテゴリに分類する。この分類は、例えば各格子間の距離（各格子に関連づけられた重みベクトル間の距離）に基づいて行うことができ、探索対象に似た画像データに反応する格子群のカテゴリ（探索対象カテゴリ）と、そうでない格子群のカテゴリ（非探索対象カテゴリ）とに分類される。
【００５８】
［探索処理の動作］
制御部１１は、対象画像データと同じサイズのマップデータを記憶する領域を記憶部１２に確保し、当該領域の値を「偽（ｆａｌｓｅ）」に初期化する。
【００５９】
制御部１１は、学習獲得した探索データベース１３ｂを用い、変換処理を完了した探索領域のに画像データ部分に基づいて所定の特徴量ベクトルを演算する。そして当該演算した特徴量ベクトルと探索データベース１３ｂ内の各格子に関連づけられた重みベクトルとの距離を求め、特徴量ベクトルとの距離が最小となる格子（最整合ノード）を特定し、特定した格子が探索対象カテゴリに属していれば、探索領域に探索対象が含まれていると判断し、特定した格子が非探索対象カテゴリに属していれば、探索領域には探索対象が含まれていないと判断する。
【００６０】
［制御部１１の動作］
本実施の形態の制御部１１は、以上のように、探索の対象となった対象画像データを順次縮小しながら、縮小後のそれぞれの対象画像データから探索処理を行う領域を取り出し、当該領域内の画像データが基準状態となるよう変換をした上で、探索対象が当該変換後の探索領域内の画像データに含まれているか否かを判断する。すなわち、制御部１１は探索処理の対象となる画像データを基準状態とする処理を行うので、変換前の探索領域の位置が多少ずれていても構わない。また、縮小率が基準状態から多少ずれていたとしても問題とならない。
【００６１】
そこで従来であれば、０．８倍ずつ縮小した多段階の縮小画像データを生成し、しかも探索領域を１画素ずつずらしながら取り出すようにしていたのに対し、本実施の形態のものでは０．５倍ずつの縮小で構わないし、探索領域を画定する際に、所定の条件を満足する領域を自律的に取り出す場合であっても、ΔＸやΔＹを６画素等とすることができる。これにより、探索処理の対象となるパターン数を大幅に低減でき、探索の対象体を写真などから探索する処理の負荷を軽減できる。
【００６２】
制御部１１は、探索対象が含まれていると判断された領域を表すマップデータを探索結果情報として生成するが、このマップデータは各縮小率で縮小された後の対象画像データのそれぞれに対応して複数生成される。そこで、これら複数のマップデータ（それぞれ縮小後の対象画像データのサイズとなっている）を統合的に用いて探索対象が含まれている領域を決定する。
【００６３】
例えば、各マップデータを、それぞれの縮小率に応じた拡大率で拡大し、元の対象画像データのサイズに揃えて比較し、すべてのマップデータで共通して「真」となっている領域（どの縮小率の対象画像データに基づいても、探索対象が含まれていると判断された領域）に探索対象が含まれていると判断することとしてもよい。また、いずれか一つのマップデータで「真」となっている領域を探索対象が含まれている領域と判断するようにしてもよい。
【００６４】
［その他の変形例］
ここまでの説明では、変換処理において行われる変換は、２次元的な回転、平行移動、拡大縮小（探索領域を拡大縮小し、その内部の画像データ部分を元の（拡大縮小前の）探索領域のサイズに変換して扱えばよい）であるとして説明したが、これ以外にも例えば人の顔であれば、姿勢（うつむき加減や振り向き加減）に影響される３次元的な回転を含んでもよい。この場合、探索対象の平均的３次元モデルを想定し、当該平均的３次元モデルへ画像データ部分を投射したものを用いて３次元的回転の変換を実現することができる。
【００６５】
また、探索処理においては探索対象として、例えば人の顔であっても、さらに細かくカテゴリを分けて、年齢や性別、口を開けているか否かなどの条件を含めてもよい。
【００６６】
さらに、図２のフローチャート図においては各縮小率における処理を制御部１１が順次行うものとしていたが、各縮小率における処理は互いに独立しているので、制御部１１は、これらの各縮小率における処理を並列して行ってもよい。
【図面の簡単な説明】
【図１】本発明の実施の形態に係る画像探索装置の構成ブロック図である。
【図２】制御部１１の処理の一例を表すフローチャート図である。
【図３】制御部１１による探索領域の決定の処理の例を表すフローチャート図である。
【符号の説明】
１１  制御部、１２  記憶部、１３  データベース部、１４  表示部、１５  操作部、１６  外部記憶部。
【図１】
2004246478.tif 000003
【図２】
2004246478.tif 000004
【図３】
2004246478.tif 000005