(57)【要約】【課題】比較的簡易な動作により人物認識を行いつつ、処理速度を高め、またその精度を向上させることのできる画像処理装置及びプログラムを提供する。【解決手段】処理の対象となる画像データの集合に含まれる、各画像データから顔画像部分を検出し、当該検出した顔画像部分の顔の向きを推定する。推定された顔の向きが、予め定められた範囲にある顔画像部分に係るデータを、クラスタリング対象として選択し、選択されたクラスタリング対象に含まれる顔画像部分に係るデータに対して、所定のクラスタリング処理を実行し、クラスタリング処理の結果、得られたクラスタの各々に対し、識別情報の入力を受け入れる画像処理装置である。【選択図】図１
2014067301.tif 000002
【特許請求の範囲】
【請求項１】
処理の対象となる画像データの集合に含まれる、各画像データから顔画像部分を検出し、当該検出した顔画像部分の顔の向きの推定結果を出力する手段と、
前記推定された顔の向きが、予め定められた範囲にある顔画像部分に係るデータを、クラスタリング対象として選択する手段と、
前記選択されたクラスタリング対象に含まれる顔画像部分に係るデータに対して、所定のクラスタリング処理を実行する手段と、
前記クラスタリング処理の結果、得られたクラスタの各々に対し、識別情報の入力を受け入れる手段と、
前記クラスタの各々に含まれる顔画像部分に係るデータのうちから、予め定めた条件に基づいてキーとなる顔画像部分に係るデータをそれぞれ決定し、当該キーとなるデータと対応するクラスタについての識別情報とを関連付けて記憶する手段と、
を含み、
認識処理の対象となる画像データに含まれる顔画像に係るデータと、前記キーとなったデータとを用いて、前記認識処理の対象となる画像データに識別情報を設定する認識処理に供する画像処理装置。
【請求項２】
請求項１記載の画像処理装置であって、
前記認識処理の対象となった顔画像に係るデータと、クラスタごとのキーとなったデータとを比較する手段であって、前記認識処理の対象となった顔画像に係るデータと、クラスタごとのキーとなったデータとの一致度を、各データ間の所定の比較条件に基づいて演算される類似度と、キーとなったデータにおける顔画像部分の向きに関係して定められる重みとを用いて演算する画像処理装置。
【請求項３】
コンピュータを、
処理の対象となる画像データの集合に含まれる、各画像データから顔画像部分を検出し、当該検出した顔画像部分の顔の向きの推定結果を出力する手段と、
前記推定された顔の向きが、予め定められた範囲にある顔画像部分に係るデータを、クラスタリング対象として選択する手段と、
前記選択されたクラスタリング対象に含まれる顔画像部分に係るデータに対して、所定のクラスタリング処理を実行する手段と、
前記クラスタリング処理の結果、得られたクラスタの各々に対し、識別情報の入力を受け入れる手段と、
前記クラスタの各々に含まれる顔画像部分に係るデータのうちから、予め定めた条件に基づいてキーとなる顔画像部分に係るデータをそれぞれ決定し、当該キーとなるデータと対応するクラスタについての識別情報とを関連付けて記憶する手段と、
として機能させ、
認識処理の対象となる画像データに含まれる顔画像に係るデータと、前記キーとなったデータとを用いて、前記認識処理の対象となる画像データに識別情報を設定する認識処理に供するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、人物の顔に関する画像処理を実行する画像処理装置及びプログラムに関する。
【背景技術】
【０００２】
近年では、顔画像を認識し、当該顔画像に係る人物名を推定する画像処理装置が開発されている。こうした顔画像の認識は、例えば犯罪の抑止や、個人認識による機器のユーザビリティ改善等に供されているのが現状である。
【０００３】
なお、特許文献１には、顔の向きに基づいて顔を分類し、顔の向き別に重み係数を演算して、認識処理に供する例が開示されている（００８０段落）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１-２２１７９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の顔認識処理においては、顔の向きの重要性にも関わらず、認識処理に不向きな方向を向いた顔画像までも認識処理のキーとして利用することとしており、その際の精度向上のために負荷の高い処理が要求されているのが現状である。
【０００６】
本発明は、上記実情に鑑みて為されたもので、比較的簡易な動作により人物認識を行いつつ、処理速度を高めつつ、その精度を向上させることのできる画像処理装置及びプログラムを提供することを、その目的の一つとする。
【課題を解決するための手段】
【０００７】
上記従来例の問題点を解決するための本発明は、画像処理装置であって、処理の対象となる画像データの集合に含まれる、各画像データから顔画像部分を検出し、当該検出した顔画像部分の顔の向きの推定結果を出力する手段と、前記推定された顔の向きが、予め定められた範囲にある顔画像部分に係るデータを、クラスタリング対象として選択する手段と、前記選択されたクラスタリング対象に含まれる顔画像部分に係るデータに対して、所定のクラスタリング処理を実行する手段と、前記クラスタリング処理の結果、得られたクラスタの各々に対し、識別情報の入力を受け入れる手段と、前記クラスタの各々に含まれる顔画像部分に係るデータのうちから、予め定めた条件に基づいてキーとなる顔画像部分に係るデータをそれぞれ決定し、当該キーとなるデータと対応するクラスタについての識別情報とを関連付けて記憶する手段と、を含み、認識処理の対象となる画像データに含まれる顔画像に係るデータと、前記キーとなったデータとを用いて、前記認識処理の対象となる画像データに識別情報を設定する認識処理に供することとしたものである。
【０００８】
ここで前記認識処理の対象となった顔画像に係るデータと、クラスタごとのキーとなったデータとを比較する手段であって、前記認識処理の対象となった顔画像に係るデータと、クラスタごとのキーとなったデータとの一致度を、各データ間の所定の比較条件に基づいて演算される類似度と、キーとなったデータにおける顔画像部分の向きに関係して定められる重みとを用いて演算することとしてもよい。
【０００９】
また本発明の一態様に係るプログラムは、コンピュータを、処理の対象となる画像データの集合に含まれる、各画像データから顔画像部分を検出し、当該検出した顔画像部分の顔の向きの推定結果を出力する手段と、前記推定された顔の向きが、予め定められた範囲にある顔画像部分に係るデータを、クラスタリング対象として選択する手段と、前記選択されたクラスタリング対象に含まれる顔画像部分に係るデータに対して、所定のクラスタリング処理を実行する手段と、前記クラスタリング処理の結果、得られたクラスタの各々に対し、識別情報の入力を受け入れる手段と、前記クラスタの各々に含まれる顔画像部分に係るデータのうちから、予め定めた条件に基づいてキーとなる顔画像部分に係るデータをそれぞれ決定し、当該キーとなるデータと対応するクラスタについての識別情報とを関連付けて記憶する手段と、として機能させ、認識処理の対象となる画像データに含まれる顔画像に係るデータと、前記キーとなったデータとを用いて、前記認識処理の対象となる画像データに識別情報を設定する認識処理に供することとしたものである。
【発明の効果】
【００１０】
本発明では予め定められた範囲の向きを向いている人物の顔画像を選択的に用いてクラスタリングを行い、比較の対象（キー）となる顔画像を定めることで、比較的簡易な動作により人物認識を行いつつ、処理速度を高め、またその精度を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係る画像処理装置の構成例を表すブロック図である。
【図２】本発明の実施の形態に係る画像処理装置が生成する顔データベースの例を表す説明図である。
【図３】本発明の実施の形態に係る画像処理装置の例を表す機能ブロック図である。
【図４】本発明の実施の形態に係る画像処理装置が顔データベースの生成中に記録するデータの内容例を表す説明図である。
【図５】本発明の実施の形態に係る画像処理装置の動作例を表すフローチャート図である。
【発明を実施するための形態】
【００１２】
本発明の実施の形態について図面を参照しながら説明する。本実施の形態の画像処理装置１は、図１に例示するように、制御部１１、記憶部１２、操作部１３、表示部１４、通信部１５、及び入出力インタフェース１６を含んで構成されている。ここで制御部１１は、ＣＰＵなどのプログラム制御デバイスであり、記憶部１２に格納されたプログラムに従って動作する。
【００１３】
具体的に本実施の形態では制御部１１は、処理の対象となる画像データを、通信部１５または入出力インタフェース１６を介して受け入れて、記憶部１２に蓄積して格納する。また、この制御部１１は、この処理の対象となった画像データの集合に含まれる、各画像データから顔画像部分を検出し、当該検出した顔画像部分の顔の向きの推定結果を出力する処理を実行する。
【００１４】
制御部１１はさらに、ここで推定された顔の向きが、予め定められた範囲にある顔画像部分を抽出し、顔画像データ集合を生成する。そして制御部１１は、ここで生成した顔画像データ集合に含まれる顔画像部分に係るデータに対して、所定のクラスタリング処理を実行する。
【００１５】
制御部１１は、このクラスタリング処理の結果、得られたクラスタの各々に対し、識別情報の入力を受け入れ、また、各クラスタに含まれる顔画像部分に係るデータのうちから、予め定めた条件に基づいてキーとなるデータをそれぞれ決定する。制御部１１は、当該キーとなるデータと、対応するクラスタについて入力された識別情報とを関連付けて、顔データベースとして記憶部１２に格納する。制御部１１は、こうして生成した顔データベースを利用し、キーとなった顔画像部分に係るデータと、認識処理の対象となる画像データに含まれる顔画像に係るデータとを比較して、認識処理の対象となった画像データに識別情報を設定する認識処理に供する。この制御部１１の処理については後に詳しく述べる。
【００１６】
記憶部１２は、制御部１１によって実行されるプログラムを格納している。このプログラムは、ＤＶＤ-ＲＯＭ（Digital Versatile Disc Read Only Memory）等のコンピュータ可読な記録媒体に格納されて提供され、この記憶部１２に格納されたものであってもよい。また、このプログラムは、ネットワーク等を介して配信され、この記憶部１２に格納されたものであってもよい。
【００１７】
本実施の形態ではこの記憶部１２には、画像データが蓄積して格納される。また、この記憶部１２には、図２に例示するように、キーとなった顔画像部分に係るデータ（例えば当該顔画像部分から演算される特徴量）Ｆｋと識別情報（ＩＤ）とを関連付けたエントリーを含む顔データベースが格納される。
【００１８】
操作部１３は、例えばマウスやキーボード等であってもよいし、赤外線入力インタフェースであってもよい。本実施の形態のある例では、この操作部１３は、赤外線入力インタフェースであり、利用者の指示操作を受けたリモートコントローラが発信する、利用者の指示操作の内容を表す情報を受信する。そしてこの操作部１３は、当該受信した指示操作の内容を表す情報を制御部１１に出力する。
【００１９】
表示部１４は、制御部１１から入力される指示に従い、外部のディスプレイや家庭用テレビジョン装置に画像を出力するインタフェースである。通信部１５は、例えばネットワークインタフェースであり、有線または無線にてネットワークに接続され、ネットワークを介して受信される情報を制御部１１に出力する。またこの通信部１５は、ネットワークを介して送信するべき情報の入力を制御部１１から受けて、当該情報を、ネットワークを介して送信する。
【００２０】
入出力インタフェース１６は、例えばＳＤカードスロットやＵＳＢ（Universal Serial Bus）インタフェース等である。この入出力インタフェース１６は、例えば制御部１１から入力される指示に従い、ここへ接続されたＳＤカードや、ＵＳＢメモリ、ＵＳＢハードディスクドライブ等から画像データを読み出して制御部１１に出力する。また制御部１１は、通信部１５が、有線または無線のネットワークを介して受信した画像データを、処理の対象として受け入れることとしてもよい。
【００２１】
次に制御部１１の動作について説明する。本実施の形態の制御部１１は、機能的には、図３に例示するように、予備処理部２０と、認識処理部３０とを含んで構成される。ここで予備処理部２０は、顔画像処理部２１と、データ抽出部２２と、クラスタリング処理部２３と、識別情報取得部２４と、キー抽出部２５とを含む。
【００２２】
顔画像処理部２１は、与えられた画像データに含まれる顔画像部分を特定する処理と、特定した顔画像部分に含まれる顔の向きを推定する処理とを行う。この顔画像処理部２１の実行する処理は広く知られたものであるのでここでの詳しい説明を省略するが、ここでは顔画像処理部２１は、処理の対象となった画像データから抽出した顔画像部分の部分画像データと、当該部分画像データに含まれる顔の特徴量（顔画像部分に係るデータに相当する）とを出力するものとする。本実施の形態の顔画像処理部２１は、画像データから複数の顔画像部分が抽出される場合は、各顔画像部分について、この部分画像データと特徴量のデータとを出力する。なお、特徴量のデータは、目と目の間の距離等、予め定めた顔認識上の特徴を表す数値を列挙したベクトル情報である。
【００２３】
この顔画像処理部２１は、抽出した顔画像部分の部分画像データに含まれる顔の向きを推定する処理を行い、その推定の結果を出力する。この顔画像処理部２１により推定される顔の向きは正中線（冠状面と矢状面との交線）を法線とする横断面内の角度であるものとする。具体的に顔画像処理部２１は、上記横断面内で上記正中線が通る点を中心とし、画像データの正面方向を０°の方向としたときの顔の向きをθとする。なお、画像データに撮像された人物が（当該人物からみて）左に向く方向をθの負の方向の角度、（当該人物からみて）右に向く方向をθの正の方向の角度などと定めておく。この顔の向きの角度は、一例としては、特定された顔画像部分全体に対し、当該顔画像内で認識される鼻の位置に基づいて決定できる。
【００２４】
顔画像処理部２１は、与えられた画像データから特定された顔画像部分ごとに、当該特定した顔画像部分の部分画像データと、特徴量のデータと、顔の向きを表す角度のデータとを出力することとなる。
【００２５】
データ抽出部２２は、顔画像処理部２１が画像データごとに出力する顔画像部分の部分画像データと、当該顔画像部分に係る特徴量のデータと、顔の向きを表す角度のデータとの入力を受けて、これらを互いに関連付けたエントリーを記憶部１２に蓄積して格納する（図４）。データ抽出部２２は、この蓄積したエントリーのうち、顔画像処理部２１により推定された顔の向きが、予め定められた範囲（θlth＜θ＜θhth）にあるエントリーをクラスタリング対象エントリーとして選択し、当該クラスタリング対象エントリーのそれぞれを特定する情報を、クラスタリング処理部２３に出力する。
【００２６】
クラスタリング処理部２３は、記憶部１２に格納されたエントリーのうち、データ抽出部２２が出力する情報で特定されるクラスタリング対象エントリーに含まれる特徴量をクラスタリングする。このクラスタリングの方法はどのような方法であってもよいが、一例としてはk-mean法等の広く知られた方法を用いることができる。また、特徴量の次数（特徴量ベクトルの次元数）を主成分分析等の方法で小さくしたうえでk-mean法等のクラスタリング処理を行っても構わない。
【００２７】
クラスタリング処理部２３は、クラスタリング処理によりクラスタへ分類した各特徴量について、分類結果であるクラスタを特定する情報（クラスタに割り当てたクラスタごとに固有の番号でよい）を、対応する特徴量を含んだクラスタリング対象エントリーに関連付けて記録する。
【００２８】
識別情報取得部２４は、クラスタリング処理部２３によるクラスタリング処理が終了すると、各クラスタを特定するクラスタ特定情報に関連付けられたクラスタリング対象エントリーに含まれる、部分画像データを表示部１４に出力して表示させ、当該表示した部分画像データに係る識別情報の入力を求める。ここで識別情報は例えば当該表示した部分画像データに撮像されている人物の名前である。この際、識別情報取得部２４は、名前の入力を受け入れるほか、「名前をつけない」（無視する）等の操作を受け入れることとしてもよい。
【００２９】
キー抽出部２５は、識別情報取得部２４にて名前（識別情報）が入力された（無視されていない）部分画像データと同じクラスタ特定情報に関連付けられた特徴量のデータを、キーとなるデータとして抽出する。このキー抽出部２５は、例えば識別情報取得部２４にて名前が入力された部分画像データと同じクラスタ特定情報に関連付けられたクラスタリング対象エントリーのうち、特徴量のデータがクラスタの重心に近いものから順に予め定めた個数だけの特徴量のデータをキーとなるデータとして、これらの特徴量のデータ（Ｆｋ）と、各特徴量に関連して記憶部１２に格納されている顔の向きを表す角度のデータと、入力された識別情報（名前：ＩＤ）とを関連付けて、顔データベースとして、記憶部１２に格納する。
【００３０】
なお、顔データベースに格納するキーとなるデータは、特徴量のデータがクラスタの重心に近いものから順に予め定めた個数だけの特徴量の各々に関連付けられた顔画像部分の画像データを含んでもよい。このようにキーとなるデータとしてどのようなデータを選択するかは、次に述べる認識処理部３０によって決定すればよい。認識処理部３０は、顔画像処理部３１と、データ比較部３２と、重み演算部３３とを含んで構成される。
【００３１】
認識処理部３０の顔画像処理部３１は、処理の対象となった画像データの入力を受け入れる。そして当該画像データから顔画像部分を抽出する。顔画像処理部３１は、顔画像部分が抽出された場合は、当該顔画像部分（複数ある場合はその各々）について、予め定められた特徴量を生成する。ここで特徴量のデータは、予備処理部２０の顔画像処理部２１と同じように、目と目の間の距離等、予め定めた顔認識上の特徴を表す数値を列挙したベクトル情報である。この顔画像処理部３１は、実質的には、予備処理部２０の顔画像処理部２１と同じプログラムモジュールによって実現されてもよい。
【００３２】
データ比較部３２は、記憶部１２に格納された顔データベースに格納された、識別情報を順次選択する。データ比較部３２は選択した識別情報に関連する特徴量を読み出して、当該読み出した特徴量に関連付けて顔データベースに格納されている顔の向きを表す角度のデータを重み演算部３３に出力する。データ比較部３２は、重み演算部３３から重みのデータを受け入れると、読み出した特徴量と、顔画像処理部３１が出力する特徴量の類似度を表す情報を生成する。この類似度を表す情報の生成処理も、顔画像の特徴量の比較処理として広く知られたものを採用できるので、ここでの詳細な説明を省略する。
【００３３】
データ比較部３２は、一つの識別情報に関連付けられた特徴量のデータがｍ個である場合は、各特徴量のデータについて類似度Ｒ1，Ｒ2，…Ｒmを演算する。また、データ比較部３２は、これらｍ個の特徴量の各々に関連付けられた顔の向きを表す角度のデータを用いて、重み演算部３３からｍ個の重みのデータを取得する。データ比較部３２は、上記生成したｍ個の特徴量の各々との類似度と、ｍ個の特徴量の各々について重み演算部３３が出力する重みのデータＷ1，Ｗ2，…Ｗmとの積（Ｒi×Ｗi）を用いて、一致度Ｍ（％）を、Ｍ＝（Σ（Ｒi×Ｗi））／ΣＷi（Σは、ｉが１からｍまでの合計を算出することを意味する）と演算する。
【００３４】
例えばｍ＝２であり、２つの特徴量があるとき、一方の特徴量との類似度が「９５」であり、この特徴量に関連付けられた顔の向きを表す角度のデータに基づき演算された重みのデータが「０．９」であるとする。また、他方の特徴量との類似度が「７０」であり、この特徴量に関連付けられた顔の向きを表す角度のデータに基づき演算された重みのデータが「０．３」であるとする。
【００３５】
するとこれらから演算される一致度Ｍは、（８５．５＋２１）／１．２＝８８．７５となる。つまり、各類似度が最終的に演算される一致度に寄与する程度は、各類似度の演算のもととなった特徴量に関連する重みに依存して制御される。
【００３６】
データ比較部３２は、顔データベースに格納されている各識別情報について、上記の処理を行って一致度Ｍを算出する。そして算出した一致度のうち、最大の一致度を見出し、当該最大の一致度についての識別情報を出力する。なお、このデータ比較部３２は、見出した最大の一致度の値が予め定めたしきい値より小さい場合は、一致する識別情報がなかった旨の情報を表示部１４に表示してもよい。
【００３７】
このようにデータ比較部３２は、認識処理の対象となった顔画像の画像データから求められた特徴量と、予備処理部２０において過去にクラスタごとのキーとして抽出されたデータ（ここでは特徴量Ｆｋ）との一致度を演算する。
【００３８】
重み演算部３３は、顔の向きを表す角度のデータの入力を受けて、この顔の向きを表す角度のデータに応じて予め定めた重みを表すデータを出力する。一例としてこの重み演算部３３は、顔の向きが正面であるときの角度をθ＝０として、θ＝０のとき「１」、０＜｜θ｜≦３０のとき「0.9」、３０＜｜θ｜≦４５のとき「0.5」、４５＜｜θ｜≦６０のとき「0.3」、６０＜｜θ｜＜９０のとき「0.1」、｜θ｜≧９０のとき「０」の重みのデータを出力する。またこの重み演算部３３は、θに関する予め定めた関数値によって重みを演算し、重みのデータとして出力することとしてもよい。
【００３９】
本実施の形態の画像処理装置１は、以上の構成を備えてなり、次のように動作する。画像処理装置１は、利用者から人物が撮像されている写真や風景の写真など、種々の写真の画像データの取り込み指示を受け入れる。そして画像処理装置１は、当該指示に従い、写真の画像データを取り込んで記憶部１２に蓄積して格納していく。
【００４０】
画像処理装置１には、顔部分を識別するためのプログラムモジュールがインストールされて実行可能となっており、画像処理装置１は、当該プログラムモジュールを用いて、蓄積している画像データのうち、過去に処理していないものを選択して、顔部分を識別する処理を行う。
【００４１】
画像処理装置１は、図５に示すように、選択した画像データを、与えられた画像データとして、この画像データのうちから顔画像部分を特定する処理を実行する（Ｓ１）。画像処理装置１はさらに特定した顔画像部分に含まれる顔の向きのデータθを推定する（Ｓ２）。このθは、既に述べたように、顔が正面向きであるときをθ＝０とし、人体の横断面に平行な面内の顔の向きを表す。つまり、真横を向いたときの角度がθ＝９０度となる。さらに画像処理装置１は、特定した顔画像部分に含まれる顔の特徴量のデータを生成する（Ｓ３）。
【００４２】
なお、画像処理装置１は、画像データから顔画像部分が特定できなければ、当該画像データについてはそれ以上の処理を行わない。
【００４３】
画像処理装置１は、顔画像部分が特定できた画像データごとに、顔画像部分の部分画像データと、当該顔画像部分に係る特徴量のデータと、顔の向きを表す角度のデータとを互いに関連付けたエントリーを記憶部１２に蓄積して格納する（Ｓ４）。そして画像処理装置１はさらに、この蓄積したエントリーのうち、顔の向きを表す角度のデータθが、予め定められた範囲（θlth＜θ＜θhth）にあるエントリーをクラスタリング対象エントリーとして選択する（Ｓ５）。ここで定めた範囲は、正面向きを表す「０」を含む範囲とする。例えばθlth＝−３０度、θhth＝３０度などとする。
【００４４】
画像処理装置１は、クラスタリング対象エントリーに含まれる特徴量をクラスタリングする（Ｓ６）。画像処理装置１は、クラスタリングの結果として得られたクラスタを順次選択し、選択したクラスタに分類した各特徴量に関連付けられた部分画像データ（顔画像部分）を表示部１４に出力して表示させ、当該クラスタに分類された画像の識別情報の入力を求める（Ｓ７）。例えば、当該表示した顔画像部分に含まれた人物の名前の入力を求める。
【００４５】
ここで名前等の識別情報が入力されると、画像処理装置１は、当該選択したクラスタに分類された特徴量を含んだエントリーから、顔の認識処理を実行するプログラムモジュールが顔画像の比較のために使用するデータを、キーとなるデータとして抽出する（Ｓ８）。具体的にはこのキーとなるデータは特徴量のデータＦｋと、顔の向きを表す角度のデータとである。また別の例では、エントリーに含まれるデータのすべてがキーとなるデータとして抽出されてもよい。
【００４６】
このキーとなるデータ（Ｆｋ）に対して、入力された名前等の識別情報を関連付け、顔データベースとして記憶部１２に格納する（Ｓ９）。この顔データベースは、後に、撮像されている人物の名前を特定する処理（認識処理）に供される。一例として、撮像されている人物の顔画像を抽出し、当該抽出した顔画像の特徴量と、顔データベースに格納されているキーとなるデータとを比較して予め定めた演算方法で演算される一致度を算出し、最も一致する特徴量に対応するキーとなるデータを見出し、当該見出したデータに関連付けられた識別情報を参照して、撮像されている人物が当該識別情報で識別される人物であると設定する。
【００４７】
さらに予備処理部２０のデータ抽出部２２は次の処理を行ってもよい。すなわち、既に述べたように、顔画像処理部２１が画像データごとに出力する顔画像部分の部分画像データと、当該顔画像部分に係る特徴量のデータと、顔の向きを表す角度のデータとの入力を受けて、これらを互いに関連付けたエントリーを記憶部１２に蓄積して格納する。データ抽出部２２は、この蓄積したエントリーのうち、顔画像処理部２１により推定された顔の向きが、予め定められた範囲（θlth＜θ＜θhth）にあるエントリーをクラスタリング対象エントリーとして選択する。
【００４８】
そしてデータ抽出部２２は、選択したクラスタリング対象エントリーに含まれる特徴量を認識処理部３０のデータ比較部３２に出力する。この場合データ比較部３２は、データ抽出部２２から入力される特徴量と、予備処理部２０において過去にクラスタごとのキーとして抽出され、顔データベースに格納されている特徴量との一致度を演算する。具体的にはデータ比較部３２は、顔データベースに格納されている識別情報を逐次的に選択する。そしてデータ比較部３２は、選択した識別情報に関連付けられた各特徴量（ｍ個とする）のデータについて類似度Ｒ1，Ｒ2，…Ｒmを演算する。また、データ比較部３２は、これらｍ個の特徴量のデータに関連付けて顔データベースに格納されている顔の向きを表す角度のデータを重み演算部３３に出力する。
【００４９】
データ比較部３２は、演算した各特徴量と入力された特徴量との間の類似度Ｒ1，Ｒ2，…Ｒmと、ｍ個の特徴量の各々について重み演算部３３が出力する重みのデータＷ1，Ｗ2，…Ｗmとの積（Ｒi×Ｗi）を用いて、一致度Ｍ（％）を、Ｍ＝（Σ（Ｒi×Ｗi））／ΣＷi（Σは、ｉが１からｍまでの合計を算出することを意味する）と演算して出力する。
【００５０】
データ抽出部２２は、データ比較部３２から、顔データベースに格納されている識別情報ごとに出力される一致度Ｍを取得して、いずれかの識別情報に関する特徴量を用いて演算された一致度Ｍが予め定めたしきい値を超えたか否かを判断する。そして予め定めたしきい値を超える一致度Ｍが見出されると、選択しているエントリーをクラスタリング対象エントリーから取り除く。
【００５１】
この処理はつまり、既に識別情報が設定されている特徴量を持つ顔部分画像の画像データについては、クラスタリングと識別情報の入力処理とを行わないよう制御することに相当する。
【００５２】
以上、ここに開示した本実施の形態では、顔の向きが予め定めた範囲にない顔画像部分については認識処理のキーの生成に寄与しないよう制御される。そのため認識処理に不向きな方向を向いた顔画像部分が認識処理のキーとしてされないこととなり、比較的簡易な動作により人物認識を行いつつ、認識の精度を向上させることができる。また処理が比較的簡易なものであるので、処理速度を高めることにも寄与する。
【００５３】
さらに、ここまでの説明で、クラスタリング対象エントリーとして選択する条件である、顔の向きの範囲（θlth＜θ＜θhth）を複数の区間に分け、各区間について、その区間に、推定された顔の向きがあるエントリーを、それぞれクラスタリング対象エントリーとして選択することとしてもよい。
【００５４】
この場合も画像処理装置１は、選択したクラスタリング対象エントリーに含まれる特徴量をクラスタリングする。そしてクラスタリングの結果として得られたクラスタを順次選択し、選択したクラスタに分類した各特徴量に関連付けられた部分画像データ（顔画像部分）を表示部１４に出力して表示させて、そのクラスタにされた画像の識別情報の入力を求める。
【００５５】
ここで識別情報（名前等）が入力されると、画像処理装置１は、当該選択したクラスタに分類された特徴量を含んだエントリーから、顔の認識処理を実行するプログラムモジュールが顔画像の比較のために使用するデータを、キーとなるデータとして抽出する。
【００５６】
この例では、共通の識別情報に関連付けられるべきクラスタが複数、傾きごとに存在することとなる。そして各クラスタから認識処理に使われる特徴量のデータ等が抽出されるが、この場合、当該キーとなる特徴量と、認識処理の対象となった画像から得た特徴量とを比較する際には、キーとなる特徴量の抽出元であるクラスタの傾きの区間に応じて比較の演算に重みをつけてもよい。例えば正面向きからの傾きがより大きい区間に対応するクラスタほど、比較結果が否定的となるように（一致度の値が小さくなるように）調整された重みとする。
【００５７】
またこの認識処理の演算で用いる重みは、認識の処理の対象となった画像に含まれる顔の角度と、キーとなる特徴量の抽出元であるクラスタの傾きの区間（における所定の代表値（例えば区間の中央値））との差が大きいほど、比較結果が否定的となるように（一致度の値が小さくなるように）調整された重みとしてもよい。例えば、認識の処理の対象となった画像に含まれる顔の角度が４５度であるとき、キーとなる特徴量の抽出元であるクラスタの傾きの区間の中央値が４５度であるクラスタほど、比較結果が肯定的となるような重みが設定され、キーとなる特徴量の抽出元であるクラスタの傾きの区間の中央値が０度（正面向き）であるクラスタと、９０度（横向き）であるクラスタとについては、同程度の比較結果となるよう、同じ重みが設定されることとしてもよい。
【符号の説明】
【００５８】
１  画像処理装置、１１  制御部、１２  記憶部、１３  操作部、１４  表示部、１５  通信部、１６  入出力インタフェース、２０  予備処理部、２１，３１  顔画像処理部、２２  データ抽出部、２３  クラスタリング処理部、２４  識別情報取得部、２５  キー抽出部、３０  認識処理部、３２  データ比較部、３３  重み演算部。
【図１】
2014067301.tif 000003
【図２】
2014067301.tif 000004
【図３】
2014067301.tif 000005
【図４】
2014067301.tif 000006
【図５】
2014067301.tif 000007