(57)【特許請求の範囲】
【請求項１】
複数の画像のうち、第一の人物と第二の人物とが同時に登場する画像の数を取得する第一の取得手段と、
前記複数の画像が分類された複数の画像グループのうち、前記第一の人物が登場する画像と前記第二の人物が登場する画像をともに含む画像グループの数を取得する第二の取得手段と、
前記第一の取得手段にて取得した画像の数と前記第二の取得手段にて取得した画像グループの数とに基づいて、前記第一の人物と前記第二の人物との関係の強度を特定する特定手段と、
前記特定手段にて特定された強度に基づいて、前記複数の画像に登場する複数の人物の相関関係の情報を生成する生成手段と、
前記生成手段にて生成された人物の相関関係の情報に基づいて、前記複数の人物それぞれが属する複数の人物グループを抽出する抽出手段と、
前記複数の画像から画像を選択して配置することにより、フォトブックデータを生成するフォトブックデータ生成手段と
を備え、
前記フォトブックデータ生成手段は、前記抽出手段により抽出された複数の人物グループのうち、人物の重要度に関する情報に基づいて重要度が高いと特定された人物が属する人物グループの画像を、他の人物グループの画像よりも優先的に配置することを特徴とする画像処理装置。
【請求項２】
前記抽出手段は、人物間の関係の強度が所定の閾値よりも大きい人物同士で構成される人物グループを抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
撮影情報及び属性情報のうち少なくとも一方に基づいて、前記複数の画像は複数の画像グループに分類されることを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記フォトブックデータ生成手段は、所定の閾値よりも大きい重要度を有する人物を重要度が高いと特定し、前記重要度が高いと特定された人物が属する人物グループの画像を、前記他の人物グループの画像よりも優先的に選択することを特徴とする請求項１乃至３のいずれか一項に記載の画像処理装置。
【請求項５】
前記フォトブックデータ生成手段は、人物が画像に登場する数に基づき、当該人物の重要度を特定することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記フォトブックデータ生成手段は、前記重要度が高いと特定された人物が属する人物グループの画像を、前記他の人物グループの画像よりも大きい領域に配置することを特徴とする請求項１乃至５のいずれか一項に記載の画像処理装置。
【請求項７】
前記抽出手段にて抽出された人物グループに属する人物の数が所定の閾値よりも多い場合、当該人物グループに属する人物間の関係の強度に基づいて当該人物グループを分割し、新たなグループを生成する手段を更に有することを特徴とする請求項１乃至６のいずれか一項に記載の画像処理装置。
【請求項８】
複数の画像のうち、第一の人物と第二の人物とが同時に登場する画像の数を取得する第一の取得工程と、
前記複数の画像それぞれが分類された複数の画像グループのうち、前記第一の人物が登場する画像と前記第二の人物が登場する画像をともに含む画像グループの数を取得する第二の取得工程と、
前記第一の取得工程にて取得した画像の数と前記第二の取得工程にて取得した画像グループの数とに基づいて、前記第一の人物と前記第二の人物との関係の強度を特定する特定工程と、
前記特定工程にて特定された強度に基づいて、前記複数の画像に登場する複数の人物の相関関係の情報を生成する生成工程と、
前記生成工程にて生成された人物の相関関係の情報に基づいて、前記複数の人物それぞれが属する複数の人物グループを抽出する抽出工程と、
前記複数の画像から画像を選択して配置することにより、フォトブックデータを生成するフォトブックデータ生成工程と
を有し、
前記フォトブックデータ生成工程において、前記抽出工程にて抽出された複数の人物グループのうち、人物の重要度に関する情報に基づいて重要度が高いと特定された人物が属する人物グループの画像を、他の人物グループの画像よりも優先的に配置することを特徴とする画像処理装置の制御方法。
【請求項９】
コンピュータを、
複数の画像のうち、第一の人物と第二の人物とが同時に登場する画像の数を取得する第一の取得手段、
前記複数の画像それぞれが分類された複数の画像グループのうち、前記第一の人物が登場する画像と前記第二の人物が登場する画像をともに含む画像グループの数を取得する第二の取得手段、
前記第一の取得手段にて取得した画像の数と前記第二の取得手段にて取得した画像グループの数とに基づいて、前記第一の人物と前記第二の人物との関係の強度を特定する特定手段、
前記特定手段にて特定された強度に基づいて、前記複数の画像に登場する複数の人物の相関関係の情報を生成する生成手段、
前記生成手段にて生成された人物の相関関係の情報に基づいて、前記複数の人物それぞれが属する複数の人物グループを抽出する抽出手段、
前記複数の画像から画像を選択して配置することにより、フォトブックデータを生成するフォトブックデータ生成手段
として機能させ、
前記フォトブックデータ生成手段は、前記抽出手段により抽出された複数の人物グループのうち、人物の重要度に関する情報に基づいて重要度が高いと特定された人物が属する人物グループの画像を、他の人物グループの画像よりも優先的に配置するためのプログラム。
【請求項１０】
前記抽出手段は、人物間の関係の強度が所定の閾値よりも大きい人物同士で構成される人物グループを抽出することを特徴とする請求項９に記載のプログラム。
【請求項１１】
撮影情報及び属性情報のうち少なくとも一方に基づいて、前記複数の画像は複数の画像グループに分類されることを特徴とする請求項９または１０に記載のプログラム。
【請求項１２】
前記フォトブックデータ生成手段は、所定の閾値よりも大きい重要度を有する人物を重要度が高いと特定し、前記重要度が高いと特定された人物が属する人物グループの画像を、前記他の人物グループの画像よりも優先的に選択することを特徴とする請求項９乃至１１のいずれか一項に記載のプログラム。
【請求項１３】
前記フォトブックデータ生成手段は、人物が画像に登場する数に基づき、当該人物の重要度を特定することを特徴とする請求項１２に記載のプログラム。
【請求項１４】
前記フォトブックデータ生成手段は、前記重要度が高いと特定された人物が属する人物グループの画像を、前記他の人物グループの画像よりも大きい領域に配置することを特徴とする請求項９乃至１３のいずれか一項に記載のプログラム。
【請求項１５】
前記コンピュータを、
前記抽出手段にて抽出された人物グループに属する人物の数が所定の閾値よりも多い場合、当該人物グループに属する人物間の関係の強度に基づいて当該人物グループを分割し、新たなグループを生成する手段として更に機能させることを特徴とする請求項９乃至１４のいずれか一項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置およびその制御方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラが普及し、保存メディアの大容量化、低価格化により画像を撮影する機会が増加し、画像の保存量も増加している。保持する画像の中から一定の範囲の画像群を指定し、自動的に画像を選択し、フォトブックやムービーを作成するサービスが開始されている。例えば、旅行や結婚式、誕生会といったイベント毎にページを割り当て、そのイベントに含まれる画像に写る人物の関係性を解析し、人物の関係性を用いて画像を選択することが行われている。
【０００３】
特許文献１では、同一の画像に一緒に写った回数を用いて、人物相関グラフを作成し、作成したグラフを用いて相互にリンクのある人物グループを見つける方法を開示している。特許文献２では、人物が複数の画像集合に属する場合には家族、画像集合内に複数回登場する場合には友人、それ以外の人物を他人と、人物が属するグループを判定する方法を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５１３６８１９号公報
【特許文献２】特許第５４６９１８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の様に一緒に写った画像数を用いる場合、同じイベントに参加していても、一緒に写った画像がないと同じグループとならない。また、たまたま写り込んだ通行人がいる場合、同じ人物グループに属すると判定される可能性がある。一方、特許文献２の様に複数の画像集合に登場する回数によってグループの属性を判定する場合、例えば、複数の画像集合に登場する友人が家族のグループに属すると判定される可能性がある。また、会社や学生時代の友人など交友範囲が異なる友人であっても、同じ友人グループに判定される可能性がある。
【０００６】
本発明は上述した問題を鑑み、人物グループをより正確に抽出することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本願発明は以下の構成を有する。すなわち、画像処理装置であって、複数の画像のうち、第一の人物と第二の人物とが同時に登場する画像の数を取得する第一の取得手段と、前記複数の画像それぞれが分類された複数の画像グループのうち、前記第一の人物が登場する画像と前記第二の人物が登場する画像をともに含む画像グループの数を取得する第二の取得手段と、前記第一の取得手段にて取得した画像の数と前記第二の取得手段にて取得した画像グループの数とに基づいて、前記第一の人物と前記第二の人物との関係の強度を特定する特定手段と、前記特定手段にて特定された強度に基づいて、前記複数の画像に登場する複数の人物の相関関係の情報を生成する生成手段と、前記生成手段にて生成された人物の相関関係の情報に基づいて、前記複数の人物それぞれが属する複数の人物グループを抽出する抽出手段と、前記複数の画像から画像を選択して配置することにより、フォトブックデータを生成するフォトブックデータ生成手段とを備え、前記フォトブックデータ生成手段は、前記抽出手段により抽出された複数の人物グループのうち、人物の重要度に関する情報に基づいて重要度が高いと特定された人物が属する人物グループの画像を、他の人物グループの画像よりも優先的に配置する。
【発明の効果】
【０００８】
本発明によれば、複数の画像に登場する各人物に対し、正確に人物グループを抽出することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明に係る画像処理装置のハードウェア構成の一例を示す図。
【図２】本発明に係るフォトブック作成アプリケーションの画面の例を示す図。
【図３】本発明に係るアルバム作成アプリケーションの構成例を示す図。
【図４】本発明に係る画像管理テーブルの構成例を示す図。
【図５】本発明に係る人物グループテーブルの構成例を示す図。
【図６】本発明に係るテンプレートの一例を示す図。
【図７】本発明に係るフォトブック作成情報テーブルの構成例を示す図。
【図８】第一の実施形態に係るフォトブック作成処理のフローチャート。
【図９】第一の実施形態に係る人物グループ抽出処理のフローチャート。
【図１０】本発明に係る人物ペアの人物関係テーブルの構成例を示す図。
【図１１】本発明に係るイベント登場人物テーブルの構成例を示す図。
【図１２】本発明に係る人物ペアのリストの一例を示す図。
【図１３】本発明に係る相関グラフの一例を示す図。
【図１４】第二の実施形態に係るフォトブック作成処理を示すフローチャート。
【図１５】第二の実施形態に係る重要人物のグループ抽出処理を示すフローチャート。
【図１６】第二の実施形態に係る人物重要度テーブルの構成例を示す図。
【図１７】第二の実施形態に係る人物関係テーブルの構成例を示す図。
【図１８】第二の実施形態に係る人物グループテーブルの構成例を示す図。
【図１９】第三の実施形態に係るフォトブック作成処理のフローチャート。
【図２０】第三の実施形態に係るサブグループの抽出処理のフローチャート。
【図２１】第三の実施形態に係る人物グループの例を示すテーブルの構成例を示す図。
【図２２】第三の実施形態に係るサブグループテーブルの構成例を示す図。
【発明を実施するための形態】
【００１０】
以下、添付の図面を参照して、本発明をその好適な実施形態に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
【００１１】
＜第一の実施形態＞
本実施形態では、入力された画像群から人物グループを抽出し、抽出された人物グループを元に使用する画像を自動的に選択し、フォトブックを作成する画像処理装置を例に説明する。本発明に係る画像処理装置の一形態として、パーソナルコンピュータ（ＰＣ）で動作するフォトブック作成アプリケーションを例にとって説明する。
【００１２】
［装置構成］
図１は、本実施形態に係る画像処理装置１００の構成例を示す図である。ＣＰＵ１０１は、各構成の処理全てに関わり、記憶領域であるＲＯＭ１０２やＲＡＭ１０３に格納された命令（プログラム）を順に読み込んで解釈し、その結果に従って処理を実行して各種制御を行う。記憶装置１０４は、ＨＤＤやＳＳＤなど、大規模な容量のデータを保存するものであり、入力画像や作成結果、および画像処理を実行するためのプログラムを保存するために使用される。本実施形態では、記憶装置１０４は、後述するフォトブック作成のためのアプリケーションプログラムを記憶する。
【００１３】
入力インターフェース（Ｉ／Ｆ）１０５は、入出力機器との接続のために必要なインターフェースであり、ディスプレイ１０６、キーボード１０７、およびマウス１０８を接続する。ディスプレイ１０６は、操作画面を表示するための出力装置である。キーボード１０７およびマウス１０８は、ユーザーによる操作入力を検出するための装置である。ネットワークインターフェース１０９は、ネットワークを通じて、外部機器との接続するためのインターフェースである。
【００１４】
なお、装置のハードウェア構成は上記に限られるものではない。例えば、ディスプレイ１０６はタッチセンサを有し、入力を検出する機器等であってもよい。また、クラウドサービスの様に外部ネットワーク上に存在するサーバで処理が動作し、入出力を手元の機器で操作する構成であってもよい。本実施形態では素材（例えば、画像ファイル）の保管先を記憶装置１０４にしているが、ネットワークインターフェース１０９を介し、画像処理装置１００の外部に記憶装置があってもよい。外部の記憶装置としては、ＬＡＮ（不図示）上のネットワークストレージや、クラウド上のストレージサービスなどが挙げられる。
【００１５】
［フォトブック作成アプリケーション］
図２は、フォトブック作成アプリケーションの操作画面の一例を示す図である。本実施形態では、記憶装置１０４に保存されたフォトブック作成アプリケーションは、ディスプレイ１０６に表示されているアプリケーションのアイコンがユーザーによりダブルクリック等にされることにより起動する。具体的には、記憶装置１０４に保存されているフォトブック作成アプリケーションのプログラムがＲＯＭ１０２にロードされ、ＲＯＭ１０２のプログラムがＣＰＵ１０１によって実行されて、アルバム作成アプリケーションが起動し、図２に示す操作画面を表示する。
【００１６】
操作画面２０１は、画像入力ボタン２０２、ページ数選択ボタン２０３、作成ボタン２０４、プレビュー領域２０５、出力ボタン２０６、および終了ボタン２０７を含んで構成される。画像入力ボタン２０２は、押下されると、図示しない画像選択画面が表示され、フォトブックの作成対象となる画像を選択することにより、画像（画像データ）を入力することができる。選択対象は画像ファイルだけでなく、画像を格納しているフォルダも含まれる。ページ数選択ボタン２０３は、作成するフォトブックの総ページ数を選択するものであり、予め定義された複数のページ数の候補から１つをユーザーが選択することができる。画像が入力される前には選択が有効にならない処理や、入力された画像数が少ない場合にページ数の選択が有効にならない処理があってもよい。更には、画像の追加入力を促す画面を表示するようにしてもよい。
【００１７】
作成ボタン２０４は、入力した画像数とページ数選択ボタン２０３で選択されたページ数を条件として、フォトブックの作成を開始するボタンである。プレビュー領域２０５は、作成するフォトブックを表示する領域である。なお、ページ数選択ボタン２０３のユーザー選択に応じて、表示が変わる。出力ボタン２０６は、押下されるとフォトブックの条件を記載したフォトブック作成情報テーブルを任意の場所に出力する。フォトブック作成情報テーブルの詳細については後述する。終了ボタン２０７は、フォトブック作成アプリケーションを終了するためのボタンである。
【００１８】
図３は、フォトブック作成アプリケーションの構成例を示す図であり、後述する各処理部（３０１、３０３〜３０５）は、画像処理装置１００のＣＰＵ１０１で実行され、各ＤＢ（３０２、３０６）を記憶装置１０４に保管する。画像解析部３０１は、入力された画像データを解析し、解析した結果を画像ＤＢ３０２に図４にて一例を示す画像管理テーブル４００として保管する。
【００１９】
図４に示す画像管理テーブル４００は、画像を識別する画像ＩＤ４０１、画像の保管場所を示すパス名４０２、撮影日時４０３、イベントを識別するイベントＩＤ４０４、人物を識別する人物ＩＤ４０５、および、画質を点数化したスコア４０６を含んで構成される。イベントに関しては、画像群を誕生会や旅行といったイベント単位で分割して画像グループを生成し、分割した画像グループに対してイベント毎に一意に識別するためのＩＤ（識別情報）を付与する。分割方法は、画像解析部３０１で画像データに付加された撮影時刻に基づいて、撮影時刻で順に並べ、撮影時刻の差が所定の閾値（例えば、４時間）以上に大きくなった場合に分割する。撮影情報として撮影時刻だけでなく、画像データに含まれる位置情報を用いて、画像データ間の距離が所定の閾値以上離れた場合に分割してもよい。また、ユーザーが予めイベント毎に格納フォルダを生成し、画像を分類している場合、時刻や位置による分割は行わず、フォルダ単位をイベントとしてもよい。また、ユーザーが設定した属性情報に基づいて、画像を分類するようにしてもよい。
【００２０】
人物ＩＤは、顔認識処理を行い、認識された人物毎に一意に識別したＩＤを付与する。顔認識処理は、既知の方法で良く、人物を識別できれば、特に限定するものでは無い。スコアの点数算出処理に関しても、既知の方法で良く、例えば、特開２００５−３１７６９号公報に記載のある方法の様に空間周波数成分を用いて算出してもよい。本実施形態ではスコアを０〜１の間で点数化する。なお、顔認識処理では、画像データが表す画像に写っている（含まれている）人物の顔を認識する。
【００２１】
なお、画像の解析処理は、画像が画像処理装置１００に入力されたタイミングで開始する。既に解析済みの画像が入力された場合は、既存の情報を用いることで解析処理を省力してもよい。また、解析に必要な情報が予め抽出され、画像と共に入力された場合は、入力された情報を用いることにより解析処理を省略してもよい。
【００２２】
人物グループ抽出部３０３は、入力した画像群から図１３（ｂ）で示す様に互いに関連のある人物同士で構成されるグループを抽出する。抽出した人物グループは、図５に示す人物グループテーブル５００にて管理される。人物グループテーブル５００は、グループＩＤ５０１、そのグループの構成メンバのリストであるグループメンバー５０２、および、そのグループメンバーが登場するイベントのリストである登場イベントＩＤ５０３を含んで構成される。このイベントＩＤ５０３は、図４のＩＤ４０４で割り振られたＩＤと同じである。
【００２３】
画像選択部３０４は、抽出された人物グループの情報に基づいて、画像を選択する。画像配置部３０５は、テンプレートＤＢ３０６に保管されたテンプレートに記載の座標に基づき、見開きページを表す「スプレッド」毎に画像を配置する。本実施形態では、図２の操作画面２０１のページ数選択ボタン２０３にて選択されたページ数を２で割った数がスプレッド数となる。
【００２４】
図６は、本実施形態に係るテンプレートの画像配置テーブルの一例を示す。ここでは、１つのテンプレートに５つのスロットがある場合を例に挙げて説明する。スロットとは、画像を配置する枠である。テンプレートの画像配置テーブル６００は、配置ＩＤ６０１と座標６０２とを含んで構成される。各配置ＩＤに対応して、スプレッド上の座標が示される。座標６０２は、スプレッドの左上を基準として、表示画像毎に表示領域の左上の座標と右下の座標が設定され、表示画像の大きさと位置が指定できる。各テンプレートは、一意に識別するためのテンプレートＩＤが割り当てられ、テンプレートＤＢ３０６に格納されている。また、テンプレートの画像配置テーブルは、スプレッド単位で座標のパターンを複数有する。スプレッド毎に選択された画像データを配置させ、図７で示す様なフォトブック作成情報テーブル７００の形で出力する。図７は、本実施形態に係るフォトブック作成情報テーブルの一例を示す。フォトブック作成情報テーブル７００は、スプレッド番号７０１、テンプレートＩＤ７０２、各配置位置（Ｌ＿００〜Ｌ＿０４）に配置する各画像の画像ＩＤ７０３〜７０７を含んで構成される。各スプレッドに対応するテンプレートＩＤと、各配置ＩＤに対応する画像ＩＤが配置される。なお、図６、図７において、１のテンプレートに対して、５つの画像が配置される例を示しているがこれに限定するものではなく、画像のサイズなどを考慮して、これ以上、もしくはこれ以下の数の画像が配置されるテンプレートが用いられてもよい。
【００２５】
［処理フロー］
フォトブック作成アプリケーションのメイン処理について、図８のフローチャートを用いて説明する。本処理フローは、画像処理装置１００のＣＰＵ１０１が記憶装置１０４等に記憶された本実施形態に係るプログラムを読み出して実行することにより実現される。本メイン処理は図２に示す操作画面２０１の作成ボタン２０４がユーザーにより押下された時に開始される。
【００２６】
Ｓ８０１にて、画像解析部３０１は、画像入力ボタン２０２で入力された画像データ群の各画像データの情報を画像ＤＢ３０２から取得する。取得する情報は、図４の画像管理テーブル４００で示す情報である。入力された画像データ群が、イベント単位に分割されていない場合や、人物認識処理が完了していない場合は、それらの画像データ群に対する分割処理および認識処理が行われた上で、次のステップへと進む。
【００２７】
Ｓ８０２にて、人物グループ抽出部３０３は、画像管理テーブル４００の情報を用いて、人物グループを抽出し、図５に示す人物グループテーブル５００を出力する。人物グループの抽出処理の詳細に関しては、図９のフローチャートを用いて後述する。
【００２８】
Ｓ８０３にて、人物グループ抽出部３０３は、Ｓ８０２で抽出した複数の人物グループに対して、人物グループテーブル５００を用いて、イベントの登場回数が一番多い人物グループを、重要な人物グループとして抽出する。
【００２９】
Ｓ８０４にて、画像選択部３０４は、ページ数選択ボタン２０３で選択されたページ数の情報を取得する。また、画像選択部３０４は、取得したページ数を半分にし、フォトブック全体のスプレッド数とする。画像選択部３０４は、画像管理テーブル４００を用いて、イベント毎に画像枚数を取得し、画像枚数の多い順にスプレッド数分、イベントを選択する。例えば、イベント数が５０でスプレッド数が１２であれば、画像枚数が上位のイベント１２個を選択する。本実施形態では、１スプレッドに１イベントを割り当てる。しかし、これに限定するものではなく、例えば、１イベントを複数ページに割り当ててもよく、１スプレッドに複数のイベントを割り当ててもよい。
【００３０】
Ｓ８０５にて、画像配置部３０５は、Ｓ８０４で抽出した各イベントに対し、撮影時刻の時系列順にイベントをスプレッドへ割り当てる。画像配置部３０５は、各スプレッドに対し、テンプレートＤＢ３０６からそれぞれテンプレートを割り当てる。画像配置部３０５、各テンプレートに記載されたスロット数（配置される数）分の画像を選択する。画像の選択の際には、画像配置部３０５は、スコアを用いて、スコアが高い画像から順にテンプレートに記載された数だけ画像を選択する。この際、例えば、一度選択した画像に含まれる人物が写る他の画像の点数を下げることにより、特定の人物が映った画像が選択されることの偏りを無くすことしてもよい。
【００３１】
Ｓ８０６にて、画像配置部３０５は、Ｓ８０５で選択した画像の配置を決定し、図７で示すフォトブック作成情報テーブル７００を出力する。そして、本処理フローを終了する。
【００３２】
出力されたフォトブック作成情報テーブル７００とテンプレートと画像データを、フォトブック出力業者に出力することでフォトブックの作成が可能となる。
【００３３】
（人物グループ抽出処理）
次に図９のフローチャートを用いて、人物グループ抽出処理について説明する。本処理フローは、図８のＳ８０２に相当する。
【００３４】
Ｓ９０１にて、人物グループ抽出部３０３は、Ｓ８０１で取得した画像管理テーブル４００の情報を用いて、フォトブック作成対象となる全画像から、登場する人物数を算出する。更に、人物グループ抽出部３０３は、人物関係テーブルＴａ、Ｔｂを作成する。人物関係テーブルは、人物間の関係を表すものであり、本実施形態では、算出人物数×算出人物数で構成する。人物関係テーブルは、図１０の様に縦軸と横軸に登場人物の人物ＩＤを配置させ、初期値を０に設定する。ここでは、図１０（ａ）に示す人物関係テーブル１００１を人物関係テーブルＴａとし、図１０（ｂ）に示す人物関係テーブル１００２を人物関係テーブルＴｂの例として扱う。人物関係テーブルＴａは、同一画像内に同時に登場した人物ペアの数をカウントするためのテーブルである。一方、人物関係テーブルＴｂは、同一イベント内に登場した人物ぺアの数をカウントするためのテーブルである。すなわち、人物関係テーブルＴｂについては、人物ペアの２人の人物が同じ画像に登場していない場合でも、同じイベント（同じ画像グループ）のいずれかに登場していれば、カウントされる。
【００３５】
Ｓ９０２にて、人物グループ抽出部３０３は、画像管理テーブル４００の中から画像ＩＤを抽出し、全画像数をｎとして取得する。更に、人物グループ抽出部３０３は、画像ＩＤのＩＤ順に、各画像をＩ０、Ｉ１、Ｉ２、．．．、Ｉｎ−１とする。そして、人物グループ抽出部３０３は、最初の画像Ｉ０を着目画像Ｉとして設定する。
【００３６】
Ｓ９０３にて、人物グループ抽出部３０３は、着目画像Ｉに一緒に写っている人物のペアを取得して、人物関係テーブルＴａに人物ペアの交点するマスの値に１を加点する。ここで画像内に人物Ａ、人物Ｂ、人物Ｃの３人が写っている場合、人物Ａと人物Ｂ、人物Ａと人物Ｃ、人物Ｂと人物Ｃの３つの人物ペアが取得できる。これにより、１つの画像で３つのマスの値がそれぞれ１加算される。このようにして、同一の画像に一緒に写った画像数が人物関係テーブルＴａに記録される。
【００３７】
Ｓ９０４にて、人物グループ抽出部３０３は、全画像に対してＳ９０３の処理が終了しているか、すなわち着目画像ＩがＩｎ−１か否かを判定する。全画像に対し処理が終了している場合（Ｓ９０４にてＹｅｓ）は、Ｓ９０６へ進む。一方、処理が終了していない場合（Ｓ９０４にてＮｏ）は、Ｓ９０５へ進む。
【００３８】
Ｓ９０５にて、人物グループ抽出部３０３は、処理対象となる着目画像Ｉを次の未処理の画像に変更し、Ｓ９０３に戻り、処理を繰り返す。
【００３９】
Ｓ９０６にて、人物グループ抽出部３０３は、画像管理テーブル４００の中から、イベントＩＤを抽出し、全イベント数をｎとして取得する。イベントＩＤのＩＤ順に、各イベントをＥ０、Ｅ１、Ｅ２、．．．、Ｅｎ−１とする。そして、人物グループ抽出部３０３は、最初のイベントＥ０を着目イベントＥとして設定する。
【００４０】
Ｓ９０７にて、人物グループ抽出部３０３は、着目イベントＥに登場した人物を抽出する。抽出した人物は、図１１で示すイベント登場人物テーブル１１００の様にイベント毎に登場する人物の人物ＩＤを羅列する。イベント登場人物テーブル１１００は、イベントＩＤ１１０１と登場人物ＩＤ１１０２とが対応づけられて構成される。ここでは、１のイベントに対して、１または複数の登場人物が登場しているものとする。
【００４１】
Ｓ９０８にて、人物グループ抽出部３０３は、各イベントＥにおいてＳ９０７で取得した登場人物に対する人物ペアを抽出する。図１２は、抽出した人物ペアのリストを示す。図１２（ａ）は、イベントＥ＿０００から抽出した人物ペアのリスト１２０１を示し、図１２（ｂ）は、イベントＥ＿００１から抽出した人物ペアのリスト１２０２を示す。
【００４２】
Ｓ９０９にて、人物グループ抽出部３０３は、Ｓ９０８で抽出した人物ペアを人物関係テーブルＴｂに記録する。抽出された人物ペアの各人物が１つのイベントに対応する１つの画像グループに一回でも登場していれば、その人物ペアの値として１を加える。ここでは、イベント毎に加算する。これにより、各人物ペアが、一緒に参加したイベント数がテーブルＴｂに記録される。
【００４３】
Ｓ９１０にて、人物グループ抽出部３０３は、全イベントに対してＳ９０７〜Ｓ９０９の処理が終了している、すなわち、着目イベントＥがイベントＥｎ−１か否かを判定する。終了している場合（Ｓ９１０にてＹｅｓ）はＳ９１２へ進む。一方、終了していない場合（Ｓ９１０にてＮｏ）はＳ９１１に進む。
【００４４】
Ｓ９１１にて、人物グループ抽出部３０３は、処理対象となる着目イベントＥを次の未処理のイベントＥに変更し、Ｓ９０７へ戻り、処理を繰り返す
Ｓ９１２にて、人物グループ抽出部３０３は、人物関係テーブルＴａの値と人物関係テーブルＴｂの値を加算する。図１０（ｃ）は、人物関係テーブルＴａと人物関係テーブルＴｂの値を加算した結果として得られた人物関係テーブル１００３を示す。ここでは、加算した値を各人物ペアの相関の強度とする。なお、本実施形態では人物関係テーブルＴａと人物関係テーブルＴｂを単純に加算しているが、人物関係テーブルＴａの値、および、人物関係テーブルＴｂの値にそれぞれ重みをつけてから加算してもよい。
【００４５】
Ｓ９１３にて、人物グループ抽出部３０３は、Ｓ９１２で算出した強度が閾値を超えているか否かを判定する。閾値を超えている場合（Ｓ９１３にてＹｅｓ）はＳ９１４に進み、超えていない場合（Ｓ９１３にてＮｏ）はＳ９１５に進む。この閾値は、相関関係の強度の閾値であり、ここでの閾値は、固定値とし、本例では「５」を用いることとする。しかし、これに限定するものでは無く、ユーザーが任意の値に設定できるようにしてもよい。その他にも、例えば、入力された画像数、イベント数、登場人物数などにより、閾値を可変値としてもよい。例えば、全人物ペアの強度を抽出し、強度の平均と分散を求め、平均よりも所定量小さい値を強度の閾値としてもよい。
【００４６】
Ｓ９１４にて、人物グループ抽出部３０３は、得られた強度の値を用いて、相関グラフを形成する。図１３（ａ）に、相関グラフの例を示す。
【００４７】
Ｓ９１５にて、人物グループ抽出部３０３は、Ｓ９１４にて生成した相関グラフからお互いにリンクを持つ人物同士（関連する人物同士）で構成される人物グループを抽出する。図１３（ｂ）に抽出される人物グループの例を示す。図１３の例では、３つの人物グループが抽出されることとなる。人物グループ抽出部３０３は、抽出した人物グループを人物グループテーブル５００に追加する。そして、本処理フローを終了する。
【００４８】
以上、本実施形態ではフォトブックを作成する際に、画像データ群から人物グループを抽出する。抽出した人物グループは、自動画像選択の基準として用いることができる。人物グループの抽出には、画像に一緒に写った情報、および一緒にイベントに参加した情報を用いることにより、より正確に人物グループを抽出ことができる。例えば、撮影者（例えば、家族における父親）は他の人と一緒に写る写真の枚数が少なくなってしまう可能性があるが、複数のイベントに存在することで関係性の強い人物グループに所属させることができる。
【００４９】
また、人物グループの抽出に同じイベントに参加した数を用いることにより、友人同士で参加したイベント内でたまたま一緒の写真に写りこんだ通行人をイベント参加者の友人で構成される人物グループに加えることを抑制することができる。その結果、画像を自動的に選択する際に、通行人の画像が選択されることを抑えられる。一方、同じイベントに参加した数だけでは、子供の友人の家族と一緒にバーベキューへ参加した場合、同じ人物グループとなってしまう可能性がある。これに対し、人物グループの抽出に一緒に写る画像の数を用いることで、それぞれの家族で一緒に写る画像が多くなり、所定の閾値を超える関係の強さとならず、同じ人物グループになることを抑制することができる。
【００５０】
また、１人の人物に対し、例えば、家族のグループ、友人グループ、会社のグループ等のように複数の人物グループを抽出することができる。１スプレッド（見開きページ）に複数のイベントを割り当てる場合、スプレッドの左右ページ毎に同じ人物グループで揃えた場合、統一感を持たせることができる。逆に異なる人物グループを選択することで、スプレッド内に多様性を持たせることができる。
【００５１】
なお、本実施形態では、画像（静止画）を用いてフォトブックを作成しているが、映像ファイル（動画）を対象としても良く、動画から抽出した静止画を用いてもよい。また、本実施形態では、フォトブックを作成する例を説明したが、ムービーを自動作成してもよい。作成するフォトブックのページ数が、生成するムービーの時間長の秒数に、表示領域の大小がムービーの表示秒数に、配置位置の順番がムービーの表示順序に、それぞれ対応してもよい。
【００５２】
＜第二の実施形態＞
第一の実施形態では、抽出人物グループの中でイベントに登場した回数に基づき、１の重要な人物グループを選択する例を説明した。これに対し、本実施形態では、登場する人物の重要度を用いて、人物グループの重要度を算出する例を説明する。
【００５３】
本実施形態では、第一の実施形態における図８のフォトブック作成フローチャートを図１４のフローチャートに置き換える。画像処理装置１００の構成については第一の実施形態と同様であるため、説明は省略する。以下、図１４を参照して、本実施形態に係る人物グループの重要度を算出する処理について説明する。なお、Ｓ８０１〜８０２及びＳ８０４〜８０６は、第一の実施形態と同様であるため説明を省略する。
【００５４】
Ｓ１４０１にて、人物グループ抽出部３０３は、Ｓ８０２で抽出した人物グループから重要な人物グループを抽出する。図１５のフローチャートを用いて、重要な人物グループを抽出する処理について説明する。
【００５５】
Ｓ１５０１にて、人物グループ抽出部３０３は、Ｓ８０２で抽出した人物グループテーブル５００を取得する。
【００５６】
Ｓ１５０２にて、人物グループ抽出部３０３は、人物重要度のテーブルを取得する。図１６に本実施形態に係る人物重要度テーブル１６００の例を示す。人物重要度テーブル１６００は、人物ＩＤ１６０１と各人物の重要度１６０２を含んで構成される。本実施形態において、各人物の重要度は０〜１の間で点数化されており、値が高いほど重要度が高いものとする。重要度は、画像の人物の登場回数に基づいて算出してもよいし、外部から与えられてもよい。外部から与える場合の例として、撮影機器で人物認識を行い、認識した人物に対し、ランクを付けることにより人物の重要度を設定する方法やユーザーが設定する方法がある。
【００５７】
Ｓ１５０３にて、人物グループ抽出部３０３は、各人物ペアの強度を、全ての人物ペアの強度の中で最大の値となる強度で割ることで正規化する。強度は、Ｓ９１２にて得られた人物関係テーブル１００３の値（図１０（ｃ））を用いて算出する。図１７は、正規化した強度を算出した例としての人物関係テーブル１７００を示す。
【００５８】
Ｓ１５０４にて、人物グループ抽出部３０３は、人物グループテーブル５００の中からグループＩＤを抽出し、全グループ数をｎとして取得する。グループＩＤのＩＤ順に、各人物グループをＧ０、Ｇ１、Ｇ２、．．．、Ｇｎ−１とする。そして、人物グループ抽出部３０３は、最初の人物グループＧ０を着目人物グループＧとして設定する。
【００５９】
Ｓ１５０５にて、人物グループ抽出部３０３は、着目人物グループＧのグループ重要度を算出する。グループ重要度の算出式は、グループを構成する人物ペアそれぞれの人物の人物重要度と人物間の強度を掛け、グループ内の全人物ペア分加算し、全人物ペア数で割る。例えば、人物Ａと人物Ｂと人物Ｃの３人で構成されるグループの場合、人物Ａの人物重要度をＩａ、人物Ｂの人物重要度をＩｂ、人物Ｃの人物重要度をＩｃとする。人物Ａと人物Ｂの強度をＲａｂ、人物Ａと人物Ｃの強度をＲａｃ、人物Ｂと人物Ｃの強度をＲｂｃとする。このグループ重要度のスコアは、
（Ｉａ＊Ｉｂ＊Ｒａｂ＋Ｉａ＊Ｉｃ＊Ｒａｃ＋Ｉｂ＊Ｉｃ＊Ｒｂｃ）／３
で表現できる。抽出したグループ重要度のスコアは、図１８で示すグループ重要度テーブル１８００に記載する。グループ重要度テーブル１８００は、第一の実施形態の人物グループテーブル５００の項目に加え、スコア１８０１と重要判定１８０２の項目が追加されている。スコア１８０１と重要判定１８０２の項目は、いずれも初期値は０に設定される。
【００６０】
Ｓ１５０６にて、人物グループ抽出部３０３は、Ｓ１５０５で算出されたグループ重要度のスコアが所定の閾値以上であるか否かを判定する。閾値以上の場合（Ｓ１５０６にてＹｅｓ）はＳ１５０７に進み、閾値未満の場合（Ｓ１５０６にてＮｏ）はＳ１５０８に進む。ここでの閾値は固定値とし、本例では「０．２」を用いることとする。しかし、これに限定するものでは無く、ユーザーが任意の値に設定できるようにしてもよい。その他にも、算出したグループ重要度のスコアによって閾値を変更してもよい。例えば、グループ重要度のスコアの平均を算出し、平均よりも所定量大きい値を閾値としてもよい。
【００６１】
Ｓ１５０７にて、人物グループ抽出部３０３は、グループ重要度のスコアが閾値以上だったグループは重要人物グループとし、グループ重要度テーブル１８００の重要判定１８０２の値に「１」を設定する。
【００６２】
Ｓ１５０８にて、人物グループ抽出部３０３は、全人物グループに対して、Ｓ１５０５〜Ｓ１５０７の処理が終了したか否かを判定する。全人物グループの処理が終了している場合（Ｓ１５０８にてＹｅｓ）は、本処理フローを終了する。全人物グループの処理が終了していない場合（Ｓ１５０８にてＮｏ）は、Ｓ１５０９に進む。
【００６３】
Ｓ１５０９にて、人物グループ抽出部３０３は、処理対象となる着目人物グループＧを次の未処理の人物グループに変更し、Ｓ１５０５に戻り、処理を繰り返す。
【００６４】
以上、本実施形態では、抽出した人物グループに人物重要度を用いることで、人物グループの重要度を算出する。第一の実施形態では、イベント登場数の最も多い１の人物グループを重要としていたが、本実施形態では、イベント登場数が少ない人物グループであっても、重要な人物が含まれる人物グループを重要な人物グループとすることができる。これにより人物グループが複数抽出された場合に、グループの重要度を用いることで重要な人物グループが重要度の低いグループに埋もれず、抽出することが可能となる。例えば、遠方に住む祖父や祖母は登場回数が少なくなってしまうが、人物重要度が高く設定されることにより、重要度が高い人物グループとすることができる。
【００６５】
これにより、スプレッド（見開きページ）に割り当てたイベント（画像グループ）から画像データを選択する際に重要な人物グループの情報を用いることができ、重要でない人物グループが写る画像データが選択されることを防ぐことができる。また、１スプレッドに複数のイベントを割り当てる場合、重要な人物グループの画像の表示領域を他の人物グループより大きくすることができる。
【００６６】
＜第三の実施形態＞
第二の実施形態では、抽出した人物グループの選択に関して、グループの人物重要度を用いて、人物グループの重要度を算出する例を説明した。これに対し、本実施形態では、多人数で構成される人物グループから、より結び付きの強いサブグループを抽出する例を説明する。
【００６７】
本実施形態は、第二の実施形態における図１４のフォトブック作成フローチャートを図１９のフローチャートに置き換える。画像処理装置１００の構成については第一の実施形態と同様であるため、説明は省略する。また、図１４と同様の部分の説明は省略し、異なる部分を中心に説明する。以下、図１９を参照して、本実施形態に係るフォトブック作成処理の詳細について説明する。
【００６８】
Ｓ１９０１にて、人物グループ抽出部３０３は、Ｓ８０２で抽出した人物グループテーブル５００を取得し、各人物グループからサブグループを抽出する。図２０のフローチャートを用いて、サブグループを抽出する処理を説明する。
【００６９】
Ｓ２００１にて、人物グループ抽出部３０３は、Ｓ８０２で抽出した人物グループテーブル５００を取得する。
【００７０】
Ｓ２００２にて、人物グループ抽出部３０３は、人物グループテーブル５００の中からグループＩＤを抽出し、全グループ数をｎとして取得する。グループＩＤのＩＤ順に、各人物グループをＧ０、Ｇ１、Ｇ２、．．．、Ｇｎ−１とする。そして、人物グループ抽出部３０３は、最初の人物グループＧ０を着目人物グループＧとして設定する。
【００７１】
Ｓ２００３にて、人物グループ抽出部３０３は、着目人物グループＧのグループの構成人物数を算出し、閾値として設定された人物数より多いか否かを判定する。閾値より多い場合（Ｓ２００３にてＹｅｓ）はＳ２００４へ進み、閾値より少ない場合（Ｓ２００３にてＮｏ）はＳ２０１３へ進む。ここでの閾値は固定値とし、本例では「４人」を用いることとする。しかし、これに限定するものでは無く、ユーザーが任意の値に設定できるようにしてもよい。
【００７２】
Ｓ２００４にて、人物グループ抽出部３０３は、着目人物グループＧの強度の平均値を算出する。具体的に説明すると、着目人物グループＧが図２１（ａ）で示す様な６人で構成される場合、人物ペア数が１５対として算出できる（６Ｃ２）。更に、Ｓ９１２に示した方法で、人物グループＧに関わる人物の人物ペアの強度を抽出する。ここで抽出した例を図２１（ｂ）に示す。そして、抽出した人物ペアの強度の総和を人物ペア数で割ることで、人物グループＧの強度の平均値が算出される。図２１（ｂ）の例であれば、人物グループＧの強度の平均値は、
（７０＋５０＋４８＋２４＋２６＋３４＋３０＋４６＋５２＋４２＋１４＋１４＋１６＋１６＋３８）／１５＝３４．６
として算出される。
【００７３】
Ｓ２００５にて、人物グループ抽出部３０３は、着目人物グループＧから、全ての組み合わせのサブグループを作成する。着目人物グループＧが６人で構成される場合について具体的に説明する。この場合、グループを構成する人数ごとの組み合わせとして、２人のサブグループが１５個、３人のサブグループが２０個、４人のサブグループが１５個、５人のサブグループが６個作成され、合計５６個が作成される。図２２は、作成したサブグループのサブグループテーブル２２００を示す。サブグループテーブル２２００は、サブグループＩＤ２２０１、人物ＩＤの記載されるグループメンバー２２０２、強度の平均値２２０３、および抽出対象２２０４を含んで構成される。また、サブグループテーブル２２００は、人物グループのグループ数だけ作成される。強度の平均値２２０３および抽出対象２２０４は、初期値に「０」が設定され、以降の処理により順次、値が更新される。
【００７４】
Ｓ２００６にて、人物グループ抽出部３０３は、サブグループテーブル２２００の中からグループＩＤを抽出し、全グループ数をｎとして取得する。グループＩＤのＩＤ順に、各サブグループをＳＧ０、ＳＧ１、ＳＧ２、．．．、ＳＧｎ−１とする。そして、人物グループ抽出部３０３は、最初のサブグループＳＧ０を着目サブグループＳＧとして設定する。
【００７５】
Ｓ２００７にて、人物グループ抽出部３０３は、着目サブグループＳＧの強度の平均値を算出する。算出処理は、Ｓ２００４と同様に、着目サブグループＳＧの全人物ペア数の強度の総和を算出し、人物ペア数で割ることで行う。例えば、図２２のサブグループテーブル２２００のＳＧ＿０３１−１６の場合、Ｆ＿１００とＦ＿１０１の強度（７０）、Ｆ＿１００とＦ＿１１０の強度（５０）、Ｆ＿１０１とＦ＿１１０の強度（３４）を合計（１５４）し（図２１（ｂ）参照）、人物ペア数（３）で割ることで、強度の平均値として５１．３が算出される。算出した平均値は、サブグループテーブル２２００の強度の平均値２２０３に入力される。
【００７６】
Ｓ２００８にて、人物グループ抽出部３０３は、Ｓ２００７で算出した着目サブグループＳＧの強度の平均値が、Ｓ２００４で算出した着目グループＧの強度の平均値の所定倍数の値より大きいか否かを判定する。大きい場合（Ｓ２００８にてＹｅｓ）はＳ２００９に進み、そうでない場合（Ｓ２００８にてＮｏ）はＳ２０１０へ進む。すなわち、この場合は、着目サブグループＳＧは抽出対象としない。ここでの所定倍数は、本例では「１．５倍」を用いることとする。しかし、これに限定するものでは無く、ユーザーが任意の値に設定できるようにしてもよいし、倍数ではなく固定値を用いてもよい。
【００７７】
Ｓ２００９にて、人物グループ抽出部３０３は、着目サブグループＳＧを抽出対象とする。このとき、人物グループ抽出部３０３は、サブグループテーブル２２００の着目サブグループＳＧとしているサブグループの抽出対象２２０４に「１」を入力する。
【００７８】
Ｓ２０１０にて、人物グループ抽出部３０３は、全サブグループに対して、Ｓ２００７〜Ｓ２００９の処理が終了したか否かを判定する。全サブグループの処理が終了している場合（Ｓ２０１０にてＹｅｓ）、Ｓ２０１２に進む。全人物グループの処理が終了していない場合（Ｓ２０１０にてＮｏ）、Ｓ２０１１に進む。
【００７９】
Ｓ２０１１にて、人物グループ抽出部３０３は、処理対象となる着目サブグループＳＧを次の未処理のサブグループへ変更し、Ｓ２００７に戻り、処理を繰り返す。
【００８０】
Ｓ２０１２にて、人物グループ抽出部３０３は、全人物グループに対して、Ｓ２００３〜Ｓ２０１０の処理が終了したか否かを判定する。全人物グループの処理が終了している場合（Ｓ２０１２にてＹｅｓ）は、Ｓ２０１４に進む。全人物グループの処理が終了していない場合（Ｓ２０１２にてＮｏ）はＳ２０１３に進む。
【００８１】
Ｓ２０１３にて、人物グループ抽出部３０３は、処理対象となる着目人物グループＧを次の未処理の人物グループへ変更し、Ｓ２００３に戻り、処理を繰り返す。
【００８２】
Ｓ２０１４にて、人物グループ抽出部３０３は、作成した全てのサブグループテーブル２２００から抽出対象と判定されたサブグループを抽出し、人物グループテーブル５００に追加する。人物グループテーブル５００に追加の際に不足の項目となる登場イベントは、画像管理テーブル４００を用いてサブグループが登場したイベントを抽出することで補完される。そして、本処理フローを終了する。
【００８３】
以上、本実施形態では、多人数で構成される人物グループから、その人物グループに含まれる少人数のサブグループを作成する。作成したサブグループの内、サブグループの強度が元の人物グループの強度より大きい強度を持つサブグループを新たな人物グループとして採用（抽出）する。これにより例えば、新郎新婦、新婦の父母、新郎の父母の６人で人物グループが形成された場合、結び付き（相関関係）の強い新郎新婦のグループを抽出することができる。
【００８４】
＜その他の実施形態＞
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施例の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００８５】
２０１：アプリケーション操作画面、２０２：画像入力ボタン、２０３：ページ数選択ボタン、２０４：作成開始ボタン、２０５：プレビュー領域、２０６：出力ボタン、２０７：終了ボタン、３０１：画像解析部、３０２：画像ＤＢ、３０３：人物グループ抽出部、３０４：画像選択部、３０５：画像配置部、３０６：テンプレートＤＢ
【図１】
0006667224.tif 000002
【図２】
0006667224.tif 000003
【図３】
0006667224.tif 000004
【図４】
0006667224.tif 000005
【図５】
0006667224.tif 000006
【図６】
0006667224.tif 000007
【図７】
0006667224.tif 000008
【図８】
0006667224.tif 000009
【図９】
0006667224.tif 000010
【図１０】
0006667224.tif 000011
【図１１】
0006667224.tif 000012
【図１２】
0006667224.tif 000013
【図１３】
0006667224.tif 000014
【図１４】
0006667224.tif 000015
【図１５】
0006667224.tif 000016
【図１６】
0006667224.tif 000017
【図１７】
0006667224.tif 000018
【図１８】
0006667224.tif 000019
【図１９】
0006667224.tif 000020
【図２０】
0006667224.tif 000021
【図２１】
0006667224.tif 000022
【図２２】
0006667224.tif 000023