[第1実施形態]
以下、本発明の第1実施形態を図面に基づいて説明する。
図1は、本発明の画像処理装置としての第1実施形態に係るデジタルカメラ1のハードウェアの構成を示す図である。
デジタルカメラ1は、撮像部11と、データ処理部12と、ユーザインタフェース部13と、を備える。
撮像部11は、光学レンズ部21と、イメージセンサ22と、を備える。
光学レンズ部21は、被写体を撮影するために、光を集光するレンズ、例えばフォーカスレンズやズームレンズなどで構成される。フォーカスレンズは、イメージセンサ22の受光面に被写体像を結像させるレンズである。ズームレンズは、焦点距離を一定の範囲で自在に変化させるレンズである。光学レンズ部21にはまた、必要に応じて、焦点、露出、ホワイトバランスなどの設定パラメータを調整する周辺回路が設けられる。
イメージセンサ22は、光電変換素子や、AFE(Analog Front End)などから構成される。光電変換素子は、例えばCMOS(Complementary Metal Oxide Semiconductor)型の光電変換素子などから構成される。光電変換素子には、光学レンズ部21からシャッタ部(図示せず)を介して被写体像が入射される。そこで、光電変換素子は、一定時間毎に被写体像を光電変換(撮影)して画像信号を蓄積し、蓄積した画像信号をアナログ信号としてAFEに順次供給する。AFEは、このアナログの画像信号に対して、A/D(Analog/Digital)変換処理などの各種信号処理を実行する。各種信号処理によって、ディジタル信号が生成され、イメージセンサ22の出力信号として出力される。なお、以下、イメージセンサ22の出力信号を、「画像データ」と呼ぶ。イメージセンサ22から出力された画像データは、データ処理部12に供給される。
データ処理部12は、CPU(Central Processing Unit)31と、ROM(Read Only Memory)32と、RAM(Random Access Memory)33と、メモリ34と、表示制御部35と、画像処理部36と、を備えている。
CPU31は、ROM32に記録されているプログラムに従って各種の処理を実行する。RAM33には、CPU31が各種の処理を実行する上において必要なデータなどが適宜記憶される。
本実施の形態では、後述する図2の位置合せ変換部61乃至切取合成部66の各機能を実行するプログラムが、ROM32に記憶されている。従って、CPU31が、このプログラムに従った処理を実行することで、位置合せ変換部61乃至切取合成部66の各機能を実現することができる。
メモリ34は、DRAM(Dynamic Random Access Memory)などで構成され、イメージセンサ22から出力された画像データを一時記憶する。また、メモリ34は、各種画像処理に必要な画像データ、各種フラグの値、閾値なども記憶する。また、メモリ34には、画像表示用の画像データ(以下、「表示画像データ」と呼ぶ)の保存と読み出しをおこなうための表示メモリ領域も含まれている。
表示制御部35は、メモリ34の表示メモリ領域に格納された表示画像データを読み出し、その表示画像データにより表現される画像(以下、「表示画像」と呼ぶ)を、表示部41に表示させる制御を実行する。例えば、表示制御部35は、当該表示画像データに基づいてRGB信号を生成し、当該RGB信号をユーザインタフェース部13の表示部41に供給することにより、表示画像を表示部41に表示させる。なお、表示制御部35により生成されたRGB信号は、ユーザインタフェース部13の通信部43によって、図示せぬ外部機器に出力させることもできる。これにより、外部機器、例えば、テレビジョン受像機、パーソナルコンピュータ、プロジェクタなどでも、表示画像の表示が可能になる。
画像処理部36は、DSP(Digital Signal Processor)などで構成され、メモリ34に記憶された画像データに対して、ホワイトバランス補正処理やγ補正処理などの各種画像処理を実行する。本実施形態では、後述する図2の位置合せ変換部61乃至切取合成部66が実行する各種画像処理のうち少なくとも一部が、画像処理部36において実行され、残りの一部がCPU31において実行される。即ち、本実施形態では、後述する図2の位置合せ変換部61乃至切取合成部66は、CPU31及び画像処理部36というハードウェアと、ROM32に記憶されたプログラム(ソフトウェア)との組み合わせとして構成されている。
ユーザインタフェース部13は、液晶ディスプレイなどで構成される表示部41と、ユーザの指示操作を受け付ける操作部42と、外部機器との間での通信を制御する通信部43と、リムーバブル記録媒体51に対するデータの読み書きを行うドライブ44と、を備えている。
このような構成を有するデジタルカメラ1には、上述したカップリングショット手法が適用されている。
ここで、カップリングショット手法において、1回目の撮影により得られる、カメラの画角の範囲内の画像、通常、2人以上の人物のうち撮影者を除く人物を含む1枚目画像を、以下、「第1原フレーム画像」と呼ぶ。また、2回目の撮影により得られる、カメラの画角の範囲内の画像、通常、1回目に撮影者であった人物のみを含む2枚目画像を、以下、「第2原フレーム画像」と呼ぶ。なお、「通常」と記載した理由は、第1原フレーム画像と第2原フレーム画像との差異は、相異なる位置(排他的な位置)にそれぞれ、被写体となる前景物体が含まれていれば足りるからである。即ち、前景物体は必ずしも連結である必要は無く、1人の人物のみならず、複数の人物や物体が入っていても構わないからである。
カップリングショット手法が適用されると、第1原フレーム画像と第2原フレーム画像とが合成されて、第1原フレーム画像の前景物体及び第2原フレーム画像の前景物体の各々を含む画像、通常、2人以上の人物全員を含む画像が生成される。以下、このような画像を、「カップリング画像」と呼ぶ。
カップリングショット手法としては、特許文献1に記載の手法の他、例えば次のような手法が考えられる。即ち、第1原フレーム画像と第2原フレーム画像とのフレーム差分を取ることによって得られる画像(以下、「フレーム差分画像」と呼ぶ)を用いて、前景物体を認識する手法が考えられる。しかしながら、当該手法では、前景物体の位置の認識は可能になるが、認識された位置の前景物体が、第1原フレーム画像に含まれていたのか、それとも第2原フレーム画像に含まれていたのかを判断することができない。
このような場合には、従来の任意の顔検出手法をさらに適用することで、認識された位置の前景物体が、第1原フレーム画像に含まれていたのか、それとも第2原フレーム画像に含まれていたのかをある程度予測することが可能になる。しかしながら、顔検出手法を単に適用しただけでは、横向きや後ろ向きの人物の顔や、画角に対して小さすぎる人物の顔は検出できないため、当該顔検出手法で検出可能な範囲内の構図で撮影することが求められる。このようなことは、構図の自由度を高めることとは反することである。また、人物の顔だけではなく、胴体などを含めた人物の部分の領域が前景物体となる場合があり、このような場合には、顔検出手法だけでは、どこまでが人物の部分の領域であるのかを認識することは困難である。さらに、前景物体が後ろ向きの人物であったり、動物などの人物以外の物体である場合には、顔検出手法を適用することはできない。
そこで、本実施形態のデジタルカメラ1に適用されたカップリング手法では、前景物体が、第1原フレーム画像に含まれていたのか、それとも第2原フレーム画像に含まれていたのかを適切に判断すべく、コスト関数の最小化に基づく2値ラベリング処理の原理が利用されている。以下、当該原理の概略について説明する。
コスト関数は、式(1)により表わされる。
式(1)において、fpは、画像における画素位置p(以下、適宜「画素p」と略呼ぶ)における2値ラベル{0,1}の値を表し、fqは、当該画像における画素pに隣接する画素位置q(以下、適宜「画素q」と略呼ぶ)における2値ラベル{0,1}の値を表す。また、fは、当該画像を構成する全画素の各々に与えられた2値ラベルの組み合わせ(以下、「ラベル組み合わせ」と呼ぶ)を表わす。
式(1)に示すように、コスト関数は、Esmooth(f)の項と、Edata(f)の項との和を出力する関数である。なお、以下、Esmooth(f)の項を、「平滑化項」又は「隣接項」と呼び、Edata(f)の項を、「データ項」と呼ぶ。
平滑化項は、式(1)の2行目に示すように、画像内の隣接画素位置p,qの対{p,q}の集合Nの各要素に設定された、ラベル組み合わせfに対するペナルティを表す重みVp,q(fp,fq)(以下、「重みVpq」と略記する)の当該画像全体の総和を取る項である。平滑化項は、隣接画素位置間のラベルの非連続性のペナルティに基づいて設定される項である。
一方、データ項は、画像を構成する全画素位置pの集合Pの各要素に設定された、ラベル組み合わせfに対するペナルティを表す重みDp(fp)(以下、「重みDp」と略記する)の当該画像全体の総和を取る項である。データ項は、画素位置に対して与えるラベルの局所的な非適合性のペナルティに基づいて設定される項である。
詳細については後述するが、重みVpq及び重みDpを予め定義した上で、デジタルカメラ1が、第1原フレーム画像及び第2原フレーム画像を処理対象として、式(1)のコスト関数E(f)を最小化するようなラベル組み合わせfを求め、当該ラベル組み合わせfを用いることによって、適切なカップリング画像を生成することが可能となる。
なお、このような「コスト関数E(f)の最小化に基づく2値ラベリング処理の原理」の詳細については、「“Fast Approximate Energy Minimization via Graph Cuts”,Boykov他,IEEE Transactions on PAMI,vol.23,no.11」や、「グラフカット、石川博、情報処理学会研究報告2007−CVIM−158」を参照するとよい。
ここで、このような「コスト関数E(f)の最小化に基づく2値ラベリング処理の原理」を用いたカップリング手法に従った処理を、以下、「カップリング画像生成処理」と呼ぶ。
図2は、データ処理部12がカップリング画像生成処理を実行するための機能的構成を示す機能ブロック図である。
データ処理部12は、位置合せ変換部61と、フレーム差分算出部62と、前景らしさ評価部63と、切取易さ評価部64と、切取線決定部65と、切取合成部66と、を備えている。また、データ処理部12のメモリ34内には、第1原画像記憶部71と、第2原画像記憶部72と、カップリング画像記憶部73と、が設けられている。
第1原画像記憶部71には、撮像部11の1回目の撮像により得られた第1原フレーム画像の画像データが記憶される。一方、第2原画像記憶部72には、撮像部11の2回目の撮像により得られた第2フレーム画像の画像データが記憶される。
位置合せ変換部61は、第1原フレーム画像と第2原フレーム画像との対応する画素が合致するように、第1原フレーム画像と第2原フレーム画像とのうち少なくとも一方の画素の座標変換を行う処理を、各画像データに対して実行する。なお、以下、かかる処理を「位置合せ変換処理」と呼ぶ。位置合せ変換部61により位置合せ変換処理が実行された第1原フレーム画像及び第2原フレーム画像の各画像データが、後段の処理対象となるため、フレーム差分算出部62、前景らしさ評価部63、切取易さ評価部64、及び切取合成部66の各々に適宜供給される。
フレーム差分算出部62は、第1原フレーム画像及び第2原フレーム画像の画像データを用いて、第1原フレーム画像及び第2原フレーム画像の間の差分強度を画素毎に算出する。この差分強度としては、第1原フレーム画像と第2原フレーム画像との差分信号の絶対値や二乗値など、正負によらずに強さを評価できる任意の関数の値を採用することができる。例えば、第1原フレーム画像及び第2原フレーム画像がカラー画像の場合には、色成分毎の重み付き絶対値和や二乗和などを、差分強度として採用すると好適である。
ここで、フレーム差分算出部62は、画素毎の差分強度の各々に対して、さらに、平滑化フィルタやモルフォロジーのopening、closingフィルタなどを用いたフィルタ処理を実行してもよい。なお、これらのフィルタ処理の詳細については、特開2009−59060号公報を参照するとよい。
フレーム差分算出部62は、さらに、画素毎の差分強度の各々を2値化する。2値化の手法は、特に限定されず、固定的な閾値又は適応的に決まる閾値を用いた判定手法を採用してもよいし、グラフカット法やアニーリング法に基づく手法を採用してもよい。なお、以下、このようにして画素毎に差分強度が2値化された値を、「2値化差分」と呼ぶ。本実施形態では、2値化差分が0となっている画素は、差分強度が小さい画素であることを示し、2値化差分が1となっている画素は、差分強度が大きい画素であることを示す。なお、ここでいう2値化差分は、後述するコスト関数最小化による2値で示されるラベリング結果とは独立した値である点に注意する必要がある。
本実施形態では、各画素の画素値が2値化差分となっている画像が、フレーム差分画像として採用されており、当該フレーム差分画像の画像データ(画素毎の2値化差分の集合体)が、フレーム差分算出部62により生成されて、前景らしさ評価部63に供給される。
ここで、フレーム差分画像のうち、画素値(2値化差分)が「0」となっている1以上の画素の集合体を、「無差分領域」と呼び、画素値(2値化差分)が1となっている1以上の画素の集合体を、「有差分領域」と呼ぶ。この場合、第1原フレーム画像及び第2原フレーム画像に含まれる背景が完全に同一(背景物体やその存在位置などが全て同一)であるならば、第1原フレーム画像内の前景物体に対応する領域、又は、第2原フレーム画像内の前景物体に対応する領域が、有差分領域となる。しかしながら、フレーム差分画像を用いただけでは、有差分領域のうち、どこまでが第1原フレーム画像内の前景物体に対応する領域であり、どこからが第2原フレーム画像内の前景物体に対応する領域であるのかを切り分けることは非常に困難である。
そこで、前景らしさ評価部63は、第1原フレーム画像及びフレーム差分画像の各画像データを比較することによって、フレーム差分画像の有差分領域の各部分が、第1原フレーム画像の前景物体に対応する部分である可能性が高いのかそれとも低いのかを評価する。同様に、前景らしさ評価部63は、第2原フレーム画像及びフレーム差分画像の各画像データを比較することによって、フレーム差分画像の有差分領域の各部分が、第2原フレーム画像の前景物体に対応する部分である可能性が高いのかそれとも低いのかを評価する。
なお、ここでいう有差分領域の部分とは、1以上の画素からなる所定の処理単位をいい、例えば後述する差分エッジブロック内の有差分領域の部分や、差分エッジ点(1画素)を指す。
ここで、フレーム差分画像の有差分領域の各部分が、前景物体に対応する部分である可能性の高さを示す指標を、「前景らしさ」と呼ぶ。即ち、前景らしさ評価部63は、フレーム差分画像の有差分領域の各部分について、第1原フレーム画像についての前景らしさと、第2原フレーム画像についての前景らしさとのそれぞれを求める。この場合、前景らしさの求め方の手法は、特に限定されず、様々な手法を採用し得る。本明細書では、3つの手法の具体例について、図4以降の図面を参照して後述する。
詳細については後述するが、前景らしさ評価部63により求められた前景らしさに基づいて、式(1)のデータ項を算出するための重みDpを定義することが可能である。従って、前景らしさ評価部63は、第1原フレーム画像及び第2原フレーム画像を対象として、それぞれ求めた前景らしさを用いて、式(1)のデータ項を設定することができる。従って、前景らしさ評価部63は、データ項設定部であると把握することもできる。即ち、前景らしさ評価部63によって、第1原フレーム画像及び第2原フレーム画像の各々から重みDpが求められ、これらの重みDpに基づいてデータ項が設定され、その設定結果が切取線決定部65に供給される。
なお、本実施形態では、この重みDpはペナルティ値として設定される。即ち、前景らしさが小さいほど前景らしい値であると定義される場合には、注目フレーム側にその前景らしさの値を重みDpとして与えることができる。これに対して、前景らしさが大きいほど前景らしい値であると定義される場合には、注目フレーム側にその前傾らしさ値の符号反転値または逆数を重みとして与えることができる。或いはまた、符号反転値を与える代わりに元の前景らしさ値を注目フレームでない逆側のフレームに対する重みDpとして与えても等価である。
このようにして、前景らしさ評価部63は、フレーム差分画像の有差分領域の各部分が、第1原フレーム画像の前景物体に対応する可能性が高いのか、それとも、第2原フレーム画像の前景物体に対応する可能性が高いのかについて評価することが可能になる。従って、前景らしさ評価部63の評価結果が正(誤りが無い)とするならば、第1原フレーム画像の前景物体に対応する可能性が高い有差分領域と、第2原フレーム画像の前景物体に対応する可能性が高い有差分領域との間で、カップリング画像を生成するための切取線を設定することが可能になる。これにより、第1原フレーム画像から当該切取線に沿って切り取られた(分割された)前景物体を含む領域と、第2原フレーム画像から当該切取線に沿って切り取られた(分割された)前景物体を含む領域とを合成することによって、適切なカップリング画像の生成が可能になる。
ただし、第1原フレーム画像の前景物体に対応する可能性が高い有差分領域と、第2原フレーム画像の前景物体に対応する可能性が高い有差分領域との間で設定し得る切取線は、複数種類存在する。これらの複数種類の切取線のうち何れが好適であるのかについては、前景らしさ評価部63の評価結果だけでは十分な判断をすることができない場合がある。また、前段落において「前景らしさ評価部63の評価結果が正(誤りが無い)とするならば」と断り書きを挿入したように、フレーム差分画像の有差分領域の各部分の単位の視点からすると、第1原フレーム画像と第2原フレーム画像との各々の前景らしさに差が生じない場合、即ち、何れの前景物体に対応するのか判断しにくい場合がある。さらには、実際には、誤った前景らしさが求まる場合もあり得る。そこで、第1原フレーム画像及び第2原フレーム画像の画像データを用いて、隣接画素間で切り取ることが容易か否かの指標(以下、「切取易さ」と呼ぶ)を、隣接画素間との結びつきに基づいて評価し、この切取易さを切取線の設定時の判断要素に加えると好適である。
そこで、切取易さ評価部63は、第1原フレーム画像及び第2原フレーム画像の各々の画像データを用いて、各部分の切取易さを評価する。
ここで、切取線とはラベルの境界位置のことであり、切取易さとは隣接画素間のラベルの結びつきの弱さと解釈できる。本実施形態では前景物体の存在する各画素位置間のラベルの結びつきが強く(同じラベルになる必要性が高く)、背景を構成する各画素位置間のラベルの結びつきは弱い(同じラベルになる必要性が低い)と把握することができるからである。従って、切取易さ評価部63は、第1原フレーム画像及び第2原フレーム画像の両者とも背景である部分を、切取易さが大きい部分と判断し、第1原フレーム画像及び第2原フレーム画像の何れか一方が前景物体である部分を、切取易さが小さい部分、即ち切取りにくい部分と判断する。
具体的には、第1原フレーム画像及び第2原フレーム画像の対応する画素間の差分強度が小さい部分ほど、第1原フレーム画像及び第2原フレーム画像の両者とも背景である部分の可能性が高い。一方、第1原フレーム画像及び第2原フレーム画像の対応する画素間の差分強度が大きい部分ほど、第1原フレーム画像及び第2原フレーム画像の何れか一方が前景物体である部分の可能性が高い。従って、切取易さ評価部63は、第1原フレーム画像及び第2原フレーム画像の対応する画素間の差分強度に基づいて、切取易さを評価することができる。
ここで、式(1)から明らかなように、平滑化項を算出するための重みVpqもまた、隣接画素位置間の結びつきが考慮されて設定される項である。従って、切取易さに基づいて、式(1)の平滑化項を算出するための重みVpqを定義することが可能である。例えば上述の例でいえば、画素位置pおよびqにおける、第1原フレーム画像及び第2原フレーム画像の対応する画素間の差分強度の和が小さい部分ほど小さくなり、差分強度の和が大きい部分ほど大きくなるように、重みVpqを定義することができる。かかる定義を用いることによって、第1原フレーム画像及び第2原フレーム画像の両者とも背景である部分において、切取線が設定される可能性が高くなる。
即ち、上述したように、前景らしさ評価部63の評価結果に基づくデータ項だけを用いる場合、所定の一部分(1以上の画素、例えば1つの画素又はブロック)といった局所的な視点からすると、第1原フレーム画像の前景物体に対応するのか、それとも第2原フレーム画像の前景物体に対応するのかを評価できない、といった局所的なエラーが発生する場合がある。そこで、このような場合には、上述の如く定義された重みVpqにより設定された平滑化項を併せて用いることで、即ち式(1)のコスト関数E(f)という単位で処理することで、画像全体として最適化されて、上述の局所的なエラーの影響が軽減される。その結果、第1原フレーム画像及び第2原フレーム画像の各々の前景物体の配置場所の推定確率はより一段と高いものになり、その分だけ適切な切取線が設定されて、適切なカップリング画像が生成されるようになる。
このように、切取易さ評価部64は、第1原フレーム画像及び第2原フレーム画像を対象として求めた切取易さを用いて、重みVpqを演算することによって、式(1)の平滑化項を設定することができる。このように、切取易さ評価部64は、平滑化項設定部であると把握することもできる。切取易さ評価部64により設定された平滑化項は、切取線決定部65に供給される。
なお、平滑化項を設定するための重みVpqの算出手法は、上述した例に特に限定されず、その他例えば、全てを均一の重みVpqにする手法などを採用することもできる。また、式(1)のコスト関数E(f)を演算する処理の段階で、データ項と平滑化項との各々に対して適当な調整定数を乗算することが可能である。この場合には、前景物体が切れないように、十分に平滑化項を強くするような調整定数を乗算するとよい。これにより、画像全体として最適化され、適切な切取線が設定されて、適切なカップリング画像が生成される。
切取線決定部65は、前景らしさ評価部63により設定されたデータ項と、切取易さ評価部64により設定された平滑化項とを用いて、式(1)のコスト関数E(f)を最小にするような切取線を決定する。なお、コスト関数E(f)の最小化の手法は、数学的な解法の問題であるため、任意の手法を採用することができるが、例えばグラフカット法を採用することで最適解を十分な処理速度で得ることが可能になる。このように、コスト関数E(f)の最小化の処理を実行する切取線決定部65は、コスト関数最小化部であると把握することもできる。
切取合成部66は、切取線決定部65により決定された切取線(ラベル境界)に沿って第1の原フレーム画像を切取る(分割する)ことによって得られた2つの領域のうち、前景物体を含む領域(以下、「第1前景物体領域」と呼ぶ)の画像データを抽出する。同様に、切取合成部66は、当該切取線に沿って第2の原フレーム画像を切取る(分割する)ことによって得られた2つの領域のうち、前景物体を含む領域(以下、「第2前景物体領域」と呼ぶ)の画像データを抽出する。そして、切取合成部66は、抽出した第1前景物体領域及び第2前景物体領域の各画像データを合成することで、カップリング画像の画像データを生成する。このようにして生成されたカップリング画像の画像データは、カップリング画像記憶部73に記憶される。
カップリング画像記憶部73に記憶されたカップリング画像の画像データが、メモリ34の表示メモリ領域に表示画像データとして格納されると、表示制御部35は、当該表示画像データを読み出し、その表示画像データにより表現される画像、即ち、カップリング画像を表示部41に表示させる。
次に、図3乃至図5を参照して、このような機能的構成を有するデータ処理部12が実行するカップリング画像生成処理について説明する。
図3は、カップリング画像生成処理の流れの一例を示すフローチャートである。
図4は、図3のカップリング画像生成処理のうち、後述するステップS4の前景らしさ評価処理の詳細な流れの一例を示すフローチャートである。
図5は、図3及び図4のカップリング画像生成処理の具体的な処理結果を示す図である。
図3のステップS1において、位置合せ変換部61は、i=0,1番の原フレーム画像の各画像データをそれぞれ取得する。ここで、第1原画像記憶部71に記憶された画像データにより表現される第1原フレーム画像には、番号i=0が付されているとする。また、第2原画像記憶部72に記憶された画像データにより表現される第2原フレーム画像には、番号i=1が付されているとする。ここでは例えば、図5に示す第1原フレーム画像101aが、i=0番の原フレーム画像として取得され、同図に示す第2原フレーム画像101bが、i=1番の原フレーム画像として取得されたものとする。
なお、第1原フレーム画像101a及び第2原フレーム画像101bは、説明の便宜上、図5には実際の画像ではなく、その画像が線図化された概略図として描画されている。このことは、後述する画像105や、図9の第1原フレーム画像101a及び第2原フレーム画像101bについても同様である。
ステップS2において、位置合せ変換部61は、i=0,1番の原フレーム画像の各画像データに対して、位置合せ変換処理を実行する。例えば、位置合せ変換部61は、i=0,1番の原フレーム画像の各々から対応する特徴点を検出する。次に、位置合せ変換部61は、当該検出結果を所定の幾何的変形モデルにあてはめることによって最適な座標変換行列などを算出する。そして、位置合せ変換部61は、i=0,1番の原フレーム画像のうち一方の画像データに対して、所定の背景を示す画素を、他方の画像の当該背景を示す画素の座標に極力一致するように、当該変換行列などを用いた座標変換処理を実行する。なお、ステップS2の処理は、カップリング画像生成処理にとって必須な処理では無く、例えば、デジタルカメラ1が三脚などを利用することによって固定されているとみなすことが可能な状況である場合には、省略可能である。
ステップS3において、フレーム差分算出部62は、位置合せ変換処理後のi=0,1番の原フレーム画像の各画像データを用いて、フレーム差分画像の画像データを生成する。ここでは例えば、図5に示すように、i=0,1番の原フレーム画像101a,101bから、フレーム差分画像102が生成されたものとする。
ステップS4において、前景らしさ評価部63は、i=0番の原フレーム画像及びフレーム差分画像の各画像データを用いて、フレーム差分画像の有差分領域の各部分に対する、i=0番の原フレーム画像についての前景らしさ、即ち、式(1)のデータ項を算出するための重みDp0をそれぞれ画素毎に求める。ここで、重みDpiとは、i番の原フレーム画像内の画素pに対する重みDpを示している。同様に、前景らしさ評価部63は、i=1番の原フレーム画像及びフレーム差分画像の各画像データを用いて、フレーム差分画像の有差分領域の各部分に対する、i=1番の原フレーム画像についての前景らしさ、即ち、式(1)のデータ項を算出するための重みDp1をそれぞれ画素毎に求める。
なお、このようなステップS4による前景らしさ評価部63の処理を、以下、「前景らしさ評価処理」と呼ぶ。さらに、前景らしさ評価処理の実行結果として、式(1)のデータ項が設定されることから、前景らしさ評価処理は、データ項設定処理であると把握することもできる。
ここで、図4のフローチャートを参照して、前景らしさ評価処理の詳細例について説明する。
ステップS21において、前景らしさ評価部63は、フレーム差分画像を複数のブロックに分割する。なお、ブロックは、複数の画素の集合体であれば足り、その大きさ、形状、配置の関係などは特に限定されない。ここでは、正方格子状の画素の集合体、即ち、水平方向×垂直方向がK×K(Kは2以上の任意の整数値)の画素の集合体が、ブロックとして採用されている。
ステップS22において、前景らしさ評価部63は、フレーム差分画像から分割された複数のブロックのうちの1つを、注目ブロックに設定する。
ステップS23において、前景らしさ評価部63は、注目ブロックが、差分エッジブロックか否かを判定する。
ここで、差分エッジブロックとは、フレーム差分画像のエッジ上にあると判断されるブロックであって、有差分領域と無差分領域との両領域がそれぞれ一定割合以上含まれているブロックをいう。換言すると、2値化差分(フレーム差分画像の画素値)が「0」である画素と「1」である画素との各々が一定割合以上含まれているブロックをいう。即ち、フレーム差分画像のエッジは、i=0又は1番の原フレーム画像に含まれる前景物体のエッジ(背景との境界)は概ね一致するが、背景のエッジ(背景内の物体の境界)とは無関係であるという特徴を有している。そこで、図4の前景らしさ評価処理では、このような特徴を利用して、フレーム差分画像から分割された複数のブロックのうち、差分エッジブロックのみが処理対象となり、後述するステップS24乃至S29のループ処理が繰り返されることによって、i=0又は1番の原フレーム画像の各々について、処理対象内の有差分領域の前景らしさが評価される。
即ち、注目ブロックが差分エッジブロックでない場合には、ステップS23においてNOであると判定されて、後述するステップS24乃至S29のループ処理は実行されずに、処理はステップS30に進む。なお、ステップS30以降の処理については後述する。
これに対して、注目ブロックが差分エッジブロックである場合には、ステップS23においてYESであると判定されて、処理はステップS24に進む。ステップS24において、前景らしさ評価部63は、原フレーム画像の番号iを0に初期設定する(i=0)。
ステップS25において、前景らしさ評価部63は、i番の原フレーム画像の中から、注目ブロック(フレーム差分画像内の差分エッジブロック)に対応するブロック(以下、「対応ブロック」と呼ぶ)の画像データを抽出する。
ステップS26において、前景らしさ評価部63は、i番の原フレーム画像から抽出された対応ブロックの画像データを用いて、当該対応ブロック内の有差分対応領域と無差分対応領域との各々の色分布を算出する。ここで、有差分対応領域とは、フレーム差分画像の注目ブロック内の有差分領域に対応する、i番の原フレーム画像の対応ブロック内の領域をいう。また、無差分対応領域とは、フレーム差分画像の注目ブロック内の無差分領域に対応する、i番の原フレーム画像の対応ブロック内の領域をいう。
ステップS26の色分布を算出する算出手法は、特に限定されず、本実施形態では次のような手法に従って色分布が算出されている。即ち、本実施形態では、前景らしさ評価部63は、i番の原フレーム画像の有差分対応領域及び無差分対応領域の各々の各画素値の確率分布を求める。例えば、前景らしさ評価部63は、i番の原フレーム画像の有差分対応領域及び無差分対応領域の各々の領域について、適当に量子化したヒストグラムを作成し、即ちi番の原フレーム画像がカラー画像であれば定義域が3次元のヒストグラムを作成し、各々の領域を構成する画素の総数で乗算することで正規化する。
ステップS27において、前景らしさ評価部63は、i番の原フレーム画像の対応ブロック内の有差分対応領域と無差分対応領域との各々の色分布の比較により、注目ブロック(フレーム差分画像内の差分エッジブロック)の有差分領域の、i番の原フレーム画像についての前景らしさを評価する。
ステップS27の前景らしさの評価手法は、特に限定されず、本実施形態では次のような手法に従って前景らしさが評価されている。
即ち、本実施形態では、i番の原フレーム画像の対応ブロック内の有差分対応領域及び無差分対応領域の各々の色分布が似ていなければ(差異が大きければ)、i番の原フレーム画像においては、有差分対応領域が前景物体に対応し、無差分対応領域が背景に対応する確率が高い。従って、i番の原フレーム画像の対応ブロック内の有差分対応領域及び無差分対応領域の各々の色分布が似ていない場合(差異が大きい場合)、注目ブロックの有差分領域の、i番の原フレーム画像についての前景らしさは、高いと評価される。
これに対して、i番の原フレーム画像の対応ブロック内の有差分対応領域及び無差分対応領域の各々の色分布が似ていれば(差異が小さければ)、注目ブロックのi番の原フレーム画像の対応ブロックは、背景に対応する確率が高い。即ち、当該対応ブロックは、前景物体に対応する確率が低い。従って、注目ブロック(フレーム差分画像内の差分エッジブロック)の有差分領域の、i番の原フレーム画像についての前景らしさは、低いと評価される。
より具体的には、本実施形態では、注目ブロックの有差分領域の、i番の原フレーム画像についての前景らしさの評価には、次の式(2)で示されるBhattacharyya係数B(u,v)が用いられる。
式(2)において、uは、i番の原フレーム画像の対応ブロック内の有差分対応領域の色ヒストグラム(色分布)を示しており、m個の要素の度数の集合体である。即ち、m個の要素のうちのj番目(jは1乃至mのうちの何れかの正数値)の要素の度数が、ujで示されている。同様に、vは、i番の原フレーム画像の対応ブロック内の無差分対応領域の色ヒストグラム(色分布)を示しており、m個の要素の度数の集合体である。即ち、m個の要素のうちのj番目(jは1乃至mのうちの何れかの正数値)の要素の度数が、vjで示されている。
Bhattacharyya係数B(u,v)は、色分布u,vが似ている程、その値が大きくなり、最終的に、色分布u,vが一致するとその値は1になる。
上述したように、注目ブロックの有差分領域の、i番の原フレーム画像の画素位置pについての前景らしさ(この場合は値が小さいほうが前景らしく、値が大きいほうが背景らしい)は、式(1)のデータ項を算出するための重みDipに対応している。従って、本実施形態では、このBhattacharyya係数B(u,v)が、i番の原フレーム画像の対応ブロックに含まれる各画素pに対する重みDipとして設定される。これにより、色分布u,vが似ている程、重みDipとして与えるペナルティが高くなるので、i番の原フレーム画像の対応ブロックには前景物体が存在しない可能性が高い、即ち背景である可能性が高い、ということを適切に表現することが可能になる。なお、重みDipは、対応ブロックのうちの有差分対応領域の画素にのみ設定してもよい。
このように、ステップS27の処理では、i番の原フレーム画像の対応ブロックの各画素pのデータ項の重みDipが設定されることになる。これにより、処理はステップS28に進む。
ステップS28において、前景らしさ評価部63は、原フレーム画像の番号iを1だけインクリメントする(i=1)。そして、ステップS29において、前景らしさ評価部63は、原フレーム画像の番号iが1を超えたか否かを判定する(i>1?)。
直前のステップS27の処理で、i=0番の原フレーム画像の対応ブロックの各画素pのデータ項の重みD0pが設定され、ステップS28の処理でi=1番に更新された場合には、ステップS29においてNOであると判定されて、処理はステップS25に戻されそれ以降の処理が繰り返される。即ち、ステップS25乃至S27の処理が実行されて、i=1番の原フレーム画像の対応ブロックの各画素pのデータ項の重みD1pが設定され、ステップS28の処理でi=2番に更新される。すると、今度は、ステップS29においてYESであると判定されて、処理はステップS30に進む。
ステップS30において、前景らしさ評価部63は、フレーム差分画像の全ブロックが注目ブロックに設定されたか否かを判定する。
フレーム差分画像のブロックの中に、注目ブロックに設定されたことがないブロックが未だ存在する場合、ステップS30においてNOであると判定されて、処理はステップS22戻され、それ以降の処理が繰り返される。即ち、新たなブロックが注目ブロックに設定されて、i=0,1番の原フレーム画像の各々の対応ブロックの各画素pのデータ項の重みD0p,D1pがそれぞれ設定されることになる。
以上のステップS21乃至S30のループ処理が繰り返し実行されることによって、フレーム差分画像の全ブロックの各々に対して、i=0,1番の原フレーム画像の各々の対応ブロックの各画素pのデータ項の重みD0p,D1pがそれぞれ設定されることになる。
具体的には例えば、i=0番の原フレーム画像101aのデータ項の重みD0pを、画素値として有する画像の一例が、図5の画像103aである。一方、i=1番の原フレーム画像101bのデータ項の重みD1pを、画素値として有する画像の一例が、図5の画像103bである。即ち、以上のステップS21乃至S30のループ処理が繰り返し実行されることによって、図5の画像103a,103bが生成される。
これにより、ステップS30の処理でYESであると判定されて、前景らしさ評価処理は終了となる。前景らしさ評価処理が終了すると、即ち図3のステップS4の処理が終了すると、式(1)のデータ項が設定されたことになるので、処理は図3のステップS5に進む。
ステップS5において、切取易さ評価部63は、上述したように、i=0,1番の原フレーム画像の画像データを用いて、各部分の切取易さを評価する処理(以下、「切取易さ評価処理」と呼ぶ)を実行する。即ち、上述したように、各部分の切取易さを評価することは、式(1)の平滑化項を設定することに対応する。従って、切取易さ評価処理は、平滑化項設定処理であると把握することもできる。
なお、前景らしさ評価処理と、切取易さ評価処理とは、図3に示す順番に特に限定されず、同時に実行されてもよいし、切取易さ評価処理が実行された後に前景らしさ評価処理が実行されてもよい。何れにしても、前景らしさ評価処理及び切取易さ評価処理が実行されると、処理はステップS6に進む。
ステップS6において、切取線決定部65は、ステップS4の処理で設定されたデータ項と、ステップS5の処理で設定された平滑化項とを用いて、式(1)のコスト関数E(f)を最小にするような切取線を決定する。そして、切取合成部66は、切取線決定部65により決定された切取線に沿って第1の原フレーム画像から切り離した第1前景物体領域の画像データと、当該切取線に沿って第2の原フレーム画像から切り離した第2前景物体領域の画像データとを抽出する。そして、切取合成部66は、抽出した第1前景物体領域及び第2前景物体領域の各画像データを合成することで、カップリング画像の画像データを生成して、カップリング画像記憶部73に記憶させる。なお、以上のステップS6の処理を、以下、「切取合成処理」又は「コスト関数最小化処理」と呼ぶ。
具体的には例えば、図5に示す画像104が、式(1)のコスト関数E(f)を最小にするような2値化ラベリングが行われた結果を示している。なお、図5に示す画像104において、白い部分を構成する各画素が「1」にラベリングされた各画素を示しており、黒い部分を構成する各画素が「0」にラベリングされた各画素を示している。この場合、画像104の中央付近の白い部分と黒い部分との境目を通るように、切取線が設定される。そこで、具体的な処理としては、切取合成部66は、画像104のうち、ラベル値iを画素値として有する画素に対して、i番の原フレーム画像の対応画素の画素値をコピーする。即ち、「0」にラベリングされた部分には、i=0番の原フレーム画像の対応する部分がコピーされ、「1」にラベリングされた部分には、i=1番の原フレーム画像の対応する部分がコピーされる。その結果、カップリング画像105が得られることになる。
ステップS7において、データ処理部12は、カップリング画像の画像データを外部に出力する出力処理を実行する。カップリング画像の画像データの出力の形態自体は特に限定されない。例えば、カップリング画像記憶部73に記憶されたカップリング画像の画像データが、メモリ34の表示メモリ領域に表示画像データとして格納されると、表示制御部35は、当該表示画像データを読み出し、その表示画像データに対応するRGB信号を表示部41に出力させる。これにより、当該RGB信号に対応する画像、即ち、カップリング画像が表示部41に表示される。
これにより、カップリング画像生成処理は終了となる。
以上説明したように、第1実施形態に係るデジタルカメラ1は、i=0,1番の原フレーム画像(第1及び第2原フレーム画像)のフレーム差分画像を生成する。当該デジタルカメラ1は、当該フレーム差分画像のエッジ部分(差分エッジブロック)における有差分領域が、i=0番の原フレーム画像の前景物体に対応するのか、それとも、i=1番の原フレーム画像の前景物体に対応するのかを判定する。即ち、差分エッジブロックを単位として、i=0,1番の原フレーム画像の前景物体である度合(前景らしさ)が評価される。これらの差分エッジブロックを単位とした前景らしさは、式(1)のコスト関数E(f)のデータ項の各画素pの重みDipとして用いられる。
ここで、注目すべき点は、第1実施形態では、フレーム差分画像の差分エッジブロック内の有差分領域の、i番の原フレーム画像についての前景らしさは、i番の原フレーム画像内の当該対応ブロックにおける色部分布に基づいて求められる点である。
具体的には、差分エッジブロックとは、上述の如く、局所的に隣接する有差分領域と無差分領域とを含むブロックである。そこで、このような局所的に隣接する有差分領域と無差分領域との各々も対応するi番の原フレーム画像内での色分布、即ち、対応ブロック内の有差分対応領域の色分布と、対応ブロック内の無差分対応領域の色分布とがそれぞれ求められる。この場合、これらの色分布の差異が一定以上に大きい場合、i番の原フレーム画像の対応ブロック(特にそのうちの有差分対応領域)に前景物体が存在する確率が高い、即ち、i番の原フレーム画像についての前景らしさが高いと判断される。
このように、第1実施形態のデジタルカメラ1は、フレーム差分画像の有差分領域について、局所的に、i番の原フレーム画像の前景物体に該当するのかそれとも背景に該当するのかを概ね自動的に推定することができる。このような推定結果を、式(1)のコスト関数E(f)のデータ項の重みDpとして用いることで、当該コスト関数E(f)に基づく、画像全体の切取線の決定という大域的な最適化を行う場合、十分な確度を有することができる。その結果、ユーザにとっては特段の設定をするための操作をせずとも、任意の構図の画像に対して自動的に適応した切り取り線が決定され、その結果、適切なカップリング画像が得られる。即ち、撮影時の構図の自由度を高めつつ簡便な操作で、記念撮影などで求められる人物全員が含まれたカップリング画像が得られる。
〔第2実施形態〕
次に、本発明の第2実施形態を説明する。
本発明の第2実施形態に係るデジタルカメラのハードウェアの構成及び機能的構成の各々は、第1実施形態に係るデジタルカメラの図1のハードウェアの構成及び図2の機能的構成の各々と基本的に同様である。
ただし、i番の原フレーム画像についての前景らしさの求め方の手法が、第1実施形態と、第2実施形態とでは異なる。
即ち、第1実施形態に係る前景らしさ評価部63は、フレーム差分画像を複数のブロックに分割し、ブロック毎に、i番の原フレーム画像の対応ブロックの色分布の比較に基づいて、i番の原フレーム画像についての前景らしさを求めていた。このように、第1実施形態における前景らしさの求め方の手法は、直接的なエッジ抽出及びその閾値2値化といったパラメータ調整が必要になる手法を用いることなく、色分布情報で求めることが可能な、適応性の高い手法である。
しかしながら、直接的にエッジ点を求めることによって、前景らしさを求める手法を採用することも当然可能である。このような手法の1つが適用された実施形態が、第2実施形態である。即ち、第2実施形態に係る前景らしさ評価部63は、i番の原フレーム画像における、フレーム差分画像のうちエッジ性が強い画素(以下、「差分エッジ点」と呼ぶ)の対応画素(画素位置が同一の画素)のエッジ性の強さを算出する。そして、当該前景らしさ評価部63は、当該エッジ性の強さに応じて、i番の原フレーム画像における差分エッジ点の対応画素の前景物体の存在確率を推定し、その推定結果に基づいて、差分エッジ点における、i番の原フレーム画像についての前景らしさを求める。即ち、当該推定結果に基づいて、当該差分エッジ点における、式(1)のコスト関数E(f)ののデータ項の重みDpが求められる。
このような第2実施形態に係るデジタルカメラ1は、第1実施形態と同様に、図3のフローチャートに従って、カップリング画像生成処理を実行する。ただし、ステップS4の前景らしさ評価処理としては、第1実施形態で適用された図4のフローチャートではなく、図6のフローチャートに従った処理が適用される。
図6は、第2実施形態に係る前景らしさ評価部63が実行する前景らしさ評価処理の詳細な流れの一例を示すフローチャートである。
図3のステップS3の処理で、i=0,1番の原フレーム画像のフレーム差分画像が生成されると、処理はステップS4に進み、次のようなステップS41乃至S49の処理が実行される。
ステップS41において、前景らしさ評価部63は、i=0,1番の原フレーム画像及びフレーム差分画像の全画素位置を対象にして、エッジ性の強さを検出する。なお、検出手法は、特に限定されず、本実施形態では、各画素の画像データに対してエッジ抽出フィルタをかけることによって、各画素のエッジ性の強さを検出する手法が採用されている。具体的には本実施形態では、フィルタとして、ソーベルフィルタやラプラシアンフィルタなどが利用され、ステップS41の処理の結果として、多値的にエッジ性の強さを評価した値が画素毎に求められる。
ステップS42において、前景らしさ評価部63は、フレーム差分画像の中から所定の1画素を、注目画素に設定する。
ステップS43において、前景らしさ評価部63は、注目画素が、差分エッジ点であるか否かを判定する。本実施形態では、ステップS41の処理で、フレーム差分画像の全画素に対してエッジ性の強さが求められている。そこで、エッジ性の強さが所定の閾値以上の画素が、差分エッジ点であると判定される。
即ち、差分エッジ点とは、フレーム差分画像のエッジ上にあると判断される画素である。上述した第1実施形態の前景らしさ評価処理においても説明したように、フレーム差分画像のエッジは、i=0又は1番の原フレーム画像に含まれる前景物体のエッジ(背景との境界)は概ね一致するが、背景のエッジ(背景内の物体の境界)とは無関係であるという特徴を有している。そこで、図6の前景らしさ評価処理では、当該特徴を利用して、フレーム差分画像を構成する画素のうち、差分エッジ点のみが処理対象となり、後述するステップS44乃至S48のループ処理が繰り返されることによって、i=0又は1番の原フレーム画像の各々についての処理対象の前景らしさが評価される。
即ち、注目画素が差分エッジ点でない場合には、ステップS43においてNOであると判定されて、後述するステップS44乃至S48のループ処理は実行されずに、処理はステップS49に進む。なお、ステップS49以降の処理については後述する。
これに対して、注目画素が差分エッジ点である場合には、ステップS43においてYESであると判定されて、処理はステップS44に進む。ステップS44において、前景らしさ評価部63は、原フレーム画像の番号iを0に初期設定する(i=0)。
ステップS45において、前景らしさ評価部63は、i番の原フレーム画像の中から、注目画素(フレーム差分画像内の画素)に対応する対応画素を認識し、ステップS41の処理で検出された当該対応画素のエッジ性の強さを抽出する。
ステップS46において、前景らしさ評価部63は、i番の原フレーム画像の対応画素のエッジ性の強さにより、注目画素の、i番の原フレーム画像についての前景らしさを評価する。
ステップS46の前景らしさの評価手法は、特に限定されず、本実施形態では次のような手法に従って前景らしさが評価されている。
即ち、本実施形態では、i番の原フレーム画像の対応画素は、エッジ性が強い程、前景物体が存在する可能性が高い。従って、i番の原フレーム画像の対応画素のエッジ性が強い場合、フレーム差分画像内の注目画素の、i番の原フレーム画像についての前景らしさは、高いと評価される。
上述したように、フレーム差分画像内の注目画素の、i番の原フレーム画像についての前景らしさは、式(1)のデータ項の重みDipに対応している。従って、本実施形態では、エッジ性の強さの逆数が、i番の原フレーム画像の対応画素pに対する重みDipとして設定される。これにより、エッジ性が強くなる程、重みDipとして与えるペナルティが低くなるので、i番の原フレーム画像の対応画素pには前景物体が存在する可能性が高い、ということを適切に表現することが可能になる。
このように、ステップS46の処理では、i番の原フレーム画像の対応画素pのデータ項の重みDipが設定されることになる。これにより、処理はステップS47に進む。
ステップS47において、前景らしさ評価部63は、原フレーム画像の番号iを1だけインクリメントする(i=1)。そして、ステップS48において、前景らしさ評価部63は、原フレーム画像の番号iが1を超えたか否かを判定する(i>1?)。
直前のステップS46の処理で、i=0番の原フレーム画像の対応画素pのデータ項の重みD0pが設定され、ステップS47の処理でi=1番に更新された場合には、ステップS48においてNOであると判定されて、処理はステップS45に戻されそれ以降の処理が繰り返される。即ち、ステップS45乃至S48の処理が実行されて、i=1番の原フレーム画像の対応画素pのデータ項の重みD1pが設定され、ステップS47の処理でi=2番に更新される。すると、今度は、ステップS48においてYESであると判定されて、処理はステップS49に進む。
ステップS49において、前景らしさ評価部63は、フレーム差分画像の全画素が注目画素に設定されたことがあるか否かを判定する。
フレーム差分画像の中に、注目画素に設定されていない画素が未だ存在する場合、ステップS49においてNOであると判定されて、処理はステップS42戻され、それ以降の処理が繰り返される。即ち、新たな画素が注目画素に設定されて、i=0,1番の原フレーム画像の各々の対応画素pのデータ項の重みD0p,D1pがそれぞれ設定されることになる。
以上のステップS42乃至S49のループ処理が繰り返し実行されることによって、フレーム差分画像中の差分エッジ点の各々に対して、i=0,1番の原フレーム画像の各々の対応画素pのデータ項の重みD0p,D1pがそれぞれ設定されることになる。
これにより、ステップS49の処理でYESであると判定されて、前景らしさ評価処理は終了となる。前景らしさ評価処理が終了すると、即ち図3のステップS4の処理が終了すると、式(1)のデータ項が設定されたことになるので、処理は図3のステップS5に進む。
以上説明したように、第2実施形態に係るデジタルカメラ1も、第1実施形態と同様に、i=0,1番の原フレーム画像(第1及び第2原フレーム画像)のフレーム差分画像を生成する。当該デジタルカメラ1は、当該フレーム差分画像のエッジ部分(差分エッジ点)における有差分領域が、i=0番の原フレーム画像の前景物体であるのか、それとも、i=1番の原フレーム画像の前景物体であるのかを判定する。即ち、差分エッジ点毎に、i=0,1番の原フレーム画像の前景物体である度合(前景らしさ)が評価される。これらの差分エッジ点毎の前景らしさは、式(1)のコスト関数E(f)のデータ項の重みDipとして用いられる。
ここで、注目すべき点は、第2実施形態では、フレーム差分画像の差分エッジ点内の各画素の、i番の原フレーム画像についての前景らしさは、i番の原フレーム画像内の、当該差分エッジ点の対応画素のエッジ性の強さの度合に基づいて求められる点である。即ち、エッジ性が強い程、i番の原フレーム画像の対応画素に前景物体が存在する確率が高い、換言すると、i番の原フレーム画像についての前景らしさが高いと判断される。
このように、第2実施形態のデジタルカメラ1は、フレーム差分画像の有差分領域のエッジ部分について局所的に(画素単位で)、i番の原フレーム画像の前景物体に該当するのかそれとも背景に該当するのかを概ね自動的に推定することができる。このような推定結果を、式(1)のコスト関数E(f)のデータ項の重みDpとして用いることで、当該コスト関数E(f)に基づく、画像全体の切取線の決定という大域的な最適化を行う場合、十分な確度を有することができる。その結果、ユーザにとっては特段の設定をするための操作をせずとも、任意の構図の画像に対して自動的に適応した切り取り線が決定され、その結果、適切なカップリング画像が得られる。即ち、撮影時の構図の自由度を高めつつ簡便な操作で、記念撮影などで求められる人物全員が含まれたカップリング画像が得られる。
ところで、上述の説明では、i番の原フレーム画像についての前景らしさの求め方の手法が、第1実施形態と、第2実施形態とでは異なるという立場を取っていた。しかしながら、第1実施形態及び第2実施形態の各手法は、次のような同一の前提に基づく手法である。
即ち、第1実施形態及び第2実施形態の前景らしさの求め方の手法の前提とは、フレーム差分画像の中でエッジが存在する1以上の画素を処理部分とし、処理部分に対応するi番の原フレーム画像内の1以上の画素を対応処理部分として、エッジが存在する対応処理部分の方が、エッジが存在しない対応処理部分よりも、前景物体を含む確率が高い、という前提である。
このような前提の一例として、第1実施形態では、フレーム差分画像から区分された複数のブロックのうち、有差分領域及び無差分領域を含む差分エッジブロックが、処理部分として採用されており、処理部分に対する対応処理部分のうち、有差分領域に対応する領域の色分布と、無差分領域に対応する領域の色分布との差異が大きくなるほど、有差分領域に対応する領域に前景物体が存在する確率が高くなる、という前提が採用されている。
これに対して、このような前提の別の例として、第2実施形態では、差分画像のエッジ上の画素が、処理部分として採用されており、処理部分に対する対応処理部分(i番の原フレーム画像の対応画素)のエッジ性が強いほど、対応処理部分に前景物体が存在する確率が高くなる、という前提が採用されている。
このような前提を採用することにより、フレーム差分画像の処理部分について局所的に、i番の原フレーム画像の前景物体に該当するのかそれとも背景に該当するのかを概ね自動的に推定することができる。このような推定結果を、式(1)のコスト関数E(f)のデータ項の重みDpとして用いることで、当該コスト関数E(f)に基づく、画像全体の切取線の決定という大域的な最適化を行う場合、十分な確度を有することができる。その結果、ユーザにとっては特段の設定をするための操作をせずとも、任意の構図の画像に対して自動的に適応した切り取り線が決定され、その結果、適切なカップリング画像が得られる。即ち、撮影時の構図の自由度を高めつつ簡便な操作で、記念撮影などで求められる人物全員が含まれたカップリング画像が得られる。
〔第3実施形態〕
次に、本発明の第3実施形態を説明する。
本発明の第3実施形態に係るデジタルカメラのハードウェアの構成及び機能的構成の各々は、第1及び第2実施形態に係るデジタルカメラの図1のハードウェアの構成及び図2の機能的構成の各々と基本的に同様である。
ただし、i番の原フレーム画像についての前景らしさの求め方の手法が、第1及び第2実施形態と、第3実施形態とでは異なる。
即ち、第1及び第2実施形態に係る前景らしさ評価部63は、i=0,1番の原フレーム画像のフレーム差分画像のエッジと前景物体のエッジとは概ね一致するが、背景のエッジとは無関係であるという特徴を利用して、i番の原フレーム画像についての前景らしさを求めていた。
これに対して、第3実施形態では、被写体である前景物体は背景の構造物よりも十分小さいと仮定できることを利用して、i番の原フレーム画像についての前景らしさが求められる。即ち、第3実施形態に係る前景らしさ評価部63は、i=0,1番の原フレーム画像のそれぞれに存在する長い直線エッジを検出する。次に、当該前景らしさ評価部63は、長い直線エッジの一部が、i=0,1番のうちの片側の原フレーム画像だけ欠けている場合、その片側の原フレーム画像においては、長い直線エッジの一部が欠けている領域に前景物体が存在する確率が高いと判断することによって、i番の原フレーム画像についての前景らしさを求める。このため、第3実施形態に係る前景らしさ評価部63は、図7に示す機能的構成を有している。
図7は、第3実施形態に係る前景らしさ評価部63の機能的構成を示す機能ブロック図である。
第3実施形態に係る前景らしさ評価部63は、顔検出部81と、一次前景らしさ評価部82と、エッジ点抽出部83と、共通エッジ点抽出部84と、直線検出部85と、二次前景らしさ評価部86と、を備えている。顔検出部81乃至二次前景らしさ評価部86の各機能の説明については、後述する図8の前景らしさ評価処理の説明と併せて行うことにする。
このような第3実施形態に係るデジタルカメラ1は、第1及び第2実施形態と同様に、図3のフローチャートに従って、カップリング画像生成処理を実行する。ただし、ステップS4の前景らしさ評価処理としては、第1実施形態で適用された図4のフローチャートや第2実施形態で適用された図6のフローチャートではなく、図8のフローチャートに従った処理が適用される。
図8は、第3実施形態に係る図7の前景らしさ評価部63が実行する前景らしさ評価処理の詳細な流れの一例を示すフローチャートである。
図3のステップS3の処理で、i=0,1番の原フレーム画像のフレーム差分画像が生成されると、処理はステップS4に進み、次のようなステップS61乃至S75の処理が実行される。
ステップS61において、前景らしさ評価部63は、原フレーム画像の番号iを初期設定する(i=0)。
ステップS62において、前景らしさ評価部63の顔検出部81は、i番の原フレーム画像の画像データを取得して、当該画像データに対して顔検出処理を実行する。顔検出の手法は、特に限定されないが、本実施形態では、Adaboostの手法で学習したアピアランスベース識別器が適用されている。また、本実施形態では、前景物体となる被写体が人物であって、その人数が予め規定されており、このため、i番の原フレーム画像から規定人数以上の顔が検出された場合、画像面積の大きいほうから規定人数分の個数の顔領域が検出される。
このようにして検出された顔領域(以下、「顔検出領域」と呼ぶ)は、前景物体の領域と判断することができる。そこで、ステップS62の処理で顔検出部81により顔検出領域が検出されると、その検出結果は一次前景らしさ評価部82に供給される。すると、一次前景らしさ評価部82は、i番以外の原フレーム画像の画像データを用いて、次のようなステップS63,S64の処理を実行する。
即ち、ステップS63において、一次前景らしさ評価部82は、i番以外の原フレーム画像、即ち、逆側のj(=1−i)番の原フレーム画像の中から、i番の原フレーム画像の顔検出領域に対応する領域(以下、「対応領域」と呼ぶ)を抽出する。
ステップS64において、一次前景らしさ評価部82は、当該対応領域の前景らしさを評価する。本実施形態では、i番の逆側のj(=1−i)番の原フレーム画像の対応領域、i番の原フレーム画像においては顔検出領域となっている領域であるため、前景物体である可能性は非常に低い、即ち、背景である可能性が非常に高いと評価される。
上述したように、j番の原フレーム画像の対応領域の前景らしさは、式(1)のデータ項を算出するための重みDjpに対応している。従って、本実施形態では、j番の原フレーム画像の対応領域の各画素pのデータ項の重みDjpが、十分大きな値、例えば∞が設定される。さらに、顔の周囲には髪などがあり、顔の下には胴体があると通常考えられるので、対応領域よりも広範な所定範囲、特に対応領域の下方の所定範囲に属する各画素pのデータ項の重みDjpも、大きな値、例えば対応領域の値と比較して同値若しくは少し低い値が設定される。
このように、ステップS64の処理では、j番の原フレーム画像の対応領域などの画素pのデータ項の重みDjpが設定されることになる。これにより、処理はステップS65に進む。
ステップS65において、エッジ点抽出部83は、i番の原フレーム画像の画像データの中からエッジ点を抽出する。エッジ点の抽出手法は、特に限定されず、例えばケニーのアルゴリズムを用いる手法を採用することもできるが、本実施形態では、第2実施形態の差分エッジ点の抽出手法と同様の手法が採用されている。即ち、本実施形態では、i番の原フレーム画像の各画素の画像データに対してエッジ抽出フィルタをかけることによって、各画素のエッジ性の強さが検出される。具体的には本実施形態では、フィルタとして、ソーベルフィルタやラプラシアンフィルタなどが利用され、多値的にエッジ性の強さを評価した値が画素毎に求められる。そこで、これらの画素のうち、エッジ性の強さが所定の閾値以上の画素が、エッジ点として抽出される。
ステップS66において、前景らしさ評価部63は、原フレーム画像の番号iを1だけインクリメントする(i=i+1)。そして、ステップS67において、前景らしさ評価部63は、原フレーム画像の番号iが1を超えたか否かを判定する(i>1?)。
直前のステップS63及びS64の処理で、i=0番の逆側のj=1番の原フレーム画像の対応領域などの各画素pのデータ項の重みD1pが設定され、ステップS65の処理でi=0番の原フレーム画像のエッジ点が抽出されて、ステップS66の処理でi=1番に更新された場合には、ステップS67においてNOであると判定されて、処理はステップS62に戻されそれ以降の処理が繰り返される。即ち、ステップS62乃至S66の処理が実行されて、i=1番の逆側のj=0番の原フレーム画像の対応領域などの各画素pのデータ項の重みD0pが設定され、i=1番の原フレーム画像のエッジ点が抽出されて、i=2番に更新される。すると、今度は、ステップS67においてYESであると判定されて、処理はステップS68に進む。
ステップS68において、共通エッジ点抽出部84は、i=0,1番の原フレーム画像の画像データにおける各々のエッジ点のうち、同一の画素位置に存在するエッジ点を、共通エッジ点として抽出する。ステップS69において、共通エッジ点抽出部84は、共通エッジ点についてハフ変換を行うことで、1以上の直線を検出する。このようなステップS68及びS69の処理について、図9を参照してさらに詳しく説明する。
図9は、第3実施形態に係る前景らしさ評価処理の一部の具体的な処理結果の一例を示す図である。
図9の例では、i=0,1番の原フレーム画像の各々としては、図5の例と同様の画像101a,101bが採用されている。画像121aは、ソ―ベルフィルタを用いて、i=0番の原フレーム画像101aからエッジ点が抽出された結果を示す画像である。同様に、画像121bは、ソ―ベルフィルタを用いて、i=1番の原フレーム画像101bからエッジ点が抽出された結果を示す画像である。即ち、エッジ点の画素値が0(白)であり、それ以外の画素値が1(黒)となるような2値化画像が、画像121a,121bである。このような画像121a,121bを、以下、「エッジ点画像121a,121b」と呼ぶ。
ステップS68の処理で、エッジ点画像121a,121bから、共通エッジ点が抽出された結果が、画像122である。即ち、共通エッジ点の画素値が0(白)であり、それ以外の画素値が1(黒)となるような2値化画像が、画像122である。このような画像122を、以下、「共通エッジ点画像122」と呼ぶ。
ステップS69の処理では、このような共通エッジ点画像122に対して直線のハフ変換が実行されて、i=0,1番の原フレーム画像の各々に含まれる直線、例えば図9の例では直線123が抽出される。ここで、単に投票数の多い直線を抽出するだけではなく、投票されたエッジ点が、短い直線(線分)上にのみ集中しているものは除外するようにすることにより、一定長以上の直線が抽出される。即ち、ステップS69の処理では、背景の構造物(建築物など)のエッジを示す直線を検出することが目的とされている。これに対して、上述したように、被写体(人物など)である前景物体は背景の構造物よりも十分小さいと仮定できるため、短い直線は前景物体中のエッジを示す可能性が高い。そこで、このような前景物体中のエッジを誤検出しないように、短い直線は除外しているのである。
このように、直線検出部85により1以上の直線(以下、「検出直線」と呼ぶ)が検出され、その検出結果が二次前景らしさ評価部86に供給されると、処理は図8のステップS69からS70に進む。
ステップS70において、二次前景らしさ評価部86は、1以上の検出直線の1つを注目直線に設定する。
ステップS71において、二次前景らしさ評価部86は、注目直線の中から注目画素を設定する。即ち、i=0,1番の原フレーム画像のうち、注目直線が配置されている所定の画素位置に存在する画素が、注目画素に設定される。
ステップS72において、二次前景らしさ評価部86は、注目画素は、片方エッジ点であるか否かを判定する。ここで、片方エッジ点とは、i=0,1番の原フレーム画像の同一位置の画素のうち、一方の原フレーム画像側の画素のみがエッジ点となっており、他方の原フレーム画像側の画素がエッジ点となっていない画素をいう。即ち、片方エッジ点は、エッジ点の存在する原フレーム画像側では背景に対応する確率が高く、エッジ点が存在しない原フレーム画像側では前景物体に対応する確率が高いとみなすことができる画素をいう。長い直線は、背景構造物のエッジであり、それが前景物体により隠蔽されたため、片方エッジ点が生じていると考えられるからである。
注目画素が片方エッジ点でない場合、当該注目画素は、i=0,1番の原フレーム画像の何れにおいても背景に対応している可能性が高いため、ステップS72においてNOであると判定されて、後述するステップS73の処理は実行されずに、処理はステップS74に進む。なお、ステップS74以降の処理については後述する。
これに対して、注目画素が片方エッジ点である場合、ステップS72においてYESであると判定されて、処理はステップS73に進む。ステップS73において、二次前景らしさ評価部86は、注目画素の前景らしさを補正する。
この場合、i=0,1番の原フレーム画像の両者の注目画素に対して、前景らしさが補正されてもよい。ただし、本実施形態では、i=0,1番の原フレーム画像のうち、エッジ点の存在する原フレーム画像側の注目画素、即ち、背景に対応する確率が高い注目画素の前景らしさが、低くなるように更新される。
上述したように、エッジ点の存在するi番の原フレーム画像の注目画素pの前景らしさは、式(1)のデータ項を算出するための重みDipに対応している。従って、本実施形態では、エッジ点の存在するi番の原フレーム画像の注目画素pのデータ項の重みDipが、大きくなるように補正される。
このように、ステップS73の処理では、エッジ点の存在するi番の原フレーム画像の注目画素pのデータ項の重みDipが補正されることになる。これにより、処理はステップS74に進む。
ステップS74において、二次前景らしさ評価部86は、注目直線の全画素が注目画素に設定されたことがあるか否かを判定する。
注目直線を構成する画素の中に、注目画素に設定されたことがない画素が未だ存在する場合、ステップS74においてNOであると判定されて、処理はステップS71戻され、それ以降の処理が繰り返される。これにより、注目直線を構成する画素のうち、片方エッジ点となる各画素の前景らしさ、即ち、エッジ点の存在するi番の原フレーム画像側の重みDipがそれぞれ補正される。
注目直線の全画素に対して上述した処理が実行されると、ステップS74の処理でYESであると判定されて、処理はステップS75に進む。
ステップS75において、二次前景らしさ評価部86は、全検出直線が注目直線に設定されたことがあるか否かを判定する。
1以上の検出直線の中に、注目直線に設定されたことがないものが未だ存在する場合、ステップS75においてNOであると判定されて、処理はステップS70戻され、それ以降の処理が繰り返される。これにより、1以上の検出直線の各々に対して、ステップS71乃至S74のループ処理が繰り返し実行されて、片方エッジ点となる各画素の前景らしさ、即ち、エッジ点の存在するi番の原フレーム画像側の重みDipがそれぞれ補正される。
1以上の検出直線の全てに対して上述した処理が実行されると、ステップS75の処理でYESであると判定されて前景らしさ評価処理は終了となる。前景らしさ評価処理が終了すると、即ち図3のステップS4の処理が終了すると、式(1)のデータ項が設定されたことになるので、処理は図3のステップS5に進む。
以上説明したように、第3実施形態に係るデジタルカメラ1は、i=0,1番の原フレーム画像(第1及び第2原フレーム画像)の両者に存在する長い直線エッジを、検出直線として検出する。当該デジタルカメラ1は、このような検出直線を背景の構造物のエッジとして、i=0,1番の原フレーム画像のうち、一方の領域に検出直線が含まれ、他方の同一位置の領域に検出直線が含まれない場合、他方の領域(1以上の片方エッジ点)に前景物体が含まれる確率が、それ以外の場合よりも高いものとして、i=0,1番の原フレーム画像の前景物体である度合(前景らしさ)が評価される。これらの前景らしさは、式(1)のコスト関数のデータ項の重みDipとして用いられる。
このように、第3実施形態のデジタルカメラ1は、検出直線付近の領域について局所的に(背景の構造物を示す長い直線エッジ付近)、i番の原フレーム画像の前景物体に該当するのかそれとも背景に該当するのかを概ね自動的に推定することができる。このような推定結果を、式(1)のコスト関数E(f)のデータ項の重みDpとして用いることで、当該コスト関数に基づく、画像全体の切取線の決定という大域的な最適化を行う場合、十分な確度を有することができる。その結果、ユーザにとっては特段の設定をするための操作をせずとも、任意の構図の画像に対して自動的に適応した切り取り線が決定され、その結果、適切なカップリング画像が得られる。即ち、撮影時の構図の自由度を高めつつ簡便な操作で、記念撮影などで求められる人物全員が含まれたカップリング画像が得られる。
なお、本発明は前記実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良などは本発明に含まれるものである。
例えば、第1乃至第3実施形態のうち任意の2以上の実施形態を組み合わせてもよいし、さらに別の実施形態を組み合わせてもよい。
具体的には例えば、式(1)のコスト関数E(f)のデータ項や平滑化項の設定は、幾つかの条件を組み合わせた加算値とすることもできる。より具体的には例えば、第1実施形態の重みDpと第2実施形態の重みDpを加算して、データ項を設定することもできる。また例えば、第1実施形態の重みDp若しくは第2実施形態の重みDp又はこれらの組み合せと、第3実施形態のうち顔検出の手法(図8のステップS61乃至S67の処理を実現する手法)と組み合わせてもよい。
さらに、第1実施形態の重みDp、第2実施形態の重みDp、及び第3実施形態のうち顔検出の手法のうちの任意の2以上の組み合わせだけでは、i=0,1番の原フレーム画像の何れに前景物体の内部領域が属するのかについての判定が不安定になる場合がある。そこで、第1実施形態の重みDp、第2実施形態の重みDp、及び第3実施形態のうち顔検出の手法のうちの任意の2以上の組み合わせに対して、さらに、第3実施形態のうち図8のステップS68至S75の処理を実現する手法(以下、「エッジ隠蔽検出手法」と呼ぶ)を組み合わせてもよい。これにより、当該判定に手掛かりを与えることができる、といった相互補完的な効果を奏することが可能になる。
また例えば、エッジ隠蔽検出手法は、例えば工場内など長い直線エッジが多数存在するシーンに限定するならば、他の手法と組み合わせずに、単独で適用することができる場合もある。
さらに、例えば、上述した第1乃至第3実施形態では、カップリング画像を生成するために合成する原フレーム画像の合成数は、i=0,1番の原フレーム画像(第1原フレーム画像及び第2原フレーム画像)の2つとされていた。しかしながら、原フレーム画像の合成数は、特にこれに限定されず、3つ以上としてもよい。この場合の実現手法も、特に限定されず、例えば、i=0,1番の原フレーム画像を合成して得られた合成画像に対して、i=2番の原フレーム画像を合成する手法を採用することができる。また例えば、多値グラフカットにより直接、3値のラベリングを求める手法を採用することができる。
さらにまた、例えば、上述した第1乃至第3実施形態では、本発明が適用される画像処理装置は、デジタルカメラとして構成される例として説明した。しかしながら、本発明は、デジタルカメラに特に限定されず、電子機器一般に適用することができる。具体的には例えば、本発明は、ビデオカメラ、携帯型ナビゲーション装置、ポータブルゲーム機などに適用可能である。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータなどにネットワークや記録媒体からインストールされる。コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
このようなプログラムを含む記録媒体は、図示はしないが、ユーザにプログラムを提供するために装置本体とは別に配布されるリムーバブルメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体などで構成される。リムーバブルメディアは、例えば、磁気ディスク(フロッピディスクを含む)、光ディスク、又は光磁気ディスクなどにより構成される。光ディスクは、例えば、CD−ROM(Compact Disk−Read Only Memory),DVD(Digital Versatile Disk)などにより構成される。光磁気ディスクは、MD(Mini−Disk)などにより構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されている図1のROM32や、図示せぬハードディスクなどで構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。