JP4186541B2 - 画像処理装置 - Google Patents
画像処理装置 Download PDFInfo
- Publication number
- JP4186541B2 JP4186541B2 JP2002219663A JP2002219663A JP4186541B2 JP 4186541 B2 JP4186541 B2 JP 4186541B2 JP 2002219663 A JP2002219663 A JP 2002219663A JP 2002219663 A JP2002219663 A JP 2002219663A JP 4186541 B2 JP4186541 B2 JP 4186541B2
- Authority
- JP
- Japan
- Prior art keywords
- area
- map
- image data
- region
- partial
- 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
- Complex Calculations (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明は、処理対象となった画像データから所望の種類の被写体、例えば人の顔部分が撮像されている部分を選択的に抽出する画像処理装置に関する。
【0002】
【従来の技術】
[背景]
近年、ディジタル画像処理に用いられる各種素子や装置の性能が飛躍的に向上しており、これに伴って画像データがますます高精度になってきている。そのため、従来では画質の問題から適用されていなかったような分野においても、画像データの利用が促進されるようになり、画像データの流通量も年々増大しているのが実情である。このような背景の下、大量の画像データを取り扱うにあたり、簡便かつ効率的に各画像データを特徴づける部分的画像を抽出して画像データの検索を容易にしたり、また広い画角でカメラによって撮像された画像データから部分的な画像データを抽出して種々の利用に供したいという要求が現れてくるものと予想される。
【0003】
[画像データの検索を容易にするための関連技術]
画像データの検索においては、予め各画像データにキーワードや撮像日時といった文字列データを関連づけておき、この文字列データを検索の対象とするものがある。また、サムネイルと呼ばれる縮小画像データを生成しておき、検索の際にはこれを並べて表示し、検索の用に供するというものがある。
【0004】
[部分的画像データ抽出の関連技術]
また、部分的な画像データを抽出するために、ユーザに画像データのうち、抽出の対象となる部分を選択させ、これをそれぞれ切り出すという装置がある。
【0005】
【発明が解決しようとする課題】
しかしながら、上記関連技術では、それぞれ次のような点で問題がある。まず、画像データの検索を容易にするための関連技術においては、文字列データの設定を一々行うのでは大量の画像データを処理する際にユーザの操作負担が大きく、利便性が低い。また、サムネイルでは詳細な部分が欠落してしまうため、例えば何人もの人が入れ替わりで撮影されているような一連の写真の画像データを取り扱うに際して、誰が撮像されているのかが分かりにくくなるなどの点で、利便性が低い。また、部分的な画像データを抽出する関連技術においては、抽出領域の画定を人手で行うため、大量の画像データを処理する際のユーザの操作負担が大きく、利便性が低い。
【0006】
そこで、自律的動作によって画像データがどのようなものかを特徴づけたり、特徴的な部分を特定して抽出したりといった画像処理装置の実現が望まれる。
【0007】
[自律的動作をする画像分類装置]
例えば与えられた複数の画像データ群を、撮像されている内容を基に自律的に分類する技術があれば、処理対象となった元の画像データを所定サイズのウインドウで切り出し、このウインドウを1ピクセルずつ移動させながら元の画像データから部分的画像データ群を取り出し、各部分的画像データ群を自律的動作により分類して、所望の被写体が撮像されている部分的画像データを選択的に抽出することは可能と考えられる。
【0008】
具体的に比較的自律的にクラスタリング処理を行うための方法として、入力画像データを格子空間マップ上で分類整理するものがある。この分類整理のためには、例えば自己組織化特徴マッピング(以下、SOMと略す)(T. コホーネン Self-organizing formation of topologically correct feature maps. Biological Cybernetics, 1982)を利用している。このSOMは、データが入力される入力層と、格子空間マップの競合層とからなる2階層のネットワークで、入力はある重みづけがされ、各格子に入力される。入力各成分についての重みづけをまとめたものを重みベクトルと称する。
【0009】
当初、重みベクトルは次の方法で初期化される。すなわち、上記コホーネンの文献に示されるように、学習の対象となる複数の入力ベクトル(ここでの特徴量セットに相当する)の中からプロトタイプ数と同数の入力ベクトルIをランダムに選び出し、各格子の重みベクトルの初期化を行う。また、同じく、コホーネンによれば、各重みベクトルに乱数で初期値を設定することとしても構わない。
【0010】
次に、重みベクトルの学習を行う。この学習課程においては、学習用の特徴量セットが生成され、当該学習用特徴量セットと格子空間上の各格子の重みベクトルとの所定測度(例えばユークリッド距離)が演算される。そして各格子のうち、関係が最大(測度が最小)となる格子(勝利ノード)を見いだす。そして格子空間上、その格子(勝利ノード)に対し近傍に存在する各格子について、学習用特徴量セットとの測度が小さくなるように、その重みベクトルを補正する。このような重みベクトルの補正を行いつつ学習を繰り返すことで、互いに類似する特徴量からなる特徴量セットに対し、最小測度を有する格子が特定の領域に集中するようになり、データの分類に適用可能な状態となる。ここで、重みベクトルを補正する対象となる格子を選ぶにあたり、勝利ノードからのマップ上の距離を用いる。また、補正量は、勝利ノードcからの距離に応じて変化させることが好ましく、補正量の大きさも変更可能としておくことが好ましい。一般的には、次の(1)式のように近隣のノードの重みベクトルIに近づくよう重みベクトルwを補正する。
【数1】
なお、
【数2】
【0011】
ここで、α(t)は、補正量の大きさを支配する量で、学習係数と呼ばれる。また、σ(t)は、重みベクトルを修正する範囲の変化を決定する関数であり、近傍関数と呼ばれる。これらは時間tに対し、ともに単調減少する関数である。勝者ノードを中心にマップ上のノード間距離Rmaxが、
【数3】
の範囲に属する格子について(1)式による補正が行われるが、学習の繰り返しの中で、Rmaxはσ(t)によって減少する。近傍関数σ(t)としては、トライアングル型、レクトアングル型(四角)、メキシカンハット型等の関数を用いる。この近傍関数σ(t)の選択によっても、学習結果に影響があることが知られている。なお、tは、「時刻」であり、特徴量セットが入力されるごとにインクリメントされる。また、||rc-rj||は、勝利ノードと、重みベクトルの補正対象ノードの間のノルム(距離)である。
【0012】
しかし、上記技術をそのまま適用したのでは、直ちに自律的なデータ分類を行うことはできない。自律的なデータ分類を実現するには、まず、学習後の格子空間マップが適切なものであるかの判断が必要である。すなわち、(1)最適な格子空間マップを獲得する方法が必要である。また、当該学習後の格子空間マップを利用してデータ分類を行うときには、分類の基準となる境界線を上記格子空間上に形成し、分類対象として与えられたデータについての特徴量セットに対して最小測度を有する格子が、どの境界線内に属するか(この境界線で区切られた格子空間上の領域を以下、クラスタと呼ぶ)に基づき、当該データを分類することが適切である。すなわち、(2)クラスタの境界を決定する方法も求められる。
【0013】
このうち、(1)最適な格子空間マップを獲得する方法として、コホーネンは、平均量子化誤差が最小となるマップを選択するという方法を提案している。つまり、学習条件を互いに異ならせて形成した複数の格子空間マップのうち、平均量子化誤差が最小のものを選択し、これを近似的に最適な格子空間マップとするのである。この方法によると、入力される特徴量セットの空間のトポロジーがマップのトポロジーに反映されない。いわば、トポロジーの保存度が低い。これは、クラスタリングの方法によっては誤分類に結びつくこともある。
【0014】
トポロジーの保存に配慮したものとして、トポロジー関数(topographic function)と呼ばれる所定の指標を学習中にモニタし、これにより学習条件を制御して適切なマップを形成する技術(Auto-SOM法)も開発されている。しかし、トポロジー関数の演算自体が負荷の高い処理であるため、学習時間が長くなる問題点がある。
【0015】
次に(2)クラスタの境界を自律的に決定する方法としては、U-Matrix(Unified Distance Matrix Methods)法と呼ばれる方法や、ポテンシャル法と呼ばれる方法が研究されている。ここで、U-Matrix法については、A.Ultsch et. al., "Knowledge Extraction from Artificial Neural Networks and Applications", Proc.Transputer Anwender Treffen/ World Transputer Congress TAT/WTC 93 Aachen, Springer 1993に詳しく開示されている。U-Matrixでは、マップ上で隣接する2つの格子間の距離を次のように定義する。すなわち、当該2つの格子の各重みベクトルの成分毎の差について、その絶対値を総和したものや、当該差の二乗平均などを距離として定義するのである。すると、類似性の高い特徴量セットにそれぞれ強く結合(重みベクトルが特徴量セットに近い値を持つもの、このようなものを以下、「特徴量セットにプロトタイピングされている」と表現する)している隣接格子間、つまり、類似性の高い2つの特徴量セットのそれぞれにプロトタイピングされている隣接格子間の上記距離は小さくなり、類似性の低い2つの特徴量セットのそれぞれにプロトタイピングされている隣接格子間の距離は大きくなる。そこでこの距離の大きさを高さとした3次元的な面を考えると、互いに類似する特徴量セットにプロトタイピングされた格子間に対応する面の高さは低くなり「谷」を形成するのに対し、互いに異なる特徴量セットにプロトタイピングされた格子間に対応する面の高さは高くなり「山」を形成する。従ってこの「山」に沿って境界線を形成すれば、類似性の高い特徴量セットにプロトタイピングされている格子の集合(クラスタ)を規定できる。U-Matrixは、いわば、自己組織化マップでは入力空間での距離が保存されない点を補強したものであるということができる。
【0016】
しかしU-Matrixは、「山」と「谷」との高低差が明瞭であれば境界を規定できるものの、現実の情報処理では「山」と「谷」との高低差は期待されるほど明瞭にならず、3次元面の高さはゆるやかに変化することも多い。この場合には、人為的に境界線を設定する必要があって、必ずしも自律的に境界が決定できるわけではない。
【0017】
一方のポテンシャル法は、D.Coomans, D.L.Massart,Anal.Chem.Acta.,5-3,225-239(1981)に開示されているもので、事前に定めたポテンシャル関数を用いて、入力データに対する関数の値を重ね合わせて入力データを近似的に表現する母集団の確率密度関数を推定し、重なりあいの少ない部分を境界として決定するというものである。ポテンシャル関数としてはガウシアン型の関数とすることが多い。具体的には、N個の入力ベクトルからなる入力データ群があるとき、それぞれK次元の大きさを持つとするとl番目の入力データが他の入力データから受ける平均的なポテンシャル(l番目入力が全体の入力集合に対する寄与率)Ψlを次の(2),(3)式によって定義する。
【数4】
【0018】
尚、xklはl番目入力のk番目の成分を意味する。また、αはスムージングパラメータで分類されるクラスタの数に影響を与える。従って、ポテンシャル法では、その分布形状を仮定する分布関数の最適化や、各種パラメータの最適化が入力ベクトル集合ごとに求められ、要するに分類対象となるデータの特性について事前に知識が必要であるうえ、人為的調整が不可欠となる。また、このポテンシャル法では、入力データから得られる特徴量セットが高次元になると、それについて適切な確率密度分布を求めるにはサンプルが多数なければならず、少数の格子からなるマップに対しての適用が困難であるという問題点がある。つまり、ポテンシャル法についても、必ずしも自律的に境界が決定できるわけではない。
【0019】
これらの問題点を解決するため、例えば特開平7−234854号公報、特開平8−36557号公報、「自己組織化特徴マップ上のデータ密度ヒストグラムを用いた教師無しクラスタ分類法」,電子情報通信学会論文誌D-II Vol.J79-DII No.7 pp.1280-1290, 1996年7月などに開示された技術が研究されている。しかしながら、どの技術においても、入力されるデータの構成自体や、マッピングの結果において、分類に使いたい特徴が十分な距離をあけて各格子にプロトタイピングされることを前提としており、画像データの分類において例えば見られるような、分類してほしい特徴毎の分布形状の差異や重なり、その特徴にプロトタイピングされている格子のマップ上の位置の重心間の距離にばらつきがある場合などでは、マップ上でクラスタの境界が複雑に入り組むため、適切なクラスタリングができなくなる。
【0020】
さらに、関連技術においては、マップ上の格子の数については研究の過程で経験的に決定するだけで、実際の用途に適合した適切な格子の数を決定するといったことは配慮されていなかった。しかしながら、適切な数よりも格子の数が少ない場合、クラスタ境界部の格子と、別のクラスタに属するべき特徴量セットが強く結合されてしまう場合があり、この場合は分類誤りが多くなる。この点について、格子の数を追加/削減して平均量子化誤差が所定量を下回るようにするという技術が、James S. Kirk et. al. "A Self-Organized Map with Dynamic Architecture for Efficient Color Quantization", IJCNN'01, 2128-2132に開示されている。尤も、この技術では、入力データに対応する特徴量セットの空間でのデータ分布を写像した格子が追加等されるだけなので、データ分類において重要となる、クラスタ境界付近の格子の数を増大させるというようなことには配慮されていない。そこで例えば当初から格子の数を多くしておくこととしてもよいが、この場合、計算時間が長くなって実用的でない。
【0021】
[従来の自律的分類装置の問題点]
このように、上記従来の自律的分類装置を利用しようとする場合、画像データの分類自体が負荷の大きい処理であり、従って処理対象となった画像データから取り出した部分画像の量が多い場合には現実的な時間内に処理が終了しない。一般に、写真として撮影された画像データでは、1000×1000を越える画素数を有しており、ここから例えば100×100の部分画像を1ピクセルずつずらしながら取り出したとすると、900×900個=81万個もの部分画像を、各処理対象画像データごとに処理しなければならなくなる。
【0022】
本発明は上記実情に鑑みて為されたもので、自律的な動作によりながら、かつ効率的に、所望の種類の被写体が撮像されている部分を抽出することのできる画像処理装置を提供することを、その目的の一つとする。
【0023】
【課題を解決するための手段】
上記従来例の問題点を解決するための本発明は、処理対象となった画像データから、所望の種類の被写体が撮像された部分を抽出する画像処理装置であって、前記処理対象となった画像データの少なくとも一部を抽出候補領域として抽出する予備抽出手段と、前記抽出候補領域の各々について、事前に行われた学習によって獲得された分類装置を用いて所定処理を行い、前記抽出候補領域のうち、前記所望の種類の被写体が撮像されている領域を選択して出力する本抽出手段と、を含み、前記予備抽出手段が、前記画像データのうち予め定められたピクセルサイズの一部領域におけるエントロピーを特徴量として演算し、前記画像データ上において前記一部領域を移動させながら前記一部領域における前記特徴量の演算を前記画像データの全領域について行い、前記一部領域のうち予め定められたルールを満足する前記特徴量を有する前記一部領域を有効領域として選択し、当該有効領域に選択された前記一部領域の各ピクセルの値を当該一部領域の前記特徴量に置き換えた特徴量マップを生成し、当該特徴量マップのうち前記一部領域よりも大きいピクセルサイズの統計値演算用領域における前記特徴量の統計値を演算し、前記特徴量マップ上において前記統計値演算用領域を移動させながら前記統計値演算用領域における前記統計値の演算を特徴量マップの全領域について行い、前記統計値演算用領域のうち予め定めた閾値を越えた前記統計値を有する前記統計値演算用領域を前記抽出候補領域として抽出する、ことを特徴とする画像処理装置。
【0024】
またここで、予備抽出手段は、処理対象となった画像データから重複を許しながら、前記一部領域を複数選択して、各一部領域についての特徴量を演算することとするのも好ましい。さらに、特徴量は、前記一部領域に含まれる画素値のエントロピーであってもよい。
【0025】
また、本発明のある態様によると、処理対象となった画像データから、所望の種類の被写体が撮像された部分を抽出する画像処理方法であって、前記処理対象となった画像データの少なくとも一部を抽出候補領域として抽出する予備抽出工程と、前記抽出候補領域の各々について、事前に行われた学習によって獲得された分類装置を用いて所定処理を行い、前記抽出候補領域のうち、前記所望の種類の被写体が撮像されている領域を選択して出力する本抽出工程と、を含み、前記予備抽出工程において、前記画像データのうち予め定められたピクセルサイズの一部領域におけるエントロピーを特徴量として演算し、前記画像データ上において前記一部領域を移動させながら前記一部領域における前記特徴量の演算を前記画像データの全領域について行い、前記一部領域のうち予め定められたルールを満足する前記特徴量を有する前記一部領域を有効領域として選択し、当該有効領域に選択された前記一部領域の各ピクセルの値を当該一部領域の前記特徴量に置き換えた特徴量マップを生成し、当該特徴量マップのうち前記一部領域よりも大きいピクセルサイズの統計値演算用領域における前記特徴量の統計値を演算し、前記特徴量マップ上において前記統計値演算用領域を移動させながら前記統計値演算用領域における前記統計値の演算を特徴量マップの全領域について行い、前記統計値演算用領域のうち予め定めた閾値を越えた前記統計値を有する前記統計値演算用領域を前記抽出候補領域として抽出する、こととした。
【0026】
また、本発明のある態様によると、処理対象となった画像データから、所望の種類の被写体が撮像された部分を抽出する画像処理プログラムであって、コンピュータに、前記処理対象となった画像データの少なくとも一部を抽出候補領域として抽出する予備抽出手順と、前記抽出候補領域の各々について、事前に行われた学習によって獲得された分類装置を用いて所定処理を行い、前記抽出候補領域のうち、前記所望の種類の被写体が撮像されている領域を選択して出力する本抽出手順と、を実行させ、前記予備抽出手順においては、前記コンピュータに前記画像データのうち予め定められたピクセルサイズの一部領域におけるエントロピーを特徴量として演算させ、前記画像データ上において前記一部領域を移動させながら前記一部領域における前記特徴量の演算を前記画像データの全領域について実行させ、前記一部領域のうち予め定められたルールを満足する前記特徴量を有する前記一部領域を有効領域として選択させ、当該有効領域に選択された前記一部領域の各ピクセルの値を当該一部領域の前記特徴量に置き換えた特徴量マップを生成させ、当該特徴量マップのうち前記一部領域よりも大きいピクセルサイズの統計値演算用領域における前記特徴量の統計値を演算させ、前記特徴量マップ上において前記統計値演算用領域を移動させながら前記統計値演算用領域における前記統計値の演算を特徴量マップの全領域について実行させ、前記統計値演算用領域のうち予め定めた閾値を越えた前記統計値を有する前記統計値演算用領域を前記抽出候補領域として抽出させる、こととした。
【0032】
【発明の実施の形態】
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る画像処理装置は一般的なコンピュータを用いて実現できる。すなわち、本実施の形態の画像処理装置は、図1に示すように、制御部11と、記憶部12と、入出力インタフェース13と、操作部14と、表示部15とを含んで構成されている。なお、記憶部12には、RAM(Random Access Memory)といったメモリ素子のほか、ハードディスクやCD−ROMなどのプログラムをコンピュータ読み取り可能に保持する記憶媒体が含まれる。
【0033】
制御部11は、記憶部12に格納されている画像処理プログラムに従って動作し、入出力インタフェース13を介して入力される、処理対象画像データに対して所定の処理を実行する。この画像処理の内容については、後に詳しく述べる。また、この制御部11は、操作部14から入力される指示に従って、当該画像処理の結果を表示部15に表示し、または入出力インタフェース13を介して外部に出力する。
【0034】
記憶部12は、制御部11により実行されるプログラムを保持している。またこの記憶部12は、制御部11の画像処理の過程で必要となるデータを保持する、ワークメモリとしても動作する。入出力インタフェース13は、外部から入力される画像データを制御部11に出力する。また、この入出力インタフェース13は、制御部11から入力される指示に従って、制御部11から入力される種々のデータを外部に出力する。操作部14は、キーやマウスなどを含み、ユーザからの操作の内容を制御部11に伝達する。表示部15は、CRTや液晶ディスプレイなどであり、制御部11から入力される指示に従って情報を表示する。
【0035】
[画像処理の内容]
ここで、制御部11が実行する画像処理の具体内容について説明する。本実施の形態における制御部11により実行される画像処理の内容は、所望の種類の被写体が撮像されていると推定される部分的な画像データを予備的に抽出する予備抽出処理と、予備抽出処理により抽出された部分的な画像データから所望の種類の被写体が撮像されている部分を選抜する本抽出処理とを含んでなる。そこで、以下に、予備抽出処理と、本抽出処理とを区別して説明する。なお、以下の説明においては理解をしやすくするため、処理対象画像データは写真の画像データであるとし、所望の種類の被写体は、人物の顔部分であるとして説明をする。
【0036】
[予備抽出処理]
本実施の形態の予備抽出処理を行うプログラムモジュールは、図2に示すように、補正部21と、特徴量マップ生成部22と、抽出候補部分画定部23とを含んで構成されている。補正部21は、処理対象画像データをグレースケールの画像データに変換し、変換後の画像データに対して、コントラストの補正処理を行う。具体的にこのコントラストの補正処理としては、画像データ内の各ピクセルの輝度の出現頻度(ヒストグラム)を等化する処理がある。
【0037】
特徴量マップ生成部22は、画像データの一部領域として、予め定められたサイズn×n′ピクセルの領域を画定し、これを所定のdピクセルずつ移動させつつ、互いに重複するn×n′ピクセルの一部領域を順次画定する。ここでn=n′とすることができ、例えばn=n′=9として以下の説明を行う。また、dはnより小であること(画定される一部領域に重複を許すこと)が好ましい。ここでは例えばd=3とする。
【0038】
具体的に特徴量マップ生成部22の処理を行う制御部11は、図3に示すように、処理対象の画像データについて、n×n′の一部領域(いわば特徴量算出用の領域)を画定し(S1)、各一部領域について輝度のヒストグラムを算出する(S2)。そして、このヒストグラムに基づいて特徴量の一例としてのエントロピーを演算して、一部領域の中心座標の情報(元の画像データ上での一部領域の位置に関係する情報)に関連づけて記憶部12に格納する(S3)。次に、処理S1で画定した一部領域を移動する(S4)。この移動は、例えば図4に示すように、画像データ上で左上側から順に、dピクセルずつずらしながら右へ水平移動し、右端に到達したらdピクセルだけ下へ垂直移動し、左端へ戻って処理を続ける。こうして左上端から右下端までを走査する。
【0039】
そして制御部11は画像データの走査を完了したか否か(全一部領域を処理したか否か)を判断し(S5)、走査を完了していなければ(Noならば)、移動後の一部領域を画定するべく処理S1に戻って処理を続ける。また、処理S5において、走査を完了した(全一部領域を処理した)ならば(Yesならば)、処理S3で格納したエントロピーの出現頻度(特徴量ヒストグラム)を演算し(S6)、出現頻度の値eがe1≦e≦e2(ここでe1は、演算されたエントロピーの出現頻度の最大値のp%の値、e2は、同じくエントロピーの最大値のp′%の値、ここでは例えばp=30、p′=10とする)となるようなエントロピーの値を有する一部領域を有効領域として選択する(S7)。
【0040】
そして、処理S3で記憶部12に格納した各特徴量とともに関連づけられている一部領域の中心座標の情報を利用して、演算した特徴量をマトリクス状に配置してマップデータ(特徴量マップ)を生成する。こうして生成された特徴量マップは、模式的には図5に示すように、各ピクセルの値が特徴量であるような、一種のグレースケールの画像データとなる。ここで、特徴量マップ上には、有効領域の特徴量だけを含めるようにしてもよい。
【0041】
抽出候補部分画定部23は、特徴量マップ生成部22によって生成された特徴量マップを参照しながら、抽出候補部分を画定する。制御部11は、この抽出候補部分画定部23の処理として具体的に図6に示すように、特徴量マップ上でm×m′ピクセルに対応する領域を画定し(S11)、この画定した領域に含まれる特徴量に基づく所定の統計演算を行う。そして、その結果を画定した領域に関する統計値として設定する(S12)。ここでm=55、m′=55であるとして以下説明する。このように、m,m′>n,n′としているのは、人物の顔を抽出の対象とする場合、n×n′のように小さい(エントロピーの計算がしやすい)領域をそのまま用いると、輪郭部分のようにエントロピーの高い領域が拾われてしまうだけであるのに対して、比較的大きいサイズの領域を用いれば、エントロピーの高い領域で囲まれた(すなわち輪郭で囲まれた)人間の顔部分が、全体の中でエントロピーの高い領域となり、人間の顔部分を捉えやすくなるからである。従って、このm,m′の値は、処理対象画像データの中で一般的に人の顔がどの程度のサイズで含まれているかによって設定可能としておくことが好ましい。つまり、このm,m′の値は、抽出したい種類の被写体の画像データ上の大きさに応じて適応的に変更設定できるようにしておく。この設定は、予め行っておいてもよいし、操作部14を通じてユーザがその都度設定してもよい。さらに、ある態様においては、このm,m′の値を特徴量マップにおける特徴量の分布(例えばエントロピーの分布に応じて)適応的に変更してもよい。この場合、抽出する領域は、エントロピーの部分的な分布状況によって異なることとなり、一つの処理対象画像データ内であっても、部分によってはm,m′の値がそれぞれ異なることとなる。したがってこの場合は、人の顔が含まれている可能性の場所を示すのみではなく、そのサイズ情報も抽出可能となる。
【0042】
制御部11は、処理S12で演算した統計値が所定のしきい値Thを越えているか否かを判断し(S13)、越えていれば(Yesならば)、この時点で画定している領域の中心座標を記憶部12に格納する(S14)。この処理S14の処理が予め定められたルールを満足する領域の選択に相当する。そして制御部11は、処理S11で画定した領域を特徴量マップ上で順次移動させる(S15)。ここで移動量Dが、例えば1ピクセルとすると、1ピクセルだけ画定した領域を特徴量マップ上で右へ移動させる。そして特徴量マップ上で右端まで到達すると、次に同じくD=1ピクセルだけ下へ移動して、左端から順次右端まで移動していく。こうして左上端から右下端まで特徴量マップを走査する。
【0043】
そして制御部11は、特徴量マップの走査が完了したか否かを調べ(S16)、完了していれば(Yesならば)、処理を終了する。また、処理S16において完了していなければ(Noならば)、処理S11に戻って移動後の領域について処理を続ける。なお、処理S13において、統計値がしきい値Thを越えていなければ(Noならば)、処理S15に移行する。
【0044】
ここで、処理S12における統計値としては、m×m′領域内の特徴量の平均値、最大値、参照量との類似度の値などがある。また統計値として平均値を採用する場合、しきい値Thは、特徴量マップ全体の特徴量に関する統計量、例えば中央値とする。
【0045】
なお、ここでは抽出候補領域を画定する情報としてその領域の中心座標を用いているが、当該中心座標を中心とした所定領域の左上座標及び右下座標など、領域そのものを画定する情報を、抽出候補領域を画定する情報として出力するようにしてもよい。こうして出力される情報は、後に説明する本抽出処理において利用される。
【0046】
[特徴量マップの高精度化]
さらに、特徴量を高精度化するために、処理S2で演算する輝度ヒストグラムに対して所定の処理を行って、それから特徴量たるエントロピーを演算するようにしてもよい。すなわち、エントロピーの値は本来連続量であるのに対して、処理S2,S3での演算は離散量として演算されている。そこで、処理S2において演算した輝度ヒストグラムを連続的関数で近似的に表現し、この近似的な連続的関数の積分として総和をヒストグラムとして演算するようにしてもよい。この近似は最も簡便には、図7に示すように、ヒストグラム(実線)に対する一次近似(包絡線;破線)とすればよい。また、ヒストグラムの値を所定の内挿法で内挿して二次以上の近似を行ってもよい。
【0047】
このようにすると、単なる総和においてはヒストグラムのピーク位置同士の相対的関係が配慮されなくなるのに対して、近似関数の積分とすることで、ピーク位置同士の相対的距離等が積分結果に寄与するようになるので、エントロピープロファイルが高精度化される。この状況を図8に示す。元の特徴量マップ(a)に対して、一次近似の結果を利用した特徴量マップ(b)では、輪郭部分が背景部分に比べて浮き上がっている。
【0048】
さらに、別の高精度化の方法として、次の方法がある。すなわち、上述の方法では輪郭や、顔に含まれている目鼻等の部分でエントロピー値が高くなり、これらの部分を中心的に顔らしい部分として抽出してしまう。そこで、処理S2で生成するヒストグラムの区間を広げて、輪郭も顔内部も略同一の特徴量を有するようにすれば、輪郭がなくなってベタの顔なり、候補として画定する領域の中心が、顔の中心部分に近くなると期待できる。これは周囲になるべくエントロピーの高い部分が多い方が処理S11で画定する領域内での特徴量(エントロピー)がより高くなるからである。
【0049】
具体的にヒストグラムの区間(輝度区間)の幅を広く調整可能とするというのは、例えば256諧調のグレースケール画像データであれば、輝度の値は0〜255までの255個であるが、これを例えば「5」単位にまとめ、0〜4,5〜9,…と区間を51個に分け、0〜4の輝度を有するピクセルの数をカウントして、当該区間の出現頻度とする。このようにして演算される特徴量マップは図8(c)に示すようになる。
【0050】
[特徴量の他の例]
また、ここでは特徴量としてエントロピーを用いているが、輪郭検出情報や、コリレーションなどの広く知られた物理量を用いても構わない。
【0051】
[予備抽出処理の他の例]
また、ここまでの説明では予備抽出処理として、図6に示したように、特徴量の統計量をさらに利用して抽出候補となる領域を画定するようにしていたが、これに代えて、特徴量マップをそのまま用いて抽出候補領域を画定するようにしてもよい。この場合には、例えば特徴量マップとしてのエントロピーのマップ上で、エントロピーが所定のしきい値より高い部分を抽出候補の領域の中心座標として出力する。この処理が特徴量マップをそのまま用いるときの、本発明にいう所定のルールを満足する領域を画定する処理に相当する。また、この場合にしきい値の高い順に順序づけて出力するようにしてもよい。
【0052】
[本抽出処理]
次に、制御部11による本抽出処理について説明する。本抽出処理では、制御部11は、SOMを利用した学習処理によって獲得された分類装置を用いて所定処理を行い、抽出候補領域のうち、所望の種類の被写体が撮像されている領域を選択して出力する。なお、予備的に抽出される抽出候補領域は、互いに重複した領域を多く含んでいると考えられる。すなわち、同じ正面向きの顔の部分であっても、左耳近傍を中心にした領域と、鼻を中心にした領域と、右耳を中心にした領域とで異なる抽出候補領域として画定される場合がある。この場合に、すべての抽出候補領域を分類装置で処理すると、分類装置の処理負荷が大きくなると考えられる。そこで、制御部11は、本抽出処理にあたり、次の処理によって一つの顔について一つの抽出候補領域を分類装置で処理することができるようにすることも好ましい。
【0053】
すなわち、制御部11は処理S14において記憶部12に格納した各中心座標の情報を利用して、図9に示す処理を行う。なお、記憶部12に格納された中心座標の情報は、特徴量マップ上の座標の値となっているので、当該座標の値に対応する特徴量マップ上の「ピクセル」について、その「ピクセル」が処理対象画像データの対応する座標(処理S3において保持した当該「ピクセル」の演算に用いられた一部領域の中心座標)へ変換する。
【0054】
制御部11は、まず処理対象画像データと同一サイズのブーリアン値の配列(以下、ゲイジングマップ(Gazing Map;注視領域マップ)と呼ぶ)を生成する。なお、各ブーリアン値は「false(偽)」に初期設定しておく。そして、各ブーリアン値のうち、処理S14で記憶部12に格納した(変換後の)中心座標の情報に応じて、各中心座標の周囲±Eピクセルの領域のブーリアン値を「True(真)」に初期設定する(S21)。ここでEは、例えば55とする。この値は処理対象画像データのサイズに応じて決定することとするのも好ましい。この場合は、中心座標を中心とした110×110ピクセルの領域のブーリアン値が真に設定される。
【0055】
次に、各中心座標を順次読み出して、当該中心座標に対応するゲイジングマップ上のブーリアン値を参照して、それが真であるか否かを調べる(S22)。ここでブーリアン値が真でなければ(Noならば)、次の中心座標を読み出して処理S22の処理を続ける。また、処理S22においてブーリアン値が真であれば(Yesであれば)、処理対象の画像データ上、当該中心座標を中心とした所定領域(例えば当該中心座標を中心にした2E×2Eピクセルの矩形領域)の部分の画像データに対して後に説明する分類装置による処理を行う(S23)。そして分類装置によって、当該部分的な画像データが所望の種類の被写体(ここでは顔)であると分類されたか否かを調べ(S24)、顔として分類されたとき(Yesのとき)には、ゲイジングマップ上で、当該中心座標を中心にした±Eの領域(当該中心座標を中心にした2E×2Eの矩形領域)のブーリアン値を偽に設定する(S25)。これにより当該部分が再度分類装置より処理されることがなくなる。そして制御部11は、ゲイジングマップ上で真となっているブーリアン値が残っているか否かを調べ(S26)、残っていれば(Yesならば)、処理S22に戻って処理を続ける。また、処理S26において残っていなければ(Noならば、つまりゲイジングマップ上のすべてのブーリアン値が偽となったならば)、処理を終了する。
【0056】
一方、処理S24において、顔と分類されなければ(Noならば)、現在処理している中心座標の周囲の所定座標について分類装置による分類処理を行ったか否かを調べる(S27)。ここで、既に分類装置による分類処理を行っていれば(Yesならば)、ゲイジングマップ上で、中心座標を中心にした±eの領域(2e×2eの矩形領域)のブーリアン値を偽に設定する(S28)。ここでeの値はEとは異なり、例えばe<Eであり、具体的にはe=9であるとする。そして制御部11は、処理S26に移行して処理を続ける(B)。
【0057】
さらに、処理S27において、分類装置による分類処理を行っていなければ(Noならば)、中心座標の周囲±(e+1)ピクセルの矩形領域を例えば渦巻き状(矩形状の周囲を時計回りまたは反時計回り)に順次選択し(S29)、当該選択したピクセルを中心とした所定領域に対する分類処理を実行させるべく処理S23に移行する(A)。すなわち、処理S27及びS29により、中心座標周辺の±eピクセルについて、それらを中心にした所定領域に対する分類処理が実行されるのである。
【0058】
[分類装置]
ここで、制御部11の分類装置としての動作について説明する。分類装置としてのプログラムは例えば、図10に示すように、マップ生成部30と、クラスタ境界決定部35とを含むものを用いることができる。ここでマップ生成部30は、SOM学習部31と、マップ選択部32と、学習条件設定部33と、プロトタイプ追加部34とを含む。制御部11は、このプログラムを記憶部12から読み出して実行する。
【0059】
このプログラムの機能は、次のようになる。まずマップ生成部30は、自己組織化マッピング(SOM)により、プロトタイプマップを形成し、形成したプロトタイプマップの情報をクラスタ境界決定部35に出力する。クラスタ境界決定部35は、このプロトタイプマップに対し、各プロトタイプをクラスタに分類する。以下、これらの各部についての動作を分けて詳しく述べる。
【0060】
[マップ生成]
まず、マップ生成部30のSOM学習部31は、学習条件設定部33から入力される複数(例えばMセット(Mは2以上の整数))の学習条件のセットの各々に対応するM個のプロトタイプマップ候補を生成する。各マップ候補は、各プロトタイプを特定する情報に対して、そのプロトタイプと特徴量セットの成分の各々との関係重みの情報を関連づけたものである。本実施の形態においては、マップを構成するプロトタイプは必ずしも格子点状に配列されている必要はない(この場合、プロトタイプを特定する情報にプロトタイプのマップ上の座標情報が含まれてもよい)が、以下の説明では簡単のため、格子点状に配列されているものとして説明する。
【0061】
マップ選択部32は、各マップ候補を量子化誤差(QE)と、トポロジカル・プロダクト(以下、TPと呼ぶ)とを演算して、これらに基づき、クラスタ決定に適したマップを一つ、チャンピオンマップとして選択する。ここで、量子化誤差は、次の(4)式で演算される。
【数5】
【0062】
(4)式において、Pはマップ学習に用いる特徴量セットの数(つまり学習パターン数)であり、Ejは、j番目の特徴量セットベクトルであり、Wcは、j番目の特徴量セットベクトルに対しての勝利ノードの重みベクトルである。なお、この量子化誤差については、コホーネンらにより広く知られたものであるので、その詳細な説明を省略する。
【0063】
また、TPは、次の(5)式で演算される。
【数6】
【0064】
このTPは、入力層での空間(特徴量セットの空間)と、競合層での空間(プロトタイプの空間)との相対的位置関係が一致するほど小さい値となるもので、バウアー(Bauer)らによって、Bauer, H.U., and Pawelzik, K.R.,(1992), "Quantifying the neighborhood preservation of self-organizing feature maps." IEEE Trans. Neural Networks, 3, 570-579などの論文で提案されているものである。
【0065】
マップ選択部32は、これらQEとTPとの値を用いて、次の(6)式にて演算されるスコア値が小さいものをチャンピオンマップMAPcとして選択し、その選択結果を出力する。
【数7】
【0066】
つまり、
【数8】
である。
【0067】
また、マップ選択部32は、当初は、このチャンピオンマップの選択結果を後段のクラスタ境界決定部22には出力せず、少なくとも一度、学習条件設定部33に出力する。そして事前に設定された回数だけ繰返してチャンピオンマップの選択を行った後に、その時点での選択結果をクラスタ境界決定部35に出力する。
【0068】
学習条件設定部33は、学習条件として例えば学習用の入力データの数(学習の回数)Nと、近傍距離σ(t)と、学習係数α(t)とのセットをMセット出力する。この学習条件設定部33は、当初はこれらの値や関数(N,σ(t),α(t))をランダムなパラメータに基づいて決定するか、事前に定められたセット(プリセット)として決定する。また、この学習条件設定部33は、マップ選択部32からチャンピオンマップの選択結果の入力を受けて、当該選択結果のマップ候補に対応する学習条件のセットを取出す。そして、この取出した学習条件のセットを基準として、さらにM個の学習条件のセットを生成して設定し、SOM学習部31に出力する。
【0069】
なお、プロトタイプ追加部34は、クラスタ境界決定がされた後に、プロトタイプマップの所定の位置にプロトタイプを追加してさらに学習を行わせるものであるが、クラスタ境界決定部35の動作に関係するので、後に詳しく説明する。
【0070】
ここで、マップ生成部30における学習の動作について説明する。当初、学習条件設定部33がランダムな、又は事前に定められたパラメータを用いて学習条件のセットを複数(例えばMセット)生成して出力する。SOM学習部31は、学習条件設定部33が出力する各学習条件のセットに応じてM個のプロトタイプマップの候補(マップ候補)を生成し、マップ選択部32に出力する。マップ選択部32は、これらのマップ候補の中から、量子化誤差とTPとの双方を用いて学習状態がクラスタリングに対して好適となっているマップ(チャンピオンマップ)を選択し、その選択結果を学習条件設定部33に出力する。すると、学習条件設定部33が当該チャンピオンマップの生成に用いられた学習条件に基づき、新たな学習条件のセットを複数生成し、再度SOM学習部31に出力して複数のマップ候補を生成させる。
【0071】
このようにして、マップ候補の生成、チャンピオンマップの選択、学習条件の再設定という動作を所定の回数だけ繰返し、その結果得られたチャンピオンマップがクラスタの境界設定対象マップとしてクラスタ境界決定部35に出力される。
【0072】
[クラスタ境界決定]
クラスタ境界決定部35は、マップ生成部30から入力される境界設定対象となったマップについて、図11に示すような処理を実行する。具体的にクラスタ境界決定部22は、入力されたマップに含まれるプロトタイプの各々に固有の番号を割当てて、仮のクラスタリング結果を生成する(S31)。この番号は、所定の順序に「1」から順に「P」(プロトタイプの数をPとする)まで番号を振ったものでよい。この番号が仮のクラスタ番号となる。すなわち、当初は、各プロトタイプが互いに異なるクラスタに分類される。
【0073】
次に、クラスタ境界決定部22は、プロトタイプペアを抽出し、抽出したプロトタイプペアに係る各プロトタイプの重みベクトル間の類似度を計算する(S32)。この計算の結果は、類似度テーブルとして記憶部12に格納される。ここでプロトタイプペアというのは、各プロトタイプを順次注目プロトタイプとして選択し、注目プロトタイプと、他のプロトタイプとのすべての組み合せを採ったもの、すなわち2つのプロトタイプの組み合せ(combination)のすべてをいっている。またここで類似度とは、各重みベクトルの成分ごとの差の二乗和(距離)を用いる。
【0074】
この類似度をクラス(所定の数値範囲ごと)に分類して、各クラスごとの出現頻度の情報を生成し(図12)、この出現頻度が最大となった距離をCdとし、所定の「0」に近い微小量δを決定しておく。あるいは、出現頻度が最大となる距離より短くかつ頻度が減少から増加に転じる最大の距離をCdとしてもよい。
【0075】
次に、クラスタ番号の更新処理を開始する(S33)。このクラスタ番号更新処理は、図13に示すようなものであるが、ここでは簡単のため、クラスタの境界を決定しようとするプロトタイプマップとして3×3の格子マップがあるとして説明する。当初プロトタイプマップに対しては処理S31にて、3×3=9個のプロトタイプにそれぞれ図14(a)に示すような「1」〜「9」の固有の番号を割当ててある。
【0076】
クラスタ境界決定部35は、各プロトタイプを順次、注目プロトタイプとして選択する(S41)。そして、当該注目プロトタイプに隣接する(仮にクラスタリングされたプロトタイプマップ上で所定距離内の)プロトタイプの属しているクラスタを選択し(S42)、当該選択したクラスタに属するプロトタイプを抽出する(S43)。
【0077】
図14の例では例えば左下側の「1」を注目プロトタイプとして、それに隣接するクラスタの番号「1」,「4」,「5」,「2」のそれぞれについて、各クラスタに属するプロトタイプを選択することになる。そして、クラスタ境界決定部35は、処理S42にて選択したクラスタに属する各プロトタイプと注目プロトタイプとの測度としての相関量を次の(7)式(類似度の低下に伴い、所定微分値より急速に「0」に漸近する関数)を用いて演算し(S44)、この相関量に基づき注目プロトタイプの属するクラスタを決定する。
【数9】
【0078】
ここで、y*は、注目プロトタイプの重みベクトルであり、yiは、i番目のプロトタイプの重みベクトルである。また、χは、プロトタイプベクトルの集合であり、χ(c)は、クラスタ番号cのプロトタイプベクトルの集合である。また、αの決定に用いられるCd,δは、処理S32にて得たものであり、Lnは、自然対数を表す。すなわち、(7)式は、注目プロトタイプと、クラスタ番号cに属するプロトタイプとの距離の総和を全体平均で除したもので、注目プロトタイプと、クラスタcの相関量を表し、クラスタcの中に注目プロトタイプとの重みベクトル間の相関量の大きいプロトタイプが多いほど(7)式は、大きい値となる。
【0079】
クラスタ境界決定部35は、(7)式が最も大きい値となるクラスタの番号を、注目プロトタイプのクラスタ番号として仮決定し(S45)、この仮決定の内容を記憶する(S46)。
【0080】
ここで図14(a)に示したクラスタ「1」に分類されたプロトタイプが注目プロトタイプである場合、隣接プロトタイプとして「1」に属するプロトタイプについては、当初は他のプロトタイプがないので、演算されず、「4」に属するプロトタイプ、「5」に属するプロトタイプ、「2」に属するプロトタイプとの間の相関量が演算され、例えば「4」に属するプロトタイプとの距離が最も短い場合、注目プロトタイプの属するクラスタを「1」から「4」に変更する(図14(b))。ここで隣接するプロトタイプだけでなく、全プロトタイプとの演算を行ってもよい。そのようにすると、プロトタイプマップ上は距離があるが、重みベクトル間の距離は小さいというようなプロトタイプを同一クラスタにまとめることができる。しかしながら、このようにすると、計算時間が大きくなるので、ここでは事前にTPを用いた評価を加味してプロトタイプマップ上の距離と、重みベクトル間の距離とが大きく違わないようなマップを選択したのである。
【0081】
そしてクラスタ境界決定部35は、すべてのプロトタイプを注目プロトタイプとして選択したか否かを調べ(S47)、まだ選択されていないプロトタイプがあれば(Noならば)、処理S41に戻って処理を続ける。また、処理S47において、すべてのプロトタイプが選択されているならば(Yesならば)、クラスタ番号更新の処理を終了する。
【0082】
クラスタ境界決定部35は、図11に示す処理に戻り、このようにして仮決定した内容と、更新処理前のクラスタ番号とを比較し、クラスタ番号に変化があったか(クラスタ番号がまだ収束していないか)を調べ(S34)、変化があった場合には(Yesならば)、当該仮決定した内容を新たに仮のクラスタリング結果とし、処理S33を繰返して実行する。また、処理S34にて変化がなければ(Noならば)、すなわち収束したならば、現在のクラスタリング結果を出力する。
【0083】
[プロトタイプの追加]
本実施の形態において特徴的なことは、クラスタ境界決定部35がクラスタリング結果を直ちに最終的な結果として出力せず、少なくとも1度、マップ生成部30のプロトタイプ追加部34に戻して出力できることである。プロトタイプ追加部34は、クラスタリング結果を参照して、クラスタの境界部に新規プロトタイプを生成して、再度学習を行わせるべく、SOM学習部31に当該新規プロトタイプ追加後のプロトタイプマップを出力する。この際の学習は、微調整を目的とするものなので、例えばクラスタリング前の学習ではα(t)=0.2、σ(t)=2.0と初期設定して、700パターンを10000回学習するよう学習条件パラメータが設定されていた場合でも、新規プロトタイプ追加後の学習では、α(t)=0.002、σ(t)=1.0、パターンの繰返し入力が100といった学習条件パラメータで構わない。
【0084】
具体的に、図14(a)のように当初仮にクラスタリングされていたプロトタイプマップに対して、クラスタ境界決定部35が、クラスタ図14(c)のようなクラスタリング結果を出力したとすると、この「4」と「6」との境界に新規プロトタイプを形成する(図14(d))。ここで図14(d)では、理解のために先のクラスタリング結果を括弧つきで示したが、このようにプロトタイプを追加した後は、先のクラスタリング結果は無意味なものである。
【0085】
なお、新規プロトタイプは、必ずしもクラスタ境界に沿って全体的に追加しなければならないものではなく、その少なくとも一部に追加するものであっても構わない。この場合において、追加する部分としては、学習入力ベクトル(パターン)に対して最も距離の短い、最近接プロトタイプとなった回数(パターンの数)に基づいて決定することが好ましい。SOM学習やVQ学習といった学習方法では、U-Matrix法が利用するように、クラスタの中心部ではプロトタイプの密度が大きくなり、クラスタ境界部ではプロトタイプの密度が小さくなる。従って、学習入力パターンに対して最近接プロトタイプとなる機会が少なく、所定の閾値以下の場合、つまりプロトタイプの密度が所定のしきい値よりも低い部分は、クラスタ境界近傍のプロトタイプとみなすことができる。そこで、当該部分に新規プロトタイプを追加するようにすれば、境界全体に沿って追加することがなくなり、再度の学習や、再度のクラスタリングにかかる効率を向上できる。
【0086】
また、追加する新規プロトタイプの重みベクトルを決定するには、追加しようとする位置(例えば境界部分)近傍の既存プロトタイプの重みベクトルに対する所定の統計演算結果(例えば算術平均値)により重みベクトルを決定する。
【0087】
[分類処理の動作]
次に、この分類処理を行う制御部11の動作について説明する。分類処理に先立ち、本実施形態の画像処理装置は、分類装置を学習により獲得する。このためには、まず、学習条件設定部33が複数の学習条件パラメータのセットS1,S2,…SMを出力して、SOM学習部31において当該学習条件パラメータのセットの数に対応した(M個の)プロトタイプマップが生成される。SOM学習部31は、外部から入力される学習画像データに基づき所定の特徴量ベクトルを生成し、各プロトタイプマップの各プロトタイプと当該特徴量ベクトルの各成分との結合重みを調整する。SOM学習部31のこの動作は、コホーネンらの記述により広く知られたものである。学習画像データは、予め顔全体を含む領域を切り出した画像データのサンプルとすればよい。
【0088】
SOM学習部31により生成された複数のプロトタイプマップは、マップ選択部32に出力され、マップ選択部32が各マップに含まれるプロトタイプに関する演算から、量子化誤差(QE)及びトポロジカル・プロダクト(TP)に基づき、量子化誤差が低く、TPにより示される入力層での空間(特徴量セットの空間)と、競合層での空間(プロトタイプの空間)との相対的位置関係の一致度、すなわち、重みベクトル間の距離と、競合層での距離との一致度が高いマップを選択する。これにより、類似する画像データに反応するプロトタイプ間のマップ上の距離が小さくなる。
【0089】
そして選択されたマップの学習に用いられた学習条件パラメータのセットに基づき、学習条件設定部33が再度学習条件パラメータのセットを複数生成してSOM学習部31に出力し、複数のマップが再度生成され、その中から、QE及びTPに基づくマップ選択が行われる。こうして、学習条件パラメータが再帰的に調整され、マップの学習形成が再帰的に行われる。
【0090】
このような再帰的学習の結果得られたマップについて、クラスタ境界決定部35が、マップ上のプロトタイプを順次選択し、その選択したプロトタイプとそれに隣接するプロトタイプとの間の相関量が大きいもの同士を一つのクラスタにまとめる。つまり、プロトタイプのマップ上での隣接関係及び相関量によって各プロトタイプの属するクラスタが決定される。そして、この処理を繰返し実行して、クラスタリングの結果が収束したところで、そのクラスタリングの結果をプロトタイプ追加部34に出力する。
【0091】
プロトタイプ追加部34がクラスタの境界部分に新規プロトタイプを追加したマップを生成して、このマップをSOM学習部31に出力し、所定の学習条件を設定して再度学習を行わせる。この際は学習条件パラメータのセットは1つだけでよく、従ってマップは一つだけで構わない。そこで、この一つのマップの学習処理が完了すると、当該マップを(マップ選択部32を介することなく)そのままクラスタ境界決定部35に出力し、クラスタ境界決定部35が改めてクラスタリングの処理を行う。そしてこのクラスタリングの処理の結果としてマップが獲得される。
【0092】
こうして学習により分類装置のマップが獲得されると、分類処理が可能となる。すなわち図9に示した処理S23においては、分類対象として特定された、中心座標を中心とした所定サイズの画像データに対して特徴量ベクトルを生成し、この特徴量ベクトルに対して最も結合重みの大きいプロトタイプ(入力された画像データに反応するプロトタイプ)を見いだす。そして当該プロトタイプの属するクラスタの番号が、当該画像データの分類番号となる。これにより、互いに類似する画像データ(例えば顔の画像データ同士)に対して特定の分類番号が決定され、互いに異なる画像データ(例えば「顔」と顔に見えなくはないが、顔でないものとの画像データの各々)に対しては、異なる分類番号が決定されて出力される。
【0093】
このような分類装置によると、人間が介入してパラメータを設定することなく、自律的に学習とクラスタリングとが行われる。また、プロトタイプの数が不足していれば、自律的にクラスタ境界部分にプロトタイプが追加され、適切な数のプロトタイプでの学習、分類処理が実行される。
【0094】
[分類処理のさらなる利用の例]
なお、こうした分類処理の結果、顔画像であっても、互いに異なる分類番号が決定される場合もある。これは例えば処理対象画像データがフラッシュを用いて撮影したものであったか否か等、撮影条件に応じて分類が異なったり、また、口を開いている顔や閉じている顔といった表情に応じて分類が異なったりするためである。そこで、付与された分類番号をそのまま出力することで、撮影条件や表情等の相違をも含めた顔の分類を達成できる。
【0095】
[分類処理結果の分析]
なお、分類処理の結果、顔画像として分類されたか否かを判断するためには、ユーザが顔画像の分類番号を記憶部12に設定して格納することもできる。しかしながら、さらに所定の処理を行うことで、顔画像であるか否かを学習により自律的に判断させることとしてもよい。この場合において、顔画像によって学習して獲得した重みベクトルによる検出器(顔検出器)と、顔画像でないものによって学習して獲得した重みベクトルによる検出器(反例検出器)とを用い、これらの判断を総合して、顔検出器により顔と判断され、かつ反例検出器により「顔以外でない」と判断された場合に「顔」であると分類することとしてもよい。
【0096】
[全体的動作]
本実施の形態の画像処理装置の全体的動作は、従って次のようなものとなる。すなわち、本実施の形態の画像処理装置は、例えば写真を対象とし、その写真の中に撮影されている人物の顔を抽出する。そこで、制御部11が処理対象として入力される写真のスキャン画像データからエントロピー等の特徴量のマップを利用して抽出候補領域を画定する。この画定された抽出候補領域は、顔画像とそうでないものとを少なくとも分類するよう予め学習させておいた分類装置(これも制御部11によって実行されるソフトウエアとして実現される)によって分類される。そしてさらに、顔検出器(及び反例検出器)を含む検出器(これもまた制御部11により実行されるソフトウエアとして実現される)によって顔であるか否かが判断され、顔であると判断された場合に、当該領域(処理S23の分類処理に供された、中心座標を中心とする所定サイズの領域)の画像データが顔画像として抽出され、処理対象となった元の画像データと関連づけられて記憶部12に格納される。この結果は、外部インタフェース13を介して外部のデータベースに登録されてもよいし、表示部15に表示出力されてもよい。
【0097】
さらに、色補正といった画像処理分野への応用は、容易に想定できるが写真入力の変わりにビデオカメラからのフレームイメージを入力することによって、例えば、撮影現場の人の有無や何人の人物がそこにいるか等の情報を自動的に獲得することも可能となる。
【図面の簡単な説明】
【図1】 本発明の実施の形態に係る画像処理装置の一例を表す構成ブロック図である。
【図2】 予備抽出処理を行うプログラムの一例を表す機能ブロック図である。
【図3】 予備抽出処理の内容の一例を表すフローチャート図である。
【図4】 一部領域による走査の状態の例を表す説明図である。
【図5】 特徴量マップの模式的な例を表す説明図である。
【図6】 予備抽出処理の内容の一例を表すフローチャート図である。
【図7】 輝度ヒストグラムに対する近似関数の生成状態を表す説明図である。
【図8】 特徴量マップの高精度化処理の結果の例を表す説明図である。
【図9】 本抽出処理に対する画像データの入力を行う部分の処理の例を表すフローチャート図である。
【図10】 本抽出処理で用いられる分類装置の一例を表す機能ブロック図である。
【図11】 本抽出処理で用いられる分類装置の処理の例を表すフローチャート図である。
【図12】 分類装置の処理の例を表す説明図である。
【図13】 本抽出処理で用いられる分類装置の処理の例を表すフローチャート図である。
【図14】 分類装置の処理状態の例を表す説明図である。
【符号の説明】
11 制御部、12 記憶部、13 入出力インタフェース、14 操作部、15 表示部、21 補正部、22 特徴量マップ生成部、23 抽出候補部分画定部、30 マップ生成部、31 SOM学習部、32 マップ選択部、33学習条件設定部、34 プロトタイプ追加部、35 クラスタ境界決定部。
Claims (4)
- 処理対象となった画像データから、所望の種類の被写体が撮像された部分を抽出する画像処理装置であって、
前記処理対象となった画像データの少なくとも一部を抽出候補領域として抽出する予備抽出手段と、
前記抽出候補領域の各々について、事前に行われた学習によって獲得された分類装置を用いて所定処理を行い、前記抽出候補領域のうち、前記所望の種類の被写体が撮像されている領域を選択して出力する本抽出手段と、
を含み、
前記予備抽出手段が、前記画像データのうち予め定められたピクセルサイズの一部領域におけるエントロピーを特徴量として演算し、前記画像データ上において前記一部領域を移動させながら前記一部領域における前記特徴量の演算を前記画像データの全領域について行い、前記一部領域のうち予め定められたルールを満足する前記特徴量を有する前記一部領域を有効領域として選択し、当該有効領域に選択された前記一部領域の各ピクセルの値を当該一部領域の前記特徴量に置き換えた特徴量マップを生成し、当該特徴量マップのうち前記一部領域よりも大きいピクセルサイズの統計値演算用領域における前記特徴量の統計値を演算し、前記特徴量マップ上において前記統計値演算用領域を移動させながら前記統計値演算用領域における前記統計値の演算を特徴量マップの全領域について行い、前記統計値演算用領域のうち予め定めた閾値を越えた前記統計値を有する前記統計値演算用領域を前記抽出候補領域として抽出する、
ことを特徴とする画像処理装置。 - 請求項1に記載の画像処理装置において、
前記予備抽出手段は、処理対象となった画像データから重複を許しながら、前記一部領域を複数選択して、各一部領域についての特徴量を演算することを特徴とする画像処理装置。 - 処理対象となった画像データから、所望の種類の被写体が撮像された部分を抽出する画像処理方法であって、
前記処理対象となった画像データの少なくとも一部を抽出候補領域として抽出する予備抽出工程と、
前記抽出候補領域の各々について、事前に行われた学習によって獲得された分類装置を用いて所定処理を行い、前記抽出候補領域のうち、前記所望の種類の被写体が撮像されている領域を選択して出力する本抽出工程と、
を含み、
前記予備抽出工程において、前記画像データのうち予め定められたピクセルサイズの一部領域におけるエントロピーを特徴量として演算し、前記画像データ上において前記一部領域を移動させながら前記一部領域における前記特徴量の演算を前記画像データの全領域について行い、前記一部領域のうち予め定められたルールを満足する前記特徴量を有する前記一部領域を有効領域として選択し、当該有効領域に選択された前記一部領域の各ピクセルの値を当該一部領域の前記特徴量に置き換えた特徴量マップを生成し、当該特徴量マップのうち前記一部領域よりも大きいピクセルサイズの統計値演算用領域における前記特徴量の統計値を演算し、前記特徴量マップ上において前記統計値演算用領域を移動させながら前記統計値演算用領域における前記統計値の演算を特徴量マップの全領域について行い、前記統計値演算用領域のうち予め定めた閾値を越えた前記統計値を有する前記統計値演算用領域を前記抽出候補領域として抽出する、
ことを特徴とする画像処理方法。 - 処理対象となった画像データから、所望の種類の被写体が撮像された部分を抽出する画像処理プログラムであって、コンピュータに、
前記処理対象となった画像データの少なくとも一部を抽出候補領域として抽出する予備抽出手順と、
前記抽出候補領域の各々について、事前に行われた学習によって獲得された分類装置を 用いて所定処理を行い、前記抽出候補領域のうち、前記所望の種類の被写体が撮像されている領域を選択して出力する本抽出手順と、
を実行させ、
前記予備抽出手順においては、前記コンピュータに前記画像データのうち予め定められたピクセルサイズの一部領域におけるエントロピーを特徴量として演算させ、前記画像データ上において前記一部領域を移動させながら前記一部領域における前記特徴量の演算を前記画像データの全領域について実行させ、前記一部領域のうち予め定められたルールを満足する前記特徴量を有する前記一部領域を有効領域として選択させ、当該有効領域に選択された前記一部領域の各ピクセルの値を当該一部領域の前記特徴量に置き換えた特徴量マップを生成させ、当該特徴量マップのうち前記一部領域よりも大きいピクセルサイズの統計値演算用領域における前記特徴量の統計値を演算させ、前記特徴量マップ上において前記統計値演算用領域を移動させながら前記統計値演算用領域における前記統計値の演算を特徴量マップの全領域について実行させ、前記統計値演算用領域のうち予め定めた閾値を越えた前記統計値を有する前記統計値演算用領域を前記抽出候補領域として抽出させる、
ことを特徴とする画像処理プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002219663A JP4186541B2 (ja) | 2002-07-29 | 2002-07-29 | 画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002219663A JP4186541B2 (ja) | 2002-07-29 | 2002-07-29 | 画像処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004062505A JP2004062505A (ja) | 2004-02-26 |
JP4186541B2 true JP4186541B2 (ja) | 2008-11-26 |
Family
ID=31940506
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002219663A Expired - Fee Related JP4186541B2 (ja) | 2002-07-29 | 2002-07-29 | 画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4186541B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007052677A (ja) * | 2005-08-18 | 2007-03-01 | Kyoto Univ | Somニューラルネット学習制御装置 |
DE112008003959T5 (de) * | 2008-07-31 | 2011-06-01 | Hewlett-Packard Development Co., L.P., Houston | Wahrnehmungssegmentierung von Bildern |
JP4973633B2 (ja) | 2008-09-24 | 2012-07-11 | 株式会社日立プラントテクノロジー | ハンダボール印刷装置 |
JP6088792B2 (ja) * | 2012-10-31 | 2017-03-01 | 株式会社メガチップス | 画像検出装置及び制御プログラム並びに画像検出方法 |
JP6560480B2 (ja) * | 2017-08-14 | 2019-08-14 | 楽天株式会社 | 画像処理システム、画像処理方法、及びプログラム |
CN110717956B (zh) * | 2019-09-30 | 2023-06-20 | 重庆大学 | 一种有限角投影超像素引导的l0范数最优化重建方法 |
JP7313501B1 (ja) | 2022-03-03 | 2023-07-24 | ソフトバンク株式会社 | 画像認識装置、プログラム、画像認識方法、及び機械学習方法 |
-
2002
- 2002-07-29 JP JP2002219663A patent/JP4186541B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004062505A (ja) | 2004-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109815826B (zh) | 人脸属性模型的生成方法及装置 | |
JP6891351B2 (ja) | 多特徴検索と変形に基づく人体髪型の生成方法 | |
Zhu et al. | A three-pathway psychobiological framework of salient object detection using stereoscopic technology | |
CN108460356B (zh) | 一种基于监控系统的人脸图像自动处理系统 | |
JP4903854B2 (ja) | デジタル画像におけるオブジェクト検出方法 | |
US6697502B2 (en) | Image processing method for detecting human figures in a digital image | |
JP5227639B2 (ja) | オブジェクト検出方法、オブジェクト検出装置、およびオブジェクト検出プログラム | |
JP5214533B2 (ja) | 人物追跡方法、人物追跡装置および人物追跡プログラム | |
JP5629803B2 (ja) | 画像処理装置、撮像装置、画像処理方法 | |
JP4318465B2 (ja) | 人物検出装置および人物検出方法 | |
JP5227888B2 (ja) | 人物追跡方法、人物追跡装置および人物追跡プログラム | |
JP7054278B1 (ja) | 深層学習に基づくエッジ識別方法 | |
JP5227629B2 (ja) | オブジェクト検出方法、オブジェクト検出装置、およびオブジェクト検出プログラム | |
JP4098021B2 (ja) | シーン識別方法および装置ならびにプログラム | |
KR101687217B1 (ko) | 인터벌 타입-2 rbf 신경회로망 기반 ct 기법을 이용한 강인한 얼굴 인식 패턴 분류 방법 및 이를 실행하기 위한 시스템 | |
JP2003228706A (ja) | データ分類装置 | |
CN106157330B (zh) | 一种基于目标联合外观模型的视觉跟踪方法 | |
JP2003256443A (ja) | データ分類装置 | |
CN112329784A (zh) | 一种基于时空感知及多峰响应的相关滤波跟踪方法 | |
JP5027030B2 (ja) | オブジェクト検出方法、オブジェクト検出装置、およびオブジェクト検出プログラム | |
JP2020123244A (ja) | 情報処理装置、情報処理方法、及びプログラム | |
CN112036260A (zh) | 一种自然环境下多尺度子块聚合的表情识别方法及系统 | |
JP6448212B2 (ja) | 認識装置及び認識方法 | |
JP2005316888A (ja) | 顔認識システム | |
JP4186541B2 (ja) | 画像処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050614 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080523 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080603 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080729 |
|
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: 20080819 |
|
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: 20080901 |
|
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: 20110919 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120919 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120919 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130919 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |