(57)【要約】【課題】  様々なパターンの見た目が良好な画像を得ることが可能な画像配置制御装置、画像配置制御方法、及びプログラムを提供することを課題とする。【解決手段】  画像を画像配置領域に配置する際の基準点となる画像基準点１２０３を画像１２０２に設定し、画像配置領域内に画像基準点１２０３の配置可能な領域を設定する際の基準点となる配置基準点１２０４を配置する画像の数以上設定し、画像１２０２と配置基準点１２０４を対応付け、画像１２０２が画像配置領域に配置される際の大きさ及び配置基準点１２０４の配置領域における位置に基づいて、配置基準点１２０４に対応付けられた画像１２０２の画像基準点１２０３の配置可能な領域１２０５を決定し、配置可能な領域１２０５内に画像基準点１２０３を配置することにより、配置領域に画像１２０２を配置する。【選択図】  図１２
2014016787.tif 000002
【特許請求の範囲】
【請求項１】
１以上の画像を画像配置領域に配置する際の各画像の配置を制御する画像配置制御装置であって、
前記各画像を画像配置領域に配置する際の基準点となる画像基準点を各画像に設定する画像基準点設定手段と、
前記画像配置領域内に、前記画像基準点の配置可能な領域を設定する際の基準点となる配置基準点を、配置する画像の数以上設定する配置基準点設定手段と、
前記画像基準点設定手段により設定された各画像と、前記配置基準点設定手段により設定された配置基準点とを対応付ける対応付け手段と、
前記画像が前記画像配置領域に配置される際の大きさ及びその画像に対応付け手段により対応付けられた配置基準点の位置に基づいて、当該配置基準点に対応付けられた画像の画像基準点を配置可能な領域を決定する配置領域決定手段と、
前記配置領域決定手段により決定された前記配置可能な領域内に前記画像基準点を配置することにより、前記画像配置領域に前記画像を配置する画像配置手段と、
を備えることを特徴とする画像配置制御装置。
【請求項２】
前記画像配置領域に配置する各画像のサイズを決定するサイズ決定手段をさらに備えることを特徴とする請求項１に記載の画像配置制御装置。
【請求項３】
前記サイズ決定手段は、決定後の画像のサイズと当該画像の元のサイズの縦横比の割合が同一となるように各画像のサイズを決定することを特徴とする請求項２に記載の画像配置制御装置。
【請求項４】
前記対応付け手段は、前記画像配置領域に二以上の画像を配置する際に、前記サイズ決定手段により設定されたサイズの大きい画像順に前記画像と前記配置基準点とを対応付けることを特徴とする請求項２又は３に記載の画像配置制御装置。
【請求項５】
前記配置領域決定手段は、前記画像配置領域に二以上の画像を配置する際に、前記サイズ決定手段により設定されたサイズの大きい画像順に前記画像の画像基準点を配置可能な領域を決定することを特徴とする請求項２〜４のいずれか一項に記載の画像配置制御装置。
【請求項６】
前記画像配置領域に二以上の画像を配置する際に前記配置基準点の対応付け順の優先度を設定する優先度設定手段をさらに備え、
前記優先度設定手段は、前記対応付け手段が一の画像を前記配置基準点に対応付けをした際に、当該一の画像が縦長の場合は当該画像に対応付けられた配置基準点の上下方向に設けられた配置基準点の優先度を低く設定し、当該画像が横長の場合は当該画像に対応付けられた配置基準点の左右方向に設けられた配置基準点の優先度を低く設定することを特徴とする請求項２〜５のいずれか一項に記載の画像配置制御装置。
【請求項７】
前記配置基準点設定手段は、前記画像配置領域に二以上の画像を配置する際に、前記配置基準点を前記画像配置領域内に等間隔に設定することを特徴とする請求項１〜６のいずれか一項に記載の画像配置制御装置。
【請求項８】
前記画像配置領域が長方形であり、前記配置基準点設定手段により設定された複数の前記配置基準点を結ぶと長方形となる場合、前記配置領域決定手段は、
前記配置基準点を結んだ長方形の頂点に対応する前記配置基準点に対応付けられた画像を前記画像配置領域の角に内接させた際の当該画像の画像基準点と、配置基準点とを結ぶ直線を対角線とする長方形を第１配置領域として設定し、この第１配置領域に基づいて前記配置可能な領域を決定し、
前記配置基準点を結んだ長方形の頂点以外に位置する前記配置基準点に対応づけられた画像を、前記画像配置領域の前記配置基準点に近い辺に内接させた際の画像の画像基準点と、配置基準点とを結ぶ直線を第１配置領域として設定し、この第１配置領域に基づいて前記配置可能な領域を決定することを特徴とする請求項１〜６のいずれか一項に記載の画像配置制御装置。
【請求項９】
前記画像配置領域が長方形であり、前記配置基準点設定手段により設定された複数の前記配置基準点を結ぶと前記画像配置領域の辺と平行な直線となる場合、前記配置領域決定手段は、前記配置基準点に対応付けられた画像を前記画像配置領域の角に内接させたときの第１画像基準点と、前記配置基準点に対応付けられた画像を前記角とは前記結んだ線を中心として反対側の角に内接させたときの第２画像基準点とを結ぶ直線を一辺とし、前記配置基準点を通り前記直線と平行な直線を一辺とする長方形を第１配置領域として設定し、この第１配置領域に基づいて前記配置可能な領域を決定することを特徴とする請求項１〜６のいずれか一項に記載の画像配置制御装置。
【請求項１０】
前記画像配置領域が長方形であり、前記配置基準点により設定された配置基準点が１つである場合、
前記配置領域決定手段は、前記配置基準点に対応付けられた画像を前記画像配置領域の各角に内接させた各画像基準点を頂点とする長方形を第１配置領域として設定し、この第１領域に基づいて前記配置可能な領域を決定することを特徴とする請求項１〜６のいずれか一項に記載の画像配置制御装置。
【請求項１１】
前記配置領域決定手段は、前記配置基準点を結んだ長方形の頂点にあたる前記配置基準点に対応付けられた画像を前記画像配置領域の角に内接させた際の当該画像の画像基準点の位置が、前記配置基準点と前記画像配置領域の角を結ぶ直線を対角線とする長方形の外である場合、又は前記配置基準点を結んだ長方形の頂点以外の前記配置基準点に対応づけられた画像を前記画像配置領域の前記配置基準点に近い辺に内接させた際の画像の画像基準点の位置が、前記配置基準点と前記辺を垂直に結ぶ直線上以外に存在する場合、前記第１配置領域を前記配置基準点側に縮小した第２配置領域を設定し、この第２配置領域に基づいて前記配置可能な領域を決定することを特徴とする請求項８に記載の画像配置制御装置。
【請求項１２】
前記配置領域決定手段は、画像が対応付けられた第１配置基準点の隣に、画像が対応付けられていない第２配置基準点が存在する場合、前記第１配置基準点に対応付けられた画像の第２の配置領域を前記第２配置基準点の方向に拡張して、前記配置可能な領域とすることを特徴とする請求項１１に記載の画像配置制御装置。
【請求項１３】
前記画像配置領域における前記第１配置基準点の座標と前記第２配置基準点の座標との差から、前記第１配置基準点に対応付けられた画像の幅の半分の値を引いた数値分、第２の配置領域を前記第２配置基準点の方向に拡張することを特徴とする請求項１２に記載の画像配置制御装置。
【請求項１４】
前記配置基準点設定手段は、各画像の中心を前記画像基準点として設定することを特徴とする請求項１〜１３のいずれか一項に記載の画像配置制御装置。
【請求項１５】
前記配置基準点設定手段は、各画像に設定されたオブジェクトの中心を前記画像基準点として設定することを特徴とする請求項１〜１４のいずれか一項に記載の画像配置制御装置。
【請求項１６】
前記画像配置手段により配置された画像の向きを変更する向き変更手段をさらに備えることを特徴とする請求項１〜１５に記載の画像配置制御装置。
【請求項１７】
１以上の画像を画像配置領域に配置する際の各画像の配置を制御する画像配置制御方法であって、
前記各画像を画像配置領域に配置する際の基準点となる画像基準点を各画像に設定する画像基準点設定工程と、
前記画像配置領域内に、前記画像基準点の配置可能な領域を設定する際の基準点となる配置基準点を、配置する画像の数以上設定する配置基準点設定工程と、
前記画像基準点設定工程において設定された各画像と、前記配置基準点設定手段により設定された配置基準点とを対応付ける対応付け工程と、
前記画像が前記画像配置領域に配置される際の大きさ及びその画像に対応付け手段により対応付けられた配置基準点の位置に基づいて、当該配置基準点に対応付けられた画像の画像基準点を配置可能な領域を決定する配置領域決定手段と、
前記配置領域決定工程において決定された前記配置可能な領域内に前記画像基準点を配置することにより、前記配置領域に前記画像を配置する画像配置工程と、
を備えることを特徴とする画像配置制御方法。
【請求項１８】
請求項１７に記載の画像配置制御方法をコンピュータにより実行することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１以上の画像を配置する画像配置制御装置、画像配置方法及びそのプログラムに関する。
【背景技術】
【０００２】
従来、絵、写真、文章等を組み合わせてコラージュを作成することができる画像生成アプリケーション（以下、コラージュアプリともいう）が知られている。このコラージュアプリとしては、ユーザが任意に画像データを動かし、配置する事ができる機能を備えたものが知られている。しかしながら、コラージュの作成は手間がかかるものであるため、コラージュアプリを使用しても、コラージュの作成が難しいという問題があった。
【０００３】
そこで、最初からコラージュ領域のいずれに写真を置くかをパターン化したテーブルを持ち、その所定の場所に画像を自動であてはめていくパターン化方法が提案されている（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１３４７７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１では、予め用意されたパターンを使うため、自由度が低いというという点が問題となっていた。
【０００６】
本発明は、上述した事情に鑑み、画像の配置位置の自由度を向上させることが可能な画像配置制御装置、画像配置制御方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述のような課題を解決するための本発明の画像配置制御装置は、１以上の画像を画像配置領域に配置する際の各画像の配置を制御する画像配置制御装置であって、前記各画像を画像配置領域に配置する際の基準点となる画像基準点を各画像に設定する画像基準点設定手段と、前記画像領域内に、前記画像基準点の配置可能な領域を設定する際の基準点となる配置基準点を、配置する画像の数以上設定する配置基準点設定手段と、前記画像基準点設定手段により設定された各画像と、前記配置基準点設定手段により設定された配置基準点とを対応付ける対応付け手段と、前記画像が前記画像配置領域に配置される際の大きさ及びその画像に対応付け手段により対応付けられた配置基準点の位置に基づいて、当該配置基準点に対応付けられた画像の画像基準点を配置可能な領域を決定する配置領域決定手段と、前記配置領域決定手段により決定された前記配置可能な領域内に前記画像基準点を配置することにより、前記画像配置領域に前記画像を配置する画像配置手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、画像の配置位置の自由度を向上させることが可能な画像配置制御装置、画像配置制御方法、及びプログラムを実現することができる。
【図面の簡単な説明】
【０００９】
【図１】実施形態１に係る画像配置システムのブロック図である。
【図２】実施形態１に係る画像を選択する画像データ選択画面である。
【図３】実施形態１に係るコラージュ作業画面を示す図である。
【図４】実施形態１に係る画像オブジェクトの説明図である。
【図５】実施形態１の画像オブジェクトデータの決定処理のフローチャートである。
【図６】実施形態１のサイズ決定処理で使用されるサイズ決定表である。
【図７】実施形態１のサイズ基準によって定まる最終的な画像サイズの説明図である。
【図８】実施形態１に係るサイズ決定処理のフローチャートである。
【図９】基準点結び付け処理において使用する配置基準点パターンの一例を示す図である。
【図１０】実施形態１の基準点結び付け処理のフローチャートである。
【図１１】実施形態１の画像基準点配置領域を決定するフローチャートである。
【図１２】実施形態１の４角専用配置領域拡大処理の説明図である。
【図１３】実施形態１の辺用配置領域拡大処理の説明図である。
【図１４】実施形態１の配置領域縮小処理の説明図である。
【図１５】実施形態１の未使用エリアへの配置領域再拡大処理の説明図である。
【図１６】実施形態１の直線用配置領域拡大処理の説明図である。
【図１７】実施形態１の点用配置領域拡大処理の説明図である。
【図１８】実施形態２の画像基準点の決定方法の説明図である。
【図１９】実施形態２の画像基準点配置領域の決定の説明図である。
【図２０】実施形態２の画像基準点の決定処理のフローチャートである。
【図２１】他の実施形態の画像基準点決定方法の説明図である。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明の実施の形態の一例を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１１】
（実施形態１）
図１は、本実施形態に係るアプリケーションプログラム（コラージュアプリケーション）が動作する画像配置制御システムのブロック図である。
【００１２】
図１に示す画像配置制御システムは、画像配置制御装置全体を制御するＣＰＵ１０１と、ＣＰＵ１０１のワークエリアを提供するＲＡＭ１０２と、アプリケーションプログラムや写真の画像データを記憶する記憶部１０３と、を備える。さらに、ユーザがコマンドの入力を行う入力部１０４と、画面表示を行うＵＩ表示部１０５と、他機器とネットワークによる通信を行うネットワーク部１０６と、メインバス１００と、を備える。ＣＰＵ１０１、ＲＡＭ１０２、記憶部１０３、入力部１０４、ＵＩ表示部１０５、及びネットワーク部１０６は、それぞれメインバス１００を介して接続されている。
【００１３】
記憶部１０３としては、例えば、ＨＤＤやＮＶＲＡＭ等が挙げられる。この記憶部１０３は、例えば、画像配置制御システムがネットワーク部１０６を介してインターネットに接続された際に、インターネット上から新たな画像データやその情報をダウンロードして、保存することができる。
【００１４】
入力部１０４は、マウスやキーボードといった一般的な入力機器であり、ユーザが操作することでアプリケーションを操作することができるように構成されている。
【００１５】
本実施形態では、入力部１０４と、ＵＩ表示部１０５を別々に設けるようにしたが、入力部１０４及びＵＩ表示部１０５は、双方の機能を兼ねるタッチパネルであってもよい。
【００１６】
画像配置制御システムは、汎用的なパーソナルコンピュータ、スマートフォン等にコラージュアプリケーションをインストールすることによって実施可能である。
【００１７】
ここで、図１の画像配置制御システムにおいて、コラージュ画像を作成する方法について、図２〜１７を用いて説明する。
【００１８】
図２は、実施形態１に係るコラージュアプリケーションにより、コラージュ画像に使う画像を選択する画像データ選択画面を示す。
【００１９】
図２に示す画像データ選択画面は、コラージュアプリケーションの基本画面のメニューからコラージュ画像の作成を選択すると、図１に示すＵＩ表示部１０５に表示される。画像データ選択画面は、パス入力部２０１と、画像表示部２０２と、画像データ選択完了ボタン２０６と、を備えている。
【００２０】
パス入力部２０１は、記憶部１０３内の画像データの存在する場所を入力する部分である。パス入力部２０１に画像データの存在する場所を入力すると、入力された場所から画像データが取得され、取得された画像データは、画像表示部２０２に表示される。
【００２１】
図２の画像表示部２０２には、１以上の画像を表示しており、各画像に対してチェックボックスがそれぞれ設けられている。チェックボックス２０３，２０４等の各チェックボックスは、ユーザがコラージュに使用したい画像を選択するためのものである。ユーザが入力部１０４にて各チェックボックスをクリック又はタッチすることで、チェックボックスにチェックマークが付き、コラージュに使用される画像が選択されたことになる。
【００２２】
画像表示部２０２には、パス入力部２０１内の画像データ２０５を一定のサイズで表示する。なお、画像データとしては、例えば、１３０ピクセル×１３０ピクセル等の小さい画像、２０４８ピクセル×１６００ピクセル等の大きい画像、それ以上それ以下の大小様々な画像が存在する。しかしながら、上述した通り、本実施形態の画像データ選択画面では、いずれのサイズの画像データも同じ大きさに表示する。
【００２３】
画像データ選択完了ボタン２０６は、画像の選択を完了するためのボタンである。画像データ選択完了ボタン２０６を押すことで、その時点でチェックボックスにチェックが入っている画像（例えば、写真）がコラージュ画像に使われることが確定すると共に、コラージュ画像を作成するためのコラージュ作業画面に遷移する。
【００２４】
図３に、実施形態１に係るコラージュアプリケーションにより、コラージュ画像を作るためのコラージュ作業画面を示す。
【００２５】
上述したように、図３に示すコラージュ作業画面は、画像データ選択画面から遷移して表示されるものであり、図１に示すＵＩ表示部１０５に表示される。コラージュ作業画面は、画像選択ボタン３０１と、シャッフルボタン３０２と、保存ボタン３０３と、終了ボタン３０４と、コラージュ領域３０５と、を備える。
【００２６】
画像選択ボタン３０１は、画像を追加したい場合に、図２の画像データ選択画面へ移動する（戻る）機能を持つ。シャッフルボタン３０２は、画像をシャッフルさせる機能を持つ。保存ボタン３０３は、生成されたコラージュ画像を記憶部１０３に保存させる機能を持つ。終了ボタン３０４は、コラージュ作業画面を終了し、コラージュアプリケーションの基本画面を表示する機能を持つ。
【００２７】
コラージュ領域３０５は、コラージュ画像そのものを示す領域であり、この上に画像データを表示したり、操作するための画像オブジェクト３０６を配置したりすることができる。言い換えれば、コラージュ領域３０５は、画像オブジェクト３０６の配置領域となる。画像オブジェクト３０６は、コラージュ領域３０５よりもはみだすことが許容されており、本実施形態では、画像オブジェクトがはみ出した場合、はみ出した部分の画像は描画されないように設定されている。
【００２８】
ここで、図４を用いて、画像オブジェクト３０６について説明する。
【００２９】
図４（ａ）は、画像データを表示するための画像オブジェクトを示している。画像オブジェクトの高さ（縦幅）と横幅は、後述する画像サイズ決定処理によって決定された値となる。この画像オブジェクトには、画像基準点が設定され、この画像基準点のコラージュ領域３０５上での座標を指定することで、コラージュ領域３０５上に画像オブジェクト３０６を配置することができる。本実施形態では、画像オブジェクトの中心（重心）を画像基準点とし、この画像基準点のコラージュ領域３０５上でのＸ座標、Ｙ座標を指定することで、コラージュ領域３０５上の所定の位置に画像オブジェクト３０６を配置する。
【００３０】
図４（ｂ）は、画像オブジェクトの保持するデータの例である。図４（ａ）に示した画像オブジェクトは、例えば、図４（ｂ）に示すようなデータを保持する。ＩＤ４０１〜４０８は、画像オブジェクトのデータの種類を特定するためのＩＤであり、図中の「名称」は各データに設定されている名称である。
【００３１】
ＩＤ４０１及びＩＤ４０２で特定されるデータは、コラージュ領域上での画像基準点の座標データであり、それぞれ画像基準点のＸ座標のデータ及び画像基準点のＹ座標のデータである。そして、ＩＤ４０３及びＩＤ４０４で特定されるデータは、それぞれコラージュ領域３０５内に画像オブジェクトを配置する場合の横幅のデータ及び縦幅（高さ）のデータである。また、ＩＤ４０５及びＩＤ４０６で特定されるデータは、その画像基準点が、画像オブジェクト内でどこにあるかを示す座標データである。本実施形態では、画像基準点を画像の中心としている。したがって、ＩＤ４０５で特定される画像基準点のオブジェクト内のＸ座標のデータは、ＩＤ４０３で特定されるデータの半分の値となる。また、ＩＤ４０６で特定される画像基準点のオブジェクト内のＹ座標のデータは、ＩＤ４０４で特定されるデータの半分の値となる。また、ＩＤ４０７で特定される画像の回転角度のデータは、画像基準点を中心に画像オブジェクトが回転する角度のデータである。ＩＤ４０８で特定される画像データは、実際の画像を示すデータである。
【００３２】
ＩＤ４０１〜ＩＤ４０７で特定されるデータをＩＤ４０８の画像データに与えることで、ＩＤ４０８の画像データを所定の位置、所定のサイズ、所定の角度でコラージュ領域３０５に表示する機能を持つ。より具体的には、ＩＤ４０１及びＩＤ４０２で特定される座標データから画像基準点の位置を確定することができる。そして、ＩＤ４０３〜ＩＤ４０６で特定されるデータと、ＩＤ４０１及びＩＤ４０２で特定されるデータとの相対関係より、回転しなかった場合の画像オブジェクトの表示位置を計算することができる。最後に、ＩＤ４０７で特定されるデータに基づいて、画像オブジェクトを回転させて、コラージュ領域３０５に画像データを表示することができる。本実施形態では、このＩＤ４０１〜４０７のデータをランダムに決定することにより、画像をシャッフルすることができる。なお、本実施形態では、図３のシャッフルボタン３０２が押下されることよって、画像オブジェクト３０６をシャッフルさせることができる。
【００３３】
ここで、図５を用いて、画像オブジェクトデータの決定処理、言い換えれば、画像オブジェクトのコラージュ領域への配置方法について説明する。図５は、上述したＩＤ４０１〜ＩＤ４０７で特定されるデータをランダムに決定する画像オブジェクトデータ決定処理のフローチャートである。
【００３４】
図２の画面においてコラージュに使用する画像の選択が完了した後、Ｓ５０１において、コラージュ領域上における画像のサイズ決定処理を行う。
【００３５】
その後、Ｓ５０１において決定したサイズの大きい画像順に、基準点結び付け処理を行う（Ｓ５０２）。基準点結び付け処理とは、各画像の画像基準点それぞれに対して、後述するコラージュ領域上の配置基準点を対応付ける処理である。言い換えれば、各画像と配置基準点とを対応付ける処理である。配置基準点とは、後述するが、各画像の画像基準点をコラージュ領域に配置する際に基準となる点である。このとき、画像を２枚以上配置する場合は、既に配置された画像の位置、その後に配置されるその他の画像の配置は影響を受ける。本実施形態では、最も大きい画像から配置するので、その他の画像の配置は、最も大きい画像が置かれた位置に影響を受ける。
【００３６】
Ｓ５０２において、全ての画像の画像基準点をそれぞれ配置基準点と結び付けた後は、Ｓ５０３において、Ｓ５０１において決定したサイズの大きい画像順に画像基準点配置領域の生成処理を行う。画像基準点配置領域の生成処理とは、詳細は後述するが、その配置基準点に結び付けられた画像の大きさ及び配置領域内の配置基準点の位置に基づいて、画像基準点を配置することができる画像基準点配置領域を決定する処理である。
【００３７】
Ｓ５０３において、全ての画像に対して画像基準点配置領域を生成した後は、Ｓ５０４において、各画像の画像基準点位置の決定処理を行う。画像基準点位置の決定処理とは、画像基準点配置領域中のいずれかの座標に、画像基準点の位置を定める処理である。言い換えれば、画像基準点を画像基準点配置領域内に配置する処理である。この画像基準点の画像基準点配置領域内における位置は、乱数等を用いてランダムに定められる。ランダムにすることでコラージュ画像の自由度を向上させることができる。
【００３８】
最後に、Ｓ５０５において、画像の角度を決める角度決定処理を行う。これにより、ＩＤ４０１〜ＩＤ４０７で特定される全てのデータの値が決定する。
【００３９】
ここで、図６〜８を用いて、サイズ決定処理について説明する。
【００４０】
図６は、サイズ決定処理で使用されるサイズ決定表である。図６に示すように、図２の画面において選択されたコラージュに使用される画像の枚数に応じて、一以上のサイズのパターンが予め用意されている。画像の枚数に応じたパターンは、例えば、ＲＡＭ１０２等に保存されていてもよく、インターネット等を介して外部から取得するようにしてもよい。サイズ決定処理では、上述したパターンの中からランダムにパターンを決定する。例えば、画像が３枚の場合には、４種類のパターンＡ〜Ｄのうちいずれか１つのパターンが選択されることにより、サイズが決定される。画像が３枚でパターンＤであれば、１つの画像はＬサイズ、すなわち、横幅及び高さがコラージュ領域３０５の５０％の大きさがサイズの基準となる。そして、残りの二つの画像はＭサイズ、すなわち、横幅及び高さがコラージュ領域３０５の４０％の大きさが、サイズの基準となる。このようにしてサイズの基準が決定するが、このサイズの基準がそのままコラージュを作成する際の画像の大きさになるとは限らない。例えば、コラージュ領域の縦横比が画像の縦横比と異なる場合は、コラージュを作成する際に画像の縦横比を保つようにサイズを決定する。画像が崩れないようにするためである。
【００４１】
図７は、図６で説明したサイズの基準に基づいて、最終的なサイズが決定するまでの説明図である。コラージュ領域７０１が、横幅１０００、高さ６００の領域である場合、図６のサイズ基準表におけるＬサイズは、コラージュ領域７０１の横幅が５０％で高さが５０％である。したがって、サイズ基準は、横幅５００、高さ３００の長方形７０２となる。
【００４２】
画像の縦横比がコラージュ領域の縦横比と同じである場合は、画像のサイズは、横幅５００、高さ３００の長方形７０２に決定する。また、画像７０３のように画像の縦横比が２対１である場合は、画像７０３の縦横比を維持しつつ、サイズ基準の長方形内において、画像７０３の向きを変えずに画像７０３が最大となるサイズに決定する。すなわち、サイズ基準の長方形７０２内に内接させた場合の大きさ、横幅１５０、高さ３００が、画像７０３の最終的なサイズに決定する。画像７０４のように画像の縦横比が１対２である場合は、画像７０４の縦横比を維持しつつサイズ基準の長方形において、画像７０４の向きを変えずに画像７０４が最大となるサイズに決定する。すなわち、サイズ基準の長方形７０２内に内接させた場合の大きさ、横幅５００、高さ２５０が、画像７０４の最終的なサイズに決定する。
【００４３】
図８は、本実施形態に係るサイズ決定処理のフローチャートである。
【００４４】
まず、Ｓ８０１では、サイズパターンの決定処理を行う。具体的には、図６に示すサイズ基準決定表に基づいて、選択した画像の枚数に応じたパターンを決める。このとき、パターンは乱数等を用いてランダムで決定する。サイズ決定処理において、複数のパターンからいずれかを選択することにより、様々なパターンのコラージュ画像を作成することができる。
【００４５】
次に、Ｓ８０２では、サイズ振分け処理を行う。具体的には、決まったサイズパターンに定められたＬ，Ｍ，Ｓ等のサイズを、目的の画像に乱数等を用いてランダムに振り分ける。本実施形態では、このサイズ振り分け処理は、画像の元々の大きさを一切考慮しない。なお、画像のもともとの大きさを考慮した場合、元々のサイズが大きい画像が、必ずパターン内の最も大きいサイズに振り分けられてしまったりすることになり、作成されるコラージュ画像のパターンに偏りが発生することがある。これに対し、本実施形態のサイズ振り分け処理では、様々なパターンのコラージュ画像を作成することができる。すなわち、作成されるコラージュ画像が自由度の高いものとなる。
【００４６】
次に、Ｓ８０３では、Ｓ８０２において画像に割り当てられたＬ，Ｍ，Ｓ等のサイズを元に、実際の画像サイズを決める実サイズ決定処理を行う。具体的には、まず、図６のサイズ基準決定表に基づいて、コラージュ領域の高さと横幅を縮小（本実施形態では、７０％〜２５％縮小）した長方形を計算し、それをサイズ基準とする。そして、計算により求めたコラージュ領域の縦横比と、ターゲットとなる画像の縦横比とを比較する。ターゲットとなる画像がコラージュ領域より横長の場合、すなわち、ターゲットとなる画像の縦横比の方が小さい場合には、サイズ基準の横幅を画像オブジェクトの横幅とし、高さはその横幅に画像の縦横比を乗算することで割り出す。一方、ターゲットとなる画像の方がコラージュ領域より縦長の場合には、サイズ基準の高さを画像オブジェクトの高さとし、横幅はその高さに画像の縦横比を除算することで割り出す。図６のサイズ基準決定表のサイズパターンでは、画像を配置する際に、その画像の全面積がコラージュ領域の面積の７０％以下となるように調整されている。このように、画像の全面積がコラージュ領域の面積の所定の割合以下とすることにより、全ての画像がサイズ基準と同じ又はサイズ基準よりも小さくなるようにすることで、コラージュ領域が画像で埋め尽くされたり、画像が重なり過ぎたりするのを抑制できる。
【００４７】
ここで、図９及び図１０を用いて、基準点結び付け処理について説明する。
【００４８】
図９は、基準点結び付け処理において使用する配置基準点パターンの一例である。図９には、コラージュ領域内における配置基準点の数及びその位置を示している。この配置基準点は、画像を配置する際に基準となる点である。ここでは、コラージュ領域３０５に配置する画像の枚数に応じて配置基準点の数を決定するようにした。また、配置基準点はコラージュ領域３０５内に等間隔に配置するものとした。図９では、画像が１枚の場合は、コラージュ領域の中心に配置するようにした。すなわち、画像が１枚の場合の配置基準点は、コラージュ領域の高さの１／２で横の長さの１／２の位置に設けた。また、画像が２枚以上の場合は、配置基準点は等間隔に設けるようにした。例えば、画像が３枚〜４枚の場合は、配置基準点は、コラージュ領域の高さの１／３で横の長さが１／３の位置にそれぞれ設けるようにした。このように、配置基準点を等間隔に設けることにより、画像同士が重なるのを低減することができる。
【００４９】
配置基準点パターンのうちいずれのパターンを使用するかについては、画像の枚数に応じて一意に決定する。このとき、コラージュ領域内における配置基準点の数は、画像の枚数と同じか画像の枚数より多くなるようにするのが好ましい。画像の枚数より多くした場合は、詳細は後述するが、画像の配置の自由度が向上する。本実施形態では、配置基準点の数は、図９に示すように、画像１つ（写真１枚）の場合は１つ、画像２つ（写真２枚）の場合は２つ、画像３〜４つ（写真３〜４枚）の場合は４つ、画像５〜６つ（写真５〜６枚）の場合は６つとした。
【００５０】
ここで、基準点結び付け処理とは、各画像に配置基準点を割り振る、言い換えれば、配置基準点に対して配置したい画像の画像基準点を割り振ることをいう。図１０を用いて、基準点結び付け処理について詳細に説明する。図１０は、基準点結び付け処理のフローチャートである。
【００５１】
まず、Ｓ１００１では、配置基準点パターンの決定処理を行う。具体的には、配置基準点パターンは、図９に示す配置基準点パターンに基づいて、画像の枚数を元に一意に決定される。このとき、配置基準点パターン内の全ての配置基準点に対して画像基準点を配置する際の優先度は等しい高さに設定する。
【００５２】
Ｓ１００２において、各画像に対して配置基準点を割り振る。言い換えれば、各画像の画像基準点にいずれの配置基準点を結び付けるのか決定する。ここでいう「結び付け」とは、対象とする画像の画像基準点を、対象とする配置基準点に基づいて求められる配置可能領域内に収まらせることを決定付けることを意味する。この処理は、サイズ決定処理により定まったサイズが大きい順に全ての画像について行う。その後、Ｓ１００３へ進む。
【００５３】
Ｓ１００３では、コラージュ領域３０５にこれから配置する画像が一枚目か否かを判断する。一枚目である場合はＳ１００４へ、一枚目ではない場合はＳ１００７へ進む。
【００５４】
Ｓ１００４では、１以上の配置基準点の中から１つの配置基準点を乱数等を用いてランダムで選択し、対象画像に結び付ける。このとき、１枚目の画像の場合は、各配置基準点に対する配置優先度が等しくなるように設定したので、選択される配置基準点はランダムとなる。選択した後は、Ｓ１００５へ進む。
【００５５】
Ｓ１００５では、配置する画像が横長か否かを判定する。配置する画像が横長の場合はＳ１００６へ進み、配置する画像が横長ではない場合、すなわち、正方形又は縦長の場合はＳ１０１０へ進む。
【００５６】
Ｓ１００６では、画像が結び付けられた配置基準点の左右方向に配置基準点が存在、すなわち、左右のうち少なくともいずれか一方に配置基準点が存在する場合は、その配置基準点の配置優先度を下げる。横長画像の左右の配置優先度を下げることにより、他の画像がその横長画像と重なる確率（又は重なる面積）を下げることができる。
【００５７】
Ｓ１０１０では、画像が結び付けられた配置基準点の上下方向に配置基準点が存在、すなわち、上下のうち少なくともいずれか一方に配置基準点が存在する場合は、その配置基準点の配置優先度を下げる。縦長画像の上下の配置優先度を下げることにより、他の画像がその縦長画像と重なる確率（又は重なる面積）を下げることができる。
【００５８】
Ｓ１００７では、配置優先度が高い配置基準点があるか否かを判定する。なお、ここでいう「配置優先度が高い」とは、他の配置基準点の優先度と比較して相対的に優先度が高いものを指す。例えば、優先度が低く設定されている配置基準点がある場合は、通常の優先度の配置基準点が配置優先度の高いものに相当することになる。配置優先度が高い配置基準点が１つでも存在する場合、Ｓ１００８へ進み、１つも存在しない場合はＳ１００９へ進む。
【００５９】
Ｓ１００８では、配置優先度高い配置基準点の中から１つの配置基準点を乱数等を用いてランダムで選択し、画像を結び付ける。
【００６０】
Ｓ１００９では、残りの配置基準点の中から１つの配置基準点を乱数等を用いてランダムで選択し、画像を結び付ける。
【００６１】
本実施形態の基準点結び付け処理では、画像の大きい順に行っている。まず、大きい画像を配置し、その画像が横長の場合は画像の左右の配置優先度を下げ、その画像が縦長の場合は画像の上下の優先度を下げて、その後は画像サイズの大きい順に配置優先度の高い配置基準点に配置していくように制御している。このため、基準点結び付け処理により、最も大きな横長の画像の左右には、小さい画像が配置される確率が高くなる。一方、最も大きな縦長の写真の上下には、小さい画像が配置される確率が高くなる。これにより、画像同士が重なる確率（又は重なる面積）を下げることができる。
【００６２】
なお、本実施形態では、画像の枚数が奇数の場合には、最も大きな画像の隣に画像が存在しない場合も存在する。
【００６３】
以上より、本実施形態の基準点結び付け処理により定まる画像の位置は、画像の重なりを極力小さくすることができる。
【００６４】
上述した基準点結び付け処理では、コラージュ領域上の配置基準点と、画像の画像基準点の結び付けをする。基準点結び付け処理により、配置基準点に画像基準点を結びつけただけでは、毎回同じ場所に画像の画像基準点が配置されてしまい、ランダム性が低くなってしまう虞があるので、本実施形態では、配置基準点を配置可能な画像基準点配置領域を設定する。この画像基準点配置領域は、画像基準点を配置してもよい領域のことであり、後述するように、コラージュ領域上の配置基準点に基づいて決定する。画像基準点配置領域は、別の言い方をすれば、配置基準点からどの程度まで離れた位置にまで画像基準点を配置できるかを定義するものである。画像基準点配置領域内に、画像基準点をランダムに配置することにより、シャッフルのたびに毎回違う位置に画像を描画することができる。
【００６５】
図１１は、画像基準点配置領域を生成（決定）するフローチャートである。本実施形態では、画像が画像配置領域内に配置される際の大きさ及びその画像に対応付け手段により対応付けられた配置基準点の位置に基づいて、配置基準点に対応付けられた画像の画像基準点を配置可能な領域を決定した。
【００６６】
Ｓ１１０１では、コラージュ領域に設定された配置基準点を結ぶと長方形となるか否かを判定する。本実施形態の場合は、コラージュ領域に存在する配置基準点が４以上であるか否か、すなわち、コラージュ領域に配置する画像の枚数が３枚から６枚か否かを判定すればよい。なお、本実施形態では、図９に示すように、配置する画像の枚数が３枚から６枚である場合は、配置基準点が、それぞれを結ぶと長方形となるように配置されている。
【００６７】
Ｓ１１０２では、ターゲットとする画像に結びつけられた配置基準点が、図９のパターン表において、長方形の４角にあたるか否かを判定する。配置基準点が長方形の４角のいずれかにあたる場合は、Ｓ１１０３へ進み、長方形の４角に当たらない場合はＳ１１０４へ進む。
【００６８】
Ｓ１１０３では４角専用配置領域拡大処理を行う。その後、Ｓ１１０５へ進む。
【００６９】
ここで、図１２を用いて、４角専用配置領域拡大処理について説明する。まず、図１２（ａ）に示すように、長方形の４角のうち画像が結びつけられた配置基準点１２０４に最も距離が近いコラージュ領域３０５の角Ａに、対象となる画像１２０２を内接させたとする。この場合の画像基準点１２０３と、配置基準点１２０４とを結ぶ直線を対角線とした長方形を、第一の配置領域１２０５とする。その他の配置基準点に画像を配置する場合も同様に、画像が結び付けられた配置基準点に最も距離が近いコラージュ領域の角に対象となる画像を内接させたときの画像基準点と、配置基準点を結ぶ直線を対角線とした長方形を各画像の第１の配置領域とする。このように、コラージュ領域の最端部に画像を配置した場合の画像基準点及び配置基準点に基づいて、配置領域を決定する。ここで、角Ａに対象となる画像１２０２を内接させたときの画像基準点の位置は、画像１２０２の大きさに応じて変わる。例えば、画像が大きい場合は、画像が小さい場合と比較して、画像基準点が配置基準点側に位置することになる。したがって、画像基準点と配置基準位置を結ぶ直線を対角線とした長方形は小さくなる。
【００７０】
第一の配置領域に画像基準点を配置した場合、画像の回転角度がゼロであれば画像がコラージュ領域３０５からはみ出すことはない。一方、図１２（ｂ）に示すように、画像をコラージュ領域の角に配置する場合、画像を回転させて画像の向きを変更すると、画像の一部がコラージュ領域３０５からはみ出す。しかしながら、第一の配置領域１２０５内に画像基準点が置かれた画像は、少なくとも画像の回転が０度の場合には、第１の配置領域１２０５外へはみ出すことはない。また、画像が回転したとしても、画像基準点及び画像基準点の近辺は、コラージュ領域３０５からはみ出さない。したがって、画像の重要部分、例えば、画像中心を画像基準点とすることで、画像の所望の部分を確実にコラージュ領域３０５内に収めることができる。
【００７１】
Ｓ１１０４では、辺用領域拡大処理を行う。その後、Ｓ１１０５へ進む。
【００７２】
ここで、図１３を用いて、辺用領域拡大処理について説明する。図１３に示すように、配置基準点１３０１から距離が最も近いコラージュ領域３０５の辺に、画像１３０２を内接させ、その時の画像基準点１３０３と、配置基準点１３０１を結ぶ直線上を第一の配置領域１３０４とする。その他の配置基準点に画像を配置する場合も同様に、画像が結び付けられた配置基準点に最も距離が近いコラージュ領域の辺に対象となる画像を内接させたときの画像基準点と、配置基準点を結ぶ直線を各画像の配置領域とする。このように、コラージュ領域の最端部に画像を配置した場合の画像基準点、及び配置基準点に基づいて、配置領域を決定する。ここで、辺と対象となる画像１２０２の辺を一致させたときの画像基準点の位置は、画像１３０２の大きさに応じて変わる。例えば、画像が大きい場合は、画像が小さい場合と比較して、画像基準点が配置基準点側に位置することになる。したがって、画像基準点と配置基準位置を結ぶ直線は小さくなる。
【００７３】
この処理の場合も、４角用配置領域拡大処理と同様に、第一の配置領域に画像基準点を配置した場合、角度がゼロであれば画像がコラージュ領域３０５からはみ出すことはない。また、画像を回転したとしても、画像基準点及び画像基準点の近辺はコラージュ領域３０５からはみ出さない。したがって、画像の重要部分、例えば、画像中心を画像基準点とすることで、画像の所望の部分を確実にコラージュ領域３０５内に収めることができる。
【００７４】
Ｓ１１０５では、４角用配置領域拡大処理又は辺用領域拡大処理により拡大された第一の配置領域の拡大方向が、適切か否かを判定する。「拡大方向が適切」であるとは、好ましい方向に拡大されていることをいう。例えば、４角用配置領域拡大処理又は辺用領域拡大処理により拡大された第一の配置領域が、コラージュ領域３０５の端部側ではなく他の配置基準点側に設定される場合である。適切でない場合は、Ｓ１１０６へ進み、適切である場合は、Ｓ１１０７へ進む。
【００７５】
Ｓ１１０６では、配置領域縮小処理を行う。その後、Ｓ１１０７へ進む。
【００７６】
ここで、図１４を用いて、配置領域縮小処理について説明する。図１４（ａ）は、４角専用配置領域拡大処理により、第一の配置領域が好ましく無い方向へ拡大された場合を例示する図である。図１４（ａ）には、配置基準点１４０４と、コラージュ領域３０５の角を対角線とする長方形１４０１内に、画像基準点１４０３が納まっていない。この場合、画像を回転させると、図１４（ｂ）に示すように、大きな画像１４０２と、その他の画像が広い面積で重なってしまうことがある。大きな画像１４０２が、第一の配置領域１４０５内の配置基準点１４０４以外の部分、すなわち、他の配置基準点側に画像基準点が配置された場合、他の配置基準点に結びつけられた画像と重なる確率（及び重なる場合はその面積）が上がる。場合によっては、図１４（ｂ）に示すように、大きい画像によって小さい画像の全てが隠されてしまうことがある。このように、大きい画像と小さい画像が重なった場合、大きい画像にとっては重なることによる影響は小さいとしても、小さい画像にとっては、重なることによる影響は大きい。
【００７７】
そこで、本実施形態のＳ１１０６では、配置領域縮小処理により、他の配置基準点側に拡張された第一の配置領域１４０５を縮小して新たな配置領域を調整する。例えば、図１４（ｃ）に示すように、Ｙ軸方向の好ましく無い方向に配置領域が拡大されている場合、すなわち、配置領域がＹ軸方向において他の基準点側に拡大されている場合には、その第一の配置領域１４０５を、配置基準点１４０４と同じＹ座標まで縮小する。第一の配置領域１４０５は、Ｙ軸方向を最も縮小することで直線となる。なお、Ｘ軸方向の好ましく無い方向に拡大されている場合、すなわち、配置領域がＸ軸方向において他の基準点側に拡大されている場合には、その第一の配置領域１４０５を、配置基準点１４０４と同じＸ座標まで縮小する。この場合も、第一の配置領域１４０５は、Ｘ軸方向を最も縮小することで直線となる。また、Ｘ軸及びＹ軸方向のいずれにおいても好ましく無い方向に拡大されていた場合には、その第一の配置領域１４０５は、Ｘ軸方向及びＹ軸方向のいずれも縮小すればよく、配置領域は配置基準点１４０４と同じ点となる。上述した配置領域縮小処理により定まった領域を、第二の配置領域とする。このようにして設定した第二の配置領域内に画像基準点を配置することにより、図１４（ｄ）に示すように、隣り合う画像の重なりが軽減される。
【００７８】
図１４では、４角専用配置領域拡大処理により第１の配置領域が好ましくない方向へ拡大された場合について説明したが、辺用配置領域拡大処理により第１の配置領域が好ましくない方向へ拡大した場合も同様である。辺用配置領域拡大処理により、長方形の頂点以外の配置基準点に対応づけられた画像を、画像配置領域の配置基準点に近い辺に内接させた際の画像の画像基準点の位置が、配置基準点と辺を垂直に結ぶ直線上以外に存在する場合、配置領域縮小処理を行う。具体的には、配置領域がＹ軸方向において他の基準点側に拡大されている場合には、その第一の配置領域を、配置基準点と同じＹ座標まで縮小する。この配置領域縮小処理により定まった領域を、第二の配置領域とする。このようにして設定した第二の配置領域内に画像基準点を配置することにより、隣り合う画像の重なりが軽減される。
【００７９】
Ｓ１１０７では、対象となる画像が結びつけられた配置基準点の隣に、どの画像にも結び付けられていない配置基準点があるか否かを判定する。
【００８０】
ここで、図１５（ａ）を用いて、配置基準点があるか否かの判断について説明する。例えば、画像として写真を５枚配置する場合、本実施形態では、配置基準点パターン決定処理により、配置基準点は六つ存在する。図１５（ａ）に示すように、画像１５０４には、４角用配置領域拡大処理により配置領域１５０６が生成されている。具体的には、配置基準点１５０１と、それに結びつけられた画像１５０４をコラージュ領域３０５の左上に内接させた場合の画像基準点１５０５とに基づいて、配置領域１５０６が生成されている。さらに、配置基準点１５０３について、それに結びつけられた画像１５０７をコラージュ領域３０５の右上に内接させた場合、画像基準点１５０８のＹ座標が、配置基準点１５０３のＹ座標よりも他の配置基準点側に近いため、配置領域縮小処理によって、配置領域１５０９は直線となる。そして、図１５（ａ）に示すように、配置基準点１５０１と、配置基準点１５０３の間の配置基準点１５０２には画像が結びつけられていない場合、Ｓ１１０８の判定は真となる。この場合は、Ｓ１１０８へ進む。
【００８１】
Ｓ１１０８では、その画像が結びつけられた配置基準点の隣に、どの画像にも結び付けられていない配置基準点がある場合、未使用エリアへの配置領域再拡大処理を行う。
【００８２】
図１５（ｂ）を用いて、Ｓ１１０８の配置領域再拡大処理を説明する。図１５（ｂ）に示すように、画像が結びつけられていない配置基準点１５０２が配置基準点１５０１のＸ軸方向に存在する場合、配置基準点１５０２に結び付けられている画像１５０４の配置領域を拡大する。具体的には、コラージュ領域の３０５の左上に内接されている画像１５０４の配置基準点１５０２側の辺のＸ座標が、配置基準点１５０２と同じになるまで移動し、その時の画像基準点を１５０５’とする。そして、配置領域１５０６のＸ軸方向を画像基準点１５０５’の位置まで拡大し、第三の配置領域１５０６’とする。つまり、コラージュ領域の３０５における配置基準点１５０１の座標と配置基準点１５０２の座標との差から、画像１５０４の幅（Ｘ方向の幅）の半分の値を引いた数値分だけ、画像１５０４の配置領域を配置基準点１５０２の方向に拡張する。
【００８３】
また、既に設定されている配置領域が直線の場合も同様である。すなわち、図１５（ｂ）に示すように、画像が結びつけられていない配置基準点１５０２が配置基準点１５０３のＸ軸方向に存在する場合、配置基準点１５０３に結び付けられている画像１５０７の配置領域を拡大する。画像１５０７の配置基準点１５０２側の辺のＸ座標が、配置基準点１５０２と同じになるまで移動し、その時の画像基準点を１５０８’とする。配置領域のＸ軸方向を画像基準点１５０８’のＸ座標まで拡大し、これを第三の配置領域１５０９’とする。
【００８４】
ここでは、画像が結びつけられていない配置基準点がＸ軸方向に存在する場合について説明したが、Ｙ軸方向に存在する場合も同様の処理を行えばよい。すなわち、配置領域のＹ軸方向を所定の位置まで拡大し、第三の配置領域とすればよい。
【００８５】
本実施形態に係る配置領域再拡大処理によれば、大きな空白エリアが無いコラージュ画像を作成することができる。また、少なくとも画像が無回転の時には、画像が重ならなくなる。また、配置領域再拡大処理を実行することにより、図１５（ｃ）に示すように、もし画像が回転して画像が重なったとしても、画像の重なりを小さくすることができる。
【００８６】
Ｓ１１０９では、コラージュ領域に存在する配置基準点が直線に並んでいるか否かを判定する。ここでは、コラージュ領域に存在する複数の配置基準点を結ぶと画像配置領域の辺と平行な直線となるか否かを判定する。本実施形態の場合は、画像の総枚数が２枚であるか否かを判定すればよい。本実施形態では、図９に示すように、配置する画像の枚数が二枚である場合は、配置基準点が直線に並べられている。画像の総枚数が二枚だった場合、Ｓ１１１０へ進み、二枚ではない、すなわち、一枚である場合はＳ１１１１へ進む。
【００８７】
Ｓ１１１０では、直線用配置領域拡大処理を行う。ここで、図１６を用いて、直線用配置領域拡大処理について説明する。
【００８８】
図１６に示すように、配置基準点１６０１に結びつけられた画像１６０３をコラージュ領域３０５の左上に内接させた場合の画像基準点１６０４と、コラージュ領域の左下に内接させた場合の画像基準点１６０４’を得る。画像基準点１６０４と画像基準点１６０４’を結ぶ直線を一辺とし、配置基準点１６０１を通り且つ画像基準点１６０４と画像基準点１６０４’を結ぶ直線と平行な一辺を対向する辺とする。そして、これらの辺と、画像基準点１６０４を通りこれらの辺と直交する辺と、画像基準点１６０４’を通りこれらの辺と直交する辺により構成される長方形を第一の配置領域１６０５とする。ここで、コラージュ領域３０５の角に対象となる画像１６０３を内接させたときの画像基準点の位置は、画像１６０３の大きさに応じて変わる。例えば、画像が大きい場合は、画像が小さい場合と比較して、画像基準点が配置基準点側に位置することになる。したがって、画像基準点と配置基準位置を結ぶ直線は小さくなる。
【００８９】
ここで、画像が２枚の時には、図６に示すサイズ決定表より、画像のサイズがコラージュ領域の最大５０％までとなっている。また、本実施形態では画像の中心を画像基準点としている。このため、例えば、最大の５０％のサイズとなった画像１６０６を、コラージュ領域３０５の右上、右下に内接した時の画像基準点１６０７及び１６０７’のＸ座標は、コラージュ領域の右枠から２５％の位置となる。そして、配置基準点はコラージュ領域の右枠から３３％に位置するので、他の配置基準点を考慮して配置領域縮小処理を行う必要は無い。また、隣り合う配置基準点に必ず画像があるので、配置領域再拡大処理も必要は無い。よって、直線用配置領域拡大処理によって定まった配置領域が、そのまま第三の配置領域となる。
【００９０】
Ｓ１１１１では、点用配置領域拡大処理を行う。ここで、図１７を用いて、点用配置領域拡大処理について説明する。図１７に示すように、画像が１枚の時には配置基準点１７０１は１つであり、それに結びつけられた画像１７０３をコラージュ領域３０５の角に内接させた場合の画像基準点１７０２、１７０２’、１７０２’’、１７０２’’’を頂点とする長方形が配置領域となる。ここで、コラージュ領域３０５の角に対象となる画像１７０３を内接させたときの画像基準点の位置は、画像１７０３の大きさに応じて変わる。例えば、画像が大きい場合は、画像が小さい場合と比較して、画像基準点が配置基準点側に位置することになる。したがって、画像基準点と配置基準位置を結ぶ直線は小さくなる。
【００９１】
また、画像が１枚の場合は、隣り合う基準点が存在しないため、配置領域縮小処理及び配置領域再拡大処理は必要なく、点用配置領域拡大処理によって定まった配置領域が、そのまま第三の配置領域となる。
【００９２】
Ｓ１１０１〜Ｓ１１１１において設定された第三の配置領域が、最終的に画像の基準点を配置することができる画像基準点配置領域となる。Ｓ１１０１〜Ｓ１１１１を全ての画像について順に行うことにより、各画像に対する画像基準点配置領域が決定する。
【００９３】
以上のように、画像基準点配置領域を生成した後、基準点位置決定処理により、画像基準点配置領域内のどこに画像基準点を置くかを乱数等を用いてランダムで決定する（Ｓ５０４）。これにより、ＩＤ４０５及びＩＤ４０６の値が決まる。その後、画像の角度を決定する角度決定処理により画像の角度を、例えば、±３５度の角度内から乱数等を用いてランダムで決定する（Ｓ５０５）。このときの値をＩＤ４０７の値とする。
【００９４】
本実施形態では、画像が画像配置領域に配置される際の大きさ及びその画像に対応付けられた配置基準点の位置に基づいて、画像基準点を配置可能な領域を決定し、その配置可能な領域内に画像基準点を配置する。これにより、様々なパターンの見た目が良好な画像を得ることが可能となる。
【００９５】
また、本実施形態では、配置基準点パターン表より、画像が有る程度バラける位置に配置されるように配置基準点のパターンを決めつつも、他の画像との関係性を考慮して、各画像の画像基準点配置領域を生成する。これにより、画像同士の重なりを低減しつつ、大きな空白エリアが無いように、画像基準点を配置可能なエリア、すなわち、画像基準点配置領域を決定することができる。そして、画像基準点配置領域の中でランダムに画像基準点を配置することで、毎回違う結果になるシャッフルを実現することができる。したがって、本実施形態によれば、毎回異なる結果を得ることが可能なコラージュアプリケーションを実現することができる。
【００９６】
上述したように、本実施形態では、他の画像の情報との関係性を考慮して、見栄えがよくなるように画像の配置する位置を計算して調整して画像基準点配置領域を定めている。これにより、画像基準点配置領域内にランダムに画像の画像基準点を配置することにより、見栄えがよく、且つ、シャッフルのたびに異なるコラージュ画像を得ることができる。すなわち、本実施形態によれば、画像の配置位置の自由度を向上させることができる。
【００９７】
（実施形態２）
本実施形態では、画像基準点の決定方法以外は実施形態１と同様であるので、実施形態１と同様の構成については説明を省略する。
【００９８】
図１８〜図２０を用いて、本実施形態の画像基準点の決定方法について説明する。
【００９９】
図１８は、本実施形態で用いる画像の説明図である。図１８（ａ）は、人物の顔に位置情報がついた写真画像について説明する図である。
【０１００】
画像１８０１は、写っている人物は一人であり、顔を示す顔領域１８０２が指定されている。また、その顔の人物名が画像情報として定義されている。本実施形態では、人物名を画像情報としたが、人物名の代わりに、例えば、コラージュ画像を作ろうとしているユーザの名前を画像情報として定義してもよい。
【０１０１】
画像１８０３は、ユーザの子供の学芸会の写真画像である。この場合、ユーザの子供の顔を示す顔領域１８０６の他に、その友達の顔領域１８０４及び１８０５が定義され、それぞれの顔領域に対してその顔の人物名が定義されている。
【０１０２】
また、画像１８０７は、ユーザとユーザの子供のキャッチボールの画像である。この場合、ユーザの顔を示す顔領域１８０８と、ユーザの子供の顔を示す顔領域１８０９が定義され、それぞれの顔領域に対して人物名が画像情報として定義されている。
【０１０３】
上述した画像情報は、例えば、ネットワーク部１０６を介してソーシャルネットワークサイト等から読み出し、記憶部１０３に保存される。
【０１０４】
図２０は、本実施形態の画像基準点の決定処理のフローチャートである。
【０１０５】
Ｓ２００１において、ターゲットとなる画像における顔領域の有無について判断する。言い換えれば、ターゲットとなる画像に顔領域が設定されているか否かを判断する。顔領域が有る場合は、Ｓ２００２に進み、顔領域が無い場合、すなわち、顔領域が設定されていない場合は、Ｓ２００３へ進む。
【０１０６】
Ｓ２００２では、画像の中心を画像基準点に決定し、その後に処理を終了する。
【０１０７】
Ｓ２００３では、顔領域が１つであるか否かを判定する。顔領域が１つである場合は、Ｓ２００４へ進み、顔領域が２以上である場合は、Ｓ２００５へ進む。
【０１０８】
Ｓ２００４では、顔領域が１つだけの場合、その唯一の顔画像の中心を画像基準点に決定し、その後に処理を終了する。
【０１０９】
Ｓ２００５では、画像内の複数の顔領域の中にユーザ本人の顔があるか否かを判断する。ユーザ本人の顔がある場合は、Ｓ２００６へ進み、ユーザ本人の顔がない場合は、Ｓ２００７へ進む。
【０１１０】
Ｓ２００６では、ユーザ本人の顔画像の中心を画像基準点に決定し、その後に処理を終了する。
【０１１１】
Ｓ２００７では、ユーザの家族の顔が１つだけであるか否かを判断する。すなわち、複数の顔領域の中にユーザ本人の顔領域が存在しないが、家族の顔領域が１つだけ存在する場合は、Ｓ２００８へ進み、家族の顔領域が２以上存在する場合又はユーザの家族の顔領域が存在しない場合は、Ｓ２００９へ進む。
【０１１２】
Ｓ２００８では、その唯一の家族の顔領域の中心を画像基準点に決定し、その後に処理を終了する。
【０１１３】
Ｓ２００９では、複数の顔領域のうち、ランダムで決めた顔領域の中心を画像基準点に決定し、その後に処理を終了する。
【０１１４】
図１８（ｂ）は、図２０のフローチャートにより定まった画像基準点の例である。図１８（ｂ）に示すように、人物が一人である画像１８０１では、その人物の顔領域１８０２の中心が画像基準点１８１０と決定する。これに対し、ユーザの子供と、その友達が写っている画像１８０３では、ユーザの子供の顔領域１８０６の中心が画像基準点１８１１となる。ユーザとその子供が写っている画像１８０７では、ユーザの顔領域１８０９の中心を画像基準点１８１２とする。この画像基準点を用いて、実施形態１と同様の方法により、画像基準点配置領域を決定すればよい。すなわち、画像基準点を用いた以外は、実施形態１と同様の方法により、コラージュ画像を生成することができる。
【０１１５】
上述した画像基準点の決定処理では、Ｓ１１０７においてユーザの家族の顔領域が１つか否かを判定した。このとき、ユーザの家族であるか否かの判断は、例えば、ユーザの人物名とユーザの家族の人物名を互いに関連付けて記憶部１０３又は外部の記憶手段に予め記憶させておき、これを参照して行えばよい。
【０１１６】
上述した画像基準点決定処理では、顔領域が存在する場合はその顔領域の中心を画像基準点とし、画像の中に複数の顔領域が存在する場合はユーザ本人の顔又はユーザの家族の顔を含む顔領域の中心を優先的に画像基準点として決定する。これにより、顔領域をより確実にコラージュ領域３０５内に収めたコラージュ画像を得ることができる。また、ユーザ本人又はユーザの家族の顔をより確実にコラージュ領域３０５内収めたコラージュ画像を得ることができる。
【０１１７】
ここで、図１９を用いて本実施形態の画像基準点配置領域の決定処理について簡単に説明する。図１９は、顔領域を画像基準点とした画像基準点配置領域決定処理の説明図である。本実施形態では、画像を３枚としたので、図９の基準点パターンに基づくと、配置基準点は４つに定まる。４つの配置基準点のうち、例えば、左上の配置基準点１９０１に画像基準点１８１０が結びつけられた場合、実施形態１と同様の処理により、画像基準点配置領域１９０２が定まる。また、右上の配置基準点１９０３に画像基準点１８１１が結びつけられた場合も、実施形態１と同様の処理により、画像基準点配置領域１９０４が定まる。具体的には、実施形態１に記載した未使用エリアへの配置領域再拡大処理により、下に伸びた領域になる。左下の配置基準点１９０５に画像基準点１８１２が結びつけられた場合も、実施形態１と同様の処理により、画像基準点配置領域１９０６が定まる。この場合も、実施形態１に記載の未使用エリアへの配置領域再拡大処理により、右に伸びた領域になる。
【０１１８】
本実施形態のように、画像基準点が、画像の中心ではない場合、画像の中心が画像基準点である場合よりも、画像と画像の重なりが増える可能性がある。しかしながら、画像基準点が顔画像の中心であることにより、少なくともターゲットとした顔画像（本実施形態ではユーザ本人又はユーザの家族）が、他の画像の後ろに隠れる可能性は低減する。例えば、図１９（ｂ）に示すように、画像と画像が最も近づいた状態となった場合、画像１８０３内の友達の顔は隠れる可能性があるが、画像基準点配置領域１９０４に収まる画像基準点１８１１を中心とする子供の顔は、隠れる可能性が低い。具体的には、画像基準点配置領域１９０２の最も右側に画像基準点１８１０が存在し、画像基準点配置領域１９０４の最も左側に画像基準点１８１１が存在する場合、画像基準点配置領域１９０４に収まる画像基準点１８１１を中心とする子供の顔は、隠れる可能性が低い。
【０１１９】
上述したように、本実施形態では、顔の中心を画像基準点とすることで、少なくともその顔が他の画像の後ろに隠れる可能性を減らすことができる。コラージュ画像では、画像の一部が上下に重なることがあるが、特定の人物、本実施形態では、ユーザ又はユーザの家族だけは隠れないように配置することができる。ユーザがインターネット上で交流を行うためのソーシャルネットワークサイトでは、ユーザの写真をネットワーク上に保存できる機能を持つことが多く、さらに、写真に写っている人物の顔の位置やその人物の名前等を写真のデータに付属して保存している場合がある。このような場合、その顔の位置データや人物の名前を取得する事で、顔の位置を特定し、顔が重ならないようにコラージュを作成することができる。
【０１２０】
なお、本実施形態は、実施形態１と同様に、画像が画像配置領域に配置される際の大きさ及びその画像に対応付けられた配置基準点の位置に基づいて、画像基準点を配置可能な領域を決定し、その配置可能な領域内に画像基準点を配置する。これにより、画像基準点配置領域内にランダムに画像の画像基準点を配置することにより、見栄えがよく、且つ、シャッフルのたびに異なるコラージュ画像を得ることができる。すなわち、本実施形態によれば、画像の配置位置の自由度を向上させることができる。
【０１２１】
（他の実施形態）
以上、本発明の各実施形態を説明したが、本発明の基本的構成は上述したものに限定されるものではない。
【０１２２】
上述した実施形態では、所定の領域に画像を１〜６枚配置する場合を例に挙げて説明したが、７枚以上を配置する場合も同様の方法により配置すればよい。すなわち、実施形態１及び２と同様に、コラージュ領域に配置する画像の数に応じて、配置基準点の数を設定し、その後の処理を行うようにすればよい。
【０１２３】
上述した実施形態では、図９に示す配置基準点のパターンを用いたが、配置基準点のパターンはこれに限定されるものではない。例えば、配置基準点の数を画像の数と常に同数とするように設定してもよく、画像の数より常に多くなるように設定してもよい。また、配置基準点の位置もこれに限定されるもではなく、各配置基準点を等間隔に設けなくてもよい。
【０１２４】
実施形態２では、複数ある顔領域のうち、誰の顔の顔領域を画像基準点にするかは自動で行うようにしたが、これに限定されるものではない。例えば、ユーザに特定の人物を指定させて、その人物の顔領域の中心を画像基準点としてもよい。
【０１２５】
実施形態２の画像基準点の決定処理では、ユーザ本人の顔があるか否か及びユーザの家族の顔が１つか否かを判定したが、これに限定されず、例えば、ユーザ本人の顔があるか否かのみを判定してもよい。また、これらの判定と合わせて又はユーザ本人の判定の代わりに、ユーザの友達の顔があるか否かを判定してもよく、特定の人物の顔があるか否かを判定してもよい。ユーザの友達の顔があるか否かを判断する場合は、例えば、ユーザの人物名とユーザの友達の人物名を互いに関連付けて記憶部１０３又は外部の記憶手段に予め記憶させておき、これを参照して行えばよい。
【０１２６】
また、実施形態１では、画像の中心を画像基準点とし、実施形態２では、顔領域の中心を画像基準点としたが、画像基準点の決定はこれに限定されるものではない。例えば、顔領域の代わりに、景色内の有名な建物など、特定のオブジェクトの中心を画像基準点としてもよい。また、顔やオブジェクトの中心ではなくその特徴を示すパーツ、例えば顔であれば目、富士山であれば山頂などを画像基準点としてもよい。いずれを画像基準点としたとしても、画像基準点となる部分及びその近辺の画像は、他の画像に重なって隠れる可能性が低くなる。
【０１２７】
実施形態１及び２では、サイズ決定処理により配置する画像のサイズを決定したが、サイズ決定処理を行わなくてよい。例えば、元画像のサイズを変更することなくそのままコラージュ領域に配置するようにしてもよく、画像をトリミング等して適当な大きさにした後コラージュ領域に配置するようにしてもよい。
【０１２８】
上述した実施形態では、図１０に示すように、１つ目の画像に応じて他の画像が対応付けられる配置基準点の優先度を変更するようにしたが、変更しないようにしてもよい。
【０１２９】
上述した実施形態では、大きい画像順に結び付け処理及び画像基準点配置領域の生成を行ったがこれに限定されるものではなく、例えば、画像の大きさに関わらずランダムに結び付け処理及び画像基準点配置領域の生成を行ってもよい。ただし、大きい画像順に結び付け処理及び画像基準点配置処理の生成を行うことにより、より画像同士の重なりを低減しつつ、大きな空白エリアが無いコラージュ画像を作成することができる。
【０１３０】
また、上述した実施形態では、配置領域縮小処理を行ったが、行わなくてもよい。ただし、配置領域縮小処理を行うことにより、より画像同士の重なりを低減することができる。
【０１３１】
上述した実施形態では、未使用エリアへの配置領域再拡大処理を行ったが、行わなくてもよい。
【０１３２】
上述した実施形態では、Ｓ５０３〜５０５、Ｓ８０１，Ｓ８０２，Ｓ１００４，Ｓ１００８，Ｓ１００９では、擬似乱数などの乱数等を用いてランダム配置やパターンを決定するようにしたが、これに限定されるものではない。例えば、予め決められた規則に従って決定するようにしてもよい。いずれにしても、複数の選択肢から選択を行うことにより、様々なパターンの画像を得ることができる。
【０１３３】
また、コラージュアプリケーションでは、配置したい画像に、装飾を目的とした枠を付ける場合があり、また、その枠に画像を説明する文章などを付けることができる場合もある。例えば、図２１では、画像に装飾枠２１０１が付され、さらに説明文を表示するテキストボックス２１０２が存在する。このような場合、画像の中心ではなく、装飾枠２１０１の領域を含めた領域の中心２１０３を画像基準点と設定してもよい。このように、装飾枠２１０１の領域を含めた上で画像基準点配置領域の生成を行うことにより、装飾枠２１０１、及びその上のテキストボックス２１０２等が他の画像に隠されてしまう可能性を下げることができる。
【０１３４】
上述した実施形態は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、プログラムは、１つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、一部または全部をハードウェアによって実現するようにしてもよい。
【図１】
2014016787.tif 000003
【図２】
2014016787.tif 000004
【図３】
2014016787.tif 000005
【図４】
2014016787.tif 000006
【図５】
2014016787.tif 000007
【図６】
2014016787.tif 000008
【図７】
2014016787.tif 000009
【図８】
2014016787.tif 000010
【図９】
2014016787.tif 000011
【図１０】
2014016787.tif 000012
【図１１】
2014016787.tif 000013
【図１２】
2014016787.tif 000014
【図１３】
2014016787.tif 000015
【図１４】
2014016787.tif 000016
【図１５】
2014016787.tif 000017
【図１６】
2014016787.tif 000018
【図１７】
2014016787.tif 000019
【図１８】
2014016787.tif 000020
【図１９】
2014016787.tif 000021
【図２０】
2014016787.tif 000022
【図２１】
2014016787.tif 000023