(57)【要約】【課題】  主要被写体の領域とその他の領域との双方の明るさが適正となる画像を生成する。【解決手段】  デジタルカメラ１００は、非フラッシュ画像３２０、３３０、３４０の差分領域９０１、９０２を用いて、動いている被写体の動きを予測する予測ベクトル９０５を算出する。デジタルカメラ１００は、フラッシュ画像４１０と非フラッシュ画像３２０の差分領域のうち、予測ベクトル９０５に対応する差分領域９０６を除く領域を主要被写体置き換え領域９０８とする。デジタルカメラ１００は、背景画像４２０の領域のうち、主要被写体置き換え領域９０８に対応する領域の画像を、フラッシュ画像３１０に置き換えて最終画像とする。【選択図】  図９
2019096995.tif 000002
【特許請求の範囲】
【請求項１】
ストロボ光が発光された状態で撮像された発光画像と、ストロボ光が発光されていない状態で撮像された非発光画像とを取得する取得手段と、
複数の前記非発光画像の画素情報の変化に基づいて、前記発光画像において動きのある被写体の領域を検出する検出手段と、を有することを特徴とする画像処理装置。
【請求項２】
前記発光画像と、前記非発光画像に基づく画像とを合成する合成手段を更に有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記発光画像と前記複数の非発光画像とを合成した画像を、前記非発光画像に基づく画像として生成する生成手段を更に有することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記生成手段は、前記発光画像および前記複数の発光画像のうち基準となる画像と、前記発光画像および前記複数の発光画像のうち前記基準となる画像と異なる画像とを合成し、合成した画像と、前記基準となる画像と異なる画像のうち合成していない画像とを合成することを、前記発光画像と前記複数の発光画像とを合成するまで繰り返し行うことを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記生成手段は、前記基準となる画像の画素情報と、前記基準となる画像と異なる画像の画素情報との差分に応じて、既に合成されている画像と、当該基準となる画像と異なる画像とを合成する割合を決定することを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記検出手段は、前記発光画像の画素情報と前記複数の非発光画像のうちの１つの前記非発光画像の画素情報との差分を示す画像である第１の差分画像を導出することと、前記複数の非発光画像のうちの２つの非発光画像の画素情報の差分を示す画像である第２の差分画像を少なくとも１つ導出することと、前記第２の差分画像に基づいて、前記第１の差分画像から、動きのある被写体の領域を検出することとを少なくとも行うことを特徴とする請求項１〜５の何れか１項に記載の画像処理装置。
【請求項７】
前記発光画像の背景の領域の明るさが前記非発光画像の明るさに近づくように前記発光画像の明るさを調整する調整手段を更に有し、
前記検出手段は、前記調整手段により明るさが調整された前記発光画像の画素情報と前記複数の非発光画像のうちの１つの前記非発光画像の画素情報との差分を示す画像を前記第１の差分画像として導出することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記検出手段は、２つの前記非発光画像の画素情報の差分に基づいて当該２つの前記非発光画像における被写体の動きを示す動きベクトルを導出し、導出した動きベクトルに基づいて、前記発光画像において動きのある被写体の領域を検出することを特徴とする請求項１〜７の何れか１項に記載の画像処理装置。
【請求項９】
前記検出手段は、前記２つの非発光画像の領域であって、当該２つの非発光画像の画素情報に閾値を上回る差分がある領域の大きさに応じて、当該２つの非発光画像における被写体の動きを示す動きベクトルを検出する範囲を変更することを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記検出手段は、前記動きベクトルに基づいて、前記発光画像と前記複数の非発光画像のうちの１つの前記非発光画像との間における被写体の動きを予測する予測ベクトルを導出し、当該予測ベクトルに基づいて、前記発光画像において動きのある被写体の領域を検出することを特徴とする請求項８または９に記載の画像処理装置。
【請求項１１】
前記検出手段は、前記発光画像の画素情報と前記複数の非発光画像のうちの１つの前記非発光画像の画素情報との差分を示す第１の差分画像と、前記予測ベクトルとに基づいて、前記発光画像において動きのある被写体の領域を検出することを特徴とする請求項１０に記載の画像処理装置。
【請求項１２】
前記複数の非発光画像の数は、３以上であることを特徴とする請求項１〜１１の何れか１項に記載の画像処理装置。
【請求項１３】
前記複数の非発光画像の位置を合わせる位置合わせ手段を更に有することを特徴とする請求項１〜１２の何れか１項に記載の画像処理装置。
【請求項１４】
前記非発光画像は、画面に表示するための画像であり、
前記発光画像は、撮影指示に基づいて本撮影された画像であることを特徴とする請求項１〜１３の何れか１項に記載の画像処理装置。
【請求項１５】
前記非発光画像と前記発光画像は、撮影指示に基づいて本撮影された画像であることを特徴とする請求項１〜１２の何れか１項に記載の画像処理装置。
【請求項１６】
前記検出手段は、撮像装置からの前記ストロボ光の発光距離を示す情報と、前記非発光画像における被写体の撮像装置からの距離を示す情報とに基づいて、前記発光画像において動きのある被写体の領域を検出する範囲を決定することを特徴とする請求項１〜１５の何れか１項に記載の画像処理装置。
【請求項１７】
前記画素情報は、明るさまたは色差を示す情報であることを特徴とする請求項１〜１６の何れか１項に記載の画像処理装置。
【請求項１８】
ストロボ光が発光された状態で撮像された発光画像と、ストロボ光が発光されていない状態で撮像された非発光画像とを取得する取得工程と、
複数の前記非発光画像の画素情報の変化に基づいて、前記発光画像において動きのある被写体の領域を検出する検出工程と、を有することを特徴とする画像処理方法。
【請求項１９】
請求項１〜１７の何れか１項に記載の画像処理装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、画像処理方法、およびプログラムに関し、特に、ストロボ光を発光して撮像された画像を処理するために用いて好適なものである。
【背景技術】
【０００２】
夜景と人物被写体等の主要被写体とを含むシーンの撮影に際して、夜景と主要被写体との双方が際立った画像を記録できるように様々な技術が提案されている。
特許文献１に開示されている技術では、ストロボ光の発光を伴うフラッシュオン撮影と、ストロボ光の発光を伴わないフラッシュオフ撮影とを連続して行う。フラッシュオフ撮影の時には、夜景が適正に露光されるように、撮影感度を高く設定する。一方、フラッシュオン撮影時の画像（フラッシュ画像）は、主要被写体の明るさが適正な画像となる。従って、これら非フラッシュ画像（フラッシュオフ撮影時に得られる画像）とフラッシュ画像とを合成することにより、夜景と主要被写体との双方の明るさが適正となる画像を記録できる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−４４３７８号公報
【特許文献２】特開２００８−１１８５５５号公報
【特許文献３】特開平７−３１８７９３号公報
【特許文献４】特開２０１２−１６９７５３号公報
【特許文献５】特開２００４−１０４４２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、前述の技術では、主要被写体の明るさが適正となる領域の判定をフラッシュ画像と非フラッシュ画像との差分値を比較することで行う。そのため、ストロボ光の当たらない主要被写体以外の領域に移動する被写体がある場合、当該移動する被写体の領域を主要被写体の領域と誤って判定する虞がある。このため、主要被写体の領域とその他の領域とを適切に合成することができない。その結果、主要被写体の領域とその他の領域との双方の明るさを適正にすることができなくなる虞がある。
本発明は、このような問題点に鑑みてなされたものであり、主要被写体の領域とその他の領域との双方の明るさが適正となる画像を生成することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の画像処理装置は、ストロボ光が発光された状態で撮像された発光画像と、ストロボ光が発光されていない状態で撮像された非発光画像とを取得する取得手段と、複数の前記非発光画像の画素情報の変化に基づいて、前記発光画像において動きのある被写体の領域を検出する検出手段と、を有することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、主要被写体の領域とその他の領域との双方の明るさが適正となる画像を生成することができる。
【図面の簡単な説明】
【０００７】
【図１】デジタルカメラの構成を示す図である。
【図２】デジタルカメラの全体処理の第１の例を示すフローチャートである。
【図３】デジタルカメラで撮像される画像を説明する図である。
【図４】画像処理された撮像画像を説明する図である。
【図５】フラッシュ画像と背景画像とを合成する方法を説明する図である。
【図６】背景画像生成処理を説明するフローチャートである。
【図７】差分情報を算出する処理を説明するフローチャートである。
【図８】主要被写体置き換え領域検出処理を説明するフローチャートである。
【図９】主要被写体置き換え領域を検出する方法の第１の例を説明する図である。
【図１０】動き領域を予測する方法を説明する図である。
【図１１】動き領域の予測を行う方法の変形例を説明する図である。
【図１２】デジタルカメラの全体処理の第２の例を示すフローチャートである。
【図１３】画面表示用画像と本撮影画像を説明する図である。
【図１４】主要被写体置き換え領域を検出する方法の第２の例を説明する図である。
【図１５】デジタルカメラの全体処理の第３の例を示すフローチャートである。
【図１６】主要被写体置き換え領域を検出する方法の第３の例を説明する図である。
【発明を実施するための形態】
【０００８】
以下、図面を参照しながら、実施形態を説明する。以下の各実施形態では、被写体を撮影して、動画像や静止画像のデータを、各種の記録メディアに記録する撮像装置がデジタルカメラである場合を例に挙げて説明する。しかしながら、撮像装置は、デジタルカメラに限定されず、ビデオカメラであっても、スマートフォンやタブレット等の各種の携帯機器に含まれるものであっても良い。また、撮像装置は、工業用カメラ、車載用カメラ、または医療用カメラに適用されるものであっても良い。尚、記録メディアとしては、例えば、テープ、固体メモリ、光ディスク、および磁気ディスク等が挙げられる。また、以下の各実施形態では、画像処理装置が撮像装置に含まれる場合を例に挙げて説明する。しかしながら、画像処理装置は、撮像手段を備える装置とは別の装置であっても良い。
【０００９】
（第１の実施形態）
まず、第１の実施形態を説明する。
図１は、デジタルカメラ１００の機能構成の一例を示すブロック図である。
システム制御部１０１は、例えばＣＰＵである。システム制御部１０１は、デジタルカメラ１００が備える各ブロックの動作を制御する。具体的にシステム制御部１０１は、デジタルカメラ１００が備える各ブロックの動作プログラムを読み出し、システムメモリ１０３に展開して実行することにより、各ブロックの動作を制御する。デジタルカメラ１００が備える各ブロックの動作プログラムは、例えば、不揮発性メモリ１０２に記憶されている。
【００１０】
不揮発性メモリ１０２は、例えばＥＥＰＲＯＭ等の電気的に消去・記録可能なメモリである。不揮発性メモリ１０２は、デジタルカメラ１００が備える各ブロックの動作プログラムに加え、各ブロックの動作において必要なパラメータ等を記憶する。システムメモリ１０３は、例えばＲＡＭのような揮発性メモリである。また、本実施形態では不揮発性メモリ１０２には、好適な画像を得るために必要な処理情報が記憶されている。システムメモリ１０３は、各ブロックの動作プログラムの展開領域としてだけではなく、各ブロックの動作において出力された中間データ等が一時的に記憶される格納領域としても用いられる。
【００１１】
システムタイマ１０５は、デジタルカメラ１００に内蔵されるタイマである。システムタイマ１０５は、システム制御部１０１により実行される各プログラムや処理における経過時間の計測やタイムスタンプ等に用いられる。
撮像ユニット１２０は、被写体を撮像し、画像データを出力するユニットである。撮像ユニット１２０は、撮影レンズ１２１、シャッタ１２２、撮像素子１２３、およびＡ／Ｄ変換部１２４を有する。撮影レンズ１２１は、フォーカスレンズやズームレンズ、カラーフィルタ等を含む撮影レンズ郡である。撮影レンズ１２１は、絞りおよびＮＤフィルタ機能を備えるシャッタ１２２を介して光学像を撮像素子１２３に結像する。撮像素子１２３は、例えばＣＣＤやＣＭＯＳセンサ等の撮像素子であり、撮影レンズ１２１を介して結像された光学像をアナログ画像信号に変換してＡ／Ｄ変換部１２４に出力する。Ａ／Ｄ変換部１２４は、撮像素子１２３から入力されたアナログ画像信号に対してＡ／Ｄ変換処理を適用することにより、アナログ画像信号をデジタル画像信号（画像データ／フレーム）に変換する。
【００１２】
画像処理部１０４は、撮像ユニット１２０から出力された画像データ、または後述するメモリ制御部１０６によりメモリ１０７から読み出された画像データに対し、種々の画像変換処理を適用する。種々の画像変換処理には、所定の画素補間処理や、縮小処理等のリサイズ処理や、色変換処理等が含まれる。また、画像処理部１０４は、Ａ／Ｄ変換部１２４より入力されたデジタル画像信号を用いて露出制御や測距制御に係る演算処理を実行し、当該演算処理の結果をシステム制御部１０１に出力する。システム制御部１０１は、当該演算処理の結果に基づき、不図示の駆動系により撮影レンズ１２１およびシャッタ１２２を動作させて露出制御、測距制御、およびＥＦ（フラッシュプリ発光）処理等の動作を開始させる。
【００１３】
メモリ制御部１０６は、メモリ１０７からの情報の読み出しと、メモリ１０７への情報の書き込みとを制御するブロックである。メモリ制御部１０６は、Ａ／Ｄ変換部１２４より入力されたデジタル画像信号、または画像処理部１０４により各種処理が適用されて出力された画像信号を、メモリ１０７に書き込む。メモリ１０７には、撮影中の画像のフレームに係る画像群に加え、撮影中の音声の情報も書き込まれる。このため、メモリ１０７は、当該情報を格納するために十分な記憶容量を有するように設計されているものとする。
【００１４】
ストロボ１１３は、撮影時にストロボ光の発光動作を行う。ストロボ制御部１１４は、ストロボ１１３の発光動作を制御する。入力操作部１１５は、デジタルカメラ１００が備える操作部材（電源ボタン、モード切り替えＳＷ、および撮影ボタン等）を有するユーザインタフェースである。入力操作部１１５は、ユーザによる各操作部材の操作がなされたことを検出すると、当該操作に対応する制御信号をシステム制御部１０１に伝送する。Ｉ／Ｆ１１１は、記録媒体１１２とデジタルカメラ１００とを相互に接続するためのインタフェースである。記録媒体１１２には、例えば記録媒体Ｉ／Ｆ１１１を介して、ＭＰＥＧ等の所定の符号化形式に従って符号化部１１０により符号化された画像データおよび音声データが記録される。記録媒体１１２は、例えばメモリカードやＨＤＤ等の、デジタルカメラ１００に着脱可能に接続される記録装置である。
【００１５】
このような構成をもつ本実施形態のデジタルカメラ１００の処理の一例を、図２のフローチャートを用いて説明する。尚、図２のフローチャート（全体処理）は、例えば、デジタルカメラ１００において撮影の指示がなされた際に開始されるものとする。
Ｓ２００において、システム制御部１０１は、撮像処理を行う。具体的にシステム制御部１０１は、画像処理部１０４による演算処理の結果を取得し、露出値を決定する。露出値は、シャッタスピード、絞りの開口量、およびＩＳＯ感度の設定を含む、撮像ユニット１２０に係る制御量である。システム制御部１０１は、決定した露出値を撮像ユニット１２０に設定する。システム制御部１０１は、撮像ユニット１２０により時系列的に連続して撮像されたフラッシュ画像と複数の非フラッシュ画像とを取得する。このように本実施形態では、例えば、Ｓ２００において、ストロボ光が発光された状態で撮像された発光画像と、ストロボ光が発光されていない状態で撮像された非発光画像とを取得することの一例が実現される。
【００１６】
ここで、図３を参照しながら、本実施形態のデジタルカメラ１００で撮像される画像の一例を説明する。図３（ａ）は、フラッシュ画像３１０の一例を示す。図３（ｂ）、図３（ｃ）、図３（ｄ）は、それぞれ１枚目の非フラッシュ画像３２０、２枚目の非フラッシュ画像３３０、３枚目の非フラッシュ画像３４０を示す。フラッシュ画像３１０は、ストロボ光を発光して撮像された画像であり、非フラッシュ画像３２０、３３０、３４０は、ストロボ光を発光せずに撮像された画像である。図３（ａ）〜図３（ｄ）は、フラッシュ画像３１０、１枚目の非フラッシュ画像３２０、２枚目の非フラッシュ画像３３０、３枚目の非フラッシュ画像３４０の順に連続して撮像される画像である。尚、１枚目〜３枚目の非フラッシュ画像３２０、３３０、３４０の後にフラッシュ画像３１０を連続して撮像してもよい。
【００１７】
フラッシュ画像３１０は、非フラッシュ画像３２０、３３０、３４０に比べ、背景が暗い。これは、フラッシュ画像３１０を撮像する際には、非フラッシュ画像３２０、３３０、３４０に比べ、ストロボ光を発光する分、露出を下げるためである。システム制御部１０１は、主要被写体３０２が適正の明るさになるように例えば露出を１段下げる。そして、システム制御部１０１は、非フラッシュ画像の適正な露出の明るさに合うようにストロボ１１３からストロボ光が発光されるようにストロボ制御部１１４を制御し、ストロボ光が発光された状態で撮像ユニット１２０により撮像を実行させる。
【００１８】
従って、非フラッシュ画像３２０、３３０、３４０は、フラッシュ画像３１０に比べ、ストロボ光が届かない領域３０３（フラッシュ画像３１０の領域３０１に対応する領域）で明るさが１段高くなっている。また、非フラッシュ画像３２０、３３０、３４０を撮像する際にはストロボ光が発光されないため、光量が低い。よって、非フラッシュ画像３２０、３３０、３４０は、画像全体にノイズが多く含まれた画像となる。更に、フラッシュ画像３１０の、ストロボ光が当たっていない領域３０１に関しては、非フラッシュ画像３２０、３３０、３４０よりもノイズが１段悪化した画像となる。フラッシュ画像３１０および非フラッシュ画像３２０、３３０、３４０は、撮影指示に基づいて本撮影された画像である。
【００１９】
続いて図４を参照しながら、本実施形態のデジタルカメラ１００で撮像された画像に対し画像処理を行うことで生成される画像の一例について説明する。図４（ａ）は、ゲイン調整後のフラッシュ画像４１０の一例を示す。フラッシュ画像４１０は、図３（ａ）に示すフラッシュ画像３１０に対し明るさが１段分明るくなるようにデジタルゲインを掛けた画像である。フラッシュ画像４１０の背景領域４０１の明るさは、図３（ｂ）〜図３（ｄ）に示す非フラッシュ画像３２０、３３０、３４０の明るさと合っている。また、図４（ｂ）は、背景画像４２０の一例を示す。背景画像４２０は、後述する図２に示すフローチャートのＳ２０２の処理によって、非フラッシュ画像３２０、３３０、３４０と、フラッシュ画像４１０とを合成した画像である。このように本実施形態では、例えば、ゲイン調整後のフラッシュ画像４１０を生成することにより、前記発光画像の背景の領域の明るさが前記非発光画像の明るさに近づくように前記発光画像の明るさを調整することの一例が実現される。また、明るさが調整された前記発光画像は、例えば、ゲイン調整後のフラッシュ画像４１０により実現される。
【００２０】
図２の説明に戻り、Ｓ２０１において、システム制御部１０１は、位置合わせ処理を行う。具体的にシステム制御部１０１は、図４（ａ）に示すフラッシュ画像４１０と図３（ｂ)〜図３（ｄ）に示す非フラッシュ画像３２０、３３０、３４０とを合成するためにこれらの画像のうちの所定の１枚の画像を基準に各画像の位置合わせを行う。この処理を行うことで、フラッシュ画像４１０と複数の非フラッシュ画像３２０、３３０、３４０とにおける手ブレ等の影響を改善することができる。このように本実施形態では、例えば、Ｓ２０１により、複数の非発光画像の位置を合わせることの一例が実現される。尚、本実施形態では、フラッシュ画像３１０、複数の非フラッシュ画像３２０、３３０、３４０の順に撮像を行う場合を例に挙げて説明する。
【００２１】
画像の位置合わせ方法の一例としては、動きベクトルを求めて、動きベクトルの向きおよび大きさを基にした変換係数を算出し、変換係数に基づいて画像を変形させる方法がある。例えば、基準画像から所定サイズのテンプレート画像を作成し、位置合わせ対象画像とテンプレート画像とのマッチング処理（テンプレートマッチング処理）を行うことで、動きベクトルを算出する。尚、このような動きベクトルを用いた位置合わせについては、特許文献２に記載されているので、ここでは、その詳細な説明を省略する。また、位置合わせの方法は、前述したものに限定されず、様々な手法があるため、それらの手法を使用して位置合わせ処理を行っても良い。
【００２２】
次に、Ｓ２０２において、システム制御部１０１は、背景画像生成処理を行う。図４（ｂ）に示す背景画像４２０は、図３（ｂ）〜図３（ｄ）に示す非フラッシュ画像３２０、３３０、３４０と、図４（ａ）に示すフラッシュ画像４１０とを合成することで作成される。背景画像生成処理については後で詳しく述べる。本実施形態では、例えば、Ｓ２０２により、前記発光画像と前記複数の非発光画像とを合成した画像を、前記非発光画像に基づく画像として生成することの一例が実現される。また、前記非発光画像に基づく画像は、例えば、背景画像４２０により実現される。
【００２３】
次に、Ｓ２０３において、システム制御部１０１は、主要被写体置き換え領域検出処理を行う。具体的にシステム制御部１０１は、図３（ａ）に示すフラッシュ画像３１０と、図４（ｂ）に示す背景画像４２０とを合成するための主要被写体置き換え領域を検出する。主要被写体置き換え領域は、フラッシュ画像３１０の領域であって、背景画像４２０に対して置き換える主要被写体の領域である。Ｓ２０３では、図４（ａ）に示すフラッシュ画像４１０と図３（ｂ）〜図３（ｄ）に示す非フラッシュ画像３２０、３３０、３４０とを用いて、動く被写体の領域を除去し、ストロボ光が当たっている領域を検出する。主要被写体置き換え領域検出処理については後で詳しく述べる。本実施形態では、例えば、Ｓ２０３により、複数の前記非発光画像の画素情報の変化に基づいて、前記発光画像において動きのある被写体の領域を検出することの一例が実現される。また、動きのない被写体の領域は、例えば、主要被写体の領域により実現される。
【００２４】
次に、Ｓ２０４において、図１のシステム制御部１０１は、Ｓ２０３の処理で求めた主被写体置き換え領域の検出結果に基づいて、フラッシュ画像３１０と背景画像４２０とを合成する。本実施形態では、例えば、Ｓ２０４により、前記発光画像と、前記非発光画像に基づく画像とを合成することの一例が実現される。図５を参照しながら、フラッシュ画像３１０と背景画像４２０とを合成する方法の一例を説明する。
【００２５】
図５（ａ）は、フラッシュ画像３１０の一例を示し、図５（ｂ）は、背景画像４２０の一例を示す。図５（ｃ）は、Ｓ２０３の処理で求めた主要被写体置き換え領域の検出結果５３０の一例を示す。図５（ｄ）は、本実施形態の最終画像５４０である。図５（ｃ）において、領域５０１は、図５（ａ）に示すフラッシュ画像３１０のうち、背景画像４２０に合成する領域（すなわち、主要被写体置き換え領域）を示す。また、領域５０２は、図５（ｂ）に示す背景画像４２０を合成する領域を示す。従って、システム制御部１０１は、図５（ｃ）に示す主要被写体置き換え領域の検出結果５３０に応じて、フラッシュ画像３１０と背景画像４２０とを合成し、最終画像５４０を生成する。
以上、図２のフローチャートを用いて、フラッシュ画像と非フラッシュ画像とを合成する全体の処理の一例を説明した。
【００２６】
続いて、図６のフローチャートを参照しながら、図２のＳ２０２の背景画像生成処理の一例を詳しく説明する。ここでは一例として、１枚の（ゲイン調整後の）フラッシュ画像４１０と、３枚の非フラッシュ画像３２０、３３０、３４０とを合成して背景画像４２０を生成する処理を説明する。
【００２７】
Ｓ６００において、システム制御部１０１は、合成処理を行った回数を記録するレジスタの値ｉを初期化（レジスタの値ｉに「１」を設定）する。
次に、Ｓ６０１において、システム制御部１０１は、レジスタの値ｉが、合成する回数Ｎ（ここではＮ＝３）を超えていないかを判定する。この判定の結果、真の場合（レジスタの値ｉが、合成する回数Ｎを超えていない場合）、処理はＳ６０２のステップに移る。一方、偽の場合（レジスタの値ｉが、合成する回数Ｎを超えている場合）、システム制御部１０１は、背景画像生成処理を終了し、この時点で得られている画像を背景画像４２０とする（図４（ｂ）を参照）。
【００２８】
次に、Ｓ６０２において、システム制御部１０１は、差分情報を算出する。図３、図４、および図７を参照しながら、差分情報を算出する処理の一例を説明する。
まず、システム制御部１０１は、合成基準画像と、合成対象の画像とのフレーム間の差分情報を算出する。システム制御部１０１は、例えば、図３（ｂ）に示す１枚目の非フラッシュ画像３２０を合成基準画像に設定する。１枚目の非フラッシュ画像３２０と２枚目の非フラッシュ画像３３０とのフレーム間の差分情報は、図７（ａ）に示す差分情報７１０となる。差分情報は、例えば、各画像の明るさまたは色差のフレーム間の画素ごとの差分値で表わされる。図７に示す例では、差分値の絶対値が閾値を上回る領域を、領域７０１のように白い領域で表す。システム制御部１０１は、この白い領域７０１で示されている領域を被写体が動いている領域と判断する。システム制御部１０１は、黒い領域７０２を被写体が動いていない領域と判断する。以上の処理と同様の処理を行うことで、図７（ｂ）に示すように、１枚目の非フラッシュ画像３２０と３枚目の非フラッシュ画像３４０とのフレーム間の差分情報７２０が得られる。
【００２９】
合成基準画像とフラッシュ画像とのフレーム間の差分情報を算出する場合には、図３（ａ）に示すフラッシュ画像３１０を用いず、図４（ａ）に示すゲインが調整されたフラッシュ画像４１０を用いる。主要被写体以外の領域の明るさをフラッシュ画像と非フラッシュ画像に合わせることで、被写体が動いている領域（差分）を抽出できるようにするためである。図７（ｃ）は、１枚目の非フラッシュ画像３２０とフラッシュ画像４１０とのフレーム間の差分情報７３０を示す。
尚、合成基準画像としてフラッシュ画像を用いてもよい。この場合には、図３（ａ）に示すフラッシュ画像３１０を用いず、図４（ａ）に示すゲインが調整されたフラッシュ画像４１０を合成基準画像として用いる。
【００３０】
図６の説明に戻り、Ｓ６０３において、システム制御部１０１は、Ｓ６０２で算出したフレーム間の差分情報を基に、以下の処理を行う。即ち、システム制御部１０１は、ｉ−１回の処理までに合成された画像と、ｉ回目の処理（Ｓ６０２）において合成基準画像に対しフレーム間の差分値（差分情報）を算出した画像と、の合成を行う。尚、１回目の処理においては、ｉ−１回の処理までに合成された画像は、初期の合成基準画像（ここでは、１枚目の非フラッシュ画像３２０）である。また、合成基準画像と最初に合成する画像が、例えば、２枚目の非フラッシュ画像３３０である場合、１回目の処理（Ｓ６０２）において合成基準画像に対しフレーム間の差分値（差分情報）を算出した画像は、２枚目の非フラッシュ画像３３０である。このように本実施形態では、例えば、Ｓ６０３により、前記発光画像および前記複数の発光画像のうち基準となる画像と、前記発光画像および前記複数の発光画像のうち前記基準となる画像と異なる画像とを合成することの一例が実現される。
【００３１】
システム制御部１０１は、ｉ回目の処理において算出した差分情報に基づいて、ｉ−１回の処理までに合成された画像と、ｉ回目の処理において合成基準画像に対しフレーム間の差分値（差分情報）を算出した画像との合成割合を変えるのが好ましい。具体的にシステム制御部１０１は、ｉ回目の処理（Ｓ６０２）で算出された差分情報（差分値）が大きい領域ほど、ｉ−１回の処理までに合成された画像の割合を大きくする。ｉ回目の処理（Ｓ６０２）で算出された差分情報（差分値）の値が極端に大きい領域については、ｉ回目の処理において合成基準画像に対しフレーム間の差分値（差分情報）を算出した画像の合成割合を０（ゼロ）にする。この場合、当該領域は、ｉ−１回の処理までに合成された画像になる。例えば、差分情報（差分値）の範囲と、合成割合との関係を予め設定しておくことで、システム制御部１０１は、合成割合を決定することができる。本実施形態では、このようにして、前記基準となる画像の画素情報と、前記基準となる画像と異なる画像の画素情報との差分に応じて、既に合成されている画像と、当該基準となる画像と異なる画像とを合成する割合を決定することの一例が実現される。
【００３２】
次に、Ｓ６０４において、システム制御部１０１は、レジスタの値ｉをインクリメントする。そして、処理は、Ｓ６０１のステップに戻る。
以上の処理を繰り返し、図３（ｂ）〜図３（ｄ）に示す非フラッシュ画像３２０、３３０、３４０と図４（ａ）に示すフラッシュ画像４１０とを合成することで、図４（ｂ）に示す背景画像４２０が生成される。
【００３３】
図７（ａ）〜図７（ｃ）に示す差分情報７１０、７２０、７３０を用いることで、例えば、以下のようにすることができる。即ち、差分情報（差分値）が大きい領域については、ｉ−１回目の処理までに合成された画像を得ることができる（図４（ｂ）に示す領域４０３、４０４を参照）。それ以外の領域については、ｉ−１回の処理までに合成された画像と、ｉ回目の処理において合成基準画像に対しフレーム間の差分値（差分情報）を算出した画像との加重平均をとった画像を得ることができる（図４（ｂ）に示す領域４０５を参照）。即ち、各回（各ｉ）のＳ６０３において、重み（合成割合）を領域毎に変えながら、ｉ−１回の処理までに合成された画像と、ｉ回目の処理において合成基準画像に対しフレーム間の差分値（差分情報）を算出した画像とを合成することができる。従って、図４（ｂ）に示す背景画像４２０は、図３（ｂ）に示す非フラッシュ画像３２０に比べ、領域４０５の領域におけるノイズが低減された画像となる。
【００３４】
続いて、図８および図９を参照しながら、図２のＳ２０３の主要被写体置き換え領域検出処理の一例を詳しく説明する。図８は、主要被写体置き換え領域検出処理の一例を説明するフローチャートである。図９は、主要被写体置き換え領域を検出する方法の一例を説明する図である。
Ｓ８００において、システム制御部１０１は、被写体が動いている領域の動きベクトルを抽出する。以下の説明では、被写体が動いている領域を、必要に応じて動き領域と称する。システム制御部１０１は、ゲインが調整されたフラッシュ画像４１０と複数の非フラッシュ画像３２０、３３０、３４０とを用いて動きベクトル（動き領域の動く方向と動き量を示すベクトル）を抽出する。
【００３５】
ここでは、時系列的に隣り合う非フラッシュ画像間の差分領域９０１、９０２を基にして動きベクトルを算出する領域を特定する場合を例に挙げて説明する。システム制御部１０１は、非フラッシュ画像３２０、３３０のフレーム間の差分領域（前述した差分値）を算出し、差分値の絶対値が閾値を上回る領域を差分領域９０１とする。同様に、システム制御部１０１は、非フラッシュ画像３３０、３４０のフレーム間の差分領域（前述した差分値）を算出し、差分値の絶対値が閾値を上回る領域を差分領域９０２とする。差分領域９０１、９０２は、動きベクトルを特定する領域である。
【００３６】
そして、システム制御部１０１は、差分領域９０１、９０２（動き領域）に対する動きベクトルを算出する。システム制御部１０１は、例えば、差分領域９０１に含まれる領域のうち、時間的に遅く撮像された画像に対応する領域の重心から時間的に早く撮像された画像に対応する領域の重心に向かうベクトルを差分領域９０１に対する動きベクトルとする。例えば、差分領域９０１について、時間的に早く撮像された画像に対応する領域は、１枚目の非フラッシュ画像３２０において、２枚目の非フラッシュ画像３３０に対し明るさが大きく異なる領域である。時間的に遅く撮像された画像に対応する領域は、２枚目の非フラッシュ画像３３０において、１枚目の非フラッシュ画像３２０に対し明るさが大きく異なる領域である。差分領域９０２についても差分領域９０１と同様にして動きベクトルを算出することができる。
【００３７】
このとき、システム制御部１０１は、動きベクトルを計算する範囲を、差分領域９０１、９０２の大きさに応じて変更しても良い。例えば、差分領域９０１、９０２の大きさが大きいほど、動きベクトルを計算する範囲を大きくすることができる。システム制御部１０１は、例えば、差分領域９０１、９０２が含まれる範囲で、動きベクトルを算出する。システム制御部１０１は、動きベクトルの算出により、非フラッシュ画像３２０、３３０の間、非フラッシュ画像３３０、３４０の間で、それぞれ動きベクトル９０３、９０４を求めることができる。本実施形態では、このようにして、２つの非発光画像の画素情報に閾値を上回る差分がある領域の大きさに応じて、当該２つの非発光画像における被写体の動きを示す動きベクトルを検出する範囲を変更することの一例が実現される。
【００３８】
図８の説明に戻り、Ｓ８０１において、システム制御部１０１は、１枚目の非フラッシュ画像３２０とフラッシュ画像４１０との間の動き領域を予測する。図９および図１０を参照しながら、動き領域を予測する方法の一例を詳しく説明する。図１０は、動き領域を予測する方法の一例を説明する図である。
【００３９】
図１０において、動きベクトル１００２、１００３は、それぞれ図９に示す動きベクトル９０３、９０４に対応し、一つの平面上にプロットされたものである。また、移動方向１００１は、動きベクトル１００２、１００３の方向を示す。予測ベクトル１００４は、図９に示す予測ベクトル９０５に対応するものである。システム制御部１０１は、例えば、動きベクトル１００２、１００３の移動方向、大きさ、および位置に基づいて、予測ベクトル１００４を求める。
【００４０】
まず、システム制御部１０１は、動きベクトル１００２、１００３から、移動方向１００１を算出する。その後、システム制御部１０１は、動きベクトル１００２の始点を終点とし、動きベクトル１００２の大きさの半分の大きさを有し、移動方向１００１に沿う向きのベクトルを予測ベクトル１００４として算出する。本実施形態では、フラッシュ画像３１０と、非フラッシュ画像３２０、３３０、３４０の撮影間隔は非常に短い撮影となっており、移動する被写体の動きは等速運動として予測できる。また、本実施形態では、フラッシュ画像３１０は、非フラッシュ画像３２０、３３０、３４０に比べ露出時間が１段分短い。そのため、非フラッシュ画像３２０、３３０、３４０間の移動量に比べ、フラッシュ画像３１０と非フラッシュ画像３２０と間では、１／２倍の移動量であることが推測される。
【００４１】
ただし、フラッシュ画像３１０、非フラッシュ画像３２０、３３０、３４０の露出時間が極端に短い際には、露出時間の差は小さくなる。このため、予測ベクトルの大きさは、非フラッシュ画像間の動きベクトルの大きさと差がなくなる。よって、システム制御部１０１は、非フラッシュ画像間の動きベクトルの大きさと同じ大きさのベクトルを予測ベクトルとすることができる。予測ベクトルの大きさは、フラッシュ画像の撮影時と非フラッシュ画像の撮影時の露出時間の差に依存する。このため、システム制御部１０１は、露出時間の差に応じて、予測ベクトルの大きさを切り替えることを行っても良い。例えば、所定の範囲の露光時間であれば等速度運動で予測ベクトルを推定することができる。このため、システム制御部１０１は、例えば、フラッシュ画像と非フラッシュ画像の露出の差が２段差有る場合には、非フラッシュ画像間の動きベクトルの大きさの１／４倍の大きさのベクトルを予測ベクトルにする。
本実施形態では、以上のようにして、前記動きベクトルに基づいて、前記発光画像と前記複数の非発光画像のうちの１つの前記非発光画像との間における被写体の動きを予測する予測ベクトルを導出することの一例が実現される。
【００４２】
続いてシステム制御部１０１は、予測ベクトル９０５に対応する位置に、差分情報９１４に含まれる差分領域（白い領域）のうち、予測ベクトル９０５に最も近い位置にある差分領域９０６（白い領域）を、動き差分領域予測結果９０７として設定する。予測ベクトル９０５に対応する位置は、例えば、予測ベクトル９０５の大きさ、向き、および位置に基づいて定められる。尚、差分情報９１４、差分領域９０６の導出は、前述した方法と同様の方法で実現される。動き差分領域予測結果９０７は、差分情報の予測結果である。
【００４３】
本実施形態では、例えば、差分情報９１４により、前記発光画像の画素情報と前記複数の非発光画像のうちの１つの前記非発光画像の画素情報との差分を示す画像である第１の差分画像の一例が実現される。また、例えば、図９において、非フラッシュ画像３２０、３３０間の差分情報（差分領域９０１を含む差分情報）により、前記複数の非発光画像のうちの２つの非発光画像の画素情報の差分を示す画像である第２の差分画像の一例が実現される。同様に、図９において、非フラッシュ画像３３０、３４０間の差分情報（差分領域９０２を含む差分情報）により、前記複数の非発光画像のうちの２つの非発光画像の画素情報の差分を示す画像である第２の差分画像の一例が実現される。
【００４４】
図８の説明に戻り、Ｓ８０２において、システム制御部１０１は、フラッシュ画像４１０と非フラッシュ画像３２０との差分情報９１４に含まれる差分領域（白い領域）のうち、動き差分領域予測結果９０７に対応する差分領域９０６を除去する。このように本実施形態では、例えば、差分領域９０６により、動きのある被写体の領域の一例が実現される。また、差分情報９１４内の差分領域９０６以外の差分領域（白い領域）により、動きのない被写体の領域の一例が実現される。このように本実施形態では、例えば、差分情報９１４と予測ベクトル９０５とに基づいて動き差分領域予測結果９０７が導出され、動き差分領域予測結果９０７に基づいて差分領域９０６が検出され除去される。従って、前記発光画像の画素情報と前記複数の非発光画像のうちの１つの前記非発光画像の画素情報との差分を示す第１の差分画像と、前記予測ベクトルとに基づいて、前記発光画像において動きのある被写体の領域が検出される。
【００４５】
以上のように動き差分領域予測結果９０７を用いれば、予測ベクトル９０５の算出精度が低い場合であっても、差分領域９０６を特定して除去することができる。しかしながら、システム制御部１０１は、予測ベクトル９０５の算出精度が高く、予測ベクトル９０５だけから差分領域９０６を正確に導出することができる場合、差分情報９１４に含まれる差分領域９０６を予測ベクトル９０５から直接特定して除去してもよい。
【００４６】
このようにしてシステム制御部１０１は、フラッシュ画像４１０と非フラッシュ画像３２０との差分情報９１４から、差分領域９０６を除去した後に差分情報９１４に含まれる差分領域（白い領域）を、主要被写体置き換え領域９０８として検出する。差分情報９１４には、動いていない主要被写体と動いている被写体とのそれぞれが差分領域として含まれている。このため、動き差分領域予測結果９０７である差分領域を取り除くことで、動いている被写体が含まれる領域を除去することができる。従って、システム制御部１０１は、ストロボ光が当たっている主要被写体の領域（主要被写体置き換え領域９０８）を検出することができる。
【００４７】
以上説明したように、本実施形態では、デジタルカメラ１００は、非フラッシュ画像３２０、３３０、３４０の差分領域９０１、９０２を用いて、動いている被写体の動きを予測する予測ベクトル９０５を算出する。デジタルカメラ１００は、フラッシュ画像４１０と非フラッシュ画像３２０の差分領域のうち、予測ベクトル９０５に対応する差分領域９０６を除く領域を主要被写体置き換え領域９０８とする。デジタルカメラ１００は、背景画像４２０の領域のうち、主要被写体置き換え領域９０８に対応する領域の画像を、フラッシュ画像３１０に置き換えて最終画像とする。従って、動いている被写体があっても、フラッシュ画像３１０に含まれる被写体の領域のうち、ストロボ光が当たっている領域を適切に判別して抽出することができる。よって、例えば、夜景と主要被写体との双方の明るさが適正となる画像を好適に生成することが可能となる。
【００４８】
尚、本実施形態では、背景画像生成処理で用いた差分情報（図６のＳ６０２で求める差分情報）と、主要被写体置き換え領域検出処理で用いた差分情報（図８のＳ８００で求める差分情報）を別々に求める場合を例に挙げて説明した。しかしながら、これらの処理で共通の差分情報を用いても良い。例えば、主要被写体置き換え領域検出処理における図８のＳ８００では、システム制御部１０１は、図６のＳ６０２と同じく非フラッシュ画像３２０を基準にした２つの画像間の動きベクトルを求める。具体的にシステム制御部１０１は、非フラッシュ画像３２０、３３０間の動きベクトルと、非フラッシュ画像３２０、３４０間の動きベクトルとを求める。このように共通の差分情報を用いることで、演算量や処理時間を短縮することが可能となる。
【００４９】
また、本実施形態では、主要被写体置き換え領域検出処理（図８のＳ８０１）において、予測ベクトルを用いて動き領域の予測を行う構成を説明したが、これに限らなくても良い。例えば、複数の非フラッシュ画像３２０、３３０、３４０によって求めたフレーム間の差分情報の形状、大きさ、および位置を用いて、図９に示す動き差分領域予測結果９０７を特定しても良い。図１１を参照しながら、動き領域の予測を行う方法の変形例を詳しく説明する。図１１（ａ）、図１１（ｂ）は、それぞれ図９に示す差分領域９０１、９０２を含む差分情報１１１０、１１２０（非フラッシュ画像３２０、３３０間の差分情報、非フラッシュ画像３３０、３４０間の差分情報）を示す。
【００５０】
フラッシュ画像３１０、非フラッシュ画像３２０、３３０、３４０を取得するサンプリング周期は短いため、システム制御部１０１は、動いている被写体（差分領域９０１、９０２）が等速直線運動するものとするものと仮定する。この仮定の下、システム制御部１０１は、フラッシュ画像３１０、非フラッシュ画像３２０、３３０、３４０を取得するサンプリング周期分だけ差分領域９０１を等速直線運動させた差分領域１１０３を、図１１（ｃ）に示す動き差分領域予測結果１１３０とする。差分領域９０１、９０２の領域情報を用いて動き差分領域予測結果１１３０を求めることで、動きベクトル９０３、９０４および予測ベクトル９０５を求める演算処理が必要なくなり処理時間を短縮することが可能となる。
【００５１】
また、本実施形態では、１枚のフラッシュ画像と３枚の非フラッシュ画像の計４回の撮像（ただし、フラッシュ画像のゲイン調整は含めない）する構成について説明を行ったが、撮像枚数に限りはない。撮像枚数を増やして（非フラッシュ画像の数を３以上にして）本実施形態の処理を行うことでノイズ低減効果を向上させることができる。また、ベクトルの方向、位置、および大きさを算出するための画像の枚数が増えるため、動き領域予測（図８のＳ８０１）の予測精度を高めることができる。
【００５２】
また、デジタルカメラ１００の位置が三脚等で固定されている場合には、位置合わせ処理（図２のＳ２０１）を行わなくてもよい。このようにすれば、処理時間を短縮することが可能となる。
【００５３】
（第２の実施形態）
次に、第２の実施形態を説明する。第１の実施形態では、ユーザによる入力操作部１１５の操作やタイマ撮影等による撮影指示に伴う本撮影により取得した３枚の非フラッシュ画像３２０、３３０、３４０を用いる場合を例に挙げて説明した。これに対し、本実施形態では、ライブビュー用画像（プレビュー用画像）を用いて、明るさの差分情報を求めて動きベクトルを求め、求めた動きベクトルから予測ベクトルを求める。そして、予測ベクトルと、本撮影により取得した２枚の画像（フラッシュ画像および非フラッシュ画像）の差分情報とを用いて動いている被写体の領域を取り除いて主要被写体の領域を求める。そして、フラッシュ画像に含まれる主要被写体の領域における画像と非フラッシュ画像（の主要被写体の領域以外の領域）とを合成する。
【００５４】
このように本実施形態と第２の実施形態とは、動いている被写体を特定するための処理の一部が主として異なる。従って、本実施形態の説明において、第１の実施形態と同一の部分については、図１〜図１１に付した符号と同一の符号を付す等して詳細な説明を省略する。以下の説明では、ライブビュー用画像を必要に応じて画面表示用画像または画面表示用非フラッシュ画像と称する。また、本撮影により得られるフラッシュ画像を必要に応じて本撮影フラッシュ画像と称し、本撮影により得られる非フラッシュ画像を必要に応じて本撮影非フラッシュ画像と称し、これらを必要に応じて本撮影画像と総称する。
【００５５】
本実施形態では、ゲインが調整されたフラッシュ画像と複数の非フラッシュ画像とから背景画像を作成する処理を行わない。このため、本撮影前に取得するライブビュー用画像から求めた動きベクトルを基にしてフラッシュ画像と非フラッシュ画像とのフレーム間の動き領域の予測ベクトルを算出する。
本実施形態のデジタルカメラ１００構成は、図１に示す第１の実施形態のデジタルカメラ１００の構成と同じであるため、その詳細な説明を省略する。
【００５６】
また、本実施形態では、画面表示用画像を用いる。従って、図１に示すメモリ１０７は、本撮影により取得される画像データの他にカメラ処理の評価値を取得する画像や画面表示用画像を格納する。本実施形態では、本撮影により取得される画像データであるフラッシュ画像と非フラッシュ画像の他に、画面表示用画像を用いる。
【００５７】
図１２のフローチャートを参照しながら、本実施形態のデジタルカメラ１００の全体処理の一例を説明する。尚、第１の実施形態と同じ処理についての詳細な説明は省略する。図２に示すフローチャートは、デジタルカメラ１００において撮影の指示がなされた際に開始される。これに対し、図１２に示すフローチャートは、デジタルカメラ１００において撮影の指示がなされる前に開始される。
【００５８】
Ｓ１２００において、システム制御部１０１は、撮影処理を行う。具体的にシステム制御部１０１は、ユーザまたはデジタルカメラ１００のタイマ撮影等による撮影指示がなされる前には、画面表示用画像の撮像処理を続ける。その後、撮影指示がなされた後に、システム制御部１０１は、本撮影を行い、フラッシュ画像と非フラッシュ画像を１枚ずつ連続して撮像する。図１３は、画面表示用画像と本撮影画像の一例を説明する図である。
【００５９】
図１３において、画面表示用非フラッシュ画像１３０１〜１３０３は、撮影指示前に撮像された画面表示用画像として非フラッシュ画像である。１枚目の画面表示用非フラッシュ画像１３０１、２枚目の画面表示用非フラッシュ画像１３０２、３枚目の画面表示用非フラッシュ画像１３０３の順に連続して撮像されているものとする。その後、撮影指示がなされた後で、デジタルカメラ１００は、本撮影画像である本撮影フラッシュ画像１３０４と本撮影非フラッシュ画像１３０５をこの順で連続して撮像する。本撮影非フラッシュ画像１３０５は、第１の実施形態と異なり長時間露光し、画面表示用非フラッシュ画像１３０１〜１３０３の露光時間と異なる構成をとっても良い。また、撮影指示がなされる前に取得する画面表示用の画像は、メモリ１０７の容量に収まる範囲でメモリ１０７に複数枚保持される。本実施形態では、例えば、画面表示用非フラッシュ画像１３０１〜１３０３により、画面に表示するための画像の一例が実現される。また、例えば、本撮影フラッシュ画像１３０４および本撮影非フラッシュ画像１３０５により、撮影指示に基づいて本撮影された画像の一例が実現される。
【００６０】
次に、Ｓ１２０１において、システム制御部１０１は、本撮影フラッシュ画像１３０４と本撮影非フラッシュ画像１３０５とを合成するための主要被写体置き換え領域検出処理を行う。図１４を参照しながら、本実施形態の主要被写体置き換え領域を検出する方法の一例を用いて詳しく述べる。
図１４において、本撮影フラッシュ画像１４１０は、本撮影フラッシュ画像１３０４に対し、背景領域の明るさが本撮影非フラッシュ画像１３０５の明るさと合うようにゲインが調整された画像である。
【００６１】
第１の実施形態では本撮影された非フラッシュ画像３２０、３３０、３４０から動きベクトル９０３、９０４を求め、その動きベクトル９０３、９０４を用いて予測ベクトル９０５を求めて、動いている被写体の動き予測を行う。これに対し、本実施形態では、画面表示用非フラッシュ画像を用いて動きベクトルおよび予測ベクトルを求める。システム制御部１０１は、例えば、画面表示用非フラッシュ画像１３０１、１３０２間の差分領域１４０１を算出する。更に、システム制御部１０１は、差分領域１４０１において動きベクトル１４０３を算出する。同様にシステム制御部１０１は、画面表示用非フラッシュ画像１３０２、１３０３間の差分領域１４０２を算出し、差分領域１４０２において動きベクトル１４０４を算出する。差分領域１４０１、１４０２および動きベクトル１４０３、１４０４を求める方法自体は、第１の実施形態で説明した方法と同じである。
【００６２】
次に、システム制御部１０１は、第１の実施形態で説明したのと同じ方法で動きベクトル１４０３、１４０４を用いて予測ベクトル１４０５を算出する。その後、システム制御部１０１は、第１の実施形態で説明したのと同じ方法で、ゲイン調整後の本撮影フラッシュ画像１４１０と本撮影非フラッシュ画像１３０５との差分情報１４１４と予測ベクトル１４０５とを基に、動き差分領域予測結果１４０７を算出する。最後に、システム制御部１０１は、第１の実施形態で説明したのと同じ方法で、差分情報１４１４と、動き差分領域予測結果１４０７とを基に、差分情報１４１４に含まれる差分領域１４０６を除去し、主要被写体置き換え領域１４０８を抽出する。
【００６３】
図１２の説明に戻り、Ｓ１２０２において、システム制御部１０１は、Ｓ１２０１の処理で求めた主要被写体置き換え領域１４０８の検出の結果に基づいて、本撮影フラッシュ画像１３０４と本撮影非フラッシュ画像１３０５とを合成する。これらの画像の合成方法は、第１の実施形態における、フラッシュ画像３１０と背景画像４２０とを合成する処理の説明において、背景画像４２０を本撮影非フラッシュ画像１３１５に置き換えることにより実現することができるので、その詳細な説明を省略する。
【００６４】
以上のように本実施形態では、デジタルカメラ１００は、画面表示用非フラッシュ画像１３０１〜１３０３を用いて動き差分領域予測結果１４０７を算出する。従って、本撮影において撮像する画像が、フラッシュ画像と非フラッシュ画像の２枚の画像であっても、動き領域を排除した主要被写体置き換え領域を抽出することができ、合成後の画像で動き領域の弊害を改善することができる。
【００６５】
本実施形態では、撮影指示が出されるまでの画面表示用非フラッシュ画像１３０１〜１３０３を複数保持し、撮影指示が出された後の本撮影フラッシュ画像１３０４および本撮影非フラッシュ画像１３０５を用いる構成を例に挙げて説明した。しかしながら、本実施形態の処理を行うことが、デジタルカメラ１００におけるモード等の設定により分かっている場合、撮影指示が出される前の画面表示用非フラッシュ画像を用いて撮影指示の前に予め動きベクトル１４０３、１４０４を求めておいても良い。この構成をとることで、画面表示用非フラッシュ画像を常に保持しておく必要が無く、更に本撮影がなされたときに動きベクトルがすでに算出されているので処理速度の改善に有効である。更に、予測ベクトル１４０５を撮影指示の前に求めておいても良い。
【００６６】
また、本実施形態では、撮影指示が出されるまでの画面表示用非フラッシュ画像１３０１〜１３０３を複数保持し、撮影指示が出された後の本撮影フラッシュ画像１３０４および本撮影非フラッシュ画像１３０５を用いる構成を例に挙げて説明した。しかしながら、撮影指示が出された後、本撮影フラッシュ画像１３０４および本撮影非フラッシュ画像１３０５を撮像し、その後、画面表示用非フラッシュ画像を複数保持する構成をとっても良い。この構成をとることで、本施形態の処理を行わない場合には画面表示用画像を複数保持しておく必要が無くメモリの節約に有効である。
また、本実施形態においても、第１の実施形態で説明した変形例を適用することができる。
【００６７】
（第３の実施形態）
次に、第３の実施形態を説明する。第１、第２の実施形態では、フラッシュ画像と非フラッシュ画像との差分情報の全体において差分領域の動きを求め、動きのない差分領域を、主要被写体置き換え領域として算出する例を挙げて説明した。これに対し本実施形態では、ストロボ光の適正発光距離にある被写体の領域以外の領域をマスク領域として、マスク領域については、差分領域の動きを求めない。このように本実施形態と第１、第２の実施形態とでは、動いている被写体を特定するための処理の一部が主として異なる。従って、本実施形態の説明において、第１、第２の実施形態と同一の部分については、図１〜図１４に付した符号と同一の符号を付す等して詳細な説明を省略する。
【００６８】
本実施形態のデジタルカメラ１００の構成は、図１に示す第１の実施形態のデジタルカメラ１００の構成と同じであるため、その詳細な説明を省略する。
図１５のフローチャートを参照しながら、本実施形態のデジタルカメラ１００の全体処理の一例を説明する。尚、第１、第２の実施形態と同じ処理についての詳細な説明は省略する。
【００６９】
Ｓ１５０１において、システム制御部１０１は、本撮影フラッシュ画像１３０４と本撮影非フラッシュ画像１３０５とを合成するための主要被写体置き換え領域検出処理を行う。
本実施形態では、システム制御部１０１は、適正発光距離情報の領域を設定する。例えば、システム制御部１０１は、撮影レンズ１２１の絞り値（Ｆ値）とガイドナンバーから適正発光距離情報を算出すると共に、奥行き情報を算出する。適正発光距離情報は、ストロボ光が適正にとどくデジタルカメラ１００からの距離を示す情報である。シーンの奥行き情報は、デジタルカメラ１００から被写体までの距離を示す情報である。そして、システム制御部１０１は、適正発光距離情報と奥行き情報とに基づいて、ストロボ光の適正発光距離の被写体の範囲だけを、動きベクトルを求める領域とする。
【００７０】
図１６を参照しながら、主要被写体置き換え領域の求め方の一例を説明する。尚、ここでは、第２の実施形態の図１４を参照しながら説明した処理と同じ処理についての詳細な説明を省略する。
図１６において、システム制御部１０１は、例えば、本撮影フラッシュ画像１４１０の撮像時における撮影レンズ１２１の絞り値（Ｆ値）とガイドナンバーから、適正発光距離情報１６０１を取得する。これと同時にシステム制御部１０１は、奥行き情報１６０２を算出する。奥行き情報１６０２の算出方法としては、以下の方法が挙げられる。
【００７１】
撮像素子１２３が瞳分割撮像素子であれば、撮像素子１２３から取得される視差画像（距離取得用データ）の相関演算から算出されるデフォーカス量を用いて奥行き情報１６０２を算出する方法が１つ目の方法として挙げられる。この方法は、特許文献３に記載されている方法を用いて実現することができる。２つ目の方法として、合焦面を変化させて撮像した複数の画像（距離取得用データ）の相関演算から算出されるデフォーカス量を用いて奥行き情報１６０２を算出する方法が挙げられる。この方法は、特許文献４に記載されている方法を用いて実現することができる。撮像ユニット１２０が複眼構成であれば、複眼画像（距離取得用データ）の相関演算から算出されるデフォーカス量を用いて奥行き情報１６０２を算出する方法が３つ目の方法として挙げられる。この方法は、特許文献５に記載されている方法を用いて実現することができる。尚、どの方法も距離情報を取得するための手段であり本実施形態の構成を限定するものではない。
【００７２】
本実施形態では、例えば、適正発光距離情報１６０１により、撮像装置からの前記ストロボ光の発光距離を示す情報の一例が実現される。また、例えば、奥行き情報１６０２により、前記非発光画像における被写体の撮像装置からの距離を示す情報の一例が実現される。
【００７３】
システム制御部１０１は、以上のようにして求めた適正発光距離情報１６０１と奥行き情報１６０２とに対応する領域を、適正フラッシュ領域マスク１６０３として算出する。このマスクされた領域（適正フラッシュ領域マスク１６０３）が、ストロボ光が画像上で適正の光としてとどいている領域１６１０となる。
【００７４】
システム制御部１０１は、画面表示用非フラッシュ画像１３０１、１３０２間の差分領域１４０１および画面表示用非フラッシュ画像１３０２、１３０３間の差分領域１４０２が領域１６１０に含まれているか否かを判定する。図１４および図１６に示す例では、画面表示用非フラッシュ画像１３０１、１３０２間の差分領域１４０１および画面表示用非フラッシュ画像１３０２、１３０３間の差分領域１４０２が領域１６１０に含まれていない。この場合、システム制御部１０１は、動きベクトル１４０３、１４０４、予測ベクトル１４０５、および動き差分領域予測結果１４０７の算出を行わない。そして、システム制御部１０１は、差分情報１４１４における領域１６１０に対応する領域を主要被写体置き換え領域１４０８として抽出する。このように、領域１６１０よりも外の動きに対しては、被写体の動き予測を行う必要を無くすことができるため、演算処理負荷を軽減することができる。
【００７５】
一方、画面表示用非フラッシュ画像間の差分領域が領域１６１０に含まれている場合、システム制御部１０１は、当該差分領域について、第２の実施形態で説明したようにして、動きベクトル、予測ベクトル、および動き差分領域予測結果の算出を行う。そして、システム制御部１０１は、第１および第２の実施形態で説明したように、動き差分領域予測結果に基づいて、領域１６１０における動き領域を特定し、領域１６１０から動き領域を除く領域を主要被写体置き換え領域１４０８として抽出する。
【００７６】
以上の処理によれば、動きベクトルを算出する画像領域が狭くなるため、演算処理負荷を軽減することができる。また更に、フラッシュ画像の適正発光距離外の領域を合成することを防ぐことができ、ストロボ光の有効領域に絞ってフラッシュ画像を置き換えることができる。
【００７７】
また、奥行き情報１６０２ではなく、画像の位置情報としてストロボ光の発光中心位置からの距離が近い領域だけを、フラッシュ画像と非フラッシュ画像の比較処理領域として、フラッシュ画像を合成する領域に設定しても良い。これは、ストロボ光の発光中心位置から離れるほど目立ちにくい領域になるため、フラッシュ画像に置き換える領域を限定し、処理負荷をより軽減することができる。
尚、本実施形態では、第２の実施形態に基づく形態（画面表示用非フラッシュ画像を用いる形態）を例に挙げて説明したが、第１の実施形態に基づく形態（本撮影による非フラッシュ画像を用いる形態）であっても良い。また、本実施形態においても、第１、第２の実施形態で変形例を適用することができる。
【００７８】
尚、前述した実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【００７９】
（その他の実施例）
本発明は、前述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００８０】
１００：デジタルカメラ、１０１：システム制御部、１１３：ストロボ
【図１】
2019096995.tif 000003
【図２】
2019096995.tif 000004
【図３】
2019096995.tif 000005
【図４】
2019096995.tif 000006
【図５】
2019096995.tif 000007
【図６】
2019096995.tif 000008
【図７】
2019096995.tif 000009
【図８】
2019096995.tif 000010
【図９】
2019096995.tif 000011
【図１０】
2019096995.tif 000012
【図１１】
2019096995.tif 000013
【図１２】
2019096995.tif 000014
【図１３】
2019096995.tif 000015
【図１４】
2019096995.tif 000016
【図１５】
2019096995.tif 000017
【図１６】
2019096995.tif 000018