(57)【特許請求の範囲】
【請求項１】
撮影レンズが交換可能に装着される撮像装置であって、
前記撮影レンズに備えられたフォーカスレンズを光軸方向に移動させながら前記撮影レンズで結像された被写体像を撮像した画像データに基づいて、焦点検出領域のコントラストを示す焦点評価値を算出し、該焦点評価値が最大となるように前記フォーカスレンズの位置を調節する焦点調節手段と、
第１のタイミングで撮像した画像から前記焦点評価値を取得する第１の取得手段と、
第２のタイミングで前記撮影レンズとの通信によりフォーカスレンズの位置を取得する第２の取得手段と、
前記第１の取得手段と前記第２の取得手段のそれぞれにおいて、取得した順番に前記焦点評価値と前記フォーカスレンズの位置を記憶しておく記憶手段と、
前記第１のタイミングまたは前記第２のタイミングにおいて前記フォーカスレンズの位置と前記焦点評価値が前記記憶手段に共に記憶されている状態となった場合に、前記フォーカスレンズの位置と前記焦点評価値とを対応付ける制御手段と、を備え、
前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、そのタイミングで前記記憶手段に記憶されている最も古い焦点評価値を使わないことを特徴とする撮像装置。
【請求項２】
前記制御手段は、前記第２の取得手段により取得された前記フォーカスレンズの位置と、前記第２の取得手段により前回において取得された前記フォーカスレンズの位置とを用いて、露光期間の中心における前記フォーカスレンズの位置を算出することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、次回の前記第２のタイミングで前記フォーカスレンズの位置が取得できなかったことを通知することを特徴とする請求項１または２に記載の撮像装置。
【請求項４】
前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、今回のフォーカスレンズの位置と前々回のフォーカスレンズの位置とを用いて露光期間の中心における前記フォーカスレンズの位置を算出することを特徴とする請求項２または３に記載の撮像装置。
【請求項５】
撮影レンズと、該撮影レンズが装着される撮像装置とを有する撮像システムであって、
前記撮影レンズは、
被写体像の焦点を合わせるフォーカスレンズと、
前記フォーカスレンズを駆動する駆動手段とを備え、
前記撮像装置は、
前記フォーカスレンズを光軸方向に移動させながら前記撮影レンズで結像された被写体像を撮像した画像データに基づいて、焦点検出領域のコントラストを示す焦点評価値を算出し、該焦点評価値が最大となるように前記フォーカスレンズの位置を調節する焦点調節手段と、
第１のタイミングで撮像した画像から前記焦点評価値を取得する第１の取得手段と、
第２のタイミングで前記撮影レンズとの通信によりフォーカスレンズの位置を取得する第２の取得手段と、
前記第１の取得手段と前記第２の取得手段のそれぞれにおいて、取得した順番に前記焦点評価値と前記フォーカスレンズの位置を記憶しておく記憶手段と、
前記第１のタイミングまたは前記第２のタイミングにおいて前記フォーカスレンズの位置と前記焦点評価値が前記記憶手段に共に記憶されている状態となった場合に、前記フォーカスレンズの位置と前記焦点評価値とを対応付ける制御手段と、を備え、
前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、そのタイミングで前記記憶手段に記憶されている最も古い焦点評価値を使わないことを特徴とする撮像システム。
【請求項６】
前記制御手段は、前記第２の取得手段により取得された前記フォーカスレンズの位置と、前記第２の取得手段により前回において取得された前記フォーカスレンズの位置とを用いて、露光期間の中心における前記フォーカスレンズの位置を算出することを特徴とする請求項５に記載の撮像システム。
【請求項７】
前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、次回の前記第２のタイミングで前記フォーカスレンズの位置が取得できなかったことを通知することを特徴とする請求項５または６に記載の撮像システム。
【請求項８】
前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、今回のフォーカスレンズの位置と前々回のフォーカスレンズの位置とを用いて露光期間の中心における前記フォーカスレンズの位置を算出することを特徴とする請求項６または７に記載の撮像システム。
【請求項９】
撮影レンズが交換可能に装着される撮像装置を制御する方法であって、
前記撮影レンズに備えられたフォーカスレンズを光軸方向に移動させながら前記撮影レンズで結像された被写体像を撮像した画像データに基づいて、焦点検出領域のコントラストを示す焦点評価値を算出し、該焦点評価値が最大となるように前記フォーカスレンズの位置を調節する焦点調節工程と、
第１のタイミングで撮像した画像から前記焦点評価値を取得する第１の取得工程と、
第２のタイミングで前記撮影レンズとの通信によりフォーカスレンズの位置を取得する第２の取得工程と、
前記第１の取得工程と前記第２の取得工程のそれぞれにおいて、取得した順番に前記焦点評価値と前記フォーカスレンズの位置を記憶手段に記憶しておく記憶工程と、
前記第１のタイミングまたは前記第２のタイミングにおいて前記フォーカスレンズの位置と前記焦点評価値が前記記憶工程において共に記憶されている状態となった場合に、前記フォーカスレンズの位置と前記焦点評価値とを対応付ける制御工程と、を有し、
前記制御工程では、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、そのタイミングで前記記憶手段に記憶されている最も古い焦点評価値を使わないことを特徴とする撮像装置の制御方法。
【請求項１０】
請求項９に記載の制御方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１１】
請求項９に記載の制御方法の各工程をコンピュータに実行させるためのプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デジタルカメラ、ビデオカメラ等の撮像装置における自動焦点検出技術に関するものである。
【背景技術】
【０００２】
従来より、デジタルカメラなどにおいて、フォーカスレンズを動かして被写体に焦点を合わせる方法として、ＣＣＤなどの撮像素子から得られる画像信号を用いて自動的に合焦動作を行うコントラスト検出方式のオートフォーカス（ＡＦ）が用いられている。このＡＦ方式では、フォーカスレンズを移動させながら、定期的にレンズ位置を取得して保存し、撮像素子から得られる輝度信号の高域周波数成分（以下、焦点評価値と呼ぶ）を生成したタイミングで保存されているレンズ位置と対応付ける。そして、焦点評価値が最大となるレンズ位置にフォーカスレンズを移動させることでピントを合わせる。
【０００３】
ここで、レンズ交換式の一眼レフカメラシステムにおいては、カメラ本体と交換レンズとの間の通信によって交換レンズからフォーカスレンズの位置を取得する。その際に、他の通信処理に阻害されることでレンズ位置の取得タイミングが遅延したり、レンズ位置の取得ができない場合が発生する。このような場合には、前述した焦点評価値とレンズ位置の対応付けが正確でなくなり、焦点検出精度が低下してしまう場合がある。
【０００４】
これに関連して、特許文献１には、コントラスト検出方式のオートフォーカスにおいて、カメラ本体が定期的にタイミングを生成し、そのタイミングに応じて焦点評価値とレンズ位置を定期的に取得して関連付けし、合焦制御を行う方法が提案されている。また、特許文献２には、所定間隔でレンズ位置情報を取得して、そのレンズ位置情報を時刻情報とともに記憶し、焦点評価値の算出が完了した時点において、焦点評価値に対応するレンズ位置情報を選択する方法が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−２４２４４２号公報
【特許文献２】特開２００９−１９９０４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術では、既に述べたように、カメラ本体と交換レンズ間の通信が他の処理に阻害されることでレンズ位置が取得できない場合に、露光したタイミングではないレンズ位置と焦点評価値が対応付けされてしまう場合がある。そのため、焦点検出精度が低下してしまうという問題がある。
【０００７】
また、特許文献２に記載の技術では、他の処理によりレンズ位置の取得が遅延した場合に、焦点評価値の取得時にその焦点評価値と対応付けるレンズ位置がないため、レンズ位置と焦点評価値の対応付け自体ができないという問題がある。
【０００８】
本発明は上述した課題に鑑みてなされたものであり、その目的は、適切なタイミングでフォーカスレンズの位置が取得できない場合でも、正確な自動焦点調節動作を可能とする撮像装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明に係わる撮像装置は、撮影レンズが交換可能に装着される撮像装置であって、前記撮影レンズに備えられたフォーカスレンズを光軸方向に移動させながら前記撮影レンズで結像された被写体像を撮像した画像データに基づいて、焦点検出領域のコントラストを示す焦点評価値を算出し、該焦点評価値が最大となるように前記フォーカスレンズの位置を調節する焦点調節手段と、第１のタイミングで撮像した画像から前記焦点評価値を取得する第１の取得手段と、第２のタイミングで前記撮影レンズとの通信によりフォーカスレンズの位置を取得する第２の取得手段と、前記第１の取得手段と前記第２の取得手段のそれぞれにおいて、取得した順番に前記焦点評価値と前記フォーカスレンズの位置を記憶しておく記憶手段と、前記第１のタイミングまたは前記第２のタイミングにおいて前記フォーカスレンズの位置と前記焦点評価値が前記記憶手段に共に記憶されている状態となった場合に、前記フォーカスレンズの位置と前記焦点評価値とを対応付ける制御手段と、を備え、前記制御手段は、前記第２のタイミングにおいて前記フォーカスレンズの位置が取得できなかった場合には、そのタイミングで前記記憶手段に記憶されている最も古い焦点評価値を使わないことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、適切なタイミングでフォーカスレンズの位置が取得できない場合でも、正確な自動焦点調節動作を可能とする撮像装置を提供することが可能となる。
【図面の簡単な説明】
【００１１】
【図１】本発明の撮像装置の一実施形態であるカメラシステムの構成を示すブロック図。
【図２】一実施形態の撮像装置の動作を説明するフローチャート。
【図３】一実施形態の撮像装置のＡＦ動作を説明するフローチャート。
【図４】図３における読み出し動作を説明するフローチャート。
【図５】図３における焦点評価値の生成動作を説明するフローチャート。
【図６】図３におけるレンズ通信動作を説明するフローチャート。
【図７】図５及び図６における露光中心レンズ位置の算出を説明するフローチャート。
【図８】図７における露光中心レンズ位置の算出を説明する図。
【図９】図５と図６で説明した焦点評価値と露光中心レンズ位置を対応付ける具体的な動作例を示した図。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態について、添付図面を参照して詳細に説明する。
【００１３】
図１は本発明の撮像装置の一実施形態であるカメラシステム（撮像システム）の構成を示すブロック図である。図１に示すように、デジタルカメラ本体２００には、交換レンズ１００が、電気接点ユニット１０６ａを有するレンズマウント１０６を介して、着脱可能に（交換可能に）装着される。
【００１４】
１０１はズーム機構を含み被写体像を結像させるための撮影レンズ、１０２は光量を制御する絞り及びシャッター、１０３は後述する撮像素子上に焦点を合わせるためのフォーカスレンズ、１０４はフォーカスレンズを駆動するモータである。１０５は交換レンズ２００全体を制御するレンズコントローラである。また、２０１は被写体からの反射光を電気信号に変換する撮像素子である。２０２は撮像素子２０１の出力ノイズを除去するＣＤＳ回路やＡ／Ｄ変換前に行う非線形増幅回路を含み画像データを出力するＡ／Ｄ変換部、２０３は画像処理部、２０４はフォーマット変換部である。２０５は高速な内蔵メモリ（例えばランダムアクセスメモリなどであり、以下ＤＲＡＭと記す）、２０６はメモリーカードなどの記録媒体とそのインターフェースからなる画像記録部、２０７はタイミングジェネレータである。２０８は撮影シーケンスなどの制御を行い、カメラシステム全体を制御するシステム制御部（以下、ＣＰＵと記す）である。２０９はカメラ本体２００と交換レンズ１００との通信を行うレンズ通信部、２１０は自動焦点調節の処理を行うＡＦ処理部、２１１は露出制御の処理を行うＡＥ処理部である。２１２は画像表示用メモリ（以下ＶＲＡＭと記す）である。２１３は撮影後の画像表示、操作補助のための表示やカメラ状態の表示、撮影時の撮影画面と焦点検出領域などを表示する画像表示部である。２１４はカメラを外部から操作するための操作部、２１５はマクロモード、スポーツモードなどの撮影モードを選択するための撮影モードスイッチ、２１６はシステムに電源を投入するためのメインスイッチである。２１７はレリーズボタンの半押しでＯＮとなり、ＡＦ処理やＡＥ処理等の撮影スタンバイ動作を行うためのスイッチ（以下ＳＷ１と記す）、２１８はレリーズボタンの全押しでＯＮとなり、ＳＷ１の操作後、撮影を行う撮影スイッチ（以下ＳＷ２と記す）である。ＤＲＡＭ２０５は一時的な画像記憶用の高速バッファとして、あるいは画像の圧縮伸張における作業用メモリとして使用される。操作部２１４には、例えば撮像装置の撮影機能の設定や画像再生時の設定などの各種設定を行うメニュースイッチ、撮影モードと再生モードの動作モード切り替えスイッチなどが含まれる。
【００１５】
以下、本実施形態のカメラシステムの動作について説明する。図２は、カメラシステムの全体動作を示すフローチャートである。
【００１６】
まず、Ｓ２０１では、ＡＥ処理部２１１で画像処理部２０３の出力から、被写体の明るさに応じてシャッター速度、感度、絞り値等を決定するＡＥ処理を行ってＳ２０２へと進む。Ｓ２０２では、スイッチＳＷ１（２１７）の状態を調べ、ＯＮであればＳ２０３へ進み、そうでなければＳ２０１へ戻る。Ｓ２０３では、後述する自動焦点調節動作（ＡＦ動作）を行いＳ２０４へ進む。ここで、ＡＦ動作中の露出条件（シャッター速度、絞り、感度）は、直前のＳ２０１のＡＥ処理で決定する。Ｓ２０４では、スイッチＳＷ１（２１７）の状態を調べ、ＯＮであればＳ２０５へ進み、そうでなければＳ２０１へ戻る。Ｓ２０５では、スイッチＳＷ２（２１８）の状態を調べＯＮであればＳ２０６へ進み、そうでなければＳ２０４へ戻る。Ｓ２０６では、撮影動作を行った後に、Ｓ２０１へ戻る。
【００１７】
図３は、図２のＳ２０３におけるＡＦ動作を説明するフローチャートである。まず、Ｓ３０１では、画面内の所定の領域に焦点検出領域を設定してＳ３０２へ進む。Ｓ３０２では、フォーカスレンズ１０３を光軸方向に移動させながら画像のコントラストを示す焦点評価値を生成するために必要な画像を取得するための電荷蓄積及び電荷読み出し動作を開始させた後、Ｓ３０３へ進む。電荷読み出し動作については後述する。
【００１８】
Ｓ３０３では、焦点評価値の生成動作を開始してＳ３０４へ進む。焦点評価値生成の動作については後述する。なお、焦点評価値の生成動作は、Ｓ３０３で開始された後一定の周期で繰り返される。Ｓ３０４では、レンズ通信動作によるレンズ位置の取得動作を開始してＳ３０５へ進む。レンズ通信動作については後述する。なお、レンズ通信動作は、Ｓ３０４で開始された後、他の処理が入らない限りは一定の周期で繰り返される。また、上記のＳ３０３における焦点評価値の生成動作とＳ３０４におけるレンズ通信動作によるレンズ位置の取得動作は、時間的に交互に行われる。
【００１９】
Ｓ３０２〜Ｓ３０４の一連の動作を行うことにより、焦点評価値の生成に必要な画像を取得するための電荷蓄積及び電荷読み出し動作、焦点評価値の生成動作、レンズ通信動作のそれぞれが定期的に行われる。
【００２０】
Ｓ３０５では、後述するLinkFlgがＴＲＵＥかどうかを調べ、ＴＲＵＥであればＳ３０６へ進み、そうでなければＳ３０８へ進む。なお、LinkFlgは、焦点評価値と、その焦点評価値と対応する露光中心におけるレンズ位置の２つが揃ったことを示すものである。Ｓ３０６では、焦点評価値と後述する露光中心レンズ位置を用いて焦点評価値ピーク判定を行い、Ｓ３０７へ進む。ここで焦点評価値ピーク判定は、ピークの形状により合焦すべき被写体であるかどうかを判定し、合焦すべき被写体であれば焦点評価値が最大となるレンズ位置を演算して合焦位置とする。ピークの形状の判断の仕方については本実施形態の主眼点ではないため詳細な説明は省略する。
【００２１】
Ｓ３０８では、後述するExpStartFlgがＴＲＵＥかどうかを調べ、ＴＲＵＥであればＳ３０９へ進み、そうでなければＳ３１０へ進む。Ｓ３０９では、焦点評価値に基づいてフォーカスレンズ１０３の移動速度を決定してレンズ駆動制御を行った後Ｓ３１０へ進む。Ｓ３１０では、ExpStartFlgをＦＡＬＳＥにしてＳ３１１へ進む。Ｓ３１１では、Ｓ３０６で判定した結果によりＡＦ動作を終了させるか否かを調べ、ＡＦ動作を終了させるのであればＳ３１２へ進み、そうでなければＳ３０５へ戻る。Ｓ３１２では、Ｓ３０６で算出した合焦位置へフォーカスレンズ１０３を移動させた後、Ｓ３１３へ進む。Ｓ３１３では、前述した電荷蓄積及び電荷読み出し動作を停止させた後、Ｓ３１４へ進む。Ｓ３１４では、前述した焦点評価値の生成動作を停止させてＳ３１５へ進む。Ｓ３１５では、前述したレンズ通信動作を停止させてＡＦ動作を終了する。
【００２２】
図４は、図３におけるＳ３０２で開始された読み出し動作を説明するフローチャートである。まず、Ｓ４０１では、現在が読み出し開始タイミングであるか否かを調べ、読み出しタイミングであればＳ４０２へ進み、そうでなければそのまま待機する。Ｓ４０２では、読み出しを開始するフレームのＩＤであるFrmIDをインクリメントしてＳ４０３へ進む。このFrmIDにより、後述する焦点評価値を生成したフレームのＩＤであるEvaFrmIDと、後述するレンズ位置を取得したフレームのＩＤであるLensFrmIDとの相関を確認することができる。Ｓ４０３では、FrmIDとEvaFrmIDとの差が所定値より大きいか否かを調べ、差が所定値より大きければＳ４０６へ進み、そうでなければＳ４０４へ進む。Ｓ４０４では、FrmIDとLensFrmIDとの差が所定値より大きいか否かを調べ、差が所定値より大きければＳ４０６へ進み、そうでなければＳ４０５へ進む。Ｓ４０５では、ExpStartFlgをＴＲＵＥにして本フローを終了する。Ｓ４０６では、Ｓ４０３、またはＳ４０４による判定により、焦点評価値の生成、またはレンズ通信が所定時間以上行われない異常状態であると判断してＡＦ動作を終了させるなどのエラー処理を行った後、本フローを終了する。
【００２３】
図５は、図３におけるＳ３０３で開始された焦点評価値生成動作を説明するフローチャートである。まず、Ｓ５０１では、焦点評価値が生成されたか否かを調べ、生成されていればＳ５０２へ進み、そうでなければそのまま待機する。Ｓ５０２では、焦点評価値を生成したフレームのＩＤであるEvaFrmIDをインクリメントしてＳ５０３へ進む。Ｓ５０３では焦点評価値を生成された順番にバッファに格納してＳ５０４へ進む。Ｓ５０４では後述するレンズ通信動作によりバッファにレンズ位置が格納されているかどうかを調べ、格納されていればＳ５０５へ進み、そうでなければ本フローを終了する。Ｓ５０５ではバッファに格納されているレンズ位置のうち最も古いものを取り出すとともに、最も古いものをバッファから削除してＳ５０６へ進む。この削除されたレンズ位置は、後述する図７のＳ７１１においてBefPosとしてバッファとは別の記憶部に記憶される。Ｓ５０６では、Ｓ５０５で取り出したレンズ位置（StdPos）と以前にバッファとは別の記憶部に記憶されているレンズ位置（上記のように図７のＳ７１１においてBefPosとして記憶されていたレンズ位置）を用いて後述する露光中心レンズ位置（露光期間の中心におけるフォーカスレンズ１０３の位置）の算出を行った後、Ｓ５０７へ進む。Ｓ５０７では、焦点評価値と、その焦点評価値と対応する露光中心レンズ位置の２つが揃ったことを示すLinkFlgをＴＲＵＥにして本フローを終了する。なお、図６を参照して後述するが、レンズ位置情報が配信されたにも関わらず焦点評価値がバッファに格納されていなかった場合には、バッファにレンズ位置が複数格納される（Ｓ６０６でＮｏの場合）。この場合、焦点評価値は生成されるタイミングが遅れることはあっても、取得できずに抜けてしまうことはない。そのため、Ｓ５０５で、バッファに格納されているレンズ位置のうち最も古いものを取り出すようにすることで、焦点評価値とレンズ位置を適正に関連付けることができる。
【００２４】
図６は、図３におけるＳ３０４で開始されたレンズ通信動作を説明するフローチャートである。まずＳ６０１ではレンズ位置情報が配信されたか否かを調べ、配信されていればＳ６０２へ進み、そうでなければそのまま待機する。Ｓ６０２では、レンズ位置が配信されたフレームのＩＤであるLensFrmIDをインクリメントしてＳ６０３へ進む。Ｓ６０３では、LensFrmIDにSkipCntを足してＳ６０４へ進む。このSkipCntは、レンズ通信動作が他の処理によって阻害されることによりレンズ位置情報が配信されなかったフレーム数を示しており、SkipCntを足すことにより前述したFrmIDとEvaFrmIDとの相関が誤りとならないようにすることができる。Ｓ６０４では、古いものからSkipCntの数だけ焦点評価値を削除してＳ６０５へ進む。SkipCntの数だけ焦点評価値を削除することにより焦点評価値とレンズ位置の対応付けが誤りとならないようにすることができる。Ｓ６０５ではバッファに配信されたレンズ位置を格納してＳ６０６へ進む。Ｓ６０６ではバッファに焦点評価値が格納されているかどうかを調べ、格納されていればＳ６０７へ進み、そうでなければ本フローを終了する。Ｓ６０７ではバッファに格納されている焦点評価値のうち最も古いものを取り出すとともに最も古いものをバッファから削除してＳ６０８へ進む。Ｓ６０８では、後述する露光中心レンズ位置を算出してＳ６０９へ進む。Ｓ６０９では、焦点評価値と、その焦点評価値と対応する露光中心レンズ位置の２つが揃ったことを示すLinkFlgをＴＲＵＥにして本フローを終了する。
【００２５】
図７は、図５及び図６における露光中心レンズ位置の算出を説明するフローチャートである。また、図８は図７の露光中心レンズ位置の算出を説明する図である。図７及び図８を参照して、露光中心レンズ位置の算出方法について説明する。
【００２６】
まず、Ｓ７０１では、図８に示す焦点検出領域の中心ラインVafを算出してＳ７０２へ進む。Ｓ７０２では露光中心レンズ位置算出が初回であるかどうかを調べ、初回であればＳ７１０へ進み、そうでなければＳ７０３へ進む。Ｓ７０３では、現在レンズが停止状態か否かを調べ、停止状態であればＳ７１０へ進み、そうでなければＳ７０４へ進む。
【００２７】
Ｓ７０４では、図８に示すように、前回のレンズ通信で配信されたレンズ位置BefPosと、今回のレンズ通信で配信されたレンズ位置StdPosとの差分であるPosDiffを算出してＳ７０５へ進む。Ｓ７０５ではSkipCntが１以上かどうかを調べ、１以上であればＳ７０６へ進み、そうでなければＳ７０７へ進む。Ｓ７０６ではPosDiffをSkipCntで割った値を新たにPosDiffとおいた後Ｓ７０７へ進む。これにより、レンズ通信動作が他の処理に阻害されてレンズ位置の配信ができなかったタイミングがあってもその前のタイミングで配信されたレンズ位置を用いて露光中心レンズ位置を算出することができる。
【００２８】
Ｓ７０７では、Ｓ３０１で設定した焦点検出領域の最上部ラインの露光完了レンズ位置FirstLineCompPos（図８参照）を下記のように算出してＳ７０８へ進む。
【００２９】
FirstLineCompPos＝StdPos ＋（PosDiff × DifTime − DelayTime ）/ FrameTime）
レンズ通信動作が他の処理に阻害されることなく正常に動作すれば１フレームの時間FrameTimeの間にPosDiffだけレンズが移動することになる。そのレンズ移動量PosDiffを基準としてレンズ通信動作から露光完了時間の差分であるDifTimeの間のレンズ移動量を算出することで露光完了レンズ位置を算出する。また、レンズ通信動作が他の処理に阻害されてDelayTimeだけ遅延した場合は、その時間でのレンズ移動量で補正することができる。
【００３０】
Ｓ７０８では、Ｓ７０７と同様にPosDiffを基準とし、露光時間ExpTimeを用いて最上部ラインの露光中心レンズ位置FirstLineCenterPosを下記のように算出してＳ７０９へ進む。
【００３１】
FirstLineCenterPos＝FirstLineCompPos − PosDiff × ExpTime/（FrameRate×２）
Ｓ７０９では、Ｓ７０７、Ｓ７０８と同様にPosDiffを基準とし、焦点検出領域全体を読み出す時間ImageReadoutTime、焦点検出領域全体の垂直ライン数Vall、前述したVafを用いて、焦点検出領域の中心ラインの露光中心レンズ位置ExpCenterPosを下記のように算出してＳ７１１へ進む。
【００３２】
ExpCenterPos
＝FirstLineCenterPos ＋ PosDiff ×（ImageReadoutTime/FrameRate）×（Vaf/Vall）
Ｓ７１０では、ExpCenterPos に今回のレンズ通信で配信されたレンズ位置StdPosを代入してＳ７１１へ進む。Ｓ７１１では、前回のレンズ通信で配信されたレンズ位置であるBefPosにStdPosを代入して本フローを終了する。
【００３３】
次に、図９は、図５と図６で説明した焦点評価値と露光中心レンズ位置を対応付ける具体的な動作例を示した図である。図９（ａ）は、交換レンズ１００とデジタルカメラ本体２００の間の通信に他の処理が加わってデジタルカメラ本体２００がフォーカスレンズ１０３のレンズ位置を取得できたタイミングが焦点評価値が得られたタイミングよりも遅れた場合の例を示している。また、図９（ｂ）は、交換レンズ１００とデジタルカメラ本体２００の間の通信に他の処理が加わってデジタルカメラ本体２００がレンズ位置を取得できなかった場合の例を示している。
【００３４】
まず、図９（ａ）において、オートフォーカス動作の最初に図６のレンズ通信動作のフローがスタートし、時刻ｔ１において、レンズ通信によりデジタルカメラ本体２００がフォーカスレンズ１０３のレンズ位置Pos3を取得できたとする。この場合、レンズ位置Pos3は、最初に取得できたレンズ位置であるので、Ｓ６０５においてこのレンズ位置Pos3がバッファに格納されるとともに、Ｓ６０５ではまだ焦点評価値が取得できていないため、Ｓ６０６でＮｏとなり、図６のフローは終了する。
【００３５】
また、図６の処理と並行して図５の焦点評価値生成動作のフローが実行され、時刻ｔ２において最初の焦点評価値Eva3が生成されたとする。この場合、Ｓ５０３において焦点評価値Eva3がバッファに格納される。また、Ｓ５０４においてレンズ位置はPos3がバッファに格納されているので、Ｓ５０４でＹｅｓとなり、フローはＳ５０５に進む。Ｓ５０５では、レンズ位置の最も古いもの、つまりPos3が取り出される。そして、Ｓ５０６において、Ｓ５０５で取り出したレンズ位置（StdPos＝Pos3）と以前にバッファとは別の記憶部に記憶されているレンズ位置（BefPos＝Pos2：図７のＳ７１１参照）を用いて露光中心レンズ位置が算出される。これにより、対応する焦点評価値Eva3と、Pos3とPos2から算出された露光中心レンズ位置が揃い、それらが対応付けられることになる。
【００３６】
次に、再び図５の処理において、時刻ｔ３で焦点評価値Eva4が生成されたとする。この場合、Ｓ５０３において焦点評価値Eva4がバッファに格納される。また、Ｓ５０４においてレンズ位置が格納されていないため、Ｓ５０４でＮｏとなり、図５のフローは終了する。
【００３７】
次に、再び図６の処理において、時刻ｔ４でレンズ位置Pos4が取得できたとする。この場合、レンズ位置が取得できずスキップしたフレームは無いので、Ｓ６０３においてSkipCntが０となり、LensFrmID＝LensFrmID＋０となる。そして、Ｓ６０４では、焦点評価値の削除は行わない。そして、Ｓ６０５においてレンズ位置Pos4がバッファに格納される。そして、Ｓ６０６でＹｅｓとなり、フローはＳ６０７に進む。Ｓ６０７では、格納されている焦点評価値の最も古い焦点評価値Eva4が取りだされる。そして、Ｓ６０８において、今回格納されたレンズ位置（StdPos＝Pos4）と以前にバッファとは別の記憶部に記憶されているレンズ位置（BefPos＝Pos3：図７のＳ７１１参照）を用いて露光中心レンズ位置が算出される。これにより、対応する焦点評価値Eva4と、Pos4とPos3から算出された露光中心レンズ位置が揃い、それらが対応付けられることになる。
【００３８】
以降は、上記の繰り返しになり、焦点評価値とそれに対応する露光中心レンズ位置が次々と対応付けられる。
【００３９】
このように本実施形態においては、交換レンズ１００からデジタルカメラ本体２００へのフォーカスレンズ位置の通信のタイミングがずれた場合でも、レンズ位置と焦点評価値が揃った時点で対応付けをするため、間違った対応付けによる誤測距を防止できる。
【００４０】
次に、図９（ｂ）のように、交換レンズ１００とデジタルカメラ本体２００の間の通信に他の処理が加わってデジタルカメラ本体２００がレンズ位置を取得できなかった場合について説明する。
【００４１】
図９（ｂ）に破線で示したように、時刻ｔ３において、レンズ通信に他の処理が加わって通信が遅れ、デジタルカメラ本体２００がレンズ位置Pos4を取得できなかったとする。この場合は、時刻ｔ４において焦点評価値Eva4が生成されてバッファに格納される（図５のＳ５０１〜Ｓ５０３）が、レンズ位置は格納されていないので、Ｓ５０４でＮｏとなり、図５のフローは終了する。
【００４２】
次に、図６の処理で、時刻ｔ５においてレンズ位置Pos5が取得できたとする。この場合、前回の時刻ｔ３においてレンズ位置Pos4が取得できなかったことをこの次回のタイミングでユーザに通知する。また、この場合、レンズ位置が取得できずスキップしたフレームは１フレームなので、Ｓ６０３においてSkipCntが１となり、Ｓ６０４において１個の焦点評価値を削除する。ここでは、焦点評価値Eva4が削除される。そして、Ｓ６０５においてレンズ位置Pos5がバッファに格納されるとともに、Ｓ６０５では、その前のＳ６０４において焦点評価値Eva4が削除されているので、まだ焦点評価値が取得できていないと判断される。そのため、Ｓ６０６でＮｏとなり、図６のフローは終了する。
【００４３】
次に、再び図５の処理で、時刻ｔ６において焦点評価値Eva5が生成されたとする。この場合、焦点評価値Eva5がバッファに格納される（図５のＳ５０１〜Ｓ５０３）。また、Ｓ５０４においてレンズ位置は既にPos5がバッファに格納されているので、フローはＳ５０５に進む。Ｓ５０５では、レンズ位置の最も古いもの、つまり今回のPos5が取り出される。そして、Ｓ５０６において、Ｓ５０５で取り出したレンズ位置（StdPos＝Pos5）と以前にバッファとは別の記憶部に記憶されている前々回のレンズ位置（BefPos＝Pos3：図７のＳ７１１参照）を用いて露光中心レンズ位置が算出される。これにより、対応する焦点評価値Eva5と、Pos5とPos3から算出された露光中心レンズ位置が揃い、それらが対応付けられることになる。
【００４４】
以降は、上記の繰り返しになり、焦点評価値とそれに対応する露光中心レンズ位置が次々と対応付けられる。
【００４５】
このように本実施形態においては、交換レンズ１００からデジタルカメラ本体２００へのフォーカスレンズ位置の通信のタイミングがずれてレンズ位置が取得できなかった場合でも、レンズ位置と焦点評価値が揃った時点で対応付けをする。そのため、間違った対応付けによる誤測距を防止できる。
【００４６】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。
【００４７】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００４８】
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【００４９】
１００：交換レンズ、１０２：撮影レンズ、１０３：フォーカスレンズ、１０６：レンズマウント、２００：デジタルカメラ本体、２０１：撮像素子、２０８：システム制御部
【図１】
0006478642.tif 000002
【図２】
0006478642.tif 000003
【図３】
0006478642.tif 000004
【図４】
0006478642.tif 000005
【図５】
0006478642.tif 000006
【図６】
0006478642.tif 000007
【図７】
0006478642.tif 000008
【図８】
0006478642.tif 000009
【図９】
0006478642.tif 000010