(57)【要約】【課題】連続撮影される被写体の画像を合成して被写体の移動を一枚の画像に適切に収める。【解決手段】撮像素子１１において複数のフレーム画像を連像撮影し画像メモリ１８に記憶する。ＤＳＰ１７において最新のフレーム画像と画像メモリ１８に記憶された直前のフレーム画像の動きベクトルを算出し、被写体の動きの大きさを評価する。被写体の動きの大きさに基づいて加算するフレーム数を算出する。画像メモリ１８に記憶された複数のフレーム画像から、この加算フレーム数に亘るフレーム画像を加算し、多重露光画像を合成する。【選択図】図１
2014023067.tif 000002
【特許請求の範囲】
【請求項１】
連像撮影された複数のフレーム画像を記憶する画像記憶手段と、
前記複数のフレーム画像から被写体の動きの大きさを評価する動き評価手段と、
前記評価に基づいて加算フレーム数を算出する加算フレーム数算出手段と、
前記加算フレーム数に亘るフレーム画像を加算して多重露光画像を生成する多重露光手段と
を備えることを特徴とする画像合成装置。
【請求項２】
前記加算フレーム数の算出を前記複数のフレーム画像の各々に対して順次行い、最新フレームに対する加算フレーム数が、前記最新フレームに対する前記被写体の動きの大きさの評価と、直前のフレームに対して算出された加算フレーム数とから算出されることを特徴とする請求項１に記載の画像合成装置。
【請求項３】
前記評価に基づき、前記最新フレーム画像の動きに対する仮加算フレーム数を算出し、前記仮加算フレーム数を前記直前のフレームに対する加算フレーム数と比較し、前記仮加算フレーム数の方が大きいときには前記最新フレームに対する加算フレーム数を前記直前のフレームに対する加算フレーム数よりも増加させ、前記仮加算フレーム数の方が小さいときには減少させることを特徴とする請求項２に記載の画像合成装置。
【請求項４】
前記仮加算フレーム数は、動きが所定の大きさになるまでは加算を行わない値に設定され、所定の大きさを超えると所定枚数とされるとともに動きが大きくなるに従って小さくなるように設定されることを特徴とする請求項３に記載の画像合成装置。
【請求項５】
前記加算されるフレーム画像に重み付けを行うことを特徴とする請求項１に記載の画像合成装置。
【請求項６】
請求項１に記載の画像合成装置を備えたことを特徴とするデジタルカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、連続して撮影される複数の画像を合成する装置に関し、特に動きのある被写体を連続して撮影し、それらを合成する装置に関する。
【背景技術】
【０００２】
小型のデジタルビデオカメラにおいて高速動画撮影を行う場合、各フレームでの露出不足を補うために一般にゲインを増大させる方法が取られるが、これはノイズも増大させるため画質の悪化を招く。このような問題に対して、高速撮影時の連続する複数のフレームの輝度成分を加算して１枚の画像を合成し、これによって露出不足を補う方法が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】２０１０−２０６７３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一方、静止画の撮影では、移動する被写体を多重露光により連続撮影し、１枚の画像に異なる位置にある同一被写体像を収め、これにより静止画で被写体の動きを表現する撮影方法が知られている。同手法をデジタルカメラにおける連射に応用することも考えられるが、多重露光画像を適切に自動生成する方法は知られていない。
【０００５】
本発明は、連続撮影される被写体の画像を合成して被写体の移動を一枚の画像に適切に収めることを課題としている。
【課題を解決するための手段】
【０００６】
本発明の画像合成装置は、連続撮影された複数のフレーム画像を記憶する画像記憶手段と、複数のフレーム画像から被写体の動きの大きさを評価する動き評価手段と、この評価に基づいて加算フレーム数を算出する加算フレーム数算出手段と、加算フレーム数に亘るフレーム画像を加算して多重露光画像を生成する多重露光手段とを備えたことを特徴としている。
【０００７】
加算フレーム数の算出を複数のフレーム画像の各々に対して順次行い、最新フレームに対する加算フレーム数が、最新フレームに対する被写体の動きの大きさの評価と、直前のフレームに対して算出された加算フレーム数とから算出されることが好ましい。
【０００８】
上記評価に基づき、最新フレーム画像の動きに対する仮加算フレーム数を算出し、仮加算フレーム数を直前のフレームに対する加算フレーム数と比較し、例えば仮加算フレーム数の方が大きいときには最新フレームに対する加算フレーム数を直前のフレームに対する加算フレーム数よりも増加させ、仮加算フレーム数の方が小さいときには減少させる。
【０００９】
仮加算フレーム数は、動きが所定の大きさになるまでは加算を行わない値に設定され、所定の大きさを超えると所定枚数とされるとともに動きが大きくなるに従って小さくなるように設定されることが好ましい。また加算されるフレーム画像に重み付けを行ってもよい。
【００１０】
本発明のデジタルカメラは、上記画像合成装置を備えたことを特徴としている。
【発明の効果】
【００１１】
本発明によれば、連続撮影される被写体の画像を合成して被写体の移動を一枚の画像に適切に収めることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態である画像合成装置を搭載したデジタルカメラのブロック図である。
【図２】本実施形態の画像合成処理の手順を示すフローチャートである。
【図３】被写体の動き量ＭＶと仮加算フレーム数Ｎの関係を例示するグラフである。
【図４】連続する９フレーム分の画像で撮影される移動物体の位置を同一画像中に示した図である。
【図５】図４の第１フレーム画像に対して生成される多重露光画像の１例である。
【図６】図４の第２フレーム画像に対して生成される多重露光画像の１例である。
【図７】図４の第３フレーム画像に対して生成される多重露光画像の１例である。
【図８】図４の第４フレーム画像に対して生成される多重露光画像の１例である。
【図９】図４の第５フレーム画像に対して生成される多重露光画像の１例である。
【図１０】図４の第６フレーム画像に対して生成される多重露光画像の１例である。
【図１１】図４の第７フレーム画像に対して生成される多重露光画像の１例である。
【図１２】図４の第８フレーム画像に対して生成される多重露光画像の１例である。
【図１３】図４の第９フレーム画像に対して生成される多重露光画像の１例である。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を、図面を参照して説明する。図１は本発明の一実施形態である画像合成装置を適用したデジタルカメラのブロック図である。
【００１４】
デジタルカメラ１０は、撮像素子１１、画像信号処理部１２、撮像素子１１の駆動およびカメラ全体の制御を行う制御部１３、スルー画像や撮影された画像あるいは各種設定画面などを表示するＬＣＤなどのモニタ１４、レリーズスイッチなどの操作スイッチを含む操作部１５、メモリカードなどの着脱自在な外部記録媒体１６から主に構成される。
【００１５】
撮像素子１１は、例えば制御部１３からの駆動信号に基づき制御され、撮像素子１１で検出された画像信号はデジタル信号に変換されて画像信号処理部１２に入力される。画像信号処理部１２は、例えば、デジタルシグナルプロセッサ（ＤＳＰ）１７や画像メモリ１８を含む。
【００１６】
画像メモリ１８は、撮像素子１１で撮影された画像を複数フレーム分連続して記憶可能であり、ＤＳＰ１７では、従来周知の各種画像処理が施されるとともに、画像メモリ１８に記憶された画像を用いて後述する本実施形態の画像合成処理が施される。ＤＳＰ１７で処理された画像は、モニタ１４に出力可能であるとともに、必要に応じて外部記録媒体１６に保存される。
【００１７】
図２は、本実施形態の画像合成処理の手順を示すフローチャートである。本処理は、移動する被写体の多重露光撮影を擬似的に作成する（エミュレート）する画像合成処理であり、例えば、ユーザが移動被写体多重露光モードを選択し、同モード下においてレリーズスイッチが押されている間繰り返し実行される。
【００１８】
ステップＳ１００では、図示しないＡＥ機構により露出と画像信号のゲインが設定され、ステップＳ１０２において、撮像素子１１を用いて第ｉフレームの画像ｆ(ｉ）が取得され画像メモリ１８に記憶される。なお、画像メモリ１８には、レリーズスイッチがオンされてからオフされるまでの間、連続して所定フレーム数に達するまで画像が順次記憶される。また、記憶された画像のフレーム数の所定数に達すると最も古いフレームが削除される。本説明では、画像メモリ１８に記憶される最も古いフレームを第１フレームとし、そのフレーム画像をｆ（１）、以降のフレーム画像を順次ｆ（２）、ｆ（３）、…、ｆ（ｉ）で表す。
【００１９】
ステップＳ１０４では、現（最新）フレーム画像ｆ（ｉ）とその前のフレームのフレーム画像ｆ（ｉ−１）から、動きベクトル量ＭＶ（ｉ）が算出される。動きベクトル量ＭＶ（ｉ）は、例えばフレーム間で算出される動きベクトルの絶対値の平均値など、フレーム間での被写体の動き、あるいは移動の程度を代表する量である。
【００２０】
ステップＳ１０６では、ステップＳ１０４で算出された現フレームに対するベクトル量ＭＶ（ｉ）に基づいて、多重露光のエミュレーションにおいて加算（加重）されるべきフレーム数（仮加算フレーム数）Ｎ（ｉ）が算出される。なお、ＭＶ（ｉ）と加算されるべきフレーム数Ｎ（ｉ）の関係は、予め決められており、例えば図３のグラフに示す関係が与えられる。図３の例では、０≦ＭＶ（ｉ）＜ａの範囲（ＭＶ１）でＮ（ｉ）＝１；ａ≦ＭＶ（ｉ）＜ｂの範囲（ＭＶ２）でＮ（ｉ）＝５；ｂ≦ＭＶ（ｉ）＜ｃの範囲（ＭＶ３）でＮ（ｉ）＝４；ｃ≦ＭＶ（ｉ）＜ｄの範囲（ＭＶ４）でＮ（ｉ）＝３；ｃ≦ＭＶ（ｉ）＜ｅの範囲（ＭＶ５）でＭＶ（ｉ）＝２であり、ａ〜ｅの値は予め与えられる。
【００２１】
図３に示されるように、本実施形態では、被写体に殆ど動きがない場合には、加算による視覚効果は殆どなく、逆に僅かに移動した被写体が重なってしまうことから加算すべきフレーム数を１とし、フレーム加算は行わない。一方、被写体の動きが大きいときに加算されるフレーム数が多いと、被写体がフレーム内に収まっていない画像も加算される可能性が高い。また、動きが大きい場合にはモーションブラーの影響もあることから、少ない数のフレーム加算でも被写体の動きを十分に表現できる。そのため本実施形態では、ＭＶ（ｉ）が所定の値ａまでは加算すべきフレーム数を１とし、動きが一定以上、すなわちＭＶ（ｉ）が所定値ａ以上になると加算すべきフレーム数を５枚にまで増やし、それ以降、動きが大きくなるに従って漸次加算すべきフレーム数を減らしている。
【００２２】
ステップＳ１０８では、ステップＳ１０６で設定された現フレームの動きベクトルから算出される加算されるべきフレーム数Ｎ（ｉ）の値が２以上であるか否かが判定される。Ｎ（ｉ）≧２であれば、処理はステップＳ１１８に移り、ステップＳ１０２で取得されたフレーム画像ｆ（ｉ）が出力用フレームとして使用される。すなわち、現フレーム画像ｆ（ｉ）がそのまま、例えばモニタ１４や画像メモリ１８あるいは外部記録媒体１６に出力され本処理は終了する。例えばレリーズスイッチのオン状態が継続していれば、ステップＳ１００以降の処理が再度次のフレームに対し実行される。
【００２３】
一方ステップＳ１０８においてＮ（ｉ）≧２でないと判定された場合には、ステップＳ１１０においてＮ（ｉ）＝ｎ（ｉ−１）であるか否かが判定される。ここでｎ（ｉ−１）は、１フレーム前の処理、すなわちフレーム画像ｆ（ｉ−１）に対する処理で、実際に加算されたフレーム数である。
【００２４】
現フレーム画像ｆ（ｉ）に対するＭＶ（ｉ）の値から加算すべきとされたフレーム数Ｎ（ｉ）が、前フレーム画像ｆ（ｉ−１）に対する処理で実際に加算されたフレーム数ｎ（ｉ−１）と同じであるとき、処理はステップＳ１１６に移り、ｎ（ｉ）＝Ｎ（ｉ）とされ、現フレーム画像ｆ（ｉ）を含めた過去ｎ（ｉ）枚のフレーム画像ｆ（ｉ−（ｎ（ｉ）−１））〜ｆ（ｉ）を加算した合成画像Ｆ（ｉ）が生成される。ステップＳ１１８では、合成画像Ｆ（ｉ）が出力用フレームとしてモニタ１４や画像メモリ１８あるいは外部記録媒体１６に出力され、上述したように例えばレリーズスイッチのオン状態が継続していれば、ステップＳ１００以降の処理が再度次のフレームに対し実行される。
【００２５】
一方、ステップＳ１１０においてＮ（ｉ）≠ｎ（ｉ−１）であると判定され、現フレーム画像ｆ（ｉ）に対するＭＶ（ｉ）の値から加算すべきとされたフレーム数Ｎ（ｉ）が、前フレーム画像ｆ（ｉ−１）で実際に加算されたフレーム数ｎ（ｉ−１）とは異なると判断される場合には、ステップＳ１１２において、Ｎ（ｉ）＞ｎ（ｉ−１）であるか否かが判定される。
【００２６】
すなわち、ステップＳ１１２では、現フレーム画像ｆ（ｉ）で加算すべきとされたフレーム数Ｎ（ｉ）が、前フレーム画像ｆ（ｉ−１）で実際に加算されたフレーム数ｎ（ｉ−１）よりも大きいか否かが判定される。Ｎ（ｉ）の値がｎ（ｉ−１）の値よりも大きいと判定されたときには、ステップＳ１１４において、現フレーム画像ｆ（ｉ）において実際に加算すべきフレーム数ｎ（ｉ）がｎ（ｉ−１）＋１とされ（ｎ（ｉ−１）よりも大きい値とされ）、ステップＳ１１６では、このｎ（ｉ）を合成フレーム数として、フレーム画像ｆ（ｉ）を含めた過去ｎ（ｉ）枚のフレーク画像を加算して合成画像Ｆ（ｉ）が生成される。ステップＳ１１８では、この合成画像Ｆ（ｉ）が出力フレームとされ、本処理は終了するとともに、レリーズスイッチのオン状態が継続していれば、ステップＳ１００以下の処理が次のフレームに対して繰り返される。
【００２７】
一方、ステップＳ１１２において、Ｎ（ｉ）の値がｎ（ｉ−１）の値よりも大きくない、すなわちｎ（ｉ−１）以下であると判定されたときには、ステップＳ１２０において、現フレーム画像ｆ（ｉ）において実際に加算すべきフレーム数ｎ（ｉ）がｎ（ｉ−１）−１とされ（ｎ（ｉ−１）よりも小さい値とされ）、ステップＳ１１６では、このｎ（ｉ）を合成フレーム数として、フレーム画像ｆ（ｉ）を含めた過去ｎ（ｉ）枚のフレーク画像を加算して合成画像Ｆ（ｉ）が生成される。そして前述したように、ステップＳ１１８では、この合成画像Ｆ（ｉ）が出力フレームとされ、本処理は終了するとともに、レリーズスイッチのオン状態が継続していれば、ステップＳ１００以下の処理が次のフレームに対して繰り返される。
【００２８】
次に図２、図４〜図１３を参照して、本実施形態における移動被写体の合成画像生成の態様およびその作用・効果について説明する。
【００２９】
図４は、移動する円形の被写体を連続する９フレームに亘り撮影し、各フレームにおける被写体の位置を同一画面に描いたものである。すなわち、図４において被写体は画面の左側から右側へその速度を変化させながら直線運動し、被写体Ｓ１〜Ｓ９は、同一被写体のフレーム画像ｆ（１）〜フレーム画像ｆ（９）におけるそれぞれの位置を示す。また図において各フレーム画像における被写体のモーションブラーが弧状の補助線として描かれる。
【００３０】
図４の例では、被写体は第１と第２フレームの間に距離ｄ１、第２と第３フレームの間に距離ｄ５、第３と第４フレーム、第４と第５フレームの間に距離ｄ３、第５〜第９フレームの各間に距離ｄ５移動している。距離ｄ１は例えば移動量がＭＶ１（０≦ＭＶ＜ａ）の範囲にあるときに対応し、距離ｄ３は移動量がＭＶ３（ｃ≦ＭＶ＜ｄ）の範囲にあるときに対応する。また距離ｄ５は移動量がＭＶ５（ｄ≦ＭＶ＜ｅ）の範囲にあるときに対応する。
【００３１】
移動量ＭＶは、その初期値として例えば０が与えられており（ＭＶ（１）＝０）、多重露光モードが起動された直後において第１フレーム画像ｆ（１）を取得する処理では、Ｎ（１）＝１に設定される。そのため、フレーム画像は加算されず、実際の加算フレーム数ｎ（１）＝１とされ、ステップＳ１１８において、図５に示されるようにフレーム画像ｆ（１）が直接出力用フレームの画像Ｆ（１）とされる（図２の（Ｉ））。
【００３２】
第２フレーム画像ｆ（２）を取得する処理では、ＭＶ（２）＝ＭＶ１であるため、Ｎ（２）＝１が設定され、第１フレームと同様に、フレーム画像の加算は行われることなく、ステップＳ１１８において図６に示されるようにフレーム画像ｆ（２）が直接出力用フレームの画像Ｆ（２）とされる。すなわちｎ（２）＝１とされる（図２の（Ｉ））。
【００３３】
第３フレーム画像ｆ（３）を取得する処理では、ＭＶ（３）＝ＭＶ５であるため、Ｎ（３）＝２に設定される。また、前フレームでの実際の加算フレーム数ｎ（２）＝１なので、Ｎ（３）＞ｎ（２）となり、図２のステップＳ１１４においてｎ（３）＝ｎ（２）＋１＝２とされ、ステップＳ１１６において、第２、第３フレーム画像ｆ（２）、ｆ（３）が加算され、図７に例示されるような合成画像Ｆ（３）＝（ｆ（３）＋ｆ（２））／２が出力用フレームとされる（図２の（II））。なお、（ｆ（３）＋ｆ（２））／２は、フレームｆ（３）、ｆ（２）の各画素の値をそれぞれ加算して２で割ることを意味する。
【００３４】
また第４フレーム画像ｆ（４）を取得する処理では、ＭＶ（４）＝ＭＶ３であるため、Ｎ（４）＝４に設定される。一方、前フレームでの実際の加算フレーム数ｎ（３）＝２なので、Ｎ（４）＞ｎ（３）となり、ステップＳ１１４においてｎ（４）＝ｎ（３）＋１＝３とされる。これにより、ステップＳ１１６では、第２、第３、第４フレーム画像ｆ（２）、ｆ（３）、ｆ（４）が加算され、図８に例示されるような合成画像Ｆ（４）＝（ｆ（４）＋ｆ（３）＋ｆ（２））／３が生成され、この合成画像Ｆ（４）が出力用フレームとされる（図２の（II））。
【００３５】
第５フレーム画像ｆ（５）が取得される処理では、ＭＶ（５）＝ＭＶ３であるため、Ｎ（５）＝４に設定される。一方、前フレームでの実際の加算フレーム数ｎ（４）＝３なので、Ｎ（５）＞ｎ（４）となり、図２のステップＳ１１４においてｎ（５）＝ｎ（４）＋１＝４とされる。これにより、ステップＳ１１６では、第２、第３、第４、第５フレーム画像ｆ（２）、ｆ（３）、ｆ（４）、ｆ（５）が加算され、図９に例示されるような合成画像Ｆ（５）＝（ｆ（５）＋ｆ（４）＋ｆ（３）＋ｆ（２））／４が生成され、この合成画像Ｆ（５）が出力用フレームとされる（図２の（II））。
【００３６】
第６フレーム画像ｆ（６）が取得される処理では、ＭＶ（６）＝ＭＶ５であるため、Ｎ（６）＝２に設定される。一方、前フレームでの実際の加算フレーム数ｎ（５）＝４なので、Ｎ（６）＜ｎ（５）となり、図２のステップＳ１２０においてｎ（６）＝ｎ（５）−１＝３とされる。これにより、ステップＳ１１６では、第４、第５、第６フレーム画像ｆ（４）、ｆ（５）、ｆ（６）が加算され、図１０に例示されるような合成画像Ｆ（６）＝（ｆ（６）＋ｆ（５）＋ｆ（４））／３が生成され、この合成画像Ｆ（６）が出力用フレームとされる（図２の（III））。
【００３７】
第７フレーム画像ｆ（７）が取得される処理では、ＭＶ（７）＝ＭＶ５であるため、Ｎ（７）＝２に設定される。一方、前フレームでの実際の加算フレーム数ｎ（６）＝３なので、Ｎ（７）＜ｎ（６）となり、図２のステップＳ１２０においてｎ（７）＝ｎ（６）−１＝２とされる。これにより、ステップＳ１１６では、第６、第７フレーム画像ｆ（６）、ｆ（７）が加算され、図１１に例示されるような合成画像Ｆ（７）＝（ｆ（７）＋ｆ（６））／２が生成され、この合成画像Ｆ（７）が出力用フレームとされる（図２の（III））。
【００３８】
第８フレーム画像ｆ（８）が取得される処理では、ＭＶ（８）＝ＭＶ５であるため、Ｎ（８）＝２に設定される。一方、前フレームでの実際の加算フレーム数ｎ（７）＝２なので、Ｎ（８）＝ｎ（７）となり、ステップＳ１１６において、第７、第８フレーム画像ｆ（７）、ｆ（８）が加算され、図１２に例示されるような合成画像Ｆ（８）＝（ｆ（８）＋ｆ（７））／２が出力用フレームとされる（図２の（IV））。
【００３９】
第９フレーム画像ｆ（９）が取得される処理では、ＭＶ（９）＝ＭＶ５であるため、Ｎ（９）＝２に設定される。一方、前フレームでの実際の加算フレーム数ｎ（８）＝２なので、Ｎ（９）＝ｎ（８）となり、ステップＳ１１６において、第８、第９フレーム画像ｆ（８）、ｆ（９）が加算され、図１３に例示されるような合成画像Ｆ（９）＝（ｆ（９）＋ｆ（８））／２が出力用フレームとされる（図２の（IV））。
【００４０】
以上のように、本実施形態によれば、フレームを更新する毎に順次フレーム加算処理を行うとともに、現フレームでの被写体の動きと直前のフレームでの加算状況とを勘案して、適正なフレーム加算数を算出することで、移動する被写体の多重露光撮影にとって適切なフレーム数が得られる。これにより連続撮影される被写体の画像を自動合成して被写体の移動を一枚の画像に適切に収めることができる。
【００４１】
また本実施形態では、このように自動合成された画像を順次連続してコマ表示することで、被写体の移動軌跡を容易に把握することが可能となる。また連続表示される合成画像の加算フレーム数が適正な数とされることで、違和感のない動画が得られる。
【００４２】
本実施形態の変形例として、加算されるフレーム画像に重み付けを行うことが考えられる。例えば、最新のフレームの重み付けを大きくし、加算される過去のフレームの重み付けを小さくしてもよい。このとき、過去のフレームは全て同じ重み付けとしてもよいが、過去に行く程、重み付けを小さくしてもよい。
【００４３】
なお、本実施形態では、デジタルカメラを例に説明を行ったが、本実施形態は、例えば過去に記録された連続する複数の画像をパーソナルコンピュータなどで合成する場合にも適用できる。
【符号の説明】
【００４４】
１０  デジタルカメラ
１１  撮像素子
１２  画像信号処理部
１３  制御部
１４  モニタ
１５  操作部
１６  外部記録媒体
１７  ＤＳＰ
１８  画像メモリ
【図１】
2014023067.tif 000003
【図２】
2014023067.tif 000004
【図３】
2014023067.tif 000005
【図４】
2014023067.tif 000006
【図５】
2014023067.tif 000007
【図６】
2014023067.tif 000008
【図７】
2014023067.tif 000009
【図８】
2014023067.tif 000010
【図９】
2014023067.tif 000011
【図１０】
2014023067.tif 000012
【図１１】
2014023067.tif 000013
【図１２】
2014023067.tif 000014
【図１３】
2014023067.tif 000015