JP4217954B2 - Image search device - Google Patents
Image search device Download PDFInfo
- Publication number
- JP4217954B2 JP4217954B2 JP2003033845A JP2003033845A JP4217954B2 JP 4217954 B2 JP4217954 B2 JP 4217954B2 JP 2003033845 A JP2003033845 A JP 2003033845A JP 2003033845 A JP2003033845 A JP 2003033845A JP 4217954 B2 JP4217954 B2 JP 4217954B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- conversion
- image data
- target
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、写真などの画像データから、顔の部分などといった特定の画像部分を探索する画像探索装置に関する。
【0002】
【従来の技術】
近年、写真等に含まれる特定の対象体、例えば人の顔などの部分を特定し、当該特定した部分に基づいて所定の処理を行うことが考えられている。その一例としては撮影された写真から各人の顔の部分を検出し、当該顔の部分のみを焼き付けたり、または撮像中の映像から人の顔部分を検出して顔の認証処理に供したり、といったものが考えられる。
【0003】
従来の顔画像等、対象体を認識する装置では、対象体の撮像状態(傾き、大きさ、照明状態など)によっては対象体の認識が困難になる場合に対応するため、撮像状態を所定の撮像状態(基準状態)に適合させる処理を行うものがある。
【0004】
従来、この処理では、具体的には撮像状態を変化させながら撮影した学習用画像データを用いてニューラルネットワークを学習させ、当該学習させたニューラルネットワークを利用して処理の対象となった写真での撮像状態が基準状態からどの程度ずれているかを検出し、当該ずれを補正するよう画像処理を行うことが考えられてきた。
【0005】
なお、対象となる画像データから所望のパターンを検出する処理の例としては、特許文献1に開示される、カーネル非線形部分空間法等の方法が知られている。
【0006】
【特許文献1】
特開2001−90274号公報
【0007】
【発明が解決しようとする課題】
しかしながら、例えば人物の顔部分で言えば、横向き加減や上向き加減、首のかしげ具合、照明の具合といった様々な変化があり、従来の基準状態からのずれを検出する処理を行おうとすると、ニューラルネットワークの学習に用いる学習用画像データが上記様々な変化に合わせて大量に必要となる。また、こうした大量の画像データによって学習された結果、ニューラルネットワークの規模も膨大なものとなって、当該処理を現実的な時間内に完了することは不可能であった。
【0008】
また従来の対象体を認識するための装置では、対象体を探索する元となる写真等について、その全体を探索範囲として処理を行っている。このため、処理すべきデータ量も増大してしまい、処理負荷が多大であった。
【0009】
本発明は、上記実情に鑑みて為されたもので、探索の対象体を写真などから探索する処理の負荷を軽減でき、探索の精度を向上できる画像探索装置を提供することをその目的の一つとする。
【0010】
【課題を解決するための手段】
請求項1記載の発明は、処理の対象となった対象画像データ内から、探索の対象となる探索対象の画像データ部分を探索する画像探索装置であって、前記対象画像データ内に、探索領域を少なくとも一つ画定する手段と、変換方法ごとに予め学習獲得された複数の第1変換データベースを参照して、前記画定されたそれぞれの探索領域に含まれる各探索部分データについて適用すべきN1個の変換の方法及び変換の量を含んでなる変換条件を取得し、当該取得した変換条件に基づく変換を、各探索部分データに対して少なくとも一度行う第1変換手段と、前記第1変換手段によって変換された各探索部分データについて、さらに、前記第1変換手段における変換に比べ、変換の方法をN2個(N2はN1とは異なる)とし、変換の量を制限した制限変換条件を、変換方法ごとに予め学習獲得された複数の第2変換データベースを参照して取得し、当該取得した制限変換条件に基づく変換を前記変換された各探索部分データに対して少なくとも一度行い、前記各探索部分データを基準状態へ変換する第2変換手段と、を含み、予め、前記基準状態での画像データを用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断し、当該判断結果を出力することとしたものである。ここで第1、第2の各変換手段における変換条件の取得の際には、それぞれ探索部分データに基づき所定の特徴量のセットを含んだ特徴量ベクトル情報を演算し、当該特徴量ベクトル情報を用いてそれぞれ第1、第2変換データベースを参照することとなるが、第1変換手段での特徴量ベクトル情報に含まれる特徴量の数N1を、第2変換手段での特徴量ベクトル情報に含まれる特徴量の数N2より少なくして、その精度を粗くしておくこととしてもよい。これによると、第1変換手段における処理負荷が軽減される。
【0011】
請求項2記載の発明は、請求項1に記載の画像探索装置において、前記第1変換手段によって変換された各探索部分データについて、探索対象が含まれているか否かを判断する予備探索手段をさらに有し、当該予備探索手段により、探索対象が含まれていると判断された探索部分データについてのみ、前記第2変換手段が変換を行うこととしたものである。
【0012】
また請求項3記載の発明は、請求項2に記載の画像探索装置において、前記予備探索手段は、第1変換手段によって変換された後の探索部分データについて、探索対象の画像データ例を用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断することとしたものである。
【0013】
また請求項4記載の発明は、請求項3記載の画像探索装置において、前記探索領域を画定する手段が、探索領域として画定しようとする領域の内部に含まれる画像データのエントロピー、階層エントロピー、色、及び輝度分散、の少なくとも一つを用い、探索領域として実際に画定するか否かを決定することとしたものである。また請求項5記載の発明は、請求項3に記載の画像探索装置において、前記探索領域を画定する手段が、探索領域として画定しようとする領域の内部に含まれる画像データのエントロピーが、所定のしきい値よりも大きい場合には当該探索領域として画定しようとしている領域を実際に探索領域として画定することとしたものである。
【0014】
請求項6記載の発明は、処理の対象となった対象画像データ内から、探索の対象となる探索対象の画像データ部分を探索する画像探索プログラムであって、コンピュータを、前記対象画像データ内に、探索領域を少なくとも一つ画定する手段と、変換方法ごとに予め学習獲得された複数の第1変換データベースを参照して、前記画定されたそれぞれの探索領域に含まれる各探索部分データについて適用すべきN1個の変換の方法及び変換の量を含んでなる変換条件を取得し、当該取得した変換条件に基づく変換を、各探索部分データに対して少なくとも一度行う第1変換手段と、前記第1変換手段によって変換された各探索部分データについて、さらに、前記第1変換手段における変換に比べ、変換の方法をN2個(N2はN1とは異なる)とし、変換の量を制限した制限変換条件を、変換方法ごとに予め学習獲得された複数の第2変換データベースを参照して取得し、当該取得した制限変換条件に基づく変換を前記変換された各探索部分データに対して少なくとも一度行い、前記各探索部分データを基準状態へ変換する第2変換手段と、予め、前記基準状態での画像データを用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断し、当該判断結果を出力する手段と、として機能させることとしたものである。
【0015】
請求項7記載の発明は、請求項6に記載の画像探索プログラムにおいて、前記第1変換手段としての機能によって変換された各探索部分データについて、探索対象が含まれているか否かを判断し、探索対象が含まれていると判断された探索部分データについてのみ、前記第2変換手段として機能させるよう、前記コンピュータを機能させる手段をさらに含むこととしたものである。
【0016】
請求項8記載の発明は、請求項7に記載の画像探索プログラムにおいて、前記予備探索手段として機能させる際に、第1変換手段によって変換された後の探索部分データについて、探索対象の画像データ例を用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断させることとしたものである。
【0017】
【発明の実施の形態】
[基本構成]
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る画像探索装置は、図1に示すように、制御部11と、記憶部12と、データベース部13と、表示部14と、操作部15と、外部記憶部16とを含んで構成された、一般的なコンピュータを用いて実現される。このコンピュータは、他の製品、例えばカメラなどに組み込まれたものであっても構わない。
【0018】
制御部11は、記憶部12に格納されているプログラムに従って動作するものであり、処理の対象となった対象画像データのうち、探索領域を少なくとも一つ画定する探索領域画定処理と、基準状態に変換する変換処理と、探索対象が含まれている探索領域を検出する探索処理と、探索結果を用いた所定の処理とを実行する。これらの制御部11の具体的処理内容については、後に詳しく述べる。
【0019】
記憶部12は、制御部11が実行するソフトウエアを格納している。また、この記憶部12は、制御部11がその処理の過程で必要とする種々のデータを保持するワークメモリとしても動作する。具体的にこの記憶部12は、ハードディスクなどの記憶媒体、あるいは半導体メモリ、ないしこれらの組み合わせとして実現できる。
【0020】
データベース部13は、後に説明するように、制御部11の第1変換処理において用いられる第1変換データベース13a、第2変換処理において用いられる第2変換データベース13b、並びに探索処理において用いられる探索データベース13cを含んだデータベースである。このデータベース部13は、具体的にはハードディスクなどの記憶媒体であり、記憶部12がこのデータベース部13を兼ねてもよいが、ここでは説明のため、特に分けて示している。
【0021】
表示部14は、例えばディスプレイ装置やプリンタ装置などであり、制御部11から入力される指示に従い、情報の表示などを行うものである。操作部15は、例えばキーボードやマウスなどであり、ユーザの操作を受け入れて、当該操作の内容を制御部11に出力する。
【0022】
外部記憶部16は、例えばCD−ROMやDVD−ROMなど、コンピュータ可読なリムーバブルメディア(記憶媒体の一種)からプログラムやデータを読み出して制御部11に出力し、制御部11の処理によって記憶部12に格納させる処理を行うものである。本実施の形態に係るプログラムは、例えばCD−ROMなどの可搬的な記憶媒体に格納されて頒布でき、この外部記憶部16を用いて記憶部12に複写されて利用される。なお、本実施の形態に係るプログラムは、こうした記憶媒体だけでなく、ネットワーク上のサーバなどから図示しない通信部を介して記憶部12に複写されることとしてもよい。
【0023】
[制御部11の処理]
ここで、制御部11の処理の内容について具体的に説明する。本実施の形態においては、各処理の対象となる画像データ(対象画像データ)は、外部記憶部16や図示しない通信部を介して外部から入力され、記憶部12に格納される。ここで対象画像データは、一つであっても複数であっても構わない。ユーザが操作部15を操作して、制御部11に対し、特定の対象画像データについて探索対象を探索する処理を行うべき旨の指示(処理開始の指示)を行うと、制御部11は、図2に示す処理を開始する。
【0024】
制御部11は、対象画像データを順次縮小変換しながら、各縮小変換された対象画像データについて探索領域を画定し、各探索領域に含まれる画像データ部分を基準状態に近づける第1変換処理を行い、その後さらに当該各探索領域に含まれる画像データ部分を基準状態により近づける第2変換処理を実行する。そして制御部11は、第2変換処理後の探索領域に含まれる画像データ部分に対して探索処理を実行する。
【0025】
[第1変換処理]
ここでまず、第1変換処理の内容について説明する。本実施の形態において特徴的なことの一つは、この第1変換処理が段階的に、つまり一回ずつ、一つの変換自由度に対応する変換を逐次的に行うようになっていることである。
【0026】
各段階で行うべき変換の内容と変換の量を決定するため、制御部11は、現在選択している探索領域に含まれている画像データ部分に基づいてN1次元の所定の特徴量ベクトル情報を演算する。ここで特徴量ベクトル情報は、探索対象の性状に合わせて選択された、N1個の特徴量要素を含んでなるベクトル量である。
【0027】
本実施の形態では、制御部11は、この特徴量ベクトル情報と、変換データベース13aに格納されている特徴量ベクトル情報とを用いた、カーネル非線形部分空間法によって変換を特定することとして説明する。
【0028】
[第1変換データベース13aの内容]
このカーネル非線形部分空間法は、データを何らかのカテゴリに分類する方法として広く知られているので、詳しい説明を省略するが、その概要を述べれば、N1個の特徴量要素を基底として張られる空間F1において、当該空間F1に含まれる複数の部分空間Ωのそれぞれをデータの分類先であるカテゴリとして認識し、分類しようとするデータに基づいて作成される空間F内の特徴量ベクトル情報(例えばΦとする)を各部分空間Ωに射影し(射影の結果を例えばφとする)、射影前の特徴量ベクトル情報Φと、射影後の特徴量ベクトル情報φとの距離Eが最も小さくなる部分空間Ω(仮に最近接部分空間と呼ぶ)を検出し、分類しようとするデータは、その部分空間Ωによって表されるカテゴリに属すると判断する方法である。
【0029】
そこで学習段階では、同一のカテゴリに属するべき学習用の例示データ(学習サンプル)に対応するN1次元の特徴量ベクトル情報に基づく最近接部分空間Ωが同一となるよう、非線形写像(空間F1への写像、すなわちカーネル関数に含まれるパラメータ等)と、各カテゴリに対応する部分空間Ω間を隔てる超平面との少なくとも一方を調整することとなる。
【0030】
本実施の形態においては、探索対象を基準状態に変換する方法(変換の種類及び量)を決定するために、この変換データベース13aが形成される。つまり、基準状態にあるか否かが不明な画像データに対して、行うべき変換の種類ごとに、変換の量(カテゴリ)を決定できるように変換データベース13aが学習獲得されている。本実施の形態では、画像の回転、平行移動、サイズ変更という、画像に対して行うべき変換の種類(自由度)ごとに、変換データベース13aを作成している。変換の各自由度に対応する変換データベース13aは、対応する変換の変換量をカテゴリとして学習獲得したものである。
【0031】
この学習獲得のため、本実施の形態の変換データベース13aの学習過程では、学習サンプルを次のように生成する。すなわち、所定の基準状態での探索対象である画像データの例を複数用意し、各画像データの例について、変換の自由度ごとに、それぞれの自由度について、互いに異なる変換量での変換が行われた複数の変換画像データを生成する。こうして自由度ごとに生成された変換画像データを、各自由度ごとの学習サンプルとする。具体的に顔を探索対象とする場合、所定の基準状態(所定の撮影条件・姿勢)にある顔の画像データを例として複数用意し、各画像データについて、変換の自由度として、例えば回転・平行移動・サイズ変更等という各自由度ごとに、回転であれば−180度から180度までの範囲で5度ずつ等の角度で回転させた変換画像データを回転の自由度に対する学習サンプルとする。また、平行移動であれば、縦横にそれぞれ5ピクセルずつ移動させた複数の変換画像データを平行移動の自由度に対する学習サンプルとする。なお、これらの学習サンプルは、移動等の変換自由度を含むために、基準状態よりも広い領域の画像データのうちから基準状態の面積を5ピクセルずつ移動させながら取り出すことで生成する。
【0032】
こうして複数の画像データ例のそれぞれについて、さらに自由度ごとにそれぞれ複数の変換が施された複数の画像データを生成し、各画像データにどのような変換を行ったかを表す情報(変換量の大きさ等)を関連づける。
【0033】
なお、ここでは互いに異なる変換量の変換を施した画像データを得るために、変換量を所定のステップ(例えば回転で言えば5度)ずつ変化させながらそれぞれ変換を行った画像データを学習サンプルに含めるようにしたが、所定のステップずつ変化させながらでなくとも、変換量を乱数によって決定しながら変換を行って、それぞれを学習サンプルに含めるようにしてもよい。
【0034】
次に、各自由度ごとの学習サンプルを用いて、各自由度に対応する変換データベース13aを学習させる。
【0035】
[第1変換処理の動作]
制御部11は、こうして学習された各変換データベース13aを用いて、探索領域画定処理によって画定された探索領域の各々について次のように変換処理を行う。すなわち、処理の対象となった探索領域に含まれている画像データ部分(例えば画素値の列としてベクトル値と同視し得る)を、空間F1内のN1次元特徴量ベクトル情報(各変換データベース13aごと、つまり変換の各自由度ごとに定義されている特徴量の組)に写像し、さらにその写像を各部分空間Ωに射影する。そして、射影前の特徴量ベクトル情報と、射影後の特徴量ベクトル情報との距離Eが最小となる変換量を決定する。また制御部11は、距離Eの二乗値Lを演算し、これを誤差として記憶部12に保持する。
【0036】
ここで変換量は、各変換データベース13aに基づき自由度ごとに決定されるが、制御部11は、各自由度に対応する変換量のうち一つを所定の条件(例えば各変換量に対応する距離Eが最小となるもの等の条件)に基づいて選択し、選択した自由度に対応する変換を、選択した変換量の分だけ変換する。
【0037】
つまり、探索領域に含まれている画像データ部分からは、各自由度に対応する各変換データベース13aに学習獲得された情報によって、例えば回転の自由度に対しては10度の回転変換により基準状態に近づき、その誤差がLrであり、平行移動の自由度に対しては左へ5ピクセルの変換で基準状態に近づき、その誤差がLpといった情報が得られるので、この中から、誤差が最小となる自由度の変換を選択する。例えば上述の例の場合、Lr<Lpならば10度の回転変換を探索領域に施して、新たな探索領域を画定する。そして、この新たな探索領域に含まれる画像データ部分をさらに空間F1内の特徴量ベクトル情報に写像し、その写像をさらに各部分空間Ωに射影する。そして、射影前の特徴量ベクトル情報と、射影後の特徴量ベクトル情報との距離Eが最小となる変換量を決定する処理から繰り返す。
【0038】
また、各自由度に対応する変換量がいずれも「0」(つまり無変換)を表すものとなっている場合は、その段階で処理を終了し、さらに未処理の探索領域があれば、当該未処理の探索領域のいずれかを処理の対象として変換処理を行う。
【0039】
なお、ここでは対象画像データのうち、画定された探索領域に含まれる画像データ部分をそのまま用いているが、当該画像データ部分の解像度を低減する処理を行って、粗視データとし、当該粗視データを用いて変換処理を実行してもよい。この場合は、当該粗視データに対応する学習サンプルを用いて、各変換データベース13aを学習獲得させておく。
【0040】
[第2変換処理]
ここでまず、第2変換処理の内容について説明する。本実施の形態において特徴的なことの一つは、この第2変換処理が段階的に、つまり一回ずつ、一つの変換自由度に対応する変換を逐次的に行うようになっていることである。
【0041】
各段階で行うべき変換の内容と変換の量を決定するため、制御部11は、現在選択している探索領域に含まれている画像データ部分に基づいてN2次元の所定の特徴量ベクトル情報を演算する。ここで特徴量ベクトル情報は、探索対象の性状に合わせて選択された、N2個の特徴量要素を含んでなるベクトル量である。本実施の形態においては、第1変換処理によってまず大まかに基準状態に近接させ、ついで第2変換処理を行ってより精密に基準状態に近づける。このため、第2変換処理における特徴ベクトル情報の次元数は、第1変換処理におけるものより大きくする(N2>N1)。これにより、第2変換処理はより精度の高い変換とすることができる。
【0042】
制御部11は、第1変換処理と同様に、このN2次元の特徴量ベクトル情報と、変換データベース11bに格納されている特徴量ベクトル情報とを用いた、カーネル非線形部分空間法によって変換を特定する。
【0043】
[第2変換データベース13bの内容]
第2変換データベース13bは、第1変換データベース13aと同様の方法によって学習獲得されるものであるが、第1変換データベース13aの学習課程では、学習サンプルに基づき、所定N1次元の特徴量ベクトル情報に変換していたのに対し、第2変換データベース13bの学習課程では学習サンプルから所定N2次元の特徴量ベクトル情報に変換して、これを利用した学習を行う点が異なる。
【0044】
[第2変換処理の動作]
制御部11は、各変換自由度ごとに学習獲得されている第2変換データベース13bを用いて、第1変換処理によって変換された探索領域の各々についてさらに第2変換処理を施す。すなわち、処理の対象となった探索領域に含まれている画像データ部分(例えば画素値の列としてベクトル値と同視し得る)を、空間F2内のN2元特徴量ベクトル情報(各第2変換データベース13bごと、つまり変換の各自由度ごとに定義されている特徴量の組)に写像し、さらにその写像を各部分空間Ωに射影する。そして、射影前の特徴量ベクトル情報と、射影後の特徴量ベクトル情報との距離Eが最小となる変換量を決定する。また制御部11は、距離Eの二乗値Lを演算し、これを誤差として記憶部12に保持する。
【0045】
ここで変換量は、第1変換処理の場合と同じく、各第2変換データベース13bに基づき自由度ごとに決定されるが、制御部11は、各自由度に対応する変換量のうち一つを所定の条件(例えば各変換量に対応する距離Eが最小となるもの等の条件)に基づいて選択し、選択した自由度に対応する変換を、選択した変換量の分だけ変換する。
【0046】
つまり、この場合も第1変換処理と同様に、探索領域に含まれている画像データ部分からは、各自由度に対応する各第2変換データベース13bに学習獲得された情報によって、例えば回転の自由度に対しては10度の回転変換により基準状態に近づき、その誤差がLrであり、平行移動の自由度に対しては左へ5ピクセルの変換で基準状態に近づき、その誤差がLpといった情報が得られるので、この中から、誤差が最小となる自由度の変換を選択する。例えば上述の例の場合、Lr<Lpならば10度の回転変換を探索領域に施して、新たな探索領域を画定する。そして、この新たな探索領域に含まれる画像データ部分をさらに空間F2内の特徴量ベクトル情報に写像し、その写像をさらに各部分空間Ωに射影する。そして、射影前の特徴量ベクトル情報と、射影後の特徴量ベクトル情報との距離Eが最小となる変換量を決定する処理から繰り返す。
【0047】
一方各自由度に対応する変換量がいずれも「0」(つまり無変換)を表すものとなっている場合は、その段階で処理を終了し、さらに未処理の探索領域があれば、当該未処理の探索領域のいずれかを処理の対象として変換処理を行う。
【0048】
また、ここでも対象画像データのうち、画定された探索領域に含まれる画像データ部分をそのまま用いているが、当該画像データ部分の解像度を低減する処理を行って、粗視データとし、当該粗視データを用いて第2変換処理を実行してもよい。この場合は、当該粗視データに対応する学習サンプルを用いて、各第2変換データベース13bを学習獲得させておく。
【0049】
なお、これら第1・第2の変換処理において、制御部11は、特徴量ベクトル情報の演算、部分空間への写像、距離の評価、誤差の評価といった処理を各自由度ごとに順次行うのではなく、並列して行ってもよい。
【0050】
さらにここではカーネル非線形部分空間法を用いる場合を例として説明したが、データの分類と、分類時の誤差評価が可能であれば例えばオートエンコーダ等、他の方法を用いても構わない。
【0051】
さらにここでは第2変換処理においても第1変換処理と同様に、各自由度の変換が行われるとして説明したが、第2変換処理においては、変換に係る自由度数を低減してもよい。例えば第1変換処理において最後に施した変換の自由度と同じ自由度の変換だけを行うようにしたり、第2変換処理において最初は変換の自由度を選択するが、第2回目以降の第2変換処理は当該最初の第2変換処理で選択した自由度だけに限って変換を繰り返すようにしてもよい。
【0052】
また、第2変換処理において決定されるカテゴリとしての変換量の最大値を、第1変換処理において決定される変換量の最大値よりも小さく設定しておいてもよい。すなわち、第2変換処理において利用される第2変換データベース13bの学習サンプルは、第1変換データベース13aの学習サンプルよりも変換量の範囲を狭めたものを用いておいてもよい。例えば、第1変換データベース13a用の学習サンプルでは、回転角度−180度から180度までの範囲で10度ずつ回転させた画像データを用い、第2変換データベース13b用の学習サンプルでは、その範囲ときざみ量とをそれぞれ小さくして、−30度から30度までの範囲で3度ずつ回転させた画像データを用いるといったようにする。
【0053】
このように、第2変換処理における変換の条件(変換の自由度又は変換量の少なくとも一方)は第1変換処理に比べて制限されたものであってもよい。
【0054】
[制御部11の処理の流れ]
具体的に制御部11は、まず縮小率Sを最小縮小率(例えば1倍、つまり縮小せず)に設定し(S1)、対象画像データを縮小率Sで縮小する(S2)。そして縮小後の対象画像データのサイズに等しいサイズのマップデータの領域を記憶部12上に確保し、当該領域の値を「偽(false)」に設定して、マップデータの初期化を実行する(S3)。例えば縮小後の対象画像データが1000×1000ピクセルの画像データであれば、1000×1000ビット分の領域を確保し、各ビット値を「0」に初期設定する。
【0055】
次に制御部11は、縮小後の対象画像データについて、少なくとも一つの探索領域を画定する処理を行う(S4)。この探索領域の画定処理については後に詳しく述べる。そして探索領域の一つを選択し(S5)、当該探索領域について第1変換処理を実行する(S6)。
【0056】
制御部11は、続いて、第1変換処理の結果となった探索領域についてさらに第2変換処理を実行し(S7)、これら第1・第2変換処理後の探索領域に含まれる画像データ部分について、探索対象が含まれているか否かを判定する処理(探索処理)を実行する(S8)。ここで探索対象が含まれていると判断されるときには(Yesのときには)、当該変換処理後の探索領域に相当する、マップデータ上の領域の値を「真(true)」に設定する(S9)。そしてさらに選択していない探索領域があるか否かを調べ(S10)、選択していない探索領域があれば(Yesであれば)、処理S5に戻り(A)、当該選択していない探索領域の一つを選択して処理を続ける。
【0057】
一方、処理S8における探索処理の結果、探索対象が含まれていないと判定されるときには(Noのときには)、そのまま処理S10に移行する。また、処理S10において、選択していない探索領域がなければ、つまり、すべての探索領域について変換処理と探索処理とを完了したならば(Noならば)、現在設定されている縮小率Sが事前に定められた最大縮小率を上回っているか否かを調べ(S11)、上回っていなければ(Noならば)、縮小率Sを大きくするように調整して(S12)、処理S2に戻って処理を続ける(B)。ここで、縮小率Sを大きく調整する処理S12は、例えば縮小率Sを所定比で高めるような処理としてもよいし、縮小率Sである倍率に対し、所定乗率ΔSを乗じて、S=S×ΔSとして新たな縮小率Sを定めてもよい。
【0058】
また、処理S11において現在設定されている縮小率Sが事前に定められた最大縮小率を上回っていなければ(Yesならば)、各縮小率での対象画像データに対応するマップデータに基づき、元の(縮小前の)対象画像データ内で、探索対象が含まれている領域を画定して(S13)、処理を終了する。
【0059】
なお、ここでは第1変換処理の後、直ちに第2変換処理を実行しているが、第1変換処理の後で予備的な探索処理(その内容については後に述べる)を行い、この予備的な探索処理の結果、第1変換処理後の探索領域に含まれる画像データ部分に探索対象が含まれる可能性があると判断されたときにのみ第2変換処理を行うようにし、予備的な探索処理の際に第1変換処理後の探索領域に含まれる画像データ部分に探索対象が含まれる可能性はないと判断されたときには、上記の処理S10に移行して処理を続けるようにしてもよい。これによると探索対象が含まれない領域について第2変換処理を行うことがなくなるので、処理負荷をより軽減できる。
【0060】
[探索領域画定処理]
ここで制御部11が探索領域を画定する処理(探索領域画定処理)について説明する。探索領域画定処理は、ユーザから入力された開始点の情報を利用しても、また、所定の条件を満足する領域を自律的に画定することによっても行うことができる。
【0061】
例えばユーザから入力される情報を利用する場合、制御部11は、操作部15などから入力された少なくとも一つの開始点座標の情報に基づき、各開始点座標を左上隅とする予め定められたサイズの矩形領域を探索領域としてそれぞれ画定する。
【0062】
また所定の条件を満足する領域を自律的に検索して画定する場合、制御部11は、(縮小後の)対象画像データの左上隅の座標(例えばX=0,Y=0)を開始点として、予め定められたサイズの矩形領域について所定の画定条件を満足しているか否かを調べ、画定条件を満足しているときには、当該矩形領域を探索領域とするという処理を、開始点を幅方向に所定量ずつ移動しながら(X=X+ΔX)順次行い、開始点が対象画像データの幅を逸脱する(X>対象画像データの幅)と、高さ方向に所定量だけ開始点を移動して(X=0,Y=Y+ΔY)、幅方向の処理を繰り返す。こうして対象画像データ全体のうち、画定条件を満足する領域を探索領域として画定する。
【0063】
なお、ここでは開始点の移動量を幅方向、高さ方向にそれぞれΔX,ΔYとしているが、これら移動量は対象画像データの縮小率Sに応じて、1倍のときのΔX,ΔYに対してΔX/S,ΔY/Sとしてもよい。
【0064】
[探索処理]
次に処理S8で行われる探索処理について説明する。この探索処理では変換処理を完了した探索領域の各々にそれぞれ含まれる画像データ部分について、探索データベース13cを用いて、探索対象が含まれているか否かを判定する。具体的な探索処理の例としては、特開2002−329188号公報に開示された方法などがある。次にその概要を説明する。
【0065】
[探索データベースの学習課程]
この探索データベース13cは、基準状態にある探索対象の画像データの例を学習サンプルとして用い、ニューラルネットワークを学習させて形成する。すなわち、制御部11は、複数の学習サンプルの入力を受けて、その各々について、探索対象の性状に合わせて予め選択された特徴量のセット(特徴量ベクトル)を演算し、学習用データを生成する。次に、この学習用データを用いて、記憶部12に格納されたM×M′の格子空間上に、SOM(自己組織化マップ)によって格子空間マップを形成する。つまり、制御部11は、入力された学習用データである特徴量ベクトルと、各格子ごとに割り当てられた重みベクトルとの距離を所定の測度(例えばユークリッド測度)で演算し、この距離が最小となる格子(最整合ノード)cを検出する。そしてこの最整合ノード近傍の複数の格子について、その重みベクトルを当該入力された特徴量ベクトルを用いて更新する。この処理の繰り返しにより、記憶部12上に格子空間マップが形成され、互いに類似する特徴量ベクトルに対する最整合ノードが連続的な領域を形成するようになる。つまり、この格子空間には、多次元の入力信号である特徴量ベクトルから2次元のマップへの非線形射影が位相を保持したまま形成され、重みの更新により、データの特徴部分が組織化され、その学習成果として類似のデータに反応する格子が近接して存在しているようになる。
【0066】
各学習データに基づく学習が完了すると、次に制御部11は、格子空間マップの各格子をカテゴリに分類する。この分類は、例えば各格子間の距離(各格子に関連づけられた重みベクトル間の距離)に基づいて行うことができ、探索対象に似た画像データに反応する格子群のカテゴリ(探索対象カテゴリ)と、そうでない格子群のカテゴリ(非探索対象カテゴリ)とに分類される。
【0067】
[探索処理の動作]
制御部11は、対象画像データと同じサイズのマップデータを記憶する領域を記憶部12に確保し、当該領域の値を「偽(false)」に初期化する。
【0068】
制御部11は、学習獲得した探索データベース13cを用い、変換処理を完了した探索領域の画像データ部分に基づいて所定の特徴量ベクトルを演算する。そして当該演算した特徴量ベクトルと探索データベース13c内の各格子に関連づけられた重みベクトルとの距離を求め、特徴量ベクトルとの距離が最小となる格子(最整合ノード)を特定し、特定した格子が探索対象カテゴリに属していれば、探索領域に探索対象が含まれていると判断し、特定した格子が非探索対象カテゴリに属していれば、探索領域には探索対象が含まれていないと判断する。
【0069】
[予備的探索処理]
また、第2変換処理を行うか否かを決定するための予備的な探索処理について説明する。この予備的な探索処理は、上記処理S8で行われる探索処理と同様の処理を行ってもよいが、探索処理自体の処理負荷に配慮して、より簡便な処理としておくことも好ましい。
【0070】
例えばこの予備的探索処理としては、第1変換処理後の探索領域に含まれる画像データ部分に基づき、所定の特徴量を演算し、その特徴量が所定の条件を満足しているか否かによって探索対象が含まれている可能性があるか否かを判断するようにしてもよい。一例として、人の顔を探索対象とする場合、人の顔の輪郭部分ではその他の部分に比べてエントロピーが高いので、特徴量としてこのエントロピーを演算し、所定のしきい値(例えば対象画像データ全体の平均的なエントロピー値に基づいて決定されるしきい値)に比べて当該演算したエントロピーの値が高い場合に探索対象が含まれている可能性があると判断する。
【0071】
[制御部11の動作]
本実施の形態の制御部11は、以上のように、探索の対象となった対象画像データを順次縮小しながら、縮小後のそれぞれの対象画像データから探索処理を行う領域を取り出し、当該領域内の画像データ部分を基準状態に近づけるべく第1変換処理を実行し、ついで当該第1変換処理後の画像データ部分に探索対象が含まれているか否かを予備的に探索する。
【0072】
そして、この予備的な探索の結果、探索対象が含まれている可能性があると判断されると、さらに基準状態に近づけるように第2変換処理を実行し、探索対象が当該変換後の探索領域内の画像データに含まれているか否かを判断する。すなわち、制御部11は探索処理の対象となる画像データを基準状態とする処理をまずは粗く行い、ついで細かく行うことで、全体としての処理負荷を軽減する。
【0073】
このように基準状態への変換処理が行われるので、本実施の形態においては、変換前の探索領域の位置が多少ずれていても構わない。また、縮小率が基準状態から多少ずれていたとしても問題とならない。従って従来であれば、0.8倍ずつ縮小した多段階の縮小画像データを生成し、しかも探索領域を1画素ずつずらしながら取り出すようにしていたのに対し、本実施の形態のものでは0.5倍ずつの縮小で構わないし、探索領域を画定する際に、所定の条件を満足する領域を自律的に取り出す場合であっても、ΔXやΔYを6画素等とすることができる。これにより、探索処理の対象となるパターン数を大幅に低減でき、探索の対象体を写真などから探索する処理の負荷を軽減できる。
【0074】
制御部11は、探索対象が含まれていると判断された領域を表すマップデータを探索結果情報として生成するが、このマップデータは各縮小率で縮小された後の対象画像データのそれぞれに対応して複数生成される。そこで、これら複数のマップデータ(それぞれ縮小後の対象画像データのサイズとなっている)を統合的に用いて探索対象が含まれている領域を決定する。
【0075】
例えば、各マップデータを、それぞれの縮小率に応じた拡大率で拡大し、元の対象画像データのサイズに揃えて比較し、すべてのマップデータで共通して「真」となっている領域(どの縮小率の対象画像データに基づいても、探索対象が含まれていると判断された領域)に探索対象が含まれていると判断することとしてもよい。また、いずれか一つのマップデータで「真」となっている領域を探索対象が含まれている領域と判断するようにしてもよい。
【0076】
[探索領域画定処理の変形例]
さらに探索領域画定処理において、制御部11は探索領域として画定しようとする領域について、その内部に含まれる画像データのエントロピーや、階層エントロピー、色、輝度分散、及びこれらのうちの二以上の値の組み合わせを用い、探索領域として実際に画定するか否かを決定してもよい。例えば人物の顔部分を探索する場合、顔の周辺部(輪郭部分)ではエントロピーが高くなるので、エントロピーが所定のしきい値よりも大きい場合には当該探索領域として画定しようとしている領域を実際に探索領域として画定し、そうでない場合には、当該領域を探索領域とせずに、他の処理を続けるようにする。これによると、変換処理・探索処理の対象となる探索領域を合理的に減少させることができ、処理負荷の軽減が図られる。
【0077】
[その他の変形例]
ここまでの説明では、変換処理において行われる変換は、探索領域に関する2次元的な回転、平行移動、拡大縮小(探索領域を拡大縮小し、その内部の画像データ部分を元の(拡大縮小前の)探索領域のサイズに変換して扱えばよい)であり、その結果として、当該探索領域に含まれる画像データ部分が変換されるものとして説明したが、これ以外にも例えば人の顔であれば、姿勢(うつむき加減や振り向き加減)に影響される3次元的な回転等、画像データ部分そのものに対しての変換を含んでもよい。具体的にこのような3次元的な回転などの場合、探索対象の平均的3次元モデルを想定し、当該平均的3次元モデルへ画像データ部分を投射したものを用いて実現することができる。
【0078】
また、探索処理においては探索対象として、例えば人の顔であっても、さらに細かくカテゴリを分けて、年齢や性別、口を開けているか否かなどの条件を含めてもよい。
【0079】
さらに、図2のフローチャート図においては各縮小率における処理を制御部11が順次行うものとしていたが、各縮小率における処理は互いに独立しているので、制御部11は、これらの各縮小率における処理を並列して行ってもよい。
【0080】
[動作]
次に、本実施の形態の画像探索装置の動作について、対象画像データとして与えられた写真の画像データから人の顔部分を探索対象として探索する場合を例として説明する。なお、以下の例では簡単のため、変換の自由度は平行移動(x,y)と、回転(θ)のみであるとして説明する。
【0081】
制御部11は、図示しない外部インタフェースや通信部など、外部から入力される対象画像データを記憶部12に格納し、既に説明した方法で探索領域を画定する。例えば制御部11は、対象画像データを、所定サイズの画像ブロック(その一部が互いに重なり合ってもよい)に区切り、そのうち、例えばエントロピーが所定の値より高い画像ブロックを探索領域として画定する。そして画定された探索領域の一つを選択し、当該選択した探索領域について第1変換処理を実行する。この第1変換処理では、概念的には、基準状態Oから、図3(a)に示すような範囲R1にある画像データ部分が基準状態O近傍に近づけられる。
【0082】
制御部11は、さらに第1変換処理後の画像データ部分に探索対象である人の顔が含まれているか否かを予備的に探索する。この予備的な探索処理は、ニューラルネットワークを利用した本探索処理と同様のものであってもよいし、エントロピーなどの特徴量を用いた簡易なものであってもよい。制御部11は、この予備的な探索処理の結果、第1変換処理後の画像データ部分に探索対象である人の顔が含まれていると判断される場合は、続いて当該画像データ部分に係る探索領域に第2変換処理を実行する。この第2変換処理では、概念的には、図3(a)に対応する図3(b)に示すように、自由度が例えばθ方向(回転)のみで、その変換量の範囲も狭い変換処理(R2)が適用され、画像データ部分を基準状態Oにより近接させる微調整が行われる。
【0083】
制御部11は、この第2変換処理後の探索領域に含まれる画像データ部分に対して探索処理を実行し、探索対象が含まれているか否かを調べ、探索対象が含まれていれば、当該探索処理を行った探索領域に相当する対象画像データの部分を特定する情報を生成する。
【0084】
このように、本実施の形態では、二段階の変換処理を行って、一つの変換データベースを用いるだけの変換処理の場合に比べ、処理負荷を軽減でき、より基準状態に近接させて探索を行わせるため、探索精度も向上できる。
【0085】
なお、ここまでの説明では二段階の変換処理を行う場合を例として示しているが、3回以上の複数回であっても構わない。この場合、段階があがるにつれて変換処理における変換条件をより制限したり、特徴量ベクトル情報の次元数をより高めてもよい。
【0086】
【実施例】
図4(a)は、一種類の変換データベースを用いた変換処理によって基準状態への変換を行った後の画像データが、実際の基準状態からどれだけの誤差を生じていたかを表す分布図であり、図4(b)は、本実施の形態と同様に、二種類の変換データベースを用いて、まずは粗く、次に細かくと2回に分けて変換処理を行った場合に、その結果としての画像データが、実際の基準状態からどれだけの誤差を生じていたかを表す分布図である。各図を参照して理解されるように、本実施の形態の方法によれば、誤差の平均が小さくなり、分布状態からも、より基準状態に近くなるよう変換が為されている。
【0087】
また、前記一種類の変換データベースを用いた変換処理の場合では、収束までに平均的に20回前後の変換処理を要する(各自由度ごとの単位変換がおおよそ20回行われる)のに対し、前記二種類の変換データベースを用いる場合、粗い変換処理に約10回、細かい変換処理に約5回で済んでおり、全体的に変換処理自体の処理負荷も軽減されている。
【図面の簡単な説明】
【図1】 本発明の実施の形態に係る画像探索装置の構成ブロック図である。
【図2】 制御部11の処理の一例を表すフローチャート図である。
【図3】 本発明の実施の形態に係る画像探索装置が行う変換処理の概要を表す説明図である。
【図4】 一種類の変換データベースを用いた変換処理の結果と二種類の変換データベースを用いた二段階の変換処理の結果とを比較した実験結果を表す説明図である。
【符号の説明】
11 制御部、12 記憶部、13 データベース部、14 表示部、15 操作部、16 外部記憶部。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image search apparatus for searching for a specific image portion such as a face portion from image data such as a photograph.
[0002]
[Prior art]
In recent years, it has been considered that a specific object included in a photograph or the like, for example, a part such as a human face is specified and predetermined processing is performed based on the specified part. As an example, detect the face part of each person from the photographed picture and burn only the face part, or detect the face part of the person from the image being captured and use it for face authentication processing, Such a thing can be considered.
[0003]
In a device for recognizing a target object such as a conventional face image, in order to cope with the case where it is difficult to recognize the target object depending on the imaging state (tilt, size, illumination state, etc.) of the target object, Some perform processing adapted to the imaging state (reference state).
[0004]
Conventionally, in this process, specifically, a neural network is learned using learning image data taken while changing the imaging state, and a photograph that is a processing target using the learned neural network is used. It has been considered to detect how much the imaging state deviates from the reference state and perform image processing so as to correct the deviation.
[0005]
As an example of processing for detecting a desired pattern from target image data, a method such as a kernel nonlinear subspace method disclosed in Patent Document 1 is known.
[0006]
[Patent Document 1]
JP 2001-90274 A
[0007]
[Problems to be solved by the invention]
However, for example, in the case of a person's face, there are various changes such as lateral adjustment, upward adjustment, neck caulking condition, lighting condition, etc. When trying to detect a deviation from the conventional reference state, a neural network A large amount of learning image data used for learning is required in accordance with the various changes described above. Moreover, as a result of learning with such a large amount of image data, the scale of the neural network has become enormous, and it has been impossible to complete the processing within a realistic time.
[0008]
Further, in a conventional apparatus for recognizing a target object, processing is performed using the entire photograph or the like as a search source for the target object as a search range. For this reason, the amount of data to be processed also increases, and the processing load is great.
[0009]
The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide an image search apparatus capable of reducing the processing load for searching for an object to be searched from a photograph or the like and improving the search accuracy. I will.
[0010]
[Means for Solving the Problems]
The invention according to claim 1 is an image search device for searching for a search target image data portion to be searched from within the target image data to be processed, wherein a search region is included in the target image data. Referring to the means for defining at least one and a plurality of first conversion databases learned and acquired in advance for each conversion method, the search partial data included in each of the defined search areas should be applied.N1 piecesA conversion condition including a conversion method and a conversion amount is acquired, and conversion based on the acquired conversion condition is performed at least once for each search partial data, and conversion is performed by the first conversion means. A conversion method for each of the search partial data further compared to the conversion in the first conversion meansN2 (N2 is different from N1)A limited conversion condition that limits the amount of conversion is acquired with reference to a plurality of second conversion databases that have been acquired in advance for each conversion method, and a conversion based on the acquired limited conversion condition is performed for each of the converted search parts. At least once on the dataAnd convert each search partial data to a reference stateSecond conversion means,In advance, the reference stateWith reference to a search database acquired by learning using image data, it is determined whether or not a search target is included in each of the converted search partial data, and the determination result is output. . Here, when the conversion conditions are acquired by the first and second conversion means, feature amount vector information including a predetermined set of feature amounts is calculated based on the respective search partial data, and the feature amount vector information is calculated. The number of feature quantities included in the feature quantity vector information in the first conversion means will be respectively referred to the first and second conversion databases.N1Is the number of feature quantities included in the feature quantity vector information in the second conversion meansN2The accuracy may be reduced by reducing the accuracy. According to this, the processing load in the first conversion means is reduced.
[0011]
According to a second aspect of the present invention, in the image search device according to the first aspect, preliminary search means for determining whether or not a search target is included for each search partial data converted by the first conversion means. In addition, the second conversion means converts only the search partial data that is determined to be included in the search target by the preliminary search means.
[0012]
According to a third aspect of the present invention, in the image search device according to the second aspect, the preliminary search means uses the search target image data example for the search partial data converted by the first conversion means. The search database obtained by learning is referred to and it is determined whether or not a search target is included in each of the converted search partial data.
[0013]
According to a fourth aspect of the present invention, in the image search device according to the third aspect, the means for demarcating the search area includes entropy, hierarchical entropy, color of image data included in the area to be demarcated as the search area. And at least one of luminance dispersion are used to determine whether or not the search area is actually defined. According to a fifth aspect of the present invention, in the image search device according to the third aspect, the entropy of the image data included in the area to be defined as the search area by the means for defining the search area is a predetermined value. If it is larger than the threshold value, the area to be defined as the search area is actually defined as the search area.
[0014]
A sixth aspect of the present invention is an image search program for searching for a search target image data portion to be searched from target image data to be processed, wherein the computer is included in the target image data. And applying to each search partial data included in each of the defined search areas with reference to a means for defining at least one search area and a plurality of first conversion databases learned and acquired in advance for each conversion method. ShouldN1 piecesA conversion condition including a conversion method and a conversion amount is acquired, and conversion based on the acquired conversion condition is performed at least once for each search partial data, and conversion is performed by the first conversion means. A conversion method for each of the search partial data further compared to the conversion in the first conversion meansN2 (N2 is different from N1)A limited conversion condition that limits the amount of conversion is acquired with reference to a plurality of second conversion databases that have been acquired in advance for each conversion method, and a conversion based on the acquired limited conversion condition is performed for each of the converted search parts. At least once on the dataAnd convert each search partial data to a reference stateA second conversion means;In advance, the reference stateRefer to the search database learned and acquired using image data, determine whether each of the converted search partial data includes a search target, and function as a means for outputting the determination result That's what it meant.
[0015]
The invention according to claim 7 is the image search program according to claim 6, wherein for each search partial data converted by the function as the first conversion means, it is determined whether a search target is included, Only search partial data determined to include a search target is caused to function as the second conversion means.Like,Make the computer workFurther comprising meansThat's what it meant.
[0016]
According to an eighth aspect of the present invention, in the image search program according to the seventh aspect, when functioning as the preliminary search means, the search partial data converted by the first conversion means is an example of search target image data. The search database acquired by learning is referred to to determine whether or not a search target is included in each of the converted search partial data.
[0017]
DETAILED DESCRIPTION OF THE INVENTION
[Basic configuration]
Embodiments of the present invention will be described with reference to the drawings. As shown in FIG. 1, the image search apparatus according to the embodiment of the present invention includes a
[0018]
The
[0019]
The
[0020]
As will be described later, the
[0021]
The
[0022]
The
[0023]
[Processing of control unit 11]
Here, the content of the process of the
[0024]
The
[0025]
[First conversion process]
First, the contents of the first conversion process will be described. One of the characteristic features of this embodiment is that the first conversion process is performed step by step, that is, the conversion corresponding to one degree of freedom of conversion is performed sequentially. is there.
[0026]
In order to determine the content of conversion and the amount of conversion to be performed at each stage, the
[0027]
In the present embodiment, the
[0028]
[Contents of the
Since this kernel nonlinear subspace method is widely known as a method for classifying data into a certain category, a detailed description thereof will be omitted. To put it briefly, a space F1 that is stretched based on N1 feature elements is used. , Each of the plurality of subspaces Ω included in the space F1 is recognized as a category to which data is classified, and feature vector information in the space F created based on the data to be classified (for example, Φ and Are projected onto each subspace Ω (the projection result is, for example, φ), and the subspace Ω that minimizes the distance E between the feature vector information Φ before projection and the feature vector information φ after projection This is a method for detecting that (referred to as a nearest subspace) and determining that the data to be classified belongs to the category represented by the subspace Ω.
[0029]
Therefore, in the learning stage, the non-linear mapping (to the space F1) is performed so that the closest subspace Ω based on the N1 dimensional feature vector information corresponding to the example data for learning (learning sample) that should belong to the same category is the same. At least one of the mapping, that is, the parameter included in the kernel function) and the hyperplane that separates the subspaces Ω corresponding to each category is adjusted.
[0030]
In the present embodiment, this
[0031]
In order to acquire this learning, a learning sample is generated as follows in the learning process of the
[0032]
In this way, for each of a plurality of image data examples, a plurality of image data that has been subjected to a plurality of conversions for each degree of freedom is generated, and information indicating what conversion has been performed on each image data (a large amount of conversion) Etc.).
[0033]
Here, in order to obtain image data having undergone conversions of different conversion amounts, the image data that has been converted while changing the conversion amount by a predetermined step (for example, 5 degrees in terms of rotation) is used as a learning sample. Although they are included, it is also possible to perform conversion while determining the conversion amount by a random number, and include each in the learning sample, instead of changing each predetermined step.
[0034]
Next, the
[0035]
[Operation of the first conversion process]
The
[0036]
Here, the conversion amount is determined for each degree of freedom based on each
[0037]
That is, from the image data portion included in the search area, the reference state is obtained by, for example, 10 degree rotation conversion with respect to the rotation degree of freedom according to information acquired by learning in each
[0038]
In addition, when the conversion amounts corresponding to the respective degrees of freedom all represent “0” (that is, no conversion), the process ends at that stage, and if there is an unprocessed search area, The conversion process is performed with any of the unprocessed search areas as a processing target.
[0039]
Here, the image data portion included in the defined search area is used as it is in the target image data. However, processing for reducing the resolution of the image data portion is performed to obtain coarse-grained data, and the coarse-grained data. You may perform a conversion process using data. In this case, each
[0040]
[Second conversion process]
First, the contents of the second conversion process will be described. One of the characteristic features of the present embodiment is that the second conversion process is performed step by step, that is, the conversion corresponding to one degree of freedom of conversion is sequentially performed once. is there.
[0041]
In order to determine the content of conversion and the amount of conversion to be performed at each stage, the
[0042]
Similar to the first conversion process, the
[0043]
[Contents of
The
[0044]
[Operation of second conversion process]
The
[0045]
Here, as in the case of the first conversion process, the conversion amount is determined for each degree of freedom based on each
[0046]
That is, in this case as well, in the same way as the first conversion process, from the image data portion included in the search area, for example, by the information acquired by learning in each
[0047]
On the other hand, if the conversion amount corresponding to each degree of freedom represents “0” (that is, no conversion), the process ends at that stage, and if there is an unprocessed search area, the unprocessed search area Conversion processing is performed with any one of the processing search areas as a processing target.
[0048]
In this case as well, the image data portion included in the defined search area is used as it is in the target image data. However, processing for reducing the resolution of the image data portion is performed to obtain coarse-grained data. You may perform a 2nd conversion process using data. In this case, each
[0049]
In the first and second conversion processes, the
[0050]
Furthermore, although the case where the kernel nonlinear subspace method is used has been described here as an example, other methods such as an auto encoder may be used as long as data classification and error evaluation at the time of classification are possible.
[0051]
Further, here, it has been described that the conversion of each degree of freedom is performed in the second conversion process similarly to the first conversion process. However, in the second conversion process, the number of degrees of freedom related to the conversion may be reduced. For example, only the conversion with the same degree of freedom as the conversion performed last in the first conversion process is performed, or the conversion degree of freedom is first selected in the second conversion process. The conversion process may be repeated only for the degrees of freedom selected in the first second conversion process.
[0052]
Further, the maximum value of the conversion amount as a category determined in the second conversion process may be set smaller than the maximum value of the conversion amount determined in the first conversion process. In other words, the learning sample of the
[0053]
As described above, the conversion condition (at least one of the degree of freedom of conversion or the conversion amount) in the second conversion process may be limited as compared with the first conversion process.
[0054]
[Processing flow of control unit 11]
Specifically, the
[0055]
Next, the
[0056]
Subsequently, the
[0057]
On the other hand, when it is determined that the search target is not included as a result of the search process in the process S8 (when No), the process proceeds to the process S10 as it is. In addition, if there is no search area that has not been selected in process S10, that is, if the conversion process and the search process have been completed for all search areas (if No), the currently set reduction rate S is determined in advance. (S11), if not (if No), the reduction rate S is adjusted to be increased (S12), and the process returns to step S2 for processing. Continue (B). Here, the process S12 for largely adjusting the reduction rate S may be, for example, a process for increasing the reduction rate S by a predetermined ratio, or by multiplying the magnification which is the reduction rate S by a predetermined multiplier ΔS, S = A new reduction ratio S may be set as S × ΔS.
[0058]
If the currently set reduction rate S does not exceed the predetermined maximum reduction rate in Step S11 (if Yes), based on the map data corresponding to the target image data at each reduction rate, the original In the target image data (before reduction), an area including a search target is defined (S13), and the process ends.
[0059]
Here, after the first conversion process, the second conversion process is executed immediately. However, after the first conversion process, a preliminary search process (the contents will be described later) is performed, and this preliminary conversion process is performed. As a result of the search process, the second conversion process is performed only when it is determined that the search target may be included in the image data portion included in the search area after the first conversion process. In this case, if it is determined that there is no possibility that the search target is included in the image data portion included in the search area after the first conversion process, the process may be shifted to the above-described process S10 and the process may be continued. According to this, since the second conversion process is not performed on the area not including the search target, the processing load can be further reduced.
[0060]
[Search area definition processing]
Here, a process in which the
[0061]
For example, when using information input from the user, the
[0062]
When the area satisfying the predetermined condition is autonomously searched and demarcated, the
[0063]
Here, the moving amounts of the starting point are ΔX and ΔY in the width direction and the height direction, respectively, but these moving amounts are relative to ΔX and ΔY when the image data is 1 time depending on the reduction rate S of the target image data. ΔX / S, ΔY / S may be used.
[0064]
[Search process]
Next, the search process performed in process S8 will be described. In this search process, it is determined whether or not a search target is included using the
[0065]
[Learning course of search database]
This
[0066]
When the learning based on each learning data is completed, the
[0067]
[Search operation]
The
[0068]
The
[0069]
[Preliminary search processing]
A preliminary search process for determining whether to perform the second conversion process will be described. This preliminary search process may be the same process as the search process performed in the above-described process S8, but it is also preferable to make the process simpler in consideration of the processing load of the search process itself.
[0070]
For example, as the preliminary search process, a predetermined feature amount is calculated based on the image data portion included in the search area after the first conversion process, and the search is performed based on whether the feature amount satisfies a predetermined condition. It may be determined whether there is a possibility that the target is included. As an example, when a human face is a search target, the entropy is higher in the contour portion of the human face than in other portions. Therefore, the entropy is calculated as a feature amount, and a predetermined threshold (for example, target image data) is calculated. When the calculated entropy value is higher than the threshold value determined based on the overall average entropy value), it is determined that the search target may be included.
[0071]
[Operation of Control Unit 11]
As described above, the
[0072]
If it is determined that there is a possibility that the search target is included as a result of this preliminary search, the second conversion process is executed so as to be closer to the reference state, and the search target is the search after the conversion. It is determined whether it is included in the image data in the area. In other words, the
[0073]
Since the conversion process to the reference state is performed in this way, in the present embodiment, the position of the search area before conversion may be slightly shifted. Even if the reduction ratio is slightly deviated from the reference state, there is no problem. Therefore, conventionally, multi-stage reduced image data reduced by 0.8 times is generated and the search area is extracted while being shifted by one pixel. It is possible to reduce by 5 times, and ΔX and ΔY can be set to 6 pixels or the like even when a region that satisfies a predetermined condition is autonomously extracted when defining a search region. As a result, the number of patterns to be searched can be significantly reduced, and the processing load for searching for a search object from a photograph or the like can be reduced.
[0074]
The
[0075]
For example, each map data is enlarged at an enlargement ratio corresponding to the respective reduction ratios, compared with the size of the original target image data, and a region that is “true” in common to all map data ( Based on the target image data of any reduction ratio, it may be determined that the search target is included in an area where the search target is determined to be included. Further, an area that is “true” in any one of the map data may be determined as an area that includes a search target.
[0076]
[Variation of search area definition processing]
Further, in the search area defining process, the
[0077]
[Other variations]
In the description so far, the conversion performed in the conversion process is the two-dimensional rotation, translation, enlargement / reduction of the search area (the search area is enlarged / reduced, and the original image data portion is enlarged (before the enlargement / reduction). As a result, the image data portion included in the search area is converted. However, other than this, for example, if it is a human face Further, conversion may be included for the image data portion itself, such as a three-dimensional rotation influenced by the posture (growth adjustment or swing direction adjustment). Specifically, such a three-dimensional rotation can be realized by assuming an average three-dimensional model to be searched and projecting an image data portion on the average three-dimensional model.
[0078]
Further, in the search process, for example, even a human face may be further classified into categories and may include conditions such as age, sex, and whether or not the mouth is open.
[0079]
Furthermore, in the flowchart of FIG. 2, the
[0080]
[Operation]
Next, the operation of the image search device of the present embodiment will be described by taking as an example a case where a human face portion is searched for as a search target from image data of a photograph given as target image data. In the following example, for the sake of simplicity, it is assumed that the degree of freedom of conversion is only translation (x, y) and rotation (θ).
[0081]
The
[0082]
The
[0083]
The
[0084]
As described above, in this embodiment, the processing load can be reduced and the search is performed closer to the reference state as compared to the case of the conversion process using only one conversion database by performing the two-stage conversion process. Therefore, the search accuracy can be improved.
[0085]
In the above description, a case where two-stage conversion processing is performed is shown as an example, but it may be performed three or more times. In this case, the conversion conditions in the conversion process may be further limited as the level is increased, or the number of dimensions of the feature vector information may be further increased.
[0086]
【Example】
FIG. 4A is a distribution diagram showing how much error has occurred in the image data after the conversion to the reference state by the conversion process using one type of conversion database from the actual reference state. Yes, FIG. 4B shows, as in this embodiment, when two types of conversion databases are used, and the conversion processing is performed in two steps, first coarsely and then finely. It is a distribution diagram showing how much error image data has produced from the actual reference state. As can be understood with reference to the drawings, according to the method of the present embodiment, the average error is reduced, and conversion is performed so that the distribution state is closer to the reference state.
[0087]
Further, in the case of the conversion process using the one type of conversion database, an average of about 20 conversion processes are required before convergence (unit conversion for each degree of freedom is performed approximately 20 times). When the two types of conversion databases are used, the rough conversion process is performed about 10 times and the fine conversion process is performed about 5 times, and the processing load of the conversion process itself is reduced as a whole.
[Brief description of the drawings]
FIG. 1 is a configuration block diagram of an image search apparatus according to an embodiment of the present invention.
FIG. 2 is a flowchart illustrating an example of processing of a
FIG. 3 is an explanatory diagram showing an outline of conversion processing performed by the image search apparatus according to the embodiment of the present invention.
FIG. 4 is an explanatory diagram showing an experimental result comparing a result of a conversion process using one type of conversion database and a result of a two-stage conversion process using two types of conversion databases.
[Explanation of symbols]
11 control unit, 12 storage unit, 13 database unit, 14 display unit, 15 operation unit, 16 external storage unit.
Claims (8)
前記対象画像データ内に、探索領域を少なくとも一つ画定する手段と、
変換方法ごとに予め学習獲得された複数の第1変換データベースを参照して、前記画定されたそれぞれの探索領域に含まれる各探索部分データについて適用すべきN1個の変換の方法及び変換の量を含んでなる変換条件を取得し、当該取得した変換条件に基づく変換を、各探索部分データに対して少なくとも一度行う第1変換手段と、
前記第1変換手段によって変換された各探索部分データについて、さらに、前記第1変換手段における変換に比べ、変換の方法をN2個(N2はN1とは異なる)とし、変換の量を制限した制限変換条件を、変換方法ごとに予め学習獲得された複数の第2変換データベースを参照して取得し、当該取得した制限変換条件に基づく変換を前記変換された各探索部分データに対して少なくとも一度行い、前記各探索部分データを基準状態へ変換する第2変換手段と、
を含み、
予め、前記基準状態での画像データを用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断し、当該判断結果を出力することを特徴とする画像探索装置。An image search device for searching a search target image data portion to be searched from target image data to be processed,
Means for defining at least one search area in the target image data;
With reference to a plurality of first conversion databases learned and acquired in advance for each conversion method, N1 conversion methods and conversion amounts to be applied to each search partial data included in each of the defined search areas are determined. First conversion means for acquiring a conversion condition including, and performing conversion based on the acquired conversion condition at least once for each search partial data;
Each search partial data converted by the first conversion means is further limited to N2 conversion methods (N2 is different from N1) compared to the conversion in the first conversion means , and the amount of conversion is limited. A conversion condition is acquired by referring to a plurality of second conversion databases that have been acquired in advance for each conversion method, and conversion based on the acquired limited conversion condition is performed at least once for each of the converted search partial data. Second search means for converting each search partial data into a reference state ;
Including
A search database acquired by learning using image data in the reference state is referred to in advance to determine whether a search target is included in each of the converted search partial data, and the determination result is output. An image search apparatus characterized by:
前記第1変換手段によって変換された各探索部分データについて、探索対象が含まれているか否かを判断する予備探索手段をさらに有し、
当該予備探索手段により、探索対象が含まれていると判断された探索部分データについてのみ、前記第2変換手段が変換を行うことを特徴とする画像探索装置。The image search device according to claim 1,
For each search partial data converted by the first conversion means, it further comprises preliminary search means for determining whether or not a search target is included,
An image search apparatus characterized in that the second conversion means converts only search partial data determined to contain a search target by the preliminary search means.
前記予備探索手段は、第1変換手段によって変換された後の探索部分データについて、探索対象の画像データ例を用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断することを特徴とする画像探索装置。The image search device according to claim 2,
The preliminary search means refers to the search database acquired by learning using the search target image data example for the search partial data converted by the first conversion means, and sets each of the search partial data after conversion. An image search apparatus for determining whether or not a search target is included.
前記探索領域を画定する手段は、
探索領域として画定しようとする領域の内部に含まれる画像データのエントロピー、階層エントロピー、色、及び輝度分散、の少なくとも一つを用い、探索領域として実際に画定するか否かを決定することを特徴とする画像探索装置。In the image search device according to claim 3,
The means for defining the search area is:
Using at least one of entropy, hierarchical entropy, color, and luminance dispersion of image data included in an area to be defined as a search area, and determining whether to actually demarcate as a search area An image search device.
前記探索領域を画定する手段は、
探索領域として画定しようとする領域の内部に含まれる画像データのエントロピーが、所定のしきい値よりも大きい場合には当該探索領域として画定しようとしている領域を実際に探索領域として画定することを特徴とする画像探索装置。In the image search device according to claim 3,
The means for defining the search area is:
When the entropy of the image data included in the area to be defined as the search area is larger than a predetermined threshold, the area to be defined as the search area is actually defined as the search area An image search device.
前記対象画像データ内に、探索領域を少なくとも一つ画定する手段と、
変換方法ごとに予め学習獲得された複数の第1変換データベースを参照して、前記画定されたそれぞれの探索領域に含まれる各探索部分データについて適用すべきN1個の変換の方法及び変換の量を含んでなる変換条件を取得し、当該取得した変換条件に基づく変換を、各探索部分データに対して少なくとも一度行う第1変換手段と、
前記第1変換手段によって変換された各探索部分データについて、さらに、前記第1変換手段における変換に比べ、変換の方法をN2個(N2はN1とは異なる)とし、変換の量を制限した制限変換条件を、変換方法ごとに予め学習獲得された複数の第2変換データベースを参照して取得し、当該取得した制限変換条件に基づく変換を前記変換された各探索部分データに対して少なくとも一度行い、前記各探索部分データを基準状態へ変換する第2変換手段と、
予め、前記基準状態での画像データを用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断し、当該判断結果を出力する手段と、
として機能させることを特徴とするプログラム。An image search program for searching for a search target image data portion to be searched from target image data to be processed, the computer comprising:
Means for defining at least one search area in the target image data;
With reference to a plurality of first conversion databases learned and acquired in advance for each conversion method, N1 conversion methods and conversion amounts to be applied to each search partial data included in each of the defined search areas are determined. First conversion means for acquiring a conversion condition including, and performing conversion based on the acquired conversion condition at least once for each search partial data;
Each search partial data converted by the first conversion means is further limited to N2 conversion methods (N2 is different from N1) compared to the conversion in the first conversion means , and the amount of conversion is limited. A conversion condition is acquired with reference to a plurality of second conversion databases that have been learned and acquired in advance for each conversion method, and conversion based on the acquired limited conversion condition is performed at least once for each of the converted search partial data. Second search means for converting each search partial data into a reference state ;
A search database acquired by learning using image data in the reference state is referred to in advance to determine whether a search target is included in each of the converted search partial data, and the determination result is output. Means to
A program characterized by functioning as
前記第1変換手段としての機能によって変換された各探索部分データについて、探索対象が含まれているか否かを判断し、探索対象が含まれていると判断された探索部分データについてのみ、前記第2変換手段として機能させるよう、前記コンピュータを機能させる手段をさらに含むことを特徴とする画像探索プログラム。The image search program according to claim 6,
For each search partial data converted by the function as the first conversion means, it is determined whether or not a search target is included, and only the search partial data determined to include a search target is 2. An image search program further comprising means for causing the computer to function so as to function as two conversion means.
前記予備探索手段として機能させる際に、第1変換手段によって変換された後の探索部分データについて、探索対象の画像データ例を用いて学習獲得された探索データベースを参照し、前記変換後の探索部分データの各々に探索対象が含まれているか否かを判断させることを特徴とする画像探索プログラム。The image search program according to claim 7, wherein
When functioning as the preliminary search means, the search portion data after being converted by the first conversion means is referred to a search database acquired by learning using an example of image data to be searched, and the search portion after the conversion An image search program for determining whether or not a search target is included in each piece of data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003033845A JP4217954B2 (en) | 2003-02-12 | 2003-02-12 | Image search device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003033845A JP4217954B2 (en) | 2003-02-12 | 2003-02-12 | Image search device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004246477A JP2004246477A (en) | 2004-09-02 |
JP4217954B2 true JP4217954B2 (en) | 2009-02-04 |
Family
ID=33019707
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003033845A Expired - Fee Related JP4217954B2 (en) | 2003-02-12 | 2003-02-12 | Image search device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4217954B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7795296B2 (en) | 2001-11-30 | 2010-09-14 | Ajinomoto Co., Inc. | Crystals of non-natural-type stereoisomer salt of monatin and use thereof |
US8394970B2 (en) | 2003-01-09 | 2013-03-12 | Ajinomoto Co., Inc. | Process for manufacturing a glutamic acid derivative and a pyroglutamic acid derivative and a novel intermediate in the manufacture thereof |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2454213A (en) * | 2007-10-31 | 2009-05-06 | Sony Corp | Analyzing a Plurality of Stored Images to Allow Searching |
CN116662588B (en) * | 2023-08-01 | 2023-10-10 | 山东省大数据中心 | Intelligent searching method and system for mass data |
-
2003
- 2003-02-12 JP JP2003033845A patent/JP4217954B2/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7795296B2 (en) | 2001-11-30 | 2010-09-14 | Ajinomoto Co., Inc. | Crystals of non-natural-type stereoisomer salt of monatin and use thereof |
US8394970B2 (en) | 2003-01-09 | 2013-03-12 | Ajinomoto Co., Inc. | Process for manufacturing a glutamic acid derivative and a pyroglutamic acid derivative and a novel intermediate in the manufacture thereof |
Also Published As
Publication number | Publication date |
---|---|
JP2004246477A (en) | 2004-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100320063B1 (en) | Pattern Recognition Device | |
KR101896357B1 (en) | Method, device and program for detecting an object | |
CN111062885B (en) | Mark detection model training and mark detection method based on multi-stage transfer learning | |
US20080219516A1 (en) | Image matching apparatus, image matching method, computer program and computer-readable storage medium | |
US20090097746A1 (en) | Color classification method, color recognition method, color classification apparatus, color recognition apparatus, color recognition system, computer program, and recording medium | |
JP2001307096A (en) | Image recognition device and method | |
CN108960115B (en) | Multidirectional text detection method based on angular points | |
JP2006146922A (en) | Template-based face detection method | |
CN109919971B (en) | Image processing method, image processing device, electronic equipment and computer readable storage medium | |
US20050058339A1 (en) | Data recognition device | |
WO2012046426A1 (en) | Object detection device, object detection method, and object detection program | |
JP4217954B2 (en) | Image search device | |
CN116266387A (en) | YOLOV4 image recognition algorithm and system based on re-parameterized residual error structure and coordinate attention mechanism | |
JP2014010633A (en) | Image recognition device, image recognition method, and image recognition program | |
JP2002342758A (en) | Visual recognition system | |
JP4241074B2 (en) | Image search device | |
JPH10111946A (en) | Image tracking device | |
JP4158544B2 (en) | Image search device | |
JP4186541B2 (en) | Image processing device | |
CN113537158B (en) | Image target detection method, device, equipment and storage medium | |
CN115761332A (en) | Smoke and flame detection method, device, equipment and storage medium | |
CN113486879A (en) | Image area suggestion frame detection method, device, equipment and storage medium | |
JP5625196B2 (en) | Feature point detection device, feature point detection method, feature point detection program, and recording medium | |
JP5083162B2 (en) | Image data determination apparatus, image data determination system, and program | |
JP2017004052A (en) | Learning device, method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060120 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20071112 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20071115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080415 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080611 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080715 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080903 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20081016 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20081029 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111121 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111121 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121121 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131121 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |