(57)【要約】【課題】  認識精度を向上させた画像処理装置、画像処理方法、及びプログラムを提供することを課題とする。【解決手段】  画像データから抽出したオブジェクトの特徴量を類似する特徴量毎に分類して辞書において管理する辞書管理工程と、画像データから抽出したオブジェクト毎に分類して管理するオブジェクト管理工程と、オブジェクトの分類と、辞書における特徴量の分類とを関連付ける関連付け工程と、オブジェクトの分類の修正指示を入力する入力工程と、入力工程において修正指示があった場合、入力手段による修正指示の対象となるオブジェクトの特徴量の属する分類を変更する変更工程と、を備え、変更工程における変更に基づいて、オブジェクトの分類を修正して管理することを特徴とする。【選択図】  図２３
2014016786.tif 000002
【特許請求の範囲】
【請求項１】
画像データから抽出したオブジェクトの特徴量を類似する特徴量毎に分類して辞書において管理する辞書管理手段と、
前記画像データから抽出したオブジェクト毎に分類して管理するオブジェクト管理手段と、
前記オブジェクト管理手段におけるオブジェクトの分類と、前記辞書における特徴量の分類とを関連付ける関連付け手段と、
前記オブジェクトの分類の修正指示を入力する入力手段と、
前記入力手段による修正指示があった場合、前記入力手段による修正指示の対象となるオブジェクトの特徴量の属する分類を変更する変更手段と、
を備え、
前記管理手段は、前記変更手段による変更に基づいて、前記オブジェクトの分類を修正して管理することを特徴とする画像処理装置。
【請求項２】
前記変更手段は、前記入力手段により修正指示の対象となるオブジェクトの特徴量を、前記辞書においてオブジェクトの特徴量が属する分類から削除して、所定の分類に追加することにより、修正指示の対象となるオブジェクトの特徴量の属する分類を変更することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記変更手段は、前記関連付け手段により前記オブジェクトの分類に対して前記複数の特徴量の分類が対応付けられている場合、前記辞書の特徴量の分類の結合は行わないことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記オブジェクト管理手段により管理されているオブジェクト毎の分類に基づいて、前記画像データに基づく画像を表示装置に表示させる表示制御手段をさらに備えることを特徴とする請求項１〜３のいずれか一項に記載の画像処理装置。
【請求項５】
画像データから抽出したオブジェクトの特徴量を類似する特徴量毎に分類して辞書において管理する辞書管理工程と、
前記画像データから抽出したオブジェクト毎に分類して管理するオブジェクト管理工程と、
前記オブジェクトの分類と、前記辞書における特徴量の分類とを関連付ける関連付け工程と、
前記オブジェクトの分類の修正指示を入力する入力工程と、
前記入力工程において修正指示があった場合、前記入力手段による修正指示の対象となるオブジェクトの特徴量の属する分類を変更する変更工程と、
を備え、
前記変更工程における変更に基づいて、前記オブジェクトの分類を修正して管理することを特徴とする画像処理方法。
【請求項６】
請求項５に記載の画像処理方法をコンピュータにより実行することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理のための画像処理装置、画像処理方法、及びプログラムに関する。
【背景技術】
【０００２】
デジタルスチルカメラ（以下、ＤＳＣともいう）、あるいはカメラ機能が搭載された多機能携帯電話の普及に伴い、ユーザが撮影するデジタル写真の枚数は飛躍的に増加している。これらのデータは、ユーザが保有しているＰＣや、インターネット上に存在するストレージサービスに保存されることが一般的である。しかしながら、保存する枚数の増加に伴い、所望の画像がどこに保存されているのかを探す際に、膨大な画像閲覧操作を行うことが必要であることが問題となっている。そこで、ユーザが保存した大量の画像データの中から人物の顔を検出し、各顔領域に対して顔の特徴量解析を行い、同一人物と思われる人物の顔を自動でグループ化する方法が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１１−５１６９６６号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のように、同一人物と思われる人物の顔を自動でグループ化処理する場合、グループ化の精度、言い換えれば、個人認識の精度を向上させることが課題となっている。
【０００５】
なお、上述した特許文献１では、表示した人物グループの中で、誤認識を起こしている可能性が高いと思われる顔情報について警告マークを表示し、ユーザがその顔を許容するか、拒否するか入力する手段を設けることが開示されている。そして、ユーザが該顔を拒否した場合、ＵＩ上から表示されなくなることが開示されている。しかしながら、グループ化処理をする際に、誤認識を起こしている可能性が高いとされた顔情報と同程度の顔情報が新たに入力された場合、同様に、警告マークが表示されてしまう。
【０００６】
本発明は、上述した事情に鑑み、認識精度を向上させた画像処理装置、画像処理方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の課題を解決するための本発明の画像処理装置は、画像データから抽出したオブジェクトの特徴量を類似する特徴量毎に分類して辞書において管理する辞書管理手段と、前記画像データから抽出したオブジェクト毎に分類して管理するオブジェクト管理手段と、前記オブジェクト管理手段におけるオブジェクトの分類と、前記辞書における特徴量の分類とを関連付ける関連付け手段と、前記表示装置におけるオブジェクトの分類の修正指示を入力する入力手段と、前記入力手段による修正指示があった場合、前記入力手段による修正指示の対象となるオブジェクトの特徴量の属する分類を変更する変更手段と、を備え、前記管理手段は、前記変更手段による変更に基づいて、前記オブジェクトの分類を修正して管理することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、誤認識が発生した顔情報をユーザが修正した際に、個人認識の精度を低下させることなく、修正情報を反映させることができる。これにより、以降において、同一人物でありながら異なる特徴量をもつ顔を正しく同一人物として分類することができ、個人認識の精度を高めることができる。
【０００９】
また、個人認識精度を高めることにより、個人認識情報を用いてレイアウト成果物を自動生成した場合に、よりユーザにとって好ましいレイアウトを生成することができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態１に係る画像処理装置ハードウェア構成図である。
【図２】実施形態１に係るソフトウェアブロック図である。
【図３】実施形態１に係る画像解析処理のフローチャートである。
【図４】実施形態１に係る画像解析処理のフローチャートである。
【図５】実施形態１に係る人物グループ生成処理のフローチャートである。
【図６】実施形態１に係る自動レイアウト提案処理のフローチャートである。
【図７】実施形態１の人物グループの表示例を示す図である。
【図８】実施形態１のサムネイル形式による画像群の表示例を示す図である。
【図９】実施形態１のカレンダー形式による画像群の表示例を示す図である。
【図１０】手動でお気に入り度を入力するためのＵＩの例を示す図である。
【図１１】手動でイベント情報を入力するためのＵＩ例を示す図である。
【図１２】手動で人物属性情報を入力するためのＵＩ例を示す図である。
【図１３】レイアウトテンプレートの一例を示す図である。
【図１４】レイアウトテンプレートの一例を示す図である。
【図１５】実施形態１における自動レイアウト生成処理のフローチャートである。
【図１６】実施形態１における不要画像フィルタリング処理のフローチャートである。
【図１７】実施形態１に係る自動トリミング処理の一例を示す図である。
【図１８】実施形態１に係る明るさ適正度の算出方法の説明図である。
【図１９】実施形態１に係る彩度適正度の算出方法の説明図である。
【図２０】実施形態１に係るトリミング欠け判定処理の説明図である。
【図２１】実施形態１に係る自動レイアウト生成結果の表示例を示す図である。
【図２２】人物グループ生成処理によって生成された顔辞書の構成を示した図である。
【図２３】実施形態１に係る顔辞書の構成を示した図である。
【図２４】実施形態２に係る顔辞書の構成を示した図である。
【図２５】実施形態２に係る顔辞書更新処理のフロー図である。
【図２６】実施形態３に係る顔辞書の構成を示した図である。
【図２７】実施形態３に係る顔辞書更新処理のフロー図である。
【図２８】実施形態３に係る顔辞書の構成を示した図である。
【図２９】実施形態４に係る顔辞書更新処理のフロー図である。
【図３０】実施形態４に係る顔辞書の構成を示した図である。
【図３１】実施形態５に係る顔辞書の構成を示した図である。
【図３２】画像解析結果及び人物属性の保存形式の例を示す図である。
【図３３】図１３のレイアウトテンプレートの保存形式の例を示す図である。
【図３４】図１４のレイアウトテンプレートの保存形式の例を示す図である。
【図３５】決定されたテーマと主人公情報の保持例を示す図である。
【図３６】決定されたテーマと主人公情報の保持例を示す図である。
【図３７】生成したレイアウト情報の保持例を示す図である。
【発明を実施するための形態】
【００１１】
（実施形態１）
以下では、入力画像群を用いて自動でレイアウト出力物を生成するために、本発明における好適な第１実施形態について説明する。これはあくまで実施の１つの形態を例として示したものであり、本発明は以下の実施形態に限定されるものではない。
【００１２】
図１は実施形態１の画像処理装置のハードウェア構成例を示すブロック図である。
【００１３】
図１において、情報処理装置１１５は、ＣＰＵ１００と、ＲＯＭ１０１と、ＲＡＭ１０２と、２次記憶装置１０３と、表示装置１０４と、入力装置１０５と、ＩＦ１０７と、ＩＦ１０８と、無線ＬＡＮ１０９を備えている。さらに、内部撮像デバイス１０６を備えている。これらは、制御バス／データバス１１０により相互に接続されている。本実施形態の情報処理装置１１５は、画像処理装置として機能する。
【００１４】
情報処理装置１１５は、例えば、コンピュータである。ＣＰＵ１００（中央演算装置）は、実施形態１で説明する情報処理をプログラムに従って実行する。ＲＯＭ１０１は、ＣＰＵ１００により実行される以下に示すアプリケーション等のプログラムが記憶されている。ＲＡＭ１０２は、ＣＰＵ１００によるプログラムの実行時に、各種情報を一時的に記憶するためのメモリを提供している。２次記憶装置１０３は、ハードディスク等であり、画像ファイルや画像解析結果を保存するデータベース等を保存するための記憶媒体である。表示装置１０４は、例えば、ディスプレイであり、実施形態１の処理結果や以下に示すＵＩ（Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）等をユーザに提示する装置である。表示装置１０４は、タッチパネル機能を備えても良い。入力装置１０５は、ユーザが画像補正の処理の指示等を入力するためのマウスやキーボード等である。
【００１５】
また、内部撮像デバイス１０６で撮像された画像は、所定の画像処理を経た後、２次記憶装置１０３に記憶される。また、情報処理装置１１５は、インターフェース（ＩＦ１０８）を介して接続された外部撮像デバイス１１１から画像データを読み込むこともできる。さらに、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１０８はインターネット１１３に接続されている。情報処理装置１１５は、インターネット１１３に接続された外部サーバー１１４より画像データを取得することもできる。
【００１６】
画像等を出力するためのプリンタ１１２は、ＩＦ１０７を介して情報処理装置１１５に接続されている。尚、プリンタ１１２はさらにインターネット上に接続されており、無線ＬＡＮ１０９経由でプリントデータのやり取りをすることもできる。
【００１７】
図２は本実施形態における上記アプリケーション等ソフトウェア構成のブロック図になっている。
【００１８】
まずハードウェア１１５が取得した画像データは、通常ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｙ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）等の圧縮形式になっている。そのため、画像コーデック部２００は、該圧縮形式を解凍していわゆるＲＧＢ点順次のビットマップデータ形式に変換する。変換されたビットマップデータは、表示・ＵＩ制御部２０１に伝達され、ディスプレイ等の表示装置１０４上に表示される。
【００１９】
上記ビットマップデータは、さらに画像センシング部２０３（アプリケーション）に入力され、同部において、詳細は後述するが、画像の様々な解析処理が行われる。上記解析処理の結果得られた画像の様々な属性情報は、所定の形式に従ってデータベース部２０２において、上述した２次記憶装置１０３に保存される。なお、以降においては、画像解析処理とセンシング処理は同義で扱う。
【００２０】
シナリオ生成部２０４（アプリケーション）では、ユーザが入力した様々な条件に応じて、自動で生成すべきレイアウトの条件を生成し、レイアウト生成部２０５（アプリケーション）では上記シナリオに従って、自動でレイアウトを生成する処理を行う。
【００２１】
生成したレイアウトは、レンダリング部２０６で表示用のビットマップデータを生成し、該ビットマップデータは表示・ＵＩ制御部２０１に送られ、結果がディスプレイ等の表示装置１０４に表示される。一方で、レンダリング結果はさらにプリントデータ生成部２０７に送られ、同部でプリンタ用コマンドデータに変換され、プリンタに送出される。
【００２２】
図３〜６は、本実施形態のアプリケーションの基本的な画像処理のフローチャートである。具体的には、図３及び４は、画像センシング部２０３のフローを示しており、複数の画像データ群を取得して、それぞれについて解析処理を施し、その結果をデータベースに格納するまでの処理の流れを示している。図５は、検出した顔位置情報に基づいて、同じ人物と思われる顔情報をグループ化するための処理の流れを示している。図６は、画像の解析情報およびユーザが入力した様々な情報に基づいて、レイアウト作成のためのシナリオを決定し、該シナリオに基づいて、自動でレイアウトを生成するための処理の流れを示している。
【００２３】
図３のＳ３０１では、画像データ群の取得を行う。画像データ群は、例えば、ユーザが、撮影画像が格納された撮像装置やメモリカードを情報処理装置１１５に接続して、これらから撮像画像を読み込むことで取得する。また、内部撮像装置で撮影され、２次記憶装置に保存されていた画像データ群を取得してもよい。あるいは、無線ＬＡＮを介して、インターネット上に接続された外部サーバー１１４等、情報処理装置１１５以外の場所から画像データ群を取得をしてもよい。
【００２４】
画像データ群を取得すると、そのサムネイル群が図８や図９に示すようにＵＩに表示される。図８の８０１に示すように２次記憶装置１０３内のフォルダ単位で画像のサムネイル８０２を表示してもよいし、図９に示すようにカレンダーのようなＵＩ９０１で日付ごとに画像データが管理されていてもよい。日付の部分９０２をクリックすることにより、同日に撮影された画像を、図８のようなサムネイル一覧で表示する。
【００２５】
次に、Ｓ３０２において、各画像のデコードを行う。具体的には、アプリケーションが、新規で保存され未だセンシング処理が行われていない画像をサーチし、抽出された各画像について、画像コーデック部２００が圧縮データからビットマップデータに変換する。
【００２６】
次に、Ｓ３０３において、上記ビットマップデータに対して、各種センシング処理を実行する。ここでいうセンシング処理には、次の表１に示すような様々な処理が含まれる。本実施形態では、センシング処理の例として、顔検出、画像の特徴量解析、シーン解析を挙げており、それぞれ表１に示すようなデータ型の結果を算出する。
【００２７】
【表１】
2014016786.tif 000003
【００２８】
以下、それぞれのセンシング処理について説明する。
【００２９】
画像の基本的な特徴量である全体の平均輝度、平均彩度は、公知の方法で求めればよいため、詳細な説明は省略する。平均彩度は、画像の各画素について、ＲＧＢ成分を公知の輝度色差成分（例えばＹＣｂＣｒ成分）に変換し（変換式省略）、Ｙ成分の平均値を求めればよい。また、平均彩度は、上記ＣｂＣｒ成分について画素毎に以下を算出し、下記Ｓの平均値を求めればよい。
【００３０】
【数１】
2014016786.tif 000004
【００３１】
また、画像内の平均色相（ＡｖｅＨ）は、画像の色合いを評価するための特徴量である。各画素毎の色相は、公知のＨＩＳ変換式を用いて求めることができ、それらを画像全体で平均化することにより、ＡｖｅＨを求めることができる。
【００３２】
また、これらの特徴量は、上述したように画像全体で算出してもよいし、例えば、画像を所定サイズの領域に分割し、各領域毎に算出してもよい。
【００３３】
次に、人物の顔検出処理について説明する。本実施形態で使用する人物の顔検出手法としては、公知の方法を用いることができる。
【００３４】
特開２００２−１８３７３１号に記載されている方法では、入力画像から目領域を検出し、目領域周辺を顔候補領域とする。この顔候補領域に対して、画素毎の輝度勾配、および輝度勾配の重みを算出し、これらの値を、あらかじめ設定されている理想的な顔基準画像の勾配、および勾配の重みと比較する。そのときに、各勾配間の平均角度が所定の閾値以下であった場合、入力画像は顔領域を有すると判定する。
【００３５】
また、特開２００３−３０６６７号に記載されている方法では、まず画像中から肌色領域を検出し、同領域内において、人間の虹彩色画素を検出することにより、目の位置を検出することができる。
【００３６】
特開平８−６３５９７号に記載されている方法では、まず、複数の顔の形状をしたテンプレートと画像とのマッチング度を計算する。そのマッチング度が最も高いテンプレートを選択し、最も高かったマッチング度があらかじめ定められた閾値以上であれば、選択されたテンプレート内の領域を顔候補領域とする。同テンプレートを用いるこことで、目の位置を検出することができる。
【００３７】
さらに、特開２０００−１０５８２９号に記載されている方法では、まず、鼻画像パターンをテンプレートとし、画像全体、あるいは画像中の指定された領域を走査し最もマッチする位置を鼻の位置として出力する。次に、画像の鼻の位置よりも上の領域を目が存在する領域と考え、目画像パターンをテンプレートとして目存在領域を走査してマッチングをとり、ある閾値よりもマッチ度が度置きい画素の集合である目存在候補位置集合を求める。そして、目存在候補位置集合に含まれる連続した領域をクラスタとして分割し、各クラスタと鼻位置との距離を算出する。その距離が最も短くなるクラスタを目が存在するクラスタと決定することで、器官位置の検出することができる。
【００３８】
その他の人物の顔検出方法としては、特開平８−７７３３４、特開２００１−２１６５１５、特開平５−１９７７９３、特開平１１−５３５２５、特開２０００−１３２６８８、特開２０００−２３５６４８、特開平１１−２５０２６７に記載されるような顔および器官位置を検出する方法が挙げられる。また、人物の顔検出処理は、特許第２５４１６８８号に記載された方法でもよく、方法は特に限定されるものではない。
【００３９】
人物の顔検出処理により、各入力画像について、人物顔の個数と各顔毎の座標位置を取得することができる。また、画像中の顔座標位置が分かることにより、顔領域の特徴量を解析することができる。例えば、顔領域毎に顔領域内に含まれる画素値の平均ＹＣｂＣｒ値を求めることにより、顔領域の平均輝度および平均色差を得ることができる。
【００４０】
また、画像の特徴量を用いてシーン解析処理を行うことができる。シーン解析処理は、例えば、出願人が開示している特開２０１０−２５１９９９号や特開２０１０−２７３１４４号等で開示されている方法により行うことができる。シーン解析処理により、風景（Ｌａｎｄｓｃａｐｅ）、夜景（Ｎｉｇｈｔｓｃａｐｅ）、人物（Ｐｏｒｔｒａｉｔ）、露出不足（Ｕｎｄｅｒｅｘｐｏｓｕｒｅ）、その他（Ｏｔｈｅｒｓ）、という撮影シーンを区別するためのＩＤを取得することができる。
【００４１】
なお、本実施形態では、上記のセンシング処理によりセンシング情報を取得したが、その他のセンシング情報を利用してもよい。
【００４２】
上記のようにして取得したセンシング情報は、データベース２０２に保存する。データベース２０２への保存形式については、例えば、図３２に示すような汎用的なフォーマット（例えば、ＸＭＬ：ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）で記述し、格納すればよい。
【００４３】
図３２（ａ）においては、各画像毎の属性情報を、３つのカテゴリに分けて記述する例を示している。
【００４４】
１番目のＢａｓｅＩｎｆｏタグは、画像サイズや撮影時情報として、あらかじめ取得した画像ファイルに付加されている情報を格納するためのタグである。ここには、画像毎の識別子ＩＤ、画像ファイルが格納されている保存場所、画像サイズ、撮影日時などが含まれる。
【００４５】
２番目のＳｅｎｓＩｎｆｏタグは、上述した画像解析処理の結果を格納するためのタグである。画像全体の平均輝度、平均彩度、平均色相やシーン解析結果が格納され、さらに、画像中に存在する人物の顔位置や顔色に関する情報が格納される。
【００４６】
３番目のＵｓｅｒＩｎｆｏタグは、ユーザが画像毎に入力した情報を格納することができるタグであるが、詳細については後述する。
【００４７】
なお、画像属性情報のデータベース格納方法については、上記に限定されるものではない。その他どのような形式で格納してもよい。
【００４８】
図３のＳ３０５では、上述したＳ３０２及びＳ３０３の処理を行った画像が最後の画像か否かを判定する。最後の画像である場合は、Ｓ３０６へ進み、最後の画像ではない場合は、Ｓ３０２へ戻る。
【００４９】
Ｓ３０６において、Ｓ３０３で検出された顔位置情報を用いて、人物毎のグループを生成する処理を行う。あらかじめ人物の顔を自動でグループ化しておくことにより、その後ユーザが各人物に対して名前を付ける作業を効率化することができる。
【００５０】
ここでの人物グループ形成は、個人認識方法を用いて、図５の処理フローにより実行する。
なお、個人認識処理は、主に、顔の中に存在する眼や口といった器官の特徴量抽出と、それらの関係性の類似度を比較することにより実行される。個人認識処理は、例えば、特許第３４６９０３１号等に開示されているので、ここでの詳細な説明は省略する。
【００５１】
図５は人物グループ生成処理Ｓ３０６の基本的なフローチャートである。
【００５２】
まず、Ｓ５０１で、２次記憶装置に保存されている画像を順次読みだしてデコード処理を行う。さらにＳ５０２でデータベース部２０２にアクセスし、該画像中に含まれる顔の個数と顔の位置情報を取得する。次に、Ｓ５０４において、個人認識処理を行うための正規化顔画像を生成する。
【００５３】
ここで正規化顔画像とは、画像内に様々な大きさ、向き、解像度で存在する顔を切り出して、すべて所定の大きさと向きになるよう、変換して切り出した顔画像のことである。個人認識を行うためには、眼や口といった器官の位置が重要となるため、正規化顔画像のサイズは、上記器官が確実に認識できる程度であることが望ましい。このように正規化顔画像を生成することにより、特徴量検出処理において、様々な解像度の顔に対応する必要がなくなる。
【００５４】
次に、Ｓ５０５で、正規化顔画像から顔特徴量を算出する。ここでの顔特徴量とは眼や口、鼻といった器官の位置、大きさや、さらには顔の輪郭などを含むことを特徴とする。
【００５５】
さらに、Ｓ５０６で、あらかじめ人物の識別子（辞書ＩＤ）毎に顔特徴量が格納されているデータベース（以降、顔辞書と呼ぶ）の顔特徴量と類似しているか否かの判定を行う。類似度は、例えば、辞書ＩＤ内部で管理されている特徴量と、新たに入力された特徴量を比較して算出する。ここで用いる特徴量は、保持されている目、鼻、口といった器官の位置や、器官間の距離等の情報である。類似度は、上記の特徴量が類似しているほど高く、類似してない場合には低い値を取るものとし、例えば０〜１００の値を取り得るものとする。そして、類似しているか否かの判定は、算出した類似度を予め保持されている閾値と比較し、類似度が閾値よりも高い場合には辞書ＩＤと同一人物であると判断する。一方、類似度が閾値よりも低い場合には、同一人物ではないものとして判定する。このような類似度判定のための閾値は、全ての辞書ＩＤに対して固定の値を一つだけ保持するようにいてもよいし、各辞書ＩＤ毎に異なった閾値を保持するようにしてもよい。
【００５６】
Ｓ５０６の判定がＹｅｓの場合Ｓ５０９に進み、同じ人物として同じ人物の辞書ＩＤに該顔の特徴量を追加する。
【００５７】
Ｓ５０６の判定がＮｏの場合Ｓ５０８に進み、現在評価対象となっている顔は、これまで顔辞書に登録された人物とは異なる人物であると判断して、新規辞書ＩＤを発行して顔辞書に追加する。Ｓ５０２〜Ｓ５０９までの処理を、入力画像群の中から検出した顔領域全てに適用して、登場した人物のグループ化を行う。
【００５８】
人物グループ生成処理の結果は、図３２（ｂ）のＸＭＬフォーマットで示すように、各顔毎に辞書ＩＤタグを用いて記述し、上述したデータベースに保存する。
【００５９】
ここで、人物グループ生成処理によって生成された顔辞書内部の様子を図２２に示す。図２２において、２２０１は辞書ＩＤを示し、２２０３は顔特徴量を示している。同じ辞書ＩＤで管理される顔特徴量は、人物認識処理によって、同一人物であると判定された顔の顔特徴量である。
【００６０】
なお、上記実施形態においては、図３に示すように、全ての画像のセンシング処理が終了した後に人物グループ生成処理を実行したが、これ以外の方法としてもよい。例えば、図４に示すように、１つの画像に対してＳ４０３でセンシング処理を実行した後に、顔検出位置情報を利用してグループ化処理Ｓ４０５を行うという作業を繰り返したとしても、同様の結果を生成することができる。
【００６１】
また、人物グループ生成処理によって得られた各人物グループは、図７のようなＵＩ７０１にて表示されることになる。同７において、７０２は人物グループの代表顔画像を表しており、その横には、該人物グループの名前を表示する領域７０３が存在する。自動の人物グループ化処理を終了した直後は、同図に示すように人物名は「Ｎｏ  ｎａｍｅ１」「Ｎｏ  ｎａｍｅ２」などと表示されている。これらの人物名を以下「人物ＩＤ」とする。また、７０４は該人物グループに含まれる複数の顔画像である。後述するが、図７のＵＩ７０１においては、「Ｎｏ  ｎａｍｅ  Ｘ」の領域７０３を指定して人物名を入力したり、人物毎に誕生日や続柄等の情報を入力することができる。
【００６２】
このとき、図２２の２２０２に示すように、辞書ＩＤ２２０１と人物ＩＤ２２０２は、それぞれ互いに関連付けられて（紐付けられて）管理される。
【００６３】
また、上記センシング処理は、オペレーティングシステムのバックグラウンドタスクを利用して実行してもよい。この場合、ユーザはコンピュータ上で別の作業を行っていたとしても、画像群のセンシング処理を継続させることができる。
【００６４】
本実施形態においては、ユーザが手動で画像に関する様々な属性情報を入力することもできる。
【００６５】
その属性情報（以降、手動登録情報）の例の一覧を、表２に記載する。手動登録情報は大きく、画像単位に設定するものと、上記処理によりグループ処理した人物に設定する情報に分かれる。
【００６６】
【表２】
2014016786.tif 000005
【００６７】
まず、画像毎に設定する属性情報として、ユーザのお気に入り度がある。お気に入り度は、その画像を気に入っているかどうかを、ユーザが手動で段階的に入力するものである。例えば、図１０に示すように、ＵＩ１００１上で、所望のサムネイル画像１００２をマウスポインタ１００３で選択し、右クリックをすることでお気に入り度を入力できるダイアログを表示する。ユーザはメニューの中で自分の好みに応じて、★の数を選択することができる。本実施形態では、お気に入り度が高いほど★の数が多くなるよう設定する。
【００６８】
また、上記お気に入り度については、ユーザが手動で設定せずに、自動で設定するようにしてもよい。例えば、ユーザが図８に示す画像サムネイル一覧表示の状態から、所望の画像ファイルをクリックし、１画像表示画面に遷移したとする。その遷移した回数を計測して、回数に応じてお気に入り度を設定してもよい。例えば、閲覧した回数が多いほど、ユーザが該画像を気に入っていると判断する。
【００６９】
また、他の例として、プリント回数をお気に入り度に設定してもよい。例えば、プリント行為を行った場合、当然その画像を気に入っていると判断してお気に入り度が高いと設定すればよい。この場合は、プリント回数を計測して、プリント回数に応じてよりお気に入り度を設定する。
【００７０】
以上説明したように、お気に入り度については、ユーザが手動で設定してもよく、閲覧回数に応じてお気に入り度を設定してもよく、プリント回数に応じてお気に入り度を設定してもよい。これらの設定及び計測した情報は、それぞれ個別に、図３２（ａ）で示すようなＸＭＬフォーマットで、データベース２０２のＵｓｅｒＩｎｆｏタグ内に格納される。例えば、お気に入り度はＦａｖｏｒｉｔｅＲａｔｅタグで、閲覧回数はＶｉｅｗｉｎｇＴｉｍｅｓタグで、プリント回数はＰｒｉｎｔｉｎｇＴｉｍｅｓタグにそれぞれ格納される。
【００７１】
また、画像毎に設定する別の情報として、イベント情報が挙げられる。イベント情報は、例えば、家族旅行“ｔｒａｖｅｌ”、卒業式“ｇｒａｄｕａｔｉｏｎ”、結婚式“ｗｅｄｄｉｎｇ”が挙げられる。
【００７２】
イベントの指定は、図１１に示すように、カレンダー上で所望の日付をマウスポインタ１１０２などで指定して、その日のイベント名を入力することにより行うことができるようにすればよい。指定されたイベント名は、画像の属性情報の一部として、図３２（ａ）に示すＸＭＬフォーマットに含まれることになる。図３２（ａ）のフォーマットでは、ＵｓｅｒＩｎｆｏタグ内のＥｖｅｎｔタグを使って、イベント名と画像を紐付けている。なお、以下、「紐づけ」とは、関連付けることを指す。
【００７３】
次に、人物の属性情報について説明する。
【００７４】
図１２は、人物の属性情報を入力するためのＵＩを示している。図１２において、１２０２は所定人物（この場合は“ｆａｔｈｅｒ”）の代表顔画像を示している。１２０３は、所定人物の人物名（人物ＩＤ）の表示領域である。また、１２０４は、他の画像の中から検出し、Ｓ５０６で顔特徴量が類似していると判断された画像（サムネイル）である。このように、図１２では、人物ＩＤ１２０３の下に、Ｓ５０６で顔特徴量が類似していると判断された画像１２０４の一覧が表示される。
【００７５】
センシング処理が終了した直後は、図７に示すように各人物グループには名前が入力されていないが、「Ｎｏ  ｎａｍｅ」の部分７０３をマウスポインタで指示することにより、任意の人物名を入力することができる。
【００７６】
また、人物毎の属性情報として、それぞれの人物の誕生日やアプリを操作しているユーザから見た続柄を設定することもできる。図１２の人物の代表顔１２０２をクリックすると、画面下部に図示するように、第１の入力部１２０５ではクリックした人物の誕生日を入力することができる。また、第２の入力部１２０６では、クリックした人物の続柄情報を入力することができる。
【００７７】
以上、入力された人物属性情報は、これまでの画像に関連付けられた属性情報とは異なり、図３２（ｂ）のようなＸＭＬフォーマットによって、画像属性情報とは別にデータベース２０２内で管理される。
【００７８】
一方、上記設定した名前は、上記ＸＭＬフォーマットとは別に、図２３の２３０２のように、辞書ＩＤと紐付け管理されてもよい。
【００７９】
本実施形態では、あらかじめ用意した様々なレイアウトテンプレートを用いてレイアウト生成処理を行う。レイアウトテンプレートとは図１３や図１４に示すようなものであり、レイアウトする用紙サイズ上に、複数の画像配置枠１３０２，１４０２，１４０３（以降、スロットと同義）を備えている。
【００８０】
このようなテンプレートは多数用意されており、あらかじめ本実施例を実行するためのソフトウェアが情報処理装置１１５にインストールされた時点で、２次記憶装置１０３に保存しておけばよい。また、その他の方法として、ＩＦ  １０７や無線ＬＡＮ１０９を介して接続されたインターネット上に存在する外部サーバー１１４から、任意のテンプレート群を取得してもよい。
【００８１】
これらのテンプレートは汎用性の高い構造化言語、例えば上述したセンシング結果の格納と同様にＸＭＬで記載されているものとする。ＸＭＬデータの例を図３３及び図３４に示す。
【００８２】
これらの例では、まずＢＡＳＩＣタグに、レイアウトページの基本的な情報を記述する。基本的な情報とは、例えば該レイアウトのテーマやページサイズ、およびページの解像度（ｄｐｉ）等が考えられる。同例Ｘにおいて、テンプレートの初期状態では、レイアウトテーマであるＴｈｅｍｅタグはブランクとなっている。また、基本情報として、ページサイズはＡ４、解像度は３００ｄｐｉを設定している。
【００８３】
また、ＩｍａｇｅＳｌｏｔタグは、上述した画像配置枠の情報を記述している。ＩｍａｇｅＳｌｏｔタグの中にはＩＤタグとＰＯＳＩＴＩＯＮタグの２つを保持し、画像配置枠のＩＤと位置を記述している。該位置情報については、図１３や図１４で図示するように、例えば左上を原点とするＸ−Ｙ座標系において定義される。
【００８４】
また、上記ＩｍａｇｅＳｌｏｔは、その他にそれぞれのスロットに対して、スロットの形状および配置すべき推奨人物グループ名を設定する。例えば、図１４のテンプレートにおいては、図３３のＳｈａｐｅタグで示すように、すべてのスロットは矩形“ｒｅｃｔａｎｇｌｅ”形状で、人物グループ名はＰｅｒｓｏｎＧｒｏｕｐタグによって“ＭａｉｎＧｒｏｕｐ”を配置することを推奨している。
【００８５】
また、図１４のテンプレートにおいては、図３４に示すように、中央に配置しているＩＤ＝０のスロットは矩形形状であることが記載されている。また、人物グループは“ＳｕｂＧｒｏｕｐ”を配置し、その他のＩＤ＝１，２と続くスロットは楕円“ｅｌｌｉｐｓｅ”形状で、人物グループは“ＭａｉｎＧｒｏｕｐ”を配置することを推奨している。
【００８６】
本実施形態においては、上述したようなテンプレートを多数保持する。
【００８７】
本実施形態に係るアプリケーションは、入力された画像群に対して解析処理を実行し、人物を自動的にグループ化してＵＩで表示することができる。また、ユーザはその結果を見て、人物グループ毎に名前や誕生日などの属性情報を入力したり、画像毎にお気に入り度などを設定することができる。さらに、テーマごとに分類された多数のレイアウトテンプレートを保持することができる。
【００８８】
以上の条件を満たす本実施形態のアプリケーションは、ある所定のタイミングで、自動的にユーザに好まれそうなコラージュレイアウトを生成し、ユーザに提示する処理を行う（以下、レイアウトの提案処理という）。
【００８９】
さらにはテーマごとに分類された多数のレイアウトテンプレートを保持することができる。
【００９０】
以上の条件を満たすと、本実施例のアプリケーションは、ある所定のタイミングに、自動的にユーザに好まれそうなコラージュレイアウトを生成し、ユーザに提示する処理を行う。これを、レイアウトの提案処理と呼ぶこととする。
【００９１】
図６は、レイアウトの提案処理を行うための基本的なフローチャートを示している。
【００９２】
まず、Ｓ６０１において、レイアウトの提案処理のシナリオを決定する。シナリオには、提案するレイアウトのテーマ及びテンプレートの決定、レイアウト内で重視する人物（主人公）の設定、レイアウト生成に用いる画像群の選定情報などが含まれる。
【００９３】
以下では、２つのシナリオを例示して、シナリオの決定方法について説明する。
【００９４】
例えば、２週間前に自動的に各人物に関する誕生日のレイアウトの提案処理を行う設定がされていたとする。図１２で自動グループ化されている人物“ｓｏｎ”の１歳の誕生日が近いとする。この場合には、提案するレイアウトのテーマは成長記録“ｇｒｏｗｔｈ”と決定する。次にテンプレートの選択を行うが、この場合には成長記録に適した図１４のようなものを選択し、図３５に示すように、ＸＭＬのＴｈｅｍｅタグの部分に“ｇｒｏｗｔｈ”と記載する。次にレイアウトを行う際に注目する主人公“ＭａｉｎＧｒｏｕｐ”として、“ｓｏｎ”を設定する。また、レイアウトを行う際に副次的に注目する“ＳｕｂＧｒｏｕｐ”として“ｓｏｎ”と“ｆａｔｈｅｒ”を設定する。次に、レイアウトに利用するための画像群を選定する。この例の場合には、データベースを参照し、上記人物“ｓｏｎ”の誕生日からこれまでに撮影した画像群のうち、“ｓｏｎ”を含む画像群を大量に抽出してリスト化する。以上が、成長記録レイアウトのためのシナリオ決定である。
【００９５】
上記とは異なる例として、１カ月以内に所定のイベント情報が登録されていた場合、レイアウトの提案処理を実行する設定がされているとする。図１１で登録したイベント情報から、例えば数日前に家族旅行に行きその画像が大量に２次記憶装置に保存されていることがわかると、シナリオ決定部は、家族旅行のレイアウトを提案するためのシナリオを決定する。この場合には、提案するレイアウトのテーマは旅行“ｔｒａｖｅｌ”と決定する。次にテンプレートの選択を行うが、この場合には図１３のようなレイアウトを選択し、図３６に示すように、ＸＭＬのＴｈｅｍｅタグの部分に“ｔｒａｖｅｌ”と記載する。次にレイアウトを行う際に注目する主人公“ＭａｉｎＧｒｏｕｐ”として、“ｓｏｎ”、“ｍｏｔｈｅｒ”、“ｆａｔｈｅｒ”を設定する。このように、ＸＭＬの特性を活かせば、“ＭａｉｎＧｒｏｕｐ”として複数の人物を設定することができる。
【００９６】
次に、レイアウトに利用するための画像群を選定する。この例の場合には、データベースを参照し、上記旅行イベントに紐付けられた画像群を大量に抽出してリスト化する。以上が、家族旅行レイアウトのためのシナリオ決定である。
【００９７】
次に、図６のＳ６０３において、上述したシナリオに基づくレイアウトの自動生成処理を実行する。図１５はレイアウト処理部の詳細な処理フローを示している。以降は、同図に沿って、各処理ステップの説明を行う。
【００９８】
まず、Ｓ１５０１で、上述したシナリオ生成処理で決定され、テーマと人物グループ情報が設定された後のテンプレート情報を取得する。
【００９９】
次に、Ｓ１５０３においては、上記シナリオで決定した画像リストに基づいて、各画像毎に該画像の特徴量をデータベースから取得し、画像群属性情報リストを生成する。ここでいう画像群情報リストとは、図３２（ａ）に示したＩＭＡＧＥＩＮＦＯタグが画像リスト分だけ並んだ構成となっている。
【０１００】
このように、本実施形態の自動レイアウト生成処理では、このように画像データそのものを直接扱うのではなく、あらかじめ画像毎にセンシング処理を行ってデータベース保存しておいた属性情報を利用する。レイアウト生成処理を行う際に、画像データそのものを対象としてしまうと、画像群を記憶するために非常に巨大なメモリ領域を必要としてしまうことを避けるためである。すなわち、これにより、レイアウト生成処理で必要なメモリ量を低減させることができる。
【０１０１】
具体的には、まず、Ｓ１５０５において、入力された画像群の属性情報を用いて、入力された画像群の中から不要画像のフィルタリングを行う。フィルタリング処理は、図１６のフローにて行う。図１６では、各画像毎に、まずＳ１６０１で全体の平均輝度がある閾値（ＴｈＹ＿ＬｏｗとＴｈＹ＿Ｈｉｇｈｔ）内に含まれているかの判定を行う。否の場合にはＳ１６０６に進み、注目画像はレイアウト対象から除去する。
【０１０２】
同様に、Ｓ１６０２〜Ｓ１６０５では、注目画像に含まれる顔領域それぞれについて、平均輝度、平均色差成分が、良好な肌色領域を示す所定閾値に含まれているかの判定を行う。Ｓ１６０２〜Ｓ１６０５のすべての判定がＹｅｓとなる画像のみ、以降のレイアウト生成処理に適用される。具体的には、Ｓ１６０２では、ＩＤ＝Ｎである顔領域のＡｖｅＹが所定閾値（ＴｈｆＹ＿ＬｏｗとＴｈｆＹ＿Ｈｉｇｈｔ）の範囲に含まれているか否かの判定を行う。Ｓ１６０３では、ＩＤ＝Ｎである顔領域のＡｖｅＣｈが所定閾値（ＴｈｆＹ＿ＬｏｗとＴｈｆＹ＿Ｈｉｇｈｔ）の範囲に含まれているか否かの判定を行う。Ｓ１６０４では、ＩＤ＝Ｎである顔領域のＡｖｅＣｒが所定閾値（ＴｈｆＹ＿ＬｏｗとＴｈｆＹ＿Ｈｉｇｈｔ）の範囲に含まれているか否かの判定を行う。Ｓ１６０５では、最後の顔であるか否かを判定する。最後の顔ではない場合は、Ｓ１６０２へ戻り、最後の顔である場合は、処理を終了する。
【０１０３】
なお、このフィルタリング処理では、以降の一時レイアウト作成処理に明らかに不要と判断できる画像の除去を目的としているため、上記閾値は比較的湯緩やかに設定することが望ましい。例えばＳ１６０１の画像全体輝度の判定において、ＴｈＹ＿ＨｉｇｈとＴｈＹ＿Ｌｏｗの差が画像ダイナミックレンジに比して極端に小さいと、それだけＹｅｓと判定される画像が少なくなってしまう。本実施形態のフィルタリング処理ではそうならないよう、両者の差をできる限り広く設定し、かつ明らかに異常画像と判断されるものは除去できるような閾値に設定する。
【０１０４】
次に図１５のＳ１５０７において、上記処理でレイアウト対象となった画像群を用いて、大量（Ｌ個）の一時レイアウトを生成する。一時レイアウトの生成は、取得したテンプレートの画像配置枠に対して、入力画像を任意に当てはめる処理を繰り返す。このときに、例えば、以下のパラメータ（画像選択・配置・トリミング）をランダムで決定する。
【０１０５】
画像選択基準としては、例えば、レイアウト中の画像配置枠がＮ個の時、画像群の中からどの画像を選択するかが挙げられる。配置基準としては、例えば、選択した複数の画像を、どの配置枠に配置するかが挙げられる。トリミング基準としては、配置した際に、どの程度のトリミング処理を行うかというトリミング率が挙げられる。トリミング率は例えば０〜１００％で表わされ、トリミングは、図１７に示すように、画像の中心を基準として所定のトリミング率で行われる。図１７では、２００１は画像全体を示し、２００２はトリミング率５０％でトリミングした際の切り取り枠を示している。
【０１０６】
上述したような画像選択・配置・トリミング基準に基づいて、可能な限り数多くの一時レイアウトを生成する。生成した各一時レイアウトは、図３７のＸＭＬのように表わすことができる。各スロットに対して、選択され配置された画像のＩＤがＩｍａｇｅＩＤタグに記述され、トリミング率がＴｒｉｍｉｎｇＲａｔｉｏタグに記述される。
【０１０７】
なお、ここで生成する一時レイアウトの数Ｌは、後述するレイアウト評価ステップでの評価処理の処理量と、それを処理する情報処理装置１１５の性能に応じて決定される。本実施形態では、例えば数十万通り以上の一時レイアウトを生成した。生成したレイアウトは、それぞれＩＤを付加して図３７のＸＭＬ形式で２次記憶装置１０３にファイル保存してもよいし、構造体など別のデータ構造を用いてＲＡＭ１０２上に記憶してもよい。
【０１０８】
次に、図１５のＳ１５０８において、大量に生成した一時レイアウトの定量評価を行う。具体的には、作成したＬ個の一時レイアウトに対して、それぞれ所定のレイアウト評価量を用いて評価を行う。本実施形態におけるレイアウト評価量の一覧を、表３に示す。表３に示すように、本実施形態で用いるレイアウト評価量は、主に３つのカテゴリに分けることができる。
【０１０９】
【表３】
2014016786.tif 000006
【０１１０】
一つ目は、画像個別の評価量である。これは画像の明るさや彩度、ブレぼけ量等の状態を判断し、スコア化するものである。以下、本実施形態のスコア化の一例について説明する。明るさの適正度は、図１８に示すように、平均輝度がある所定レンジ範囲内においてはスコア値１００とし、所定レンジ範囲から外れるとスコア値を下げるよう設定する。彩度の適正度は、図１８に示すように、画像全体の平均彩度がある所定の彩度値より大きい場合にはスコア値１００とし、所定値より小さい場合にはスコア値を除々に下げるように設定する。
【０１１１】
二つ目は、画像とスロットの適合度の評価である。画像とスロットの適合度の評価としては、例えば、人物適合度、トリミング欠け判定が挙げられる。人物適合度は、スロットに指定されている人物と、実際に該スロットに配置された画像内に存在する人物の適合率を表したものである。例を挙げると、あるスロットが、ＸＭＬで指定されているＰｅｒｓｏｎＧｒｏｕｐで、“ｆａｔｈｅｒ”、“ｓｏｎ”が指定されているものとする。この時、該スロットに割り当てられた画像に該２人の人物が写っていたとすると、該スロットの人物適合度はスコア値１００とする。片方の人物しか写っていなかったとすると、適合度はスコア値５０とし、両者とも写っていなかった場合は、スコア値０とする。ページ内の適合度は、各スロット毎に算出した適合度の平均値とする。トリミング領域１７０２の欠け判定は、例えば、図２０に示すように、画像中に存在する顔の位置２００３が判明している場合、欠けた部分の面積に応じて、０から１００までのスコア値を算出する。欠けた面積が０の場合、スコアは１００とし、逆にすべての顔領域が欠けた場合、スコア値は０とする。
【０１１２】
三つめは、レイアウトページ内のバランスを評価である。バランスを評価するための評価値としては、例えば、画像類似度、色合いばらつき、顔サイズばらつきが挙げられる。画像の類似性は、大量に生成した一時レイアウト毎に算出されるレイアウト頁内のそれぞれの画像の類似性である。例えば、旅行テーマのレイアウトを作成したい場合、あまりに似通った類似度の高い画像ばかりが並んでいたとすると、それは良いレイアウトとは言えない場合がある。したがって、例えば、類似性は、撮影日時によって評価することができる。撮影日時が近い画像は、同じような場所で撮影された可能性が高いが、撮影日時が離れていれば、その分、場所もシーンも異なる可能性が高いからである。撮影日時は、図３７で示したように、画像属性情報として、予めデータベース２０２に保存されている、画像毎の属性情報から取得することができる。撮影日時から類似度を求めるには以下のような計算を行う。例えば、今注目している一時レイアウトに表４で示すような４つの画像がレイアウトされているものとする。
【０１１３】
なお、画像ＩＤで特定される画像には、それぞれ撮影日時情報が付加されている。具体的には、撮影日時として、年月日及び時間（西暦：ＹＹＹＹ、月：ＭＭ、日：ＤＤ、時：ＨＨ、分：ＭＭ、秒：ＳＳ）が付加されている。このとき、この４つの画像間で、撮影時間間隔が最も短くなる値を算出する。
【０１１４】
【表４】
2014016786.tif 000007
【０１１５】
この場合は、画像ＩＤ１０２と１０８間の３０分が最も短い間隔である。この間隔をＭｉｎＩｎｔｅｒｖａｌとし、秒単位で格納する。すわなち３０分＝１８００秒である。このＭｉｎＩｎｔｅｒｖａｌをＬ個の各一時レイアウト毎に算出して配列ｓｔＭｉｎＩｎｔｅｒｖａｌ［ｌ］に格納する。次に、該ｓｔＭｉｎＩｎｔｅｒｖａｌ［ｌ］の中で最大値ＭａｘＭｉｎＩｎｔｅｒｖａｌ値を求める。すると、ｌ番目の一時レイアウトの類似度評価値Ｓｉｍｉｌａｒｉｔｙ［ｌ］は以下のようにして求めることができる。
Ｓｉｍｉｌａｒｉｔｙ［ｌ］＝１００×ｓｔＭｉｎＩｎｔｅｒｖａｌ［ｌ］／ＭａｘＭｉｎＩｎｔｅｒｖａｌ
すなわち、上記Ｓｉｍｉｌａｒｉｔｙ［ｌ］は、最小撮影時間間隔が大きいほど１００に近づき、小さいほど０に近づく値となっているため、画像類似度評価値として有効である。
【０１１６】
次に、色合いのバラつきについて説明する。例えば旅行テーマのレイアウトを作成したい場合、あまりに似通った色（例えば、青空の青、山の緑）の画像ばかりが並んでいたとすると、それは良いレイアウトとは言えない場合がある。この場合は、色のばらつきの大きいものを高い評価とする。注目しているｌ番目の一時レイアウト内に存在する画像の平均色相ＡｖｅＨの分散を算出して、それを色合いのバラつき度ｔｍｐＣｏｌｏｒＶａｒｉａｎｃｅ［ｌ］として格納する。次に、ｔｍｐＣｏｌｏｒＶａｒｉａｎｃｅ［ｌ］の中での最大値ＭａｘＣｏｌｏｒＶａｒｉａｎｃｅ値を求める。すると、ｌ番目の一時レイアウトの色合いバラつき度の評価値ＣｏｌｏｒＶａｒｉａｎｃｅ［ｌ］は以下のようにして求めることができる。
ＣｏｌｏｒＶａｒｉａｎｃｅ［ｌ］＝１００×ｔｍｐＣｏｌｏｒＶａｒｉａｎｃｅ［ｌ］／ＭａｘＣｏｌｏｒＶａｒｉａｎｃｅ
上記ＣｏｌｏｒＶａｒｉａｎｃｅ［ｌ］は、ページ内に配置された画像の平均色相のバラつきが大きいほど１００に近づき、小さいほど０に近づく値となる。したがって、色合いのばらつき度評価値として用いることができる。
【０１１７】
次に、顔の大きさのバラつき度について説明する。例えば、旅行テーマのレイアウトを作成したい場合、レイアウト結果を見て、あまりに似通った顔のサイズの画像ばかりが並んでいたとすると、それは良いレイアウトとは言えない場合がある。レイアウト後の紙面上における顔の大きさが、小さいものもあれば大きいものもあり、それらがバランスよく配置されていることが、良いレイアウトと考える。この場合は、顔のサイズのばらつきの大きいものを高い評価とする。注目しているｌ番目の一時レイアウト内に配置された後の顔の大きさ（顔位置の左上から右下までの対角線の距離）の分散値を、ｔｍｐＦａｃｅＶａｒｉａｎｃｅ［ｌ］として格納する。次に、該ｔｍｐＦａｃｅＶａｒｉａｎｃｅ［ｌ］の中での最大値ＭａｘＦａｃｅＶａｒｉａｎｃｅ値を求める。すると、ｌ番目の一時レイアウトの顔サイズバラつき度の評価値ＦａｃｅＶａｒｉａｎｃｅ［ｌ］は、以下のようにして求めることができる。
ＦａｃｅＶａｒｉａｎｃｅ［ｌ］＝１００×ｔｍｐＦａｃｅＶａｒｉａｎｃｅ［ｌ］／ＭａｘＦａｃｅＶａｒｉａｎｃｅ
上記ＦａｃｅＶａｒｉａｎｃｅ［ｌ］は、紙面上に配置された顔サイズのバラつきが大きいほど１００に近づき、小さいほど０に近づく値となる。したがって、顔サイズのバラつき度評価値として用いることができる。
【０１１８】
またその他カテゴリとして、ユーザの嗜好性評価が考えられる。
【０１１９】
以上説明したような、各一時レイアウト毎に算出した複数の評価値を、以下では統合化して、各一時レイアウト毎のレイアウト評価値とする。１番目の一時レイアウトの統合評価値を、ＥｖａｌＬａｙｏｕｔ［ｌ］とし、上記で算出したＮ個の評価値（表３の評価値それぞれを含む）の値を、ＥｖａｌＶａｌｕｅ［ｎ］とする。このとき、統合評価値は以下で求めることができる。
【０１２０】
【数２】
2014016786.tif 000008
【０１２１】
上式において、Ｗ［ｎ］は、表３で示したシーン毎の各評価値の重みである。この重みはレイアウトのテーマ毎に異なる重みを設定する。例えば、表３に示すようにテーマを成長記録“ｇｒｏｗｔｈ”と旅行“ｔｒａｖｅｌ”で比較した場合、旅行テーマの方は、できるだけ良質の写真をいろいろな場面で数多くレイアウトすることが望ましい場合が多い。このため、画像の個別評価値やページ内のバランス評価値を重視する傾向に設定する。一方、成長記録“ｇｒｏｗｔｈ”の場合、画像のバリエーションよりは、成長記録の対象となる主人公が確実にスロットに適合しているか否かが重要である場合が多い。このため、ページ内バランスや画像個別評価よりも、画像・スロット適合度評価を重視する傾向に設定する。なお、本実施形態におけるテーマ毎の重要度は表３に示すように設定した。
【０１２２】
このようにして算出したＥｖａｌＬａｙｏｕｔ［ｌ］を用いて、Ｓ１７０９では、レイアウト結果表示のためのレイアウトリストＬａｙｏｕｔＬｉｓｔ［ｋ］を生成する。レイアウトリストは、予め定められた個数（例えば５個）に対して、ＥｖａｌＬａｙｏｕｔ［ｌ］のうち、評価値が高いもの順に識別子ｌを記憶しておく。例えば最も良いスコアを出したものが、ｌ＝５０番目に作成した一時レイアウトであった場合、ＬａｙｏｕｔＬｉｓｔ［０］＝５０となる。同様に、ＬａｙｏｕｔＬｉｓｔ［１］以降は、スコア値が２番目以降の識別子ｌを記憶しておく。
【０１２３】
図６に戻って、上記処理によって得られたレイアウト結果を、図６のＳ６０５でレンダリングした結果を図２１のように表示する。Ｓ６０５では、まずＬａｙｏｕｔＬｉｓｔ［０］に格納されているレイアウト識別子を読み出し、識別子に相当する一時レイアウト結果を、２次記憶装置１０３あるいはＲＡＭ１０２上から読み出す。レイアウト結果には、上述したようにテンプレート情報とテンプレート内に存在するスロット毎に、割り当てられた画像名が設定されている。したがって、これらの情報に基づいて、情報処理装置１１５上で動作するＯＳの描画関数を用いて、該レイアウト結果をレンダリングし、図２１の２１０２のように表示することになる。
【０１２４】
図２１では、Ｎｅｘｔボタン２１０４を押下することにより、次点スコアであるＬａｙｏｕｔＬｉｓｔ［１］の識別子を読み出し、上記と同様にレンダリング後、表示を行う。これにより、ユーザは様々なバリエーションの提案レイアウトを閲覧することができる。また、Ｐｒｅｖｉｏｕｓボタン２１０３を押下することにより、前に表示したレイアウトを再表示することができる。さらに、表示されたレイアウトが気に入った場合には、プリントボタン２１０５を押下することで、情報処理装置１１５に接続されたプリンタ１１２からレイアウト結果２１０２をプリントアウトすることができる。
【０１２５】
ここで、本実施形態に係る個人認識時に使用する顔辞書の更新処理に関して詳細に説明する。なお、ここでいう顔辞書とは、個人認識に用いる顔認識情報である。
【０１２６】
ここで、本実施形態に係る個人認識時に使用する顔辞書の更新処理に関して詳細に説明する。
【０１２７】
図１２に示すように、ＵＩ上に表示された顔グループの中には誤認識が発生することがある。例えば、同一人物であるはずのｆａｔｈｅｒが、別人物であると判断され、人物グループ生成処理において、所定の顔領域が誤ったグループに振り分けられることがある。      
【０１２８】
このようなケースにおけるユーザの修正作業について、図１２を用いて説明する。すなわち、図１２において、ｆａｔｈｅｒのグループに、ｆａｔｈｅｒとは別人の顔ｓｏｎの顔画像が誤認識により表示されている場合を例に挙げて説明する。この場合、ユーザは、マウスポインタ１２０７を操作して、誤っている顔画像１２０４をドラッグして、正しい人物グループであるｓｏｎのグループに移動させることで、ＵＩにおいて顔画像１２０４が正しいグループにグルーピングされる。すなわち、ユーザによる修正指示により、ＵＩにおいて顔画像１２０４が正しいグループにグルーピングされる。このユーザによる操作は、顔画像１２０４の人物グループにおいて人物名を、ｆａｔｈｅｒからｓｏｎに変更したことと同義である。
【０１２９】
このユーザによる操作は、左から３番目の顔の画像１２０４は、ｆａｔｈｅｒではなくｓｏｎであることを明示的に示している。すなわち、このようなユーザ操作は、誤った人物情報と正しい人物情報の両者を示している。本実施形態では、この操作情報を顔辞書に反映させることで、以降の認識精度を向上させる。
【０１３０】
本実施形態では、このユーザによる操作に基づいて、辞書の修正、言い換えれば、辞書の更新を行う。
【０１３１】
ここで、図２３は、辞書の内部構成を示す図である。図２３において、辞書には、各顔特徴量２３０４が所定の類似度以上の特徴量毎に分類されており、顔特徴量群２３０３として保持されている。各顔特徴量群２３０４には、辞書ＩＤ２３０１と、人物ＩＤ２３０２が付加されている。辞書ＩＤは、辞書において顔特徴量群を特定するものである。人物ＩＤは、顔特徴量の人物を特定するものである。
【０１３２】
本実施形態では、図１２に示すＵＩ上の左から３番目の顔の画像１２０４は、図２３（ａ）に示す辞書の辞書ＩＤ＝１の左から３番目に登録されている顔特徴量２３０４と対応する。したがって、ユーザによる移動操作に伴って、図２３（ａ）においてｆａｔｈｅｒに対応付けられた辞書ＩＤ＝１で特定される顔特徴量群２３０３のうち左から３番目に登録されている顔特徴量２３０４を、図２３（ｂ）に示すようにｓｏｎの顔特徴量群２３０３に移動させる。言い換えれば、人物ＩＤ＝ｆａｔｈｅｒに対応付けられた顔特徴量群２３０３の中から、修正対象となった顔に対応する特徴量２３０４を除去すると共に、人物ＩＤ＝ｓｏｎに対応付けられた顔特徴量群２３０３に、修正対象となった顔に対応する特徴量２３０４を登録する。
【０１３３】
上述した方法により、辞書の内容を更新することで、以降に行う認識処理において、顔特徴量２４０１と類似したｓｏｎの顔が入力された場合、ｆａｔｈｅｒではなく、正しくｓｏｎと判定される確率が高まる。すなわち、個人認識の精度を向上させることができる。これにより、以降のユーザの修正作業の手間を省くことができる。すなわち、ユーザの１回の修正作業により、以降の個人認識処理において個人認識の精度を向上させることができる。
【０１３４】
さらに、上述した方法により、精度を向上させた顔認識情報を用いて以降の自動レイアウト処理を行うことで、自動生成するレイアウトの精度を向上させることができる。
【０１３５】
（実施形態２）
本実施形態では、顔辞書の更新処理以外は実施形態１と同様であるので、重複する説明は省略する。
【０１３６】
図２４を用いて、本実施形態について説明する。図２４は、辞書の内部構成を示す図である。図２４において、辞書には、各顔特徴量が所定の類似度以上の特徴量毎に分類されており、顔特徴量群２５０４として保持されている。各顔特徴量群２５０４には、辞書ＩＤ２５０１と、人物ＩＤ２５０２が付加されている。ここでは、予め図２５に示すように、一つの人物ＩＤ＝ｆａｔｈｅｒが、複数の辞書ＩＤ＝１，２を管理する場合について説明する。
【０１３７】
人物認識処理では、同一人物であっても、顔の特徴量が異なるために別の人物として認識される場合がある。同一人物で顔の特徴量が異なる場合としては、例えば、怒った顔と笑った顔が挙げられる。これは、怒った顔と笑った顔では、目や口といった器官の特徴量が異なるためである。同一人物であっても特徴量が異なる場合は、それぞれ異なる辞書ＩＤが対応づけられるため、ＵＩ上では別人として表示されることになる。
【０１３８】
しかしながら、ＵＩ上において、例えば、図７のＮｏ  ｎａｍｅ１が笑ったｆａｔｈｅｒ、Ｎｏ  ｎａｍｅ２が怒ったｆａｔｈｅｒであった場合、ユーザはどちらにもｆａｔｈｅｒという名前を付ける操作を行う。これにより、ＵＩ表示上は、Ｎｏ  ｎａｍｅ１とＮｏ  ｎａｍｅ２は、一つのｆａｔｈｅｒという人物ＩＤによって管理されるため、同じグループとして表示される。本実施形態では、上述したユーザによる人物ＩＤの修正に伴って、辞書では人物ＩＤのみを修正し、辞書ＩＤはそのまま別々に管理する。辞書において人物ＩＤによって管理せずに、辞書ＩＤを別々に管理することにより、類似度判定の精度を維持することができる。なお、辞書において元々別人として分類されていた顔特徴量を一人の人物として結合すると、その辞書を用いて類似度判定すると、類似の許容度が拡大し、誤認識を生じやすくなる。
図２４は、ＵＩ表示上は一つの人物ＩＤ（＝ｆａｔｈｅｒ）でありながら、人物ＩＤが複数の辞書ＩＤに紐付けられている顔辞書構成を示している。図２４は、ＩＤ３に紐づいたｓｏｎの顔特徴量群２５０４のうち顔特徴量２５０３は、実際はｆａｔｈｅｒの顔特徴量である場合を示している。すなわち、顔特徴量２５０３は、ｆａｔｈｅｒが誤ってｓｏｎと認識されている。
【０１３９】
本実施形態では、図示しないが、ＵＩ上の左から２番目の顔の画像は図２４に示す辞書の辞書ＩＤ＝３の左から２番目に登録されている顔特徴量２５０３に対応する。このとき、ユーザは、ＵＩ表示上誤った人物グループに登録されている画像を、マウスポインタ等を利用して正しい人物グループであるｆａｔｈｅｒにドラッグアンドドロップする操作を行うことで、人物ＩＤをｓｏｎ  からｆａｔｈｅｒに変更することができる。
【０１４０】
このときの顔辞書の特徴量の更新処理について、図２５のフローチャートを用いて説明する。
【０１４１】
まずＳ２６０１において、人物ＩＤに対応付けられた辞書ＩＤにおいて、修正対象となった顔に対応する顔特徴量２５０３を除去する。
【０１４２】
次に、Ｓ２６０２で、修正後の人物ＩＤに対応付けられた辞書ＩＤが複数であるか否かを判定する。複数であった場合は、Ｓ２６０３へ進み、１つであった場合は、Ｓ２６０４へ進む。
【０１４３】
Ｓ２６０４では、該辞書ＩＤに対応する特徴量２５０３を追加する。
【０１４４】
Ｓ２６０３では、顔特徴量２５０３を追加すべき辞書ＩＤを特定する。まず、修正対象となった顔に対応する特徴量２５０３を、修正後の人物ＩＤに対応づけられる２以上の辞書ＩＤそれぞれに含まれる特徴量と比較する。特徴量の比較は、特徴量同士の類似度の比較により行う。例えば、特徴量には目や鼻、口、輪郭といった顔の特徴位置の情報が含まれているため、特徴位置の情報を比較することで、類似度を算出することができる。そして、平均類似度が高い辞書ＩＤに特徴量２５０３を追加する。
【０１４５】
以上により、辞書内容の更新を終了する。
【０１４６】
本実施形態では、特徴量２５０３と辞書ＩＤ１，２に含まれる特徴量との類似度を算出し、辞書ＩＤ毎の平均類似度を算出し、該平均類似度が高い辞書ＩＤに、特徴量２５０３を追加する。
【０１４７】
本実施形態では、実施形態１と同様に、ユーザの操作に伴って、辞書を更新することにより、以降に行う辞書を用いた認識処理において、個人認識の精度を向上させることができる。これにより、以降のユーザの修正作業の手間を省くことができる。すなわち、ユーザの１回の修正作業により、以降の個人認識処理において個人認識の精度を向上させることができる。
【０１４８】
さらに、上述した方法により、精度を向上させた顔認識情報を用いて以降の自動レイアウト処理を行うことで、自動生成するレイアウトの精度を向上させることができる。
【０１４９】
また、上述したように、個人認識処理においては、同一人物であることを判定するための特徴量に、類似度が低いものが混在すると、認識判定の許容度が広がり、誤認識が増加するという問題がある。これに対し、本実施形態では、１つの人物ＩＤに対し、特徴量の異なる辞書ＩＤを対応付けることを許容することにより、類似度判定の精度を向上させることができる。
【０１５０】
したがって、各辞書ＩＤ内部に類似度が低い特徴量を混在させることを防止することができ、以降の認識精度の低下を防止することができる。
【０１５１】
（実施形態３）
本実施形態では、顔辞書の更新処理以外は実施形態１と同様であるので、重複する説明は省略する。本実施形態では、図２３などで示した顔辞書の構成について、それぞれの辞書ＩＤに登録できる顔特徴量の個数に制限がある場合について説明する。
【０１５２】
本実施形態では、辞書ＩＤで特定される顔特徴量群に登録できる顔特徴量の個数に制限を設けている。これにより、表情が異なる特徴量、言い換えれば、類似度が離れた特徴量が多く混在することによる認識精度の低下を抑制することができる。認識精度の低下は、異なる特徴量が多く混在すると、同一人物であると判断するための許容度が広がるためによる生じる傾向があるためである。
【０１５３】
上記を鑑みると、同一人物であると判定するための顔特徴量の数には、上限値を設定することが望ましい。したがって、本実施形態では、同一人物であると判定するための顔特徴量の数の上限値Ｎｈを設定した。
【０１５４】
本実施形態の辞書更新の方法について図２６を用いて説明する。図２６は、顔特徴量の数の上限として、上限値Ｎｈ＝５が設定された辞書構成である。すなわち、本実施形態では、各辞書ＩＤに登録可能な顔特徴量は５個を上限としている。
【０１５５】
ここで、辞書ＩＤ＝３で人物ＩＤ＝ｓｏｎである顔特徴量群２７０４に含まれる顔特徴量２７０３は、実際はｆａｔｈｅｒの顔特徴量であるとする。
【０１５６】
この場合、ユーザはＵＩ操作によって、実施形態１と同様にｓｏｎグループに表示されているｆａｔｈｅｒの顔画像を、正しいｆａｔｈｅｒグループに修正する操作を行う。
【０１５７】
この時の辞書更新処理を、図２７のフローチャートに従って説明する。
【０１５８】
図２７において、まずＳ２８０１において、実施形態２のＳ２６０１と同様に、辞書ＩＤの顔特徴量群から修正対象である顔の特徴量を削除する。
【０１５９】
次に、Ｓ２８０２において、辞書ＩＤの数値を特定する変数Ｎの値を初期化する。
【０１６０】
次にＳ２８０３において、修正した後の人物ＩＤ（本実施形態の場合ｆａｔｈｅｒ）に対応付けられた辞書ＩＤのうち、特徴量２８０３と平均類似度がＮ番目に高い辞書ＩＤを特定する。ここでは、平均類似度が１番目に高い辞書ＩＤがＩＤ＝１であったとする。
【０１６１】
次に、Ｓ２８０４において、辞書ＩＤの平均類似度が所定の閾値Ｓｔｈ以上であるか否かを判定する。閾値Ｓｔｈ以上である場合は、Ｓ２８０５へ進み、閾値Ｓｔｈ未満である場合は、Ｓ２８０８で辞書ＩＤを新設する。
【０１６２】
Ｓ２８０８では、類似度が低い特徴量を同じ辞書ＩＤ内に混在させることは避けたいため、辞書ＩＤを新設し、Ｓ２８０９において、新設した辞書ＩＤに特徴量２７０３を追加する。このときの辞書の内部の構成を図２８（ａ）に示す。図２８（ａ）では、ユーザ操作により、特徴量はｆａｔｈｅｒのものであるとわかっているので、新規辞書ＩＤ＝４を人物ＩＤ＝ｆａｔｈｅｒに紐付けて、特徴量２９０４を保存する。
【０１６３】
Ｓ２８０５では、辞書ＩＤに空きがあるかどうかを判定する。辞書ＩＤに空きがある場合は、Ｓ２８０９へ進み該辞書ＩＤに特徴量を追加する。一方、辞書ＩＤに空きがない場合は、ＳＳ２８０６へ進む。本実施形態では、最も平均類似度が高い辞書ＩＤはＩＤ＝１であるが、図２７によれば、ＩＤ＝１はすでに顔特徴量が５個入っているため、Ｓ２８０５の判定はＮｏとなる。
【０１６４】
Ｓ２８０６では、変数Ｎが最大値であるか否かを判定する。具体的には、変数Ｎが各人物ＩＤに紐づけられている辞書ＩＤのうち最大値に該当するか否かを判定する。最大値である場合は、Ｓ２８０８へ進み、最大ではない場合は、Ｓ２８０７へ進む。本実施形態の場合は、ｆａｔｈｅｒで紐付けられている辞書ＩＤの総数Ｎｍａｘ＝２であるかどうかが判定される。そして、Ｎ＝１であるため、判定はＮｏとなり、Ｓ２８０７において変数Ｎがインクリメントされる。
【０１６５】
Ｓ２８０９では、特徴量を辞書ＩＤに追加して、処理を終了する。
【０１６６】
Ｎ＝２の場合について簡単に説明する。Ｓ２８０３でＮ＝２番目に平均類似度が高い辞書ＩＤが特定されるが、この場合は辞書ＩＤ＝２であるとする。この辞書ＩＤ＝２に含まれる特徴量について、平均類似度を算出し、Ｓ２８０４において閾値Ｓｔｈと比較する。平均類似度が閾値Ｓｔｈ以上であった場合、Ｓ２８０５で空きがあるか確認する。図２８（ｂ）では、辞書ＩＤ＝２には４つの顔特徴量が登録されているため、空きが存在すると判定され、Ｓ２８０９において、該辞書ＩＤ＝２に特徴量２７０３を追加する。
【０１６７】
以上のように、本実施形態では、修正後の辞書更新については、各辞書ＩＤ毎の平均類似度と空きがあるか否かの判定により、更新を行う。そして、空きが存在しない場合や、平均類似度が所定閾値より低い場合には、辞書ＩＤを新設し、それを修正後の人物ＩＤと紐付けることにより、類似度の許容度の拡大による認識精度の低下を抑制する。また、実施形態１と同様に、以降の認識処理の精度を向上させることができる。
【０１６８】
（実施形態４）
本実施形態では、顔辞書の更新処理以外は実施形態３と同様であるので、重複する説明は省略する。
【０１６９】
ここで、図２９のフローチャートを用いて本実施形態の辞書更新について説明する。なお、図２９のフローチャートにおけるＳ３１０１〜Ｓ３１０４は、実施形態３のＳ２８０１〜Ｓ２８０４と同様であるので説明を省略する。
【０１７０】
Ｓ３１０５では、辞書ＩＤには空きがあるか否かを判定し、空きがある場合はＳ３１０９へ進み、空きがない場合はＳ３１０６へ進む。
【０１７１】
Ｓ３１０６では、特徴量の入れ替えを行うか否かを判定する。すなわち、入れ替えるべき特徴量が存在するか否かの判定を行う。特徴量の入れ替えるべき特徴量が存在すると判定した場合は、Ｓ３１０８へ進み、入れ替えるべき特徴量が存在しないと判定した場合は、Ｓ３１０７へ進む。
【０１７２】
ここで、入れ替えを行うか否かの判定処理について説明する。図２７の辞書構成において、修正の対象となっている特徴量２７０３に対して平均類似度が最も高い辞書ＩＤはＩＤ＝１であるとし、このときの平均類似度をＳ０とする。図２７では、辞書ＩＤ＝１は既に空きが存在しない。したがって、既に登録してある５個の特徴量と、修正の対象となっている特徴量２７０３とを比較して、特徴量２７０３と入れ替えるべき特徴量が存在するか否かの判定を行う。
【０１７３】
具体的には、まず、修正の対象となっている特徴量２７０３と平均類似度が最も高いと想定する辞書ＩＤ＝１に含まれている５つの特徴量それぞれを、Ｆ１，Ｆ２，Ｆ３，Ｆ４，Ｆ５とする。
【０１７４】
次に、各特徴量と他の特徴量とを比較して、平均類似度を算出する。具体的には、まず、特徴量Ｆ１について、Ｆ２〜Ｆ５までの特徴量との類似度を算出し、その平均類似度をＳ１とする。類似度の算出方法は、特に限定されず、例えば、公知の方法を用いることができる。本実施形態では、特徴量として保持されている目、鼻、口といった器官の位置情報についてそれぞれの差分を算出し、該差分の合計が小さいほど、互いの類似度は高いものとした。特徴量Ｆ２に関しても同様に、Ｆ２以外の４つの特徴量と類似度を比較して、平均類似度Ｓ２を算出する。このようにして、平均類似度Ｓ１〜Ｓ５を算出する。
【０１７５】
次に、平均類似度のうち、最も低い類似度を特定し、上述した特徴量２７０３の辞書ＩＤ＝１に対する類似度Ｓ０とを比較して、最も低い類似度が類似度Ｓ０よりも小さい場合は、入れ替えるべき特徴量が存在すると判断する。例えば、最も低い類似度がＳ４であった場合、最低類似度Ｓ４と上述した特徴量２７０３の辞書ＩＤ＝１に対する類似度Ｓ０とを比較して、Ｓ４＜Ｓ０となった場合には、Ｆ４と特徴量２７０３を入れ替えるべきと判断する。
【０１７６】
Ｓ３１０８では、特徴量の入れ替えを行う。例えば、上述した例の場合は、特徴量Ｆ４と特徴量２７０３の入れ替えを行う。その結果、図３０に示すような辞書構成となる。図３０における特徴量３２０３は、図２６の特徴量２７０３と同一である。
【０１７７】
本実施形態では、平均類似度が少しでも高い特徴量で各辞書ＩＤを構成することにより、類似の許容度を狭く設定することができ、以降の認識精度を高めることができる。
【０１７８】
なお、本実施形態では、平均類似度が最も低いものを更新候補、すなわち、辞書の入れ替えの対象とする方法について説明したが、本発明はこれに限定されるものではない。類似度が高い辞書ＩＤを特定し、該辞書ＩＤに含まれる特徴量と修正の対象である顔の特徴量を比較して、更新を行うものであれば、同様の効果が得られる。
【０１７９】
（実施形態５）
本実施形態では、顔辞書の更新処理以外は実施形態３と同様であるので、重複する説明は省略する。
【０１８０】
実施形態１〜４では、いずれも、修正対象となった顔の人物ＩＤの修正先の辞書の更新について説明してきたが、本実施形態では、修正前の情報に基づく類似度判定の方法について述べる。
【０１８１】
図３１を用いて、本実施形態の類似度判定方法について説明する。図３１は、本実施形態に係る辞書構成を示す図である。図３１（ａ）において、辞書ＩＤ＝１で人物ＩＤ＝ｆａｔｈｅｒの顔特徴量群に含まれている特徴量３３０１は、実際は、ｓｏｎの特徴量であるとする。すなわち、顔特徴量３３０１は、ｓｏｎが誤ってｆａｔｈｅｒと認識されているものとする。
【０１８２】
本実施形態では、同一人物であるか否かの判定に用いる類似度閾値３３０２は、辞書ＩＤ毎に設定されている。類似度閾値は異なる値を設定することができるが、図３１（ａ）では、初期状態としていずれも同じ「８０」が設定されている。
【０１８３】
本実施形態では、図示しないがＵＩ上の左から３番目の顔の画像は、図３１（ａ）に示す辞書の辞書ＩＤ＝３の左から３番目に登録されている顔特徴量３３０１に対応するとする。このとき、ユーザは、ＵＩ表示上で、誤ったグループに登録された画像を、マウスポインタ等を利用して正しい人物グループであるｓｏｎにドラッグアンドドロップする操作を行うことで、人物ＩＤをｆａｔｈｅｒからｓｏｎに変更する。
【０１８４】
本実施形態では、ユーザの操作に伴って、もともと誤認識が発生していた辞書ＩＤ＝１の類似度閾値を変更する。具体的には、誤認識が発生していた辞書ＩＤ＝１に関しては、図３１（ｂ）に示すように、類似度閾値３４０２を初期状態から所定量増加して、類似度判定を厳しく設定する。誤認識が発生していたということは、辞書ＩＤ＝１で管理されている顔特徴量は、なんらかの理由で誤認識を発生し易い特徴量群であったといえるためである。誤認識が発生しやすい特徴量群であった理由としては、例えば、表情の異なる特徴量群が混在している場合が挙げられる。
【０１８５】
ユーザの操作に伴って、辞書の更新を行うと共に類似度判定を厳しく設定しなおすことにより、次に新しい顔の特徴量が入力された場合に、辞書ＩＤ＝１で再び誤認識を発生させる確率を下げることができる。したがって、個人認識の精度を向上させることができる。
【０１８６】
なお、本実施形態では、類似度閾値を８０から８５に増加させたが、本発明はこれに限定されるものではなく、他の値や増加量を用いてもよい。
【０１８７】
（他の実施形態）
以上、本発明の各実施形態を説明したが、本発明の基本的構成は上述したものに限定されるものではない。以上説明した実施例は本発明の効果を得るための一手段であり、類似の別手法を用いたり、異なるパラメータを用いたとしても、本発明と同等の効果が得られる場合は、本発明の範疇に含まれることは言うまでもない。
【０１８８】
例えば、実施形態４では、所定の辞書ＩＤの特徴量群に空きがない場合は、辞書ＩＤを新設したり、その次に類似する辞書ＩＤの特徴量群に顔特徴量を追加するようにしたが、特徴量を辞書に登録しなくてもよい。
【０１８９】
本実施形態では、ユーザが画像グループをマウスポインタによりドラッグ操作することで、人物グループの結合処理を実行する例を示したが、操作はマウスポインタによる操作に限定されるものでもない。
【０１９０】
また、上述した実施形態では、オブジェクトとして人物を例に挙げて説明したが、オブジェクトは人物とは限らない。犬や猫などのペットの認識処理を行ってこれらを認識することにより、オブジェクトとしてペットを設定することができる。また、エッジ検出などの形を認識処理によれば、建物や小物なども認識できるため、オブジェクトとして、建物や小物などを設定することができる。これらの場合、オブジェクトの特徴量を抽出して、辞書登録すれば、上述した実施形態と同様の方法により、画像処理を行うことができる。
【０１９１】
上述した実施形態では、ユーザ操作による修正指示に応じて、オブジェクト（人物）をオブジェクト毎に分類したグループ表示を修正して表示装置１０４に表示させるように表示制御を行ったが、これに限定されるものではない。例えば、表示装置１０４に表示させなくてもよい。この場合、画像データから抽出したオブジェクトは、オブジェクト毎に分類して管理し、ユーザの修正指示があった場合にバックグラウンドで、オブジェクトの分類を変更・修正して管理するようにすればよい。このように管理することで、図１５で説明したレイアウト生成処理において、適切なレイアウトを生成することができる。  上述した実施形態では、レイアウト出力物として、１ページに複数の画像を配置した出力物を生成する例を挙げて説明したが、本発明は、複数ページのアルバム出力にも適用することができる。
【０１９２】
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、プログラムは、１つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、一部又は全部をハードウェアによって実現するようにしてもよい。
【図１】
2014016786.tif 000009
【図２】
2014016786.tif 000010
【図３】
2014016786.tif 000011
【図４】
2014016786.tif 000012
【図５】
2014016786.tif 000013
【図６】
2014016786.tif 000014
【図７】
2014016786.tif 000015
【図８】
2014016786.tif 000016
【図９】
2014016786.tif 000017
【図１０】
2014016786.tif 000018
【図１１】
2014016786.tif 000019
【図１２】
2014016786.tif 000020
【図１３】
2014016786.tif 000021
【図１４】
2014016786.tif 000022
【図１５】
2014016786.tif 000023
【図１６】
2014016786.tif 000024
【図１７】
2014016786.tif 000025
【図１８】
2014016786.tif 000026
【図１９】
2014016786.tif 000027
【図２０】
2014016786.tif 000028
【図２１】
2014016786.tif 000029
【図２２】
2014016786.tif 000030
【図２３】
2014016786.tif 000031
【図２４】
2014016786.tif 000032
【図２５】
2014016786.tif 000033
【図２６】
2014016786.tif 000034
【図２７】
2014016786.tif 000035
【図２８】
2014016786.tif 000036
【図２９】
2014016786.tif 000037
【図３０】
2014016786.tif 000038
【図３１】
2014016786.tif 000039
【図３２】
2014016786.tif 000040
【図３３】
2014016786.tif 000041
【図３４】
2014016786.tif 000042
【図３５】
2014016786.tif 000043
【図３６】
2014016786.tif 000044
【図３７】
2014016786.tif 000045