JP4803319B2 - 撮像装置、画像処理方法及びプログラム - Google Patents

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

Info

Publication number
JP4803319B2
JP4803319B2 JP2010285245A JP2010285245A JP4803319B2 JP 4803319 B2 JP4803319 B2 JP 4803319B2 JP 2010285245 A JP2010285245 A JP 2010285245A JP 2010285245 A JP2010285245 A JP 2010285245A JP 4803319 B2 JP4803319 B2 JP 4803319B2
Authority
JP
Japan
Prior art keywords
subject
image
imaging
background
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010285245A
Other languages
English (en)
Other versions
JP2011072035A5 (ja
JP2011072035A (ja
Inventor
哲司 牧野
和久 松永
雅昭 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2010285245A priority Critical patent/JP4803319B2/ja
Publication of JP2011072035A publication Critical patent/JP2011072035A/ja
Publication of JP2011072035A5 publication Critical patent/JP2011072035A5/ja
Application granted granted Critical
Publication of JP4803319B2 publication Critical patent/JP4803319B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、撮像された画像から被写体領域を抽出する撮像装置、画像処理方法及びプログラムに関する。
従来、固定された撮像装置を用いて、背景内に被写体が存在する画像を撮影し、その後に背景内に被写体が存在しない背景画像を撮影して、背景画像と被写体が存在する画像から差分情報を生成し、被写体のみを抜き出すアプリケーションを搭載したものが知られている(例えば、特許文献1参照)。
特開平10−21408号公報
しかしながら、手持ち撮影で、背景内に被写体が存在する画像の撮影後に、被写体が存在しない背景画像を撮影すると、その間に画角の移動がおきやすく、被写体を抽出する際に、背景自体の画素値に差分が発生して背景部分を被写体と誤認識し易くなってしまうといった問題が生じる。
そこで、本発明の課題は、被写体領域の抽出の精度を向上させることができる撮像装置、画像処理方法及びプログラムを提供することである。
上記課題を解決するため、請求項1に記載の発明の撮像装置は、
背景内に被写体が存在する被写体存在画像を撮像する第1撮像手段と、前記被写体存在画像の撮像の際の撮像条件と同じ撮像条件で、前記背景と同一の背景内に前記被写体の存在しない前記背景画像を撮像する第2撮像手段と、前記被写体存在画像から顔領域を検出する顔検出手段と、前記被写体存在画像と前記背景画像との位置合わせを行う位置合わせ手段と、前記位置合わせ手段により位置合わせされた前記被写体存在画像と前記背景画像との間で対応する各画素の差分情報を生成する差分生成手段と、前記差分生成手段により生成された前記差分情報に基づいて、前記被写体存在画像から被写体が含まれる被写体領域を抽出する被写体抽出手段と、備え、前記差分生成手段は、前記顔検出手段によって顔領域が検出された場合に、当該顔領域については相違度が高くなるように前記差分情報を生成することを特徴としている。
請求項に記載の発明の画像処理方法は、
撮像手段を備える撮像装置の画像処理方法であって、背景内に被写体が存在する被写体存在画像を撮像する第1撮像ステップと、前記被写体存在画像の撮像の際の撮像条件と同じ撮像条件で、前記背景と同一の背景内に前記被写体の存在しない前記背景画像を撮像する第2撮像ステップと、前記被写体存在画像から顔領域を検出する顔検出ステップと、前記被写体存在画像と前記背景画像との位置合わせを行う位置合わせステップと、前記位置合わせステップにより位置合わせされた前記被写体存在画像と前記背景画像との間で対応する各画素の差分情報を生成する差分生成ステップと、前記差分生成ステップにより生成された前記差分情報に基づいて、前記被写体存在画像から被写体が含まれる被写体領域を抽出する被写体抽出ステップと、含み、前記差分生成ステップは、前記顔検出ステップによって顔領域が検出された場合に、当該顔領域については相違度が高くなるように前記差分情報を生成することを特徴とする
請求項に記載の発明のプログラムは、
背景内に被写体が存在する被写体存在画像を撮像する第1撮像手段、前記被写体存在画像の撮像の際の撮像条件と同じ撮像条件で、前記背景と同一の背景内に前記被写体の存在しない前記背景画像を撮像する第2撮像手段、前記被写体存在画像から顔領域を検出する顔検出手段、前記被写体存在画像と前記背景画像との位置合わせを行う位置合わせ手段、前記位置合わせ手段により位置合わせされた前記被写体存在画像と前記背景画像との間で対応する各画素の差分情報を生成する差分生成手段、前記差分生成手段により生成された前記差分情報に基づいて、前記被写体存在画像から被写体が含まれる被写体領域を抽出する被写体抽出手段、として機能させ、前記差分生成手段は、前記顔検出手段によって顔領域が検出された場合に、当該顔領域については相違度が高くなるように前記差分情報を生成すること特徴としている。
本発明によれば、被写体存在画像からの被写体領域の抽出の精度を向上させることができる。
本発明を適用した一実施形態の撮像装置の概略構成を示すブロック図である。 図1の撮像装置による被写体切り抜き処理に係る動作の一例を示すフローチャートである。 図2の被写体切り抜き処理の続きを示すフローチャートである。 図2の被写体切り抜き処理に係る画像変換モデルの一例を示す図である。 図2の被写体切り抜き処理における被写体抽出処理に係る動作の一例を示すフローチャートである。 図2の被写体切り抜き処理における被写体切り抜き画像生成処理に係る動作の一例を示すフローチャートである。 図2の被写体切り抜き処理を説明するための画像の一例を模式的に示す図である。 図2の被写体切り抜き処理を説明するための画像の一例を模式的に示す図である。 図1の撮像装置による被写体合成画像生成処理に係る動作の一例を示すフローチャートである。 図9の被写体合成画像生成処理における画像合成処理に係る動作の一例を示すフローチャートである。 図1の撮像装置による被写体切り抜き処理に係る動作の一例を示すフローチャートである。 図11の被写体切り抜き処理の続きを示すフローチャートである。
以下に、本発明について、図面を用いて具体的な態様を説明する。ただし、発明の範囲は、図示例に限定されない。
図1は、本発明を適用した一実施形態の撮像装置100の概略構成を示すブロック図である。
本実施形態の撮像装置100は、先ず、背景内に被写体Sが存在する被写体存在画像P1(図7(a)参照)を、被写体Sが存在する状態に適した所定の撮像条件で撮像し、次に、被写体存在画像P1の撮像の際の所定の撮像条件と同じ撮像条件で、被写体Sの存在しない背景画像P2(図7(c)参照)を撮像し、被写体存在画像P1の位置合わせを行った後、当該被写体存在画像P1と背景画像P2との間で対応する各画素の差分情報を生成して、当該差分情報に基づいて被写体存在画像P1から被写体Sが含まれる被写体領域を抽出する。
具体的には、図1に示すように、撮像装置100は、レンズ部1と、電子撮像部2と、撮像制御部3と、画像データ生成部4と、画像メモリ5と、特徴量演算部6と、ブロックマッチング部7と、画像処理部8と、記録媒体9と、表示制御部10と、表示部11と、操作入力部12と、ジャイロセンサ部14と、CPU13とを備えている。
また、撮像制御部3と、特徴量演算部6と、ブロックマッチング部7と、画像処理部8と、CPU13は、例えば、カスタムLSI1Aとして設計されている。
レンズ部1は、複数のレンズから構成され、ズームレンズやフォーカスレンズ等を備えている。
また、レンズ部1は、図示は省略するが、被写体Sの撮像の際に、ズームレンズを光軸方向に移動させるズーム駆動部、フォーカスレンズを光軸方向に移動させる合焦駆動部等を備えていても良い。
電子撮像部2は、例えば、CCD(Charge Coupled Device)やCMOS(Complementary Metal-oxide Semiconductor)等のイメージセンサから構成され、レンズ部1の各種レンズを通過した光学像を二次元の画像信号に変換する。
撮像制御部3は、図示は省略するが、タイミング発生器、ドライバなどを備えている。そして、撮像制御部3は、タイミング発生器、ドライバにより電子撮像部2を走査駆動して、所定周期毎に光学像を電子撮像部2により二次元の画像信号に変換させ、当該電子撮像部2の撮像領域から1画面分ずつ画像フレームを読み出して画像データ生成部4に出力させる。
また、撮像制御部3は、被写体の撮像条件の調整制御を行う。具体的には、撮像制御部3は、レンズ部1を光軸方向に移動させて合焦条件を調整する自動合焦処理を行うAF部3aを備えている。
さらに、撮像制御部3は、撮像条件の調整制御として、AE(自動露出処理)やAWB(自動ホワイトバランス)等を行う。
また、撮像モードとして被写体切り抜きモード(後述)が設定されている場合に、ユーザによるシャッタボタン12aの一回目の撮像指示操作に基づいて、撮像制御部3は、レンズ部1を通過した背景内に被写体S(例えば、自動車)が存在する被写体存在画像P1(図7(a)参照)の光学像を所定の撮像条件で電子撮像部2により二次元の画像信号に変換させ、当該電子撮像部2の撮像領域から被写体存在画像P1に係る画像フレームを読み出させる。
また、撮像制御部3は、被写体存在画像P1の撮像後に、当該被写体存在画像P1の撮像の際の撮像条件を固定した状態を維持する。そして、ユーザによるシャッタボタン12aの二回目の撮像指示操作に基づいて、撮像制御部3は、レンズ部1を通過した被写体存在画像P1の背景と同一の背景内に被写体Sの存在しない背景画像P2(図7(c)参照)の光学像を、被写体存在画像P1の撮像後に固定された撮像条件で電子撮像部2により二次元の画像信号に変換させ、当該電子撮像部2の撮像領域から背景画像P2に係る画像フレームを読み出させる。
ここで、撮像レンズ部1、電子撮像部2及び撮像制御部3は、背景内に被写体Sが存在する被写体存在画像P1を所定の撮像条件で撮像する第1撮像手段、及び、被写体存在画像P1の撮像の際の所定の撮像条件と同じ撮像条件で、被写体存在画像P1の背景と同一の背景内に被写体Sの存在しない背景画像P2を撮像する第2撮像手段を構成している。
画像データ生成部4は、電子撮像部2から転送された画像フレームのアナログ値の信号に対してRGBの各色成分毎に適宜ゲイン調整した後に、サンプルホールド回路(図示略)でサンプルホールドしてA/D変換器(図示略)でデジタルデータに変換し、カラープロセス回路(図示略)で画素補間処理及びγ補正処理を含むカラープロセス処理を行った後、デジタル値の輝度信号Y及び色差信号Cb,Cr(YUVデータ)を生成する。
カラープロセス回路から出力される輝度信号Y及び色差信号Cb,Crは、図示しないDMAコントローラを介して、バッファメモリとして使用される画像メモリ5にDMA転送される。
なお、A/D変換後のデジタルデータを現像するデモザイク部(図示略)が、カスタムLSI1Aに実装されていても良い。
画像メモリ5は、例えば、DRAM等により構成され、特徴量演算部6と、ブロックマッチング部7と、画像処理部8と、CPU13等によって処理されるデータ等を一時記憶する。
特徴量演算部6は、背景画像P2を基準として、当該背景画像P2から特徴点を抽出する特徴抽出処理を行う。具体的には、特徴量演算部6は、背景画像P2のYUVデータに基づいて、所定数(或いは、所定数以上)の特徴の高いブロック領域(特徴点)を選択して、当該ブロックの内容をテンプレート(例えば、16×16画素の正方形)として抽出する。
ここで、特徴抽出処理とは、多数の候補ブロックから追跡に都合の良い特徴性の高いものを選択する処理である。具体的には、各候補ブロックの勾配共分散行列を求め、その行列の最小固有値や、Harrisオペレータと呼ばれる演算の結果を評価値として、評価値の高いものを絶対閾値や相対順位で選別する。これにより、追跡に不適切な平坦であったりランダム性が高かったりする領域を排除して、追跡に適切である物体や模様のコーナー(角)のような領域をテンプレートとして選択する。
ブロックマッチング部7は、背景画像(基準画像)P2と被写体存在画像(対象画像)P1の位置合わせのためのブロックマッチング処理を行う。具体的には、ブロックマッチング部7は、特徴抽出処理にて抽出されたテンプレートが被写体存在画像P1内のどこに対応するか、つまり、被写体存在画像P1内にてテンプレートの画素値が最適にマッチする位置(対応領域)を探索する。そして、画素値の相違度の評価値(例えば、差分二乗和(SSD)や差分絶対値和(SAD)等)が最も良かった背景画像P2と被写体存在画像P1間の最適なオフセットを当該テンプレートの動きベクトルとして算出する。
画像処理部8は、被写体存在画像P1と背景画像P2との位置合わせを行う位置合わせ部8aを具備している。
位置合わせ部8aは、背景画像P2から抽出した特徴点に基づいて、被写体存在画像P1と背景画像との位置合わせを行う。即ち、位置合わせ部8aは、背景画像P2から抽出した特徴点に基づいて、背景画像P2に対する被写体存在画像P1の各画素の座標変換式を算出する座標変換式算出部8bを具備し、この座標変換式算出部8bにより算出された座標変換式に従って被写体存在画像P1を座標変換して背景画像P2と位置合わせを行う。
具体的には、座標変換式算出部8bは、ブロックマッチング部7により算出された複数のテンプレートの動きベクトルを多数決により演算して、統計的に所定%(例えば、50%)以上となると判断された動きベクトルを全体の動きベクトルとして、当該動きベクトルに係る特徴点対応を用いて被写体存在画像P1の射影変換行列を算出する。そして、位置合わせ部8aは、射影変換行列に従って被写体存在画像P1を座標変換して背景画像P2と位置合わせを行う。
ここで、座標変換式算出部8bは、背景画像P2から抽出した特徴点に基づいて、被写体存在画像P1の各画素の座標変換式を算出する座標変換式算出手段を構成している。また、位置合わせ部8aは、被写体存在画像P1と背景画像P2との位置合わせを行う位置合わせ手段を構成している。
なお、上記した位置合わせの手法は、一例であってこれに限られるものではない。即ち、例えば、全体の動きベクトルの算出の際に、各テンプレートの追跡結果(特徴点対応)の有効性を判定する処理を行うことで全体の動きベクトルの信頼度を向上させるようにしても良い。
即ち、ブロックマッチング部7は、例えば、特徴抽出処理にて抽出されたテンプレートを市松模様状に直和分割して、当該テンプレートから2つのサブテンプレートを設定する。そして、これら2つのサブテンプレートが被写体存在画像P1内のどこに対応するかを探索領域の中で座標をオフセットしながら、各々のオフセットに関して画素値の相違度を評価し、最も良くマッチすると評価されるオフセットを特定する。そして、算出された2つのサブテンプレートの評価値を合算してテンプレートの評価値を算出し、相違度の評価値が最も良かった背景画像P2と被写体存在画像P1間の2つのサブテンプレート及びテンプレートの各々の最適なオフセットをサブテンプレートのサブ動きベクトル及びテンプレートの動きベクトルとする。
その後、位置合わせ部8aは、ブロックマッチング部7により算出されたテンプレートの動きベクトルと2つのサブテンプレートの各々のサブ動きベクトルとの一致度を判定して、これらが近いと判断されれば当該特徴点対応を有効とし、近くないと判断されれば当該特徴点対応を無効として除外することで、統計的に算出される全体の動きベクトルの信頼度を向上させることができる。
また、画像処理部8は、被写体存在画像P1と背景画像P2との間で対応する各画素の差分情報を生成する差分生成部8cを具備している。
差分生成部8cは、具体的には、位置合わせ部8aにより射影変換行列に従って各画素が座標変換された被写体存在画像P1のYUVデータと背景画像P2のYUVデータの各々に対してローパスフィルタを用いて高周波成分を除去した後、これら画像間で対応する各画素の相違度Dを下記式に基づいて算出して相違度マップを生成する。
相違度D=(Y - Y’)2 + { (U - U’)2 + (V - V’)2} * k
なお、上記式にあっては、背景画像P2のYUVデータを「Y」、「U」、「V」で表し、座標変換後の被写体存在画像P1のYUVデータを「Y’」、「U’」、「V’」で表す。また、kは、輝度信号Yと色差信号U、Vの配分を変更するための係数である。
ここで、差分生成部8cは、被写体存在画像P1と背景画像P2との間で対応する各画素の差分情報を生成する差分生成手段を構成している。
また、画像処理部8は、生成された被写体存在画像P1と背景画像P2との間で対応する各画素について生成された差分情報に基づいて、被写体存在画像P1から被写体Sが含まれる被写体領域を抽出する被写体領域抽出部8dを具備している。
被写体領域抽出部8dは、具体的には、相違度マップを所定の閾値で2値化した後、背景画像P2に所定量以上の特徴がある場合には、細かいノイズや手ぶれによる相違が存在する領域を除去するための収縮処理を行って所定値よりも小さい画素集合や手ぶれによる細線画素集合を除いた後、同じ連結成分を構成する画素集合に同じ番号を付けるラベリング処理を行って一番大きな島のパターンを被写体領域として抽出する。その後、前述の収縮分を修正するための膨張処理を行った後、被写体領域内のみのラベリング処理を行うことで被写体領域ラベルに対して所定の比率より小さいラベルの画素集合を被写体領域に置き換えることで穴埋めも行う。
一方、背景画像P2に所定量以上の特徴がない場合には、被写体存在画像P1で被写体Sを適正に特定することができると考えられることから、被写体領域抽出部8dは、2値化処理後の相違度マップに対する収縮処理及び膨張処理、ラベリング処理等を行わない。
ここで、被写体領域抽出部8dは、被写体存在画像P1と背景画像P2との間で対応する各画素の差分情報に基づいて、被写体存在画像P1から被写体Sが含まれる被写体領域を抽出する被写体抽出手段を構成している。
また、画像処理部8は、被写体存在画像P1内で抽出された被写体領域の位置を特定して、被写体存在画像P1における被写体領域の位置を示すアルファマップ(位置情報)Mを生成する位置情報生成部8eを具備している。
アルファマップMとは、被写体存在画像P1の各画素について、被写体領域の画像を所定の背景に対してアルファブレンディングする際の重みをアルファ値(0≦α≦1)として表したものである。
位置情報生成部8eは、具体的には、上記の一番大きな島の部分が1、その他の部分が0である2値化された相違度マップに対してローパスフィルタを施して境界部分に中間値を生じさせることでアルファ値を作成する。この場合、被写体領域がアルファ値が1となり、被写体存在画像P1の所定の背景に対する透過度が0%となる。一方、被写体の背景部分はアルファ値が0となり、当該被写体存在画像P1の透過度が100%となる。そして、境界付近はアルファ値が0<α<1であるので、被写体存在画像P1と背景の画像は混ざり合うこととなる。
ここで、位置情報生成部8eは、被写体存在画像P1内で被写体領域の位置を特定して位置情報を生成する位置情報生成手段を構成している。
また、画像処理部8は、生成されたアルファマップMに基づいて、被写体存在画像P1の各画素のうち、アルファ値が1の画素を所定の単一色背景画像P3に対して透過させずに、且つ、アルファ値が0の画素を透過させるように、被写体Sの画像を所定の単一色背景画像P3と合成して被写体切り抜き画像P4の画像データを生成する画像合成部8fを具備している。
画像合成部8fは、具体的には、アルファマップMにおける1の補数(1−α)を用いて単一色背景画像P3から被写体領域を切り抜いた画像を作成して、当該被写体領域が切り抜かれた画像と、アルファマップMを用いて被写体存在画像P1から切り抜かれた被写体Sを合成して被写体切り抜き画像P4を生成する。
ここで、画像合成部8fは、位置情報に基づいて、所定の背景と被写体領域の画像を合成した被写体切り抜き画像P4を生成する合成手段を構成している。
また、画像合成部8fは、生成されたアルファマップMに基づいて、被写体切り抜き画像P4と背景用画像(図示略)とを合成して被写体合成画像(図示略)を生成する。具体的には、画像合成部8fは、背景用画像の各画素のうち、アルファ値が0の画素は透過させ、アルファ値が1の画素は被写体切り抜き画像P4の対応する画素の画素値で上書きする。さらに、画像合成部8fは、背景用画像の各画素のうち、アルファ値が0<α<1の画素は1の補数(1−α)を用いて被写体領域を切り抜いた画像(背景用画像×(1−α))を生成した後、アルファマップMにおける1の補数(1−α)を用いて被写体切抜き画像P4を生成した際に単一背景色とブレンドした値を計算し、当該値を被写体切抜き画像P4から減算し、それを被写体領域を切り抜いた画像(背景用画像×(1−α))と合成する。
表示制御部10は、画像メモリ5に一時的に記憶されている表示用画像データを読み出して表示部11に表示させる制御を行う。
具体的には、表示制御部10は、VRAM、VRAMコントローラ、デジタルビデオエンコーダなどを備えている。そして、デジタルビデオエンコーダは、CPU13の制御下にて画像メモリ5から読み出されてVRAM(図示略)に記憶されている輝度信号Y及び色差信号Cb,Crを、VRAMコントローラを介してVRAMから定期的に読み出して、これらのデータを元にビデオ信号を発生して表示部11に出力する。
表示部11は、例えば、液晶表示装置であり、表示制御部10からのビデオ信号に基づいて電子撮像部2により撮像された画像などを表示画面に表示する。具体的には、表示部11は、撮像モードにて、撮像レンズ部1、電子撮像部2及び撮像制御部3による被写体Sの撮像により生成された複数の画像フレームに基づいてライブビュー画像を表示したり、本撮像画像として撮像されたレックビュー画像を表示する。
また、表示部11は、撮像モードとして被写体切り抜きモード(後述)が設定されている場合であって被写体存在画像P1の撮像の際に、ライブビュー画像に重畳させて、被写体存在画像P1の撮像指示メッセージ(例えば、「切り抜きたい被写体を撮影して下さい」(図7(a)参照)等)を表示する。
また、表示部11は、撮像モードとして被写体切り抜きモード(後述)が設定されている場合であって背景画像P2の撮像の際に、ライブビュー画像に重畳させて、被写体存在画像P1の半透過の表示態様の画像とともに、背景画像P2の撮像指示メッセージ(例えば、「被写体のない背景画像を半透過の画像と重なるように撮影して下さい」(図7(c)参照)等)を表示する。
ここで、被写体存在画像の半透過の表示態様とは、被写体存在画像が透明と不透明の中間で表示された状態であり、当該被写体存在画像に重畳して後側に表示されるライブビュー画像の輪郭や色彩や明暗などを透過する程度の表示態様のことである。
また、表示部11は、表示制御部10により、画像処理部8の画像合成部8fにより生成された被写体切り抜き画像P4の画像データに基づいて、所定の単一色背景画像P3に被写体Sが重畳された被写体切り抜き画像P4を表示させる。
ここで、表示部11は、画像合成部8fにより生成された被写体切り抜き画像P4を表示する表示手段を構成している。
記録媒体9は、例えば、不揮発性メモリ(フラッシュメモリ)等により構成され、画像処理部8のJPEG圧縮部(図示略)により符号化された撮像画像の記録用画像データを記憶する。
また、記録媒体9は、記憶手段として、画像処理部8の位置情報生成部8eにより生成されたアルファマップMと、被写体切り抜き画像P4の画像データをそれぞれ圧縮した上で対応付けて、当該被写体切り抜き画像P4の画像データの拡張子を「.jpe」として保存する。ここで、アルファマップMは、例えば、階調が8bit程度のデータであり、同じ値が続く領域が多いので圧縮効率が高く、被写体切り抜き画像P4の画像データに比べて少ない容量で保存することができる。
操作入力部12は、当該撮像装置100の所定操作を行うためのものである。具体的には、操作入力部12は、被写体Sの撮影指示に係るシャッタボタン12a、メニュー画面にて撮像モードや機能等の選択指示に係るモードボタン12b、ズーム量の調整指示に係るズームボタン(図示略)等を備え、これらのボタンの操作に応じて所定の操作信号をCPU13に出力する。
ジャイロセンサ部14は、撮像装置100の角速度を検出してジャイロデータとしてCPU13に出力する。そして、CPU13は、ジャイロデータに基づいて、被写体存在画像P1の撮像から背景画像P2の撮像まで、撮像装置100が画角を変えることなく動かない状態(不動状態)が継続していたか否かを判定する。
ここで、ジャイロセンサ部14及びCPU13は、被写体存在画像P1の撮像の際と背景画像P2の撮像の際とで当該撮像装置100本体の位置が相対的に変化したか否かを判定する位置判定手段を構成している。
CPU13は、撮像装置100の各部を制御するものである。具体的には、CPU13は、撮像装置100用の各種処理プログラム(図示略)に従って各種の制御動作を行うものである。
次に、撮像装置100による画像処理方法に係る被写体切り抜き処理について、図2〜図8を参照して説明する。
図2及び図3は、被写体切り抜き処理に係る動作の一例を示すフローチャートである。また、図4(a)及び図4(b)は、射影変換の画像変換モデルの一例を示す図であり、このうち、図4(a)は、相似変換モデルの一例を示す図であり、図4(b)は、合同変換モデルの一例を示す図である。また、図5は、被写体切り抜き処理における被写体抽出処理に係る動作の一例を示すフローチャートである。また、図6は、被写体切り抜き処理における被写体切り抜き画像生成処理に係る動作の一例を示すフローチャートである。また、図7(a)〜図7(c)並びに図8(a)〜図8(c)は、被写体切り抜き処理を説明するための画像の一例を模式的に示す図である。
被写体切り抜き処理は、ユーザによる操作入力部12のモードボタン12bの所定操作に基づいて、メニュー画面に表示された複数の撮像モードの中から被写体切り抜きモードが選択指示された場合に実行される処理である。
図2に示すように、先ず、CPU13は、表示制御部10に、撮像レンズ部1、電子撮像部2及び撮像制御部3による被写体Sの撮像により生成された複数の画像フレームに基づいてライブビュー画像を表示部11の表示画面に表示させるとともに、当該ライブビュー画像に重畳させて、被写体存在画像P1の撮像指示メッセージ(例えば、「切り抜きたい被写体を撮影して下さい」等)を表示部11の表示画面に表示させる(ステップS1;図7(a)参照)。
そして、ユーザにより操作入力部12のシャッタボタン12aが半押し操作されると、CPU13は、撮像制御部3のAF部3aに、フォーカスレンズの合焦位置を調整させて被写体距離を算出して取得させる(ステップS2)。このとき、CPU13は、撮像制御部3に、露出条件(シャッター速度、絞り、増幅率等)やホワイトバランス等の撮像条件を調整させても良い。
その後、ユーザによる操作入力部12のシャッタボタン12aが撮像指示操作(全押し操作)されたタイミングで、CPU13は、被写体存在画像P1の光学像を所定の撮像条件で電子撮像部2により撮像させる(ステップS3)。また、このとき、被写体存在画像P1の撮像直前に、CPU13は、不動状態判定の初期化関数を呼んで、ジャイロセンサ部14からのジャイロデータの取得を開始する。具体的には、CPU13は、フレーム同期信号ごとに不動状態判定モニタタスクを呼び出し、その都度ジャイロセンサ部14から出力されたジャイロデータを取得し、撮像装置100の不動状態を継続してモニタする。
続けて、CPU13は、画像データ生成部4に、電子撮像部2から転送された被写体存在画像P1の画像フレームに基づいて、被写体存在画像P1のYUVデータ(図7(b)参照)を生成させて、当該YUVデータを画像メモリ5に一時記憶させる(ステップS4)。
また、CPU13は、被写体存在画像P1の撮像後、撮像制御部3を制御して、当該被写体存在画像P1の撮像の際の合焦位置や露出条件やホワイトバランス等の撮像条件を固定した状態を維持させる(ステップS5)。
その後、CPU13は、表示制御部10に、撮像レンズ部1、電子撮像部2及び撮像制御部3による被写体Sの撮像により生成された複数の画像フレームに基づいてライブビュー画像を表示部11の表示画面に表示させるとともに、当該ライブビュー画像に重畳させて、被写体存在画像P1の半透過の表示態様の画像と背景画像P2の撮像指示メッセージ(例えば、「被写体のない背景画像を半透過の画像と重なるように撮影して下さい」等)を表示部11の表示画面に表示させる(ステップS6;図7(c)参照)。この後、ユーザは、被写体を画角外に移動させる、あるいは被写体が移動するのを待った後、背景画像P2の撮影を行う。
そして、ユーザにより背景画像P2が被写体存在画像P1の半透過の画像と重なるようにカメラ位置が調整されて、ユーザによる操作入力部12のシャッタボタン12aが撮像指示操作されたタイミングで、CPU13は、撮像制御部3に、背景画像P2の光学像を被写体存在画像P1の撮像後に固定された撮像条件で電子撮像部2により撮像させる(ステップS7)。
続けて、CPU13は、被写体存在画像P1の撮像から背景画像P2の撮像まで撮像装置100の不動状態が継続していたか否かの判定情報を不動状態判定モニタタスクより取得する(ステップS8)。
その後、CPU13は、画像データ生成部4に、電子撮像部2から転送された背景画像P2の画像フレームに基づいて、背景画像P2のYUVデータ(図8(a)参照)を生成させて、当該YUVデータを画像メモリ5に一時記憶させる(ステップS9)。
次に、CPU13は、AF部3aから被写体距離を取得して、当該被写体距離が1m未満か否かを判定する(ステップS10)。即ち、CPU13は、距離判定手段として、被写体までの距離が所定値以上である否かを判定する。
ここで、被写体距離が1m未満であると判定されると(ステップS10;YES)、CPU13は、射影変換の画像変形モデルとして相似変換(拡大縮小、回転、水平平行移動、垂直平行移動の自由度(パラメータ数が4つ)の変形に係る相似変換モデル(図4(a)参照)を指定する(ステップS11)。被写体距離が1m未満である場合に、射影変換に相似変換モデルを用いるのは、例えば、典型的な一例として、1回目の被写体存在画像P1の撮像後に、ユーザ自身が被写体を画角に入れないように移動させる行為を行う場合、撮像装置100が大きく移動して、特に前後方向については、半透過の画像を参照しても同じ位置に戻すのは困難な場合が多いからである。
一方、被写体距離が1m未満ではないと判定されると(ステップS10;NO)、CPU13は、射影変換の画像変形モデルとして合同変換(回転(回転角度は0〜2°程度を想定し、cosθ=1に近似する)、水平平行移動、垂直平行移動の自由度(パラメータ数が3つ)の変形)に係る合同変換モデル(図4(b)参照)を指定する(ステップS12)。被写体距離が1m未満ではない場合に、射影変換に合同変換モデルを用いるのは、被写体距離が遠い場合、撮像装置100の前後の動きによる撮像への影響がほとんどないためであり、不必要な自由度を与えないことにより、ノイズや被写体の影響による信頼性の低い動きベクトルの影響を排除し、より精度の高い位置合わせ変換行列を得ることが可能だからである。
次に、CPU13は、特徴量演算部6、ブロックマッチング部7及び画像処理部8に、画像メモリ5に一時記憶されている背景画像P2のYUVデータを基準として、被写体存在画像P1のYUVデータを射影変換させるための射影変換行列を指定された画像変換モデルで算出させる(ステップS13)。
具体的には、特徴量演算部6は、背景画像P2のYUVデータに基づいて、所定数(或いは、所定数以上)の特徴の高いブロック領域(特徴点)を選択して、当該ブロックの内容をテンプレートとして抽出する。そして、ブロックマッチング部7は、特徴抽出処理にて抽出されたテンプレートの画素値が最適にマッチする位置を被写体存在画像P1内にて探索して、画素値の相違度の評価値が最も良かった背景画像P2と被写体存在画像P1間の最適なオフセットを当該テンプレートの動きベクトルとして算出する。そして、画像処理部8の座標変換式算出部8bは、ブロックマッチング部7により算出された複数のテンプレートの動きベクトルに基づいて全体の動きベクトルを統計的に算出し、当該動きベクトルに係る特徴点対応を用いて被写体存在画像P1の射影変換行列を算出する。
図3に示すように、次に、CPU13は、画像処理部8に、射影変換行列の算出が成功したか否かを判定させる(ステップS14)。即ち、画像処理部8は、ステップS13にて、複数のテンプレートの動きベクトルから全体の動きベクトルを統計的に算出でき、当該動きベクトルに係る特徴点対応を用いて被写体存在画像P1の射影変換行列を算出することができたか否かを判定する。
ここで、射影変換行列の算出が成功したと判定されると(ステップS14;YES)、CPU13は、画像処理部8の位置合わせ部8aに、算出された射影変換行例に基づいて被写体存在画像P1を射影変換することで、被写体存在画像P1のYUVデータと背景画像P2のYUVデータとを位置合わせする処理を行わせる(ステップS15)。
一方、ステップS14にて、射影変換行列の算出が成功していないと判定されると(ステップS14;NO)、CPU13は、不動状態判定モニタタスクより取得した判定情報に基づいて、被写体存在画像P1の撮像から背景画像P2の撮像まで撮像装置100の不動状態が継続していたか否かを判定する(ステップS16)。
ここで、不動状態が継続していたと判定されると(ステップS16;YES)、例えば、撮像装置100が三脚に固定された状態で被写体存在画像P1及び背景画像P2の撮像が行われ、被写体存在画像P1の撮像から背景画像P2の撮像まで不動状態が継続していた場合には、CPU13は、背景の位置がほとんど変わっていないと認識し、画像処理部8の位置合わせ部8aによる位置合わせのための射影変換処理を省略する。
一方、ステップS16にて、不動状態が継続していないと判定されると(ステップS16;NO)、例えば、撮像装置100をユーザが手持ちで被写体存在画像P1等の撮像を行った場合には、CPU13は、特徴量演算部6に、背景画像P2の画像データに基づいて、背景が無地であるか否かを判定させる(ステップS17)。具体的には、特徴量演算部6は、背景画像P2の画面全体にて特徴量が一定値以上のブロック数の全体に対する割合に応じて当該背景画像P2の無地度を特定し、当該無地度が所定値以上である場合に背景が無地であると判定する。即ち、特徴量演算部6は、無地度判定手段として、背景画像P2の無地度が所定値以上であるか否かを判定する。
ここで、背景が無地であると判定されると(ステップS17;YES)、画像処理部8の位置合わせ部8aによる位置合わせのための射影変換処理を省略する。即ち、例えば、背景がのっぺりとしていて模様が何もない場合、位置合わせは困難になるが、位置ずれしても被写体領域抽出には影響が小さいため、被写体存在画像P1と背景画像P2とを位置合わせする処理を省略しても問題が無い。つまり、例えば、背景に模様がある場合、位置ずれしてしまうと位置ずれ箇所が差分となって現れ、被写体領域との判別が困難になるが、背景に模様がない場合、位置ずれしても背景箇所は無地のパターン同士の比較になるため、差分値となって現れないためである。
一方、ステップS17にて、背景が無地ではないと判定されると(ステップS17;NO)、CPU13は、被写体の切り抜きの失敗に係る所定のメッセージ(例えば、「被写体の切り抜きに失敗しました」等)を表示部11の表示画面に表示させて(ステップS18)、被写体切り抜き処理を終了する。
そして、CPU13は、画像処理部8に、被写体存在画像P1から被写体Sが含まれる被写体領域を抽出する被写体抽出処理を行わせる(ステップS19)。
ここで、被写体抽出処理について図5を参照して詳細に説明する。
図5に示すように、画像処理部8の差分生成部8cは、被写体領域の抽出用に、被写体存在画像P1のYUVデータと背景画像P2のYUVデータの各々に対してローパスフィルタをかけて各画像の高周波成分を除去する(ステップS211)。その後、差分生成部8cは、ローパスフィルタをかけた被写体存在画像P1と背景画像P2との間で対応する各画素について相違度Dを下記式に基づいて算出して相違度マップを生成する(ステップS212)。
相違度D=(Y - Y’)2 + { (U - U’)2 + (V - V’)2} * k
続けて、画像処理部8の被写体領域抽出部8dは、各画素に係る相違度マップを所定の閾値で2値化する(ステップS213)。その後、CPU13は、特徴量演算部6により抽出された特徴点に基づいて、背景画像P2に所定量以上の特徴があるか否かを判定する(ステップS214)。
ここで、背景画像P2に所定量以上の特徴があると判定されると(ステップS214;YES)、被写体領域抽出部8dは、収縮処理における収縮量を所定値又は被写体存在画像P1の射影変換行列に基づいて算出する(ステップS215)。この際、もともとの画像ノイズだけではなく、手ぶれによって相違領域が生じることもある。その場合は手ぶれ量に応じて収縮量を変化させる、即ち、ジャイロセンサ部14の出力が大きければ収縮量を大きく、ジャイロセンサ部14の出力が小さければ収縮量を小さく調整する。
そして、被写体領域抽出部8dは、算出した収縮量に従って、相違度マップから細かいノイズや手ぶれにより相違が生じた領域を除去するために収縮処理を行う(ステップS216)。
このように、相違度マップの収縮膨張を手ぶれ量を考慮して行うことができ、相違度マップから手ぶれにより相違が生じた領域を適正に除去することができる。
その後、被写体領域抽出部8dは、ラベリング処理を行って、所定値以下の領域や最大領域以外の領域を除去した後(ステップS217)、一番大きな島のパターンを被写体領域として特定する(ステップS218)。
次に、被写体領域抽出部8dは、収縮分を修正するための膨張処理を行う(ステップS219)。
その後、被写体領域抽出部8dは、被写体領域内のみのラベリング処理を行って、被写体領域の構成画素数における所定比率以下の領域を有効領域に置き換える(ステップS220)。
続けて、被写体領域抽出部8dは、被写体領域に平均化フィルタをかけて当該被写体領域の縁部に合成階調をつける(ステップS221)。また、ステップS214にて、背景画像P2に所定量以上の特徴がないと判定されると(ステップS214;NO)、被写体領域抽出部8dは、ステップS221の処理を行う。
これにより、被写体抽出処理を終了する。
図3に示すように、次に、CPU13は、画像処理部8の位置情報生成部8eに、抽出された被写体領域の被写体存在画像P1内での位置を示すアルファマップMを生成させる(ステップS20;図8(b)参照)。
その後、CPU13は、画像処理部8に、被写体Sの画像を所定の単一色背景画像P3と合成した被写体切り抜き画像P4を生成する被写体切り抜き画像生成処理を行わせる(ステップS21)。
ここで、被写体切り抜き画像生成処理について図6を参照して詳細に説明する。
図6に示すように、画像処理部8の画像合成部8fは、被写体存在画像P1、単一色背景画像P3及びアルファマップMを読み出して画像メモリ5に展開する(ステップS231)。
次に、画像合成部8fは、被写体存在画像P1の何れか一の画素(例えば、左上隅部の画素)を指定して(ステップS232)、当該画素について、アルファマップMのアルファ値に基づいて処理を分岐させる(ステップS233)。具体的には、画像合成部8fは、被写体存在画像P1の何れか一の各画素のうち、アルファ値が0の画素については(ステップS233;α=0)、透過させるように、即ち、所定の単一色で塗りつぶし(ステップS234)、アルファ値が0<α<1の画素については(ステップS233;0<α<1)、所定の単一色とブレンディングを行い(ステップS235)、アルファ値が1の画素については(ステップS233;α=1)、何もせずに所定の単一色に対して透過させないようにする。
続けて、画像合成部8fは、被写体存在画像P1の全ての画素について処理したか否かを判定する(ステップS236)。
ここで、全ての画素について処理していないと判定されると(ステップS236;NO)、画像合成部8fは、処理対象を次の画素に移動させて(ステップS237)、処理をステップS233に移行させる。
上記の処理を、ステップS236にて全ての画素について処理したと判定されるまで(ステップS236;YES)、繰り返すことで、画像合成部8fは、被写体Sの画像を所定の単一色背景画像P3と合成した被写体切り抜き画像P4の画像データを生成させる。
これにより、被写体切り抜き画像生成処理を終了する。
図3に示すように、その後、CPU13は、表示制御部10に、画像合成部8fにより生成された被写体切り抜き画像P4の画像データに基づいて、所定の単一色背景画像P3に被写体Sが重畳された被写体切り抜き画像P4を表示部11の表示画面に表示させる(ステップS22;図8(c)参照)。
次に、CPU13は、記録媒体9の所定の記憶領域に、画像処理部8の位置情報生成部8eにより生成されたアルファマップMと被写体切り抜き画像P4の画像データを対応付けて、当該被写体切り抜き画像P4の画像データの拡張子を「.jpe」として一ファイルで保存させる(ステップS23)。
これにより、被写体切り抜き処理を終了する。
次に、被写体合成画像生成処理について図9及び図10を参照して詳細に説明する。
図9は、被写体合成画像生成処理に係る動作の一例を示すフローチャートである。
被写体合成画像生成処理は、CPU13が、画像処理部8の画像合成部8fに、背景用画像(図示略)と被写体切り抜き画像を合成して被写体合成画像を生成させる処理である。
図9に示すように、ユーザによる操作入力部12の所定操作に基づいて、背景となる背景用画像(図示略)を選択して指定する(ステップS31)。画像合成部8fは、指定された背景用画像の画像データを読み出して画像メモリ5に展開する(ステップS32)。
次に、ユーザによる操作入力部12の所定操作に基づいて、「.jpe」で保存されている被写体切り抜き画像P4を選択して指定する(ステップS33)。画像合成部8fは、指定された被写体切り抜き画像P4の画像データを読み出して画像メモリ5に展開する(ステップS34)。
続けて、画像合成部8fは、画像メモリ5に展開した当該背景用画像と当該被写体切り抜き画像を用いて、画像合成処理を行う(ステップS35)。
ここで、画像合成処理について図10を参照して詳細に説明する。
図10は、画像合成処理に係る動作の一例を示すフローチャートである。
図10に示すように、画像合成部8fは、「.jpe」で保存されているアルファマップMを読み出して画像メモリ5に展開する(ステップS351)。
次に、画像合成部8fは、背景用画像の何れか一の画素(例えば、左上隅部の画素)を指定して(ステップS352)、当該画素について、アルファマップMのアルファ値に基づいて処理を分岐させる(ステップS353)。具体的には、画像合成部8fは、背景用画像の何れか一の画素のうち、アルファ値が1の画素については(ステップS353;α=1)、被写体切り抜き画像P4の対応する画素の画素値で上書きし(ステップS354)、アルファ値が0<α<1の画素については(ステップS353;0<α<1)、1の補数(1−α)を用いて被写体領域を切り抜いた画像(背景用画像×(1−α))を生成した後、アルファマップMにおける1の補数(1−α)を用いて被写体切抜き画像P4を生成した際に単一背景色とブレンドした値を計算し、当該値を被写体切抜き画像P4から減算し、それを被写体領域を切り抜いた画像(背景用画像×(1−α))と合成し(ステップS355、アルファ値が0の画素については(ステップS353;α=0)、何もせずに背景用画像を透過さるようにする。
続けて、画像合成部8fは、背景用画像の全ての画素について処理したか否かを判定する(ステップS356)。
ここで、全ての画素について処理していないと判定されると(ステップS356;NO)、画像合成部8fは、処理対象を次の画素に移動させて(ステップS357)、処理をステップS353に移行させる。
上記の処理を、ステップS356にて全ての画素について処理したと判定されるまで(ステップS356;YES)、繰り返すことで、画像合成部8fは、被写体切り抜き画像P4と背景用画像とを合成した被写体合成画像の画像データを生成させる。
これにより、画像合成処理を終了する。
図9に示すように、その後、CPU13は、表示制御部10に、画像合成部8fにより生成された被写体合成画像の画像データに基づいて、背景用画像に被写体Sが重畳された被写体合成画像を表示部11の表示画面に表示させる(ステップS36)。
以上のように、本実施形態の撮像装置100によれば、先ず、背景内に被写体Sが存在する被写体存在画像P1を、被写体Sが存在する状態に適した所定の撮像条件で撮像し、次に、被写体存在画像P1の撮像の際の所定の撮像条件を固定したまま、被写体Sの存在しない背景画像P2を撮像する。そして、被写体存在画像P1の位置合わせを行った後、当該被写体存在画像P1と背景画像P2との間で対応する各画素の相違度マップを生成して、当該相違度マップに基づいて被写体存在画像P1から被写体Sが含まれる被写体領域を抽出することができる。
従って、背景画像P2の撮像を被写体存在画像P1の撮像の際の所定の撮像条件と同一の撮像条件で行うことで、被写体存在画像P1と同一の撮像条件で撮像された背景画像P2を取得することができ、被写体画像P1と背景画像P2とで背景部分の明るさや色合いをほぼ等しくさせるとともに、背景画像P2のボケ具合や当該画像全体に対する大きさをほぼ等しくさせて、被写体存在画像P1からの被写体領域の抽出の精度を向上させることができる。また、固定された撮像条件は被写体存在画像P1の撮像の際のものなので、背景画像P2に撮像条件を合わせた場合と比較するならば、切り出された被写体はより適切な画像となる。
また、背景画像P2の撮像の際に、被写体存在画像P1を半透過の表示態様で表示部11に表示するので、ユーザは、被写体存在画像P1の半透過の表示態様の画像の背景と重なるようにカメラ位置を調整することで、被写体存在画像P1の背景と同一の背景画像P2の撮像をより容易に行うことができる。
また、背景画像P2から抽出した特徴点に基づいて、被写体存在画像P1と背景画像P2との位置合わせを行うので、被写体S上の特徴点を選ぶことが避けられる。
即ち、背景画像P2から抽出した特徴点に基づいて、被写体存在画像P1の各画素の射影変換行列を算出して、当該射影変換行列に従って各画素が射影変換された被写体存在画像P1と背景画像P2との間で対応する各画素の相違度マップを生成することができる。特徴点の抽出を背景画像P2から行うことで、被写体S上の特徴点を選ぶことが避けられ、これら2枚の画像で明らかに異なる画像部分に基づいた座標変換を行うことが避けられ、精度の高い座標変換を行うことができるので、被写体存在画像P1と背景画像P2との間の各画素の対応付けを適正に行うことができ、被写体領域の抽出をより適正に行うことができる。
また、相違度マップの2値化処理、収縮処理及び膨張処理、ラベリング処理を行って、所定値よりも小さい画素集合を除くことにより被写体存在画像P1から被写体領域を特定して抽出するので、相違度マップにおける一番大きな島のパターンを被写体領域として特定することができ、当該被写体領域の抽出をより適正に行うことができる。
このとき、背景画像P2に所定量以上の特徴があるか否かに応じて、2値化処理後の相違度マップに対する収縮処理及び膨張処理、ラベリング処理を行うか否かを決定するので、背景画像P2に所定量以上の特徴がない場合には、被写体存在画像P1で被写体Sを適正に特定することができると考えられることから、収縮処理や膨張処理等を行う必要はなく、被写体抽出処理の高速化を図ることができる。
また、被写体切り抜き処理にて、抽出された被写体領域の被写体存在画像P1内での位置を特定してアルファマップMを生成するので、当該アルファマップMによって、被写体存在画像P1内での被写体領域の位置の特定を適正に行うことができる。
そして、当該アルファマップMに基づいて、所定の単一色背景画像P3と被写体領域の画像を合成した被写体切り抜き画像P4を生成し、当該被写体切り抜き画像P4を表示部11の表示画面に表示させるので、ユーザは切り抜かれた被写体Sを確認することができ、当該被写体Sの切り抜きが適正に行われたか否かを把握することができる。即ち、被写体存在画像P1から被写体Sのみを切り出して全く異なる単一色背景画像P3を背景として被写体切り抜き画像P4を合成すると、既に撮り貯めた写真に対して変化を与えて楽しむことができ、その際に、被写体切り抜き画像P4を表示部11の表示画面に表示することで、被写体Sの切り抜きが適正に行われたか否かを把握することができる。
このとき、被写体切り抜き画像P4は、アルファマップMに基づいて、背景領域と被写体領域の境界付近が単一色背景画像の単一色とブレンドして作成されるので、被写体Sの切り抜き境界部分が単一色と適度に混ざり合った自然な画像にすることができる。
また、被写体切抜き画像P4は、当該アルファマップMと対応付けて一ファイルで保存されているので、切り抜きを行った単一色背景画像P3とは全く異なる背景用画像を背景として切り抜き合成を行う場合であっても、そのたびに被写体領域の特定を行わなくて済み、処理時間の短縮化を図ることができる。
即ち、既に撮り貯めた画像に対して被写体切り抜き画像P4を合成する場合に、記録媒体9に背景内に被写体Sが存在する被写体存在画像P1と、背景内に被写体Sが存在しない背景画像P2を2つ保存しておくと、合成のたびに被写体Sの切り抜きを行わなければならず切り抜き処理の時間がかかってしまうといった問題がある。さらに、切り出した被写体Sの品質が予め分からないといった問題もある。
しかしながら、被写体切抜き画像P4を、当該アルファマップMと対応付けて一ファイルで保存しておくことで、所定の背景用画像を背景として切り抜き合成を行う場合であっても、そのたびに被写体領域の特定を行わなくて済み、処理時間の短縮化を図ることができる。さらに、被写体切抜き画像P4を、被写体領域が抽出された被写体存在画像P1とは別の異なるファイルとして保存されているので、合成前に被写体切り抜き画像P4や被写体存在画像P1を表示部11の表示画面に表示して、切り抜かれた被写体Sの品質の確認を行うことができる。これにより、被写体切り抜き合成の利便性を上げることができる。
なお、本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲において、種々の改良並びに設計の変更を行っても良い。
例えば、上記実施形態にあっては、被写体切り抜き処理(図2及び図3参照)にて、被写体距離の判定(ステップS10)、不動状態の判定(ステップS16)、背景の無地判定(ステップS17)をこの順に行うようにしたが、これらの判定処理の順序はこれに限られるものではない。
即ち、図11及び図12に示すように、背景の無地判定(ステップS101)を先に行なった後、不動状態の判定(ステップS102)を行って、最後に被写体距離の判定(ステップS103)を行うようにしても良い。
具体的には、図11に示すように、背景画像P2のYUVデータ(図8(a)参照)を画像メモリ5に一時記憶した後(ステップS9)、CPU13は、特徴量演算部6に、背景画像P2の画像データに基づいて、背景が無地であるか否かを判定させる(ステップS101)。
ここで、背景が無地であると判定されると(ステップS101;YES)、画像処理部8の位置合わせ部8aによる位置合わせのための射影変換処理を省略し、図12に示すように、CPU13は、画像処理部8に、被写体存在画像P1から被写体Sが含まれる被写体領域を抽出する被写体抽出処理を行わせる(ステップS19)。
一方、ステップS101にて、背景が無地ではないと判定されると(ステップS101;NO)、CPU13は、不動状態判定モニタタスクより取得した判定情報に基づいて、被写体存在画像P1の撮像から背景画像P2の撮像まで不動状態が継続していたか否かを判定する(ステップS102)。
ここで、不動状態が継続していたと判定されると(ステップS102;YES)、画像処理部8の位置合わせ部8aによる位置合わせのための射影変換処理を省略し、CPU13は、処理をステップS19に移行させる。
一方、ステップS102にて、不動状態が継続していないと判定されると(ステップS102;NO)、図12に示すように、CPU13は、AF部3aから被写体距離を取得して、当該被写体距離が1m未満か否かを判定する(ステップS103)。
ここで、被写体距離が1m未満であると判定されると(ステップS103;YES)、CPU13は、射影変換の画像変形モデルとして相似変換モデル(図4(a)参照)を指定する(ステップS104)。一方、被写体距離が1m未満ではないと判定されると(ステップS103;NO)、CPU13は、射影変換の画像変形モデルとして合同変換モデル(図4(b)参照)を指定する(ステップS105)。
次に、CPU13は、特徴量演算部6、ブロックマッチング部7及び画像処理部8に、画像メモリ5に一時記憶されている背景画像P2のYUVデータを基準として、被写体存在画像P1のYUVデータを射影変換させるための射影変換行列を指定された画像変換モデルで算出させる(ステップS106)。
その後、CPU13は、画像処理部8に、射影変換行列の算出が成功したか否かを判定させる(ステップS107)。ここで、射影変換行列の算出が成功したと判定されると(ステップS107;YES)、CPU13は、画像処理部8の位置合わせ部8aに、算出された射影変換行例に基づいて被写体存在画像P1を射影変換することで、被写体存在画像P1のYUVデータと背景画像P2のYUVデータとを位置合わせする処理を行わせる(ステップS108)。
続けて、CPU13は、処理をステップS19に移行させる。
一方、ステップS107にて、射影変換行列の算出が成功していないと判定されると(ステップS107;NO)、CPU13は、被写体の切り抜きの失敗に係る所定のメッセージ(例えば、「被写体の切り抜きに失敗しました」等)を表示部11の表示画面に表示させて(ステップS109)、被写体切り抜き処理を終了する。
従って、背景が無地であるか否かの判定を先に行うことで、背景が無地であると判定された場合には、被写体存在画像P1を射影変換する必要がなくなり、被写体切り抜き処理をより高速に行うことができる。
なお、背景の無地判定よりも先に撮像装置100の不動状態の判定を行っても良く、不動状態が継続していたと判定された場合にも同様に、被写体存在画像P1を射影変換する必要がなくなり、被写体切り抜き処理をより高速に行うことができる。
また、上記実施形態では、撮像装置100が不動状態であるか否かの判定を、ジャイロセンサ部14から出力されたジャイロデータに基づいて行うようにしたが、これに限られるものではなく、例えば、撮像装置100の三脚固定部(図示略)に三脚が固定されているか否かに応じて行うようにしても良い。即ち、被写体存在画像P1と背景画像P2の撮像の際に、三脚固定部(図示略)に三脚が固定されている場合には、撮像装置100の不動状態が継続していたと判定し、三脚固定部(図示略)に三脚が固定されていない場合には、不動状態が継続していなかったと判定するようにしても良い。
なお、無地度は、各ブロック内における画素の各色成分の標準偏差や分散によりばらつきを測定することで算出してもよいし、近接画素間の各色成分の差の絶対値または二乗値の合計で算出してもよい。また、無地度の算出に、画素の色情報を含まないグレースケールを用いてもよく、前述と同様に、画素の値の標準偏差や分散によりばらつきを測定してもよいし、近接画素間の値の差の絶対値または二乗値の合計で算出してもよい。さらに、画像上のノイズ量が予測または定義できる場合は、あらかじめその値以下は無視する事でノイズ影響を排除してもよい。
さらに、上記実施形態にあっては、二度の静止画撮影から自動車を被写体Sとして静止画像を撮像するようにしたが、これに限られるものではなく、例えば、被写体存在画像P1の撮影を連写撮影としても良い。この場合、例えば、ゴルフスイングをする人などの高速で動く被写体を連写撮影して、その後、その人が画角外に移動した背景画像P2を撮影する。連写された被写体存在画像P1の各々について被写体領域を抽出して(ステップS19)、連写画像の各々のアルファマップMを生成するようにしても良い(ステップS20)。そして、所定の単一色背景画像に対して連写画像を古い順に順次合成していって、当該連写画像から切り抜かれたゴルフスイングする人を順次表示するモーションJPEG画像を生成するようにしても良い。また、当該連写画像から切り抜かれたゴルフスイングする人を一枚の画像に重ね合わせ合成して、いわゆるストロボショットのような画像を合成するようにしても良い。
また、アルファマップMと被写体切り抜き画像P4の画像データを対応付けて一ファイルで保存させるようにしたが、アルファマップMと被写体存在画像P1の画像データを対応付けて一ファイルで記録媒体(記憶手段)9に保存させるようにしても良い。この場合、当該ファイルの再生には、被写体存在画像P1を再生させるモードと、再生時にアルファマップMを適用して被写体切り抜き画像P4を合成して表示する2モードを用意しておくとよい。
また、顔検出部を設け、被写体存在画像P1と背景画像P2のそれぞれについて顔検出を行い、被写体存在画像P1のみに顔が検出された場合、その顔検出領域について相違度マップの相違度が高くなる(不一致度が高くなる)ようにオフセット値を加えるようにしても良い。このようにすれば被写体の最も重要な部分である顔がより確実に切り抜き領域に含まれる。さらには「顔切り抜きモード」を設けて、顔検出がされた領域についてのみラベリングで切り抜き、従来のラベリング手順を省くようにすれば、より軽い処理で顔部分の切り抜き画像を得ることができる。
また、上記実施形態にあっては、相違度マップの2値化処理(ステップS213)後に、収縮処理(ステップS216)及び膨張処理(ステップS219)を行うようにしたが、これに限られるものではなく、先に、収縮処理及び膨張処理を行った後、2値化処理を行っても良い。
即ち、上記実施形態における被写体抽出処理は一例であって、被写体存在画像P1からの被写体Sの抽出を適正に行うことができる限り、処理内容は適宜任意に変更することができる。
また、上記実施形態にあっては、出力手段として表示部11を例示したが、これに限られるものではなく、例えば、プリンタ等と接続可能な外部出力端子(図示略)であっても良く、当該外部出力端子からプリンタに合成画像の画像データを出力して、合成画像を印刷するようにしても良い。
さらに、撮像装置100の構成は、上記実施形態に例示したものは一例であり、これに限られるものではない。
即ち、例えば、電子撮像部2をCMOSイメージセンサから構成した場合には、各画素が電荷の蓄積を開始するタイミングが異なることにより高速に移動する被写体を撮像するとフォーカルプレーンひずみが発生してしまう虞があるため、これを防止するために、シャッタ制御部(図示略)により駆動制御されるメカニカルシャッタ(図示略)を搭載して露出時間を制御するようにしても良い。
加えて、上記実施形態にあっては、第1撮像手段、第2撮像手段としての機能を、CPU13の制御下にて、レンズ部1、電子撮像部2及び撮像制御部3が駆動することにより実現される構成とし、位置合わせ手段、差分生成手段、被写体抽出手段、座標変換式算出手段、位置情報生成手段、合成手段としての機能を、CPU13の制御下にて、画像処理部8が駆動することにより実現される構成としたが、これに限られるものではなく、CPU13によって所定のプログラム等が実行されることにより実現される構成としても良い。
即ち、プログラムを記憶するプログラムメモリ(図示略)に、第1撮像制御処理ルーチン、第2撮像制御処理ルーチン、位置合わせ処理ルーチン、差分生成処理ルーチン、被写体抽出処理ルーチン、座標変換式算出処理ルーチン、位置情報生成処理ルーチン、合成処理ルーチンを含むプログラムを記憶しておく。そして、第1撮像制御処理ルーチンによりCPU13を、背景内に被写体Sが存在する被写体存在画像P1を撮像手段に撮像させる第1撮像制御手段として機能させるようにしても良い。また、第2撮像制御処理ルーチンによりCPU13を、被写体存在画像P1の撮像の際の撮像条件と同じ撮像条件で、背景と同一の背景内に被写体Sの存在しない背景画像P2を撮像させる第2撮像制御手段として機能させるようにしても良い。また、位置合わせ処理ルーチンによりCPU13を、写体存在画像P1と背景画像P2との位置合わせを行う位置合わせ手段として機能させるようにしても良い。また、差分生成処理ルーチンによりCPU13を、被写体存在画像P1と背景画像P2との間で対応する各画素の差分情報を生成させる差分生成手段として機能させるようにしても良い。また、被写体抽出処理ルーチンによりCPU13を、生成された差分情報に基づいて、被写体存在画像P1から被写体Sが含まれる被写体領域を抽出する被写体抽出手段として機能させるようにしても良い。また、座標変換式算出処理ルーチンによりCPU13を、背景画像P2から抽出した特徴点に基づいて、前記被写体存在画像P1の各画素の座標変換式を算出する座標変換式算出手段として機能させるようにしても良い。また、位置情報生成処理ルーチンによりCPU13を、被写体存在画像P1内で抽出された被写体領域の位置を特定して位置情報を生成する位置情報生成手段として機能させるようにしても良い。また、合成処理ルーチンによりCPU13を、生成された位置情報に基づいて、所定の背景と被写体領域の画像を合成した被写体切り抜き画像P4を生成する合成手段として機能させるようにしても良い。
100 撮像装置
1 レンズ部
2 電子撮像部
3 撮像制御部
6 特徴量演算部
7 ブロックマッチング部
8 画像処理部
8a 位置合わせ部
8b 座標変換式算出部
8c 差分生成部
8d 被写体領域抽出部
8e 位置情報生成部
8f 画像合成部
11 表示部
13 CPU
14 ジャイロセンサ部

Claims (3)

  1. 背景内に被写体が存在する被写体存在画像を撮像する第1撮像手段と、
    前記被写体存在画像の撮像の際の撮像条件と同じ撮像条件で、前記背景と同一の背景内に前記被写体の存在しない前記背景画像を撮像する第2撮像手段と、
    前記被写体存在画像から顔領域を検出する顔検出手段と、
    前記被写体存在画像と前記背景画像との位置合わせを行う位置合わせ手段と、
    前記位置合わせ手段により位置合わせされた前記被写体存在画像と前記背景画像との間で対応する各画素の差分情報を生成する差分生成手段と、
    前記差分生成手段により生成された前記差分情報に基づいて、前記被写体存在画像から被写体が含まれる被写体領域を抽出する被写体抽出手段と、
    を備え
    前記差分生成手段は、
    前記顔検出手段によって顔領域が検出された場合に、当該顔領域については相違度が高くなるように前記差分情報を生成することを特徴とする撮像装置。
  2. 撮像手段を備える撮像装置の画像処理方法であって、
    背景内に被写体が存在する被写体存在画像を撮像する第1撮像ステップと、
    前記被写体存在画像の撮像の際の撮像条件と同じ撮像条件で、前記背景と同一の背景内に前記被写体の存在しない前記背景画像を撮像する第2撮像ステップと、
    前記被写体存在画像から顔領域を検出する顔検出ステップと、
    前記被写体存在画像と前記背景画像との位置合わせを行う位置合わせステップと、
    前記位置合わせステップにより位置合わせされた前記被写体存在画像と前記背景画像との間で対応する各画素の差分情報を生成する差分生成ステップと、
    前記差分生成ステップにより生成された前記差分情報に基づいて、前記被写体存在画像から被写体が含まれる被写体領域を抽出する被写体抽出ステップと、
    を含み、
    前記差分生成ステップは、
    前記顔検出ステップによって顔領域が検出された場合に、当該顔領域については相違度が高くなるように前記差分情報を生成することを特徴とする画像処理方法。
  3. 撮像手段を備える撮像装置のコンピュータを、
    背景内に被写体が存在する被写体存在画像を撮像する第1撮像手段、
    前記被写体存在画像の撮像の際の撮像条件と同じ撮像条件で、前記背景と同一の背景内に前記被写体の存在しない前記背景画像を撮像する第2撮像手段、
    前記被写体存在画像から顔領域を検出する顔検出手段、
    前記被写体存在画像と前記背景画像との位置合わせを行う位置合わせ手段、
    前記位置合わせ手段により位置合わせされた前記被写体存在画像と前記背景画像との間で対応する各画素の差分情報を生成する差分生成手段、
    前記差分生成手段により生成された前記差分情報に基づいて、前記被写体存在画像から被写体が含まれる被写体領域を抽出する被写体抽出手段、
    として機能させ、
    前記差分生成手段は、
    前記顔検出手段によって顔領域が検出された場合に、当該顔領域については相違度が高くなるように前記差分情報を生成することを特徴とするプログラム。
JP2010285245A 2008-12-16 2010-12-22 撮像装置、画像処理方法及びプログラム Active JP4803319B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010285245A JP4803319B2 (ja) 2008-12-16 2010-12-22 撮像装置、画像処理方法及びプログラム

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2008319633 2008-12-16
JP2008319633 2008-12-16
JP2009001484 2009-01-07
JP2009001484 2009-01-07
JP2010285245A JP4803319B2 (ja) 2008-12-16 2010-12-22 撮像装置、画像処理方法及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009278378A Division JP4760973B2 (ja) 2008-12-16 2009-12-08 撮像装置及び画像処理方法

Publications (3)

Publication Number Publication Date
JP2011072035A JP2011072035A (ja) 2011-04-07
JP2011072035A5 JP2011072035A5 (ja) 2011-06-30
JP4803319B2 true JP4803319B2 (ja) 2011-10-26

Family

ID=44016769

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2010285245A Active JP4803319B2 (ja) 2008-12-16 2010-12-22 撮像装置、画像処理方法及びプログラム
JP2010285244A Pending JP2011072034A (ja) 2008-12-16 2010-12-22 撮像装置、画像処理方法及びプログラム
JP2012113560A Active JP5354059B2 (ja) 2008-12-16 2012-05-17 撮像装置、画像処理方法及びプログラム

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2010285244A Pending JP2011072034A (ja) 2008-12-16 2010-12-22 撮像装置、画像処理方法及びプログラム
JP2012113560A Active JP5354059B2 (ja) 2008-12-16 2012-05-17 撮像装置、画像処理方法及びプログラム

Country Status (1)

Country Link
JP (3) JP4803319B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4110560B2 (ja) * 1998-05-20 2008-07-02 カシオ計算機株式会社 画像処理方法及びその装置
JP3782368B2 (ja) * 2002-03-29 2006-06-07 株式会社東芝 物体画像切り出し方法及びプログラム並びに物体画像切り出し装置
JP2003338977A (ja) * 2002-05-20 2003-11-28 Casio Comput Co Ltd 撮像装置及び画像合成方法
JP3983623B2 (ja) * 2002-08-09 2007-09-26 シャープ株式会社 画像合成装置、画像合成方法、画像合成プログラム、および画像合成プログラムを記録した記録媒体
JP2004207936A (ja) * 2002-12-25 2004-07-22 Fuji Photo Film Co Ltd 画像処理装置

Also Published As

Publication number Publication date
JP5354059B2 (ja) 2013-11-27
JP2012199964A (ja) 2012-10-18
JP2011072034A (ja) 2011-04-07
JP2011072035A (ja) 2011-04-07

Similar Documents

Publication Publication Date Title
JP4760973B2 (ja) 撮像装置及び画像処理方法
JP5105550B2 (ja) 画像合成装置及びプログラム
JP5051156B2 (ja) 画像処理装置及びプログラム
JP4798236B2 (ja) 撮像装置、画像処理方法及びプログラム
JP6656035B2 (ja) 画像処理装置、撮像装置および画像処理装置の制御方法
TW201101813A (en) Image capturing device, image capturing method and image capturing program
JP5326758B2 (ja) カメラ、画像処理装置、および画像処理プログラム
JP5267279B2 (ja) 画像合成装置及びプログラム
JP2011066827A (ja) 画像処理装置、画像処理方法及びプログラム
JP4803319B2 (ja) 撮像装置、画像処理方法及びプログラム
JP5493839B2 (ja) 撮像装置、画像合成方法及びプログラム
JP5636660B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5476900B2 (ja) 画像合成装置、画像合成方法及びプログラム
JP2010233001A (ja) 画像合成装置、画像再生装置及びプログラム
JP5494537B2 (ja) 画像処理装置及びプログラム
JP2010278701A (ja) 画像合成装置、画像合成方法及びプログラム
JP5381207B2 (ja) 画像合成装置及びプログラム
JP2011041041A (ja) 撮像装置、撮像方法及びプログラム
JP5402361B2 (ja) 撮像装置、画像処理方法及びプログラム
JP2023125905A (ja) 画像処理装置、画像処理方法およびプログラム
JP5565227B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP5310361B2 (ja) 撮像装置、画像処理方法及びプログラム
JP2011175663A (ja) 撮像装置、画像処理方法及びプログラム
JP2011135619A (ja) 画像処理装置及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110426

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110712

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110725

R150 Certificate of patent or registration of utility model

Ref document number: 4803319

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140819

Year of fee payment: 3