本発明の実施の形態について図面を用いて以下に説明する。なお、本発明は以下の実施形態に限定されるものではなく、適宜変更可能である。
[第1実施形態]
第1実施形態による撮像装置及び撮像方法について図1乃至図12を用いて説明する。図1は、本実施形態による撮像装置を示すブロック図である。ここでは、本実施形態による撮像装置100がデジタルカメラである場合を例に説明するが、これに限定されるものではない。制御部101は、例えばCPU(Cenral Processing Unit)である。制御部101は、撮像装置100の各構成要素を動作させるためのプログラムをROM102から読み出し、当該プログラムをRAM103に展開して実行することにより、撮像装置100の各構成要素の動作を制御する。ROM102は、不揮発性メモリである。ROM102には、上述したように、撮像装置100の各構成要素を動作させるためのプログラムが記憶されている。ROM102は、撮像装置100の各構成要素を動作させる際に必要とされるパラメータ等を更に記憶する。RAM103は、書き換え可能な揮発性メモリである。RAM103には、撮像装置100の各構成要素から出力されるデータが一時的に格納される。
撮像光学系104は、被写体像の光学像を撮像素子105の撮像面に結像する。撮像素子105は、例えばCCDセンサ、CMOSセンサ等である。撮像素子105は、撮像光学系104によって撮像面に結像された光学像を光電変換し、光電変換により得られたアナログ画像信号をA/D変換部106に出力する。A/D変換部106は、撮像素子105から供給されるアナログの画像信号に対してA/D変換処理を施し、デジタルの画像データを生成する。こうして生成されるデジタルの画像データは、RAM103に格納される。
画像処理部107は、画像データをRAM103から読み出し、画像データに対して、ホワイトバランス調整、色補間、縮小/拡大、フィルタリング等の様々な画像処理を施す。画像処理部107は、画像処理が施された画像データをRAM103に格納する。画像処理部107は、間引き処理が施された画像信号を用いて所定の情報を生成する情報生成手段として機能し得る。かかる所定の情報は、デフォーカス量等の距離に関する情報である。
記録媒体108は、着脱可能なメモリカード等である。A/D変換部106によってA/D変換が施された画像データ、画像処理部107によって画像処理が施された画像データ等が、記録媒体108に記録される。
図2は、画素の配置の例を示す平面図である。撮像素子105の撮像面には、多数の画素200が配された画素アレイ202が備えられている。図2には、多数の画素200のうちの48個の画素200が抜き出して示されている。図2に示すように、撮像素子105の撮像面には、画素200が2次元状、即ち、行列状に複数配列されている。各々の画素200上には、R(Red)、G(Green)、B(Blue)のカラーフィルタが例えばベイヤー配列で配置されている。ベイヤー配列された4つの画素200によって単位画素203が構成されている。各々の画素200内には、副画素(分割画素)aと、副画素bとがそれぞれ配置されている。副画素a、bには、フォトダイオード(光電変換部)201a,201bがそれぞれ備えられている。副画素a、bからの各々の出力信号は、後述するように互いに視差を有している。なお、副画素bの出力信号の値は、例えば、副画素a,bの出力信号の加算値から副画素aの出力信号の値を減算することによって算出され得る。なお、ここでは、1つの画素200が2つの副画素a,bによって構成されている場合、即ち、1つの画素200が2つに分割されている場合を例に説明したが、これに限定されるものではない。1つの画素200が例えば3つ以上の副画素によって構成されていてもよい。また、ここでは、撮像素子105の撮像面に備えられた全ての画素200がそれぞれ分割されている場合を例に説明したが、これに限定されるものではなく、一部の画素200のみが分割されていてもよい。
図3は、撮像光学系の射出瞳を通過する光束と画素との関係を示す模式図である。図3に示すように、カラーフィルタ301とマイクロレンズ302とが、画素200上に形成されている。撮像光学系104の射出瞳303を通過する光束の中心と光軸304とが一致している。射出瞳303を通過した光束は、光軸304を中心として画素200に入射する。撮像光学系104の射出瞳303には、第1の瞳領域305と、第1の瞳領域305とは異なる第2の瞳領域306とが位置している。第1の瞳領域305を通過する光束は、マイクロレンズ302を介して、副画素aに備えられたフォトダイオード201aによって受光される。一方、第2の瞳領域306を通過する光束は、マイクロレンズ302を介して、副画素bに備えられたフォトダイオード201bによって受光される。このように、副画素a、bは、撮像光学系104の射出瞳303の別個の瞳領域305,306からの光をそれぞれ受光する。このため、副画素aによって取得される信号と、副画素bによって取得される信号との間には、視差が存在している。従って、副画素a、bによって取得される信号を用いて、位相差方式のデフォーカス量検出を行うことが可能となる。
図4は、本実施形態による撮像装置における間引き読み出しの例を示す図である。図4は、FullHDの画像データを撮像画像として記録する際に撮像素子105において行われる間引き処理の例を示している。画像信号に対する間引き処理は、画像信号に対して所定の単位処理を繰り返し行うことによって行われる。ここでは、所定の単位処理において、3つの画素を加算する3画素加算が行われる場合を例に説明する。撮像素子105の画素アレイ202には多数の行が備えられているが、図4においては、1つのRG行401と1つのGB行402とが抜き出して示されている。RG行401は、R画素とG画素とが配置されている行である。GB行402は、G画素とB画素とが配置されている行である。図4のうちのハッチングが付された画素であるR画素403、G画素404、G画素405及びB画素406は、加算間引き読み出しの際に空間的な重心に位置する。例えば、R画素403が空間的な重心に位置するように3つのR画素が選択され、選択された3つのR画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるR画素の画素値が決定される。また、G画素404が空間的な重心に位置するように3つのG画素が選択され、選択された3つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、G画素405が空間的な重心に位置するように3つのG画素が選択され、選択された3つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、B画素406が空間的な重心に位置するように3つのB画素が選択され、選択された3つのB画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるB画素の画素値が決定される。このように、間引き処理においては、間引き処理によって得られる画像の画素数は、間引き処理が行われる前の画像の画素数の例えば1/3となる。画素アレイ202の水平方向における画素数は、例えば5760画素である。加算間引き読み出しによって得られる画像の水平方向における画素数は、例えば1920画素である。RG行401に位置するR画素403が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数407である。また、GB行402に位置するG画素404が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数407である。RG行401に位置するG画素405が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数408である。GB行402に位置するB画素406が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数408である。このように、図4に示す例においては、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような3画素加算間引き処理が行われる。
図5は、本実施形態による撮像装置に備えられた画像処理部の動作の例を示す図である。図5は、FullHDの画像データを撮像画像として記録する場合の例を示している。図5に示すように、画像処理部107は、入力データ処理部501と、変倍処理部502と、加算処理部503と、減算処理部504と、デフォーカス量検出部505とを備えている。
入力データ処理部501には、撮像素子105から読み出された後にA/D変換部106によってA/D変換が施された画像が入力される。具体的には、副画素aによって取得された信号に基づくA像ベイヤー画像が入力データ処理部501に入力される。また、副画素aによって取得された信号と副画素bによって取得された信号とを加算することにより得られる信号に基づくA+B像ベイヤー画像が入力データ処理部501に入力される。これらの画像のいずれも、撮像素子105において間引き処理が既に施されている。
入力データ処理部501は、入力されたA像ベイヤー画像を、変倍処理部502に出力する。また、入力データ処理部501は、入力されたA+B像ベイヤー画像を、RAM103に格納するとともに変倍処理部502に出力する。RAM103に格納されたA+B像ベイヤー画像は、FullHDの画像を生成する際に用いられる。
変倍処理部502は、入力されたA像ベイヤー画像及びA+B像ベイヤー画像を、変倍することなく、そのまま加算処理部503に供給する。
加算処理部503は、変倍処理部502から供給されるA像ベイヤー画像とA+B像ベイヤー画像とに対して、画素加算処理をそれぞれ行う。具体的には、加算処理部503は、変倍処理部502から供給されるA像ベイヤー画像に対して2行2列のベイヤー単位で画素加算処理を行うことによって、A像輝度画像を生成する。図5において、Raは、R画素に備えられた副画素aによって取得された信号に基づく画素値を概念的に示している。Gaは、G画素に備えられた副画素aによって取得された信号に基づく画素値を概念的に示している。Baは、B画素に備えられた副画素aによって取得された信号に基づく画素値を概念的に示している。Rabは、R画素に備えられた副画素aによって取得された信号と当該R画素に備えられた副画素bによって取得された信号とを加算することにより得られる信号に基づく画素値を概念的に示している。Gabは、G画素に備えられた副画素aによって取得された信号と当該G画素に備えられた副画素bによって取得された信号とを加算することにより得られる信号に基づく画素値を概念的に示している。Babは、B画素に備えられた副画素aによって取得された信号と当該B画素に備えられた副画素bによって取得された信号とを加算することにより得られる信号に基づく画素値を概念的に示している。Yaは、2行2列のベイヤー単位の画素群である単位画素203を構成する4つの画素によってそれぞれ得られる画素値Ra,Ga,Ga,Baを加算することによって得られる輝度値を示している。Yabは、単位画素203を構成する4つの画素によってそれぞれ得られる画素値Rab,Gab,Gab,Babを加算することによって得られる輝度値を示している。
加算処理部503は、変倍処理部502から供給されるA+B像ベイヤー画像に対して2行2列のベイヤー単位で画素加算処理を行うことによって、A+B像輝度画像を生成する。このような画素加算処理が行われることによって、A像ベイヤー画像の画素数及びA+B像ベイヤー画像の画素数は以下のようになる。即ち、画素加算処理が行われた後のA像ベイヤー画像の水平方向における画素数は、画素加算処理が行われる前のA像ベイヤー画像の水平方向における画素数の1/2となる。また、画素加算処理が行われた後のA像ベイヤー画像の垂直方向における画素数は、画素加算処理が行われる前のA像ベイヤー画像の垂直方向における画素数の1/2となる。画素加算処理が行われた後のA+B像ベイヤー画像の水平方向における画素数は、画素加算処理が行われる前のA+B像ベイヤー画像の水平方向における画素数の1/2となる。また、画素加算処理が行われた後のA+B像ベイヤー画像の垂直方向における画素数は、画素加算処理が行われる前のA+B像ベイヤー画像の垂直方向における画素数の1/2となる。
減算処理部504は、A+B像輝度画像の各画素の輝度値YabからA像輝度画像の各画素の輝度値Yaを減算することによって、B像輝度画像の各画素の輝度値Ybを生成する。上述したように、輝度値Yaは、2行2列のベイヤー単位の画素群を構成する4つの画素によってそれぞれ得られる画素値Ra,Ga,Ga,Baを加算することによって得られる。また、上述したように、輝度値Yabは、2行2列のベイヤー単位の画素群を構成する4つの画素の各々においてそれぞれ得られる画素値Rab,Gab,Gab,Babを加算することによって得られる。輝度値Yabから輝度値Yaを減算することによって得られる輝度値Ybは、2行2列のベイヤー単位の画素群を構成する4つの画素にそれぞれ備えられた副画素bによって得られる画素値Rb,Gb,Gb,Bbを加算することにより得られる輝度値に相当する。
なお、ここでは、A+B像輝度画像の各画素の輝度値YabからA像輝度画像の各画素の輝度値Yaを減算することによって、B像輝度画像の各画素の輝度値Ybを生成する場合を例に説明したが、これに限定されるものではない。A像ベイヤー画像とA+B像べイヤー画像とに基づいてB像ベイヤー画像を生成し、B像ベイヤー画像に基づいてB像輝度画像を生成するようにしてもよい。
デフォーカス量検出部505は、A像輝度画像とB像輝度画像とに基づいて像ずれ量を算出する処理を行い、算出された像ずれ量に基づいてデフォーカス量を検出し、デフォーカス量の分布を示すデフォーカスマップを生成する。デフォーカス量検出部505によって生成されるデフォーカスマップは、RAM103に格納される。デフォーカス量が検出される箇所は、離散的に分布させる。ここでは、例えば20画素毎にデフォーカス量を検出する場合を例に説明するが、これに限定されるものではない。A像輝度画像の水平方向における画素数と、B像輝度画像の水平方向における画素数とは、それぞれ960画素であるため、デフォーカスマップの水平方向における画素数は960/20=48画素となる。デフォーカスマップは、オートフォーカスに用いられ得る。また、デフォーカスマップは、取得される画像のうちの被写体の背景の部分に対してボケを付与する画像処理等において用いられ得る。
図6は、本実施形態による撮像装置における間引き読み出しの例を示す図である。フィルタ係数407に対応する画素加算処理が施された画素信号と、フィルタ係数408に対応する画素加算処理が施された画素信号とが、加算処理部503において加算される。A像輝度画像及びA+B像輝度画像を得るために全体として行われる画素加算処理に対応するフィルタ係数は、図6に示すようなフィルタ係数601である。
図7は、本実施形態による撮像装置における間引き読み出しの例を示す図である。図7は、間引き処理が施されていないA+B像の画像データが撮像素子105において取得されるとともに、間引き処理が施されたA像データが撮像素子105において取得される場合の例を示している。間引き処理が施されていないA+B像の画像データは、記録用の画像データ(撮像画像)として用いられ得る。一方、間引き処理が施されたA像データは、デフォーカス量の検出に用いられ得る。上述したように、画像信号に対する間引き処理は、画像信号に対して所定の単位処理を繰り返し行うことによって行われる。ここでは、所定の単位処理において、3つの画素を加算する3画素加算が行われる場合を例に説明する。撮像素子105の画素アレイ202には多数の行が備えられているが、図7においては、1つのRG行701と1つのGB行702とが抜き出して示されている。図7のうちのハッチングが付された画素であるR画素703,G画素704、G画素705及びB画素706は、加算間引き読み出しの際に空間的な重心に位置する。例えば、R画素703が空間的な重心に位置するように3つのR画素が選択され、選択された3つのR画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるR画素の画素値が決定される。また、G画素704が空間的な重心に位置するように、例えば3つのG画素が選択され、選択された3つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、G画素705が空間的な重心に位置するように、例えば3つのG画素が選択され、選択された3つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、B画素706が空間的な重心に位置するように、例えば3つのB画素が選択され、選択された3つのB画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるB画素の画素値が決定される。このように、不等ピッチの単位パターン709の繰り返しによって設定される位置が、各々の単位処理において抽出される各々の画素群の空間的な重心位置となるように、間引き処理が行われる。間引き処理においては、例えば3つの画素値を加算することによって1つの画素値が得られるため、間引き処理によって得られる画像の画素数は、間引き処理が行われる前の画像の画素数の例えば1/3となる。画素アレイ202の水平方向における画素数は、例えば5760画素である。加算間引き読み出しによって得られるA像の画像データの水平方向における画素数は、例えば1920画素である。一方、A+B像の画像データには間引きが施されていないため、当該画像データの水平方向における画素数は例えば5760画素である。RG行701に位置するR画素703が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数707である。また、GB行702に位置するG画素704が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数707である。RG行701に位置するG画素705が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数708である。GB行702に位置するB画素706が空間的な重心に位置するような3画素加算間引き処理に対応するフィルタ係数は、フィルタ係数708である。このように、図7に示す例においては、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような3画素加算間引き処理が行われる。
図8は、本実施形態による撮像装置100に備えられた画像処理部107の動作の他の例を示す図である。図8は、間引き処理が施されていないA+B像の画像データが撮像素子105において取得されるとともに、間引き処理が施されたA像データが撮像素子105において取得される場合の例を示している。
入力データ処理部501には、間引き処理が施されたA像ベイヤー画像と、間引きが施されていないA+B像ベイヤー画像とが入力される。入力データ処理部501は、入力されたA像ベイヤー画像を、変倍処理部502に供給する。また、入力データ処理部501は、入力されたA+B像ベイヤー画像を、RAM103に格納するとともに変倍処理部502に供給する。RAM103に格納された、間引き処理が施されていないA+B像ベイヤー画像は、撮像画像を生成する際に用いられる。
変倍処理部502は、入力されたA像ベイヤー画像に対して変倍処理を施すことなく、当該A像ベイヤー画像を加算処理部503に供給する。また、変倍処理部502は、入力されたA+B像ベイヤー画像に対して間引き処理を施し、間引き処理が施されたA+B像ベイヤー画像を加算処理部503に供給する。間引き処理が施されていないA+B像ベイヤー画像に対して変倍処理部502において行われる間引き処理は、撮像素子105においてA像ベイヤー画像を取得する際に行われる間引き処理と同等とする。これにより、間引き処理が施されたA+B像ベイヤー画像の水平方向における画素数は、間引き処理が施されたA像ベイヤー画像の水平方向における画素数と同等の例えば1920画素となる。
加算処理部503、減算処理部504及びデフォーカス量検出部505において行われる処理は、図5を用いて上述した処理と同様であるため、省略する。
図9は、本実施形態による撮像装置における間引き読み出しの他の例を示す図である。フィルタ係数707に対応する3画素加算間引き処理が施された画素信号と、フィルタ係数708に対応する3画素加算間引き処理が施された画素信号とが、加算処理部503において加算される。A像輝度画像及びA+B像輝度画像を得るために全体として行われる画素加算処理に対応するフィルタ係数は、フィルタ係数901である。
図10は、フィルタ係数の空間周波数特性を示すグラフである。図10は、フィルタ係数601の空間周波数特性とフィルタ係数901の空間周波数特性とを示している。横軸は、サンプリング周波数によって正規化された正規化周波数を示しており、0.5はナイキスト周波数に対応する。縦軸は、正規化周波数が0の際の振幅によって正規化することにより得られる正規化振幅を示している。符号1001は、図6に示すフィルタ係数601の空間周波数特性を示しており、符号1002は、図9に示すフィルタ係数901の空間周波数特性を示している。間引き処理が施されていない画像の水平方向における画素数は5760であるのに対し、輝度画像の水平方向における画素数は960である。即ち、輝度画像は、間引き処理が施されていない画像の1/6に縮小されている。従って、0.166より大きい正規化周波数に対応する部分は、間引き処理によって失われている。
図10から分かるように、フィルタ係数601に対応する3画素加算間引き処理が行われる場合には、フィルタ係数901に対応する3画素加算間引き処理が行われる場合と比較して、振幅が大きくなる。各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような3画素加算間引き処理を行った場合には、以下のようになる。即ち、かかる場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような3画素加算間引き処理を行った場合と比較して、デフォーカス量の検出精度が向上する。
本実施形態では、間引き処理が施されていない画像を記録する場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような3画素加算間引き処理を行うことによってデフォーカス量を検出するための信号を取得する。このため、本実施形態によれば、間引き処理が施されていない画像を取得する際におけるデフォーカス量の検出精度を向上することができる。一方、本実施形態では、間引き処理が施された画像を記録する場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような3画素加算間引き処理を行う。これにより、間引き処理が施された画像の画質が劣化するのを防止することができる。
なお、ここでは、間引き処理が施されていないA+B像ベイヤー画像のみをRAM103に格納する場合を例に説明したが、これに限定されるものではない。例えば、間引き処理が施されていないA像ベイヤー画像をもRAM103に格納するようにしてもよい。図11は、本実施形態による撮像装置100に備えられた画像処理部107の動作の更に他の例を示す図である。図11は、間引き処理が施されていないA+B像ベイヤー画像と間引き処理が施されていないA像ベイヤー画像とをRAM103に格納するようにする場合の例を示している。
入力データ処理部501には、間引き処理が施されていないA像ベイヤー画像と、間引きが施されていないA+B像ベイヤー画像とが入力される。入力データ処理部501は、入力されたA像ベイヤー画像を、RAM103に格納するとともに変倍処理部502に供給する。また、入力データ処理部501は、入力されたA+B像ベイヤー画像を、RAM103に格納するとともに変倍処理部502に供給する。RAM103に格納された、間引き処理が施されていないA像ベイヤー画像と、RAM103に格納された、間引き処理が施されていないA+B像ベイヤー画像とは、3D画像の生成に用いられ得る。即ち、間引き処理が施されていないA+B像ベイヤー画像から間引き処理が施されていないA像ベイヤー画像を減算することによって、間引きされていないB像ベイヤー画像が得られる。間引きされていないA像と間引きされていないB像とを用いて良好な3D表示を行い得る。
変倍処理部502は、入力されたA像ベイヤー画像に対して間引き処理を施し、間引き処理が施されたA像ベイヤー画像を加算処理部503に供給する。また、変倍処理部502は、入力されたA+B像ベイヤー画像に対して間引き処理を施し、間引き処理が施されたA+B像ベイヤー画像を加算処理部503に供給する。間引き処理が施されたA像ベイヤー画像の水平方向における画素数と、間引き処理が施されたA+B像ベイヤー画像の水平方向における画素数とは、いずれも例えば1920画素となる。
加算処理部503、減算処理部504及びデフォーカス量検出部505において行われる処理は、図5を用いて上述した処理と同様であるため、省略する。
なお、ここでは、水平方向の加算間引きを例に説明したが、これに限定されるものではなく、垂直方向の加算間引きを行うようにしてもよい。
図12は、本実施形態による撮像装置の動作の例を示すフローチャートである。ステップS1201において、制御部101は、所定の条件を満たすか否かを判定する。所定の条件は、間引き処理が施されたA+B像ベイヤー画像の画素数と、記録画像に用いられるA+B像ベイヤー画像の画素数が同等であるという条件である。換言すれば、所定条件は、間引き処理が施されたA+B像ベイヤー画像の間引き率と、記録画像に用いられるA+B像ベイヤー画像の間引き率が同等であるという条件である。換言すれば、所定条件は、間引き処理が施されたA+B像ベイヤー画像が、記録画像にも用いられるという条件である。所定の条件を満たす場合には(ステップS1201においてYES)、ステップS1202に移行する。ステップS1202において、制御部101は、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような間引き読み出しが行われるように制御を行う。所定の条件を満たさない場合には(ステップS1201においてNO)、ステップS1203に移行する。ステップS1203において、制御部101は、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような間引き読み出しが行われるように制御を行う。ステップS1204において、画像処理部107は、上記のようにして間引き読み出しされた信号を用いてデフォーカスマップの生成を行う。こうして、図12に示す動作が完了する。
このように、本実施形態によれば、所定条件を満たす第1の場合には、各々の単位処理において抽出される画素群の空間的な重心位置が第1の態様となるような第1の間引き処理を行う。一方、第1の場合と異なる第2の場合には、各々の単位処理において抽出される画素群の空間的な重心位置が第1の態様と異なる第2の態様となるような第2の間引き処理を行う。より具体的には、間引き処理が施された画像信号が撮像画像に用いられる場合には、各々の単位処理において抽出される画素群の空間的な重心位置が等ピッチとなるような加算間引き処理を行う。一方、間引き処理が施された画像信号が撮像画像に用いられない場合には、各々の単位処理において抽出される画素群の空間的な重心位置が不等ピットとなるような加算間引き読み出しを行う。このため、本実施形態によれば、撮像画像の劣化を招くことなく適確な間引き処理を行い得る撮像装置を提供することができる。
[第2実施形態]
第2実施形態による撮像装置及び撮像方法について図13乃至図21を用いて説明する。図1乃至図12に示す第1実施形態による撮像装置と同一の構成要素には、同一の符号を付して説明を省略又は簡潔にする。
本実施形態における撮像装置の構成は、第1実施形態において上述した撮像装置の構成と同様である。
本実施形態による撮像装置がFullHDの画像の記録を行う場合における動作は、第1実施形態による撮像装置がFullHDの画像の記録を行う場合における動作と同様である。間引き処理が施されていない画像の記録を本実施形態による撮像装置が行う場合における動作を、以下に説明する。
本実施形態による撮像装置は、3画素加算間引き処理、2画素加算間引き処理、及び、非加算間引き処理を適宜行い得る。2画素加算間引き処理は、3画素加算間引き処理と比較して、単位処理において加算される画素の数が少ない。このため、2画素加算間引き処理を行う場合には、3画素加算間引き処理を行う場合と比較して、間引き処理を迅速に行うことが可能である。但し、2画素加算間引き処理によって得られる画像は、3画素加算間引き処理によって得られる画像と比較して、ノイズの影響を受けやすい傾向がある。また、非加算間引き処理は、2画素加算間引き処理と比較して、単位処理の際に加算される画素の数が少ない。このため、非加算間引き処理を行う場合には、2画素加算間引き処理を行う場合と比較して、間引き処理を迅速に行うことが可能である。但し、非画素加算間引き処理によって得られる画像は、2画素加算間引き処理によって得られる画像と比較して、ノイズの影響を受けやすい傾向がある。
ここでは、間引き処理が施されていない動画像を30p(30フレーム/秒)のフレームレートで記録する場合には、3画素加算間引き処理を行う場合を例として説明する。また、間引き処理が施されていない動画像を60p(60フレーム/秒)のフレームレートで記録する場合には、2画素加算間引き処理を行う場合を例として説明する。また、間引き処理が施されていない動画像を120p(120フレーム/秒)のフレームレートで記録する場合には、非加算間引き処理を行う場合を例として説明する。
間引き処理が施されていない動画像を30pのフレームレートで記録する場合の動作は、図8を用いて上述した第1実施形態における撮像装置の動作と同様である。
間引き処理が施されていない動画像を60pのフレームレートで記録する場合の動作について以下に説明する。図13は、本実施形態による撮像装置における間引き読み出しの例を示す図である。上述したように、画像信号に対する間引き処理は、画像信号に対して所定の単位処理を繰り返し行うことによって行われる。ここでは、所定の単位処理において、2つの画素を加算する2画素加算が行われる場合を例に説明する。図13は、各々の単位処理において抽出される各々の画素群の空間的な重心の位置が等ピッチとなるように2画素加算間引き処理を行う場合の例を示している。撮像素子105の画素アレイ202には多数の行が備えられているが、図13においては、1つのRG行1301と1つのGB行1302とが抜き出して示されている。図13のうちのハッチングが付された画素であるR画素1303、G画素1304、G画素1305及びB画素1306は、加算間引き読み出しの際に読み出される画素群の空間的な重心に位置する。例えば、R画素1303が空間的な重心に位置するように、2つのR画素が選択され、選択された2つのR画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるR画素の画素値が決定される。また、G画素1304が空間的な重心に位置するように、2つのG画素が選択され、選択された2つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、G画素1305が空間的な重心に位置するように、2つのG画素が選択され、選択された2つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、B画素1306が空間的な重心に位置するように、2つのB画素が選択され、選択された2つのB画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるB画素の画素値が決定される。間引き処理によって得られる画像の画素数は、間引き処理が行われる前の画像の画素数の例えば1/3となる。画素アレイ202の水平方向における画素数は、例えば5760画素である。加算間引き読み出しによって得られるA像の画像データの水平方向における画素数、及び、加算間引き読み出しによって得られるA+B像の画像データの水平方向における画素数は、いずれも例えば1920画素である。
RG行1301に位置するR画素1303が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1307である。また、GB行1302に位置するG画素1304が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1307である。RG行1301に位置するG画素1305が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1308である。GB行1302に位置するB画素1306が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1308である。フィルタ係数1307に対応する2画素加算間引き処理が施された画素信号と、フィルタ係数1308に対応する2画素加算間引き処理が施された画素信号とが、加算処理部503において加算される。A像輝度画像及びA+B像輝度画像を得るために全体として行われる画素加算処理に対応するフィルタ係数は、フィルタ係数1309である。
図14は、本実施形態による撮像装置における間引き読み出しの例を示す図である。図14は、空間的な重心の位置が不等ピッチとなるように2画素加算間引き処理を行う場合の例を示している。撮像素子105の画素アレイ202には多数の行が備えられているが、図14においては、1つのRG行1401と1つのGB行1402とが抜き出して示されている。図14のうちのハッチングが付された画素であるR画素1403、G画素1404、G画素1405及びB画素1406は、加算間引き読み出しの際に空間的な重心に位置する。例えば、R画素1403が空間的な重心に位置するように、2つのR画素が選択され、選択された2つのR画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるR画素の画素値が決定される。また、G画素1404が空間的な重心に位置するように、2つのG画素が選択され、選択された2つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、G画素1405が空間的な重心に位置するように、2つのG画素が選択され、選択された2つのG画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、B画素1406が空間的な重心に位置するように、2つのB画素が選択され、選択された2つのB画素の画素値が加算され、当該加算によって得られる画素値に基づいて、当該位置に対応する位置におけるB画素の画素値が決定される。間引き処理によって得られる画像の画素数は、間引き処理が行われる前の画像の画素数の例えば1/3となる。画素アレイ202の水平方向における画素数は、例えば5760画素である。加算間引き読み出しによって得られるA像の画像データの水平方向における画素数、及び、加算間引き読み出しによって得られるA+B像の画像データの水平方向における画素数は、いずれも例えば1920画素である。
RG行1401に位置するR画素1403が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1407である。また、GB行1402に位置するG画素1404が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1407である。RG行1401に位置するG画素1405が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1408である。GB行1402に位置するB画素1406が空間的な重心に位置するような2画素加算間引き処理に対応するフィルタ係数は、フィルタ係数1408である。フィルタ係数1407に対応する2画素加算間引き処理が施された画素信号と、フィルタ係数1408に対応する2画素加算間引き処理が施された画素信号とが、加算処理部503において加算される。A像輝度画像及びA+B像輝度画像を得るために全体として行われる画素加算処理に対応するフィルタ係数は、フィルタ係数1409である。
図15は、フィルタ係数の空間周波数特性を示すグラフである。図15は、フィルタ係数1309の空間周波数特性とフィルタ係数1409の空間周波数特性とを示している。横軸は、サンプリング周波数によって正規化された正規化周波数を示しており、0.5はナイキスト周波数に対応する。縦軸は、正規化周波数が0の際の振幅によって正規化することにより得られる正規化振幅を示している。符号1501は、図13に示すフィルタ係数1309の空間周波数特性を示しており、符号1502は、図14に示すフィルタ係数1409の空間周波数特性を示している。間引き処理が施されていない画像の水平方向における画素数は5760であるのに対し、輝度画像の水平方向における画素数は960である。即ち、輝度画像は、間引き処理が施されていない画像の1/6に縮小されている。従って、0.166より大きい正規化周波数に対応する部分は、間引き処理によって失われている。
図15から分かるように、フィルタ係数1409に対応する2画素加算間引き処理が行われる場合には、フィルタ係数1309に対応する2画素加算間引き処理が行われる場合と比較して、振幅ノッチポイントが高周波側にシフトする。フィルタ係数1309に対応する2画素加算間引き処理が行われる場合、正規化周波数が0.166の際に振幅がノッチされるが、フィルタ係数1409に対応する2画素加算間引き処理が行われる場合、正規化周波数が0.25の際に振幅がノッチされる。上述したように、正規化周波数が0.166より大きい部分は、間引き処理によって失われている。このため、フィルタ係数1409に対応する2画素加算間引き処理が行われる場合には、デフォーカス量の検出精度の低下を招く。
間引き処理が施されていない動画像を120pのフレームレートで記録する場合の動作について以下に説明する。図16は、本実施形態による撮像装置における間引き読み出しの他の例を示す図である。上述したように、画像信号に対する間引き処理は、画像信号に対して所定の単位処理を繰り返し行うことによって行われる。ここでは、所定の単位処理において、非加算間引きが行われる場合を例に説明する。図16は、空間的な重心の位置が等ピッチとなるように非加算間引き処理を行う場合の例を示している。撮像素子105の画素アレイ202には多数の行が備えられているが、図16においては、1つのRG行1601と1つのGB行1602とが抜き出して示されている。図16のうちのハッチングが付された画素であるR画素1603、G画素1604、G画素1605及びB画素1606は、非加算間引き読み出しの際に空間的な重心に位置する。例えば、R画素1603が空間的な重心に位置するように、1つのR画素が選択され、選択された1つのR画素の画素値に基づいて、当該位置に対応する位置におけるR画素の画素値が決定される。また、G画素1604が空間的な重心に位置するように、1つのG画素が選択され、選択された1つのG画素の画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、G画素1605が空間的な重心に位置するように、1つのG画素が選択され、選択された1つのG画素の画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、B画素1606が空間的な重心に位置するように、1つのB画素が選択され、選択された1つのB画素の画素値に基づいて、当該位置に対応する位置におけるB画素の画素値が決定される。間引き処理によって得られる画像の画素数は、間引き処理が行われる前の画像の画素数の例えば1/3となる。画素アレイ202の水平方向における画素数は、例えば5760画素である。非加算間引き読み出しによって得られるA像の画像データの水平方向における画素数、及び、非加算間引き読み出しによって得られるA+B像の画像データの水平方向における画素数は、いずれも例えば1920画素である。
RG行1601に位置するR画素1603が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1607である。また、GB行1602に位置するG画素1604が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1607である。RG行1601に位置するG画素1605が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1608である。GB行1602に位置するB画素1606が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1608である。フィルタ係数1607に対応する非加算間引き処理が施された画素信号と、フィルタ係数1608に対応する非加算間引き処理が施された画素信号とが、加算処理部503において加算される。A像輝度画像及びA+B像輝度画像を得るために全体として行われる画素加算処理に対応するフィルタ係数は、フィルタ係数1609である。
図17は、本実施形態による撮像装置における間引き読み出しの他の例を示す図である。図17は、空間的な重心の位置が不等ピッチとなるように非加算間引き処理を行う場合の例を示している。撮像素子105の画素アレイ202には多数の行が備えられているが、図17においては、1つのRG行1701と1つのGB行1702とが抜き出して示されている。図17のうちのハッチングが付された画素であるR画素1703、G画素1704、G画素1705及びB画素1706は、非加算間引き読み出しの際に空間的な重心に位置する。例えば、R画素1703が空間的な重心に位置するように、1つのR画素が選択され、選択された1つのR画素の画素値に基づいて、当該位置に対応する位置におけるR画素の画素値が決定される。また、G画素1704が空間的な重心に位置するように、1つのG画素が選択され、選択された1つのG画素の画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、G画素1705が空間的な重心に位置するように、1つのG画素が選択され、選択された1つのG画素の画素値に基づいて、当該位置に対応する位置におけるG画素の画素値が決定される。また、例えば、B画素1706が空間的な重心に位置するように、1つのB画素が選択され、選択された1つのB画素の画素値に基づいて、当該位置に対応する位置におけるB画素の画素値が決定される。間引き処理によって得られる画像の画素数は、間引き処理が行われる前の画像の画素数の例えば1/3となる。画素アレイ202の水平方向における画素数は、例えば5760画素である。加算間引き読み出しによって得られるA像の画像データの水平方向における画素数、及び、加算間引き読み出しによって得られるA+B像の画像データの水平方向における画素数は、いずれも例えば1920画素である。
RG行1701に位置するR画素1703が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1707である。また、GB行1702に位置するG画素1704が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1707である。RG行1701に位置するG画素1705が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1708である。GB行1702に位置するB画素1706が空間的な重心に位置するような非加算間引き処理に対応するフィルタ係数は、フィルタ係数1708である。フィルタ係数1707に対応する非加算間引き処理が施された画素信号と、フィルタ係数1708に対応する非加算間引き処理が施された画素信号とが、加算処理部503において加算される。A像輝度画像及びA+B像輝度画像を得るために全体として行われる画素加算処理に対応するフィルタ係数は、フィルタ係数1709である。
図18は、フィルタ係数の空間周波数特性を示すグラフである。図18は、フィルタ係数1609の空間周波数特性とフィルタ係数1709の空間周波数特性とを示している。横軸は、サンプリング周波数によって正規化された正規化周波数を示しており、0.5はナイキスト周波数に対応する。縦軸は、正規化周波数が0の際の振幅によって正規化することにより得られる正規化振幅を示している。符号1801は、図16に示すフィルタ係数1609の空間周波数特性を示しており、符号1802は、図17に示すフィルタ係数1709の空間周波数特性を示している。間引き処理が施されていない画像の水平方向における画素数は5760であるのに対し、輝度画像の水平方向における画素数は960である。即ち、輝度画像は、間引き処理が施されていない画像の1/6に縮小されている。従って、0.166より大きい正規化周波数に対応する部分は、間引き処理によって失われている。
図18から分かるように、フィルタ係数1709に対応する非加算間引き処理が行われる場合には、フィルタ係数1609に対応する非加算間引き処理が行われる場合と比較して、振幅ノッチポイントが高周波側にシフトする。フィルタ係数1609に対応する非加算間引き処理が行われる場合には、正規化周波数が0.166の際に振幅がノッチされるが、フィルタ係数1709に対応する非加算間引き処理が行われる場合には、正規化周波数が0.5の際に振幅がノッチされる。上述したように、正規化周波数が0.166より大きい部分は、間引き処理によって失われている。このため、フィルタ係数1709に対応する非加算間引き処理が行われる場合には、デフォーカス量の検出精度の更なる低下を招く。
図19は、フレームレート、加算数、及び、空間的な重心位置の設定の例を示す図である。フレームレートが30pの場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような3画素加算間引き読み出しが行われる。フレームレートが60pの場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような2画素加算間引き読み出しが行われる。フレームレートが120pの場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような非加算間引き読み出しが行われる。このように設定すれば、いずれのフレームレートにおいても、正規化周波数が0.166の際に振幅がノッチされる。図19のように設定すれば、デフォーカス量の検出精度を良好に確保し得る。
図20は、本実施形態による撮像装置の動作の例を示すフローチャートである。ここでは、フレームレートが30p、60p、120pのいずれかに設定される場合を例に説明する。ステップS2001において、制御部101は、フレームレートが30pであるか否かを判定する。フレームレートが30pである場合には(ステップS2001においてYES)、ステップS2002に移行する。フレームレートが30pでない場合には(ステップS2001においてNO)、ステップS2006に移行する。
ステップS2002において、制御部101は、単位処理の際に加算される画素の数である加算数が例えば3となるように制御を行う。この後、ステップS2003に移行する。ステップS2003において、制御部101は、所定の条件を満たすか否かを判定する。所定の条件は、間引き処理が施されたA+B像ベイヤー画像の画素数と、記録画像に用いられるA+B像ベイヤー画像の画素数が同等であるという条件である。換言すれば、所定条件は、間引き処理が施されたA+B像ベイヤー画像の間引き率と、記録画像に用いられるA+B像ベイヤー画像の間引き率が同等であるという条件である。更に換言すれば、所定条件は、間引き処理が施されたA+B像ベイヤー画像が、記録画像にも用いられるという条件である。所定の条件を満たす場合には(ステップS2003においてYES)、ステップS2004に移行する。ステップS2004において、制御部101は、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような間引き読み出しが行われるように制御を行う。この後、ステップS2010に移行する。所定の条件を満たさない場合には(ステップS2003においてNO)、ステップS2005に移行する。ステップS2005において、制御部101は、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような間引き読み出しが行われるように制御を行う。この後、ステップS2010に移行する。
ステップS2006において、制御部101は、フレームレートが60pであるか否かを判定する。フレームレートが60pである場合には(ステップS2006においてYES)、ステップS2007に移行する。フレームレートが60pでない場合には(ステップS2006においてNO)、ステップS2008に移行する。
ステップS2007において、制御部101は、単位処理の際に加算される画素の数である加算数が例えば2となるように制御を行う。この後、ステップS2009に移行する。ステップS2008において、制御部101は、単位処理の際に加算される画素の数である加算数が例えば1となるように制御を行う。この後、ステップS2009に移行する。ステップS2009において、制御部101は、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような間引き読み出しが行われるように制御を行う。この後、ステップS2010に移行する。
ステップS2010において、画像処理部107は、上記のようにして間引き読み出しされた信号を用いてデフォーカスマップの生成を行う。こうして、図20に示す動作が完了する。
なお、フレームレート、加算数、及び、空間的な重心位置のピッチの設定は図19に示すような設定に限定されるものではない。例えば図21のようにこれらを設定するようにしてもよい。図21は、フレームレート、加算数、及び、空間的な重心位置の設定の他の例を示す図である。フレームレートが30pの場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような3画素加算間引き読み出しが行われる。フレームレートが60pの場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が不等ピッチとなるような2画素加算間引き読み出しが行われる。フレームレートが120pの場合には、各々の単位処理において抽出される各々の画素群の空間的な重心位置が等ピッチとなるような非加算間引き読み出しが行われる。このように設定した場合には、フレームレートが60pの際において、正規化周波数が0.166の際に振幅がノッチされ得ないが、デフォーカス量の検出精度はある程度は確保し得る。
このように、本実施形態によれば、間引き読み出しの際に加算される画素の数を、フレームレートが速くなるに応じて少なくしてもよい。間引き読み出しの際に加算される画素の数を少なくすれば、間引き読み出しの際の処理負荷を軽くすることができる。このため、本実施形態によれば、フレームレートを速くした際の処理負荷の抑制に寄与することができる。
以上、本発明の好ましい実施形態について説明したが、本発明はこれらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記録媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。