(57)【要約】【課題】  オブジェクトの類似判定に用いる辞書による判定精度を向上する。【解決手段】  画像データ中のオブジェクトを検出して管理する画像処理方法であって、画像データを入力する入力工程と、入力工程において入力した画像データに基づいて、オブジェクトを検出する検出工程と、オブジェクトから特徴量を抽出する特徴量抽出工程と、特徴量抽出工程において抽出した特徴量を辞書に登録する辞書登録工程と、辞書を参照して、該辞書に登録されている特徴量と特徴量抽出工程で抽出した特徴量との類似度を判定する類似判定工程と、を備え、辞書に登録する特徴量のうち所定の評価基準を満足しない特徴量は、類似判定工程における判定において使用をしない。【選択図】  図１０
2014016823.tif 000002
【特許請求の範囲】
【請求項１】
画像データ中のオブジェクトを検出して管理する画像処理装置であって、
画像データを入力する入力手段と、
前記入力手段から入力した画像データに基づいて、オブジェクトを検出する検出手段と、
前記オブジェクトから特徴量を抽出する特徴量抽出手段と、
前記特徴量抽出手段より抽出した特徴量を辞書に登録する辞書登録手段と、
前記辞書を参照して、該辞書に登録されている特徴量と前記特徴量抽出手段で抽出した特徴量との類似度を判定する類似判定手段とを備え、
前記辞書に登録する特徴量のうち、所定の評価基準を満足しない特徴量は、前記類似判定手段による判定において使用をしない
ことを特徴とする画像処理装置。
【請求項２】
前記類似判定手段による判定において使用をしない特徴量にフラグを設定することで、該特徴量の前記類似判定手段による判定での使用を禁止する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記類似判定手段による判定において使用をしない特徴量を前記辞書から削除することにより、該特徴量の前記類似判定手段による判定での使用を禁止する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記辞書登録手段は、前記特徴量をオブジェクト毎に分類して登録し、前記オブジェクトのグループと前記オブジェクトに対応する領域を含む画像データとを関連付けて記憶している
ことを特徴とする請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
前記辞書登録手段は、前記類似判定手段の判定の結果に基づいて、前記特徴量抽出手段で抽出した特徴量を前記辞書にオブジェクト毎に分類して登録する
ことを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記所定の評価基準は、前記辞書に登録されている前記オブジェクトのグループ間で共有する画像データの数が閾値以上か否かであり、前記閾値未満であるグループに属する特徴量については、前記類似判定手段による判定で使用しない
ことを特徴とする請求項４又は５に記載の画像処理装置。
【請求項７】
前記所定の評価基準は、前記辞書に登録されているオブジェクトの画像の先鋭度が閾値以上であるか否かであり、前記閾値未満である場合、前記特徴量は前記類似判定手段による判定において使用をしない
ことを特徴とする請求項１〜６のいずれか１項に記載の画像処理装置。
【請求項８】
前記辞書に登録する特徴量のうち所定の評価基準を満足しない特徴量を前記類似判定手段による判定において使用をしないように前記特徴量の使用禁止を設定する禁止手段と、
前記禁止手段による禁止の実行のタイミングを制御する制御手段と、を更に備える
ことを特徴とする請求項１〜７のいずれか１項に記載の画像処理装置。
【請求項９】
画像データ中のオブジェクトを検出して管理する画像処理方法であって、
画像データを入力する入力工程と、
前記入力工程において入力した画像データに基づいて、オブジェクトを検出する検出工程と、
前記オブジェクトから特徴量を抽出する特徴量抽出工程と、
前記特徴量抽出工程において抽出した特徴量を辞書に登録する辞書登録工程と、
前記辞書を参照して、該辞書に登録されている特徴量と前記特徴量抽出工程で抽出した特徴量との類似度を判定する類似判定工程とを備え、
前記辞書に登録する特徴量のうち所定の評価基準を満足しない特徴量は、前記類似判定工程における判定において使用をしない
ことを特徴とする画像処理方法。
【請求項１０】
請求項１〜８のいずれか一項に記載の画像処理装置の各手段としてコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データ中のオブジェクトを検出して管理する画像処理技術に関するものである。
【背景技術】
【０００２】
デジタルスチールカメラ（以下「ＤＳＣ」とも記載）の普及に伴い、昨今では時に数千枚から数万枚といった多くの画像データをハンドリングする必要がある。ハンドリングする方法として、特に、重要な技術の１つとして、人物の顔を手掛かりに画像をハンドリングすることによって個人認識を実現するものがある。具体的な例としては、予め入力画像に含まれる顔領域を検出し、検出された顔画像を解析して得られる情報（以下、「特徴量」と記載する）を抽出し、抽出された特徴量を登録する。尚、登録される特徴量は、解析する画像の数や、画像に含まれる顔の数に応じて増えていく。以下、複数の特徴量を登録したものを、「辞書」又は「顔辞書」と呼ぶ。そして、得られた顔辞書と、新たに入力された画像を解析して得られる特徴量とを照合することによって、個人認識が可能となる。  
【０００３】
特許文献１は、画像から新たに検知された顔が顔辞書に登録するに値するかどうかを評価・判定する構成が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第３４６９０３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、顔辞書に登録する顔か否かをどのように選別したとしても未判定が生じてしまうことがある。尚、ここでいう未判定とは、既に認識された既存の個人があるにも関わらず、別人として新規の個人を認識結果として生成することを指す。
【０００６】
以下に、未判定の例を具体的に述べる。多量の画像を走査すると、多量の画像の特徴量が辞書に登録される。その際、家族であっても、例外的な写り方をした結果、例外的な特徴量が辞書登録されてしまう場合もある。このような場合、同一人物であるにも関わらず複数の個人が識別結果として多数生成されてしまう。
【０００７】
また、特許文献１では、目的とする被写体以外の被写体（例えば、ユーザとは無関係の通行人）が顔辞書に登録されてしまうことがある。以下、このように目的の被写体以外の被写体が識別されてしまうことを「誤判定」という。
【０００８】
こうした未判定や誤判定が繰り返されることによって、顔辞書による個人認識精度が悪化するという問題があった。
【０００９】
本発明は上記の課題を鑑みてなされたものであり、オブジェクトの類似判定に用いる辞書による判定精度を向上することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するための本発明による画像処理装置は以下の構成を備える。即ち、  画像データ中のオブジェクトを検出して管理する画像処理装置であって、
画像データを入力する入力手段と、
前記入力手段から入力した画像データに基づいて、オブジェクトを検出する検出手段と、
前記オブジェクトから特徴量を抽出する特徴量抽出手段と、
前記特徴量抽出手段より抽出した特徴量を辞書に登録する辞書登録手段と、
前記辞書を参照して、該辞書に登録されている特徴量と前記特徴量抽出手段で抽出した特徴量との類似度を判定する類似判定手段とを備え、
前記辞書に登録する特徴量のうち、所定の評価基準を満足しない特徴量は、前記類似判定手段による判定において使用をしない。
【発明の効果】
【００１１】
本発明によれば、オブジェクトの類似判定に用いる辞書による判定精度を向上できる。
【図面の簡単な説明】
【００１２】
【図１】画像処理装置のハードウェア構成である。
【図２】画像処理装置を制御するためのソフトウェアブロック図である。
【図３】個人認識の処理を示すフローチャートである。
【図４】顔辞書の生成の詳細を示すフローチャートである。
【図５】サムネイル形式による画像群の表示例を示す図である。
【図６】カレンダー形式による画像群の表示例を示す図である。
【図７】顔特徴量の構造を示す図である。
【図８】サムネイル形式による画像群の表示例を示す図である。
【図９】顔辞書の構造を示す図である。
【図１０】実施形態１の顔辞書のカスタマイズの手順を示すフローチャートである。
【図１１】実施形態２の顔辞書のカスタマイズの手順を示すフローチャートである。
【図１２】平滑化フィルタの例を示す図である。
【図１３】実施形態３の顔辞書のカスタマイズを含む個人認識の処理を示すフローチャートである。
【図１４】実施形態３の顔辞書のカスタマイズの実行を示すフローチャートである。
【図１５】実施形態４の顔辞書のカスタマイズの手順を示すフローチャートである。
【図１６】手動でお気に入り度を入力するためのＵＩ例を示す図である。
【図１７】顔辞書の生成の詳細を示すフローチャートである。
【図１８】カテゴリの構成例を示す図である。
【図１９】顔辞書のカスタマイズの手順を示すフローチャートである。
【図２０】顔辞書のカスタマイズの手順を示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
【００１４】
＜実施形態１＞
以下では、入力画像群を用いて自動でレイアウト出力物を生成するために、本発明における好適な実施形態について説明する。これはあくまで実施の１つの形態を例として示したものであり、本発明は以下の実施に限定されるものではない。
【００１５】
また、本実施形態では顔辞書を含む個人認識モジュールの構成と、個人認識結果を得る構成、及び個人認識モジュールが稼働するハードウェアの構成について例を挙げて説明する。また、本発明の実施形態は、以下で説明する各実施形態に限定されるものではなく、同様なハードウェア構成を含むＤＳＣやプリンタに、本実施形態における個人認識モジュールを実装することも可能である。
【００１６】
＜ハードウェア構成の説明＞
図１は本実施形態の画像処理装置のハードウェア構成例を示すブロック図である。
【００１７】
図１において、画像処理装置１１５は、例えば、コンピュータである。１００はＣＰＵ（中央演算装置）であり、本実施形態で説明する情報処理をプログラムに従って実行する。１０１はＲＯＭであり、ＣＰＵ１００により実行されるプログラムが記憶されている。１０２はＲＡＭであり、ＣＰＵ１００によるプログラムの実行時に、各種情報を一時的に記憶するためのメモリを提供している。１０３はハードディスク等の２次記憶装置であり、画像ファイルや画像解析結果を保存するデータベース等を保存するための記憶媒体である。本実施形態で説明する情報処理を実行するプログラムを、ＲＯＭ１０１ではなく、この２次記憶装置１０３に記憶しても良い。
【００１８】
１０４は表示装置であり、本実施形態の処理結果等の以下に示す種々のＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒ  ｆａｃｅ）をユーザーに提示する装置である。表示装置１０４としては、例えば、ディスプレイが挙げられる。表示装置１０４は、タッチパネル機能を備えても良い。また、１１０は制御バス／データバスであり、上述の各種構成要素とＣＰＵ１００とを相互に接続する。このほかに、ユーザーが画像補正の処理の指示等を入力するためのマウスやキーボード等の入力装置１０５も備える。
【００１９】
また、画像処理装置１１５は、内部撮像デバイス１０６を備えてもよい。内部撮像デバイス１０６で撮像された画像は、所定の画像処理を経た後、２次記憶装置１０３に記憶される。また、画像データはインタフェース（ＩＦ１０８）を介して接続された外部撮像デバイス１１１から読み込んでも構わない。さらに、画像処理装置１１５はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）  ＩＦ１０９を備える。ＬＡＮ  ＩＦ１０９は、有線であっても無線であっても構わない。ＬＡＮ  ＩＦ１０９はインターネット１１３に接続されている。インターネット１１３に接続された外部サーバー１１４より画像を取得することもできる。
【００２０】
最後に、画像等を出力するためのプリンタ１１２が、ＩＦ１０７を介して接続されている。尚、プリンタ１１２はさらにインターネット１１３上に接続されており、ＬＡＮ  ＩＦ１０９経由でプリントデータのやり取りをすることもできる。
【００２１】
図２は本実施形態の上記アプリケーションを含むソフトウェア構成を示すブロック図である。
【００２２】
まず、画像処理装置１１５が取得した画像データは、通常、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｙ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）等の圧縮形式で圧縮されている場合がある。その場合には、画像コーデック部２００は、その圧縮形式に基づいて、画像データを解凍（デコード）して、いわゆる、ＲＧＢ点順次のビットマップデータ形式の画像データ（ビットマップデータ）に変換する。変換されたビットマップデータは、表示・ＵＩ制御部２０１に伝達され、ディスプレイ等の表示装置１０４上に表示される。
【００２３】
尚、画像処理装置１１５が取得した画像データが、解凍（デコード）処理が不要な画像データである場合には、画像コーデック部２００の処理は不要となる。
【００２４】
ビットマップデータは、さらに、画像センシング部２０３（アプリケーション）に入力され、画像センシング部２０３において、画像の様々な解析処理（詳細は後述）が行われる。解析処理の結果、得られた画像の様々な属性情報は、所定の形式に従ってデータベース部２０２（アプリケーション）において、上述した２次記憶装置１０３に記憶される。尚、以降においては、画像解析処理とセンシング処理は同義で扱う。
【００２５】
シナリオ生成部２０４（アプリケーション）では、ユーザーが入力した様々な条件に応じて、自動で生成すべきレイアウトの条件を生成する。レイアウト生成部２０５では、生成されたシナリオに従って、画像データを配置するためのレイアウトを自動で生成する処理を行う。
【００２６】
生成したレイアウトは、レンダリング部２０６で表示用のビットマップデータにレンダリングされ、そのレンダリング結果であるビットマップデータは表示・ＵＩ制御部２０１に送信され、その内容が表示装置１０４に表示される。一方で、レンダリング結果は、プリントデータ生成部２０７に送信されて、プリントデータ生成部２０７でプリンタ用コマンドデータに変換され、プリンタ１１２に送信される。
【００２７】
個人認識処理のフローを図３を用いて説明する。
【００２８】
Ｓ３００では、顔画像を照合して個人認識を行うための顔辞書を生成する。顔辞書の生成方法は後述する。続いて、Ｓ３０１では、Ｓ３００で生成された顔辞書を用いて顔画像の個人を認識（顔画像照合）する。認識方法は後述する。尚、図３では便宜上、顔辞書の生成ステップと顔画像照合ステップを分けて記載しているが、実施にあたってはその限りでは無い。即ち、顔辞書を生成しながら照合を行っても構わない。以下では、顔辞書の生成と顔画像照合を同時に行う場合について説明する。
【００２９】
以下では、ステップＳ３００の顔辞書の生成ステップを、図４を参照しながら詳述する。
【００３０】
まず、Ｓ４００では、画像データ群の取得を行う。画像データ群は、例えば、ユーザーが撮影画像が格納された撮像装置やメモリカードを画像処理装置１１５に接続し、これらから撮影画像を読み込むことで取得する。また、内部撮像デバイス１１０で撮影され、２次記憶装置１０３に記憶されている画像を取得してもよい。あるいはＬＡＮ１０９を介して、インターネット１１３上に接続された外部サーバー１１４等、画像処理装置１１５以外の外部装置から画像データを取得してもよい。
【００３１】
画像データ群を取得した後に、図５及び図６のようにＵＩに表示しても良い。ここで、図５及び図６を用いて、画像データ群を取得した際の表示装置１０４の表示について説明する。例えば、図５では、フォルダウィンドウ５０１に２次記憶装置１０３内のフォルダをツリー状に表示している。ここで、フォルダ５０２を選択すると、プレビューウィンドウ５０４に画像のサムネイル５０３が表示される。一方、図６では、プレビューウィンドウ６０１にカレンダーを表示している例である。この時、日付の部分６０２をクリックすると、プレビューウィンドウ６０１に同日に撮影された画像をサムネイル５０３と同じように表示するような形態も可能である。
【００３２】
次に、Ｓ４０１では、画像中の顔の位置を含む様々な特性量を取得する。表１では、取得する特性量とその情報の型を例示する。
【００３３】
【表１】
2014016823.tif 000003
【００３４】
まず、画像の基本的な特性量（画像基本特性量）である全体の平均輝度、平均彩度については、公知の方法で求めれば良い。一例としては、画像の各画素についてＲＧＢ成分を公知の輝度色差成分（例えば、ＹＣｂＣｒ成分）に変換し、Ｙ成分の平均値を算出すれば良い。また、平均彩度については、ＣｂＣｒ成分について画素毎に以下を算出し、Ｓの平均値を算出すればよい。
【００３５】
【数１】
2014016823.tif 000004
【００３６】
また、画像の色合いを評価するための特性量として、画像内の平均色相ＡｖｅＨを算出することも考えられる。各画素毎の色相は、公知のＨＩＳ変換式を用いて算出することができ、それらを画像全体で平滑化することにより、ＡｖｅＨを算出することができる。また、この特性量は、画像全体のみで算出する必要はない。例えば、画像を所定サイズの領域に分割し、各領域毎に算出することも考えられる。
【００３７】
次に、被写体である人物の顔検出処理について説明する。本実施形態で使用する人物の顔検出手法としては、様々な方法を用いることができる。例えば、特開２００２−１８３７３１号公報に記載の方法では、まず、入力画像から目領域を検出し、目領域周辺を顔候補領域とする。次に、該顔候補領域に対して、画素毎の輝度勾配、および輝度勾配の重みを算出する。次に、これらの値を、あらかじめ設定されている理想的な顔基準画像の勾配、および勾配の重みと比較する。その時に、各勾配間の平均角度が所定の閾値以下である場合、入力画像は顔領域を有すると判定する。
【００３８】
また、特開２００３−３０６６７号公報に記載の方法では、まず、画像中から肌色領域を検出する。次に、その肌色領域内において、人間の虹彩色画素を検出することにより目の位置を検出することが可能である。
【００３９】
さらに、特開平８−６３５９７号公報に記載の方法では、まず、複数の顔の形状をしたテンプレートと画像とのマッチング度を計算する。次に該マッチング度が最も高いテンプレートを選択する。その結果、最も高いマッチング度があらかじめ定められた閾値以上である場合、選択されたテンプレート内の領域を顔候補領域とする。同テンプレートを用いることで、目の位置を検出することが可能である。
【００４０】
さらに、特開２０００−１０５８２９号公報に記載の方法では、まず、鼻画像パターンをテンプレートとする。次いで、画像全体、あるいは画像中の指定された領域を走査する。その結果、最もマッチする位置を鼻の位置として出力する。次に、画像の鼻の位置よりも上の領域を目が存在する領域と考え、目画像パターンをテンプレートとして目存在領域を走査する。こうしてマッチング度を得る。得られたマッチング度がある閾値よりも大きい画素の集合を、目存在候補位置集合とする。次に、目存在候補位置集合に含まれる連続した領域をクラスタとして分割し、各クラスタと鼻位置との距離を算出する。その距離が最も短くなるクラスタを目が存在するクラスタと決定することで、器官位置の検出が可能である。
【００４１】
その他、顔および器官位置を検出する方法は、その他、例えば、以下に示す公知の方法を用いてもよい。例えば、特開平８−７７３３４号公報、特開２００１−２１６５１５号公報、特開平５−１９７７９３号公報、特開平１１−５３５２５号公報、特開２０００−１３２６８８号公報、特開２０００−２３５６４８号公報、及び特開平１１−２５０２６７号公報が挙げられる。さらに、特許第２５４１６８８号公報等が挙げられる。
【００４２】
以上の処理の結果、各入力画像データの人物顔の個数と各顔毎の座標位置を取得することができる。さらに、画像データ中の顔（顔領域）の座標位置が分かれば、該顔領域毎に顔領域内に含まれる画素値の平均ＹＣｂＣｒ値を算出することができる。こうして。顔領域の平均輝度および平均色差を得ることもできる。さらに、また、画像の特性量を用いてシーン解析処理を行うこともできる。シーン解析処理については、例えば、出願人が開示している特開２０１０−２５１９９９号公報や特開２０１０−２７３１４４号公報等で開示されている技術を利用してもよい。シーン解析処理の結果、風景（Ｌａｎｄｓｃａｐｅ）、夜景（Ｎｉｇｈｔｓｃａｐｅ）、人物（Ｐｏｒｔｒａｉｔ）、露出不足（Ｕｎｄｅｒｅｘｐｏｓｕｒｅ）、その他（Ｏｔｈｅｒｓ）、という撮影シーンを区別するための識別子を取得することができる。
【００４３】
尚、センシング情報は、上記のセンシング処理により取得されるものに限定されるものではなく、例えば、その他のセンシング情報を利用してもよい。上記のようにして取得したセンシング情報を、データベース部２０２に保存する。データベース部２０２の保存形式は、特に限定されないが、例えば、表２に示すような構造を汎用的なフォーマット（例えば、ＸＭＬ：ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述し、記憶すればよい。
【００４４】
【表２】
2014016823.tif 000005
【００４５】
表２においては、各画像毎の属性情報を３つのカテゴリに分けて記述する例を示している。１番目のＢａｓｅＩｎｆｏタグは、画像サイズや撮影時情報としてあらかじめ取得した画像ファイルに付加されている情報である。ここには、画像毎の識別子＜ＩｍａｇｅＩＤ＞や、画像ファイルが格納されている記憶場所＜ＩｍａｇｅＰａｔｈ＞、画像サイズ＜ＩｍａｇｅＳｉｚｅ＞、撮影日時＜ＣａｐｔｕｒｅＤａｔｅＴｉｍｅ＞等が含まれる。
【００４６】
次に、２番目のＳｅｎｓＩｎｆｏタグは、上述した画像解析処理の結果を格納するためのタグである。画像全体の平均輝度＜ＡｖｅＹ＞、平均彩度＜ＡｖｅＳ＞、平均色相＜ＡｖｅＨ＞やシーン解析結果＜ＳｃｅｎｅＴｙｐｅ＞が格納される。＜Ｐｅｒｓｏｎ＞タグには画像中から検出された顔の情報が記述される。画像中の人物の顔位置＜Ｐｏｓｉｔｉｏｎ＞や顔色＜ＡｖｅＹ＞、＜ＡｖｅＣｂ＞、＜ＡｖｅＣｒ＞に関する情報が記述可能である。＜ＦａｃｅＩＤ＞タグは、当該の顔画像から抽出された特徴量と画像ファイルを関連付ける識別子（同一被写体を識別する識別子）である。顔画像から抽出された特徴量については後述する。
【００４７】
次に、３番目の＜ＵｓｅｒＩｎｆｏ＞タグは、ユーザーが画像毎に入力した情報を格納することができる。例えば、＜ＦａｖｏｒｉｔｅＩｎｆｏ＞は後述する好ましさの尺度である。また、＜ＶｉｅｗｉｎｇＴｉｍｅｓ＞はその画像を開いて閲覧した閲覧回数である。また、＜ＰｒｉｎｔｉｎｇＴｉｍｅｓ＞は印刷した印刷回数である。また、＜Ｅｖｅｎｔ＞はその画像の属性として付与することができる情報である。これらは一例であり、ユーザーが他の情報を記述することもできる。尚、画像の属性情報のデータベース格納方法については、上記に限定されるものではない。その他、どのような形式であっても構わない。
【００４８】
次に、Ｓ４０２では、正規化顔画像を生成する。ここで、正規化顔画像とは、画像内に様々な大きさ、向き、解像度で存在する顔画像を切り出して、すべて所定の大きさと向きになるよう、変換して切り出した顔画像のことである。個人認識を行うためには、眼や口等の器官の位置が重要となる。そのため、正規化顔画像のサイズは、器官が確実に認識できる程度であることが望ましい。このように正規化顔画像を用意することにより、次のＳ４０３における特徴量抽出処理において、様々な解像度の顔に対応する必要がなくなるという利点がある。
【００４９】
次に、Ｓ４０３では、Ｓ４０２で生成した正規化顔画像から顔特徴量を抽出する（顔特徴量抽出部）。ここで、改めて顔特徴量の内容について詳述する。顔特徴量とは、器官や輪郭等のその顔固有の情報を少なくとも１つ以上抽出したベクトル量である。例えば、各器官の大きさ等の個別の情報である。また、両目の間隔と輪郭の比等の個別情報から生成される二次情報も含む。以下では、これらの情報を、特徴量要素と呼ぶ。特徴量要素からなるベクトル量である顔特徴量は、次の４０４で顔画像を照合する際に用いる。抽出された顔特徴量は、例えば、図７のような構造体を用意して記録することができる。ここでＦａｃｅＩｎｆｏが、抽出された顔特徴量を記録する領域である。また、ＩｍａｇｅＩＤが、当該顔特徴量を抽出した顔を含む元画像である。ＦａｃｅＩＤ、ＲｅｆｅｒｅｎｃｅＣｏｕｎｔ、Ａｃｔｉｖａｔｉｏｎ、ＮａｍｅＩｎｆｏ、Ｐｒｏｐｅｒｔｙについては後述する。
【００５０】
次に、Ｓ４０４では、Ｓ４０３で取得された顔特徴量と顔辞書と呼ぶデータベース部２０２に予め登録された顔特徴量を比較して類似度を取得する（類似判定部）。
【００５１】
ここで、顔辞書について詳述する。個人認識をするためには、新しく得られた顔特徴量と既存の顔特徴量とを比較する方法がある。この既存の顔特徴量を記録したものを顔辞書と呼ぶ。記録された顔特徴量は、顔辞書内の他の顔特徴量と区別されなければならない。このため、顔辞書に登録する際には、Ｓ４０３で取得した顔特徴量にその顔特徴量の使われ方や識別子を付与する。本実施形態では、顔特徴量を識別する識別子をＦａｃｅＩＤとしている。ＲｅｆｅｒｅｎｃｅＣｏｕｎｔ、Ａｃｔｉｖａｔｉｏｎ、ＮａｍｅＩｎｆｏ、Ｐｒｏｐｅｒｔｙは、顔特徴量の使われ方である。各々については、実際に使用例を示す際に説明する。
【００５２】
このように、特徴量の使われ方や識別子が付与された顔特徴量を顔辞書のエントリと呼び、以下では簡単に「エントリ」とも記す。即ち、図７がエントリそのものである。顔辞書に登録された比較するべきエントリが複数あれば、複数の類似度が算出される。比較するべきエントリが登録されていなかった場合については後述する。実際に個人認識する際には、エントリに含まれる顔特徴量を比較する。
【００５３】
以下では、顔特徴量の比較に用いる類似度について説明する。顔特徴量の比較方法は、特に限定されず、公知の方法を用いることができる。例えば、特開２００３−１８７２２９号公報では、統計的手法に基づく信頼度を用いて特徴量ベクトルの距離を類似度として評価する。あるいは、特開２００６−２２７６９９号公報では、本願と特徴量ベクトルの求め方は異なるものの、特徴量ベクトルの距離を算出したものを類似度として評価する方法が開示されている。上述したように、顔特徴量の類似度を評価する方法は公知のものを用いればよいが、いずれにしても顔特徴量の比較を元に、類似度を得る。
【００５４】
尚、全ての画像について同一の顔特徴量が比較され得る形で抽出されるのが好ましいが、得られたベクトル要素間に重みをつける等の操作によりベクトル次元が完全一致しなくても評価できるようにしてもよい。得られた類似度の中から最小の値を示す類似度を選択し、次のＳ４０５に進む。この際に、選択された類似度を算出するために用いた特徴量のカウンタを１つ進める。具体的には、例えば、図７に示すＲｅｆｅｒｅｎｃｅＣｏｕｎｔの内容を更新するような方法が挙げられる。カウンタの更新方法は、特に限定されず、最終的に個人認識の判定に用いられた顔特徴量に記録が残るものであればよい。
【００５５】
次に、Ｓ４０５では、Ｓ４０４で取得した類似度を評価する。設定された類似度よりも高い類似度である場合（Ｓ４０５でＹＥＳ）、次のＳ４０６に進む。一方、設定された類似度以下である場合（Ｓ４０５でＮＯ）、次のＳ４０７に進む。尚、比較するべき顔特徴量が１つも登録されていない場合には、Ｓ４０７に進む。
【００５６】
ここで、設定された類似度について述べる。設定された類似度とは、演算の結果、得られた類似度を評価する閾値である。この閾値は内部的な固定値でも良い。また、ユーザーからＵＩ（不図示）操作によって入力させても良い。あるいは、また、ユーザーの操作から取得される学習状況に応じて変化するような様態であってもよい。すなわち、ここでは閾値が、どのような形態で設定されても構わない。
【００５７】
次に、Ｓ４０６では、既定の類似度より高いと判定された顔特徴量を、既存のユーザグループに追加登録する。ユーザグループについての詳細は、次のＳ４０７で説明する。
【００５８】
一方、Ｓ４０７では、設定された類似度以下であると判定された顔特徴量は、検出された顔画像が新規の人物ということになる。そこで、この顔特徴量は、新規のユーザグループとして登録される。
【００５９】
ここで、ユーザグループについて説明する。互いに高い類似度を有する顔特徴量と同定された顔画像は、同一人物である可能性が高い。そこで、このような画像（オブジェクト）群は、ひとまとめにしてオブジェクト毎に分類してユーザに表示できることが好ましい。図８ではそのような表示の様子を例示している。フォルダウィンドウ８０１では、人物をツリー状に表示している。ここで、人物８０２を選択すると、プレビューウィンドウ８０４に画像のサムネイル８０３を表示する様子を示している。このような利便性の実現のために、ユーザグループを導入する。
【００６０】
以下では、ユーザグループの登録方法の一例を説明する。具体的には、図７に示すＮａｍｅＩｎｆｏを用いる。新規の人物として判定された場合には、新規のユーザグループを作成する。具体的には、このＮａｍｅＩｎｆｏで識別機可能な新規の識別子を発番する。識別子の説明をする。例えば、この画像に含まれる人物が、過去に登録されたｎ人の人物と誰とも類似していない状況を想定する。この場合、ＮａｍｅＩｎｆｏにはｎ＋１番目の人物を意味する「ｎ＋１」が記載される。このようにして、新規ユーザグループを作成する。
【００６１】
尚、Ｓ４０６の「既存のユーザグループに登録」する場合は、発番済の識別子を対象となる顔特徴量の中の特徴量要素であるＮａｍｅＩｎｆｏに記述すればよい。尚、ユーザグループの登録方法は、これに限定されず、例えば、直接ユーザーが文字列を指定してもよい。あるいは、ＮａｍｅＩｎｆｏとユーザーが指定した文字列を対応付けるテーブルを別途用意してもよい。
【００６２】
こうして、ユーザグループを登録することにより、同一のＮａｍｅＩｎｆｏを有する画像をひとまとめにして、一覧することができるようになる。本実施形態では、ＮａｍｅＩｎｆｏの初期値は、システムが自動で発番する。但し、その後、ユーザーが必要に応じて名前をつけることができる。名前とは、図８の人物８０２に対してユーザーが指定した名前である。ユーザーが指定した名前とユーザグループは、別の表で対応を管理しても良い。あるいは、直接ＮａｍｅＩｎｆｏを書き換えることもできる。
【００６３】
次に、Ｓ４０８では、Ｓ４０３で抽出された顔特徴量を含むエントリを顔辞書に登録する。このようにして、顔辞書のエントリ（識別子毎）が増えていく。図９は、複数の顔特徴量を登録して生成した顔辞書を模式的に示している。このエントリは、これまでに説明してきた顔辞書に追記して作成することができる。
【００６４】
続く、Ｓ４０９では、画像データ内の他の人物画像の評価を行う。他の処理対象の画像がある場合（Ｓ４０９でＹＥＳ）、Ｓ４０１に戻る。一方、他の処理対象の画像がない場合（Ｓ４０９でＮＯ）、Ｓ４１０に進む。続く、Ｓ４１０では、当該フォルダ内の画像データの全ての処理が終了した否かを評価する。処理が終了していない場合（Ｓ４１０でＹＥＳ）、Ｓ４１０に戻る。一方、処理が終了している場合（Ｓ４１０でＮＯ）、処理を終了する。このようにして、顔辞書が生成されると同時に、人物の個人認識も実行される。
【００６５】
以下では、上述のようにして生成された顔辞書をカスタマイズする方法を説明する。図１０は、顔辞書のカスタマイズの手順を示すフローチャートである。
【００６６】
まず、Ｓ１０００では、ユーザグループ毎にユーザグループに含まれるＩｍａｇｅＩＤを抽出する。ここで、抽出結果の一例を表３に示す。表３では、ＮａｍｅＩｎｆｏによって識別されたユーザグループ毎に、含まれるＩｍａｇｅＩＤを列挙している。
【００６７】
【表３】
2014016823.tif 000006
【００６８】
例えば、ＮａｍｅＩｎｆｏ＝０で識別されるユーザグループは、ＩｍａｇｅＩＤ＝０、１、２、３、４、５、６、７が含まれている。ＮａｍｅＩｎｆｏ＝１で識別されるユーザグループは、ＩｍａｇｅＩＤ＝０、３、４、７、８、９が含まれている。
【００６９】
Ｓ１００１では、異なるユーザグループ間で共有するＩｍａｇｅＩＤの数を計数する。例えば、ＮａｍｅＩｎｆｏ＝０で識別されるユーザグループとＮａｍｅＩｎｆｏ＝１で識別されるユーザグループでは、ＩｍａｇｅＩＤ＝０、３、４、７が共有されている。換言すると、異なる個人として認識されたＮａｍｅＩｎｆｏ＝０とＮａｍｅＩｎｆｏ＝１は、ＩｍａｇｅＩＤ＝０、３、４、７の画像に同時に存在している（写っている）ことを示している。こうして、ＮａｍｅＩｎｆｏ＝０とＮａｍｅＩｎｆｏ＝１は共有している画像の枚数が４であることが判る。以下では、共有している画像の枚数を「共有度」と呼ぶ。例えば、「ＮａｍｅＩｎｆｏ＝０とＮａｍｅＩｎｆｏ＝１の共有度は４」であると表現される。同様に、相異なる全てのユーザグループ間で共有度を調べる。こうしてユーザグループ毎に、異なるユーザグループとの共有度が全て計数される。表４は全ユーザグループ間で数え上げた共有度の例を示している。
【００７０】
【表４】
2014016823.tif 000007
【００７１】
Ｓ１００２では、ユーザグループ毎に計数した共有度の総和を算出する。表４の最右列に共有度の和を示している。
【００７２】
Ｓ１００３では、Ｓ１００２で算出した共有度の和を評価する。ここでは、共有度の和と所定の閾値と比較し、ユーザグループが所定の枚数（閾値）以上の共有がなされているか否かを判定する。判定の結果、所定の閾値以下である場合（Ｓ１００３でＮＯ）、Ｓ１００４に進む。一方、所定の閾値より大きい場合（Ｓ１００３でＹＥＳ）、Ｓ１００５に進む。閾値は、予め設定されていてもよいし、ユーザが設定できるようにしてもよい。
【００７３】
Ｓ１００４では、当該ユーザグループを構成している顔特徴量の全てを不要な顔特徴量とみなす。このとき、当該顔特徴量をセンシング時には使用しないようにするためにフラグ（無視フラグ（使用禁止フラグ））を立てる。具体的には、図７のＡｃｔｉｖａｔｉｏｎにフラグをたてる。例えば、Ａｃｔｉｖａｔｉｏｎが「０」なら既定の利用度に達していると定義し、「１」なら既定の利用度に達していないと定義する。また、Ａｃｔｉｖａｔｉｏｎの初期値を「０」とするようにしておく。取得した共有度の総和が所定の閾値に達した場合には、Ａｃｔｉｖａｔｉｏｎは初期値のままとする。こうして、顔辞書使用時に、所定の枚数以上の共有がなされていないユーザグループのエントリを非参照にすることができる。
【００７４】
Ｓ１００５では、全てのユーザグループについて共有度の総和が評価したか否かを判定する。評価していない場合（Ｓ１００５でＮＯ）、Ｓ１００３に戻る。一方、評価している場合（Ｓ１００５でＹＥＳ）、処理を終了する。
【００７５】
尚、本実施形態では、ユーザグループ間の共有度を顔辞書を使用する際に使用するか否かの唯一の評価尺度として用いている。しかしながら、評価尺度は１つとは限らない。例えば、顔辞書生成初期において、まだ、画像データの枚数が少ない場合について説明する。このとき、ユーザグループ間の共有度のみを評価尺度として顔辞書のカスタマイズを行うと、所定の閾値に依っては登録された全ての顔特徴量が常に非参照とされてしまう。このような事態を防ぐために、ユーザグループに属する画像の総枚数と、異なるユーザグループ間で共有する画像の枚数との比率を顔辞書を使用するか際に使用するか否かの評価尺度に用いても良い。即ち、この比率を２つ目の評価尺度として用い、共有している画像の枚数が所定の比率以上の場合には、Ｓ１００３の評価を行わないこともできる。
【００７６】
以上の処理によって、顔辞書のカスタマイズが終了する。即ち、非参照としたエントリは以降使われることが無くなり、顔辞書の精度を向上させることができる。
【００７７】
以上説明したように、本実施形態では、ユーザグループ間の画像の共有度に応じて、顔辞書を使用する際に使用するか否かを判断する。具体的には、ユーザグループ間の共有度が所定の基準以下である場合は、顔辞書を使用する際に使用しないようにする。これにより、顔辞書に登録されているエントリの内、未判定や誤判定によって登録されているエントリの使用を除外することができる。これによって、顔辞書の認識精度を向上させることができる。
【００７８】
＜実施形態２＞
本実施形態では、実施形態１における顔辞書のカスタマイズの別の様態について説明する。ハードウェアの構成とソフトウェアの構成、及び顔辞書の生成については実施形態１と同一であるため説明を省略する。
【００７９】
まず、本実施形態における処理の概要を説明する。被写体として関心が高い人物は、合焦している場合が多い。したがって、顔特徴量として顔辞書に登録されるべき顔画像は、被写体として合焦しているものであると判断する。逆に、被写体として関心が低い人物は、合焦していない場合が多い。また、仮に関心の高い被写体であったとしても、合焦していない画像は被写体の特徴を正しく捉えることができない。したがって、合焦していない画像は顔辞書に登録されるべきではないものであると判断する。
【００８０】
以下、合焦の度合いを評価する方法について説明する。合焦の度合いを評価する方法は、特に限定されないが、対象画像を意図的に平滑化し、その前後の画素の変化を評価する方法が挙げられる。対象画像が合焦している場合、平滑化に依る画素の変化が大きくなることが期待できる。一方、対象画像が合焦していない場合、平滑化に依る変化は小さいことが期待できる。この期待される変化量の違いから、合焦の度合いを評価する。以下では、この方法を図１１を用いて詳述する。
【００８１】
図１１は、本実施形態の顔辞書のカスタマイズの手順を示すフローチャートである。
【００８２】
まず、Ｓ１１００では、顔特徴量を抽出した元となる顔画像を取得する。この時、取得する顔画像の解像度は問わない。元画像そのものの解像度でも良いし、変倍してあっても良い。いずれにしても顔領域をトリミングした画像を取得できればよい。例えば、構造化して記述された画像のセンシング情報から座標位置を取得すればよい。尚、この際に、取得する顔画像の解像度も合わせて取得することが好ましい。
【００８３】
次に、Ｓ１１０１では、Ｓ１１００で取得したトリミング画像に平滑化フィルタをかける。画像の空間周波数の観点で画像を平滑化するための平滑化フィルタの例を図１２に示す。このような平滑化フィルタをトリミング画像に施すことによって、元画像の先鋭度を鈍らせることができる。
【００８４】
Ｓ１１０２では、Ｓ１１０１での平滑化フィルタを適用する前後の画像から、平滑化に依る画素の変化量を取得する。具体的には、平滑化前後の画像の同一座標を示す画素の信号値同士の差の絶対値を取り、全画素に亘って和を算出する。こうすることで、取得した顔画像全域の変化の度合いを測る変化量を得られる。
【００８５】
Ｓ１１０３では、得られた変化量を評価する。変化量が所定の閾値以上である場合（Ｓ１１０３でＹＥＳ）、元画像には十分な先鋭度がある（先鋭度が閾値以上である）と判定する。この場合、当該顔特徴量についてはなにもせずに、Ｓ１１０５へ進む。一方、変化量が所定の閾値未満である場合（Ｓ１１０３でＮＯ）、元画像には十分な先鋭度が無いと判定し、Ｓ１１０４に進む。
【００８６】
Ｓ１１０４では、当該の顔特徴量を無視するフラグ（無視フラグ）を立てる。フラグについては、実施形態１と同様に、Ａｃｔｉｖａｔｉｏｎにフラグを立てればよい。
【００８７】
Ｓ１１０５では、全ての顔特徴量について評価したか否かを判定する。未判定の顔特徴量がある場合（Ｓ１１０５でＮＯ）、Ｓ１１００に戻る。一方、未判定の顔特徴量がない場合（Ｓ１１０５でＹＥＳ）、処理を終了する。
【００８８】
以上説明したように、本実施形態では、不適切な顔特徴量を顔辞書に登録されている画像を空間周波数の観点から特定する。そして、不適切な顔特徴量であると判断した場合には、その顔特徴量の使用を制限することによって、顔辞書の認識精度を向上させることができる。
【００８９】
＜実施形態３＞
本実施形態では、顔辞書のカスタマイズが行われるタイミングを例示する。ハードウェア構成及びソフトウェア構成、顔辞書の生成については実施形態１と同一であるため説明を省略する。
【００９０】
顔辞書のカスタマイズが実行されるタイミングは、特に限定されるものではない。初めて顔辞書を生成する場合を例に挙げて説明する。
【００９１】
図１３は、顔辞書のカスタマイズを含む個人認識の処理を示すフローチャートである。初めて顔辞書を生成する場合には、実施形態１の図４のフローチャートのＳ４１０の後に、図１３に示すようにＳ１３１１において、顔辞書のカスタマイズを実行することにより、顔辞書初期登録時で誤登録される顔特徴量を除去することができる。ここで、Ｓ１３１１は、例えば、図１０あるいは図１１を用いて説明した処理である。初回の顔辞書の生成時でなければ、例えば、新たにフォルダを読み込む際に初期化の一環としてＳ４００の前に実行してもよい。また、カスタマイズを、所定の条件が満足した場合に実行することも可能である。
【００９２】
次に、別の実行トリガ生成例を説明する。図１４は所定の条件が満たされた場合にカスタマイズが実行される様子を示すフローチャートである。
【００９３】
まず、Ｓ１４００では、顔辞書の使われ方が所定の条件を満たしたかどうかを判定する。所定の条件は特に限定されないが、例えば、使用時間が所定時間を経過したか否か等が挙げられる。本実施形態では、最後にカスタマイズが実行されてからの経過時間（使用時間）が所定の時間を超えているか否かを判定する。このような情報は、特性量や顔特徴量ではなく、システム制御の一環として２次記憶装置１０３に記憶しておくことができる。また、同時に、カスタマイズの実行可否を切り分ける閾値も記録しておく。この２つの量を評価して、所定の条件を満たしたかどうかを判定する。
【００９４】
判定の結果、所定の条件を満たしていない場合（Ｓ１４００でＮＯ）、処理を終了する。所定の条件を満たした場合（Ｓ１４００でＹＥＳ）、Ｓ１４０１に進む。Ｓ１４０１では、例えば、図１０あるいは図１１を用いて説明した処理である。
【００９５】
上述した所定の条件としては、例えば、画像の枚数が所定枚数を超えたか否かが挙げられる。すなわち、顔辞書のカスタマイズは、例えば、最後にカスタマイズが実行された後に読み込まれた画像の枚数が所定の枚数を超えた場合に実行する。この場合は、顔辞書のカスタマイズが実行されてからの読取画像枚数を記録するようにすればよい。また、所定の条件としては、顔特徴量の個数が所定の個数を超えたか否かが挙げられる。すなわち、顔辞書のカスタマイズは、最後にカスタマイズが実行された後に、顔辞書に登録された顔特徴量の個数が所定の個数を超えた場合に実行する。この場合は、顔辞書に登録された顔特徴量の個数を記録すればよい。
【００９６】
さらにまた、ユーザーからの指定に基づいてカスタマイズを実行することもできる。この場合には、専用のＵＩ（不図示）からソフトウェアに対しカスタマイズの実行を指示すればよい。ユーザーからの指示に応じた実行は、必ずしも即応性を持つ必要はない。例えば、ユーザーからの指示を一時的にＲＡＭに記憶しておき、プログラムの終了時に処理することもできる。
【００９７】
以上説明したように、本実施形態では、他の実施形態で説明した効果に加えて、適切なタイミングで、顔辞書をカスタマイズ（無視フラグの設定等）することができる。
【００９８】
＜実施形態４＞
本実施形態では、実施形態１における共有度とは異なる評価指標（評価基準）を用いた場合を例示する。ハードウェア構成及びソフトウェア構成、顔辞書の生成については実施形態１と同一であるため説明を省略する。
【００９９】
図１５は本実施形態の顔辞書のカスタマイズの手順を示すフローチャートである。
【０１００】
まず、Ｓ１５００では、顔辞書に登録されたエントリに含まれる利用度から異なる２つの利用度を取得する。ここで、利用度について説明する。顔辞書に登録された顔特徴量の利用度としては、実際に個人認識に用いられた回数（使用回数）や、最後に用いられてからの経過時間、最初に登録されてからの経過時間等が挙げられる。このような利用度の情報は、図７のＰｒｏｐｅｒｔｙに記述されている。表５に、本実施形態で用いる利用度の一例を示す。
【０１０１】
【表５】
2014016823.tif 000008
【０１０２】
この利用度は、エントリ全体を取得した後に選択してもよいし、利用度の部分のみを取得してもよい。
【０１０３】
次に、Ｓ１５０１では、取得した利用度のうちの１つ目が既定の利用度に達するかどうかを判定する。本実施形態では、取得した利用度のうち１つ目として、ＡｃｃｅｓｓＩｎｔｅｒｖａｌを用いた。この場合、Ｓ１５０１で用いられる評価指標は、その顔特徴量が最後に個人認識に用いられてからの経過時間（未使用時間）とした。既定の利用度は、予めプログラム内で指定することができる。別の方法として、ＵＩ（不図示）から閾値を設定することもできる。いずれにしても取得したＡｃｃｅｓｓＩｎｔｅｒｖａｌを評価する閾値を用意すれば良い。取得したＡｃｃｅｓｓＩｎｔｅｒｖａｌが既定の経過時間以下である場合（Ｓ１５０１でＮＯ）、Ｓ１５０４に進む。一方、取得したＡｃｃｅｓｓＩｎｔｅｒｖａｌが既定の経過時間以上である場合（Ｓ１５０１でＹＥＳ）、Ｓ１５０２に進む。
【０１０４】
次に、Ｓ１５０２では、取得した利用度のうちの２つ目が既定の利用度に達するかどうかを判定する。本実施形態では、取得した利用度のうち２つ目は、ＲｅｆｅｒｅｎｃｅＣｏｕｎｔとした。この場合、Ｓ１５０２で用いられる評価指標は、当該顔特徴量が個人認識に用いられた回数である。この既定の利用度は、予めプログラム内で指定することができる。別の方法として、ＵＩ（不図示）から閾値を設定することもできる。いずれにしても取得したＲｅｆｅｒｅｎｃｅＣｏｕｎｔを評価する閾値を用意すれば良い。
【０１０５】
取得したＲｅｆｅｒｅｎｃｅＣｏｕｎｔが既定の利用度に達しない場合（Ｓ１５０２でＮＯ）、Ｓ１５０３に進む。Ｓ１５０３では、当該の顔特徴量をセンシング時には使用しないようにするためにフラグを立てる。具体的には、図７のＡｃｔｉｖａｔｉｏｎに記載する。取得したＲｅｆｅｒｅｎｃｅＣｏｕｎｔが既定の利用度に達している場合（Ｓ１５０２でＹＥＳ）、Ｓ１５０４に進む。
【０１０６】
次に、Ｓ１５０４では、顔辞書内の全てのエントリを評価したか否かを判定する。未判定のエントリがある場合（Ｓ１５０４でＮＯ）、Ｓ１５００に戻る。一方、全てのエントリを判定している場合（Ｓ１５０４でＹＥＳ）、処理を終了する。このようにして、顔辞書をカスタマイズすることができる。
【０１０７】
本実施形態では、顔辞書のカスタマイズのために用いるエントリの利用度として、ＡｃｃｅｓｓＩｎｔｅｒｖａｌとＲｅｆｅｒｅｎｃｅＣｏｕｎｔを用いた。しかしながら、エントリに含まれる顔特徴量の評価に用いられる利用度はこの２つの組に限定されるものではなく、例えば、ユーザーの嗜好に合わせて適宜選択することができるようにしても良い。
【０１０８】
また、顔辞書のカスタマイズのために用いるエントリの利用度として、ＦａｖｏｒｉｔｅＲａｔｅを使う場合について説明するする。この場合に用いられる評価指標は、ユーザーがＵＩからセットした「好ましさ」である。まず、図１６に示すようなＵＩから所望のサムネイル画像１６００をマウスポインタ１６０１で選択する。次に、右クリックをすることでお気に入り度を入力できるダイアログを表示する。ユーザーはメニューの中で自分の好みに応じて、★の数を選択することができる。一般的には、好ましさが高いほど★の数が多くなるよう設定する。こうして気に入った画像に好ましさを付与することができる。ここで指定された好ましさを、ＦａｃｅＩＤによって当該画像に関連付けられたエントリに反映させることができる。
【０１０９】
具体的には、図７のＰｒｏｐｅｒｔｙから表５のＰｒｅｆｅｒｅｎｃｅを取得する。ここで、Ｐｒｅｆｅｒｅｎｃｅについて説明する。Ｐｒｅｆｅｒｅｎｃｅは、当該エントリと関連付けられた複数の画像に与えられた好ましさを反映させた評価指標である。具体的には、例えば、当該エントリに関連付けられた好ましさの★の数の総和とすることができる。他の場合として、★の数と関連付けられた画像の枚数の比を取っても良い。あるいはＰｒｅｆｅｒｅｎｃｅそのものを５段階でレベル分けして、★の数の総和毎にレベルを指定しても良い。当該エントリに画像の好ましさが反映されていれば良い。
【０１１０】
この時、Ｓ１５０１またはＳ１５０２で用いられる評価指標は、当該エントリのＰｒｅｆｅｒｅｎｃｅである。この評価指標を用いる場合であっても、既定の利用度は予めプログラム内で指定することができる。別の方法として、ＵＩ（不図示）から閾値を設定することもできる。いずれにしても取得したＰｒｅｆｅｒｅｎｃｅを評価する閾値を用意すれば良い。
【０１１１】
Ｓ１５０１またはＳ１５０２で評価指標として用いられる他の利用度は、初めて当該エントリが登録されてからの経過時間を用いることもできる。あるいは、Ｐｒｅｆｅｒｅｎｃｅのように、当該エントリに関連付けられた画像が印刷された回数を当該エントリに記録することもできる。あるいは、当該エントリに関連付けられた画像を、プレビューウィンドウ（図８等）から拡大表示した回数を当該エントリに記録しても良い。さらにまた、当該エントリに関連付けられた画像のファイルアクセス数を数えて当該エントリに記録しても良い。
【０１１２】
尚、本実施形態では、顔辞書のカスタマイズのために用いる顔特徴量の利用度を２つ用いたが、顔特徴量の評価に用いられる利用度は２つに限定されるものではない。より細かな条件判定を用いるために、３つ以上の利用度を用いることも可能である。あるいは、より簡易に１つだけの利用度を用いることもできる。
【０１１３】
以上説明したように、本実施形態では、利用度が低いエントリの使用を除外する。これによって、顔辞書の認識精度を向上させることができる。顔辞書の各エントリの利用度に応じて、顔辞書をカスタマイズすることで、ユーザーの利用実績を加味した顔辞書を構築することができる。
【０１１４】
＜実施形態５＞
本実施形態では、実施形態１における顔辞書の生成及び利用方法の変形例を例示する。ハードウェア構成及びソフトウェア構成、顔辞書の生成については実施形態１と同一であるため説明を省略する。
【０１１５】
以下では、Ｓ３００の顔辞書の生成ステップを、図１７を参照しながら詳述する。
【０１１６】
尚、図１５のＳ１７００〜Ｓ１７０３は、図４のＳ４００〜Ｓ４０３までと処理内容は同一であるため、説明を省略する。
【０１１７】
Ｓ１７０４では、顔特徴量の類似度を取得する。本実施形態では、取得された顔特徴量と、顔辞書に予め登録された「個人を同定するための複数の顔特徴量から所定の手続によって導出される顔特徴量」とを比較して類似度を得た。以下、個人を同定するための複数の顔特徴量の集合体を「カテゴリ」とする。また、以下、「カテゴリから所定の手続によって導出される顔特徴量」を「仮想顔特徴量」と記す。カテゴリについては後述する。類似度については、実施形態１と同様であるので、説明を省略する。尚、ここでは、データベース部２０２に登録されている比較対象のカテゴリが複数あれば、複数の類似度が算出される。
【０１１８】
次に、Ｓ１７０５では、Ｓ１７０４で得られた類似度を評価する。類似の顔特徴量を保持するカテゴリがあるか否かを判定する。類似の顔特徴量を保持するカテゴリがある、すなわち、Ｓ１７０４で得られた類似度が既定の類似度よりも高い類似度である場合（Ｓ１７０５でＹＥＳ）、Ｓ１７０６に進む。一方、類似の顔特徴量を保持するカテゴリがない、すなわち、Ｓ１７０４で得られた類似度が全てのカテゴリの既定の類似度以下である場合（Ｓ１７０５でＮＯ）、Ｓ１７１０に進む。尚、比較するべき顔特徴量が１つも登録されていない場合には、Ｓ１７１０に進む。既定の類似度については、実施形態１で説明しているので、説明を省略する。
【０１１９】
Ｓ１７０６では、既定の類似度より高いと判定されたカテゴリが、既存のユーザグループに関連付けられているか否かを判定する。ユーザグループについては、実施形態１で説明しているので、説明を省略する。既存のユーザグループに関連付けられている場合（Ｓ１７０６でＹＥＳ）、Ｓ１７０７に進む。一方、既存のユーザグループに関連付けられていない場合（Ｓ１７０６でＮＯ）、Ｓ１７０８に進む。
【０１２０】
次に、Ｓ１７０７では、当該の顔特徴量を既存のユーザグループに登録する。登録方法は、実施形態１で説明しているので、説明を省略する。
【０１２１】
次に、Ｓ１７０８では、カテゴリに空きがあるか否かを判定する。ここで、カテゴリについて説明する。カテゴリとは、上述した通り、個人を同定するための複数の顔特徴量の集合体であり、言い換えれば、所定の類似度の範囲内にある顔特徴量を有限個ひとまとめにした、顔特徴量を取り扱う単位である。カテゴリは、具体的には、ある特定の顔特徴量が抽出された個人を認識するに際し、その顔特徴量と所定の範囲内で類似する顔特徴量を有限個（例えば、最大５個）までまとめて管理したものである。有限個の設定は、既定値を与えても良いし、ユーザーが選択して設定できるようにしても良い。ＦａｃｅＩＤをカテゴリに関連付けることによって顔特徴量を選択することができる。
【０１２２】
このように複数の顔特徴量を用いる理由は、同一の人物であったとしても、画像の写り方によって顔特徴量に変動が生じるためである。認識の許容度を上げる場合には、変動幅を考慮した顔特徴量を用いる。変動幅を考慮するために、複数の顔特徴量から算出された顔特徴量を用いる。このように複数の顔特徴量から算出された顔特徴量が、上述した仮想顔特徴量となる。仮想顔特徴量を用いることによって、任意の一枚を用いた個人認識による誤判定の危険を低減することができる。
【０１２３】
以下では、カテゴリの構成例を図１８を参照して説明する。
【０１２４】
ＣａｔｅｇｏｒｙＩＤは、個々のカテゴリを識別する識別子である。ＲｅｆｅｒｅｎｃｅＣｏｕｎｔ、Ａｃｔｉｖａｔｉｏｎ、ＮａｍｅＩｎｆｏ、Ｐｒｏｐｅｒｔｙについては実施形態１の図７と同様であるので説明を省略する。ＩｄｅａｌＦｅａｔｕｒｅについて説明する。上述した仮想顔特徴量はＩｄｅａｌＦｅａｔｕｒｅに記録される。ここで、仮想顔特徴量の計算方法について説明する。類似度算出用の仮想顔特徴量としては、例えば、カテゴリに関連付けられた顔特徴量の平均を用いることができる。尚、仮想顔特徴量は、顔特徴量の平均に限定されるものではなく、最大値の顔特徴量だけ集めて算出してもよく、特徴量要素の分散を見て平均を算出するかメジアンを算出してもよい。
【０１２５】
図１８では例として、カテゴリには、５つまでＦａｃｅＩＤを関連付けられる構成を示している。上述のように、カテゴリは有限個の顔特徴量の集合である。従って、関連付けが可能なＦａｃｅＩＤが、設定されている最大値に達していなければ登録できる。尚、最大値に達していれば登録できない。そこで、Ｓ１７０８では、登録余地を評価するために、カテゴリに空きがあるか否かを判定する。空きがある場合（Ｓ１７０８でＹＥＳ）、次のＳ１７０９に進む。空きがない場合（Ｓ１７０８でＮＯ）、Ｓ１７１２に進む。
【０１２６】
尚、本実施形態では、カテゴリと顔特徴量の関連付けにＦａｃｅＩＤを用いたが、これに限定されるものではない。例えば、カテゴリとエントリを別のデータベースで関連付けておき、そのデータベースを参照するようにしてもよい。
【０１２７】
次に、Ｓ１７０９では、既存のカテゴリに当該するＦａｃｅＩＤを関連付けてカテゴリを更新する。
【０１２８】
一方、Ｓ１７１１では、既定の類似度以下であると判定された顔特徴量は、いずれのカテゴリにも登録できない。したがって、この顔特徴量に対して、新規のカテゴリを作成し、ＦａｃｅＩＤを関連付ける。具体的には、カテゴリＩＤに新規コードを発番する。
【０１２９】
次に、Ｓ１７１１では、新規にユーザグループを作成する。ユーザグループの作成及び管理については、実施形態１で説明しているので、説明を省略する。
【０１３０】
以降のＳ１７１２〜Ｓ１７１４については、実施形態１のＳ４０８〜Ｓ４１０にそれぞれに対応し、処理内容は同一であるため、説明は省略する。
【０１３１】
以下では、上記のようにして生成された顔辞書のカスタマイズについて図１９を用いて説明する。ここでは、実施形態１との相違点のみを述べる。図１９は顔辞書のカスタマイズの手順を示すフローチャートである。
【０１３２】
まず、Ｓ１９００〜Ｓ１９０３までは、図１０のＳ１０００〜Ｓ１００３までと処理内容は同一であるため、説明は省略する。
【０１３３】
次に、Ｓ１９０４では、当該のカテゴリを構成する全てのエントリをセンシング時には使用しないようにするためにフラグ（無視フラグ）を立てる。具体的には、図７のＡｃｔｉｖａｔｉｏｎにフラグをたてる。例えば、Ａｃｔｉｖａｔｉｏｎが「０」なら既定の利用度に達していると定義し、「１」なら既定の利用度に達していないと定義する。また、Ａｃｔｉｖａｔｉｏｎの初期値を「０」とするようにしておく。取得したＲｅｆｅｒｅｎｃｅＣｏｕｎｔが既定の利用度に達した場合には、Ａｃｔｉｖａｔｉｏｎは初期値のままとする。
【０１３４】
尚、カテゴリのカスタマイズと顔特徴量単体のカスタマイズが混在する可能性もある。この場合には、次のように予め規則化することができる。例えば、既に評価された顔特徴量が、後からカテゴリに組み込まれた場合、以後カテゴリ側の参照回数や使われ方を優先する。あるいは、カテゴリに組み込まれた時点で顔特徴量の利用度を消去してもよい。いずれにしても使い方を規則化することによって、混乱を回避できる。
【０１３５】
次に、Ｓ１９０５では、顔辞書内の全てのカテゴリを評価したか否かを判定する。評価していない場合（Ｓ１９０５でＮＯ）、Ｓ１９００に戻る。一方、評価している場合（Ｓ１９０５でＹＥＳ）、処理を終了する。このようにして、顔辞書をカスタマイズすることができる。尚、使用する評価尺度は利用度に限らない。また、カスタマイズの方法として実施形態３に示すように、複数の利用度を用いることもできる。他の利用度の例示については実施形態１で説明しているので説明を省略する。
【０１３６】
本実施形態と実施形態１との違いは、顔辞書のカスタマイズに際し、顔特徴量を使うか仮想顔特徴量を使うかの差である。本実施形態と、実施形態２あるいは実施形態３を組み合わせて使用することもできる。
【０１３７】
以上説明したように、本実施形態では、所定の類似度の範囲内にある顔特徴量群を、各個人に属する１つのカテゴリとして管理することで、個人の様々な表情等の状態を加味した顔辞書を構築することができる。
【０１３８】
＜実施形態６＞
本実施形態では、辞書のカスタマイズにおける使用しないカテゴリを指定する方法について説明する。本実施形態のハードウェア構成及びソフトウェア構成は実施形態１と同一であるため説明を省略する。
【０１３９】
図２０は、本実施形態の顔辞書のカスタマイズの手順を示すフローチャートである。
【０１４０】
まず、Ｓ２０００では、システムステータスを取得する。ここで、いうシステムステータスとは、例えば、２次記憶装置１０３の残容量である。あるいはデータベース部２０２に登録されたカテゴリの総個数である。これらの値を取得し、既定値を超えているか否かを判定する。判定の結果、既定値以内である場合（Ｓ２０００でＹＥＳ）、処理を終了する。一方、既定値を超えている場合（Ｓ２０００でＮＯ）、Ｓ２００１に進む。
【０１４１】
Ｓ２００１では、利用度の取得と評価を行う。ここで、取得する利用度として、図７のＮａｍｅＩｎｆｏを用いる。
【０１４２】
Ｓ２００２では、Ｓ２００１で取得した利用度を評価する。本実施形態では、ＮａｍｅＩｎｆｏが初期値のままである場合、規定の利用度を満たさないと評価し（Ｓ２００２でＮＯ）、Ｓ２００３に進む。尚、規定の利用度を満たさない場合は、その個人に対するユーザーの関心が低いと評価できる。一方、利用度を満たすと評価された場合（Ｓ２００２でＹＥＳ）、Ｓ２００４に進む。尚、規定の利用度を満たす場合は、その個人に対するユーザーの関心が低くないと評価できる。
【０１４３】
Ｓ２００３では、当該するカテゴリを消去する。
【０１４４】
Ｓ２００４は、実施形態４のＳ１９０５と処理内容は同一であるため説明は省略する。  
【０１４５】
以上説明したように、本実施形態では、規定の利用度を満たさないエントリを消去することで、顔辞書の精度を向上させることができる。さらに、顔辞書のエントリの内、規定の利用度を満たさないエントリについては消去することで、顔辞書のサイズを低減することができる。また、エントリ数を減らすことによって、個人認識に伴う顔辞書の参照回数を低減して、処理速度を向上させることができる。
【０１４６】
＜他の実施形態＞
以上説明した実施形態は、本発明の効果を得るための一実施形態であり、類似の別手法を用いたり、異なるパラメータを用いたとしても、本発明と同等の効果が得られる場合は、本発明の範疇に含まれる。
【０１４７】
実施形態１〜５では、フラグを立てることにより、所定のエントリの使用を禁止するようにしたが、所定のエントリを顔辞書から削除するようにしてもよい。これにより、顔辞書のサイズを低減することができる。また、エントリ数を減らすことによって、個人認識に伴う顔辞書の参照回数を低減して、処理速度を向上させることができる。
【０１４８】
上述した実施形態では、レイアウト出力物として、１ページに複数の画像を配置した出力物について説明したが、勿論、複数ページの出力にも適用することができる。
【０１４９】
上述した実施形態では、顔辞書生成と照合を同時に行う場合について説明したが、顔辞書生成と照合を別に行ってもよい。顔辞書生成と照合を別々に行う場合は、例えば、フォルダ走査時に顔辞書生成モードか照合モードか分けて使えばよい。この場合は、顔辞書生成モードを使用してフォルダを走査した場合には、図４のＳ４０５からＳ４０７までをスキップして実行することができる。一方で、照合モードで使用する際には、図４のＳ４０８をスキップして実行することができる。この場合、顔辞書を生成したフォルダに含まれる画像を個人認識する際には、顔辞書生成モードと照合モードの２回の走査が必要となる。
【０１５０】
また、上述した実施形態では、オブジェクトとして人物の顔を例に挙げて説明したが、オブジェクトは人物の顔とは限らない。犬や猫などのペットの認識処理を行ってこれらを認識することにより、オブジェクトとしてペットの顔を設定することができる。また、エッジ検出などの形を認識処理によれば、建物や小物なども認識できるため、オブジェクトとして、建物や小物などを設定することができる。これらの場合、オブジェクトの特徴量を抽出して、辞書登録すれば、上述した実施形態と同様の方法により、画像処理を行うことができる。
【０１５１】
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、プログラムは、１つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、一部又は全部をハードウェアによって実現するようにしてもよい。
【０１５２】
また、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタ等）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、プリンタ、複写機、ファクシミリ装置等）に適用しても良い。
【図１】
2014016823.tif 000009
【図２】
2014016823.tif 000010
【図３】
2014016823.tif 000011
【図４】
2014016823.tif 000012
【図５】
2014016823.tif 000013
【図６】
2014016823.tif 000014
【図７】
2014016823.tif 000015
【図８】
2014016823.tif 000016
【図９】
2014016823.tif 000017
【図１０】
2014016823.tif 000018
【図１１】
2014016823.tif 000019
【図１２】
2014016823.tif 000020
【図１３】
2014016823.tif 000021
【図１４】
2014016823.tif 000022
【図１５】
2014016823.tif 000023
【図１６】
2014016823.tif 000024
【図１７】
2014016823.tif 000025
【図１８】
2014016823.tif 000026
【図１９】
2014016823.tif 000027
【図２０】
2014016823.tif 000028