(57)【特許請求の範囲】
【請求項１】
複数の画像データを取得する画像データ取得手段と、
前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当手段と、
前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力手段と、を含み、
前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、
ことを特徴とする画像編集装置。
【請求項２】
前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数の条件を満たす前記割り当てを決定する、
ことを特徴とする請求項１に記載の画像編集装置。
【請求項３】
前記ページ数の条件の数のページに割り当てられる画像の数のとりうる組み合わせのうち、前記ページのそれぞれに割り当てられる画像の数が前記各ページに割当てられる画像データの最大数以下となり、かつ隣り合うページに割り当てられる画像データの数の和が前記最大数より大きくなる条件を満たす組み合わせを構成する各ページの画像データの数の和の最小値を計算する画像データ数計算手段、をさらに含み、
前記画像データ取得手段は、前記計算された数の画像データを取得する、
ことを特徴とする請求項２に記載の画像編集装置。
【請求項４】
前記画像データ数計算手段は、前記各ページに割当てられる画像データの最大数をＩｍ、前記複数のページのページ数をＰとして、（Ｉｍ＋１）×Ｐ／２を前記各ページの画像データの数の和の最小値として計算する、
ことを特徴とする請求項３に記載の画像編集装置。
【請求項５】
前記ページ割当手段は、
新たな前記所与の時刻基準間隔を決定する時刻基準間隔決定部と、
前記決定された所与の時刻基準間隔と前記各画像データの撮影時刻とに基づいて、前記複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となりかつ前記各ページに割当てられる画像データの数が前記最大数の条件以下となるように前記複数のページのそれぞれに対して前記複数の画像データを割り当てる仮割当手段と、
前記仮割当手段による割り当てによるページ数が前記ページ数の条件を満たす場合に、前記仮割当手段による前記各ページへの画像データの割り当てを前記複数のページに対する画像データの割り当てとして決定する割当条件判定手段と、
を含む、
ことを特徴とする請求項１から３のいずれかに記載の画像編集装置。
【請求項６】
複数の画像データを取得する画像データ取得手段、
前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当手段、および、
前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力手段、としてコンピュータを機能させるためのプログラムであって、
前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、
ことを特徴とするプログラム。
【請求項７】
複数の画像データを取得する画像データ取得ステップと、
前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当ステップと、
前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力ステップと、を含み、
前記ページ割当ステップは、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、
を含むことを特徴とする画像編集方法。
【請求項８】
複数の画像データを取得する画像データ取得手段、
前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当手段、および、
前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力手段、としてコンピュータを機能させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、
ことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像編集装置、画像編集方法、プログラムおよびコンピュータ読み取り可能な記憶媒体に関する。
【背景技術】
【０００２】
近年、デジカメの普及により、写真等の画像データを大量に取得することが容易になったが、例えば閲覧などのためにそれらの画像データを人手でグループに分けることは面倒である。そのため、特許文献１に示す、複数の画像を、画像の撮影時刻の間隔が閾値以上か否かでグループ分けする技術のように、コンピュータを用いて画像データを複数のグループに分ける技術が開発されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−２２２３８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年はユーザが自らの手で、複数のページからなるアルバム（フォトブックともいう）のレイアウトを電子的に編集することが増えている。アルバムのように複数のページのそれぞれに画像を割付けた編集物では、通常は、各ページに割付けられる画像は互いに関連性が強くなるように編集されている。また、アルバム等の編集物の作成の際には、例えば１つのページに割付ける画像の数が多いと一つ一つの画像が見づらくなるし、ページの数が多くなると印刷や製本をする際のコストが上昇するなどといった様々な編集上の制約が存在する。
【０００５】
電子的に編集する際には、ユーザは、そういった編集上の制約を考慮して、各ページに１つ１つの画像を割付ける作業をしなければならなかった。
【０００６】
本発明は上記課題を鑑みてなされたものであって、その目的は、アルバムのような編集物を構成する複数のページに、編集上の制約を満たすように、画像を容易に割付けることのできる画像編集装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明にかかる画像編集装置は、複数の画像データを取得する画像データ取得手段と、前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当手段と、前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力手段と、を含み、前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、ことを特徴とする。
【０００８】
また、本発明にかかるプログラムは、複数の画像データを取得する画像データ取得手段、前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当手段、および、前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力手段、としてコンピュータを機能させ、前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、ことを特徴とする。
【０００９】
また、本発明にかかる画像編集方法は、複数の画像データを取得する画像データ取得ステップと、前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当ステップと、前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力ステップと、を含み、前記ページ割当ステップは、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、ことを特徴とする。
【００１０】
また、本発明にかかるコンピュータ読み取り可能な記憶媒体は、複数の画像データを取得する画像データ取得手段、前記複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、編集物を構成する複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となるように、前記各ページに対する画像データの割り当て内容を決定するページ割当手段、および、前記決定された割り当て内容に基づいて、複数のページのそれぞれの画像出力データを出力するページ画像出力手段、としてコンピュータを機能させるためのプログラムを記憶し、前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数のうち少なくとも一方の条件を満たす前記割り当てを決定する、ことを特徴とする。
【００１１】
本発明によれば、アルバムのような編集物を構成する複数のページに、編集上の制約を満たすように、画像を容易に割り付けることができる。
【００１２】
本発明の一態様では、前記ページ割当手段は、前記所与の時刻基準間隔を変更することにより、前記各ページに割当てられる画像データの最大数および前記複数のページのページ数の条件を満たす前記割り当てを決定してもよい。
【００１３】
本発明の一態様では、本発明にかかる画像編集装置は、前記ページ数の条件の数のページに割り当てられる画像の数のとりうる組み合わせのうち、前記ページのそれぞれに割り当てられる画像の数が前記各ページに割当てられる画像データの最大数以下となり、かつ隣り合うページに割り当てられる画像データの数の和が前記最大数より大きくなる条件を満たす組み合わせを構成する各ページの画像データの数の和の最小値を計算する画像データ数計算手段、をさらに含み、前記画像データ取得手段は、前記計算された数の画像データを取得してもよい。
【００１４】
本発明の一態様では、前記画像データ数計算手段は、前記各ページに割当てられる画像データの最大数をＩｍ、前記複数のページのページ数をＰとして、（Ｉｍ＋１）×Ｐ／２を前記各ページの画像データの数の和の最小値として計算してもよい。
【００１５】
本発明の一態様では、前記ページ割当手段は、新たな前記所与の時刻基準間隔を決定する時刻基準間隔決定部と、前記決定された所与の時刻基準間隔と前記各画像データの撮影時刻とに基づいて、前記複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が前記時刻基準間隔以下となりかつ前記各ページに割当てられる画像データの数が前記最大数の条件以下となるように前記複数のページのそれぞれに対して前記複数の画像データを割り当てる仮割当手段と、前記仮割当手段による割り当てによるページ数が前記ページ数の条件を満たす場合に、前記仮割当手段による前記各ページへの画像データの割り当てを前記複数のページに対する画像データの割り当てとして決定する割当条件判定手段と、を含んでよい。
【図面の簡単な説明】
【００１６】
【図１】第１の実施形態にかかるフォトブック編集システムの構成の一例を示す図である。
【図２】画像編集サーバの構成の一例を示す図である。
【図３】第１の実施形態にかかる画像編集サーバが実現する機能を示す機能ブロック図である。
【図４】第１の実施形態にかかる画像数決定部、画像データ取得部およびページ割当部の処理フローの一例を示す図である。
【図５】ページ最大画像数とページ数とを選択する画面の一例を示す図である。
【図６】フォトブックに用いる画像を示す画面の一例を示す図である。
【図７】各画像データの撮影時刻の分布の一例を示す図である。
【図８】図３に示すページ割当部の機能構成を示す機能ブロック図である。
【図９】図７に示す画像データに仮の割り当てを繰り返す過程の一例を示す図である。
【図１０】各ページに割り振られる画像データの数の分布の一例を示す図である。
【図１１】画像が割り付けられたページの画像の一例を示す図である。
【図１２】第２の実施形態にかかる画像編集サーバが実現する機能を示す機能ブロック図である。
【図１３】第２の実施形態にかかる画像データ取得部およびページ割当部の処理フローの一例を示す図である。
【図１４】図１２に示すページ割当部の機能構成を示す機能ブロック図である。
【図１５】ページ数の条件が与えられた場合の処理経過の一例を示す図である。
【図１６】ページ最大画像数の条件が与えられた場合の処理過程の一例を示す図である。
【発明を実施するための形態】
【００１７】
以下では、本発明の実施形態について図面に基づいて説明する。出現する構成要素のうち同一機能を有するものには同じ符号を付し、その説明を省略する。以下では、フォトブック編集システムを、ページの画像を示す画像出力データを出力する画像編集装置（画像編集サーバ）を含むシステムの例として説明する。
【００１８】
［第１の実施形態］
図１は本発明の第１の実施形態にかかるフォトブック編集システムの構成の一例を示す図である。フォトブック編集システムは、画像編集サーバ１と、クライアント装置２とを含む。画像編集サーバ１は、例えばウェブサーバプログラムが動作するサーバハードウェアであり、クライアント装置２は、例えばウェブブラウザのプログラムが動作するパーソナルコンピュータである。画像編集サーバ１とクライアント装置２とは、インターネットなどのネットワークを介して通信している。また、画像編集サーバ１は、印刷システム３に、フォトブックの各ページのページ画像を示す画像出力データをネットワークを介して出力している。
【００１９】
フォトブック編集システムを用いてフォトブックを編集する際の概要について以下に説明する。はじめに、画像編集サーバ１は、クライアント装置２に表示されるＷｅｂページやそのページに対するユーザからの入力を用いて、ページに割付けるべき画像の画像データやページ割付の条件となる情報を取得する。次に、画像編集サーバ１は、フォトブックの各ページに画像データを割付けたものを、クライアント装置２を介してユーザに提示する。ユーザは必要であれば、画像編集サーバ１を用いて提示された画像の配置や割り付けを修正する。次に画像編集サーバ１はそれらのページの画像出力データを印刷システム３に出力する。印刷システム３はフォトブックを印刷し、クライアント装置２を操作するユーザなどにその印刷されたフォトブックを送付する。
【００２０】
図２は、第１の実施形態にかかる画像編集サーバ１の構成の一例を示す図である。画像編集サーバ１は、ＣＰＵ１１、記憶部１２、通信部１３および入出力部１４を含む。
【００２１】
ＣＰＵ１１は、記憶部１２に格納されているプログラムに従って動作する。またＣＰＵ１１は通信部１３や入出力部１４を制御する。なお、上記プログラムは、インターネット等のネットワークを介して提供されるものであってもよいし、ＤＶＤ−ＲＯＭやＵＳＢメモリ等のコンピュータで読み取り可能な情報記録媒体に格納されて提供されるものであってもよい。
【００２２】
記憶部１２は、ＲＡＭやＲＯＭ等のメモリ素子やハードディスクドライブ等によって構成されている。記憶部１２は、上記プログラムを格納する。また、記憶部１２は、各部から入力される情報や演算結果を格納する。
【００２３】
通信部１３は、ネットワークカードのように、クライアント装置２や印刷システム３等の他の装置と通信接続するための通信手段等で構成されている。通信部１３は、ＣＰＵ１１の制御に基づいて、他の装置から受信した情報をＣＰＵ１１や記憶部１２に入力し、他の装置に情報を送信する。
【００２４】
入出力部１４は、モニタ等の表示出力デバイスを制御する手段や、マウス等の入力デバイスを制御する手段などによって構成されている。入出力部１４は、ＣＰＵ１１の制御に基づいて、画像データ等を表示出力デバイスに対して出力し、入力デバイスより入力される情報を取得する。
【００２５】
図３は、第１の実施形態にかかる画像編集サーバ１が実現する機能を示す機能ブロック図である。画像編集サーバ１は、機能的に、画像数決定部４１、画像データ取得部４２、ページ割当部４３およびページ画像出力部４４を含む。これらの機能は、ＣＰＵ１１が記憶部１２に格納されたプログラムを実行し、通信部１３や入出力部１４を制御することで実現される。
【００２６】
以下では、画像数決定部４１、画像データ取得部４２、およびページ割当部４３の機能を、処理フローに従って説明する。図４は、第１の実施形態にかかる画像数決定部４１、画像データ取得部４２およびページ割当部４３の処理フローの一例を示す図である。
【００２７】
画像数決定部４１は、主にＣＰＵ１１、記憶部１２および通信部１３により実現される。画像数決定部４１は、フォトブックのページ数およびフォトブックの各ページに割付ける画像の最大数の条件に基づいて、ページ割当部４３がフォトブックを構成する複数のページに割り当て可能な画像データの数を計算する。なお、１つの画像データは写真などの１つの画像を示すデータであり、各ページに割付ける画像の最大数は、各ページに割当てる画像データの最大数と等価である。これから説明する例では、ページによって割付ける画像の最大数は変わらないものとし、その数をページ最大画像数と呼ぶ。以下では、画像数決定部４１の処理についてより詳細に説明する。
【００２８】
画像数決定部４１は、はじめに、通信部１３を介してクライアント装置２からページ最大画像数と、ページ数とを取得する（ステップＳ１０１）。図５は、ページ最大画像数とページ数とを選択する画面の一例を示す図である。図５に示す例では、画像数決定部４１は、対話的に、ページ数とページ最大画像数とを取得する。ページ数は、クライアント装置２を操作するユーザが、「ページ追加」ボタンや、「ページ削除」ボタンを押下することにより増減し、ページ最大画像数は、またユーザがプルダウンメニューを選択することにより入力する。そして、ユーザが「決定」ボタンを押下すると、画像数決定部４１は、そのページ画像最大数やページ数の条件の情報を取得する。
【００２９】
画像数決定部４１は、次に、ページ割当部４３が、入力された条件を満たしつつ必ず割付けできる画像の数（割付可能数）を計算する（ステップＳ１０２）。図６は、フォトブックに用いる画像を示す画面の一例を示す図である。画像数決定部４１は、計算された数に基づいて、割付に用いる画像を示す画面をクライアント装置２に表示させる。図６において、小さな矩形は写真の画像を示しており、右下部分に丸が付いている小さな矩形は、割付に用いる画像を示している。図５および図６の例では、ページ最大画像数が４、ページ数が６で、割付可能数は１５となる。図６の画面の例では、割付可能数の画像データのみを割り付けに用いるので、割付可能数と同じ数の画像の右下部分に丸がついている。この画面でユーザが「ＯＫ」ボタンを押下すればステップＳ１０３以降の処理に移る。ここで、この計算される割付可能数は、ページ割当部４３のアルゴリズムに応じて定まる。よって、計算方法の詳細についてはページ割当部４３のアルゴリズムを説明した後に述べる。なお、説明の容易のため処理フローには記載していないが、ユーザが「ページ条件変更」ボタンを押下すると図５の画面に戻り、ステップＳ１０２の処理から繰り返す。このようにしてユーザはフォトブックの各ページへの割り付け対象になる画像を対話的に確認しながらページ数やページ最大画像数を入力する。さらにユーザの入力の便宜を図るために、図５と図６に示す画面を１つにまとめてもよい。なお、割り付けに用いる画像は、図５の画面で操作をする前のタイミングか、あるいは図６の画面において「写真アップロード」ボタンを押下するタイミングでクライアント装置２からアップロードされ、記憶部１２に記憶される。なお、予め画像がアップロードされて記憶部１２に記憶されており、クライアント装置２によってこれらの画像に対してアクセスして図６に示す画面を生成するようにしてもよい。
【００３０】
画像データ取得部４２は、ＣＰＵ１１および記憶部１２を中心として実現される。画像データ取得部４２は、計算された割付可能数の画像データを記憶部１２から取得する（ステップＳ１０３）。
【００３１】
図７は、各画像データの撮影時刻の分布の一例を示す図である。図７では、時間軸に垂直に交わる線が画像データに対応し、その線の時間軸上の位置は、その画像データの撮影時刻を示している。ここでは、画像データはあらかじめ撮影時刻の昇順にソートされており、順序付けられているものとする。なお、後述のページ割当部４３にてソートを行ってもよい。
【００３２】
ページ割当部４３は、ＣＰＵ１１および記憶部１２を中心として実現される。ページ割当部４３は、複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、それらのページのそれぞれに割り当てられる画像データの撮影時刻の間隔が時刻基準間隔以下となるように、それらのページに対する画像データの割り当てを決定する。また、ページ割当部４３は、その所与の時刻基準間隔を変更することにより、ページ数および各ページに割当てられる画像データの最大数（ページ最大画像数）のうち少なくとも一部の条件を満たす前記割り当てを決定する。以下では、ページ割当部４３がページ数とページ最大画像数との条件を満たす割り当てを決定する場合について説明する。
【００３３】
図８は、ページ割当部４３の機能構成を示す機能ブロック図である。ページ割当部４３は、機能的に、時刻基準間隔決定部５１と、仮割当部５２と、割当条件判定部５３とを含む。時刻基準間隔決定部５１は、新たな所与の時刻基準間隔を決定する。仮割当部５２は、決定された所与の時刻基準間隔と各画像データの撮影時刻とに基づいて、複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が時刻基準間隔以下となりかつ各ページに割当てられる画像データの数が最大数の条件以下となるように複数のページのそれぞれに対して複数の画像データを仮割り当てとして割当てる。割当条件判定部５３は、仮割当部５２により割り当てられたページのページ数がページ数の条件を満たす場合に、仮割当部５２による仮の割り当てを前記複数のページに対する画像データの割り当てとして決定する。
【００３４】
より具体的な処理について以下に説明する。はじめに、仮割当部５２は、ページに画像データを割り付ける処理の初期化のため、仮の割り当てとして、１つのページに１つの画像データを割り当てる（ステップＳ１０４）。すると、仮の割り当てにおけるページの数は、画像データの数となる。ここで、頭のページから番号をふった場合の番号（ページの順位）は、割り当てられる画像データの番号と等しくなる。
【００３５】
次に、時刻基準間隔決定部５１は、ページ最大画像数と各ページに割り当てられる画像データの撮影時刻とに基づいて、処理を繰り返すごとにその値が単調増加するように時刻基準間隔を決定する（ステップＳ１０５）。初回は、最小の時刻基準間隔として、隣り合う画像データの撮影時刻の間隔のうち、最も小さいものを時刻基準間隔として決定する。２回目以降は、以下の条件を満たす隣り合う２ページの時刻間隔のうち最も小さいものを時刻基準間隔として決定する。その条件とは、隣り合うページに割り当てられている画像数の和がページ最大画像数以下である条件である。この条件を満たすと、隣り合うページの時刻間隔は前回決定された時刻基準間隔より大きいかまたは同じとなる。ここで、隣り合う２ページの時刻間隔は、そのページに含まれる画像データの撮影時刻により計算される。例えば、一方のページに含まれる画像データのうち最も撮影時刻が早いものと他方に含まれるページに含まれる画像データのうち最も撮影時刻が早いものとの撮影時刻の差をその２ページの時刻間隔としてよい。また、一方のページに含まれる画像データと他方のページに含まれる画像データとの間の撮影時刻の差の中で最も小さいものをその２ページの時刻間隔としてもよい。なお、基準時刻間隔を決定する際に、必ずしもその時刻間隔そのものをデータとして取得する必要はない。その基準時刻間隔に対応する隣り合うページを選択することも、その隣り合う２つのページの時刻間隔を決定することになる。
【００３６】
そして、時刻基準間隔決定部５１は、時刻基準間隔を決定できたか判定する（ステップＳ１０６）。もし既に時刻基準間隔が十分に大きく新たなものが決定できなければ（ステップＳ１０６のＮ）、ステップＳ１０９以降で割り当てに関する終了の処理を行う。
【００３７】
基準時刻間隔を決定できた場合は（ステップＳ１０６のＹ）、仮割当部５２は、その時刻基準間隔の間隔を有する２つのページに含まれる画像を１つのページにまとめる（ステップＳ１０７）。もちろん、ページをまとめる際に、各ページの順位を示す情報（例えばページの情報のリンクドリスト）はそのまとめたことを反映するよう書き換えられる。時刻基準間隔決定部５１での処理でページ最大画像数の条件を満たす２ぺージを実質的に指定しているため、仮割当部５２は、ステップＳ１０７の時点で、ページ画像最大数の条件を満たすようにページへの仮の割り当てをしている。またまとめられたページの中で隣り合う画像データの撮影時刻を考えると、撮影時刻順で見て新たに隣り合うことになった画像データの撮影時刻の間隔は、上記のまとめられる２つのページの時刻間隔以下となる。よって、仮割当部５２のステップＳ１０７の処理の時点の仮の割り当てにおいては、各ページに割り当てられる画像データのうち最も撮影時刻が近い（撮影時刻順で隣り合う）画像データ同士の時刻間隔は、必ず基準時刻間隔以下となる。
【００３８】
次に割当条件判定部５３は、ステップＳ１０７の処理の結果の仮の割り当てにおけるページ数が、ステップＳ１０１で取得されたページ数の条件を満たすかを判定し（ステップＳ１０８）、その条件を満たさなければ（ステップＳ１０８のＮ）、ステップＳ１０５の処理から次のループを繰り返す。ページ数の条件を満たす場合（ステップＳ１０８のＹ）、割当条件判定部５３は、各ページに対する仮の割り当ての情報を正式な各ページに対する画像データの割り当てとして決定し、その内容を記憶部１２に出力する（ステップＳ１０９）。
【００３９】
図９は、図７に示す画像データに仮の割り当てを繰り返す過程の一例を示す図である。ここでは、ページ最大画像数が３、ページ数が４であるとして処理過程の例を説明する。図９の１点鎖線の囲みは１つのページを示し、その囲みの中にある時間軸に垂直な線は、ページに割り付けられる画像データを示す。図７に示す画像データの撮影時刻の間隔をみると、１番目と２番目の画像データの撮影時刻の間隔ｔ１が最も小さく、次に３番目と４番目の画像データの撮影時刻の間隔ｔ３、７番目と８番目の画像データの撮影時刻の間隔ｔ７の順に間隔が長くなる。１回目のループでは、ページ割当部４３の処理により最も時刻間隔の短い１番目の画像データと２番目の画像データとがそれぞれ割り当てられるページが１つにまとまる（図９の上段）。この段階ではページ数が４より大きいので、次のループの処理が続けられる。同様にして、次に３番目の画像データと４番目の画像データとがページがまとまることにより１つのページに割り付けられ、その次に７番目と８番目の画像データが１つのページに割り付けられる（図９の中段）。次に、隣り合うページ間の時間間隔が最も小さいのは１番目のページと２番目のページの時間間隔ｔ１２となるが、これらのページに割り付けられる画像データの数の和が４となりページ最大画像数である３を超えるため、次に短いページ間の時刻間隔である時刻間隔ｔ４５が生じる４番目のページと５番目のページとがまとまる（図９の下段）。この結果、ページの数が４となり、ループが終了し、図９の下段に示すページへの画像データの割り当てが正式な割当てとなる。一旦、複数の画像データを１つにまとめる（グルーピングする）と、まとめられたグループの画像データは分離することはない。
【００４０】
ここで、図９の処理過程から想像できるように、ステップＳ１０２の処理を考慮しないと、画像データの撮影時刻の分布によっては割付処理の対象となる画像の数が同じであっても、十分にページをまとめることができず、ページ数などの条件を満たすように割当てられない場合が生じうる。このような場合、具体的には有効な時刻基準間隔を新たに決定することが難しくなり、ステップＳ１０６の判定によりページ数の条件を満たさないのに割り当てが決定されてしまうことになる。
【００４１】
この問題を生じさせないため、画像数決定部４１は、取得されるべき画像データの撮影時刻の分布がどのようになっていても、ページ割当部４３がページ最大画像数の条件を満たしつつ、かつ確実にページ数の条件の数のページに割り当てる画像データの最大数を計算する。図１０は、各ページに割り振られる画像データの数の一例を示す図である。本図では、最も少ない画像を各ページに割り当てた場合の例であり、ページ最大画像数が４の場合である。本図をみればわかるように、ページ割当部４３の処理のアルゴリズムでは、隣り合うページに割り当てられる画像数の和がページ最大画像数（図１０の例では４）を１つでも超えると割り当てがされない。このことから画像数決定部４１は、その画像データの数（割付可能数）Ｗを、以下の式で計算する。
【００４２】
Ｗ＝（Ｉｍ＋１）×Ｐ／２
【００４３】
ここで、Ｉｍはページ最大画像数、Ｐはページ数を示す。なお、この式は、ページ数が２の倍数であるという前提の式である。例えば見開き印刷をするフォトブックであれば、ページ数が２の倍数になるので、この式を用いて問題ない。また奇数のページ数の場合に適用できるようにこの式を拡張してもよい。なお、ページ割当部４３がページ最大画像数の条件を満たしつつ、かつ確実にページ数の条件の数のページに割り当てる画像データの最大数は、見方を変えれば、画像データの撮影時刻にかかわらず、ページ割当部４３がページ最大画像数の条件を満たしつつ、かつページ数の条件の数のページに割り当てられない画像データが生じない画像データの数でもある。
【００４４】
なお、画像数決定部４１を用いて画像データ取得部４２で取得する画像の数を制限する代わりに、ページ数の条件を満たすように画像データの割り当てができなかった場合に、別の方法を用いてページ数の条件を満たすようにページ数を削減する処理を行う機能（ページ数削減部）を追加してもよい。ページ数削減部では、具体的には、上述の場合にステップＳ１０９で出力される各ページに対する割り当てに基づいて、隣り合わない２つのページの間で、それらが含む画像データの数の和がページ画像最大数以下となる組み合わせを抽出し、それらを結合するとよい。また、より確実にページ数を削減するために、割当てられた画像データの数がページ最大画像数より小さいものの中で、そのページに割り当てられかつ隣り合う画像の時刻間隔の平均が最大のページを選択し、そのページを複数のページに分割した後に、上述の隣り合わない２つのページのうちまとめられる組合せを抽出し結合してもよい。
【００４５】
ページ画像出力部４４は、ＣＰＵ１１、記憶部１２、および通信部１３を中心として実現される。ページ画像出力部４４は、ページ割当部４３の割り当ての結果に基づいて、複数のページのそれぞれの画像出力データを出力する。記憶部１２には、予め、割り付けられる画像の数ごとに、割り付けられる画像の位置や大きさと背景の絵とからなるページレイアウトを示すレイアウト情報が１または複数格納されている。ページ画像出力部４４は、各ページに割り当てられる画像の数に対応して準備されるレイアウト情報のうち１つを記憶部１２から取得し、そのレイアウト情報が示す画像の配置に応じてそのページに割り当てられた画像データが示す画像をレイアウトに割り付けてページの画像を生成する。その生成された各ページの画像の画像出力データをクライアント装置２に向けて出力しクライアント装置２の画面にその各ページの画像を表示させる。またその各ページの割付を変更する必要がなければ、印刷用の画像出力データを印刷システム３に向けて送信する。図１１は、画像が割り付けられたページの画像の一例を示す図である。番号の付された矩形のものは割り付けられた写真などの画像を示し、その番号は撮影時刻順でみたその画像の番号を示す。
【００４６】
なお、ユーザは、表示された各ページに対する画像の割付けを対話的に修正してもよい。ページ割当部４３等の処理により撮影時刻が近く、関連性が強い蓋然性の高い画像どうしは同じページになり、かつページ最大画像数なども考慮されているので、ユーザが割り付けを修正する場合でも、その操作量は１から割り付けるより小さくなることが期待できる。
【００４７】
［第２の実施形態］
以下では本発明の第２の実施形態について、第１の実施形態との相違点を中心に説明する。第２の実施形態においては、フォトブック編集システムが画像編集サーバ１とクライアント装置２とを有する点、また、画像編集サーバ１のハードウェア構成は第１の実施形態と同じである。
【００４８】
図１２は、第２の実施形態にかかる画像編集サーバ１が実現する機能を示す機能ブロック図である。画像編集サーバ１は、機能的に、画像データ取得部６１と、ページ割当部６２と、ページ画像出力部６３とを有する。これらの機能は、ＣＰＵ１１が記憶部１２に格納されたプログラムを実行し、通信部１３や入出力部１４を制御することで実現される。
【００４９】
以下では、画像データ取得部６１、およびページ割当部６２の機能を、処理フローに従って説明する。図１３は、第１の実施形態にかかる画像データ取得部６１およびページ割当部６２の処理フローの一例を示す図である。
【００５０】
画像データ取得部６１は、ＣＰＵ１１、記憶部１２および通信部１３を中心として実現される。画像データ取得部６１は、複数の画像データを取得する（ステップＳ２０１）。画像データ取得部６１は、例えばクライアント装置２およびネットワークを介してユーザが事前にアップロードし、ユーザがフォトブックの作成に用いると決定した複数の画像データを記憶部１２等から取得する。
【００５１】
ページ割当部６２は、ＣＰＵ１１および記憶部１２を中心として実現される。ページ割当部６２は、複数の画像データのそれぞれの撮影時刻および所与の時刻基準間隔に従って、それらのページのそれぞれに割り当てられる画像データの撮影時刻の間隔が時刻基準間隔以下となるように、それらのページに対する画像データの割り当てを決定する。また、ページ割当部６２は、その所与の時刻基準間隔を変更することにより、ページ数および各ページに割当てられる画像データの最大数（ページ最大画像数）のうち少なくとも一部の条件を満たす前記割り当てを決定する。
【００５２】
図１４は、ページ割当部６２の機能構成を示す機能ブロック図である。ページ割当部６２は、機能的に、時刻基準間隔決定部７１と、仮割当部７２と、割当条件判定部７３とを含む。時刻基準間隔決定部７１は、新たな所与の時刻基準間隔を決定する。仮割当部７２は、決定された所与の時刻基準間隔と各画像データの撮影時刻とに基づいて、複数のページのそれぞれに割り当てられる画像データの撮影時刻の間隔が時刻基準間隔以下となりかつ各ページに割当てられる画像データの数が最大数の条件以下となるように複数のページのそれぞれに対して複数の画像データを仮割り当てとして割当てる。割当条件判定部７３は、仮割当部７２により割り当てられたページのページ数がページ数の条件を満たす場合に、仮割当部７２による仮の割り当てを前記複数のページに対する画像データの割り当てとして決定する。
【００５３】
より具体的な処理について以下に説明する。はじめに、ページ割当部６２は、ページ最大画像数またはページ数の条件を取得する（ステップＳ２０２）。例えば、ページ割当部６２は図５に示すような画面を用いてこれらの条件を取得すればよい。
【００５４】
次に、時刻基準間隔決定部７１は、時刻基準間隔の初期値を設定する（ステップＳ２０３）。ここで、時刻基準間隔の初期値は、ページ数の条件を用いる場合は、画像データの撮影時刻の最小単位（例えば１秒など）であってもよいし、隣り合う画像データの撮影時刻の間隔の最小値であってもよい。また、ページ最大画像数の条件を用いる場合は、隣り合う画像データの撮影時刻の間隔の最大値であってよい。
【００５５】
次に、仮割当部７２は、隣り合う画像データの撮影時刻の間隔と時刻基準間隔との大小関係に基づいて画像データを仮の割り当てとしてページに割り当てる（ステップＳ２０４）より具体的には、ページのそれぞれに割り当てられる画像データについて、隣り合う画像データの撮影時刻の間隔が時刻基準間隔以下となり、かつ、互いに他のページに割り当てられかつ隣り合う画像データの撮影時刻の間隔が時刻基準間隔より大きくなるように画像データをページに仮に割当てる。
【００５６】
この仮の割り当ての処理は、例えば以下の手順で行われる。まず仮割当部７２は、１番目の画像データから順に次の順位の画像データとの撮影時刻の間隔が時刻基準間隔を超えるか否かを判定し、超える場合は、その２つの画像データの間にページ境界がある旨の情報を生成する。次に仮割当部７２は、すべての隣り合う画像データの間隔について上述のページ境界の判定を行った後に、１番目の画像データからはじめのページ境界の直前までの画像データを１番目のページに割り当て、ｋ番目（ｋは１以上ページ境界の数未満の整数）のページ境界の直後の画像データから（ｋ＋１）番目のページ境界の直前の画像データまでを（ｋ＋１）番目のページに割り当て、最後のページ境界の直後の画像データから最後の画像データまでを最後のページに割り当てる処理をする。この処理により、ステップＳ２０４の条件を満たす割り当てがされる。
【００５７】
次に、割当条件判定部７３は、ページに対する仮の割り当ての結果がステップＳ２０２で取得された条件を満たすか判定する（ステップＳ２０５）。取得された条件を満たさなければ（ステップＳ２０２のＮ）、時刻基準間隔決定部７１は、基準時刻間隔を変化させ（ステップＳ２０６）、ステップＳ２０４以降の処理を繰り返す。ここで、時刻基準間隔決定部７１は、ページ数を条件にする場合は基準時刻間隔を所定の時刻増加させればよいし、ページ最大画像数を条件にする場合は基準時刻間隔を所定の時刻減少させればよい。
【００５８】
取得された条件を満たす場合は（ステップＳ２０５のＹ）、割当条件判定部７３は割当条件判定部７３は、各ページに対する仮の割り当ての情報を正式な各ページに対する画像データの割り当てとして決定し、その内容を記憶部１２に出力する（ステップＳ２０７）。
【００５９】
図１５は、ページ数の条件が与えられた場合の処理経過の一例を示す図である。画像データの撮影時刻は図７に示すように分布しているとする。取得した画像の数は８、ページ数は４であるとする。この場合、１回目の仮の割り当てでは１番目と２番目の画像データが１つのページに割り当てられ、基準時刻間隔が２番目の画像データと３番目の画像データとの時刻間隔と同じか大きくなると、１から４番目の画像のページ、５番目の画像のページ、６番目の画像のページ、７番目と８番目の画像のページの計４つのページに画像データが割り当てられる。これにより、割当条件判定部７３は条件を満たしたと判定し、その割り当ての内容を記憶部１２に出力する。このように、ページ数の条件のみを与えることで、ユーザは希望するページ数の範囲内でフォトブックを作成することができる。これにより、フォトブックの金額を予算内で抑えると共に、希望する画像を全て掲載したフォトブックを作成できるようになる。
【００６０】
図１６は、ページ最大画像数の条件が与えられた場合の処理経過の一例を示す図である。画像データの撮影時刻は図７に示すように分布しているとする。取得した画像の数は８、ページ最大画像数は３であるとする。この場合、１回目の仮の割り当てでは１から５番目の５枚の画像データが１番目のページに、６から８番目の３枚の画像データが２番目のページにが割り当てられる。何度かループを繰り返すと、ページ最大画像数を超える画像データが割り当てられるページがなくなる。これにより、割当条件判定部７３は条件を満たしたと判定し、その割り当ての内容を記憶部１２に出力する。このように、ページ最大画像数の条件のみを与えることで、ユーザは希望する１ページあたりの画像掲載数の範囲内でフォトブックを作成することができる。これにより、画像のサイズを大きくできると共に、希望する画像を全て掲載したフォトブックを作成できるようになる。
【００６１】
なお、ページ最大画像数とページ数の条件の両方を与え、かつページに割り当てる画像データの数が変化してよいという前提で処理をしてもよい。この場合は、ステップＳ２０３からステップＳ２０６の処理は、ページ最大画像数の条件が与えられた場合と同じである。そして、ページ最大画像数の条件を満たす場合には、割当条件判定部７３、１番目から与えられたページ数までのページおよびそれらに割り当てられる画像データの情報を記憶部１２に出力する。
【００６２】
ページ画像出力部６３の処理は第１の実施形態におけるページ画像出力部４４と同様の処理であるので説明は省略する。
【００６３】
なお、ページ画像出力部６３の出力結果を用いて、反復的かつ対話的にアルバムに利用する画像データを変更してもよい。例えば、ステップＳ２０２でページ最大画像数とページ数の条件の両方を取得し、上述の方法で各ページに対して画像データを割り当てる。そして、フォトブックのページ数を割り当てられたページ数がオーバーする場合、言い換えればページ数の条件を満たさない場合には、そのオーバーしている旨をクライアント装置２を介してユーザに示す。その旨を確認したユーザは、画像データをフォトブックの作成に用いる対象から削除したり、既にページ数の条件が示す数のページに割り当てられた画像データを用いてフォトブックを作成することを決定したりすればよい。ユーザが画像データを削除する場合には、画像編集サーバ１は、再びステップＳ２０３からＳ２０７の処理を行い、新たに画像が割り付けられた各ページをユーザに提示する。この場合、必ずしもページ数は減少するとは限らず、ユーザの予想よりページが減少してしまうこともありうるが、これらの操作や処理を繰り返すことにより、フォトブックのページ数の条件やページ最大画像数の条件を満たすように各ページに画像を割り付けることが可能となる。
【００６４】
以上のように本発明の実施形態の例としてフォトブック編集システムを説明したが、本発明は上記の例に限られるものではない。例えば、各ページの画像のデータは、必ずしも印刷システム３に出力しなくてもよい。編集物はフォトブックのような物理的な物体とは限られず、電子的（仮想的）なページからなるものであってもよいからである。例えば、各ページの画像のデータは、デジタルフォトフレームやＰＣの画面に表示するためのデータであってもよい。また、割り当ての対象となる画像データは静止画の写真に限られず、動画や動画のサムネイル等をＤＶＤのメニュー画面等を作成するために用いてもよい。
【符号の説明】
【００６５】
１  画像編集サーバ、２  クライアント装置、３  印刷システム、１１  ＣＰＵ、１２  記憶部、１３  通信部、１４  入出力部、４１  画像数決定部、４２，６１  画像データ取得部、４３，６２  ページ割当部、４４，６３  ページ画像出力部、５１，７１  時刻基準間隔決定部、５２，７２  仮割当部、５３，７３  割当条件判定部。
【図１】
0005204283.tif 000002
【図２】
0005204283.tif 000003
【図３】
0005204283.tif 000004
【図４】
0005204283.tif 000005
【図５】
0005204283.tif 000006
【図６】
0005204283.tif 000007
【図７】
0005204283.tif 000008
【図８】
0005204283.tif 000009
【図９】
0005204283.tif 000010
【図１０】
0005204283.tif 000011
【図１１】
0005204283.tif 000012
【図１２】
0005204283.tif 000013
【図１３】
0005204283.tif 000014
【図１４】
0005204283.tif 000015
【図１５】
0005204283.tif 000016
【図１６】
0005204283.tif 000017