(57)【要約】【課題】撮像面でオートフォーカスが可能な撮像素子において、間引き読み出しをする場合に、補正値を記憶するメモリ量を増やすことなく、ダークシェーディングの正確な補正を可能とする。【解決手段】１つのマイクロレンズ内に複数の光電変換素子を含み、光電変換素子ごとに転送部を有する画素部と、１行の画素のデータを転送するために１行を選択するための行走査回路と、行走査回路により読みだした１行のデータを列毎に読みだすための列走査回路と、列走査回路の読み出し間引き率を制御する間引き制御回路と、読みだされたデータに基づいてダークシェーディングの補正値を生成する補正値生成部と、生成された補正値を記憶する記憶部と、生成された補正値に基づいて画素の信号を補正する補正部とを備え、補正値生成部は、１つのマイクロレンズに対応する一部の光電変換素子のデータを読み出す際に、間引き量が少ない、または間引きをしないで読みだしたデータから、読み出しの間引き率に応じた補正値を生成する。【選択図】  図１０
2015080114.tif 000002
【特許請求の範囲】
【請求項１】
１つのマイクロレンズ内に複数の光電変換素子を含み、該光電変換素子ごとに転送手段を有する画素部と、
１行の画素のデータを転送するために前記１行を選択するための行走査回路と、
前記行走査回路により読みだした１行のデータを列毎に読みだすための列走査回路と、
前記列走査回路の読み出し間引き率を制御する間引き制御回路と、
読みだされたデータに基づいてダークシェーディングの補正値を生成する補正値生成手段と、
生成された補正値を記憶する記憶手段と、
生成された前記補正値に基づいて画素の信号を補正する補正手段とを備え、
前記補正値生成手段は、１つのマイクロレンズに対応する一部の光電変換素子のデータを読み出す際に、間引き量が少ない、または間引きをしないで読み出したデータから、読み出しの間引き率に応じた補正値を生成することを特徴とする撮像装置。
【請求項２】
前記補正値生成手段は、間引き率に応じて前記記憶手段から必要な部分のみを選択して前記補正値を生成することを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記画素の信号を加算して平均する加算平均手段をさらに備え、前記補正値生成手段は、前記加算平均手段の加算率に応じて前記補正値を生成することを特徴とする請求項１に記載の撮像装置。
【請求項４】
前記画素の範囲を指定する範囲指定手段をさらに備え、前記補正値生成手段は、前記範囲指定手段により指定された読み出し範囲のみを前記記憶手段から読み出して前記補正値を生成することを特徴とする請求項３に記載の撮像装置。
【請求項５】
１つのマイクロレンズ内に複数の光電変換素子を含み、該光電変換素子ごとに転送手段を有する画素部と、
１行の画素のデータを転送するために前記１行を選択するための行走査回路と、
前記行走査回路により読みだした１行のデータを列毎に読みだすための列走査回路と、
前記列走査回路の読み出し間引き率を制御する間引き制御回路と、
読みだされたデータに基づいてダークシェーディングの補正値を生成する補正値生成手段と、
生成された補正値を記憶する記憶手段と、
生成された前記補正値に基づいて画素の信号を補正する補正手段とを備え、
前記補正値生成手段は、１つのマイクロレンズに対応する一部の光電変換素子のデータを読み出す際に、前記補正値のレベルが所定値より大きい撮影条件では、間引き量が少ない間引き率で読み出したデータ、または間引きをしないで読み出したデータから前記補正値を生成し、前記補正値のレベルが所定値以下の撮影条件では、間引き量の多い間引き率で読み出したデータから前記補正値を生成することを特徴とする撮像装置。
【請求項６】
前記補正値生成手段は、間引き率に応じて前記記憶手段から必要な部分のみを選択して前記補正値を生成することを特徴とする請求項５に記載の撮像装置。
【請求項７】
前記画素の信号を加算して平均する加算平均手段をさらに備え、前記補正値生成手段は、前記加算平均手段の加算率に応じて前記補正値を生成することを特徴とする請求項５に記載の撮像装置。
【請求項８】
前記画素の範囲を指定する範囲指定手段をさらに備え、前記補正値生成手段は、前記範囲指定手段により指定された読み出し範囲のみを前記記憶手段から読み出して前記補正値を生成することを特徴とする請求項７に記載の撮像装置。
【請求項９】
前記所定値はＩＳＯ感度の値であることを特徴とする請求項５に記載の撮像装置。
【請求項１０】
１つのマイクロレンズ内に複数の光電変換素子を含み、該光電変換素子ごとに転送手段を有する画素部と、１行の画素のデータを転送するために前記１行を選択するための行走査回路と、前記行走査回路により読みだした１行のデータを列毎に読みだすための列走査回路と、を備える撮像装置を制御する方法であって、
前記列走査回路の読み出し間引き率を制御する間引き制御工程と、
読みだされたデータに基づいてダークシェーディングの補正値を生成する補正値生成工程と、
生成された補正値を記憶する記憶工程と、
生成された前記補正値に基づいて画素の信号を補正する補正工程とを有し、
前記補正値生成工程では、１つのマイクロレンズに対応する一部の光電変換素子のデータを読み出す際に、間引き量が少ない、または間引きをしないで読み出したデータから、読み出しの間引き率に応じた補正値を生成することを特徴とする撮像装置の制御方法。
【請求項１１】
１つのマイクロレンズ内に複数の光電変換素子を含み、該光電変換素子ごとに転送手段を有する画素部と、１行の画素のデータを転送するために前記１行を選択するための行走査回路と、前記行走査回路により読みだした１行のデータを列毎に読みだすための列走査回路と、を備える撮像装置を制御する方法であって、
前記列走査回路の読み出し間引き率を制御する間引き制御工程と、
読みだされたデータに基づいてダークシェーディングの補正値を生成する補正値生成工程と、
生成された補正値を記憶する記憶工程と、
生成された前記補正値に基づいて画素の信号を補正する補正工程とを備え、
前記補正値生成工程では、１つのマイクロレンズに対応する一部の光電変換素子のデータを読み出す際に、前記補正値のレベルが所定値より大きい撮影条件では、間引き量が少ない間引き率で読み出したデータ、または間引きをしないで読み出したデータから前記補正値を生成し、前記補正値のレベルが所定値以下の撮影条件では、間引き量の多い間引き率で読み出したデータから前記補正値を生成することを特徴とする撮像装置の制御方法。
【請求項１２】
請求項１０または１１に記載の制御方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１３】
請求項１０または１１に記載の制御方法の各工程をコンピュータに実行させるためのプログラムを記憶したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像面でオートフォーカスが可能な固体撮像素子が出力するデータを補正する技術に関するものである。
【背景技術】
【０００２】
近年では、デジタルカメラやデジタルビデオカメラ等における撮像素子には、瞳分割方式の焦点検出が可能なものが用いられるようになってきている。たとえば、撮像素子の１つの画素に２つのフォトダイオードを有しており、各フォトダイオードは１つのマイクロレンズによって撮像レンズの異なる瞳領域を通過した光を受光するように構成されている。したがって、２つのフォトダイオードからの出力信号を比較することで、撮像レンズでの焦点検出が可能となる。また、２つのフォトダイオードからの出力信号を加算することで、撮影画像の信号を得ることができる。
【０００３】
ところで、一般にＣＭＯＳセンサのような撮像素子を利用する場合には、水平方向のダークシェーディングを補正する必要がある場合が多い。特許文献１では、遮光データをダークシェーディングの補正値として用いる際に、間引きして読みだしたデータを用いて補正値を作成している。これにより補正値作成にかかる読み出し時間を短縮している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−３９５３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
このダークシェーディングの補正は、焦点距離検出用信号の読み出しにおいても同じである。画素の信号の読み出しにおいて間引き率を変えるとき、その間引き率に対応してダークシェーディングを補正する必要がある。しかし、補正値の値は、間引き読み出しの種類分だけ増加するため、補正値を記憶するメモリ容量が増加してしまう。また高速に補正値を作成するために、間引きした補正値を基に他の間引き読み出しの補正値を計算する方法もあるが、水平ダークシェーディングのばらつきが大きい場合は、正確な補正ができなくなる可能性がある。
【０００６】
本発明は上述した課題に鑑みてなされたものであり、その目的は、撮像面でオートフォーカスが可能な撮像素子において、間引き読み出しをする場合に、補正値を記憶するメモリ量を増やすことなく、ダークシェーディングの正確な補正を可能とすることである。
【課題を解決するための手段】
【０００７】
本発明に係わる撮像装置は、１つのマイクロレンズ内に複数の光電変換素子を含み、該光電変換素子ごとに転送手段を有する画素部と、１行の画素のデータを転送するために前記１行を選択するための行走査回路と、前記行走査回路により読みだした１行のデータを列毎に読みだすための列走査回路と、前記列走査回路の読み出し間引き率を制御する間引き制御回路と、読みだされたデータに基づいてダークシェーディングの補正値を生成する補正値生成手段と、生成された補正値を記憶する記憶手段と、生成された前記補正値に基づいて画素の信号を補正する補正手段とを備え、前記補正値生成手段は、１つのマイクロレンズに対応する一部の光電変換素子のデータを読み出す際に、間引き量が少ない、または間引きをしないで読み出したデータから、読み出しの間引き率に応じた補正値を生成することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、撮像面でオートフォーカスが可能な撮像素子において、間引き読み出しをする場合に、補正値を記憶するメモリ量を増やすことなく、ダークシェーディングを正確に補正することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態に係わる撮像装置の構成を示すブロック図である。
【図２】本発明の第１の実施形態に係わる撮像素子のブロック図である。
【図３】撮像レンズの射出瞳から出た光束が単位画素に入射する概念図である。
【図４】画素の等価回路図である。
【図５】第１の実施形態における間引き読み時の列回路構成図である。
【図６】第１の実施形態における水平走査回路の制御信号タイミング図である。
【図７】第１の実施形態における列間引きなしの場合の１次元データと補正値と補正後の出力を示す図である。
【図８】第１の実施形態における列１／３画素間引きの場合の１次元データと補正値と補正後の出力を示す図である。
【図９】第１の実施形態におけるＡ像の間引き率を変えた場合の読み出し解像度を示した図である。
【図１０】第１の実施形態における列間引きなしの補正値から、列１／３間引きした場合の補正値と、列３画素加算平均後列１／３間引きしたときの補正値の生成例を示した図である。
【図１１】第１の実施形態の動作を示すフローチャートである。
【図１２】第２の実施形態における列３画素加算後１／３間引きした読み出しにおいて、読み出し範囲を限定した場合の補正必要範囲を示す図である。
【図１３】第２の実施形態の動作を示すフローチャートである。
【図１４】ＩＳＯ感度による水平ダークシェーディングの違いを示す図である。
【図１５】第３の実施形態における１／３間引きした補正値から間引きなし読み出し用の補正値の生成例を示した図である。
【図１６】第３の実施形態における補正値を生成する動作を示すフローチャートである。
【図１７】第３の実施形態における補正動作を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明の実施形態について、添付図面を参照して詳細に説明する。
【００１１】
（第１の実施形態）
図１は、本発明の第１の実施形態に係わる撮像装置の構成を示すブロック図である。図１において、１００は撮像装置本体、２００はメモリーカードやハードディスク等の記録媒体、３００はレンズユニットである。
【００１２】
続いてこれらのブロックの詳細について説明する。撮像装置本体１００内には、撮像素子１４００の露光量を制御するシャッター１２と、光学像を電気信号に変換する撮像素子１４００とが配置されている。１３０、１３１はミラーである。１０４は光学ファインダであり、ミラー１３０が光軸上にあるときはレンズを介して入射した入射光を結像して、ユーザーが撮影する静止画の構図を確認することが可能である。
【００１３】
１７００は撮像素子１４００から出力されるアナログ信号をデジタル信号に変換するＡ／Ｄ変換器を内蔵するアナログフロントエンド（以降ＡＦＥ）である。１８００はそれぞれ撮像素子やＡ／Ｄ変換器にクロック信号や制御信号を供給するタイミングジェネレータ（以下ＴＧ）である。
【００１４】
１２００は液晶モニターであり、ライブビュー画像の表示や、撮影した静止画像を表示することが可能である。５０は画像処理を含む撮像装置本体１００の全体動作を制御するシステム制御回路（以下ＣＰＵ）である。
【００１５】
６１はシャッタースイッチである。シャッタースイッチ６１は２段階になっており、１段目まで浅く押すことを半押しといい、２段目まで深く押すことを全押しという。半押しではオートフォーカスや、撮影前の状態における自動露出機構によるシャッター速度と絞り数値の設定が行われる。全押しではシャッター１２が動作し撮影動作が実施される。
【００１６】
６２はライブビュースタート・ストップスイッチである。撮像素子１４００からの画像データを、ＣＰＵ５０を介し、液晶モニターのサイズに合わせて表示する。ライブビュー表示中にシャッタースイッチ６１が半押し状態になった場合は、後述する撮像素子１４００の焦点検出用出力信号を用いてオートフォーカスを行う。６３は動画記録スタート・ストップスイッチであり、記録開始が指示されたら連続して動画記録動作を行う。
【００１７】
６６は電源スイッチであり、撮像装置本体１００の電源オン、電源オフの切り替えを行う。又、撮像装置１００に接続されたレンズユニット３００、外部ストロボ、記録媒体２００等の各種付属装置の電源オン、電源オフの設定も合わせて切り替え設定可能である。
【００１８】
７０は撮像素子１４００から出力される画像データや、画像処理部７２で画像処理された画像データを一時的に記録する揮発性メモリ（以下ＲＡＭ）である。またＣＰＵ５０のワークメモリとしての機能も持つ。７１は不揮発性メモリ（ＲＯＭ）でありＣＰＵ５０が動作を行う際のプログラムを格納している。７２は静止画の補正・圧縮等の処理を行う画像処理部である。７３はオートフォーカス用に、焦点距離検出用の信号から後述するレンズ３１０の位置変更量を計算する演算部である。
【００１９】
８０は電源制御部であり、電池検出回路、ＤＣ−ＤＣコンバータ、通電するブロックを切り替えるスイッチ回路等から構成されている。さらに電池の装着の有無、電池の種類、電池残量の検出を行い、その検出結果及びシステム制御回路５０の指示に基づいてＤＣ−ＤＣコンバータを制御し、必要な電圧を必要な期間、記録媒体を含む各部に供給する。８２及び８４はコネクタ、８６はアルカリ電池やリチウム電池等の一次電池、Ｌｉイオン電池などの二次電池、ＡＣアダプタ等から成る電源部である。
【００２０】
９０はメモリーカードやハードディスク等の記録媒体とのインターフェース、９２はメモリーカードやハードディスク等の記録媒体との接続を行うコネクタである。２００はメモリーカードやハードディスク等の記録媒体である。記録媒体２００は、半導体メモリや磁気ディスク等から構成される記録部２３０、撮像装置本体１００とのインターフェース２０６を有している。
【００２１】
３００はレンズユニットであり、３１０は撮影レンズ、３１２は絞り、３１６、１０６はレンズを接続するレンズマウントである。３２０はレンズ制御部であり、３２２はレンズユニット３００を撮像装置本体１００と電気的に接続するコネクタである。レンズ制御部３２０はコネクタ３２２、１２２を介して、撮像装置本体１００からの信号を受ける。そして、撮像装置本体１００からの信号により撮像レンズ３１０の光軸上での位置を変更しフォーカスを制御する。同じようにレンズ制御部３２０は撮像装置本体１００からの信号を受け、絞り３１２の開口の大きさを制御する。なお、１２０はレンズユニット３００と電気信号で通信するためのインターフェースである。
【００２２】
図２は、撮像素子１４００のブロック図である。画素２０３がマトリクス状に配置されており、垂直方向の並びを「列」と呼び、水平方向の並びを「行」と呼ぶ。画素２０３の列、行すべて集めたものが画素群２０６である。垂直走査回路２０２（行走査回路）は選択行を読みだすための行選択と各行の電荷の読み出しに必要な信号を各画素の回路に出力する。
【００２３】
各列の画素は垂直出力線４１０につながっている。垂直出力線４１０に出力された信号はそれぞれ列ゲイン２０４、列回路２０５を介して水平走査回路２０１（列走査回路）に出力される。水平走査回路２０１は１行分の信号出力を水平方向に順次出力する。２０８は水平走査回路の制御回路である。２０９は制御回路の一つである列間引き制御部で、条件により列間引き読み出し走査を行う。また２１０は列範囲指定制御部であり、設定された範囲のみを読み出す。また２１１は水平画素加算の制御を行う水平画素加算制御部である。
【００２４】
図３は撮影レンズの射出瞳から出た光束が単位画素に入射する概念図である。２０３は単位画素であり、単位画素２０３は第１のフォトダイオード３０６Ａおよび第２のフォトダイオード３０６Ｂを有する。３０５はカラーフィルタであり、３０４はマイクロレンズである。３００は撮影レンズの射出瞳を示す。すなわち、画素部は複数の単位画素２０３を有し、単位画素２０３は、マイクロレンズ内に複数のフォトダイオード（光電変換素子）を有する。
【００２５】
マイクロレンズ３０４を有する画素に対して、射出瞳から出た光束の中心を光軸３０３とする。射出瞳を通過した光は、光軸３０３を中心として単位画素２０３に入射する。３０１、３０２は撮影レンズの射出瞳の一部領域を表す。図３に示すように瞳領域３０１を通過する光束はマイクロレンズ３０４を通して、フォトダイオード３０６Ａで受光され、瞳領域３０２を通過する光束はマイクロレンズ３０４を通して、フォトダイオード３０６Ｂで受光される。したがって、フォトダイオード３０６Ａと３０６Ｂはそれぞれ、撮影レンズの出射瞳の別々の領域の光を受光している。したがって、フォトダイオード３０６Ａと３０６Ｂの信号を比較することで位相差の検知が可能となる。
【００２６】
ここで、フォトダイオード３０６Ａから得られる信号をＡ像信号、フォトダイオード３０６Ｂから得られる信号をＢ像信号と定義する。Ａ像信号とＢ像信号を足し合わせた信号はＡ＋Ｂ像信号とし、このＡ＋Ｂ像信号は撮影画像に用いることができる。
【００２７】
図４に１画素２０３の等価回路図を示す。フォトダイオード３０６Ａ、３０６Ｂで発生および蓄積された電荷を、転送制御信号４０１により転送スイッチ４０５Ａを、転送制御信号４０２により転送スイッチ４０５Ｂを、それぞれ制御してフローティングデフュージョン部（以後ＦＤ）４０７に転送する。ソースフォロアアンプ４０８はＦＤ４０７に蓄積された電荷に基づく電圧信号を増幅して、画素信号として出力する。ソースフォロアアンプの出力を行選択制御信号４０４が行選択スイッチ４０９を制御して垂直出力線４１０へ接続する。
【００２８】
ＦＤ４０７に蓄積されている不要電荷をリセットする場合はリセット制御信号４０３によりリセットスイッチ４０６を制御する。さらにフォトダイオード３０６Ａ、３０６Ｂのリセットをする際はリセットスイッチ４０６と共に、転送制御信号４０１により転送スイッチ４０５Ａを、転送制御信号４０２により転送スイッチ４０５Ｂを、それぞれ制御してリセットを実行する。転送制御信号４０１、４０２、リセット制御信号４０３と行選択制御信号４０４は垂直走査回路２０２につながっており、各行にそれぞれの制御信号が供給される。また転送制御信号４０１、４０２、リセット制御信号４０３と行選択制御信号４０４はＣＰＵ５０がＴＧ１８００を介して垂直走査回路２０２を制御して出力する。
【００２９】
図５と図６を用いて間引き読み制御と加算平均制御について説明する。図５では各読み出し方法における使用列を示している。使用する列を実線で、使用しない列を点線で示している。（ａ）は間引きなしで読みだす場合、（ｂ）は１／３間引き読み出しした場合、（ｃ）は３画素加算平均した後に１／３間引きした場合の状態を示している。（ｂ）のように加算平均しない場合の間引き読みは全く使用しない部分と使用する部分に分かれるが、（ｃ）のように加算平均後に読みだす場合は、水平転送回路まで送らない列も列回路２０５まで来た信号を加算スイッチ５００で加算平均する。そのため列回路２０５まで読みだした信号が無駄にならない。
【００３０】
図６には各読み出し方法におけるタイミング図を示している。（ａ）に示すように間引きなしの読み出し時は、１行の画素データ転送後にＣＰＵ５０がΦｈ１から順にスイッチをＨＩＧＨにして信号を転送していく。（ｂ）のように１／３間引き読みだしの場合には、１行の画素データ転送後にＣＰＵ５０がΦｈ２、Φｈ５、Φｈ８のように３列ごとのスイッチをＨＩＧＨにして転送する。（ｃ）のように水平３画素加算して１／３間引き読み出しする場合には、１行の画素データ転送後にＣＰＵ５０がΦＨＡＤＤをＨＩＧＨにして、３列毎の信号を加算平均し、その後Φｈ２、Φｈ５、Φｈ８のように３列ごとのスイッチをＨＩＧＨにして転送する。ＣＰＵ５０が間引き制御回路２０９を制御して、３列毎に読み出す。
【００３１】
図７はダーク水平シェーディングの補正を説明する図である。図７の（ａ）に間引きせずに読みだしたダーク画像を示している。（ｂ）にはその取得した画像を各列行方向に平均した一次元写像データ（以下 水平ダークシェーディング）を示す。この水平ダークシェーディングを補正するため、（ｃ）のような水平ダークシェーディング補正値をＣＰＵ５０が画像処理部７２を制御してＲＯＭ７１に記憶する（補正値生成）。実際にＡ像の画像が撮像素子１４００からＲＡＭ７０に送られて来た場合、ＣＰＵ５０が画像処理部７２を制御して、ＲＯＭ７１から水平ダークシェーディング補正値をＲＡＭ７０の別領域に展開する。この展開したデータで補正を実施することにより、最終のＡ像水平ダークシェーディング結果が（ｄ）となるようにする。
【００３２】
図８は３画素間引き読み出しした画像のダーク水平シェーディングの補正を説明する図である。間引きしない場合の列幅Ｗに対し、（１／３）・Ｗの列幅である８００が読みだされる。そのデータを基に（ｂ）にはその取得した画像の水平ダークシェーディングを示している。このダークシェーディングを補正するため、ＣＰＵ５０が画像処理部７２を制御して各列補正データを演算した結果である（ｃ）をＲＯＭ７１に記憶する。実際にＡ像の画像が撮像素子１４００からＲＡＭ７０に送られて来た場合、ＣＰＵ５０が画像処理部７２を制御して、ＲＯＭ７１からＲＡＭ７０の別領域に展開する。この展開したデータで補正を実施することにより、最終のＡ像水平ダークシェーディング結果が（ｄ）となるようにする。
【００３３】
図９に、撮影画像出力であるＡ＋Ｂ像は水平間引きなしに固定して読み出し、焦点距離検出用出力であるＡ像の間引き率を変えた時の読み出し解像度を示した図を示す。（ａ）はＡ像間引きなし、（ｂ）はＡ像１／３間引き読み出し、（ｃ）はＡ像１／５間引き読み出ししたときの列幅の変化を示している。Ａ＋Ｂ像は列幅Ｗで固定であるが、Ａ像は間引きなしのときは列幅Ｗ、１／３間引き読み出し時は（１／３）・Ｗ、１／５間引き読み出し時は（１／５）・Ｗのようになる。間引き読み出し画素総数が少なくなり、読み出しスピードを高速にすることができる。
【００３４】
上記のように、間引き読みなしと間引き読みで１／３、１／５、１／９、というように間引き率を上げて読みだす時には、それぞれの水平ダークシェーディング補正値を記憶して、補正する方法がある。しかしそうするとメモリ容量が増えてしまう。図７と図８で示したように間引きしたときの補正値は、間引きなしの補正値の適用列データとほぼ等価になる。そのため間引きなしの補正値から間引き、又は水平加算後に間引きしたときの水平ダークシェーディング補正値を選択、又は算出して適用することで補正が可能である。
【００３５】
図１０に第１の実施形態における間引きなしの補正値から１／３間引きしたときの補正値を算出する例と、水平３画素加算して１／３間引きしたときの補正値を算出する例を示す。（ａ）,（ｂ）はそれぞれ間引きなしの補正値と１／３間引き時の補正値の一次元データの概略を示している。（ｃ）はＮ列目の−４から＋４列分の間引きなし時のダーク出力と補正値を示している。なおダーク出力のオフセットレベルは５００の時のデータを示している。（ｄ）は１／３間引き読みしたときに適用する補正値を示している。間引き読みに対応した補正値をそのまま適用している。（ｅ）は水平３画素加算平均した後間引き読み出しする場合の補正値の算出値を示している。加算の場合は補正値も加算平均している。たとえばＮ−４からＮ−２の補正値は
（５＋３＋４）／３＝４［ＬＳＢ］        …（１）
というように算出して補正する。
【００３６】
図１１に第１の実施形態における動作のフローチャートを示す。まずＡ像の水平ダークシェーディング補正値の取得時のフローチャートを（ａ）に示す。ＣＰＵ５０が撮像素子１４００を水平間引きなしで駆動し読み出しする（Ｓ１１００）。なおダーク画像なのでミラー１３０やシャッター１２は初期状態のままで遮光した画像が撮像できるようにする。その後ＣＰＵ５０は画像データをＲＡＭ７０まで読み出し、画像処理部７２がそのデータを基に１次元データとそれに対応する補正値を作成しＲＯＭ７１に記録する（Ｓ１１０１）。
【００３７】
次に取得した補正値を用いて補正を実施するフローチャートを（ｂ）に示す。ＡＦ用にＡ像を読み出した場合、そのＡ像が水平間引き（または加算）読みか否かを確認する（Ｓ１１１０）。間引き(または加算)読みをしていない場合は、ＣＰＵ５０が画像処理部７２を介し、ＲＯＭ７１から補正値を読み出し、読みだされたＡ像の画像に補正を実施する（Ｓ１１１２）。もしＡ像が間引き(または加算)読みしていた場合は、ＣＰＵ５０がＲＯＭ７１から補正値を読み出し、それを画像処理部７２で間引き率（加算率）に応じた補正値の選択（演算）を行い補正する（Ｓ１１１２）。この変更された補正値で補正された画像を用いて、ＡＦの演算をおこなう。
【００３８】
第１の実施形態では、焦点演算用のＡ像データは、撮影モードの切り替えやフレームレートの切り替え、または現在のデフォーカス量により間引き率を変えて読むことを想定している。そのときに間引き率に応じた水平シェーディングデータが必要であるが、間引きなしの状態で補正値を取得する。この取得した補正値を間引き率に応じて補正値の選択（演算）を行い適用する。これによりすべての間引き率に対応した補正値をもつ必要がないためメモリ量を削減でき、且つ補正の精度も保つことができる。
【００３９】
（第２の実施形態）
第２の実施形態ではＡ像を読み出す場合に、水平加算後に間引き読みし、さらに水平範囲を選択して特定部分だけ読みだした場合の補正について図１２を用いて説明する。
【００４０】
図１２では、Ａ像、Ａ＋Ｂ象は水平３画素加算して１／３間引きでそれぞれ読み出している。さらにＡ像は全水平幅７００に対し、水平幅１２０１の水平領域のみを選択して読み出している。このとき補正値に必要な領域は、水平幅１２０１の部分になる。図１２の（ｂ）のように、水平ダークシェーディング補正値において間引きなしの全水平幅１１０２に対し、水平幅１１０３の部分のみを適用すればよい。そのため補正処理を高速化することが可能である。
【００４１】
例えば水平幅１１０２が６０００列のデータがあり、水平幅７００が１／３間引きで２０００列、読み出し特定部分である水平幅１２０１が左端から１５００列だとすると、補正値に適用する水平幅１１０３は４５００列のデータをまずＲＡＭ７０に展開する。ＲＡＭ７０に読み出したデータを３画素加算平均に対応して１５００列分の補正値を演算し適用する。
【００４２】
図１３に第２の実施形態の動作のフローチャートを示す。ＡＦ用にＡ像を読み出したら、そのＡ像が水平加算後に間引き読みをしているか確認する（Ｓ１３００）。水平加算読みしていない場合は、ＲＯＭ７１に記憶されている補正値のそのままで補正を行う（Ｓ１３０２）。水平加算読みをしている場合は、水平領域が全領域読みだされているか確認する（Ｓ１３０１）。全水平領域が読みだされている場合は、ＣＰＵ５０がメモリの全水平幅の補正値をＲＡＭ７０に展開し、加算読み用に補正値を演算する（Ｓ１３０３）。特定領域だけ読み出す場合は、ＣＰＵ５０が読みだす部分に対応した補正値をＲＯＭ７１からＲＡＭ７０に展開し、画像処理部７２が加算読み用に補正値を演算し補正する（Ｓ１３０４）。
【００４３】
第２の実施形態では、Ａ像を水平画素加算平均して、更に水平範囲を選択して特定部分だけ読みだした場合の補正値演算に関して説明した。必要な部分だけ記憶領域ＲＯＭ７１から読み出せばよいので、読み出し領域幅が狭いほど読み出しスピードは上がり、更に補正スピードも向上する。
【００４４】
（第３の実施形態）
第３の実施形態では、撮影条件によってＡ像の補正値の取り方を変える方法について説明する。
【００４５】
図１４の（ａ）は水平画素加算しない場合のＡ像の読み出した画像サイズを示している。（ｂ）は低ゲインで読みだす低ＩＳＯ感度（所定値以下の感度）での水平ダークシェーディングを、（ｃ）は高ゲインで読みだす高ＩＳＯ感度（所定値より大きい感度）での水平ダークシェーディングを示している。高ＩＳＯ感度に比べて低ＩＳＯ感度では水平ダークシェーディングのレベルが小さいため補正値も小さくなる。そこで低ＩＳＯ感度の場合は間引きした補正値を記憶しておき、適用する方法がある。
【００４６】
図１５には１／３間引きでＡ像の水平ダークシェーディングの補正値を作成した場合に、間引きなしのデータを補完して補正する例を示している。（ａ）には１／３の補正値データの概略を、（ｂ）にはＮ列目に対して３画素間引きして得られた補正値Ｎ−３、Ｎ＋３列を示している。ここからＡ像の間引きなしの読み出しが行われた場合に、Ｎ−２列、Ｎ−１列のデータはＮ−３列、Ｎ列から位置に応じて加重平均した値から四捨五入した値にする。具体的にはＮ−２列の算出方法はＮ−３列とＮ列から以下のように求める。
【００４７】
｛（２×２）＋（１×１）｝／３ ≒ １．６６６ ≒ ２
このように加重平均して求めた値を補正値として使用する。
【００４８】
なお、どのＩＳＯ感度から適用するかは、あらかじめ決めておくか、補正値のＭＡＸ、ＭＩＮの値が所定の値を超えたＩＳＯ感度から適用してもよい。
【００４９】
図１６に第３の実施形態でＡ像の補正値を取得する場合のフローチャートを示す。
【００５０】
まずＩＳＯ感度が所定以上かどうか判定し（Ｓ１６００）、所定値未満のＩＳＯ感度は第１の実施形態と同じようにＣＰＵ５０が撮像素子１４００を間引きなしで駆動し補正値を生成する（Ｓ１６０１）。一方、所定値以上のＩＳＯ感度の場合にはＣＰＵ５０が１／３画素間引きで撮像素子１４００を駆動し補正値を生成する（Ｓ１６０２）。生成された補正値をＲＯＭ７０に記憶する（Ｓ１６０３）。
【００５１】
図１７に第３の実施形態でＡ像の補正をする際のフローチャートを示す。
【００５２】
動画ＡＦ用にＡ像を読み出すときにＡ像が間引き読みしているか否かを判定する（Ｓ１７００）。Ａ像が間引き読みの場合に、ＩＳＯ感度が所定値より小さい場合には、ＣＰＵ５０がＲＯＭ７０に書かれている値を補正値として補正する（Ｓ１７０４）。Ａ像が間引き読みの場合に、ＩＳＯ感度が所定値以上の場合には、ＣＰＵ５０がＲＯＭ７０に保存されている補正値を間引き読み用に選択してＲＡＭ７１に展開し、補正する（Ｓ１７０３）。Ａ像が間引き読みではない場合に、ＩＳＯ感度が所定値より小さい場合にはＣＰＵ５０がＲＯＭ７０から補正値を読み出し、間引きなし読み出し用に補完する演算をして補正する（Ｓ１７０５）。Ａ像が間引き読みではない場合に、ＩＳＯ感度が所定値以上の場合は、ＣＰＵ５０がＲＯＭ７０に書かれている値を補正値として補正する（Ｓ１７０４）。
【００５３】
なお、ここではＩＳＯ感度を示したが、補正値のレベルが変わる条件であればＩＳＯ感度に限らない。
【００５４】
第３の実施形態では、撮影条件であるＩＳＯ感度に応じて記憶用補正値を作成する場合の読み出し間引き率を変更する例を示した。１次元補正値が小さい場合には間引きなしで読みだしたデータで作成した補正値と差が少なくなるため、所定の間引き率で読み出し補正値を作成している。これにより記憶するメモリ量を削減することが可能である。
【００５５】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015080114.tif 000003
【図２】
2015080114.tif 000004
【図３】
2015080114.tif 000005
【図４】
2015080114.tif 000006
【図５】
2015080114.tif 000007
【図６】
2015080114.tif 000008
【図７】
2015080114.tif 000009
【図８】
2015080114.tif 000010
【図９】
2015080114.tif 000011
【図１０】
2015080114.tif 000012
【図１１】
2015080114.tif 000013
【図１２】
2015080114.tif 000014
【図１３】
2015080114.tif 000015
【図１４】
2015080114.tif 000016
【図１５】
2015080114.tif 000017
【図１６】
2015080114.tif 000018
【図１７】
2015080114.tif 000019