(撮像装置の構成)
まず、図1を参照して、本発明の実施例1における撮像装置の構成について説明する。図1は、本実施例における撮像装置10のブロック図である。本実施例における撮像装置は一例として、レンズ交換可能な一眼レフタイプのデジタルカメラである。撮像装置10は、撮像光学系であるレンズ装置に相当するレンズユニット100とカメラ本体120とを有するカメラシステムである。レンズユニット100は、図1中の点線で示されるマウントMを介して、カメラ本体120と着脱可能に取り付けられる。図中は説明のため省略したが、マウントMはバヨネット方式でレンズユニット100とカメラ本体120を結合する。そして、レンズユニット100は、マウントMに設けられた電源や通信用の複数の接点端子によって、カメラ本体120と電気的に接続する。
ただし本実施例は、これに限定されるものではなく、レンズユニットとカメラ本体とが一体的に構成されたレンズが交換できない撮像装置にも適用可能である。また本実施例は、デジタルカメラに限定されるものではなく、ビデオカメラやカメラ付携帯電話など他の撮像装置にも適用可能である。
レンズユニット100は、撮像光学系としての第1レンズ群101、絞り102、第2レンズ群103、および、フォーカスレンズ群(以下、フォーカスレンズと称する場合がある)104と、駆動/制御系とを有する。このようにレンズユニット100は、フォーカスレンズ104を含み、被写体像を形成する撮像レンズである。なお、レンズユニット100には第2レンズ群103等を光軸OAと垂直な面内で駆動させることで像ブレを軽減する機能を有する構成としてもよい。
第1レンズ群101は、レンズユニット100の先端に配置され、光軸方向OAに進退可能に保持される。絞り102は、その開口径を調節することで撮像時の光量調節を行い、また静止画撮像時においては露光秒時調節用シャッタとして機能する。絞り102および第2レンズ群103は、一体的に光軸方向OAに移動可能であり、第1レンズ群101の進退動作との連動によりズーム機能を実現する。フォーカスレンズ104は、光軸方向OAに移動可能であり、その位置に応じてレンズユニット100が合焦する被写体距離(合焦距離)が変化する。フォーカスレンズ104の光軸方向OAにおける位置を制御することにより、レンズユニット100の合焦距離を調節する焦点調節(以下、フォーカス制御と称する場合がある)が可能である。
駆動/制御系は、ズームアクチュエータ111、絞りアクチュエータ112、フォーカスアクチュエータ113、ズーム駆動回路114、絞り駆動回路115、フォーカス駆動回路116、レンズMPU117、及び、レンズメモリ118を有する。ズーム駆動回路114は、ズームアクチュエータ111を用いて第1レンズ群101や第3レンズ群103を光軸方向OAに駆動し、レンズユニット100の光学系の画角を制御し、ズーム操作を行う。また、ズーム駆動回路114は、ズームアクチュエータ111を用いて第1レンズ群101や第3レンズ群103の現在位置(ズームステートZS)を検出する位置検出部としての機能を有する。絞り駆動回路115は、絞りアクチュエータ112を用いて絞り102を駆動し、絞り102の開口径や開閉動作を制御する。フォーカス駆動回路116は、フォーカスアクチュエータ113を用いてフォーカスレンズ104を光軸方向OAに駆動し、レンズユニット100の光学系の合焦距離を制御し、フォーカス制御を行う。また、フォーカス駆動回路116は、フォーカスアクチュエータ113を用いてフォーカスレンズ104の現在位置(フォーカスステートFS)を検出する位置検出部としての機能を有する。
レンズMPU117は、レンズユニット100に係る全ての演算、制御を行い、ズーム駆動回路114、絞り駆動回路115、および、フォーカス駆動回路116を制御する。レンズMPU117はCPU等のプロセッサを含み、レンズメモリ118に記憶したパラメータや、カメラMPU125からの要求に応じて、ズーム駆動回路114、絞り駆動回路115、フォーカス駆動回路116等を統括制御する。また、レンズMPU117は、マウントMを通じてカメラMPU125と接続され、コマンドやデータを通信する。例えば、レンズMPU117はフォーカスレンズ104の位置を検出し、カメラMPU125からの要求に対してレンズ位置情報等を通知する。このレンズ位置情報は、フォーカスレンズ104の光軸方向OAにおける位置、光学系が移動していない状態の射出瞳の光軸方向OAにおける位置および直径、および、射出瞳の光束を制限するレンズ枠の光軸方向OAにおける位置および直径などの情報を含む。また、レンズMPU117は、所定のタイミングでカメラMPU125からの要求を含むコマンドを受け取る。レンズMPU117は当該コマンドの内容を解析し、各構成用の制御を行う。
レンズメモリ118は、自動焦点調節(以下、AF制御と称する場合がある)に必要な開口情報等を含む光学情報を記憶している。レンズMPU117は、所定のタイミングまたはカメラMPU125からの要求に応じて、光学情報をカメラMPU125へ送信する。また、レンズMPU117は、例えば内蔵の不揮発性メモリやレンズメモリ118に記憶されているプログラムを実行することにより、各種パラメータの演算やレンズユニット100の動作を制御する。また、当該演算及び制御はカメラMPU125が行ってもよいし、一部または全部の処理を分担して実行してもよい。また、開口情報についての詳細は後述する。
レンズユニット100は筒状の本体(以下、鏡筒と称する場合がある)に各構成要素を固定するための複数のレンズ部材を備える。各レンズ部材はフレア等を低減するために鏡筒自体に固定されているものだけではなく、各構成要素の制御に付随して移動するものもある。一例としてフォーカスレンズ104を固定するためのレンズ部材(枠)はフォーカスレンズ104が光軸方向OAにおける移動に際して連動して移動する。
カメラ本体120は、光学的ローパスフィルタ121、撮像素子122、および、駆動/制御系を有する。光学的ローパスフィルタ121および撮像素子122は、レンズユニット100を介して形成された光学像に相当する被写体像を光電変換し、画像データを出力する撮像部として機能する。本実施例において、撮像素子122は、撮像光学系を介して形成された被写体像を光電変換し、画像データとして、撮像信号および焦点検出信号をそれぞれ出力する。
光学的ローパスフィルタ121は、撮像画像の偽色やモアレを軽減する光学部材である。撮像素子122は、CMOSイメージセンサおよびその周辺回路で構成され、横方向m画素、縦方向n画素(m、nは2以上の整数)が配置されている。本実施例の撮像素子122は、瞳分割機能を有し、各画素から出力された画素信号に基づく画像データを用いた位相差検出方式の焦点検出(以下、位相差AFと称する場合がある)が可能な瞳分割画素を有する。画像処理回路124は、撮像素子122から出力される画素信号に基づく画像データから、位相差AF用のデータと、表示、記録、およびコントラストAF(TVAF)用の各種画像データ等とを生成する。
駆動/制御系は、撮像素子駆動回路123、画像処理回路124、カメラMPU125、表示器126、操作スイッチ群(SW)127、メモリ128、位相差AF部129およびTVAF部130を有する。本実施例において位相差AF部129は、撮像面位相差焦点検出部に相当し、TVAF部130は、TVAF焦点検出部に相当する。
撮像素子駆動回路123は、撮像素子122の動作を制御するとともに、撮像素子122から出力された画素信号をA/D変換や各種補正処理を施し、カメラMPU125に送信する。画像処理回路124は、撮像素子122から出力された画素信号に基づく画像データに対して、γ変換、ホワイトバランス調整処理、色補間処理、圧縮符号化処理など、デジタルカメラで行われる一般的な画像処理を行う。また画像処理回路124は、位相差AF用の信号を生成する。
カメラMPU125はCPU等のプロセッサを含み、カメラ本体120に係る各構成要素を制御するための演算を行う。すなわちカメラMPU125は、撮像素子駆動回路123、画像処理回路124、表示器126、操作SW127、メモリ128、位相差AF部129、および、TVAF部130を制御するための演算を行う。カメラMPU125は、マウントMの信号線を介してレンズMPU117と接続され、レンズMPU117とコマンドやデータを通信する。カメラMPU125は、レンズMPU117に対して、レンズ位置の取得や所定の駆動量でのレンズ駆動要求を発行し、また、レンズMPU117からレンズユニット100に固有の光学情報の取得要求などを発行する。
カメラMPU125には、カメラ本体120の動作を制御するプログラムを格納したROM125a、変数を記憶するRAM125b、および、各種のパラメータを記憶するEEPROM125cが内蔵されている。またカメラMPU125は、ROM125aに格納されているプログラムに基づいて、焦点検出処理を実行する。焦点検出処理においては、撮像光学系の互いに異なる瞳領域(瞳部分領域)を通過した光束により形成される光学像を光電変換した対の像信号を用いて、公知の相関演算処理が実行される。
表示器126はLCDやビューファインダーなどから構成され、撮像装置10の撮像モードに関する情報、撮像前のプレビュー画像と撮像後の確認用画像、焦点検出時の合焦状態表示画像などを表示する。操作SW127は、電源スイッチ、レリーズ(撮像トリガ)スイッチ、ズーム操作スイッチ、撮像モード選択スイッチなどで構成される。メモリ128(記録手段)は、着脱可能なフラッシュメモリであり、撮像済み画像を記録する。なお、表示器126にタッチパネル等を設け、操作SW127として使用してもよい。
位相差AF部129は、撮像素子122および画像処理回路124から得られる焦点検出用の画像データの像信号に基づいて、位相差検出方式による焦点検出処理を行う。より具体的には、画像処理回路124は、撮像光学系の一対の瞳領域を通過する光束で形成される一対の像データを焦点検出信号として生成し、位相差AF部129は、一対の像データのずれ量に基づいて焦点を検出する。このように、本実施例の位相差AF部129は、専用のAFセンサを用いず、撮像素子122の出力に基づく位相差AFを行う。本実施例において、位相差AF部129は、取得手段129aおよび算出手段129bを有する。これらの各手段の動作については後述する。なお、位相差AF部129の少なくとも一部の構成(取得手段129aまたは算出手段129bの一部)を、カメラMPU125等の別の機能ブロックに設けてもよい。
TVAF部130は、画像処理回路124により生成されるTVAF用評価値(画像データのコントラスト情報)に基づいて、コントラスト検出方式の焦点検出処理を行う。コントラスト検出方式の焦点検出処理の際には、フォーカスレンズ104を移動して評価値(焦点評価値)がピークとなるフォーカスレンズ位置が合焦位置として検出される。また、TVAF部130により検出されたコントラスト値を位相差AF部129の演算も用いてもよい。例えば、コントラスト値を演算結果の信頼性等に用いることが可能である。
このように、本実施例の撮像装置10は、撮像面位相差AFとTVAFとを組み合わせて実行可能であり、状況に応じて、これらを選択的に使用し、または、組み合わせて使用することができる。位相差AF部129およびTVAF部130は、各々の焦点検出結果を用いてフォーカスレンズ104の位置を制御するフォーカス制御手段として機能する。
(撮像素子)
まず、図2を参照して、本実施例における撮像素子(CMOSイメージセンサ)122の画素配列および画素構造について説明する。図2は、撮像素子122の画素(撮像画素)配列を示す図である。撮像素子122の画素配列を、4列×4行の範囲で示している。本実施例では、2列×2行の画素群200は、画素200R、200G、200Bがベイヤー配列で配置されている。すなわち、画素群200のうち、R(赤)の分光感度を有する画素200Rが左上に、G(緑)の分光感度を有する画素200Gが右上と左下に、B(青)の分光感度を有する画素200Bが右下にそれぞれ配置されている。画素200R、200G、200Bは、2列×1行に配列された焦点検出画素(第1焦点検出画素)201、焦点検出画素(第2焦点検出画素)202により構成されている。このため、図3には、焦点検出画素の配列が、8列×4行の範囲で示されている。なお、本実施例の画素はx方向に配置された2つの焦点検出画素から構成されているが、これに限られるものではなく、y方向に配置されたものでもよい。また、2つ以上の焦点検出画素で構成してもよいし、いくつかの構成を組み合わせた構成であってもよい。
図3に示されるように、撮像素子122は、4列×4行の画素(8列×4行の焦点検出画素)を多数配置して構成されており、撮像信号(焦点検出信号)を出力する。本実施例の撮像素子122は、画素の周期Pが6μm、画素の数Nが横6000列×縦4000行=2400万画素である。また、撮像素子122は、焦点検出画素の列方向の周期PSUBが3μm、焦点検出画素の数NSUBが横12000列×縦4000行=4800万画素である。なお、4Kフォーマットの動画等を撮像素子122を用いて取得する場合には、横4000列以上の画素を有することが望ましい。また、これ以上のサイズのフォーマットで画像を取得する場合には当該フォーマットに合わせた画素数であることが望ましい。また、画素の周期Pは用いる撮像光学系のイメージサークル、解像度等によって決定されるが、レンズの回折限界に相当する1μm程度の周期Pまで適用することが可能である。
本実施例の各画素には、フォトダイオードが形成されたシリコン等の半導体の界面である受光面側に入射光を集光するためのマイクロレンズが設けられている。マイクロレンズは、2次元状に複数配列されており、受光面に垂直なz軸方向(光軸OAの方向)に所定の距離だけ離れた位置に配置されている。また、画素には、x方向にNx分割(2分割)、y方向にNy分割(1分割)された分割数NLF=Nx×Ny(分割数2)の光電変換部が形成されている。それぞれの光電変換部は、焦点検出画素201および焦点検出画素202に対応する。
それぞれの光電変換部は、シリコン等の半導体基板上に形成され、p型層とn型層から成るpn接合のフォトダイオードとして構成される。必要に応じて、p型層とn型層との間にイントリンシック層を挟んだpin構造のフォトダイオードとして構成しても良い。マイクロレンズと光電変換部との間には、対応する色のカラーフィルタが設けられている。必要に応じて、画素ごと、または光電変換部ごとにカラーフィルタの分光透過率を変えることができ、またはカラーフィルタは省略してもよい。
画素群200に入射した光は、マイクロレンズにより集光され、カラーフィルタで分光された後、それぞれの光電変換部で受光される。それぞれの光電変換部においては、受光量に応じて電子とホールとの対が生成され、それらが空乏層で分離された後、負電荷の電子はn型層に蓄積される。一方、ホールは定電圧源(不図示)に接続されたp型層を通じて、撮像素子122の外部へ排出される。光電変換部のn型層に蓄積された電子は、転送ゲートを介して、静電容量部(FD)に転送され、電圧信号に変換される。
なお、本実施例においてマイクロレンズは撮像素子122における光学系に相当する。当該光学系は複数のマイクロレンズを含む構成としてもよいし、導波路等の屈折率の異なる材料を用いた構成としてもよい。また、撮像素子122はマイクロレンズを有する面と反対の面に回路等を備える裏面照射型のイメージセンサでもよく、更に撮像素子駆動回路123および画像処理回路124等の一部の回路を備える積層型のイメージセンサであってもよい。また、半導体基板としてシリコン以外の材料を用いてもよいし、例えば有機材料を光電変換材料として用いてもよい。
(開口情報取得フロー)
以下、本実施例1におけるデフォーカス検出及び開口情報取得のフローについて図3の各図を用いて説明する。本実施例1の開口情報は、レンズメモリ118に記憶され、カメラMPU125からの要求に応じて、レンズMPU117が開口情報をカメラMPU125へ送信する。本実施形態では、開口情報をレンズメモリ118に記憶している場合を例に説明するが、開口情報をメモリ128に記憶して取得してもよい。また、カメラMPU125が備える所定の通信手段によって外部装置より取得してもよい。
図3(a)を参照して、カメラMPU125により実行される本実施例の焦点検出方法について説明する。図3(a)は、本実施例の焦点検出方法を示すフローチャートである。本実施例の焦点検出方法は、ソフトウエアおよびハードウエア上で動作するコンピュータプログラムとしての焦点検出プログラムにしたがって実行される。焦点検出プログラムは、例えば、カメラ本体120内のメモリ128に記録されていてもよいし、コンピュータが読み取り可能な記録媒体に記録されていてもよい。また、本実施例ではカメラMPU125が焦点検出方法を実行するが、パーソナルコンピュータ(PC)や専用の装置が焦点検出装置として本実施例のデフォーカス検出方法を実行してもよい。また、本実施例の焦点検出プログラムに対応する回路を設け、回路を動作させることで本実施例の焦点検出方法を実行してもよい。
図3(a)のステップS101では、カメラMPU125は、焦点検出位置設定手段として動作し、焦点検出を行う撮像素子122上の焦点検出位置の像高座標(xAF、yAF)を設定する。次に、像高座標(xAF、yAF)から、式(1)により、焦点検出位置の像高rAFを計算する。そして、処理をステップS102に進める。なお、本実施例ではその説明は省略するが手振れ補正等による光軸位置のシフト量を考慮して像高座標を設定するようしてもよい。
図3(a)のステップS102では、カメラMPU125は、撮像光学系の光学条件に応じた開口情報を取得する。特に、焦点検出位置の像高座標(xAF、yAF)と、撮像光学系(交換レンズ)のフォーカスステートFS、ズームステートZS等の光学条件に応じた開口情報を取得する。そして、処理をステップS103に進める。本ステップS102における開口情報の取得ついては、図3(b)を用いて後で詳細に説明する。
図3(a)のステップS103では、カメラMPU125は撮像素子駆動回路123を制御して撮像素子122の各画素の焦点検出画素201、焦点検出画素202で受光された画素信号を取得する。もしくは、予め本実施例の撮像素子122により撮像され、記録媒体等に保存されている画素信号を用いても良い。ステップS103では、次に、カメラMPU125は、画素信号に基づいて、撮像光学系の異なる瞳部分領域に応じた第1焦点検出信号と第2焦点検出信号を生成する。すなわち、同一の瞳部分領域に相当する画素からの信号に基づいてそれぞれの焦点検出信号を生成する。より詳細には、撮像素子122により撮像された画素信号をLFとする。また、LFの各画素信号内での列方向iS(1≦iS≦Nx)番目、行方向jS(1≦jS≦Ny)番目の焦点検出画素信号を、k=Nx(jS−1)+iS(1≦k≦NLF)として、第k焦点検出画素信号とする。撮像光学系の第kの瞳領域に対応した、列方向i番目、行方向j番目の第k焦点検出信号Ik(j、i)を、以下の式(2)により生成する。
本実施例は、Nx=2、Ny=1、NLF=2のx方向2分割で、k=1、k=2の例である。図2に例示した画素配列に対応した画素信号から、画素毎に、x方向2分割された第1焦点検出画素201の信号を選択する。よって、撮像光学系の瞳部分領域に対応した、画素数N(=水平画素数NH×垂直画素数NV)の解像度を有するベイヤー配列のRGB信号である第1焦点検出信号と第2焦点検出信号I2(j、i)を生成する。
ステップS103では、次に、ベイヤー配列のRGB信号である第k焦点検出信号Ik(k=1、2)から、位置(j,i)ごとに、各色RGBの色重心を一致させて、第k焦点検出輝度信号Yk(k=1、2)を、以下の式(3)により生成する。必要に応じて、焦点検出精度を向上するために、第k焦点検出輝度信号Ykに、シェーディング(光量)補正処理等を行っても良い。
ステップS103では、次に、第k焦点検出輝度信号Yk(k=1、2)に対して、瞳分割方向(列方向)に、1次元バンドパスフィルタ処理を行い、略波数kAF成分に限定された第1焦点検出信号dYAを生成する。また、第2焦点検出輝度信号Y2に対して、瞳分割方向(列方向)に、1次元バンドパスフィルタ処理を行い、略波数kAF成分に限定された第2焦点検出信号dYBを生成する。1次元バンドパスフィルタとしては、例えば、1次微分型フィルタ[1、5、8、8、8、8、5、1、−1、−5、−8、−8、−8、−8、−5、−1]などを用いることができる。必要に応じて、1次元バンドパスフィルタの通過帯域を調整することが好ましい。例えば、高周波のノイズ成分を低減するために単純に加算する処理を行ってもよい。そして、処理をステップS104に進める。
図3(a)のステップS104では、カメラMPU125は、像ズレ量検出手段として、焦点検出信号に基づいて、検出像ずれ量を算出する。焦点検出位置(jAF、iAF)を中心として、行方向j2(−n2≦j2≦n2)番目、瞳分割方向である列方向i2(−m2≦i2≦m2)番目の略波数kAF成分に限定された第1焦点検出信号をdYA(jAF+j2、iAF+i2)とする。さらに、第2焦点検出信号をdYB(jAF+j2、iAF+i2)とする。シフト量をs(−ns≦s≦ns)として、各位置(jAF,iAF)での相関量COREVEN(jAF,iAF、s)を、式(4A)により算出し、相関量CORODD(jAF,iAF、s)を、式(4B)により算出する。
相関量CORODD(jAF,iAF、s)は、相関量COREVEN(jAF,iAF、s)に対して、略波数kAF成分に限定された第1焦点検出信号dYAと第2焦点検出信号dYBのシフト量を半位相−1シフトずらした相関量である。
図3(a)のステップS104では、次に、相関量COREVEN(jAF,iAF、s)と相関量CORODD(jAF,iAF、s)から、それぞれ、サブピクセル演算により、相関量が最小値となる実数値のシフト量を算出して平均値を算出する。そして、焦点検出位置(jAF、iAF)における検出像ずれ量qdetを算出する。そして、処理をステップS105に進める。
図3(a)のステップS105では、カメラMPU125は、変換係数取得手段として、検出像ずれ量qdetから、デフォーカス量ddetへ変換するための変換係数Kを算出する。ステップS105の変換係数Kの算出について、ステップS102で取得した開口情報を用いる。より詳細には、開口情報に対応するパラメータをメモリ128等に記憶しておき、当該パラメータを用いて変換係数Kを算出する。また、変換係数K自体を開口情報に対応したテーブルとしてメモリ128に記憶させておいてもよい。なお、本実施例において各ステップの処理は、カメラMPU125が行う例を示すが、外部のPC等によって変換係数Kの算出工程の一部を行い、メモリ等にその結果を保持する構成としてもよい。算出工程の一部を事前に行うことで、カメラMPU125の演算負荷を低減することができる。そして、処理をステップS106に進める。
図13のステップS106では、カメラMPU125は、検出像ずれ量qdetに変換係数Kを乗算し、デフォーカス量ddetを算出する。なお、デフォーカス量ddetの算出は撮像素子122から出力される画素信号に対して実施する例を示したが、これに限られずメモリ128または外部のPC等に記憶された画素信号に対して実行する場合であってもよい。
図3(b)に、本実施例1の図3(a)のステップS102の開口情報取得のフローチャートを示す。なお、図3(b)の動作は、レンズMPU117、レンズメモリ118、カメラMPU125によって実行される。開口情報の取得はカメラ本体120の起動時に行うことが好ましいが、所定の周期で定期的に実行してもよいし、フォーカスステートFSまたはズームステートZSが変化した場合、焦点検出領域が設定された場合、撮像動作時などに実行してもよい。
まず図3(b)のステップS201において、レンズMPU117は、ズーム駆動回路114より現在のズームステートZSを、フォーカス駆動回路116より現在のフォーカスステートFSを取得する。そして、処理をステップS202に進める。なお、本動作においてズームステートZS及びフォーカスステートFSは定期的にレンズメモリ118等に記憶しておき、当該記憶された情報を取得するようにしてもよい。
続いて、図3(b)のステップS202において、レンズMPU117は、レンズメモリ118より、ステップS201で取得したズームステートZS、フォーカスステートFSに応じた開口情報を取得する。レンズメモリ118には、ズーム範囲を複数に分割したズームステートZS毎、フォーカス範囲を複数に分割したフォーカスステートFS毎、像高範囲を複数に分割した像高毎に開口情報をテーブルとして記憶している。そして、レンズMPU117は、取得した現在のズームステートZS、フォーカスステートFSに対応する開口情報を、レンズMPU117が近傍ステートの開口情報から線形補間することにより算出し決定する。そして、処理をステップS203に進める。なお、像高に関しては、後述するカメラMPU125にて算出し取得されるが、撮像面上での座標位置としてもよい。また、本実施例では、現在のステートの開口情報を、線形補間にて算出することで取得したが、最近傍ステートの開口情報を、現在のステートの開口情報として取得してもよいし、線形補間以外の算出方法を用いて取得してもよい。
続いて、図3(b)のステップS203において、レンズMPU117は、ステップS202で取得した開口情報をカメラMPU125に送信する。ステップS203で送信される開口情報は、複数像高に対応する開口情報である。そして、処理をステップS204に進める。なお、送信する開口情報はカメラMPU125から指定された像高における開口情報のみを送信してもよいし、全像高の開口情報を送信するようにしてもよい。また、送信する範囲を適宜切り替えるようにしてもよい。
続いて、図3(b)のステップS204において、カメラMPU125は位相差AF部129を制御し、撮像素子122の有効画素領域の中から焦点調節を行う対象となる焦点検出領域を設定する。そして、処理をステップS205に進める。ここでは、位相差AF部が焦点検出領域を設定する例を用いて説明したが、TVAF部130が撮像素子122の有効画素領域の中から焦点調節を行う対象となる焦点検出領域を設定してもよい。また、焦点検出領域の設定については、ユーザー等が操作SW127を操作して行ってもよいし、画像処理回路124などによって有効画素領域内の特定の人物の顔などの被写体を検出して行ってもよい。
続いて、図3(b)のステップS205において、カメラMPU125は、ステップS204にて設定した焦点検出領域の像高に基づいて、ステップS203で取得した開口情報から、設定された像高の開口情報を取得する。ステップS203で取得した開口情報は、複数の像高の開口情報であるため、ステップS205では、ステップS204で設定された焦点検出領域の像高における開口情報を、カメラMPU125が近傍像高の開口情報から線形補間することにより算出し取得する。本実施例では、設定された焦点検出領域の像高の開口情報を、線形補間にて算出することで取得したが、最近像高の開口情報を、設定された像高の開口情報として取得してもよい。
本実施例では、開口情報をデフォーカス量の算出または撮像光学系の焦点検出に用いることを想定して説明した。だが、露出調整や、様々な画像処理等に用いてもよく、その場合にも本実施例と同様に、処理を実施したい像高に対する開口情報を、ステップS204で設定し、それに対応した開口情報をステップS205で取得する。
(開口情報)
次に、図4を参照して、開口情報に関して説明する。図4は、撮像光学系を通過する光束の外縁を規定する開口の形状の説明図である。撮像光学系から集光する光を撮像素子122の受光面で受光する様子を示している。なお、当該受光面をz方向の原点とし、撮像光学系の光軸OAはz軸と略一致し、光の入射方向と逆方向を正とする。また、受光面はz軸と直交するxy平面内に存在し、その原点は光軸OAと略一致する。図4(a)は、中央像高(光軸OA近傍)での下線側の光束を規定するレンズ部材301と、上線側の光束を規定するレンズ部材302と、開口形状311の関係を示す。図4(b)は、周辺像高での下線側の光束を規定するレンズ部材303と、上線側の光束を規定するレンズ部材304と、開口形状312の関係を示す。なお、開口形状は複数の部材の結果をセンサ入射瞳に投影した際の瞳形状である。なお、開口形状としてはセンサ入射瞳を基準とするのではなく、撮像光学系の射出瞳を基準としてもよいし、決められた所定のz軸上の位置を基準としてもよい。
ここで、撮像素子122のセンサ入射瞳について説明する。本実施例の撮像素子122では、2次元の平面上の各像高座標に位置する画素毎に、マイクロレンズは像高座標に応じて、撮像素子の中心方向へ連続的にシフトされて配置されている。つまり、各マイクロレンズは像高が高くになるにつれ、光電変換部に対して光軸OA側へ偏心するように配置されている。なお、撮像素子122の中心と撮像光学系の光軸OAは、撮像光学系または撮像素子を駆動することで手振れ等によるブレの影響を低減する機構によって変化するが略一致する。これにより、撮像素子122から距離Dsだけ離れた位置の瞳面において、撮像素子122の各像高座標に配置された各画素の第1焦点検出画素201の受光領域に対応する第1瞳強度分布が、概ね、一致するように構成される。同様に、第2焦点検出画素202の受光領域に対応する第2瞳強度分布が、概ね、一致するように構成されている。つまり、撮像素子122から距離Dsだけ離れた位置の瞳面において、撮像素子122の全ての画素の第1瞳強度分布と第2瞳強度分布が、概ね、一致するように構成されている。以下、第1瞳強度分布及び第2瞳強度分布を、撮像素子122の「センサ入射瞳」と呼び、距離Dsを、撮像素子122の「入射瞳距離」と呼ぶ。なお、全ての画素を単一の入射瞳距離を有する構成とする必要はなく、例えば像高8割までの画素の入射瞳距離を略一致させる構成としてもよいし、あえて行ごとまたは検出領域ごとに異なる入射瞳距離を有するように画素を構成してもよい。
図4(a)は、ステップS204で設定する焦点検出領域が中央像高((x、y)=(0、0))に設定されたときの状態である。図4(a)の中央像高の場合、同一xy平面内に配置されたレンズ部材301とレンズ部材302によって開口形状は規定され、入射瞳距離Dsにおいてその形状は円形となる。
図4(b)は、ステップS204で設定する焦点検出領域が周辺像高((x、y)=(−10、0))に設定されたときの状態である。図4(b)の周辺像高の場合、開口形状は、レンズ部材301とレンズ部材302では規定されず、レンズ部材303とレンズ部材304により規定され、入射瞳距離Dsにおいてその形状は円形ではなくなる。図4(b)では、2つのレンズ部材で開口が規定される例を示したが、複数のレンズ部材で開口が規定される場合もあり、その場合には、開口形状はより複雑な形状となる。
次に、図5〜図7を参照して、開口情報の算出方法に関して説明する。図5は、開口情報の算出方法の概略説明図であり、図5(a)は、図4(b)の開口形状312を開口情報として太線で表現しており、図5(b)、図5(c)は、開口情報算出時に用いる評価値(形状パラメータ)を表している。なお、当該算出制御は、カメラMPU125またはレンズMPU117が、図3に示した制御フローの中で行ってもよいし、事前に算出を行った結果のみをレンズメモリ118等に記憶させておいてもよい。
本実施例では、レンズメモリ118等に記憶させる開口情報として、開口形状を2つの円の位置と大きさで表現する。各円の位置と大きさは、各レンズ部材の形状(半径及び位置)をレンズの入射瞳面に投影した場合の形状に相当する。図5(a)では、開口形状312を、開口情報411(位置c1、半径r1)と、開口情報412(位置c2、半径r2)で表現している。開口情報411は、開口形状312の点401から右回りに点402までの領域でフィッティングすることで算出しており、開口情報412は、開口形状312の点401から左回りに点402までの領域でフィッティングすることで算出している。言い換えれば、中心と半径の異なる二つの円弧を用いて開口形状312を求める。なお、本実施例においてフィッティングに際して回転角θを定義する中心は光軸OAを用いるが、これに限定されない。
点401、点402は、所定位置からの開口形状312までの距離の2次微分の離散点である。図5(b)は、横軸が図5(a)に示す回転角θ、縦軸が図5(a)の(X,Y)=(0,0)から開口形状312までの距離rを示している。図5(c)は、横軸が図5(a)に示す回転角θ、縦軸が距離rを回転角θに関して2回微分した値を示している。図5(c)の離散点401、402が図5(a)の点401、点402と対応しており、この離散点によって、開口情報算出時のフィッティング範囲を決定している。所定位置からの距離変化が不連続となる点は、距離変化の2次微分の離散点として現れるため、この離散点を用いることで、開口形状を1つの開口情報として表現する領域毎に分離することができる。つまり、2つの円弧を2次微分の離散点を基準としてつなげることにより、複雑な形状である開口形状を、位置と半径のパラメータによって精度よく表現することが可能となる。
続いて、図6を用いて、複数のレンズ部材で開口が規定され、開口形状がより複雑な形状となる場合の開口情報算出方法に関して説明する。
図4(b)の複数のレンズ部材で開口が規定された開口形状313を開口情報として表現した様子を表しており、図6(b)、図6(c)は、開口情報算出時に用いる評価値(形状パラメータ)を表している。
本実施例では、開口情報として、開口形状を2つの円の位置と大きさで表現する。図6(a)では、開口形状313を、開口情報511(位置c1、半径r1)と、開口情報512(位置c2、半径r2)で表現した例を示している。開口情報511は、開口形状313の点501から右回りに点504までの領域でフィッティングすることで算出しており、開口情報512は、開口形状313の点502から左回りに点503までの領域でフィッティングすることで算出している。
点501〜点504は、所定位置からの開口形状313までの距離の2次微分の離散点である。図6(b)は、横軸が図6(a)に示す回転角θ、縦軸が図6(a)の(X,Y)=(0,0)から開口形状313までの距離rを示している。図6(c)は、横軸が図6(a)に示す回転角θ、縦軸が距離rを回転角θに関して2回微分した値を示している。図6(c)の離散点501〜504が図6(a)の点501〜点504と対応しており、この離散点によって、開口情報算出時のフィッティング範囲を決定している。
本実施例においては、開口形状の上線、下線の精度を優先し、開口形状313の点501から右回りに点504までの領域と、点502から左回りに点503までの領域でフィッティングしている。つまり、点501と点502の間と点503と点504の間については開口情報511(位置c1、半径r1)と、開口情報512(位置c2、半径r2)では正確に表現できていない。しかし、本実施例の撮像素子122はx方向に複数の光電変換部が形成された画素を有するため、x方向の開口形状がデフォーカス検出精度に影響を及ぼすこととなる。そのため、開口形状自体は複雑な形状となっているが、デフォーカス検出に影響を及ぼす範囲で適切なパラメータを用いることで、単純な形状にモデル化が可能となる。
本実施例では、上線、下線の精度を優先したが、離散点の中で、変化の不連続度が大きくなる、2次微分値の大きい離散点から円のフィッティング範囲を決定してもよい。また、本実施例では、フィッティングを領域で行ったが、離散点にて決定した領域内の数点からフィッティングして算出してもよい。また、本実施例では、所定位置からの距離の2次微分の離散点に基づいてフィッティング範囲を設定したが、開口形状の曲率半径の変化点に基づいてフィッティング範囲を設定し、開口情報を算出してもよい。また、本実施例では、所定位置からの距離の2次微分の離散点に基づいてフィッティングしたが、各Y座標での幅(上線側と下線側のXの差分)に関して、開口形状と開口情報の差が最小となるように、開口情報を算出してもよい。また、開口形状の面積と開口情報の面積(開口情報511と開口情報512の共通部分の面積)の差分が最小となるように、開口情報を算出してもよい。
また、本実施例では、2つの開口情報をパラメータとして、求めるべき開口形状を関数化して表現したが、3つ以上の開口情報で開口形状を表現してもよい。その場合には、レンズメモリ118の記憶容量が増加するが、開口情報による開口形状の表現精度を向上することができる。また、開口情報として各点(401、402、501乃至504)の位置やθもパラメータとして用いてもよい。
また、本実施例では、レンズメモリ118に開口情報を記憶しておき、取得したが、メモリ128に記憶しておき取得してもよい。また、開口形状をネットワーク上に記憶しておき、本実施例で説明した算出方法で開口情報を計算し、レンズユニット100またはカメラ本体120と通信することで取得してもよい。
以上の構成により、開口情報の精度を下げることなく簡易な構成で開口形状を表現することが可能となる。
次に、本発明の第3の実施例について説明する。本実施例は、実施例1で説明したカメラに、コンバータレンズユニットが装着された場合の開口情報の取得方法について説明する。
図8は、本実施例に係る撮像装置の一例としてデジタルカメラの機能構成例を示すブロック図である。図1のブロック図に示す構成との違いは、コンバータレンズユニット600がレンズユニット100とカメラ本体120の間に追加された点である。なお、図1と同様の構成には同じ参照番号を付し、その説明を省略する。なお、本実施例においてコンバータレンズユニット600は、レンズユニット100とカメラ本体120の間に搭載される例を示すが、これに限られるものではない。例えば、レンズユニット100の前側にコンバータレンズユニット600を搭載する構成としてもよいし、複数個のコンバータレンズユニット600を搭載する構成でもよい。また、コンバータレンズユニット600はレンズユニット100内に含まれ、レンズユニット100に設けられた操作部材を操作することで光路内に挿抜可能な構成としてもよい。
コンバータレンズユニット600は、コンバータレンズ601とコンバータメモリ602を含み、被写体の光学像を形成するレンズユニット100の焦点距離を変更する撮像レンズである。なお、以下の説明では、コンバータレンズユニット600と区別するために、レンズユニット100を「マスターレンズ100」と称する。コンバータレンズユニット600が装着されると、第1レンズ群、第2レンズ群とコンバータレンズ601により、ズーム機能を実現する。コンバータメモリ602には、自動焦点調節に必要な光学情報が予め記憶されている。カメラMPU125は、例えば内蔵する不揮発性メモリやレンズメモリ118、コンバータメモリ602に記憶されているプログラムを実行することで、マスターレンズ100の動作を制御する。
レンズユニット100とカメラ本体120は実施例1と同様にマウントMを介して通信を行うことが可能である。具体的にはコンバータレンズユニット600がカメラ本体120と接続するマウントMと、レンズユニット100がコンバータレンズユニット600と接続するマウントM2にはそれぞれ対応する電気接点がある。そのため、カメラ本体120はコンバータレンズユニット600がない場合と同様の通信方式によりレンズユニット100と通信することが可能となる。なお、当該通信を制御するためにコンバータレンズユニット600に専用のCPU等を設ける構成としてもよし。これによりコンバータレンズユニット600はカメラMPU125を介することなくレンズMPU117と通信することも可能となる。
(開口情報取得フロー)
以下、本実施例3における開口情報取得のフローについて説明する。本実施例3の開口情報は、レンズメモリ118に記憶され、カメラMPU125からの要求に応じて、レンズMPU117が開口情報をカメラMPU125へ送信する。本実施形態では、開口情報をレンズメモリ118に記憶している場合を例に説明するが、開口情報をメモリ128やコンバータメモリ602に記憶して取得してもよい。また、第1開口情報はレンズメモリ118に、第2開口情報はコンバータメモリ602にそれぞれ記憶して取得してもよい。
図9に、本実施例3の開口情報取得のフローチャートを示す。なお、図9の動作は、レンズMPU117、レンズメモリ118、カメラMPU125によって実行される。
まず図9のステップS801において、レンズMPU117は、ズーム駆動回路114より現在のズームステートZSを、フォーカス駆動回路116より現在のフォーカスステートFSを取得する。そして、処理をステップS802に進める。
続いて、ステップS802において、レンズMPU117は、コンバータレンズユニット600の装着判定を行う。ここで、装着判定はマウントM2を介してコンバータレンズユニット600と通信を行うことで行うが、マウントM2に設けた端子等の電圧を確認することで、装着の有無を判定可能としてもよい。また、カメラMPU125がレンズMPU117に通信によって通知してもよい。また、カメラ本体120に設けられた操作SW127によるユーザーの操作によって、装着の有無を判定してもよい。ここで、コンバータレンズユニット600が装着されていない場合、処理をステップS803に進め、コンバータレンズユニット600が装着されている場合には、処理をステップS805へ進める。
続いて、コンバータレンズユニット600が装着されていない場合について説明する。ステップS803において、レンズMPU117は、レンズメモリ118より、ステップS801で取得したズームステートZS、フォーカスステートFSに応じた第1開口情報を取得する。そして処理をステップS804に進める。本ステップは図3(b)のステップS202に相当する。
ここで、第1開口情報は、レンズメモリ118に記憶されたマスターレンズ100に関する開口情報である。レンズメモリ118には、ズーム範囲を複数に分割したズームステートZS毎、フォーカス範囲を複数に分割したフォーカスステートFS毎、像高範囲を複数に分割した像高毎に第1開口情報を記憶している。そのためステップS803では、現在のズームステートZS、フォーカスステートFSにおける開口情報を、レンズMPU117が近傍ステートの開口情報から線形補間することにより算出し取得する。像高に関しては、後述するカメラMPU125にて算出し取得される。本実施例では、現在のステートの開口情報を、線形補間にて算出することで取得したが、最近傍ステートの開口情報を、現在のステートの開口情報として取得してもよい。開口情報の詳細に関しては実施例1での説明と同様のため割愛する。
ステップS804において、図3(b)のステップS203と同様にレンズMPU117は、ステップS803で取得した第1開口情報をカメラMPU125に送信する。そして、処理をステップS807に進める。ステップS804で送信される第1開口情報は、複数像高の開口情報を含む。
次に、コンバータレンズユニット600が装着されている場合の処理について説明する。図9のステップS805において、レンズMPU117は、レンズメモリ118より、ステップS801で取得したズームステートZS、フォーカスステートFSに応じた第2開口情報を取得する。第2開口情報は、レンズメモリ118に記憶されたマスターレンズ100にコンバータレンズユニット600が装着された状態の開口情報である。
レンズメモリ118には、ズーム範囲を複数に分割したズームステートZS毎、フォーカス範囲を複数に分割したフォーカスステートFS毎、像高範囲を複数に分割した像高毎に第2開口情報を記憶している。そのためステップS805では、現在のズームステートZS、フォーカスステートFSにおける開口情報を、レンズMPU117が近傍ステートの開口情報から線形補間することにより算出し取得する。像高に関しては、後述するカメラMPU125にて算出し取得される。
図10に、マスターレンズ100にコンバータレンズユニット600が装着された状態の開口形状および開口情報の概略説明図を示す。図10の900は、マスターレンズ100にコンバータレンズユニット600が装着された状態の開口形状を表しており、マスターレンズ100のみの開口形状は図5に示した開口形状312と対応している。開口情報911は位置c1’、半径r1’で表現され、開口情報912は位置c2’、半径r2’で表現される。マスターレンズ100にコンバータレンズユニット600が装着された状態の開口情報は、マスターレンズ100のみの開口情報411、412とは、位置と大きさが異なっている。
続いて、図9のステップS806において、レンズMPU117は、ステップS805で取得した第2開口情報をカメラMPU125に送信する。そして、処理をステップS807に進める。ステップS805で送信される第2開口情報は、複数像高の開口情報である。
本実施例において、レンズメモリ118はズーム範囲を複数に分割したズームステートZS毎、フォーカス範囲を複数に分割したフォーカスステートFS毎、像高範囲を複数に分割した像高毎に第1開口情報と第2開口情報を記憶している。そして、レンズMPU117は図9におけるステップS802の判定に応じていずれかを送信するかを判定する。なお、第2開口情報は必ずしもレンズメモリ118に記憶させておく必要はなく、例えば第1開口情報から演算により求めるようにしてもよい。例えば、コンバータレンズユニット600が装着された場合にはステップS801で取得したズームステートZS、フォーカスステートFSを、コンバータレンズユニット600の光学特性を考慮して第1開口情報を変換して求めるようにしてもよい。また、マスターレンズ100における第1開口情報に対して所定の係数を乗算する等の変換式を用いて求めるようにしてもよい。
続いて、ステップS807において、カメラMPU125は、撮像素子122の有効画素領域の中から焦点調節を行う対象となる焦点検出領域を設定する。そして、ステップS808において、カメラMPU125は、ステップS807にて設定した焦点検出領域の像高に基づいて、ステップS804またはステップS806で取得した第1開口情報または第2開口情報から、設定された像高の開口情報を取得する。これらステップS807およびステップS808の制御は図3(b)のステップS204およびステップS205の夫々に対応するため、その詳細は省略する。
本実施例では、開口情報を焦点検出に用いることを想定して説明したが、露出調整や、画像処理等に用いてもよい。その場合にも本実施例と同様に、処理を実施したい像高に対する開口情報を、ステップS807で設定し、それに対応した開口情報をステップS808で取得する。
本実施形態では、開口情報をレンズメモリ118(記憶手段)に記憶している場合を例に説明したが、開口情報をメモリ128やコンバータメモリ602に記憶して取得してもよい。また、第1開口情報はレンズメモリ118に、第2開口情報はコンバータメモリ602にそれぞれ記憶してもよい。また、第1開口形状、第2開口形状をネットワーク上に記憶しておき、実施例1で説明した算出方法で開口情報を計算し、レンズまたはカメラと通信することで取得してもよい。本実施例では、開口情報を焦点検出に用いることを想定して説明したが、露出調整や、画像処理等に用いてもよく、その場合にも本実施例と同様に、処理を実施したい像高に対する開口情報を取得するようにしてもよい。
以上の構成により、コンバータレンズユニットが装着された場合でも、開口情報の精度を下げることなく簡易な構成で開口形状を表現することが可能となる。
また、本実施例においてコンバータレンズユニット600はズーム機能を実現するための光学系を備える構成として説明したが、レンズユニット100の光学条件を異ならせる構成であれば、本実施例の発明を適用することが可能である。例えば、フランジバックを調整するマウントアダプタ、光学フィルタを挿抜可能とするアダプタ等を装着する場合においても、本発明は好適である。
次に、本発明の第4の実施例について説明する。本実施例は、開口情報取得フローが実施例3で説明した開口情報取得フローと異なる。具体的には、実施例3では、あらかじめレンズメモリ118に記憶された第2開口情報を取得していたが、本実施例では、第1開口情報から第2開口情報を換算して算出し取得する点である。本実施例における他の構成および動作は、実施例3と同様であるため、それらの説明は省略する。
(開口情報取得フロー)
以下、本実施例4における開口情報取得のフローについて説明する。本実施例4の開口情報は、レンズメモリ118(記憶手段)に記憶され、カメラMPU125からの要求に応じて、レンズMPU117(送信手段)が開口情報をカメラMPU125へ送信する。本実施形態では、開口情報をレンズメモリ118(記憶手段)に記憶している場合を例に説明するが、開口情報をメモリ128やコンバータメモリ602に記憶して取得してもよい。
図11に、本実施例4の開口情報取得のフローチャートを示す。なお、図11の動作は、レンズMPU117、レンズメモリ118、カメラMPU125によって実行される。
まず図11のステップS1001乃至ステップS1004の処理においては、図9のステップS801乃至ステップS804に対応するため、その説明は省略する。また、ステップS1007およびステップS1008の処理においては、図9のステップS807およびステップS808に対応するため、その説明は省略する。
ここでは、ステップS1003でコンバータレンズユニット600が装着されていると判定された場合の処理について説明する。図11のステップS1005において、レンズMPU117は、第2開口情報を算出する。そして、処理をステップS1006に進める。第2開口情報算出処理に関しては後述する。
続いて、図11のステップS1006において、レンズMPU117は、ステップS1005で算出した第2開口情報をカメラMPU125に送信する。ステップS1006で送信される第2開口情報は、複数像高の開口情報である。
本実施例では、開口情報を焦点検出に用いることを想定して説明したが、露出調整や、画像処理等に用いてもよい。その場合にも本実施例と同様に、処理を実施したい像高に対する開口情報を、ステップS1007で設定し、それに対応した開口情報をステップS1008で取得する。
(第2開口情報算出処理)
以下、図11のステップS1005における第2開口情報算出処理のフローの詳細について説明する。
図12に、本実施例4の第2開口情報算出処理のフローチャートを示す。なお、図12の動作は、レンズMPU117、レンズメモリ118、コンバータメモリ602によって実行される。
まず、図12のステップS1101において、レンズMPU117は、コンバータメモリ602よりコンバータレンズ601の光学情報を取得する。そして、処理をステップS1102に進める。なお、光学情報は、コンバータレンズ601の倍率T、後側主点位置P1、前側主点位置P2、焦点距離f、コンバータレンズユニット600の物理長dなどを含む。さらに、コンバータレンズ601のID情報、調整値情報、ファームヴァージョン等の情報を取得してもよい。
続いて、図12のステップS1102では、ステップS1101で取得されたコンバータレンズ601の撮像倍率Tに基づき、像高情報の修正を行う。そして、処理をステップS1103に進める。これは、コンバータレンズユニット600の装着前後で、撮像面上の同じ像高が、マスターレンズ100の異なる領域を通過した光束を受光するようになるためである。まず、コンバータレンズユニット600の装着による、マスターレンズ100から見た像高の移動率を示す像高倍率T1を設定する。ここで、像高倍率T1は、T1=Tとしても良いし、T1=T×Co1として、コンバータレンズ601の撮像倍率Tに所定倍率Co1を乗じた値としても良い。その場合、Co1は、設計情報として定義された撮像倍率Tから、製造誤差を考慮して予め求められた値とすることが好ましい。また、コンバータメモリ602または、レンズメモリ118またはRAM125bに、撮像倍率Tまたはコンバータレンズ601の特性に応じた像高の移動率を予め記憶しておき、読み出した情報を像高倍率T1としても良い。
ステップS1103の動作では、ステップS1002で取得した、マスターレンズ100の開口情報である第1開口情報から、マスターレンズ100にコンバータレンズユニット600が装着された状態の開口情報である第2開口情報を算出する。そのため、マスターレンズ100の像高情報(x,y)を、像高倍率T1倍した像高情報とする必要がある。例えば、コンバータレンズユニット600装着前に、撮像面上における像高(x,y)に入射していた光は、コンバータレンズユニット600を装着すると、撮像面上で入射する像高がシフトする。コンバータレンズユニット600を装着した場合に、光が入射する像高を(xt,yt)とすると、装着前の像高(x,y)との関係は
(xt,xt)=(x×T1,y×T1)・・・(6)
となる。そのため、マスターレンズ100の像高情報(x,y)を、コンバータレンズユニット600を装着した場合の像高情報(xt,yt)へ修正しておく必要がある。
続いて、図12のステップS1103では、ステップS1002で取得された第1開口情報から、第2開口情報を算出する。この際に、ステップS1101で取得されたコンバータレンズ601の後側主点位置P1、前側主点位置P2、焦点距離f、コンバータレンズユニット600の物理長dとを用いる。
図13は、コンバータレンズ601と、後側主点位置P1、前側主点位置P2、焦点距離f、コンバータレンズユニット600の物理長dの関係を示している。さらに、第1開口情報412のY方向位置c1、Z方向位置Z1、算出後の第2開口情報のY方向位置c1’、Z方向位置Z1’の関係を示している。前側主点からマスターレンズ100の開口情報のZ方向位置までをa、後ろ側主点からコンバータレンズユニット600を装着した場合の開口情報のZ方向位置までをbとすると、a、bは、式(6A)、式(6B)となる。
a=d+Z1−P2・・・(6A)
b=P1−Z1’ ・・・(6B)
式(6A)、式(6B)を式(7A)のレンズ公式に代入することで、第2開口情報のZ方向位置Z1’を算出すると式(7B)となる。本実施例では、f>0として扱い、コンバータレンズ601が凹レンズであることを考慮した式(7A)を用いて計算している。
また、a、bと倍率の関係から、第2開口情報のY方向位置c1’を算出すると式(8)となる。
本実施例では、a、bと倍率の関係からc1’を算出したが、コンバータレンズ601の倍率Tを用いて、c1’を算出してもよい。また、本実施例では、コンバータレンズの倍率Tをコンバータレンズ601の光学情報として記憶し取得することで像高修正を行ったが、コンバータレンズ601の倍率Tを記憶せずに、a、bの関係から算出した倍率から像高修正を行ってもよい。
また、本実施例では、コンバータレンズ601の光学情報として、コンバータレンズ601の後側主点位置P1、前側主点位置P2を記憶し取得することで、c1’、Z1’を算出した。しかし、主点間隔を0として、P1=P2として計算の簡略化、記憶容量の削減を行ってもよい。
本実施例では、第1開口情報をレンズメモリ118(記憶手段)に記憶している場合を例に説明したが、第1開口情報をメモリ128やコンバータメモリ602に記憶して取得してもよい。また、本実施例では、第2開口情報をレンズMPU117で算出したが、第1開口情報とコンバータレンズの光学情報をカメラに送信し、カメラMPU125で算出してもよい。また、本実施例では、コンバータレンズ601の光学情報をコンバータメモリ602に記憶して取得下が、メモリ128に記憶し、コンバータレンズユニット600の装着時に、取得してもよい。また、第1開口形状をネットワーク上に記憶しておき、実施例1で説明した算出方法で第1開口情報を計算し、レンズまたはカメラと通信することで取得してもよい。
以上の構成により、コンバータレンズユニット600が装着された場合でも、開口情報の精度を下げることなく、装着状態に応じて簡易な構成で開口形状を表現することが可能となる。また、コンバータレンズユニット600の光学情報とマスターレンズの開口情報から、コンバータレンズユニット600が装着された場合の開口情報を算出することで、開口情報の精度を下げることなく記憶容量を削減することが可能となる。