説明

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

【課題】より高精度に被写体を抽出する。
【解決手段】抽出すべき被写体を含む画像と、背景のみの画像とを取得する。背景低分散用αマップ作成部213は、両画像の各画素につき、画素値の差分絶対値和を求め、二値化して背景低分散用αマップを生成する。背景高分散用αマップ作成部214は、両画像の各画素につき、画素値の差分二乗和を求め、二値化して背景高分散用αマップを生成する。画素分散度マップ作成部215は、背景のみの画像の各画素につき、その画素を含む小ブロック内の画素値の分散を求め、求めた値を画素値とする分散画像を生成する。差分抽出マップ生成部216は、分散画像の画素値に基づいて、背景低分散用αマップと背景高分散用αマップとを合成する。合成画像生成部217は、合成した画像を抽出すべき対象が撮像された画像に対応付けて、被写体が撮像された画像から被写体部分を抽出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置、撮像装置、画像処理方法、及びプログラムに関する。
【背景技術】
【0002】
特許文献1〜3には、画像中の焦点の合っている部分を被写体とし、焦点の合っていない部分を背景とすると、画像から被写体を示す部分を抽出する場合に、背景のみの画像と被写体を含む画像との各画素値の差を二乗した値若しくは各画素値の差の絶対値に基づいて、被写体部分を特定する技術が開示されている。各画素値の差の二乗値を用いて被写体部分を特定する手法は、影等を被写体と誤認してしまうような誤認識を避けることに重点をおいた手法であり、各画素値の差の絶対値を用いて被写体部分を特定する手法は、輪郭線を正確にトレースすることに重点をおいた手法である。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第4415198号公報
【特許文献2】特開2010−67125号公報
【特許文献3】特開2009−194530号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1〜3に開示された技術では、各画素値の差の二乗値、若しくは各画素値の差の絶対値のどちらか一方にのみ基づいて被写体部分を特定するため、誤認識が多く輪郭線を正確にトレースすることができなかった。
【0005】
本発明は、上述のような事情に鑑みてなされたものであり、より高精度に被写体を抽出することのできる、画像処理装置、撮像装置、画像処理方法、及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明の第一の観点に係る画像処理装置は、
被写体と背景とが撮像された第1画像と、前記第1画像の背景のみが撮像された第2画像と、を取得する画像取得手段と、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成手段と、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成手段と、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成手段と、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成手段と、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた合成画像を生成する二値画像合成手段と、
前記第1画像に対して前記二値画像合成手段で生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出手段と、
を備えることを特徴とする。
【0007】
上記画像処理装置において、
前記二値画像合成手段は、
前記統計画像生成手段で生成した統計画像の各画素について、その画素値と、予め記憶されている閾値とを比較し、前記画素値が前記閾値未満である場合は、前記第1の二値画像の画素値の割合を前記第2の二値画像の画素値の割合よりも大きくし、前記画素値が前記閾値以上である場合は、前記第2の二値画像の画素値の割合を前記第1の二値画像の画素値の割合よりも大きくして、一の画素中で前記第1の二値画像の画素値と前記第2の二値画像の画素値とを組み合わせ、前記合成画像を生成する、
ことが望ましい。
【0008】
上記画像処理装置において、
前記二値画像合成手段は、
前記統計画像生成手段で生成した統計画像の各画素について、その画素値と、予め記憶されている閾値とを比較し、前記画素値が前記閾値未満である場合は、前記第1の二値画像の画素値を当該画素の画素値とし、前記画素値が前記閾値以上である場合は、前記第2の二値画像の画素値を当該画素の画素値とすることにより、画素単位で前記第1の二値画像と前記第2の二値画像とを合成する、
ことが望ましい。
【0009】
上記画像処理装置において、
前記第2画像を複数のブロックに分割し、ブロックごとの閾値を取得する閾値取得手段をさらに備え、この場合、
前記二値画像合成手段は、
前記統計画像生成手段で生成した統計画像の各画素の画素値と、その画素が含まれるブロックに対応する、前記閾値取得手段で取得した閾値と、を比較する、
ことが望ましい。
【0010】
上記画像処理装置において、
前記統計画像生成手段は、
前記第2画像の各画素について、その画素を含むブロック内の画素値に対する分散値を求め、当該分散値をその画素の画素値とする統計画像を生成する、
ことが望ましい。
【0011】
上記目的を達成するため、本発明の第二の観点に係る撮像装置は、
被写体と背景とを含む第1画像と、前記第1画像の被写体を除く画像である第2画像とを撮像により生成する撮像手段と、
前記撮像手段が生成した第1画像と第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成手段と、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成手段と、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成手段と、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成手段と、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた画像を生成する二値画像合成手段と、
前記第1画像に対して前記二値画像合成手段で生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出手段と、
を備えることを特徴とする。
【0012】
上記目的を達成するため、本発明の第三の観点に係る画像処理方法は、
画像処理装置の画像処理方法であって、
被写体と背景とが撮像された第1画像と、前記第1画像の背景のみが撮像された第2画像と、を取得する画像取得ステップと、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成ステップと、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成ステップと、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成ステップと、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成ステップと、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた合成画像を生成する二値画像合成ステップと、
前記第1画像に対して前記二値画像合成ステップで生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出ステップと、
を備えることを特徴とする。
【0013】
上記目的を達成するため、本発明の第四の観点に係るプログラムは、
画像処理装置を制御するコンピュータを、
被写体と背景とが撮像された第1画像と、前記第1画像の背景のみが撮像された第2画像と、を取得する画像取得手段、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成手段、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成手段、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成手段、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成手段、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた合成画像を生成する二値画像合成手段、
前記第1画像に対して前記二値画像合成手段で生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出手段、
として機能させることを特徴とする。
【発明の効果】
【0014】
本発明によれば、より高精度に被写体を抽出することができる。
【図面の簡単な説明】
【0015】
【図1】本発明の実施形態に係る画像処理装置を備えたデジタルスチルカメラの構成を示すブロック図である。
【図2】撮像された画像から被写体を抽出する場合に、制御部によって実現される機能を示した機能ブロック図である。
【図3】本発明の実施形態に係る画像処理装置を備えたデジタルスチルカメラの、被写体抽出処理の一例を表すフローチャートである。
【図4】(A)、(B)は、被写体抽出処理における抽出すべき対象を含む画像と背景のみの画像の一例を示す図である。
【図5】背景低分散用αマップ作成処理の一例を表すフローチャートである。
【図6】ヒストグラムを正規分布関数の線形結合のモデルに近似したものを示す図である。
【図7】背景高分散用αマップ作成処理の一例を表すフローチャートである。
【図8】画素分散度マップ作成処理の一例を示す図である。
【図9】被写体抽出処理において抽出した対象を単一色背景画像と合成した画像の一例を示す図である。
【発明を実施するための形態】
【0016】
以下、本発明の実施形態について、図面を参照して説明する。本実施形態では、本発明をデジタルスチルカメラ(以下、デジタルカメラ)によって実現した場合を例示する。なお、以下に示すデジタルカメラの構成は、被写体抽出機能を実現するための構成であり、デジタルカメラとしての基本的な機能や種々の付加機能に用いられる構成は備えられているものとする。
【0017】
デジタルカメラ100は、図1に示すように、撮像部110と、データ処理部120と、インターフェース部130と、から構成されている。
【0018】
撮像部110は、光学装置112や、イメージセンサ114等から構成され、デジタルカメラ100における撮像動作を行う。
【0019】
光学装置112は、レンズ、絞り、シャッタ等から構成される。光学装置112により、入射光が集光されるとともに、画角やピント等の光学的要素の調整が行われる。
【0020】
イメージセンサ114は、CCD(Charge Coupled Device:電荷結合素子)やCMOS(Complementary Metal Oxide Semiconductor:相補型金属酸化物半導体)等から構成され、光学装置112によって集光された入射光に応じた電気信号を生成する。イメージセンサ114は、生成した電気信号を、アナログ信号として出力する。
【0021】
データ処理部120は、撮像部110による撮像動作によって生成された電気信号を処理して、撮像画像を示すデジタルデータを生成する。また、データ処理部120は、撮像画像に対する画像処理等を行う。データ処理部120は、制御部121と、画像処理部122と、画像メモリ123と、記憶部124と、外部記憶部125と、から構成される。
【0022】
制御部121は、CPU(Central Processing Unit:中央演算処理装置)等のプロセッサや、RAM(Random Access Memory)等の主記憶装置(メモリ)等から構成される。制御部121は、後述する記憶部124等に格納されているプログラムに従って動作し、デジタルカメラ100の動作に必要な各機能を提供する。
【0023】
画像処理部122は、ADC(Analog Digital Converter:アナログ−デジタル変換器)と、バッファメモリと、画像処理用のプロセッサ(いわゆる、画像処理エンジン)、YUV画像生成部等から構成される。ADCは、イメージセンサ114から出力されたアナログ電気信号を、デジタル信号に変換してバッファメモリに格納する。そして、画像処理エンジンが、バッファされたデジタル信号に基づいて、撮像画像を示すデジタルデータを生成する。YUV画像生成部は、生成されたデジタルデータをYUV(輝度信号(Y)、輝度信号と青色成分の差(U)及び輝度信号と赤色成分の差(V))画像等に変換する。また、画像処理部122は、撮像された被写体を含む画像の半透過画像を生成する。
【0024】
画像メモリ123は、RAMやフラッシュメモリ等の記憶装置から構成され、画像処理部122によって生成されたYUV画像や、制御部121によって処理される画像データ等を一時的に格納する。
【0025】
記憶部124は、ROM(Read Only Memory)やフラッシュメモリ等の記憶装置から構成され、デジタルカメラ100の動作に必要なプログラムやデータ等が格納される。本実施形態では、制御部121が動作するためのプログラムや、処理に必要な閾値、単一色背景画像等のデータが格納されている。
【0026】
外部記憶部125は、SDカード等のデジタルカメラ100に着脱可能な記憶装置から構成される。デジタルカメラ100で撮像した画像等が、外部記憶部125に格納される。
【0027】
インターフェース部130は、デジタルカメラ100と、その使用者または外部装置とのインターフェースに係る構成であり、表示部132と、外部インターフェース部134と、操作部136と、から構成される。
【0028】
表示部132は、液晶表示画面等から構成され、デジタルカメラ100を操作するために必要な各種画面や、モニタ時のライブビュー画像、撮像された撮像画像、等を表示出力する。本実施形態では、デジタルカメラ100の使用者が、操作部136を操作し、この操作に応じて撮像画像等の表示出力が行われる。
【0029】
外部インターフェース部134は、USB(Universal Serial Bus)コネクタやビデオ出力端子等から構成され、ケーブル等を介して、外部のコンピュータ装置への撮像画像の出力や、外部のモニタへの撮像画像の表示出力等を行う。
【0030】
操作部136は、デジタルカメラ100の外面上に構成されている各種ボタン等によって構成される。操作部136は、デジタルカメラ100の使用者による操作に応じた入力信号を生成して、制御部121に入力する。操作部136を構成するボタンは、例えば撮影動作を指示するためのシャッタボタンや、デジタルカメラ100のもつ動作モードを指定するためのモードボタン、各種設定を行うための機能ボタン等である。
【0031】
本実施形態では、制御部121が、記憶部124に格納されているプログラムを実行することで、画像中の焦点の合っている部分(被写体)を抽出する処理が実現される。この場合に制御部121によって実現される機能を、図2を参照して説明する。
【0032】
制御部121は、動作モード処理部210、撮像制御部211、画像位置合わせ処理部212、背景低分散用αマップ作成部213、背景高分散用αマップ作成部214、画素分散度マップ作成部215、差分抽出マップ生成部216、合成画像生成部217、出力処理部218、等として機能する。
【0033】
動作モード処理部210は、表示部132との協働により、デジタルカメラ100の使用者にデジタルカメラ100が有する各種動作モードを指定させるための画面表示や、指定された動作モードごとの設定画面表示等を行う。また、動作モード処理部210は、操作部136との協働により、使用者が指定した動作モードを判別し、当該動作モードの実行に必要なプログラムやデータ等を記憶部124から読み出す。さらに、動作モード処理部210は、画像処理部122で生成された半透過の画像を取得し、デジタルカメラ100の使用者が背景のみの画像を撮像する際の基準画像として表示部132に表示する。
【0034】
本実施形態では、画像中の焦点の合っている部分(被写体)を抽出する機能に係る動作モード(被写体切り抜きモード)が使用者によって指定されているものとする。そして、以下に説明する制御部121の各機能構成は、被写体切り抜きモードの指定に応じて、動作モード処理部210が読み出したプログラムを実行することで実現される機能構成である。
【0035】
撮像制御部211は、操作部136からの入力に応じて撮像部110を制御することで撮像動作を実行させる。本実施形態では、図4(A)及び(B)に示すような、焦点の合っている部分(被写体)と焦点の合っていない部分(背景)とを含む画像Aと、画像Aの被写体を除く部分、つまり背景のみの画像Bとが、使用者により撮像される。撮像された画像は、図2に示す画像処理部122による処理を経て、画像メモリ123に格納される。
【0036】
画像位置合わせ処理部212は、画像メモリ123に格納された、被写体を含む画像A及び背景のみの画像Bを読み込む。そして画像位置合わせ処理部212は、2画像間の特徴点の位置が同じになるように、一方の画像を射影変換し、位置ずれを補正する。本実施形態では、被写体を含む画像を射影変換する。続いて画像位置合わせ処理部212は、位置を合わせた画像A、Bを、制御部121内の主記憶装置(メモリ)に格納する。
【0037】
背景低分散用αマップ作成部213は、画像位置合わせ処理部212で位置が合わせされた被写体を含む画像(画像A)と、背景のみの画像(画像B)とを主記憶装置から読み込む。そして、両画像の各画素について、対応する画素同士の色成分(Y、U、V)の差分絶対値和をとり、差分評価マップ(画像C)を作成する(詳細については後述する)。その後、後述の処理により、背景低分散用αマップ(画像D)を生成する。
【0038】
背景高分散用αマップ作成部214は、画像位置合わせ処理部212で位置が合わせされた被写体を含む画像(画像A)と、背景のみの画像(画像B)とを主記憶装置から読み込む。そして、両画像の各画素について、対応する画素同士の色成分(Y、U、V)の差分二乗和をとり、差分評価マップ(画像E)を作成する(詳細については後述する)。その後、後述の処理により、背景高分散用αマップ(画像F)を生成する。
【0039】
画素分散度マップ作成部215は、主記憶装置に格納された背景のみの画像(画像B)を読み込み、この画像の各画素に対して、その画素を中心とする小ブロックの画像中の分散を求める。そして、求めた分散値をその画素の画素値とする画素分散度マップ(画像X)を生成する。本実施形態では、画像Bの各画素に対して、その画素を中心とする5×5画素のブロックについて画素値の分散を求め、求めた分散値をその画素の画素値として画像Xを生成する。
【0040】
差分抽出マップ生成部216は、背景低分散用αマップ作成部213で生成した画像Dと、背景高分散用αマップ作成部214で生成した画像Fとを、画素分散度マップ作成部215で生成した画像Xに基づいて合成し、被写体抽出に用いる差分抽出マップを生成する(詳細は後述する)。そして、差分抽出マップ生成部216は、生成した差分抽出マップの合成境界を目立たなくするようにローパスフィルタを施し、マスク画像である最終差分抽出マップ(画像Z)を生成する。
【0041】
合成画像生成部217は、差分抽出マップ生成部216で生成した画像Zをマスク画像として、主記憶装置に格納されている被写体を含む画像(画像A)に対してマスク処理を施し、被写体部分を抽出する。そして、合成画像生成部217は、抽出した被写体部分を、デジタルカメラ100の使用者が選択した単一色背景画像と合成して、合成画像(画像P)を生成する。
【0042】
出力処理部218は、操作部136からの入力信号に基づき、合成画像生成部217で生成した画像Pや差分抽出マップ生成部216で生成した画像Zを、表示部132や外部記憶部125へ出力する。また、出力処理部218は、操作部136からの入力信号に基づき、画像Pや画像Zを、外部インターフェース部134を介して外部装置等へ出力する。
【0043】
以上が、被写体切り抜きモードの動作時に制御部121によって実現される機能である。
【0044】
このような構成のデジタルカメラ100による動作を以下に説明する。ここでは、上述した被写体切り抜きモードで撮像を行う際のデジタルカメラ100の動作を説明する。被写体切り抜きモードが選択された際に、デジタルカメラ100で実行される被写体抽出処理を、図3に示すフローチャートを用いて説明する。この被写体抽出処理は、デジタルカメラ100の使用者が操作部136のモードボタンを操作して被写体切り抜きモードが選択されることを契機に、記憶部124からプログラムが読み込まれて開始される。このとき、被写体抽出処理に必要な閾値等のデータもプログラムとともに読み込まれる。読み込んだデータ等は、制御部121内の主記憶装置に格納される。
【0045】
処理が開始されると、動作モード処理部210が、被写体抽出処理における設定画面を生成して表示部132に表示する(ステップS100)。ここでは、デジタルカメラ100の使用者に、抽出した被写体を合成する単一色背景画像を、選択させるための画面等が表示される。
【0046】
続いて動作モード処理部210は、切り抜きたい被写体を含む画像を撮像するよう、デジタルカメラ100の使用者に促すメッセージを、ライブビュー画像ともに表示部132に表示する(ステップS101)。
【0047】
デジタルカメラ100の使用者は、操作部136に含まれるシャッタボタンを押下する。この場合、シャッタボタンの押下に応じた信号が、操作部136から制御部121に入力されると、撮像制御部211は、シャッタボタンが押下されたと判別する。
【0048】
シャッタボタンが押下されたと判別すると、撮像制御部211は、撮像部110の各部を制御して図4(A)に示すような、抽出する被写体を含む画像Aを撮像する(ステップS102)。
【0049】
使用者がシャッタ操作を終了すると、撮像制御部211が撮像動作の終了を撮像部110に指示する。これにより、撮像動作が終了し、撮像された画像が、画像処理部122での処理を経て画像メモリ123に格納される(ステップS103)。ここで、画像処理部122は、撮像された被写体を含む画像の半透過画像Gを生成する。
【0050】
続いて、動作モード処理部210は、画像処理部122で生成された半透過画像Gと、ライブビュー画像とを表示部132に重畳表示する(ステップS104)。そして、動作モード処理部210は、表示した半透過画像と重なるように背景のみの画像を撮像するよう、デジタルカメラ100の使用者に促すメッセージを表示部132に表示する(ステップS105)。
【0051】
デジタルカメラ100の使用者は、ライブビュー画像と半透過画像の背景部分が重なったところで、操作部136に含まれるシャッタボタンを押下する。シャッタボタンが押下されたと判別すると、撮像制御部211は、撮像部110の各部を制御して、図4(B)に示すような、背景のみの画像Bを撮像する(ステップS106)。
【0052】
撮像された画像は、画像処理部122での処理を経て画像メモリ123に格納される(ステップS107)。
【0053】
次に、画像位置合わせ処理部212が、画像メモリ123に格納された、被写体を含む画像Aと、背景のみの画像Bとを読み込み、2画像間の特徴点の位置が同じになるように、被写体を含む画像を射影変換して位置ずれを補正する(ステップS108)。そして、制御部121の主記憶装置に両画像が格納される。
【0054】
続いて、背景低分散用αマップ作成部213は、主記憶装置に格納された画像を用いて、背景低分散用αマップを作成する(ステップS200)。この動作を、図5を参照して説明する。
【0055】
背景低分散用αマップ作成部213は、画像位置合わせ処理部212が主記憶装置に格納した被写体を含む画像(画像A)と、背景のみの画像(画像B)とを読み込み、画像Aと画像Bとの各画素につき、下式(1)のように、色成分の差分絶対値和を求め、差分評価マップ(画像C)を作成する(ステップS201)。
【0056】
【数1】

ここで、配列C[x,y]は、差分評価マップの座標(x,y)における画素値を表す。また、T∈{Y,U,V}は、色成分を表す添字とし、A[x,y]及びB[x,y]は、画像A及び画像Bの座標(x,y)における各色成分を表す。
【0057】
次に、背景低分散用αマップ作成部213は、作成した画像Cの各画素値を横軸、各画素値に対する画素の出現数を縦軸にとるヒストグラムを作成して閾値Thを求め、求めた閾値Thと画像Cとの各画素の画素値(輝度)を比較して二値化する(ステップS202)。閾値Thは、作成したヒストグラムを、図6に示すように、被写体部分と背景部分とを表す2つの正規分布関数の線形結合のモデルに近似し、その2つの正規分布関数の交点とする。
【0058】
図5に戻り、背景低分散用αマップ作成部213は、二値化した画像Cに対し、クロージング及びオープニングを行い、ノイズ成分を除去する(ステップS203)。
【0059】
次に、背景低分散用αマップ作成部213は、ノイズ成分を除去した画像について、同じ画素値の画素が連続している領域には同じ番号を振り、離れている領域には別の番号を振るラベリング処理を行う。そして、ラベリングした領域のうち、最大面積を有する領域を、背景低分散用αマップ(画像D)として取得する(ステップS204)。
【0060】
以上の動作により、背景低分散用αマップ作成部213は、背景低分散用αマップ(画像D)を生成し、生成した画像Dを、制御部121内の主記憶装置に格納し、図3の背景低分散用αマップ
作成処理(ステップS200)を終了する。
【0061】
背景高分散用αマップ作成部214は、画像位置合わせ処理部212が主記憶装置に格納した被写体を含む画像(画像A)と、背景のみの画像(画像B)とを読み込み、背景高分散用αマップを作成する(ステップS300)。この動作を、図7を参照して説明する。
【0062】
背景高分散用αマップ作成部214は、画像位置合わせ処理部212が位置合わせを行い、主記憶装置に格納した、被写体を含む画像(画像A)と、背景のみの画像(画像B)とを読み込み、画像Aと画像Bとの各画素につき、下式(2)のように、色成分の差分二乗和を求め、差分評価マップ(画像E)を作成する(ステップS301)。
【0063】
【数2】

ここで、配列E[x,y]は、差分評価マップの座標(x,y)における画素値を表す。また、T∈{Y,U,V}は、色成分を表す添字とし、A[x,y]及びB[x,y]は、画像A及び画像Bの座標(x,y)における各色成分を表す。
【0064】
そして、背景高分散用αマップ作成部214は、背景低分散用αマップ作成処理のステップS202の処理と同様に、作成した画像Eの各画素値を横軸、各画素値に対する画素の出現数を縦軸にとるヒストグラムを作成して閾値を求め、求められた閾値を基準に、画像Eを二値化する(ステップS302)。
【0065】
次に、背景高分散用αマップ作成部214は、背景低分散用αマップ作成処理のステップS203とステップS204の処理と同様に、二値化した画像Eに対しクロージング及びオープニングを行うことでノイズ成分を除去し(ステップS303)、続いてラベリング処理により背景高分散用αマップ(画像F)を作成する(ステップS304)。
【0066】
以上の動作により、背景高分散用αマップ作成部214は、背景高分散用αマップ(画像F)を生成し、生成した画像Fを、制御部121内の主記憶装置に格納し、図3の背景高分散用αマップ作成処理(ステップS300)を終了する。
【0067】
図3に戻り、画素分散度マップ作成部215は、画像位置合わせ処理部212が主記憶装置に格納した背景のみの画像(画像B)を読み込み、画像Bの各画素に対して、各画素を中心とした5×5画素のブロックにおける分散値を求める。そして、求めた分散値をその画素の画素値とする画素分散度マップ(画像X)を生成する(ステップS109)。
【0068】
画像Xを生成する処理について、具体的に説明する。図8に示すように、M×N画素の画像Bにおける座標(i,j)の画素値をf(i,j)とすると、座標(p,q)を中心とした5×5画素のブロックにおける、平均値μ及び分散値σは、下式(3)及び(4)により求めることができる。
【0069】
【数3】

【0070】
【数4】

【0071】
画素分散度マップ作成部215は、p及びqの値をそれぞれインクリメントさせ、画像Bの各座標(各画素)につき、分散σの値を求め、求めた分散σ値を座標(p、q)の画素値とする画像Xを生成する。
【0072】
次に、図3に示すように、差分抽出マップ生成部216は、背景低分散用αマップ作成部213で生成した画像Dと、背景高分散用αマップ作成部214で生成した画像Fとを、画素分散度マップ作成部215で生成した画像Xに基づいて合成し、被写体抽出に用いる差分抽出マップを生成する(ステップS110)。
【0073】
具体的には、差分抽出マップ生成部216は、画素分散度マップ作成部215で生成した画像Xの各画素について、画素値と、被写体抽出処理を開始した際に記憶部124から読み込んだ閾値とを比較する。そして、画素値が閾値未満である場合には、画像Dの画素値をその画素の画素値として採用し、画素値が閾値以上である場合には、画像Fの画素値をその画素の画素値として採用し、各画素の画素値を構成する差分抽出マップを生成する。
【0074】
画像Xの画素値が閾値未満であることは、背景画像(画像B)の分散が小さい、つまり画像Bにおけるその画素周辺の色のばらつきが少ないことを表す。これに対し、画素値が閾値以上であることは、背景画像(画像B)の分散が大きい、つまり画像Bのその画素周辺の色のばらつきが多いことを表す。
【0075】
画像Xの画素値が閾値未満である場合(画像Bの分散が低い場合)に、画像Dの画素値を採用する理由について説明する。画像Bの分散が低い場合には、画像Aと画像Bとの位置合わせずれがあったとしても、色のばらつきが少ないため、両画像の背景箇所同士の差分は零に近い値となる。したがって、図6における被写体部分と背景部分とを示す2つの正規分布関数の分離度が、画像Bの分散が高い場合と比較して大きくなるため、背景と被写体とを明確に分離しつつ、輪郭のトレース性をよくすることができる。このため、画像Bの分散が低い場合は、画像Dの画素値を採用する。
【0076】
次に、画像Xの画素値が閾値以上である場合(画像Bの分散が高い場合)に、画像Fの画素値を採用する理由について説明する。画像Bの分散が高い場合には、画像Aと画像Bとの位置合わせずれがあった場合に、色のばらつきが多いことから、両画像の背景箇所同士の差分は、様々な差分値として現れてしまう。したがって、図6における被写体部分と背景部分とを示す2つの正規分布関数の分離度が画像Bの分散が低い場合と比較して小さくなる。このため、背景と被写体とを精度よく分離することができない。そこで、輪郭のトレース性をよくすることよりも、背景と被写体の分離性をよくすることに重点を置き、差分二乗和によって分離性を強化した画像Fを採用する。
【0077】
図3における動作の説明に戻る。ステップS110で差分抽出マップを生成後、差分抽出マップ
生成部216は、生成した差分抽出マップの合成境界を目立たなくするため、ローパスフィルタを施し、最終差分抽出マップ(画像Z)を生成する(ステップS111)。
【0078】
合成画像生成部217は、生成した画像Zをマスク画像として、画像位置合わせ処理部212が主記憶装置に格納した被写体を含む画像(画像A)に対してマスク処理を施し、被写体部分を抽出する(ステップS112)。
【0079】
次に合成画像生成部217は、抽出した被写体を、デジタルカメラ100の使用者が選択した単一色背景画像と合成し、図9に示すような合成画像(画像P)を生成する(ステップS113)。
【0080】
図3に戻り、画像Pを生成すると、合成画像生成部217は、その旨を出力処理部218に通知する。この場合、出力処理部218は、所定の出力確認画面を生成して表示部132に表示する(ステップS114)。
【0081】
具体的には、出力処理部218は、生成した画像Pとともに、画像Pや画像Zの出力方法をデジタルカメラ100の使用者に選択させる画面を生成して、表示部132に表示する。出力方法としては、SDカード(外部記憶装置126)への出力や、外部インターフェース部134を介した外部装置への出力等がある。出力処理部218は、これらの出力方法を選択可能に表示する。
【0082】
デジタルカメラ100の使用者は、操作部136を操作し、所望する出力方法を選択する。出力処理部218は、使用者によって選択された出力方法に応じて、画像Pや画像Zを出力し(ステップS115)、処理を終了する。
【0083】
以上説明したように、本実施形態に係る被写体切り抜きモードが実行されると、制御部121は、被写体を含む画像(画像A)と背景のみの画像(画像B)との差分画像(画像D)と、画像Aと画像Bとの差分二乗画像(画像F)とを、画像Bの分散値に基づいて合成することでマスク画像を生成する。そして、制御部121は、画像Aに対しマスク処理を施すことにより被写体を抽出する。
【0084】
これにより、背景画像の各画素の特性に応じて被写体を抽出することができ、ロバスト性を維持しつつ、輪郭線のトレース性を向上させることができる。
【0085】
また、以上のような画像処理機能を備えた撮像装置は、撮像を行ったその場で、上述したように被写体を抽出することができる。
【0086】
(変形例)
この発明は、上記の実施形態に限定されず、種々の変形及び応用が可能である。上記実施形態では、本発明をデジタルスチルカメラに適用した場合を例示したが、上記実施形態における制御部121に係る構成や機能を実現することができるものであれば、デジタルスチルカメラに限られるものではなく、携帯電話や、デジタルビデオカメラ等であってもよい。
【0087】
また、本発明に係る画像処理装置として必要な構成や機能を予め備えている装置として実現できることはもとより、例えば、パーソナルコンピュータ等の汎用装置によって実現することもできる。すなわち、上記実施形態における制御部121によって実現される機能と同様の機能を、当該装置を制御するコンピュータ等にプログラムを適用することで実現させ、当該コンピュータが上記各処理と同様の処理を実行することで、上記実施形態と同様の効果を得ることができる。
【0088】
上記実施形態では、被写体を含む画像(画像A)と、背景のみの画像(画像B)とを、撮像することにより取得する例を示したが、必ずしもこれに限定されない。例えば、画像Aと画像Bとが予め記憶されている等、撮像する以外の手法により得られるのであれば、画像Aと画像Bとを撮像する必要はない。これに加えて、制御部121における撮像制御部211の構成を備えていなくてもよい。撮像制御部211は、撮像部110を制御して、撮像により画像Aと画像Bとを取得する。このため、画像Aと画像Bとを、撮像する以外の手法で取得することができるのであれば、この構成がなくとも同様の効果を得ることができる。
【0089】
また、上記実施形態では、被写体を含む画像(画像A)と、被写体を含まない背景のみの画像(画像B)とが静止画である例を示したが、これは一例である。画像Aと画像Bは、動画像であってもよい。
【0090】
また、本発明を上記実施形態で例示したデジタルカメラ100のような撮像装置で実現する場合においては、本発明に係る構成や機能を予め備えた撮像装置として提供できる他、制御部121の各機能と同様の機能を実現するプログラムを適用することにより、既存の撮像装置を本発明に係る撮像装置として機能させることもできる。
【0091】
本発明に係るプログラムを適用する方法は任意であり、例えば、コンピュータが読取可能な記録媒体(CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical disc)等)に格納して適用できる他、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより適用することもできる。
【0092】
上記実施形態では、画素分散度マップ作成部215において、背景のみの画像(画像B)の各画素に対して、各画素を中心とした5×5画素のブロックにおける分散値を求める例を示したが、必ずしもこれに限定されない。分散値を求めるためのブロックの大きさは任意であり、例えば、3×3画素、9×9画素のブロックの分散値でもよい。
【0093】
また、上記実施形態では、画素分散度マップ作成部215において、分散値を、画素値とする画素分散度マップを生成する例を示したが、必ずしもこれに限定されない。背景のみの画像(画像B)における色成分のばらつきの程度を示すことができれば、分散値でなくてもよく、例えば、周囲の画素における各画素値との差の絶対値の平均値を画素値としてもよい。
【0094】
上記実施形態では、差分抽出マップ生成部216において差分抽出マップを生成する場合に、背景低分散用αマップ作成部213で生成した画像Dと、背景高分散用αマップ作成部214で生成した画像Fとのどちらか一方の画像の画素値を、採用する例、つまり画素ごとに画像Dの画素値と画像Fの画素値とのどちらかの画素値を採用し、これを各画素に対して行うことで、差分抽出マップを生成する例を示したが、これは一例である。画素分散度マップの各画素値と主記憶装置に格納されている閾値との比較結果に基づいて、一画素内において、画像Dの画素値と画像Fの画素値とを所定の割合で組み合わせ、組み合わせた画素値を差分抽出マップの画素の画素値とすることもできる。
【0095】
例えば、画素値が閾値未満の場合には、画像Dの画素値と、画像Fの画素値とを、6:4で組み合わせ、画素値が閾値以上の場合には、画像Dの画素値と、画像Fの画素値とを、4:6で組み合わせ、その画素値を差分抽出マップの画素の画素値としてもよい。
【0096】
また、組み合わせる割合は、画素値が閾値未満の場合には、画像Dの画素値の割合が、画像Fの画素値の割合よりも大きく、画素値が閾値以上の場合には、画像Fの画素値の割合が画像Dの画素値の割合よりも大きくなれば任意でよく、画素値が閾値未満の場合には、画像Dの画素値と、画像Fの画素値とを、7:3又は8:2の割合で組み合わせ、画素値が閾値以上の場合には、画像Dの画素値と、画像Fの画素値とを、3:7又は2:8の割合で組み合わせてもよい。
【0097】
さらに、組み合わせる画像D及び画像Fの画素値の割合は、画素値と閾値との差の絶対値に応じて段階的に変動させてもよい。例えば、画素値と閾値との差の絶対値が1〜5の範囲内で、画素値が閾値未満の場合は、画像Dの画素値と、画像Fの画素値とを、6:4の割合で組み合わせ、画素値が閾値以上の場合は、画像Dの画素値と、画像Fの画素値とを、4:6の割合で組み合わせてもよい。そして、画素値と閾値との差の絶対値が6〜10の範囲内で、画素値が閾値未満の場合は、画像Dの画素値と、画像Fの画素値とを、7:3の割合で組み合わせ、画素値が閾値以上の場合は、画像Dの画素値と、画像Fの画素値とを、3:7の割合で組み合わせてもよい。
【0098】
また、組み合わせる画像D及び画像Fの割合は、予め複数のパターンを設定して記憶部124へ記憶しておき、図3のステップS100にてデジタルカメラ100の使用者に選択させるようにしてもよい。例えば、組み合わせる割合をいくつかのパターンに分けて記憶部124に記憶しておき、動作モード処理部210が、図3のステップS100の処理を実行することで記憶部124から組み合わせる割合のパターンを読み込んで表示し、デジタルカメラ100の使用者に選択させるようにしてもよい。デジタルカメラ100の使用者の選択に応じて、動作モード処理部210が主記憶装置へ対応する組み合わせの割合を格納する。差分抽出マップ生成部216は、主記憶装置からこの組み合わせを読み込んで、画像D及び画像Fを組み合わせ、差分抽出マップを生成する。
【0099】
ここで、画像Dと画像Fとは二値画像であることから、両画像の画素値を所定の割合で組み合わせると、画素値が0若しくは1でない画素が生じる。この場合、例えば、四捨五入して0若しくは1になるように調整してもよいし、閾値を用いて0若しくは1になるように調整してもよい。
【0100】
この構成によれば、より精密なマスク画像を生成することが可能となり、より高精度に被写体を抽出することができる。
【0101】
また、上記実施形態では、差分抽出マップを生成する場合に使用する閾値の数が1つである例を示したが、これは一例である。閾値は複数あってもよく、また、いくつかのパターンに分けて設定しておき、デジタルカメラ100の使用者に選択させるようにしてもよい。
【0102】
例えば、画像Bを複数のブロックに分割し、ブロックごとの閾値を設定し、いくつかのパターンに分けて記憶部124に記憶しておいてもよい。この場合、図3のステップS100において、動作モード処理部210が画像Bの分割パターンを表示し、デジタルカメラ100の使用者に選択させる。動作モード処理部210は、デジタルカメラ100の使用者によるいずれかの分割パターンの選択に応じて、その分割パターンに対応するブロックごとの閾値を記憶部124から読み込み、主記憶装置に記憶する。差分抽出マップ生成部216は、主記憶装置からブロックごとの閾値を読み込み、画素値と、その画素が属するブロックに対応する閾値とを比較することにより、差分抽出マップを生成する。
【0103】
この構成によれば、より精密なマスク画像を生成することが可能となる。したがって、より高精度に被写体を抽出することができる。
【0104】
上記実施形態では、差分抽出マップ生成部216において、ラベリングやクロージング及びオープニングがなされた背景低分散用αマップと背景高分散用αマップとを、合成する例を示したが、必ずしもこれに限定されない。ラベリングや、クロージング及びオープニング等の処理がなされていないままこれらの画像を合成してもよい。
【符号の説明】
【0105】
100・・・デジタルカメラ、110・・・撮像部、112・・・光学装置、114・・・イメージセンサ、120・・・データ処理部、121・・・制御部、122・・・画像処理部、123・・・画像メモリ、124・・・記憶部、125・・・外部記憶部、130・・・インターフェース部、132・・・表示部、134・・・外部インターフェース部、136・・・操作部、210・・・動作モード処理部、211・・・撮像制御部、212・・・画像位置合わせ処理部、213・・・背景低分散用αマップ作成部、214・・・背景高分散用αマップ作成部、215・・・画素分散度マップ作成部、216・・・差分抽出マップ生成部、217・・・合成画像生成部、218・・・出力処理部

【特許請求の範囲】
【請求項1】
被写体と背景とが撮像された第1画像と、前記第1画像の背景のみが撮像された第2画像と、を取得する画像取得手段と、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成手段と、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成手段と、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成手段と、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成手段と、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた合成画像を生成する二値画像合成手段と、
前記第1画像に対して前記二値画像合成手段で生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
前記二値画像合成手段は、
前記統計画像生成手段で生成した統計画像の各画素について、その画素値と、予め記憶されている閾値とを比較し、前記画素値が前記閾値未満である場合は、前記第1の二値画像の画素値の割合を前記第2の二値画像の画素値の割合よりも大きくし、前記画素値が前記閾値以上である場合は、前記第2の二値画像の画素値の割合を前記第1の二値画像の画素値の割合よりも大きくして、一の画素中で前記第1の二値画像の画素値と前記第2の二値画像の画素値とを組み合わせ、前記合成画像を生成する、
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記二値画像合成手段は、
前記統計画像生成手段で生成した統計画像の各画素について、その画素値と、予め記憶されている閾値とを比較し、前記画素値が前記閾値未満である場合は、前記第1の二値画像の画素値を当該画素の画素値とし、前記画素値が前記閾値以上である場合は、前記第2の二値画像の画素値を当該画素の画素値とすることにより、画素単位で前記第1の二値画像と前記第2の二値画像とを合成する、
ことを特徴とする請求項1又は2に記載の画像処理装置。
【請求項4】
前記第2画像を複数のブロックに分割し、ブロックごとの閾値を取得する閾値取得手段をさらに備え、
前記二値画像合成手段は、
前記統計画像生成手段で生成した統計画像の各画素の画素値と、その画素が含まれるブロックに対応する、前記閾値取得手段で取得した閾値と、を比較する、
ことを特徴とする請求項2又は3に記載の画像処理装置。
【請求項5】
前記統計画像生成手段は、
前記第2画像の各画素について、その画素を含むブロック内の画素値に対する分散値を求め、当該分散値をその画素の画素値とする統計画像を生成する、
ことを特徴とする請求項1乃至4のいずれか一項に記載の画像処理装置。
【請求項6】
被写体と背景とを含む第1画像と、前記第1画像の被写体を除く画像である第2画像とを撮像により生成する撮像手段と、
前記撮像手段が生成した第1画像と第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成手段と、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成手段と、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成手段と、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成手段と、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた画像を生成する二値画像合成手段と、
前記第1画像に対して前記二値画像合成手段で生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出手段と、
を備えることを特徴とする撮像装置。
【請求項7】
画像処理装置の画像処理方法であって、
被写体と背景とが撮像された第1画像と、前記第1画像の背景のみが撮像された第2画像と、を取得する画像取得ステップと、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成ステップと、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成ステップと、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成ステップと、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成ステップと、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた合成画像を生成する二値画像合成ステップと、
前記第1画像に対して前記二値画像合成ステップで生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出ステップと、
を備えることを特徴とする画像処理方法。
【請求項8】
画像処理装置を制御するコンピュータを、
被写体と背景とが撮像された第1画像と、前記第1画像の背景のみが撮像された第2画像と、を取得する画像取得手段、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分絶対値の和を算出して差分画像を生成する差分画像生成手段、
前記第1画像と前記第2画像との対応する各画素について、画素値の差分の二乗和である差分二乗和値を算出して差分二乗画像を生成する差分二乗画像生成手段、
前記差分画像と前記差分二乗画像とに二値化処理を行い、前記差分画像に対応する第1の二値画像と、前記差分二乗画像に対応する第2の二値画像と、を生成する二値画像生成手段、
前記第2画像の各画素について、その画素を含むブロック内の画素値のばらつきの程度を示す統計値を求め、当該統計値をその画素の画素値とする統計画像を生成する統計画像生成手段、
前記統計画像の画素値に基づいて、前記第1の二値画像と前記第2の二値画像とを画素ごとに所定の割合で組み合わせた合成画像を生成する二値画像合成手段、
前記第1画像に対して前記二値画像合成手段で生成した合成画像によるマスク処理を施して、前記第1画像から抽出すべき対象を抽出する対象抽出手段、
として機能させることを特徴とするプログラム。

【図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


【公開番号】特開2012−64104(P2012−64104A)
【公開日】平成24年3月29日(2012.3.29)
【国際特許分類】
【出願番号】特願2010−209189(P2010−209189)
【出願日】平成22年9月17日(2010.9.17)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】