説明

画像処理装置

【課題】モザイク生成に適した部品画像を有していない場合でも、適切にモザイク画像を合成すること。
【解決手段】画像処理装置1は、参照画像に基づいて複数の部品画像を組合わせて参照画像に類似する画像を合成する画像合成手段16と、部品画像群の中から画像合成に用いる複数の部品画像を選択する選択手段16と、選択手段16によって選択された各部品画像について、該部品画像の色が対応する参照画像の領域の色と類似しているか否かをそれぞれ判定する判定手段16と、判定手段16によって否定判定された部品画像の代わりに、部品画像群に含まれる部品画像に画像処理を施すことによって新たな部品画像を生成する部品画像生成手段16とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置に関する。
【背景技術】
【0002】
サムネイルのような小さなカラー画像を部品画像とし、部品画像を多数組み合わせることによってモザイク画像のような大きなカラー画像を合成する技術が知られている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2005−100120号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来技術では、部品画像として適切なカラー画像(たとえば、所定色を有するサムネイル画像)が存在しない場合には、カラーのモザイク画像を合成することができないという問題があった。
【課題を解決するための手段】
【0005】
(1)請求項1に記載の発明による画像処理装置は、参照画像に基づいて複数の部品画像を組合わせて参照画像に類似する画像を合成する画像合成手段と、部品画像群の中から画像合成に用いる複数の部品画像を選択する選択手段と、選択手段によって選択された各部品画像について、該部品画像の色が対応する参照画像の領域の色と類似しているか否かをそれぞれ判定する判定手段と、判定手段によって否定判定された部品画像の代わりに、部品画像群に含まれる部品画像に画像処理を施すことによって新たな部品画像を生成する部品画像生成手段とを備えることを特徴とする。
(2)請求項3に記載の発明による画像処理装置は、参照画像に基づいて複数の部品画像を組合わせて参照画像に類似する画像を合成するための部品画像群を、各部品画像の明るさまたは色相に基づいて複数のグループに分類する分類手段と、分類後において部品画像を含まないグループを特定する特定手段と、特定されたグループに含める部品画像を、他のグループに含まれる部品画像に画像処理を施すことによって生成する部品画像生成手段と、分類および部品画像の生成後において画像合成手段が用いる複数の部品画像を選択する選択手段と、選択された複数の部品画像を組合わせて画像を合成する画像合成手段と、を備えることを特徴とする。
【発明の効果】
【0006】
本発明によれば、モザイク生成に適した部品画像を有していない場合でも適切にモザイク画像を合成できる。
【図面の簡単な説明】
【0007】
【図1】本発明の第一の実施形態による画像処理装置を搭載した電子カメラの構成例を説明するブロック図である。
【図2】撮影画像のブロックを説明する図である。
【図3】フォトモザイク生成の概要を説明する図である。
【図4】明るさ情報に基づくソートを説明する図である。
【図5】部品画像を検索する処理の流れを例示するフローチャートである。
【図6】フォトモザイク画像のブロックを説明する図である。
【図7】フォトモザイク画像を生成する処理の流れを例示するフローチャートである。
【図8】LCDモニタに表示されたプレビュー画像を例示する図である。
【図9】LCDモニタの表示画面を例示する図である。
【図10】コンピュータ装置を例示する図である。
【発明を実施するための形態】
【0008】
以下、図面を参照して本発明を実施するための形態について説明する。
(第一の実施形態)
図1は、本発明の第一の実施形態による画像処理装置を搭載した電子カメラ1の構成例を説明するブロック図である。図1において、電子カメラ1は、撮影光学系11と、撮像素子12と、画像処理部13と、SDRAM14と、LCDモニタ15と、CPU16と、不揮発性メモリ17と、カードインターフェース(I/F)18と、通信インターフェース(I/F)19と、操作部材20とを備える。
【0009】
CPU16、不揮発性メモリ17、カードインターフェース18、通信インターフェース19、画像処理部13、SDRAM14およびLCDモニタ15は、それぞれがバス25を介して接続されている。
【0010】
撮影光学系11は、ズームレンズやフォーカシングレンズを含む複数のレンズ群で構成され、被写体像を撮像素子12の受光面に結像させる。なお、図1を簡単にするため、撮影光学系11を単レンズとして図示している。
【0011】
撮像素子12は、受光素子が受光面に二次元配列されたCMOSイメージセンサなどによって構成される。撮像素子12は、撮影光学系11を通過した光束による像を光電変換し、デジタル画像信号を生成する。デジタル画像信号は、画像処理部13に入力される。画像処理部13は、デジタル画像データに対して各種の画像処理(色補間処理、階調変換処理、輪郭強調処理、ホワイトバランス調整処理など)を施す。
【0012】
LCDモニタ15は液晶パネルなどによって構成される。LCDモニタ15は、CPU16からの指示に応じて画像や操作アイコン、メニュー画面などを表示する。SDRAM14は、電源オフ時に記憶内容を保持しない揮発性メモリである。SDRAM14は、画像処理部13による画像処理の前工程や後工程でのデジタル画像データを一時的に記憶する他、CPU16によるプログラム実行時に用いられる。不揮発性メモリ17は、フラッシュメモリなどによって構成される。電源オフ時にも記憶内容を保持するので、CPU16が実行するプログラムなどを記憶する。
【0013】
CPU16は、不揮発性メモリ17が記憶するプログラムを実行することにより、電子カメラ1が行う動作を制御する。CPU16は、AF(オートフォーカス)動作制御や、自動露出(AE)演算も行う。AF動作は、たとえば、スルー画像のコントラスト情報に基づいてフォーカシングレンズ(不図示)の合焦位置を求める。スルー画像は、レリーズ操作前に撮像素子12によって所定の時間間隔(たとえば60コマ/毎秒)で繰り返し取得されるモニタ用画像のことをいう。
【0014】
カードインターフェース18はコネクタ(不図示)を有し、該コネクタにメモリカードなどの記憶媒体30が接続される。カードインターフェース18は、接続された記憶媒体30に対するデータの書き込みや、記憶媒体30からのデータの読み込みを行う。記憶媒体30は、半導体メモリを内蔵したメモリカード、またはハードディスクドライブなどで構成される。
【0015】
通信インターフェース19は、たとえば、不図示のコネクタに接続された外部機器との間でTCP/IPプロトコルを用いた通信を行う。この通信により、外部機器からのコマンドやデータを受信したり、記憶媒体30が記憶している画像データや音声データなどを外部機器へ送信したりする。操作部材20は、レリーズボタンやメニュースイッチなどを含む。操作部材20は、撮影操作、モード切替え操作やアイコン選択操作など、各操作に応じた操作信号をCPU16へ送出する。
【0016】
本実施形態の電子カメラ1は、フォトモザイク画像を生成する機能を備える。フォトモザイク画像は、サンプル画像に基づいて複数の部品画像をモザイク状に組合わせ、サンプル画像に類似させた合成画像である。本実施形態は、フォトモザイク画像の生成に特徴を有するので、以降はフォトモザイク画像の生成を中心に説明する。
【0017】
本説明では、フォトモザイク画像のモデルにする画像を参照画像と呼び、フォトモザイク画像を構成する多数の小画像を部品画像と呼ぶことにする。電子カメラ1のCPU16は、撮影した画像をフォトモザイク画像に用いる場合に必要な演算を、撮影時に行う画像処理演算時に合わせて行う。演算したフォトモザイク画像用の情報は、Exifデータとして、撮影した画像データとともに画像ファイルに含めて記憶媒体30に記録しておく。
【0018】
CPU16は、フォトモザイク画像用の情報として、撮影画像の所定ブロックごとの明るさ情報と、撮影画像の所定ブロックごとの色相情報と、撮影画像全体の明るさ情報と、撮影画像全体の色相情報と、をそれぞれ演算する。撮影画像のブロックごとの情報は、当該撮影画像を上記参照画像として用いる場合に必要な情報である。撮影画像全体の情報は、当該撮影画像を上記部品画像として用いる場合に必要な情報である。
【0019】
<ブロックごとの色相情報および明るさ情報>
図2は、撮影画像のブロックを説明する図である。本実施形態では、撮像素子12の有効撮像領域を所定ブロック(たとえば、5行(A〜E)6列(1〜6)からなる30ブロック)に分割する。CPU16は、撮像素子12から読出す画素データについて、各ブロックの中に含まれるR色成分のデータのブロック平均値BlockRと、G色成分のデータのブロック平均値BlockGと、B色成分のデータのブロック平均値BlockBとをそれぞれ算出し、各色成分のブロック平均値BlockR,BlockG,BlockBで構成される1組の(BlockR,BlockG,BlockB)を撮影画像のブロックごとの色相情報BlockRGBとする。たとえば、8ビット長のA/D変換を行う場合は、ブロックごとの色相情報BlockRGBを構成する各色成分のブロック平均値BlockR,BlockG,BlockBは、それぞれが0〜255の間の値をとる。
【0020】
また、CPU16は、上述した各ブロックの中に含まれるR色成分のデータのブロック平均値BlockRと、G色成分のデータのブロック平均値BlockGと、B色成分のデータのブロック平均値BlockBとの和をブロックごとにそれぞれ算出し、算出したブロック平均値の和(BlockR+BlockG+BlockB)に基づく評定値を撮影画像のブロックごとの明るさ情報BlockLevelとする。上述したように、8ビット長のA/D変換を行う場合は、各色成分のブロック平均値BlockR,BlockG,BlockBがそれぞれ0〜255の間であるので、各色成分のブロック平均値の和(BlockR+BlockG+BlockB)は0〜765の間の値をとる。CPU16は、和(BlockR+BlockG+BlockB)に基づいて評定値BlockLevelを10段階で表す。たとえば、和(BlockR+BlockG+BlockB)が0〜75の場合の評定値を1(BlockLevel=1)、和(BlockR+BlockG+BlockB)が76〜150の場合の評定値を2(BlockLevel=2)、和(BlockR+BlockG+BlockB)が151〜225の場合の評定値を3(BlockLevel=3)、和(BlockR+BlockG+BlockB)の評定値が226〜300の場合の評定値を4(BlockLevel=4)、…和(BlockR+BlockG+BlockB)が676〜765の場合の評定値を10(BlockLevel=10)とする。
【0021】
<画像全体の色相情報および明るさ情報>
CPU16は、上述した各色成分のブロック平均値を画像全体のブロック間(本例では30ブロック)で平均する。具体的には、30個分のR色成分のデータのブロック平均値BlockRを平均し、R色成分のデータの全体平均値WholeRを算出する。また、30個分のG色成分のデータのブロック平均値BlockGを平均し、G色成分のデータの全体平均値WholeGを算出する。さらに、30個分のB色成分のデータのブロック平均値BlockBを平均し、B色成分のデータの全体平均値WholeBを算出する。そして、これらの全体平均値WholeR,WholeG,WholeBで構成される1組の(WholeR,WholeG,WholeB)を撮影画像全体の色相情報WholeRGBとする。
【0022】
次に、CPU16は、上述したブロックごとの明るさ情報を示す評定値(=BlockLevel)を画像全体である30ブロック間で平均した平均値Nmを算出し、この平均値Nmを撮影画像全体の明るさ情報WholeLevelとする。
【0023】
<フォトモザイク画像生成の概要>
図3は、フォトモザイク生成の概要を説明する図である。図3において左側の画像は、フォトモザイク画像のモデルにする参照画像を示す。図3において右側の画像は、フォトモザイク画像を構成する部品画像の候補とする複数の画像(部品画像群とよぶ)を示す。CPU16は、参照画像については、当該画像のブロックごとの色相情報BlockRGBと、当該画像のブロックごとの明るさ情報BlockLevelとを用いる。CPU16は、部品画像については、当該画像全体の色相情報WholeRGBと、当該画像全体の明るさ情報WholeLevelとを用いる。
【0024】
CPU16は、たとえばA行1列のブロックについて、このブロックの明るさ情報BlockLevelおよびこのブロックの色相情報BlockRGBと値が合致する、または値が近い画像全体の明るさ情報WholeLevelおよび画像全体の色相情報WholeRGBを有する部品画像を探す。次に、CPU16は、A行2列のブロックについて、このブロックの明るさ情報BlockLevelおよびこのブロックの色相情報BlockRGBと値が合致する、または値が近い画像全体の明るさ情報WholeLevelおよび画像全体の色相情報WholeRGBを有する部品画像を探す。以降同様に、E行6列のブロックまで、そのブロックの明るさ情報BlockLevelおよびそのブロックの色相情報BlockRGBと値が合致する、または値が近い画像全体の明るさ情報WholeLevelおよび画像全体の色相情報WholeRGBを有する部品画像を探す。
【0025】
<部品画像群のソート>
CPU16は、フォトモザイク生成の際に上記部品画像を探しやすくするために、フォトモザイク生成前に、部品画像群を各部品画像全体の明るさ情報に基づくグループ順にソートする。図4は、明るさ情報に基づくソートを説明する図である。CPU16は、部品画像群を構成する各部品画像の画像全体の明るさ情報WholeLevelを用いて、部品画像を10段階に分ける。WholeLevel=1に該当する部品画像群がSortLevel1、WholeLevel=2に該当する部品画像群がSortLevel2であり、以降同様に、WholeLevel=10に該当する部品画像群がSortLevel10である。また、SortLevel1〜SortLevel10をまとめてSortLevelAllと表す。
【0026】
CPU16は、参照画像における注目ブロックの明るさ情報BlockLevel、およびこのブロックの色相情報BlockRGBと値が合致する、または値が近い画像全体の明るさ情報WholeLevel、および画像全体の色相情報WholeRGBを有する部品画像を探す場合、先ず注目ブロックの明るさ情報BlockLevelと同レベルの部品画像群であるSortLevelN(たとえば、参照画像における注目ブロックの明るさ情報BlockLevelが5の場合は、N=5)の部品画像群を選び、該部品画像群に含まれる部品画像の中から注目ブロックの色相情報BlockRGBと値が合致する、または値が近い画像全体の色相情報WholeRGBを有する部品画像を探す。
【0027】
<部品画像の検索>
CPU16が、フォトモザイク画像の生成時に部品画像を検索する処理の流れについて、図5に例示するフローチャートを参照して説明する。CPU16は、参照画像と部品画像とが選択されている状態で、操作部材20からフォトモザイク画像の生成開始を示す操作信号が入力された場合に図5による処理を起動する。
【0028】
図5のステップS10において、CPU16は、記憶媒体30に記憶される画像のうち、上記部品画像として使用が認められる部品画像群をソートしてステップS20へ進む。部品画像群のソートについては上述した通りである。ステップS20において、CPU16は、参照画像(TargetPhotoと呼ぶ)における注目ブロックについて、このブロックの明るさ情報BlockLevelと一致、または近いレベルの明るさ情報WholeLevelを有する部品画像群SortLevelNを検索してステップS30へ進む。以降、検索した結果の部品画像群をSearchLevelとよぶ。
【0029】
ステップS30において、CPU16は、色相情報の比較における最大値GapMinを16進表記でFFFFFFに設定してステップS40へ進む。色相情報の比較は、参照画像TargetPhotoの注目ブロックにおける色相情報BlockRGBと、ステップS20で検索した結果である部品画像群SearchLevelに含まれている複数の部品画像(SelectPhotosと呼ぶ)の画像全体の色相情報WholeRGBとの間で行う。
【0030】
ステップS40において、CPU16は、部品画像群SearchLevelの中から1つの部品画像(SelectPhoto)を選択し、参照画像TargetPhotoの注目ブロックにおけるR色成分のデータのブロック平均値BlockRと、上記選択した部品画像SelectPhotoの画像全体のR色成分のデータの全体平均値WholeRとの差分GapRを算出してステップS50へ進む。
【0031】
ステップS50において、CPU16は、参照画像TargetPhotoの注目ブロックにおけるG色成分のデータのブロック平均値BlockGと、上記選択した部品画像SelectPhotoの画像全体のG色成分のデータの全体平均値WholeGとの差分GapGを算出してステップS60へ進む。
【0032】
ステップS60において、CPU16は、参照画像TargetPhotoの注目ブロックにおけるB色成分のデータのブロック平均値BlockBと、上記選択した部品画像SelectPhotoの画像全体のB色成分のデータの全体平均値WholeBとの差分GapBを算出してステップS70へ進む。
【0033】
ステップS70において、CPU16は、上記選択した部品画像SelectPhotoについて、全ての差分の合計GapAll=GapR+GapG+GapBを算出してステップS80へ進む。ステップS80において、CPU16は、差分の合計GapAllが所定の判定閾値GapMin以上か否かを判定する。CPU16は、GapAll≧GapMinが成立する場合にステップS80を肯定判定してステップS100へ進む。CPU16は、GapAll≧GapMinが成立しない場合にはステップS80を否定判定し、ステップS90へ進む。
【0034】
ステップS90において、CPU16は、選択している部品画像SelectPhotoを部品画像SerchPhotoとして記憶媒体30に登録する。CPU16はさらに、判定閾値GapMinの値をステップS70で算出した差分の合計GapAllの値で更新してステップS100へ進む。
【0035】
ステップS100において、CPU16は、部品画像群SearchLevelに含まれている全ての部品画像SelectPhotosを対象に検索を終了したか否かを判定する。CPU16は、全ての部品画像SelectPhotosについて処理を終了した場合はステップS100を肯定判定してステップS110へ進む。CPU16は、部品画像SelectPhotosの中に選択していない未処理の部品画像SelectPhotoが存在する場合には、ステップS100を否定判定してステップS120へ進む。
【0036】
ステップS110において、CPU16は、上記差分GapRの最小値GapRminが所定の判定閾値より小さいか否か、上記差分GapGの最小値GapGminが所定の判定閾値より小さいか否か、上記差分GapBの最小値GapBminが所定の判定閾値より小さいか否か、をそれぞれ判定する。CPU16は、差分GapRmin、差分GapGmin、および差分GapBminの全てが判定閾値より小さい場合にステップS110を肯定判定してステップS170へ進む。CPU16は、差分GapRmin、差分GapGmin、および差分GapBminの少なくとも1つが判定閾値以上の場合には、ステップS110を否定判定してステップS130へ進む。
【0037】
ステップS170において、CPU16は、部品画像SerchPhotoを参照画像TargetPhotoの注目ブロックの位置に対応させて使用するように決定してステップS180へ進む。ステップS180において、CPU16は、参照画像TargetPhotoの全30ブロックを注目ブロックとしてチェックを終了したか否かを判定する。CPU16は、全30ブロックに対するチェックを終了した場合にステップS180を肯定判定して図5による処理を終了する。以上の処理により、全30ブロックのそれぞれの位置に対応させて使用する部品画像SelectPhotoが決まる。
【0038】
上述したステップS100を否定判定して進むステップ120において、CPU16は、参照画像TargetPhotoの注目ブロックにおける色相情報BlockRGBとの比較対象を、部品画像群SearchLevel内で未チェックの部品画像SelectPhotoの画像全体の色相情報WholeRGBへ変更する。すなわち、ステップS40へ戻って部品画像群SearchLevelの中から他の部品画像(SelectPhoto)を1つ選択し、上述した処理を繰り返す。
【0039】
上述したステップS110を否定判定して進むステップ130において、CPU16は、比較対象である注目ブロックが無彩色か否かを判定する。CPU16は、参照画像TargetPhotoの注目ブロックにおける色相情報BlockRGBが無彩色を示す(たとえば、BlockR:BlockG:BlockB=1:1:1)場合にステップS130を肯定判定してステップS140へ進む。CPU16は、参照画像TargetPhotoの注目ブロックにおける色相情報BlockRGBが無彩色を示さない(たとえば、BlockR:BlockG:BlockB≠1:1:1)場合にステップS130を否定判定してステップS160へ進む。
【0040】
ステップS140において、CPU16は、部品画像SerchPhotoをモノクロ画像へ変換してステップS150へ進む。ステップS150において、CPU16は、モノクロ画像を明度変換(変換後のモノクロ画像の明るさWholeLevelを参照画像TargetPhotoの注目ブロックにおける明るさBlockLevelに揃える)してステップS170へ進む。
【0041】
上述したステップS130を否定判定して進むステップS160において、CPU16は、比較対象である注目ブロックの色を示すデータ(色相情報BlockRGB)をSDRAM14へ記録してステップS180へ進む。これにより、注目ブロックの位置情報と、該注目ブロックにおいて足りない色を示す情報とがSDRAM14に保存される。
【0042】
上述したステップS180を否定判定して進むステップS190において、CPU16は、注目ブロックを、参照画像TargetPhotoの全30ブロックのうち未チェックのブロックへ変更してステップS20へ戻る。
【0043】
<モザイク度の変更>
図6は、フォトモザイク画像のブロックを説明する図である。本実施形態では、撮像素子12の分割ブロック(図6において(A))を固定(本説明では分割数30)とし、フォトモザイク画像を生成する際の分割ブロック(図6において(B))について、ユーザー操作により変更可能とする。ユーザーは、たとえば、操作部材20を操作することによってフォトモザイク画像における分割ブロックの大きさを変化させる。フォトモザイク画像における分割ブロックの大きさが変わると、フォトモザイク画像のモザイク度が変わる。
【0044】
図6の例では、フォトモザイク画像における分割ブロックの大きさの最小単位は、撮像素子12の分割ブロックの大きさに対応させる。最小単位の場合の分割数は、撮像素子12の分割数と同じ30である。一方、フォトモザイク画像における分割ブロックの大きさの最大単位は、たとえば、撮像素子12の分割ブロックの16倍の大きさに対応させる。フォトモザイク画像における分割数が大きい(分割ブロックの大きさの最小単位が小さい)場合は精細なフォトモザイク画像が生成され、フォトモザイク画像における分割数が小さい(分割ブロックの大きさの最小単位が大きい)場合は大雑把なフォトモザイク画像が生成される。
【0045】
<フォトモザイク画像生成の流れ>
CPU16が、フォトモザイク画像を生成する処理の流れについて、図7に例示するフローチャートを参照して説明する。ユーザーは、操作部材20を操作することによってフォトモザイク画像の生成開始を指示する。CPU16は、フォトモザイク画像の生成開始を示す操作信号が入力された場合に図7による処理を起動する。
【0046】
図7のステップS510において、CPU16は、メモリカード30に記憶される撮影画像の中から1つの参照画像TargetPhotoを選択してステップS520へ進む。たとえば、ユーザーが操作部材20を操作することにより、選択すべき参照画像を示す操作信号がCPU16に入力される。
【0047】
ステップS520において、CPU16は、メモリカード30に記憶される撮影画像の中から複数の部品画像SelectPhotosを選択してステップS530へ進む。たとえば、ユーザーが操作部材20を操作することにより、候補とする(部品画像として使用を認める)複数の部品画像を示す操作信号がCPU16に入力される。
【0048】
ステップS530において、CPU16は、選択した参照画像TargetPhotoおよび部品画像SelectPhotosの画像データに、フォトモザイク画像用のデータが存在するか否かを判定する。フォトモザイク画像用のデータは、上述したように、撮影画像のブロックごとの明るさ情報BlockLevelと、撮影画像のブロックごとの色相情報BlockRGBと、撮影画像全体の明るさ情報WholeLevelと、撮影画像全体の色相情報WholeRGBである。CPU16は、フォトモザイク画像用のデータが存在する場合にステップS530を肯定判定してステップS540へ進み、フォトモザイク画像用のデータが存在しない場合にスはテップS530を否定判定してステップS640へ進む。
【0049】
ステップS540において、CPU16は、フォトモザイク画像の分割ブロック数を選択してステップS550へ進む。たとえば、ユーザーが操作部材20を操作することにより、フォトモザイク画像における分割ブロック数(すなわち、分割ブロックの大きさ)を示す操作信号がCPU16に入力される。
【0050】
ステップS550において、CPU16は、ステップS520で選択した部品画像群SelectPhotosをソートしてステップS560へ進む。ソートは上述した図5のステップS10の場合と同様である。ステップS560において、CPU16は、部品画像の検索処理を行ってステップS570へ進む。上述した図5の処理に相当する。これにより、参照画像TargetPhotoにおける注目ブロックごとに、使用する部品画像SearchPhotoを決定する。
【0051】
ステップS570において、CPU16は、決定した部品画像SearchPhotoを用いてフォトモザイク画像を生成し、ステップS580へ進む。ステップS580において、CPU16は、生成したフォトモザイク画像をLCDモニタ15にプレビュー表示させてステップS590へ進む。図8は、LCDモニタ15に表示されたプレビュー画像を例示する図である。
【0052】
ステップS590において、CPU16は、検索処理(図5)後の部品画像に不足があるか否かを判定する。CPU16は、SDRAM14にステップS160(図5)において記録したデータが記憶されている場合にステップS590を肯定判定し、ステップS630へ進む。CPU16は、SDRAM14にステップS160(図5)において記録したデータが記憶されていない場合には、ステップS590を否定判定してステップS600へ進む。
【0053】
ステップS600において、CPU16は、保存確認表示として、たとえば「この画像を保存する場合はOKボタンを押して下さい。保存しない場合はキャンセルして下さい。」というメッセージをLCDモニタ15に表示させてステップS610へ進む。ステップS610において、CPU16は、ユーザーにより選択操作がなされたか否かを判定する。CPU16は、操作部材20から「OK」ボタンの押下操作信号が入力された場合にステップS610を肯定判定してステップS620へ進む。CPU16は、操作部材20から「キャンセル」を示す操作信号が入力された場合には、ステップS610を否定判定して図7による処理を終了する。
【0054】
ステップS620において、CPU16は、フォトモザイク画像のデータを画像ファイルとして記憶媒体30に保存させて図7による処理を終了する。上述したステップS590を肯定判定した場合に進むステップS630において、CPU16は、不足しているブロック色を示す表示をLCDモニタ15に表示させて図7による処理を終了する。図9は、LCDモニタ15の表示画面を例示する図である。図9において、プレビュー表示画像の下部に、たとえば「足りない色があります。不足する色の画像を撮影して下さい。」というメッセージを表示させる。このメッセージ表示により、ユーザーに部品画像となり得る画像を取得するために新たな撮影を促す。CPU16は、ステップS160(図5)においてSDRAM14に記録したデータに基づいて、注目ブロックの位置情報をプレビュー表示画像上に表示させ、該注目ブロックにおいて足りない色をメッセージの近くに表示させる。
【0055】
上述したステップS530を否定判定した場合に進むステップS640において、CPU16は、選択された画像がフォトモザイク画像合成用のものでないことを知らせるメッセージをLCDモニタ15に表示させて、図7による処理を終了する。
【0056】
以上説明した第一の実施形態によれば、次の作用効果が得られる。
(1)電子カメラ1は、参照画像に基づいて複数の部品画像を組合わせて参照画像に類似する画像を合成するCPU16と、部品画像群の中から画像合成に用いる複数の部品画像を選択するCPU16と、CPU16によって選択された各部品画像について、該部品画像の色WholeRGBが対応する参照画像のブロックの色BlockRGBと類似しているか否かをそれぞれ判定するCPU16と、CPU16によって否定判定された部品画像の代わりに、部品画像群に含まれる部品画像に、たとえばモノクロ変換や明度変換を施すことによって新たな部品画像を生成するCPU16とを備えるようにした。これにより、モザイク生成に適した部品画像を有していない場合でも、適切にモザイク画像を合成できる。
【0057】
(2)上記(1)の電子カメラ1において、CPU16は、参照画像の所定ブロックごとに該ブロックの色に最も近い色の部品画像を部品画像群からそれぞれ選択し、CPU16は、選択した部品画像の色と対応する参照画像のブロックの色とを対比し、たとえばRGB色空間上の少なくとも1つの座標軸(R成分、G成分、もしくはB成分)において所定値以上の差を有する場合に否定判定するようにした。これにより、選択した部品画像の色と、参照画像のブロックの色との間で、色が類似するか否かを適切に判定することができる。
【0058】
(3)電子カメラ1は、参照画像に基づいて複数の部品画像を組合わせて参照画像に類似する画像を合成するための部品画像群SortLevelAllを、各部品画像の明るさまたは色相に基づいて複数のグループSortLevelNに分類するCPU16と、分類後において部品画像を含まないグループを特定するCPU16と、特定したグループに含める部品画像を、他のグループに含まれる部品画像にたとえば補間処理を施すことによって生成するCPU16と、分類および部品画像の生成後において画像合成に用いる複数の部品画像を選択するCPU16と、選択した複数の部品画像を組合わせて画像を合成するCPU16とを備えるようにしたので、モザイク生成に適した部品画像を有していない場合でも、適切にモザイク画像を合成できる。
【0059】
(4)上記(3)の電子カメラ1において、CPU16は、グループSortLevelN内に含む各部品画像の明るさの差が所定値未満となるようにソートし、参照画像の所定ブロックごとに該ブロックの明るさと合致するグループを複数のグループSortLevelAllの中から選択し、該選択したグループSearchLevel内において部品画像の色と対応する参照画像のブロックの色とを対比し、参照画像のブロックの色と最も類似する色の部品画像SearchPhotoをさらに選択するようにした。明るさと色相の双方が近い部品画像を選ぶ際に、一方(明るさ)に基づいてソートしておくことで、明るさが近い部品画像群の選択が容易になる。その後、明るさが近い部品画像群の中から他方(色相)が近い部品画像を選ぶので、明るさと色相の近い部品画像を一度に選ぶ場合に比べて、選択処理の負担を軽くすることができる。
【0060】
(5)上記(1)または(2)の電子カメラ1において、CPU16は、対比する参照画像のブロックが無彩色の場合は無彩色の部品画像を生成するようにしたので、モノクロ画像のような無彩色の参照画像に基づくフォトモザイク画像を生成する場合にも適用できる。
【0061】
(6)上記(5)の電子カメラ1において、CPU16は、無彩色の部品画像の輝度を参照画像のブロックの輝度に変換するようにしたので、無彩色の参照画像であって明るさが異なる場合にも適用できる。
【0062】
(7)上記(1)、(2)、(5)および(6)のいずれかの電子カメラ1において、CPU16によって新たな部品画像を生成できない場合に報知するLCDモニタ15をさらに備えるので、たとえば、ユーザーに対して新たな撮影を促すことができる。
【0063】
(変形例1)
上述した説明では、部品画像をソートする際に、部品画像の明るさ情報、すなわち、部品画像群を構成する各部品画像の画像全体の明るさ情報WholeLevelに応じた並べ替えにより、SortLevel1からSortLevel10までそれぞれに複数の部品画像が割当てられる例を説明した(図4)。CPU16は、もし、部品画像が割り当てられないSortLevelNが存在する場合は、当該SortLevelNを挟むSortLevel(N+1)およびSortLevel(N−1)に割当てられた部品画像を用いた補間処理により、SortLevelNに割り当てる部品画像を生成するようにしてもよい。
【0064】
(変形例2)
上述した説明では、部品画像をソートする際に、部品画像の明るさ情報、すなわち、部品画像群を構成する各部品画像の画像全体の明るさ情報WholeLevelに応じた並べ替えを行った。この代わりに、部品画像の色相情報、すなわち、部品画像群を構成する各部品画像の画像全体の色相情報WholeRGBに応じた並べ替えを行うように構成してもよい。この場合のCPU16は、参照画像における注目ブロックの明るさ情報BlockLevel、およびこのブロックの色相情報BlockRGBと値が合致する、または値が近い画像全体の明るさ情報WholeLevel、および画像全体の色相情報WholeRGBを有する部品画像を探す場合、先ず注目ブロックの色相情報BlockRGBと同レベルで色相が類似する部品画像群を選び、この部品画像群に含まれる部品画像の中から注目ブロックの明るさ情報BlockLevelと値が合致する、または値が近い画像全体の明るさ情報WholeLevelを有する部品画像を探す。
【0065】
変形例2では、明るさと色相の双方が近い部品画像を選ぶ際に、一方(色相)に基づいてソートしておくことで、色相が近い部品画像群の選択が容易になる。その後、色相が近い部品画像群の中から他方(明るさ)が近い部品画像を選ぶので、明るさと色相の近い部品画像を一度に選ぶ場合に比べて、選択処理の負担を軽くすることができる。
【0066】
(変形例3)
上述した説明では、フォトモザイク画像で使用する部品画像が不足する場合には、フォトモザイク画像をプレビュー表示した後から、不足する色およびその位置をまとめて知らせるようにした(ステップS630(図7))。この代わりに、部品画像の検索処理において部品画像の不足が判明した場合には、その都度部品画像の不足を知らせる表示を行うように構成してもよい。
【0067】
(変形例4)
上述した説明では、フォトモザイク画像で使用する部品画像が不足する場合には、不足する色およびその位置をまとめて知らせる(ステップS630(図7))だけで、フォトモザイク画像を保存しない例を説明した。この代わりに、部品画像が不足する場合であっても保存確認を表示を行うことにより、プレビュー表示しているフォトモザイク画像を記憶媒体30に記録するか否かの操作をユーザーに促すように構成してもよい。
【0068】
(第二の実施形態)
第一の実施形態では、電子カメラ1に画像処理装置を搭載する例を説明したが、画像処理装置をパーソナルコンピュータによって構成するようにしてもよい。図5および図7に例示したフローチャートによる処理を行うプログラムを図10に示すコンピュータ装置100に実行させることにより、画像処理装置を構成してもよい。プログラムをパーソナルコンピュータ100に取込んで使用する場合には、パーソナルコンピュータ100のデータストレージ装置にプログラムをローディングした上で、当該プログラムを実行させることによって画像処理装置として使用する。
【0069】
パーソナルコンピュータ100に対するプログラムのローディングは、プログラムを格納したCD−ROMなどの記憶媒体104をパーソナルコンピュータ100にセットして行ってもよいし、ネットワークなどの通信回線101を経由する方法でパーソナルコンピュータ100へローディングしてもよい。通信回線101を経由する場合は、通信回線101に接続されたサーバー(コンピュータ)102のハードディスク装置103などにプログラムを格納しておく。プログラムは、記憶媒体104や通信回線101を介する提供など、種々の形態のコンピュータプログラム製品として供給することができる。
【0070】
以上説明した第二の実施形態によれば、第一の実施形態と同様の作用効果が得られる。なお、パーソナルコンピュータによって構成する他にも、デジタルフォトフレームやプロジェクタ等にも上述したフォトモザイク画像を生成させるように構成して構わない。
【0071】
以上の説明はあくまで一例であり、上記の実施形態の構成に何ら限定されるものではない。
【符号の説明】
【0072】
1…電子カメラ
12…撮像素子
13…画像処理部
14…SDRAM
15…LCDモニタ
16…CPU
17…不揮発性メモリ
30、104…記憶媒体
100…パーソナルコンピュータ

【特許請求の範囲】
【請求項1】
参照画像に基づいて複数の部品画像を組合わせて前記参照画像に類似する画像を合成する画像合成手段と、
部品画像群の中から前記画像合成に用いる前記複数の部品画像を選択する選択手段と、
前記選択手段によって選択された各部品画像について、該部品画像の色が対応する前記参照画像の領域の色と類似しているか否かをそれぞれ判定する判定手段と、
前記判定手段によって否定判定された部品画像の代わりに、前記部品画像群に含まれる部品画像に画像処理を施すことによって新たな部品画像を生成する部品画像生成手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置において、
前記選択手段は、前記参照画像の所定領域ごとに該領域の色に最も近い色の部品画像を前記部品画像群からそれぞれ選択し、
前記判定手段は、前記選択された部品画像の色と対応する前記参照画像の領域の色とを対比し、色空間上の少なくとも1つの座標軸において所定値以上の差を有する場合に前記否定判定することを特徴とする画像処理装置。
【請求項3】
参照画像に基づいて複数の部品画像を組合わせて前記参照画像に類似する画像を合成するための部品画像群を、各部品画像の明るさまたは色相に基づいて複数のグループに分類する分類手段と、
前記分類後において部品画像を含まないグループを特定する特定手段と、
前記特定されたグループに含める部品画像を、他のグループに含まれる部品画像に画像処理を施すことによって生成する部品画像生成手段と、
前記分類および前記部品画像の生成後において前記画像合成手段が用いる前記複数の部品画像を選択する選択手段と、
前記選択された前記複数の部品画像を組合わせて前記画像を合成する画像合成手段と、
を備えることを特徴とする画像処理装置。
【請求項4】
請求項3に記載の画像処理装置において、
前記分類手段は、前記グループ内に含む各部品画像の明るさの差が所定値未満となるように分類し、
前記選択手段は、前記参照画像の所定領域ごとに該領域の明るさと合致するグループを前記複数のグループの中から選択し、該選択したグループ内において部品画像の色と対応する前記参照画像の領域の色とを対比し、前記参照画像の領域の色と最も類似する色の部品画像をさらに選択することを特徴とする画像処理装置。
【請求項5】
請求項1または2に記載の画像処理装置において、
前記部品画像生成手段は、対比する前記参照画像の領域が無彩色の場合は無彩色の部品画像を生成することを特徴とする画像処理装置。
【請求項6】
請求項5に記載の画像処理装置において、
前記部品画像生成手段は、前記無彩色の部品画像の輝度を前記参照画像の領域の輝度に変換することを特徴とする画像処理装置。
【請求項7】
請求項1、2、5および6のいずれか一項に記載の画像処理装置において、
前記部品画像生成手段によって新たな部品画像を生成できない場合に報知する報知手段をさらに備えることを特徴とする画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−133448(P2012−133448A)
【公開日】平成24年7月12日(2012.7.12)
【国際特許分類】
【出願番号】特願2010−282916(P2010−282916)
【出願日】平成22年12月20日(2010.12.20)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】