(57)【要約】【課題】処理時間を抑えて動画に対して分割フィルタ処理を適用できるようにする。【解決手段】処理対象の入力画像Ｎと入力画像Ｎから時間的に連続する画像とを含む９枚の入力画像Ｎ−４〜Ｎ＋４を入力し、入力されたそれぞれの入力画像Ｎ−４〜Ｎ＋４に対してそれぞれフィルタ係数ｋ０〜ｋ８によりフィルタ処理を行う。そして、フィルタ処理された中間画像からそれぞれフィルタ係数に応じた位置の画素を読み出して入力画像Ｎに対応する合成画像を生成する。そして、入力画像Ｎから主被写体を判別し、主被写体を入力画像Ｎから抽出し、前記合成画像に合成する。【選択図】図１
2015159375.tif 000002
【特許請求の範囲】
【請求項１】
処理対象の画像と前記処理対象の画像から時間的に連続する画像とを含む所定の枚数の入力画像を入力し、前記入力されたそれぞれの入力画像に対して前記所定の枚数分の異なるフィルタ係数によりそれぞれフィルタ処理を行う第１のフィルタ処理手段と、
前記第１のフィルタ処理手段によってフィルタ処理された前記所定の枚数の入力画像からそれぞれ前記フィルタ係数に応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成する合成手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記処理対象の画像から主被写体を判別する判別手段と、
前記判別手段によって判別された主被写体を前記処理対象の画像から抽出し、前記合成手段によって生成された合成画像に合成して出力画像を生成する生成手段とを有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
主被写体を含む被写体を撮像して前記処理対象の画像を生成する撮像手段と、
前記処理対象の画像に係る前記撮像手段による撮像が行われたときの前記画像処理装置の動きを検出する動き検出手段と、
をさらに有し、
前記合成手段は、前記フィルタ係数と前記動き検出手段によって検出された動きとに応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記処理対象の画像から動体を検出して前記動体の動きを検出する動体検出手段と、
前記フィルタ係数を選択する制御を行うフィルタ係数制御手段と、
をさらに有し、
前記フィルタ係数制御手段は、前記動体検出手段によって検出された動体に含まれる画素か否かに基づいて前記フィルタ係数を制御することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項５】
前記フィルタ係数制御手段は、前記第１のフィルタ処理手段によって適用される参照範囲の中心画素が動体であった場合は、前記動体の画素を参照するように前記フィルタ係数を制御し、中心画素が動体でない場合は、前記動体の画素を参照しないように前記フィルタ係数を制御するようにすることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記合成手段は、前記フィルタ係数と前記動体検出手段によって検出された動体の動きとに応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成することを特徴とする請求項４又は５に記載の画像処理装置。
【請求項７】
前記第１のフィルタ処理手段は、適用される参照範囲における前記動体の割合が所定値を超えた場合に、過去の処理結果を代用することを特徴とする請求項４〜６の何れか１項に記載の画像処理装置。
【請求項８】
前記処理対象の画像に対して着目画素を含むフィルタ係数によりフィルタ処理を行う第２のフィルタ処理手段をさらに有し、
前記第１のフィルタ処理手段は、前記第２のフィルタ処理手段で用いられていないフィルタ係数によりフィルタ処理を行い、
前記合成手段は、前記第１のフィルタ処理手段によってフィルタ処理された前記所定の枚数の入力画像と、前記第２のフィルタ処理手段によってフィルタ処理された処理対象の画像とからそれぞれ前記フィルタ係数に応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項９】
処理対象の画像と前記処理対象の画像から時間的に連続する画像とを含む所定の枚数の入力画像を入力し、前記入力されたそれぞれの入力画像に対して前記所定の枚数分の異なるフィルタ係数によりそれぞれフィルタ処理を行う第１のフィルタ処理工程と、
前記第１のフィルタ処理工程においてフィルタ処理された前記所定の枚数の入力画像からそれぞれ前記フィルタ係数に応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成する合成工程と、
を有することを特徴とする画像処理方法。
【請求項１０】
処理対象の画像と前記処理対象の画像から時間的に連続する画像とを含む所定の枚数の入力画像を入力し、前記入力されたそれぞれの入力画像に対して前記所定の枚数分の異なるフィルタ係数によりそれぞれフィルタ処理を行う第１のフィルタ処理工程と、
前記第１のフィルタ処理工程においてフィルタ処理された前記所定の枚数の入力画像からそれぞれ前記フィルタ係数に応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成する合成工程と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、特に、動画に対してフィルタ処理を行うために用いて好適な画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、被写界深度を浅くして撮影することによって背景だけをぼかし、被写体をより目立たせる撮影方法がある。ここで、被写界深度は、Ｆ値を小さくしたり、焦点距離を長くしたり、撮影距離を近くしたりすることによって浅くすることができるが、従来の安価な撮像装置には、実際の焦点距離を長くすることができず、被写界深度を浅くしにくいものもある。そこで、画像中の主要部と背景とを分離し、フィルタ処理で背景をぼかして主要部と合成することによって同等の効果を得ることができる撮像装置が知られている（例えば特許文献１参照）。
【０００３】
また、主要部と背景との距離に応じてぼかし量を変える技術も提案されている。この場合、主要部と背景との距離が近い場合にはぼかし量は少なくて済むので、フィルタの回路規模は比較的小さくて済む。ところが、主要部と背景との距離が遠い場合にはぼかし量を多くしなければならないので、回路規模の大きいフィルタが必要になってしまう。そこで、回路規模を大きくせずにぼかし量が多い効果を得る技術の一つに、フィルタの畳みこみ演算を時分割する（以下、分割フィルタ処理と呼ぶ）ことが考えられる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１０−２３３９１９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら分割フィルタ処理では、１枚の画像に対してフィルタ係数を変えながら複数回フィルタ処理し、それらの結果を加算して所望のフィルタ処理がなされた画像を得る。このため、最終結果を得るまでの処理時間が長くなり、動画に対してフィルタ処理を行うと、莫大な時間がかかってしまう。
【０００６】
本発明は前述の問題点に鑑み、処理時間を抑えて動画に対して分割フィルタ処理を適用できるようにすることを目的としている。
【課題を解決するための手段】
【０００７】
本発明に係る画像処理装置は、処理対象の画像と前記処理対象の画像から時間的に連続する画像とを含む所定の枚数の入力画像を入力し、前記入力されたそれぞれの入力画像に対して前記所定の枚数分の異なるフィルタ係数によりそれぞれフィルタ処理を行う第１のフィルタ処理手段と、記第１のフィルタ処理手段によってフィルタ処理された前記所定の枚数の入力画像からそれぞれ前記フィルタ係数に応じた位置の画素を抽出して前記処理対象の画像に対応する合成画像を生成する合成手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、処理時間を抑えて動画に対して分割フィルタ処理を適用することができる。
【図面の簡単な説明】
【０００９】
【図１】第１の実施形態に係る撮像装置の構成例を示すブロック図である。
【図２】第１の実施形態におけるフィルタ処理部及びフィルタ係数制御部の制御動作を説明するための図である。
【図３】手ブレ等によって被写体の画像上の位置がずれている例を説明するための図である。
【図４】第１の実施形態における合成処理手順の一例を示すフローチャートである。
【図５】第２の実施形態に係る撮像装置の構成例を示すブロック図である。
【図６】着目画素が動体領域内及び動体領域外である場合の中間画像の一例を示す図である。
【図７】動体の動きによって被写体の画像上の位置がずれている例を説明するための図である。
【図８】第２の実施形態における合成処理手順の一例を示すフローチャートである。
【図９】第３の実施形態に係る撮像装置の構成例を示すブロック図である。
【図１０】第３の実施形態における第１のフィルタ処理部、第２のフィルタ処理部及びフィルタ係数制御部の制御動作を説明するための図である。
【図１１】水平９タップ、垂直９タップの空間フィルタのフィルタ係数を説明するための図である。
【図１２】水平９タップ、垂直９タップの空間フィルタの参照範囲を説明するための図である。
【図１３】一般的な分割フィルタ処理の手順の一例を示すフローチャートである。
【図１４】分割フィルタ処理の加算動作を説明するための図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、図面を参照しながら説明する。
（第１の実施形態）
図１は、本実施形態に係る画像処理装置の一例である撮像装置１００の構成例を示すブロック図である。
図１において、光学系１０１はズームレンズ、フォーカスレンズ、及び絞りを含んでおり、システム制御部１１１により駆動される。現像処理部１０３は、撮像素子１０２からの画像信号を現像する。フィルタ処理部１０４は、現像された画像信号に対してフィルタ処理を施す。フィルタ係数制御部１０５は、フィルタ処理部１０４に出力するフィルタ係数を選択する制御を行う。
【００１１】
メモリ１０６は、フィルタ処理部１０４で処理された画像信号を保持する。動き検出部１０７は例えば角速度センサであり、角速度センサから動きを検出する。合成部１０８は、システム制御部１１１によって生成された動き情報に基づいて読み出す画素位置を制御するとともに、読み出した画素を合成する。主被写体判別部１０９は、画像信号から主被写体を判別し、主被写体情報を生成する。背景被写体合成部１１０は、主被写体判別部１０９で生成された主被写体情報に基づき、メモリ１０６に格納された画像信号と合成部１０８によって合成された画像信号とを合成する。システム制御部１１１は、撮像装置１００全体を制御する。
【００１２】
以下、上述のように構成された撮像装置１００による撮影動作について説明する。まず、光学系１０１は、システム制御部１１１からの制御信号により、絞りとレンズとを駆動して、適切な明るさに設定された被写体像を撮像素子１０２上に結像させる。撮像素子１０２は、システム制御部１１１により制御される駆動パルスで駆動され、被写体像を光電変換により電気信号に変換して画像信号として出力する。
【００１３】
現像処理部１０３は、撮像素子１０２からの画像信号を輝度・色差の信号に変換し、輝度・色差の画像信号をフィルタ処理部１０４に出力する。また、主被写体部分はフィルタ処理が不要であるため、さらに輝度・色差の画像信号をメモリ１０６に出力する。フィルタ処理部１０４は、フィルタ係数制御部１０５によって選択されたフィルタ係数に基づき、現像処理部１０３から入力された画像信号にフィルタ処理を施してメモリ１０６に出力する。
【００１４】
動き検出部１０７は、例えば角速度センサであって、撮像装置１００に加わったブレにより生じる角速度を検出する。そして、検出された角速度をシステム制御部１１１により撮像時間（入力画像）と関連付けて水平、垂直方向の動き情報に変換し、合成部１０８へ出力する。これにより入力画像と動き情報とを関連付ける。合成部１０８は、システム制御部１１１により生成された動き情報に基づき、メモリ１０６に格納された画像信号から読み出す画素位置を制御するとともに、読み出した画素を合成した合成画像を生成し、背景被写体合成部１１０へ出力する。
【００１５】
主被写体判別部１０９は、メモリ１０６に格納された画像信号から被写体を検出するとともに、画面の中央に近い位置であって、かつサイズが大きい被写体を主被写体と判別する。そして、主被写体のサイズ及び位置情報を含む主被写体情報を背景被写体合成部１１０へ出力する。背景被写体合成部１１０は、主被写体判別部１０９から入力された主被写体のサイズ及び位置情報に基づき、メモリ１０６に格納されているフィルタ処理がされていない画像信号と、合成部１０８によって合成された画像信号とを合成する。
【００１６】
合成部１０８によって合成された画像信号はフィルタ処理がなされており、この画像信号を背景として用いる。メモリ１０６に格納されたフィルタ処理がなされていない画像信号から主被写体を抽出し、合成部１０８によって合成された画像信号の同位置に合成することによって、背景がぼけ、被写体を目立たせた出力画像を生成することができる。
【００１７】
ここで、図１１〜図１４を参照しながら、水平９タップ、垂直９タップの空間フィルタの場合の一般的な分割フィルタ処理について説明する。
図１１は、水平９タップ、垂直９タップの空間フィルタのフィルタ係数を説明するための図である。
図１１において、ｋ０〜ｋ８は、フィルタ係数を水平、垂直３タップずつに分離した時のそれぞれの位置のフィルタ係数を示している。
【００１８】
図１２は、着目画素位置（ｉ，ｊ）における水平９タップ、垂直９タップの空間フィルタの参照範囲を説明するための図である。参照範囲の中心画素である着目画素は、例えば以下の式（１）に示すような演算を用いてフィルタ処理される。
【００１９】
【数１】
2015159375.tif 000003
【００２０】
ここで、ｉは画像の水平アドレス、ｊは画像の垂直アドレス、ａはフィルタ係数、Ｉは画素値を示し、ｐは、図１２に示すような着目画素位置（ｉ，ｊ）に対しフィルタ処理した結果となる。
【００２１】
次に、図１３及び図１４を参照しながら、畳み込み演算を水平３タップ、垂直３タップずつに分割した分割フィルタ処理について説明する。
図１３は、分割フィルタ処理の手順の一例を示すフローチャートである。
まず、図１３のＳ１３００において、変数ｎに０をセットしてＳ１３０１に進む。そして、Ｓ１３０１においては、中間画像ｐｎを求め、Ｓ１３０２に進む。ｎ＝０である場合には、例えば以下の式（２）を用いて中間画像ｐ０を求め、Ｓ１３０２へ進む。
【００２２】
【数２】
2015159375.tif 000004
【００２３】
ここで式（２）の演算は、画面全体に対して行われるものであり、すなわち中間画像ｐ０は、図１１における、左上のフィルタ係数ｋ０を用いて画面全体にフィルタ処理を行った画像信号ということになる。そして、Ｓ１３０２においては、中間画像ｐ０をメモリに保持し、Ｓ１３０３へ進む。
【００２４】
次にＳ１３０３においては、全分割数の演算が完了したかどうかを判定する。この判定の結果、全分割数の演算が完了していない場合はＳ１３０４へ進み、完了した場合はＳ１３０５へ進む。Ｓ１３０４においては、次の分割位置の演算に移るため、ｎにｎ＋１をセットし、Ｓ１３０１に戻る。なお、畳み込み演算を水平３タップ、垂直３タップずつに分割しているため、分割数としては９分割となる。そのため、ｎは０から８までインクリメントされていき、Ｓ１３０１では、それぞれ以下の式（３）〜式（１０）を用いて中間画像ｐｎを求め、メモリに保持する。
【００２５】
【数３】
2015159375.tif 000005
【００２６】
Ｓ１３０５においては、これまで計算した中間画像ｐ０〜ｐ８を加算して処理を終了する。ここで、中間画像の加算処理について説明する。
【００２７】
図１４は、分割フィルタ処理の加算動作を説明するための図である。
図１４において、位置（ｉ，ｊ）の斜線の画素が着目画素であり、領域１４００は着目画素に対して水平９タップ、垂直９タップの空間フィルタが参照する範囲を示す。また、領域１４０１は着目画素に対する中間画像上の参照位置を示す。また、図１４（ａ）〜図１４（ｉ）は、それぞれ中間画像ｐ０〜ｐ８を示す。
【００２８】
水平９タップ、垂直９タップの空間フィルタと同じ効果を得るためには、着目画素（ｉ，ｊ）に対し、中間画像ｐ０上からは座標（ｉ−３，ｊ−３）の位置を中心とした水平３タップ、垂直３タップの空間フィルタをかけた画素が必要である。同様に中間画像ｐ１〜ｐ８上からは、それぞれ座標（ｉ，ｊ−３）、（ｉ＋３，ｊ−３）、（ｉ−３，ｊ）、（ｉ，ｊ）、（ｉ＋３，ｊ）、（ｉ−３，ｊ＋３）、（ｉ，ｊ＋３）、（ｉ＋３，ｊ＋３）の位置の画素値を取得し、加算すれば良い。
【００２９】
以上のように、畳み込み演算を水平３タップ、垂直３タップずつに分割することによって回路規模が小さいまま水平９タップ、垂直９タップの空間フィルタをかけるのと同じ効果を得ることができる。
【００３０】
次に、図２〜図４を参照しながら、フィルタ処理部１０４、フィルタ係数制御部１０５、及び合成部１０８の制御動作について説明する。
【００３１】
図２は、フィルタ処理部１０４、及びフィルタ係数制御部１０５の制御動作を説明するための図である。
図２において、入力画像Ｎ−４、Ｎ−３、・・・、Ｎ＋５、Ｎ＋６は、それぞれ現像処理部１０３から入力される画像信号（フレーム）であり、Ｎ−４からＮ＋６へ向かって時間が経過する連続した画像である。フィルタ係数ｋ０、ｋ１、・・・、ｋ８は、図１１に示す入力画像の枚数分のそれぞれの位置のフィルタ係数を示す。
【００３２】
フィルタ処理後の中間画像ｐ０'は、入力画像Ｎ−４に対してフィルタ係数ｋ０によりフィルタ処理された画像である。同様に、中間画像ｐ１'、・・・、ｐ８'は、それぞれ入力画像Ｎ−３、・・・、Ｎ＋４に対してそれぞれフィルタ係数ｋ１・・・、ｋ８によりフィルタ処理された画像である。フィルタ係数がｋ８になった場合には、次のフレームに対してはフィルタ係数ｋ０によりフィルタ処理を行う。すなわち、フィルタ係数制御部１０５は、フレームごとに異なる位置のフィルタ係数を選択する。フィルタ処理部１０４は現像処理部１０３から入力された画像信号に対し、フィルタ係数制御部１０５によって選択されたフィルタ係数を用いてフィルタ処理を行う。フィルタ処理が実施された画像信号はメモリ１０６に保持される。
【００３３】
次に、図３及び図４を参照しながら合成部１０８の制御動作について説明する。メモリ１０６に格納されたフィルタ処理後の画像信号は、時間的に異なる画像であるため、手ブレ等によって互いに画面全体がずれた画像である可能性がある。図１３及び図１４に示すような分割フィルタ処理の加算動作では、同じ背景に対してフィルタ処理した結果を取得して加算しないと、異なる背景の成分が混じってしまう可能性がある。そこで本実施形態では、水平方向及び垂直方向の動き量より着目画素の移動先を算出し、移動先の着目画素との位置関係で取得する画素位置を決定する。
【００３４】
図３は、手ブレ等によって被写体の画像上の位置がずれている例を説明するための図である。図３（ａ）及び図３（ｂ）は、それぞれフィルタ処理された画像ｐ０'、ｐ１'を示している。なお、図３において、網掛けの部分が被写体を表している。図３に示す例では、図３（ｂ）に示す画像の方が時間的に後の画像であり、被写体は動いていないが手ブレ等によって、被写体の画像上の位置が右に２画素、下に２画素ずれてしまっていることを示している。被写体がずれてしまっているにも関わらず、図３（ｂ）に示すように画像上の決まった位置よりフィルタ処理した結果を取得してしまうと、異なる背景の成分が混じってしまう。そこで、図３（ｃ）に示すように、被写体のずれに合わせてフィルタ処理した結果の取得位置を変えることによって異なる背景の成分を混ぜずに所望の結果を得ることができる。
【００３５】
図４は、本実施形態における合成処理手順の一例を示すフローチャートである。
まず、図４のＳ４００において、システム制御部１１１は、変数ｎに０をセットしてＳ４０１に進む。次に、Ｓ４０１においては、フィルタ処理部１０４は、現像処理部１０３から処理対象となる画像信号を取得し、Ｓ４０２へ進む。そして、Ｓ４０２においては、フィルタ処理部１０４は、フィルタ係数制御部１０５によって図２に示したように選択されたフィルタ係数を用いてフィルタ処理を行う。変数ｎ＝０である場合には、例えば以下の式（１１）により中間画像ｐ０'を求め、Ｓ４０３へ進む。なお、以下の式（１１）は、前述した式（２）と同等の式であり、中間画像ｐ１'〜ｐ８'についても、それぞれ前述した式（３）〜式（１０）と同等の式を用いる。
【００３６】
【数４】
2015159375.tif 000006
【００３７】
次に、Ｓ４０３においては、中間画像ｐｎ'をメモリ１０６に格納し、Ｓ４０４へ進む。そして、Ｓ４０４においては、動き検出部１０７により、撮像装置１００に加わったブレにより生じる角速度を検出し、システム制御部１１１は、検出された角速度を変換して水平方向及び垂直方向の動き情報を取得し、Ｓ４０５へ進む。
【００３８】
続いてＳ４０５においては、合成部１０８は、メモリ１０６に保持されている中間画像ｐｎ'から、所定の位置の画素を読み出す。このとき、それぞれの中間画像の動き情報に基づいて被写体に追従した画素を読み出す。次のＳ４０６においては、合成部１０８は、Ｓ４０５で読み出した画素を、図１４を用いて説明したように加算してＳ４０７へ進む。Ｓ４０７においては、システム制御部１１１は、背景ぼかしの処理を終了するか否かを判定する。この判定の結果、背景ぼかしの処理を終了する場合には、中間画像ｐ０'〜ｐ８'を用いたぼかし処理を終了し、そうでない場合はＳ４０８へ進む。Ｓ４０８においては、システム制御部１１１は、ｎをインクリメントし、Ｓ４０１へ進む。
【００３９】
なお、図４に示した例では、処理対象である入力画像Ｎに対応する背景ぼかしの画像を生成する例について説明した。一方、例えば入力画像Ｎ＋１に対応する背景ぼかしの画像を生成する場合には、中間画像ｐ１'〜ｐ８'及び中間画像ｐ０"から読み出した画素を加算合成することにより入力画像Ｎ＋１に対応する背景ぼかしの画像を生成する。これにより、それぞれの入力画像に対応する背景ぼかしの画像を生成することができる。
【００４０】
以上説明したように本実施形態によれば、時間的に異なる画像に対し、フィルタ係数を変えながらフィルタ処理を実施するようにしたので、処理時間を抑えて動画に対して分割フィルタ処理を適用することができる。また、動き情報を用いて合成する画素を決定するようにしたので、手ブレ等により被写体の位置がずれている場合であっても、適切な画素を選択することができる。
【００４１】
（第２の実施形態）
以下、図５〜図８を参照しながら本実施形態について説明する。第１の実施形態と異なっている点は、動体検出部を設け、画面内の動体を検出するとともに、着目画素が動体領域内か動体領域外かによって制御を変える点である。
【００４２】
図５は、本実施形態に係る撮像装置５００の構成例を示すブロック図である。図１と比較して同一の構成については同一の番号を付しており、重複する構成の説明は省略する。以下、図１と異なる点について説明する。
図５において、動体検出部５１２は、現像処理部１０３から入力された画像信号とメモリ１０６に格納されている画像信号とのテンプレートマッチングによって動体を検出する。また、動体検出部５１２は、検出した動体の位置情報を生成し、フィルタ係数制御部１０５及び合成部１０８に出力する。
【００４３】
次に、図６〜図８を参照しながら、本実施形態におけるフィルタ係数制御部１０５、及び合成部１０８の制御動作を説明する。図６（ａ）は、着目画素が動体領域内である場合のフィルタ係数制御部１０５の制御動作を説明するための図であり、図６（ｂ）は、着目画素が動体領域外である場合のフィルタ係数制御部１０５の制御動作を説明するための図である。ここで、図６（ａ）と図６（ｂ）とでは、同じ画像（中間画像ｐ０'''）を表しており、着目画素が異なる関係であるものとする。
【００４４】
図６（ａ）において、網掛け部分は動体であり、着目画素は（ｉ，ｊ）の位置である。黒く塗りつぶされている部分は動体に含まれている。また、領域６００は着目画素に対し水平９タップ、垂直９タップの空間フィルタが参照する範囲を示し、領域６０１は着目画素に対する中間画像上の参照位置を示す。ここで、着目画素が動体領域内の場合には、動体領域外の成分が混ざらないようにすることが好ましい。そこで、中間画像を生成する時に動体の位置情報を参照し、フィルタ参照範囲内に動体領域外の画素が含まれていた場合には、フィルタ係数をゼロに置き換え、その画素を参照しないようにする。
【００４５】
一方、図６（ｂ）において、網掛け部分は動体であり、着目画素は（ｉ＋４，ｊ）の位置である。黒く塗りつぶされている部分は動体に含まれている。また、領域６００は着目画素に対し水平９タップ、垂直９タップの空間フィルタが参照する範囲を示し、領域６０１は着目画素に対する中間画像上の参照位置を示す。ここで、着目画素が動体領域外の場合には、動体の成分が混ざらないようにすることが好ましい。そこで、中間画像を生成する時に動体の位置情報を参照し、フィルタ参照範囲内に動体の画素が含まれていた場合には、フィルタ係数をゼロに置き換え、その画素を参照しないようにする。
【００４６】
図７は、合成部１０８の動体に対する読み出し制御を説明するための図である。図７（ａ）は中間画像ｐ０'''画像を示しており、図７（ｂ）は中間画像ｐ１'''を示している。また、網掛けの部分は動体を表しており、黒く塗りつぶされている画素は動体の画素である。図７（ａ）に示す画像よりも、図７（ｂ）の方が時間的に後の画像であり、動体が左に４画素（上下方向には変わらず）の位置に動いたことを示している。ここで、動体が移動しているにも関わらず、図７（ｂ）に示すように画像上の決まった位置のフィルタ処理した結果を取得してしまうと、異なる背景の成分が混じってしまう。そこで本実施形態では、図７（ｃ）に示すように、動体の移動に合わせてフィルタ処理した結果の取得位置を変えることによって異なる背景の成分を混ぜずに所望の結果を得るようにする。また、第１の実施形態と同様に、動き検出部１０７の検出結果も反映させる。
【００４７】
図８は、本実施形態における合成処理手順の一例を示すフローチャートである。
まず、図８のＳ８００において、システム制御部１１１は、変数ｎに０をセットしてＳ８０１に進む。次に、Ｓ８０１においては、フィルタ処理部１０４は、現像処理部１０３から画像信号を取得し、Ｓ８０２へ進む。
【００４８】
次に、Ｓ８０２において、動体検出部５１２は、前述したテンプレートマッチングによって動体を検出し、システム制御部１１１は、その動体の位置情報を取得する。そして、Ｓ８０３において、システム制御部１１１は、着目画素が動体領域内であるか否かを判定する。この判定の結果、着目画素が動体領域内である場合には、Ｓ８０４へ進み、動体領域外である場合にはＳ８０５へ進む。
【００４９】
Ｓ８０４においては、フィルタ係数制御部１０５は、着目画素が動体領域内であることから、動体領域外の成分が混ざらないように、動体画素以外の位置のフィルタ係数をゼロに置き換え、Ｓ８０６へ進む。一方、Ｓ８０５においては、フィルタ係数制御部１０５は、着目画素が動体領域外であることから、動体領域内の成分が混ざらないように、動体領域の画素の位置のフィルタ係数をゼロに置き換え、Ｓ８０６へ進む。
【００５０】
次に、Ｓ８０６においては、フィルタ処理部１０４は、フィルタ係数制御部１０５によって図２に示したように選択されたフィルタ係数を用いてフィルタ処理を行う。このとき、Ｓ８０４またはＳ８０５における設定を反映させる。変数ｎ＝０である場合には、例えば以下の式（１２）に示すような演算を用いて中間画像ｐ０'''を求め、Ｓ８０７へ進む。
【００５１】
【数５】
2015159375.tif 000007
【００５２】
ここで、ｂlmはａlmのうちフィルタ係数の一部または全部をゼロに置き換えたフィルタ係数を示す。また、中間画像ｐ１'''〜ｐ８'''を求める際にも、前述した式（３）〜式（１０）において、フィルタ係数ｂlmに置き換えた式を用いる。なお、着目画素の位置によってフィルタ係数の多くがゼロに置き換えられてしまう場合もある。この場合には、その位置の成分が少なくなり、重心がずれてしまう。そこで、動体の割合が所定値を超えた場合に、より過去の中間画像を保持しておき、その中間画像からその位置の成分を取得するように処理結果を代用してもよい。
【００５３】
次のＳ８０７においては、フィルタ処理部１０４は、中間画像ｐ０'''をメモリ１０６に格納し、Ｓ８０８へ進む。Ｓ８０８においては、合成部１０８は、メモリ１０６に保持されている中間画像ｐｎ'''から所定の位置の画素を読み出す。このとき、動体検出部５１２にて生成した動体の位置情報に基づいて動体に追従した画素を読み出す。次のＳ８０９においては、合成部１０８は、Ｓ８０８で読み出した画素を、図１４を用いて説明したように加算し、Ｓ８１０へ進む。
【００５４】
続いてＳ８１０において、システム制御部１１１は、背景ぼかしの処理を終了するか否かを判定する。この判定の結果、背景ぼかしの処理を終了する場合には、中間画像ｐ０'''〜ｐ８'''を用いたぼかし処理を終了し、そうでない場合はＳ８１１へ進む。Ｓ８１１においては、システム制御部１１１は、ｎをインクリメントし、Ｓ８０１に戻る。なお、背景被写体合成部１１０による合成処理については第１の実施形態と同様である。
【００５５】
以上のように本実施形態によれば、さらに動体を考慮してフィルタ係数を制御するようにした。これにより、着目画素が動体領域内の場合には、動体領域外の成分を混ぜないようにすることができ、着目画素が動体領域外の場合には、動体領域の成分を混ぜないようにすることができる。また、動体の移動に合わせてフィルタ処理した結果に基づいて読み出す画素の位置を変更するため、異なる背景の成分を混ぜないようにして所望の結果を得ることができる。
【００５６】
（第３の実施形態）
以下、図９及び図１０を参照しながら本実施形態について説明する。第１の実施形態と異なっている点は、第１のフィルタ処理部及び第２のフィルタ処理部を有しており、第２のフィルタ処理部では常に着目画素を含むフィルタ係数を設定してフィルタ処理を行う点である。本実施形態では、最終画質に影響の大きい着目画素周辺の処理頻度を高めることによって違和感の少ない画質を得るようにしている。
【００５７】
図９は、本実施形態に係る撮像装置９００の構成例を示すブロック図である。図１と比較して同一の構成については同一の番号を付しており、重複する構成の説明は省略する。以下、図１と異なる点について説明する。
図９において、第１のフィルタ処理部９０４は、図１に示すフィルタ処理部１０４と同様である。第２のフィルタ処理部９１３は、フィルタ係数制御部１０５によって設定されたフィルタ係数により、現像処理部１０３から入力された画像信号に対してフィルタ処理を行い、メモリ１０６に中間画像を格納する。第１のフィルタ処理部９０４の処理と異なる点については後述する。
【００５８】
次に、図１０を参照しながら、第１のフィルタ処理部９０４、フィルタ係数制御部１０５、合成部１０８、及び第２のフィルタ処理部９１３の制御動作について説明する。
【００５９】
図１０は、第１のフィルタ処理部９０４、第２のフィルタ処理部９１３及びフィルタ係数制御部１０５の制御動作を説明するための図である。
図１０において、入力画像Ｎ−４、Ｎ−３、・・・、Ｎ＋５、Ｎ＋６は、それぞれ現像処理部１０３から入力される画像信号（フレーム）であり、Ｎ−４からＮ＋６へ向かって時間が異なる連続な画像である。フィルタ係数ｋ０、ｋ１、・・・、ｋ８は、図１１における、それぞれの位置のフィルタ係数を示す。
【００６０】
フィルタ処理後の中間画像ｐ０''''は、入力画像Ｎ−４に対してフィルタ係数ｋ０によりフィルタ処理された画像である。同様に、中間画像ｐ１''''、・・・、ｐ８''''は、それぞれ入力画像Ｎ−３、・・・、Ｎ＋４に対してそれぞれフィルタ係数ｋ１・・・、ｋ８によりフィルタ処理された画像である。フィルタ係数がｋ８になった場合には、次のフレームに対してはフィルタ係数ｋ０によりフィルタ処理を行う。
【００６１】
ここで、着目画素を含むフィルタ係数が適用されるのはフィルタ係数ｋ４の場合であり、第１の実施形態の場合には、９回に１度しか用いられない。すなわち、最終画質に影響の大きい着目画素周辺の処理頻度が低いため、違和感のある画質となる可能性がある。そこで、最終画質に影響の大きい着目画素周辺の処理頻度を高めるために、第２のフィルタ処理部９１３では、例えば常にフィルタ係数ｋ４を用いてフィルタ処理した中間画像を生成する。そして、第１のフィルタ処理部９０４では、フィルタ係数ｋ４以外のフィルタ係数を用いてフィルタ処理した中間画像を生成する。これにより、違和感の少ない画質を得ることができるようにしている。
【００６２】
合成部１０８による合成処理では、入力画像に対してフィルタ処理された中間画像が２種類含まれている点を除き、第１の実施形態と同様の手順により背景ぼかしの画像を生成することができる。すなわち、例えばフィルタ係数ｋ４によってフィルタ処理される中間画像が毎フレーム更新されている点で異なるだけであり、合成手順そのものは第１の実施形態と同様の制御となる。
【００６３】
以上のように本実施形態によれば、第２のフィルタ処理部９１３に対して常に着目画素を含むフィルタ係数を設定してフィルタ処理を行うようにした。これにより、最終画質に影響の大きい着目画素周辺の処理頻度を高めることができる。
【００６４】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００６５】
１０４  フィルタ処理部
１０８  合成部
１０９  主被写体判別部
１１０  背景被写体合成部
１１１  システム制御部
【図１】
2015159375.tif 000008
【図２】
2015159375.tif 000009
【図３】
2015159375.tif 000010
【図４】
2015159375.tif 000011
【図５】
2015159375.tif 000012
【図６】
2015159375.tif 000013
【図７】
2015159375.tif 000014
【図８】
2015159375.tif 000015
【図９】
2015159375.tif 000016
【図１０】
2015159375.tif 000017
【図１１】
2015159375.tif 000018
【図１２】
2015159375.tif 000019
【図１３】
2015159375.tif 000020
【図１４】
2015159375.tif 000021