以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、一眼レフカメラ400の断面図である。撮像装置の一例としての一眼レフカメラ400は、撮像素子200、レンズユニット500およびカメラボディ600を備える。カメラボディ600には、レンズユニット500が装着される。レンズユニット500は、その鏡筒内に、光軸410に沿って配列された光学系を備え、入射する被写体光束をカメラボディ600の撮像素子200へ導く。
本例においては、撮像装置として一眼レフカメラ400を例に説明するが、カメラボディ600を撮像装置と捉えてもよい。また、撮像装置は、ミラーユニットを備えるレンズ交換式カメラに限らず、ミラーユニットを持たないレンズ交換式カメラ、ミラーユニットの有無に関わらずレンズ一体式カメラであってもよい。また、本例において光軸410に沿って被写体光束が進む方向を第3方向とする。第3方向に対して垂直であって、かつ、互いに垂直な方向を、第1方向および第2方向とする。
カメラボディ600には、レンズマウント550が結合される。カメラボディ600は、ボディマウント660よりも第3方向の側にミラー672を備える。ミラー672は、レンズユニット500から第3方向に入射する被写体光束に対して傾けて設けられる斜設位置と、被写体光束から退避する退避位置との間で回転可能であるように軸に固定される。
ミラー672が斜設位置にある場合、レンズユニット500を通じて入射した被写体光束の多くはミラー672に反射されてピント板652に導かれる。ピント板652は、撮像素子200の受光面と共役な位置に配されて、レンズユニット500の光学系が形成した被写体像を可視化する。ピント板652に形成された被写体像は、ペンタプリズム654およびファインダ光学系656を通じてファインダ650から観察される。
ピント板652、ペンタプリズム654、ミラー672は、構造体としてのミラーボックス670に支持される。撮像素子200は、ミラーボックス670に取り付けられる。ミラー672が退避位置に退避し、シャッタユニット340の先幕および後幕が開状態となれば、レンズユニット500を透過する被写体光束は、撮像素子200の受光面に到達する。
撮像素子200に対してシャッタユニット340とは逆側には、ボディ基板620および背面表示部634が順次配置される。液晶パネル等が採用される背面表示部634は、カメラボディ600の背面に位置する。ボディ基板620には、CPU622、画像処理部624等の電子回路が実装される。撮像素子200の出力は、画像処理部624へ引き渡される。
図2は、撮像素子200の構成例を示すブロック図である。撮像素子200は、撮像チップ10および信号処理チップ30を備える。撮像チップ10には、第3方向から光束が入射する。撮像チップ10は、第3方向において信号処理チップ30に積層される。撮像チップ10は、バンプ15を通じて、信号処理チップ30に電気的に接続される。撮像チップ10は、第1方向および第2方向において2次元に配列された複数の光電変換部を有する。複数の光電変換部の各々は入射光を光電変換する。つまり、複数の光電変換部の各々は、第3方向から入射する光束の光量に応じて電荷を生成する。なお、光電変換部は画素の一部として機能する。当該画素は、光電変換部の出力を処理してよい。撮像チップ10は、変換したアナログの画像信号を信号処理チップ30の信号処理部32へ出力する。
信号処理チップ30は、信号処理部32、AD変換部34、および、焦点検出部36を有する。信号処理部32は、撮像チップ10から出力されるアナログの画像信号に所定のアナログ信号処理をする。信号処理部32は、増幅回路およびCDS(相関二重サンプリング)回路などを有する。増幅回路は、アナログの画像信号の信号電圧値を増幅する。また、CDS回路は、ノイズによる当該信号電圧値のばらつきを補正する。
AD変換部34は、信号処理部32から出力されたアナログの画像信号をデジタルの画像信号に変換する。AD変換部34は、デジタルの画像信号を信号処理部32および焦点検出部36に出力する。
信号処理部32は、AD変換部34から出力されるデジタルの画像信号に対して、特定の演算を行う。信号処理部32は、フィルタ処理モードと加算処理モードとを有する。信号処理部32は、フィルタ処理モードのときは、デジタルの画像信号に対して方向性判定ならびに平滑化フィルタおよび先鋭化フィルタを適用する。信号処理部32は、当該フィルタを適用して画像における各々の画素値を算出する。また、信号処理部32は、加算処理モードのときは、デジタルの画像信号を加算して画像における各々の画素値を算出する。信号処理部32は、フィルタ処理モードおよび加算処理モードのいずれか一方を選択してよい。信号処理部32において算出された画素値の情報は、画像処理部624に出力される。つまり、信号処理部32は、画像を画像処理部624に出力する前に、画像を前処理する。
焦点検出部36は、入射光が通過した光学系の焦点位置を検出する。具体的には、焦点検出部36は、デジタルの画像信号に基づいて、一対の像の像ズレ量を検出する。さらに、焦点検出部36は、像ズレ量に応じた演算を行い、予定結像面に対する現在の結像面の偏差であるデフォーカス量を算出する。当該デフォーカス量を調整するべく、一眼レフカメラ400のレンズユニット500の位置が調整される。
画像処理部624は、画像処理ASIC625および記録部60を有する。画像処理ASIC625は、記録部60をワークスペースとして種々の画像処理を施し、画像データを生成する。画像処理ASIC625は、JPEGファイル形式の画像データを生成する場合は、ホワイトバランス処理、ガンマ処理等を施した後に圧縮処理を実行する。生成された画像データは、記録部60に記録される。また、背面表示部634は、当該記録部60に記録された画像データに応じた画像を予め設定された時間の間表示する。
図3は、第1の実施形態における撮像チップ10の一部の領域を拡大した図である。本例において複数の光電変換部17の各々は、第1および第2方向に平行な対角線を有する正方形である。各光電変換部17は、各画素の一部として機能する。一の画素の一部として機能する一の光電変換部17は、第1方向および第2方向において行列状に配置される。なお、一の画素は光電変換部17の出力を処理する信号処理機能も有してよい。光電変換部17には、第3方向において、マイクロレンズ12が重ねて設けられる。図3において、マイクロレンズ12を円で示す。1つのマイクロレンズ12は、レンズユニット500を通じて入射する光を、対応して設けられた光電変換部17に導く。本例の光電変換部17は、マイクロレンズ12と重なる位置において設けられた、フォトダイオードであってよい。
複数の光電変換部17には、赤色(R)、緑色(G)または青色(B)の波長の光をそれぞれ透過させるフィルタが設けられる。緑色(G)の波長の入射光を透過させるフィルタが設けられた光電変換部17‐Gは、第1方向および第2方向において連続して設けられる。赤色(R)の波長の入射光を透過させるフィルタが設けられた光電変換部17‐Rは、第1方向において連続して設けられる。青色(B)の波長の入射光を透過させるフィルタが設けられた光電変換部17‐Bも、第1方向において連続して設けられる。複数の光電変換部17‐Rおよび17‐Bは、複数の光電変換部17‐Gに対して半ピッチずれて設けられる。なお、本例においては、第1の光電変換部を光電変換部17‐Gとし、第2の光電変換部を光電変換部17‐Bとし、第3の光電変換部を光電変換部17‐Rとして説明する。しかしながら、他の例においては、第2の光電変換部を光電変換部17‐Rとし、第3の光電変換部を光電変換部17‐Bとしてもよい。
本例において半ピッチとは、光電変換部17における第1方向に平行な対角線の長さの半分の長さ、および、光電変換部17における第2方向に平行な対角線の長さの半分の長さを意味する。また、半ピッチとは、第1方向における光電変換部17の繰り返し長さの半分、および、第2方向における光電変換部17の繰り返し長さの半分を意味してもよい。複数の光電変換部17‐Rおよび17‐Bが複数の光電変換部17‐Gに対して半ピッチずれて設けられるので、第1および第2方向に設けられた複数の光電変換部17‐G間における複数の隙間には、複数の光電変換部17‐Rおよび17‐Bが設けられる。
複数の光電変換部17‐Gは、第1方向に連続して設けられて直線形状を構成する。複数の光電変換部17‐Bおよび17‐Rも同様に、第1方向に連続して設けられて直線形状を構成する。そして、当該直線形状は、複数の光電変換部17‐G、17‐R、17‐G、および、17‐Bの順に第2方向に設けられる。直線形状の当該17‐G、17‐R、17‐G、および、17‐Bのセットからなるパターンは、第2方向において繰り返して設けられる。
各々の光電変換部17は、開口領域を有する。また各々の光電変換部17は、開口領域および遮光領域を有してもよい。本例においては、複数の光電変換部17の各々が、開口領域および遮光領域を有する。また、本例では、各々の光電変換部17における開口領域および遮光領域の面積が略等しい。図3において遮光領域を斜線により示す。遮光領域においては、入射光が光電変換に用いられない。一方、開口領域においては、入射光が光電変換に用いられる。
本例の撮像素子200は、光電変換部17において、フォトダイオードが配線層よりもマイクロレンズ12側に設けられる裏面照射型の撮像素子200である。しかし、光電変換部17において、配線層がフォトダイオードよりもマイクロレンズ12側に設けられる表面照射型の撮像素子200としてもよい。表面照射型では、入射光が部分的に配線層により遮られる。裏面照射型では、表面照射型のように入射光が部分的に配線層により遮られないので、入射光の変換効率を表面照射型よりも高くすることができる。
本例では、光電変換部17‐Gは、第2方向において領域が二分割される。二分割されたうちの一方が開口領域であり、他方が遮光領域である。第1方向において隣接する光電変換部17‐Gは、開口領域と遮光領域とが交互に入れ替わる。
また本例では、光電変換部17‐Bおよび17‐Rは、第1方向において領域が二分割される。二分割されたうちの一方が開口領域であり、他方が遮光領域である。第2方向において隣接する光電変換部17‐Bおよび17‐Rは、開口領域と遮光領域とが交互に入れ替わる。
第2方向に隣接する2つの光電変換部17‐Gの遮光領域と、第1方向に隣接する2つの光電変換部17‐Rの遮光領域とは、互いに隣接して正方形の遮光領域を形成する。当該正方形の遮光領域は、第1方向および第2方向に平行な辺を有する正方形である。
さらに、第2方向に隣接する2つの光電変換部17‐Gの遮光領域と、第1方向に隣接する2つの光電変換部17‐Bの遮光領域とは、互いに隣接して遮光領域を形成する。当該正方形の遮光領域は、第1方向および第2方向に平行な辺を有する正方形である。
光電変換部17の開口領域は焦点検出に用いられる。第1方向に隣接する複数の光電変換部17‐Gにおいて、第2方向に開口領域を有する複数の光電変換部17‐Gと第2方向の逆方向に開口領域を有する複数の光電変換部17‐Gとは、焦点検出に用いられる。本例において、複数の光電変換部17‐Gは、第1方向および第1方向の逆方向において交互に遮光領域を有し、かつ、第2方向および第2方向の逆方向において交互に遮光領域を有する。それゆえ、複数の光電変換部17‐Gは、第1方向および第2方向において焦点検出に用いることができる。これにより、遮光領域を有する光電変換部17が第1方向または第2方向のいずれか一方だけに連続して設けられる場合と比較して、焦点検出精度を向上させることができる。
また、複数の光電変換部17‐Bおよび17‐Rは、第1方向において焦点検出に用いることができる。なお、変形例として、撮像素子200は、1つの光電変換部17が第1方向および第2方向のいずれかにおいて一対の開口領域を有する画素分割方式を採用してもよい。当該一対の開口領域は、互いに分離して設けられる。また、当該一対の開口領域に対応して設けられたフォトダイオードから、互いに独立して電荷を読み出すことが可能である。複数の光電変換部17を画素分割方式とすることによっても、焦点検出をすることができる。
フィルタ処理モードにおける信号処理部32は最初に、判定・補間領域40において方向性判定を行う。方向性判定とは、複数の光電変換部17における出力信号に基づいて、第1方向および第2方向の少なくとも一つの方向における出力信号の連続性を判定することである。判定・補間領域40において、第1方向または第2方向において連続して設けられる複数の光電変換部17の出力信号の差分値が予め定められた閾値以下である場合に、信号処理部32は第1方向または第2方向に連続性があると判断する。例えば、判定・補間領域40において、第1方向で隣接する4つの光電変換部17−Rの出力信号の差分値が予め定められた閾値以下である場合に、信号処理部32は第1方向に連続性があると判断する。
フィルタ処理モードにおける信号処理部32は、方向性判定の後に、判定・補間領域40において補間処理を行う。補間処理は、方向性判定に基づいて、フィルタを画素毎に調整して適用する。フィルタを適用することにより画素値が算出される。なお、フィルタを画素に適用するとは、光電変換部17の出力信号に対してフィルタ処理することを意味する。フィルタ処理後の出力信号を画素値と称する。各々の画素値は、最終的に出力される画像における複数の画素の各々に対応する。
例えば信号処理部32は、第1方向に連続性があると判断した場合に、第1方向連続性用のフィルタを適用する。同様に、第2方向に連続性があると判断した場合には、第2方向連続性用のフィルタを適用する。本例において、第1方向連続性用のフィルタは、図4から図6における垂直方向に連続性がある場合のフィルタである。また、第2方向連続性用のフィルタは、図4から図6における第2方向に連続性がある場合のフィルタである。
フィルタ処理モードにおけるフィルタとは、出力される画像の1つの画素値を算出するための、複数の光電変換部17の出力信号に対する演算を指す。本例のフィルタは、平滑化フィルタおよび先鋭化フィルタを有する。平滑化フィルタは、出力される画像において隣接する画素値を滑らかに連続的にする演算である。本例では、平滑化フィルタとして特定の位置に重みを付けて出力するガウシアンフィルタを用いる。先鋭化フィルタは、出力される画像において明暗を強調するまたはエッジを強調する演算である。本例では、先鋭化フィルタとしてラプラシアンフィルタを用いる。なお、IIR(Infinite Impulse Response)フィルタ等で実現されるバターワース(Butterworth)型のフィルタを用いてもよい。
判定・補間領域40の形状は、予め定められる。本例の判定・補間領域40は、少なくとも、第2方向に平行な3行かつ第1方向に平行な4列の光電変換部17‐Gと、第2方向に平行な2行かつ第1方向に平行な3列の光電変換部17‐Bと、第2方向に平行な4行かつ第1方向に平行な2列の光電変換部17‐Rとを含む。判定・補間領域40は、互いに隣接する2つの光電変換部17‐Gおよび2つの光電変換部17‐Bの境界の位置を中心42とする。中心42は、第2方向に平行な3行の光電変換部17‐Gのうち、第2行目にある2つの光電変換部17‐Gの境界に位置する。中心42は、円に囲まれた数字で示されている。判定・補間領域40に設けられる複数の光電変換部17は、中心42を通る第1方向に平行な直線および第2方向に平行な直線に対して線対称である。なお、判定・補間領域40の形状は、上記の形態に限定されない。判定・補間領域40の形状は、方向性判定および補間処理を適用できる限りにおいて、任意の形状とすることができる。
特許文献1に記載の従来方式では、2つの光電変換部17−Gの出力信号の値を加算することにより、1画素分に相当する緑色(G)用の出力信号を得ていた。しかし、2つの光電変換部17‐Gを用いて1画素分に相当する緑色(G)用の出力信号を得るので、画像における画素密度は半分に低下する。これに対して本例では、2つの光電変換部17‐Gと2つの光電変換部17‐Bとの境界の位置、および、2つの光電変換部17‐Bと2つの光電変換部17‐Rとの境界の位置に、周辺の画素の出力信号を用いて緑色(G)、青色(B)および赤色(R)の画素値をそれぞれ生成する。これにより、従来方式と比較して、画像における画素密度を向上させることができる。
図4は、判定・補間領域40において、第1方向に連続性がある場合を示す図である。なお、図4においては図面を見易くするために、図3で記載したマイクロレンズ12、開口領域および遮光領域の記載を省略する。なお、Gは緑色用の光電変換部17‐Gを簡易的に示す。また、Gに続く数字は説明のために記載した座標番号である。以降においては、アルファベット1文字および座標番号により光電変換部17の種類および位置を特定する。Bは光電変換部17−Bを示し、Rは光電変換部17‐Rを示す。
(第1方向性判定)信号処理部32は、判定・補間領域40内において第1方向で互いに隣接する光電変換部17の出力信号の差分を計算してよい。これにより信号処理部32は、第1方向の連続性を判定する。本例では、信号処理部32は、第1方向で互いに隣接するRの出力信号の差分を計算する。つまり、信号処理部32は、R11、R21、R31およびR41を含む領域46−1、ならびに、R12、R22、R32およびR42を含む領域46−2の少なくとも一方について、互いに隣接するRの出力信号の差分を計算する。
仮に領域46−1において、[R11,R21,R31,R41]の出力信号が[90,90,91,91]であったとする。この場合、互いに隣接するRの出力信号の差分ベクトル[R11−R21,R21−R31,R31−R41]は、[0,−1,0]となる。また仮に、領域46−1において、[R11,R21,R31,R41]の出力信号が[90,10,91,10]であったとする。この場合、互いに隣接するRの出力信号の差分ベクトルは、[80,−81,81]となる。信号処理部32は、例えば、差分値ベクトルの各成分の絶対値が10以下である場合に連続性があると判断してよい。この例では、信号処理部32は、差分ベクトル[0,−1,0]については第1方向に連続性があると判定し、差分ベクトル[80,−81,81]については第1方向に連続性がないと判定する。なお、連続性があると判定する差分ベクトルの成分の閾値は、プログラム修正により適宜定められてよい。
(第1方向性がある場合の補間処理:g33)信号処理部32は方向性判定の後に、判定・補間領域40において補間処理を行う。信号処理部32は、第1方向において方向性があると判定する場合、判定・補間領域40におけるa行×b列個のGの出力信号に平滑化フィルタを適用する。なお、aはbよりも大きな自然数であり、本例ではa=3、b=2である。
本例の信号処理部32は、判定・補間領域40における3行×2列個のGの出力信号(数1)に対してガウシアンフィルタを適用する。(数2)は、ガウシアンフィルタの一例である。
そして、信号処理部32は、(数1)および(数2)の畳み込み(コンボリューション)の値を算出する。畳み込みの演算は、M行N列の行列について、下記の(数3)により算出される。なお、M、N、mおよびnは自然数である。ただし(数3)において、Mが偶数のとき、m
1=−m/2,m
2=m/2であり、Σの演算においてm=0は除く。また、Mが奇数のとき、m
1=−(m−1)/2,m
2=(m−1)/2である。さらに、(数3)において、Nが偶数のとき、n
1=−n/2,n
2=n/2であり、Σの演算においてn=0は除く。また、Nが奇数のとき、n
1=−(n−1)/2,n
2=(n−1)/2である。
本例では、(数3)において、関数h=(数2),関数f=(数1),M=3,N=2である。また、m1=−1,m2=1である。n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数1)および(数2)の第1行を指定し、m1が(数1)および(数2)の第3行を指定し、n2が(数1)および(数2)の第1列を指定し、n1が(数1)および(数2)の第2列を指定するとする。これにより、ガウシアンフィルタを適用したg33‐Gは、g33‐G=(1×G12+2×G22+1×G32+1×G13+2×G23+1×G33)/8となる。
また信号処理部32は、判定・補間領域40におけるc行×d列個のRの出力信号に先鋭化フィルタを適用する。なお、cはdよりも大きな自然数であり、本例ではc=4、d=2である。本例の信号処理部32は、判定・補間領域40における4行×2列個のRの出力信号(数4)に対してラプラシアンフィルタを適用する。(数5)は、ラプラシアンフィルタの一例である。
そして、信号処理部32は、(数4)および(数5)の畳み込み(コンボリューション)の値を算出する。畳み込みの演算は(数3)と同様である。本例では、(数3)において、関数h=(数5),関数f=(数4),M=4,N=2である。また、m1=−2,m2=2であり、Σの演算においてn=0は除く。n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数4)および(数5)の第1行を指定し、m1が(数4)および(数5)の第4行を指定し、n2が(数4)および(数5)の第1列を指定し、n1が(数4)および(数5)の第2列を指定するとする。これにより、ラプラシアンフィルタを適用したg33‐Lは、g33‐L=(−1×R11+1×R21+1×R31−1×R41−1×R12+1×R22+1×R32−1×R42)/8となる。
信号処理部32は、平滑化フィルタを適用した値と先鋭化フィルタを適用した値との和をとることにより、中心42の位置に対応するGの画素値を算出する。つまり、g33‐Gとg33‐Lとの和を中心42における補正後の画素値g33とする。このように本例では、g33の画素値を算出するために、Gのガウシアンに加えてRのラプラシアンも加える。これにより、g33‐Gだけをg33とする場合と比較して、画素値をより精度よく算出することができる。
(第1方向性がある場合の補間処理:b
33,r
33)信号処理部32は、画素値g
33を算出するとともに、Bの出力信号を補正したb
33を算出する。信号処理部32は、判定・補間領域40におけるk行×l列個のBの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するBの画素値として算出する。本例では、kはlよりも大きな自然数であり、k=2、l=1である。本例の信号処理部32は、判定・補間領域40における2行×1列個のBの出力信号(数6)に対してガウシアンフィルタを適用する。そして、(数6)および(数7)の畳み込みを補正後の画素値b
33として算出する。なお、(数7)は、ガウシアンフィルタの一例である。
本例では、(数3)において、関数h=(数7),関数f=(数6),M=2,N=1である。また、m1=−1,m2=1であり、Σの演算においてn=0は除く。n1=n2=0である。ここで、m2が(数6)および(数7)の第1行を指定し、m1が(数6)および(数7)の第2行を指定し、n1およびn2が(数6)および(数7)の第1列を指定するとする。これにより、ガウシアンフィルタを適用したb33は、b33=(1×B12+1×B22)/2となる。
信号処理部32は、さらにRの出力信号を補正したr
33を算出する。信号処理部32は、判定・補間領域40におけるp行×q列個のRの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するRの画素値として算出する。本例では、pはqよりも大きな自然数であり、p=4、q=2である。本例の信号処理部32は、判定・補間領域40における4行×2列個のRの出力信号(数8)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数8)および(数9)の畳み込みを補正後の画素値r
33として算出する。なお、(数9)は、ガウシアンフィルタの一例である。
本例では、(数3)において、関数h=(数9),関数f=(数8),M=4,N=2である。m1=−2,m2=2であり、Σの演算においてn=0は除く。n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数8)および(数9)の第1行を指定し、m1が(数8)および(数9)の第4行を指定し、n2が(数8)および(数9)の第1列を指定し、n1が(数8)および(数9)の第2列を指定するとする。これにより、ガウシアンフィルタを適用したr33は、r33=(1×R11+3×R21+3×R31+1×R41+1×R12+3×R22+3×R32+1×R42)/16となる。
図5は、判定・補間領域40において、第2方向に連続性がある場合を示す図である。図4と同様に、マイクロレンズ12、開口領域および遮光領域の記載を省略する。
(第2方向性判定)信号処理部32は、判定・補間領域40内において第2方向で互いに隣接する光電変換部17の出力信号の差分を計算してよい。これにより信号処理部32は、第2方向の連続性を判定する。本例では、信号処理部32は、第2方向で互いに隣接するBの出力信号の差分を計算する。つまり、信号処理部32は、B11、B12およびB13を含む領域48−1、ならびに、B21、B22およびB23を含む領域48−2の少なくとも一方について、互いに隣接するBの出力信号の差分を計算する。
仮に領域48−1において、[B11,B12,B13]の出力信号が[90,91,91]であったとする。この場合、互いに隣接するRの出力信号の差分ベクトル[B11−B11,B12−B13]は、[−1,0]となる。また仮に、領域48−1において、[B11,B12,B13]の出力信号が[90,10,91]であったとする。この場合、互いに隣接するBの出力信号の差分ベクトルは、[80,−81]となる。信号処理部32は、例えば、差分値ベクトルの各成分の絶対値が10以下である場合に連続性があると判断してよい。この例では、信号処理部32は、差分ベクトル[−1,0]については第2方向に連続性があると判定し、差分ベクトル[80,−81]については第2方向に連続性がないと判定する。なお、連続性があると判定する差分ベクトルの成分の閾値は、プログラム修正により適宜定められてよい。
(第2方向性がある場合の補間処理:g33)信号処理部32は方向性判定の後に、判定・補間領域40において補間処理を行う。信号処理部32は、第2方向において方向性があると判定する場合、判定・補間領域40におけるr行×s列個のGの出力信号に平滑化フィルタを適用する。なお、rはsよりも小さな自然数であり、本例ではr=3、s=4である。これにより、判定・補間領域40の中心42における画素値g33を算出する。
本例の信号処理部32は、判定・補間領域40における3行×4列個のGの出力信号(数10)に対してガウシアンフィルタを適用する。なお、(数11)は、ガウシアンフィルタの一例である。
そして、信号処理部32は、(数10)および(数11)の畳み込みの値を算出する。本例では、(数3)において、関数h=(数11),関数f=(数10),M=3,N=4である。また、m1=−1,m2=1である。n1=−2,n2=2であり、Σの演算においてn=0は除く。ここで、m2が(数10)および(数11)の第1行を指定し、m1が(数10)および(数11)の第3行を指定し、n2が(数10)および(数11)の第1列を指定し、n1が(数10)および(数11)の第4列を指定するとする。これにより、ガウシアンフィルタを適用したg33‐Gは、g33‐G=(1×G11+2×G21+1×G31+3×G12+6×G22+3×G32+3×G13+6×G23+3×G33+1×G14+2×G24+1×G34)/32となる。
また信号処理部32は、判定・補間領域40におけるt行×u列個のBの出力信号に先鋭化フィルタを適用する。なお、tはuよりも小さな自然数であり、本例ではt=2、u=3である。本例の信号処理部32は、判定・補間領域40における2行×3列個のBの出力信号(数12)に対してラプラシアンフィルタを適用する。なお、(数13)は、ラプラシアンフィルタの一例である。
そして、信号処理部32は、(数12)および(数13)の畳み込みの値を算出する。本例では、(数3)において、関数h=(数13),関数f=(数12),M=2,N=3である。また、m1=−1,m2=1であり、Σの演算においてn=0は除く。n1=−1,n2=1である。ここで、m2が(数12)および(数13)の第1行を指定し、m1が(数12)および(数13)の第2行を指定し、n2が(数12)および(数13)の第1列を指定し、n1が(数12)および(数13)の第3列を指定するとする。これにより、ラプラシアンフィルタを適用したg33‐Lは、g33‐L=(−1×B11−1×B21+2×B12+2×B22−1×B13−1×B23)/8となる。
平滑化フィルタを適用した値と先鋭化フィルタを適用した値との和をとることにより、中心42の位置に対応するGの画素値を算出する。つまり、g33‐Gとg33‐Lとの和を中心42における補正後の画素値g33とする。このように本例では、g33の画素値を算出するために、Gのガウシアンに加えてBのラプラシアンも加える。したがって、g33‐Gだけをg33とする場合と比較して、画像をより先鋭化することができる。
(第2方向性がある場合の補間処理:b
33,r
33)信号処理部32は、Gの出力信号を補正したg
33を算出するとともに、Bの出力信号を補正したb
33を算出する。信号処理部32は、判定・補間領域40におけるv行×w列個のBの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するBの画素値として算出する。本例では、vはwよりも小さな自然数であり、v=2、w=3である。本例の信号処理部32は、判定・補間領域40における2行×3列個のBの出力信号(数14)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数14)および(数15)の畳み込みの値を補正後の画素値b
33として算出する。なお、(数15)は、ガウシアンフィルタの一例である。
本例では、(数3)において、関数h=(数15),関数f=(数14),M=2,N=3である。したがって、m1=−1,m2=1であり、Σの演算においてm=0は除く。また、n1=−1,n2=1である。ここで、m2が(数14)および(数15)の第1行を指定し、m1が(数14)および(数15)の第2行を指定し、n2が(数14)および(数15)の第1列を指定し、n1が(数14)および(数15)の第3列を指定するとする。これにより、ガウシアンフィルタを適用したb33は、b33=(1×B11+1×B21+2×B12+2×B22+1×B13+1×B23)/8となる。
同様に、信号処理部32は、判定・補間領域40におけるx行×y列個のRの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するRの画素値として算出する。本例では、xとyとは等しい自然数であり、x=y=2である。本例の信号処理部32は、判定・補間領域40における2行×2列個のRの出力信号(数16)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数16)および(数17)の畳み込みの値を補正後の画素値r
33として算出する。なお、(数17)は、ガウシアンフィルタの一例である。
本例では、(数3)において、関数h=(数17),関数f=(数16),M=2,N=2である。したがって、m1=−1,m2=1であり、Σの演算においてm=0は除く。また、n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数16)および(数17)の第1行を指定し、m1が(数16)および(数17)の第2行を指定し、n2が(数16)および(数17)の第1列を指定し、n1が(数16)および(数17)の第2列を指定するとする。これにより、ガウシアンフィルタを適用したr33は、r33=(1×R12+1×R31+1×R22+1×R32)/4となる。
図6は、判定・補間領域41を示す図である。判定・補間領域41は、判定・補間領域40を第1方向および第2方向に1ピッチ分だけ移動させた領域である。なお、1ピッチは半ピッチの2倍の長さである。判定・補間領域41は、互いに隣接する2つのGおよび2つのRの境界の位置を中心44とする。判定・補間領域41は、少なくとも、第2方向に平行な3行、かつ、第1方向に平行な4列のGと、第2方向に平行な4行、かつ、第1方向に平行な2列のBと、第2方向に平行な2行、かつ、第1方向に平行な3列のRとを含む。判定・補間領域41におけるBおよびRの配置は、判定・補間領域40におけるRおよびBの配置にそれぞれ対応する。
信号処理部32は、判定・補間領域40での処理と同様に、判定・補間領域41において方向性判定および補間処理をする。補間処理により、中心44の位置にお行ける画素値g44、b44およびr44を生成する。
(第1方向性がある場合の補間処理:g44)信号処理部32は第1方向に連続性があると判定した後に、判定・補間領域41において補間処理を行う。信号処理部32は、第1方向において方向性があると判定する場合、判定・補間領域41におけるa行×b列個のGの出力信号に平滑化フィルタを適用する。なお、aはbよりも大きな自然数であり、本例ではa=3、b=2である。これにより、判定・補間領域41の中心44における画素値g44を算出する。
本例の信号処理部32は、判定・補間領域41における3行×2列個のGの出力信号(数18)に対してガウシアンフィルタを適用する。(数19)は、ガウシアンフィルタの一例である。
そして、信号処理部32は、(数18)および(数19)の畳み込みの値を算出する。本例では、(数3)において、関数h=(数19),関数f=(数18),M=3,N=2である。また、m1=−1,m2=1である。n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数18)および(数19)の第1行を指定し、m1が(数18)および(数19)の第3行を指定し、n2が(数18)および(数19)の第1列を指定し、n1が(数18)および(数19)の第2列を指定するとする。これにより、ガウシアンフィルタを適用したg44−Gは、g44‐G=(1×G23+2×G33+1×G43+1×G24+2×G34+1×G44)/8となる。
また信号処理部32は、判定・補間領域41におけるc行×d列個のBの出力信号に先鋭化フィルタを適用する。なお、cはdよりも大きな自然数であり、本例ではc=4、d=2である。本例の信号処理部32は、判定・補間領域41における4行×2列個のBの出力信号(数20)に対してラプラシアンフィルタを適用する。(数21)は、ラプラシアンフィルタの一例である。
そして、信号処理部32は、(数20)および(数21)の畳み込みの値を算出する。本例では、(数3)において、関数h=(数21),関数f=(数20),M=4,N=2である。また、m1=−2,m2=2であり、Σの演算においてn=0は除く。n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数20)および(数21)の第1行を指定し、m1が(数20)および(数21)の第4行を指定し、n2が(数20)および(数21)の第1列を指定し、n1が(数20)および(数21)の第2列を指定するとする。これにより、ラプラシアンフィルタを適用したg44‐Lは、g44‐L=(−1×B12+1×B22+1×B32−1×B42−1×B13+1×B23+1×B33−1×B43)/8となる。
平滑化フィルタを適用した値と先鋭化フィルタを適用した値との和をとることにより、中心44の位置に対応するGの画素値を算出する。つまり、g44‐Gとg44‐Lとの和を中心44における補正後の画素値g44とする。
(第1方向性がある場合の補間処理:b
44,r
44)信号処理部32は、画素値g
44を算出するとともに、Bの画素値を補正したb
44を算出する。信号処理部32は、判定・補間領域41におけるk行×l列個のBの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するBの画素値として算出する。本例では、kはlよりも大きな自然数であり、k=4、l=2である。本例の信号処理部32は、判定・補間領域41における4行×2列個のBの出力信号(数22)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数22)および(数23)の畳み込みの値を補正後の画素値b
44として算出する。なお、(数23)は、ガウシアンフィルタの一例である。
本例では、(数3)において、関数h=(数23),関数f=(数22),M=4,N=2である。m1=−2,m2=2であり、Σの演算においてn=0は除く。n1=1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数22)および(数23)の第1行を指定し、m1が(数22)および(数23)の第4行を指定し、n2が(数22)および(数23)の第1列を指定し、n1が(数22)および(数23)の第2列を指定するとする。これにより、ガウシアンフィルタを適用したb44は、b44=(1×B12+3×B22+3×B32+1×B42+1×B13+3×B23+3×B33+1×B43)/16となる。
信号処理部32は、さらにRの画素値を補正したr
44を算出する。信号処理部32は、判定・補間領域41におけるp行×q列個のRの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するRの画素値として算出する。本例では、pはqよりも大きな自然数であり、p=2、q=1である。本例の信号処理部32は、判定・補間領域41における2行×1列個のRの出力信号(数24)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数24)および(数25)の畳み込みの値を補正後の画素値r
44として算出する。なお、(数25)は、ガウシアンフィルタの一例である。
本例では、(数3)において、関数h=(数25),関数f=(数24),M=2,N=1である。また、m1=−1,m2=1であり、Σの演算においてn=0は除く。n1=n2=0である。ここで、m2が(数24)および(数25)の第1行を指定し、m1が(数24)および(数25)の第2行を指定し、n1およびn2が(数24)および(数25)の第1列を指定するとする。これにより、ガウシアンフィルタを適用したr44は、r44=(1×R32+1×R42)/2となる。
(第2方向性がある場合の補間処理:g44)信号処理部32は第2方向に連続性があると判定した後に、判定・補間領域41において補間処理を行う。信号処理部32は、第2方向において方向性があると判定する場合、判定・補間領域41におけるr行×s列個のGの出力信号に平滑化フィルタを適用する。なお、rはsよりも小さな自然数であり、本例ではr=3、s=4である。これにより、判定・補間領域40の中心44における画素値g44を算出する。
本例の信号処理部32は、判定・補間領域41における3行×4列個のGの出力信号(数26)に対してガウシアンフィルタを適用する。なお、(数27)は、ガウシアンフィルタの一例である。
そして、信号処理部32は、(数26)および(数27)の畳み込みの値を算出する。本例では、(数3)において、関数h=(数27),関数f=(数26),M=3,N=4である。また、m1=−1,m2=1である。n1=−2,n2=2であり、Σの演算においてn=0は除く。ここで、m2が(数26)および(数27)の第1行を指定し、m1が(数26)および(数27)の第3行を指定し、n2が(数26)および(数27)の第1列を指定し、n1が(数26)および(数27)の第4列を指定するとする。これにより、ガウシアンフィルタを適用したg44‐Gは、g44‐G=(1×G22+2×G32+1×G42+3×G23+6×G33+3×G43+3×G24+6×G34+3×G44+1×G25+2×G35+1×G45)/32となる。
また信号処理部32は、判定・補間領域41におけるt行×u列個のRの出力信号に先鋭化フィルタを適用する。なお、tはuよりも小さな自然数であり、本例ではt=2、u=3である。本例の信号処理部32は、判定・補間領域41における2行×3列個のRの出力信号(数28)に対してラプラシアンフィルタを適用する。なお、(数29)は、ラプラシアンフィルタの一例である。
そして、信号処理部32は、(数28)および(数29)の畳み込みの値を算出する。本例では、(数3)において、関数h=(数29),関数f=(数28),M=2,N=3である。また、m1=−1,m2=1であり、Σの演算においてn=0は除く。n1=−1,n2=1である。ここで、m2が(数28)および(数29)の第1行を指定し、m1が(数28)および(数29)の第2行を指定し、n2が(数28)および(数29)の第1列を指定し、n1が(数28)および(数29)の第3列を指定するとする。これにより、ラプラシアンフィルタを適用したg44‐Lは、g44‐L=(−1×R31−1×R41+2×R32+2×R42−1×R33−1×R43)/8となる。
平滑化フィルタを適用した値と先鋭化フィルタを適用した値との和をとることにより、中心44の位置に対応するGの画素値を算出する。つまり、g44‐Gとg44‐Lとの和を中心44における補正後の画素値g44とする。
(第2方向性がある場合の補間処理:b
44,r
44)信号処理部32は、画素値g
44を算出するとともに、Rの出力信号を補正した画素値r
44を算出する。信号処理部32は、判定・補間領域41におけるv行×w列個のRの出力信号に平滑化フィルタを適用した値を、中心42の位置に対応するRの画素値として算出する。本例では、vはwよりも小さな自然数であり、v=2、w=3である。本例の信号処理部32は、判定・補間領域41における2行×3列個のRの出力信号(数30)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数30)および(数31)の畳み込みの値を補正後の画素値r
44として算出する。なお、(数31)は、ガウシアンフィルタの一例である。
本例では、(数3)において、M=2,N=3である。したがって、m1=−1,m2=1であり、Σの演算においてm=0は除く。また、n1=−1,n2=1である。ここで、m2が(数30)および(数31)の第1行を指定し、m1が(数30)および(数31)の第2行を指定し、n2が(数30)および(数31)の第1列を指定し、n1が(数30)および(数31)の第3列を指定するとする。これにより、ガウシアンフィルタを適用したr44は、r44=(1×R31+1×R41+2×R32+2×R42+1×R33+1×R43)/8となる。
同様に、信号処理部32は、判定・補間領域41におけるx行×y列個のBの出力信号に平滑化フィルタを適用した値を、中心44の位置に対応するBの画素値として算出する。本例では、xとyとは等しい自然数であり、x=y=2である。本例の信号処理部32は、判定・補間領域41における2行×2列個のBの出力信号(数32)に対してガウシアンフィルタを適用する。そして、信号処理部32は、(数32)および(数33)の畳み込みの値を補正後の画素値b
44として算出する。なお、(数33)は、ガウシアンフィルタの一例である。
本例では、(数3)において、M=2,N=2である。したがって、m1=−1,m2=1であり、Σの演算においてm=0は除く。また、n1=−1,n2=1であり、Σの演算においてn=0は除く。ここで、m2が(数32)および(数33)の第1行を指定し、m1が(数32)および(数33)の第2行を指定し、n2が(数32)および(数33)の第1列を指定し、n1が(数32)および(数33)の第2列を指定するとする。これにより、ガウシアンフィルタを適用したb44は、b44=(1×B22+1×B32+1×B23+1×B33)/4となる。
図7Aは、判定・補間領域40における各画素と補間生成される画素値の位置との対応関係を示す図である。図4と同様に、マイクロレンズ12、開口領域および遮光領域の記載を省略する。図7Bは判定・補間領域40に対応する位置において補間生成された画素値を示す図である。図7Aの中心42の位置において補間処理された画素値g33、b33およびr33は、図7Bの中心42の位置における画素値g33、bおよびrにそれぞれ対応する。同様に、図7Aの中心44の位置において補間処理された画素値g44、b44およびr44は、図7Bの中心44の位置における画素値g44、bおよびrにそれぞれ対応する。
図7Aの判定・補間領域40における中心42および中心44以外の7つの実線の円は、互いに隣接する2つのGおよび2つのRの境界の位置、ならびに、互いに隣接する2つのGおよび2つのBの境界の位置を示す。当該7つの実線の円の位置に補間処理により生成される画素値は、判定・補間領域40および41と同様の処理をして生成されてよい。各実線の円に対応する位置において補間処理により生成された画素値g、bおよびrが、図7Bに対応して示されている。例えば、G11、G12、R11およびR21の境界の位置において補間処理により生成された画素値g22、b22およびr22が、図7Bにおいてg22、bおよびrとして示されている。なお、図7Aにおける点線の円は、図7Bにおける点線の円に対応する。
本例では、正方形の光電変換部17を第1方向及び第2方向に配列する。第2方向において互いに隣接する2つのGと、第1方向において互いに隣接する2つのBまたは2つのRとの境界位置において、R、GおよびBの出力信号を用いて補間後の画素値r、gおよびbをそれぞれ生成する。したがって、従来のように隣接画素同士の出力信号を加算する場合と比較して、解像度を上げることができる。また、ガウシアンフィルタに加えてラプラシアンフィルタを用いるので、ガウシアンフィルタだけを用いる場合と比較して、画像をより先鋭化することができる。したがって、色再現性を犠牲にせずに、解像度を向上させることができる。
本例においては、第2方向に平行な3行かつ第1方向に平行な4列のGを有する判定・補間領域40および41について、画素値を補間処理する方法について述べた。なお、判定・補間領域40および41が、さらに多くのG、BおよびRを含むように拡張すれば、第2方向および第1方向の方向性判定の精度をさらに向上させることができる。また、画素値を補間処理する場合に、フィルタのカーネルサイズを小さくすれば演算量を減らすことができる。例えば、第1方向に連続性がある場合に、g33用のガウシアンフィルタを本例の3行×2列から3行×1列へとすれば、演算量を減らすことができる。同様に、第2方向に連続性がある場合に、g33用のガウシアンフィルタを本例の3行×4列から1行×4列とすれば、演算量を減らすことができる。これにより処理速度を向上させることができる。
(変形例)第1の実施形態においては、全ての光電変換部17が遮光領域および開口領域を有する例を説明した。しかしながら、遮光領域および開口領域を有するGを、第2方向においてだけ連続して設ける構成としてもよい。また、遮光領域および開口領域を有するRを、第1方向においてだけ連続して設ける構成としてもよい。遮光領域を有する光電変換部17の出力信号は、遮光領域を有しない光電変換部17の出力信号の半分となる。そこで、遮光領域を有する光電変換部17の画素値を予め2倍する処理を施す。これにより、他の画素の画素値と同様に方向性判定および補間処理を適用することができる。
図8は、第2の実施形態における加算モードとフィルタ処理モードとを切り替える処理を説明するフローチャート70である。ユーザが本体電源を入れて撮像モードをオンにすることにより、本例のフローが開始される(ステップ71)。その後、信号処理部32は被写体を撮像する画像をライブビュー表示するか否か判定する(ステップ72)。例えば信号処理部32は、シャッターレリーズが押下されていない場合は画像をライブビュー表示してよい。これに対し、信号処理部32は、シャッターレリーズが押下された場合は画像を撮像してデータとして記録部60に保存してよい。信号処理部32は、ライブビュー表示とするか否かを切り替える切替部を有する。
切替部は、画像をライブビュー表示する場合に、第1方向および第2方向の一方において隣接する2つの画素の信号値の加算により生成する加算モードを選択する(ステップ73)。これに対し、切替部は、ライブビュー表示をせずに画像をデータとして記録部60に保存する場合に、平滑化フィルタおよび先鋭化フィルタを適用するフィルタ処理モードを選択する(ステップ74)。なお、フィルタ処理モードにおいては、信号処理部32が、第1実施形態における方向性判定および補間処理をする。
加算モードまたはフィルタ処理モードでの出力表示の後、信号処理部32は撮像モードが継続されるか否かを判断する(ステップ75)。撮像モードが継続されない場合には、信号処理部32は処理を終了する。例えば、ユーザが一眼レフカメラ400の電源をオフにした場合、または、ユーザが撮像モードをオフにする場合には、信号処理部32は処理を終了する(ステップ76)。撮像モードが継続される場合には、信号処理部32は処理を継続する。例えば、ユーザが撮像モードを維持する場合には、信号処理部32は処理を継続する(ステップ77)。当該処理により、ライブビュー表示では、加算モードにより粗い画像を表示するので、信号処理部32の処理負担を軽減することができる。それゆえ、動く被写体を表示し続ける場合に表示が途切れることを防ぐことができる。これに対して、画像をデータとして保存する場合には、ライブビュー表示よりも先鋭な画像をデータとして記録することができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることが可能であることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順序で実施することが必須であることを意味するものではない。