(第1の実施形態)
図1は、本発明の第1の実施形態に係わる撮像システムの構成を示す図である。図1において、100は撮像装置本体である。101はファインダ光学系を構成する正立正像光学系であり、102は接眼レンズ、103はファインダスクリーンである。104は撮影光束をファインダ光学系に偏向するメインハーフミラー(以下、メインミラーという)であり、105は撮影光束を後述する焦点検出ユニットに偏向するサブミラーである。メインミラー104とサブミラー105とによって光路分割光学系が構成される。106はCCDセンサやCMOSセンサ等の撮像素子であり、107は撮像素子106の露光を制御するフォーカルプレーンシャッタである。本実施形態の撮像素子106は、後述するように、画像を取得する画素の中に、撮影レンズの所定の光束を用いて焦点検出を行う焦点検出用画素が配置されている。108は撮像装置本体100に備えられた内蔵フラッシュユニットである。
109は焦点検出ユニットである。焦点検出ユニット109は、少なくとも一対の画素列(ラインセンサ)を有し、この一対のラインセンサは撮影光学系からの光束によって形成された一対の像を光電変換して信号を出力する。110は被写体輝度を測定する測光センサであり、111は測光センサ110に被写体からの光束を結像させる測光レンズである。112は撮像装置本体100の各種動作の制御を司るカメラマイクロプロセッサである。113は外部フラッシュ装置400等を装着するためのアクセサリシューである。114は内蔵フラッシュユニットに設けられたフレネルレンズである。
115は、光学ファインダを覗いた観察者に対して各種情報を表示するファインダ表示ユニットである。116は撮像装置本体100の外面に設けられた外部表示ユニットであり、電子ビューファインダ(EVF)として機能する。117は撮像素子106の前面に配置されたローパスフィルタである。
200は撮像装置本体100に対して着脱が可能な交換レンズ(撮影レンズ)であり、以下に交換レンズ200の構成について説明する。201は交換レンズ200の各種動作の制御を司るレンズマイクロプロセッサであり、通信接点を介してカメラマイクロプロセッサ112と通信を行う。202は撮影光学系を構成する結像光学系であるレンズであり、203は光量調節を行う絞りである。なお、図1では、レンズを1枚しか記載していないが、実際には撮影光学系は複数枚のレンズにより構成されている。
外部フラッシュ装置400において、401は外部フラッシュ装置400の動作を制御するフラッシュマイクロプロセッサである。402はキセノン管等の放電発光管であり、403は放電発光管402から発せられた光束を被写体に向けて反射する反射傘である。404は反射傘403で反射された光束の配光を制御するフラッシュパネルである。405は撮像装置本体100のアクセサリシュー113に装着するための装着部材である。
本実施形態においては、撮像装置本体100(カメラマイクロプロセッサ112)は、交換レンズ200(レンズマイクロプロセッサ201)および外部フラッシュ装置400(フラッシュマイクロプロセッサ401)と通信を行う。これにより、交換レンズ200および外部フラッシュ装置400が保有する情報を使用して制御を行うことができる。
図2は、上述した撮像システムの各部(撮像装置本体100、交換レンズ200、及び外部フラッシュ装置400)の回路構成を示すブロック図である。
図2において、撮像装置本体100は、以下に示す構成要素を備えている。112は撮像装置本体100の制御を司るカメラマイクロプロセッサ(撮像制御回路)、2は撮像装置本体100の可動部分の駆動を行うためのモータ駆動回路である。3は被写体の輝度を測定するための測光部(図1の測光センサ110に含まれる)、4は交換レンズ200の焦点状態を検出する焦点検出部(図1の焦点検出ユニット109に含まれる)である。6は撮像装置本体100の露光量の制御を行うシャッタ制御回路であり、図1のフォーカルプレーンシャッタ107に含まれる。7は撮像装置本体100に取り込む光束を制御する絞り制御回路であり、図1の絞り203を制御する。8は撮像装置本体100の状態を表示する表示装置であり、図1のファインダ表示ユニット115および外部表示ユニット116を含む。9は図1の内蔵フラッシュユニット108を制御するフラッシュ制御回路である。10は撮像装置本体100の設定状態を格納するための記憶回路、11は撮像処理を行うための撮像回路である。また、12は撮像装置本体100に装着される交換レンズ200と通信を行うためのレンズ通信回路、13は交換レンズ200以外のアクセサリと通信するための通信回路である。14(SW1)は撮像準備動作を開始するためのスイッチ、15(SW2)は撮像を開始するためのスイッチである。内蔵フラッシュユニット108は、外部フラッシュ装置400の未装着時に被写体の撮像時に照明するのみでなく、焦点検出時にも、被写体を照明する補助光としての機能も持っている。
交換レンズ200は、以下に示す構成要素を備えている。201は交換レンズ200の制御を司るレンズマイクロプロセッサ(レンズ制御回路)、22は交換レンズ200の設定値を保持する記憶回路、23は交換レンズ200の駆動を行うレンズ駆動回路である。24は交換レンズ200の位置検出を行うレンズ位置検出回路、25は交換レンズ200の設定されている焦点距離を検出するレンズ焦点距離検出回路である。26は図1の絞り203に含まれ、絞りを駆動する絞り駆動回路、27は交換レンズ200に装着されている付属品を検知する付属品検知回路である。28は交換レンズ200に装着されている付属品を検知する付属品検知スイッチ、29は撮像装置本体100及び交換レンズ200に装着される付属品との通信を行うためのレンズ通信回路である。本実施形態において、レンズ通信回路29は、撮像装置本体100からの制御命令を通信すると共に交換レンズ200に保持されている形状情報や、交換レンズ200に装着されている付属品情報、レンズ設定値などを通信するように構成されている。
外部フラッシュ装置400は、以下の構成要素を備えている。401は付属品である外部フラッシュ装置400の制御を司るフラッシュマイクロプロセッサ(外部フラッシュ制御回路)、42は撮像装置本体100との通信を行うための通信回路、43は外部フラッシュ装置400の設定値を保持する記憶回路である。44は外部フラッシュ装置400が装着されている撮像装置本体100及び交換レンズ200の状態に合わせてフラッシュ照射範囲を変更する照射角変更部、45はフラッシュ照射範囲の設定値を検出するフラッシュ照射角検出部である。46は外部フラッシュ装置400の発光量を直接モニタする発光量モニタ部、47はフラッシュ発光量の制御を行う発光量制御回路、48はフラッシュ充電を行うフラッシュ充電回路である。49は外部フラッシュ装置400の状態設定を行うための設定部、50は外部フラッシュ装置400の設定状態を表示するための表示部、406は外部フラッシュ装置400に内蔵されている赤外補助光部である。本実施形態において、通信回路42は外部フラッシュ装置400の設定情報及び制御情報を通信するように構成されており、撮像装置本体100からの指示に基づき赤外補助光部406より赤外光が投光されるように構成されている。
図3乃至図5は、撮像用画素と焦点検出用画素の構造を説明する図である。第1の実施形態においては、2行×2列の4画素のうち、対角2画素にG(緑色)の分光感度を有する画素を配置し、他の2画素にR(赤色)とB(青色)の分光感度を有する画素を各1個配置した、ベイヤー配列が採用されている。そして、このベイヤー配列の間に、後述する構造の焦点検出用画素が所定の規則にて分散配置される。
図3に撮像用画素の配置と構造を示す。図3(a)は2行×2列の撮像用画素(画像生成用画素)の平面図である。周知のように、ベイヤー配列では対角方向にG画素が、他の2画素にRとBの画素が配置される。そして2行×2列の構造が繰り返し配置される。
図3(a)におけるA−A断面図を図3(b)に示す。MLは各画素の最前面に配置されたオンチップマイクロレンズ、CFRはR(赤色)のカラーフィルタ、CFGはG(緑色)のカラーフィルタである。PD(Photo Diode)はCMOSイメージセンサの光電変換素子を模式的に示したものである。CL(Contact Layer)は、CMOSイメージセンサ内の各種信号を伝達する信号線を形成するための配線層である。TLは撮影光学系を模式的に示したものである。
ここで、撮像用画素のオンチップマイクロレンズMLと光電変換素子PDは、撮影光学系TL(Taking Lens)を通過した光束を可能な限り有効に取り込むように構成されている。換言すると、撮影光学系TLの射出瞳EP(Exit Pupil)と光電変換素子PDは、マイクロレンズMLにより共役関係にあり、かつ光電変換素子の有効面積は大面積に設計される。また、図3(b)ではR画素の入射光束について説明したが、G(緑色)画素及びB(青色)画素も同一の構造となっている。従って、撮像用のRGB各画素に対応した射出瞳EPは大径となり、被写体からの光束を効率よく取り込んで画像信号のS/Nを向上させている。
図4は、撮影光学系の水平方向(横方向)に瞳分割を行なうための焦点検出用画素(位相差検出用画素)の配置と構造を示す。ここで水平方向又は横方向とは、撮影光学系の光軸と撮影画面の長辺とが地面に平行となるように撮像装置を構えたとき、この光軸に直交し、かつ水平方向に伸びる直線に沿った方向をいう。図4(a)は、焦点検出用画素を含む2行×2列の画素の平面図である。記録又は観賞のための画像信号を得る場合、G画素で輝度情報の主成分を取得する。そして人間の画像認識特性は輝度情報に敏感であるため、G画素が欠損すると画質劣化が認知されやすい。一方でR画素又はB画素は、色情報(色差情報)を取得する画素であるが、人間の視覚特性は色情報には鈍感であるため、色情報を取得する画素は多少の欠損が生じても画質劣化は認識され難い。そこで本実施形態においては、2行×2列の画素のうち、G画素は撮像用画素として残し、R画素とB画素を焦点検出用画素に置き換える。この焦点検出用画素を図4(a)においてSHA及びSHBと示す。
図4(a)におけるA−A断面図を図4(b)に示す。マイクロレンズMLと、光電変換素子PDは図3(b)に示した撮像用画素と同一構造である。本実施形態においては、焦点検出用画素の信号は画像生成には用いないため、色分離用カラーフィルタの代わりに透明膜CFW(白色)が配置される。また、撮像素子で瞳分割を行なうため、配線層CLの開口部はマイクロレンズMLの中心線に対して一方向に偏倚している。具体的には、画素SHAの開口部OPHAは右側に偏倚しているため、撮影光学系TLの左側の射出瞳EPHAを通過した光束を受光する。同様に、画素SHBの開口部OPHBは左側に偏倚しているため、撮影光学系TLの右側の射出瞳EPHBを通過した光束を受光する。よって、画素SHAを水平方向に規則的(離散的に)に配列し、これらの画素群で取得した被写体像をA像とする。また、画素SHBも水平方向に規則的(離散的に)に配列し、これらの画素群で取得した被写体像をB像とすると、A像とB像の相対位置を検出することで、被写体像のピントずれ量(デフォーカス量)が検出できる。
なお、上記画素SHA及びSHBでは、撮影画面の横方向に輝度分布を有した被写体、例えば縦線に対しては焦点検出可能だが、縦方向に輝度分布を有する横線は焦点検出不能である。そこで本実施形態では、後者についても焦点状態を検出できるよう、撮影光学系の垂直方向(縦方向)にも瞳分割を行なう画素も備えるよう構成される。
図5は、撮影光学系の垂直方向(上下方向又は縦方向)に瞳分割を行なうための焦点検出用画素の配置と構造を示す。ここで垂直方向、上下方向及び縦方向は、撮影光学系の光軸と撮影画面の長辺とが地面に平行となるように撮像装置を構えたとき、この光軸に直交し、鉛直方向に伸びる直線に沿った方向をいう。図5(a)は、焦点検出用画素を含む2行×2列の画素の平面図であり、図4(a)と同様に、G画素は撮像用画素として残し、R画素とB画素を焦点検出用画素としている。この焦点検出用画素を図5(a)においてSVC及びSVDと示す。
図5(a)のA−A断面図を図5(b)に示す。図4(b)の画素が横方向に瞳分離する構造であるのに対して、図5(b)の画素は瞳分離方向が縦方向になっているが、その他の画素の構造は同様である。画素SVCの開口部OPVCは下側に偏倚しているため、撮影光学系TLの上側の射出瞳EPVCを通過した光束を受光する。同様に、画素SVDの開口部OPVDは上側に偏倚しているため、撮影光学系TLの下側の射出瞳EPVDを通過した光束を受光する。よって、画素SVCを垂直方向に規則的(離散的に)に配列し、これらの画素群で取得した被写体像をC像とする。また、画素SVDも垂直方向に規則的(離散的に)に配列し、これらの画素群で取得した被写体像をD像とする。すると、C像とD像の相対位置を検出することで、垂直方向に輝度分布を有する被写体像のピントずれ量(デフォーカス量)が検出できる
図6乃至図8は、図3乃至図5に示した撮像用画素及び焦点検出用画素の配置規則を説明する図である。図6は撮像用画素の間に焦点検出用画素を離散的に配置する場合の、最小単位の配置規則を説明するための図である。図6において、10行×10列=100画素の正方形領域を1つのブロックと定義する。左上のブロックBLKh(1,1)において、一番左下のR画素とB画素を、水平方向(第1の方向)に瞳分割を行なう1組の焦点検出用画素(第1の焦点検出部)SHA及びSHBで置き換える。
その右隣りのブロックBLKv(1,2)においては、同じく一番左下のR画素とB画素を、垂直方向(第2の方向)に瞳分割を行なう1組の焦点検出用画素(第2の焦点検出部)SVC及びSVDで置き換える。また、最初のブロックBLKh(1,1)の下に隣接したブロックBLKv(2,1)の画素配列は、ブロックBLKv(1,2)と同一とする。そして、その右隣りのブロックBLKh(2,2)の画素配列は、先頭のブロックBLKh(1,1)と同一とする。
この配置規則を一般化すると、ブロックBLK(i,j)において、i+jが偶数であれば水平瞳分割用の焦点検出用画素を配置し、i+jが奇数であれば垂直瞳分割用の焦点検出用画素を配置することになる。そして、図6の2×2=4ブロック、すなわち20行×20列=400画素の領域を、ブロックの上位の配列単位として、クラスタと定義する。
図7は、上記のクラスタを単位とした配置規則を説明するための図である。図7において、20行×20列=400画素で構成された一番左上のクラスタをCST(u,w)=CST(1,1)とする。クラスタCST(1,1)においては、各ブロックの一番左下のR画素とB画素を、焦点検出用画素SHA及びSHB、又は、SVC及びSVDで置き換える。その右隣りのクラスタCST(1,2)においては、ブロック内における焦点検出用画素の配置を、クラスタCST(1,1)に対して上方向に2画素分シフトした位置に配置する。また、最初のクラスタCST(1,1)の下に隣接したクラスタCST(2,1)においては、ブロック内における焦点検出用画素の配置を、クラスタCST(1,1)に対して右方向に2画素分シフトした位置に配置する。以上の規則を繰り返し適用すると図7に示した配置が得られる。
この配置規則を一般化すると以下のようになる。なお、焦点検出用画素の座標は、図4又は図5で示したG画素を含む4画素を一つの単位(ユニット)とし、そのうちの左上の画素の座標で規定する。また各ブロック内の座標は左上を(1,1)とし、下方向と右方向を正とする。
以上の定義を適用すると、クラスタCST(u,w)において、各ブロック内の焦点検出用画素ユニットの水平座標は2×u−1となり、垂直座標は11−2×wとなる。そして、図7の5×5=25クラスタ、すなわち100行×100列=1万画素の領域を、クラスタの上位の配列単位として、フィールドと定義する。
図8は、上記のフィールドを単位とした配置規則を説明するための図である。図8において、100行×100列=1万画素で構成された一番左上のフィールドをFLD(q,r)=FLD(1,1)とする。そして本実施形態では、すべてのフィールドFLD(q,r)は先頭フィールドFLD(1,1)と同様の配列となっている。そこで、FLD(1,1)を水平方向に30個、垂直方向に20個配列すると、3000列×2000行=600万画素の撮像領域は600個のフィールドで構成される。そして撮像領域全面に渡って焦点検出用画素を均一に分布させることができる。
図9は、第1の実施形態における撮像素子の瞳分割機能を概念的に説明する図である。TLは撮影光学系、107は撮像素子、OBJは被写体、IMGは被写体像である。撮像用画素は図3で説明したように、撮影光学系の射出瞳全域EPを通過した光束を受光する。一方、焦点検出用画素は図4及び図5で説明したように、瞳分割機能を有している。具体的には、図4の画素SHAは撮像面からレンズ後端を見て左側の瞳を通過した光束LHA、すなわち図9の瞳EPHAを通過した光束を受光する。同様に画素SHB、SVC及びSVDはそれぞれ瞳EPHB、EPVC及びEPVDを通過した光束LHB、LHC、LHDをそれぞれ受光する。そして、焦点検出用画素は、撮像素子106の全領域に渡って分布しているため、撮像領域全域で焦点検出が可能となっている。
次に、動画データ保存時の動作について説明する。図10は、動画撮影時に焦点検出用画素のデータを保存するシーケンスを示すフローチャートである。図10においては、ステップS1000において動画撮影モードが開始され、次のステップS1010に移行する。ステップS1010においては、撮像素子から、撮像データを取得する。本実施形態で用いている撮像素子は、撮影画像取得用画素の中に、焦点検出用データ取得用の画素が配置されており、一度に両方のデータが取得可能になっている。ステップS1010にて、撮像データを取得した後、次のステップS1020及びステップS1100に移行する。ステップS1020においては、撮像データから画像データを抽出し、次のステップS1030に移行する。ステップS1030においては、取得した画像データをもとにライブビュー表示処理を実行し、次のステップS1200に移行する。ステップS1100においては、ステップS1010で取得した撮像データから焦点検出用データを取得し次のステップS1110に移行する。ステップS1110においては、焦点検出用データを用いて焦点調節処理を実行し次のステップS1200に移行する。
ステップS1200においては、動画モードが終了されたか否かの判定を行っている。ステップS1200において、動画モードが終了されたと判定された場合にはスタンバイ状態に復帰させる。ステップS1200において、動画モードが終了されていないと判定された場合には、次のステップS1210に移行する。ステップS1210においては、動画撮影が開始されたか否かの判定を行っている。ステップS1210において、動画撮影が開始されたと判定された場合には、次のステップS1220に移行する。ステップS1210において、動画撮影が開始されていないと判定された場合には、ステップS1010に復帰し、ライブビュー表示を続行する。
ステップS1220においては、撮像素子から撮像データを取得し、次のステップS1300及び1400に移行する。ステップS1300においては、ステップS1220で取得した撮像データから、画像データを抽出し次のステップS1310に移行する。ステップS1310においては、ライブビュー表示処理を実行し、ステップS1500に移行し、他の条件が成立するまで待機する。ステップS1320においては、被写体認識処理を実行し、次のステップS1500に移行し、他の条件が成立するまで待機する。ステップS1330においては、ステップS1300にて抽出した画像データから動画ファイルの生成を行う。ここで行う動画ファイルの生成は、MPEGの規格にのっとったファイルの生成が行われる。ステップS1330にて動画ファイルの生成を行った後、次のステップS1340に移行する。
ステップS1400においては、ステップS1220にて取得した撮像データから焦点検出用データを抽出し、次のステップS1410に移行する。ステップS1410においては、抽出した焦点検出用データに対応したレンズ特性情報の読み込みを行い、次のステップS1420及びステップS1450に移行する。ステップS1420においては、動画ファイルと一緒に保存する焦点検出用データの生成を実行して、次のステップS1340に移行する。
ステップS1340においては、動画ファイルのヘッダー情報に対して焦点検出用データを付加し、次のステップS1350に移行する。ステップS1350においては、動画ファイルの保存を行い、次のステップS1500に移行し、他の条件が成立するまで待機する。
ステップS1450においては、ステップS1400にて抽出した焦点検出用データを用いてデフォーカス演算処理を行い、次のステップS1460に移行する。ステップS1460においては、ステップS1410にて取り込んだレンズ特性情報を用いてデフォーカス量の補正を行い、次のステップS1470に移行する。ステップS1470においては、演算したデフォーカス量に基づき撮影レンズの駆動を行い、次のステップS1500に移行し、他の条件が成立するまで待機する。
ステップS1500においては、各種条件が成立するまで待機しており、すべての条件が成立した時点で、次のステップS1510に移行する。ステップS1510においては、動画撮影終了であるか否かの判定を行っている。ステップS1510において、動画撮影終了であると判定された場合には、ステップS1520に移行する。ステップS1510において、動画撮影が終了でないと判定された場合には、次のステップS1550に移行する。
ステップS1520においては、動画ファイル保存の完了処理を行い次のステップS1530に移行する。ステップS1530においては、動画モードを終了するか否かの判定を行っており、ステップS1530において、動画モードを終了すると判定された場合には、動画モードを終了し、スタンバイ状態に復帰する。ステップS1530において、動画モードを終了しないと判定された場合には、ステップS1010に復帰し、ライブビュー表示を続行する。
ステップS1550においては、動画ファイルの保存領域が所定値以上残存しているか否かの判定を行っている。ステップS1550において、動画ファイルの保存領域が所定値未満であると判定された場合には、次のステップS1560に移行する。ステップS1560においては、保存容量が不足していることについて警告表示を行い、次のステップS1520に移行し、動画ファイルの完了処理を実行する。ステップS1550において、動画ファイルの保存領域が所定値以上であると判定された場合には、次のステップS1570に移行する。ステップS1570においては、撮像装置のバッテリー容量が十分残っているか否かの判定を行っている。ステップS1570において、バッテリー容量が十分残っていると判定された場合には、ステップS1220に復帰し、動画撮影を続行する。ステップS1570において、バッテリー容量が不十分であると判定された場合には、ステップS1580に移行する。ステップS1580においては、撮像装置のバッテリー容量が不足していることについて警告表示を行い、ステップS1520に移行して、動画ファイル保存の完了処理を実行する。
図11は、焦点調節処理を示すフローチャートである。図11において、ステップS2000では、焦点調節処理を開始し、次のステップS2010に移行する。ステップS2010においては、焦点調節モードが連続的にピントを合わせつづけるサーボAFモードであるか否かの判定を行っている。ステップS2010において、焦点調節モードがサーボAFモードに設定されていると判定された場合には、次のステップS2020に移行する。ステップS2020においては、合焦状態であるか否かの判定を行っている、ステップS2020において、合焦状態に設定されていると判定された場合には、メインルーチンに復帰する。ステップS2020において合焦状態では無いと判定された場合には、ステップS2030に移行する。ステップS2030においては、検出したデフォーカス量に基づきレンズ駆動を実施し、メインルーチンに復帰する。
ステップS2010において、焦点調節モードがサーボAFモードに設定されていないと判定された場合には、次のステップS2040に移行する。ステップS2040においては、AFロックが動作中であるか否かの判定を行っている。ステップS2040において、AFロックが動作中であると判定された場合には、メインルーチンに復帰する。ステップS2040において、AFロックが動作していないと判定された場合には、次のステップS2050に移行する。ステップS2050においては、合焦状態であるか否かの判定を行っている、ステップS2050において、合焦状態に設定されていると判定された場合には、次のステップS2060に移行する。ステップS2060においては、合焦状態であるというフラグを設定し、メインルーチンに復帰する。ステップS2050において合焦状態では無いと判定された場合には、ステップS2070に移行する。ステップS2070においては、検出したデフォーカス量に基づきレンズ駆動を実施し、メインルーチンに復帰する。
図12は、焦点検出用データを動画ファイルに保存する場合のファイル構成の一例を示す図である。図12においては、動画ファイルを構成する各シーンの画像であるフレームに対して焦点検出用データを付加している。フレームに対しては、そのフレームの条件を保存するフレームヘッダーが存在しており、そのフレームヘッダーに対して焦点検出用データを付加する。そして、フレームヘッダーを含む各フレームのデータは、一般的には、15フレームがひとつのグループ(基本単位)をなすように構成される。これは、GOPと呼ばれる。このGOPに対して、GOPの内容を記述するシーケンスヘッダーが存在する。そして、どのフレームのフレームヘッダーに対して、焦点検出用データを付加したか判るように、このシーケンスヘッダーに対して、焦点検出用データを保存した保存フレームデータを付加して保存する。そして、最後に、動画ファイルの終了を示すシーケンスエンドコードを保存し、動画ファイルの保存を終了する。ここで、作成される動画ファイルは、MPEG規格に準拠した形式で圧縮されることとなる。
ここで、上記GOPを構成するフレームには、3つの種類が存在している。まず、Iフレーム(基本フレーム)と呼ばれる、他のフレーム情報を参照せずに自己のフレームのみの情報で符号化されるフレームがある。また、Pフレームと呼ばれる過去のIフレーム或いはPフレームを参照して時間的に前方向の動き予測符号化されるフレームがある。さらに、Bフレームと呼ばれる過去と将来のIフレーム或いはPフレームを参照して、前方或いは後方予測符号化されるフレームがある。
動画ファイルの編集は、基本的にGOP単位にて実行されるため、焦点検出用データは、Iフレームに対応させて保存する様に構成している。Iフレームに対応させて保存することにより、編集作業により焦点検出用データが存在しない領域が発生することが無い。また、焦点検出用データを利用する場合、画像データを抽出する際に、他のフレームを参照していないため、自己のフレームデータを復元すれば良いこととなる。
図13は、焦点検出用データを動画ファイルに保存する場合のファイル構成の他の例を示す図である。図13は、動画ファイルを構成する各フレームのうち、自己フレームのみの情報で符号化されるIフレームと、過去のIフレーム或いはPフレームを参照して前方向の動き予測符号化されるPフレームについて、焦点検出用データを付加する場合を示している。各フレームには、そのフレームの状態を示すフレームヘッダーが存在しており、図13においては、IフレームとPフレームに対して、焦点検出用データを付加しており、Bフレームついては、焦点検出用データを付加していない。
動画データの保存は、まず、動画ファイルのGOP単位のヘッダ情報であるシーケンスヘッダに対して、どのフレームのフレームヘッダーに対して焦点検出用データを付加したか判るように、焦点検出用データを保存した保存フレームデータを付加して保存する。その後に、Iフレーム、Pフレーム、Bフレームを所定の規則で配置して書き込む。上記GOP単位のファイルを複数記録した後、最後に、動画ファイルの終了を示すシーケンスエンドコードを保存し、動画ファイルの保存を終了する。ここで、作成される動画ファイルは、MPEG規格に準拠した形式で圧縮されることとなる。図13においては、Iフレーム及びPフレームに対して焦点検出用データを記録しているので、図12で示したIフレームのみに焦点検出用データを記録する場合に較べ、5倍の情報を保存できており、図12の場合よりも詳細に、焦点状態の判定を行うことが出来る。
図14は、焦点検出用データを全ての動画ファイルに保存する場合のファイル構成の例を示す図である。図14においては、動画ファイルを構成するフレームすべてに対して、焦点検出用データを付加する場合を示している。動画データの保存は、図12及び図13と同様に、まず、動画ファイルのGOP単位のヘッダ情報であるシーケンスヘッダに対して、すべてのフレームに対して焦点検出用データを付加したことを保存フレームデータとして保存する。その後に、Iフレーム、Pフレーム、Bフレームを所定の規則で配置して書き込む。上記GOP単位のファイルを複数記録した後、最後に、動画ファイルの終了を示すシーケンスエンドコードを保存し、動画ファイルの保存を終了する。ここで、作成される動画ファイルは、MPEG規格に準拠した形式で圧縮されることとなる。図14では、すべてのフレームに対して焦点検出用データを保存しているので、図12及び図13に示した例に比べて、すべてのフレームに対して焦点状態の判定を行うことが出来る。
図15は、焦点検出用データを動画ファイルに埋め込んで保存する場合の一例を示すフローチャートである。図15においては、動画ファイルを構成する各シーンの画像であるフレームに対して焦点検出用データを付加している場合を示している。
図15において、ステップS1600では、動画ファイルを構成するフレームのうち、どのフレームに対応した焦点検出用データを保存するか設定して、次のステップS1610に移行する。ステップS1610においては、動画ファイルの基準単位であるGOP単位のヘッダー情報であるシーケンスヘッダー情報に対して、どのフレームの焦点検出用データを保存するか、保存するフレームについての情報を保存し、次のステップS1620に移行する。ステップS1620においては、動画フレームのファイル生成を開始し、次のステップS1630及びステップS1640に移行する。
ステップS1630においては、動画ファイルを構成するフレームファイルを生成し、次のステップS1700に移行し、他の条件が成立するまで待機する。ステップS1640においては今回取得した動画ファイルのフレームが所定のフレーム(焦点検出用データを保存しようとするフレーム)であるか否かの判定を行っている。ステップS1640において、動画ファイルのフレームが所定のフレームであると判定された場合には、次のステップS1650に移行する。ステップS1650においては、焦点検出用データファイルの作成を行い次のステップS1700に移行し、他の条件が成立するまで待機する。ステップS1640において、動画ファイルのフレームが所定のフレームではないと判定された場合には、次のステップS1700に移行し、他の条件が成立するまで待機する。
ステップS1700においては、各種条件が成立するまで待機しており、すべての条件が成立した時点で次のステップS1710に移行する。ステップS1710においては、焦点検出用データが存在しているか否かの判定を行っている。ステップS1710において、焦点検出用データが存在していると判定された場合には、次のステップS1720に移行する。ステップS1720においては、該当するフレームファイルに対応させて焦点検出用データを付加し、次のステップS1730に移行する。ステップS1710において、焦点検出用データが存在していないと判定された場合には、次のステップS1730に移行する。
ステップS1730においては、動画ファイルを構成するフレームファイルを保存し、次のステップS1740に移行する。ステップS1740においては、直前に保存したデータがGOP単位で見たときに完了しているか否かの判定を行っている。ステップS1740において、GOP単位で見たときに完了していないと判定された場合には、ステップS1620に復帰し動画フレームファイル生成を続行する。ステップS1740において、GOP単位で見たときに完了していると判定された場合には、次のステップS1750に移行する。ステップS1750においては、動画撮影を終了するか否かの判定を行っている。ステップS1750において、動画撮影を終了しないと判定された場合には、ステップS1610に復帰し、GOP単位のヘッダー情報であるシーケンスヘッダー情報の保存を実行する。ステップS1750において、動画撮影を完了すると判定された場合には、次のステップS1760に移行する。ステップS1760においては、動画ファイルの終了を宣言するシーケンスエンドコードを書き込み、スタンバイ状態に復帰する。
以下に焦点検出用データの動画ファイルへの保存の仕方の例を説明する。図16は、焦点検出用データをそのまま画素のデータで持たせる場合を示す図である。図16においては、焦点検出用データがどの様なデータで構成されているかを示すヘッダー情報で始まり、その後に、各視野の座標、画素数などを示す座標情報に続き、各視野の相関演算処理を行うための画素データA、画素データBをひとつの単位として、複数の視野の焦点検出用データを順次保存している。ヘッダー情報には、焦点検出に使用した視野情報、焦点検出時のピント補正情報、ケラレ情報などからなるレンズの状態を示すレンズ情報などが含まれる。上記の画素データA、画素データBは、撮像レンズの異なる瞳領域を通過した光束で形成された画素データをそのまま保存している。
図17は、複数の焦点検出用データを画像データに変換して保存する場合を示す図である。図17においては、焦点検出用データがどのようなデータで構成されているかを示すヘッダー情報で始まり、その後、画面内のどの領域に測距視野が存在しているかを示す座標情報を保存している。その後に続けて、相関演算するために必要な二つの像を含む2枚の焦点検出用画像データを配置して作成した焦点検出画像合成データである画像データA、画像データBを保存している。ヘッダー情報には、焦点検出に使用した視野情報、焦点検出時のピント補正情報、ケラレ情報などからなるレンズの状態を示すレンズ情報などが含まれる。図17においては、2枚の画像データを保存する例を示したが、焦点検出用データが画像データ上で重なってしまうなど一対の画像データでは、表現しきれない場合には、複数対の画像データを保存しても良い。
図18は、焦点検出用データを画像データに変換して保存する場合の焦点検出用データを示す図である。図18においては、縦方向に9点、横方向に3点の合計27点の焦点検出領域が存在しており、焦点検出領域の焦点検出用データを撮影画面上(フレーム内)に配置して作成した画面位置情報を示す焦点検出画像合成データである。ここで、図18で示す焦点検出画像合成データには、焦点検出用データを配置した部分以外には、像データが存在していない。このため、データとして保存する時に、ロスレス圧縮を行いて保存したとしても、焦点検出用データの存在しない部分のデータは高圧縮率で保存できるため、ファイル容量としては、各データをそれぞれ保存する場合に対して、あまり変わらない容量で保存できる。
図19は、焦点検出用データを動画ファイルに保存する場合のファイル構成の他の例を示す図である。図19においては、動画ファイルを構成する各フレームをグループとして管理するGOP単位で焦点検出用データを付加している。動画ファイルを構成する各フレームのデータは、一般的には、15フレームがひとつのグループをなすように構成される。これは、GOPと呼ばれる。このGOPに対して、GOPの内容を記述するシーケンスヘッダーが存在している。このシーケンスヘッダーに対して、どのフレームの焦点検出用データを保存するのかを示す保存フレームデータと共に焦点検出用データを付加して保存する。そして、最後に、動画ファイルの終了を示すシーケンスエンドコードを保存し、動画ファイルの保存を終了する。
図20は、焦点検出用データを動画ファイルのシーケンスヘッダーに埋め込んで保存する場合の一例を示すフローチャートである。図20において、ステップS1800においては、動画ファイルを構成するフレームのうち、どのフレームに対応した焦点検出用データを保存するか設定して、次のステップS1820に移行する。ステップS1820においては、動画フレームのファイル生成を開始し、次のステップS1830及びステップS1840に移行する。
ステップS1830においては、動画を構成するフレームファイルを生成し、次のステップS1900に移行し、他の条件が成立するまで待機する。ステップS1840においては、今回取得した動画ファイルのフレームが所定のフレーム(焦点検出用データを抽出するフレーム)であるか否かの判定を行っている。ステップS1840において、動画ファイルのフレームが所定のフレームであると判定された場合には、次のステップS1850に移行する。ステップS1850においては、焦点検出用のデータファイルの作成を行い次のステップS1900に移行し、他の条件が成立するまで待機する。ステップS1840において、動画ファイルのフレームが所定のフレームではないと判定された場合には、次のステップS1900に移行し、他の条件が成立するまで待機する。
ステップS1900においては、各種条件が成立するまで待機しており、すべての条件が成立した時点で次のステップS1910に移行する。ステップS1910においては、焦点検出用データが存在しているか否かの判定を行っている。ステップS1910において、焦点検出用データが存在していると判定された場合には、次のステップS1920に移行する。ステップS1920においては、シーケンスヘッダーに焦点検出用データを付加し、次のステップS1930に移行する。ステップS1910において、焦点検出用データが存在していないと判定された場合には、次のステップS1930に移行する。
ステップS1930においては、直前に保存したデータがGOP単位で見たときに完了しているか否かの判定を行っている。ステップS1930において、GOP単位で見たときに完了していないと判定された場合には、ステップS1820に復帰し動画フレームファイル生成を続行する。ステップS1930において、GOP単位で見たときに完了していると判定された場合には、次のステップS1940に移行する。
ステップS1940においては、動画ファイルを構成するシーケンスヘッダーファイル、フレームファイルを保存し、次のステップS1950に移行する。ステップS1950においては、動画撮影を終了するか否かの判定を行っている。ステップS1950において、動画撮影を終了しないと判定された場合には、ステップS1820に復帰し、動画フレームファイル生成を続行する。ステップS1950において、動画撮影を終了すると判定された場合には、次のステップS1960に移行する。ステップS1960においては、動画ファイルの終了を宣言するシーケンスエンドコードを書き込み、スタンバイ状態に復帰する。
次に、動画データ再生時の動作について説明する。図21は、画像取得時の被写体と焦点検出用データ取得エリアの関係の一例を示す図である。図21においては、焦点検出領域として、縦方向に1から9まで、横方向にaからcまで、合計27領域が焦点検出領域として設定されている。また、撮影される被写体として、501で示されるAさん、502で示されるBさん、503で示されるCさんの3人の人物が異なる距離に存在している例を示している。ここで、503で示されるCさんにピントを合わせるために焦点検出エリアを4bに設定して撮影を行う。
焦点検出エリア4bにて検出される焦点検出用データには、503で示されるCさんの顔、502で示されるBさんの足、501で示されるAさんの腕と体が存在することとなる。そのため、検出時の焦点状態により、焦点調節を行う被写体が変わってしまい、ユーザーの意思と異なる被写体にピントを合わせて、そのときの焦点状態を判定に用いてしまうこととなる。
以下に、ユーザー自身の意思で焦点検出用データの使用エリアを選択する方法について説明する。図22は、撮像装置に設けられている表示装置の周囲の構成を示す図である。図23A〜23Dは、表示装置に表示される情報の一例を示す図であり、図24、図25、及び図26は、焦点検出用データの選択方法を示す図である
図22において、601は表示装置(外部表示ユニット116に対応)であり、液晶表示装置、有機EL表示装置などで構成されている。602はマルチコントロールスイッチであり、各方向への移動、及び、スイッチの押し込みを検知できるように構成されている。603はダイアルであり、604はダイアルの中に存在しているボタンスイッチである。605から609は、表示装置601の周囲に配置されているボタンスイッチであり、605は各種設定メニューを呼び出すためのメニューボタン、606は各種情報を呼び出すためのinfoボタン(情報ボタン)である。607は画像ファイルの領域選択を開始するための領域選択開始ボタンであり、608は撮像した画像ファイルを再生する再生ボタン、609は表示装置601に表示している画像ファイルを削除するための削除ボタンである。
図22において、再生ボタン608がオンされると、表示装置601に撮影画像が表示される。表示装置601に撮影画像を表示した状態で、情報ボタン606をオンさせると、図23A〜23Dに示す様に、画像の表示(図23A)、表示している画像の情報(図23B)、測距視野の配置図(図23C)、動画ファイルで使用している測距視野の表示(図23D)が順次切換って表示される。
表示装置601に画像ファイルを表示した状態でダイアル603を操作すると再生する画像ファイルの選択を行うことが可能となっている。そして、再生ファイルを選択した状態で、領域選択開始ボタン607を操作すると、図24に示すように、表示装置601に表示されている画像上に選択手段621が表示される。選択手段621は、マルチコントロールスイッチ602により、表示画面内を自由に移動可能に構成されており、マルチコントロールスイッチ602の押し込み、もしくは、ボタンスイッチ604の押し込みにより、ポイントの選択が可能である。
そして、図25の様に、矩形形状622の対角点を選択することにより、図26に示すような領域の選択が行われ、その領域に存在する焦点検出用データ620が、判定に用いるデフォーカス値を求めるデフォーカス演算の対象となる。
上記操作方法は、焦点検出用データの使用領域を選択する方法の一例であり、撮像装置による矩形選択の例を示した。しかし、パーソナルコンピュータなど画像ファイルを表示し操作できるものであればどのような機器を用いても良く、また、選択方法についても、自由曲線で囲むなどして選択しても良い。また、選択操作についても、タッチパネルなどで直接指示しても良く、上記構成に限るものではない。
図27は、再生時に焦点検出領域を変更し、動画ファイルを再生する動作を示すフローチャートである。図27において、ステップS4500では、動画再生モードが開始され、次のステップS4510に移行する。ステップS4510においては、動画再生を一時停止し、動画画像を静止させた状態で表示させて、次のステップS4520に移行する。ステップS4520においては、焦点状態の判定領域の再選択処理が行われ、次のステップS4530に移行する。ここで、示す再選択処理は、図22から図26で示したような選択処理により実現される。
ステップS4530においては、再選択処理により選択した判定視野(焦点状態の判定領域)の位置を被写体像に合わせて移動するか否かの判定を行っている。ステップS4530において判定視野の位置を被写体に合わせて移動しないと判定された場合には、次のステップS4540に移行する。ステップS4540においては、判定視野位置を固定するように固定モードに設定し、次のステップS4560に移行する。ステップS4530において、判定視野の位置を被写体に合わせて移動すると判定した場合には、次のステップS4550に移行する。ステップS4550においては、判定視野位置を被写体に合わせて追尾させる様に設定し、次のステップS4560に移行する。
ステップS4560においては、動画データの再生の再開を、どの部分から行うかの判定を行っている。ステップS4560において、動画データの初めから再生を行うと判定された場合には、次のステップS4570に移行する。ステップS4570においては、動画データ再生位置のデータを動画ファイルスタート位置に設定し、次のステップS4590に移行する。ステップS4560において、現在の動画位置から再生を再開すると判定された場合には、次のステップS4580に移行する。ステップS4580においては、動画データの再生開始位置を現在のままとして、次のステップS4590に移行する。
ステップS4590においては、動画データの読み込みを行い、次のステップS4600及びステップS4650に移行する。ステップS4600においては、動画データの復元処理を実行し、次のステップS4700に移行し、他の条件が成立するまで待機する。ステップS4650においては、動画データから焦点検出用データの抽出を行い、次のステップS4660に移行する。ステップS4660においては、選択視野位置の焦点検出用データの抽出を行い、次のステップS4670に移行する。ステップS4670においては、抽出された焦点検出用データを用いてデフォーカス演算処理を実行し、次のステップS4680に移行する。ステップS4680においては、レンズデータに基づき、求めたデフォーカス量の補正処理を行い、次のステップS4700に移行し、他の条件が成立するまで待機する。
ステップS4700においては、各種条件が成立するまで待機しており、すべての条件が成立した時点で、次のステップS4710、ステップS4800及びステップS4900に移行する。
ステップS4710においては、再生速度を変更させて再生するのか否かの判定を行っており、ステップS4710において、再生速度は固定で再生すると判定された場合には、次のステップS4730に移行する。ステップS4730においては、再生速度を通常の速度に設定し、次のステップS4950に移行し、他の条件が成立するまで待機する。ステップS4710において、再生速度を変更させて再生すると判定された場合には、次のステップS4720に移行する。ステップS4720においては、検出されたデフォーカス量が所定値未満であるか否かの判定を行っている。ステップS4720において、検出されたデフォーカス量が所定値未満であると判定された場合には、次のステップS4730に移行する。ステップS4720において、検出されたデフォーカス量が所定値以上であると判定された場合には、次のステップS4740に移行する。ステップS4740においては、再生速度をデフォーカス量に応じて高速再生速度に設定し、次のステップS4950に移行し、他の条件が成立するまで待機する。
ステップS4800においては、ピント状態を表示して再生するのか否かの判定を行っている。ステップS4800において、ピント状態は非表示で再生すると判定された場合は、次のステップS4830に移行する。ステップS4830においては、動画データに合成して表示する表示パターンが存在しないので、合成画像をクリアして、次のステップS4950に移行し、他の条件が成立するまで待機する。ステップS4800において、ピント状態を表示して再生すると判定された場合には、次のステップS4810に移行する。ステップS4810においては、検出されたデフォーカス量が所定値未満であるか否かの判定を行っている。ステップS4810において、検出されたデフォーカス量が所定値未満であると判定された場合には、次のステップS4820に移行する。ステップS4820においては、ピント状態を表示するため動画画像に対して表示パターンを付加し、次のステップS4950に移行し、他の条件が成立するまで待機する。ステップS4810において、検出されたデフォーカス量が所定値以上であると判定された場合には、次のステップS4830に移行する。
ステップS4900においては、動画データを拡大表示するか否かの判定を行っている。ステップS4900において、動画データの再生を全画面表示で行うと判定された場合には、次のステップS4930に移行する。ステップS4930においては、動画データの表示を全画面表示に変更し、次のステップS4950に移行し、他の条件が成立するまで待機する。ステップS4900において、動画データの再生を拡大モードで実行すると判定された場合には、次のステップS4910に移行する。ステップS4910においては、検出されたデフォーカス量が所定値未満であるか否かの判定を行っている。ステップS4910において、検出されたデフォーカス量が所定値未満であると判定された場合には、次のステップS4920に移行する。ステップS4920においては、拡大表示するため動画データの判定領域を拡大して表示するように画像データを変換し、次のステップS4950に移行し、他の条件が成立するまで待機する。ステップS4910において、検出されたデフォーカス量が所定値以上であると判定された場合には、次のステップS4930に移行する。
ステップS4950においては、各種条件が成立するまで待機しており、すべての条件が成立した時点で、次のステップS4960に移行する。ステップS4960においては、上記設定に基づき動画データを再生する。
図28は、動画再生時の再生処理の他の例を示すフローチャートである。図28においては、焦点検出用データにより、再生速度を変化させる場合の処理を示している。図28において、ステップS3000においては、動画再生処理を開始し、次のステップS3010に移行する。ステップS3010においては、動画再生のモードが、再生速度可変モードであるか否かの判定を行っている。ステップS3010において、動画再生モードが再生速度可変モードであると判定された場合には、次のステップS3020に移行する。ステップS3010において、動画再生モードが再生速度可変モードではないと判定された場合には、次のステップS3400に移行する。
ステップS3020においては、再生する動画データに付属データが存在しているか否かの判定を行っている。ここで、付属データとは、動画撮影時に取得した焦点検出用データ、焦点検出用データから演算して求めた再生速度テーブルなどである。ステップS3020において、再生する動画データに付属データが存在していると判定された場合には、次のステップS3030に移行する。ステップS3020において、再生する動画データに付属データが存在していないと判定された場合には、次のステップS3410に移行する。
ステップS3030においては、動画データから付属データの抽出を行い、次のステップS3040に移行する。ステップS3040においては、動画データの再生時間を優先する再生時間固定モードに設定されているか否かの判定を行っている。ステップS3040において、再生時間固定モードに設定されていると判定された場合には、次のステップS3300に移行する。ステップS3040において、再生時間固定モードに設定されていないと判定された場合には、次のステップS3050に移行する。
ステップS3050においては、動画データから抽出した付属データに再生速度テーブルが存在しているか否かの判定を行っている。ステップS3050において、再生速度テーブルが存在していると判定された場合には、次のステップS3200に移行する。ステップS3050において、再生速度テーブルが存在していないと判定された場合には、次のステップS3060に移行する。
ステップS3060においては、付属データに基づき、動画データの各フレームの状態を判別し、次のステップS3070に移行する。ステップS3070においては、動画データ再生時に優先するピント情報は何かの判定を行っている。ステップS3070において、優先するピント情報は撮影時の測距視野であると判定された場合には、次のステップS3080に移行する。ステップS3070において、優先する測距視野は、被写体認識によるものであると判定された場合には、次のステップS3090に移行する。ステップS3080においては、再生しようとしている動画データのフレームの測距ポイントのピント状態を抽出し、次のステップS3110に移行する。ステップS3090においては、再生しようとしている動画データのフレームについての被写体認識処理を実行し、次のステップS3100に移行する。ステップS3100においては、ステップS3090において選択された視野のピント状態の抽出を行い、次のステップS3110に移行する。
ステップS3110においては、抽出したピント状態(ピントずれ)が所定値未満であるのか否かの判定を行っている。ステップS3110において、抽出したピント状態が所定値未満で無いと判定された場合には、次のステップS3120に移行する。ステップS3120においては、動画データの再生速度を高速再生に設定し、次のステップS3140に移行する。ステップS3110において、抽出したピント状態が所定値未満であると判定された場合には、次のステップS3130に移行する。ステップS3130においては、動画データの再生速度を等速再生に設定し、次のステップS3140に移行する。
ステップS3140においては、動画データの再生速度を決定した再生速度に変更して再生して、次のステップS3150に移行する。ステップS3150においては、動画データの再生を停止するか否かの判定を行っている。ステップS3150において、動画データの再生を停止しないと判定された場合には、ステップS3030に復帰し、再生動作を続行する。ステップS3150において、動画データの再生を停止すると判定された場合には、次のステップS3160に移行する。ステップS3160においては、動画データの再生を停止し、スタンバイ状態に復帰する。
ステップS3200においては、ステップS3050にて動画データの再生速度テーブルが存在していると判定されているため、再生速度テーブルに基づき、再生を開始し、次のステップS3210に移行する。ステップS3210においては、動画ファイルの再生を終了するか否かの判定を行っている。ステップS3210において、動画データの再生を終了しないと判定された場合には、ステップS3050に復帰し、動画ファイルの再生速度テーブルが存在しているか判定を行う。ステップS3210において、動画データの再生を終了すると判定された場合には、ステップS3160に移行し、動画データの再生を停止する。
ステップS3300においては、再生時間固定モードにて動画データの再生を行うための再生時間の設定を行い、次のステップS3310に移行する。ステップS3310においては、動画データから抽出した付属データに再生速度テーブルが存在しているか否かの判定を行っている。ステップS3310において、再生速度テーブルが存在していると判定された場合には、次のステップS3330に移行する。ステップS3310において、再生速度テーブルが存在していないと判定された場合には、次のステップS3320に移行する。ステップS3320においては、再生速度テーブルが存在していないため、再生速度が保証出来ないことについて警告表示を行う。
ステップS3330においては、ステップS3300にて設定した再生時間で再生できるように再生テーブルの再演算を行い、次のステップS3340に移行する。ステップS3340においては、再生速度テーブルに基づき動画データの再生を行い、次のステップS3350に移行する。ステップS3350においては、動画データの再生を終了するか否かの判定を行っている。ステップS3350において、動画データの再生を終了しないと判定された場合には、ステップS3340に復帰し、再生速度テーブルに基づく再生を続行する。ステップS3350において、動画データの再生を終了すると判定された場合には、ステップS3160に移行し、動画データの再生を終了する。
ステップS3400においては、動画データの再生モードがスキップ再生モードであるか否かの判定をおこなっている。ステップS3400において、動画データの再生モードがスキップ再生モードであると判定された場合には、次のステップS3500に移行する。ステップS3400において、動画データの再生モードがスキップ再生モードで無いと判定された場合には、次のステップS3410に移行する。ステップS3410においては、動画データの再生速度は、どのように設定されているのか判定を行っている。ステップS3410において、動画データの再生速度が通常速度の再生に設定されていると判定された場合には、次のステップS3420に移行する。ステップS3420においては、動画データを通常速度にて再生し、次のステップS3440に移行する。ステップS3410において、動画データの再生速度が、高速再生に設定されていると判定された場合には、次のステップS3430に移行する。ステップS3430においては、動画データを高速再生した後、次のステップS3440に移行する。
ステップS3440においては、動画データの再生を停止するか否かの判定を行っている。ステップS3440において、動画データの再生を停止しないと判定された場合には、ステップS3410に復帰し動画再生を続行する。ステップS3440において、動画データの再生を停止すると判定された場合には、次のステップS3160に移行し、動画データの再生を停止する。
図29は、撮像装置がアイドル状態にあるときに再生速度テーブルを作成する動作を示すフローチャートである。図29において、ステップS4000では、動画データの再生速度テーブルの作成を開始する。ステップS4010においては、撮像装置がアイドル状態であるか否かの判定を行っている。ステップS4010において、撮像装置がアイドル状態となっていると判定された場合には、次のステップS4020に移行する。ステップS4010において、撮像装置がアイドル状態で無いと判定された場合には、再生速度テーブルの作成は行わず撮像装置のメインルーチンに復帰する。
ステップS4020においては、保存されている画像データの中に動画データが存在しているか否かの判定を行っている。ステップS4020において、保存されている画像データの中に動画データが存在していると判定された場合には、次のステップS4030に移行する。ステップS4020において、保存されてる画像データの中に動画データが存在していないと判定された場合には、再生速度テーブルを作成するファイルが存在しないので、メインルーチンに復帰する。
ステップS4030においては、検出された動画データに再生速度テーブルが存在しているか否かの判定を行っている。ステップS4030において、検出した動画ファイルの中に再生速度テーブルが存在していないと判定された場合には、次のステップS4040に移行する。ステップS4030において、検出した動画ファイルに再生速度テーブルが存在していると判定された場合には、次のステップS4200に移行する。
ステップS4040においては、撮像装置の電源容量が再生速度テーブルを作成するために十分な容量を残しているか判定を行っている。ステップS4040において、再生速度テーブルを作成するにあたり十分な電源容量を確保できると判定された場合には、次のステップS4060に移行する。ステップS4040において、再生速度テーブルを作成するにあたり十分な電源容量を確保出来ないと判定された場合には、ステップS4050に移行する。ステップS4050においては、電源容量が不足していることについて警告表示を行いメインルーチンに復帰する。
ステップS4060においては、再生速度テーブルを作成するにあたり記録媒体の空き容量が十分に確保出来るか否かの判定を行っている。ステップS4060において、記録媒体の空き容量が十分確保できると判定された場合には、次のステップS4080に移行する。ステップS4060において、記録媒体の空き容量が十分確保出来ない場合には、次のステップS4070に移行する。ステップS4070においては、記録媒体の空き容量が不足していることについて警告表示を行い、メインルーチンに復帰する。
ステップS4080においては、検出された動画ファイルにサブデータが存在しているか否かの判定を行っている。ここで、サブデータとは、動画撮影時に取得した焦点検出用データなどである。ステップS4080において、検出された動画ファイルにサブデータが存在していると判定された場合には、次のステップS4090に移行する。ステップS4080において、検出された動画ファイルにサブデータが存在しないと判定された場合には、次のステップS4100に移行する。ステップS4100においては、動画ファイルに再生速度テーブルを作成不可なファイルが存在していることを表示し、次のステップS4200に移行する。
ステップS4090においては、検出された動画ファイルに対して再生速度テーブルの作成を開始し、次のステップS4110に移行する。ステップS4110においては、動画データからサブデータの抽出を行い、次のステップS4120に移行する。ステップS4120においては、抽出したサブデータより、撮影画像のデフォーカス量が所定値未満であるか否かの判定を行っている。ステップS4120において、撮影画像のデフォーカス量が所定値未満であると判定された場合には、次のステップS4130に移行する。ステップS4130においては、動画ファイルの再生を通常表示設定に設定し、次のステップS4150に移行する。ステップS4120において、撮影画像のデフォーカス量が所定値以上であると判定された場合には、次のステップS4140に移行する。ステップS4140においては、動画ファイルの再生を高速表示設定に設定し、次のステップS4150に移行する。
ステップS4150においては、再生速度ファイルを、動画ファイルと別ファイルで保存し、次のステップS4160に移行する。ステップS4160においては、動画ファイルの解析がすべて終了しているのか否かの判定を行っている。ステップS4160において、動画ファイルの解析がすべて終了していると判定された場合には、次のステップS4170に移行する。ステップS4160において、動画ファイルの解析がまだ終了していないと判定された場合には、ステップS4110に復帰し、動画ファイルの未解析部分について解析を続行する。
ステップS4170においては、作成した再生速度テーブルのファイルを動画ファイルに統合するか否かの判定を行っている。ステップS4170において、再生速度テーブルのファイルを動画ファイルに統合すると判定された場合には、次のステップS4180に移行する。ステップS4170において、再生速度テーブルのファイルを動画ファイルに統合しないと判定された場合には、次のステップS4200に移行する。ステップS4180においては、再生速度テーブルのファイルを動画ファイルと統合して保存し、次のステップS4200に移行する。
ステップS4200においては、記録媒体の中に、他に動画ファイルが存在していないか判定を行っている。ステップS4200において、記録媒体の中に他の動画ファイルが存在している場合には、次のステップS4210に移行する。ステップS4200において、記録媒体の中に他の動画ファイルが存在していないと判定された場合には、メインルーチンに復帰する。
ステップS4210においては、残りの動画ファイルの中で再生速度テーブルが存在しないファイルが存在しているか否かの判定を行っている。ステップS4210において、再生速度テーブルが存在しない動画ファイルが存在していると判定された場合には、次のステップS4040に移行し、再生速度テーブルの作成ルーチンを実行する。ステップS4210において、再生速度テーブルが存在しない動画ファイルが存在しないと判定された場合には、メインルーチンに復帰する。
以上説明したように、本実施形態の構成をとることにより、焦点検出用データを動画データに関連付けた状態で保存可能であり、焦点検出用データの焦点演算範囲を再生時に再選択して演算することで、判定基準の修正をしながら再生することができる。また、焦点検出用データを特定のフレームに対して付加し、付加した特定フレームの焦点検出用データを演算することにより、焦点検出用データ演算処理の負荷を低減することが出来る。
(第2の実施形態)
以下に本発明の第2の実施形態について説明する。第2の実施形態においては、第1の実施形態と共通する部分については、説明を省略する。
図30は、焦点検出用データを動画ファイルとは別ファイル(例えばサムネイル画像ファイル内)にて保存する場合のファイル構成の一例を示す図である。図30においては、フレームヘッダーを含む各フレームのデータは、一般的には、15フレームがひとつのグループをなすように構成される。これは、GOPと呼ばれる。このGOPに対して、GOPの内容を記述するシーケンスヘッダーが存在し、どのフレームに対する焦点検出用データかが判るように、このシーケンスヘッダーに対して、焦点検出用データとフレームデータの対応関係を保存する。そして、最後に、動画ファイルの終了を示すシーケンスエンドコードを保存し、動画ファイルの保存を終了する。そして、焦点検出用データは、別途作成されているサムネイル画像データに続けて保存される。
図31は、動画撮影時に焦点検出用データを保存するシーケンスを示すフローチャートである。図31においては、ステップS7000において動画撮影モードが開始され、次のステップS7010に移行する。ステップS7010においては、撮像素子から、撮像データを取得する。本実施形態で用いる撮像素子は、画像取得用画素の中に、焦点検出用データ取得用の画素が配置されており、一度に両方のデータが取得可能になっている。ステップS7010にて、撮像データを取得した後、次のステップS7020及びステップS7100に移行する。ステップS7020においては、撮像データから画像データを抽出し、次のステップS7030に移行する。ステップS7030においては、取得した画像データをもとにライブビュー表示処理を実行し、次のステップS7200に移行する。ステップS7100においては、ステップS7010で取得した撮像データから焦点検出用データを取得し次のステップS7110に移行する。ステップS7110においては、焦点検出用データを用いて焦点調節処理を実行し次のステップS7200に移行する。
ステップS7200においては、動画モードが終了されたか否かの判定を行っている。ステップS7200において、動画モードが終了されたと判定された場合にはスタンバイ状態に復帰させる。ステップS7200において、動画モードが終了されていないと判定された場合には、次のステップS7210に移行する。ステップS7210においては、動画撮影が開始されたか否かの判定を行っている。ステップS7210において、動画撮影が開始されたと判定された場合には、次のステップS7220に移行する。ステップS7210において、動画撮影が開始されていないと判定された場合には、ステップS7010に復帰しライブビュー表示を続行する。
ステップS7220においては、撮像素子から撮像データを取得し、次のステップS7300及び7400に移行する。
ステップS7300においては、ステップS7220にて取得した撮像データから、画像データを抽出し、次のステップS7310に移行する。ステップS7310においては、ライブビュー表示処理を実行し、ステップS7500に移行し、他の条件が成立するまで待機する。ステップS7320においては、被写体認識処理を実行し、次のステップS7500に移行し、他の条件が成立するまで待機する。ステップS7330においては、ステップS7300にて抽出した画像データから動画ファイルの生成を行う。ここで行う動画ファイルの生成は、MPEGの規格にのっとったファイルの生成が行われる。ステップS7330にて動画ファイルの生成を行った後、次のステップS7340に移行する。ステップS7340においては、動画ファイルの保存を行い、ステップS7500に移行し、他の条件が成立するまで待機する。
ステップS7400においては、ステップS7220にて取得した撮像データから焦点検出用データを抽出し、次のステップS7410に移行する。ステップS7410においては、抽出した焦点検出用データに対応したレンズ特性情報の読み込みを行い、次のステップS7420及びステップS7450に移行する。ステップS7420においては、動画ファイルと一緒に保存する焦点検出用データの生成を実行して次のステップS7430に移行する。ステップS7430においては、焦点検出用データの保存を実行し、ステップS7500に移行し、他の条件が成立するまで待機する。
ステップS7450においては、ステップS7400にて抽出した焦点検出用データを用いてデフォーカス演算処理を行い、次のステップS7460に移行する。ステップS7460においては、ステップS7410にて取り込んだレンズ特性情報を用いてデフォーカス量の補正を行い、次のステップS7470に移行する。ステップS7470においては、演算したデフォーカス量に基づき撮影レンズの駆動を行い、次のステップS7500に移行し、他の条件が成立するまで待機する。
ステップS7500においては、各種条件が成立するまで待機しており、すべての条件が成立した時点で次のステップS7510に移行する。ステップS7510においては、動画撮影終了であるか否かの判定を行っている。ステップS7510において、動画撮影終了であると判定された場合には、ステップS7520に移行する。ステップS7510において、動画撮影が終了でないと判定された場合には、次のステップS7550に移行する。
ステップS7520においては、動画ファイル保存の完了処理を行い次のステップS7530に移行する。ステップS7530においては、動画モードを終了するか否かの判定を行っており、ステップS7530において、動画モードを終了すると判定された場合には、動画モードを終了し、スタンバイ状態に復帰する。ステップS7530において、動画モードを終了しないと判定された場合には、ステップS7010に復帰し、ライブビュー表示を続行する。
ステップS7550においては、動画ファイルの保存領域が所定値以上残存しているか否かの判定を行っている。ステップS7550において、動画ファイルの保存領域が所定値未満であると判定された場合には、次のステップS7560に移行する。ステップS7560においては、保存容量が不足していることについて警告表示を行い、つぎのステップS7520に移行し、動画ファイルの完了処理を実行する。ステップS7550において、動画ファイルの保存領域が所定値以上であると判定された場合には、次のステップS7570に移行する。ステップS7570においては、撮像装置のバッテリー容量が十分残っているか否かの判定を行っている。ステップS7570において、バッテリー容量が十分残っていると判定された場合には、ステップS7220に復帰し、動画撮影を続行する。ステップS7570において、バッテリー容量が不十分であると判定された場合には、ステップS7580に移行する。ステップS7580においては、撮像装置のバッテリー容量が不足していることについて警告表示を行い、ステップS7520に移行して、動画ファイル保存の完了処理を実行する。
以上説明したように、本実施形態の構成をとることにより、動画ファイルのファイル容量を増やすことなく、焦点検出用データを保存することができる。