図1は本発明の一実施形態による撮像装置としての電子カメラの構成を示すブロック図である。この電子カメラは、撮像光学系11と、レンズ駆動部12と、撮像素子13と、撮像素子駆動回路14と、信号処理回路15と、データ処理回路16と、第1メモリ17と、表示制御回路18と、モニタ19と、圧縮/伸長回路20と、記録I/F(インターフェース)21と、通信I/F(インターフェース)22と、操作部材23と、レリーズ釦24と、振動センサ25と、第2メモリ26と、制御回路27と、バス28とを有している。
ここで、データ処理回路16、第1メモリ17、圧縮/伸長回路20、第2メモリ26および制御回路27はそれぞれバス28を介して相互に接続されている。また、レンズ駆動部12、撮像素子駆動回路14、信号処理回路15、表示制御回路18、記録I/F21、通信I/F22、操作部材23、レリーズ釦24、振動センサ25は、それぞれ制御回路27と接続されている(なお、図1では、信号処理回路15および表示制御回路18と制御回路27との間を結ぶ信号線の図示は簡単のため省略する)。
撮像光学系11は、ズームレンズやフォーカシングレンズを含む複数のレンズ群で構成されており、撮像素子13の撮像面上に被写体像を結像させる役目を果たす。なお、簡単のため、図1では撮像光学系11を1枚のレンズとして図示する。
撮像光学系11の各々のレンズ位置は、レンズ駆動部12によって光軸方向に調整される。このレンズ駆動部12はレンズ駆動機構を含み、制御回路27からのレンズ駆動指令に応じてレンズ位置を調整する。例えば、レンズ駆動部12がフォーカスレンズを光軸方向に進退駆動することで、撮像光学系11のフォーカス調整が行われる。また、レンズ駆動部12がズームレンズを光軸方向に進退駆動することで、撮像光学系11のズーム調整が行われる。
撮像素子13は、撮像光学系11を通過した光束による被写体像を光電変換してアナログの画像信号を生成する。本実施形態での撮像素子13は、静止画像の単写撮影に加えて、1回の撮影指示で静止画像を所定の撮影間隔で連続的に撮影する連写撮影を行うことも可能である。この撮像素子13の出力は信号処理回路15に接続されている。なお、撮像素子13は、CCDイメージセンサあるいはCMOS型イメージセンサなどで構成される。
撮像素子駆動回路14は、制御回路27からの指令に応じて所定タイミングの駆動信号を生成し、この駆動信号を撮像素子13に供給する。そして、撮像素子駆動回路14は、上記の駆動信号によって、撮像素子13の電荷蓄積(撮像)および蓄積電荷の読み出しを制御する。
信号処理回路15は、撮像素子13の出力に対して各種の信号処理を施すASICである。具体的には、信号処理回路15は、相関二重サンプリング、ゲインの調整、直流再生、A/D変換などを実行する。信号処理回路15でのゲインの調整などのパラメータは、制御回路27からの指令に応じて決定される。なお、信号処理回路15はデータ処理回路16に接続されており、上記信号処理後のデータはデータ処理回路16に出力される。
データ処理回路16は、信号処理回路15から出力された画像のデータに対してデジタル信号処理を施す回路である。データ処理回路16では、例えば、色補間処理、階調変換処理、輪郭強調処理、ホワイトバランス調整などの画像処理が実行される。このデータ処理回路16は、表示制御回路18および圧縮/伸長回路20にそれぞれ接続されている。そして、データ処理回路16は、制御回路27からの指令に応じて、画像処理後の記録画像のデータを圧縮/伸長回路20に出力する。
また、データ処理回路16は、制御回路27からの指令に応じて、画像の解像度変換(画素数変換)処理を実行する。一例として、モニタ19に再生画像を表示する場合、データ処理回路16は、再生表示しようとする画像のデータに対して、モニタ19の画素数に合わせるための解像度変換(画素数変換)処理を実行する(なお、特に断りのないかぎり、本明細書でモニタ19に画像を表示するときには、データ処理回路16で表示画像の画素数調整が行われているものとする)。そして、データ処理回路16は、解像度変換後の再生画像のデータを表示制御回路18に出力する。また、電子ズーム処理を行う場合、データ処理回路16は、入力される画像のデータに対して解像度変換(画素数変換)処理を実行し、解像度変換後の画像のデータを圧縮/伸長回路20および表示制御回路18にそれぞれ出力する。
第1メモリ17は、データ処理回路16または圧縮/伸長回路20による処理の前工程や後工程などで画像のデータを一時的に記憶するバッファメモリである。
表示制御回路18は、制御回路27からの指令に応じて、データ処理回路16から入力された画像のデータに所定の信号処理(例えば、モニタ19の表示特性にあわせた階調特性の変換など)を施してモニタ19へ出力する。表示制御回路18は、さらに上記の画像のデータに撮影メニュー、カーソルなどのオーバーレイ画像データを重畳させる処理を行う。このような制御回路27および表示制御回路18の制御によって、オーバーレイ画像が重畳された被写体画像をモニタ19に表示することができる。なお、本実施形態でのモニタ19は、接眼部を有する電子ファインダや、カメラ筐体の背面などに設けられる液晶表示パネルのいずれで構成されていてもよい。
圧縮/伸長回路20は、制御回路27からの指令に応じて、データ処理回路16から入力される画像のデータに所定の圧縮処理を施す。この圧縮/伸長回路20は記録I/F21に接続されており、圧縮後の画像のデータは記録I/F21に出力される。また、圧縮/伸長回路20は、圧縮後の画像のデータに対し、圧縮処理の逆処理である復号化処理を実行する。なお、本実施形態の圧縮/伸長回路20は、可逆圧縮(いわゆるロスレス符号化)を行うことが可能な構成となっている。
記録I/F21は、記憶媒体29を接続するためのコネクタが形成されている。そして、記録I/F21は、コネクタに接続された記憶媒体29に対してデータの書き込み/読み込みを実行する。上記の記憶媒体29は、小型ハードディスクや、半導体メモリを内蔵したメモリカードや、DVDなどの光ディスクなどで構成される。図1では記憶媒体29の一例としてメモリカードを図示する。なお、記憶媒体29は、電子カメラに内蔵されるものであってもよく、電子カメラに対して着脱可能に装着されるものであってもよい。また、画像のデータを読み書きする記憶媒体として、通信I/F22を介して電気的に接続された外付けの記憶媒体を利用してもよい。
ここで、電子カメラの動作モードの1つである撮影モードにおいて撮像した画像のデータを記録する場合、制御回路27は、記録画像に対応する再生画像をモニタ19に表示させる。本明細書での記録画像とは、撮像により得られ、最終的に記憶媒体29に記録されるべき(あるいは記憶媒体29に記録された)静止画像データに対応する静止画像を意味するものとする。
なお、操作部材23によるユーザの操作によって、記録画像の非圧縮記録が制御回路27に指示されている場合、圧縮/伸長回路20は圧縮処理を行なわずに、記録画像のデータを記録I/F21に出力する。上記の非圧縮記録の場合にも、制御回路27は、記録画像に対応する再生画像をモニタ19に表示させる。
また、電子カメラの動作モードの1つである再生モードにおいて、制御回路27は、記憶媒体29に記憶されている画像のデータによる再生画像をモニタ19に表示させる。この再生モードでは、記録I/F21が、制御回路27からの指令に応じて再生対象の画像のデータを記憶媒体29から読み出す。そして、圧縮/伸長回路20は、再生対象の画像のデータに対して復号化処理を施した上で、復号化後の画像のデータをデータ処理回路16に送る。その後、データ処理回路16および表示制御回路18が復号化後の画像のデータに対して上述の処理を実行することで、モニタ19には再生画像が表示される。なお、記憶媒体29から非圧縮の画像データが読み出された場合には、圧縮/伸長回路20は復号化処理を行わずに画像のデータをデータ処理回路16に送る。
通信I/F22は、有線または無線による公知の通信規格の仕様に準拠して、外部装置30(例えば、パーソナルコンピュータや外付けの記憶媒体)とのデータ送受信を制御する。電子カメラと外部装置30との通信は、有線または無線の通信回線を介して行われる。
操作部材23は、例えば、コマンドダイヤル、十字状のカーソルキー、ズーム操作釦、決定釦などで構成される。そして、操作部材23は電子カメラの各種入力をユーザから受け付ける。なお、操作部材23には、後述する補間画像を生成するフレーム数を設定する設定部材を設けるようにしてもよい。
一例として、制御回路27は、ズーム操作釦からの入力を受け付けるとズームレンズについてのレンズ駆動指令を出力し、レンズ駆動部12にズームレンズを進退駆動させる。これにより、撮像素子13の撮像面上に結像される被写体像が拡大もしくは縮小して撮像光学系11による光学的なズーム調整が行われる。
また、制御回路27は、さらにズーム操作釦からの入力を受け付けるとデータ処理回路16に指令を出力し、画像のデータに対する解像度変換処理の変換比率をユーザの操作に応じて変化させる。これにより、モニタ19に表示される画像が拡大もしくは縮小して電子的なズーム調整が行われる(電子ズーム)。上記の解像度変換処理の変換比率は、電子ズーム倍率に対応する。データ処理回路16が電子ズーム倍率を高める方向に変換比率を変える場合、モニタ19には再生画像の一部が拡大されて表示される(拡大率が上がる反面、再生画像の表示範囲は狭くなる)。一方、データ処理回路16が電子ズーム倍率を低くする方向に変換比率を変える場合、モニタ19に表示される再生画像の拡大率は低くなるが、再生画像の表示範囲は広くなる。なお、上記の撮影モードでは、モニタ19の表示画像に対応する撮像画像のデータを記憶媒体29に記録することができる。
レリーズ釦24は、撮影モードにおいて、半押し操作による撮影前のオートフォーカス(AF)動作開始の指示入力と、全押し操作による撮像動作開始の指示入力とをユーザから受け付ける。
制御回路27は、レリーズ釦24の半押し操作に応じて、公知のコントラスト検出方式のAF動作を実行する。このAFでは、撮像素子13から読み出される画像信号のなかで、撮影画面内に予め設定されているフォーカス検出領域に対応する信号が用いられる。具体的には、信号処理回路15によって信号処理された画像のデータのうち、フォーカス検出領域に対応するデータについての高周波数成分の積算値(いわゆる焦点評価値)を最大にするように、制御回路27はフォーカスレンズのレンズ駆動指令をレンズ駆動部12に送る。焦点評価値を最大にするフォーカスレンズの位置は、撮像素子13によって撮像される被写体像のエッジのぼけをなくし、画像のコントラストを最大にする(尖鋭度を高める)合焦位置である。
振動センサ25は、電子カメラの筐体の振れを直交する2方向について検出する。この振動センサ25は、例えば角速度センサやジャイロセンサなどで構成され、電子カメラの筐体内に配置される。振動センサ25は、撮影モードにおいて電子カメラに加わる振れを検知し、直交する2方向の振れ量データを制御回路27に出力する。制御回路27は、上記の振れ量データに基づいて手ブレ補正を実行する。例えば、撮像光学系11にブレ補正レンズがある場合、制御回路27は、筐体の振れに伴う撮像面上での被写体の移動が打ち消されるように、レンズ駆動部12を介してブレ補正レンズを駆動させることで手ブレ補正を行う。
第2メモリ26は、フラッシュメモリ等の不揮発性の記憶媒体である。この第2メモリ26には、各種の設定データなどが記憶されている。
制御回路27は、電子カメラの動作を統括的に制御するプロセッサである。例えば、制御回路27は、撮像素子13から出力される信号から被写界の明るさを求める。そして、制御部は、上記の明るさの情報に基づいて公知のAE演算を実行し、撮影モードでの撮像条件(撮像素子13の電荷蓄積時間、絞り(不図示)の絞り値、画像信号の増幅度)を決定する。
また、制御回路27は、第2メモリ26等に記憶されたプログラムを実行することで、補間画像の生成処理や、時間方向の画像加算による合成処理などを実行する(これらの処理については後述する)。
以下、本実施形態の電子カメラの再生モードにおける動作を説明する。
図2は、本実施形態の電子カメラにおける再生モードでの動作を示すフローチャートである。この再生モードでは、連写撮影された静止画像ファイルが再生対象となる場合を前提として説明を行う。なお、本実施形態の電子カメラは、連写撮影モードを設定することにより連写撮影を行うことができる。連写撮影モードは、撮影モードの1つであって、レリーズ釦24が押圧されている間、電子カメラが所定の時間間隔で静止画像の撮像動作を連続的に実行するモードである。連写撮影モードでの制御回路27は、連写撮影される各々の記録画像が静止画としての鑑賞に耐えうるように撮像条件を決定する。例えば、制御回路27は、絞りを絞って被写界深度を深くする。また、本フローチャートの処理は、ユーザが操作部材23を操作して画像再生指示が行われることにより開始される。
ステップS1において、制御回路27は、連写撮影された画像ファイルを記憶媒体29から読み込む。これにより、制御回路27は、本実施形態の電子カメラが行う連続撮影によって時系列順に取得された複数の静止画像を読み込む。そして、圧縮/伸長回路20は、制御回路27の指令に応じて、画像ファイル内の画像データの復号化処理を実行し、データ処理回路16へ出力する。
ステップS2において、制御回路27は、ステップS1で読み込んだ各画像ファイルをモニタ19においてサムネイル表示する。このとき、制御回路27の制御に応じて、ステップS1で読み込んだ各画像ファイルのサムネイル画像データがデータ処理回路16から表示制御回路18へ出力される。
ステップS3において、制御回路27は、ステップS1で読み込んだ各画像ファイルのうちいずれかの画像ファイルをユーザの指示に応じて選択する。このときユーザは、操作部材23の選択操作により、ステップS2でサムネイル表示された画像ファイルのいずれかを選択対象の画像ファイルとして指定することができる。
ステップS4において、制御回路27は、ステップS3で選択した画像ファイルと、その前後の所定の取得期間以内に取得された画像ファイルとを対象として、これらの各画像ファイルのうち時間軸方向に隣接する2つの画像ファイルにおける画像間での被写体の動きベクトルを求める。例えば、制御回路27は、16×16画素のマクロブロック単位で画像間の被写体の動きを抽出し、この結果から画像間での被写体の動きベクトルを求める。なお、ステップS4において動きベクトルの算出対象とする画像ファイルの取得期間は、後述する図3のステップS100または図4のステップS201において設定する抽出期間よりも長くすることが好ましい。あるいは、ステップS1で読み込んだ画像ファイルの全てを対象として動きベクトルを算出してもよい。
ステップS5において、制御回路27は、ステップS4で求めた動きベクトルに基づいて、連写撮影で取得された各画像ファイルによって表されるシーン、たとえば撮影された情景や撮影時の状況などを認識するためのシーン認識を行う。このシーン認識では、制御回路27は、被写界を撮像した際の撮像画面上に所定量以上の動きのある被写体が存在するシーン、すなわちステップS4で求めた動きベクトルの大きさが所定量以上であるシーンを、画像合成が必要な特定のシーンとして認識する。反対に、動きベクトルの大きさが所定量未満である場合は、当該動画像において画像合成が必要な特定のシーンが撮影されていないと認識する。これにより、ステップS1で読み込んだ各静止画像が取得されたシーンが認識される。
なお、本実施形態のステップS5において、制御回路27は、動きベクトルの大きさに加えて、動きベクトルの向き、記録画像の全体の明るさ、被写体の輝度、被写体の大きさ等を考慮して動画像のシーンを認識してもよい。打ち上げ花火を撮影したときに、当該撮影シーンを特定のシーンとして認識する場合などは、このようなシーン認識の方法が特に有効である。
たとえば、記録画像全体の明るさが夜景に相当する程度の明るさ(暗さ)であり、被写体の輝度が所定値以上であり、被写体の大きさが所定値以下であったとする。さらに、こうした条件を満たす被写体が記録画像中に複数存在し、それぞれの動きベクトルが記録画像中で放射状に配置されていたとする。このような場合、制御回路27は、撮影されたシーンを打ち上げ花火のシーンとして認識する。なお、この場合の各被写体は打ち上げ花火の各々の輝点ということになる。
また、本実施形態のステップS5では、制御回路27は、動きベクトルに加えて、電子カメラの動きを考慮して動画像のシーンを認識してもよい。流し撮りをしたとき、すなわち電子カメラを上下や左右に動かしながら撮影したときに、当該撮影シーンを特定のシーンとして認識する場合などは、このようなシーン認識の方法が特に有効である。この際の電子カメラの動きは、振動センサ25により検出された振れの方向と量から判断することができる。
なお、以下の説明において、制御回路27は、上記の打ち上げ花火のシーンまたは流し撮りのシーンが撮影されているときに、これを特定のシーンとして認識するものとする。しかし、打ち上げ花火や流し撮りのシーンはあくまで一例であって、制御回路27が特定のシーンとして認識するシーンはこれに限定されない。少なくとも動きベクトルに基づいて認識可能なシーンであれば、どのようなシーンを特定のシーンとして認識してもよい。
あるいは、ステップS3で選択した画像ファイルが所定の条件を満たす場合は、画像合成が不要なシーンであると認識してもよい。たとえば、露出などを変化させて連写したオートブラケティング用の撮影画像がステップS3で選択された場合は、画像合成が不要なシーンであると認識することができる。
ステップS6において、制御回路27は、ステップS5のシーン認識の結果に基づいて、ステップS1で読み込んだ各画像ファイルが連写撮影で取得されたシーンが特定のシーンであるか否か、すなわち上記の打ち上げ花火のシーンまたは流し撮りのシーンのいずれかであるか否かを判定する。これにより、特定のシーンであると判定した場合はステップS7へ進み、特定のシーンではないと判定した場合はステップS8へ進む。
ステップS7において、制御回路27は、ステップS1で読み込んだ各画像ファイルを撮影した際の連写間隔情報を取得する。この連写間隔情報は、電子カメラが連写撮影モードにおいて画像ファイルと共に記録したものを読み出すことで取得してもよい。あるいは、電子カメラの型名や、画像ファイルの解像度(画素数)などに応じて、連写間隔を判別してもよい。ステップS7を実行したらステップS9へ進む。
ステップS8において、制御回路27は、通常の画像再生を行う。すなわち、データ処理回路16および表示制御回路18を介して、ステップS3で選択した画像ファイルをモニタ19に再生表示する。ステップS8を実行したら、制御回路27は図2のフローチャートを終了する。これにより、特定シーンでない静止画像が選択された場合は、通常の再生表示を行う。
ステップS9において、制御回路27は、ステップS3で選択した画像ファイルの前後に削除画像、すなわち連写撮影後にユーザによって削除された画像ファイルがあるか否かを判定する。この判定は、ステップS3で選択した画像ファイルの前後に取得された各画像ファイルのうちいずれかの取得時刻と、当該画像ファイルと時間軸方向に隣接する画像ファイルの取得時刻との間隔が、判定しきい値として予め定めた所定の時間以上であるか否かを判別することによって行われる。すなわち、隣接する画像ファイルとの取得時刻間隔が所定の判定しきい値以上である画像ファイルがある場合は、削除画像があると判定してステップS10へ進む。一方、判定対象の全ての画像ファイルについて、隣接する画像ファイルとの取得時刻間隔が所定の判定しきい値未満である場合は、削除画像がないと判定してステップS11へ進む。なお、この判定しきい値は、ステップS7で取得した連写間隔情報に基づいて設定してもよい。
上記ステップS9の判定は、ステップS1で読み込んだ画像ファイルの全てを判定対象として行ってもよい。あるいは、一部の画像ファイルのみを判定対象としてもよい。たとえば、ステップS4において動きベクトルの算出対象とした画像ファイルのみを判定対象としてステップS9の判定を行ってもよい。
ステップS10において、制御回路27は、削除画像に対応する補間画像を生成する。ここで生成された補間画像は、後述するステップS14の画像合成において、合成対象とする画像ファイルの一部として利用することができる。なお、補間画像の画素数は、ステップS1で読み込んだ各画像ファイルと同じ画素数に設定される。また、本実施形態での制御回路27は、被写体像の変形を伴う幾何学的なモーフィング処理や、被写体像が変形せずに移動するモーフィング処理を行って、静止画像としての補間画像を生成する。
具体的には、制御回路27は、以下の(イ)から(ト)の手順で補間画像を生成する。ここで、ステップS9において取得時刻間隔が判定しきい値以上であると判定された隣接する2つの画像ファイルの間に生成される補間画像の数は、当該2つの画像ファイルの取得時刻間隔に応じて制御回路27が変更する。なお、以下の例では、簡単のため、2つの画像ファイルの間に2つの補間画像を挿入する場合について説明する。
(イ)制御回路27は、時間軸方向に隣接する2つの画像ファイルを指定する。
(ロ)制御回路27は、上記(イ)で指定された隣接する2つの画像ファイルにそれぞれ含まれる特徴点を求め、その対応付けを行う。特徴点は、隣接する2つの画像ファイルのデータに対してそれぞれエッジ成分を抽出することで、例えば抽出したエッジの交点(コーナー)の位置として求められる。そして、これらの特徴点のマッチング処理を実行して、各々の特徴点の対応関係を求める。
(ハ)制御回路27は、上記(ロ)で対応付けした一対の特徴点の位置を空間方向に結ぶ関数(モーフィング動作における特徴点の移動軌跡)を求める。ここで、上記の関数は、一対の特徴点を直線で結ぶものであってもよく、あるいは一対の特徴点をスプライン曲線などで結ぶものであってもよい。なお、制御回路27は、2つの画像ファイル間で対応付けができた全ての特徴点について上記の関数を求める。
(ニ)制御回路27は、上記(ハ)で求めた関数によって、補間画像における特徴点の位置を決定する。具体的には、制御回路27は、補間画像の挿入数に応じて上記の関数と一対の特徴点とで定義された区間を内分し、この内分点の位置を補間画像の特徴点の位置とする。
図5は、補間画像での特徴点の決定方法の一例を示す説明図である。図5の例では、第1画像ファイルの特徴点A,B,Cに対して、第2画像ファイルの特徴点D,E,Fがそれぞれ対応する。そして、第1特徴点A,Dを結ぶ一次関数の区間を3つに内分する点(G,J)の位置が、各々の補間画像における第1特徴点の位置となる。なお、補間画像における第2特徴点の位置(H,K)および第3特徴点の位置(I,L)についても、上記の第1特徴点の場合と同様の手順で求めることができる。
(ホ)制御回路27は、中間画像において特徴点以外の注目画素の位置をそれぞれ求める。具体的には、制御回路27は、隣接する2つの画像ファイルにおける注目画素の位置を特徴点を結ぶベクトルで定義する。そして、制御回路27は、上記のベクトルの定義に基づいて、補間画像上での注目画像の位置を求める。
図6は、補間画像での注目画素の決定方法の一例を示す説明図である。
隣接する2つの画像ファイルにおいて、特徴点A,B,Cと注目画素Pとがあるときに、特徴点Aと注目画素Pとを結ぶベクトルPは、特徴点A,B間を結ぶベクトルXと、特徴点A,C間を結ぶベクトルYとの関係により、以下の式(1)のように定義できる。
(1)
ただし、式(1)において、a,bは係数である。
一方、補間画像において、特徴点A,B,Cとそれぞれ対応関係を有する特徴点A’,B’,C’の位置が既知であるときに、補間画像で注目画素Pに対応する注目画素P’の位置は、以下のようにして求めることができる。すなわち、特徴点A’と注目画素P’とを結ぶベクトルP’は、特徴点A’,B’間を結ぶベクトルX’と、特徴点A’,C’間を結ぶベクトルY’との関係により、以下の式(2)で求めることができる。
(2)
したがって、制御回路27は、上記の方法で補間画像における各々の注目画素の位置を求めることができる。
(ヘ)制御回路27は、補間画像における各画素の階調値の変化を求める。具体的には、第1に、制御回路27は、隣接する2つの画像ファイル間において対応関係を有する画素(注目画素)の階調値をそれぞれ求める。第2に、制御回路27は、2つの階調値の区間を補間画像の挿入数に応じて内分し、補間画像における注目画素の階調値を求める。一例として、隣接する2つの画像ファイルで注目画素の階調値がそれぞれ130,136であるときに、制御回路27は、階調値130〜136の区間を3つに内分する点を求める。そして、制御回路27は、上記の内分点に対応する階調値(132,134)を、各々の補間画像での注目画素の階調値とする。なお、制御回路27は、上記の階調値をRGBまたはYCbCrのそれぞれの値について求める。
(ト)制御回路27は、上記の工程で生成された補間画像を第1メモリ17または第2メモリ26に記録する。そして、制御回路27は、上記(イ)で指定した隣接する2つの画像ファイルを変更して、上記(ロ)から(へ)までの処理を繰り返す。これにより、制御回路27は、ステップS9において取得時刻間隔が判定しきい値以上であると判定された全ての画像ファイルの組について、その間の削除画像に対応する補間画像をそれぞれ生成する。
なお、以上説明したようにして生成した補間画像のファイルを記憶媒体29に記録しておき、後で図2の再生モードを実行した場合にも利用できるようにしてもよい。この場合、補間画像のファイルは、他の画像ファイルと区別して記憶媒体29に記録することが好ましい。これにより、補間画像ファイルを通常の画像再生などの対象から除外して、画像合成の対象にのみ利用することができる。
ステップS11において、制御回路27は、ステップS5のシーン認識の結果に基づいて、ステップS6で判定された特定シーンの種類を判定する。すなわち、打ち上げ花火のシーンと流し撮りのシーンのいずれであるかを判定する。打ち上げ花火のシーンである場合はステップS12へ進み、流し撮りのシーンである場合はステップS13へ進む。
ステップS12において、制御回路27は、打ち上げ花火シーン用の合成対象画像決定処理を行う。この処理の具体的な内容は、後で図3により詳しく説明する。ステップS12を実行したら、制御回路27はステップS14へ進む。
一方、ステップS13において、制御回路27は、流し撮りシーン用の合成対象画像決定処理を行う。この処理の具体的な内容は、後で図4により詳しく説明する。ステップS13を実行したら、制御回路27はステップS14へ進む。
上記のステップS12またはステップS13のいずれかの処理を行うことにより、制御回路27は、ステップS3で選択した画像ファイルの前後に取得された静止画像の画像ファイルに基づいて、合成対象とする静止画像の画像ファイルを決定することができる。
ステップS14において、制御回路27は、ステップS3で選択した画像ファイルと、ステップS12またはS13で決定された合成対象の画像ファイルとを合成して、合成画像を生成する。ここでは、選択画像ファイルと合成対象画像ファイルの各画素値をそれぞれの加算比率に応じて合計することで、合成画像を生成する。なお、ステップS10で生成された補間画像のうちで、後述のステップS100またはS201において設定される抽出期間内に対応するものがある場合は、その補間画像も合成対象に含めて合成画像を生成するようにする。こうして合成画像を生成することで、特定シーンの静止画像に適した像流れを再現することができる。
なお、ステップS14で合成画像を生成する際は、合成対象の画像ファイルの数に応じて各画像ファイルの加算比率を設定することが好ましい。たとえば、合成対象画像ファイルが選択画像ファイルの前後に1つずつある場合、選択画像ファイルの加算比率を0.5に、合成対象画像ファイルの加算比率を0.25にそれぞれ設定する。すなわち、時間軸方向に表記すると、各画像ファイルの加算比率を「0.25:0.5:0.25」に設定する。一方、合成対象画像ファイルが選択画像ファイルの前後に2つずつある場合、選択画像ファイルの加算比率を0.4に、選択画像ファイルに隣接する合成対象画像ファイルの加算比率を0.2に、その前後の合成対象画像ファイルの加算比率を0.1にそれぞれ設定する。すなわち、時間軸方向に表記すると、各画像ファイルの加算比率を「0.1:0.2:0.4:0.2:0.1」に設定する。なお、ここで挙げた加算比率は一例であるため、他の加算比率を設定してもよい。
ここで、図7(a)に選択画像の一例を示す。また、図7(b)では、図7(a)の選択画像とその前後に取得された画像とを合成することによって生成された合成画像の一例を示す。この図7(b)の例では、合成対象とする画像ファイルが選択画像ファイルの前後に2つずつあって、上記のように時間軸方向で表記したときの各画像ファイルの加算比率が「0.1:0.2:0.4:0.2:0.1」となる場合の例を示している。合成画像は、表示の核となる選択画像に対して時間軸方向で過去の画像と未来の画像とが加算されるため、画像上に像流れが発生する。そのため、打ち上げ花火や流し撮りのシーンにおける静止画像として観賞したときに好ましい画像となる。
ステップS15において、制御回路27は、データ処理回路16および表示制御回路18を介して、ステップS14で生成した合成画像をモニタ19に再生表示する。ステップS15を実行したら、制御回路27は図2のフローチャートを終了する。
次に、ステップS12で実行される打ち上げ花火シーン用の合成対象画像決定処理について説明する。図3は、打ち上げ花火シーン用の合成対象画像決定処理での動作を示すフローチャートである。
ステップS100において、制御回路27は、図2のステップS1で読み込んだ画像ファイルの中から合成対象とする画像ファイルを抽出するための所定の抽出期間を設定する。ここでは、図2のステップS3で選択した画像ファイルの取得時刻を基準にして、その前後の所定の期間を抽出期間として設定する。たとえば、選択画像ファイルの取得時刻の前および後の2秒間、合計4秒間の期間を抽出期間として設定する。
ステップS101において、制御回路27は、ステップS1で読み込んだ画像ファイルの中から、その取得時刻がステップS100で設定した抽出期間内である画像ファイルを抽出する。すなわち、抽出期間として設定した所定の期間内に取得された複数の静止画像を、図2のステップS14での合成対象とする静止画像として抽出する。
ステップS102において、制御回路27は、補間画像を生成するための生成条件として、ステップS101で抽出した各画像ファイルのうち隣接する2つの画像ファイルにおける取得時刻間隔が所定時間以上、たとえば0.5秒以上であるか否かを判定する。この生成条件を満たす場合はステップS103へ進み、満たさない場合は図3のフローチャートを終了して図2のステップS14へ進む。
ステップS103において、制御回路27は、ステップS102で取得時刻間隔が所定時間以上と判定された2つの画像ファイル間に補間画像を生成する。ここでは、図2のステップS10で説明したのと同様の方法により、静止画像としての補間画像を生成する。生成された補間画像は、ステップS101で抽出された画像ファイルと同様に、図2のステップS14での合成対象とされる。取得時刻間隔が所定時間以上である全ての画像ファイルの組に対して補間画像を生成したら、図3のフローチャートを終了して図2のステップS14へ進む。
上記のように、ステップS101において取得時刻が抽出期間内である静止画像ファイルを合成対象として抽出すると共に、ステップS103において合成対象とする静止画像としての補間画像を生成することにより、打ち上げ花火シーンにおける合成対象画像が決定される。
なお、ステップS100およびS101の処理と、ステップS102およびS103の処理とは、いずれか一方のみを実行するようにしてもよい。たとえば、図2のステップS10で生成した補間画像との重複を避けるために、ステップS102およびS103の処理を実行しないようにしてもよい。
次に、図2のステップS13で実行される流し撮りシーン用の合成対象画像決定処理について説明する。図4は、流し撮りシーン用の合成対象画像決定処理での動作を示すフローチャートである。
ステップS200において、制御回路27は、図2のステップS1で読み込んだ画像ファイルを連続撮影した際の電子カメラの動きを算出する。ここでいう電子カメラの動きは、各画像ファイル間の画角移動量に相当するものであって、連写時にどれだけ撮影方向が変化したかを表す。この電子カメラの動きは、連写時の電子カメラの動き量(振れ量)および撮像光学系11の焦点距離に基づいて求めることができる。なお、これらの情報は、連写時に振動センサ25により検出された振れ量のデータと撮像光学系11の焦点距離とを画像ファイルと共に記憶媒体29に記録しておくことで、画像ファイルの読み込み時に合わせて取得することができる。
あるいは、読み込んだ複数の画像ファイルにおける背景の動き量を算出し、これに基づいて電子カメラの動きを求めることとしてもよい。背景の動き量は、図2のステップS4で求めた動きベクトルから算出することができる。すなわち、ステップS4で各被写体について求めた動きベクトルのうち、背景に相当する被写体の動きベクトルに基づいて、背景の動き量を決定することができる。このとき、主要被写体の位置を画像間で合わせたときの背景の変位量を求めるために、主要被写体の動きベクトルに基づいて背景の動きベクトルを補正してもよい。
ステップS201において、制御回路27は、図2のステップS1で読み込んだ画像ファイルの中から合成対象とする画像ファイルを抽出するための所定の抽出期間を設定する。ここでは、図2のステップS3で選択した画像ファイルの取得時刻を基準にして、その前後に、ステップS200で算出した電子カメラの動きに応じた期間を抽出期間として設定する。このとき、電子カメラの動きが大きいほど抽出期間を長く設定することが好ましい。たとえば、電子カメラの動きが所定量未満の場合は、選択画像ファイルの取得時刻の前および後の0.5秒間、合計1秒間の期間を抽出期間として設定する一方で、電子カメラの動きが所定量以上の場合は、選択画像ファイルの取得時刻の前および後の1秒間、合計2秒間の期間を抽出期間として設定する
ステップS202において、制御回路27は、ステップS1で読み込んだ画像ファイルの中から、その取得時刻がステップS201で設定した抽出期間内である画像ファイルを抽出する。すなわち、連続撮影時の電子カメラの動きに応じて設定した抽出期間内に取得された複数の静止画像を、図2のステップS14での合成対象とする静止画像として抽出する。
ステップS203において、制御回路27は、補間画像を生成するための生成条件として、ステップS202で抽出した各画像ファイルのうち隣接する2つの画像ファイルにおける背景の変位量が所定量以上であるか否かを判定する。ここで、背景の変位量は、前述のステップS200で説明したように、主要被写体の動きベクトルに基づいて背景の動きベクトルを補正することで求めることができる。この生成条件を満たす場合はステップS204へ進み、満たさない場合は図4のフローチャートを終了して図2のステップS14へ進む。
ステップS204において、制御回路27は、ステップS203で背景の変位量が所定量以上であると判定された2つの画像ファイル間に補間画像を生成する。ここでも図3のステップS103と同様に、図2のステップS10で説明した方法により、静止画像としての補間画像を生成する。生成された補間画像は、ステップS202で抽出された画像ファイルと同様に、図2のステップS14での合成対象とされる。背景の変位量が所定量以上である全ての画像ファイルの組に対して補間画像を生成したら、図4のフローチャートを終了して図2のステップS14へ進む。
上記のように、ステップS202において取得時刻が抽出期間内である静止画像ファイルを合成対象として抽出すると共に、ステップS204において合成対象とする静止画像としての補間画像を生成することにより、流し撮りシーンにおける合成対象画像が決定される。
なお、ステップS200、S201およびS202の処理と、ステップS203およびS204の処理とは、いずれか一方のみを実行するようにしてもよい。たとえば、図2のステップS10で生成した補間画像との重複を避けるために、ステップS203およびS204の処理を実行しないようにしてもよい。
以上説明したように、制御回路27は、図2のステップS5で認識したシーンに応じて、図3に示した打ち上げ花火シーン用の合成対象画像決定処理、または図4に示した流し撮りシーン用の合成対象画像決定処理のいずれかを実行する。すなわち、打ち上げ花火のシーンを認識した場合は、図3のステップS100で説明した方法で抽出期間を設定して、その抽出期間内の画像ファイルをステップS101で抽出すると共に、ステップS102で説明した生成条件を満たすときに、ステップS103で補間画像を生成する。一方、流し撮りのシーンを認識した場合は、図4のステップS201で説明した方法で抽出期間を設定して、その抽出期間内の画像ファイルをステップS202で抽出すると共に、ステップS203で説明した生成条件を満たすときに、ステップS204で補間画像を生成する。これにより、打ち上げ花火のシーンを認識した場合と、流し撮りのシーンを認識した場合とで、抽出期間の設定方法と、補間画像の生成条件とを変更することができる。すなわち、ステップS14で合成対象とする静止画像の決定方法をシーンに応じて変更することができる。
以上説明した実施の形態によれば、次の作用効果を奏することができる。
(1)電子カメラは、制御回路27の処理により、連続撮影によって時系列順に取得された複数の静止画像を記憶媒体29から読み込む(ステップS1)。こうして読み込まれた複数の静止画像のいずれかがユーザにより選択されると(ステップS3)、選択された静止画像の前後に取得された静止画像に基づいて合成対象とする静止画像を決定する(ステップS12、S13)。そして、ステップS3で選択された静止画像と、ステップS12またはS13で決定した静止画像とを合成して、合成画像を生成し(ステップS14)、この合成画像をモニタ19に表示させる(ステップS15)。このようにしたので、連続撮影された静止画像を、その画像にとって好ましい形態で再生表示することができる。
(2)電子カメラは、制御回路27の処理により、ステップS1で読み込んだ複数の静止画像が取得されたシーンを認識する(ステップS5)。こうして認識したシーンに応じて、制御回路27は、ステップS12またはS13のいずれかを実行することで、ステップS14で合成対象とする静止画像の決定方法を変更する。このようにしたので、連続撮影時のシーンや被写体に応じて好ましい合成画像を生成することができる。
(3)制御回路27は、ステップS12、S13において、ステップS3で選択された静止画像の前後に取得された静止画像の中から、ステップS14で合成対象とする静止画像を抽出する処理(ステップS101、S202)、および、ステップS3で選択された静止画像の前後に取得された静止画像のうち隣接する2つの静止画像の間に、ステップS14で合成対象とする静止画像としての補間画像を生成する処理(ステップS103、S204)、の少なくともいずれか一方を行うことにより、ステップS14で合成対象とする静止画像を決定する。このようにしたので、読み込んだ複数の静止画像の中から、合成対象としてふさわしい静止画像を決定することができる。
(4)制御回路27は、ステップS5で認識したシーンに応じて、ステップS101またはS202において静止画像を抽出するための抽出期間を、ステップS3で選択された静止画像の取得時刻を基準にして異なる方法で設定することにより、ステップS14で合成対象とする静止画像の決定方法を変更する。具体的には、打ち上げ花火のシーンを認識した場合と、流し撮りのシーンを認識した場合とで、抽出期間の設定方法を変更する。すなわち、打ち上げ花火のシーンを認識した場合には、ステップS3で選択された静止画像の取得時刻の前後に、抽出期間として所定の期間を設定する(ステップS100)とともに、この抽出期間内に取得された複数の生成画像を、ステップS14で合成対象とする静止画像として抽出する(ステップS101)。一方、流し撮りのシーンを認識した場合には、ステップS3で選択された静止画像の取得時刻の前後に、連続撮影時の電子カメラの動きに応じて抽出期間を設定する(ステップS201)とともに、この抽出期間内に取得された複数の生成画像を、ステップS14で合成対象とする静止画像として抽出する(ステップS202)。このようにしたので、連続撮影時のシーンの種類に応じて抽出期間を適切に設定して、その抽出期間内で取得された静止画像を合成対象画像として抽出することができる。
(5)制御回路27は、連続撮影時の電子カメラの動き量および焦点距離、またはステップS1で読み込まれた複数の静止画像における背景の動き量に基づいて、電子カメラの動きを求めることができる(ステップS200)。こうして求めた電子カメラの動きに応じて、ステップS201において抽出期間を設定することとしたので、連続撮影時の電子カメラの動きを正確に再現して最適な抽出期間を設定することができる。
(6)また制御回路27は、ステップS5で認識したシーンに応じて、ステップS103またはS204において補間画像を生成するための生成条件を変更することにより、ステップS14で合成対象とする静止画像の決定方法を変更する。具体的には、打ち上げ花火のシーンを認識した場合と、流し撮りのシーンを認識した場合とで、生成条件を変更する。すなわち、打ち上げ花火のシーンを認識した場合には、前後に隣接する2つの静止画像における取得時刻の間隔が所定時間以上であるという生成条件を満たすか否かを判定し(ステップS102)、この生成条件を満たすときに補間画像を生成する(ステップS103)。一方、流し撮りのシーンを認識した場合には、前後に隣接する2つの静止画像における背景の変位量が所定量以上であるという生成条件を満たすか否かを判定し(ステップS203)、この生成条件を満たすときに補間画像を生成する(ステップS204)。このようにしたので、連続撮影時のシーンの種類に応じて補間画像を生成するか否かを適切に判断して、補間画像を生成することができる。
(7)電子カメラは、制御回路27の処理により、ステップS3で選択された静止画像の前後に削除された画像があるか否かを判定し(ステップS9)、削除された画像があると判定した場合に、その削除された画像に対応する補間画像を生成する(ステップS10)。ステップS14では、こうして生成した補間画像を合成対象とする補間画像に含めて合成画像を生成する。このようにしたので、連続撮影された画像のうちいずれかが削除された場合であっても、その画像に対応する補間画像を生成して適切な合成画像を生成することができる。
(8)制御回路27は、ステップS9において、ステップS3で選択された静止画像の前後に取得された静止画像のうちいずれかの取得時刻と、当該静止画像に隣接する静止画像の取得時刻との間が所定時間以上であるときに、削除された画像があると判定する。このようにしたので、削除された画像の有無を簡単な処理で確実に判定することができる。
(9)電子カメラは、連写撮影モードが設定されると、撮像素子13により被写体を連続撮影して、時系列順に複数の静止画像を取得し、記憶媒体29に記録する。こうして記録された複数の静止画像をステップS1で記憶媒体29から読み込むことで、上記のような画像表示を行うことができる。
なお、以上説明した実施形態の補足事項を以下に説明する。
(a)上記実施形態の電子カメラでは、位相差AFモジュールを撮影光路内に配置し、コントラスト方式のAF動作に加えてさらに公知の瞳分割による位相差AF動作を行うようにしてもよい。また、上記実施形態では、撮像素子13の出力に基づいてAE演算を行ってもよいし、撮像素子13とは別にAE演算用の測光素子を設けてもよい。
(b)上記実施形態では、連写撮影によって取得されて記憶媒体29に記録された画像ファイルに基づいて補間画像や合成画像を生成する例を説明した。しかし、上記実施形態において、例えば、連写撮影されて取得された画像ファイルと、モニタ19の表示サイズ以下に設定されたビュー画像のファイルとがグループ化されて記憶媒体29に記録されるときに、制御回路27は、上記のビュー画像ファイルを優先的に選択して、このビュー画像ファイルから補間画像や合成画像を生成するようにしてもよい。
(c)上記実施形態では記憶媒体29に記録された2つの画像ファイルの間で動きベクトルを求めたが、記憶媒体29に記録された画像ファイルと補間画像との間で動きベクトルを求めるようにしてもよい。
(d)上記実施形態では、連写撮影された画像ファイルの中からいずれかの画像ファイルを選択する例を説明したが、補間画像の中から画像を選択し、この補間画像に対して時間軸方向の前と後の画像を合成対象画像として加算することで合成画像を生成してもよい。あるいは、補間画像を用いず、記憶媒体29に記録された画像ファイルのみを加算して合成画像を生成してもよい。
(e)上記実施形態では電子カメラの制御回路27が合成画像の生成などを行う例を説明したが、例えば、電子カメラと接続された外部装置30(パーソナルコンピュータなど)が、上記実施形態の制御回路27の処理を実行してもよい。また、上記実施形態で電子カメラの制御回路27が実行する処理の一部を外部装置30に負担させて、電子カメラと外部装置30とを協働させて上記の実施形態で説明したアルゴリズムを実現してもよい。
(f)上記実施形態では、選択された画像ファイルに対して時間的に前後する画像ファイルの中からそれぞれ合成対象画像を決定して合成画像を生成する例を説明した。しかし、上記実施形態において、選択された画像ファイルに対して時間的に前の画像ファイルのみ(または時間的に後の画像ファイルのみ)の中から合成対象画像を決定するようにしてもよい。
(g)上記実施形態では、ステップS5により、再生時に連写撮影のシーンを認識する例を説明した。しかし、上記実施形態において、撮影時にシーン認識を行い、その結果を画像ファイルと共に記憶媒体29に記録してもよい。
なお、以上説明した実施の形態や各種の変形例はあくまで一例であり、発明の特徴が損なわれない限り、本発明はこれらの内容に限定されるものではない。