(57)【要約】【課題】  画像を入れ替える場合に、必ずしもユーザの所望する入れ替え候補画像が優先的に表示されない可能性があった。【解決手段】  複数の画像データに対しオブジェクトの識別処理を実行する識別ステップと、前記識別ステップにより前記識別処理が実行された複数の画像データのうち少なくとも一部の画像データとテンプレートデータとに基づきレイアウトデータを生成する生成ステップと、前記レイアウトデータに基づき表示部にレイアウト画を表示させる表示制御ステップと、特定のオブジェクトの優先度に関する設定情報を取得する設定取得ステップと、前記レイアウト画内の画像の入れ替え要求に基づき、入れ替え候補画像を抽出する抽出ステップと、を備え、前記抽出ステップでは、前記優先度に関する設定に基づき、前記入れ替え候補画像を抽出する。【選択図】  図１９
2018097483.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像データに対しオブジェクトの識別処理を実行する識別ステップと、
前記識別ステップにより前記識別処理が実行された複数の画像データのうち少なくとも一部の画像データとテンプレートデータとに基づきレイアウトデータを生成する生成ステップと、
前記レイアウトデータに基づき表示部にレイアウト画を表示させる表示制御ステップと、
特定のオブジェクトの優先度に関する設定情報を取得する設定取得ステップと、
前記レイアウト画内の画像の入れ替え要求に基づき、入れ替え候補画像を抽出する抽出ステップと、を備え、
前記抽出ステップでは、前記優先度に関する設定に基づき、前記入れ替え候補画像を抽出することを特徴とする画像処理方法。
【請求項２】
前記識別処理の結果に基づき、前記特定のオブジェクトを含む画像に対し、前記特定のオブジェクトであることを示す識別情報を付与する付与ステップを備え、
前記抽出ステップは、前記優先度に関する設定と、前記識別情報と、に基づき前記入れ替え候補画像を抽出することを特徴とする請求項１に記載の画像処理方法。
【請求項３】
前記識別処理が実行された複数の画像データに対し、少なくとも前記テンプレートデータに基づいた得点を付与する得点化ステップを備え、
前記生成ステップでは、前記得点化ステップにより付与された得点に基づき、前記レイアウトデータを生成し、
前記抽出ステップでは、前記識別情報が付与された第１の画像を、前記第１の画像より得点が高く前記識別情報の付与されていない第２の画像よりも優先的に抽出することを特徴とする請求項２に記載の画像処理方法。
【請求項４】
前記識別処理が実行された複数の画像データに対し、少なくとも前記テンプレートデータに基づいた得点を付与する得点化ステップを備え、
前記生成ステップでは、前記得点化ステップにより付与された得点に基づき、前記レイアウトデータを生成し、
前記抽出ステップでは、前記優先度に関する設定と、前記識別情報と、に基づき抽出可能な画像が複数存在する場合、前記得点化ステップにより付与された得点をさらに用いて前記入れ替え候補画像を抽出することを特徴とする請求項２又は３に記載の画像処理方法。
【請求項５】
前記抽出ステップにおいて入れ替え候補画像を抽出する条件は、前記優先度に関する設定に応じて異なることを特徴とする請求項１乃至４のいずれか１項に記載の画像処理方法。
【請求項６】
前記抽出ステップでは、複数の抽出条件により複数の前記入れ替え候補画像を抽出可能であり、
第１抽出条件による入れ替え候補画像の抽出結果によって、第２抽出条件による入れ替え候補画像の抽出枚数が変わることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理方法。
【請求項７】
前記設定取得ステップでは、前記優先度に関する設定として、前記特定のオブジェクトを優先的に出現させる優先モードの設定情報を取得することを特徴とする請求項１乃至６のいずれか１項に記載の画像処理方法。
【請求項８】
前記設定取得ステップでは、前記優先度に関する設定として、前記特定のオブジェクトの出現頻度に関する設定情報を取得することを特徴とする請求項１乃至６のいずれか１項に記載の画像処理方法。
【請求項９】
前記設定取得ステップでは、複数の前記特定のオブジェクの出現頻度に関する設定情報を取得し、
前記抽出ステップでは、前記複数の特定のオブジェクトの出現頻度に関する設定に基づき、前記入れ替え候補画像を抽出することを特徴とする請求項８に記載の画像処理方法。
【請求項１０】
画像を入れ替える入れ替えステップを備え、
前記表示制御ステップでは、前記抽出ステップにより抽出された複数の入れ替え候補画像を表示し、
前記入れ替えステップでは、前記レイアウト画内の入れ替え対象画像を、複数の入れ替え候補画像からユーザにより選択された画像に入れ替えることを特徴とする請求項１乃至９のいずれか１項に記載の画像処理方法。
【請求項１１】
前記特定のオブジェクトは特定の個体である請求項１乃至１０のいずれか１項に記載の画像処理方法。
【請求項１２】
前記オブジェクトは、個体が分類されたカテゴリ単位である請求項１乃至１０のいずれか１項に記載の画像処理方法。
【請求項１３】
請求項１乃至１２のいずれか１項に記載の画像処理方法の各ステップをコンピュータに実行させるためのプログラム。
【請求項１４】
複数の画像データに対しオブジェクトの識別処理を実行する識別手段と、
前記識別手段により前記識別処理が実行された複数の画像データのうち少なくとも一部の画像データとテンプレートデータとに基づきレイアウトデータを生成する生成手段と、
前記レイアウトデータに基づき表示部にレイアウト画を表示させる表示制御手段と、
特定のオブジェクトの優先度に関する設定情報を取得する設定取得手段と、
前記レイアウト画内の画像の入れ替え要求に基づき、入れ替え候補画像を抽出する抽出手段と、を備え、
前記抽出手段は、前記優先度に関する設定に基づき、前記入れ替え候補画像を抽出することを特徴とする画像処理装置。
【請求項１５】
前記識別処理の結果に基づき、前記特定のオブジェクトを含む画像に対し、前記特定のオブジェクトであることを示す識別情報を付与する付与手段を備え、
前記抽出手段は、前記優先度に関する設定と、前記識別情報と、に基づき前記入れ替え候補画像を抽出することを特徴とする請求項１４に記載の画像処理装置。
【請求項１６】
前記識別処理が実行された複数の画像データに対し、少なくとも前記テンプレートデータに基づいた得点を付与する得点化手段を備え、
前記生成手段は、前記得点化手段により付与された得点に基づき、前記レイアウトデータを生成し、
前記抽出手段は、前記識別情報が付与された第１の画像を、前記第１の画像より得点が高く前記識別情報の付与されていない第２の画像よりも優先的に抽出することを特徴とする請求項１５に記載の画像処理装置。
【請求項１７】
前記識別処理が実行された複数の画像データに対し、少なくとも前記テンプレートデータに基づいた得点を付与する得点化手段を備え、
前記生成手段は、前記得点化手段により付与された得点に基づき、前記レイアウトデータを生成し、
前記抽出手段は、前記優先度に関する設定と、前記識別情報と、に基づき抽出可能な画像が複数存在する場合、前記得点化手段により付与された得点をさらに用いて前記入れ替え候補画像を抽出することを特徴とする請求項１５又は１６に記載の画像処理装置。
【請求項１８】
前記抽出手段が入れ替え候補画像を抽出する条件は、前記優先度に関する設定に応じて異なることを特徴とする請求項１４乃至１７のいずれか１項に記載の画像処理装置。
【請求項１９】
前記抽出手段は、複数の抽出条件により複数の前記入れ替え候補画像を抽出可能であり、
第１抽出条件による入れ替え候補画像の抽出結果によって、第２抽出条件による入れ替え候補画像の抽出枚数が変わることを特徴とする請求項１４乃至１８のいずれか１項に記載の画像処理装置。
【請求項２０】
前記設定取得手段は、前記優先度に関する設定として、前記特定のオブジェクトを優先的に出現させる優先モードの設定情報を取得することを特徴とする請求項１４乃至１９のいずれか１項に記載の画像処理装置。
【請求項２１】
前記設定取得手段は、前記優先度に関する設定として、前記特定のオブジェクトの出現頻度に関する設定情報を取得することを特徴とする請求項１４乃至１９のいずれか１項に記載の画像処理装置。
【請求項２２】
前記設定取得手段は、複数の前記特定のオブジェクトの出現頻度に関する設定を受け付け、
前記抽出手段は、前記複数の特定のオブジェクトの出現頻度に関する設定に基づき、前記入れ替え候補画像を抽出することを特徴とする請求項２１に記載の画像処理装置。
【請求項２３】
画像を入れ替える入れ替え手段を備え、
前記表示制御手段は、前記抽出手段により抽出された複数の入れ替え候補画像を表示し、
前記入れ替え手段は、前記レイアウト画内の入れ替え対象画像を、複数の入れ替え候補画像からユーザにより選択された画像に入れ替えることを特徴とする請求項１４乃至２２のいずれか１項に記載の画像処理装置。
【請求項２４】
前記特定のオブジェクトは特定の個体である請求項１４乃至２３のいずれか１項に記載の画像処理装置。
【請求項２５】
前記オブジェクトは、個体が分類されたカテゴリ単位である請求項１４乃至２３のいずれか１項に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理方法、画像処理装置、及びプログラムに関し、特に画像データに対して編集などの処理を施す画像処理方法、画像処理装置、及びプログラムに関する
【背景技術】
【０００２】
写真等の画像データを、テンプレート内のスロットにレイアウトし、フォトアルバムを作成する技術がある。画像をスロットに自動で割り当てられた場合、ユーザが所望する画像が割り当てられないことがあるため、画像の入れ替えが行えるようにすることが考えられる。特許文献１では、複数の画像を撮影時刻や撮影位置に基づいてグループに分け、そのグループとフォトアルバムのページとを対応付けする。そして、スロットに配置された画像を入れ替える場合は、そのページに対応するグループから入れ替え候補画像を表示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５４４９４６０号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１では、複数の画像を撮影時刻や撮影位置に基づいてグループに分けているため、特定のスロットの画像を入れ替える場合、撮影時刻や撮影位置が近い画像が入れ替え候補画像として抽出される。しかしながら、画像に写っているオブジェクトが考慮されておらず、必ずしもユーザの所望する入れ替え候補画像が優先的に表示されない可能性があった。
【０００５】
そこで本発明は、オブジェクトを考慮することにより、ユーザの好みを反映した入れ替え候補画像を抽出する技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の画像処理方法は、複数の画像データに対しオブジェクトの識別処理を実行する識別ステップと、前記識別ステップにより前記識別処理が実行された複数の画像データのうち少なくとも一部の画像データとテンプレートデータとに基づきレイアウトデータを生成する生成ステップと、前記レイアウトデータに基づき表示部にレイアウト画を表示させる表示制御ステップと、特定のオブジェクトの優先度に関する設定情報を取得する設定取得ステップと、前記レイアウト画内の画像の入れ替え要求に基づき、入れ替え候補画像を抽出する抽出ステップと、を備え、前記抽出ステップでは、前記優先度に関する設定に基づき、前記入れ替え候補画像を抽出する。
【発明の効果】
【０００７】
本発明により、オブジェクトに関するユーザの好みを反映した入れ替え候補画像を抽出することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明に係るアプリケーションを実行可能なハードウェアブロック図である。
【図２】本発明に係るアプリケーションのソフトウェアブロック図である。
【図３】本発明に係るアプリケーションが表示する表示画面の模式図である。
【図４】本発明に係る自動レイアウトの処理フロー図である。
【図５】本発明に係る画像解析情報を説明する表である。
【図６】本発明に係る画像群分割を説明する図である。
【図７】本発明に係るシーン分類を説明する表である。
【図８】本発明に係る画像の得点を説明する表である。
【図９】本発明に係る画像選択を説明する図である。
【図１０】本発明に係る画像レイアウトを説明する模式図である。
【図１１】本発明に係る画像選択部を説明するブロック図である。
【図１２】本発明に係る画像選択ステップの詳細なフロー図である。
【図１３】本発明に係る詳細なテンプレート設定部を説明するブロック図である。
【図１４】本発明に係るテンプレート設定ステップの詳細なフローを説明する図である。
【図１５】本発明に係るアプリケーションが表示する表示画面の模式図である。
【図１６】本発明に係る自動レイアウト結果を表示する表示画面の模式図である。
【図１７】本発明に係る画像入れ替えのフローを説明する図である。
【図１８】本発明に係る入替候補画像を表示する表示画面の模式図である。
【図１９】本発明に係る入替候補画像の画像検索の詳細フローを説明する図である。
【図２０】本発明に係る入替候補画像の選択条件の例を示す表である。
【図２１】本発明に係る入替候補画像の選択条件の例を示す表である。
【図２２】本発明に係るアプリケーションが表示する表示画面の模式図である。
【図２３】本発明に係るアプリケーションが表示する表示画面の模式図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の実施の形態を説明する。尚、以下の実施の形態は本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。なお、同一の構成要素には同一の参照番号を付して、説明を省略する。以下の実施形態では、情報処理装置上で、アルバム作成のためのアプリケーションプログラム（以下、「アルバム作成アプリ」ともいう）を動作させ、自動レイアウトを生成するまでの手順について説明する。以下に説明する画像とは、特に断りが無い限り、静止画、動画、動画中のフレーム画像、また、ＳＮＳ（ソーシャル・ネットワーキング・サービス）上の静止画と動画と動画中のフレーム画像を含む。
【００１０】
（画像処理装置のハードウェア構成）
図１は、本発明の一実施形態に係る画像処理装置のハードウェアの構成を説明するブロック図である。画像処理装置としては、例えば、ＰＣ、スマートフォン等が挙げられ、本実施形態ではＰＣとする。図１において、画像処理装置１００は、ＣＰＵ１０１と、ＲＯＭ１０２と、ＲＡＭ１０３と、ＨＤＤ１０４と、ディスプレイ１０５と、キーボード１０６と、マウス１０７と、データ通信装置１０８と、を備えている。これらは、データバス１０９により相互に接続されている。
【００１１】
ＣＰＵ（中央演算装置／プロセッサ）１０１は、システム制御部であり、画像処理装置１００全体を制御する。また、ＣＰＵ１０１は、本実施形態で説明する画像処理方法をプログラムに従って実行する。なお、図中のＣＰＵは１つとしたが、これに限定されず、複数備えていてもよい。
【００１２】
ＲＯＭ１０２には、ＣＰＵ１０１により実行されるプログラムやＯＳ（オペレーティングシステム）が記憶されている。ＲＡＭ１０３は、ＣＰＵ１０１によるプログラムの実行時に、各種情報を一時的に記憶するためのメモリを提供している。ＨＤＤ（ハードディスク）１０４は、画像ファイルや画像解析などの処理結果を保持するデータベースなどを記憶するための記憶媒体である。本実施形態では、ＨＤＤ１０４は、詳細は後述するアルバム作成のためのアプリケーションプログラムを記憶する。
【００１３】
ディスプレイ１０５は、本実施形態のＵＩ（ユーザインターフェース）や画像のレイアウト結果をユーザに提示する装置である。ディスプレイ１０５は、タッチセンサー機能を備えても良い。キーボード１０６は、入力装置の１つであり、例えば、ディスプレイ１０５に表示されたＵＩ上に所定の情報を入力するのに用いられる。本実施形態では、キーボード１０６を介してアルバムの見開き数を入力する。マウス１０７は、入力装置の１つであり、例えば、ディスプレイ１０５に表示されたＵＩ上のボタンをクリックするのに用いられる。
【００１４】
データ通信装置１０８は、プリンタやサーバなどの外部装置と通信するための装置である。例えば、自動レイアウトのデータは、データ通信装置１０８を介してＰＣに接続された不図示のプリンタやサーバに送信される。また、データ通信装置１０８は、サーバやＳＮＳ（ソーシャルネットワーキングサービス）上の静止画データや動画データを受信する。
データバス１０９は、上述した各部（１０２〜１０８）とＣＰＵ１０１とを接続する。
【００１５】
（画像処理装置の機能的な構成）
次に、画像処理装置の機能的な構成を説明する。図２は、本実施形態のアルバム作成アプリケーションのソフトウェアブロック図である。本実施形態では、ＨＤＤ１０４に保存されたアルバム作成アプリケーションが、ディスプレイ１０５に表示されているアプリケーションのアイコンがユーザによりマウス１０７を使ってダブルクリックされることにより起動する。アルバム作成アプリケーションは様々な機能を持つが、本実施形態では、特に自動レイアウト処理部２１９により提供される自動レイアウト機能に関して説明する。図２に示すように、アプリケーションは、アルバム作成条件指定部２０１と、自動レイアウト処理部２１９と、を含む。自動レイアウト機能は、撮影された写真をその内容や属性に基づいて分類し、あるいは選択して写真をレイアウトし、ディスプレイ１０５に表示するアルバム画像を生成するための機能である。
【００１６】
アルバム作成条件指定部２０１は、マウス１０７によるＵＩ操作に応じてアルバム作成条件を自動レイアウト処理部２１９に指定する。本実施形態では、アルバム作成条件として、主人公、見開き数、テンプレートの種類、アルバム作成のモード、画像補正をするか否かを指定する。さらには、画像に写っているオブジェクトの何を優先的に配置するかといったオブジェクト優先条件を指定できる。画像・動画の指定は、たとえば撮影日時など個別の画像データの付随情報や属性情報による指定であってもよいし、デバイスやディレクトリの指定など、画像・動画データを含むファイルシステムの構造に基づく指定であってもよい。なお見開きとは、たとえば表示においてはひとつの表示用ウィンドウに相当し、印刷においては、異なるシートに印刷された、互いに隣接する１対のページに相当する。
【００１７】
動画取得部２０２は、アルバム作成条件指定部２０１により指定された動画群（動画データ群）をＨＤＤ１０４から取得する。ここでいう動画群とは、１つのアルバム作成の際に動画から切り出された画像をレイアウトに利用する候補動画群を指す。取得された動画データは解析できるようにＯＳに標準搭載されている動画のデコーダを使って圧縮された状態から展開しておく。
【００１８】
動画解析部２０３は、動画取得部２０２で取得された動画データを解析する。解析する項目としては、取得した動画の圧縮情報から動き量の多い・少ないを判定する。または、撮影者のカメラワーク（ズームやパーンなど）からユーザの注目フレームを特定することが考えられる。更には、人の顔検出などのオブジェクト検出や、ブレボケ解析などを上記解析に組合せて得点化してもよい。解析処理により、動画のどこに良いショットが含まれるかを特定することができる。
【００１９】
フレーム取得部２０４は、動画解析部２０３で解析された結果に基づいて、動画からフレームを切り出して画像データとしてＨＤＤ１０４に保存する。その際、切り出された画像データと関連付けて、動画解析部で判定された動き量、カメラワーク、得点を保存する。保存する際に、判定された得点からアルバムに利用する画像、アルバム作成後にユーザが差し替え利用するための候補画像というように用途も関連付けて保存してもよい。
【００２０】
画像取得部２０５は、アルバム作成条件指定部２０１により指定された画像群（画像データ群）をＨＤＤ１０４から取得する。なお、動画取得部２０２は、データ通信装置１０８を介してネットワーク上のサーバやＳＮＳ等の記憶領域から画像群を取得しても良い。ここでいう画像群とは、１つのアルバム作成の際に利用される候補画像群を指す。例えば、アルバム作成条件指定部２０１において、レイアウト対象となる画像が撮影された日時の条件としてＸＸ年１月１日〜ＸＸ年１２月３１日が指定された場合は、ＸＸ年１月１日〜ＸＸ年１２月３１日に撮影された全ての画像データを画像群として取得する。
【００２１】
ＨＤＤ１０４等の記憶領域に保存されている画像としては、静止画像や、動画から切り出された切り出し画像が挙げられる。静止画像や切り出し画像は、デジタルカメラやスマートデバイス等の撮像デバイスから取得したものである。撮像デバイスは、画像処理装置１００が備えていてもよいし、外部装置が備えるものであってもよい。なお、撮像デバイスが外部装置である場合は、画像はデータ通信装置１０８を介して取得する。また、静止画像や切り出し画像は、データ通信装置１０８を介してネットワークやサーバから取得した画像であってもよい。ネットワークやサーバから取得した画像としては、ソーシャルネットワーキングサービス画像（以下、「ＳＮＳ画像」という）が挙げられる。ＣＰＵ１０１によって実行されるプログラムは、各画像に対して、画像に付随したデータを解析して保存元を判定する。ＳＮＳ画像は、アプリケーションを介してＳＮＳから画像を取得することで、アプリケーション内で取得先を管理してもよい。画像は、上述した画像に限定されるものではなく、他の種類の画像であってもよい。
【００２２】
画像変換部２０６は、画像取得部２０５によって取得された画像データの画素数情報や色情報を変換する。なお、画像変換部２０６によって、どのような画素数情報や色情報の画像データへの変換が行われるかは予め決められており、その情報は、アルバム作成アプリ又はアルバム作成アプリが用いるパラメータファイルに保存されている。本実施形態では、画像取得部２０５によって取得された画像データを、画素数が短辺４２０画素、色情報がｓＲＧＢである画像データに変換する。
【００２３】
画像解析部２０７は、画像データの解析処理をする。本実施形態では、画像解析部２０７は、画像変換部２０６で変換済みの画像データの解析処理をする。具体的には、変換済みの画像データから特徴量を取得し、変換済みの画像データにおけるオブジェクト検出、顔検出、検出した顔の表情認識、検出した顔の個人認識処理（識別処理）を実行する。さらに、画像取得部２０５によって取得された変換前の画像データに付随したデータ（例えば、Ｅｘｉｆ情報）から、撮影日時情報の取得を行う。撮影日時情報として、Ｅｘｉｆ情報からの取得に限らず、画像データを作成または更新した日時の情報が用いられてもよい。また、サーバやＳＮＳに画像データをアップロードまたはサーバやＳＮＳから画像データをダウンロードした日時の情報が用いられてもよい。これらの日時の情報も、以下では撮影日時情報として取り扱う。
【００２４】
画像分類部２０８は、画像データ群に対して、撮影日時情報や枚数、検出した顔情報を使って後述のシーン分割、シーン分類を実行する。シーンとは、「旅行」や「日常」、「結婚式」等の撮影シーンのことである。シーンとは、例えば、一時期の撮影機会に撮影された画像データの集まりであるともいえる。
【００２５】
主人公情報入力部２０９は、アルバム作成条件指定部２０１から指定された主人公のＩＤ（識別情報）を画像得点部２１０に入力する。
【００２６】
画像得点部２１０は、各画像データに対して、レイアウトに適した画像データが高得点になるように得点付けをする。得点付けは、画像解析部２０７で得られた情報と、画像分類部２０８で得られた情報に応じて実行される。また、他の情報が付加的に或いは代替的に用いられてもよい。本実施形態では、画像得点部２１０は、主人公情報入力部２０９から入力された主人公ＩＤが含まれる画像データの得点が高得点になるように、各画像データに対して得点付けをする。
【００２７】
見開き入力部２１１は、アルバム作成条件指定部２０１から指定されたアルバムの見開き数を見開き割当部２１２に入力する。
【００２８】
見開き割当部２１２は、画像群を分割（グルーピング）して各見開きに割り当てる。見開き割当部２１２は、入力された見開き数に応じて画像群を分割して、各見開きに画像群の一部を割り当てる。例えば、見開き割当部２１２は、見開き数が５である場合、取得した画像群を５つに分割して小画像群を生成し、各見開きに１つの小画像群を割当てる。なお、本実施形態では、画像群が見開き数に応じて分割され、分割された画像群が各見開きに割り当てられる形態を説明するが、画像群がページ数に応じて分割され、分割された画像群が各ページに割り当てられる形態であっても良い。
【００２９】
画像選択部２１３は、見開き割当部２１２で各見開きに割り当てられた画像群から、画像得点部２１０で付けた得点に基づいて、画像データを選択する。
【００３０】
テンプレート設定部２１４は、アルバム作成条件指定部２０１から指定されたテンプレート情報（テンプレートデータ）に応じた複数のテンプレートをＨＤＤ１０４から読み込み、画像レイアウト部２１５に入力する。なお、本実施形態では、複数のテンプレートは、ＨＤＤ１０４に保存されているアルバム作成アプリに保持されているものとする。また、複数のテンプレートには、例えば、テンプレート全体のサイズに関する情報や、テンプレートが備えるスロットの個数、サイズ、位置に関する情報等が含まれる。
【００３１】
画像レイアウト部２１５は、見開きのレイアウトを決定する。具体的には、テンプレート設定部２１４により入力された複数のテンプレートから画像選択部２１３で選択した画像データに適したテンプレートを選択し、各画像の配置位置を決定する。これにより、見開きのレイアウトが決定される。
【００３２】
レイアウト情報出力部２１８は、画像レイアウト部２１５が決定したレイアウトに従って、ディスプレイ１０５にレイアウト画像を表示するためのレイアウト情報を出力する表示制御を行う。レイアウト画像は、例えば、選択されたテンプレートに画像選択部２１３により選択された画像データが表わす画像が配置された画像であり、レイアウト情報は、当該画像を表わすビットマップデータである。
【００３３】
画像補正部２１７は、覆い焼き補正（輝度補正）、赤目補正、コントラスト補正等の各補正処理を実行する。画像補正条件入力部２１６は、アルバム作成条件指定部２０１から指定された画像補正のＯＮ／ＯＦＦ条件を画像補正部２１７に入力する。画像補正のＯＮ／ＯＦＦは、補正の種類ごとに指定されてもよいし、全ての種類についてまとめて指定されてもよい。画像補正部２１７は、画像補正条件がＯＮの場合は、画像データに対して補正処理を実施し、画像補正条件がＯＦＦの場合は、画像データに対して補正処理を実施しない。なお、画像補正部２１７は、画像変換部２０６から入力された画像データに対して、画像補正のＯＮ／ＯＦＦに従って補正処理を実行する。画像変換部２０６から画像補正部２１７に入力する画像データの画素数情報は、画像レイアウト部２１５で決定したレイアウト画像のサイズに合わせて変えることができる。本実施形態では、レイアウト画像を生成した後に、各画像データに画像補正を行うものとしたが、これに限定されず、テンプレートに画像をレイアウト（配置）する前に、各画像データの補正を行うようにしてもよい。
【００３４】
レイアウト情報出力部２１８から出力される画像データは、例えば図３に示すような形式でディスプレイ１０５に表示される。
【００３５】
入れ替え候補画像検索部２２０は、レイアウトされた画像の入れ替えを行う場合に、画像データ群から入れ替え候補画像となる画像を検索し、検索条件に合致した画像を抽出する画像入れ替え制御部として機能する。具体的には、アルバム作成条件指定部２０１から指定されたオブジェクト優先条件と、画像選択部２１３と画像特典部２１０の処理結果を参照して候補画像を抽出する。その結果を受け、レイアウト部２１５及びレイアウト情報出力部２１８によりレイアウトデータが生成され、表示部であるディスプレイに表示されたレイアウト画（レイアウト結果）に基づき、レイアウト画内の画像を入れ替える制御を行う。詳細は、図１６以降を用いて後述する。
【００３６】
本実施形態に係るアルバム作成アプリケーションは、画像処理装置１００にインストールされると画像処理装置１００上で動作するＯＳ（オペレーティングシステム）のトップ画面（デスクトップ）上に起動アイコンが表示される。ユーザがディスプレイ１０５に表示されているデスクトップ上の起動アイコンをマウス１０７でダブルクリックすると、ＨＤＤ１０４に保存されているアルバム作成アプリケーションのプログラムがＲＡＭ１０３にロードされる。ＲＡＭ１０３のプログラムがＣＰＵ１０１によって実行されて、アルバム作成アプリケーションが起動する。
【００３７】
（アルバム作成時の設定画面）
図３は、起動したアルバム作成アプリが提供するＵＩ構成画面３０１の一例を示す図である。ＵＩ構成画面３０１は、ディスプレイ１０５に表示される。ユーザがＵＩ構成画面３０１を介して、後述するアルバムの作成条件を設定することで、アルバム作成条件指定部２０１は、ユーザから指定される設定内容を取得する。ＵＩ構成画面３０１上のパスボックス３０２は、アルバム作成の対象となる画像・動画群のＨＤＤ１０４中の保存場所（パス）を示す。フォルダ選択ボタン３０３は、ユーザによるマウス１０７の操作によりクリックされることより、アルバム作成の対象とする画像・動画群を含むフォルダをツリー構成でユーザが選択可能に表示する。そして、ユーザにより選択された画像・動画群を含むフォルダパスがパスボックス３０２に表示される。
【００３８】
主人公指定アイコン３０４は、ユーザが主人公を指定するためのアイコンであり、人物の顔画像がアイコンとして表示される。主人公指定アイコン３０４には、複数の異なる顔画像のアイコンが並んで表示され、ユーザがマウス１０７によりクリックすることで、ユーザはそのなかのいずれかのアイコンを選択可能である。そして、選択されたアイコンに対応する人物が、作成対象のアルバムの主人公として設定される。なお、それぞれの顔画像は個人ＩＤと関連付けられている。また、主人公指定アイコン３０４は、解析対象の画像データが表わす画像に写った人物から中心人物である主人公を特定するために用いられる。顔画像は、例えば、予め各画像データが表す画像から検出され、個人ＩＤと関連付けて顔データベースに登録されている。主人公指定アイコン３０４は、例えば顔データベースに登録された人物の顔画像のうち、ユーザによって選択された人物の顔画像や後述の方法で決定された人物の顔画像である。なお、主人公は図４に示す手順で自動設定されることもできる。
【００３９】
見開き数ボックス３０５は、ユーザからのアルバムの見開き数の設定を受け付ける。ユーザは、キーボード１０６を介して見開き数ボックス３０５に直接数字を入力するか、マウス１０７を用いてリストから見開き数ボックスに数字を入力する。
【００４０】
テンプレート指定アイコン３０６は、テンプレートのテイスト（ポップ調やシック調等）別にイラスト画像を表示する。テンプレート指定アイコン３０６には、複数のテンプレートアイコンが並んで表示され、ユーザがマウス１０７によってクリックすることで、ユーザはそのなかのいずれかのアイコンを選択可能である。そして、選択されたアイコンに対応するテンプレートが、作成対象のアルバムに用いられるテンプレートとして設定される。本実施形態では、テンプレートは、画像データを配置するための画像配置枠（スロット）を有する。そして、テンプレートが有するスロットに、画像データが埋め込まれることで、１つのレイアウト画像が完成する。
【００４１】
モード指定部３０７は、作成対象のアルバムのモード設定に対応するアイコンである。なお、アルバムのモードとは、所定のオブジェクトを含む画像を優先してテンプレートにレイアウトするためのモードであり、本実施形態では、「人物」、「動物」、「料理」の３つのモードがある。例えば、「人物」が選択された場合は、人物を含む画像を優先してテンプレートにレイアウトする。また、例えば、「動物」が選択された場合は、動物を含む画像を優先してテンプレートにレイアウトする。また、例えば、「料理」が選択された場合は、料理を含む画像を優先してテンプレートにレイアウトする。なお、上述の３つ以外のオブジェクトが写りこんでいる画像を表わす画像データを優先してテンプレートにレイアウトするためのモードがあっても良い。また、同時に複数のモードが選択されても良い。その場合、選択された複数のモードに対応する複数のオブジェクトの少なくとも１つを含む画像を優先してテンプレートにレイアウトする。ユーザがマウス１０７によってクリックすることで、ユーザは、各モードに対応する複数のアイコンのなかのいずれかのアイコンを選択可能である。そして、選択されたアイコンに対応するモードが、作成対象のアルバムのモードとして設定される。なお、本実施形態では、アルバムのモードを、モード指定部３０７を介してユーザが選択する形態を説明するが、例えば、アルバム作成アプリのプログラムにより、ＣＰＵ１０１が自動でアルバムのモードを選択する形態であっても良い。この場合、例えば、ＣＰＵ１０１は、画像取得部２０５によって取得された画像データ群を解析することにより、当該画像データ群に一番多く含まれるカテゴリのオブジェクトを特定する。そして、ＣＰＵ１０１は、特定されたカテゴリに応じたモードを選択する。
【００４２】
なお、オブジェクトとは、個体（人物の場合は個人）の単位でもよく、図３に示す「人」「動物」のように生物の種類による分類単位であってもよい。また、「家族」「ペット」のように個体が属するグループ単位であってもよい。つまり、オブジェクトは、個体の単位だけでなくその個体が分類されるカテゴリ単位でもよい。オブジェクトの単位は、識別可能なレベルに応じて、モード指定部３０７のオブジェクトの単位を設定するとよい。
【００４３】
このモード指定部３０７により指定された主要オブジェクトはレイアウト時における優先度が高いものとして、各画像に得点を付与する際に得点が上乗せされる。また、図１７〜図２０を用いて後述する入れ替え候補画像の抽出条件においても用いられるとよい。
【００４４】
チェックボックス３０８は、ユーザからの画像補正のＯＮ／ＯＦＦの設定を受け付ける。チェックボックス３０８にチェックが入った状態は画像補正ＯＮが指定された状態であり、チェックが入っていない状態は画像補正ＯＦＦが指定された状態である。なお、ＵＩ構成画面３０１は全ての補正処理についてまとめてＯＮ／ＯＦＦが設定される構成であるが、個別の補正処理ごとにＯＮ／ＯＦＦを設定可能とするようにしても良い。ＯＫボタン３０９は、設定が完了したことをユーザから受け付けるためのボタンである。ユーザによりＯＫボタン３０９がマウス１０７でクリックされると、アルバム作成条件指定部２０１は、ＵＩ構成画面３０１上で設定されている内容を取得する。そして、アルバム作成条件指定部２０１は、自動レイアウト処理部２１９に、取得した設定情報を出力する。その際、パスボックス３０２に入力されているパスは、画像取得部２０５に伝えられる。また、主人公指定アイコン３０４で選択されている主人公の個人ＩＤは、主人公情報入力部２０９に伝えられる。また、見開き数ボックス３０５に入力されている見開き数は、見開き数入力部２１１に伝えられる。また、テンプレート指定アイコン３０６で選択されているテンプレート情報は、テンプレート設定部２１４に伝えられる。また、チェックボックス３０８の画像補正のＯＮ／ＯＦＦ設定は、画像補正条件入力部２１６に伝えられる。
【００４５】
リセットボタン３１０は、ＵＩ構成画面３０１上の各設定情報をリセットするためのボタンである。なお、ＵＩ構成画面３０１上では、上述した設定以外の設定を実行可能であっても良い。例えば、動画に関する設定や、画像・動画データの取得先の設定等を実行可能であっても良い。その場合、例えば、サーバ名ボックスや、サーバ選択ボタン、動画使用チェックボックス、対象期間ボックス等がＵＩ構成画面３０１に含まれる。
【００４６】
サーバ名ボックスは、アルバム作成に利用される画像群を含むサーバ名やＳＮＳ名を示す。また、サーバ選択ボタンは、アルバム作成に利用される画像群を含むサーバ名やＳＮＳ名を、リスト構成でユーザが選択可能に表示する。そして、ユーザにより選択されたサーバ名やＳＮＳ名がサーバ名ボックスに表示される。サーバ名ボックスにサーバ名やＳＮＳ名が表示された状態で、ＯＫボタン３０９がマウス１０７でクリックされると、指定されたサーバやＳＮＳへのログイン画面が表示される。表示されたログイン画面を介したユーザの操作により、指定されたサーバやＳＮＳへのログインが完了すると、ＣＰＵ１０１は、指定されたサーバやＳＮＳからの画像データの取得が可能となる。
【００４７】
動画使用チェックボックスは、パスボックス３０２に指定のフォルダや、サーバ名ボックスに指定のサーバやＳＮＳ上にある動画をアルバム作成に利用するか否かの設定をユーザから受け付ける。動画使用チェックボックスにチェックが入った状態はアルバム作成に利用することが指定された状態であり、チェックが入っていない状態はアルバム作成に利用しないことが指定された状態である。
【００４８】
対象期間ボックスは、アルバム作成の対象となる画像群や動画群の撮影日時期間の条件の設定をユーザから受け付ける。また、対象期間ボックスは、指定された撮影日時期間を表示する。対象期間ボックスに撮影日時期間が表示された状態で、ＯＫボタン３０９がマウス１０７でクリックされると、指定された撮影日時期間において撮影された画像群や動画群がアルバム作成に利用される対象となって抽出される。
【００４９】
（自動レイアウトの処理フロー）
図４は、本実施形態に係るアルバム作成アプリにより実行される自動レイアウト処理を示すフローチャートである。図４に示すフローチャートは、例えば、ＣＰＵ１０１がＨＤＤ１０４に格納されたアルバム作成アプリに対応するプログラムをＲＯＭ１０２やＲＡＭ１０３に読み出して実行することにより実現される。図４を参照しながら、自動レイアウトの処理を説明する。以下に示す通り、本実施形態では、アルバムを作成する際に、アルバムを作成するための画像群を撮影時間に応じて分割し、分割して得られた各サブ画像群からページに配置する画像を選択する。
【００５０】
まず、Ｓ４０１では、ＣＰＵ１０１は、アルバム作成条件指定部２０１により、アルバム作成条件を設定する。具体的には例えば、図３に示す画面を介して、ユーザからアルバム作成条件の設定を受け付ける。アルバム作成条件の設定の詳細は、図３を用いた説明にて上述したとおりである。
【００５１】
Ｓ４０２では、ＣＰＵ１０１は、動画取得部２０２によって、検索対象の記憶領域に含まれる動画データを取得する。動画データの取得に関する詳細は、動画取得部２０２の説明にて上述したとおりである。なお、検索対象の記憶領域は、例えば、図３に示す画面（例えば、サーバ名ボックス）にて設定可能である。検索対象の記憶領域として、例えば、ＨＤＤ１０４や、サーバ、ＳＮＳ等が設定される。ＣＰＵ１０１は、Ｓ４０１にて、検索対象の記憶領域を把握できる。
【００５２】
Ｓ４０３では、ＣＰＵ１０１は、動画解析部２０３によって、Ｓ４０２で取得した動画データの解析を行う。動画データの解析に関する詳細は、動画取得部２０２の説明にて上述したとおりである。
【００５３】
Ｓ４０４では、ＣＰＵ１０１は、フレーム取得部２０４によって、Ｓ４０３で解析した動画データからフレームを切り出して、切り出したフレームを画像データとしてＨＤＤ１０４に保存する。動画データからフレームを切り出す処理の詳細は、フレーム取得部２０４の説明にて上述したとおりである。
【００５４】
Ｓ４０５では、ＣＰＵ１０１は、検索対象の記憶領域に含まれる動画データ全てに対して、Ｓ４０２〜Ｓ４０４の処理が終了したか否かを判定する。終了していない場合（Ｓ４０５でＮｏ）、Ｓ４０２に戻り、まだ処理の対象となっていない動画データが取得される。終了している場合（Ｓ４０５でＹｅｓ）はＳ４０６に移行する。
【００５５】
Ｓ４０６では、ＣＰＵ１０１は、画像取得部２０５により、検索対象の記憶領域に含まれる画像データを取得する。なお、検索対象の記憶領域は、動画データの取得に関する設定と同様、例えば、図３に示す画面（例えば、サーバ名ボックス）にて設定可能である。検索対象の記憶領域として、例えば、ＨＤＤ１０４や、サーバ、ＳＮＳ等が設定される。ＣＰＵ１０１は、Ｓ４０１にて、検索対象の記憶領域を把握できる。なお、このとき取得される画像データには、Ｓ４０１〜Ｓ４０５の処理において動画データからフレームが切り出されることで取得された画像データが含まれる。
【００５６】
Ｓ４０７では、ＣＰＵ１０１は、画像変換部２０６によって画像データの変換を行う。画像データの変換の詳細は、画像変換部２０６の説明にて上述したとおりである。
【００５７】
Ｓ４０８では、ＣＰＵ１０１は、画像解析部２０７によって、Ｓ４０７で変換済みの画像データから特徴量を取得する。特徴量としては、例えば、ピントが挙げられる。ピントの特徴量を取得するためのエッジの検出方法としては、例えば、一般的なソーベルフィルタが用いられる。ソーベルフィルタでエッジ検出して、エッジの始点と終点の輝度差を始点と終点の距離で割ればエッジの傾き、すなわち輝度勾配が算出可能である。画像中のエッジの平均傾きを算出した結果から、平均傾きが大きい画像は、平均傾きが小さい画像よりもピントが合っているとみなすことができる。そして、傾きに対して異なる値の複数の閾値を設定すれば、どの閾値以上かを判定することにより、ピント量の評価値を出力可能である。
【００５８】
本実施形態では、異なる２つの閾値を予め設定しておき、○△×の３段階により、ピント量を判定する。閾値については、アルバムに採用したいピントの傾きが「○」、許容できるピントの傾きが「△」、許容できない傾きが「×」となるようにして、実験等により予め設定される。なお、閾値の設定は、例えば、アルバム作成アプリの作成元等により提供されても良いし、ユーザインタフェース上で設定可能としても良い。
【００５９】
Ｓ４０９では、ＣＰＵ１０１は、画像解析部２０７によって、Ｓ４０７で変換された画像データに対してオブジェクト検出を実行する。まず、ＣＰＵ１０１は、Ｓ４０７で変換された画像データが表す画像から人物の顔を検出する。顔検出の処理には、公知の方法を用いることができ、例えば、複数用意した弱識別器から強識別器を作成するＡｄａｂｏｏｓｔが用いられる。本実施形態では、Ａｄａｂｏｏｓｔにより作成した強識別器により人物（オブジェクト）の顔画像が検出される。また、ＣＰＵ１０１は、顔画像を抽出すると共に、検出した顔画像の位置の左上座標値と右下座標値を取得する。この２種類の座標を持つことにより、ＣＰＵ１０１は、顔画像の位置と顔画像のサイズを取得することが可能となる。なお、ＣＰＵ１０１は、Ａｄａｂｏｏｓｔを用いて顔検出の処理を実行することで、検出したオブジェクトの信頼度の情報も取得することができる。信頼度の詳細については後述する。また、Ｓ４０９では、ＣＰＵ１０１は、なお、顔に限らず、犬や猫等の動物、花、料理、建物、置物等のオブジェクトを検出対象としてＡｄａｂｏｏｓｔによって強識別器を作成しても良い。これにより、ＣＰＵ１０１は、顔以外のオブジェクトも検出することが可能となる。本実施形態では、Ｓ４０９では、ＣＰＵ１０１は、顔を検出する処理だけでなく、動物と料理を検出する処理を実行する。
【００６０】
Ｓ４１０では、ＣＰＵ１０１は、画像解析部２０７により個人認識（識別処理）をする。具体的には、ＣＰＵ１０１は、Ｓ４０９で抽出した顔画像と、顔辞書データベースに個人ＩＤ毎に保存されている代表顔画像との類似性を比較することで、個人認識を実施する。ＣＰＵ１０１は、Ｓ４０９で抽出した顔画像と各代表顔画像との類似性を判定し、類似性が閾値以上であり且つ最も類似性が高い代表顔画像のＩＤを、Ｓ４０９で抽出した顔画像のＩＤとする。すなわち、類似性が閾値以上であり且つ最も類似性が高い代表顔画像に対応する人物が、Ｓ４０９で抽出した顔画像に対応する人物として特定する。なお、ＣＰＵ１０１は、Ｓ４０９で抽出した顔画像と、顔辞書データベースに保存されている全ての代表顔画像との類似性が閾値未満の場合は、抽出した顔画像に新規の個人ＩＤを割り振って、新規の人物として顔辞書データベースに登録する。また、人物だけでなく、動物等のオブジェクトの識別を行ってもよい。このＳ４１０では、オブジェクトの識別結果に基づき各画像に識別情報が付与される。なお、識別情報としては、個人ＩＤのように個体単位の識別情報だけでなく、人物、動物、モノのようにカテゴリ単位の識別情報を付与してもよい。
【００６１】
Ｓ４０８からＳ４１０で取得された、各画像データの画像解析情報５００は、各画像データを識別するための画像ＩＤ５０１それぞれに紐づけされてＲＡＭ１０３やＨＤＤ１０４等の記憶領域に記憶される。例えば、図５に示すように、Ｓ４０８で取得された撮影日時情報５０２とピント判別結果５０４、Ｓ４０９で検出された顔画像の数５０６と位置情報５０７がテーブル形式で記憶される。なお、顔画像の位置情報は、Ｓ４０４で取得された個人ＩＤ毎に区別して記憶される。また、１つの画像データが表わす１つの画像には、複数の人物の顔画像が含まれる場合があるが、その場合には、複数の人物の顔画像を含む画像を表す画像データの画像ＩＤ５０１には複数の個人ＩＤが紐づけされる。また、１つの画像に、顔画像が１つも含まれない場合は、顔画像を１つも含まない画像を表す画像データの画像ＩＤ５０１には、個人ＩＤは紐づけされない。なお、本実施形態では、人物の顔画像について、その数と位置とを管理する形態としたが、それ以外のオブジェクト（動物の顔や料理等）の数や位置も管理する形態としても良い。
【００６２】
画像属性５０３は、各画像データの属性を表す。例えば、動画データから切り出されて保存された画像データは、「動画」の属性となる。また、例えば、ＳＮＳサーバから取得された画像データは、「ＳＮＳ」の属性となる。このように、属性とは、画像データが静止画から取得されたか動画から取得されたかを示す情報であっても良いし、画像データが保存されていた記憶領域（ＳＮＳサーバや、ＨＤＤ等）を示す情報であっても良い。すなわち、本実施形態において属性とは、画像データの取得元を示す情報とも言える。また、上述した方法以外で属性を区別するものとしてもよいし、デジタルカメラで撮影した静止画像と、スマートデバイスで撮影した静止画像などのように、各属性をさらに詳細に区別してもよい。なお、各画像データの属性は、各画像データが各属性に該当するか否かを示すフラグによって管理されても良い。
【００６３】
オブジェクト分類５０５は、各画像データが表す画像に含まれるオブジェクトのカテゴリ（種類）及び、カテゴリの信頼度を示す。なお、ＣＰＵ１０１は、各画像データが表す画像に含まれるオブジェクトを、例えば、Ａｄａｂｏｏｓｔによって検知することができる。また、このとき、各画像データが表す画像に含まれるオブジェクトのカテゴリ及び、カテゴリの信頼度も検知される。Ａｄａｂｏｏｓｔはパターンを判別する弱判別器を連続で接続し、１つの強判別器を形成する。そのため、ある画像データにおける所定カテゴリのオブジェクトの信頼度は、Ａｄａｂｏｏｓｔで予めアルバム作成アプリが学習し、且つ当該所定のカテゴリに対応するパターンと一致する弱判別器を、当該画像データが表す画像が多く含む場合に高くなる。なお、ここでは、Ａｄａｂｏｏｓｔを用いてオブジェクト検出や信頼度の取得を行う例を説明した。しかしながら、ＤｅｅｐＮｅｕｒａｌＮｅｔｗｏｒｋをはじめとするＣｏｎｖｏｌｕｔｉｏｎａｌＮｅｕｒａｌＮｅｔｗｏｒｋを用いてオブジェクト検出や信頼度の取得を行う形態であってもよい。
【００６４】
本実施形態では、「人物」、「動物」、「料理」の３カテゴリのオブジェクトが検出されるものとし、オブジェクト分類５０５には、各画像データが表す画像において検出されたオブジェクトのカテゴリを示す情報が格納されている。すなわち、オブジェクト分類５０５は、各画像データが表す画像が、いずれのカテゴリのオブジェクトを含むのかを示す情報である。なお、当該情報は、例えばフラグによって管理されていても良い。
【００６５】
カテゴリの信頼度とは、画像データが表す画像に含まれるオブジェクトが、何のカテゴリである可能性が高いかを示す情報であり、信頼度が高いカテゴリほど、画像データが表す画像に含まれるオブジェクトのカテゴリである可能性が高いことになる。なお、信頼度は、例えば、画像データが表す画像における、各オブジェクトの大きさを示す値であっても良い。この場合例えば、信頼度の大きいカテゴリのオブジェクトのサイズは、信頼度の小さいカテゴリのオブジェクトのサイズより大きいことになる。なお、画像データが表す画像に含まれないオブジェクトに対応するカテゴリの情報は、オブジェクト分類５０５には格納されない。また、信頼度がより高いカテゴリから順に、オブジェクト分類５０５におけるＴＯＰ１、２、３に格納される。なお、画像データが表す画像に４つ以上のカテゴリのオブジェクトが含まれる場合は、ＴＯＰ４やＴＯ５等の枠を設けても良い。
【００６６】
Ｓ４１１では、ＣＰＵ１０１は、検索対象の記憶領域に含まれる画像データ全てに対してＳ４０７からＳ４１０の処理が終了したか否かを判定する。終了していない場合（Ｓ４１１でＮｏ）、Ｓ４０６に戻り、まだ処理の対象となっていない画像データが取得される。終了している場合（Ｓ４１１でＹｅｓ）はＳ４１２に移行する。
【００６７】
Ｓ４１２では、ＣＰＵ１０１は、画像分類部２０８によってシーン分割をする。シーン分割とは、Ｓ４０１〜Ｓ４１１にて得られた全画像データを、シーン毎に分割して、複数の画像群として管理することを指す。具体的には、ＣＰＵ１０１は、Ｓ４０８で取得済みの撮影日時情報から算出した、各画像データの撮影日時の時間差に基づいて、全画像データを複数の画像群に分割する。なお、以下の説明において、全画像データ（メイン画像群）が分割されて得られる各画像群を、サブ画像群と言う。本実施形態では、例えば、以下に示す方法によって、シーン分割を行う。まず、撮像日時が古い順においてＮ番目の撮像画像データの撮像日時と（Ｎ＋１）番目の撮像画像データの撮像日時との差が１日以下であれば、以下の通りである。撮像日時が古い順においてＮ番目の撮像画像データの撮像日時と（Ｎ＋１）番目の撮像画像データの撮像日時との差が１６時間以上であれば、Ｎ番目の撮像画像データと（Ｎ＋１）番目の撮像画像データとの間にグループの境界を設定する。また、撮像日時が古い順において隣接する撮像画像データ間で撮像日時の差が、どの撮像画像データ間であっても１６時間未満であるとする。この場合、１日で撮像した撮像画像データ群において最初に撮像した撮像画像データの撮像日時と最後に撮像した撮像画像データの撮像日時との差が４時間未満であれば、該１日の撮像画像データ群を１つのサブ画像群（グループ）とする。一方、該１日で撮像した撮像画像データ群において最初に撮像した撮像画像データの撮像日時と最後に撮像した撮像画像データの撮像日時との差が４時間以上であったとする。この場合、該１日で撮像した撮像画像データの数が５０枚未満（１日で撮像した撮像画像の数が５０未満）であれば、該１日の撮像画像データ群を１つのサブ画像群（グループ）とする。このような撮像画像データのグループ分けの一例を図６（Ａ）に示す。図６（Ａ）〜（Ｃ）において横軸は撮像日時（左側に向かうほど古く、右側に向かうほど新しい）、縦軸は撮像画像データの数を示す。図６（Ａ）では、撮像画像データ群をグループ６０１〜６０８の８個のサブ画像群（グループ）に分割している。図６（Ａ）において矢印はグループの境界を示している。なお、上記のシーン分割方法の説明において使用した撮像日時の差に対する閾値や撮像画像データの数に対する閾値は一例であり、これらの値に限るものではない。なお、分割後の画像群を分割画像群と呼び、１つのシーン毎に１つの分割画像群が設定される。
【００６８】
Ｓ４１３では、ＣＰＵ１０１は、画像分類部２０８により、シーン分類をする。具体的には、ＣＰＵ１０１は、Ｓ４１２でシーン分割されることで得られたサブ画像群をシーンの種類毎に得点化して、後述するシーン分類の信頼性が低い場合を除いて、一番得点が高いシーンの種類に、当該サブ画像群を分類する。なお、以下の説明において、Ｓ４１３における得点化をシーン分類得点化という。本実施形態では、シーンの種類として、「旅行」、「日常」、「セレモニー」があるものとし、サブ画像群をこれらのシーンのいずれかに分類する例を説明する。なお、シーン分類得点化には、シーンの各種類に対応する特徴量の情報が格納されたシーン分類テーブルが利用される。
【００６９】
ここで、プログラムに予め格納される、シーン分類テーブルの作成方法について説明する。まず、「旅行」、「日常」、「セレモニー」のシーンに分類されると予め判定された複数の画像データ群がプログラムの設計者によって集められ、集められた画像データ群について、特徴量が取得される。ここで取得される特徴量の例は、例えば撮影期間、撮影枚数、撮影人数である。撮影期間は、各画像データ群において最初に撮影された画像データと最後に撮影された画像データとの撮影時間差である。撮影枚数は、各画像データ群の枚数である。撮影人数は、各画像データ群が表す各画像に含まれる顔の平均数である。その結果、例えば、旅行シーンであると予め判定された複数の画像データから成る１画像データ群について、撮影期間、撮影枚数、撮影人数の特徴量が取得される。なお、特徴量は撮影期間、撮影枚数、撮影人数に限定されず、他の特徴量が用いられても良いし、その中のいずれかのみが用いられても良い。
【００７０】
そして、上記のような撮影期間、撮影枚数、撮影人数の特徴量の取得が、予め集められた他の画像データ群についても行われる。次に、シーン毎に集められた複数の画像データ群から取得された特徴量に基づいて、撮影期間の平均値と標準偏差、撮影枚数の平均値と標準偏差、１画像あたりの撮影人数の平均値と標準偏差とが求められる。このようにして求められた値と、シーンの各種類とが対応付けられることで、シーンの種類ごとの各平均値と標準偏差を示すシーン分類テーブルが作成される。
【００７１】
本実施形態では、シーン分類テーブルとして、図７に示すテーブル７００が利用されるものとする。テーブル７００では、シーンＩＤ７０１に対応付けて、撮影期間７０２、撮影枚数７０３、撮影人数７０４それぞれの平均値と標準偏差とが登録されている。ＣＰＵ１０１は、テーブル７００をＲＯＭ１０２やＨＤＤ１０４等の記憶領域にシーン分類処理前に予め記憶しておく。なお、テーブル７００は、アルバム作成アプリケーションのプログラムに予め組み込まれていても良いし、アルバム作成アプリケーション外のプログラムに組み込まれていても良い。
【００７２】
ここで、シーン分類得点化について説明する。アルバム作成アプリが起動された後、ユーザがパスボックス３０２やサーバ名ボックスで指定された画像データ群がＳ４０６でシーン分割されることで得られた各サブ画像群に対して、ＣＰＵ１０１は得点を算出する。得点としては、撮影期間、撮影枚数、撮影人数の各特徴量の得点が算出される。ＣＰＵ１０１は、各分割分の撮影期間、撮影枚数、撮影人数の得点、及びそれらの平均得点を、図７に示すシーン毎の平均値と標準偏差を用いて式（１）及び（２）より算出する。なお、下式における、所定の種類のシーンに対応する所定の特徴量の平均値および所定の種類のシーンに対応する所定の特徴量の標準偏差は、テーブル７００に登録されている。また、特徴量は、撮影期間と撮影枚数、撮影人数の３つの特徴項目について取得される。そのため、特徴項目数は本例では３となる。
【００７３】
まず、ＣＰＵ１０１は、式（１）により、サブ画像群の、シーンの各種類および各特徴量毎の得点を取得する。
【００７４】
サブ画像群の、所定の種類のシーンに対応する所定の特徴量の得点＝５０−｜１０×（所定の種類のシーンに対応する所定の特徴量の平均値−サブ画像群の所定の特徴量）／所定の種類のシーンに対応する所定の特徴量の標準偏差｜・・・（１）
これにより、例えば、サブ画像群において、「旅行」シーンに対応する撮影期間、撮影枚数、撮影人数それぞれの得点が取得される。なお、ＣＰＵ１０１は、「旅行」シーンだけでなく、他の各種類のシーンについても得点を取得する。
【００７５】
次に、ＣＰＵ１０１は、式（１）により求めた各得点を式（２）により平均化して、サブ画像群の、各種類のシーンに関する得点を取得する。
【００７６】
サブ画像群の、所定の種類のシーンに関する得点＝（サブ画像群の、所定の種類のシーンに対応する撮影期間の得点＋撮影枚数の得点＋撮影人数の得点）／特徴項目数・・・（２）
これにより、例えば、サブ画像群において、「旅行」、「日常」、「セレモニー」の各種類のシーンに関する得点が取得される。なお、ＣＰＵ１０１は、シーン分類得点化を、各サブ画像群について行う。
【００７７】
以上によって、各サブ画像群について「旅行」、「日常」、「セレモニー」毎の得点が算出される。そして、ＣＰＵ１０１は、得点が１位であるシーンをそのサブ画像群のシーンであると分類する。例えば、図６（Ａ）のシーン分割された後のシーン５に対応するサブ画像群５は、撮影期間が３６時間、撮影枚数が３００枚、撮影人数が１．７人であったとする。すると、サブ画像群５において、「旅行」に関する得点は４５．３２、「日常」に関する得点は１８．３８、「セレモニー」に関する得点は−２９．９２となり、サブ画像群５は最高得点のシーンである「旅行」に分類される。なお、いずれのサブ画像群がいずれのシーンに分類されているかは識別ができるようにシーンＩＤで管理される。また、各シーンに関する得点のうち、同点の得点がある場合は、ＣＰＵ１０１は、予め定められた優先度に従って、サブ画像群を、同点のシーンのうちいずれかのシーンに分類する。具体的には、ＣＰＵ１０１は、サブ画像群を、同点のシーンのうち、優先度の大きいシーンに分類する。なお、例えば、本実施形態では、優先度の大きさは、日常＞セレモニー＞旅行の順であるものとする。優先度の大きさの順番はこれに限定されるものではなく、例えばユーザが優先度の順番を設定できるようにしてもよい。
【００７８】
Ｓ４１４では、ＣＰＵ１０１は、Ｓ４１２で取得された全サブ画像群に対してＳ４１３のシーン分類が終了したか否かを判定する。終了していない場合（Ｓ４１４でＮｏ）、Ｓ４１３に戻り、まだシーン分類の対象となっていないサブ画像群に対してシーン分類を行う。終了している場合（Ｓ４１４でＹｅｓ）、Ｓ４１５に移行する。
【００７９】
Ｓ４１５では、ＣＰＵ１０１は、画像得点部２１０によって主人公設定をする。主人公設定はユーザが指定した画像群に対して実行され、自動と手動の２種類の設定方法のうちいずれかにより行われる。ＣＰＵ１０１は、Ｓ４１０で実行された個人認識の結果と、Ｓ４１２で実行されたシーン分割の結果とから、画像データ群に登場する各個人ＩＤの回数、各シーンに登場する各個人ＩＤの回数、各個人ＩＤが登場するシーンの回数等を取得可能である。自動の設定方法が選択された場合、ＣＰＵ１０１は、これらの情報に基づいて、ユーザ指定によらず自動で主人公を設定する。本実施形態では、ＣＰＵ１０１は、ユーザが指定した画像データ群がシーン毎に複数の分割画像データ群に分割されている場合は、複数のシーンでの登場回数が多い個人ＩＤを主人公ＩＤと設定する。また、ＣＰＵ１０１は、画像データ群が単一シーンである場合は、単一シーンでの登場回数が多い個人ＩＤを主人公ＩＤと設定する。また、ＣＰＵ１０１は、主人公指定アイコン３０４がユーザによって指定されている場合は、主人公情報入力部２０９を介して指定されている個人ＩＤを画像得点部２１０に伝える。ユーザにより個人ＩＤが指定されている場合は、上記のようにして自動設定された主人公ＩＤは無視され、ユーザにより指定された個人ＩＤを主人公ＩＤとして設定する。なお、この設定を手動設定と呼ぶ。
【００８０】
Ｓ４１６では、ＣＰＵ１０１は、画像得点部２１０により、画像得点化をする。Ｓ４１６における画像得点化とは、画像データ毎に後述の観点で評価した得点を付与する（スコアリング）ことであり、後述の、テンプレートに配置する画像を表す画像データの選択時に参照される。なお、本実施形態では、更に、動画データからフレームが切り出されることで取得された画像データに対しては、動画解析部２０３で解析された結果も加味して得点を付与する。ここで、図８及び図１０を用いて、得点化方法について説明する。
【００８１】
図１０は、画像データのレイアウトに使うテンプレート群を示している。テンプレート群に含まれている複数のテンプレートのそれぞれが、各見開きに対応している。テンプレート１００１は、１枚のテンプレートであり、メインスロット１００２はメインスロットを示し、サブスロット１００３と１００４とはサブスロットを示す。メインスロット１００２とは、テンプレート１００１内でメインとなるスロット（画像をレイアウト（配置）する枠）であり、サブスロット１００３と１００４よりもサイズが大きい。なお、１枚のテンプレートには、それぞれ同一の種類のシーンに分類された画像データが表す画像がレイアウトされても良いし、それぞれ異なる種類のシーンに分類された画像データが表す画像がレイアウトされても良い。Ｓ４１６では、ＣＰＵ１０１は、画像得点化処理として、画像データが属する種類のシーンに対応するメインスロット用の得点とサブスロット用の得点の両方を画像データに付与する処理を行う。
【００８２】
画像得点化においては、メインスロットとサブスロットとに採用されるべき画像の特徴量の情報がシーンの種類毎に格納されたスロット特徴テーブルが利用される。
【００８３】
ここで、スロット特徴テーブルの作成方法について説明する。図８（Ａ）は、メインスロットとサブスロットとに採用される画像データの特徴が、「旅行」、「日常」、「セレモニー」の各種類のシーン毎に纏められたテーブルである。まず、各種類のシーンに分類された画像データにおいて、メインスロットに採用されるべき画像特徴に適合すると判定された複数の画像データが、プログラムの設計者によって集められる。また、サブスロットに採用されるべき画像特徴に適合すると判定された複数の画像データが集められる。すなわち、図８（Ａ）に示す特徴に適合する画像データが集められる。そして、画像解析部２０７により、集められた各画像データにおける顔画像の数、顔画像の位置、顔画像のサイズ等の特徴量が抽出される。そして、抽出された特徴量の平均値と標準偏差とを、各シーン種類および各スロット種類（メインスロットとサブスロット）に対して求めることで、スロット特徴テーブルが作成される。なお、スロット特徴テーブルは、ＲＯＭ１０２やＨＤＤ１０４等の記憶領域に、画像得点化前に予め記憶される。なお、スロット特徴テーブルは、アルバム作成アプリケーションのプログラムに予め組み込まれていても良いし、アルバム作成アプリケーション外のプログラムに組み込まれていても良い。
【００８４】
なお、図８（Ａ）に示すように、スロットの種類に応じて、得点化の基準が異なる。例えば、あるサブ画像群のシーン種類が「旅行」である場合、当該サブ画像群に含まれる画像のうち、人物や風景を含む画像は、メインスロットとしての得点が高くなり、顔のアップや横顔を含む画像は、サブスロットとしての得点が高くなる。また、例えば、あるサブ画像群のシーン種類が「日常」である場合、当該サブ画像群に含まれる画像のうち、顔のアップや横顔を含む画像は、メインスロットとしての得点が高くなり、人物や風景を含む画像は、サブスロットとしての得点が高くなる。また、例えば、あるサブ画像群のシーン種類が「セレモニー」である場合、当該サブ画像群に含まれる画像のうち、距離が近い二人の人物を含む画像は、メインスロットとしての得点が高くなり、大人数の人物を含む画像は、サブスロットとしての得点が高くなる。このように、シーン及びスロットの種類に応じて、評価する特徴、言い換えれば、評価基準が異なる。
【００８５】
画像得点化においては、ＣＰＵ１０１は、画像データを、下式を用いて、当該画像データが属する種類のシーンに対応するテンプレートのスロット毎に得点化する。なお、ユーザが指定した画像データ群の各画像データがどの種類のシーンに属すかはＳ４１３のシーン分類の結果から知ることができる。また、下式における、所定の種類のシーン及び所定のスロットに対応する所定の特徴量の平均値および所定の種類のシーン及び所定のスロットに対応する所定の特徴量の標準偏差は、スロット特徴テーブルに登録されている。また、特徴量は、主人公ＩＤの顔画像数、顔画像の位置、顔画像のサイズの３つの特徴項目について取得される。そのため、特徴項目数は本例では３となる。
【００８６】
画像データの、所定のスロットに対応する所定の特徴量に関する得点＝５０−｜１０×（画像データが属する種類のシーン及び所定のスロットに対応する所定の特徴量の平均値−画像データの所定の特徴量）／画像データが属する種類のシーン及び所定のスロットに対応する所定の特徴量の標準偏差｜・・・（３）
これにより、例えば、「旅行」シーンに分類される画像データの、メインスロットに対応する「主人公ＩＤの顔数」の得点が取得される。なお、ＣＰＵ１０１は、メインスロットだけでなく、サブスロットに対応する特徴量についても得点を取得する。また、ＣＰＵ１０１は、「主人公ＩＤの顔画像数」だけでなく、「顔画像の位置」、「顔画像のサイズ」に対応する特徴量についても得点を取得する。
【００８７】
次に、ＣＰＵ１０１は、式（３）により求めた各得点を式（４）により平均化して、画像データの、所定のスロットに関する得点を取得する。
【００８８】
画像データの所定のスロットに関する得点＝（画像データが属する種類のシーン及び所定のスロットに対応する顔数の得点＋顔位置の得点＋顔サイズの得点）／特徴項目数・・・（４）
これにより、メインスロット用とサブスロット用の両方に関する得点化が画像データについて実行される。
【００８９】
本実施形態では、更に、ＣＰＵ１０１は、上述のようにして算出された得点に対して、アルバム作成条件指定部２０１で指定されたモードに基づいて、点数を加算する。具体的には例えば、ＣＰＵ１０１は、モード指定部３０７によって指定されたモードと、各画像データのオブジェクト分類結果に応じて点数を加算する。ＣＰＵ１０１は、例えば、アルバムのモードが「人物」と設定されていた場合は、図５のオブジェクト分類５０５に、「人物」のカテゴリが含まれていれば得点を加算し、「人物」のカテゴリが含まれていなければ得点を加算しない。なお、このとき加算される得点は、「人物」のカテゴリの信頼度や、信頼度の順位に応じて変更されても良い。「動物」や「料理」のモードについても、「人物」のモードと同様に得点を加算する。なお、複数のモードが指定されていた場合は、ＣＰＵ１０１は、設定されているモードそれぞれに関して得点を加算する。すなわち、例えば、ＣＰＵ１０１は、アルバムのモードが「人物」及び「動物」と設定されていれば、オブジェクト分類５０５に、「人物」又は／及び「動物」のカテゴリが含まれている場合に、得点を加算する。なお、ＣＰＵ１０１は、オブジェクト分類５０５に、「人物」及び「動物」のカテゴリが含まれていれば、「人物」のカテゴリが含まれている場合に加算される得点と「動物」のカテゴリが含まれている場合に加算される得点の両方を加算する。
【００９０】
なお、ＣＰＵ１０１は、画像得点化を、ユーザが指定した画像データ群における各画像データについて行う。画像得点化によって付加された得点が後段のＳ４２３での画像選択処理における選択基準となる。上述のように、同じ画像データであっても、分類されるシーンによって選択基準は異なることになる。なお、アルバムに使う画像はピントが合っている方が好ましいので、図５に示すテーブルにおいてピントの特徴量が「○」である画像ＩＤの画像に対しては所定の得点を加えるようにしてもよい。また、画素数が高い画像は、アルバムにレイアウトした際にジャギーが少ないので、画素数が高い画像を表す画像データに対しては所定の得点を加えるようにしてもよい。
【００９１】
図８（Ｂ）は、レイアウト得点化による得点結果の一例を示している。表８００は、各画像ＩＤ８０１の画像データに対して、メインスロットとサブスロットのそれぞれについて得点化がされた結果を示しており、各画像ＩＤ８０１の画像に対して得点８０２が登録されている。例えば、図８（Ｂ）では、画像ＩＤ１は、メインスロット用として２０点が付与され、画像ＩＤ２は、メインスロット用として４５点が付与されている。これは、つまり、メインスロット用としては、画像ＩＤ２の方がユーザの判断基準により近いということを表している。
【００９２】
また、本実施形態では、ＣＰＵ１０１は、上述のようにして得点が設定された場合、動画データから切り出されることで取得された画像データのメインスロット用とサブスロット用の両得点に対して、動画解析部２０３による解析結果に応じた得点を加算する。なお、ＣＰＵ１０１は、得点化が行われた画像データのうち、いずれの画像データが、動画データから切り出されることで取得された画像データなのかを、図５のテーブルの画像属性５０３を参照することで特定することができる。
【００９３】
なお、動画データから切り出すことで取得した画像データに加点するだけでは、当該画像データの点数は、静止画データから取得した画像データよりも、一律で高くなってしまう可能性が高い。そのため、ＣＰＵ１０１は、例えば、動画データから切り出すことで取得した各画像データに加算された各得点の平均値を、動画データから切り出すことで取得した全画像データから減算する、又は、静止画データから取得した全画像データに加算しても良い。このような形態とすることで、動画データから切り出すことで取得した画像データのうち、加算された得点が高い画像データについては、静止画データから取得した画像データに加算された得点より多くの得点が加算される。すなわち、動画データから切り出すことで取得した画像データのうち、加算された得点が高い画像データがより優先的に選択されるように、得点化が行われる。
【００９４】
Ｓ４１７では、ＣＰＵ１０１は、画像取得部２０５により取得された全ての画像データに対してＳ４１６の画像得点化が終了したか否かを判定する。終了していない場合（Ｓ４１７でＮｏ）、Ｓ４１６に戻り、まだ処理の対象となっていない画像データに対して画像得点化が実行される。終了している場合（Ｓ４１７でＹｅｓ）、Ｓ４１８に移行する。
【００９５】
本実施形態では、ＣＰＵ１０１は、画像レイアウト部２１５により、複数のシーンのそれぞれに含まれる画像データが表す画像を、複数のテンプレート（複数の見開き）のそれぞれにレイアウトして、複数のレイアウト画像を作成する。そのため、複数のシーンの数と、複数のテンプレートの数（所定数の見開き数）が一致する必要がある。
【００９６】
そこで、Ｓ４１８では、ＣＰＵ１０１は、Ｓ４１２のシーン分割により得られたシーン数（サブ画像群の数）が見開き数入力部２１１により入力された見開き数と同じか否かを、見開き割当部２１２により判定する。同じでない場合（Ｓ４１８でＮｏ）、Ｓ４１９に移行する。同じ場合（Ｓ４１８でＹｅｓ）、Ｓ４２２に移行する。例えば、図６（Ａ）のように、シーン数が８であり、見開き数入力部２１１の入力数が８であればＳ４２２に移行する。
【００９７】
Ｓ４１９では、ＣＰＵ１０１は、Ｓ４１２のシーン分割により得られたシーン数が見開き数入力部２１１により入力された見開き数より少ないか否かを、見開き割当部２１２により判定する。シーン数が見開き数より少なくない（多い）場合（Ｓ４１９でＮｏ）、Ｓ４２１に移行する。シーン数が見開き数より少ない場合（Ｓ４１９でＹｅｓ）はＳ４２０に移行する。例えば、図６（Ａ）ように、シーン数が８であり、見開き数入力部２１１の入力数が１０であれば、シーン数が見開き数より少ないため、Ｓ４２０に移行する。
【００９８】
Ｓ４２０では、ＣＰＵ１０１は、見開き割当部２１２により、サブシーン分割をする。サブシーン分割とは、シーン分割数＜見開き数の場合に、シーン分割により得られた各シーンを更に細分割することをいう。ここでは、図６（Ａ）のようにシーン分割数が８であり、それに対して指定見開き数が１０である場合について説明する。図６（Ｂ）では、図６（Ａ）をサブシーン分割した結果である。ここでは、分割の間隔をより細かく設定し、破線矢印の箇所で分割したことで、分割数を１０にしている。
【００９９】
分割の基準について説明する。図６（Ａ）の分割の中で画像データ数が多い分割箇所を探す。ここでは、分割数を８から１０に２箇所増やす為、画像データ数が多い２箇所を決める。即ち、再分割すべきシーンを、最も多くの画像データを含む分割画像データ群に対応するシーンから順に指定する。画像データ数が同数の分割画像データ群に対応するシーンについては、対応する分割画像データ群に含まれる画像データ間の撮影日時の差の最大値が大きい方のシーンを選択する。それでも選択できない場合には、例えばより早い時間に生成された画像データを含む分割画像データ群に対応するシーンを優先的に再分割してもよい。
【０１００】
図６（Ａ）では、対応する分割画像データ群に含まれる画像データの数が多いシーンは、多い方から順にシーン５、シーン１、シーン２である。シーン１と２は同じデータ数だが、シーン２の方が、対応する分割画像データ群において最初に生成された画像データから最後に生成された画像データの時間差が大きい為、シーン２を分割対象とする。即ち、図６（Ａ）では、シーン５とシーン２をそれぞれ分割する。
【０１０１】
まずシーン２の分割を説明する。シーン２には画像データ数の山が２つあり、この２つの山に含まれる画像データは、山ごとに撮影日が違う。そこで撮影日が切り替わる部分に対応する図６（Ｂ）の太矢印の箇所で分割する。次にシーン５の分割を説明する。シーン５には画像データ数の山が３つあり、シーン２と同様に、この３つの山に含まれる画像データは、山ごとに撮影日が違う。シーン５では、撮影日が変わる箇所が２箇所あるが、この場合、分割後のデータ数差が小さくなるように、撮影日単位で分割する。即ち、ここでは図６（Ｂ）の太矢印の箇所で分割する。
【０１０２】
以上により分割数すなわちシーン数を８から１０にする。具体的にいえば、シーンの再分割では、選択したシーンに撮影日の異なる画像データが含まれていれば、撮影日の相違するそれぞれの画像データ群を新たなシーンとするよう分割される。そして、撮影日が３日以上にわたるならば、分割された各シーンに含まれる画像データの数の差が最小になり、且つ同一撮影日の画像が同一シーンに含まれるよう分割される。なお、ここでは撮影日の違う箇所で分割する例を説明したが、分割対象のシーンにおける画像データの撮影日が単一日であった場合は、単一日の中で撮影時刻の時間差が最大となる箇所で分割する。以上の手順によって見開き数にシーン数を一致させる。なお、分割により生成されたシーンについては、改めて分類してもよいし、分割前のシーンの分類を引き継いでもよい。
【０１０３】
Ｓ４２１では、ＣＰＵ１０１は、見開き割当部２１２によりシーン統合をする。シーン統合とは、シーン分割数＞アルバムの見開き数の場合、分割されたシーン（サブ画像群）を統合することを表す。具体的には、ＣＰＵ１０１は、シーン数と見開き数が一致するように、シーン統合をする。ここでは、図６（Ａ）のようにシーン分割数が８であり、それに対して指定見開き数が６の場合を例として説明する。図６（Ｃ）は図６（Ａ）をシーン統合した結果である。破線の箇所の前後のシーンを統合したことで、分割数を６にしている。
【０１０４】
統合の基準について説明する。まず、ＣＰＵ１０１は、分割された各シーンの中で画像データ数が少ないシーンを検出する。ここでは、シーン数を８から６に減らす為、画像データ数が少ない２つのシーンを検出する。図６（Ａ）では、対応する分割画像データ群に含まれる画像データの数が多いシーンは、少ない方から順にシーン８、３、７である。なお、シーン３と７は同じデータ数である。
【０１０５】
次に、ＣＰＵ１０１は、対応する分割画像データ群に含まれる画像データ数が最も少ないシーン８を統合対象とする。次に、シーン３とシーン７は、対応する分割画像データ群に含まれる画像データ数は同じであるので、いずれを統合対象とするか選択する。ここでは、シーン７に隣接するシーン８が統合対象であるので（シーン７とシーン８は統合されるため）、シーン３を統合対象とする。
【０１０６】
次に、ＣＰＵ１０１は、統合対象のサブ画像データ群を、対応する分割画像データ群に含まれる画像データの撮影日時が前のシーンに統合するか、撮影日時が後のシーンに統合するかを決定する。このとき、ＣＰＵ１０１は、統合対象のシーンと隣接する２つのシーンのうち、対応する分割画像データ群に含まれる画像データの撮影日時の時間差が小さい方のシーンを統合の相手とする。そのため、図６（Ａ）では、シーン３について、それに隣接するシーン２、４のいずれかを統合の相手とする。ここで、シーン３とその前後のシーン２と４それぞれとの、対応する分割画像データ群に含まれる画像の撮影日時の時間差を比較すると、シーン３とシーン４との時間差の方が小さい。そのため、ＣＰＵ１０１は、シーン３をシーン４に統合すると決定する。即ち、ここでは図６（Ｃ）の破線の箇所で統合する。
【０１０７】
ＣＰＵ１０１は、シーン８のように隣接するシーンが１つしかない場合には、唯一の隣接シーンを統合の相手とする。
【０１０８】
こうして図６（Ｃ）の破線箇所の前後のシーンでシーン統合する。なお、シーン統合は、例えばシーンに含まれる画像ファイルを示す情報を、統合後のシーンに応じて更新することを含む。なお、本実施形態では、撮影時間の差が小さいサブ画像群同士を統合することにしたが、これに限定されるものではない。例えば、統合対象のサブ画像群を撮影枚数が少ないサブ画像群に統合するようにしてもよい。
【０１０９】
Ｓ４２２では、ＣＰＵ１０１は、見開き割当部２１２により見開き割当をする。Ｓ４１８〜Ｓ４２１によって、サブ画像群の数と指定見開き数は同じになっている。本実施形態では、撮影日時が先頭のサブ画像群から見開きの先頭に割り当てる。すなわち、撮影日時順にサブ画像群をアルバムの各見開きのページに割当てる。これにより、撮影日時順にサブ画像群が並んだアルバムを作成することができる。なお、後述する通り、１つの見開きページ内では、画像は撮影日時に並んでいなくてもよい。
【０１１０】
Ｓ４２３では、ＣＰＵ１０１は、画像選択部２１３により画像選択を実行する。ここでは、ある見開きに割り当てられた分割画像データ群から画像データを４枚選択する例を、図９を参照しながら説明する。なお、見開きとは、２ページ分の領域であるが、最初の見開き及び最後の見開きは、１ページ分の領域となる。
【０１１１】
図９（Ａ）は見開きに割り当てられた分割画像データ群のうち、撮影日時が一番早い画像データと一番遅い画像データとの撮影日時の時間差（分割撮影期間）、言い換えれば、分割画像データ群の撮影期間を示している。なお、ここでは、画像データの選択を、メインスロット、サブスロットの順で行う。ここでは、見開きに対応するテンプレートには１枚のメインスロット１００２が含まれるものとする。そのため、１枚目に選択される画像データは、メインスロット用の画像データである。ＣＰＵ１０１は、メインスロット用の画像データとして、図９（Ｂ）に示す分割撮影期間に対応する画像データのうち、Ｓ４１６で付加したメインスロット用の得点が最高点の画像データ（１）を選択する。
【０１１２】
２枚目以降に選択される画像データは、サブスロット用の画像データである。２枚目以降の画像データの選択は分割撮影期間の一部に集中しないように、以下説明するような方法により行われる。まず、ＣＰＵ１０１は、図９（Ｃ）に示すように、分割撮影期間を２分割する。次にＣＰＵ１０１は、図９（Ｄ）に示すように、１枚目の画像データが選ばれていない分割撮影期間（図中、実線で示している期間）に生成された画像データから２枚目の画像データを選択する。なお、２枚目の画像データとしては、１枚目の画像データが選ばれていない分割撮影期間に生成された画像データのうちサブスロット用の得点が最高点の画像データ（２）を選択する。次にＣＰＵ１０１は、図９（Ｅ）に示すように図９（Ｄ）に示す各分割撮影期間を２分割する。そして、ＣＰＵ１０１は、図９（Ｆ）に示すように１枚目の画像データと２枚目の画像データがいずれも選ばれていない分割撮影期間（図中、実線で示している期間）に生成された画像データから３枚目の画像データを選択する。なお、３枚目の画像データとしては、１枚目の画像データと２枚目の画像データがいずれも選ばれていない分割撮影期間に生成された画像データのうちサブスロット用の得点が最高点の画像データ（３）を選択する。そして、４枚目の画像データとしては、１枚目、２枚目及び３枚目の画像データがいずれも選ばれていない分割撮影期間に生成された画像データのうちサブスロット用の得点が最高点の画像データを選択する。
【０１１３】
次に、１枚目、２枚目及び３枚目の画像データがいずれも選ばれていない分割撮影期間に生成された画像が存在せず、当該分割撮影期間に生成された画像データから４枚目の画像データを選択できない例を説明する。ここで、図９（Ｇ）に示すように、まだ画像データが選ばれていない分割撮影期間（図中、斜線で示している期間）に生成された画像データは存在しないものとする。その場合、ＣＰＵ１０１は、図９（Ｈ）に示すように各分割撮影期間をさらに２分割する。次にＣＰＵ１０１は、図９（Ｉ）に示すように、期間内に生成された画像データがないと認識された分割撮影期間以外で、且つ未だ画像データが選ばれていない分割撮影期間（図中、実線で示している期間）に生成された画像から４枚目の画像データを選択する。なお、ＣＰＵ１０１は、４枚目の画像データとしては、当該分割撮影期間に生成された画像データのうちサブスロット用の最高点の画像データ（４）を選択する。
【０１１４】
図１１は、画像選択部２１３の構成をより詳細に説明する図である。画像選択部２１３は、処理対象の見開きに割り当てられたサブ画像群から画像データを選択する。
【０１１５】
枚数設定部１１０１は、処理対象の見開きに割り当てられたサブ画像群から選択する画像データの枚数を設定する。いかえれば、処理対象の見開きのレイアウト画像に配置する画像数を設定する。なお、このとき設定される枚数は、例えば、例えば図３に示すような設定画面を介してユーザが入力を行うことで設定された数でも良いし、各見開きに対して予め設定された数であっても良い。
【０１１６】
画像群取得部１１０２は、画像取得部２０５が取得した画像群から、処理対象の見開きに割り当てられるサブ画像群を取得する。また、画像群取得部１１０２は、各画像データの撮影日時情報、画像種類の情報、オブジェクト分類の情報、メインスロット用得点、及びサブスロット用得点を取得する。画像種類の情報は、図５の画像属性５０３を参照することで取得できる。また、オブジェクト分類の情報は、図５のオブジェクト分類５０５を参照することで取得できる。
【０１１７】
ループカウンタ１１０３は、画像群取得部１１０２によって取得されたサブ画像群から画像データを選択する処理（画像選択処理）を実行した回数を管理する。なお、ループカウンタ１１０３がカウントする画像選択処理は、具体的には、Ｓ１２０５〜Ｓ１２１８の処理であり、その詳細は後述する。管理された回数は、利用する得点軸の判定、及び処理対象の見開きに割り当てられたサブ画像群の撮影期間をいくつの撮影区間に分割するかを設定する際に利用される。なお、本実施形態では、１回のループ毎に、テンプレートに配置される画像が１枚選択されるため、ループカウンタ１１０３がカウントする回数は、選択済み画像データの枚数に等しい。
【０１１８】
得点軸設定部１１０４は、ループカウンタ１１０３でカウントされた処理回数に応じて、画像選択処理で利用する得点軸を設定する。「利用する得点軸を設定する」とは、「いずれの得点軸で採点された得点を利用するかを設定する」ことを指し、ここでは、メインスロット用得点軸（メインスロット用評価基準）、サブスロット用得点軸（サブスロット用評価基準）のどちらかを設定する。なお、ループカウンタ１１０３でカウントされた処理回数が０の場合は、メインスロットに配置する画像（メイン画像）を選択するため、メインスロット用得点軸によって採点された得点を参照する。一方、ループカウンタ１１０３でカウントされた処理回数が１以上の場合は、サブスロットに配置する画像（サブ画像）を選択するため、サブスロット用得点軸によって採点された得点を参照する。なお、メインスロットが複数ある場合は、ループカウンタ１１０３でカウントされた処理回数が１以上であっても、メインスロット用得点軸によって採点された得点を参照しても良い。また、得点軸設定部１１０４は、例えば、既に選択された画像データ（選択済み画像データ）の数によって、設定する得点軸を変更しても良い。その場合例えば、選択済み画像データの数が０の場合は、メインスロットに配置する画像（メイン画像）を選択するため、メインスロット用得点軸によって採点された得点を参照する。一方、選択済み画像データの数が１以上の場合は、サブスロットに配置する画像（サブ画像）を選択するため、サブスロット用得点軸によって採点された得点を参照する。なお、この形態でも、メインスロットが複数ある場合は、選択済み画像データの数が１以上であっても、メインスロット用得点軸によって採点された得点を参照しても良い。
【０１１９】
分割部１１０５は、画像群取得部１１０２によって取得されたサブ画像群の撮影期間を所定の数に分割する。まず、画像群取得部１１０２により取得されたサブ画像群の撮影時間情報から、処理対象の見開きに割り当てられたサブ画像群の撮影開始時間と撮影終了時間を特定し、撮影期間を算出する。すなわち、サブ画像群に含まれる画像データのうち最も早く撮影された画像データの撮影時間および最も遅く撮影された画像データの撮影時間を特定し、撮影期間を算出する。次に、ループカウンタ１１０３でカウントされた処理回数に基づいて、算出された撮影期間を複数の区間に分割する。本実施形態では、分割部１１０５は、ループカウンタ１１０３でカウントされた処理回数をＣとしたとき、撮影区間を、２＾Ｃ個の区間に略均等に分割するものとする。なお、この形態に限定されず、例えば、撮影区間を、Ｃ個の区間に略均等に分割しても良い。
【０１２０】
画像属性設定部１１０６は、ループカウンタ１１０３でカウントされた処理回数に応じて、画像選択処理において選択される画像データの属性を設定する。なお、本実施形態では、アルバムに多様な画像データを配置するために、静止画データから取得された画像データ（属性が「静止画」）より、動画データから取得された画像データ（属性が「動画」）を優先的に選択するものとする。また、ＳＮＳサーバにアップロードされている画像データ（属性が「ＳＮＳ」である画像データ）は、ユーザにより意図的に選択されてアップロードされた画像データであり、ユーザが気に入っている画像データである可能性が高い。そのため、本実施形態では、静止画データから取得された画像データより、ＳＮＳサーバから取得された画像データを優先的に選択するものとする。そこで、本実施形態では、画像属性設定部１１０６は、ループカウンタ１１０３でカウントされた処理回数が０の場合は、「ＳＮＳ」を指定属性とし、属性が「ＳＮＳ」である画像データから画像データが選択されるように設定する。そして、ループカウンタ１１０３でカウントされた処理回数が１の場合は、「動画」を指定属性とし、属性が「動画」である画像データから画像データが選択されるように設定する。そして、ループカウンタ１１０３でカウントされた処理回数が２以上の場合は、「静止画」を指定属性とし、属性が「静止画」である画像データから画像データが選択されるように設定する。このような形態とすることで、各スロットに配置される画像データの属性を制御することができる。なお、画像選択処理において選択される画像データの属性の設定は、例えば、画像選択処理において既に選択されている画像データの枚数に応じて行われても良い。例えばその場合、画像属性設定部１１０６は、画像選択処理において既に選択されている画像データが０の場合は、「ＳＮＳ」を指定属性とし、属性が「ＳＮＳ」である画像データから画像データが選択されるように設定する。そして、画像選択処理において既に選択されている画像データが１の場合は、「動画」を指定属性とし、属性が「動画」である画像データから画像データが選択されるように設定する。そして、画像選択処理において既に選択されている画像データが２以上の場合は、「静止画」を指定属性とし、属性が「静止画」である画像データから画像データが選択されるように設定する。
【０１２１】
なお、ループカウンタ１１０３でカウントされた処理回数や、選択済み画像データの枚数に応じた属性は、上述の形態に限定されない。上述では、「ＳＮＳ」、「動画」、「静止画」の順で設定されたが、例えば、「動画」、「ＳＮＳ」、「静止画」の順で設定されても良い。また、属性を指定しない設定があっても良い。その場合、指定属性は「なし」となり、いずれの属性の画像データが選択されても良いように設定される。
【０１２２】
区間情報設定部１１０７は、画像群取得部１１０２によって取得されたサブ画像群に含まれる画像データを、分割部１１０５で分割された区間ごとにグループ分けして、各区間において撮影された画像データの撮影情報、得点等の情報を取得する。
【０１２３】
モード設定部１１０８は、アルバム作成条件指定部２０１で指定された、アルバムのモード（「人物」、「動物」、「料理」のいずれか）を設定する。モード設定部１１０８は、設定されたモードに対応するオブジェクトを含む画像がテンプレートに配置されるように制御する。
【０１２４】
画像選択部１１０９は、得点軸設定部１１０４で設定された得点軸と、モード設定部１１０８で設定されたモードと、区間情報設定部１１０７で管理された、各区間における画像データの得点とに基づいて、画像選択処理を実行する。具体的には、画像選択部１１０９は、各区間における複数の画像データに含まれ、指定オブジェクトを含む画像を表し、且つ指定属性である画像データのうち、得点が一番高い画像データを１枚選択する。指定オブジェクトは、得点だけに依存せずに画像データを選択するために設定され、指定オブジェクトが設定されている場合、以降の画像選択処理では、指定オブジェクトを含む画像を表す画像データが選択されることになる。例えば、指定オブジェクトが「動物」のカテゴリのオブジェクトである場合、以降の画像選択処理では、「動物」のカテゴリのオブジェクトを含む画像を表す画像データが選択される。なお、複数のオブジェクトを指定オブジェクトとして設定可能である。
【０１２５】
なお、このとき参照される得点は、得点軸設定部１１０４によって設定された得点軸によって採点された得点である。図９を用いて説明した通り、画像が１枚もない区間からは画像データは選択されない。なお、本実施形態では、指定オブジェクトを含む画像を表し、且つ指定属性である画像データのうち、一番得点の高い画像データを各区間から１枚選択するものとしたが、この形態に限定されない。例えば、指定オブジェクトを含む画像を表し、且つ指定属性である画像データのうち、得点が上位の画像データを複数枚ずつ各区間から選択するようにしてもよい。なお、画像選択部１１０９は、指定オブジェクトに対応するカテゴリをオブジェクト分類５０５のＴＯＰ３までに含む画像データを、指定オブジェクトを含む画像を表す画像データとしてみなす。なお、なお、指定オブジェクトに対応するカテゴリをオブジェクト分類５０５のＴＯＰ３までに含んでいても、当該カテゴリの信頼度が閾値以下の場合は、指定オブジェクトを含む画像を表す画像データとしてみなさなくても良い。
【０１２６】
類似判定部１１１０は、画像選択部１１０９によって選択された画像データが表す画像が、テンプレートに配置する画像を表わす画像データとして既に選択されている画像データが表す画像と類似しているか否かの判定を行う。類似判定部１１１０は、類似度が閾値以上であれば、類似していると判定し、閾値未満であれば、類似していないと判定する。類似していないと判定された画像データを保持される、類似していると判定された判定は破棄される。類似判定部１１１０は、例えば、パターンマッチングやＳＨＩＦＴ法等の公知の方法で、画像データが表す画像間の類似度を取得することができる。例えば、画像データが表す画像間の類似度が０〜１００のレンジで出力される場合には、類似度が１００に近いほど、両者は似ているとする。そのため、画像データが表す画像間の類似度が判定閾値以上であれば両者が類似していると判定し、画像データが表す画像間の類似度が判定閾値未満であれば両者が類似していないと判定する。なお、類似判定に用いられる判定閾値は、比較対象の画像を表す画像データの撮影時間の差に応じて変更されても良い。例えば、連写などにより撮影時間差が短い場合（例えば１５秒以内）は、判定閾値が低く（例えば、６０に）設定され、それ以外は判定閾値が高く（例えば８０に）設定されても良い。
【０１２７】
統合部１１１１は、類似判定部１１１０で非類似と判定された画像を表す画像データから、テンプレートに配置される画像を表す画像データを特定する。具体的には、統合部１１１１は、類似判定部１１１０で非類似と判定された画像を表す画像データのうち、得点が一番高い画像データを選択して、テンプレートに配置される画像を表す画像データとして特定する。なお、非類似と判定された画像データが１つである場合は、当該１つの画像データが選択される。なお、この形態に限定されるものではなく、例えば、選択済み画像データを含む区間に隣接していない区間から画像データを選択する形態でも良い。
【０１２８】
画像管理部１１１２は、統合部１１１１でテンプレートに配置される画像を表す画像データとして特定された画像データを選択済み画像データとして管理する。また、画像管理部１１１２は、選択済み画像データの数が、枚数設定部１１０１で設定された枚数（必要枚数）に達したか否かを判定する。なお、画像管理部１１１２が管理する選択済み画像データの数が必要枚数に到達するまで、画像選択処理が繰り返される。なお、このとき、選択済み画像データが再び選択されないように制御される。
【０１２９】
ここでは、メイン画像として選択される画像データとサブ画像として選択される画像データが、同じオブジェクトを含む例を説明したが、それぞれ異なるオブジェクトを含む形態であっても良い。例えば、ループカウントが０の時はメイン画像が選択されるため、ループカウントが０の時とそれ以外の時で、指定オブジェクトを変更しても良い。このような形態とすることにより、メイン画像として選択される画像データとサブ画像として選択される画像データがそれぞれ異なるオブジェクトを含むことになる。
【０１３０】
図１２は、Ｓ４２３の画像選択処理の詳細を示すフローチャートである。図１２に示すフローチャートは、例えば、ＣＰＵ１０１がＨＤＤ１０４に格納されたアルバム作成アプリに対応するプログラムをＲＯＭ１０２やＲＡＭ１０３に読み出して実行することにより実現される。図１２のフローチャートでは、処理対象の１つの見開きに割り当てられたサブ画像群から画像データが選択される。そのため、アルバムが複数の見開きから構成される場合、図１２のフローチャートに示す処理は見開きの数に対応する回数実行されることになる。
【０１３１】
Ｓ１２０１では、ＣＰＵ１０１は、枚数設定部１１０１により、処理対象の見開きに割り当てられたサブ画像群から選択する画像データの枚数を設定する。この処理の詳細は、枚数設定部１１０１の説明にて上述したとおりである。
【０１３２】
Ｓ１２０２では、ＣＰＵ１０１は、画像群取得部１１０２により、画像取得部２０５が取得した画像群から、処理対象の見開きに割り当てられるサブ画像群を取得する。この処理の詳細は、画像群取得部１１０２の説明にて上述したとおりである。
【０１３３】
Ｓ１２０３では、ＣＰＵ１０１は、モード設定部１１０８により、アルバムのモードを設定する。この処理の詳細は、モード設定部１１０８の説明にて上述したとおりである。なお、Ｓ１２１９の処理が行われた場合は、ＣＰＵ１０１は、アルバムのモードをＳ１２１９で選択されたモードに切り替えて、以降の処理を行う。
【０１３４】
Ｓ１２０４では、ＣＰＵ１０１は、ループカウンタ１１０３により、Ｓ１２０５の画像選択処理を実行した回数をカウントする。初期状態では、画像選択処理が実行されていないので、ループカウンタ１１０３によるカウント数は０となる。なお、本実施形態では、ループカウンタ１１０３によるカウント数が０の場合は、以降の画像選択処理においてメイン画像が選択され、ループカウンタ１１０３によるカウント数が１以上の場合は、以降の画像選択処理においてサブ画像が選択される。
【０１３５】
Ｓ１２０５では、ＣＰＵ１０１は、ループカウンタ１１０３によりカウントしているカウント数に応じて、以降の画像選択処理で利用する得点軸を得点軸設定部１１０４により設定する。この処理の詳細は、得点軸設定部１１０４の説明にて上述したとおりである。
【０１３６】
Ｓ１２０６では、ＣＰＵ１０１は、ループカウンタ１１０３によりカウントしているカウント数に応じて、以降の画像選択処理において選択される画像データの属性を画像属性設定部１１０６により設定する。この処理の詳細は、画像属性設定部１１０６の説明にて上述したとおりである。
【０１３７】
Ｓ１２０７では、ＣＰＵ１０１は、画像群取得部１１０２によって取得されたサブ画像群の撮影期間を分割部１１０５により所定の数に分割する。この処理の詳細は、分割部１１０５の説明にて上述した通りである。
【０１３８】
Ｓ１２０８では、ＣＰＵ１０１は、区間情報設定部１１０７により、画像群取得部１１０２によって取得されたサブ画像群に含まれる画像データを、分割部１１０５によりサブ画像群の撮影期間が分割されることで管理されている区間ごとにグループ分けする。そして、ＣＰＵ１０１は、各区間において撮影された画像データの撮影情報、得点等の情報を取得する。
【０１３９】
Ｓ１２０９では、ＣＰＵ１０１は、分割部１１０５によりサブ画像群の撮影期間が分割されることで管理されている区間のうち、着目している区間において撮影された画像データが選択済みか否かを判定する。着目している区間において撮影された画像データが選択済みであれば、Ｓ１２１６へ進む。着目している区間において撮影された画像データが未選択であれば、Ｓ１２１０に進む。なお、１回目のループでは、サブ画像群の撮影期間が分割されていないため、着目している区間は、サブ画像群の撮影期間全体である。
【０１４０】
Ｓ１２１０では、ＣＰＵ１０１は、指定オブジェクトが設定されているか否かを判定する。例えば、Ｓ１２２２における指定オブジェクトの更新処理によって、指定オブジェクトが「なし」に変更される場合がある。そのため、ＣＰＵ１０１は、指定オブジェクトが「なし」に変更されており、指定オブジェクトが設定されていない場合は、Ｓ１２１３に進み、指定オブジェクトが「なし」に変更されておらず、指定オブジェクトが設定されている場合は、Ｓ１２１１に進む。
【０１４１】
Ｓ１２１１では、ＣＰＵ１０１は、着目している区間において撮影された画像データのなかに、指定オブジェクトを含む画像を表わし、且つ指定属性である画像データが有るか否かを判定する。なお、ＣＰＵ１０１は、着目している区間において撮影された各画像データの画像解析情報５００を参照することで、Ｓ１２１１の判定を実行することができる。具体的には、ＣＰＵ１０１は、着目している区間において撮影された各画像データそれぞれについて、指定オブジェクトを含む画像を表わし、且つ指定属性である画像データか否かを判定する。そして、指定オブジェクトを含む画像を表わし、且つ指定属性である画像データであると判定された画像データが１つでもあれば、Ｓ１２１１の判定結果はＹＥＳ判定となり、Ｓ１２１２に進む。なお、ＣＰＵ１０１は、画像解析情報５００のうちオブジェクト分類５０５の領域に、指定オブジェクトのカテゴリが含まれる画像データを、指定オブジェクトを含む画像を表わす画像データであると判定する。また、ＣＰＵ１０１は、画像解析情報５００のうち画像属性５０３の領域に指定属性が含まれる画像データを、指定属性の画像データであると判定する。
【０１４２】
指定オブジェクトを含む画像を表わし、且つ指定属性の画像データが１つもない場合、Ｓ１２１１の判定結果はＮＯ判定となり、着目している区間において撮影された画像データからは画像データが選択されずに、Ｓ１２１６へ進む。
【０１４３】
なお、指定オブジェクトのカテゴリ（種類）は、ループカウンタ１１０３でカウントされた処理回数や選択済み画像データの数に応じて変化しても良い。本実施形態では、ループカウンタ１１０３でカウントされた処理回数が初期値（０）の場合には、指定オブジェクトは、Ｓ１２２２で指定オブジェクトが変更されるまでは、Ｓ１２０３で設定されたモードに対応するカテゴリのオブジェクトであるものとする。
【０１４４】
Ｓ１２１２では、ＣＰＵ１０１は、着目している区間において撮影された画像データから、画像データを１枚選択する。この処理の詳細は、画像選択部１１０９の説明にて上述したとおりである。なお、ここでは、指定オブジェクトを含む画像を表わし、指定属性である画像データのうち、得点が一番高い画像データが１枚選択される。そのため、本実施形態では例えば、指定オブジェクトを含まない画像を表し、得点が高い画像データより、指定オブジェクトを含む画像を表し、得点が低い画像データの方が優先されて選択されることになる。また、本実施形態では例えば、指定属性でないが得点が高い画像データより、指定属性であるが得点が低い画像データの方が優先されて選択されることになる。
【０１４５】
このように、本実施形態では、単に得点だけを参照して画像データを選択するのではなく、指定オブジェクトや指定属性を参照して画像データを選択する。このような形態とすることで、サブ画像群に条件に合致する画像データがあれば、指定オブジェクト（主に、設定されたモードに対応するカテゴリのオブジェクト）を含む画像を表わす画像データをより確実に選択することができる。すなわち、指定オブジェクトを含む画像がレイアウトされたレイアウト結果を、より確実に出力することができる。また、サブ画像群に条件に合致する画像データがあれば、指定属性の画像データをより確実に選択することができ、指定属性の画像データによって表わされる画像がレイアウトされたレイアウト結果を、より確実に出力することができる。
【０１４６】
なお、ＣＰＵ１０１は、各画像データが表わす画像が指定オブジェクトを含むか否かや、各画像データの属性や得点を、各画像データの画像解析情報５００を参照することで特定することができる。すなわち、ＣＰＵ１０１は、指定オブジェクトを含むことを示す情報が画像解析情報５００に含まれていれば、画像データが示す画像が指定オブジェクトを含むことを特定することができる。言い換えれば、指定オブジェクトに対応するカテゴリの情報がオブジェクト分類５０５に含まれていれば画像データが示す画像が指定オブジェクトを含むことを特定することができる。また、ＣＰＵ１０１は、指定属性であることを示す情報が画像解析情報５００に含まれていれば、（言い換えれば、指定属性の情報が画像属性５０３に含まれていれば）画像データが指定属性であることを特定することができる。そのため、Ｓ１２１２では、ＣＰＵ１０１は、着目区間において撮影された各画像データの画像解析情報５００のうちオブジェクト分類５０５の領域に指定オブジェクトのカテゴリが含まれ、且つ画像属性５０３の領域に指定属性が含まれる画像データを選択する。
【０１４７】
Ｓ１２１３では、ＣＰＵ１０１は、着目している区間において撮影された画像データから、画像データを１枚選択する。なお、ここでは、指定オブジェクトが設定されていないため、指定オブジェクトは参照されない。そのため、単に指定属性である画像データのうち、得点が一番高い画像データが１枚選択される。
【０１４８】
なお、Ｓ１２１２及びＳ１２１３では、条件に合う画像データがない場合は、いずれの画像データも選択されず、次のステップに進む。
【０１４９】
Ｓ１２１４では、ＣＰＵ１０１は、類似判定部１１１０により、Ｓ１２１２又はＳ１２１３の処理において選択された画像データが表わす画像が、前回以前のループにおけるＳ１２１８において選択済みの画像データが表わす画像と類似しているかの判定を行う。この処理の詳細は、類似判定部１１１０の説明にて上述したとおりである。類似していないと判定された場合は、ＳＳ１２１２又はＳ１２１３における選択を維持したまま、Ｓ１２１６へ進む。類似していると判定された場合は、Ｓ１２１２又はＳ１２１３における選択を解除し、すなわち、Ｓ１２１２又はＳ１２１３の処理において選択された画像データを保持せず（Ｓ１２１５）、Ｓ１２１６へ進む。なお、いずれの画像データも選択されていない場合は、Ｓ１２１４の処理は省略され、Ｓ１２１６へ進む。
【０１５０】
Ｓ１２１６では、ＣＰＵ１０１は、分割部１１０５によりサブ画像群の撮影期間が分割されることで管理されている全ての区間が着目されて、Ｓ１２１２又はＳ１２１３の処理が実行されたかどうかを判定する。ＣＰＵ１０１は、全ての区間が着目されて画像選択処理が実行された場合、Ｓ１２１５へ進む。一方、ＣＰＵ１０１は、全ての区間が着目されて画像選択処理が実行されていない場合、未だ着目されていない区間のうちいずれかを選択して、再度Ｓ１２０９以降の処理を実行する。
【０１５１】
Ｓ１２１７では、ＣＰＵ１０１は、全ての区間が着目されて画像選択処理が実行されることにより、１枚でも画像データが選択されたか否かを判定する。ＣＰＵ１０１は、１枚でも画像データが選択された場合、Ｓ１２１８に進み、１枚も画像データが選択されていない場合、Ｓ１２２１に進む。
【０１５２】
Ｓ１２２１では、ＣＰＵ１０１は、指定オブジェクトの更新を行う。なお、更新後の指定オブジェクトの内容は、特に限定されず、適宜設定されて良い。例えば、予め設定された優先度に従って指定オブジェクトが更新されても良いし、処理対象の見開きに割り当てられたサブ画像群が表わす複数の画像に多く含まれるオブジェクトが指定オブジェクトとして更新されても良い。また、指定オブジェクトの設定を「なし」にしても良い。また、更新の必要が無い場合（前回と同じ指定オブジェクトを用いて画像選択処理を実行する場合）は、Ｓ１２２１の処理は省略されても良い。
【０１５３】
Ｓ１２２２では、ＣＰＵ１０１は、指定属性の更新を行う。なお、更新後の指定属性は、適宜設定されて良い。例えば、予め設定された優先度に従って指定属性が更新されても良いし、処理対象の見開きに割り当てられたサブ画像群に多く含まれる属性が指定属性として更新されても良い。また、指定属性の設定を「なし」にしても良い。また、更新の必要が無い場合（前回と同じ指定属性を用いて画像選択処理を実行する場合）は、Ｓ１２２２の処理は省略されても良い。その後、Ｓ１２０９に進み、Ｓ１２２１やＳ１２２２で更新された情報に基づいて画像選択処理が行われる。
【０１５４】
このように、Ｓ１２２１及びＳ１２２２のうち少なくとも１つが実行されれば、検索対象の画像データの条件が変更されるため、ＣＰＵ１０１が新たに画像データを選択することが可能となる。なお、ＣＰＵ１０１は、Ｓ１２２１やＳ１２２２で情報の更新を行った場合は、更新前の情報を用いて既に着目している区間について未だ着目していないものとして扱って、再度Ｓ１２０９以降の処理を行う。
【０１５５】
なお、本実施形態では、Ｓ１２１７で１枚も画像データが選択されていないと判定された場合、まずは、指定オブジェクトを更新せず、指定属性を更新して再度画像選択処理を行う。そして、指定属性の更新を繰り返しても１枚も画像データが選択されない場合、指定オブジェクトの更新を行うものとする。
【０１５６】
Ｓ１２１８では、ＣＰＵ１０１は、統合部１１１１により、Ｓ１２１２で非類似と判定されて選択が維持されている画像データから、テンプレートに配置する画像を表わす画像データを特定する。この処理の詳細は、統合部１１１１の説明にて上述したとおりである。
【０１５７】
Ｓ１２１９では、ＣＰＵ１０１は、画像管理部１１１２により、Ｓ１２１５で、テンプレートに配置する画像を表わす画像データとして特定された画像データを選択済み画像データとして管理する。この処理の詳細は、画像管理部１１１２の説明にて上述したとおりである。
【０１５８】
Ｓ１２２０では、ＣＰＵ１０１は、画像管理部１１１２により管理されている選択済み画像データの枚数が、枚数設定部１１０１で設定された枚数（必要枚数）に達したか否かを判定する。ＣＰＵ１０１は、選択済み画像データの枚数が必要枚数に達した場合は画像選択処理を終了し、Ｓ４２４に進む。一方、ＣＰＵ１０１は、選択済み画像データの枚数が必要枚数に達していない場合は、再度Ｓ１２０４に進み、ループカウンタ１１０３によるカウンタをインクリメントして再度画像選択処理を行う。カウンタがインクリメントされ、処理回数Ｃの値が増えると、撮影期間が前回より多くの区間に分割される。本実施形態では具体的には、サブ画像群の撮影期間が前回よりも２倍多い数の区間に分割される。区間がより細かく管理されることにより、Ｓ１２１１では、前回は選択されていない画像データを選択可能になる。また、本実施形態では、選択済み画像データを含む区間からは画像データが選択されないため、選択済み画像データの撮影日時に近い日時に撮影された画像データは選択されない可能性が高い。そのため、多様な画像データが選択されることになる。
【０１５９】
図４に戻って、Ｓ４２４では、ＣＰＵ１０１は、テンプレート設定部２１４により、アルバム作成条件指定部２０１から指定されたテンプレート情報に応じた複数のテンプレートを取得する。
【０１６０】
Ｓ４２５では、ＣＰＵ１０１は、画像レイアウト部２１５により、処理対象の見開きの画像レイアウトを決定する。このときまずＣＰＵ１０１は、Ｓ４２４で取得された複数のテンプレートの中から、Ｓ４２３で選択された画像データに適したテンプレートを決定する。テンプレート決定の方法を、図１３及び図１４を用いて説明する。
【０１６１】
図１３は、本実施形態のアルバム作成アプリに格納されている、テンプレートを決定する処理を司るソフトウェアのブロック図である。
【０１６２】
選択画像情報取得部１３０１は、Ｓ４２４で選択された画像データの枚数と、当該画像データに関する情報を取得する。画像データに関する情報とは、例えば、当該画像データによって表わされる画像の幅と高さ、当該画像データの撮影日時情報、当該画像データの得点である。
【０１６３】
テンプレート選択部１３０２は、Ｓ４２４で選択された画像データの枚数と一致する数のスロットを持つテンプレートを、Ｓ４２４で取得されたテンプレートの中から選択する。
【０１６４】
選択画像ソート部１３０３は、Ｓ４２４で選択された画像データを撮影日時順にソートする。
【０１６５】
テンプレート選択部１３０４は、テンプレート選択部１３０２により選択されたテンプレートのうち、メイン画像に適したテンプレートを選択する。本実施形態では、テンプレートのより左上のスロットに撮影日時がより古い画像データ、より右下のスロットに撮影日時がより新しい画像データをレイアウトするものとする。そのため、まずテンプレート選択部１３０４は、選択されたテンプレートのうち、メインスロットの位置が、Ｓ４２４で選択された画像データのうちメイン画像となる画像データの撮影日時の順番に対応するテンプレートを選択する。すなわち、例えば、メイン画像となる画像データの撮影日時順が３番目であった場合には、メインスロットが、全スロットのうち左から３番目のスロットであるテンプレートが選択される。なお、選択画像ソート部１３０３により画像データが撮影日時順にソートされているため、テンプレート選択部１３０４は、メイン画像となる画像データの撮影日時の順番を把握することができる。また、テンプレート選択部１３０５は、このようにして選択したテンプレートのうち、メイン画像が配置されるスロットのアスペクト比が、メイン画像のアスペクト比と一致する（又は近い）テンプレートを最終的に選択する。
【０１６６】
テンプレート選択部１３０５は、テンプレート選択部１３０４により選択されたテンプレートのうち、サブ画像に適したテンプレートを選択する。テンプレート選択部１３０５は、具体的にはまず、サブスロットの位置が、Ｓ４２４で選択された画像データのうちサブ画像となる画像データの撮影日時の順番に対応するテンプレートを選択する。また、テンプレート選択部１３０５は、このようにして選択したテンプレートのうち、サブスロットのアスペクト比が、サブ画像のアスペクト比と一致する（又は近い）テンプレートを最終的に選択する。
【０１６７】
図１４は、本実施形態における、レイアウト画像の作成に利用するテンプレートを決定する処理を示すフローチャートである。図１４に示すフローチャートは、例えば、ＣＰＵ１０１がＨＤＤ１０４に格納されたアルバム作成アプリに対応するプログラムをＲＯＭ１０２やＲＡＭ１０３に読み出して実行することにより実現される。
【０１６８】
まず、Ｓ１４０１では、ＣＰＵ１０１は、選択画像情報取得部１３０１により、Ｓ４２４で選択された画像データの枚数と、当該画像データに関する情報を取得する。なお、ここでは、Ｓ４２４で選択された画像データの枚数は３であるものとする。この処理の詳細は、選択画像情報取得部１３０１の説明にて上述したとおりである。
【０１６９】
Ｓ１４０２は、ＣＰＵ１０１は、テンプレート選択部１３０２により、Ｓ４２４で選択された画像データの枚数とスロット数が一致するテンプレートを選択する。なお、Ｓ４２４で選択された画像データの枚数は３であるため、スロット数が３のテンプレートが選択される。ここでは、スロット数が３のテンプレートとして、図１０の（１−１）〜（４−４）が選択されたものとする。
【０１７０】
Ｓ１４０３では、ＣＰＵ１０１は、選択画像ソート部１３０３により、Ｓ４２４で選択された画像データを撮影日時順にソートする。なお、ここでは、３枚の各画像データが表わす各画像の撮影日時は図１０（Ａ）に示すような順番であったとする。また、ここでは、画像１００５がメインスロット用の画像（メイン画像）であり、画像１００６と画像１００７がサブスロット用の画像（サブ画像）とする。
【０１７１】
Ｓ１４０４は、ＣＰＵ１０１は、テンプレート選択部１３０２により選択されたテンプレートのうち、メイン画像に適したテンプレートを、テンプレート選択部１３０４により選択する。この処理の詳細は、テンプレート選択部１３０４の説明にて上述したとおりである。上述したように、本実施形態では、テンプレートのより左上のスロットに撮影日時がより古い画像データ、より右下のスロットに撮影日時がより新しい画像データをレイアウトするものとする。そして、メイン画像である画像１００５は、撮影日時が一番新しく、且つ縦長の画像であるため、ここでは図１０（３−１）〜（３−４）のテンプレートが選択される。
【０１７２】
Ｓ１４０５では、ＣＰＵ１０１は、Ｓ１４０４で選択されたテンプレートのうち、サブ画像に適したテンプレートを、テンプレート選択部１３０５により選択する。この処理の詳細は、テンプレート選択部１３０５の説明にて上述したとおりである。サブ画像である画像１００６は、撮影日時が一番古く、且つ縦長の画像である。また、サブ画像である画像１００７は、撮影日時が２番目に新しく、且つ横長の画像である。そのため、図１０（３−２）のテンプレートが選択される。なお、このとき、どのサブスロットにどのサブ画像が配置されるかも特定される。
【０１７３】
このようにして、Ｓ４２５では、ＣＰＵ１０１は、レイアウト画像の作成に用いるテンプレートと、テンプレートのいずれのスロットにいずれの画像をレイアウトするかを決定する。具体的には、ＣＰＵ１０１は、選択したテンプレートに含まれる各スロットの情報と、各スロットにレイアウトされる画像に対応する画像データと、を紐づけて管理する。
【０１７４】
Ｓ４２６では、ＣＰＵ１０１は、画像補正部２１７により画像補正をする。なお、ＣＰＵ１０１は、補正条件入力部２１６から画像補正がＯＮであることの設定が入力された場合に、画像補正を実行する。画像補正として、例えば、輝度補正、赤目補正、コントラスト補正が実行される。また、ＣＰＵ１０１は、補正条件入力部２１６から画像補正がＯＦＦであることの設定が入力された場合は、画像補正を実行しない。画像補正は、例えば、短辺１２００画素で、ｓＲＧＢの色空間に変換された画像データに対しても実行可能である。
【０１７５】
Ｓ４２７では、ＣＰＵ１０１は、レイアウト情報出力部２１８によりレイアウト情報を作成する。具体的には、ＣＰＵ１０１は、Ｓ４２５で選択されたテンプレートの各スロットに、Ｓ４２６の画像補正が実行された、各スロットに対応する画像データを紐づけて管理する。なお、ここで用いる画像は、Ｓ４０７で生成した解析画像であり、Ｓ４０８〜１８で用いた画像とは異なる画像である。そして、ＣＰＵ１０１は、テンプレートに画像をレイアウトしたビットマップデータを生成する。このとき、ＣＰＵ１０１は、スロットのサイズ情報に合わせてレイアウトする画像を変倍又は等倍してレイアウトする。
【０１７６】
Ｓ４２８はＳ４２３〜Ｓ４２７の処理が全ての見開きに対して終了したか否かを判定する。終了していない場合（Ｓ４２８でＮｏ）はＳ４２３に戻り、未だ処理対象となっていない見開きに対して、Ｓ４２３〜Ｓ４２７の処理を行う。終了している場合（Ｓ４２８でＹｅｓ）は、自動レイアウト処理を終了する。
【０１７７】
本実施形態では、アルバムのモードに応じてレイアウトに利用する画像を変更することにより、指定されたモードの主要オブジェクトを含むレイアウトを作成することができる。また、動画から切り出されることで取得された画像データの得点化や選択の方法が、動画解析時に取得した動き量や得点に応じて変更される。よって、動画解析時の結果を利用した画像選択が可能となり、動画ならではのよさをレイアウトに反映することができる。
【０１７８】
（自動レイアウト結果）
以上の処理により、レイアウトデータが生成され、ディスプレイ１０５にレイアウト画が表示される。図１６は、自動レイアウト処理により、レイアウト画であるフォトアルバムの模式図を示す。図１６では、フォトアルバムアプリケーションによる表示領域１６０１のうち、上部にフォトアルバムの各ページのサムネイルが表示されるサムネイル表示領域１６０２が設けられ、下部にレイアウト画であるフォトアルバム１６０３の表示領域が設けられている。
【０１７９】
サムネイル表示領域１６０２において、ユーザがサムネイルの中から所望のサムネイルを選択することにより、そのページが選択されて選択ページ１６０４として示されると共に、下部にその選択ページのフォトアルバム１６０３が表示される。図１６では３〜４ページが選択ページ１６０４であり、このページがフォトアルバム１６０３の表示領域に表示されている。フォトアルバム中の写真スロット１６０５には、レイアウト処理により決定された写真が割り当てられている。フォトアルバム１６０３を編集する場合は、この表示画面にて編集操作を行うことが可能となる。
【０１８０】
本実施形態では、レイアウト画像の編集画面には、図１５のような、編集後のアルバム内の主要オブジェクトの出現頻度を調整するＵＩ１５０１が表示されるものとする。ＵＩ１５０１には、作成したアルバム（編集前のアルバム）のモードに応じたコンテンツが表示される。具体的には、編集後のアルバムにおける、アルバムのモードに対応するオブジェクトを含む画像の出現頻度（テンプレートに配置される画像として選択される頻度）を調整するためのバーが表示される。例えば、作成したアルバムのモードが「動物」である場合、編集後のアルバムにおける、「動物」のオブジェクトを含む画像の出現頻度を調整するためのバー１５０４が表示される。なお、本実施形態では、編集後のアルバムにおける、「人物」のオブジェクトを含む画像の出現頻度を調整するためのバー１５０２については、アルバムのモードがいずれであっても表示されるものとする。なお本実施形態では、「人物」以外（「動物」や「料理」）のオブジェクトを含む画像の出現頻度を調整するためのバーは、アルバムのモードが「動物」や「料理」である場合のみ表示される形態とした。しかしながら、この形態に限定されず、アルバムのモードがいずれであっても表示される形態としても良い。
【０１８１】
ここでは、作成したアルバムのモードが「動物」である場合を例にして説明する。ユーザは、掴み１５０３や掴み１５０５を移動させるための入力を行うことで、編集後のアルバムにおける、各バーに対応するオブジェクトを含む画像の出現頻度を調整することができる。本実施形態では、「多め」、「普通」、「少なめ」の３種類の設定値が用意されているものとし、ユーザの入力に応じた設定値（掴み１５０３や掴み１５０５の位置に応じた設定値）に応じて、各画像の出現頻度が調節される。ユーザによってＯＫボタン１５０６が押下されると、設定された条件に基づいてアルバムが編集される。すなわち、設定された条件に基づいて、再度自動レイアウト処理が行われる。具体的には、Ｓ４１６からＳ４２８の処理が再度行われる。なおこのとき、編集前のアルバム作成時のＳ４０１〜Ｓ４１５の処理で取得された各情報は、適宜再利用される。ユーザによってキャンセルボタン１５０７が、押下されると、出現頻度の調整をキャンセルし、表示画面１５０１が閉じられる。なお、例えば、再度の自動レイアウト処理では、Ｓ４２３からＳ４２８の処理が再度行われても良い。この場合、Ｓ４２３も画像選択処理では、編集前のアルバム作成時のＳ４１６で付された得点が参照される。
【０１８２】
さらに、本実施形態では、画像の入れ替え操作を実行することもできる。画像の入れ替えに関する編集操作や制御については、図１７〜図２３を用いて後述する。
【０１８３】
全ての編集が終わったら、ユーザは編集後のフォトアルバムを注文するために、ボタン１６０６を選択する。このボタンを押すことにより、編集したアルバムがインターネット経由でショッピングカートにアップロードされる。つまり、ネットワークを介して接続されている特定の会社のサーバにフォトアルバムのデータがアップロードされる。そして、ユーザは、その会社が提供しているショッピングサイトを利用し、そのフォトアルバムを注文することができる。
【０１８４】
（画像の入れ替え）
次に、レイアウトされた画像の入れ替え方法について説明する。図１７は、画像入れ替え制御を行う際のフローチャートを示し、ＣＰＵ１０１が画像入れ替え制御部２００（図２参照）として機能することにより実行される。
【０１８５】
まず、Ｓ１７０１で、ユーザにより入れ替えたい画像（以降、入れ替れ対象画像と呼ぶ）が選択されることにより、ＣＰＵ１０１はユーザにより選択された対象スロットの情報を受信する。具体的には、複数あるスロット１６０５のそれぞれに割り当てられた画像のうちいずれか一つをユーザが選択する。なお、本フローにおいては、このステップの前にユーザによりこの画像の入れ替えの指示が入力されているものとする。これは、表示画面内の画像入れ替えボタン等のアイテムがユーザにより選択されることにより、画像入れ替えが要求されるものとする。ただし、画像入れ替え要求については、ユーザが入れ替えたい画像を選択してから入力されてもよい。この場合は、所定の画像をユーザが選択することにより「画像入れ替え」アイコンが表示され、そのアイコンをユーザが選択することによりＣＰＵ１０１は画像入れ替え要求を受け取る。なお、画像入れ替え要求を受け取ることにより、ＣＰＵ１０１はその入れ替え対象のスロットの位置情報と選択された画像の情報を取得する。ここで取得する画像の情報とは、その画像内に写っているオブジェクトの個人ＩＤやカテゴリ情報等の識別情報や、得点等が含まれる。
【０１８６】
Ｓ１７０２では、ＣＰＵ１０１は、特定のオブジェクトの優先度に関する設定情報を取得する。ここでは、図３を用いて説明したオブジェクトのモード設定に関する設定情報を取得する。これにより、優先するオブジェクトの情報を取得することができる。
【０１８７】
Ｓ１７０３では、ＣＰＵ１０１は、選択された画像を、画像入れ替えのための入れ替え候補画像を探す起点の画像（以降、候補起点画像と呼ぶ）に設定する。そして、Ｓ１７０４で、ＣＰＵ１０１はこの候補起点画像の近傍から入れ替え候補画像をリストアップし、その中から入れ替え候補画像を検索し抽出する。この入れ替え候補画像の抽出に関する処理の詳細は、図１９を用いて後述する。なお、以降の説明においては、入れ替え候補画像を単に候補画像と呼ぶ場合もある。
【０１８８】
Ｓ１７０５では、Ｓ１７０４の抽出結果を画像入れ替えのための候補画像として表示させる。図１８にＳ１７０５で表示されるユーザインターフェースの例を示す。候補画像を示すユーザインターフェース１８０１には、Ｓ１７０４で抽出された４つの候補画像１８０２〜１８０５が表示されている。さらに、入替対象スロットの前のスロットの候補画像を表示するボタン（以降、前候補ボタンと呼ぶ）１８０８と、入替対象スロットの後のスロットの候補画像を表示するボタン（以降、後候補ボタンと呼ぶ）１８０９が設けられている。その他に、候補画像の変更を要求する別候補ボタン１８０６と入れ替え作業を中断するキャンセルボタン１８０７が設けられている。
【０１８９】
Ｓ１７０６は、前候補ボタン１８０８が選択されたかを判定し、前候補ボタン１８０８が選択された場合は（Ｓ１７０６でＹＥＳの場合）、Ｓ１７０７へ進む。Ｓ１７０７では、当初ユーザが選択した入替対象スロットの前に位置するスロットに割り当てられている画像を候補起点画像とする。
【０１９０】
Ｓ１７０６において、前候補ボタン１８０８が選択されなかった場合は（Ｓ１７０６でＮＯの場合）、Ｓ１７０８へ進む。Ｓ１７０８では、後候補ボタン１８０９が選択されたかを判定する。Ｓ１７０８において、後候補ボタン１８０９が選択された場合は（Ｓ１７０８でＹＥＳの場合）、Ｓ１７０９へ進む。Ｓ１７０９では、当初ユーザが選択した入替対象スロットの後に位置するスロットに割り当てられている画像を候補起点画像とする。
【０１９１】
Ｓ１７０８において、後候補ボタン１８０９が選択されなかった場合は（Ｓ１７０８でＮＯの場合）、Ｓ１７１０へ進む。Ｓ１７１０では、別候補ボタン１８０６が選択されたかを判定する。Ｓ１７１０において、別候補ボタン１８０６が選択された場合は（Ｓ１７１０でＹＥＳの場合）、ユーザが望む候補画像がないと判断され、Ｓ１７０４へ戻る。Ｓ１７０４では再度候補画像の検索を行う。この際、ＣＰＵ１０１は前回入れ替え候補として選ばれていた画像を除いて候補画像の検索を行う。
【０１９２】
Ｓ１７１０において、別候補ボタン１８０６が選択されなかった場合は（Ｓ１７１０でＮＯの場合）、Ｓ１７１１に進む。Ｓ１７１１では、ユーザにより候補画像１８０２〜１８０５のうちの一つが選択されたか判定する。このステップにおいて１つの候補画像が選択された場合（Ｓ１７１１でＹＥＳの場合）は、ユーザの望む候補画像があったと判断されＳ１７１２に進む。Ｓ１７１１でＮＯの場合は、再度Ｓ１７０６に戻る。
【０１９３】
Ｓ１７１２において、ＣＰＵ１０１は、ユーザにより選択された候補画像を、入替対象スロットの画像に割り当てる。このＳ１７１２のステップにより、ＣＰＵ１０１は選択された画像が割り当てられた新たなレイアウト画を表示画面に表示させる。なお、Ｓ１７０６〜Ｓ１７１１の処理ループを構成することで、ユーザからの指示を受け取るまで、次の処理へ移るのを待機することができるようになっている。また、図１７には示されていないが、キャンセルボタン１８０７がユーザにより押された場合は、その時点で、ＣＰＵ１０１はこの一連の画像入れ替え処理を中断することができる。
【０１９４】
（入れ替え候補画像の抽出処理の詳細）
次に、図１９を用いて、入れ替え候補画像の抽出に係るフローを説明する。図１９はＳ１７０４の処理ステップの詳細を示すフロー図である。Ｓ１７０４では、ＣＰＵ１０１が、候補起点画像と時間的に近傍にある画像を対象として、候補画像の検索を実施し候補画像を抽出する。ここで、時間的に近傍の画像とは、図９で説明した、各ロットに対応した画像撮影区間内にあるサブ画像群であればよい。または、ある所定期間の時間内に収まる画像群としても良い。
【０１９５】
図１９では、図１８に示すように４枚の候補画像を抽出するものとし、また、４枚の候補画像の抽出条件として図２０に示す条件テーブルを使う例を説明する。図２０は、図３のモード指定部３０７において、ユーザにより指定された主要オブジェクトの優先度に関する設定を考慮した場合の抽出条件を示す表である。例えば、図３のモード指定部３０７において「人物」が選択された場合、図２０における「人物」の欄の抽出条件を用いる。また、図３のモード指定部３０７において「動物」が選択された場合、図２０における「動物」の欄の抽出条件を用いる。このように、「人物」モードと「動物」モードとでは、抽出条件が異なっている。
【０１９６】
図１９では、まず、Ｓ１９０１において、オブジェクトの優先度（優先するオブジェクトのモード情報）に関する設定取得し、この優先度に関する設定と、図２０のテーブルと、を用いて候補画像１の抽出条件を決定する。ここでは、「動物」が優先モードとして選択されたものとして説明する。図２０において、モードが「動物」の欄を参照すると、候補画像１の抽出条件は、「人と動物」となっている。よって、ＣＰＵ１０１は、候補画像１として人と動物の両方が写っている画像を抽出条件として設定する。
【０１９７】
次に、Ｓ１９０２で、Ｓ１９０１で設定された抽出条件を基に画像の検索を行う。Ｓ１９０３では、Ｓ１９０２の検索の結果、条件に適合する画像が抽出されたか判定する。Ｓ１９０３で画像が抽出された場合は（Ｓ１９０２でＹＥＳ）、Ｓ１９０４へ進む。Ｓ１９０４では、Ｓ１９０２で抽出された画像を入れ替え候補画像１として設定し、Ｓ１９０５へ進む。一方、Ｓ１９０３で、条件に適合する画像が見つからなかった場合は（Ｓ１９０２でＮＯ）、そのままＳ１９０５へ進む。
【０１９８】
Ｓ１９０５では、候補画像２の抽出条件と抽出枚数を設定する。候補画像２の抽出条件は、図２０より「動物」となっているため、ＣＰＵ１０１は、動物が写っており、人が写っていない画像を候補画像２の抽出条件として設定する。なお、抽出枚数については、候補画像１の抽出結果により変更される。例えば、Ｓ１９０３で候補画像１が抽出された場合は、候補画像２の抽出枚数は１枚となる。一方で、Ｓ１９０３で候補画像１が抽出されなかった場合は、候補画像２の抽出枚数を２枚とする。つまり、最終的に４枚の候補画像を抽出してユーザに提示できるよう、見つからなかった抽出条件の画像があった場合は、次の抽出条件の画像の抽出枚数を増やすことで対応する。
【０１９９】
Ｓ１９０６では、Ｓ１９０５で設定された抽出条件と抽出枚数で画像を検索する。Ｓ１９０７では、抽出条件に適合した画像が抽出されたか判定する。Ｓ１９０６で条件に適合する画像が抽出された場合は（Ｓ１９０７でＹＥＳ）、Ｓ１９０８へ進む。Ｓ１９０８ではその抽出された画像を候補画像２に設定し、Ｓ１９０９へ進む。一方、Ｓ１９０６で条件に適合する画像が見つからなかった場合は（Ｓ１９０７でＮＯ）、そのままＳ１９０９へ進む。
【０２００】
Ｓ１９０９では、候補画像３の抽出条件と抽出枚数を設定する。候補画像３の抽出条件は、図２０より「人」となっている。よって、ＣＰＵ１０１は、人が写っており動物が写っていない画像を候補画像３の抽出条件として設定する。なお、抽出枚数については、候補画像１及び候補画像２の抽出結果により変更される。具体的には、候補画像３の抽出枚数は、候補画像１と候補画像２の検索結果に応じて最大３枚から最少１枚の間で変化することになる。
【０２０１】
Ｓ１９１０では、Ｓ１９０９で設定された抽出条件を使用して、画像の検索を行う。Ｓ１９１１では、抽出条件に適合した画像が抽出されたか判定する。Ｓ１９１０で条件に適合する画像が抽出された場合は（Ｓ１９１１でＹＥＳ）、Ｓ１９１２へ進む。Ｓ１９１２ではその抽出された画像を候補画像３に設定し、Ｓ１９１３へ進む。一方、Ｓ１９１０で条件に適合する画像が見つからなかった場合は（Ｓ１９１１でＮＯ）、そのままＳ１９１３へ進む。
【０２０２】
Ｓ１９１３では、候補画像４の抽出条件と抽出枚数を設定する。候補画像４の抽出条件は、図２０より「モノ」となっている。「モノ」は人も動物も写っていない写真を示している。よって、ＣＰＵ１０１は、人物も動物も写っていない画像を候補画像４の抽出条件として設定する。なお、抽出枚数については、候補画像１、２、３の抽出結果により変更される。具体的には、候補画像４の抽出枚数は、候補画像１、２、３の検索結果に応じて最大４枚から最少１枚の間で変化することになる。
【０２０３】
Ｓ１９１４では、Ｓ１９１３で設定された抽出条件を使用して、画像の検索を行う。Ｓ１９１５では、抽出条件に適合した画像が抽出されたか判定する。Ｓ１９１４で条件に適合する画像が抽出された場合は（Ｓ１９１５でＹＥＳ）、Ｓ１９１６へ進む。Ｓ１９１６ではその抽出された画像を候補画像４に設定し、Ｓ１９１７へ進む。一方、Ｓ１９１４で条件に適合する画像が見つからなかった場合は（Ｓ１９１５でＮＯ）、そのままＳ１９１７へ進む。
【０２０４】
Ｓ１９１７では、候補画像の数に不足分があるか判定する。ここでは４枚抽出されていれば（Ｓ１９１７でＮＯ）、不足分なしとして処理を終了する。一方、４枚未満の場合は（Ｓ１９１７でＹＥＳ）、Ｓ１９１８に進み、候補起点画像の近傍の画像から不足分の画像を候補画像として選択する。この場合の抽出条件は、入れ替え対象のスロットに配置されている画像に対して、撮影時間が一番近い画像から順に選択するとよい。
【０２０５】
以上のように、オブジェクトの優先度に基づいて入れ替え候補画像を抽出することで、ユーザの好みに合う所定枚数の入れ替え候補画像を提示することが可能になる。例えば、画像の撮影時期や作成時期のみを抽出条件として所定期間内の画像を候補画像として抽出する場合よりも、オブジェクトに対するユーザの好みが反映される。また、画像に付与された得点を抽出条件として使用することも考えられる。確かに得点の高い画像をある程度ユーザの好みが反映されている。しかしながら、必ずしも得点の高い画像がユーザのオブジェクトに対する優先度が高いとは限らない。例えば、ユーザが動物を優先モードとして設定した場合において、検索先の画像群においては、人物のみが写る画像のほうが、動物が写る画像よりも得点が高いケースがあり得る。この場合、本実施形態のように、入れ替え候補画像の抽出条件として、特定オブジェクトの優先度に関する設定を用いることにより、得点よりもその特定オブジェクトの画像中に含まれているか・含まれていないかの判定が優先される。よって、よりユーザのオブジェクトに対する優先度が反映される。
【０２０６】
なお、ここでは、例として、４枚の候補画像を選択する場合で説明してきたが、枚数はこれに限られない。スマートフォンなどの表示領域が小さいデバイスでは、候補画像数を２枚にしてもよいし、ディスプレイの表示能力に応じて候補画像の枚数を可変にしてもよい。また、そもそもユーザがフォトアルバムの作成に指定した元となる画像の数が少ない場合は、複数の条件の候補画像を検索することが困難になってくる。この場合は、トータル画像の数に応じて条件や候補数を制御しても良い。抽出条件についても図２０に示す条件に限定されるものではない。候補画像１の抽出条件を、動物は写っているが人は写っていない画像としてもよく、オブジェクトの優先度が反映される範囲で任意に設定可能である。
【０２０７】
また、各候補画像の抽出時において、設定された抽出枚数よりも抽出条件に合う画像が複数抽出可能である場合は、複数存在する画像の中から得点の高いものを順に選択すると良い。例えば、候補画像２の抽出時において、２枚の候補画像を抽出する場合、抽出条件に適合する画像が５枚あったとすると、その５枚の画像の中から最も得点が高い２枚を候補画像２として抽出するとよい。
【０２０８】
（入れ替え候補画像の抽出処理の詳細に係る変形例）
さらに、特定のオブジェクトの優先度に基づく設定としては、上記のように特定のオブジェクトのモード選択だけに限られない。例えば、図１５のように、特定のオブジェクトの出現頻度に関する設定を、優先度に基づく設定として用いても良い。図１５では、人物の数が「普通」、動物の数が「多め」と指定されているとして説明する。
【０２０９】
図２１に、図１５の出現頻度を優先度に関する設定として、入れ替え候補画像の抽出条件の設定時に参照するテーブルの例を示す。図２１を参照した場合、人物数が「普通」、動物の数が「多め」の場合、候補画像１と候補画像２の抽出条件は、人も動物も「あり」となっているため、人と動物の両方が写っている画像を選択することが条件となる。候補画像３の抽出条件は、人は「なし」、動物は「あり」となっているため、人は写っていないが動物が写っている画像が条件となる。候補画像４の抽出条件は、人も動物も「なし」となっているため、人も動物も写っていない画像が条件となる。
【０２１０】
このように、図１５のようなオブジェクトの出現頻度に関する設定を用いる場合も、図２１の抽出条件に基づき、図１９のフローに沿って候補画像を４枚抽出することができる。なお、出現頻度を設定した場合の抽出条件もこれに限定されるものではない。オブジェクトの優先度としての出現頻度の設定が反映される範囲で任意に設定可能である。
【０２１１】
また、図３では、人物、動物、料理の３つのオブジェクトの優先モードの設定し、図１５では、人物と動物の２つのオブジェクトの出現頻度に関する設定を行うようになっているが、それ以外のオブジェクトを設定してもよい。つまり、画像認識技術ではそれ以外のオブジェクトも認識できるため、別のオブジェクトの優先モード設定や出現頻度の設定を行うことも可能である。例えば、個人の識別結果を利用して家族構成の推定も可能である。このように多種類のオブジェクトの画像認識結果を利用してアルバムを作成する場合には、各オブジェクトの出現頻度をそれぞれに制御することも可能である。
【０２１２】
しかしながら、認識対象としている主要オブジェクトの分だけ制御用のユーザインターフェースを表示すると、多くの表示領域を必要とし、操作性が低下する可能性がある。よって、ユーザがフォトアルバムの作成に指定した元となる画像群の画像認識結果を基に、その画像の中から認識された主要なオブジェクトの分だけのユーザインターフェースを表示するとよい。
【０２１３】
例えば、人、犬、猫、車、列車、家具、食べ物などの各オブジェクトを対象とした画像認識を行った結果、人、犬、車のカテゴリがオブジェクトとして認識（識別）されたとする。また、認識された人を基に、個人認識を行い個人単位でのオブジェクトの識別もできたものとする。さらに、同時に写る頻度が高い関係性、またはユーザにより家族の構成が指定される等により家族というカテゴリ単位のオブジェクトも識別されたとする。この場合は、図２２に示すように、識別された主要オブジェクトをカテゴリ（グループ）に分類して、カテゴリ毎に制御するユーザインターフェースを表示するとよい。図２２では、人の認識結果から家族という分類を作成し、犬からペット、車から乗り物といったカテゴリに分類した例を示している。各カテゴリのスライダーバー２００１，２００２，２００３の横には、各カテゴリというオブジェクトの中にさらに複数の個体としての主要オブジェクトがある場合に、展開ボタン２００４がある。この展開ボタン２００４を選択すると各カテゴリの中身が展開されたユーザインターフェースに変更される。
【０２１４】
図２３に展開後のユーザインターフェースの模式図を示す。図２３（ａ）は、展開ボタン２００４を押したときに、家族グループの中に含まれる個人単位の主要オブジェクトの分だけ、そのオブジェクト用のスライダーバー２１０１，２１０２，２１０３が表示される。図２３（ａ）では、「お父さん」、「お母さん」、「子供１」の３人分のユーザインターフェースが表示されている例を示している。ユーザインターフェースの中には、戻るボタン２１０４があり、それを押すと元のユーザインターフェース（この場合は、図２２が表示された状態）に戻る。別の例として、図２３（ｂ）に、ペットグループの場合を示している。ペットの分類として、犬と猫が認識されていた場合に、展開ボタン２００５が押されると、図２３（ｂ）の様なユーザインターフェースが表示されることになる。このようにすることで、表示領域の有効活用が可能になり、同時に操作性を向上することができる。
【０２１５】
（他の実施形態）
本発明は上述した実施形態に限定されるものではない。例えば、上述した実施形態では、アルバム作成アプリケーションを例に挙げて説明したが、お勧め画像を自動選択するような画像選択処理を備えるアプリケーションや画像処理装置であってもよい。
【０２１６】
また、図１では、ローカル環境を想定した画像処理装置を例に挙げて説明したが、画像処理装置はこれに限定されるものではない。例えば、サーバ上の画像処理装置であってもよい。この場合は、サーバ内に保存されている画像を利用又は画像をアップロードするようにすればよい。
【０２１７】
上述した実施形態では、画像が写真であるものとし、撮影日時に基づいてグループ分けをするようにしたが、画像を作成した日時でグループ分けをするようにしてもよい。
【０２１８】
上述した実施形態では、オブジェクトの優先度に関する設定について、ユーザがオブジェクトのモードや出現頻度を指定し、指定されたモードや出現頻度に基づいて入れ替え候補画像が抽出されるようにした。しかしながら、アルバムを作成する画像群を画像解析して、画像群に含まれるオブジェクトの種類の分布等から自動的にモードや出現頻度が設定されてもよい。
【０２１９】
なお、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステムまたは装置に供給し、そのシステムまたは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、プログラムは、１つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、一部または全部をハードウェアによって実現するようにしてもよい。
【符号の説明】
【０２２０】
２０１  アルバム作成条件指定部
２０２  動画取得部
２０３  動画解析部
２０４  フレーム取得部
２０５  画像取得部
２０６  画像変換部
２０７  画像解析部
２０８  画像分類部
２０９  主人公情報入力部
２１０  画像得点部
２１１  見開き数入力部
２１２  見開き割当部
２１３  画像選択部
２１４  テンプレート設定部
２１５  画像レイアウト部
２１６  画像補正条件入力部
２１７  画像補正部
２１８  レイアウト情報出力部
２２０  入れ替え候補画像検索部
【図１】
2018097483.tif 000003
【図２】
2018097483.tif 000004
【図３】
2018097483.tif 000005
【図４】
2018097483.tif 000006
【図５】
2018097483.tif 000007
【図６】
2018097483.tif 000008
【図７】
2018097483.tif 000009
【図８】
2018097483.tif 000010
【図９】
2018097483.tif 000011
【図１０】
2018097483.tif 000012
【図１１】
2018097483.tif 000013
【図１２】
2018097483.tif 000014
【図１３】
2018097483.tif 000015
【図１４】
2018097483.tif 000016
【図１５】
2018097483.tif 000017
【図１６】
2018097483.tif 000018
【図１７】
2018097483.tif 000019
【図１８】
2018097483.tif 000020
【図１９】
2018097483.tif 000021
【図２０】
2018097483.tif 000022
【図２１】
2018097483.tif 000023
【図２２】
2018097483.tif 000024
【図２３】
2018097483.tif 000025