(57)【要約】【課題】ユーザにとって優先度の高い画像が撮影日時順にレイアウトされたフォトアルバムを、ユーザの手を煩わせることなく作成する。【解決手段】複数の画像の撮影日時情報と当該撮影日時情報の信頼性を示す信頼性情報とを取得し、複数の画像のそれぞれを解析してスコアリングし、得られたスコアが高い順にテンプレートにレイアウトする画像を複数の画像の中から選出する。更に、選出された画像を、撮影日時の順に前記テンプレートにレイアウトした上で、レイアウトされた画像の中に、撮影日時情報の信頼性が低い画像が含まれている場合に、ユーザにこれを通知する。【選択図】図２
2019067237.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像をテンプレートにレイアウトすることによってレイアウト結果を生成するための情報処理方法であって、
前記複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する工程と、
前記複数の画像のそれぞれを解析しスコアリングするスコアリング工程と、
前記撮影日時情報と、前記スコアリング工程によって得られたスコアと、に基づき、画像を前記テンプレートにレイアウトするレイアウト工程と、
前記信頼性情報に基づき、前記レイアウト工程でレイアウトされた画像の中に、前記撮影日時情報の信頼性が低い画像が含まれている場合に、ユーザに通知する通知工程と
を有することを特徴とする情報処理方法。
【請求項２】
ユーザによるレイアウトの変更を受け付ける受け付け工程を更に有することを特徴とする請求項１に記載の情報処理方法。
【請求項３】
前記受け付け工程は、前記レイアウト工程でレイアウトされた画像を、ユーザのドラッグ  アンド  ドロップ操作に基づき移動させることにより、画像の配置領域の変更を受け付けることを特徴とする請求項２に記載の情報処理方法。
【請求項４】
前記受け付け工程は、前記レイアウト工程でレイアウトされたページ又は見開きに対応するサムネイルを、ユーザのドラッグ  アンド  ドロップ操作に基づき移動させることにより、ページ単位又は見開き単位の入れ替えを受け付けることを特徴とする請求項２又は３に記載の情報処理方法。
【請求項５】
前記受け付け工程によって変更された後のレイアウトに従って、前記撮影日時情報を更新する工程を更に有することを特徴とする請求項２から４のいずれか１項に記載の情報処理方法。
【請求項６】
前記複数の画像を、前記撮影日時情報が示す撮影日時に従って、前記テンプレートが有する複数のページのそれぞれに対応づけて複数のグループに分割する工程を更に有し、
前記レイアウト工程は、前記複数のグループのそれぞれについて、対応するページにレイアウトする画像を複数の画像の中から選出し、選出された画像を、前記撮影日時情報に従って撮影日時の順に、対応するページにレイアウトすることを特徴とする請求項１から５のいずれか１項に記載の情報処理方法。
【請求項７】
複数の画像をテンプレートにレイアウトすることによってレイアウト結果を生成するための情報処理方法であって、
前記複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する工程と、
前記複数の画像のそれぞれを解析しスコアリングするスコアリング工程と、
前記複数の画像を、前記撮影日時情報が示す撮影日時に従って、前記テンプレートが有する複数のページのそれぞれに対応づけて複数のグループに分割する工程と、
前記複数のグループのそれぞれについて、前記撮影日時情報と、前記スコアリング工程によって得られたスコアと、に基づき、画像を前記テンプレートの対応するページにレイアウトするレイアウト工程と、
前記信頼性情報に基づき前記レイアウト工程で画像がレイアウトされたページ又は見開きに対応するサムネイルのドラッグ  アンド  ドロップにより、ページの単位でのレイアウトの変更を、受け付ける工程と
を有することを特徴とする情報処理方法。
【請求項８】
前記テンプレートに対する画像のレイアウトが完了したレイアウト結果のデータを、ネットワークを介して外部サーバにアップロードする工程を更に有することを特徴とする請求項１から７のいずれか１項に記載の情報処理方法。
【請求項９】
前記スコアリング工程は、画像メタ情報に含まれるレーティング情報、顔検出結果、画像データのヒストグラム、周波数解析結果、前記信頼性情報の少なくとも１つに基づいて個々の画像のスコアを求めることを特徴とする請求項１から８のいずれか１項に記載の情報処理方法。
【請求項１０】
前記画像をレイアウトすることにより、レイアウト結果として複数のページからなるフォトアルバムのデータを生成することを特徴とする請求項１から９のいずれか１項に記載の情報処理方法。
【請求項１１】
複数の画像をテンプレートにレイアウトすることによってレイアウト結果を生成するための情報処理装置であって、
前記複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する手段と、
前記複数の画像のそれぞれを解析しスコアリングするスコアリング手段と、
前記撮影日時情報と、前記スコアリング手段によって得られたスコアと、に基づき、画像を前記テンプレートにレイアウトするレイアウト手段と、
前記信頼性情報に基づき、前記レイアウト手段でレイアウトされた画像の中に、前記撮影日時情報の信頼性が低い画像が含まれている場合に、ユーザに通知する通知手段と
を備えることを特徴とする情報処理装置。
【請求項１２】
複数の画像をテンプレートにレイアウトすることによってレイアウト結果を生成するための情報処理装置であって、
前記複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する手段と、
前記複数の画像のそれぞれを解析しスコアリングするスコアリング手段と、
前記複数の画像を、前記撮影日時情報が示す撮影日時に従って、前記テンプレートが有する複数のページのそれぞれに対応づけて複数のグループに分割する手段と、
前記複数のグループのそれぞれについて、前記撮影日時情報と、前記スコアリング手段によって得られたスコアと、に基づき画像を前記テンプレートの対応するページにレイアウトするレイアウト手段と、
前記信頼性情報に基づき前記レイアウト手段によって画像がレイアウトされたページ又は見開きに対応する、サムネイルのドラッグ  アンド  ドロップにより、ページの単位でのレイアウトの変更を、受け付ける手段と
を備えることを特徴とする情報処理装置。
【請求項１３】
情報処理装置に、レイアウト結果を生成するための情報処理方法を実行させるためのプログラムであって、前記情報処理方法は、
複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する工程と、
前記複数の画像のそれぞれを解析しスコアリングするスコアリング工程と、
前記撮影日時情報と、前記スコアリング工程によって得られたスコアと、に基づき、画像をテンプレートにレイアウトするレイアウト工程と、
前記信頼性情報に基づき、前記レイアウト工程でレイアウトされた画像の中に、前記撮影日時情報の信頼性が低い画像が含まれている場合に、ユーザに通知する通知工程と
を有することを特徴とするプログラム。
【請求項１４】
ユーザによるレイアウトの変更を受け付ける受け付け工程を更に有することを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記受け付け工程は、前記レイアウト工程でレイアウトされた画像を、ユーザのドラッグ  アンド  ドロップ操作に基づき移動させることにより、画像の配置領域の変更を受け付けることを特徴とする請求項１４に記載のプログラム。
【請求項１６】
前記受け付け工程は、前記レイアウト工程でレイアウトされたページ又は見開きに対応するサムネイルを、ユーザのドラッグ  アンド  ドロップ操作に基づき移動させることにより、ページ単位又は見開き単位の入れ替えを受け付けることを特徴とする請求項１４又は１５に記載のプログラム。
【請求項１７】
前記受け付け工程によって変更された後のレイアウトに従って、前記撮影日時情報を更新する工程を更に有することを特徴とする請求項１４から１６のいずれか１項に記載のプログラム。
【請求項１８】
前記複数の画像を、前記撮影日時情報が示す撮影日時に従って、前記テンプレートが有する複数のページのそれぞれに対応づけて複数のグループに分割する工程を更に有し、
前記レイアウト工程は、前記複数のグループのそれぞれについて、対応するページにレイアウトする画像を複数の画像の中から選出し、選出された画像を、前記撮影日時情報に従って撮影日時の順に、対応するページにレイアウトすることを特徴とする請求項１３から１７のいずれか１項に記載のプログラム。
【請求項１９】
情報処理装置に、レイアウト結果を生成するための情報処理方法を実行させるためのプログラムであって、前記情報処理方法は、
複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する工程と、
前記複数の画像のそれぞれを解析しスコアリングするスコアリング工程と、
前記複数の画像を、前記撮影日時情報が示す撮影日時に従って、テンプレートが有する複数のページのそれぞれに対応づけて複数のグループに分割する工程と、
前記複数のグループのそれぞれについて、前記撮影日時情報と、前記スコアリング工程によって得られたスコアと、に基づき前記テンプレートの対応するページにレイアウトするレイアウト工程と、
前記信頼性情報に基づき前記レイアウト工程で画像がレイアウトされたページ又は見開きに対応するサムネイルのドラッグ  アンド  ドロップにより、ページの単位でのレイアウトの変更を、受け付ける工程と
を有することを特徴とするプログラム。
【請求項２０】
前記テンプレートに対する画像のレイアウトが完了したレイアウト結果のデータを、ネットワークを介して外部サーバにアップロードする工程を更に有することを特徴とする請求項１３から１９のいずれか１項に記載のプログラム。
【請求項２１】
前記スコアリング工程は、画像メタ情報に含まれるレーティング情報、顔検出結果、画像データのヒストグラム、周波数解析結果、前記信頼性情報の少なくとも１つに基づいて個々の画像のスコアを求めることを特徴とする請求項１３から２０のいずれか１項に記載のプログラム。
【請求項２２】
前記画像をレイアウトすることにより、レイアウト結果として複数のページからなるフォトアルバムのデータを生成することを特徴とする請求項１３から２１のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラなどで撮影された複数の画像を、テンプレートに基づいてレイアウトするための情報処理方法および情報処理装置に関する。
【背景技術】
【０００２】
特許文献１には、ユーザが、フォトアルバムに収めたいデータファイルを指定し、好みのテンプレートを選択することにより、画像の特徴を解析して好ましい形式に自動でレイアウトするフォトアルバムの作成技術が開示されている。
【０００３】
一方、特許文献２には、写真画像のサムネイルをユーザが並べ変えることによって、撮影日時情報を更新する技術が開示されている。具体的には、複数の写真画像をサムネイルとして配列表示し、ユーザにこれらの順番をドラッグしながら並び替えてもらうことにより、撮影日時情報の確実性が低い画像ファイルの当該撮影日時情報を、前後の画像の撮影日時情報に基づいて推定し保存する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−７２９３４号公報
【特許文献２】特許第５０９４５２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
フォトアルバム等を作成する場合に、写真画像を撮影日時順に並べることが多いが、従来のフォトアルバム自動作成ツールでは、撮影日時の信頼性が低い画像については優先度が低く扱われ、自動レイアウトから除外されてしまうこともあった。しかしながら、記憶されている撮影日時情報の信頼性が低くても、ユーザにとってはアルバムに入れる優先度の高い画像は存在する。
【０００６】
例えば、ユーザは、撮影後の画像ファイルのうち特にアルバム収容したい画像を、編集ソフトを用いて加工することがあるが、編集ソフトによっては撮影日時情報を削除してしまう場合がある。また、集合写真など複数のユーザで共有される画像を、ＳＮＳなどを通じて送受信した場合、データ容量の削減や個人情報保護などの目的で撮影日時情報が削除されることがある。
【０００７】
撮影日時情報が削除されてしまった画像であっても、フォトアルバムを作成する前に、特許文献２を用いて画像の並び替えを行えば、フォトアルバムを作成するときには撮影日時情報が添付され、アルバムに含めることはできる。しかし、フォトアルバムを作成するたびに、全画像の順番を確認しながら手動レイアウトすることは、ユーザにとって煩わしい作業となる。なお、このような課題は、フォトアルバムだけでなく複数の画像をレイアウトする場合に、共通して生ずる。
【０００８】
本発明は上記問題点を解決するためになされたものである。よってその目的とするところは、ユーザにとって優先度の高い画像が撮影日時順にレイアウトされたレイアウト結果を、ユーザの手を煩わせることなく作成することである。
【課題を解決するための手段】
【０００９】
そのために本発明は、複数の画像をテンプレートにレイアウトすることによってレイアウト結果を生成するための情報処理方法であって、前記複数の画像の撮影日時情報と、当該撮影日時情報の信頼性を示す信頼性情報と、を取得する工程と、前記複数の画像のそれぞれを解析しスコアリングするスコアリング工程と、前記撮影日時情報と、前記スコアリング工程によって得られたスコアと、に基づき、画像を前記テンプレートにレイアウトするレイアウト工程と、前記信頼性情報に基づき、前記レイアウト工程でレイアウトされた画像の中に、前記撮影日時情報の信頼性が低い画像が含まれている場合に、ユーザに通知する通知工程とを有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ユーザにとって優先度の高い画像が撮影日時順にレイアウトされたフォトアルバムを、ユーザの手を煩わせることなく作成することができる。
【図面の簡単な説明】
【００１１】
【図１】フォトアルバム作成システムにおける制御の構成を説明するためのブロック図
【図２】アルバム作成ジョブ発生時に、情報処理装置が実行するフローチャート
【図３】画像レイアウトシーケンスにおける処理工程を説明するためのフローチャート
【図４】テンプレートの一例を示す図
【図５】画像ファイルのリストの例を示す図
【図６】画像ファイルのスコアリングの結果の一例を示す図
【図７】スロットＩＤと画像ＩＤの対応関係を示す図
【図８】画像ファイルのスコアリングの結果の別例を示す図
【図９】スロットＩＤと画像ＩＤの対応関係を示す図
【図１０】メッセージの一例を示す図
【図１１】アルバムの確認・編集画面を示す図
【発明を実施するための形態】
【００１２】
図１は、本発明に使用可能なフォトアルバム作成システムにおける制御の構成を説明するためのブロック図である。
【００１３】
情報処理装置１０は、例えばパーソナルコンピュータで構成され、内部にＣＰＵ１１、ＲＡＭ１２、ＲＯＭ１３などを備えている。また、情報処理装置１０の外部には、記憶装置２０、入力装置３０、モニタ４０、プリンタＡ５０が接続されている。
【００１４】
ＣＰＵ１１は、ＲＡＭ１２やＲＯＭ１３、記憶装置２０に保存されているプログラムに従ってＲＡＭ１２をワークエリアとしながら、装置全体を制御する。記憶装置２０は、ＨＤＤやＳＳＤなどで構成され、ＣＰＵ１１が実行する各種プログラムのほか、本実施形態で使用する画像ファイルやテンプレートファイルも保存している。
【００１５】
入力装置３０は、キーボードやマウス、ポインティングデバイスなどであり、ユーザが情報処理装置１０にコマンド入力するためのデバイスである。モニタ４０は、情報処理装置１０からの情報をユーザに表示するためのデバイスである。入力装置３０とモニタ４０は、タッチ画面形式として一体的に構成されていても良い。また、図では、記憶装置２０、入力装置３０、モニタ４０が情報処理装置の外部に接続された形態で示したが、これらデバイスは情報処理装置１０に含まれていても良い。
【００１６】
以上の構成のもと、情報処理装置１０は、入力装置３０やモニタ４０を介したユーザの指示のもと、所定のプログラムに従って、記憶装置２０に記憶された画像ファイルを用いてフォトアルバムやフォトブック用のデータを作成することができる。
【００１７】
プリンタＡ５０は、情報処理装置１０に直接接続され、情報処理装置１０から受信するプリントデータに従って画像をプリントすることができる。例えば、ユーザは、情報処理装置１０で作成したアルバムデータに基づいて、プリンタＡ５０にアルバム用の画像をプリントさせることもできる。この場合、ユーザはプリント後の出力物を用いて自ら製本し、アルバムに仕上げることができる。
【００１８】
一方、情報処理装置１０は、ネットワーク６０を介して外部サーバ７０にも接続されており、作成したアルバムの画像を外部サーバにアップロードすることもできる。外部サーバ７０はプリンタＢ８０と接続されており、不図示の入出力インターフェースを用いてプリンタＢ８０と通信可能になっている。例えば、外部サーバ７０がアルバム作成業者の管理サーバであるとき、ユーザは、情報処理装置１０で生成したアルバムデータを外部サーバにアップロードするとともに、アルバムの発注手続きを行うこともできる。この場合、注文を受けた業者は、外部サーバ７０にアップロードされたアルバムデータに基づいて、プリンタＢ８０にアルバム用の画像をプリントさせた後、製本を行い、完成したアルバムをユーザの手元に届けることになる。
【００１９】
図２は、アルバム作成ジョブが発生した場合に、情報処理装置１０のＣＰＵ１１が実行する処理を説明するためのフローチャートである。本処理は、ユーザが、フォトアルバム作成用の所定のアプリケーションソフトを立ち上げることによって開始され、ＣＰＵ１１が、ＲＡＭ１２やＲＯＭ１３に記憶されているプログラムに従って、ＲＡＭ１２をワークエリアとして用いながら実行する処理である。
【００２０】
本処理が開始されると、ＣＰＵ１１はまずステップＳ２０１において、画像レイアウトシーケンスを実行する。
【００２１】
図３は、ステップＳ２０１の画像レイアウトシーケンスにおいてＣＰＵ１１が実行する処理の工程を説明するためのフローチャートである。ＣＰＵ１１は、まず、ステップＳ３０１において、ユーザより選択されたテンプレートを記憶装置２０から読み出す。
【００２２】
より具体的に説明する。ＣＰＵ１１は、モニタ４０に提供可能な複数のテンプレートを表示して、ユーザからの選択指示を受ける。この際、ユーザは複数のテンプレートの中から好みのデザインを選択するとともに、作成するアルバムのサイズやページ数、各ページにレイアウト可能な画像の最大数などを指定する。但し、デザインやサイズ、ページ数が予め決められている場合は、本ステップを省略することもできる。ＣＰＵ１１は、記憶装置２０をアクセスし、選択されたテンプレートを読み出してＲＡＭ１２に展開する。
【００２３】
図４（ａ）および（ｂ）は、ＲＡＭ１２に展開されたテンプレートの一例を示す図である。ここでは、１つの見開きページに、図４（ａ）のように４つの画像をレイアウトする例を示している。このような領域は、基準点と大きさ、すなわち左上の座標（ｘ、ｙ）とｘ方向の幅（W）、ｙ方向の高さ（ｈ）が、スロットＩＤ４００１〜４００４にそれぞれ対応づけられて、図４（ｂ）のように管理されている。
【００２４】
なお、ここでは１つの見開きページに４つの写真をレイアウトする場合を示しているが、無論その数は限定されるものではない。１ページにレイアウトする画像の数は、ステップＳ３０１において選択されたテンプレートの種類のほか、この後行われる様々な処理によって変更可能である。本実施形態においては、夫々のページに最終的にレイアウトされる画像の数が変更されても対応可能なように、例えば１枚の場合〜４枚の場合のそれぞれについて、図４（ａ）および（ｂ）に示すテンプレート情報を予め用意しておく。
【００２５】
図３に戻る。ステップＳ３０２において、ＣＰＵ１１は、フォトアルバムに使用する画像ファイルが保存されたフォルダの指定をユーザより受け付け、記憶装置２０にアクセスし、指定されたファイルに含まれる全画像ファイルを読み出してＲＡＭ１２に展開する。そして、ステップＳ３０３において、ＣＰＵ１１はＲＡＭ１２に展開した画像ファイルを解析し、撮影日時順にリスト化する。
【００２６】
図５は、ステップＳ３０３においてＣＰＵ１１が作成したリストの例を示す図である。ＣＰＵ１１は、ステップＳ３０２で指定されたフォルダに含まれる全画像ファイルを撮影日時順に並べ、ＩＤ番号を付与して配列する。ここでは説明を簡単にするために、フォルダの中に６つの画像ファイルが存在した場合を示しているが、更に多数の画像ファイルが含まれていても良い。リストには、個々の画像ファイルの、ファイル名、撮影日時および信頼性情報が夫々の画像ＩＤに対応づけて管理されている。
【００２７】
ここで、撮影日時は、対応する画像がデジタルカメラなどで撮影され、最初に画像データとして取得された日時を示している。Ｅｘｉｆ撮影情報やＥｘｔｅｎｓｉｂｌｅ  Ｍｅｔａｄａｔａ  Ｐｌａｔｆｏｒｍ（ＸＭＰ）など、画像データ自体に撮影日時情報が含まれている場合、ＣＰＵ１１はその情報をリストに記入し、信頼性に「ｔｒｕｅ」をセットする。
【００２８】
この際「ｔｒｕｅ」は、撮影日時情報の信頼性が高いことを意味している。撮影されてから記憶装置２０に記憶されるまでの間にコピーや移動操作が行われても、Ｅｘｉｆ撮影情報やＥｘｔｅｎｓｉｂｌｅ  Ｍｅｔａｄａｔａ  Ｐｌａｔｆｏｒｍ（ＸＭＰ）が書き換えられることは無い。また、何らかのアプリケーションによって画像データに様々な処理が施されたとしても、上記情報が書き換えられることは殆ど無い。このように画像データ自体に撮影日時情報が含まれているファイルでは、撮影日時情報の信頼性は十分に高いため、ＣＰＵ１１は「ｔｒｕｅ」をセットする。
【００２９】
ＳＮＳ通信を経た画像データの場合には、撮影日時情報は投稿日時情報とともに、画像データとは別に通信される場合もある。このような場合であっても、撮影日時情報自体の信頼性は高いため、ＣＰＵ１１は「ｔｒｕｅ」を設定する。また、撮影日時情報が存在せず投稿日時情報のみが存在する場合も、ＣＰＵ１１は投稿日時情報を撮影日時情報とみなしてリストに書き込み、「ｔｒｕｅ」を設定する。
【００３０】
上記以外の場合、すなわち画像データ自体に撮影日時情報が含まれておらず、付随されてもいない場合、ＣＰＵ１１は画像データのタイムスタンプから撮影日時情報を推測する。タイムスタンプには、ファイルの作成日時、ファイルの読み込み日時、ファイルの更新日時などの情報が含まれている。ＣＰＵ１１は、これら複数の日時情報のうち最も古い日時を暫定の撮影日時情報として撮影日時の欄に記載し、信頼性の欄に撮影日時情報の信頼性が低いことを意味する「ｆａｌｓｅ」をセットする。
【００３１】
以下、タイムスタンプの情報から推測される撮影日時情報の信頼性について簡単に説明する。デジカメなどは、撮影したタイミングで取得した画像データをＳＤカードなどの外部メディアに記憶するため、ファイルの作成日時やファイルの更新日時は、撮影日時と一致している。その後、ＳＤカードの情報を、情報処理装置１０を介して記憶装置２０にコピーした場合、記憶装置２０ではファイルが新規作成されるため、ファイルの作成日時はコピーした日時になる。しかし、ファイルの更新処理は行われないため、ファイルの更新日時は温存される。すなわち、このような場合は、タイムスタンプに記憶されているファイルの更新日時が、最も古い日時となり図５に示すリストの撮影日時に記載される。
【００３２】
情報処理装置１０が、例えばスマートフォンのように携帯可能なカメラ付きの装置であった場合、撮影した画像データがそのまま情報処理装置１０に記憶されるため、ファイルの作成日時とファイルの更新日時は撮影日時に一致している。その後、ユーザによってエフェクト処理やフィルター処理などの画像処理が施され更新されると、ファイルの更新日時は上書きされるが、ファイルを新規作成してはいないのでファイルの作成日時は温存される。すなわち、このような場合は、タイムスタンプに記憶されているファイルの作成日時が、最も古い日時となり図５に示すリストの撮影日時に記載される。
【００３３】
その一方、例えばスマートフォンで画像処理が施された後の画像データがＳＮＳなどで情報処理装置１０に送信され記憶装置２０に記憶されるような場合は、ファイルの作成日時も更新日時も撮影日時とは異なる日時となってしまう。そしてこのような場合にも、ＣＰＵ１１はタイムスタンプに記憶されている日時のうち最も古い日時を選び、これを撮影日時の欄に記載する。
【００３４】
すなわち、タイムスタンプから選択され記憶された撮影日時については、実際の撮影日時と一致するもの含まれるが一致しないものも含まれる恐れがあるため、本実施形態ではその目安として信頼性の欄に「ｆａｌｓｅ」をセットする。
【００３５】
図３に戻る。ステップＳ３０３におけるリスト化が終了すると、ＣＰＵ１１はステップＳ３０４に進み、作成したリストに基づいて個々の画像データの解析およびスコアリングを行う。スコアリングとは、画像ファイルごとにレイアウトの優先度を数値化する作業である。この数値が高いほどレイアウト時にスロットに配置される可能性が高くなる。スコアリングの方法は特に限定されるものではないが、例えば画像メタ情報に格納されているレーティング情報に基づいたり、顔検出結果、画像データのヒストグラム、周波数解析結果を用いた独自の関数で算出したりして、スコア値が求められればよい。また、図５に示したリストの信頼性が「ｔｒｕｅ」である画像のスコアが増加し、「ｆａｌｓｅ」である画像のスコアが減少するような係数を用意しても良い。この際、スコアリングに使用した画像データは、Ｂｉｎａｒｙ  Ｌａｒｇｅ  Ｏｂｊｅｃｔ（以下、ＢＬＯＢ）形式で、データベースに格納できる形式に変換して格納する。
【００３６】
図６は、図５においてリスト化した画像ＩＤ１００１〜１００６のスコアリングの結果の一例を示す図である。ここでは、ステップＳ３０３で作成したリスト（図５）とステップＳ３０４で求めたスコアリングの結果（図６）を異なる図で示したが、スコアリングの結果は、図５に示すリストの一つの項目として記憶しても良い。
【００３７】
再び図３に戻る。ステップＳ３０５において、ＣＰＵ１１は、全画像ファイルを複数のページに分配する。例えば、リスト化されている画像ファイルの数がページ数Ｐと一致する場合、各ページに１つずつの画像を振り分け本工程は終了する。画像の数がページ数Ｐより少ない場合は、その旨をユーザに通知して、ページ数を減らしたり画像を割り当てないページを作成したりする。
【００３８】
通常は、画像ファイルの数がページ数Ｐを上回っていることが多く、この場合、ＣＰＵ１１はこれら複数の画像をステップＳ３０１で指定されたページ数にグループ分けする。具体的には、まず、撮影日時順に並べられた画像ファイルにおいて、隣り合う画像ファイルの撮影日時の時間差を求める。そして、撮影時間差が最も大きい位置で複数の画像ファイルを２つのグループに分割する。続いて、撮影時間差が２番目に大きい位置でその位置が含まれるグループを更に２つに分割する。以上のように、撮影時間差が大きい順に個々のグループの分割を繰り返し、グループの数がページ数Ｐに一致したところで本工程を終了すれば、ステップＳ３０１で指定されたページ数Ｐのそれぞれに１以上の画像データを割り当てることができる。
【００３９】
なお、分割の方法は上記に限定されるものではない。例えば、信頼性が「ｔｒｕｅ」である画像と「ｆａｌｓｅ」である画像の境界は、撮影日時の時間差が小さくても、その位置で分割されやすくしても良い。また、短い期間に多数の画像ファイルの撮影日時が含まれているような場合は、撮影日時以外の要素でこれらを複数のグループに分割しても良い。例えば、背景写真と人物写真で分割したり、個人写真と集合写真で分割したり、同一人物が移っている画像が同じグループに含まれるように分割したりしても良い。
【００４０】
ステップＳ３０６において、ＣＰＵ１１は、ステップＳ３０６で分割された夫々のグループに含まれる画像データを、図４（ａ）および（ｂ）に示すテンプレートの各領域にレイアウトする。
【００４１】
例えば、図４（ａ）および（ｂ）に示すテンプレートの場合、４つの領域（スロット）が用意されている。よってＣＰＵ１１は、処理対象のグループの中からスコアリングの高い４つの画像を選出する。例えば、処理対象のグループのスコアリング結果が、図６に示す状態であった場合、スコアの順位は、画像ＩＤ１００５、１００１、１００４、１００３、１００６、１００２の順である。よって、ＣＰＵ１１は、これらの中から、上位の４つ即ち画像ＩＤ１００５、１００１、１００４、１００３を選出し、これらを撮影日時順にスロットＩＤ４００１〜４００４に宛がっていく。すなわち、画像ＩＤ１００５がスロットＩＤ４００１に、画像ＩＤ１００１がスロットＩＤ４００２に、画像ＩＤ１００４がスロットＩＤ４００３に、画像ＩＤ１００３がスロットＩＤ４００４に、それぞれ宛がわれる。
【００４２】
図７は、スロットＩＤと画像ＩＤの対応関係を示す図である。ページ毎にこのような対応付けを行っておくことで、どの画像がどの位置にレイアウトされるかを管理することができる。
【００４３】
なお、以上では、処理対象とするグループに含まれる画像の数（６つ）が、テンプレートに用意されているスロットの数（４つ）よりも多い場合について説明したが、グループに含まれる画像の数が、用意されているスロットの数より少ない場合も考えられる。このような場合は、テンプレートの側のレイアウトを４画像表示から３画像以下に切り替えれて、上記と同様の処理を行えば良い。また、ステップＳ３０６においてテンプレートにレイアウトするために必要な最低のスコア値を予め定めておき、最低のスコア値に満たない画像データは、テンプレート側にレイアウト可能な余裕があっても、レイアウトしないようにしても良い。
【００４４】
図３に戻る。ステップＳ３０６において、処理対象となる画像グループのテンプレートへのレイアウトが終了すると、ＣＰＵ１１はステップＳ３０７に進み、テンプレートにおける全ページ（即ち画像データにおける全グループ）のレイアウト処理が完了したか否かを判断する。まだレイアウトすべきページ（グループ）が残っている場合、ＣＰＵ１１はステップＳ３０６に戻り、次の処理対象ページ（グループ）についてのレイアウト処理を行う。一方、ステップＳ３０７において、レイアウトすべきページ（グループ）は残っていないと判断した場合は、本処理（画像レイアウトシーケンス）は終了し、図２のフローチャートに戻る。
【００４５】
ところで、以上では、図６に示すスコアリング結果を例に、信頼性が「ｔｒｕｅ」である画像データのみがテンプレートにレイアウトされる場合について説明したが、信頼性が「ｆａｌｓｅ」である画像データがテンプレートにレイアウトされる場合もある。
【００４６】
図８は、図５においてリスト化した６つの画像ＩＤ１００１〜１００６のスコアリングの結果の別例を示す図である。ここでは、信頼性が「ｆａｌｓｅ」である画像ＩＤ１００２のスコアが比較的高い値になっている。図８のスコアリング結果に基づいて、図４（ａ）および（ｂ）に示すテンプレートの各領域に画像をレイアウトする場合、ＣＰＵ１１は上位の４つの画像データとして、ＩＤ１００１、１００２、１００４、１００３を選出する。そして、これらを撮影日時順にスロットＩＤ４００１〜４００４に宛がうと、スロットＩＤと画像ＩＤの対応関係は図９のようになる。すなわち、本例の場合、信頼性が「ｆａｌｓｅ」である画像ＩＤ１００２もテンプレートにレイアウトされる。
【００４７】
つまり、図３で説明した一連の画像レイアウトシーケンスが終了した時点において、作成されたアルバムデータ中には、信頼性が「ｆａｌｓｅ」である画像データが含まれるページも十分存在しうる。
【００４８】
図２のフローチャートに戻る。ステップＳ２０１で画像レイアウトシーケンスが終了すると、ＣＰＵ１１はステップＳ２０２に進み、ステップＳ２０１で画像をレイアウトしたアルバムデータの中に、信頼性が「ｆａｌｓｅ」である画像が存在するか否かを判断する。具体的には、図５に示すリストを参照し、図７や図９に示す各ページに含まれる画像ＩＤに信頼性が「ｆａｌｓｅ」である画像データが存在するか否かを判断する。そして、信頼性が「ｆａｌｓｅ」である画像データが含まれていると判断した場合はステップＳ２０３に進み、所定のメッセージを表示する。一方、信頼性が「ｆａｌｓｅ」である画像データが含まれていないと判断した場合、ＣＰＵ１１はステップＳ２０４にジャンプする。
【００４９】
図１０は、ステップＳ２０３で表示されるメッセージの一例を示す図である。このようなメッセージは、予めＲＯＭ１３などに記憶されているテキストデータをＣＰＵ１１が読み出し、モニタ４０に表示するものである。このメッセージを確認することによって、ユーザは現状のアルバムデータに撮影日時の配列順に誤りが含まれている可能性があることを認識することができる。メッセージを確認後、ユーザがＯＫボタンをクリックすると、ＣＰＵ１１はステップＳ２０４に進む。
【００５０】
ステップＳ２０４において、ＣＰＵ１１は図１１に示すアルバムの確認・編集画面を表示する。本画面は、ＣＰＵ１１が、ステップＳ２０１で作成したアルバムデータを用い、予め定められたフォーマットに従って、モニタ４０に表示するものである。本画面は、ユーザにとって、アルバムデータにおける現時点のレイアウト結果を確認しつつ、マウスなどの入力装置３０を用いながらレイアウト変更もできる画面になっている。
【００５１】
上段には複数のページのそれぞれに対応するサムネイル１０１の一覧が、下段には上段で選択された見開きページの拡大画像レイアウト１０２が示されている。拡大画像レイアウト１０２の左右には、拡大画像レイアウトで表示する見開きページを切り替えるための切り替えボタン１０４および１０５が配されている。ユーザはこれらボタンをクリックすることにより、上段に表示されている複数のページの中から、拡大表示したいページを選択することができる。なお、上段においても、全てのページ分のサムネイルが表示しきれない場合は、スクロールバーなどを設けて、表示位置を調整できるようにしても良い。
【００５２】
図１１では、上段の左端にある見開きページ（仮に１−２ページ目に対応するものとする）のサムネイルが選択され、下段でその１−２ページ目の見開きが拡大表示されている状態を示している。この際、ＣＰＵ１１は、撮影日時の信頼性が「ｆａｌｓｅ」である画像やそのような画像が含まれるページを、ユーザの確認を促すようにマーキング表示しても良い。
【００５３】
ユーザは、図１１に示す画面を確認しながら、レイアウト位置を変更したい画像１０３をドラッグ  アンド  ドロップして、好みの位置に移動させることができる。このような移動は、例えば、１−２ページ目の見開きが表示されている拡大画像レイアウト１０２の中で、１ページ目に配置された画像１０３をドラッグして別のスロット（配置領域）へ移動させ、そのスロット上で画像１０３をドロップすることで可能となる。また、上段のサムネイル一覧に表示されている他の見開きページへ移動することもできる。例えば、５−６ページ目の見開きに移動させたい場合、１ページ目に配置された画像１０３をドラッグしたまま、サムネイル一覧の５−６ページ目の見開きに対応するサムネイルへ移動させる。そして、画像１０３の少なくとも一部をドラッグしたまま５−６ページ目の見開きに対応するサムネイルに重ねることにより、下段の拡大画像レイアウト１０２の表示が１−２ページ目の見開きから５−６ページ目の見開きに変わる。この状態で、ドラッグ中の画像１０３を拡大画像レイアウト１０２に表示された５−６ページ目の所望のスロットへ移動させ、画像１０３の少なくとも一部をそのスロットへ重ねることにより、そのスロットに画像１０３が配置される。本実施形態では、このように操作することで、レイアウト後の画像を移動させることが可能となる。
【００５４】
更に、本実施形態では、ページ単位で移動させることもできる。ページ単位の移動は、上段に示されているサムネイル一覧において、任意の見開きページに対応するサムネイルを、サムネイル一覧の他の位置に移動させることで可能となる。具体的には、例えば、１−２ページ目の見開きに対応するサムネイルをドラッグして３−４ページ目の見開きに対応するサムネイルと５−６ページ目の見開きに対応するサムネイルとの間にドラッグ＆ドロップ操作する。この操作により、元々１−２ページ目に相当していた見開きは、新たに３−４ページ目の見開きとすることができる。同一ページに含まれる画像は何らかの要素を共有することも多く、サムネイルで確認しながらページ単位での移動が行えることは、ページ内のコンセプトを維持しながらアルバム全体を構成する上で、ユーザにとって利便性の高い用途である。そして、ＣＰＵ１１は、このような画像単位の移動やページ単位の移動が行われる度に、図７や図９で示したスロットＩＤと画像ＩＤの対応関係を更新し、移動後の最新レイアウトを画面上に表示する。なお、上述の例では、２ページ分の見開き単位で表示及びページ順の入れ替え操作が行われているが、１ページずつ表示及び入れ替え操作が行われてもよい。
【００５５】
以上のような確認および編集作業が終わり、アルバムの最終レイアウトを確認すると、ユーザは画面右下の注文ボタン１０６をクリックする。ユーザからの注文コマンドを受けると、ＣＰＵ１１はステップＳ２０５に進み、ステップＳ２０４の前後で画像レイアウトに変更が生じたか否かを判断する。
【００５６】
ステップＳ２０５でレイアウト変更があると判断した場合、ＣＰＵ１１はステップＳ２０６に進み、日時情報の書き換えを行う。具体的には、信頼性が「ｆａｌｓｅ」である画像の移動が行われた場合、その画像の日時情報を、移動後の位置の前後にある信頼性が「ｔｒｕｅ」である画像の撮影日時に基づいて更新する。例えば、上述したとおり、元々１−２ページ目に相当していた見開きを、３−４ページ目の見開きと５−６ページ目の見開きとの間に挿入した場合を想定する。この場合、新たに３−４ページ目となった見開き（旧１−２ページ目）の画像の日時情報を、新たに１−２ページ目となった見開き（旧３−４ページ目の見開き）の画像の日時情報と５−６ページ目の見開きの画像の日時情報との間の日時情報となるように変更する。本工程で日時情報を更新しておくことにより、次に新たなフォトアルバムを作成しようとしたとき、更新された順番で画像をレイアウトすることができる。
【００５７】
なお、ステップＳ２０４では、信頼性が「ｔｒｕｅ」である画像についても、ユーザの好みによる移動を許容しているため、ステップＳ２０６における撮影日時情報の更新は、信頼性が「ｆａｌｓｅ」である画像データについてのみ行うことが好ましい。
【００５８】
ステップＳ２０６で撮影日時情報を更新すると、ＣＰＵ１１はステップＳ２０７に進む。一方、ステップＳ２０５でステップＳ２０４の前後で画像レイアウトに変更がないと判断した場合も、ＣＰＵはそのままステップＳ２０７に進む。そして、ステップＳ２０７において、ＣＰＵ１１は、現時点のアルバムデータを、ネットワーク６０を介してアルバム作成業者の外部サーバ７０に送信する。また、情報処理装置１０に直接接続されているプリンタＡで出力する場合は、プリンタＡにプリントコマンドを送信する。以上で本処理は終了する。
【００５９】
ところで、以上では、信頼性が「ｆａｌｓｅ」である画像が基本的に少ない場合を前提に説明してきたが、ステップＳ３０２で指定されたフォルダに含まれる画像ファイルの殆どの撮影日時が不明瞭である場合も考えられる。そして、このような場合は、ステップＳ２０１で画像レイアウトシーケンスを行っても、結局ステップＳ２０４において、ユーザによって大きく修正されてしまうことも想定できる。
【００６０】
このような状況を考慮し、例えばステップＳ３０３で作成した図５に示すリストにおいて、信頼性が「ｆａｌｓｅ」である画像データが所定数以上存在する場合は、その時点で撮影日時の順番をユーザに確認してもらう工程を設けるようにしても良い。具体的には、ステップＳ３０３とステップＳ３０４の間に、特許文献２で開示されている工程を導入しても良い。確認すべき画像の数が多い場合、１列にリスト化された状態での並び替え作業のほうが、図１１のようにグループ分けやレイアウト作業が行われた後での並び替え作業よりも、ユーザの負担を小さく抑えることができる。
【００６１】
以上説明した本発明によれば、ユーザにとって優先度の高い画像データを選出しながらも、これらをユーザの手をなるべく煩わせることなく撮影日時順にレイアウトしたフォトアルバムを自動で作成することができる。
（その他の実施形態）
上述の実施形態では、写真をレイアウトして複数のページからなるフォトアルバムを生成する例を説明したが、本発明はこれに限定されない。例えば、複数の画像をレイアウトして１枚のはがきやパンフレット等のデータを生成してもよい。
【００６２】
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６３】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。また、コンピュータが読み出したプログラムを実行することにより、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ（ＯＳ）などが処理の一部または全部を行い、前述した実施例が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれてもよい。そしてその後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれることは言うまでもない。
【符号の説明】
【００６４】
１０    情報処理装置
１１    ＣＰＵ
２０    記憶装置
【図１】
2019067237.tif 000003
【図２】
2019067237.tif 000004
【図３】
2019067237.tif 000005
【図４】
2019067237.tif 000006
【図５】
2019067237.tif 000007
【図６】
2019067237.tif 000008
【図７】
2019067237.tif 000009
【図８】
2019067237.tif 000010
【図９】
2019067237.tif 000011
【図１０】
2019067237.tif 000012
【図１１】
2019067237.tif 000013