(57)【特許請求の範囲】
【請求項１】
入力画像を解析して予め設定されたオブジェクトを含む領域の画像を特徴領域として抽出する特徴領域抽出手段と、
前記抽出された特徴領域の画素数からなるサイズを検出する領域サイズ検出手段と、
前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率を決定する倍率決定手段と、
前記決定された倍率に基づいて、前記入力画像を拡大または縮小する拡大縮小手段と、
前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像を生成するフォトモザイク画像生成手段と
を備える画像処理装置。
【請求項２】
前記抽出された特徴領域の種類に対応する配置方式をそれぞれ記憶する配置方式記憶手段をさらに備える
請求項１に記載の画像処理装置。
【請求項３】
前記拡大縮小手段は、
前記入力画像を拡大または縮小せずに、前記倍率決定手段により決定された倍率の逆数に基づいて前記ブロックのサイズを拡大または縮小する
請求項１に記載の画像処理装置。
【請求項４】
前記フォトモザイク画像生成手段は、
前記拡大または縮小された前記入力画像の各ブロックの画像における画素の特性を示す代表値に基づいて、前記複数のクラスのセンタ値を算出し、
前記センタ値と、前記入力画像の各ブロックの画像の代表値との距離に基づいて、前記ブロックの画像のそれぞれを、予め設定された複数のクラスに分類し、
前記センタ値と、前記素材画像における画素の特性を示す代表値との距離、および前記距離の閾値に基づいて、前記ブロックに貼り付けるための画像として記憶されている複数の前記素材画像を前記複数のクラスに分類し、
前記ブロックのクラスと同じクラスに分類された素材画像のそれぞれと、前記ブロックの画像とを予め決められた基準で照合することにより前記ブロックに貼り付ける素材画像を決定する
請求項１に記載の画像処理装置。
【請求項５】
前記フォトモザイク画像生成手段は、
前記複数のクラスのそれぞれに分類された前記素材画像の数に応じて前記閾値を変更し、前記センタ値と前記素材画像の代表値との距離、および前記変更された閾値に基づいて、前記素材画像を前記複数のクラスに再度分類する
請求項４に記載の画像処理装置。
【請求項６】
前記フォトモザイク画像生成手段は、
前記ブロックのクラスに分類された素材画像の画素値と、前記ブロックの画像における対応する画素の画素値の距離に基づいて、前記ブロックに貼り付ける素材画像の適正度を算出することで、前記照合を行う
請求項１に記載の画像処理装置。
【請求項７】
前記フォトモザイク画像生成手段は、
前記ブロックに貼り付けることが決定された前記素材画像に、使用済であることを表すフラグを設定し、
他の前記ブロックに貼り付ける前記素材画像は、そのブロックのクラスと同じクラスに分類された前記素材画像であって、前記フラグが設定されていない素材画像の中から決定する
請求項６に記載の画像処理装置。
【請求項８】
前記フォトモザイク画像生成手段は、
前記ブロックの周囲の所定の範囲内に位置するブロックに貼り付ける前記素材画像を、前記ブロックに貼り付けることが決定された前記素材画像以外の前記素材画像の中から決定する
請求項６に記載の画像処理装置。
【請求項９】
前記フォトモザイク画像生成手段は、
前記ブロックに隣接するブロックに貼り付ける前記素材画像を、前記ブロックに貼り付けることが決定された前記素材画像とのブロックマッチング法により求められる画像の類似度が閾値以下となる前記素材画像の中から決定する
請求項６に記載の画像処理装置。
【請求項１０】
前記フォトモザイク画像生成手段は、
前記適正度が予め設定された閾値以上となる前記素材画像が存在しない場合、当該ブロックの画像を前記入力画像のままとする
請求項６に記載の画像処理装置。
【請求項１１】
前記特徴領域抽出手段は、ユーザにより指定された領域の画像を特徴領域として抽出する
請求項１に記載の画像処理装置。
【請求項１２】
前記特徴領域に配置される前記ブロックが、他の領域に配置されるブロックの画素数より小さい値の画素数で構成されるブロックとされる
請求項１に記載の画像処理装置。
【請求項１３】
前記入力画像において検出された被写体の画像の画素に基づいて、前記入力画像が前記フォトモザイク画像の生成に適した画像であるか否かを判定する適性判定手段をさらに備える
請求項１に記載の画像処理装置。
【請求項１４】
前記適性判定手段は、
前記検出された被写体の画像を構成する画素の値と、前記被写体の画像の画素に隣接する被写体以外の画像の画素の値との差分に基づいて、前記入力画像が前記フォトモザイク画像の生成に適した画像であるか否かを判定する
請求項１３に記載の画像処理装置。
【請求項１５】
前記入力画像が前記フォトモザイク画像の生成に適した画像ではないと判定された場合、
前記検出された被写体の画像の画素値に対応する被写体以外の画像の画素値であって、前記入力画像が前記フォトモザイク画像の生成に適したものとなるために必要となる画素値の候補を複数選択し、
予め記憶されている複数の前記素材画像の代表値に基づいて、前記複数の候補の中から、前記被写体以外の画像の画素値を決定し、
前記決定された画素値により、前記被写体以外の画像の画素値を変換する
請求項１４に記載の画像処理装置。
【請求項１６】
前記適性判定手段は、
前記検出された被写体の画像を構成する画素数と、前記入力画像全体を構成する画素数とに基づいて、前記入力画像が前記フォトモザイク画像の生成に適した画像であるか否かを判定する
請求項１３に記載の画像処理装置。
【請求項１７】
特徴領域抽出手段が、入力画像を解析して予め設定されたオブジェクトを含む領域の画像を特徴領域として抽出し、
領域サイズ検出手段が、前記抽出された特徴領域の画素数からなるサイズを検出し、
倍率決定手段が、前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率を決定し、
拡大縮小手段が、前記決定された倍率に基づいて、前記入力画像を拡大または縮小し、
フォトモザイク画像生成手段が、前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像を生成するステップ
を含む画像処理方法。
【請求項１８】
コンピュータを、
入力画像を解析して予め設定されたオブジェクトを含む領域の画像を特徴領域として抽出する特徴領域抽出手段と、
前記抽出された特徴領域の画素数からなるサイズを検出する領域サイズ検出手段と、
前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率を決定する倍率決定手段と、
前記決定された倍率に基づいて、前記入力画像を拡大または縮小する拡大縮小手段と、
前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像を生成するフォトモザイク画像生成手段とを備える画像処理装置として機能させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置および方法、並びにプログラムに関し、特に、特別な装置やスキルなどを必要とせずに、短時間で美しいフォトモザイクを生成することができるようにする画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラの普及などに伴い、多くの画像を簡単に撮影することが可能になってきている。
【０００３】
フォトモザイク画像は、多数の写真をモザイクのように組み合わせて作成した画像であり、従来は、例えば、映画の宣伝用のポスター、企業のロゴなどを用いた商用のものとして作成されることが多かった。フォトモザイク画像の作成には、多数の画像を用意し、モザイクのタイルとして使用する画像を適切に選択するなど高度な技術が求められる。
【０００４】
しかし、上述のようにデジタルカメラが普及したことや、情報技術の発展に伴い、一般のユーザでも、フォトモザイク画像を作成することが可能となってきた。
【０００５】
例えば、制作目標画像の各ブロックの代表値とデータベースの画像の各画像の代表値との間の距離を重み付けて計算することによって、制作目標画像の各ブロックに採用するデータベースの画像を決定することが提案されている（例えば、特許文献１参照）。
【０００６】
また、制作目標画像の各ブロックの代表値を算出し近似色により領域分離するとともに、データベースの画像を各画像の代表値によりクラスタリングし、制作目標画像の各ブロックの領域分離結果に対して、該当するクラスの画像を順次使用する技術も提案されている（例えば、特許文献２参照）。
【０００７】
さらに、制作目標画像の各ブロックをより細かく分割して照合することにより，元の画像の色の分布を維持しながらフォトモザイク画像を生成する技術も提案されている（例えば、特許文献３参照）。
【０００８】
また、制作目標画像の各ブロックをより細かく分割した小領域とデータベースの画像をより細かく分割した小領域の差分に対してユーザの指定した重みをかけ足し合わせた結果により、各タイルに採用するデータベースの画像を決定することも提案されている（例えば、特許文献４参照）。
【０００９】
さらに、平均輝度値、L*a*b*の平均距離によってデータベースの画像を選択することも提案されている（例えば、特許文献５参照）。
【００１０】
また、ネットワークを介して、サーバ上にある画像データベースの画像と制作目標画像のブロックを照合してサーバ上で画像データベースの画像の配置を決定し、クライアント側でフォトモザイク画像を生成することも提案されている（例えば、特許文献６参照）。
【特許文献１】特開２０００−２９８７２２号公報
【００１１】
【特許文献２】特開２００５−１００１２０号公報
【００１２】
【特許文献３】特開平１１−３４１２６６号公報
【００１３】
【特許文献４】特開２０００−２９５４５３号公報
【００１４】
【特許文献５】特開平１１−３４１２６４号公報
【００１５】
【特許文献６】特開２０００−２００２８３号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
しかしながら、特許文献１の技術では、採用する画像データベースの画像を決定するにあたり代表値のみを使用しているため、生成されたフォトモザイク画像において制作目標画像のテクスチャを表現できないことがある。また、特許文献１、特許文献３乃至６の技術では、制作目標画像の各ブロックについて、画像データベースの全画像との照合を行わなければならないので、演算量が多く、処理に時間がかかる。
【００１７】
さらに、特許文献２や特許文献６の技術を利用しても、制作目標画像の各ブロックの領域分離結果に対して、該当するクラスの画像が充分に用意されていない場合、多くの重複が発生し、生成されたフォトモザイク画像の品質が劣化するという問題があった。
【００１８】
また、現実的な処理時間を考慮すると、制作目標画像のブロックの個数をあまり多くすることには無理がある一方で、フォトモザイクとして生成された画像において、例えば、人の顔の目や口などの特徴的部分に配置されるべきブロックの個数を適切に調整する必要がある。このような特徴的部分を、例えば、１個のブロックで表現しようとしても、人の顔としては違和感のある画像となってしまうからである。
【００１９】
このため、フォトモザイク画像を作成する場合、モザイクのタイルとなる画像の大きさ（ブロックの大きさ）を考慮しつつ、制作目標画像のサイズを適切に調整する必要があり、このようなサイズの調整は、高いスキルが求められるものであった。
【００２０】
さらに、制作目標画像としてそもそも不適切な画像が入力された場合、各ブロックに貼り付ける画像を適切に選んでも、なお生成されたフォトモザイク画像の品質が劣化するという問題があった。従来の技術では、制作目標画像としてそもそも不適切な画像を判別することができなかった。
【００２１】
本発明はこのような状況に鑑みてなされたものであり、特別な装置やスキルなどを必要とせずに、短時間で美しいフォトモザイク画像を生成することができるようにするものである。
【課題を解決するための手段】
【００２２】
本発明の一側面は、入力画像を解析して予め設定されたオブジェクトを含む領域の画像を特徴領域として抽出する特徴領域抽出手段と、前記抽出された特徴領域の画素数からなるサイズを検出する領域サイズ検出手段と、前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率を決定する倍率決定手段と、前記決定された倍率に基づいて、前記入力画像を拡大または縮小する拡大縮小手段と、前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像を生成するフォトモザイク画像生成手段とを備える画像処理装置である。
【００２３】
前記抽出された特徴領域の種類に対応する配置方式をそれぞれ記憶する配置方式記憶手段をさらに備えるようにすることができる。
【００２４】
前記拡大縮小手段は、前記入力画像を拡大または縮小せずに、前記倍率決定手段により決定された倍率の逆数に基づいて前記ブロックのサイズを拡大または縮小するようにすることができる。
【００２５】
前記フォトモザイク画像生成手段は、前記拡大または縮小された前記入力画像の各ブロックの画像における画素の特性を示す代表値に基づいて、前記複数のクラスのセンタ値を算出し、前記センタ値と、前記入力画像の各ブロックの画像の代表値との距離に基づいて、前記ブロックの画像のそれぞれを、予め設定された複数のクラスに分類し、前記センタ値と、前記素材画像における画素の特性を示す代表値との距離、および前記距離の閾値に基づいて、前記ブロックに貼り付けるための画像として記憶されている複数の前記素材画像を前記複数のクラスに分類し、前記ブロックのクラスと同じクラスに分類された素材画像のそれぞれと、前記ブロックの画像とを予め決められた基準で照合することにより前記ブロックに貼り付ける素材画像を決定するようにすることができる。
【００２７】
前記フォトモザイク画像生成手段は、前記複数のクラスのそれぞれに分類された前記素材画像の数に応じて前記閾値を変更し、前記センタ値と前記素材画像の代表値との距離、および前記変更された閾値に基づいて、前記素材画像を前記複数のクラスに再度分類するようにすることができる。
【００２８】
前記フォトモザイク画像生成手段は、前記ブロックのクラスに分類された素材画像の画素値と、前記ブロックの画像における対応する画素の画素値の距離に基づいて、前記ブロックに貼り付ける素材画像の適正度を算出することで、前記照合を行うようにすることができる。
【００２９】
前記フォトモザイク画像生成手段は、前記ブロックに貼り付けることが決定された前記素材画像に、使用済であることを表すフラグを設定し、他の前記ブロックに貼り付ける前記素材画像は、そのブロックのクラスと同じクラスに分類された前記素材画像であって、前記フラグが設定されていない素材画像の中から決定するようにすることができる。
【００３０】
前記フォトモザイク画像生成手段は、前記ブロックの周囲の所定の範囲内に位置するブロックに貼り付ける前記素材画像を、前記ブロックに貼り付けることが決定された前記素材画像以外の前記素材画像の中から決定するようにすることができる。
【００３１】
前記フォトモザイク画像生成手段は、前記ブロックに隣接するブロックに貼り付ける前記素材画像を、前記ブロックに貼り付けることが決定された前記素材画像とのブロックマッチング法により求められる画像の類似度が閾値以下となる前記素材画像の中から決定するようにすることができる。
【００３２】
前記フォトモザイク画像生成手段は、前記適正度が予め設定された閾値以上となる前記素材画像が存在しない場合、当該ブロックの画像を前記入力画像のままとするようにすることができる。
【００３３】
前記特徴領域抽出手段は、ユーザにより指定された領域の画像を特徴領域として抽出するようにすることができる。
【００３４】
前記特徴領域に配置される前記ブロックが、他の領域に配置されるブロックの画素数より小さい値の画素数で構成されるブロックとされるようにすることができる。
【００３５】
前記入力画像において検出された被写体の画像の画素に基づいて、前記入力画像が前記フォトモザイク画像の生成に適した画像であるか否かを判定する適性判定手段をさらに備えるようにすることができる。
【００３６】
前記適性判定手段は、前記検出された被写体の画像を構成する画素の値と、前記被写体の画像の画素に隣接する被写体以外の画像の画素の値との差分に基づいて、前記入力画像が前記フォトモザイク画像の生成に適した画像であるか否かを判定するようにすることができる。
【００３７】
前記入力画像が前記フォトモザイク画像の生成に適した画像ではないと判定された場合、前記検出された被写体の画像の画素値に対応する被写体以外の画像の画素値であって、前記入力画像が前記フォトモザイク画像の生成に適したものとなるために必要となる画素値の候補を複数選択し、予め記憶されている複数の前記素材画像の代表値に基づいて、前記複数の候補の中から、前記被写体以外の画像の画素値を決定し、前記決定された画素値により、前記被写体以外の画像の画素値を変換するようにすることができる。
【００３８】
前記適性判定手段は、前記検出された被写体の画像を構成する画素数と、前記入力画像全体を構成する画素数とに基づいて、前記入力画像が前記フォトモザイク画像の生成に適した画像であるか否かを判定するようにすることができる。
【００３９】
本発明の一側面は、特徴領域抽出手段が、入力画像を解析して予め設定されたオブジェクトを含む領域の画像を特徴領域として抽出し、領域サイズ検出手段が、前記抽出された特徴領域の画素数からなるサイズを検出し、倍率決定手段が、前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率を決定し、拡大縮小手段が、前記決定された倍率に基づいて、前記入力画像を拡大または縮小し、フォトモザイク画像生成手段が、前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像を生成するステップを含む画像処理方法である。
【００４０】
本発明の一側面は、コンピュータを、入力画像を解析して予め設定されたオブジェクトを含む領域の画像を特徴領域として抽出する特徴領域抽出手段と、前記抽出された特徴領域の画素数からなるサイズを検出する領域サイズ検出手段と、前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率を決定する倍率決定手段と、前記決定された倍率に基づいて、前記入力画像を拡大または縮小する拡大縮小手段と、前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像を生成するフォトモザイク画像生成手段とを備える画像処理装置として機能させるプログラムである。
【００４１】
本発明の一側面においては、入力画像を解析して予め設定されたオブジェクトを含む領域の画像が特徴領域として抽出され、前記抽出された特徴領域の画素数からなるサイズが検出され、前記検出された前記特徴領域のサイズと、前記抽出された特徴領域の種類に対応する配置方式であって、予め定められた形状の所定の画素数のブロックの配置方式に基づいて、前記特徴領域に前記配置方式に従って前記ブロックが配置されるように、前記特徴領域の画像を拡大または縮小するための倍率が決定され、前記決定された倍率に基づいて、前記入力画像が拡大または縮小され、前記拡大または縮小された前記入力画像を、前記ブロックに分割して前記ブロックのそれぞれに素材画像を貼り付けることで、前記入力画像に対応するフォトモザイク画像が生成される。
【発明の効果】
【００４２】
本発明によれば、特別な装置やスキルなどを必要とせずに、短時間で美しいフォトモザイク画像を生成することができる。
【図面の簡単な説明】
【００４３】
【図１】本発明の一実施の形態に係るフォトモザイク画像生成装置の構成例を示すブロック図である。
【図２】図１の制作目標画像処理部の詳細な構成例を示すブロック図である。
【図３】入力された制作目標画像の例を示す図である。
【図４】図１のフォトモザイク画像生成部の詳細な構成例を示すブロック図である。
【図５】Ｎ近傍の制約を説明する図である。
【図６】フォトモザイク画像生成処理の例を説明するフローチャートである。
【図７】生成準備処理の例を説明するフローチャートである。
【図８】画像生成処理の例を説明するフローチャートである。
【図９】制作目標画像の例を示す図である。
【図１０】制作目標画像の各ブロックを、それぞれのブロックの代表値を有する画素により塗りつぶした画像の例である。
【図１１】クラス分類処理を説明するフローチャートである。
【図１２】図１０に示されるブロックのそれぞれがクラス分類された例を示す画像である。
【図１３】置換画像決定処理の例を説明するフローチャートである。
【図１４】フォトモザイク画像の例を示す図である。
【図１５】制作目標画像をブロック分割する場合の別の例を示す図である。
【図１６】被写体の画素値と背景の画素値との差分が小さい画像の例を示す図である。
【図１７】図１６の画像を制作目標画像として生成されたフォトモザイク画像の例を示す図である。
【図１８】被写体のサイズが極めて小さい画像の例を示す図である。
【図１９】フォトモザイク画像生成装置の別の構成例を示すブロック図である。
【図２０】図１９の制作目標画像判定部の詳細な構成例を示すブロック図である。
【図２１】図２０の制作目標画像判定部による制作目標画像判定処理の例を説明するフローチャートである。
【図２２】図１９の制作目標画像判定部の別の詳細な構成例を示すブロック図である。
【図２３】図２２の制作目標画像判定部による制作目標画像判定処理の例を説明するフローチャートである。
【図２４】図１９の制作目標画像判定部のさらに別の詳細な構成例を示すブロック図である。
【図２５】図２４の制作目標画像判定部による制作目標画像判定処理の例を説明するフローチャートである。
【図２６】背景色変換処理の例を説明するフローチャートである。
【図２７】パーソナルコンピュータの構成例を示すブロック図である。
【発明を実施するための形態】
【００４４】
以下、図面を参照して、本発明の実施の形態について説明する。
【００４５】
図１は、本発明の一実施の形態に係るフォトモザイク画像生成装置の構成例を示すブロック図である。
【００４６】
フォトモザイクは、例えば、多数の写真などの小さい画像をモザイクのように組み合わせて１枚の大きな画像を作成するものとされる。フォトモザイク画像は、例えば、離れて観察した場合、１枚の写真のように見える一方で、近くで観察した場合は、モザイクのタイルとなる個々の画像が１枚1枚見えるように生成される。
【００４７】
同図に示されるように、フォトモザイク画像生成装置１０は、制作目標画像処理部２０、フォトモザイク画像生成部３０により構成されている。
【００４８】
制作目標画像処理部２０は、フォトモザイク画像として生成する画像の元となる画像である制作目標画像を入力画像として受け付けるようになされている。制作目標画像は、例えば、人物の画像などとされる。
【００４９】
制作目標画像処理部２０は、例えば、入力された制作目標画像から後述するように特徴領域を抽出する。制作目標画像が人物の画像である場合、特徴領域は、例えば、人物の顔の中の目、鼻、口などの部分とされる。
【００５０】
制作目標画像処理部２０は、抽出された特徴領域に割り当てるべきブロックの数を決定し、そのブロックの数に対応する大きさの画像となるように、特徴領域の画像を拡大または縮小する。そして、制作目標画像処理部２０は、その拡大または縮小の倍率に合わせて、制作目標画像全体を拡大または縮小するようになされている。
【００５１】
制作目標画像処理部２０は、このように、拡大または縮小された制作目標画像を、フォトモザイク画像生成部３０に供給する。
【００５２】
フォトモザイク画像生成部３０は、制作目標画像処理部２０の処理結果として得られた制作目標画像全体をブロックに分割する。ブロックは、例えば、同一のサイズの矩形の形状とされ、それぞれのブロックに、モザイクのタイルとなる画像が１枚貼り付けられるようになされている。
【００５３】
そして、フォトモザイク画像生成部３０は、それらのブロックに相応しい画像を選択して張り付けるようになされている。
【００５４】
フォトモザイク画像生成部３０は、例えば、画像データベース５１に蓄積されている画像の中から制作目標画像の各ブロックに相応しい画像を選択する。あるいはまた、フォトモザイク画像生成部３０は、例えば、ネットワーク５２に接続されたサーバ５３に蓄積されている画像の中から制作目標画像の各ブロックに相応しい画像を選択する。
【００５５】
すなわち、画像データベース５１に蓄積されている画像、サーバ５３に蓄積されている画像は、モザイクのタイルとして利用するための画像であって、いわば、フォトモザイク画像の素材となる画像である。
【００５６】
フォトモザイク画像生成部３０は、後述するように、制作目標画像の各ブロックの画素値などに基づいてクラス分類を行うようになされている。これにより、制作目標画像の各ブロックが、例えば、５つのクラスに分類される。また、フォトモザイク画像生成部３０は、例えば、画像データベース５１に蓄積されている画像を同様の方式により、例えば、５つのクラスに分類する。
【００５７】
そして、フォトモザイク画像生成部３０は、制作目標画像の各ブロックの画像と、そのブロックのクラスに分類された画像データベース５１の画像との照合を行なって、画像データベース５１に蓄積された画像の中から１枚の画像を選択するようになされている。
【００５８】
フォトモザイク画像生成部３０は、上述のように選択された画像をモザイクのタイルとして制作目標画像の各ブロックに貼り付ける。これにより、出力画像としてフォトモザイク画像が出力されるようになされている。
【００５９】
図２は、図１の制作目標画像処理部２０の詳細な構成例を示すブロック図である。
【００６０】
特徴領域検出部２１は、入力された制作目標画像を解析して、特徴領域を抽出するようになされている。例えば、制作目標画像が人物の画像である場合、特徴領域検出部２１は、顔画像認識処理などを実行することにより、人物の顔を検出するとともに、顔の中の特徴的部分である目、口などを構成する領域を特定する。そして、目、口などその特徴領域を特定する情報、特定された領域の座標位置、面積などの情報が抽出された特徴領域の情報として取得されることになる。
【００６１】
特徴領域検出部２１は、例えば、画像から、肌色画素を抽出し、抽出した肌色画素からなる顔画像を抽出する。そして、特徴領域検出部２１は、顔画像における、水平方向に１列の画素に含まれる連続している肌色画素の数に基づいて横枠を決め、横枠の幅に、所定の係数を乗じて縦枠の高さとし、垂直基準点に対して所定の長さだけオフセットした位置を縦枠の中心とする。特徴領域検出部２１は、例えば、このようにして得られた横枠と縦枠に基づいて四角の枠の中の顔領域を抽出する。
【００６２】
そして、特徴領域検出部２１は、例えば、顔領域の画像と、標準的な顔画像のテンプレートとの一致の度合いを示す値などに基づいて、顔領域とされた画像が実際に顔画像であるか否かを判定し、顔画像であると判定された場合、目や口などを検出する。
【００６３】
特徴領域検出部２１は、例えば、顔領域の画素のうち、肌色画素に相当しない非肌色画素にラベリングし、オブジェクトを抽出する。そして、ラベルを参照して、顔領域の非肌色画素からなるオブジェクトのそれぞれの重心を算出し、オブジェクトのそれぞれの重心を示す重心データに基づいて目のオブジェクト、口のオブジェクトなどを検出する。
【００６４】
さらに、検出したオブジェクトの位置を特定するデータ（例えば、目のオブジェクトの重心の位置を示すデータ）に基づいてオブジェクト位置が、予め定めた所定の大きさの方形領域を設定し、その方形領域の画像を特徴領域とする。
【００６５】
なお、上述した特徴領域の抽出の方式は、一例であり、他の方式により特徴領域の抽出が行なわれるようにしても構わない。
【００６６】
特徴領域検出部２１は、上述したように抽出された特徴領域の情報を、倍率決定部２２に供給する。
【００６７】
図３は、入力された制作目標画像の例を示す図である。この例では、制作目標画像１００は人物の画像とされている。
【００６８】
特徴領域検出部２１は、例えば、図３において枠１０１で示される目の領域を特徴領域として抽出する。
【００６９】
倍率決定部２２は、抽出した特徴領域のサイズを検出する。ここで、サイズは、例えば、抽出した特徴領域の垂直方向および水平方向の画素数などとされる。
【００７０】
特徴領域データベース２４には、特徴領域に応じたブロックの配置方式が記憶されている。例えば、特徴領域データベース２４には、目の特徴領域に対応して、「水平方向３２０×４、垂直方向２４０×２」という情報が記憶されている。これは、目の特徴領域には、水平方向３２０画素、垂直方向２４０画素で構成される矩形のブロックを、水平方向に４個、垂直方向に２個配置することを表している。すなわち、目の特徴領域には７６,８００（＝３２０×２４０）画素のブロックが合計８（＝４×２）個配置されることになる。
【００７１】
なお、例えば、プリンタやディスプレイなどの解像度やサイズ（用紙サイズ、アスペクト比など）、画像の向き（縦向きか横向きか）などによって、特徴領域に応じたブロックの配置方式がさらに異なるものとなるようにしてもよい。
【００７２】
同様に、特徴領域データベース２４には、例えば、口の領域に配置すべき水平方向のブロック数および垂直方向のブロック数からなる配置方式が記憶されている。すなわち、特徴領域データベース２４には、例えば、目、口、・・・などその特徴領域の種類に応じたブロックの配置方式がそれぞれ記憶されている。
【００７３】
なお、ブロックの画素数（いまの場合、３２０×２４０）は、例えば、画像データベース５１に記憶されている画像のサイズなどに基づいて定まるものとされる。
【００７４】
倍率決定部２２は、目、口などその特徴領域を特定する情報に基づいて、特徴領域データベース２４から、その特徴領域に対応するブロックの配置方式を読み出す。そして、上述したように検出した特徴領域のサイズと、特徴領域データベース２４から読み出したブロックの配置方式に基づいて、特徴領域の拡大または縮小倍率を算出する。
【００７５】
例えば、特徴領域として目が抽出された場合、制作目標画像から抽出された特徴領域のサイズを、水平方向の画素数IM_XEYE、垂直方向の画素数IM_YEYEで表すこととする。また、特徴領域データベース２４から読み出したブロックの配置方式に基づいて得られる水平方向の画素数をDB_XEYE、垂直方向の画素数をDB_YEYEで表すことにする。
【００７６】
いまの場合、倍率決定部２２は、垂直方向の変更率Vaと水平方向の変更率Haを式（１）および式（２）により求めて、特徴領域の拡大または縮小倍率を算出する。
【００７７】
Va＝DB_YEYE/IM_YEYE
・・・（１）
Ha=DB_XEYE/IM_XEYE
・・・（２）
【００７８】
倍率決定部２２は、上述のように求められた特徴領域の拡大または縮小倍率に基づいて、制作目標画像全体の拡大または縮小倍率を決定する。制作目標画像全体の拡大または縮小倍率は、特徴領域の拡大または縮小倍率と同じでもよい。また、上述した変更率Vaおよび変更率Haを、四捨五入、切り上げ、切り捨てなどしてもよい。さらに、変更率Vaおよび変更率Haが異なる場合、例えば、いずれか一方を選択したり、平均値を算出するなどして垂直方向の変更と水平方向の変更率が同じ値となるように加工されるなどしてもよい。
【００７９】
倍率決定部２２は、制作目標画像全体の拡大または縮小倍率を画像生成部２３に供給する。
【００８０】
画像生成部２３は、倍率決定部２２から供給された拡大または縮小倍率で、入力画像である制作目標画像を拡大または縮小するようになされている。
【００８１】
なお、特徴領域検出部２１により、特徴領域が複数抽出された場合(例えば、左右の目がそれぞれ抽出された場合)、倍率決定部２２は、それぞれのサイズを検出する。そして、例えば、平均値を算出するか、予め設定された基準に従っていずれか１つの特徴領域を選択するなどして、拡大または縮小倍率が算出されるようになされている。
【００８２】
上述した例において、特徴領域検出部２１は、入力された制作目標画像を解析して、特徴領域を自動的に抽出することを前提として説明したが、例えば、ユーザがマウスなどを用いて指定した領域が特徴領域として抽出されるようにしてもよい。
【００８３】
この場合、例えば、特徴領域を指定したユーザが、その特徴領域を特定する情報（例えば，目、鼻、口など）をさらに入力するようにする。あるいはまた、ユーザに対して特徴領域の候補リストが提示されるようにし、候補リストに基づいて選択した特徴領域がユーザにより指定されるようにしてもよい。
【００８４】
現実的な処理時間を考慮すると、制作目標画像のブロックの個数をあまり多くすることには無理がある一方で、フォトモザイクとして生成された画像において、例えば、人の顔の目や口などに配置されるべきブロックの個数を適切に調整する必要がある。このような特徴領域を、例えば、１個のブロック（モザイクのタイル）で表現しようとしても、人の顔としては違和感のある画像となってしまうからである。
【００８５】
このため、フォトモザイク画像を作成する場合、モザイクのタイルとなる画像の大きさ（ブロックの大きさ）を考慮しつつ、制作目標画像のサイズを適切に調整する必要があり、このようなサイズの調整は、高いスキルが求められるものであった。
【００８６】
これに対して本発明では、制作目標画像の特徴領域とブロックの大きさに基づいて制作目標画像が自動的に縮小または拡大されるようにすることができる。従って、特別なスキルなどを必要とせずに、短時間で美しいフォトモザイク画像を生成することができる。
【００８７】
図４は、図１のフォトモザイク画像生成部３０の詳細な構成例を示すブロック図である。
【００８８】
同図に示されるように、フォトモザイク画像生成部３０は、ブロック分割部３１、代表値決定部３２、クラスセンタ値算出部３３、および制作目標画像クラス分類部３４を含む構成とされている。また、フォトモザイク画像生成部３０はさらに、置換画像決定部３５、画像置換部３６、画像データベースクラス分類部３７、および蓄積メモリ３８を含む構成とされている。
【００８９】
ブロック分割部３１は、制作目標画像処理部２０により上述のように拡大または縮小された制作目標画像をブロックに分割する。上述したように、ブロックは、例えば、同一のサイズの矩形の形状とされ、それぞれのブロックに、モザイクのタイルとなる画像が１枚貼り付けられるようになされている。
【００９０】
ブロック分割部３１は制作目標画像を、例えば、水平方向３２０画素、垂直方向２４０画素で構成される矩形のブロックに分割するようになされている。
【００９１】
代表値決定部３２は、ブロック分割部３１により分割された各ブロックの代表値をそれぞれ決定する。ここで代表値は、例えば、そのブロックの画素値の平均値とされるようにしてもよいし、ブロックの中央の座標位置の画素値とされるようにしてもよい。あるいはまた、ブロック内において予め決められた座標位置の画素値の平均値が代表値とされるようにしてもよい。
【００９２】
クラスセンタ値算出部３３は、例えば、K-means法などのクラスタリング手法によりクラス分類するために必要となる各クラスのセンタ値を算出する。後述する制作目標画像クラス分類部３４、および画像データベースクラス分類部３７では、クラスセンタ値算出部３３により算出されたセンタ値に基づくクラス分類が行われるようになされている。
【００９３】
制作目標画像クラス分類部３４、および画像データベースクラス分類部３７で５つのクラスに分類される場合、クラスセンタ値算出部３３は、例えば、制作目標画像の端部の５つのブロックの代表値をそれぞれ５つのクラスのセンタ値として仮設定する。その後、クラスセンタ値算出部３３は、各クラスのセンタ値と代表値とを比較することにより、各ブロックを５つのクラスに分類する。
【００９４】
クラスセンタ値算出部３３は、例えば、上述したように仮設定されたセンタ値に対応する画素値と、各ブロックの代表値に対応する画素値のＲＧＢ成分のそれぞれの差分絶対値二乗和を計算して、各クラスのセンタ値とブロックの代表値との距離を求める。そして、クラスセンタ値算出部３３は、最も距離の近いクラスにそのブロックを分類する。
【００９５】
このようにして、所定の個数のブロックが分類された後、クラスセンタ値算出部３３は、例えば、各クラスの全ブロックの代表値の平均値を算出するなどして、各クラスのセンタ値をあらためて仮設定する。そして、クラスセンタ値算出部３３は、上述した場合と同様に、各クラスのセンタ値とブロックの代表値との距離を求めて、ブロックの分類を再度行なう。
【００９６】
クラスセンタ値算出部３３は、例えば、このようにブロックの分類の処理を予め決められた回数に達するまで実行する。その後、クラスセンタ値算出部３３は、各クラスの全ブロックの代表値の平均値を算出するなどして得られた値を、それぞれのクラスの最終的なセンタ値として、制作目標画像クラス分類部３４、および画像データベースクラス分類部３７に供給するようになされている。
【００９７】
センタ値は、例えば、クラス毎にＲＧＢ成分のそれぞれの値として算出される。例えば、クラス１、クラス２、クラス３、・・・に分類される場合、クラス１のセンタ値は、(235.9444, 147.9211, 71.6848)とされ、クラス２のセンタ値は、(177.6508, 115.0474, 61.7452)とされ、クラス３のセンタ値は、(76.7123, 63.5517, 42.3792)とされ、・・・のように算出される。上述のセンタ値における３つの要素が、それぞれ、Ｒ成分、Ｇ成分、Ｂ成分の値を表している。
【００９８】
なお、上述したセンタ値の算出の方式は、一例であり、他の方式により各クラスのセンタ値が求められるようにしても構わない。
【００９９】
制作目標画像クラス分類部３４は、クラスセンタ値算出部３３から供給された各クラスのセンタ値に基づいて、ブロック分割部３１により分割された各ブロックの画像をクラス分類する。制作目標画像クラス分類部３４による分類は、例えば、上述した場合と同様に、各クラスのセンタ値と、各ブロックの代表値との距離を求めることにより行なわれる。
【０１００】
画像データベースクラス分類部３７は、クラスセンタ値算出部３３から供給された各クラスのセンタ値に基づいて、例えば、画像データベース５１の画像をクラス分類するようになされている。
【０１０１】
画像データベースクラス分類部３７による分類は、例えば、上述した場合と同様に、各クラスのセンタ値と、データベースの各画像の代表値との距離を求めることにより行なわれる。ただし、画像データベースクラス分類部３７による分類では、最も近いクラスのセンタ値と、データベースの各画像の代表値との距離が閾値を超えている場合、その画像はいずれのクラスにも分類されないようになされている。
【０１０２】
画像データベースクラス分類部３７による分類に用いられる閾値は、例えば、分類された画像の数に応じて変更されるようになされている。これにより、例えば、所定のクラスに分類された画像の数が極端に少ない場合などは、閾値を大きくすることで、そのクラスに分類される画像の数を増やすようにすることができる。
【０１０３】
このように、画像データベースクラス分類部３７は、例えば、一度分類された画像の数をクラス毎にチェックし、所定のクラスに分類された画像の数が基準値に満たないと判定された場合は、閾値を変更して再度クラス分類を行うようにしてもよい。
【０１０４】
なお、このように閾値を変更した結果、同一の画像が複数のクラスに属するように分類されてしまっても構わない。
【０１０５】
画像データベースクラス分類部３７によりクラス分類された画像は、それぞれ分類されたクラスと対応付けられて蓄積メモリ３８に記憶されるようになされている。
【０１０６】
なお、画像データベース５１に記憶されている画像から、ブレやボケを除去するフィルタ処理がさらに施されて、それぞれ分類されたクラスと対応付けられて蓄積メモリ３８に記憶されるようにしてもよい。
【０１０７】
このようにすることで、出来上がったフォトモザイク画像をさらに美しいものとすることができる。
【０１０８】
置換画像決定部３５は、制作目標画像クラス分類部３４によりクラス分類されたブロックの画像と、蓄積メモリ３８に記憶されている画像であって、そのブロックのクラスの画像群とを、例えば、次に示されるような式を用いた計算により照合する処理を実行するようになされている。
【０１０９】
画像を照合する処理では、例えば、まず式（３）の演算を行って、△ｃの算出が行なわれる。
【０１１０】
【数１】
0005527592.tif 000002
・・・（３）
【０１１１】
ここで、△Ｒ、△Ｇ、および△Ｂは、それぞれブロックの画像の所定の１つの画素と、蓄積メモリ３８に記憶されている画像において対応する画素の画素値のＲＧＢ成分の値の差分を表している。また、Ｃ1RとＣ2Rは、それぞれブロックの画像の所定の１つの画素のＲ成分の値と、蓄積メモリ３８に記憶されている画像において対応する画素の画素値のＲ成分の値を表している。
【０１１２】
なお、式（３）により△ｃの算出は、例えば、ブロックの画像を構成する画素の全てについて行なわれる。例えば、ブロック内の座標位置xyで表される画素のそれぞれについて△ｃが算出される。
【０１１３】
そして、画像を照合する処理では、式（４）の演算が行われてＣの算出が行なわれる。すなわち、式（３）により算出された△ｃがブロック内の全画素分合計される。
【０１１４】
【数２】
0005527592.tif 000003
・・・（４）
【０１１５】
式（４）により算出されたＣの値が、蓄積メモリ３８に記憶されている画像と対応付けられて記憶され、置換画像決定部３５は、蓄積メモリ３８に記憶されている画像のそれぞれについてＣの値の大小を比較する。すなわち、Ｃの値は、その画像が当該ブロックに貼り付ける画像としてどれだけ相応しいか（適正度）を表す値となり、Ｃの値が小さいほど適正な画像であるといえる。
【０１１６】
なお、式（３）と式（４）の演算は、制作目標画像のブロックの画素と画像データベースの画素を間引いてから行なわれるようにしてもよい。このようにすることで、例えば、演算量を低減させることができ、処理時間を短縮することができる。
【０１１７】
また、上述した画像を照合する処理は一例であり、他の方式により画像の照合が行なわれるようにしてもよい。要は、代表値によりクラス分類された画像データベースの画像の中で、制作目標画像の各ブロックのテクスチャを表現するのに相応しい画像が当該ブロックに貼り付ける（置換する）画像として決定されるようにすればよい。
【０１１８】
置換画像決定部３５は、例えば、上述のＣの値が最も小さい値となった画像を、当該ブロックに貼り付ける（置換する）画像として決定するようになされている。置換画像決定部３５は、このように決定された画像を、画像置換部３６に供給する。
【０１１９】
画像置換部３６は、置換画像決定部３５から供給された画像を、当該ブロックの画像と置換する。このように、全てのブロックの画像が置換画像決定部３５から供給された画像と置換されることによりモザイク画像が生成されるのである。
【０１２０】
なお、置換画像決定部３５は、例えば、蓄積メモリ３８に記憶されている画像に所定のフラグを設定することにより、同じ画像が重複して使用されないように置換画像を決定するようになされている。例えば、蓄積メモリ３８に記憶されている画像のうち、同一クラスに分類された全ての画像にフラグが設定されるまでは、まだフラグの設定されていない画像を置換画像として決定するようになされている。同一クラスに分類された全ての画像にフラグが設定された場合、そのクラスの画像のフラグが全てクリアされるようになされている。
【０１２１】
あるいはまた、置換画像決定部３５が、フラグが設定された画像を全く使用しないのではなく、Ｎ近傍でのみ使用しないという制約を設けるようにしてもよい。ここでＮ近傍とは、１つのブロックに隣接するＮ個のブロックを意味している。Ｎの値としては、例えば、８、２４などが想定される。
【０１２２】
例えば、Ｎの値が８である場合、Ｎ近傍の制約は、例えば、図５に示されるようになる。図５において、各矩形が制作目標画像の各ブロックを表している。例えば、図５に示されるように、図中中央の黒い矩形で示されるブロックに使用された画像は、図中ハッチングで示される８個のブロックには使用されないようになされている。すなわち、Ｎ近傍の制約がある場合、置換画像決定部３５が、図中ハッチングで示される８個のブロックに貼り付ける画像を、黒い矩形で示されるブロックに使用された画像以外の画像の中から決定することになる。
【０１２３】
このようにすることで、例えば、モザイクのタイルとして使用できる画像の数が限られていても美しいモザイク画像を生成することが可能となる。
【０１２４】
従来は、例えば、ブロックに貼り付ける画像データベースの画像を決定するにあたり代表値のみを使用しているため、生成されたフォトモザイク画像において制作目標画像のテクスチャを表現できないことが多かった。また、制作目標画像のテクスチャを表現できるように、ブロックの画像と画像データベースの画像と照合する場合、制作目標画像の各ブロックについて、画像データベースの全画像との照合を行わなければならないので、演算量が多く処理に時間がかかっていた。
【０１２５】
これに対して、本発明では、制作目標画像の各ブロックをクラス分類し、同じセンタ値を用いて画像データベースの画像をクラス分類し、同一のクラスの画像のみ照合するようにした。これにより、本発明では、生成されたフォトモザイク画像において制作目標画像のテクスチャを表現でき、かつ演算量を削減し処理時間を短縮できるようになった。
【０１２６】
また、従来、例えば、画像データベースの画像が充分に用意されていない場合、多くの重複が発生し、生成されたフォトモザイク画像の品質が劣化するという問題があった。
【０１２７】
例えば、モザイクのタイルとして同一の画像が多く用いられたフォトモザイク画像は、離れて観察したときに不自然な模様のある画像のように感じられる。特に、人の顔の画像をフォトモザイクにより生成する場合などは、このような不自然な印象を与えるフォトモザイク画像は、品質が低いと言わざるを得ない。
【０１２８】
これに対して、本発明では、画像データベースクラス分類部３７による分類に用いられる閾値が、例えば、分類された画像の数に応じて変更されるようになされている。また、本発明では、置換画像決定部３５が、フラグを設定することにより、同じ画像が重複して使用されないように置換画像を決定するようにしたり、Ｎ近傍の制約が付されたりするようになされている。
【０１２９】
これにより、本発明では、例えば、所定のクラスに分類された画像の数が少ない場合などは、閾値を大きくすることで、そのクラスに分類される画像の数を増やすようにすることができる。また、本発明では、所定のクラスに分類された画像の数が少ない場合でも、フラグ、Ｎ近傍の制約により、できるだけ同じ画像が重複して使用されることを回避することができる。
【０１３０】
次に、図６のフローチャートを参照して、図１のフォトモザイク画像生成装置１０によるフォトモザイク画像生成処理について説明する。
【０１３１】
ステップＳ２１において、制作目標画像処理部２０は、生成準備処理を実行する。これにより、制作目標画像が適切な大きさに拡大または縮小される。
【０１３２】
ステップＳ２２において、フォトモザイク画像生成部３０は、画像生成処理を実行する。これにより、制作目標画像に対応するフォトモザイク画像が生成されることになる。
【０１３３】
次に、図７のフローチャートを参照して、図６のステップＳ２１で実行される生成準備処理の詳細な例について説明する。
【０１３４】
ステップＳ４１において、制作目標画像処理部２０の特徴領域検出部２１は、入力された制作目標画像を解析する。
【０１３５】
このとき、例えば、制作目標画像が人物の画像である場合、特徴領域検出部２１は、顔画像認識処理などを実行することにより、人物の顔を検出するとともに、顔の中の特徴的部分である目、口などを構成する領域を特定する。
【０１３６】
ステップＳ４２において、特徴領域検出部２１は、ステップＳ４１の解析結果に基づいて、特徴領域を抽出する。このとき、例えば、目、口などその特徴領域を特定する情報、特定された領域の座標位置、面積などの情報が抽出された特徴領域の情報として取得されることになる。例えば、図３において枠１０１で示される目の領域が特徴領域として抽出される。
【０１３７】
なお、ユーザが特徴領域を指定するようにしてもよい。この場合、ユーザに指定された領域として、例えば、図３において枠１０１で示される目の領域が特徴領域として抽出されることになる。
【０１３８】
特徴領域検出部２１は、上述したように抽出された特徴領域の情報を、倍率決定部２２に供給する。
【０１３９】
ステップＳ４３において、倍率決定部２２は、ステップＳ４２の処理で抽出した特徴領域のサイズを検出する。ここで、サイズは、例えば、抽出した特徴領域の垂直方向および水平方向の画素数などとされる。
【０１４０】
ステップＳ４４において、倍率決定部２２は、特徴領域を特定する情報に基づいて、特徴領域データベース２４から、その特徴領域に対応するブロックの配置方式を読み出す。上述したように、特徴領域データベース２４には、特徴領域に応じたブロックの配置方式が記憶されている。例えば、特徴領域データベース２４には、目の特徴領域に対応して、「水平方向３２０×４、垂直方向２４０×２」という情報が記憶されている。
【０１４１】
ステップＳ４５において、倍率決定部２２は、ステップＳ４３の処理で検出した特徴領域のサイズ、およびステップＳ４４の処理で読み出した情報（ブロックの配置方式）に基づいて、拡大または縮小倍率を決定する。
【０１４２】
このとき、倍率決定部２２は、例えば、上述したように、垂直方向の変更率Vaと水平方向の変更率Haを式（１）および式（２）により求めて、特徴領域の拡大または縮小倍率を算出する。そして、倍率決定部２２は、上述のように求められた特徴領域の拡大または縮小倍率に基づいて、制作目標画像全体の拡大または縮小倍率を決定する。
【０１４３】
倍率決定部２２は、制作目標画像全体の拡大または縮小倍率を画像生成部２３に供給する。
【０１４４】
ステップＳ４６において、画像生成部２３は、ステップＳ４５の処理で決定された拡大または縮小倍率に従って、制作目標画像を拡大または縮小する。
【０１４５】
このようにして、生成準備処理が実行される。
【０１４６】
次に、図８のフローチャートを参照して、図６のステップＳ２２で実行される画像生成処理の詳細な例について説明する。
【０１４７】
ステップＳ６１において、フォトモザイク画像生成部３０のブロック分割部３１は、図６のステップＳ２１の処理を経て拡大または縮小された制作目標画像をブロックに分割する。このとき、ブロック分割部３１は、制作目標画像を、例えば、水平方向３２０画素、垂直方向２４０画素で構成される矩形のブロックに分割する。
【０１４８】
ステップＳ６２において、代表値決定部６２は、ステップＳ６１の処理で分割された各ブロックの代表値をそれぞれ決定する。ここで代表値は、例えば、そのブロックの画素値の平均値とされるようにしてもよいし、ブロックの中央の座標位置の画素値とされるようにしてもよい。あるいはまた、ブロック内において予め決められた座標位置の画素値の平均値が代表値とされるようにしてもよい。
【０１４９】
図９と図１０は、ブロック分割および代表値の決定を説明する図である。
【０１５０】
例えば、図９に示されるような画像が制作目標画像として入力された場合、ステップＳ６１の処理では、同図に示される画像が水平方向３２０画素、垂直方向２４０画素で構成される矩形のブロックに分割される。いまの場合、人物の顔の画像である図９に示されるような画像が制作目標画像とされている。
【０１５１】
そして、ステップＳ６２の処理では、各ブロックの代表値が決定される。図１０は、ブロックを分かり易くするために、制作目標画像の各ブロックを、それぞれのブロックの代表値を有する画素により塗りつぶした画像の例である。同図に示されるように、図９に示される人物の顔の画像が矩形のブロックに分割されている。
【０１５２】
図８に戻って、ステップＳ６３において、制作目標画像クラス分類部３４および画像データベースクラス分類部３７は、クラス分類処理を実行する。このとき、クラスセンタ値算出部３３、制作目標画像クラス分類部３４および画像データベースクラス分類部３７は、ステップＳ６２の処理で決定された各ブロックの代表値に基づいて各ブロックの画像と画像データベース５１の画像をそれぞれクラス分類する。
【０１５３】
ここで、図１１のフローチャートを参照して、図８のステップＳ６３のクラス分類処理の詳細な例について説明する。
【０１５４】
ステップＳ８１において、クラスセンタ値算出部３３は、クラスを設定する。このとき、例えば、５つのクラスが設定される。
【０１５５】
ステップＳ８２において、クラスセンタ値算出部３３は、例えば、K-means法などのクラスタリング手法によりクラス分類するために必要となる各クラスのセンタ値を算出する。
【０１５６】
このとき、クラスセンタ値算出部３３は、例えば、制作目標画像の端部の５つのブロックの代表値をそれぞれステップＳ８１の処理で設定された５つのクラスのセンタ値として仮設定する。その後、クラスセンタ値算出部３３は、各クラスのセンタ値と代表値とを比較することにより、各ブロックを５つのクラスに分類する。
【０１５７】
クラスセンタ値算出部３３は、例えば、上述したように仮設定されたセンタ値に対応する画素値と、各ブロックの代表値に対応する画素値のＲＧＢ成分のそれぞれの差分絶対値二乗和を計算して、各クラスのセンタ値とブロックの代表値との距離を求める。そして、クラスセンタ値算出部３３は、最も距離の近いクラスにそのブロックを分類する。
【０１５８】
このようにして、所定の個数のブロックが分類された後、クラスセンタ値算出部３３は、例えば、各クラスの全ブロックの代表値の平均値を算出するなどして、各クラスのセンタ値をあらためて仮設定する。そして、クラスセンタ値算出部３３は、上述した場合と同様に、各クラスのセンタ値とブロックの代表値との距離を求めて、ブロックの分類を再度行なう。
【０１５９】
クラスセンタ値算出部３３は、例えば、このようにブロックの分類の処理を予め決められた回数に達するまで実行する。その後、クラスセンタ値算出部３３は、各クラスの全ブロックの代表値の平均値を算出するなどして得られた値を、それぞれのクラスの最終的なセンタ値として特定する。
【０１６０】
ステップＳ８２の処理では、例えば、このようにして各クラスのセンタ値が特定される。
【０１６１】
ステップＳ８３において、制作目標画像クラス分類部３４は、ステップＳ８２の処理で特定された各クラスのセンタ値に基づいて、ステップＳ６１の処理で分割された各ブロックの画像をクラス分類する。制作目標画像クラス分類部３４による分類は、例えば、上述した場合と同様に、各クラスのセンタ値と、各ブロックの代表値との距離を求めることにより行なわれる。
【０１６２】
これにより、例えば、図１０に示されるように、ブロックに分割された画像の各ブロックが、図１２に示されるようにクラス分類される。図１２は、図１０に示されるブロックのそれぞれがステップＳ８３の処理を経てクラス分類された例を示す画像である。
【０１６３】
同図においては、各ブロックのクラスを、図中のハッチングのパターンにより表現している。同図の例では、制作目標画像の各ブロックがクラス１乃至クラス５の５つのクラスに分類されている。
【０１６４】
ステップＳ８４において、画像データベースクラス分類部３７は、ステップＳ８２の処理で特定された各クラスのセンタ値に基づいて、例えば、画像データベース５１の画像をクラス分類する。
【０１６５】
このとき、画像データベースクラス分類部３７は、例えば、上述した場合と同様に、各クラスのセンタ値と、データベースの各画像の代表値との距離を求めることによりクラス分類する。ただし、ステップＳ８４の処理では、最も近いクラスのセンタ値と、データベースの各画像の代表値との距離が閾値を超えている場合、その画像はいずれのクラスにも分類されないようになされている。
【０１６６】
なお、上述したように、画像データベースクラス分類部３７による分類に用いられる閾値は、例えば、分類された画像の数に応じて変更されるようになされている。これにより、例えば、所定のクラスに分類された画像の数が極端に少ない場合などは、閾値を大きくすることで、そのクラスに分類される画像の数を増やすようにすることができる。
【０１６７】
ステップＳ８４の処理でクラス分類された画像は、それぞれ分類されたクラスと対応付けられて蓄積メモリ３８に記憶されるようになされている。
【０１６８】
このようにしてクラス分類処理が実行される。
【０１６９】
図８に戻って、ステップＳ６３の処理の後、ステップＳ６４において、置換画像決定部３５は、置換画像決定処理を実行する。これにより、制作目標画像の各ブロックの画像が、画像データベース５１の画像に置き換えられて、フォトモザイク画像が生成されることになる。
【０１７０】
ここで、図１３のフローチャートを参照して、図８のステップＳ６４の置換画像決定処理の詳細な例について説明する。
【０１７１】
ステップＳ１０１において、置換画像決定部３５は、制作目標画像のブロックのうち、１つのブロックを抽出する。
【０１７２】
ステップＳ１０２において、置換画像決定部３５は、ステップＳ１０１で抽出したブロックについて、ステップＳ６３の処理によりクラス分類されたクラスを特定する。
【０１７３】
ステップＳ１０３において、置換画像決定部３５は、当該ブロックの画像と、画像データベース５１から読み出され、蓄積メモリ３８に記憶されている画像であって、ステップＳ１０２の処理で特定されたクラスの画像群とを照合する。
【０１７４】
このとき、例えば、次のような計算により照合する処理が実行される。
【０１７５】
例えば、上述したように、式（３）の演算を行って、△ｃの算出が行なわれ、式（４）の演算が行われてＣの算出が行なわれる。すなわち、式（３）により算出された△ｃがブロック内の全画素分合計される。
【０１７６】
なお、式（３）と式（４）の演算は、制作目標画像のブロックの画素と画像データベースの画素を間引いてから行なわれるようにしてもよい。このようにすることで、例えば、演算量を低減させることができ、処理時間を短縮することができる。
【０１７７】
そして、このような照合がステップＳ１０２の処理で特定されたクラスに属する画像のそれぞれについて行われ、式（４）により算出されたＣの値が、蓄積メモリ３８に記憶されている画像と対応付けられて記憶される。
【０１７８】
ステップＳ１０４において、置換画像決定部３５は、ステップＳ１０３の処理結果に基づいて、当該ブロックに貼り付ける画像を選択する。
【０１７９】
このとき、例えば、置換画像決定部３５は、蓄積メモリ３８に記憶されている画像のそれぞれについてＣの値の大小を比較する。そして、置換画像決定部３５は、例えば、上述のＣの値が最も小さい値となった画像を、当該ブロックに貼り付ける（置換する）画像として決定する。
【０１８０】
ステップＳ１０５において、置換画像決定部３５は、ステップＳ１０４の処理で選択された画像にフラグを設定する。これにより、以後のステップＳ１０３の処理では、フラグが設定された画像は除外されて、照合が行なわれるようになる。
【０１８１】
例えば、蓄積メモリ３８に記憶されている画像のうち、同一クラスに分類された全ての画像にフラグが設定されるまでは、まだフラグの設定されていない画像を置換画像として決定するようになされている。同一クラスに分類された全ての画像にフラグが設定された場合、そのクラスの画像のフラグが全てクリアされるようになされている。
【０１８２】
ステップＳ１０６において、置換画像決定部３５は、次のブロックがあるか否かを判定する。すなわち、まだ置換画像の決定（選択）がなされていない制作目標画像のブロックがあるか否かを判定する。
【０１８３】
ステップＳ１０６において、次のブロックがあると判定された場合、処理は、ステップＳ１０１に戻り、それ以後の処理が繰り返し実行される。
【０１８４】
ステップＳ１０６において、次のブロックがないと判定された場合、置換画像決定処理は終了する。
【０１８５】
なお、ここでは、フラグが設定されることにより、同じ画像が重複して使用されないように置換画像を決定する例について説明したが、図５を参照して上述したＮ近傍の制約により同じ画像が重複して使用されないようにしてもよい。
【０１８６】
このようにして、置換画像決定処理が実行される。
【０１８７】
図８に戻って、ステップＳ６４の処理の後、ステップＳ６５において、画像置換部３６は、ステップＳ１０４の処理で選択された画像を、当該ブロックの画像と置換する。このように、全てのブロックの画像がステップＳ１０４の処理で選択された画像と置換されることによりフォトモザイク画像が生成されるのである。
【０１８８】
これにより、例えば、図１４に示されるようなフォトモザイク画像が生成される。図１４は、図９の制作目標画像に対応するフォトモザイク画像の例を示す図である。
【０１８９】
すなわち、図９に示される制作目標画像が、図１０に示されるようにブロックに分割され、図１２に示されるようにクラス分類される。そして、各ブロックの画像と、分類されたクラスの画像との照合が行われて、各ブロックの画像が、画像データベース５１の画像に置き換えられる。このようにして、図９に示される制作目標画像から、図１４に示されるようなフォトモザイク画像が生成されるのである。
【０１９０】
このようにして、画像生成処理が実行される。
【０１９１】
なお、図７を参照して上述した生成準備処理においては、制作目標画像が拡大または縮小されるとしたが、ブロックが拡大または縮小されるようにしても構わない。この場合、画像データベース５１に記憶されている画像も、ブロックのサイズに合わせて拡大または縮小されるようにすればよい。
【０１９２】
すなわち、倍率決定部２２が、例えば、特徴領域の拡大または縮小倍率の逆数に基づいて、ブロックの拡大または縮小倍率を決定する。そして、画像生成部２３は、制作目標画像をもとの大きさのまま出力するとともに、上述したブロックの拡大または縮小倍率をフォトモザイク画像生成部３０に供給するようにする。フォトモザイク画像生成部３０は、供給されたブロックの拡大または縮小倍率によりブロックのサイズを拡大または縮小するとともに、画像データベース５１から取得した画像のそれぞれを、ブロックの拡大または縮小倍率により拡大または縮小するようにすればよい。
【０１９３】
また、図８のステップＳ６１においては、例えば、水平方向３２０画素、垂直方向２４０画素で構成される矩形のブロックに分割されると説明したが、全て同一の矩形のブロックに分割されないようにしてもよい。
【０１９４】
例えば、特徴領域検出部２１によって検出された特徴領域は、より小さいサイズのブロックに分割されるようにしてもよい。
【０１９５】
図１５は、図９に示される制作目標画像を、ブロック分割する場合の別の例を示す図である。同図の例の場合、特徴領域である目の画像のみが、その周辺の画像より小さいサイズのブロックに分割されている。すなわち、図１５の目の部分の画像は、その周辺の画像のブロックの４分の1のサイズのブロックで分割されている。
【０１９６】
このようにすることで、フォトモザイクとして生成された画像において、例えば、人の顔の目などの特徴的部分の画像のテクスチャがより詳細に表現されるようにすることができる。その結果、例えば、観察者が画像から離れてみた場合に、より制作目標画像に近い印象を与えるような、フォトモザイク画像を生成することができる。
【０１９７】
さらに、図８のステップＳ６５の処理では、全てのブロックの画像がステップＳ１０４の処理で選択された画像と置換されることによりフォトモザイク画像が生成されると説明したが、必ずしも全てのブロックの画像が置換されないようにしてもよい。
【０１９８】
例えば、ステップＳ１０３の処理の結果算出されたＣの値のうち、最小のものが閾値を超えるものであった場合、そのブロックの画像は置換されず、元の制作目標画像のブロックの画像のままとされるようにしてもよい。このようにすることで、例えば、所定のブロックの画像として置換すべき適切な画像が画像データベース５１に存在しないことなどにより、フォトモザイク画像の品質が劣化することを抑止することができる。
【０１９９】
また、上述した例では、できるだけ同じ画像が重複して使用されないようにされる旨説明したが、例えば、類似する画像が隣接して配置されないようにすることも可能である。
【０２００】
例えば、似たような画像が隣り合うブロックに貼り付けられている場合、同じ画像が重複して使用された場合と同様な視覚的効果を奏する場合がある。似たような画像が隣り合うブロックに貼り付けられることを抑止するために、例えば、置換画像決定部３５が隣接するブロックに貼り付ける画像と当該ブロックに貼り付けられる画像との類似度を算出し、類似度が閾値以下の画像のみが置換画像とされるようにしてもよい。なお、画像の類似度は、例えば、ブロックマッチング法などにより求められる値を用いることができる。
【０２０１】
さらに、上述した例では、ブロックに貼り付けられる画像が、主に画像データベース５１から取得される場合の例について説明したが、例えば、ネットワーク５２を介してサーバ５３から取得されるようにしてもよい。
【０２０２】
あるいはまた、画像データベース５１から取得できない画像のみ、サーバ５３から取得されるようにしてもよい。
【０２０３】
例えば、画像データベースクラス分類部３７によるクラス分類の結果、クラス３に分類された画像の枚数が少ない場合、フォトモザイク画像生成装置１０から、サーバ５３にクラス３の画像のリクエストのパケットが送信される。このとき、例えば、フォトモザイク画像生成装置１０から、クラス３のセンタ値と閾値がリクエストのパケットに含まれて送信される。また、必要とする画像の数、画像の種類（例えば、花の画像、山の画像、人の画像・・・などの種類）などを表すタグの情報などもリクエストパケットに含まれるようにしてもよい。
【０２０４】
そして、サーバ５３は、自身が記憶する画像を、画像データベースクラス分類部３７と同様にクラス分類し、クラス３に分類された画像を、ネットワーク５２を介してフォトモザイク画像生成装置１０に送信するようにすればよい。
【０２０５】
このようにすることで、さらに、品質の高いフォトモザイク画像を生成することが可能となる。
【０２０６】
以上においては、フォトモザイク画像生成装置１０が、制作目標画像処理部２０およびフォトモザイク画像生成部３０により構成される例について説明したが、他の構成としても構わない。
【０２０７】
例えば、制作目標画像処理部２０の機能を実現する装置が、従来のフォトモザイク画像生成装置に接続されるようにしても構わない。
【０２０８】
上述したように、制作目標画像処理部２０により、制作目標画像の特徴領域とブロックの大きさに基づいて制作目標画像が自動的に縮小または拡大されるようにすることができる。従って、制作目標画像処理部２０を単体で使用した場合でも、例えば、特別なスキルなどを必要とせずに、短時間で美しいフォトモザイク画像を生成することができるという効果が期待できる。
【０２０９】
また、例えば、制作目標画像処理部２０を設けずに、フォトモザイク画像生成部３０の機能を実現する装置のみを用いてフォトモザイク画像を生成することも可能である。
【０２１０】
すなわち、フォトモザイク画像生成部３０を単体で使用した場合でも、生成されたフォトモザイク画像において制作目標画像のテクスチャを表現でき、かつ演算量を削減し処理時間を短縮できるという効果が期待できる。また、例えば、できるだけ同じ画像が重複して使用されることを回避するという効果も期待できる。
【０２１１】
さらに、フォトモザイク画像生成装置１０は、例えば、撮像装置に内蔵される構成とすることも可能である。
【０２１２】
また、制作目標画像、画像データベース５１に記憶される画像は、例えば、写真だけではなく、絵などをスキャナで取り込んで得られた画像やＣＧ（Computer Graphics）など、どのような画像であってもよい。
【０２１３】
さらに、以上においては、画像データベースクラス分類部３７によるクラス分類では、素材となる画像が所定の個数のクラスに分類されるものと説明したが、このクラスの個数は適応的に変更されるようにしてもよい。例えば、画像データベース５１に記憶される画像の代表値のヒストグラムを生成し、そのヒストグラムの分散値に基づいてクラス数が変更されるようにしてもよい。
【０２１４】
このようにすることで、例えば、画像データベース５１に記憶される全ての画像において赤色の画素の割合が高い場合などであっても、不自然なクラス分類がなされることなく、適正なフォトモザイク画像の生成を行うことができる。
【０２１５】
あるいはまた、例えば、制作目標画像のブロックの代表値のヒストグラムの分散値に基づいてクラスの個数が適応的に変更されるようにしてもよい。
【０２１６】
また、図１の制作目標画像処理部２０とフォトモザイク画像生成部３０は、ネットワークを介して接続される構成とされてもよい。そして、例えば、ユーザが保持する携帯端末から、ネットワークを介してフォトモザイク画像の生成の指令を送信し、ネットワークに接続されたサーバなどによりフォトモザイク画像が生成され、携帯端末に送信されるようにすることも可能である。
【０２１７】
すなわち、本発明のフォトモザイク画像生成装置１０の各機能ブロックが、例えば、ネットワークを介して接続される任意の数のサーバによって実現されるようにすることも可能である。
【０２１８】
ところで、制作目標画像としてそもそも不適切な画像が入力された場合、各ブロックに貼り付ける画像を適切に選んでも、なお生成されたフォトモザイクの品質が劣化するという問題があった。例えば、制作目標画像の中の被写体の画素値と背景の画素値との差分が小さい場合、制作目標画像の中の被写体のサイズが極めて小さい場合などは、各ブロックに十分に適正度の高い画像を貼り付けても、見栄えの良いフォトモザイク画像を生成することができない。
【０２１９】
図１６は、被写体の画素値と背景の画素値との差分が小さい画像の例を示す図である。同図は、被写体として女性の顔が写った写真の画像であり、主に図中右側において顔の部分の色と背景（壁）の色がほぼ同じ色となっている。すなわち、同図は、被写体の画素値と背景の画素値との差分が小さい画像である。
【０２２０】
図１７は、図１６の画像を制作目標画像として生成されたフォトモザイク画像の例を示す図である。同図に示されるように、生成されたフォトモザイク画像からは、図１６に示される女性の顔がほとんど判別できず、特に図中右側の部分において、顔の輪郭が不明瞭となる印象を受ける。
【０２２１】
このように、制作目標画像の中の被写体の画素値と背景の画素値との差分が小さい場合、各ブロックに十分に適正度の高い画像を貼り付けても、見栄えの良いフォトモザイク画像を生成することができない。
【０２２２】
図１８は、被写体のサイズが極めて小さい画像の例を示す図である。同図は、多人数の集合写真の画像であり、個々の人物を被写体として認識できるものの、一人の人物を構成する画素の領域は、画像全体からみて極めて小さい領域といえる。
【０２２３】
このような被写体のサイズが極めて小さい画像を制作目標画像として生成されたフォトモザイク画像は、やはり被写体（個々の人物）の輪郭などが不明瞭になりやすい。従って、制作目標画像の中の被写体のサイズが極めて小さい場合、各ブロックに十分に適正度の高い画像を貼り付けても、やはり見栄えの良いフォトモザイク画像を生成することができない。
【０２２４】
そこで、本発明においては、入力された画像が制作目標画像として適切な画像であるか否かを予め判定できるようにする。
【０２２５】
図１９は、入力された画像が制作目標画像として適切な画像であるか否かを予め判定できるようにする場合のフォトモザイク画像生成装置の構成例を示すブロック図である。同図は、図１に対応する図であり、図１に対応する各部には同一の符号がふされている。図１９の例では、図１の場合と異なり、制作目標画像判定部１１０が設けられている。
【０２２６】
制作目標画像判定部１１０は、入力画像が制作目標画像として適切な画像であるか否かを判定し、例えば、適切と判定された入力画像のみを制作目標画像処理部２０に出力するようになされている。あるいはまた、入力画像が制作目標画像として適切な画像であるか否かの判定結果がユーザに提示されるようにしてもよい。
【０２２７】
図１９のそれ以外の構成は、図１の場合と同様なので、詳細な説明は省略する。
【０２２８】
図２０は、図１９の制作目標画像判定部１１０の詳細な構成例を示すブロック図である。この制作目標画像判定部１１０は、入力画像が、被写体の画素値と背景の画素値との差分が小さい画像である場合、制作目標画像として不適切な画像と判定するようになされている。
【０２２９】
同図の例において、制作目標画像判定部１１０は、被写体検出部１１１、エッジ内画素値取得部１１３、エッジ外画素値取得部１１４、差分検出部１１５、および適性判定部１１６により構成されている。
【０２３０】
被写体検出部１１１は、入力画像の解析を行い、画像中の被写体を検出するようになされている。被写体検出部１１１は、例えば、画像の中の人物の画像を検出するようになされている。人物の画像の検出は、例えば、画像の特徴量および予め記憶しているモデルデータなどに基づいて行なわれる。
【０２３１】
被写体検出部１１１は、検出した被写体を構成する画素のそれぞれを、例えば、座標値により特定する。これにより、入力画像の中の被写体の画像の画素と、被写体以外（例えば、背景）の画像の画素とを特定することができるようになる。
【０２３２】
エッジ内画素値取得部１１３は、被写体検出部１１１の検出結果に基づいて、被写体の画像と被写体以外の画像の境界（エッジ）を特定し、被写体以外の画像の画素に隣接する被写体の画像の画素の値を取得する。
【０２３３】
エッジ外画素値取得部１１４は、被写体検出部１１１の検出結果に基づいて、被写体の画像と被写体以外の画像の境界（エッジ）を特定し、被写体の画像の画素に隣接する被写体以外の画像の画素の値を取得する。
【０２３４】
エッジ内画素値取得部１１３とエッジ外画素値取得部１１４のそれぞれは、例えば、被写体の輪郭線に沿って、上述のように画素値を取得していく。そして、エッジ内画素値取得部１１３とエッジ外画素値取得部１１４によりそれぞれ取得された画素値のペアが、差分検出部１１５に供給される。
【０２３５】
なお、ここでは説明を簡単にするために、被写体の輪郭線上の１点において、被写体のエッジの画素１個の値、その画素に隣接する背景などの画素１個の値からなるペアを取得するものとした。しかし、例えば、被写体の輪郭線上の１点において、エッジ内画素値取得部１１３とエッジ外画素値取得部１１４により、それぞれエッジ周辺の予め設定された複数の画素の画素値が取得され、それらの画素値のペアが差分検出部１１５に供給されるようにしてもよい。また、複数の画素の画素値の平均値をそれぞれ求め、平均値のペアが差分検出部１１５に供給されるようにしてもよい。
【０２３６】
さらに、エッジ周辺の何画素分の値を取得するかは、例えば、予め設定されるようにしてもよいし、都度、ユーザに指定させるようにしてもよい。また、被写体の画像を構成する画素数により定まるようにしてもよい。
【０２３７】
また、エッジ内画素値取得部１１３とエッジ外画素値取得部１１４のそれぞれは、必ずしも被写体の輪郭線上の全ての点において、上述のペアを取得する必要はなく、例えば、予め設定された部分、ユーザに指定された部分において上述のペアを取得するようにしてもよい。
【０２３８】
差分検出部１１５は、上述したようにエッジ内画素値取得部１１３とエッジ外画素値取得部１１４とから供給された画素値のペアの差分の値を、それぞれ算出する。差分検出部１１５は、例えば、個々に算出された差分値を予め設定された閾値と比較し、供給された画素値のペアのうち閾値以上の差分値を有するペアの数の割合を特定する。
【０２３９】
適性判定部１１６は、例えば、差分検出部により特定された割合を、別の閾値を用いてさらに閾値判定し、閾値以上の割合であると判定された場合、入力画像は、制作目標画像として適切であると判定する。このような画像は、被写体の画素値と背景の画素値との差分が十分大きいと考えられるからである。
【０２４０】
一方、閾値未満の割合であると判定された場合、適性判定部１１６は、入力画像が制作目標画像として不適切であると判定する。このような画像は、被写体の画素値と背景の画素値との差分が小さいと考えられるからである。
【０２４１】
あるいはまた、後述するように、入力画像の被写体以外の画像の画素値を変更するようにしてもよい。すなわち、入力画像が、被写体の画素値と背景の画素値との差分が十分大きい画像となるように、画素値を補正するのである。これにより、不適切な制作目標画像を、適切な制作目標画像に変えて出力することも可能となる。
【０２４２】
なお、上述した差分検出部１１５による差分の検出方式と適性判定部１１６の適性判定方式は一例であり、他の方式が用いられるようにしてもよい。
【０２４３】
次に、図２１のフローチャートを参照して、図２０の制作目標画像判定部１１０による制作目標画像判定処理の例について説明する。
【０２４４】
ステップＳ２０１において、被写体検出部１１１は、入力画像を解析する。
【０２４５】
ステップＳ２０２において、被写体検出部１１１は、画像中の被写体を検出する。これにより、入力画像の中の被写体の画像の画素と、被写体以外（例えば、背景）の画像の画素とを特定することができるようになる。
【０２４６】
ステップＳ２０３において、エッジ内画素値取得部１１３は、ステップＳ２０２での被写体検出部１１１の検出結果に基づいて、被写体の画像と被写体以外の画像の境界（エッジ）を特定し、被写体以外の画像の画素に隣接する被写体の画像の画素の値を取得する。
【０２４７】
ステップＳ２０４において、エッジ外画素値取得部１１４は、ステップＳ２０２での被写体検出部１１１の検出結果に基づいて、被写体の画像と被写体以外の画像の境界（エッジ）を特定し、被写体の画像の画素に隣接する被写体以外の画像の画素の値を取得する。
【０２４８】
ステップＳ２０５において、差分検出部１１５は、ステップＳ２０３とステップＳ２０４の処理の結果、エッジ内画素値取得部１１３とエッジ外画素値取得部１１４とにより取得されて供給された画素値のペアの差分の値を算出する。
【０２４９】
ステップＳ２０６において、差分検出部１１５は、例えば、個々に算出された差分値を予め設定された閾値と比較し、供給された画素値のペアのうち閾値以上の差分値を有するペアの数の割合を算出する。
【０２５０】
ステップＳ２０７において、適性判定部１１６は、ステップＳ２０６の処理で算出された割合が閾値以上か否かを判定する。
【０２５１】
ステップＳ２０７において、閾値以上の割合であると判定された場合、処理は、ステップＳ２０９に進み、適性判定部１１６は、入力画像を適切な制作目標画像として出力する。
【０２５２】
一方、ステップＳ２０７において、閾値未満の割合であると判定された場合、処理は、ステップＳ２０８に進み、適性判定部１１６は、入力画像を不適切な制作目標画像として出力する。なお、ステップＳ２０８では、入力画像を出力せずに破棄するようにしいてもよい。
【０２５３】
また、ステップＳ２０７とステップＳ２０８の処理では、入力画像を、制作目標画像としての適正度を表すスコアとともに出力するようにしてもよい。例えば、複数の入力画像をスコアとともに出力し、そのスコアをもとにユーザが制作目標画像を適宜選択するようにすることもできる。
【０２５４】
このようにして、制作目標画像判定処理が実行される。このようにすることで、そもそも制作目標画像として不適切な画像を採用したフォトモザイク画像の生成を抑止することができる。
【０２５５】
図２２は、図１９の制作目標画像判定部１１０の別の詳細な構成例を示すブロック図である。この制作目標画像判定部１１０は、入力画像が、被写体のサイズが極めて小さい画像である場合、制作目標画像として不適切な画像と判定するようになされている。
【０２５６】
同図の例において、制作目標画像判定部１１０は、被写体検出部１３１、被写体サイズ検出部１３２、および適性判定部１３３により構成されている。
【０２５７】
被写体検出部１３１は、入力画像の解析を行い、画像中の被写体を検出するようになされている。被写体検出部１３１は、例えば、画像の中の人物の画像を検出するようになされている。人物の画像の検出は、例えば、画像の特徴量および予め記憶しているモデルデータなどに基づいて行なわれる。
【０２５８】
被写体検出部１３１は、検出した被写体を構成する画素のそれぞれを、例えば、座標値により特定する。これにより、入力画像の中の被写体の画像の画素と、被写体以外（例えば、背景）の画像の画素とを特定することができるようになる。
【０２５９】
被写体サイズ検出部１３２は、被写体検出部１３１の検出結果に基づいて、被写体のサイズを検出する。ここで、被写体のサイズは、例えば、入力画像の中の被写体の画像を構成する画素の数とされる。
【０２６０】
例えば、被写体検出部１３１により複数の被写体が検出された場合、被写体サイズ検出部１３２は、個々の被写体のサイズを検出するようにしてもよいし、それらの被写体のサイズの平均値を、被写体のサイズとして検出するようにしてもよい。
【０２６１】
適性判定部１３３は、被写体サイズ検出部１３２の検出結果に基づいて、入力画像が制作目標画像として適切か否かを判定する。
【０２６２】
適性判定部１３３は、例えば、被写体サイズ検出部１３２から出力されたサイズ（例えば、画素数）の、入力画像の全画素数に占める割合を算出し、その割合を閾値判定する。そして、閾値以上の割合であると判定された場合、適切な画像と判定し、閾値未満の割合であると判定された場合、不適切な画像と判定する。
【０２６３】
あるいはまた、例えば、被写体サイズ検出部１３２から出力されたサイズ（例えば、画素数）と、入力画像の解像度とに基づいて、被写体のサイズを評価するスコアが算出されるようにし、そのスコアが閾値判定されるようにしてもよい。
【０２６４】
なお、上述した被写体サイズ検出部１３２によるサイズの検出方式と適性判定部１３３の適性判定方式は一例であり、他の方式が用いられるようにしてもよい。
【０２６５】
次に、図２３のフローチャートを参照して、図２２の制作目標画像判定部１１０による制作目標画像判定処理の例について説明する。
【０２６６】
ステップＳ２２１において、被写体検出部１３１は、入力画像を解析する。
【０２６７】
ステップＳ２２２において、被写体検出部１３１は、画像中の被写体を検出する。これにより、入力画像の中の被写体の画像の画素と、被写体以外（例えば、背景）の画像の画素とを特定することができるようになる。
【０２６８】
ステップＳ２２３において、被写体サイズ検出部１３２は、ステップＳ２２２の処理による検出結果に基づいて、被写体のサイズを検出する。ここで、被写体のサイズは、例えば、入力画像の中の被写体の画像を構成する画素の数とされる。
【０２６９】
ステップＳ２２４において、適性判定部１３３は、ステップＳ２２３の処理により検出されたサイズ（例えば、画素数）の、入力画像の全画素数に占める割合を算出する。
【０２７０】
ステップＳ２２５において、適性判定部１３３は、ステップＳ２２４の処理により算出された割合が、予め設定された閾値以上か否かを判定する。
【０２７１】
ステップＳ２２５において、閾値以上の割合であると判定された場合、処理は、ステップＳ２２７に進み、適性判定部１３３は、入力画像を適切な制作目標画像として出力する。
【０２７２】
一方、ステップＳ２２５において、閾値未満の割合であると判定された場合、処理は、ステップＳ２２６に進み、適性判定部１３３は、入力画像を不適切な制作目標画像として出力する。なお、ステップＳ２２６では、入力画像を出力せずに破棄するようにしいてもよい。
【０２７３】
また、ステップＳ２２６とステップＳ２２７の処理では、入力画像を、制作目標画像としての適正度を表すスコアとともに出力するようにしてもよい。例えば、複数の入力画像をスコアとともに出力し、そのスコアをもとにユーザが制作目標画像を適宜選択するようにすることもできる。
【０２７４】
このようにして、制作目標画像判定処理が実行される。このようにすることで、そもそも制作目標画像として不適切な画像を採用したフォトモザイク画像の生成を抑止することができる。
【０２７５】
なお、ここでは、制作目標画像判定部１１０の構成例として、図２０に示される例と図２２に示される例を説明したが、勿論、図２０に示される構成と図２２に示される構成とを合わせて適用することも可能である。
【０２７６】
すなわち、被写体の画素値と背景の画素値との差分が小さい画像であるか、または被写体のサイズが極めて小さい画像を、制作目標画像として不適切と判定する制作目標画像判定部１１０を構成することも可能である。さらに、被写体の画素値と背景の画素値との差分が小さい画像であり、かつ、被写体のサイズが極めて小さい画像を、制作目標画像として不適切と判定する制作目標画像判定部１１０を構成することも可能である。
【０２７７】
ところで上述した図２０を参照して上述した構成と図２１を参照して上述した処理では、差分が大きいペアの割合が閾値未満であると判定された場合、入力画像が制作目標画像として不適切であると判定すると説明した。このような画像は、被写体の画素値と背景の画素値との差分が小さいと考えられるからである。
【０２７８】
しかしながら、入力画像が制作目標画像として不適切であると判定された場合は、入力画像の被写体以外の画像の画素値を変更するようにしてもよい。すなわち、入力画像が、被写体の画素値と背景の画素値との差分が十分大きい画像となるように、画素値を補正するのである。これにより、不適切な制作目標画像を、適切な制作目標画像に変えて出力することも可能となる。
【０２７９】
図２４は、入力画像が制作目標画像として不適切であると判定された場合は、入力画像の被写体以外（例えば、背景）の画像の画素値を変更するようにする制作目標画像判定部１１０の詳細な構成例を示すブロック図である。
【０２８０】
同図は、図２０に対応する図であり、図２０に対応する各部には同一の符号が付されている。
【０２８１】
図２４の被写体検出部１１１乃至適性判定部１１６は、図２０の場合と同様なので詳細な説明は省略する。図２４の構成の場合、図２０の場合とは異なり、背景色決定部１１７、および背景色変換部１１９が設けられている。
【０２８２】
図２４の適性判定部１１６により制作目標画像として不適切であると判定された入力画像は、背景色決定部１１７に供給される。
【０２８３】
背景色決定部１１７は、例えば、エッジ内画素値取得部１１３により取得された画素値の平均値を算出し、算出された平均値との差分が十分に大きい色（画素値）の候補を複数選択する。ここで、色の候補は、例えば、エッジ内画素値取得部１１３により取得された画素値の平均値と、候補となる色の画素値とのペアについて、差分検出部１１５により算出される差分が予め設定された閾値以上となるような色とされる。
【０２８４】
例えば、画素値をＲＧＢの３次元ベクトルで表現する場合、エッジ内画素値取得部１１３により取得された画素値の平均値からのユークリッド距離が所定の値以上となる画素値を、候補となる色の画素値として選択する。例えば、エッジ内画素値取得部１１３により取得された画素値の平均値の３次元空間内の座標位置から、Ｒ，Ｇ，Ｂの各方向に所定の距離だけ離れた座標位置に対応する画素値を候補となる色として選択する。
【０２８５】
なお、色の候補を選択する際に、例えば、入力画像に関する情報が参照されるようにしてもよい。例えば、入力画像とともに、入力画像の種類を表すコードなどが入力されるようにし、お祝い事の画像を表すコードが検出された場合、黒色に近い色は候補として選択されないようにしてもよい。このように、色の候補を選択する際に、入力画像に関する情報が参照されて、候補として不適切な色が選択されないように規制したり、または候補として適切な色が積極的に選択されたりするようにしてもよい。
【０２８６】
また、背景色決定部１１７は、画像データベース５１にも接続され、画像データベース５１の各画像の代表値の平均値と、選択された候補の色とを比較する。そして、背景色決定部１１７は、例えば、画像データベース５１の各画像の代表値の平均値とのユークリッド距離が所定の値未満となる候補の色を、背景の色として決定する。例えば、各候補色と画像データベース内の各画像（全部でもよいし一部でもよい）の代表値を比較して、各候補の色に対して距離が近い（距離が閾値以下）画像データベース内の画像の枚数を算出し、最も枚数が多い候補の色が背景の色として決定される。このようにすることで、背景色を変換した後、その背景のブロックに貼り付ける画像の選択の余地が大きくなる。つまり、選択された背景の色に対応する画像が画像データベース５１の中に多く存在することになる。
【０２８７】
なお、背景の色を決定する際に、候補の色を選択せずに、例えば、被写体以外（例えば、背景）の画像の画素として特定された画素の値が一律に変換されるように決定されてもよい。例えば、背景の画像の画素値を、ＲＧＢの３次元ベクトルで表現する場合、各画素値の３つ要素の値のそれぞれを所定の値だけ増加または減少させることで、背景の色が決定されるようにしてもよい。
【０２８８】
背景色変換部１１９は、被写体検出部１１１の処理の結果、被写体以外（例えば、背景）の画像の画素として特定された画素の値を、背景色決定部１１７により決定された背景の色に対応する画素値に変換する。
【０２８９】
これにより、入力画像は被写体の画素値と背景の画素値との差分が十分大きい画像となるように画素値が補正されるので、不適切な制作目標画像を、適切な制作目標画像に変えて出力することができるのである。
【０２９０】
図２５は、図２４の構成に対応する制作目標画像判定処理の例を説明するフローチャートである。
【０２９１】
図２５のステップＳ２５１乃至ステップＳ２５７の処理は、図２１のステップＳ２０１乃至ステップＳ２０７と同様の処理なので詳細な説明は省略する。
【０２９２】
ステップＳ２５７において、テップＳ２５６の処理で算出された割合が閾値未満であると判定された場合、処理は、ステップＳ２５８に進む。一方、ステップＳ２５７において、テップＳ２５６の処理で算出された割合が閾値以上であると判定された場合、ステップＳ２５８の処理はスキップされる。
【０２９３】
ステップＳ２５８において、背景色決定部１１７および背景色変換部１１９は、背景色変換処理を実行する。
【０２９４】
ここで、図２６のフローチャートを参照して、図２５のステップＳ２５８の背景色変換処理の詳細な例について説明する。
【０２９５】
ステップＳ２７１において、背景色決定部１１７は、例えば、エッジ内画素値取得部１１３により取得された画素値の平均値を算出し、算出された平均値との差分が十分に大きい色（画素値）の候補を複数選択する。
【０２９６】
ステップＳ２７２において、背景色決定部１１７は、画像データベース５１をチェックする。このとき、画像データベース５１の各画像の代表値の平均値と、選択された候補の色とが比較される。
【０２９７】
ステップＳ２７３において、背景色決定部１１７は、例えば、ステップＳ２７１の処理で選択された候補のうち、画像データベース５１の各画像の代表値の平均値とのユークリッド距離が所定の値未満となる候補の色を、背景の色として決定する。
【０２９８】
ステップＳ２７４において、背景色変換部１１９は、図２５のステップＳ２５２の処理の結果、被写体以外の画像の画素として特定された画素について、それらの画素（被写体以外の画像の画素）の値を、ステップＳ２７３の処理で決定された背景の色に対応する画素値に変換する。
【０２９９】
このようにして、背景色変換処理が実行される。
【０３００】
図２５に戻って、ステップＳ２５８の処理の後、または、ステップＳ２５７において、テップＳ２５６の処理で算出された割合が閾値以上であると判定された場合、処理は、ステップＳ２５９に進む。
【０３０１】
ステップＳ２５９において、入力画像が適切な制作目標画像として制作目標画像判定部１１０から出力される。
【０３０２】
このようにして制作目標画像判定処理が実行される。このようにすることで、不適切な制作目標画像を、適切な制作目標画像に変えて出力することも可能となる。
【０３０３】
以上においては、フォトモザイク画像生成装置１０が、制作目標画像処理部２０、フォトモザイク画像生成部３０、および制作目標画像判定部１１０により構成される例について説明したが、他の構成としても構わない。
【０３０４】
例えば、制作目標画像処理部２０、およびフォトモザイク画像生成部３０の機能を実現する装置が、従来のフォトモザイク画像生成装置に接続されるようにしても構わない。
【０３０５】
上述したように、制作目標画像判定部１１０によりそもそも制作目標画像として不適切な画像を採用したフォトモザイク画像の生成を抑止することができる。従って、制作目標画像判定部１１０を単体で使用した場合でも、例えば、特別なスキルなどを必要とせずに、短時間で美しいフォトモザイクを生成することができるという効果が期待できる。
【０３０６】
なお、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータにネットワークや記録媒体からインストールされる。また、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図２７に示されるような汎用のパーソナルコンピュータ７００などに、ネットワークや記録媒体からインストールされる。
【０３０７】
図２７において、CPU（Central Processing Unit）７０１は、ROM（Read Only Memory）７０２に記憶されているプログラム、または記憶部７０８からＲＡＭ（Random Access Memory）７０３にロードされたプログラムに従って各種の処理を実行する。ＲＡＭ７０３にはまた、CPU７０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０３０８】
CPU７０１、ROM７０２、およびＲＡＭ７０３は、バス７０４を介して相互に接続されている。このバス７０４にはまた、入出力インタフェース７０５も接続されている。
【０３０９】
入出力インタフェース７０５には、キーボード、マウスなどよりなる入力部７０６、ＬＣＤ(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部７０７が接続されている。また、入出力インタフェース７０５には、ハードディスクなどより構成される記憶部７０８、モデム、LANカードなどのネットワークインタフェースカードなどより構成される通信部７０９が接続されている。通信部７０９は、インターネットを含むネットワークを介しての通信処理を行う。
【０３１０】
入出力インタフェース７０５にはまた、必要に応じてドライブ７１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア７１１が適宜装着されている。そして、それらのリムーバブルメディアから読み出されたコンピュータプログラムが、必要に応じて記憶部７０８にインストールされる。
【０３１１】
上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、インターネットなどのネットワークや、リムーバブルメディア７１１などからなる記録媒体からインストールされる。
【０３１２】
なお、この記録媒体は、図２７に示される、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フロッピディスク（登録商標）を含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（Mini-Disk）（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア７１１により構成されるものだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM７０２や、記憶部７０８に含まれるハードディスクなどで構成されるものも含む。
【０３１３】
なお、本明細書において上述した一連の処理は、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３１４】
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０３１５】
１０  フォトモザイク画像生成装置，  ２０  制作目標画像処理部，  ２１  特徴領域検出部，  ２２  倍率決定部，  ２３  画像生成部，  ２４  特徴領域データベース，  ３０  フォトモザイク画像生成部，  ３１  ブロック分割部，  ３２  代表値決定部，  ３３  クラスセンタ値算出部，  ３４  制作目標画像クラス分類部，  ３５  置換画像決定部，  ３６  画像置換部，  ３７  画像データベースクラス分類部，  ３８  蓄積メモリ，  １１０  制作目標画像判定部，  １１１  被写体検出部，  １１３  エッジ内画素値取得部，  １１４  エッジ外画素値取得部，  １１５  差分検出部，  １１６  適性判定部，  １１７  背景色決定部，  １１９  背景色変換部，  １３１  被写体検出部，  １３２  被写体サイズ検出部，  １３３  適性判定部
【図１】
0005527592.tif 000004
【図２】
0005527592.tif 000005
【図３】
0005527592.tif 000006
【図４】
0005527592.tif 000007
【図５】
0005527592.tif 000008
【図６】
0005527592.tif 000009
【図７】
0005527592.tif 000010
【図８】
0005527592.tif 000011
【図９】
0005527592.tif 000012
【図１０】
0005527592.tif 000013
【図１１】
0005527592.tif 000014
【図１２】
0005527592.tif 000015
【図１３】
0005527592.tif 000016
【図１４】
0005527592.tif 000017
【図１５】
0005527592.tif 000018
【図１６】
0005527592.tif 000019
【図１７】
0005527592.tif 000020
【図１８】
0005527592.tif 000021
【図１９】
0005527592.tif 000022
【図２０】
0005527592.tif 000023
【図２１】
0005527592.tif 000024
【図２２】
0005527592.tif 000025
【図２３】
0005527592.tif 000026
【図２４】
0005527592.tif 000027
【図２５】
0005527592.tif 000028
【図２６】
0005527592.tif 000029
【図２７】
0005527592.tif 000030