説明

画像処理装置、画像処理方法及びプログラム

【課題】撮像するタイミングに関わらず、撮像画像として好適な被写体を含むパノラマ画像を生成すること。
【解決手段】デジタルカメラ1は、パノラマ画像を合成するための複数の画像データを取得する画像取得部52と、画像取得部52が取得した画像データの夫々に含まれる人物の顔を検出する顔検出部53と、顔検出部53が検出した人物の顔の表情の判定を行う表情判定部55と、表情判定部55により所定値以上の評価値であると判定された人物の顔を、パノラマ画像に用いる人物の顔であると決定する表情決定部56と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、広角画像を生成可能な画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
デジタルカメラや、撮像機能を有する携帯電話等においては、撮像画角の限界はレンズの焦点距離、撮像素子のサイズ等、装置本体が備えるハードスペックに依存している。
したがって、ハードスペックを超えるような広角画像、例えばいわゆるパノラマ画像を得るための技術のひとつとして、パノラマ撮像が従来から知られている。
【0003】
上述のパノラマ撮像を実現するためには、ユーザは、例えば、シャッタスイッチを押下操作した状態を維持しながら、自身の体を軸にして、デジタルカメラを垂直方向にほぼ固定したまま水平方向に回転させるように移動させる。
すると、デジタルカメラは、その間に複数回の撮像処理を実行し、当該複数回の撮像処理の各々の結果得られた複数の画像(以下、「撮像画像」と呼ぶ)の画像データを横方向(水平方向)に合成することによって、パノラマ画像の画像データを生成する。
特許文献1には、複数回の撮像処理のたびに撮像画像における特徴点を検出し、隣接する2枚の撮像画像の特徴点同士が一致するように、複数の撮像画像の画像データを横方向に合成することによって、パノラマ画像の画像データを生成する手法が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平11−282100号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記特許文献でもパノラマ画像としては背景が重要視されており、パノラマ画像に人物等の被写体が含まれる場合に、当該人物の映り栄えについては重要視されていなかったという問題がある。
【0006】
本発明は、このような問題に鑑みてなされたものであり、撮像するタイミングに関わらず、撮像画像として好適な被写体を含むパノラマ画像を生成可能な画像処理装置、画像処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するため、本発明の一態様の画像処理装置は、画像を順次取得する画像取得手段と、前記画像取得手段により取得された複数の画像から被写体像を検出する検出手段と、前記検出手段により検出された各被写体像の評価値を算出する算出手段と、前記算出手段により算出された評価値が所定値以上の被写体像を合成対象として決定する決定手段と、前記決定手段により合成対象として決定された被写体像と前記取得手段により順次取得された画像とを合成し、パノラマ画像を生成する生成手段とを備えたことを特徴とする。
【発明の効果】
【0008】
本発明によれば、撮像するタイミングに関わらず、撮像画像として好適な被写体を含む広角画像を生成することができる。
【図面の簡単な説明】
【0009】
【図1】本発明に係る撮像装置の一実施形態としてのデジタルカメラのハードウェア構成を示すブロック図である。
【図2】図1のデジタルカメラが、撮像処理を実行するための機能的構成を示す機能ブロック図である。
【図3】図2のデジタルカメラの動作モードとして、通常撮像モードとパノラマ撮像モードとが夫々選択された場合における撮像操作を説明する図である。
【図4】図3に示すパノラマ撮像モードによって生成されるパノラマ画像の一例を示す図である。
【図5】パノラマ画像の合成に用いられる画像データ及び当該画像データから生成されるパノラマ画像の画像データの一例を示す図である。
【図6】図2のデジタルカメラが実行する撮像処理の流れの一例を示すフローチャートである。
【図7】図6の撮像処理のうち、パノラマ撮像処理の詳細な流れを示すフローチャートである。
【図8】図7のパノラマ撮像処理のうち、表情判定処理の詳細な流れを示すフローチャートである。
【図9】図7のパノラマ撮像処理のうち、画像合成処理の詳細な流れを示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、図面を参照して、本発明に係る実施形態について説明する。
図1は、本発明に係る画像処理装置の一実施形態としてのデジタルカメラ1のハードウェア構成を示すブロック図である。
デジタルカメラ1は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、バス14と、光学系15と、撮像部16と、画像処理部17と、記憶部18と、表示部19と、操作部20と、通信部21と、角速度センサ22と、ドライブ23と、を備えている。
【0011】
CPU11は、ROM12に記憶されているプログラム、又は記憶部18からRAM13にロードされたプログラムに従って、各種の処理を実行する。ROM12は、CPU11が各種の処理を実行するためのプログラムに加え、CPU11が各種の処理を実行する上において必要なデータ等を適宜記憶している。
【0012】
例えば、本実施形態では、後述する図2の画像制御部51乃至合成部58の各機能を実現するプログラムが、ROM12や記憶部18に記憶されている。したがって、CPU11が、これらのプログラムに従った処理を実行し、後述する画像処理部17と適宜協働することで、後述する図2の画像制御部51乃至合成部58の各機能を実現することができる。
【0013】
CPU11、ROM12、及びRAM13は、バス14を介して相互に接続されている。このバス14にはまた、光学系15、撮像部16、画像処理部17、記憶部18、表示部19、操作部20、通信部21、角速度センサ22、及びドライブ23が接続されている。
【0014】
光学系15は、被写体を撮影するために、光を集光するレンズ、例えばフォーカスレンズやズームレンズ等で構成される。フォーカスレンズは、撮像部16の撮像素子の受光面に被写体像を結像させるレンズである。ズームレンズは、焦点距離を一定の範囲で自在に変化させるレンズである。光学系15にはまた、必要に応じて、焦点や、露出等を調整する周辺装置が設けられる。
【0015】
撮像部16は、光電変換素子やAFE(Analog Front End)等から構成されている。光電変換素子は、例えばCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)型の光電変換素子から構成される。光電変換素子は、一定時間毎に、その間に入射されて蓄積された被写体像の光信号を光電変換(撮像)して、その結果得られるアナログの電気信号をAFEに順次供給する。
AFEは、当該アナログの電気信号に対して、A/D(Analog/Digital)変換処理等の各種信号処理を施し、その結果得られるデジタル信号を、撮像部16の出力信号として出力する。
なお、以下、撮像部16の出力信号を、「撮像画像の画像データ」と呼ぶ。したがって、撮像部16からは撮像画像の画像データが出力されて、画像処理部17等に適宜供給される。
【0016】
画像処理部17は、DSP(Digital Signal Processor)や、VRAM(Video Random Access Memory)等から構成されている。
画像処理部17は、CPU11と協働して、撮像部16から入力される撮像画像の画像データに対して、ノイズ低減、ホワイトバランス、手ぶれ補正等の画像処理の他、後述する画像取得部52乃至合成部58の各機能の発揮に必要な各種画像処理を施す。
ここで、以下、特に断りのない限り、「画像データ」とは、撮像部16から一定時間毎に出力される撮像画像の画像データ、又は、当該画像データが加工等されたものを呼ぶ。即ち、本実施形態では、当該画像データが処理単位として採用されている。
【0017】
記憶部18は、DRAM(Dynamic Random Access Memory)等で構成され、画像処理部17から出力された画像データや、後述するパノラマ途中画像の画像データ等を一時的に記憶する。また、記憶部18は、各種画像処理に必要な各種データ等も記憶する。
【0018】
表示部19は、例えばLCD(Liquid Crystal Device:液晶表示装置)やLCD駆動部からなるフラット・ディスプレイ・パネルとして構成されている。表示部19は、記憶部18等から供給される画像データにより表現される画像、例えば後述するライブビュー画像を画像データ単位で表示する。
【0019】
操作部20は、シャッタスイッチ41の他、図示はしないが、電源スイッチ、撮像モードスイッチ、再生スイッチ等の複数のスイッチを有している。操作部20は、これらの複数のスイッチのうち所定のスイッチが押下操作されると、当該所定のスイッチに割り当てられている指令をCPU11に供給する。
【0020】
通信部21は、インターネットを含むネットワークを介する、図示せぬ他の装置との間の通信を制御する。
【0021】
角速度センサ22は、ジャイロ等からなり、パノラマ撮像時のユーザの体を軸にした回転に伴う、デジタルカメラ1の水平方向の変位量を検出し、検出結果を示すデジタル信号(以下、単に「角度変位量」と呼ぶ)をCPU11に供給する。なお、角速度センサ22は、必要に応じて方位センサの機能も発揮するものとする。
【0022】
ドライブ23には、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等よりなるリムーバブルメディア31が適宜装着される。そして、リムーバブルメディア31から読み出されたプログラムが、必要に応じて記憶部18にインストールされる。また、リムーバブルメディア31は、記憶部18に記憶されている画像データ等の各種データも、記憶部18と同様に記憶することができる。
【0023】
図2は、図1のデジタルカメラ1が実行する処理のうち、被写体を撮像し、その結果得られる撮像画像の画像データをリムーバブルメディア31に記録するまでの一連の処理(以下、「撮像処理」と呼ぶ)を実行するための機能的構成を示す機能ブロック図である。
【0024】
図2に示すように、撮像処理が実行される場合には、CPU11においては画像制御部51が機能し、画像処理部17においては、画像取得部52と、顔検出部53と、顔領域抽出部54と、表情判定部55と、表情決定部56と、表情変更部57と、合成部58と、が機能する。なお、画像制御部51の機能は、本実施形態のようにCPU11に搭載されている必要は特になく、当該機能を、画像処理部17に移譲させることも可能である。逆に、画像取得部52乃至合成部58の各機能は、本実施形態のように画像処理部17に搭載されている必要は特になく、これらの機能のうち少なくとも一部を、CPU11に移譲させることも可能である。
【0025】
画像制御部51は、撮像処理の実行全体を制御する。例えば、画像制御部51は、デジタルカメラ1の動作モードとして、通常撮像モードと、パノラマ撮像モードとを選択的に切り替えて、切り替え後の動作モードに従った処理を実行する。パノラマ撮像モードになると、画像取得部52乃至合成部58が、画像制御部51の制御の下で動作する。
【0026】
ここで、画像制御部51乃至合成部58の理解を容易にすべく、それらの機能的構成の説明の前に、図3及び図4を適宜参照して、パノラマ撮像モードについて詳しく説明する。
【0027】
図3は、図1のデジタルカメラ1の動作モードとして、通常撮像モードとパノラマ撮像モードとが夫々選択された場合における撮像操作を説明する図である。詳細には、図3(A)は、通常撮像モードでの撮像操作を説明する図である。図3(B)は、パノラマ撮像モードでの撮像操作を説明する図である。
【0028】
図3(A)及び図3(B)の夫々において、デジタルカメラ1の奥にある絵は、デジタルカメラ1の被写体を含む実世界の様子を示している。また、図3(B)に示す縦の点線は、デジタルカメラ1の移動方向の各位置a、b、cを示している。デジタルカメラ1の移動方向とは、ユーザが、自身の体を軸にしてデジタルカメラ1の撮像方向(角度)を変化させた場合における、デジタルカメラ1の光軸が移動する方向をいう。デジタルカメラ1の移動方向の変位量は、角速度センサ22により角度変位量として検出される。
【0029】
通常撮像モードとは、デジタルカメラ1の画角に対応するサイズ(解像度)の画像を、撮像する場合の動作モードをいう。
通常撮像モードでは、図3(A)に示すように、ユーザは、デジタルカメラ1を固定させた状態で、操作部20のシャッタスイッチ41を下限まで押下する。なお、このように、シャッタスイッチ41を下限まで押下する操作を、以下、「全押し操作」又は単に「全押し」と呼ぶ。
画像制御部51は、全押し操作がなされた直後に画像処理部17から出力された画像データを、記録対象としてリムーバブルメディア31に記録させるまでの一連の処理の実行を制御する。
以下、このように、通常撮像モードにおいて画像制御部51の制御により実行される一連の処理を、「通常撮像処理」と呼ぶ。
【0030】
一方、パノラマ撮像モードとは、パノラマ画像を撮像する場合の動作モードをいう。
パノラマ撮像モードでは、図3(B)に示すように、ユーザは、シャッタスイッチ41の全押し操作を維持した状態で、デジタルカメラ1を同図中黒矢印の方向に移動させる。
画像制御部51は、全押し操作が維持されている間、画像取得部52乃至合成部58を制御して、角速度センサ22からの角度変位量が一定値に達する毎に、その直後に撮像部16から出力された画像データを取得するとともに記憶部18に一時的に記憶していくことを繰り返す。
その後、画像制御部51は、画像取得部52乃至合成部58を制御して、記憶部18に記憶された隣接する画像データ同士を、水平方向に順番に合成することによって、パノラマ画像の画像データを生成する。ここで、隣接する画像データとは、パノラマ撮像中に、K回目(Kは1以上の整数値)の撮像により得られた撮像画像の画像データと、同パノラマ撮像中に、K+1回目の撮像により得られた撮像画像の画像データとをいう。なお、画像データの合成については、隣接する2つの画像データの合成に限られず、合成対象となる2以上の任意の数の画像データを取得するたびに行うこととしてもよく、合成対象となる全ての画像データを取得した後に行うこととしてもよい。
その後、ユーザが全押し操作を解除する操作、即ちシャッタスイッチ41から指等を離す操作(以下、このような操作を「リリース操作」と呼ぶ)をすることで、パノラマ撮像の終了を指示すると、画像制御部51は、合成部58等を制御して、パノラマ画像の画像データを、記録対象としてリムーバブルメディア31に記録させる。
このように、画像制御部51は、パノラマ撮像モードにおいて、画像取得部52乃至合成部58を制御して、パノラマ画像の画像データを生成し、それを記録対象としてリムーバブルメディア31に記録させるまでの一連の処理を制御する。
以下、このように、パノラマ撮像モードにおいて画像制御部51の制御により実行される一連の処理を「パノラマ撮像処理」と呼ぶ。
【0031】
図4は、図3に示すパノラマ撮像モードにおいて、画像取得部52乃至合成部58により生成されたパノラマ画像の画像データを示している。
即ち、パノラマ撮像モードにおいて、図3(B)に示すような撮像操作が行われると、画像制御部51の制御の下、画像取得部52乃至合成部58により、図4に示すようなパノラマ画像P1の画像データが生成され、リムーバブルメディア31に記録される。
【0032】
ここで、パノラマ撮像モードにおいて人物等の被写体を含むパノラマ画像の画像データを生成する場合、合成元の複数の画像データの夫々において被写体が異なることがあり、このような場合には、最も栄える被写体を含むパノラマ画像の画像データを生成することが好ましい。具体的には、パノラマ画像の合成元の複数の画像データの夫々において、ある画像データでは人物が目をつむっていて、別の画像データでは人物が目を開けている場合があり、このような場合には、目を開けている人物を含むパノラマ画像の画像データを生成することが好ましい。
そのため、本実施形態に係るデジタルカメラ1では、画像取得部52乃至合成部58は、画像制御部51の制御の下、次のような処理を実行する。
【0033】
画像取得部52は、デジタルカメラ1が所定量だけ移動する毎に(角度変位量が一定値になる毎)に、画像制御部51から発行される取得指令を受けて、画像処理部17から画像データを順次取得する。
【0034】
顔検出部53は、画像取得部52が取得した画像データを解析し、当該画像データに含まれる人物の顔の情報(顔部分の位置及び大きさを少なくとも含む)を検出する。なお、顔検出部53による顔の検出は、既に公知な任意の方法により行うことができる。
顔領域抽出部54は、顔検出部53が顔を検出した画像データから、顔領域を抽出する。なお、抽出する顔領域としては、合成処理において好適な任意の領域を設定することができ、例えば、目・鼻・口を含む顔部分の領域としてもよく、顔部分と頭部分とを含む領域としてもよく、画像データに含まれる人物の全てを含む領域としてもよい。
【0035】
表情判定部55は、顔検出部53が検出した顔の表情判定を行う。表情判定は、撮像画像として好適な人物の表情(笑顔)を判定するためのものであり、例えば、目の大きさや口の形状等に対して予めスコアを定めておき、顔検出部53が検出した顔を当該スコアで評価し、判定対象の顔の評価値を算出することで実行する。
表情決定部56は、表情判定部55が算出した評価値が所定値以上の顔を、合成対象の顔として決定し、決定した顔を含む顔領域の画像データをメモリ(本実施形態では記憶部18)に格納する。なお、表情決定部56は、算出した評価値が最も高い顔を合成対象の顔として決定することとしてもよい。また、所定値以上の評価値については、任意に設定することができ、例えば、笑顔となる評価値を設定しておくことができる。
【0036】
表情変更部57は、表情判定部55が算出した評価値が所定値未満の顔を含む顔領域の画像データを、表情決定部56が合成対象として決定した顔を含む顔領域の画像データに変更する。
合成部58は、画像取得部52が取得した画像データのうち隣接する画像データ同士を合成し、パノラマ画像の画像データを生成する。具体的には、合成部58は、画像取得部52が取得した画像データであって、表情変更部57による顔領域の変更後の画像データのうち隣接する画像データ同士を合成し、パノラマ画像の画像データを生成する。換言すると、合成部58は、画像取得部52が取得した複数の画像データに含まれる人物の顔のうち、表情決定部56が決定した顔を用いてパノラマ画像の画像データを生成するのと等価な処理を実行する。
【0037】
以上のような、画像取得部52乃至合成部58により生成されるパノラマ画像の画像データについて、図5を参照して説明する。図5(1)は、パノラマ画像の合成に用いられる画像取得部52により取得された画像データを示し、図5(2)は、図5(1)の画像データから生成されるパノラマ画像の画像データを示す。
【0038】
図5(1)を参照して、画像取得部52により撮像画像Faの画像データが取得されると、顔検出部53は、撮像画像Faから被写体の顔100を検出する。続いて、顔領域抽出部54は、顔100を検出した撮像画像Faから顔領域100aを抽出する。なお、顔領域100aについては、任意の領域とすることができ、例えば、顔100のみの領域としてもよく、図5に示すように顔100と頭(髪)とを併せた領域としてもよく、撮像画像Faに含まれる人物の全ての領域としてもよい。
続いて、表情判定部55は、撮像画像Faの顔100について、目の大きさや口の形状等から評価値を算出する。図5(1)では、顔100は、笑顔であり目も大きく開いているため、表情判定部55は、所定値以上の評価値を算出する。そのため、表情決定部56は、顔100をパノラマ画像に用いる顔として決定し、顔100の顔領域100aの部分の画像データを記憶部18に格納する。
【0039】
同様に、撮像画像Faの画像データの後に連続して撮像画像Fbの画像データが画像取得部52により取得されると、顔検出部53は、撮像画像Fbから被写体の顔110を検出し、顔領域抽出部54は、顔110を検出した撮像画像Fbの画像データから顔領域110aを抽出する。
続いて、表情判定部55は、撮像画像Fbの顔110について、評価値を算出するが、図5(1)では、顔110は、目を閉じてしまっているため、表情判定部55は、所定値未満の評価値を算出する。そのため、表情変更部57は、顔110の顔領域11aの部分の画像データを、記憶部18に格納していた顔100の顔領域100aの部分の画像データに変更する。
【0040】
その後、合成部58は、撮像画像Fa及び撮像画像Fbを含む複数の撮像画像の夫々の画像データを順次合成することで、図5(2)に示すパノラマ画像P2の画像データを生成する。このとき、表情決定部56により決定された顔100の顔領域100aを用いてパノラマ画像P2を生成するため、図5(2)に示すように、より写真栄えする被写体を含むパノラマ画像P2を得ることができる。
【0041】
以上、図2乃至図5を参照して、本発明が適用されるデジタルカメラ1の機能的構成について説明した。次に、図6を参照して、このような機能的構成を有するデジタルカメラ1が実行する撮像処理について説明する。
【0042】
図6は、撮像処理の流れの一例を示すフローチャートである。本実施形態では、撮像処理は、デジタルカメラ1の図示せぬ電源がオン状態になって、所定の条件が満たされると開始する。
【0043】
ステップS1において、図2の画像制御部51は、操作検出処理及び初期設定処理を実行する。
操作検出処理とは、操作部20の各スイッチの状態を検出する処理をいう。画像制御部51は、操作検出処理を実行することにより、動作モードとして、通常撮像モードが設定されているのか、それともパノラマ撮像モードが設定されているのかを検出することができる。
また、本実施形態の初期設定処理の1つとして、角度変位量の一定値と、角度変位量の最大限界である角度変位閾値(例えば、360度)とを設定する処理が採用されている。具体的には、角度変位量の一定値と、角度変位量の最大限界である角度変位閾値(例えば、360度)とは、図1のROM12に予め記憶されており、ROM12から読み出されてRAM13に書き込まれることで設定される。なお、角度変位量の一定値は、後述する図7のステップS31の判定処理で用いられる。一方、角度変位量の最大限界である角度変位閾値(例えば、360度)は、同図のステップS37の判定処理で用いられる。
【0044】
ステップS2において、画像制御部51は、ライブビュー撮像処理及びライブビュー表示処理を開始する。
即ち、画像制御部51は、撮像部16等を制御して、撮像部16による撮像動作を継続させる。そして、画像制御部51は、撮像部16による撮像動作が継続されている間、当該撮像部16から順次出力される画像データを、メモリ(本実施形態では記憶部18)に一時的に記憶させる。このような画像制御部51による一連の制御処理が、ここでいう「ライブビュー撮像処理」である。
また、画像制御部51は、ライブビュー撮像時にメモリ(本実施形態では記憶部18)に一時的に記録された各画像データを順次読み出して、各々に対応する画像を表示部19に順次表示させる。このような画像制御部51による一連の制御処理が、ここでいう「ライブビュー表示処理」である。なお、ライブビュー表示処理により表示部19に表示されている画像を、以下、「ライブビュー画像」と呼ぶ。
【0045】
ステップS3において、画像制御部51は、シャッタスイッチ41が半押しされたか否かを判定する。ここで、半押しとは、操作部20のシャッタスイッチ41の途中(下限に至らない所定の位置)まで押下する操作をいい、以下、「半押し操作」とも適宜呼ぶ。
シャッタスイッチ41が半押しされていない場合、ステップS3においてNOであると判定されて、処理はステップS9に進む。
【0046】
ステップS9において、画像制御部51は、処理の終了指示がなされたか否かを判別する。処理の終了指示は、特に限定されないが、本実施形態では、デジタルカメラ1の図示せぬ電源がオフ状態になった旨の通知が採用されているものとする。
したがって、本実施形態では電源がオフ状態になりその旨が画像制御部51に通知されると、ステップS9においてYESであると判定されて、撮像処理全体が終了となる。
これに対して、電源がオン状態の場合には、電源がオフ状態になった旨の通知はなされないので、ステップS9においてNOであると判定され、処理はステップS2に戻され、それ以降の処理が繰り返される。即ち、本実施形態では電源がオン状態を維持している限り、シャッタスイッチ41が半押しされるまでの間、ステップS3:NO及びステップS9:NOのループ処理が繰り返し実行されて、撮像処理は待機状態となる。
【0047】
他方、ライブビュー表示処理中に、シャッタスイッチ41が半押しされると、ステップS3においてYESであると判定されて、処理はステップS4に進む。
ステップS4において、画像制御部51は、撮像部16を制御して、いわゆるAF(Auto Focus)処理を実行する。
【0048】
ステップS5において、画像制御部51は、シャッタスイッチ41が全押しされたか否かを判定する。
シャッタスイッチ41が全押しされない場合には、ステップS5においてNOであると判定される。この場合には、処理はステップS4に戻され、それ以降の処理が繰り返される。即ち、本実施形態では、シャッタスイッチ41が全押しされるまでの間、ステップS4、及びステップS5:NOのループ処理が繰り返し実行されて、AF処理がその都度実行される。
【0049】
その後、シャッタスイッチ41が全押しされると、ステップS5においてYESであると判定されて、処理はステップS6に進む。ステップS6において、画像制御部51は、現在設定されている撮像モードがパノラマ撮像モードであるか否かを判定する。
パノラマ撮像モードでない場合、即ち通常撮像モードが現在設定されている場合、ステップS6においてNOであると判定され、処理はステップS7に進む。ステップS7において、画像制御部51は、上述した通常撮像処理を実行する。即ち、全押し操作がなされた直後に画像処理部17から出力された1つの画像データが、記録対象としてリムーバブルメディア31に記録される。これにより、ステップS7の通常撮像処理が終了して、処理はステップS9に進む。なお、ステップS9以降の処理については上述したので、ここではその説明は省略する。
【0050】
これに対して、パノラマ撮像モードが現在設定されている場合、ステップS6においてYESであると判定されて、処理はステップS8に進む。
ステップS8において、画像制御部51は、上述したパノラマ撮像処理を実行する。パノラマ撮像処理の詳細については図7を参照して後述するが、画像制御部51は、パノラマ画像の画像データを生成し、記録対象としてリムーバブルメディア31に記録する。これにより、ステップS8のパノラマ撮像処理が終了し、処理はステップS9に進む。なお、ステップS9以降の処理については上述したので、ここではその説明は省略する。
【0051】
以上、図6を参照して、撮像処理の流れについて説明した。次に、図7を参照して、図6の撮像処理のうち、ステップS8のパノラマ撮像処理の詳細な流れについて説明する。
図7は、パノラマ撮像処理の詳細な流れを説明するフローチャートである。上述したように、パノラマ撮像モードの状態でシャッタスイッチ41が全押しされると、図6のステップS5及びS6においてYESと判定され、処理はステップS8に進み、パノラマ撮像処理として次のような処理が実行される。
【0052】
ステップS31において、画像制御部51は、デジタルカメラ1が一定距離動いたか否かを判定する。即ち、画像制御部51は、角速度センサ22から供給される角度変位量が一定値に達したか否かを判定する。
デジタルカメラ1が一定距離動いていない場合、ステップS31においてNOであると判定される。この場合には、処理はステップS31に戻される。即ち、デジタルカメラ1が一定距離動くまでパノラマ撮像処理が待機状態となる。
【0053】
これに対して、デジタルカメラ1が一定距離動いた場合、ステップS31において、YESであると判定されて、処理はステップS32に進む。
ステップS32において、画像取得部52は、画像制御部51の制御の下、撮像部16から出力される画像データ(合成対象)を取得する。即ち、画像取得部52は、角速度センサ22から供給される角度変位量が一定値に達する毎に、その直後に撮像部16から出力された画像データを取得する。
【0054】
ステップS33において、顔検出部53は、画像制御部51の制御の下、画像取得部52が取得した画像データを解析し、当該画像データに人物の顔(被写体像)が存在するか否かを判定する。
画像データに人物の顔が存在しない場合、ステップS33においてNOであると判定され、この場合には、処理はステップS35に進む。
【0055】
他方、画像データに人物の顔が存在する場合、ステップS33においてYESであると判定され、この場合には、処理はステップS34に進む。
ステップS34において、画像制御部51は、表情判定処理を行う。表情判定処理の詳細については図8を参照して後述するが、画像制御部51は、表情判定部55を制御し、画像データに含まれる顔の表情を判定する。これにより、ステップS34の表情判定処理が終了し、処理はステップS35に進む。
【0056】
ステップS35において、画像制御部51は、画像合成処理を行う。画像合成処理の詳細については図9を参照して後述するが、画像制御部51は、合成部58を制御し、隣接する画像データ同士を順次合成し、パノラマ画像の画像データを生成する。これにより、ステップS35の画像合成処理が終了し、処理はステップS36に移る。
【0057】
ステップS36において、画像制御部51は、ユーザによる終了指示があるか否かを判定する。ユーザによる終了指示については、任意に設定することができるが、例えば、ユーザによるシャッタスイッチ41の全押しの解除を、ユーザによる終了指示とすることができる。
ユーザによる終了指示があった場合、ステップS36においてYESであると判定され、パノラマ撮像処理が終了する。
【0058】
他方、ユーザによる終了指示がない場合、ステップS36においてNOであると判定され、この場合には、処理はステップS37に進む。
ステップS37において、画像制御部51は、画像取得方向の移動距離が閾値を超えたか否かを判定する。即ち、画像制御部51は、角速度センサ22から供給される角度変位量の累積値が、最大限界である角度変位閾値(例えば、360度)に達したか否かを判定する。
【0059】
画像取得方向の移動距離が閾値を超えた場合、ステップS37においてYESであると判定され、パノラマ撮像処理が終了する。
他方、画像取得方向の移動距離が閾値を超えていない場合、ステップS37においてNOであると判定され、この場合には、処理はステップS31に戻される。即ち、ユーザによる終了指示がなく、画像取得方向の移動距離が閾値を超えていない場合には、パノラマ撮像処理が継続し、新たな画像データの取得及び当該画像データの合成といった処理が繰り返される。
【0060】
以上、図7を参照して、パノラマ撮像処理の流れについて説明した。次に、図8を参照して、図7のパノラマ撮像処理のうち、ステップS34の表情判定処理の詳細な流れについて説明する。図8は、表情判定処理の詳細な流れを説明するフローチャートである。
【0061】
ステップS51において、顔領域抽出部54は、画像制御部51の制御の下、人物の顔を含む画像データから、顔領域を抽出する。なお、顔領域については、上述したように、目・鼻・口を含む顔部分のみの領域としてもよく、また、顔部分と頭部分とを含む領域としてもよく、また、人物全てを含む領域としてもよい。
【0062】
顔領域を抽出すると、ステップS52において、表情判定部55は、画像制御部51の制御の下、顔検出部53により検出された顔の評価値を算出する。即ち、表情判定部55は、画像データに含まれる顔の目の大きさや口の形状等に基づいて、判定対象の顔の評価値を算出する。
その後、ステップS53において、表情判定部55は、画像制御部51の制御の下、算出した評価値が所定値以上であるか否かを判定する。
算出した評価値が所定値以上でない場合、ステップS53においてNOとである判定され、表情判定処理が終了する。
【0063】
他方、算出した評価値が所定値以上である場合、ステップS53においてYESであると判定され、この場合には、処理はステップS54に進む。
ステップS54において、表情決定部56は、画像制御部51の制御の下、所定値以上の評価値と判定された顔の顔領域の部分の画像データを記憶部18に保存し、表情判定処理を終了する。
【0064】
以上、図8を参照して、表情判定処理の流れについて説明した。
次に、図9を参照して、図7のパノラマ撮像処理のうち、ステップS35の画像合成処理の詳細な流れについて説明する。図9は、画像合成処理の詳細な流れを説明するフローチャートである。
【0065】
ステップS71において、画像制御部51は、合成対象となる隣接する画像データにおいて、被写体に動きがあるか否かを判定する。ここで、本実施形態では、評価値が所定値未満である顔領域の部分の画像データを評価値が所定値以上である顔領域の部分の画像データに上書きすることとしている(後述のステップS75)。そのため、ステップS71における被写体の動きとは、顔領域の画像データの上書きに適さない動きをいい、例えば、顔領域の形状が変化するような動きや画角内における顔領域の位置(角度変位量を考慮した)が変化するような動き等をいう。他方、顔領域内における被写体の動き、例えば、目を閉じる等といった表情の変化は、ステップS71における被写体の動きに含まれない。
被写体に動きがある場合、ステップS71においてYESであると判定され、この場合には、処理はステップS76に進む。
【0066】
他方、被写体に動きがない場合、ステップS72においてNOであると判定され、この場合には、処理はステップS72に進む。
ステップS72において、画像制御部51は、合成する画像データに顔領域が存在するか否かを判定する。なお、本実施形態において、合成する画像データとは、隣接する画像データのうちの後に取得された画像データとしてもよく、また、隣接する画像データの双方としてもよい。
合成する画像データに顔領域が存在しない場合、ステップS72においてNOであると判定され、この場合には、処理はステップS76に進む。
【0067】
合成する画像データに顔領域が存在する場合、ステップS72においてYESであると判定され、この場合には、処理はステップS73に進む。
ステップS73において、表情判定部55は、画像制御部51の制御の下、合成する画像データの顔領域の評価値が所定値以上であるか否かを判定する。
合成する画像データの顔領域の評価値が所定値以上である場合、ステップS73においてYESであると判定され、この場合には、処理はステップS76に進む。
【0068】
他方、合成する画像データの顔領域の評価値が所定値以上でない場合、ステップS73においてNOであると判定され、この場合には、処理はステップS74に進む。
ステップS74において、表情変更部57は、画像制御部51の制御の下、所定値以上の評価値の顔領域の部分の画像データが記憶部18に保存されているか否かを判定する。
所定値以上の評価値の顔領域の部分の画像データが記憶部18に保存されていない場合、ステップS74においてNOであると判定され、この場合には、処理はステップS76に進む。
【0069】
他方、所定値以上の評価値の顔領域の部分の画像データが記憶部18に保存されている場合、ステップS74においてYESであると判定され、この場合には、処理はステップS75に進む。
ステップS75において、表情変更部57は、画像制御部51の制御の下、ステップS73において所定値未満の評価値と判定された顔領域の部分の画像データを、記憶部18に保存されている所定値以上の評価値の顔領域の部分の画像データに上書きする。
【0070】
その後、ステップS76において、合成部58は、画像制御部51の制御の下、隣接する画像データ同士を合成し、パノラマ画像の画像データを生成し、画像合成処理を終了する。
【0071】
以上のような本実施形態のデジタルカメラ1によれば、顔検出部53が画像データに含まれる人物の顔を検出すると、表情判定部55は、当該顔の表情判定を行う。そして、表情決定部56は、表情判定部55による表情判定の結果、撮像画像として好適な顔を合成対象の人物の顔として決定し、合成部58は、決定された人物の顔を含むようにパノラマ合成を行う。
これにより、パノラマ画像の撮像中に被写体である人物の表情が変わってしまった場合、例えば、パノラマ画像の撮像中に目を閉じてしまった場合であっても、目を閉じてしまったタイミングではなく、目を開けているタイミングで撮像された画像データを用いてパノラマ画像の画像データを生成することができ、好適な表情の人物を含むパノラマ画像を得ることができる。
【0072】
また、デジタルカメラ1では、顔領域抽出部54は、合成対象の画像データから人物の顔を含む顔領域を抽出し、表情決定部56は、撮像画像として好適な顔を含む顔領域の部分の画像データを記憶部18に保存しておく。そして、表情変更部57は、合成する画像データに含まれる顔が撮像画像として好ましくない場合には、当該顔領域を記憶部18に保存していた顔領域の部分の画像データに上書きした上で、パノラマ合成を行う。
これにより、撮像画像として好ましくない顔と好適な顔とを合成してしまうことを防止でき、自然なパノラマ合成を行うことができる。
【0073】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【0074】
例えば、上述の実施形態では、1つの画像データを取得するたびに画像合成処理を行うこととしているが(図7のステップS31でYESと判定されるとステップS35が行われる)、これに限られるものではなく、パノラマ合成用の全ての画像データを取得した後に画像合成処理を行うこととしてもよく、2以上の任意の数の画像データを取得するたびに画像合成処理を行うこととしてもよい。
また、上述の実施形態では、顔領域の上書き後にパノラマ合成をしたが、画像合成処理の順はこれに限られない。つまり、パノラマ合成をした後に該当する顔領域の上書きを行っても良い。
【0075】
また、上述の実施形態では、評価値を用いて人物の顔の表情を判定し、撮像画像として好適な顔でパノラマ合成を行うこととしているが、評価値を用いて判定する対象は、表情に限られない。例えば、パノラマ画像の撮像中に人物に陰がかかってしまう場合等も想定され、評価値を用いて人物の明るさ等を判定することとしてもよい。
また、上述の実施形態では、合成対象の画像データに含まれる被写体像の一例として人物の顔を用いているが、これに限られるものではない。例えば、動物の顔を合成対象の画像データに含まれる被写体像としても良い。この場合、評価値を用いて判定する対象としては、動物が目をつぶっているか否か等を適用しても良い。
【0076】
また、上述の実施形態では、本発明が適用される画像処理装置は、デジタルカメラ1を例として説明したが、特にこれに限定されない。本発明は、パノラマ画像の生成が可能になる機能を有する電子機器一般に適用することができ、例えば、携帯型パーソナルコンピュータ、携帯型ナビゲーション装置、ポータブルゲーム機等に幅広く適用可能である。
【0077】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
【0078】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、画像処理装置又は当該画像処理装置を制御するコンピュータ等にネットワークや記録媒体からインストールされる。ここで、コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。或いはまた、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【0079】
このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布されるリムーバブルメディア31により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。リムーバブルメディア31は、例えば、磁気ディスク(フロッピディスクを含む)、光ディスク、光磁気ディスク等により構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されているROM12や記憶部18に含まれるハードディスク等で構成される。
【0080】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
【0081】
以上、本発明のいくつかの実施形態について説明したが、これらの実施形態は、例示に過ぎず、本発明の技術的範囲を限定するものではない。本発明はその他の様々な実施形態を取ることが可能であり、更に、本発明の要旨を逸脱しない範囲で、省略や置換等種々の変更を行うことができる。これら実施形態やその変形は、本明細書等に記載された発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0082】
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
画像を順次取得する画像取得手段と、
前記画像取得手段により取得された複数の画像から被写体像を検出する検出手段と、
前記検出手段により検出された各被写体像の評価値を算出する算出手段と、
前記算出手段により算出された評価値が所定値以上の被写体像を合成対象として決定する決定手段と、
前記決定手段により合成対象として決定された被写体像と前記取得手段により順次取得された画像とを合成し、パノラマ画像を生成する生成手段と
を備えたことを特徴とする画像処理装置。
[付記2]
前記複数の画像のうち前記被写体像を含む画像から被写体領域を抽出する被写体抽出手段と、
前記被写体抽出手段により抽出された被写体領域を構成する画像を、前記評価値が所定値以上の被写体像に変更する被写体変更手段とを更に備え、
前記生成手段は、前記被写体変更手段により変更された被写体像と前記順次取得される画像とを合成し、前記パノラマ画像を生成することを特徴とする付記1記載の画像処理装置。
[付記3]
前記被写体像は、顔領域を中心とした画像であることを特徴とする付記1又は2記載の画像処理装置。
[付記4]
撮像手段を更に備え、
前記画像取得手段は、前記撮像手段により撮像された画像を順次取得することを特徴とする付記1乃至3の何れか記載の画像処理装置。
[付記5]
画像を順次取得する画像取得手段を備えた画像処理装置の画像処理方法であって、
前記画像取得手段により取得された複数の画像から被写体像を検出する検出ステップと、
前記検出ステップにより検出した各被写体像の評価値を算出する算出ステップと、
前記算出ステップにより算出した評価値が所定値以上の被写体像合成すべき被写体像として決定する決定ステップと、
前記決定ステップにより決定された被写体像と前記取得手段により順次取得された画像とを合成し、パノラマ画像を生成する生成ステップと
を含むことを特徴とする画像処理方法。
[付記6]
画像を順次取得する画像取得手段を備えた画像処理装置を制御するコンピュータを、
前記画像取得手段により取得された複数の画像から被写体像を検出する検出手段、
前記検出機能により検出された各被写体像の評価値を算出する算出手段、
前記算出機能により算出された評価値が所定値以上の被写体像を合成対象の被写体像として決定する決定手段、
前記決定手段により決定された被写体像と前記取得手段により順次取得された画像とを合成し、パノラマ画像を生成する生成手段
として機能させることを特徴とするプログラム。
【符号の説明】
【0083】
1・・・デジタルカメラ(画像処理装置)、11・・・CPU(制御手段)、12・・・ROM、13・・・RAM、15・・・光学系、16・・・撮像部、17・・・画像処理部(画像取得手段、生成手段、検出手段、算出手段、決定手段、被写体抽出手段、被写体変更手段)、18・・・記憶部、19・・・表示部、20・・・操作部、21・・通信部、22・・・角速度センサ、23・・・ドライブ、31・・・リムーバブルメディア、41・・・シャッタスイッチ、51・・・撮像制御部(制御手段)、52・・・画像取得部(画像取得手段)、53・・・顔検出部(検出手段)、54・・・顔領域抽出部(被写体抽出手段)、55・・・表情判定部(算出手段)、56・・・表情決定部(決定手段)、57・・・表情変更手段(被写体変更手段)、58・・・合成部(生成手段)

【特許請求の範囲】
【請求項1】
画像を順次取得する画像取得手段と、
前記画像取得手段により取得された複数の画像から被写体像を検出する検出手段と、
前記検出手段により検出された各被写体像の評価値を算出する算出手段と、
前記算出手段により算出された評価値が所定値以上の被写体像を合成対象として決定する決定手段と、
前記決定手段により合成対象として決定された被写体像と前記取得手段により順次取得された画像とを合成し、パノラマ画像を生成する生成手段と
を備えたことを特徴とする画像処理装置。
【請求項2】
前記複数の画像のうち前記被写体像を含む画像から被写体領域を抽出する被写体抽出手段と、
前記被写体抽出手段により抽出された被写体領域を構成する画像を、前記評価値が所定値以上の被写体像に変更する被写体変更手段とを更に備え、
前記生成手段は、前記被写体変更手段により変更された被写体像と前記順次取得される画像とを合成し、前記パノラマ画像を生成することを特徴とする請求項1記載の画像処理装置。
【請求項3】
前記被写体像は、顔領域を中心とした画像であることを特徴とする請求項1又は2記載の画像処理装置。
【請求項4】
撮像手段を更に備え、
前記画像取得手段は、前記撮像手段により撮像された画像を順次取得することを特徴とする請求項1乃至3の何れか記載の画像処理装置。
【請求項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


【公開番号】特開2013−74572(P2013−74572A)
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願番号】特願2011−213890(P2011−213890)
【出願日】平成23年9月29日(2011.9.29)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】