(57)【特許請求の範囲】
【請求項１】
第一の画像群において処理対象人物が登場する画像の数を取得する第一の取得手段と、
前記第一の画像群と前記第一の画像群とは異なる画像群とを含む複数の画像群を包含する第二の画像群において、前記複数の画像群の中から前記処理対象人物が登場する画像群の数を取得する第二の取得手段と、
前記第一の取得手段により取得された、前記第一の画像群において前記処理対象人物が登場する画像の数を用いて求められる第一の重要度と、前記第二の取得手段により取得された、前記第二の画像群において前記処理対象人物が登場する画像群の数を用いて求められる第二の重要度とのうち少なくともいずれかに基づいて、前記処理対象人物が重要人物かを決定する決定手段と、
前記決定手段にて決定された結果に基づき、画像群から出力対象の画像を選択する選択手段と
を有し、
前記決定手段は、前記第一の重要度が第一の閾値を超える場合は、前記処理対象人物は重要人物であると決定し、前記第一の重要度が前記第一の閾値を超えない場合であっても前記第二の重要度が第二の閾値を超える場合は、前記処理対象人物は重要人物であると決定することを特徴とする情報処理装置。
【請求項２】
前記決定手段は、前記第一の画像群にて登場回数が最も多い人物が登場する画像の数と、前記第一の画像群に登場する前記処理対象人物が登場する画像の数との比により、前記処理対象人物の前記第一の重要度を求めることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記決定手段は、
前記第一の取得手段により取得された、前記第一の画像群における前記処理対象人物が登場する画像の数のみを用いて前記第一の重要度を決定できるか否かを判定し、
決定できないと判定された場合には、前記第二の画像群に含まれる複数の画像群のうち、前記第一の画像群に類似する第三の画像群を特定し、前記第一の画像群において前記処理対象人物が登場する画像の数と前記第三の画像群において前記処理対象人物が登場する画像の数とを用いて前記処理対象人物の前記第一の重要度を決定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記決定手段は、前記第一の画像群において登場する回数が最も多い人物が登場する画像の数が所定の閾値よりも少ない場合に、前記第一の画像群における前記処理対象人物が登場する画像の数のみを用いて前記第一の重要度を決定できないと判定することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記決定手段は、前記第二の画像群に含まれる複数の画像群のうち、前記第一の画像群に登場する全ての人物が登場する画像群を、前記第一の画像群に類似する前記第三の画像群として特定することを特徴とする請求項３または４に記載の情報処理装置。
【請求項６】
画像から人物の顔を検出する検出手段と、
前記検出手段にて検出された顔を識別する識別手段と、
を更に備え、
前記決定手段は、前記検出手段および前記識別手段の処理の結果に基づいて、画像群において前記処理対象人物が登場する画像の数を取得することを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
画像群は、画像が撮影されたイベントごとに定義されることを特徴とする請求項１乃至６のいずれか一項に記載の情報処理装置。
【請求項８】
前記選択手段により前記第一の画像群から選択された出力対象の画像が所定のテンプレートにレイアウトされることによりレイアウトデータを生成する生成手段を有することを特徴とする請求項１乃至７のいずれか一項に記載の情報処理装置。
【請求項９】
前記生成手段は、前記レイアウトデータを表示装置に表示させることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記レイアウトデータに基づいて印刷装置により印刷が実行されることを特徴とする請求項８に記載の情報処理装置。
【請求項１１】
第一の取得手段が、第一の画像群において処理対象人物が登場する画像の数を取得する第一の取得工程と、
第二の取得手段が、前記第一の画像群と前記第一の画像群とは異なる画像群とを含む複数の画像群を包含する第二の画像群において、前記複数の画像群の中から前記処理対象人物が登場する画像群の数を取得する第二の取得工程と、
決定手段が、前記第一の取得工程にて取得された、前記第一の画像群において前記処理対象人物が登場する画像の数を用いて求められる第一の重要度と、前記第二の取得工程にて取得された、前記第二の画像群において前記処理対象人物が登場する画像群の数を用いて求められる第二の重要度とのうち少なくともいずれかに基づいて、前記処理対象人物が重要人物か決定する決定工程と、
選択手段が、前記決定工程において決定された結果に基づき、画像群から出力対象の画像を選択する選択工程と
を有し、
前記決定工程では、前記第一の重要度が第一の閾値を超える場合は、前記処理対象人物は重要人物であると決定し、前記第一の重要度が前記第一の閾値を超えない場合であっても前記第二の重要度が第二の閾値を超える場合は、前記処理対象人物は重要人物であると決定することを特徴とする情報処理方法。
【請求項１２】
コンピュータを、
第一の画像群において処理対象人物が登場する画像の数を取得する第一の取得手段、
前記第一の画像群と前記第一の画像群とは異なる画像群とを含む複数の画像群を包含する第二の画像群において、前記複数の画像群の中から前記処理対象人物が登場する画像群の数を取得する第二の取得手段、
前記第一の取得手段により取得された、前記第一の画像群において前記処理対象人物が登場する画像の数を用いて求められる第一の重要度と、前記第二の取得手段により取得された、前記第二の画像群において前記処理対象人物が登場する画像群の数を用いて求められる第二の重要度とのうち少なくともいずれかに基づいて、前記処理対象人物が重要人物か決定する決定手段、
前記決定手段にて決定された結果に基づき、画像群から出力対象の画像を選択する選択手段
として機能させ、
前記決定手段は、前記第一の重要度が第一の閾値を超える場合は、前記処理対象人物は重要人物であると決定し、前記第一の重要度が前記第一の閾値を超えない場合であっても前記第二の重要度が第二の閾値を超える場合は、前記処理対象人物は重要人物であると決定することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、画像群から画像を選択してフォトブックを作成するフォトブック作成装置において、画像の重要度を算出して重要度の高い画像を提示することで、画像を選択する手間を省くものがある。このような装置には、ユーザにとって重要と思われる画像を選択するために、画像の鮮やかさ、ボケ、ブレの情報だけでなく、画像に写る人物の情報を用いるものがある。人物の情報を用いて画像の重要度を算出する場合、画像に写った人物が重要であるか否かを判定することが望ましい。例えば、旅行で撮影した画像には、旅行者本人だけでなく現地の通行人なども写っており、通行人の画像より本人が写った画像の重要度を高くするためには、どの人物が重要かを判定する必要がある。
【０００３】
画像に写る人物が重要であるか否かを判定する方法として、特許文献１では、画像群に人物が何回登場したかを算出して、当該画像群において登場回数の多い人物が重要であると判定する方法が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５３３０５３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特定のイベントに対応する画像群から重要人物を判定してフォトブックを作成する場合、当該特定のイベントにおいて登場回数が多い人物だけでなく、他のイベントで多く登場する家族のような近しい人物も重要とすべきである。例えば結婚式に参加したときの新郎新婦などは当該イベント（結婚式）で登場回数が多いため、重要人物であると考えられる。一方で、撮影者本人や、結婚式に出席している撮影者の家族なども、重要人物であると考えられる。特許文献１の方法では、撮影者本人やその家族など、他のイベントを通して登場回数が多いが、フォトブック作成の対象である画像群（例えば結婚式）における登場回数が少ない人物の重要度が低くなる恐れがある。
【０００６】
本発明は上述した問題を鑑み、複数のイベントの画像群における登場回数と、当該複数のイベントの一部であるイベントの画像群における登場回数を考慮することで、当該一部の画像群から重要人物が含まれる画像をより正確に選択できることを可能にする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本発明は以下の構成を有する。すなわち、情報処理装置であって、第一の画像群において処理対象人物が登場する画像の数を取得する第一の取得手段と、前記第一の画像群と前記第一の画像群とは異なる画像群とを含む複数の画像群を包含する第二の画像群において、前記複数の画像群の中から前記処理対象人物が登場する画像群の数を取得する第二の取得手段と、前記第一の取得手段により取得された、前記第一の画像群において前記処理対象人物が登場する画像の数を用いて求められる第一の重要度と、前記第二の取得手段により取得された、前記第二の画像群において前記処理対象人物が登場する画像群の数を用いて求められる第二の重要度とのうち少なくともいずれかに基づいて、前記処理対象人物が重要人物かを決定する決定手段と、前記決定手段にて決定された結果に基づき、画像群から出力対象の画像を選択する選択手段とを有し、前記決定手段は、前記第一の重要度が第一の閾値を超える場合は、前記処理対象人物は重要人物であると決定し、前記第一の重要度が前記第一の閾値を超えない場合であっても前記第二の重要度が第二の閾値を超える場合は、前記処理対象人物は重要人物であると決定する。
【発明の効果】
【０００８】
本発明により、画像群における重要人物が含まれる画像をより正確に選択できる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態に係る情報処理装置のハードウェア構成の例を示す図。
【図２】第一の実施形態に係る装置の機能構成の例を示す図。
【図３】本実施形態に係る画像の管理テーブルを示す図。
【図４】本実施形態に係る人物スコアのテーブルを示す図。
【図５】第一の実施形態に係るフォトブックを作成する処理のフローチャート。
【図６】第一の実施形態に係る人物スコア算出処理のフローチャート。
【図７】第一の実施形態に係る重要人物判定処理のフローチャート。
【図８】第二の実施形態に係る装置の機能構成の例を示す図。
【図９】第二の実施形態に係る登場人物リストのテーブルを示す図。
【図１０】第二の実施形態に係る人物スコアテーブルを説明するための図。
【図１１】第二の実施形態に係る人物スコア算出処理のフローチャート。
【図１２】第三の実施形態に係る人物スコアテーブルを説明するための図。
【図１３】第三の実施形態に係る人物スコア算出処理のフローチャート。
【図１４】イベントＩＤを付与する対象の画像群を示す図。
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１１】
＜第一の実施形態＞
［システム構成］
図１は、本実施形態に係るフォトブック作成装置としての情報処理装置のハードウェア構成の例を示す図である。なお、本実施形態では重要人物判定装置がフォトブック作成装置の一部に含まれるものとし、同一のハードウェアで構成されるものとする。しかし、この構成に限定するものではなく、重要人物判定装置とフォトブック作成装置とが異なる物理的な装置にて構成されるようにしてもよい。また、重要人物判定装置は、ユーザの画像を管理し、重要人物に対して画像の共有を推奨する画像共有装置など、重要人物の情報を用いる画像コンテンツ利用装置であれば、どのような装置に含まれる構成にしても良い。
【００１２】
ＣＰＵ１０１は、コンピュータシステムの制御を司る中央演算装置である。ＣＰＵ１０１が、ＨＤＤ１０９等の記憶部に格納された制御プログラムに基づいて、情報の演算や加工、各ハードウェアの制御を実行することにより後述する各機能構成、処理を実現する。ＲＡＭ１０２は、ランダムアクセスメモリであり、ＣＰＵ１０１の主メモリとして、実行プログラムのロードやプログラム実行に必要なワークメモリとして機能する。ＲＯＭ１０３は、ＣＰＵ１０１の動作処理手順を規定する制御プログラムを記録しているリードオンリーメモリーである。ＲＯＭ１０３には、コンピュータシステムの機器制御を行うシステムプログラムである基本ソフト（ＯＳ：Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を記録したプログラムＲＯＭと、システムを稼動するために必要な情報などが記録されたデータＲＯＭが含まれる。ＲＯＭ１０３の代わりにＨＤＤ１０９を用いてもよい。
【００１３】
ＮＥＴＩＦ１０４は、ネットワークインターフェースであり、ネットワークを介して送受信される画像情報などのデータの入出力制御を行う。ビデオＲＡＭ（以下ＶＲＡＭと記す）１０５は、表示装置であるディスプレイ１０６の画面に表示される画像を展開する。ディスプレイ１０６は、表示装置であって、例えば、ＣＲＴディスプレイや、液晶ディスプレイ等である。コントローラ１０７は、入力装置１０８からの入力信号を制御するコントローラである。入力装置１０８は、ユーザからの操作指示を受け付けるための外部入力装置であり、例えば、タッチパネル、キーボード、マウスなどが挙げられる。ＨＤＤ（ハードディスクドライブ）１０９は、不揮発性の記憶装置である。ＨＤＤ１０９は、アプリケーションプログラムや、画像情報などのデータ保存用に用いられる。外部入力装置１１０は、ＣＤ（ＤＶＤ）−ＲＯＭドライブ、メモリカードドライブ等の外部入出力装置であり、デジタルカメラで撮影した画像データの読み出しなどに用いられる。入出力バス１１１は、上述した各ユニット間の接続するための入出力バス（アドレスバス、データバス、及び制御バス）である。
【００１４】
図２は、本実施形態に係るフォトブック作成装置２１０および重要人物判定装置２００の機能構成を示す。フォトブック作成装置２１０は、重要人物判定装置２００、画像選択部２０６、およびレイアウト部２０７を含む。更に、重要人物判定装置２００は、画像管理部２０１、顔検出部２０２、顔識別部２０３、人物スコア算出部２０４、および重要人物判定部２０５を含む。
【００１５】
画像管理部２０１は、撮影した画像ファイルと、顔検出部２０２および顔識別部２０３によって画像から検出および識別された顔の情報を、図３に示す画像管理テーブル３０１にて管理する。ここで管理された画像群がテンプレートにレイアウトされる画像の候補となる。人物スコア算出部２０４は、画像管理部２０１で管理される画像と識別された顔の情報から図６に示す処理フローにより各人物の重要度を表す人物スコアを算出する。重要人物判定部２０５は、人物スコア算出部２０４によって算出された人物スコアに基づいて図７に示す処理フローにより重要人物を判定する。画像選択部２０６は、画像管理部２０１で管理される画像から、重要人物判定部２０５で判定された重要人物の情報を用いてフォトブックに使用する画像を選択する。レイアウト部２０７は、画像選択部２０６で選択された画像を所定のテンプレート（フォトブック）にレイアウトする。
【００１６】
図３の画像管理テーブル３０１は、画像管理部２０１が管理する画像情報のテーブルである。画像管理テーブル３０１は、画像のファイル名、画像を撮影したイベントのイベントＩＤ、および画像から識別された顔を一意に示す顔ＩＤで構成される。イベントＩＤは、図１４に示すように撮影画像をイベント単位で画像群にまとめたものに付与するＩＤ（識別情報）である。
【００１７】
図１４は、各イベントの関係を示したものである。ここでのイベントとは、１または複数の画像が撮影されるイベント（グループ）として定義される。イベントＩＤが「Ｅ０」のイベントは、他のイベント（Ｅ１〜Ｅｎ）を包含する関係にある。イベント１４０１は、全てのイベントを含む画像群を表しており、イベントＩＤは「Ｅ０」とする。イベント１４０２は、旅行や運動会などの特定のイベントの画像群に付与されたＩＤである。画像３０２、３０３は、イベントＩＤが同一であるため、同じイベントで撮影された画像である。画像３０２では３つの顔が識別されており、画像３０３では２つの顔が識別されている。顔ＩＤには、ユーザが予め登録した顔辞書（不図示）の情報から、顔識別部２０３によって特徴量が一致する顔のＩＤが登録される。一致する顔が無い場合は、画像管理テーブル３０１に登録しなくても良いし、顔辞書に新たな顔ＩＤを割り当てて、その顔ＩＤを画像管理テーブル３０１に登録するようにしても良い。
【００１８】
図４の人物スコアテーブル４０１は、人物スコア算出部２０４によって算出される人物スコアのテーブルである。人物スコアテーブル４０１は、イベントＩＤ、そのイベントに登場した人物を識別するための顔ＩＤ、同一イベント内で登場した回数、および、イベントにおける人物の重要度を表すスコアで構成される。行４０２で示すようにイベントＩＤが「Ｅ０」となっているものは、全てのイベントを対象としたものであり、登場回数および人物スコアは全てのイベントに含まれる画像から算出された値となる。
【００１９】
［処理フロー］
図５は、フォトブック作成装置２１０が重要人物判定装置２００によって判定された重要人物の情報を用いてフォトブックを作成する動作を示すフローチャートである。本処理フローは、フォトブック作成装置２１０のＣＰＵ１０１がＲＯＭ１０３等に格納されたプログラムを読み出して実行することにより実現される。
【００２０】
ユーザがフォトブックの作成を開始する際に、画像管理テーブル３０１には画像ファイルと識別された顔ＩＤが付与されているものとする。すなわち、顔検出部２０２および顔識別部２０３による処理は完了しているものとする。
【００２１】
Ｓ５０１にて、画像管理部２０１は、各画像にイベントＩＤを付与する。どの画像に同一のイベントＩＤを付与するかは、画像を格納しているフォルダ構成の情報を用いても良いし、画像を時系列に並べて画像間の時間差が閾値以上となる個所で分割することで判断しても良い。
【００２２】
Ｓ５０２にて、人物スコア算出部２０４は、画像管理部２０１で管理される画像の情報に基づいて、図６に示す処理フローにより人物スコアテーブル４０１の情報を生成する。本工程の詳細については、図６を用いて後述する。
【００２３】
Ｓ５０３にて、重要人物判定部２０５は、フォトブックの作成に使用可能な全てのイベントから、フォトブック作成の対象とする対象イベントを一つ選択する。対象イベントは、画像管理テーブル３０１で管理される全てのイベントから選択しても良いし、ユーザに期間を指定させて期間内のイベントから選択しても良い。
【００２４】
Ｓ５０４にて、重要人物判定部２０５は、フォトブックのページ数の情報に基づいて、対象イベントから選択する画像の枚数を決定する。ここでの枚数は、各イベント固定の枚数としても良いし、対象イベントの画像数から算出した枚数にしても良い。
【００２５】
Ｓ５０５にて、重要人物判定部２０５は、人物スコアテーブル４０１の情報に基づいて、図７に示す処理フローにより対象となったイベントに登場した各人物が重要人物であるか否かの判定を行う。本工程の詳細は、図７を用いて後述する。
【００２６】
Ｓ５０６にて、画像選択部２０６は、選択対象の候補として保持された画像群の中から、画像管理テーブル３０１の顔情報に重要人物と判定された人物の顔ＩＤと同じＩＤを持つ画像を、Ｓ５０４で決定された選択枚数だけフォトブックへのレイアウト対象として選択する。選択枚数より重要人物を含む画像が多い場合は、画像の鮮やかさ、ボケ、ブレの情報に基づいて画質を評価し、評価の高い順に画像を選択しても良い。また、重要人物を含む画像が少ない場合は、評価が高く人物の写っていない画像を代わりに選択しても良い。
【００２７】
Ｓ５０７にて、レイアウト部２０７は、選択された画像を所定のテンプレート（フォトブック）にレイアウトする。レイアウト部２０７は、重要人物を大きくレイアウトしたり、重要人物を中心にレイアウトしたりするなど、Ｓ５０５で判定された重要人物の情報をレイアウトのために用いても良い。また、レイアウトにおいては、例えば、レイアウト枠ごとにスコアが割り当てられたテンプレートデータを用いて、各重要人物の評価値に応じてレイアウトを行うようにしてもよい。
【００２８】
Ｓ５０８にて、画像選択部２０６は、フォトブック作成の対象となる全てのイベントに対する処理が完了したか否かを判定する。全てのイベントに対する処理が完了していない場合は（Ｓ５０８にてＮＯ）、Ｓ５０３へ戻り、未処理のイベントに対して処理を繰り返す。全てのイベントに対する処理が完了した場合（Ｓ５０８にてＹＥＳ）、本処理フローを終了し、フォトブックの作成が完了する。
【００２９】
なお、図５における処理の後、ＣＰＵ１０１は、画像がレイアウトされたフォトブックを、ディスプレイ１０６に出力して表示させる表示制御を行う。または、画像がレイアウトされたフォトブックを、不図示の印刷装置に出力して印刷させる印刷制御を行う。
【００３０】
図６は、人物スコア算出部２０４が各人物のスコアを算出し、人物スコアテーブル４０１の情報を生成する動作を示すフローチャートである。本処理は、図５のＳ５０２の工程に対応する。
【００３１】
Ｓ６０１にて、人物スコア算出部２０４は、画像管理テーブル３０１から未処理の画像の情報を一つ取得し、更に、イベントＩＤと顔ＩＤの情報から、どのイベントにどの人物が登場したかを示す情報を取得する。また、Ｓ６０１において、人物スコア算出部２０４は、当該取得された情報を人物スコアテーブル４０１に追加する。例えば、初めてＳ６０１における処理が実行される場合、人物スコアテーブル４０１には「イベント」、「顔」、「登場回数」、「スコア」のいずれの情報も含まれていない。この場合に、画像管理テーブル３０１から画像３０２の情報が取得されると、イベントとして「Ｅ１」、顔ＩＤとして「Ｆ＿００１」、「Ｆ＿００５」、「Ｆ＿００６」が取得される。そして人物スコアテーブル４０１には、「イベント」としての「Ｅ０」に対応する「顔」として、「Ｆ＿００１」、「Ｆ＿００５」、「Ｆ＿００６」の３つの行の情報が追加される。また、「イベント」としての「Ｅ１」に対応する「顔」として、「Ｆ＿００１」、「Ｆ＿００５」、「Ｆ＿００６」の３つの行の情報が追加される。
【００３２】
後述するＳ６０４における処理により、図３の画像管理テーブル３０１に含まれる全ての画像について、Ｓ６０１における人物スコアテーブル４０１への情報の追加が実行される。
【００３３】
Ｓ６０２にて、人物スコア算出部２０４は、イベントＩＤが「Ｅ０」、且つ、Ｓ６０１において取得された、当該処理対象の画像の顔ＩＤを持つことを検索条件として、人物スコアテーブル４０１からデータを検索する。検索の結果、検出されたデータに対し、人物スコア算出部２０４は、登場回数に１を加算する。例えば当該処理対象の画像が画像３０２の場合、「Ｅ０」に対応する「Ｆ＿００１」、「Ｆ＿００５」、「Ｆ＿００６」の３行の情報が検索される。データが見つからない場合は、人物スコア算出部２０４は、イベントＩＤと顔ＩＤとを関連づけ、登場回数を「１」に設定して新規にデータを挿入する。なお、本実施形態では挿入時にデータはソートされるものとする。しかし、必ずしもソートする必要はない。
【００３４】
Ｓ６０３は、Ｓ６０２と同様の処理を特定のイベントに対して行う工程である。Ｓ６０３にて、人物スコア算出部２０４は、イベントＩＤ、顔ＩＤが、Ｓ６０１において取得された、当該処理対象の画像のイベントＩＤ、顔ＩＤと同じことを検索条件として、人物スコアテーブル４０１からデータを検索する。例えば当該処理対象の画像が画像３０２の場合、「Ｅ１」に対応する「Ｆ＿００１」、「Ｆ＿００５」、「Ｆ＿００６」の３行の情報が検索される。検索の結果、検出されたデータに対し、人物スコア算出部２０４は、登場回数に１を加算する。データが見つからない場合は、人物スコア算出部２０４は、イベントＩＤと顔ＩＤとを関連づけ、登場回数を「１」に設定して新規にデータを挿入する。
【００３５】
Ｓ６０４にて、人物スコア算出部２０４は、画像管理テーブル３０１に登録されている全ての画像に対して処理が完了したか否かを判定する。全ての画像を処理していない場合は（Ｓ６０４にてＮＯ）、Ｓ６０１へ戻り、未処理の画像に対して処理を繰り返す。これにより、全てのイベント（「Ｅ０」）と各イベント（「Ｅ１」〜「Ｅ１７」）における登場人物の登場回数が算出される。全ての画像を処理した場合は（Ｓ６０４にてＹＥＳ）、Ｓ６０５へ処理を進める。
【００３６】
Ｓ６０５にて、人物スコア算出部２０４は、人物スコアテーブル４０１のイベントＩＤが同一であるデータの中から最大の登場回数を取得する。さらに、人物スコア算出部２０４は、各データの登場回数を最大登場回数で割ることで、各登場人物の人物スコアを算出し、人物スコアテーブル４０１に登録する。例えば、行４０２に対応する登場人物の場合、登場回数は「１９２回」である。そして、イベントＩＤが「Ｅ０」であるイベントの最大の登場回数が「２１３回」であることから、行４０２に対応する登場人物の人物スコアは、１９２÷２１３＝０．９０１となる。つまり、最大登場回数に対する比により、他の登場人物の人物スコアが求められる。
【００３７】
Ｓ６０６にて、人物スコア算出部２０４は、全てのイベントに対して人物スコアの算出を完了したか否かを判定し、完了するまでＳ６０５を繰り返す。全てのイベントに対して人物スコアの算出を完了した時点で、人物スコアテーブル４０１に登録された各登場人物の人物スコアが登録される。その後、本処理フローを終了する。以上の図６に示した処理により、図４に示す人物スコアテーブル４０１が生成される。
【００３８】
図７は、重要人物判定部２０５が人物スコアテーブル４０１の情報に基づいて重要人物を判定する動作を示すフローチャートである。本処理は、図５のＳ５０５の工程に対応する。
【００３９】
Ｓ７０１にて、重要人物判定部２０５は、図５のＳ５０３で選択したイベントＩＤと同一のイベントＩＤを持つイベントの人物スコアの情報を人物スコアテーブル４０１から一つ取得する。さらに、重要人物判定部２０５は、イベントＩＤが「Ｅ０」で、且つ、取得した人物スコアの顔ＩＤと同一の顔ＩＤを持つイベントＥ０の人物スコアの情報を取得する。例えば、図５のＳ５０３で選択したイベントＩＤが「Ｅ１」である場合、人物スコアテーブル４０１から、例えば、「Ｅ１」「Ｆ＿００１」に対応するスコア「０．８８８」と、「Ｅ０」「Ｆ＿００１」に対応するスコア「０．９０１」が取得される。
【００４０】
Ｓ７０２にて、重要人物判定部２０５は、Ｓ５０３で選択したイベントの人物スコアが所定の値（第一の閾値）より大きいか否かを判定する。所定の値より大きい場合は（Ｓ７０２にてＹＥＳ）、Ｓ７０４へ進み、所定の閾値以下である場合は（Ｓ７０２にてＮＯ）Ｓ７０３へ進む。ここでの所定の閾値（第一の閾値）は、例えば、「０．５」と設定する。しかし、これに限定するものではなく、例えば、ユーザが任意に設定できるようにしてもよい。
【００４１】
Ｓ７０３にて、重要人物判定部２０５は、さらにイベントＥ０の人物スコアが所定の値（第二の閾値）より大きいか否かを判定する。所定の値より大きい場合は（Ｓ７０３にてＹＥＳ）、Ｓ７０４へ進み、所定の閾値以下である場合は（Ｓ７０３にてＮＯ）Ｓ７０５へ進む。ここでの所定の閾値（第二の閾値）は、例えば、「０．７」と設定する。しかし、これに限定するものではなく、例えば、ユーザが任意に設定できるようにしてもよい。
【００４２】
Ｓ７０４にて、重要人物判定部２０５は、着目しているイベントの人物を重要人物と判定する。つまり、所定の閾値（第一の閾値もしくは第二の閾値）を超える人物スコアを有する登場人物が重要人物として判定される。
【００４３】
Ｓ７０５にて、重要人物判定部２０５は、Ｓ５０３で選択したイベントと同一のイベントＩＤを持つ全ての人物を処理したか否かを判定する。全ての人物を処理していない場合は（Ｓ７０５にてＮＯ）、Ｓ７０１へ戻り、未処理の人物に対して処理を繰り返す。全ての人物を処理した場合は（Ｓ７０５にてＹＥＳ）、重要人物判定部２０５は、Ｓ７０４で特定のイベントおよび全てのイベントにおいて重要人物と判定した人物のリストを出力し、本処理フローを終了する。
【００４４】
以上の図７に示す処理により、フォトブックの作成対象となっている対象イベント（例えば「Ｅ１」）の画像群において、重要人物が判定される。具体的には、当該対象イベントにおける人物スコアが所定の閾値を越える場合（Ｓ７０２でＹｅｓ）と、当該対象イベントを含む複数のイベント（「Ｅ０」）における人物スコアが所定の閾値を越える場合（Ｓ７０３でＹｅｓ）に、判定対象の人物が重要人物と判定される。そのため、例えばフォトブックの作成対象となっている対象イベントにおいて、撮影者本人の登場回数が少ない場合であっても、当該撮影者が他のイベントにおいて撮影された回数が多ければ、重要人物として判定される。
【００４５】
本実施形態では、特定のイベントの人物スコアおよび全てのイベントの人物スコアが所定の値よりも大きいか否かで重要人物を判定している。他の方法としては、人物スコアをソートした際に、所定の順位以上であるか否かで判定しても良いし、各人物スコアの平均値など、人物スコアの情報に基づいて算出された値以上であるか否かで判定しても良い。また以上の説明では、人物の重要度を決定する方法として、人物スコア算出部２０４が、他の人物との登場回数の比率を用いて人物スコアを参照する例を示した。しかしこれに限らず、例えば登場回数に応じて人物をソートし、ソートされた順序における順位に応じて人物の重要度を決定しても良い。
【００４６】
以上、本実施形態によれば、複数のイベントの一部である、フォトブックの作成対象となる特定のイベントの画像群だけでなく、当該複数のイベントの画像群から重要人物を判定することで、各イベントにおける重要人物をより正確に判定することができる。例えば、年間の画像群のうちの特定のイベントから重要人物を判定してフォトブックを作成する場合に、同窓会での友人や、帰省して会う親戚など、年間では会う機会が少ないが、イベントにおいて重要である人物を重要人物として判定できる。さらに、当該イベントにおいて登場回数が少なかったとしても、年間を通じて登場回数が多い人物についても、重要人物として判定できる。
【００４７】
そして、上述の図５のＳ５０６において、重要人物が含まれる画像が出力対象の画像として選択されるため、フォトブックの作成対象となる特定のイベントの画像群から、適切な画像を選択することができる。
【００４８】
＜第二の実施形態＞
第一の実施形態では、フォトブックの作成に使用する全てのイベントにおける重要人物だけでなく、イベント毎にイベント内の重要人物を判定している。本実施形態は、イベント内の重要人物を判定する際に、画像数が少ないなどの理由で登場回数の情報が不足しており、人物スコアが算出できない場合に、類似のイベントの情報で補う。以下、第一の実施形態と重複する部分は説明を省略し、差異について説明する。
【００４９】
［システム構成］
図８は、本実施形態に係るフォトブック作成装置の機能構成の例を示す。本実施形態では、重要人物判定装置２００において、イベントが類似しているか否かを判定するイベント類似判定部８０１が加えられている。イベント類似判定部８０１は、図９の登場人物リストテーブル９０１を用いて、２つのイベントが類似しているか否かを判定する。本実施形態では、イベントが類似しているか否かの判定を登場人物の情報で判定するが、イベントに含まれる画像の位置情報など他の情報を用いて類似しているか否かを判定しても良い。
【００５０】
図９の登場人物リストテーブル９０１は、同一イベント内で登場する登場人物のリストである。登場人物リストテーブル９０１は、イベントＩＤとイベント内に登場する人物の顔ＩＤのリストで構成される。例えば、行９０２、９０３は登場人物リストが類似しているため、図１１の処理フローにおいてイベント類似判定部８０１が類似のイベントと判定されることとなる。
【００５１】
図１０（ａ）のテーブル１００１は、図４の人物スコアテーブル４０１において、人物スコアを算出するために必要な情報が不足している状態を表している。行１００２は、登場回数の情報が少ないために人物スコアを正確に判断できないイベントである。行１００３は、図１１の処理フローにより行１００２の情報を補うものである。図１０（ｂ）は、情報を補った後の状態を表す。
【００５２】
［処理フロー］
図１１は、本実施形態に係る人物スコア算出処理のフローチャートである。本処理は、図５の５０２に相当する。第一の実施形態（図６）との差異として、登場回数の情報が不足していて人物スコアが算出できない場合に、類似のイベントの情報で補うように変更している。
【００５３】
Ｓ６０１〜Ｓ６０４にて、人物スコア算出部２０４は、各イベントにおける人物の登場回数が算出される。全ての画像における人物の登場回数が算出された後（Ｓ６０４にてＹＥＳ）Ｓ１１０１へ進む。
【００５４】
Ｓ１１０１にて、人物スコア算出部２０４は、人物スコアの算出が行われていないイベントの最大の登場回数を確認し、所定の値と比較することで、他のイベントにおける人物の登場回数を用いずに人物スコアが算出可能か否かを判定する。ここでの所定の値を、例えば、１０回とする。この場合において、例えば、図１０（ａ）の行１００２のイベントにおける最大の登場回数は５回であり、所定の値よりも小さいため、人物スコア算出部２０４は、人物スコアを算出できないと判定する。その他にも、登場回数の情報の他にイベントに含まれる画像数から判定しても良い。人物スコアが算出できないと判定された場合（Ｓ１１０１にてＮＯ）、登場回数の情報を類似のイベントの情報で補うために、Ｓ１１０２の処理に進める。人物スコアが算出可能であると判定された場合（Ｓ１１０１にてＹＥＳ）、Ｓ６０５へ進む。
【００５５】
Ｓ１１０２にて、人物スコア算出部２０４は、図９の登場人物リストテーブル９０１から、人物スコアが算出できなかったイベントと、類似を判定するイベントのそれぞれの登場人物リストを取得する。登場人物リストテーブル９０１は、初めてＳ１１０２の処理が行われる際に、人物スコアテーブル１００１の情報から同一のイベントＩＤで登録されている顔ＩＤを収集して作成されるものとする。
【００５６】
Ｓ１１０３にて、人物スコア算出部２０４は、イベント類似判定部８０１が取得した２つの登場人物リストを比較して類似しているか否かを判定する。ここでの類似を判定する方法は、人物スコアが算出できなかったイベントの登場人物リストの全ての顔ＩＤを、もう一方の登場人物リストが含んでいるか否かで判定する。例えば、図９の行９０２が、人物スコアを算出できなかったイベントである場合、行９０３は、行９０２の登場人物の顔ＩＤを全て含んでいるため類似のイベントと判定される。なお、他の方法として、お互いの顔ＩＤが一致している数をお互いの顔ＩＤの総数で割ることで類似度を算出し、類似度が所定の値より大きいか否かで判定しても良い。類似している場合は（Ｓ１１０３にてＹＥＳ）Ｓ１１０４へ進み、類似していない場合は（Ｓ１１０３にてＮＯ）Ｓ１１０５へ進む。
【００５７】
Ｓ１１０４にて、人物スコア算出部２０４は、人物スコアが算出できなかったイベントの登場回数に類似イベントの登場回数を加算する。例えば、図１０（ａ）の行１００２の登場回数に、行１００３の登場回数を加算すると、図１０（ｂ）に示す行１００２の値となる。本工程の後、Ｓ１１０５へ処理を進める。
【００５８】
Ｓ１１０５にて、人物スコア算出部２０４は、人物スコアが算出できなかったイベントと他のイベントとの類似判定を全て処理したか否かを判定する。全て処理していない場合は（Ｓ１１０５にてＮＯ）、Ｓ１１０２へ戻り、未処理のイベントに対し処理を繰り返す。全て処理した場合は（Ｓ１１０５にてＹＥＳ）、Ｓ６０５へ処理を進める。
【００５９】
Ｓ６０５において、例えば、図１０（ａ）の行１００２のイベントにおける人物スコアは、図１０（ｂ）に示す行１００２の人物スコアとなる。類似のイベントが存在しない場合や、類似のイベントの登場回数を加算しても情報が足りない場合は、イベントにおける重要人物は無しにしても良いし、取得できている登場回数の情報だけで人物スコアを算出しても良い。
【００６０】
以上、本実施形態によれば、登場回数の情報が不足しており、人物スコアが算出できない場合でも、類似のイベントの登場回数で補うことで、より正確な人物スコアが算出され、重要人物が判定できる。例えば、保育園で子供を撮影したイベントにおいて、画像数が少ないときは、仲の良い友達と他の友達とで登場回数に差が無いために、重要人物として判定できない恐れがある。しかし、保育園で撮影した類似のイベントの情報を用いることで、仲の良い友達と他の友達の登場回数に差が出るようになり、重要人物として判定できる。
【００６１】
＜第三の実施形態＞
第一の実施形態では、全てのイベントにおける人物スコアを算出する場合、および、各イベントにおける人物スコアを算出する場合のいずれにおいても、登場回数の情報には人物が写っている画像の枚数を用いていた。一方、本実施形態では、全てのイベントにおける人物スコアを算出する場合には、登場回数の情報に人物が写っている画像が１枚でも含まれるイベント（画像群）の数を用いることで、被写体として写る枚数が少ない傾向にある人物（例えば、撮影者）も重要人物として判定できるようにする。以下に、第一の実施形態と重複する部分は説明を省略し、差異について説明する。
【００６２】
図１２のテーブル１２０１は、図４の人物スコアテーブル４０１において、イベントＩＤが「Ｅ０」である全てのイベントの登場回数を図１３の処理フローによりイベントの数で算出した状態を表したものである。
【００６３】
図１３は、図６の人物スコアを算出するフローチャートにおいてイベントＩＤが「Ｅ０」のイベントにおける登場回数を人物が写っているイベントの数を用いるように変更したものである。本処理フローは、図５のＳ５０２に対応する。
【００６４】
Ｓ６０１によりイベントＩＤと顔ＩＤの情報を取得すると、Ｓ１３０１にて、人物スコア算出部２０４は、取得したイベントＩＤと同じ、且つ、登場人物と同じ顔ＩＤを持つことを検索条件として、人物スコアテーブル１２０１からデータを検索する。検索の結果、条件に合致するデータが見つからない場合は（Ｓ１３０１にてＹＥＳ）、イベントにおいて新規に登場した人物と判断して、Ｓ６０２に進む。データが検出された場合は（Ｓ１３０１にてＮＯ）、既にイベントにおいて登場した人物と判断して、Ｓ６０３へ進む。
【００６５】
Ｓ６０２にて、人物スコア算出部２０４は、全てのイベント（Ｅ０）の登場回数に１を加算する。つまり、全イベント（Ｅ０）において各人物の人物スコアを算出する場合には、各人物が登場するイベント（画像群）の数を用いて算出する。一方、各イベント（Ｅ１〜Ｅｎ）において各人物の人物スコアを算出する場合には、各人物が登場する画像の数を用いて算出する。なお、これらの人物スコアの算出方法の差異を踏まえて、図７のＳ７０２およびＳ７０３の各閾値（第一の閾値、第二の閾値）の値を設定するようにしてよい。
【００６６】
以上、本実施形態によれば、被写体として写る枚数が少ない傾向にある撮影者でも、人物が写っているイベントにおける登場回数を用いることで、重要人物として判定できる。例えば、各イベントにおいて、家族の写っている画像が撮影者の画像の何倍も多い場合でも、各イベントにおいて１枚撮影者が写っていれば重要人物として判定されうる。また、通行人など偶然写った人物は、各イベントに現れる可能性は殆どないため、誤って重要人物に判定されることはない。
【００６７】
＜その他の実施形態＞
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６８】
２００…重要人物判定装置、２０１…画像管理部、２０２…顔検出部、２０３…顔識別部、２０４…人物スコア算出部、２０５…重要人物判定部、２０６…画像選択部、２０７…レイアウト部
【図１】
0006660119.tif 000002
【図２】
0006660119.tif 000003
【図３】
0006660119.tif 000004
【図４】
0006660119.tif 000005
【図５】
0006660119.tif 000006
【図６】
0006660119.tif 000007
【図７】
0006660119.tif 000008
【図８】
0006660119.tif 000009
【図９】
0006660119.tif 000010
【図１０】
0006660119.tif 000011
【図１１】
0006660119.tif 000012
【図１２】
0006660119.tif 000013
【図１３】
0006660119.tif 000014
【図１４】
0006660119.tif 000015