(57)【要約】【課題】  撮像素子の一部領域でライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適正に補正すること。【解決手段】  電荷を蓄積するタイミングがラインによって異なり、第１の領域において第１の時間で各ラインの読み出しを行う制御と、第２の領域において第２の時間で各ラインの読み出しを行う制御が可能な撮像手段から、画像信号を入力する入力手段と、画像信号を記憶する記憶手段と、振れ量を取得する取得手段と、第２の領域を指定する制御手段と、撮像手段が電荷を蓄積する間に前記振れによって発生する、画像信号により表される画像の歪みと、第１の時間と第２の時間の違いにより発生する、画像の歪みの変化とを補正するための歪み補正量を、振れ量と、第２の領域の位置と、第１の時間と第２の時間との比率に基づいて求める演算手段と、歪み補正量に基づいて、画像信号を補正する補正手段とを有する。【選択図】  図１
2018033100.tif 000002
【特許請求の範囲】
【請求項１】
撮像光学系により結像された被写体像を受光して電荷を蓄積するタイミングがラインによって異なり、第１の領域において予め決められた第１の時間で各ラインの読み出しを行う第１の読み出し制御と、前記第１の領域と異なる第２の領域において前記第１の時間と異なる第２の時間で各ラインの読み出しを行う第２の読み出し制御が可能な撮像手段から、画像信号を入力する入力手段と、
前記撮像手段から得られた画像信号を記憶する記憶手段と、
振れ検出手段から、振れ量を取得する取得手段と、
前記撮像手段に対して、前記第２の領域を指定する制御手段と、
前記撮像手段が電荷を蓄積する間に前記振れによって発生する、前記画像信号により表される画像の歪みと、前記第１の時間と前記第２の時間の違いにより発生する、前記画像の歪みの変化とを補正するための歪み補正量を、前記取得手段により取得した振れ量と、前記制御手段により指定された前記第２の領域の位置と、前記第１の時間と前記第２の時間との比率に基づいて求める演算手段と、
前記歪み補正量に基づいて、前記記憶手段に記憶された画像信号の補正を行う補正手段と
を有することを特徴とする画像処理装置。
【請求項２】
前記撮像手段は、複数のマイクロレンズそれぞれに対して複数の光電変換部を備え、
前記第１の読み出し制御では、各マイクロレンズごとに、前記複数の光電変換部すべてに蓄積された電荷を合わせて読み出し、
前記第２の読み出し制御では、各マイクロレンズごとに、前記複数の光電変換部のうちの一部に蓄積された電荷に対応する画像信号と、他の一部に蓄積された電荷に対応する画像信号とを取得できるように読み出すことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記制御手段は、ライン単位で前記第２の領域を指定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記制御手段は、ライン及びライン方向の一部の範囲を指定することにより、前記第２の領域を指定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記制御手段は、前記撮像手段の撮像面を、それぞれが複数のラインを含む複数の分割領域に分割し、前記分割領域単位で前記第２の領域を指定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項６】
前記制御手段は、前記第２の領域として、前記第２の領域を含む分割領域の内のライン方向の範囲を指定することを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記取得手段は、前記分割領域の境界のラインから画像信号を読み出したタイミングで前記振れ量を取得することを特徴する請求項５または６に記載の画像処理装置。
【請求項８】
前記演算手段は、前記分割領域の境界のラインに対応する前記歪み補正量を求めることを特徴とする請求項５または６に記載の画像処理装置。
【請求項９】
前記演算手段は、更に、前記第２の領域に含まれる前記分割領域の境界を除く複数のラインに対応する前記歪み補正量を求めることを特徴とする請求項８に記載の画像処理装置。
【請求項１０】
前記第２の領域では、予め決められた複数のマイクロレンズごとに、前記複数の光電変換部のうちの一部に蓄積された電荷を加算して出力することを特徴とする請求項２に記載の画像処理装置。
【請求項１１】
前記第２の領域では、予め決められた複数のマイクロレンズおきに、対応する前記複数の光電変換部のうちの一部に蓄積された電荷を出力することを特徴とする請求項２に記載の画像処理装置。
【請求項１２】
前記演算手段は、予め決められた離散した複数のラインに対応する前記歪み補正量を求めて、前記補正手段に設定し、
前記補正手段は、前記記憶手段に格納された画像信号の各画素の読み出し位置を、前記設定された歪み補正量に基づいて補正して読み出すことで、前記補正を行うことを特徴とする請求項１乃至１１のいずれか１項に記載の画像処理装置。
【請求項１３】
前記演算手段は、前記第２の領域において、前記第１の領域よりもより密に歪み補正量を求めることを特徴とする請求項１乃至１２のいずれか１項に記載の画像処理装置。
【請求項１４】
前記演算手段は、前記撮像手段の撮像面の中間のラインの歪み補正量が０となるように前記歪み補正量を求めることを特徴とする請求項１乃至１３のいずれか１項に記載の画像処理装置。
【請求項１５】
撮像光学系により結像された被写体像を受光して電荷を蓄積するタイミングがラインによって異なり、第１の領域において予め決められた第１の時間で各ラインの読み出しを行う第１の読み出し制御と、前記第１の領域と異なる第２の領域において前記第１の時間と異なる第２の時間で各ラインの読み出しを行う第２の読み出し制御が可能な撮像手段から、画像信号を入力する入力手段と、
前記撮像手段から得られた画像信号を記憶する記憶手段と、
振れ検出手段から、振れ量を取得する取得手段と、
前記撮像手段に対して、前記第２の領域を指定する制御手段と、
前記撮像手段が電荷を蓄積する間に前記振れによって発生する、前記画像信号により表される画像の歪みを補正するための歪み補正量を、前記取得手段により取得した振れ量に基づいて求める演算手段と、
前記歪み補正量と、前記第２の領域の位置に基づいて、前記記憶手段に記録された画像信号の読み出し位置を補正することで、前記歪みを補正して出力する補正手段と
を有することを特徴とする画像処理装置。
【請求項１６】
前記撮像手段は、複数のマイクロレンズそれぞれに対して複数の光電変換部を備え、
前記第１の読み出し制御では、各マイクロレンズごとに、前記複数の光電変換部すべてに蓄積された電荷を合わせて読み出し、
前記第２の読み出し制御では、各マイクロレンズごとに、前記複数の光電変換部のうちの一部に蓄積された電荷に対応する画像信号と、他の一部に蓄積された電荷に対応する画像信号とを取得できるように読み出すことを特徴とする請求項１５に記載の画像処理装置。
【請求項１７】
前記制御手段は、前記第２の領域を構成するライン及びライン方向の一部の範囲を指定することを特徴とする請求項１５または１６に記載の画像処理装置。
【請求項１８】
前記第２の領域では、予め決められた複数のマイクロレンズごとに、前記複数の光電変換部のうちの一部に蓄積された電荷を加算して出力することを特徴とする請求項１６に記載の画像処理装置。
【請求項１９】
前記第２の領域では、予め決められた複数のマイクロレンズおきに、対応する前記複数の光電変換部のうちの一部に蓄積された電荷を出力することを特徴とする請求項１６に記載の画像処理装置。
【請求項２０】
前記制御手段は、前記撮像手段の撮像面を、２のＮ乗のライン数毎に複数の分割領域に分割し、前記分割領域単位で前記第２の領域を指定することを特徴とする請求項１５乃至１９のいずれか１項に記載の画像処理装置。
【請求項２１】
前記補正手段は、前記分割領域ごとの設定に基づいて、出力する画像の画素位置を前記撮像手段で電荷を蓄積するタイミングを基準とする時間軸に変換して、前記歪み補正量による画素位置の補正を行い、補正後の画素位置を前記時間軸から前記記憶手段に格納される位置を基準とする空間軸に変換することで、前記記憶手段の画像データにおける画素位置を得て、前記記憶手段から画像データを読み出すことを特徴とする請求項２０に記載の画像処理装置。
【請求項２２】
前記撮像手段と、
請求項１乃至２１のいずれか１項に記載の画像処理装置と
を有することを特徴とする撮像装置。
【請求項２３】
入力手段が、撮像光学系により結像された被写体像を受光して電荷を蓄積するタイミングがラインによって異なり、第１の領域において予め決められた第１の時間で各ラインの読み出しを行う制御と、前記第１の領域と異なる第２の領域において前記第１の時間と異なる第２の時間で各ラインの読み出しを行う制御が可能な撮像手段から、画像信号を入力する入力工程と、
前記撮像手段から得られた画像信号を記憶手段に記憶する記憶工程と、
取得手段が、振れ検出手段から、振れ量を取得する取得工程と、
制御手段が、前記撮像手段に対して、前記第２の領域を指定する制御工程と、
演算手段が、前記撮像手段が電荷を蓄積する間に前記振れによって発生する、前記画像信号により表される画像の歪みと、前記第１の時間と前記第２の時間の違いにより発生する、前記画像の歪みの変化とを補正するための歪み補正量を、前記取得工程で取得した振れ量と、前記制御工程で指定された前記第２の領域の位置と、前記第１の時間と前記第２の時間との比率に基づいて求める演算工程と、
補正手段が、前記歪み補正量に基づいて、前記記憶手段に記憶された画像信号の補正を行う補正工程と
を有することを特徴とする画像処理方法。
【請求項２４】
入力手段が、撮像光学系により結像された被写体像を受光して電荷を蓄積するタイミングがラインによって異なり、第１の領域において予め決められた第１の時間で各ラインの読み出しを行う制御と、前記第１の領域と異なる第２の領域において前記第１の時間と異なる第２の時間で各ラインの読み出しを行う制御が可能な撮像手段から、画像信号を入力する入力工程と、
前記撮像手段から得られた画像信号を記憶手段に記憶する記憶工程と、
取得手段が、振れ検出手段から、振れ量を取得する取得工程と、
制御手段が、前記撮像手段に対して、前記第２の領域を指定する制御工程と、
演算手段が、前記撮像手段が電荷を蓄積する間に前記振れによって発生する、前記画像信号により表される画像の歪みを補正するための歪み補正量を、前記取得工程で取得した振れ量に基づいて求める演算工程と、
補正手段が、前記歪み補正量と、前記第２の領域の位置に基づいて、前記記憶手段に記録された画像信号の読み出し位置を補正することで、前記歪みを補正して出力する補正工程と
を有することを特徴とする画像処理方法。
【請求項２５】
コンピュータを、請求項１乃至２１のいずれか１項に記載の画像処理装置の各手段として機能させるためのプログラム。
【請求項２６】
請求項２５に記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び方法、及び撮像装置に関し、特に、撮像素子の電荷読み出しタイミングに依存する撮像画像の歪みを補正する技術に関する。
【背景技術】
【０００２】
従来、撮像装置に用いられるＣＭＯＳイメージセンサにおいて、蓄積された電荷を上部から下部に向かってライン毎に読み出す、所謂ローリングシャッタ（ＲＳ）方式による読み出しが行われている。このＲＳ方式による読み出しでは、イメージセンサの上部と下部とで読み出しタイミングが異なる。そのため、撮像装置に振れが生じ、撮像面上で被写体の位置が移動した場合に、イメージセンサの電荷読み出しのタイミングが異なることに起因する撮像画像の歪み（ＲＳ歪み）が生じる。
【０００３】
このようなＲＳ歪みを補正する方法として、特許文献１では、ＣＭＯＳイメージセンサの読み出しのタイミングに同期して、撮像装置に生じる振れ量を離散的に取得し、取得した振れ量に基づいて、ＲＳ歪みを補正する方法を提案している。
【０００４】
また、近年では、撮像素子に形成された焦点検出画素により、所謂、撮像面位相差方式の焦点検出を行う撮像装置がある。特許文献２に記載された撮像素子は、画素毎に１つのマイクロレンズと２つのフォトダイオードを備えることにより、それぞれのフォトダイオードが撮像レンズの異なる瞳領域を通過した光を受光する。この２つのフォトダイオードそれぞれに蓄積された電荷信号を比較することで焦点検出が可能となると共に、２つのフォトダイオードからの電荷信号を加算して読み出すことで撮像画像を生成することも可能となる。ただし、全領域から、２つのフォトダイオードの電荷信号をそれぞれ得られるように読み出すと、読み出し時間が大幅に増大してしまう。読み出し時間の増大を抑制するため、焦点検出を行う領域を限定して、それ以外の領域からは、読み出し前に撮像素子内で２つのフォトダイオードの電荷を加算してから読み出すことが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−６４１４３号公報
【特許文献２】特開２０１３−１１０６０７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献２で示される撮像素子の読み出し方式において、２つのフォトダイオードから個別に出力信号を読み出す領域は、電荷を加算した後に出力信号を読み出す領域に比べて、読み出し時間が２倍になってしまう。そのため、撮像装置の振れに対する撮像画像のＲＳ歪みの度合いが、領域によって異なることになる。
【０００７】
特許文献１に示されるような従来のＲＳ歪みの補正方法では、撮像素子の領域毎に読み出し時間の長さが異なる撮像画像の補正方法が明確にされておらず、以下に示すような問題が生じることがあった。
【０００８】
例えば、図２７に示すように被写体２７００を撮像しながら、水平に構えた撮像装置に対して、水平方向に一定速度の振れが加わったとする。図２８は、このように撮像された画像データに対するＲＳ歪み補正の結果を説明するための図である。
【０００９】
撮像素子の全領域で読み出し時間が一定の場合には、図２８（ａ）の２８００に示すように、被写体２７００が一様に斜めに歪んだ画像データが得られる。２８０１は撮像装置に生じた振れ量を時間軸に対し離散的に取得して算出した角度データで、これから２８０２に示すＲＳ歪み補正量を求める。ここで、２８０１と２８０２は撮像装置の水平方向への回転成分に対する角度データとＲＳ補正量である。求められたＲＳ歪み補正量を元に、画像データ２８００の読み出し範囲２８０３を決定し、変形して出力することでＲＳ歪み補正が行われる。２８０４はＲＳ歪み補正後の出力画像で、被写体２７００に生じていた歪みが補正されている。
【００１０】
一方で、撮像素子の一部領域で、ライン毎の読み出し時間が他の領域に比べて長い場合には、図２８（ｂ）の２８１０に示すように、被写体２７００の一部が他と異なる歪み方をした画像データが得られる。ここで、領域２８１１では他の領域に比べてライン毎の読み出し時間が２倍かかるものとする。この画像データ２８００に対して、図２８（ａ）と同じようにＲＳ歪み補正を行うと、２８１４に示すようなＲＳ歪み補正後の出力画像が得られる。出力画像２８１４では、被写体２７００に生じていた歪みが十分に補正されず、歪みが残った状態となっている。
【００１１】
本発明は上記問題点を鑑みてなされたものであり、撮像素子の一部領域でライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適正に補正することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明の画像処理装置は、撮像光学系により結像された被写体像を受光して電荷を蓄積するタイミングがラインによって異なり、第１の領域において予め決められた第１の時間で各ラインの読み出しを行う第１の読み出し制御と、前記第１の領域と異なる第２の領域において前記第１の時間と異なる第２の時間で各ラインの読み出しを行う第２の読み出し制御が可能な撮像手段から、画像信号を入力する入力手段と、前記撮像手段から得られた画像信号を記憶する記憶手段と、振れ検出手段から、振れ量を取得する取得手段と、前記撮像手段に対して、前記第２の領域を指定する制御手段と、前記撮像手段が電荷を蓄積する間に前記振れによって発生する、前記画像信号により表される画像の歪みと、前記第１の時間と前記第２の時間の違いにより発生する、前記画像の歪みの変化とを補正するための歪み補正量を、前記取得手段により取得した振れ量と、前記制御手段により指定された前記第２の領域の位置と、前記第１の時間と前記第２の時間との比率に基づいて求める演算手段と、前記歪み補正量に基づいて、前記記憶手段に記憶された画像信号の補正を行う補正手段とを有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、撮像素子の一部領域でライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適正に補正することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態における撮像装置の構成を示すブロック図。
【図２】撮像素子の単位画素の構成を示す等価回路図。
【図３】第１の実施形態におけるＲＳ歪み補正部が行うヨー、ピッチ、ロール方向のＲＳ歪み補正の処理内容を示す概略図。
【図４】第１の実施形態における撮像素子から読み出した画像データと、画像メモリに格納された画像データの一例を示す図。
【図５】第１の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概念図。
【図６】第１の実施形態における撮像装置の動作シーケンスを示すタイミングチャート。
【図７】第１の実施形態における制御マイコンの処理内容を示すフローチャート。
【図８】第１の実施形態におけるＲＳ歪み補正量演算部の処理内容を示すフローチャート。
【図９】第２の実施形態における撮像素子から読み出した画像データと、画像メモリに格納された画像データの一例を示す図。
【図１０】第２の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概略図。
【図１１】第３の実施形態における撮像素子から読み出した画像データと、画像メモリに格納された画像データの一例を示す図。
【図１２】第３の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概念図。
【図１３】第４の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概略図。
【図１４】第５の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概略図。
【図１５】第６の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概念図。
【図１６】第６の実施形態における制御マイコンの処理内容を示すフローチャート。
【図１７】第６の実施形態におけるＲＳ歪み補正量演算部の処理内容を示すフローチャート。
【図１８】第７の実施形態におけるＲＳ歪み補正量演算部の処理内容を示す概念図。
【図１９】第７の実施例における制御マイコンのＲＳ歪み補正量の設定ライン割り当ての処理内容を示すフローチャート。
【図２０】第８の実施形態における撮像装置の構成を示すブロック図。
【図２１】第８の実施形態における角度データ生成部と制御マイコンの処理内容を示す概念図。
【図２２】第８の実施形態におけるＲＳ歪み補正部の構成を示すブロック図。
【図２３】第８の実施形態における座標変換部が行う座標変換の概略図。
【図２４】第８の実施形態におけるＲＳ歪み座標変換部が行うヨー、ピッチ、ロール方向のＲＳ歪み補正の処理内容を示す概略図。
【図２５】第８の実施形態における制御マイコンの処理内容を示すフローチャート。
【図２６】第１０の実施形態における撮像素子から読み出した画像データと、画像メモリに格納された画像データの一例を示す図。
【図２７】被写体を撮像しながら撮像装置に振れが加わる様子を示す図。
【図２８】従来のＲＳ歪み補正の例を示す概略図。
【発明を実施するための形態】
【００１５】
以下、添付図面を参照して本発明を実施するための形態を詳細に説明する。
【００１６】
＜第１の実施形態＞
図１は、本発明の第１の実施形態における撮像装置１００の構成を示すブロック図である。制御マイコン１０１は、内部に不図示の不揮発メモリとワークメモリを備え、不揮発メモリに格納されたプログラムとデータに基づき、ワークメモリに一時的なデータを読み書きしながら、直接または制御バス１０２を介して接続された各ブロックの制御を行う。
【００１７】
操作部１０３は、撮像装置１００の外装部分に設けられたシャッターボタンやフォーカスリングやタッチパネル等で構成され、使用者の操作を制御マイコン１０１に伝える。
【００１８】
撮像光学系１０４は、フォーカスレンズ１０５などの光学系を介して、被写体像を撮像素子１０７の撮像面上に結像する。また、不図示の絞り、ズームレンズ、シフトレンズ、メカシャッタ、光学ローパスフィルタを備える。フォーカスレンズ駆動部１０６は、制御マイコン１０１の指示に基づき、フォーカスレンズ１０５を光軸方向に進退移動させ、撮像光学系１０４の焦点調整を行う。なお、撮像光学系１０４の絞り、ズームレンズ、シフトレンズ、メカシャッタに対しても、制御マイコン１０１の指示に基づき、それぞれを駆動させる不図示の駆動部を備える。
【００１９】
撮像素子１０７は、撮像面に結像された被写体像を光電変換して画像信号を生成し、Ａ／Ｄ変換して得られた画像データを出力する。ここでは、撮像素子１０７は複数の単位画素が行列状に配列された、ベイヤ配列のＣＭＯＳイメージセンサとする。各単位画素にはそれぞれ副画素ａ、ｂが配置されており、光電変換部としてのフォトダイオード（以下、ＰＤ）が副画素ａ、ｂにそれぞれ配置されている。副画素ａ、ｂから出力される各々の出力信号（ａ信号、ｂ信号）は焦点検出に利用され、両者を加算したａ／ｂ合成信号は画像生成に利用される。なお、撮像素子１０７の単位画素の構成と、出力信号の読み出し方法については後述する。
【００２０】
信号処理部１０８は、撮像素子１０７から出力された画像データに対する補正処理や現像処理を行い、ａ／ｂ合成信号の画像データは画像メモリ１０９に格納し、ａ信号及びｂ信号それぞれの画像データはフォーカス評価部１１０に出力する。第１の実施形態においては、撮像素子１０７からａ信号とａ／ｂ合成信号の画像データが読み出された単位画素に対して、信号処理部１０８でａ／ｂ合成信号からａ信号の画像データを減じることで、ｂ信号の画像データを得るものとする。なお、撮像素子１０７からａ信号とｂ信号の画像データをそれぞれ読み出して、信号処理部１０８で両者を加算してａ／ｂ合成信号の画像データを得るように制御しても良い。
【００２１】
フォーカス評価部１１０は、信号処理部１０８から出力されたａ信号の画像データと、ｂ信号の画像データの位相差から、被写体像の焦点ずれ量を算出する。
【００２２】
被写体検出部１１１は、画像メモリ１０９に格納された画像データから、人物などの被写体の位置とサイズを検出して、制御マイコン１０１に伝える。
【００２３】
角速度センサ１１２は、撮像装置１００に加わる振れを角速度信号として検出し、その角速度信号を出力する。ここで角速度センサ１１２は、光軸方向をＺ軸、鉛直上向き方向をＹ軸、ＹとＺ両軸方向に直交する方向をＸ軸とすると、ヨー（Ｙ軸回り）方向、ピッチ（Ｘ軸回り）方向、ロール方向（Ｚ軸回り）の角度振れを検出する。
【００２４】
ＲＳ歪み補正量演算部１１３は、角速度センサ１１２から出力された角速度信号をＡ／Ｄ変換し、得られた角速度データを積分して、制御マイコン１０１の指示に基づくタイミング毎のヨー方向、ピッチ方向、ロール方向の角度データを生成する。そして、生成したタイミング毎の角度データから、ＲＳ歪み補正量を算出して制御マイコン１０１に伝える。なお、ＲＳ歪み補正量演算部１１３の詳しい処理内容については後述する。
【００２５】
ＲＳ歪み補正部１１４は、制御マイコン１０１から設定されたＲＳ歪み補正量に基づき、画像メモリ１０９の画像データを変形することで、ＲＳ歪みを補正して出力する。ＲＳ歪み補正の処理内容については後述する。
【００２６】
表示制御部１１５は、制御マイコン１０１からの設定に基づき、ＲＳ歪み補正部１１４から出力された画像データを表示部１１６に出力して表示する。記録制御部１１７は、制御マイコン１０１からの設定に基づき、ＲＳ歪み補正部１１４から出力された画像データを記録部１１８に出力して記録する。
【００２７】
次に、図２を用いて、撮像素子１０７の単位画素の構成と、出力信号の読み出し方法について説明する。単位画素に１つのマイクロレンズと２つのフォトダイオードを備え、焦点検出を可能とする本第１の実施形態と同様の撮像素子については、特許文献２で詳しく説明されているので、ここでは読み出しにかかる時間に影響する部分のみを簡単に説明する。
【００２８】
前述した副画素ａ、ｂのフォトダイオード（ＰＤ）２０１ａ、２０１ｂに入射した光信号が光電変換され、露光量に応じた電荷が蓄積される。転送ゲート２０２ａ、２０２ｂのゲートに印加する信号ｔｘａ、ｔｘｂをそれぞれＨｉｇｈレベルにすると、ＰＤ２０１ａ、２０１ｂに蓄積されている電荷がフローティングディフュージョン（ＦＤ）部２０３に転送される。ＦＤ部２０３は、ソースフォロワ（ＳＦ）アンプ２０４のゲートに接続されており、ＰＤ２０１ａ、ＰＤ２０１ｂから転送されてきた電荷量がＳＦアンプ２０４によって電圧量に変換される。画素選択スイッチ２０６のゲートに印加する信号ｓｅｌをＨｉｇｈレベルとすることで、ＳＦアンプ２０４によって電圧に変換された画素信号が単位画素の出力ｖｏｕｔに出力される。
【００２９】
また、画素信号の読み出し前には、ＦＤ部２０３をリセットするため、ＦＤリセットスイッチ２０５のゲートに印加する信号ｒｅｓをＨｉｇｈレベルとする。また、電荷の蓄積を開始する際には、ＰＤ２０１ａ、２０１ｂの電荷をリセットするため、信号ｒｅｓと信号ｔｘａ、ｔｘｂとを同時にＨｉｇｈレベルとする。これにより、転送ゲート２０２ａ、２０２ｂ及びＦＤリセットスイッチ２０５の両方がＯＮ状態となり、ＦＤ部２０３経由でＰＤ２０１ａ、ＰＤ２０１ｂが電源電圧Ｖｄｄにリセットされる。
【００３０】
制御マイコン１０１は１フレーム分の画像データを読み出す毎に、撮像素子１０７に対して焦点検出の対象領域を設定し、撮像素子１０７は順次読み出す単位画素が、焦点検出の対象領域にあるか否かによって、画素信号の出力方法を切り替える。
【００３１】
焦点検出の対象外の領域を読み出す際は、信号ｔｘａ、ｔｘｂを同時にＨｉｇｈレベルとすることで、ＰＤ２０１ａとＰＤ２０１ｂに蓄積されていた電荷が合成されてＦＤ部２０３に転送され、ａ／ｂ合成信号が出力される。
【００３２】
一方、焦点検出の対象に指定された領域を読み出す際は、まず信号ｔｘａをＨｉｇｈレベル、信号ｔｘｂをＬｏｗレベルのままにすることで、ＰＤ２０１ａに蓄積されていた電荷のみＦＤ部２０３に転送され、副画素ａのａ信号が出力される。次に信号ｔｘｂもＨｉｇｈレベルにすることで、ＰＤ２０２ｂに蓄積されていた電荷がＦＤ部２０３でＰＤ２０１ａに蓄積されていた電荷と合成され、ａ／ｂ合成信号が出力される。焦点検出の対象領域は、ａ信号と、ａ／ｂ合成信号をライン単位で順次出力するため、対象外の領域に比べて読み出しにかかる時間が２倍となる。
【００３３】
なお、ここでは焦点検出の対象領域の読み出し時間が２倍となる例について説明したが、必ずしも２倍でなくてもよい。例えば、水平方向に焦点検出の対象領域を絞ったり、所定の動作を省略したりすることで、焦点検出の対象領域を含むラインと、含まないラインの読み出し時間の差を抑えることができる。
【００３４】
また、ここでは１画素に対して２つのフォトダイオードを備える撮像素子１０７を例に挙げて説明したが、本発明はこれに限るものではない。領域毎に読み出しにかかる時間が異なる方法で撮像素子からの読み出しを行う場合にも、同様の課題が発生するため、本発明を適用することで課題を解決することができる。例えば、領域毎に画素信号を周囲と加算して読み出すか否かを切り替えたり、加算する画素数を変化させたり、加算ではなく間引いて読み出す場合などにも適用することができる。また、領域毎に画素データのｂｉｔ数を変化させる場合にも適用することができる。また、ＰＤに対して電荷を保持したまま信号が読み出せる非破壊読み出しが可能な撮像センサに対して、一部領域のみを複数回読み出す場合にも適用することができる。
【００３５】
次に、図３を用いて、ＲＳ歪み補正部１１４が行う一般的な処理内容について説明する。図３（ａ）、（ｂ）、（ｃ）は、それぞれヨー方向、ピッチ方向、ロール方向のＲＳ歪み補正を説明するための図で、図３（ｄ）は補正結果を示す図である。
【００３６】
図３（ａ）の５００は画像メモリ１０９に格納された画像データ全範囲を示している。撮像装置１００にヨー方向の振れが加わってＲＳ歪みが生じた場合、画像データ５００の被写体４００は、斜めに歪んで撮像される。
【００３７】
図３（ａ）の左側のグラフは、縦軸が画像データの各ライン、横軸がヨー方向のＲＳ歪み補正量を示しており、Ｂｙ０〜Ｂｙ１０はＲＳ歪み補正量の設定対象ラインＬｒ０〜Ｌｒ１０におけるヨー方向のＲＳ歪み補正量を示している。ＲＳ歪み補正部１１４は、離散的なＲＳ歪み補正量Ｂｙ０〜Ｂｙ１０から、線形補間などの補間方法を用いて、画像データ５００の全ラインに対するＲＳ歪み補正量５２０を算出する。
【００３８】
ＲＳ歪み補正部１１４は、ＲＳ歪み補正量５２０に従って、水平方向の読み出し開始位置をライン毎に変更し、画像データ５００のうち、読み出し範囲５１０の画像データを出力することで水平方向のＲＳ歪みを補正する。読み出し範囲５１０が画像データ５００より小さいのは、ＲＳ歪み補正により読み出し範囲が画像データの範囲を超えないように、所定の倍率を設けているためである。なお、ＲＳ歪み補正量演算部１１３は、ＲＳ歪み補正部１１４の読み出し範囲が画像データの範囲を超えないように、所定量より大きい角度データがある場合は、全ラインのＲＳ歪み補正量を一定の割合で調整する。このようにＲＳ歪み補正を行うことで、図３（ｄ）に示す画像データ５０４が出力される。なお、ＲＳ歪み補正量は中間ラインＬｍで０となるように補正を行うため、中間ラインＬｍ＝Ｌｒ５におけるＲＳ歪み補正量Ｂｙ５＝０となり、画像データ５００と画像データ５０４の中心位置は変わらない。
【００３９】
図３（ｂ）の５０１は画像メモリ１０９に格納された画像データ全範囲を示している。画像データ５０１の被写体は、撮像装置に、ピッチ方向の振れが加わってＲＳ歪みが生じたことにより、垂直方向に引き延ばされるように歪んで撮像されている。なお、振れの方向によっては、垂直方向に縮むように歪んで撮像されることになる。
【００４０】
左側のグラフは、縦軸が画像データの各ライン、横軸がピッチ方向のＲＳ歪み補正量を示しており、Ｂｐ０〜Ｂｐ１０はＲＳ歪み補正量の設定対象ラインＬｒ０〜Ｌｒ１１におけるピッチ方向のＲＳ歪み補正量を示している。ＲＳ歪み補正部１１４は上述したように、画像データ５０１の全ラインに対するＲＳ歪み補正量５２１を算出する。
【００４１】
ＲＳ歪み補正部１１４は、ＲＳ歪み補正量５２１に従って、垂直方向の読み出し位置をライン毎に上下にずらして変更し、５１１を読み出し範囲とした画像データを出力することで、垂直方向のＲＳ歪みを補正する。このようにＲＳ歪み補正を行うことで、図３（ｄ）に示す画像データ５０４が出力される。なお、中間ラインＬｍ＝Ｌｒ５におけるＲＳ歪み補正量Ｂｐ５＝０となるので、画像データ５０１と画像データ５０４の中心位置は変わらない。
【００４２】
図３（ｃ）の５０２は画像メモリ１０９に格納された画像データ全範囲を示している。画像データ５０２の被写体は、撮像装置にロール方向の振れが加わってＲＳ歪みが生じたことにより、扇状に歪んで撮像されている。
【００４３】
左側のグラフは、縦軸が画像データの各ライン、横軸がロール方向のＲＳ歪み補正量であり、Ｂｒ０〜Ｂｒ１０はＲＳ歪み補正量の設定対象ラインＬｒ０〜Ｌｒ１１におけるロール方向のＲＳ歪み補正量を示している。ＲＳ歪み補正部１１４は上述したように、画像データ５０２の全ラインに対するＲＳ歪み補正量５２２を算出する。
【００４４】
ＲＳ歪み補正部１１４は、ＲＳ歪み補正量５２２に従って、画像中心を原点として、各ラインの読み出し位置を回転させ、５１２を読み出し範囲とした画像データを出力することで、ロール方向のＲＳ歪みを補正する。このようにＲＳ歪み補正を行うことで、図３（ｄ）に示す画像データ５０４が出力される。なお、中間ラインＬｍ＝Ｌｒ５におけるＲＳ歪み補正量Ｂｒ５＝０となるので、画像データ５０２と画像データ５０４の中心位置は変わらない。
【００４５】
なお、ここでは水平・垂直・回転方向のＲＳ歪み補正を別々に説明したが、実際にはひとつの画像データに対して、ヨー・ピッチ・ロール方向の揺れによるＲＳ歪みが組み合わさった状態となる。ＲＳ歪み補正部１１４は画像メモリ１０９から読み出す各ラインに対して、水平・垂直・回転方向のＲＳ歪み補正量を組み合わせて、読み出し位置を算出することで、一度にそれらのＲＳ歪み補正を行い、補正後の画像データを出力することができる。
【００４６】
次に、図４を用いて、撮像素子１０７の予め決められた領域から焦点検出用の画像データを読み出す場合に、撮像素子１０７から読み出した画像データと、画像メモリ１０９に格納された画像データについて説明する。
【００４７】
図４（ａ）の３００は、撮像素子１０７から読み出した画像データの種類を各ラインについて示した一例を示している。図中の矩形ａ／ｂはａ／ｂ合成信号のライン単位の画像データを、矩形ａはａ信号のライン単位の画像データを示している。ラインＬ０、Ｌ１、Ｌ２は焦点検出の対象外の領域であって、ａ／ｂ合成信号のみが時間Ｔ０〜Ｔ１、Ｔ１〜Ｔ２、Ｔ２〜Ｔ３にそれぞれ読み出される。ここで、Ｔに続く数字は経過時間を示す単位で、Ｔ０〜Ｔ１、Ｔ１〜Ｔ２、Ｔ２〜Ｔ３は一定間隔であるものとする。一方、ラインＬａ、Ｌａ＋１、Ｌａ＋２は焦点検出の対象領域３０１であって、ａ信号と、ａ／ｂ合成信号の画像データがライン順次で、時間Ｔａ〜Ｔａ＋２、Ｔａ＋２〜Ｔａ＋４、Ｔａ＋４〜Ｔａ＋６にそれぞれ読み出される。Ｔａ〜Ｔａ＋２はＴ０〜Ｔ１の２倍の間隔である。また、ラインＬｂ、Ｌｂ＋１、Ｌｂ＋２は焦点検出の対象外の領域であって、ａ／ｂ合成信号のみが時間Ｔｂ〜Ｔｂ＋１、Ｔｂ＋１〜Ｔｂ＋２、Ｔｂ＋２〜Ｔｂ＋３にそれぞれ読み出される。この例では矩形の大きさが示すように、全てのライン毎のａ／ｂ合成信号と、焦点検出の対象領域におけるライン毎のａ信号が同一データ量であって、それらの読み出し時間も同じ長さである。
【００４８】
図４（ｂ）は撮像素子１０７から読み出した画像データ３００と、信号処理部１０８が画像データ３００を処理して画像メモリ１０９に格納した画像データ３１０と、撮像された被写体４００とを示す概念図である。画像データ３００において、時間Ｔａ〜Ｔｂに読み出された焦点検出の対象領域３０１では、他の領域に比べてライン毎の読み出し時間が２倍になるため、被写体４００の歪み方が異なっている。この領域３０１は、画像データ３１０におけるラインＬａ〜Ｌｂ−１にあたり、画像メモリ１０９に格納された状態でも、他の領域と比べて被写体４００の歪み方が異なっている。
【００４９】
次に、図５を用いて、第１の実施形態におけるＲＳ歪み補正量演算部１１３の処理内容について説明する。
【００５０】
図５（ａ）の左側に示すグラフは、縦軸が時間、横軸がＲＳ歪み補正量演算部１１３が生成したヨー方向の角度データであり、撮像素子１０７から画像データ３００を読み出す期間に撮像装置１００に生じたヨー方向の振れの推移の例を示している。タイミングＴｓ０は画像データ３００の先頭ラインの電荷蓄積タイミング、タイミングＴｓ６は画像データ３００の終端ラインの電荷蓄積タイミングに対応している。ＲＳ歪み補正量演算部１１３は、Ｔｓ０に同期して角速度データの積分を開始し、制御マイコン１０１から指示された所定間隔のタイミングＴｓ０〜Ｔｓ６において、角度データＡ０〜Ａ６を生成する。また、生成した離散的な角度データＡ０〜Ａ６から、線形補間や多項式近似、もしくは最小自乗法などの何れかの補間方法を用いて、時間軸に対する連続的な角度データ４０１を算出する。ここで、焦点検出の対象領域３０１の読み出し開始時間Ｔａの角度データをＡａ、読み出し終了時間Ｔｂの角度データをＡｂとする。
【００５１】
図５（ｂ）の左側に示すグラフは、図５（ａ）に示した時間軸に対する連続的な角度データ４０１の推移を、画像メモリ１０９に格納された画像データ３１０の各ラインに対する角度データの推移に変換した角度データの結果を示している。ＲＳ歪み補正量演算部１１３は、制御マイコン１０１から設定された焦点検出の対象領域３０１に対して、１ラインあたりの読み出し時間を他の領域の２倍として、角度データの変換を行う。その結果、Ｔｓ０〜Ｔａの期間がラインＬ０〜Ｌａ、Ｔａ〜Ｔｂの期間がラインＬａ〜Ｌｂ、Ｔｂ〜Ｔｓ６の期間がラインＬｂ〜Ｌｅの角度データ４０２にそれぞれ変換される。ここで、焦点検出の対象領域３０１の開始ラインＬａに対する角度データがＡａ、焦点検出の対象領域３０１が完了した次のラインＬｂに対する角度データがＡｂとなる。また、ラインＬｍは画像データ３１０の中間ラインであって、中間ラインＬｍに対する角度データをＡｍとする。
【００５２】
なお、ＲＳ歪み補正量演算部１１３はヨー方向の角度データと同様に、ピッチ方向、ロール方向の角度データも時間軸からライン基準に変換するが、処理内容はヨー方向と同様なので、ここでは説明を省略する。
【００５３】
図５（ｂ）の右側に示すグラフは、ＲＳ歪み補正量演算部１１３が角度データ４０２から算出した、画像データ３１０の各ラインに対するＲＳ歪み補正量を示している。本実施形態においては、中間ラインＬｍを基準としてＲＳ歪み補正を行うものとする。即ち、角度データ４０２に対して中間ラインＬｍの角度データＡｍを減じて用いることで、中間ラインＬｍでのＲＳ歪み補正量が０となる。ヨー方向のＲＳ歪み補正量４０３は、角度データＡｍを減じた角度データ４０２に対して、制御マイコン１０１から設定された撮像光学系１０４の焦点距離から、角度に対する撮像面上での被写体像の並進移動量を算出し、乗算することで得られる。本実施形態において、得られたＲＳ歪み補正量４０３を設定するＲＳ歪み補正部１１４は、画像データの垂直方向に等間隔で設けられたラインＬｒ０〜Ｌｒ１０に対して、ＲＳ歪み補正量４０３の設定を受けるものとする。ＲＳ歪み補正量演算部１１３はラインＬｒ０〜Ｌｒ１０におけるＲＳ歪み補正量４０３を求め、制御マイコン１０１に通知する。通知を受けた制御マイコン１０１はＲＳ歪み補正量４０３をＲＳ歪み補正部１１４に設定する。
【００５４】
ＲＳ歪み補正部１１４では、読み出し範囲５１０と同様にしてＲＳ歪み補正量４０３に従って読み出し範囲を制御して、画像データ３１０のうち一部の画像データを読み出す。これにより、同一画面内において他のラインに比べて読み出しに時間がかかるラインがある場合にも、適切にＲＳ歪み補正を行うことができる。
【００５５】
なお、ＲＳ歪み補正量演算部１１３は、ヨー方向と同様に、ピッチ方向、ロール方向についても角度データからＲＳ歪み補正量を算出して、制御マイコン１０１を介してＲＳ歪み補正部１１４に設定する。処理内容は概ねヨー方向と同様なので、ここでは説明を省略する。ただし、ロール方向については、角度データからＲＳ歪み補正量を求める際に、撮像光学系１０４の焦点距離から並進移動量を求める必要はなく、中間ラインＬｍを０とした角度データをそのままＲＳ歪み補正量として用いる。
【００５６】
次に図６のタイミングチャートを用いて、撮像装置１００の動作シーケンスについて説明する。
【００５７】
図６において、一番上のＶｓで示すパルス信号は垂直同期信号であって、後ろに続く［  ］は、対象のフレームを表しており、撮像装置１００の各ブロックが同期して、画像データを１フレームずつ連続処理する。なお、図１では垂直同期信号の発信源と分配経路は省略している。ここではＶｓ［ｎ−２］〜Ｖｓ［ｎ＋３］と等間隔に６回のパルスを図示しており、この垂直同期信号を基準として、［ｎ−２］〜［ｎ＋３］を以下の説明にも用いる。
【００５８】
一番下のＶｂ［  ］で示すパルス信号は垂直ブランキング信号であって、撮像素子１０７からの画像データの読み出しの休止期間が開始するタイミングを制御マイコン１０１に通知する。なお、図１では垂直ブランキング信号の発信源と分配経路も省略している。例えば、垂直同期信号Ｖｓ［ｎ］に対して、その直前のブランキング期間の開始時に、垂直ブランキング信号Ｖｂ［ｎ−１］が通知される。
【００５９】
Ｆ［  ］で示すハッチングされた帯は、各フレームに対する撮像素子１０７の各ラインに対する駆動タイミングを示しており、Ｆ［ｎ−２］〜Ｆ［ｎ＋３］で連続する６フレーム分の撮像画像に対する駆動タイミングを示している。帯の上端が撮像素子１０７の先頭ラインＬ０、下端が終端ラインＬｅであって、帯の左辺が各ラインの電荷蓄積開始タイミング、右辺が各ラインの読み出しタイミングを示す。一例として、Ｆ［ｎ］の先頭ラインＬ０の電荷蓄積開始は、直前の垂直同期信号Ｖｓ［ｎ−１］から、制御マイコン１０１の指示に基づく電荷蓄積開始タイミングを待った後に行われる。そして、Ｆ［ｎ］の先頭ラインＬ０の読み出しは、垂直同期信号Ｖｓ［ｎ］に同期して行われる。帯が途中で折れ曲がっているのは、焦点検出領域とそれ以外の領域とでライン毎の読み出し時間の長さが異なるためである。電荷蓄積開始は先頭ラインＬ０から終端ラインＬｅに向けて順次シフトしていく。電荷蓄積開始のシフト速度は、読み出しのシフト速度と同じになっている。即ち、Ｆ［ｎ］の帯の左辺と右辺の傾きと両者の間隔は同一であり、全ラインで電荷蓄積時間の長さが同じになるように駆動される。左辺と右辺の中間に位置する一点鎖線は、各ラインの電荷蓄積期間の時間軸上の中心を示している。後述するＲＳ歪み補正量演算部１１３における角度データ取得は、この電荷蓄積期間の時間軸上の中心に同期して行われる。
【００６０】
Ｗ［  ］とＲ［  ］は、画像メモリ１０９に格納される画像データの各ラインに対する書き込みタイミングと読み出しタイミングを示している。画像メモリ１０９にはバンク０、バンク１の２枚分の画像の画像データを格納するための容量が確保されている。そして、制御マイコン１０１の指示に基づき、信号処理部１０８からの画像データの書き込みと、ＲＳ歪み補正部１１４への読み出しに利用するバンクが交互に入れ替わる。バンク０、１それぞれの上端は格納される画像データの先頭ラインＬ０、下端は終端ラインＬｅに対応する。なお、読み出しタイミングＲ［  ］の線分がＬ０とＬｅに達していないのは、図３を用いて説明したように、ＲＳ歪み補正部１１４による読み出し範囲が、格納された画像データの全範囲を超えないように、所定の倍率が設けられているためである。
【００６１】
書き込みタイミングＷ［  ］は、Ｆ［  ］の各ラインの読み出しタイミングに対応しており、撮像素子１０７から読み出した画像データが信号処理部１０８を介して画像メモリ１０９に書き込まれる。例えば、読み出しタイミングＲ［ｎ］は、１つ後の垂直同期信号Ｖｓ［ｎ＋１］に同期しており、Ｗ［ｎ］で書き込まれた画像データの読み出し範囲が順次、ＲＳ歪み補正部１１４により読み出される。また、読み出された画像データはＲＳ歪み補正され、表示制御部１１５と記録制御部１１７を介して、表示部１１６と記録部１１８へ出力される。
【００６２】
Ｒａ［  ］はＲＳ歪み補正量演算部１１３が角度データを取得する期間を示している。ＲＳ歪み補正量演算部１１３は、Ｆ［  ］に対して一点鎖線で示した、各ラインの電荷蓄積期間の時間軸上の中心に同期して、制御マイコン１０１の指示に基づく所定間隔のタイミングで角度データを生成する。例えば、各フレームにおいて、Ｒａ［  ］の期間内に、図５（ａ）で説明した等間隔のタイミングＴｓ０〜Ｔｓ６が設けられ、各タイミングでＦ［  ］に対する角度データＡ０〜Ａ６が生成される。
【００６３】
Ｒｐ［  ］はＲＳ歪み補正量演算部１１３が生成した角度データから、ＲＳ歪み補正部１１４に設定するＲＳ歪み補正量を算出する期間を示している。ＲＳ歪み補正量演算部１１３は、各フレームにおいて、Ｆ［  ］に対する角度データの生成期間Ｒａ［  ］が完了した後、制御マイコン１０１から設定された焦点検出の対象領域を元に、Ｒｐ［  ］の期間でＲＳ歪み補正量の算出を行う。
【００６４】
Ｃｅ［  ］は制御マイコン１０１が各ブロックのフレーム処理を行う期間を示す。フレーム処理Ｃｅ［  ］は、同じフレームの垂直同期信号Ｖｓ［  ］に同期して開始される。ここでフレーム処理とは、主被写体判定と、ＡＥ（ＡｕｔｏＥｘｐｏｓｕｒｅ：自動露出）処理と、ＡＦ（ＡｕｔｏＦｏｃｕｓ：オートフォーカス）処理と、画像メモリ１０９に対する読み書きのメモリバンク制御を示す。
【００６５】
主被写体判定では、制御マイコン１０１は、被写体検出部１１１の検出結果から、画像データに写った主被写体を判定し、主被写体部分をＡＥ処理やＡＦ処理の制御対象として用いる。被写体検出部１１１は、画像メモリ１０９の画像データをＲＳ歪み補正部１１４と同時に読み出して被写体検出を行うものとする。例えば、画像メモリ１０９からの読み出しタイミングＲ［ｎ］の完了時に、同じフレームのＦ［ｎ］の画像データに対する被写体検出の結果が得られる。フレーム処理Ｃｅ［ｎ］では、その時点で完了しているＲ［ｎ−２］に対応するＦ［ｎ−２］の被写体検出の結果を利用する。なお、ここではＲＳ歪み補正前の画像データに対して被写体検出を行っているが、ＲＳ歪み補正後の画像データから被写体検出を行うように構成しても良い。その場合、ＲＳ歪みの影響を除して被写体検出を行うことができるが、検出してからＡＥ処理やＡＦ処理に用いるまでの遅延量が大きくなるため、被写体への追従性は悪化する。
【００６６】
ＡＥ処理では、制御マイコン１０１は、画像データに対して信号処理部１０８で行われた露出評価の結果と、主被写体判定の結果を用いて、撮像光学系１０４の絞りの駆動パラメータや、撮像素子１０７の電荷蓄積開始タイミングを決定する。主被写体判定の結果は、主被写体領域に対する露出評価を他の領域より重み付けして取り扱うため利用される。露出評価は撮像素子１０７からの画像データの読み出し時に行われるため、例えば、Ｆ［ｎ］の読み出し完了時にはＦ［ｎ］の画像データに対する結果が得られる。フレーム処理Ｃｅ［ｎ］では、その時点で完了しているＦ［ｎ−１］の露出評価の結果を利用し、ＡＥ処理を行う。
【００６７】
ＡＦ処理では、制御マイコン１０１は、フォーカス評価部１１０で算出された被写体像の焦点ずれ量と、被写体検出結果の結果を用いて、撮像光学系１０４のフォーカスレンズ１０５の駆動パラメータや、撮像素子１０７の焦点検出の対象領域を決定する。主被写体判定の結果は、焦点検出の対象領域の決定と、主被写体領域に対する焦点ずれ量を他の領域より重み付けして取り扱うために利用される。フォーカス評価は撮像素子１０７からの画像データの読み出し時に行われるため、例えば、Ｆ［ｎ］の読み出し完了時にはＦ［ｎ］の画像データに対する結果が得られる。フレーム処理Ｃｅ［ｎ］では、その時点で得られているＦ［ｎ−１］の被写体像の焦点ずれ量を利用し、ＡＦ処理を行う。
【００６８】
メモリバンク制御では、制御マイコン１０１は、Ｗ［  ］とＲ［  ］を用いて説明したように、信号処理部１０８が画像データを書き込む画像メモリ１０９のバンクと、ＲＳ歪み補正部１１４が読み出すバンクの制御を行う。例えば、Ｃｅ［ｎ］においては、次の垂直同期信号Ｖｓ［ｎ＋１］で開始するＷ［ｎ＋１］とＲ［ｎ］のバンク制御を行う。
【００６９】
Ｃｒ［  ］は、制御マイコン１０１がＲＳ歪み補正の制御を行う期間を示す。ＲＳ歪み補正の制御では、一例として、ＲＳ歪み補正量演算部１１３がＲｐ［ｎ］でＲＳ歪み補正量を算出した通知を受け、同じフレームのＣｒ［ｎ］でＲＳ歪み補正量を取得し、ＲＳ歪み補正部１１４に設定する。また、ＡＥ処理とＡＦ処理の結果を用いて、ＲＳ歪み補正量演算部１１３に対して、次の垂直同期信号Ｖｓ［ｎ＋１］の後で開始されるＲａ［ｎ＋２］における角度データ取得のタイミングと、それに対応するＲｐ［ｎ＋２］で用いる焦点検出の対象領域を設定する。
【００７０】
Ｃｓ［  ］は、制御マイコン１０１が撮像素子１０７の制御を行う期間を示す。例えば、垂直ブランキングＶｂ［ｎ］の通知を受け、Ｃｓ［ｎ］でＡＥ処理とＡＦ処理の結果を用いて、撮像素子１０７に対して、次の垂直同期信号Ｖｓ［ｎ＋１］の後に電荷蓄積を開始するＦ［ｎ＋２］の電荷蓄積開始タイミングと、焦点検出の対象領域を設定する。
【００７１】
次に、図７のフローチャートを用いて、撮像装置１００が画像データを１フレームずつ処理する際の、制御マイコン１０１の処理内容について説明する。処理内容は図６で説明した制御マイコンの制御期間Ｃｅ［  ］、Ｃｒ［  ］、Ｃｓ［  ］と対応している。
【００７２】
Ｓ７０１において、垂直同期信号を待ち、垂直同期信号を受け取ると、Ｓ７０２に進む。Ｓ７０２からＳ７０５の処理内容は、図６で示したＣｅ［  ］にあたるフレーム処理である。各ステップの処理対象となるフレームを明確にするため、ここではＣｅ［ｎ］を基準として説明する。
【００７３】
Ｓ７０２では、Ｆ［ｎ−２］の被写体検出の結果を利用し、前述した主被写体判定を行う。Ｓ７０３では、Ｆ［ｎ−１］の露出評価の結果と、Ｓ７０２の主被写体判定の結果を利用し、前述したＡＥ処理を行う。Ｓ７０４では、Ｆ［ｎ−１］の被写体ずれ量と、Ｓ７０２の主被写体判定の結果を利用し、前述したＡＦ処理を行う。
【００７４】
Ｓ７０５では、Ｆ［ｎ＋１］の画像メモリ１０９への書き込みＷ［ｎ＋１］と、Ｆ［ｎ］の画像メモリ１０９からの読み出しＲ［ｎ］に対して、前述したメモリバンク制御を行う。
【００７５】
Ｓ７０６では、ＲＳ歪み補正量演算部１１３からのＲＳ歪み補正量の算出完了の通知を待つ。Ｃｅ［ｎ］の処理直後であれば、対応するＲｐ［ｎ］の完了を待つ。
【００７６】
Ｓ７０７からＳ７０９の処理内容は、図６で示したＣｒ［  ］にあたるＲＳ歪み補正の制御である。ここでは、前述したＣｅ［ｎ］、Ｒｐ［ｎ］に対応するＣｒ［ｎ］を基準として説明する。
【００７７】
Ｓ７０７では、ＲＳ歪み補正量演算部１１３がＲｐ［ｎ］で算出したＦ［ｎ］のＲＳ歪み補正量を取得し、ＲＳ歪み補正部１１４に設定する。Ｓ７０８では、ＡＥ処理と、ＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対するＲＳ歪み補正量演算部１１３の角度データの取得タイミングを設定する。Ｓ７０９では、ＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対してＲＳ歪み補正量演算部１１３が用いる焦点検出の対象領域を設定する。
【００７８】
Ｓ７１０では、垂直ブランキングの通知を待ち、垂直ブランキングを受け取ると、Ｓ７１１に進む。Ｓ７１１とＳ７１２の処理内容は、図６で示したＣｓ［  ］にあたる撮像素子１０７の制御である。
【００７９】
Ｓ７１１では、直前のＡＥ処理とＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対する撮像素子１０７の電荷蓄積開始タイミングを設定する。Ｓ７１２では、直前のＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対する撮像素子１０７の焦点検出の対象領域を設定して、Ｓ７０１に戻る。
【００８０】
次に図８のフローチャートを用いて、ＲＳ歪み補正量演算部１１３が画像データのフレーム毎にＲＳ歪み補正量を算出する処理内容について説明する。ＲＳ歪み補正量演算部１１３は図８（ａ）と図８（ｂ）に示す処理内容を、マルチタスクなどの制御方法で並行して行う。
【００８１】
図８（ａ）は図６で示したＲａ［  ］にあたる角度データ取得の処理内容を示すフローチャートである。各ステップの処理対象となるフレームを明確にするため、ここではＲａ［ｎ］を基準として説明する。
【００８２】
Ｓ８０１では、制御マイコン１０１から設定済みの角度データ取得タイミングＴｓ０を待つ。図５の説明で述べたように、角度データ取得タイミングは各ラインの電荷蓄積期間の時間軸上の中心に同期した所定間隔のタイミングであって、Ｔｓ０は先頭ラインに対するタイミングである。Ｔｓ０を受けて、Ｓ８０２以降の、Ｒａ［ｎ］の処理が行われる。
【００８３】
Ｓ８０２では、フレーム毎の初期化を行う。具体的には、角速度センサ１１２から得られた角速度データの積分値のリセット、内部カウンタの初期化、不要データの解放などを行う。Ｓ８０３では、制御マイコン１０１から設定済みの角度データ取得タイミングＴｓｘを待つ。ここで、Ｔｓｘは図５で説明したように、Ｔｓ０の後、最終ラインに対するタイミングＴｓ６まで等間隔に設けられたＴｓ１〜Ｔｓ６と６回のタイミングを示す。取得タイミングになると、Ｓ８０４において、角速度センサ１１２から得た角速度データの積分値から、Ｔｓｘに対する角度データを取得する。
【００８４】
Ｓ８０５では、Ｓ８０４で取得した角度データがフレーム内で最後のデータであったかを判定する。ここではＴｓ６に対する角度データを取得したかを判定する。最後でなければ内部カウンタを進めてＳ８０３に戻り、次の角度データ取得タイミングを待つ。
【００８５】
Ｓ８０４で取得した角度データがフレーム内で最後のデータであった場合、Ｓ８０６において、図８（ｂ）に示す補正量演算処理を起動して、本フローチャートの処理と並行して行う。
【００８６】
Ｓ８０７では、制御マイコン１０１に設定された角度データの取得タイミングを取得し、Ｓ８０１に戻って次のフレームに対する処理に用いる。前述のようにＣｒ［ｎ］でＦ［ｎ＋２］に対する取得タイミングが設定されるので、Ｒａ［ｎ］の最後の本ステップではＦ［ｎ＋１］に対してＣｒ［ｎ−１］で設定された取得タイミングを取得して、Ｒａ［ｎ＋１］の処理に用いる。
【００８７】
図８（ｂ）は図６で示したＲｐ［  ］にあたるＲＳ歪み補正量の演算処理内容を示すフローチャートで、図８（ａ）のＳ８０６により起動される。各ステップの処理対象となるフレームを明確にするため、ここではＲ［ｎ］を基準として説明する。
【００８８】
Ｓ８１０では、制御マイコン１０１に設定された焦点検出の対象領域を取得する。前述のようにＣｒ［ｎ］でＦ［ｎ＋２］に対する焦点検出の対象領域が設定されるので、Ｒｐ［ｎ］ではＣｒ［ｎ−２］で設定された内容を取得する。Ｓ８１１では、Ｓ８１０で取得した焦点検出の対象領域と、図８（ａ）で取得した角度データから、図５を用いて説明したように、Ｆ［ｎ］に対するＲＳ歪み補正量を算出する。
【００８９】
Ｓ８１２では、ＲＳ歪み補正量の算出が完了したことを制御マイコン１０１に通知して、処理を終える。
【００９０】
上記の通り第１の実施形態によれば、撮像素子のライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適切に補正することができる。
【００９１】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第２の実施形態の撮像装置は、撮像素子１０７からの出力信号を高速に読み出すために複数の読み出しモードを設け、制御マイコン１０１の制御に基づき、選択された読み出しモードに応じてＲＳ歪み補正を行う点が第１の実施形態と異なる。それ以外は、第１の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【００９２】
まず、第２の実施形態で撮像素子１０７に設けられる第０から第３の各読み出しモードについて、図９を用いて説明する。
【００９３】
第０のモードは、第１の実施形態と同様に、垂直方向にのみ焦点検出の対象領域を設定し、領域内のラインからはａ信号と、ａ／ｂ合成信号をライン単位で順次読み出す。また、領域外のラインからはａ／ｂ合成信号のみを読み出す。
【００９４】
第１のモードでは、焦点検出の対象領域を垂直方向のみでなく、水平方向にも設定する。図９（ａ）は第１のモードで設定された焦点検出の対象領域の例を示す。撮像素子１０７から読み出す画像データ９００に対して、垂直方向に領域９０１が設定されると共に、水平方向（ライン方向）に領域９０２が設定される。即ち、領域９０１に含まれるラインの各単位画素において、領域９０２に含まれる単位画素のみ、ａ信号と、ａ／ｂ合成信号がライン順次で読み出され、それ以外の領域はａ／ｂ合成信号のみが読み出される。ここでは一例として、領域９０２は、画像データ９００全体の水平サイズに対して、中心の１／３の領域とする。
【００９５】
図９（ｂ）は第１のモードで撮像素子１０７から読み出した画像データの例を１ライン毎に書いた画像データ９００である。図４（ａ）の例と同様に、図９（ｂ）中の矩形ａ／ｂはａ／ｂ合成信号、矩形ａはａ信号を示している。焦点検出の対象外の領域であるラインＬ０、Ｌ１、Ｌ２では、ａ／ｂ合成信号のみが読み出される。焦点検出の対象領域が含まれるラインＬａ、Ｌａ＋１、Ｌａ＋２では、領域９０２に含まれるａの信号と、水平方向に全領域のａ／ｂ合成信号がライン順次で読み出される。各矩形の水平方向の長さは読み出すデータのサイズを示し、ａ信号は同一ラインのａ／ｂ合成信号に比べて読み出し領域が１／３なので、データサイズも１／３となっている。そのため、領域９０１に含まれる各ラインＬａ、Ｌａ＋１、Ｌａ＋２の読み出し時間は、領域９０１に含まれない各ラインＬ０、Ｌ１、Ｌ２と比べて４／３倍となっている。
【００９６】
また、第１のモードにおいては、信号処理部１０８はａ信号が読み出された単位画素についてのみ、ｂ信号を生成し、フォーカス評価部１１０はその領域内の被写体像の焦点ずれ量のみを算出する。焦点検出できる領域は狭くなるが、読み出し時間が短くなることで、発生するＲＳ歪みの度合いを抑えることができる。
【００９７】
第２のモードでは、第０のモードと同様に、垂直方向にのみ焦点検出の対象領域を設定する。第０のモードと異なるのは、焦点検出の対象領域において、ａ信号を周囲の画素同士で加算して読み出す点である。加算して読み出したａ信号をａ＋信号と呼ぶ。ａ＋信号は、図２で示した単位画素毎の回路から出力された後に、撮像素子１０７から出力されるまでの伝送路に組み込まれた不図示の加算回路によって、水平方向に隣接する単位画素毎に加算される。ここでは、水平方向に３画素ずつが加算され１画素として読み出されるものとする。このとき、撮像素子１０７から読み出した画像データは、焦点検出の対象領域におけるａ＋信号のデータサイズが、ａ／ｂ合成信号の１／３となるため、図９（ｂ）に示した第１のモードの例と同様のデータサイズになる。
【００９８】
第２のモードにおいては、信号処理部１０８は焦点検出の対象領域に対して、ａ／ｂ合成信号をａ＋信号と同じ組み合わせで水平方向に加算して、加算したｂ信号に相当するｂ＋信号の算出に用いる。フォーカス評価部１１０は加算により、水平方向の画素数が減ったａ信号、ｂ信号を用いて、被写体像の焦点ずれ量を算出する。水平方向の焦点ずれ量の検出精度は粗くなるが、読み出し時間が短くなることで、発生するＲＳ歪みの度合いを抑えることができる。
【００９９】
第３のモードでは、第０のモードと同様に、垂直方向にのみ焦点検出の対象領域を設定する。第０のモードと異なるのは、焦点検出の対象領域において、ａ信号を読み出すラインを、所定の間隔で間引く点である。図９（ｃ）の９５０は第３のモードで撮像素子１０７から読み出した画像データの例を１ライン毎に書いた画像データである。図９（ｃ）に示す例では、ａ信号を読み出すラインを１／３ラインに間引いている。焦点検出の対象領域９５１で、ａ信号を読み出すラインＬａ、Ｌａ＋３の読み出し時間は他のラインの２倍となるが、領域９５１全体では１ラインあたりの読み出し時間が４／３倍となる。なお、ここでは領域９５１のライン数が３で割り切れるものとする。
【０１００】
第３のモードにおいては、信号処理部１０８はａ信号が読み出されたラインのみ、ｂ信号を算出し、フォーカス評価部１１０はａ信号、ｂ信号が得られたラインのみを用いて、被写体像の焦点ずれ量を算出する。垂直方向の焦点ずれ量の検出精度は粗くなるが、読み出し時間が短くなることで、発生するＲＳ歪みの度合いを抑えることができる。
【０１０１】
なお、ここでは説明を単純にするため、第１から第３のモードで被写体検出の対象領域から読み出すライン毎のデータサイズが、対象外の領域の４／３倍になる例で説明したが、４／３倍である必要はなく、それぞれが別の倍率になってもよい。即ち、水平領域のサイズを任意の割合で設けてもよいし、加算する画素数を別の単位にしてもよいし、間引きのライン数を別の値にしてもよい。また、ａ信号の読み出し時間を短くするため、ａ信号のビット精度を、ａ／ｂ合成信号に比べて減らすように動作させる等、ａ／ｂ合成信号の読み出し時間と異なる読み出し方法をとるように構成してもよい。
【０１０２】
次に図１０を用いて、第２の実施形態におけるＲＳ歪み補正量演算部１１３の処理内容について説明する。
【０１０３】
図１０（ａ）の左側に示すグラフは、図５（ａ）で示したグラフと同様に、ＲＳ歪み補正量演算部１１３が画像データ９００の撮影中に生成したヨー方向の角度データの例である。図９を用いて説明したように、領域９０１のライン毎の読み出し時間が他の領域に比べて４／３倍となっているものとする。ＲＳ歪み補正量演算部１１３は、制御マイコン１０１に指示された所定間隔のタイミングＴｓ０〜Ｔｓ６で角度データＡ０〜Ａ６を生成し、それらを元に時間軸に対する連続的な角度データ９１１を算出する。ここで図５（ａ）と同様に、被写体検出の対象領域９０１の読み出し開始時間Ｔａの角度データをＡａ、読み出し終了時間Ｔｂの角度データをＡｂとする。
【０１０４】
図１０（ｂ）の左側に示すグラフは、図１０（ａ）で示した読み出し時間に対する連続的な角度データ９１１の推移を、画像メモリ１０９に格納された画像データ９１０の各ラインに対する角度データの推移に変換した結果を示している。Ｔｓ０〜Ｔａの期間がラインＬ０〜Ｌａ、Ｔａ〜Ｔｂの期間がラインＬａ〜Ｌｂ、Ｔｂ〜Ｔｓ６の期間がラインＬｂ〜Ｌｅの角度データにそれぞれ変換される。以降、ＲＳ歪み補正量演算部１１３は、第１の実施形態における説明と同様に、得られた角度データ９１２からＲＳ歪み補正量を算出して、制御マイコン１０１に通知することで、ＲＳ歪み補正の制御が行われる。
【０１０５】
上記の通り第２の実施形態によれば、撮像素子の領域毎の読み出し時間が様々に異なる場合においても、撮像した画像データのローリングシャッター歪みを補正することができる。
【０１０６】
＜第３の実施形態＞
次に本発明の第３の実施形態について説明する。なお、第３の実施形態は、上述した第１の実施形態と比較して、制御マイコン１０１による焦点検出の対象領域の指定方法と、ＲＳ歪み補正量演算部１１３における処理が異なる。それ以外は、第１の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【０１０７】
まず、図１１を用いて、本第３の実施形態において、撮像素子１０７の予め決められた領域から焦点検出用の画像データを読み出す場合に、撮像素子１０７から読み出した画像データと、画像メモリ１０９に格納された画像データについて説明する。
【０１０８】
図１１（ａ）の１１００は、撮像素子１０７から読み出した画像データの種類を各ラインについて示した一例を示しており、ここでは、図４（ａ）と同様であるものとする。
【０１０９】
図１１（ｂ）は撮像素子１０７から読み出した画像データ１１００と、信号処理部１０８が画像データ１１００を処理して画像メモリ１０９に格納した画像データ１１１０と、撮像された被写体４００とを示す概念図である。第３の実施形態では、制御マイコン１０１は撮像素子１０７の撮像面を垂直方向に等間隔に１０分割し、分割領域単位で被写体検出の対象領域を指定する。ここで、撮像素子１０７から読み出された画像データ１１００の焦点検出の対象領域１１０１は、１０分割された分割領域１２０１〜１２１０のうち、分割領域１２０４と１２０５に割り当てられている。分割領域１２０４と１２０５は他の領域に比べてライン毎の読み出し時間が２倍になるため、時間軸方向に２倍の大きさで描かれており、被写体の歪み方も異なっている。画像メモリ１０９に格納された画像データ１１１０において、ライン数に基づく分割領域１２０４と１２０５の垂直方向の長さは他の領域と同一になっているが、他の領域と比べて被写体の歪み方は異なっている。
【０１１０】
次に、図１２を用いて、第３の実施形態におけるＲＳ歪み補正量演算部１１３の処理内容について説明する。
【０１１１】
図１２（ａ）の左側に示すグラフは、縦軸が時間、横軸がＲＳ歪み補正量演算部１１３が生成したヨー方向の角度データであり、撮像素子１０７から画像データ１１００を読み出す期間に撮像装置１００に生じたヨー方向の振れの推移の例を示している。タイミングＴｓ０は画像データ１１００の先頭ラインの電荷蓄積タイミング、タイミングＴｓ６は画像データ１１００の終端ラインの電荷蓄積タイミングに対応している。ＲＳ歪み補正量演算部１１３は、Ｔｓ０に同期して角速度データの積分を開始し、制御マイコン１０１から指示された所定間隔のタイミングＴｓ０〜Ｔｓ６において、角度データＡ０〜Ａ６を生成する。また、生成した離散的な角度データＡ０〜Ａ６から、線形補間や多項式近似、もしくは最小自乗法などの何れかの補間方法を用いて、時間軸に対する連続的な角度データ１２１１を算出する。ここで、焦点検出の対象領域１１０１の読み出し開始時間Ｔａの角度データをＡａ、読み出し終了時間Ｔｂの角度データをＡｂとする。
【０１１２】
図１２（ａ）の右側に示すグラフは、横軸が水平方向のＲＳ歪み補正量であり、１２１２はＲＳ歪み補正量演算部１１３が角度データ１２１１から算出した時間軸に対する連続的なＲＳ歪み補正量を示している。第３の実施形態においては、中間ラインＬｍを基準としてＲＳ歪み補正を行うものとする。ここでは、分割領域１２０１〜１２１０の境界をラインＬｒ０〜Ｌｒ１０とし、Ｌｒ５が中間ラインＬｍとなる。まず、ＲＳ歪み補正量演算部１１３は、画像データ１１００から中間ラインＬｒ５における角度データＡｂを減じることで、中間ラインで０となる角度データを得る。その結果に対して、制御マイコン１０１から設定された撮像光学系１０４の焦点距離から、角度に対する撮像面上での被写体像の並進移動量を算出し、乗算することで連続的なＲＳ歪み補正量１２１２が得られる。第３の実施形態において、得られたＲＳ歪み補正量を設定するＲＳ歪み補正部１１４は、ラインＬｒ０〜Ｌｒ１０に対してＲＳ歪み補正量の設定を受けるものとする。ＲＳ歪み補正量演算部１１３はラインＬｒ０〜Ｌｒ１０におけるＲＳ歪み補正量を求め、制御マイコン１０１に通知する。前述の通り、他の８つの分割領域に比べて、分割領域１２０４と１２０５の２つの領域は時間軸方向に２倍の大きさとなるので、ラインＬｒ０〜Ｌｒ１０におけるＲＳ歪み補正量は、ＲＳ歪み補正量１２１２を時間軸方向に８＋２×２＝１２等分した○と×における値となる。ただし、×の部分は対応するラインでＲＳ歪み補正量を設定しないので利用しない。通知を受けた制御マイコン１０１は、ＲＳ歪み補正量１２１２をＲＳ歪み補正部１１４に設定する。
【０１１３】
図１２（ｂ）の右側に示すグラフは、図１２（ａ）の説明で得られたラインＬｒ０〜Ｌｒ１０のＲＳ歪み補正量１２１２を、画像メモリ１０９に格納された画像データ１１１０に対して示したものである。グラフのＲＳ歪み補正量の変化が、画像データ１１１０の被写体の歪み方と対応しており、時間軸で算出したＲＳ歪み補正量１２１２を、そのままライン位置に対するＲＳ歪み補正量１２１２として用いることができる。
【０１１４】
なお、ＲＳ歪み補正量演算部１１３はヨー方向と同様に、ピッチ方向、ロール方向についても角度データからＲＳ歪み補正量を算出して、制御マイコン１０１を介してＲＳ歪み補正部１１４に設定する。処理内容は概ねヨー方向と同様なので、ここでは説明を省略する。ただし、ロール方向については、角度データからＲＳ歪み補正量を求める際に、撮像光学系１０４の焦点距離から並進移動量を求める必要はなく、中間ラインＬ５を０とした角度データをそのままＲＳ歪み補正量１２１２として用いる。
【０１１５】
上記の通り第３の実施形態によれば、撮像素子の指定された領域に含まれるライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適切に補正することができる。
【０１１６】
＜第４の実施形態＞
次に、本発明の第４の実施形態について説明する。第４の実施形態の撮像装置は、撮像素子１０７からの出力信号を高速に読み出すために複数の読み出しモードを設け、制御マイコン１０１の制御に基づき、選択された読み出しモードに応じてＲＳ歪み補正を行う点が第３の実施形態と異なる。それ以外は、第３の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【０１１７】
次に、第４の実施形態で撮像素子１０７に設けられた第０から第３の各読み出しモードにおけるＲＳ歪み補正量演算部１１３の処理内容について、図１３を用いて説明する。
【０１１８】
第０のモードは、第３の実施形態と同様に、垂直方向にのみ焦点検出の対象領域となる分割領域を設定し、領域内のラインからはａ信号と、ａ／ｂ合成信号をライン単位で順次読み出す。また、領域外のラインからはａ／ｂ合成信号のみを読み出す。
【０１１９】
第１のモードでは、焦点検出の対象領域を垂直方向の分割領域に対してだけでなく、水平方向にも設定する。図１３（ａ）は第１のモードに対するＲＳ歪み補正量演算部１１３の処理内容を示す例である。撮像素子１０７から読み出す画像データ１３００に対して、垂直方向に１０等分された分割領域のうち、分割領域１２０４と１２０５に焦点検出の対象領域１３０１が設定されると共に、領域１３０１内の水平方向に領域１３０２が設定される。即ち、領域１３０１に含まれるラインにおいて、領域１３０２に含まれる単位画素のみ、ａ信号と、ａ／ｂ合成信号がライン順次で読み出され、それ以外の領域の単位画素からはａ／ｂ合成信号のみが読み出される。ここでは一例として、領域１３０２は、画像データ１３００全体の水平サイズに対して、中心の１／２の領域とする。そのため、領域１３０１に含まれる各ラインの読み出し時間は、領域１３０１に含まれない各ラインと比べて３／２倍となる。
【０１２０】
また、第１のモードにおいては、信号処理部１０８はａ信号が読み出された単位画素についてのみ、ｂ信号を生成し、フォーカス評価部１１０はその領域内の被写体像の焦点ずれ量のみを算出する。焦点検出できる領域は狭くなるが、読み出し時間が短くなることで、発生するＲＳ歪みの度合いを抑えることができる。
【０１２１】
図１３（ａ）の左側に示すグラフは、図１２（ａ）と同様に、ＲＳ歪み補正量演算部１１３が生成したヨー方向の角度データで、１３５１は離散的な角度データＡ０〜Ａ６から算出された連続的な角度データである。右側のグラフも図１２（ａ）と同様で、１３５２はＲＳ歪み補正量演算部１１３が角度データ１３５１から算出した時間軸に対する連続的なＲＳ歪み補正量である。ここでも、中間ラインＬｍ＝Ｌｒ５を基準としてＲＳ歪み補正を行うものとする。ＲＳ歪み補正量演算部１１３はラインＬｒ０〜Ｌｒ１０におけるＲＳ歪み補正量を求め、制御マイコン１０１に通知する。前述の通り、他の８つの分割領域に比べて、分割領域１２０４と１２０５の２つの領域は時間軸方向に３／２倍の大きさとなることを考慮して、ラインＬｒ０〜Ｌｒ１０の時間軸上の位置を算出し、各位置におけるＲＳ歪み補正量を得る。通知を受けた制御マイコン１０１はＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する。
【０１２２】
図１３（ｂ）の右側に示すグラフは、図１３（ａ）の説明で得られたラインＬｒ０〜Ｌｒ１０のＲＳ歪み補正量を、画像メモリ１０９に格納された画像データ１３１０に対して示したものである。グラフのＲＳ歪み補正量１３５２の変化が、画像データ１３１０の被写体の歪み方と対応しており、時間軸で算出したＲＳ歪み補正量１３５２が、そのままライン位置に対するＲＳ歪み補正量１３５２として用いることができる。
【０１２３】
第２のモードでは、第０のモードと同様に、垂直方向の分割領域にのみ焦点検出の対象領域を設定する。第０のモードと異なるのは、焦点検出の対象領域において、ａ信号を周囲の画素同士で加算して読み出す点である。加算して読み出したａ信号をａ＋信号と呼ぶ。ａ＋信号は、図２で示した単位画素毎の回路から出力された後に、撮像素子１０７から出力されるまでの伝送路に組み込まれた不図示の加算回路によって、水平方向に隣接する単位画素毎に加算される。ここでは、水平方向に２画素ずつが加算され１画素として読み出されるものとする。このとき、撮像素子１０７から読み出した画像データは、焦点検出の対象領域におけるａ＋信号のデータサイズが、ａ／ｂ合成信号の１／２となる。そのため、領域１３０１に含まれる各ラインの読み出し時間は、領域１３０１に含まれない各ラインに比べて３／２倍となる。ここでは第１のモードと第２のモードで、領域１３０１に含まれる各ラインの読み出し時間の倍率が同じになっているので、第２のモードにおいても、ＲＳ歪み補正量演算部１１３の処理内容は、図１３（ａ）と図１３（ｂ）に示した通りとなる。
【０１２４】
第２のモードにおいては、信号処理部１０８は焦点検出の対象領域に対して、ａ／ｂ合成信号をａ＋信号と同じ組み合わせで水平方向に加算して、加算したｂ信号に相当するｂ＋信号の算出に用いる。フォーカス評価部１１０は加算により、水平方向の画素数が減ったａ信号、ｂ信号を用いて、被写体像の焦点ずれ量を算出する。水平方向の焦点ずれ量の検出精度は粗くなるが、読み出し時間が短くなることで、発生するＲＳ歪みの度合いを抑えることができる。
【０１２５】
第３のモードでは、第０のモードと同様に、垂直方向の分割領域にのみ焦点検出の対象領域を設定する。第０のモードと異なるのは、焦点検出の対象領域において、ａ信号を読み出すラインを、所定の間隔で間引く点である。例えば、領域１３０１でａ信号を読み出すラインを１／２ラインに間引く。ａ信号を読み出すラインの読み出し時間は他のラインの２倍となるため、領域１３０１全体では１ラインあたりの読み出し時間が３／２倍となる。ここでは第１、第２のモードと第３のモードで、領域１３０１に含まれる各ラインの読み出し時間の倍率が同じになっているので、第３のモードにおいても、ＲＳ歪み補正量演算部１１３の処理内容は、図１３（ａ）と図１３（ｂ）に示した通りとなる。
【０１２６】
第３のモードにおいては、信号処理部１０８はａ信号が読み出されたラインのみ、ｂ信号を算出し、フォーカス評価部１１０はａ信号、ｂ信号が得られたラインのみを用いて、被写体像の焦点ずれ量を算出する。垂直方向の焦点ずれ量の検出精度は粗くなるが、読み出し時間が短くなることで、発生するＲＳ歪みの度合いを抑えることができる。
【０１２７】
なお、ここでは説明を単純にするため、第１から第３のモードで被写体検出の対象領域から読み出すライン毎のデータサイズが、対象外の領域の３／２倍になる例で説明したが、３／２倍である必要はなく、それぞれが別の倍率になってもよい。即ち、水平領域のサイズを任意の割合で設けてもよいし、加算する画素数を別の単位にしてもよいし、間引きのライン数を別の値にしてもよい。また、ａ信号の読み出し時間を短くするため、ａ信号のビット精度を、ａ／ｂ合成信号に比べて減らすように動作させるよう構成してもよい。
【０１２８】
上記の通り第４の実施形態によれば、撮像素子の領域毎の読み出し時間が様々に異なる場合においても、撮像した画像データのローリングシャッター歪みを補正することができる。
【０１２９】
＜第５の実施形態＞
次に、本発明の第５の実施形態について説明する。第５の実施形態の撮像装置は、制御マイコン１０１がＲＳ歪み補正量演算部１１３に指示する角速度データの取得タイミングを、分割領域の電荷蓄積に同期させる点が第４の実施形態と異なる。それ以外は、第４の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【０１３０】
次に、図１４を用いて、第５の実施形態におけるＲＳ歪み補正量演算部１１３の処理内容について説明する。
【０１３１】
図１４（ａ）の左側に示すグラフは、図１３（ａ）と同様に、縦軸が時間、横軸がＲＳ歪み補正量演算部１１３が生成したヨー方向の角度データ１４５１であり、撮像素子１０７から画像データ１３００を読み出す期間に生じたヨー方向の振れの推移の例を示している。撮像素子１０７の撮像面を垂直方向に等間隔に１０分割した分割領域１２０１〜１２１０のうち、焦点検出の対象領域１３０１は、分割領域１２０４と１２０５に割り当てられている。
【０１３２】
第５の実施形態においては、制御マイコン１０１の指示に基づきＲＳ歪み補正量演算部１１３が角度データを取得するタイミングＴｓ０〜Ｔｓ１０を、分割領域の境界となるラインＬｒ０〜Ｌｒ１０の電荷蓄積タイミングに同期させる。即ち、タイミングＴｓ０は分割領域１２０１の先頭ライン、タイミングＴｓ１は分割領域１２０２の先頭ライン、タイミングＴｓ１０は分割領域１２１０の終端ラインと言ったように、各分割領域の電荷蓄積タイミングに対応している。ＲＳ歪み補正量演算部１１３はＴｓ０に同期して角速度データの積分を開始し、制御マイコン１０１から指示されたタイミングＴｓ０〜Ｔｓ１０において、角度データＡ０〜Ａ１０を生成する。
【０１３３】
図１４（ａ）の右側に示すグラフは、横軸がＲＳ歪み補正量演算部１１３が算出した水平方向のＲＳ歪み補正量１４５２である。第５の実施形態においても、中間ラインＬｍ＝Ｌｒ５を基準としてＲＳ歪み補正を行うものとする。ここでは、ＲＳ歪み補正量１４５２を求める対象のラインＬｒ０〜Ｌｒ１０について、角度データＡ０〜Ａ１０が得られているので、離散的な角度データから連続的な角度データを算出しなくても、それぞれから対応するＲＳ歪み補正量を直接算出することができる。即ち、ＲＳ歪み補正量演算部１１３はラインＬｒ０〜Ｌｒ１０の各角度データから中間ラインＬｒ５における角度データ、本図ではＡ５を減じることで、中間ラインで０となる各角度データを得る。その結果に対して、制御マイコン１０１から設定された撮像光学系１０４の焦点距離から、角度に対する撮像面上での被写体像の並進移動量を算出し、乗算することでラインＬｒ０〜Ｌｒ１０の各ＲＳ歪み補正量１４５２が得られる。第５の実施形態においても、ＲＳ歪み補正部１１４はラインＬｒ０〜Ｌｒ１０に対してＲＳ歪み補正量１４５２の設定を受けるものとし、ＲＳ歪み補正量１４５２の算出を通知された制御マイコン１０１は、ＲＳ歪み補正量１４５２をＲＳ歪み補正部１１４に設定する。
【０１３４】
上記の通り第５の実施形態によれば、撮像素子の領域毎に読み出し時間の長さが異なっていても、より簡便な演算処理で、撮像した画像データのローリングシャッター歪みを補正することができる。
【０１３５】
＜第６の実施形態＞
次に、本発明の第６の実施形態について説明する。第６の実施形態の撮像装置は、ＲＳ歪み補正量演算部１１３におけるＲＳ歪み補正量の求め方が第１の実施形態と異なる。それ以外は、第１の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【０１３６】
まず、図１５を用いて、第６の実施形態におけるＲＳ歪み補正量演算部１１３の処理内容について説明する。
【０１３７】
図１５（ａ）の左側に示すグラフは、縦軸が時間、横軸がＲＳ歪み補正量演算部１１３が生成したヨー方向の角度データであり、撮像素子１０７から画像データ３００を読み出す期間に撮像装置１００に生じたヨー方向の振れの推移の例を示している。タイミングＴｓ０は画像データ３００の先頭ラインの電荷蓄積タイミング、タイミングＴｓ６は画像データ３００の終端ラインの電荷蓄積タイミングに対応している。ＲＳ歪み補正量演算部１１３は、Ｔｓ０に同期して角速度データの積分を開始し、制御マイコン１０１から指示された所定間隔のタイミングＴｓ０〜Ｔｓ６において、角度データＡ０〜Ａ６を生成する。また、生成した離散的な角度データＡ０〜Ａ６から、線形補間や多項式近似、もしくは最小自乗法などの何れかの補間方法を用いて、時間軸に対する連続的な角度データ４０１を算出する。ここで、焦点検出の対象領域３０１の読み出し開始時間Ｔａの角度データをＡａ、読み出し終了時間Ｔｂの角度データをＡｂとする。
【０１３８】
また、図１５（ａ）の右側に示すグラフは、横軸が水平方向のＲＳ歪み補正量であり、１６０１はＲＳ歪み補正量演算部１１３が角度データ４０１から算出した時間軸に対する連続的なＲＳ歪み補正量である。Ｌｍは撮像素子１０７の中間ラインであり、第６の実施形態においては中間ラインＬｍを基準としてＲＳ歪み補正を行うものとする。まず、ＲＳ歪み補正量演算部１１３は角度データ４０１から中間ラインＬｍにおける角度データ、すなわち、図１５（ａ）では、左側のグラフに示したＡｍを減じることで、中間ラインで０となる角度データを得る。その結果に対して、制御マイコン１０１から設定された撮像光学系１０４の焦点距離から、角度に対する撮像面上での被写体像の並進移動量を算出し、乗算することで連続的なＲＳ歪み補正量１６０１が得られる。Ｌｒ０〜Ｌｒ１０は、制御マイコン１０１から指示されたＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する対象ラインである。制御マイコン１０１は、焦点検出の対象領域の位置と、ライン毎の読み出しにかかる時間を考慮して、撮像素子１０７から読み出す画像データ３００に対して、ラインＬｒ０〜Ｌｒ１０を時間軸上で等間隔に配置する。ＲＳ歪み補正量演算部１１３は、そのようにして求めたＲＳ歪み補正量１６０１から、ラインＬｒ０〜Ｌｒ１０のＲＳ歪み補正量を求め、制御マイコン１０１に通知する。通知を受けた制御マイコン１０１はＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する。
【０１３９】
図１５（ｂ）の右側に示すグラフは、図１５（ａ）の説明で得られたラインＬｒ０〜Ｌｒ１０のＲＳ歪み補正量１６０１を、画像メモリ１０９に格納された画像データ３１０に対して示したものである。制御マイコン１０１が時間基準で配置したラインＬｒ０〜Ｌｒ１０の位置が、図１５（ｂ）では画像メモリ１０９のライン位置基準の位置に移っている。焦点検出の対象領域３０１が図１５（ａ）に示した時間軸に比べて垂直方向に１／２となるので、領域３０１に包含されるラインＬｒ３〜Ｌｒ５の間隔は、ラインＬｒ０〜Ｌｒ２とラインＬｒ６〜ラインＬｒ１０の間隔の１／２となる。また、ラインＬｒ２〜Ｌｒ３と、ラインＬｒ５〜Ｌｒ６の間隔は、領域３０１とそれ以外の領域を跨ぐので、ラインＬｒ０〜Ｌｒ２とラインＬｒ６〜Ｌｒ１０の間隔の１／２から１倍の間となる。ＲＳ歪み補正量１６０２の変化が、画像データ３１０の被写体の歪み方と対応しており、時間軸で算出したＲＳ歪み補正量１６０１を、そのままライン位置に対するＲＳ歪み補正量１６０２として用いることができる。
【０１４０】
なお、ＲＳ歪み補正量演算部１１３はヨー方向と同様に、ピッチ方向、ロール方向についても角度データからＲＳ歪み補正量を算出して、制御マイコン１０１を介してＲＳ歪み補正部１１４に設定する。処理内容は概ねヨー方向と同様なので、ここでは説明を省略する。ただし、ロール方向については、角度データからＲＳ歪み補正量を求める際に、撮像光学系１０４の焦点距離から並進移動量を求める必要はなく、中間ラインＬmを０とした角度データをそのままＲＳ歪み補正量として用いる。
【０１４１】
また、撮像装置１００の動作シーケンスは、第１の実施形態において図６を参照して説明したものとほぼ同様であるが、Ｒｐ［  ］及びＣｒ［  ］で行われる処理が異なるため、この２つについて以下に説明する。
【０１４２】
Ｒｐ［  ］はＲＳ歪み補正量演算部１１３が生成した角度データから、ＲＳ歪み補正部１１４に設定するＲＳ歪み補正量を算出する期間を示している。ＲＳ歪み補正量演算部１１３は、Ｆ［  ］に対する角度データの生成期間Ｒａ［  ］が完了した後、制御マイコン１０１から設定された、ＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する対象ラインに対して、Ｒｐ［  ］の期間でＲＳ歪み補正量の算出を行う。
【０１４３】
また、Ｃｒ［  ］は制御マイコン１０１がＲＳ歪み補正の制御を行う期間を示す。ＲＳ歪み補正の制御では、一例として、ＲＳ歪み補正量演算部１１３がＲｐ［ｎ］でＲＳ歪み補正量を算出した通知を受け、Ｃｒ［ｎ］でＲＳ歪み補正量を取得し、ＲＳ歪み補正部１１４に設定する。また、ＲＳ歪み補正の制御では、ＡＥ処理とＡＦ処理の結果を用いて、ＲＳ歪み補正量演算部１１３に対して、次の垂直同期信号Ｖｓ［ｎ＋１］の後で開始されるＲａ［ｎ＋２］における角度データ取得のタイミングを設定する。さらに、ＲＳ歪み補正量演算部１１３とＲＳ歪み補正部１１４に対して、ＲＳ歪み補正量演算部１１３がＲｐ［ｎ＋２］、ＲＳ歪み補正部１１４がＦ［ｎ＋２］に対するＲＳ歪み補正で用いるＲＳ歪み補正量を設定する対象ラインの位置を設定する。ＲＳ歪み補正量を設定する対象ラインは、ＡＦ処理で決定された焦点検出の対象領域の位置を用いて、撮像素子１０７から読み出される画像データに対して、図１５で示したように時間軸上で等間隔になるよう配置される。なお、Ｃｒ［ｎ］で求めた前記対象ラインの位置は、Ｆ［ｎ＋２］に対するＲＳ歪み補正量演算部１１３の処理で用いられるため、ＲＳ歪み補正部１１４でＦ［ｎ＋２］に対する処理まで遅延してから用いられる。
【０１４４】
次に、図１６のフローチャートを用いて、撮像装置１００が画像データを１フレームずつ処理する際の、制御マイコン１０１の処理内容について説明する。なお、図１６に示す処理は、第１の実施形態で図７を参照して説明した処理と比較して、以下の点が異なる。即ち、図７では、Ｓ７０９でＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対してＲＳ歪み補正量演算部１１３が用いる焦点検出の対象領域を設定していた。これに対し、第６の実施形態では、Ｓ１６０９において、ＡＦ処理で決定された焦点検出の対象領域の位置を用いて、Ｆ［ｎ＋２］に対するＲＳ歪み補正量を設定する対象ラインを配置し、ＲＳ歪み補正量演算部１１３とＲＳ歪み補正部１１４に設定する。これ以外の処理は、図７を参照して説明した処理と同様であるので、説明を省略する。
【０１４５】
次に、図１７のフローチャートを用いて、第６の実施形態におけるＲｐ［  ］にあたるＲＳ歪み補正量の演算処理内容について説明する。図１７に示す処理は、図８（ａ）のＳ８０６により起動される。各ステップの処理対象となるフレームを明確にするため、ここではＲ［ｎ］を基準として説明する。
【０１４６】
Ｓ１７１０では、制御マイコン１０１に設定されたＲＳ歪み補正量を設定する対象ラインを取得する。前述のようにＣｒ［ｎ］でＦ［ｎ＋２］に対する対象ラインが設定されるので、Ｒｐ［ｎ］ではＣｒ［ｎ−２］で設定された内容を取得する。Ｓ１７１１では、Ｓ１７１０で取得したＲＳ歪み補正量を設定する対象ラインと、図８（ａ）で取得した角度データから、図１５を用いて説明したように、Ｆ［ｎ］に対するＲＳ歪み補正量を算出する。
【０１４７】
Ｓ１７１２では、ＲＳ歪み補正量の算出が完了したことを制御マイコン１０１に通知して、処理を終える。
【０１４８】
上記の通り第６の実施形態によれば、撮像素子のライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適切に補正することができる。
【０１４９】
＜第７の実施形態＞
次に、本発明の第７の実施形態について説明する。第７の実施形態は、上述した第６の実施形態と比較して、制御マイコン１０１による焦点検出の対象領域とそれ以外の領域の境界に、ＲＳ歪み補正量を設定する対象ラインの一部を配置する点が異なる。制御マイコン１０１がＲＳ歪み補正量を設定する対象ラインを配置する処理内容と、ＲＳ歪み補正量演算部１１３がＲＳ歪み補正量を算出する処理について、図１８を用いて説明する。
【０１５０】
図１８（ａ）に示す１８００は、撮像素子１０７から読み出した画像データで、図１８（ｂ）に示す１８１０は信号処理部１０８が画像データ１８００を処理して画像メモリ１０９に格納した画像データである。それぞれの画像データにおいて、１８０２は制御マイコン１０１が指示した焦点検出の対象領域、１８０１と１８０３は対象外の領域である。図１８に示す例では領域１８０１、１８０２、１８０３のライン数の比率は６：３：１１であるが、焦点検出の対象領域１８０２はライン毎の読み出し時間の長さが他の領域の２倍となるため、各領域の読み出し時間の比率は６：６：１１となっている。
【０１５１】
図１８（ａ）の左側に示すグラフは、縦軸が時間、横軸がＲＳ歪み補正量演算部１１３が生成したヨー方向の角度データで、撮像素子１０７から画像データ１８００を読み出す期間に撮像装置１００に生じたヨー方向の振れの推移の例を示している。タイミングＴｓ０〜Ｔｓ６は制御マイコン１０１から指示された角度データの取得タイミングで、Ａ０〜Ａ６は各タイミングでＲＳ歪み補正量演算部１１３が生成した角度データである。１８５１はＲＳ歪み補正量演算部１１３が離散的な角度データＡ０〜Ａ６から算出した連続的な角度データの推移である。
【０１５２】
図１８（ａ）の右側に示すグラフも、図１５（ａ）と同様に、横軸が水平方向のＲＳ歪み補正量である。１８５２はＲＳ歪み補正量演算部１１３が角度データ１８５１から算出した時間軸に対する連続的なＲＳ歪み補正量で、図１５（ａ）で説明した４０１から１６０１の算出と同様の処理で求めることができる。Ｌｒ０〜Ｌｒ１０は、制御マイコン１０１から指示されたＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する対象ラインである。ここで１９０１〜１９１０は、対象ラインＬｒ０〜Ｌｒ１０を境界として分割された１０個の分割領域である。分割領域１９０１〜１９１０は、後述する制御マイコン１０１の処理の説明に用いる。
【０１５３】
先頭の対象ラインＬｒ０と終端の先頭ラインＬｒ１０は、図１５（ａ）と同様に撮像素子１０７の先頭ラインＬ０と終端Ｌｅに予め割り当てられる。それ以外の対象ラインＬｒ１〜Ｌｒ９について、第７の実施形態では、制御マイコン１０１はまず、焦点検出の対象領域１８０２と非対象領域１８０１及び１８０３との境界に、対象ラインをひとつずつ割り当てる。そして、残りの対象ラインを時間軸上の各領域の大きさに応じて割り当てる。図１８（ａ）に示す例では、領域１８０１と１８０２、１８０２と１８０３の間にそれぞれ対象ラインＬｒ３、Ｌｒ５が割り当てられ、領域１８０１、１８０２、１８０３のそれぞれに、Ｌｒ１〜Ｌｒ２、Ｌｒ４、Ｌｒ６〜Ｌｒ９が割り当てられる。制御マイコン１０１による対象ラインの割り当て処理の詳細については後述する。ＲＳ歪み補正量演算部１１３は、ＲＳ歪み補正量１８５２からラインＬｒ０〜Ｌｒ１０のＲＳ歪み補正量を求め、制御マイコン１０１に通知する。通知を受けた制御マイコン１０１はＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する。
【０１５４】
図１８（ｂ）の右側に示すグラフは、図１８（ａ）の説明で得られたラインＬｒ０〜Ｌｒ１０のＲＳ歪み補正量を、画像メモリ１０９に格納された画像データ１８１０に対して示したものである。制御マイコン１０１が時間基準で配置したラインＬｒ０〜Ｌｒ１０の位置が、図１８（ｂ）では画像メモリ１０９のライン位置基準の位置に移っている。焦点検出の対象領域１８０２が図１８（ａ）に示した時間軸に比べて垂直方向に１／２となるので、領域１８０１に対するラインＬｒ３〜Ｌｒ５の間隔は、時間軸上での間隔に比べて１／２となる。グラフのＲＳ歪み補正量の変化が、画像データ１８１０の被写体の歪み方と対応しており、時間軸で算出したＲＳ歪み補正量が、そのままライン位置に対するＲＳ歪み補正量として用いることができる。また、焦点検出の対象領域１８０２と他の領域１８０１、１８０３との境界では、被写体の歪み方が不連続に変化するが、ＲＳ歪み補正量も境界部分で不連続に変化するため、被写体の歪み方に追従できている。
【０１５５】
なお、図１８の説明と同様に、ＲＳ歪み補正量演算部１１３はヨー方向と同様に、ピッチ方向、ロール方向についても角度データからＲＳ歪み補正量を算出して、制御マイコン１０１を介してＲＳ歪み補正部１１４に設定する。
【０１５６】
次に図１９のフローチャートを用いて、制御マイコン１０１がＲＳ歪み補正量を設定する対象ラインを割り当てる処理内容について説明する。本第７の実施形態において、撮像装置１００が画像データを１フレームずつ処理する際の、制御マイコン１０１の処理内容は、第６の実施形態において図１６を参照して説明したものと同様である。そして、制御マイコン１０１が図１６に示す処理を行う際に、Ｓ１６０９において、ＲＳ歪み補正量を設定する対象ラインを配置する際に行われる。
【０１５７】
ＲＳ歪み補正量を設定する対象ラインＬｒ０〜Ｌｒ１０のうち、先頭と終端の対象ラインＬｒ０とＬｒ１０は、図１８で説明したように、撮像素子１０７の先頭ラインＬ０と終端Ｌｅに予め割り当てられる。本フローチャートでは、画像データに対する１０個の分割領域１９０１〜１９１０の比率を調整し、焦点検出の対象領域と他の領域にそれぞれ割り当てることで、対象ラインＬｒ１〜Ｌｒ９の位置を決定する処理について説明する。なお、ここでは説明を単純にするため、画像データにおける焦点検出の対象領域と他の領域の合計が３つ以内であることを条件とする。例えば、図１８に示した例では、領域１８０１、１８０２、１８０３と３つ以内であるが、焦点検出の対象領域が２つで他の領域が１つでも、領域の合計が２つであってもよい。
【０１５８】
図１９において、Ｓ１９０１では、焦点検出の対象領域と他の領域の読み出し時間の比率に応じて、１０個の分割領域を割り当てる。具体的には分割領域の総数１０を各領域の比率に応じて除算し、四捨五入することで、各領域に割り当てる分割領域の数を決める。また、画像メモリに格納された際の、各領域に割り当てられた分割領域１個あたりの比率を求め、以降の処理に用いる。例えば、図１８（ａ）に示した画像データ９００の場合、領域１８０１、１８０２、１８０３の読み出し時間の長さの比率が６：６：１１であり、分割領域の割り当ては６０／２３：６０／２３：１１０／２３を四捨五入した３：３：５となる。各領域に割り当てられた分割領域１個あたりの大きさの比率は、領域１８０１、１８０２、１８０３に対して時間軸上では２３／３：２３／３：２３／５となる。画像メモリに格納された際には、焦点検出の対象領域１８０２の大きさが１／２となるため、分割領域１個あたりの大きさの比率は、２３／３：２３／６：２３／５となる。
【０１５９】
Ｓ１９０２では、Ｓ１９０１で各領域に割り当てた分割領域の数が総数１０を超過しているか判断する。超過している場合、Ｓ１９０３において、メモリに格納された際の分割領域１個あたりの比率が最小、即ちＲＳ歪み補正量を設定する対象ラインの刻み幅が細かい領域から、分割領域の割り当てを１つ減らして処理を終える。例えば、図１８（ａ）に示した画像データ１８００の場合、Ｓ１９０１で割り当てた分割領域が総数１０を超過しているため、比率が２３／６と最も小さい対象領域１８０２に割り当てた分割領域を１つ減らす。その結果、領域１８０１、１８０２、１８０３に対する分割領域の割り当ては、３：２：５となり総数は１０となる。分割領域の割り当てを減らす際に、画像メモリ１０９に格納される際の分割領域の大きさを基準とするのは、表示や記録など見た目への影響の大きさを考慮するためである。
【０１６０】
Ｓ１９０２で超過していない場合、Ｓ１９０４において、Ｓ１９０１で各領域に割り当てた分割領域の数が総数１０より不足しているか判断する。不足している場合、Ｓ１９０５において、焦点検出を行う対象領域以外の領域のなかで分割領域１個あたりの比率が最大、即ちＲＳ歪み補正量を設定する対象ラインの刻み幅が粗い領域に、分割領域の割り当てを１つ増やして処理を終える。
【０１６１】
この処理によって、画像データにおける分割領域１９０１〜１９１０の比率が決定され、ＲＳ歪み補正量を設定する対象ラインＬｒ０〜Ｌｒ１０の位置を決定することができる。
【０１６２】
上記の通り第７の実施形態によれば、撮像素子のライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適切に補正することができる。
【０１６３】
＜第８の実施形態＞
次に、本発明の第８の実施形態について説明する。図２０は、本発明の第８の実施形態における撮像装置１００’の構成を示すブロック図である。第１の実施形態で図１を参照して説明した撮像装置１００とは、図１のＲＳ歪み補正量演算部１１３の代わりに、角度データ生成部２０１３を有する点が異なる。これに伴い、処理が変更となる構成があるため、以下、角度データ生成部２０１３における処理と、これに伴う各構成における処理について説明する。
【０１６４】
角度データ生成部２０１３は、角速度センサ１１２から出力された角速度信号をＡ／Ｄ変換し、得られた角速度データを積分して、制御マイコン１０１の指示に基づくタイミング毎のヨー方向、ピッチ方向、ロール方向の角度データを生成する。また、角度データの生成完了時に制御マイコン１０１に通知を行う。
【０１６５】
ＲＳ歪み補正部１１４は、制御マイコン１０１が角度データから算出して設定したＲＳ歪み補正量に基づき、画像メモリ１０９の画像データを変形することで、ＲＳ歪みを補正して出力する。
【０１６６】
次に、図２１を用いて、角度データ生成部２０１３における角度データ生成処理と、制御マイコン１０１のＲＳ歪み補正量の算出処理について説明する。
【０１６７】
図２１（ａ）の左側に示すグラフは、縦軸が時間、横軸が角度データ生成部２０１３が生成したヨー方向の角度データであり、撮像素子１０７から画像データ３００を読み出す期間に撮像装置１００に生じたヨー方向の振れの推移の例を示している。タイミングＴｓ０は画像データ３００の先頭ラインの電荷蓄積タイミング、タイミングＴｓ６は画像データ３００の終端ラインの電荷蓄積タイミングに対応している。角度データ生成部２０１３はＴｓ０に同期して角速度データの積分を開始し、制御マイコン１０１から指示された所定間隔のタイミングＴｓ０〜Ｔｓ６において、角度データＡ０〜Ａ６を生成する。また、制御マイコン１０１は、角度データ生成部２０１３が生成した離散的な角度データＡ０〜Ａ６から、線形補間や多項式近似、もしくは最小自乗法などの何れかの補間方法を用いて、時間軸に対する連続的な角度データ２１０１を算出する。
【０１６８】
図２１（ａ）の右側に示すグラフは、横軸が水平方向のＲＳ歪み補正量であり、２１０２は制御マイコン１０１が角度データ２１０１から算出した時間軸に対する連続的なＲＳ歪み補正量である。Ｌｍは撮像素子１０７の中間ラインであり、第８の実施形態においては中間ラインＬｍを基準としてＲＳ歪み補正を行うものとする。まず、制御マイコン１０１は角度データ２１０１から中間ラインＬｍにおける角度データ、すなわち、図２１（ａ）では左側のグラフに示したＡｍを減じることで、中間ラインＬmで０となる角度データを得る。その結果に対して、撮像光学系１０４の焦点距離から、角度に対する撮像面上での被写体像の並進移動量を算出し、乗算することで連続的なＲＳ歪み補正量２１０２が得られる。Ｔｒ０〜Ｔｒ１０は、制御マイコン１０１がＲＳ歪み補正部１１４にＲＳ歪み補正量を設定する時間軸上の位置を示したもので、画像データ３００の先頭ラインＬ０から終端ラインＬｅまでの電荷蓄積期間に対して等間隔に配置されている。制御マイコン１０１は、ＲＳ歪み補正量２１０２からＴｒ０〜Ｔｒ１０のＲＳ歪み補正量Ｂｙ０〜Ｂｙ１０を求め、ＲＳ歪み補正部１１４に設定する。
【０１６９】
なお、角度データ生成部２０１３はヨー方向と同様に、ピッチ方向、ロール方向についても角度データを生成し、制御マイコン１０１は各方向のＲＳ歪み補正量を算出して、制御マイコン１０１を介してＲＳ歪み補正部１１４に設定する。処理内容は概ねヨー方向と同様なので、ここでは説明を省略する。ただし、ロール方向については、角度データからＲＳ歪み補正量を求める際に、撮像光学系１０４の焦点距離から並進移動量を求める必要はなく、中間ラインＬｍを０とした角度データをそのままＲＳ歪み補正量として用いる。
【０１７０】
次に図２２を用いて、ＲＳ歪み補正部１１４の処理内容について説明する。図２２は図２０で示したＲＳ歪み補正部１１４の内部の構成を示すブロック図である。図２０でも説明したように、制御バス１０２を介して制御マイコン１０１からＲＳ歪み補正の各種設定を受け、画像メモリ１０９の画像データを読み出してＲＳ歪み補正を行い、表示制御部１１５と記録制御部１１７に出力する。
【０１７１】
ＸＹカウンタ２２０１は、ＲＳ歪み補正部１１４から出力する画像データに対して、水平方向の画素位置を示すＸＯと、ライン位置を示すＹＯを、前画素を走査するようにカウントアップして出力する。制御マイコン１０１から画像データのサイズが設定され、水平方向の画素数までＸＯがカウントアップする毎にＸＯを０にリセットし、ＹＯをカウントアップする。また、ライン数までＹＯがカウントアップしたらリミッタをかける。ＸＹカウンタ２２０１から出力されるカウンタ信号には処理の有効無効を示すイネーブル信号が束ねられていて、リミッタがかかった場合は次に垂直同期信号によるリセットがかかるまで、イネーブル信号には無効が出力される。外部から供給される垂直同期信号により、ＸＯとＹＯは０にリセットされる。ただし、図２０および図２２では、垂直同期信号の発信源と分配経路は省略している。
【０１７２】
座標変換部２２０２は、ＸＹカウンタ２２０１から出力されたＸＯ、ＹＯに対して、制御マイコン１０１からの設定内容に基づいて座標変換を行い、ＸＩ、ＹＩを出力する。ＸＩ、ＹＩはＲＳ歪み補正部１１４が出力する画像データの画素位置ＸＯ、ＹＯに対する、画像メモリ１０９に格納された画像データの読み出し位置である。ＸＩ、ＹＩおよび座標変換部２２０２内部で処理されるカウンタ信号にもイネーブル信号が束ねられていて、ＸＹカウンタ２２０１から伝搬したイネーブル信号に基づき、内部の各ブロックの処理を稼働または停止させる。なお、座標変換部２２０２の内部構成については後述する。
【０１７３】
画像メモリ読み出し部２２０３は、座標変換部２２０２から出力されたＸＩ、ＹＩで指し示された読み出し位置を含む周辺領域を、画像メモリ１０９に格納された画像データから読み出す。画像メモリ１０９における読み出し位置を得るため、制御マイコン１０１から設定された画像メモリ１０９の画像データ格納位置やライン毎のオフセット位置を用いる。なお、画像メモリ１０９との間には、図２２で示すデータ信号以外に、一般的なメモリインターフェイスと同様にアドレス信号やリクエスト信号、読み出しイネーブル信号が存在するが、ここでは図示を省略している。
【０１７４】
画素補間フィルタ２２０４は、画像メモリ読み出し部２２０３が読み出した読み出し対象領域を内部メモリにバッファリングして、座標変換部２２０２から出力されたＸＩ、ＹＩの画素値を、周辺領域から画素補間フィルタで算出して出力する。画素補間フィルタとしては、線形補間やバイキュービック補間などの何れかの補間方法を用いる。
【０１７５】
次に図２２で示した座標変換部２２０２の内部構成を、図２３を合わせて用いて説明する。図２３はＲＳ歪み補正部１１４が出力する画像データの画素Ｐ１、Ｐ２、Ｐ３に対して、ＸＹカウンタ２２０１から出力されたカウンタ信号が、座標変換部２２０２の各内部ブロックでどのように座標変換されるかを示した例である。
【０１７６】
他の座標変換部２２１１は、ＲＳ歪み補正以外の座標変換を行う。ＲＳ歪み補正部１１４はＲＳ歪み補正と同時に、画像メモリ１０９に格納された画像データの読み出し位置を変更することで実現可能な画像処理を行うため、入力されたカウンタ信号ＸＯ、ＹＯを座標変換してＸｏ、Ｙｏｓを出力する。具体的には、撮像光学系１０４によって発生する歪曲収差の補正や、撮影された画像データのフレーム間で発生した並進振れ、回転振れ、あおり振れの補正を、制御マイコン１０１からの設定に基づいて行う。
【０１７７】
図２３（ａ）は他の座標変換部２２１１が出力した画素Ｐ１、Ｐ２、Ｐ３の座標（Ｘｏ１，Ｙｏｓ１）、（Ｘｏ２，Ｙｏｓ２）、（Ｘｏ３，Ｙｏｓ３）を示した図である。図２３（ａ）は横軸が水平方向の画素位置、縦軸が各ラインの位置であり、他の座標変換部２２１１による座標変換の影響を無視した場合の、ＲＳ歪みが生じる前の被写体像と同じ座標系である。ＲＳ歪み補正は、ＲＳ歪みが生じた画像データを本座標系に変換することで実現できる。図２３（ａ）の破線６０１はＲＳ歪み補正部１１４から出力する画像データの範囲である。出力範囲６０１を小さくしているのは、ＲＳ歪み補正により読み出し範囲が画像メモリ１０９に格納された画像データの範囲を超えないように、所定の倍率を設けているためである。制御マイコン１０１は、ＲＳ歪み補正部１１４の読み出し範囲が画像データの範囲を超えないように、所定量より大きい角度データがある場合は、全ラインのＲＳ歪み補正量を一定の割合で調整する。
【０１７８】
空間時間変換部２２１２は、ライン位置のカウンタ信号Ｙｏｓを空間軸から時間軸に変換してＹｏｔを出力する。ここで空間軸とは、撮像素子１０７の撮像面や、表示部１１６の表示面における当該ラインの空間上の位置を示す座標軸である。また、時間軸とは、撮像素子１０７において当該ラインの電荷蓄積や読み出しを行う時間を示す座標軸である。図２３（ｂ）は空間時間変換部２２１２が出力した画素Ｐ１、Ｐ２、Ｐ３のライン位置Ｙｏｔ１、Ｙｏｔ２、Ｙｏｔ３と、他の座標変換部２２１１が出力した水平方向の画素位置Ｘｏ１、Ｘｏ２、Ｘｏ３を示した図である。図２３（ｂ）は横軸が水平方向の画素位置、横軸は各ラインの電荷蓄積タイミングである。焦点検出の対象領域３０１でのライン毎の読み出し時間が２倍になることを反映して、各画素の電荷蓄積タイミングが算出されている。
【０１７９】
ラインテーブル２２１３は、ライン毎の電荷蓄積のタイミングを保持する。制御マイコン１０１は焦点検出の対象領域３０１ではライン毎の読み出し時間の長さが２倍になることを踏まえて、各ラインの電荷蓄積タイミングを算出してラインテーブルに設定する。ラインテーブルに格納されるデータの構成として、例えば、焦点検出の対象領域が存在しない場合を基準とした、電荷蓄積タイミングのずれ量をライン毎に格納する。図２３（ａ）に示す例では、Ｌ０〜Ｌａのずれ量は０、Ｌａ＋１〜Ｌｂではずれ量が１〜（Ｌｂ−Ｌａ）まで１ずつカウントアップし、Ｌｂ〜Ｌｅのずれ量は（Ｌｂ−Ｌａ）となる。ここでは、ずれ量の単位を、焦点検出の非対象領域で１ラインの読み出しにかかる時間としている。各ラインに対するずれ量のデータ格納サイズは、焦点検出の対象領域を最大で何ライン分設けるかによって定まり、例えば２５５本までであればライン毎に８ｂｉｔのデータ格納サイズを設ける。なお、焦点検出の対象領域の位置から、各ラインの電荷蓄積タイミングのずれ量を算出してラインテーブルに格納する処理は、制御マイコン１０１ではなくＲＳ歪み補正部１１４内部で行うよう構成してもよい。また、ここで例示したようなラインテーブル２２１３を持たなくても、空間軸と時間軸の変換を所望の処理時間内に実現できれば、他の構成であってもよい。第８の実施形態においては、空間時間変換部２２１２は、ラインテーブル２２１３を参照して、空間軸のカウンタ信号Ｙｏｓを時間軸のカウンタ信号Ｙｏｔに変換する。
【０１８０】
ＲＳ歪み座標変換部２２１４は、ＲＳ歪み補正の座標変換を行う。制御マイコン１０１に設定されたＴｒ０〜Ｔｒ１０に対する離散的なＲＳ歪み補正量を補間し、入力されたカウンタ信号Ｘｏ、Ｙｏｔを座標変換してＸｉ、Ｙｉｔを出力する。図２３（ｃ）は、ＲＳ歪み座標変換部２２１４が出力した画素Ｐ１、Ｐ２、Ｐ３の座標（Ｘｉ１，Ｙｉｔ１）、（Ｘｉ２，Ｙｉｔ２）、（Ｘｉ３，Ｙｉｔ３）と、設定されたＲＳ歪み補正量を示した図である。図２３（ｃ）の右の図において、横軸は水平方向の画素位置、横軸は各ラインの電荷蓄積タイミングであり、撮像素子１０７から読み出された時間軸の画像データと同じ座標系である。
【０１８１】
時間空間変換部２２１５は、ライン位置のカウンタ信号Ｙｉｔを時間軸から空間軸に変換してＹｉｓを出力する。図２３（ｄ）は時間空間変換部２２１５が出力した画素Ｐ１、Ｐ２、Ｐ３のライン位置Ｙｉｓ１、Ｙｉｓ２、Ｙｉｓ３と、ＲＳ歪み座標変換部２２１４が出力した水平方向の画素位置Ｘｉ１、Ｘｉ２、Ｘｉ３を示した図である。図２３（ｄ）は横軸が水平方向の画素位置、縦軸が各ラインの位置であり、画像メモリ１０９に格納された画像データと同じ座標系である。図２３（ｄ）は画像メモリ１０９に格納された画像データの全範囲を示しており、座標変換された出力範囲６０１は画像データの範囲内に収まっている。ＲＳ歪み補正部１１４がこの範囲で画像データの各画素を読み出すことで、ＲＳ歪み補正が実現される。時間空間変換部２２１５は、ラインテーブル２２１３を参照して、時間軸のカウンタ信号Ｙｉｔを時間軸のカウンタ信号Ｙｉｓに変換する。この変換を行うため、ラインテーブル２２１３には、前述したライン位置に対する読み出し時間のずれ量とは逆の、読み出し時間に対するライン位置のずれ量を合わせ持つ。なお、ここでは説明を単純にするため、ラインテーブル２２１３を単純な構成で説明しているが、時間軸と空間軸の変換を所望の処理時間内に実現できれば、他の構成であってもよい。
【０１８２】
次に、図２４を用いて、ＲＳ歪み座標変換部２２１４の座標変換によって、ヨー方向、ピッチ方向、ロール方向それぞれのＲＳ歪みが補正される一般的な処理の様子について説明する。図２４（ａ）、（ｂ）、（ｃ）は、それぞれヨー方向、ピッチ方向、ロール方向のＲＳ歪み補正前の画像データ、図２４（ｄ）は補正後の画像データを示している。
【０１８３】
図２４（ａ）の２４００は画像メモリ１０９に格納された画像データ全範囲を示している。画像データ２４００の被写体は、撮像装置にヨー方向の振れが加わってＲＳ歪みが生じたことにより、斜めに歪んで撮像されている。
【０１８４】
左側のグラフは、縦軸が画像データの各ライン、横軸がヨー方向のＲＳ歪み補正量であり、Ｔｒ０〜Ｔｒ１０は図２１の説明で述べたように、制御マイコン１０１がＲＳ歪み補正量をＲＳ歪み補正部１１４に設定する対象ラインの時間軸上の位置である。Ｂｙ０〜Ｂｙ１０はＴｒ０〜Ｔｒ１０におけるヨー方向のＲＳ歪み補正量を示している。ＲＳ歪み座標変換部２２１４は、離散的なＲＳ歪み補正量Ｂｙ０〜Ｂｙ１０から、線形補間などの補間方法を用いて、画像データ２４００の各ラインに対するＲＳ歪み補正量２４２０を算出し、各画素位置の座標変換を行う。
【０１８５】
ＲＳ歪み座標変換部２２１４の座標変換の結果、ＲＳ歪み補正部１１４は水平方向の読み出し開始位置をライン毎に変更し、画像データ２４００から出力範囲２４１０の範囲を出力することで水平方向のＲＳ歪みを補正する。このようにＲＳ歪み補正を行うことで、図２４（ｄ）に示す画像データ２４０４の出力範囲２４１４が出力される。なお、図２１を用いて説明したように、ＲＳ歪み補正量は中間ラインＬｍで０となるように補正を行うため、中間ラインＬｍにおけるＲＳ歪み補正量は０となり、画像データ２４００と画像データ２４０４の中心位置は変わらない。
【０１８６】
図２４（ｂ）の２４０１は画像メモリ１０９に格納された画像データ全範囲を示している。画像データ２４０１の被写体は、撮像装置にピッチ方向の振れが加わってＲＳ歪みが生じたことにより、垂直方向に引き延ばされるように歪んで撮像されている。なお、振れの方向が逆であれば、垂直方向に縮むように歪んで撮像されることになる。
【０１８７】
左側のグラフは、縦軸が画像データの各ライン、横軸がピッチ方向のＲＳ歪み補正量であり、Ｂｐ０〜Ｂｐ１０はＴｒ０〜Ｔｒ１１におけるピッチ方向のＲＳ歪み補正量を示している。ＲＳ歪み座標変換部２２１４は前述したように、画像データ２４０１の各ラインに対するＲＳ歪み補正量２４２１を算出し、各画素位置の座標変換を行う。
【０１８８】
ＲＳ歪み補正変換部５１４の座標変換の結果、ＲＳ歪み補正部１１４は垂直方向の読み出し位置をライン毎に上下にずらして変更し、画像データ２４０１から出力範囲２４１１の範囲を出力することで、垂直方向のＲＳ歪みを補正する。このようにＲＳ歪み補正を行うことで、図２４（ｄ）に示す画像データ２４０４の出力範囲２４１４が出力される。なお、中間ラインＬｍにおけるＲＳ歪み補正量は０となるので、画像データ２４０１と画像データ２４０４の中心位置は変わらない。
【０１８９】
図２４（ｃ）の２４０２は画像メモリ１０９に格納された画像データ全範囲を示している。画像データ２４０２の被写体は、撮像装置にロール方向の振れが加わってＲＳ歪みが生じたことにより、扇状に歪んで撮像されている。
【０１９０】
左側のグラフは、縦軸が画像データの各ライン、横軸がロール方向のＲＳ歪み補正量であり、Ｂｒ０〜Ｂｒ１０はＴｒ０〜Ｔｒ１１におけるロール方向のＲＳ歪み補正量を示している。ＲＳ歪み座標変換部２２１４は前述したように、画像データ２４０２の各ラインに対するＲＳ歪み補正量２４２２を算出し、各画素位置の座標変換を行う。
【０１９１】
ＲＳ歪み補正変換部５１４の座標変換の結果、ＲＳ歪み補正部１１４は、画像中心を原点として、各ラインの読み出し位置を回転させ、画像データ２４０２から出力範囲２４１２の範囲を出力することで、ロール方向のＲＳ歪みを補正する。このようにＲＳ歪み補正を行うことで、図２４（ｄ）に示す画像データ２４０４の出力範囲２４１４が出力される。なお、中間ラインＬｍにおけるＲＳ歪み補正量は０となるので、画像データ２４０２と画像データ２４０４の中心位置は変わらない。
【０１９２】
なお、ここでは水平・垂直・回転方向のＲＳ歪み補正を別々に説明したが、実際にはひとつの画像データに対して、ヨー・ピッチ・ロール方向の揺れによるＲＳ歪みが組み合わさった状態となる。ＲＳ歪み座標変換部２２１４は各画素位置のライン位置に対して、水平・垂直・回転方向のＲＳ歪み補正量を組み合わせて座標変換を行うことで、ＲＳ歪み補正部１１４は一度にそれらのＲＳ歪み補正を行い、補正後の画像データを出力することができる。
【０１９３】
撮像装置１００の動作シーケンスは、第１の実施形態において図６を参照して説明したものとほぼ同様であるが、Ｆ［  ］において、後述する角度データ生成部２０１３の角度データ取得は、この電荷蓄積期間の時間軸上の中心に同期して行われる点、及びＲａ［  ］、Ｃｒ［  ］、Ｃｓ［  ］で行われる処理が異なる。以下に、Ｒａ［  ］、Ｃｒ［  ］、Ｃｓ［  ］について説明する。
【０１９４】
Ｒａ［  ］は角度データ生成部２０１３が角度データを生成する期間を示している。角度データ生成部２０１３は、Ｆ［  ］に対して一点鎖線で示した各ラインの電荷蓄積期間の時間軸上の中心に同期して、制御マイコン１０１の指示に基づく所定間隔のタイミングで角度データを生成する。各フレームにおいて、Ｒａ［  ］の期間内に、図２１（ａ）で説明した等間隔のタイミングＴｓ０〜Ｔｓ６が設けられ、各タイミングでＦ［  ］に対する角度データＡ０〜Ａ６が生成される。
【０１９５】
Ｃｒ［  ］は制御マイコン１０１がＲＳ歪み補正の制御を行う期間を示す。ＲＳ歪み補正の制御では、一例として、角度データ生成部２０１３がＲａ［ｎ］で角度データを生成した通知を受け、Ｃｒ［ｎ］で前記角度データからＲＳ歪み補正部１１４に設定するＲＳ歪み補正量を算出する。ＲＳ歪み補正量を算出する対象ラインは、Ｃｅ［ｎ−２］のＡＦ処理で決定された焦点検出の対象領域の位置を用いて、撮像素子１０７から読み出される画像データに対して、図２１で示したように時間軸上で等間隔になるよう配置する。なお、Ｃｅ［ｎ］ではなくＣｅ［ｎ−２］の結果を用いるのは、後述する撮像素子１０７の制御において、Ｃｓ［ｎ］でＣｅ［ｎ］の結果を用いてＦ［ｎ＋２］の焦点検出の対象領域を設定するため、２フレーム分の位相差を要するためである。算出したＲＳ歪み補正量は、対象ラインの位置とともにＲＳ歪み補正部１１４に設定する。また、ＲＳ歪み補正の制御では、Ｃｅ［ｎ］のＡＥ処理とＡＦ処理の結果を用いて、角度データ生成部２０１３に対して、次の垂直同期信号Ｖｓ［ｎ＋１］の後で開始されるＲａ［ｎ＋２］における角度データ取得のタイミングを設定する。
【０１９６】
Ｃｓ［  ］は制御マイコン１０１が撮像素子１０７の制御を行う期間を示す。一例として、垂直ブランキングＶｂ［ｎ］の通知を受け、Ｃｓ［ｎ］でＣｅ［ｎ］のＡＥ処理とＡＦ処理の結果を用いて、撮像素子１０７に対して、次の垂直同期信号Ｖｓ［ｎ＋１］の後に電荷蓄積を開始するＦ［ｎ＋２］の電荷蓄積開始タイミングと、焦点検出の対象領域を設定する。
【０１９７】
次に、図２５のフローチャートを用いて、撮像装置１００が画像データを１フレームずつ処理する際の、制御マイコン１０１の処理内容について説明する。処理内容は図６で説明した制御マイコンの制御期間Ｃｅ［  ］、Ｃｒ［  ］、Ｃｓ［  ］と対応している。
【０１９８】
Ｓ９０１において、垂直同期信号を待ち、垂直同期信号を受け取ると、Ｓ９０２に進む。Ｓ９０２からＳ９０５の処理内容は、図６で示したＣｅ［  ］にあたるフレーム処理である。各ステップの処理対象となるフレームを明確にするため、ここではＣｅ［ｎ］を基準として説明する。
【０１９９】
Ｓ９０２では、Ｆ［ｎ−２］の被写体検出の結果を利用し、前述した主被写体判定を行う。Ｓ９０３では、Ｆ［ｎ−１］の露出評価の結果と、Ｓ９０２の主被写体判定の結果を利用し、前述したＡＥ処理を行う。Ｓ９０４では、Ｆ［ｎ−１］の被写体ずれ量と、Ｓ９０２の主被写体判定の結果を利用し、前述したＡＦ処理を行う。
【０２００】
Ｓ９０５では、Ｆ［ｎ＋１］の画像メモリ１０９への書き込みＷ［ｎ＋１］と、Ｆ［ｎ］の画像メモリ１０９からの読み出しＲ［ｎ］に対して、前述したメモリバンク制御を行う。
【０２０１】
Ｓ９０６では、角度データ生成部２０１３からの角度データの生成完了の通知を待つ。Ｃｅ［ｎ］の処理直後であれば、対応するＲａ［ｎ］の完了を待つ。
【０２０２】
Ｓ９０７からＳ９１０の処理内容は、図６で示したＣｒ［  ］にあたるＲＳ歪み補正の制御である。ここでは、前述したＣｅ［ｎ］、Ｒａ［ｎ］に対応するＣｒ［ｎ］を基準として説明する。
【０２０３】
Ｓ９０７では、角度データ生成部２０１３がＲａ［ｎ］で生成したＦ［ｎ］の角度データを取得する。
【０２０４】
Ｓ９０８では、Ｃｒ［ｎ］に対してＣｅ［ｎ−２］の、即ち２フレーム前のＡＦ処理で決定された焦点検出の対象領域の位置を用いて、ＲＳ歪み補正量を算出する対象ラインを配置する。配置した対象ラインに対して、Ｓ９０７で取得した角度データからＲＳ歪み補正量を算出し、対象ラインの位置とともにＲＳ歪み補正部１１４に設定する。
【０２０５】
Ｓ９０９では、２フレーム前のＡＦ処理で決定された焦点検出の対象領域の位置を用いて、ライン毎の電荷蓄積タイミングのずれ量を算出し、ＲＳ歪み補正部１１４のラインテーブル２２１３に設定する。
【０２０６】
Ｓ９１０では、２フレーム前のＡＥ処理とＡＦ処理の結果を用いて、角度データ生成部２０１３に角度データの取得タイミングを設定する。
【０２０７】
Ｓ９１１では、垂直ブランキングの通知を待ち、垂直ブランキングを受け取ると、Ｓ９１２に進む。Ｓ９１２とＳ９１３の処理内容は、図６で示したＣｓ［  ］にあたる撮像素子１０７の制御である。
【０２０８】
Ｓ９１２では、直前のＡＥ処理とＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対する撮像素子１０７の電荷蓄積開始タイミングを設定する。Ｓ９１３では、直前のＡＦ処理の結果を用いて、Ｆ［ｎ＋２］に対する撮像素子１０７の焦点検出の対象領域を設定して、Ｓ９０１に戻る。
【０２０９】
上記の通り第８の実施形態によれば、撮像素子のライン毎の読み出し時間の長さが異なっていても、撮像した画像データのローリングシャッター歪みを適切に補正することができる。
【０２１０】
なお、第８の実施形態の説明において、説明を単純にするため、焦点検出の対象領域を垂直方向に１箇所にまとめて設けた例を示したが、ライン単位で分散させて配置させても良いし、その配置に規則性がなくてもよい。配置に規則性がない場合、制御マイコン１０１がＲＳ歪み補正部１１４に設定する離散的なＲＳ歪み補正量の粒度を細かくするほど、ＲＳ歪み補正部１１４が算出するライン毎のＲＳ歪み補正量は正確になる。ただし、撮像素子１０７の各ラインの読み出し時間のタイミングの差が、振れ量に対して相当に大きくなければ、第８の実施形態に示した程度の粒度で設定しても、十分な補正効果を得ることはできる。
【０２１１】
＜第９の実施形態＞
次に、本発明の第９の実施形態について説明する。第９の実施形態の撮像装置は、撮像素子１０７からの出力信号を高速に読み出すために複数の読み出しモードを設け、制御マイコン１０１の制御に基づき、選択された読み出しモードに応じてＲＳ歪み補正を行う点が第８の実施形態と異なる。また、本第９の実施形態では、複数の読み出しモードとして、第２の実施形態で図９を参照して説明した第０から第３の各読み出しモードを適用する。それ以外は、第８の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【０２１２】
第９の実施形態において、制御マイコン１０１は、第０のモードでは焦点検出の対象ラインの読み出しにかかる時間が他の領域の２倍であるのに対して、第１と第２のモードでは４／３倍であることを考慮してＲＳ歪み補正の制御を行う。具体的には、角度データ生成部２０１３に指示する角度データ生成タイミングＴｓ０〜Ｔｓ６と、ＲＳ歪み補正部１１４に設定するＲＳ歪み補正量の設定対象ラインの時間軸上の位置Ｔｒ０〜Ｔｒ１０をモードに応じて算出する。
【０２１３】
また、ＲＳ歪み補正部１１４のラインテーブル２２１３に格納する各ラインの電荷蓄積タイミングのずれ量の扱い方を、モードに応じて変更する。具体的には、第１と第２のモードでは、焦点検出の非対象領域のライン毎の読み出しにかかる時間の単位を３とすることで、焦点検出の対象領域のライン毎のずれ量を１とする。本図の例では、Ｌ０〜Ｌａのずれ量は０、Ｌａ＋１〜Ｌｂではずれ量が１〜（Ｌｂ−Ｌａ）まで１ずつカウントアップし、Ｌｂ〜Ｌｅのずれ量は（Ｌｂ−Ｌａ）となる。空間時間変換部２２１２と時間空間変換部２２１５は、ラインテーブル２２１３から得たずれ量を１／３倍して、ライン位置のカウンタ信号の座標変換を行う。
【０２１４】
なお、ここでは説明を単純にするため、第１と第２のモードで被写体検出の対象領域から読み出すライン毎のデータサイズが、対象外の領域の４／３倍になる例で説明したが、４／３倍である必要はないし、それぞれが別の倍率になってもよい。即ち、水平領域のサイズを任意の割合で設けてもよいし、加算する画素数を別の単位にしてもよいし、間引きのライン数を別の値にしてもよい。また、ａ信号の読み出し時間を短くするため、ａ信号のビット精度を、ａ／ｂ合成信号に比べて減らすように動作させるよう構成してもよい。また、焦点検出の対象領域をライン毎に分散させてもよい。
【０２１５】
＜第１０の実施形態＞
次に、本発明の第１０の実施形態について説明する。第１０の実施形態の撮像装置１００’は、ＲＳ歪み補正部１１４のラインテーブルの容量を抑制するため、焦点検出の対象領域の配置に制約を設ける点が第８の実施形態と異なる。それ以外は、第８の実施形態において説明したものと同様であるため、ここでは相違点についてのみ説明する。
【０２１６】
第１０の実施形態における焦点検出の対象領域の配置について、図２６を用いて説明する。
【０２１７】
図２６は撮像素子１０７から読み出した画像データ２６００と、信号処理部１０８が画像データ２６００を処理して画像メモリ１０９に格納した画像データ２６１１を、撮像された被写体４００と共に示した例である。第１０の実施形態においては、制御マイコン１０１は撮像素子１０７の撮像面を垂直方向に２のＮ乗のライン数毎に分割し、分割領域単位で被写体検出の対象領域を指定する。Ｎは自然数であって、撮像素子１０７から読み出す画像データのライン数に応じて、予め定めた固定値である。例えばＮ＝７の場合は、１２８ライン毎に分割領域を設ける。焦点検出の対象領域となった分割領域では、全ラインで焦点検出を行い、ライン毎の読み出し時間が２倍になるものとする。ここで、撮像素子１０７から読み出された画像データ２６００の焦点検出の対象領域２６３１は、分割領域２６０１〜２６１０まで１０分割された分割領域のうち、分割領域２６０４と２６０５に割り当てられている。分割領域２６０４と２６０５は他の領域に比べてライン毎の読み出し時間が２倍であるため、時間軸方向に２倍の大きさで描かれており、被写体の歪み方も異なっている。画像メモリ１０９に格納された画像データ２６１１においては、ライン数に基づく分割領域２６０４と２６０５の垂直方向の長さは他の領域と同一になっているが、他の領域と比べて被写体の歪み方は異なっている。
【０２１８】
このように焦点検出の対象領域の配置に制約を設けることで、ＲＳ歪み補正部１１４のラインテーブル２２１３の容量を小さくすることができる。具体的には、焦点検出領域が全くない場合に対して、各分割領域の先頭ラインでの電荷蓄積タイミングが、どれだけのずれ量かを、２のＮ乗のライン数を１としてラインテーブル２２１３に格納する。例えば図２６の場合、ラインテーブル２２１３に設定される先頭ラインのずれ量は、分割領域２６０１〜２６０４は０、分割領域２６０５は１、分割領域２６０６〜２６１０は２となる。また、各分割領域内でライン毎に増えるずれ増加量を、焦点検出の非対象ラインの読み出し時間の長さを１としてラインテーブル２２１３に格納する。焦点検出の対象領域となった分割領域では１、それ以外の分割領域では０となるため、ライン毎のずれ増加量は、分割領域２６０１〜２６０３は０、分割領域２６０４〜２６０５は１、分割領域２６０６〜２６１０は０となる。
【０２１９】
空間時間変換部２２１２は入力されたライン位置のカウンタ信号Ｙｏｓの値を、２のＮ乗で除することで、ラインテーブル２２１３に格納された何番目の分割領域のずれ量と、ライン毎のずれ増加量を用いれば良いかが分かる。例えばＮ＝７で、Ｙｏｓ＝１０００が入力された場合、ＩＮＴ（１０００÷１２８）＋１＝８番目の分割領域２６０８を用いて、ＹｏｓをＹｏｔに座標変換することができる。なお、ＩＮＴ（  ）は小数点以下を切り捨てる関数である。
【０２２０】
時間空間変換部２２１５でも、入力されたライン位置のカウンタ信号Ｙｉｔの値を、２のＮ乗で除して用いる。ただし、分割領域２６０４と２６０５は時間軸上での大きさが２倍となっているため、そのままではラインテーブル２２１３に格納された何番目の分割領域のずれ量と、ライン毎のずれ増加量を用いればよいかが分からない。例えばＮ＝７で、分割領域２６０４と２６０５の時間軸上のライン数が２倍の２５６ラインとなっている場合、Ｙｉｔ＝１２５６であれば、ＩＮＴ（１２５６÷１２８）＋１＝１０となる。しかしながら、実際には分割領域２６１０ではなく、分割領域２６０８を用いることが期待される。そのため、焦点検出の対象領域である各分割領域を２つ分に増やした形で、分割領域単位のずれ量を含めてラインテーブル２２１３に格納することで、１０番目に分割領域２６０８の値が格納されるようにする。例えば図２６の場合、分割領域２６０４を分割領域２６０４Ａと分割領域２６０４Ｂ、分割領域２６０５を分割領域２６０５Ａと分割領域２６０５Ｂとして、１２の分割領域に対する先頭ラインのずれ量とライン毎のずれ増加量を格納する。先頭ラインのずれ量は、分割領域２６０１〜２６０３と２６０４Ａは０、分割領域２６０４Ｂは−０．５、分割領域２６０５Ａは−１、分割領域２６０５Ｂは−１．５、分割領域２６０６〜分割領域２６１０は−２となる。また、ライン毎のずれ量は、分割領域２６０１〜２６０３は０、分割領域２６０４Ａ〜分割領域２６０５Ｂは−０．５、分割領域２６０６〜２６１０は０となる。このように時間基準のデータも合わせて格納しておくことで、時間空間変換部２２１５も、容易にＹｉｔをＹｉｓに座標変換することができる。
【０２２１】
なお、第１乃至第１０の実施形態の説明において、説明を単純にするため、焦点検出の対象領域（ライン）を垂直方向に１箇所だけ設けた例を示したが、複数箇所を対象領域としてもよい。その場合、それぞれの領域を撮像素子１０７とＲＳ歪み補正量演算部１１３に設定することで、複数箇所の焦点検出と、それに適したＲＳ歪み補正量の算出を行うことができる。
【０２２２】
なお、撮像素子に設定する焦点検出の対象領域として、複数の領域を設けた場合、それぞれの領域をＲＳ歪み補正量演算部１１３に設定して、それらを用いてＲＳ歪み補正量を求めれば、同様の効果を得ることができる。
【０２２３】
また、上述した第１乃至第１０の実施形態では、撮像素子の単位画素が副画素ａ、ｂで構成された場合について説明しているが、副画素の構成が異なる場合であっても良い。例えば、水平方向と垂直方向に焦点検出が可能なように、単位画素に１つのマイクロレンズと田の字状に配置された４つのフォトダイオードを備え、焦点検出の対象領域では個々のフォトダイオードの画素信号を読み出すような構成が考えられる。この場合、焦点検出の対象領域では、４倍の読み出し時間がかかるが、各ラインの読み出しにかかる時間の長さを考慮して、ＲＳ歪み補正量演算部がＲＳ歪み補正量を算出することで、前述した効果を得ることができる。
【０２２４】
また、複数の領域に対して、それぞれ異なる読み出しモードを用い、ライン毎の読み出し時間が異なっていても、それらの設定内容を用いてＲＳ歪み補正量を求めれば良い。
【０２２５】
＜他の実施形態＞
なお、本発明は、複数の機器から構成されるシステムに適用しても、一つの機器からなる装置に適用してもよい。
【０２２６】
また、本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０２２７】
１０１：制御マイコン、１０７：撮像素子、１０８：信号制御部、１０９：画像メモリ、１１２：角速度センサ、１１３：ＲＳ歪み補正量演算部、１１４：ＲＳ歪み補正部
【図１】
2018033100.tif 000003
【図２】
2018033100.tif 000004
【図３】
2018033100.tif 000005
【図４】
2018033100.tif 000006
【図５】
2018033100.tif 000007
【図６】
2018033100.tif 000008
【図７】
2018033100.tif 000009
【図８】
2018033100.tif 000010
【図９】
2018033100.tif 000011
【図１０】
2018033100.tif 000012
【図１１】
2018033100.tif 000013
【図１２】
2018033100.tif 000014
【図１３】
2018033100.tif 000015
【図１４】
2018033100.tif 000016
【図１５】
2018033100.tif 000017
【図１６】
2018033100.tif 000018
【図１７】
2018033100.tif 000019
【図１８】
2018033100.tif 000020
【図１９】
2018033100.tif 000021
【図２０】
2018033100.tif 000022
【図２１】
2018033100.tif 000023
【図２２】
2018033100.tif 000024
【図２３】
2018033100.tif 000025
【図２４】
2018033100.tif 000026
【図２５】
2018033100.tif 000027
【図２６】
2018033100.tif 000028
【図２７】
2018033100.tif 000029
【図２８】
2018033100.tif 000030