(第1の実施形態)
図1は、本発明の第1の実施形態によるベイヤ配列の色フィルタを有する撮像素子を示す図である。撮像装置は、CMOSイメージセンサ等の撮像素子を有する。撮像装置は、デジタルカメラ、ビデオカメラの他、スマートフォン、タブレット、工業用カメラ、医療用カメラ等に適用可能である。撮像素子は、2次元行列状に配置された複数の画素を有し、複数の画素の各々は、色フィルタ(例えば、赤(R)、緑(G)、青(B)の3色のうちの一つの色フィルタ)を有する。図1は、原色ベイヤ配列の1単位の色フィルタを示す。撮像素子は、画素毎に、光電変換を行い、アナログデジタル変換を行い、デジタルのR信号(赤信号)、G1信号(緑信号)、G2信号(緑信号)、又はB信号(青信号)を出力する。G1信号及びG2信号は、G信号(緑信号)である。ベイヤ配列の色フィルタを有する撮像装置は、各画素においてR、G、Bのうちの一つの色信号しか得られないため、各画素においてRGBすべての色信号を求める場合には、後段の図2の輝度信号生成部200で補間処理を行う必要がある。
図2は、本実施形態による輝度信号生成部200の構成例を示す図である。輝度信号生成部200は、画像処理装置であり、図1の撮像素子からベイヤ配列のデジタルのR信号、G信号及びB信号を入力する。輝度信号生成部200は、WB回路(ホワイトバランス回路)201と、G補間回路202と、R補間回路203と、B補間回路204と、APC回路205と、輝度信号生成回路206と、加算回路207とを有する。
WB回路201は、撮像素子からベイヤ配列のデジタルの画像信号(R信号、G信号及びB信号)を入力し、画像信号のホワイトバランスを補正する。G補間回路202は、WB回路201から出力されるベイヤ配列の画像信号を入力し、図1のR画素及びB画素の位置のG信号を補間により算出し、全画素のG信号を出力する。R画素は赤フィルタが設けられた画素であり、B画素は青フィルタが設けられた画素であり、G画素は緑フィルタが設けられた画素である。G補間回路202の処理の詳細は後述する。
R補間回路203は、WB回路201が出力するベイヤ配列の入力画像信号に対して、図1の入力画像のG画素及びB画素の位置のR信号を補間により算出し、全画素のR信号を出力する。例えば、R補間回路203は、WB回路201が出力するベイヤ配列の入力画像信号に対して、R画素以外の信号レベルを0にした後、2次元のLPF(ローパスフィルタ)処理によりR信号を算出する。
B補間回路204は、WB回路201が出力するベイヤ配列の入力画像信号に対して、図1の入力画像のR画素及びG画素の位置のB信号を補間により算出し、全画素のB信号を出力する。例えば、B補間回路204は、WB回路201が出力するベイヤ配列の入力画像信号に対して、B画素以外の信号レベルを0にした後、2次元のLPF処理によりB信号を算出する。
APC回路205は、G補間回路202から出力されるG信号に対して、HPF(ハイパスフィルタ)等を適応することでアパーチャ補正信号を生成する。加算回路207は、G補間回路202が出力するG信号とAPC回路205の出力信号とを加算し、全画素のG信号を出力する。輝度信号生成回路206は、加算回路207が出力するG信号と、R補間回路203が出力するR信号と、B補間回路204が出力するB信号とを基に、次式(1)により、全画素の輝度信号Yを生成する。
Y=0.3R+0.59G+0.11B ・・・(1)
図3は、図2のG補間回路202の構成例を示すブロック図である。G補間回路202は、G画素V補間回路301と、G画素H補間回路302と、R,B画素V補間回路303と、R,B画素H補間回路304と、V色差算出回路305と、H色差算出回路306とを有する。さらに、G補間回路202は、V色差傾き算出回路307と、H色差傾き算出回路308と、テクスチャ検出回路309と、Nフィルタ回路310と、Sフィルタ回路311と、Wフィルタ回路312と、Eフィルタ回路313とを有する。さらに、G補間回路202は、N重み算出回路314と、S重み算出回路315と、W重み算出回路316と、E重み算出回路317と、合成回路318と、加算回路319とを有する。
図4は、G補間回路202の画像処理方法の流れを示すフローチャートである。ステップS401では、G画素V補間回路301は、WB回路201が出力するベイヤ配列の入力画像信号に対して、垂直方向に補間処理を行うことによりG信号を算出し、全画素のG信号を出力する。具体的には、G画素V補間回路301は、着目画素がG画素の場合には、そのままG信号として出力し、着目画素がR画素又はB画素の場合には、垂直方向にG信号の補間処理を行うことによりG信号を算出する。例えば、G画素V補間回路301は、画像における着目画素のX座標及びY座標を(j,i)としたとき、着目画素がR画素の場合、G信号Gvi,jを次式(2)により算出する。また、G画素V補間回路301は、着目画素がB画素の場合も、着目画素がR画素の場合と同様の方法によりG信号を算出する。
Gvi,j=(Gi-1,j+Gi+1,j)/2 ・・・(2)
次に、ステップS402では、G画素H補間回路302は、WB回路201が出力する入力画像信号に対して、水平方向に補間処理を行うことによりG信号を算出し、全画素のG信号を出力する。具体的には、G画素H補間回路302は、着目画素がG画素の場合には、そのままG信号として出力し、着目画素がR画素又はB画素の場合には、水平方向にG信号の補間処理を行うことによりG信号を算出する。例えば、G画素H補間回路302は、着目画素がR画素の場合、G信号Ghi,jを次式(3)により算出する。また、G画素H補間回路302は、着目画素がB画素の場合も、着目画素がR画素の場合と同様の方法によりG信号を算出する。
Ghi,j=(Gi,j-1+Gi,j+1)/2 ・・・(3)
次に、ステップS403では、R,B画素V補間回路303は、WB回路201が出力する入力画像信号に対して、垂直方向に補間処理を行うことによりR信号及びB信号を算出し、全画素のR信号及びB信号を出力する。具体的には、R,B画素V補間回路303は、着目画素がR画素又はB画素の場合には、そのままR信号又はB信号として出力する。R,B画素V補間回路303は、着目画素がG画素の場合に、着目画素の垂直方向がR画素の場合には、垂直方向に補間処理を行うことによりR信号を算出し、着目画素の垂直方向がB画素の場合には、垂直方向に補間処理を行うことによりB信号を算出する。例えば、R,B画素V補間回路303は、着目画素がG画素であり、着目画素の垂直方向がR画素の場合には、R信号Rvi,jを次式(4)により算出する。また、R,B画素V補間回路303は、着目画素の垂直方向がB画素の場合も、着目画素の垂直方向がR画素の場合と同様の方法によりB信号を算出する。
Rvi,j=(Ri-1,j+Ri+1,j)/2 ・・・(4)
次に、ステップS404では、R,B画素H補間回路304は、WB回路201が出力する入力画像信号に対して、水平方向に補間処理を行うことによりR信号及びB信号を算出し、全画素のR信号及びB信号を出力する。具体的には、R,B画素H補間回路304は、着目画素がR画素又はB画素の場合には、そのままR信号又はB信号として出力する。R,B画素H補間回路304は、着目画素がG画素の場合に、着目画素の水平方向がR画素の場合には、水平方向に補間処理を行うことによりR信号を算出し、着目画素の水平方向がB画素の場合には、水平方向に補間処理を行うことによりB信号を算出する。例えば、R,B画素H補間回路304は、着目画素がG画素であり、着目画素の水平方向がR画素の場合には、R信号Rhi,jを次式(5)により算出する。また、R,B画素H補間回路304は、着目画素の水平方向がB画素の場合も、着目画素の水平方向がR画素の場合と同様の方法によりB信号を算出する。
Rhi,j=(Ri,j-1+Ri,j+1)/2 ・・・(5)
なお、ステップS401〜S404において、G画素とR,B画素の垂直及び水平方向の補間方法として、式(2)〜(5)を用いて着目画素の隣接画素から補間を行ったが、これに限定されず、隣接画素以外の画素を用いて補間を行ってもよい。
次に、ステップS405では、V色差算出回路305は、G画素V補間回路301から出力されたG信号から、R,B画素V補間回路303から出力されたR信号又はB信号を減算することにより、入力画像信号の垂直方向の色差信号を算出する。V色差算出回路305は、第1の色差信号算出手段である。V色差算出回路305は、着目画素(j,i)において、G画素V補間回路301が出力する信号がG信号Gvi,jであり、R,B画素V補間回路303が出力する信号がR信号Rvi,jの場合、垂直方向の色差信号Diff_vを次式(6)により算出する。また、V色差算出回路305は、R,B画素V補間回路303が出力する信号がB信号の場合も、R,B画素V補間回路303が出力する信号がR信号の場合と同様の方法により、G信号とB信号の垂直色差信号を算出する。
Diff_vi,j=Gvi,j−Rvi,j ・・・(6)
次に、ステップS406では、H色差算出回路306は、G画素H補間回路302から出力されたG信号から、R,B画素H補間回路304から出力されたR信号又はB信号を減算することにより、入力画像信号の水平方向の色差信号を算出する。H色差算出回路306は、第2の色差信号算出手段である。H色差算出回路306は、着目画素(j,i)において、G画素H補間回路302が出力する信号がG信号Ghi,jであり、R,B画素H補間回路304が出力する信号がR信号Rhi,jの場合、水平方向の色差信号Diff_hを次式(7)により算出する。また、H色差算出回路306は、R,B画素H補間回路304が出力する信号がB信号の場合も、R,B画素H補間回路304が出力する信号がR信号の場合と同様の方法により、G信号とB信号の水平色差信号を算出する。
Diff_hi,j=Ghi,j−Rhi,j ・・・(7)
次に、ステップS407では、V色差傾き算出回路307は、V色差算出回路305から出力された色差信号を基に、垂直方向の色差の傾きを算出する。具体的には、V色差傾き算出回路307は、着目画素(j,i)において、V色差算出回路305から出力された色差信号Diff_vを基に、垂直方向の色差の傾き信号Grad_vを次式(8)により算出する。
Grad_vi,j=|Diff_vi-1,j−Diff_vi+1,j| ・・・(8)
次に、ステップS408では、H色差傾き算出回路308は、H色差算出回路306から出力された色差信号を基に、水平方向の色差の傾きを算出する。具体的には、H色差傾き算出回路308は、着目画素(j,i)において、H色差算出回路306から出力された色差信号Diff_hを基に、水平方向の色差の傾き信号Grad_hを次式(9)により算出する。
Grad_hi,j=|Diff_hi,j-1−Diff_hi,j+1| ・・・(9)
次に、ステップS409では、テクスチャ検出回路309は、WB回路201が出力する入力画像信号に対して、光学的な折り返しや、色収差の影響で、斜めの線状の被写体にブロック状の偽のパターンが発生しているか否かを検出する。テクスチャ検出回路309は、第1の度合い算出手段である。テクスチャ検出回路309の処理の詳細は後述するが、テクスチャ検出回路309では、テクスチャの程度に応じて0.0〜1.0の間のテクスチャ度αを出力する。テクスチャ度αは、例えば、斜めの線状の被写体にブロック状の偽のパターンが発生しないと判断される場合には0.0と出力され、斜めの線状の被写体にブロック状の偽のパターンが発生していると判断される場合には1.0と出力される。
次に、ステップS410では、Nフィルタ回路310は、V色差算出回路305から出力された色差信号に対して、テクスチャ検出回路309から出力されたテクスチャ度αに基づいて上方向のフィルタ処理を行う。具体的には、まず、Nフィルタ回路310は、V色差算出回路305から出力された色差信号Diff_vを用いて、着目画素(j,i)における上方向のフィルタ処理の結果Fil_nを次式(11)により算出する。
次に、Nフィルタ回路310は、テクスチャ度αに基づいて、色差信号Diff_nを次式(12)により算出して出力する。
Diff_ni,j=αi,j×Diff_vi,j
+(1.0−αi,j)×Fil_ni,j ・・・(12)
次に、ステップS411では、Sフィルタ回路311は、V色差算出回路305から出力された色差信号に対して、テクスチャ検出回路309から出力されたテクスチャ度αに基づいて下方向のフィルタ処理を行う。具体的には、まず、Sフィルタ回路311は、V色差算出回路305から出力された色差信号Diff_vを用いて、着目画素(j,i)における下方向のフィルタ処理の結果Fil_sを次式(13)により算出する。
次に、Sフィルタ回路311は、テクスチャ度αに基づいて、色差信号Diff_sを次式(14)により算出して出力する。
Diff_si,j=αi,j×Diff_vi,j
+(1.0−αi,j)×Fil_si,j ・・・(14)
次に、ステップS412では、Wフィルタ回路312は、H色差算出回路306から出力された色差信号に対して、テクスチャ検出回路309から出力されたテクスチャ度αに基づいて左方向のフィルタ処理を行う。具体的には、まず、Wフィルタ回路312は、H色差算出回路306から出力された色差信号Diff_hを用いて、着目画素(j,i)における左方向のフィルタ処理の結果Fil_wを次式(15)により算出する。
次に、Wフィルタ回路312は、テクスチャ度αに基づいて、色差信号Diff_Wを次式(16)により算出して出力する。
Diff_wi,j=αi,j×Diff_hi,j
+(1.0−αi,j)×Fil_wi,j ・・・(16)
次に、ステップS413では、Eフィルタ回路313は、H色差算出回路306から出力された色差信号に対して、テクスチャ検出回路309から出力されたテクスチャ度αに基づいて右方向のフィルタ処理を行う。具体的には、まず、Eフィルタ回路313は、H色差算出回路306から出力された色差信号Diff_hを用いて、着目画素(j,i)における右方向のフィルタ処理の結果Fil_eを次式(17)により算出する。
次に、Eフィルタ回路313は、テクスチャ度αに基づいて、色差信号Diff_eを次式(18)により算出して出力する。
Diff_ei,j=αi,j×Diff_hi,j
+(1.0−αi,j)×Fil_ei,j ・・・(18)
次に、ステップS414では、N重み算出回路314は、V色差傾き算出回路307から出力された垂直方向の色差の傾き信号Grad_vを基に、上方向の重みWnを次式(19)により算出する。
次に、ステップS415では、S重み算出回路315は、V色差傾き算出回路307から出力された垂直方向の色差の傾き信号Grad_vを基に、下方向の重みWsを次式(20)により算出する。
次に、ステップS416では、W重み算出回路316は、H色差傾き算出回路308から出力された水平方向の色差の傾き信号Grad_hを基に、左方向の重みWwを次式(21)により算出する。
次に、ステップS417では、E重み算出回路317は、H色差傾き算出回路308から出力された水平方向の色差の傾き信号Grad_hを基に、右方向の重みWeを次式(22)により算出する。
次に、ステップS418では、合成回路318は、N重み算出回路314から入力される重みWn、S重み算出回路315から入力される重みWs、W重み算出回路316から入力される重みWw、及びE重み算出回路317から入力される重みWeを入力する。また、合成回路318は、Nフィルタ回路310から入力される色差信号Diff_nと、Sフィルタ回路311から入力される色差信号Diff_sとを入力する。また、合成回路318は、Wフィルタ回路312から入力される色差信号Diff_wと、Eフィルタ回路313から入力される色差信号Diff_eとを入力する。合成回路318は、重みWn、重みWs、重みWw及び重みWeに基づいて、色差信号Diff_nと、色差信号Diff_sと、色差信号Diff_wと、色差信号Diff_eとを合成し、色差信号Diff_mixを次式(23)により算出する。
Diff_mixi,j=(Wni,j×Diff_ni,j+Wsi,j×Diff_si,j
+Wwi,j×Diff_wi,j+Wei,j×Diff_ei,j)/Wti,j
Wti,j=Wni,j+Wsi,j+Wwi,j+Wei,j
・・・(23)
次に、ステップS419では、加算回路319は、G補間回路202に入力された入力画像信号の着目画素がR画素又はB画素の場合には、着目画素の信号に対して合成回路318で合成された色差信号Diff_mixを加算してG信号を算出して出力する。また、加算回路319は、着目画素がG画素の場合には、G補間回路202に入力された画像信号をそのまま出力する。加算回路319の出力信号は、G補間回路202の出力信号である。
以上のように、Nフィルタ回路310は上方向のフィルタ処理を行い、Sフィルタ回路311は下方向のフィルタ処理を行い、Wフィルタ回路312は左方向のフィルタ処理を行い、Eフィルタ回路313は右方向のフィルタ処理を行う。Nフィルタ回路310とSフィルタ回路311は、第1のフィルタ処理手段であり、垂直方向の色差信号に対してフィルタ処理を行う。Wフィルタ回路312とEフィルタ回路313は、第2のフィルタ処理手段であり、水平方向の色差信号に対してフィルタ処理を行う。そして、着目画素がR画素又はB画素の場合には、フィルタ処理後の色差信号が、合成回路318で方向毎の重みで合成された後に、加算回路319で着目画素に加算され、G補間回路202の出力となるG信号が生成される。
図5は、図3のテクスチャ検出回路309の構成例を示すブロック図である。テクスチャ検出回路309は、G画素0挿入回路501と、HV補間回路502と、D45度エッジ検出回路503と、D135度エッジ検出回路504とを有する。さらに、テクスチャ検出回路309は、G画素以外0挿入回路505と、HV補間回路506と、エッジ方向判定回路507と、セレクタ508と、係数算出回路509とを有する。
図6は、テクスチャ検出回路309の画像処理方法の流れを示すフローチャートである。
ここで、図7(a)は、光学的な折り返しや、色収差の影響で、G信号に対してR、B信号がずれている場合に、斜めの線状の被写体にブロック状の偽のパターンが発生している場合の画像信号の一例を説明するための図である。一方、図7(d)は、ブロック状の偽のパターンが発生していない斜め線状の被写体の一例を説明するための図である。ステップS601では、G画素0挿入回路501は、WB回路201が出力するベイヤ配列の画像信号のG画素の信号レベルを0にする。
次に、ステップS602では、HV補間回路502は、G画素0挿入回路501が出力する画像信号に対して、水平方向および垂直方向の補間処理を行うことにより、R,B信号を算出する。このとき、HV補間回路502は、水平方向および垂直方向の補間処理には、例えば(1,2,1)/2の係数のフィルタを用いる。斜めの線状の被写体にブロック状の偽のパターンが発生している場合には、HV補間回路502から出力される画像信号は、図7(c)に示すようなパターンになる。一方、斜めの線状の被写体にブロック状の偽のパターンが発生していない場合には、HV補間回路502から出力される画像信号は、図7(f)に示すようなパターンになる。
ステップS603では、D45度エッジ検出回路503は、HV補間回路502が出力する画像信号に対して、斜め45度方向(右上がり方向)のエッジ検出を行い、エッジ強度信号を出力する。具体的には、斜め45度方向に、例えば(−1,2,−1)の係数のフィルタ処理を行い、フィルタの出力信号の絶対値をエッジ強度信号として出力する。次に、ステップS604では、D135度エッジ検出回路504は、HV補間回路502が出力する画像信号に対して、斜め135度方向(右下がり方向)のエッジ検出を行い、エッジ強度信号を出力する。具体的には、斜め135度方向に、例えば(−1,2,−1)の係数のフィルタ処理を行い、フィルタの出力信号の絶対値をエッジ強度信号として算出する。
ステップS605では、G画素以外0挿入回路505は、WB回路201が出力するベイヤ配列の画像信号のR画素とB画素の信号レベルを0にする。次に、ステップS606では、HV補間回路506は、G画素以外0挿入回路505が出力する画像信号に対して、水平方向および垂直方向の補間処理を行うことにより、G信号を算出する。このとき、HV補間回路506は、水平方向および垂直方向の補間処理には、例えば(1,2,1)/2の係数のフィルタを用いる。斜めの線状の被写体にブロック状の偽のパターンが発生している場合には、HV補間回路506から出力される画像信号は、図7(b)に示すようなパターンになる。一方、斜めの線状の被写体にブロック状の偽のパターンが発生していない場合には、HV補間回路506から出力される画像信号は、図7(e)に示すようなパターンになる。つまり、ブロック状の偽のパターンの発生の有無によらず同様の補間結果となる。
次に、ステップS607では、エッジ方向判定回路507は、HV補間回路506が出力する画像信号に対して、画素毎に斜め45度方向、又は斜め135度方向の何れの方向のエッジかを判定する。エッジ方向判定回路507は、エッジ方向判定手段である。具体的には、着目画素に対して、斜め45度方向、斜め135度方向に、例えば(−1,2,−1)の係数のフィルタ処理を行い、出力信号の絶対値の大きさを比較することでエッジの方向を判定する。エッジ方向判定回路507で、斜め45度方向のエッジと判定された場合にはステップS608に、斜め135度方向のエッジと判定された場合にはステップS609に処理を進める。
例えば、HV補間回路506から出力される画像信号が、図7(b)又は図7(e)に示すパターンで、着目画素が中心画素の場合、斜め135度方向の線状の被写体が存在する。このため、斜め45度方向にフィルタ処理を行った画像信号の絶対値は、エッジの振幅に応じて大きな値となる。また、斜め135度方向にフィルタ処理を行った画像信号の絶対値は、エッジが存在しないため小さい値となる。このように、フィルタ処理後の画像信号の絶対値を比較することで、図7(b)又は図7(e)に示すパターンの場合は、着目画素に対して斜め45度方向にエッジがあることが判定できる。
ステップS608では、セレクタ508は、エッジ方向判定回路507の判定結果から、対角方向のD135度エッジ検出回路504から出力するエッジ強度信号を選択する。一方、ステップS609では、セレクタ508は、エッジ方向判定回路507の判定結果から対角方向のD45度エッジ検出回路503から出力するエッジ強度信号を選択する。このようにセレクタ508は、エッジ強度算出手段である。例えば、HV補間回路506から出力される画像信号が図7(b)又は図7(e)に示すパターンで、着目画素が中心の画素の場合、着目画素には斜め45度方向にエッジがあると判定される。この場合は、セレクタ508はD135度エッジ検出回路504の出力信号を選択する。
図7(c)に示すパターンで、斜めの線状の被写体にブロック状の偽のパターンが発生している場合には、D135度エッジ検出回路504から出力されるエッジ強度信号は、斜め135度方向にエッジが存在する。このため、D135度エッジ検出回路504から出力されるエッジ強度信号はエッジの振幅に応じて大きい値となる。また、図7(f)に示すパターンで、斜めの線状の被写体にブロック状の偽のパターンが発生していない場合には、D135度エッジ検出回路504から出力されるエッジ強度信号は、斜め135度方向にエッジが存在しない。このため、D135度エッジ検出回路504から出力されるエッジ強度信号は小さい値となる。このように、斜めの線状の被写体にブロック状の偽のパターンが発生している場合には、セレクタ508から出力されるエッジ強度信号は大きな値となる。一方、斜めの線状の被写体にブロック状の偽のパターンが発生していない場合には、セレクタ508から出力されるエッジ強度信号は小さな値となる。
ステップS610では、係数算出回路509は、セレクタ508から出力されるエッジ強度信号に基づいて、光学的な折り返しや、色収差の影響で、斜めの線状の被写体にブロック状の偽のパターンが発生している程度を示すテクスチャ度αを算出する。
図8は、係数算出回路509が、セレクタ508から出力されるエッジ強度信号から、テクスチャ度αを算出する際に用いられる変換テーブルの一例を示す図である。図8において、横軸はエッジ強度信号を示し、縦軸はテクスチャ度αを示す。係数算出回路509は、算出結果であるエッジ強度信号が予め設定された第1の閾値Th1以下である場合には、斜めの線状の被写体にブロック状の偽のパターンが発生していないとみなし、テクスチャ度αとして0.0を出力する。また、係数算出回路509は、算出結果であるエッジ強度信号が第2の閾値Th2以上である場合には、斜めの線状の被写体にブロック状の偽のパターンが発生しているとみなし、テクスチャ度αとして1.0を出力する。ここで、第2の閾値Th2は、第1の閾値Th1より大きい。係数算出回路509は、算出結果であるエッジ強度信号が第1の閾値Th1より大きく、かつエッジ強度信号が第2の閾値Th2未満である場合には、エッジ強度信号の大きさに応じて線形的に0.0〜1.0の間のテクスチャ度αを算出する。
ここで、光学的な折り返しや、色収差の影響で、G信号に対してR、B信号がずれている場合には、WB回路201が出力する入力画像に斜めの線状の被写体にブロック状の偽のパターンが発生する。そして、G補間回路202で生成されるG信号も、R画素又はB画素のR又はB信号を用いて生成されるため、入力画像と同様に斜めの線状の被写体にブロック状の偽のパターンが発生し、画質が低下してしまう。
本実施形態では、ブロック状の偽のパターンが発生して画質が低下することを防止するために、テクスチャ検出回路309を設けている。テクスチャ検出回路309は、エッジ強度信号を算出してテクスチャ度αを算出し、斜めの線状の被写体にブロック状の偽のパターンを検出することができる。斜めの線状の被写体にブロック状の偽のパターンが検出された場合には、テクスチャ度αは大きな値となり、フィルタ回路310〜313はフィルタ処理を行っていない色差信号が出力される割合を高くする。
図8に示すように、エッジ強度信号が第2の閾値Th2より小さい場合には、テクスチャ度αが1.0より小さくなり、フィルタ回路310〜313は、フィルタ処理を行う。エッジ強度信号が第2の閾値Th2以上である場合には、テクスチャ度αが1.0となり、フィルタ回路310〜313は、フィルタ処理を行わない。
つまり、斜めの線状の被写体にブロック状の偽のパターンが発生している場合(エッジ強度信号が第2の閾値以上の場合)には、テクスチャ度αが1.0となり、フィルタ回路310〜313はフィルタ処理を行わない(フィルタ処理の特性を変更する)。斜めの線状の被写体にブロック状の偽のパターンが発生している場合で着目画素がR画素又はB画素の場合、フィルタ回路310〜313から出力される色差信号は式(2)〜式(7)から、着目画素の左右又は上下のG画素と着目画素との差分となる。そして、加算回路319で着目画素に加算されると、結果的に左右又は上下のG信号から算出した値となる。その結果、R信号及びB信号を用いずにG信号を生成できるため、光学的な折り返しや、色収差の影響で、G信号に対してR、B信号がずれている場合であっても、斜め線状の被写体に対するブロック状の偽のパターンの発生を防止することができる。また、テクスチャ度αが0.0〜1.0の場合には、その強度に応じてフィルタ処理を行わない色差信号の強度を変化させることで、斜めの線状の被写体に対するブロック状の偽のパターンの発生を低減し、画質を向上させることができる。
以上のように本実施形態によれば、ベイヤ配列の画像信号からG信号及び輝度信号を生成する際に、方向に因らず解像感の高い画像を生成し、かつ、斜めの線状の被写体に対するブロック状の偽のパターンを低減した画像を得ることができる。
(第2の実施形態)
以下、本発明の第2の実施形態について説明する。本実施形態に係る輝度信号生成部200の構成は図2と同様である。なお、本実施形態では、第1の実施形態と異なる部分についてのみ説明する。
図9は、本発明の第2の実施形態によるG補間回路202の構成例を示すブロック図である。G補間回路202は、第1のG補間回路901と、第2のG補間回路902と、テクスチャ検出回路903と、合成回路904とを有する。第1のG補間回路901は第1の補間手段であり、画像信号に対して色差信号を用いないでG信号を補間し、第1のG信号を出力する。第2のG補間回路902は第2の補間手段であり、画像信号に対して色差信号を用いてG信号を補間し、第2のG信号を出力する。合成回路904は合成手段であり、テクスチャ検出回路903から出力されるテクスチャ度αに基づいて、第1のG補間回路901により補間された第1のG信号と第2のG補間回路902により補間された第2のG信号とを合成する。その詳細は、後述する。なお、テクスチャ検出回路903は、第1の実施形態の図5のテクスチャ検出回路309と同様の回路である。
図10は、第1のG補間回路901の構成例を示すブロック図である。第1のG補間回路901は、0挿入回路1001と、HV補間回路1002とを有する。0挿入回路1001は、入力された画像信号のうちのR画素とB画素の信号レベルを0にする。次に、HV補間回路1002は、0挿入回路1001が出力する画像信号に対して、水平方向および垂直方向に補間処理を行うことにより、G信号を算出する。このとき、HV補間回路1002は、水平方向および垂直方向の補間処理には、例えば(1,2,1)/2の係数のフィルタを用いる。
図11は、第2のG補間回路902の構成例を示すブロックである。第2のG補間回路902は、G画素V補間回路1101と、G画素H補間回路1102と、R,B画素V補間回路1103と、R,B画素H補間回路1104と、V色差算出回路1105と、H色差算出回路1106とを有する。さらに、第2のG補間回路902は、V色差傾き算出回路1107と、H色差傾き算出回路1108と、Nフィルタ回路1109と、Sフィルタ回路1110と、Wフィルタ回路1111と、Eフィルタ回路1112とを有する。さらに、第2のG補間回路902は、N重み算出回路1113と、S重み算出回路1114と、W重み算出回路1115と、E重み算出回路1116と、合成回路1117と、加算回路1118とを有する。
図12は、第2のG補間回路902の処理の流れを示すフローチャートである。ステップS1201では、G画素V補間回路1101は、入力画像信号に対して、垂直方向に補間処理を行うことにより、G信号を生成する。具体的には、G画素V補間回路1101は、着目画素がG画素の場合には、G画素の信号をそのままG信号として出力し、着目画素がR画素またはB画素の場合には、垂直方向に補間処理を行うことにより、G信号を生成する。例えば、画像における着目画素のX座標およびY座標を(j,i)としたとき、G画素V補間回路1101は、着目画素がR画素の場合、G信号Gvi,jを次式(24)により生成する。
Gvi,j=(Gi-1,j+Gi+1,j)/2+(2×Ri,j−Ri-2,j+Ri+2,j)/4
・・・(24)
なお、G画素V補間回路1101は、着目画素がB画素の場合も、上記と同様の方法で、G信号を生成する。
次に、ステップS1202では、G画素H補間回路1102は、入力画像信号に対して、水平方向に補間処理を行うことにより、G信号を生成する。具体的には、G画素H補間回路1102は、着目画素がG画素の場合には、G画素の信号をそのままG信号として出力し、着目画素がR画素またはB画素の場合には、水平方向に補間処理を行うことにより、G信号を生成する。例えば、G画素H補間回路1102は、着目画素がR画素の場合、G信号Ghi,jを次式(25)により生成する。
Ghi,j=(Gi,j-1+Gi,j+1)/2+(2×Ri,j−Ri,j-2+Ri,j+2)/4
・・・(25)
なお、G画素H補間回路1102は、着目画素がB画素の場合も、上記と同様の方法で、G信号を生成する。
次に、ステップS1203では、R,B画素V補間回路1103は、入力画像信号に対して、垂直方向に補間処理を行うことにより、R信号またはB信号を生成する。具体的には、R,B画素V補間回路1103は、着目画素がR画素またはB画素の場合には、R画素またはB画素の信号をそのままR信号またはB信号として出力する。R,B画素V補間回路1103は、着目画素がG画素の場合に、着目画素の垂直方向がR画素の場合には、垂直方向に補間処理を行うことでR信号を生成し、同様に、着目画素の垂直方向がB画素の場合には、垂直方向に補間処理を行うことでB信号を生成する。例えば、着目画素がG画素で、着目画素の垂直方向がR画素の場合、R,B画素V補間回路1103は、R信号Rvi,jを次式(26)により生成する。
Rvi,j=(Ri-1,j+Ri+1,j)/2+(2×Gi,j−Gi-2,j+Gi+2,j)/4
・・・(26)
なお、R,B画素V補間回路1103は、着目画素の垂直方向がB画素の場合、上記と同様の方法で、B信号を生成する。
次に、ステップS1204では、R,B画素H補間回路1104は、入力画像信号に対して、水平方向に補間処理を行うことにより、R信号またはB信号を生成する。具体的には、R,B画素H補間回路1104は、着目画素がR画素またはB画素の場合には、R画素またはB画素の信号をそのままR信号またはB信号として出力する。R,B画素H補間回路1104は、着目画素がG画素の場合に、着目画素の水平方向がR画素の場合には、水平方向に補間処理を行うことでR信号を生成し、同様に、着目画素の水平方向がB画素の場合には、水平方向に補間処理を行うことでB信号を生成する。例えば、着目画素がG画素で、着目画素の水平方向がR画素の場合、R,B画素H補間回路1104は、R信号Rhi,jを次式(27)により生成する。
Rhi,j=(Ri,j-1+Ri,j+1)/2+(2×Gi,j−Gi,j-2+Gi,j+2)/4
・・・(27)
なお、R,B画素H補間回路1104は、着目画素の水平方向がB画素の場合、上記と同様の方法で、B信号を生成する。また、ステップS1201〜S1204の補間方法として、式(24)〜(27)を用いたが、これに限定されず、例えば第1の実施形態のように式(2)〜(5)を用いて同色画素を各方向に線形補間してもよい。
次に、ステップS1205では、V色差算出回路1105は、G画素V補間回路1101が出力したG信号から、R,B画素V補間回路1103が出力したR信号またはB信号を減算し、垂直方向の色差信号を生成する。例えば、V色差算出回路1105は、図3のV色差算出回路305と同様に垂直方向の色差信号Diff_vを式(6)により算出する。
次に、ステップS1206では、H色差算出回路1106は、G画素H補間回路1102が出力したG信号から、R,B画素H補間回路1104が出力したR信号またはB信号を減算し、水平方向の色差信号を生成する。例えば、H色差算出回路1106は、図3のH色差算出回路306と同様に水平方向の色差信号Diff_hを式(7)により算出する。
次に、ステップS1207では、V色差傾き算出回路1107は、V色差算出回路1105から出力された色差信号を基に、垂直方向の色差の傾きを算出する。具体的には、V色差傾き算出回路1107は、図3のV色差傾き算出回路307と同様に、垂直方向の色差の傾き信号Grad_vを式(8)により算出する。
なお、傾き信号Grad_vを算出する式は、式(8)に限定されない。V色差傾き算出回路1107は、例えば、着目画素と上下の隣接画素のそれぞれの差分に基づいて、傾き信号Grad_vを算出しても良い。V色差傾き算出回路1107は、算出した垂直方向の色差の傾き信号Grad_vを、N重み算出回路1113、S重み算出回路1114にそれぞれ出力する。
次に、ステップS1208では、H色差傾き算出回路1108は、H色差算出回路1106から出力された色差信号を基に、水平方向の色差の傾きを算出する。具体的には、H色差傾き算出回路1108は、図3のH色差傾き算出回路308と同様に、水平方向の色差の傾き信号Grad_hを式(9)により算出する。
なお、傾き信号Grad_hを算出する式は、式(9)に限定されない。H色差傾き算出回路1108は、例えば、着目画素と左右の隣接画素のそれぞれの差分に基づいて、傾き信号Grad_hを算出しても良い。H色差傾き算出回路1108は、算出した水平方向の色差の傾き信号Grad_hを、W重み算出回路1115、E重み算出回路1116にそれぞれ出力する。
次に、ステップS1209では、Nフィルタ回路1109は、V色差算出回路1105から出力された色差信号に対して、上方向のフィルタ処理を行う。具体的には、Nフィルタ回路1109は、V色差算出回路1105から出力された色差信号Diff_vを用いて、着目画素(j,i)における上方向のフィルタ処理の結果Diff_nを次式(28)により算出する。
ステップS1210では、Sフィルタ回路1110は、V色差算出回路1105から出力された色差信号に対して、下方向のフィルタ処理を行う。具体的には、Sフィルタ回路1110は、V色差算出回路1105から出力された色差信号Diff_vを用いて、着目画素(j,i)における下方向のフィルタ処理の結果Diff_sを次式(29)により算出する。
ステップS1211では、Wフィルタ回路1111は、H色差算出回路1106から出力された色差信号に対して、左方向のフィルタ処理を行う。具体的には、Wフィルタ回路1111は、H色差算出回路1106から出力された色差信号Diff_hを用いて、着目画素(j,i)における左方向のフィルタ処理の結果Diff_wを次式(30)により算出する。
ステップS1212では、Eフィルタ回路1112は、H色差算出回路1106から出力された色差信号に対して、右方向のフィルタ処理を行う。具体的には、Eフィルタ回路1112は、H色差算出回路1106から出力された色差信号Diff_hを用いて、着目画素(j,i)における右方向のフィルタ処理の結果Diff_eを次式(31)により算出する。
ステップS1213では、N重み算出回路1113は、図3のN重み算出回路314と同様に上方向の重みWnを式(19)により算出する。
ステップS1214では、S重み算出回路1114は、図3のS重み算出回路315と同様に下方向の重みWsを式(20)により算出する。
ステップS1215では、W重み算出回路1115は、図3のW重み算出回路316と同様に左方向の重みWwを式(21)により算出する。
ステップS1216では、E重み算出回路1116は、図3のE重み算出回路317と同様に右方向の重みWeを式(22)により算出する。
ステップS1217では、合成回路1117は、図3の合成回路318と同様に、重みWn、Ws、WwおよびWeを基に、色差信号Diff_n、Diff_s、Diff_wおよびDiff_eを合成する。そして、合成回路1117は、色差信号Diff_mixを式(23)により算出する。
ステップS1218では、加算回路1118は、WB回路201が出力した画像信号に対して、着目画素がR画素またはB画素の場合には合成回路1117で合成された色差信号Diff_mixを加算し、第2のG信号を出力する。加算回路1118の出力信号は、第2のG補間回路902の出力信号である。上記の結果、第2のG補間回路902は、R画素またはB画素の画素位置に対して、方向に因らず解像感の高いG信号を算出することができる。
次に、図9の合成回路904の合成処理について説明する。合成回路904は、テクスチャ検出回路903からのテクスチャ度αに基づいて、第1のG補間回路901からの第1のG信号と第2のG補間回路902からの第2のG信号とを合成し、最終的なG信号を出力する。合成回路904から出力されるG信号は、G補間回路202の出力信号である。合成回路904は、画像における着目画素のX座標およびY座標を(j,i)としたとき、最終的なG信号G_sigi,jを出力する。具体的には、合成回路904は、着目画素における第1のG信号G1_sigi,j、第2のG信号G2_sigi,j、合成係数αi,jを用いて、最終的なG信号G_sigi,jを次式(32)により算出する。
G_sigi,j=αi,j×G1_sigi,j+(1.0−αi,j)×G2_sigi,j
・・・(32)
合成回路904は、テクスチャ度αが0.0である場合、つまり、斜めの線状の被写体にブロック状の偽のパターンが発生していない場合には、方向に因らず解像感の高い画像を生成できる第2のG信号G2_sigを最終的なG信号G_sigとして出力する。また、合成回路904は、合成係数αが1.0である場合、つまり、斜めの線状の被写体にブロック状の偽のパターンが発生している場合には、G信号のみから生成した第1のG信号G1_sigを最終的なG信号G_sigとして出力する。
以上のように本実施形態によれば、光学的な折り返しや、色収差の影響で、G信号に対してR、B信号がずれている場合であっても、斜め線状の被写体に対するブロック状の偽のパターンの発生を防止することができる。
(第3の実施形態)
以下、本発明の第3の実施形態について説明する。前述した第1及び第2の実施形態では、G画素のサンプリングに起因した折り返しが発生し、縦線、横線から斜め線に切り替わる領域でヨレが発生する場合がある。そこで本実施形態では、斜めの線状の被写体に対するブロック状の偽のパターンのみならずヨレをも低減した画像を生成する例について説明する。なお、本実施形態に係る画像処理装置である輝度信号生成部200は、図2と同様であるため、説明は省略する。以下、第1の実施形態と異なる点についてのみ説明する。
図13は、図2のG補間回路202の構成例を示すブロック図である。G補間回路202は、G画素V補間回路301と、G画素H補間回路302と、R,B画素V補間回路303と、R,B画素H補間回路304と、V色差算出回路305と、H色差算出回路306とを有する。さらに、G補間回路202は、V色差傾き算出回路307と、H色差傾き算出回路308と、テクスチャ検出回路309と、HVエッジ検出回路1301と、フィルタゲイン算出回路1302とを有する。さらに、G補間回路202は、Nフィルタ回路310と、Sフィルタ回路311と、Wフィルタ回路312と、Eフィルタ回路313とを有する。さらに、G補間回路202は、N重み算出回路314と、S重み算出回路315、W重み算出回路316と、E重み算出回路317と、合成回路318と、加算回路319とを有する。図3に示した構成と比べて、G補間回路202は、HVエッジ検出回路1301と、フィルタゲイン算出回路1302とをさらに有しており、それ以外の構成は図3と同様である。
図14は、G補間回路202の画像処理方法の流れを示すフローチャートである。なお、図14のステップS401〜S409は、図4のステップS401〜S409と同様であるため、説明は省略する。以下、図4の手順と異なる点についてのみ説明する。
ステップS1401では、HVエッジ検出回路1301は、WB回路201が出力する入力画像信号に対して、水平、垂直のエッジ領域か否かを検出する。HVエッジ検出回路1301は、第2の度合い算出手段である。HVエッジ検出回路1301の処理の詳細は後述するが、HVエッジ検出回路1301では、水平、垂直エッジの程度に応じて0.0〜1.0の間のHVエッジ度βを出力する。HVエッジ度βは、例えば、水平、垂直のエッジ領域であると判断される場合には0.0を出力し、水平、垂直のエッジ領域でないと判断される場合には1.0を出力する。
次に、ステップS1402では、フィルタゲイン算出回路1302は、テクスチャ検出回路309から出力されるテクスチャ度αと、HVエッジ検出回路1301から出力されるHVエッジ度βとに基づいて、フィルタゲインγを算出する。具体的には、フィルタゲイン算出回路1302は、着目画素(j,i)におけるフィルタゲインγを次式(33)により算出する。
γi,j=αi,j×βi,j ・・・(33)
このように、フィルタゲインγを算出することで、例えば、斜めの線状の被写体にブロック状の偽のパターンが発生しない場合、または、水平、垂直のエッジ領域であると判断される場合には、フィルタゲインγは0.0に近い値となる。また、斜めの線状の被写体にブロック状の偽のパターンが発生している場合で、かつ、水平、垂直のエッジ領域でないと判断される場合には、フィルタゲインγは1.0に近い値となる。
次に、ステップS1403では、Nフィルタ回路310は、V色差算出回路305から出力された色差信号に対して、フィルタゲイン算出回路1302から出力されたフィルタゲインγに基づいて上方向のフィルタ処理を行う。具体的には、まず、Nフィルタ回路310は、V色差算出回路305から出力された色差信号Diff_vを用いて、着目画素(j,i)における上方向のフィルタ処理の結果Fil_nを式(11)により算出する。
次に、Nフィルタ回路310は、フィルタゲインγに基づいて、色差信号Diff_nを次式(34)により算出して出力する。
Diff_ni,j=γi,j×Diff_vi,j
+(1.0−γi,j)×Fil_ni,j ・・・(34)
次に、ステップS1404では、Sフィルタ回路311は、V色差算出回路305から出力された色差信号に対して、フィルタゲイン算出回路1302から出力されたフィルタゲインγに基づいて下方向のフィルタ処理を行う。具体的には、まず、Sフィルタ回路311は、V色差算出回路305から出力された色差信号Diff_vを用いて、着目画素(j,i)における下方向のフィルタ処理の結果Fil_sを式(13)により算出する。
次に、Sフィルタ回路311は、フィルタゲインγに基づいて、色差信号Diff_sを次式(35)により算出して出力する。
Diff_si,j=γi,j×Diff_vi,j
+(1.0−γi,j)×Fil_si,j ・・・(35)
次に、ステップS1405では、Wフィルタ回路312は、H色差算出回路306から出力された色差信号に対して、フィルタゲイン算出回路1302から出力されたフィルタゲインγに基づいて左方向のフィルタ処理を行う。具体的には、まず、Wフィルタ回路312は、H色差算出回路306から出力された色差信号Diff_hを用いて、着目画素(j,i)における左方向のフィルタ処理の結果Fil_wを式(15)により算出する。
次に、Wフィルタ回路312は、フィルタゲインγに基づいて、色差信号Diff_Wを次式(36)により算出して出力する。
Diff_wi,j=γi,j×Diff_hi,j
+(1.0−γi,j)×Fil_wi,j ・・・(36)
次に、ステップS1406では、Eフィルタ回路313は、H色差算出回路306から出力された色差信号に対して、フィルタゲイン算出回路1302から出力されたフィルタゲインγに基づいて右方向のフィルタ処理を行う。具体的には、まず、Eフィルタ回路313は、H色差算出回路306から出力された色差信号Diff_hを用いて、着目画素(j,i)における右方向のフィルタ処理の結果Fil_eを式(17)により算出する。
次に、Eフィルタ回路313は、フィルタゲインγに基づいて、色差信号Diff_eを次式(37)により算出して出力する。
Diff_ei,j=γi,j×Diff_hi,j
+(1.0−γi,j)×Fil_ei,j ・・・(37)
次の図14のステップS414〜S419は、それぞれ図4のステップS414〜S419と同様である。以上のように着目画素がR画素又はB画素の場合には、フィルタ処理後の色差信号が、合成回路318で方向毎の重みで合成された後に、加算回路319で着目画素に加算され、G補間回路202の出力となるG信号が生成される。
図15は、図13のHVエッジ検出回路1301の構成例を示すブロック図である。HVエッジ検出回路1301は、HV相関判定回路1501と、エッジ度算出回路1502とを有する。
HV相関判定回路1501は、水平方向の相関の大きさと、垂直方向の相関の大きさとから、水平、垂直方向のエッジの相関値を算出する。具体的には、HV相関判定回路1501は、着目画素を中心とした水平方向の画素の信号レベルの差と、着目画素を中心とした垂直方向の画素の信号レベルの差との差分から水平、垂直エッジの相関値を算出する。例えば、着目画素(j,i)がR画素の場合、HVエッジ相関値corrHVを次式(38)により算出する。
corrHVi,j=|diffHi,j−diffVi,j|
diffHi,j=|Gi,j-1−Gi,j+1|+|2×Ri,j−Ri,j-2−Ri,j+2|
diffVi,j=|Gi-1,j−Gi+1,j|+|2×Ri,j−Ri-2,j−Ri+2,j|
・・・(38)
なお、HV相関判定回路1501は、着目画素がB画素の場合も、上記と同様の方法でHVエッジ相関値corrHVを算出する。
エッジ度算出回路1502は、HV相関判定回路1501からHVエッジ相関値corrHVを入力し、水平、垂直のエッジ領域か否かを示すHVエッジ度βを算出する。
図16は、エッジ度算出回路1502の入出力特性の一例を示す図であり、HVエッジ相関値corrHVからHVエッジ度βへの変換テーブルの一例を示す。図16において、横軸はHVエッジ相関値corrHVを示し、縦軸はHVエッジ度βを示す。エッジ度算出回路1502は、HVエッジ相関値corrHVが所定の閾値以下(第3の閾値Th3以下)で、水平、垂直のエッジ領域でないと判断される場合には、HVエッジ度βを1.0にする。また、エッジ度算出回路1502は、HVエッジ度相関値corrHVが所定の閾値以上(第4の閾値Th4以上)で、水平、垂直のエッジ領域であると判断される場合には、HVエッジ度βを0.0にする。また、エッジ度算出回路1502は、HVエッジ度相関値corrHVが第3の閾値Th3より大きく、かつ第4の閾値Th4未満である場合には、HVエッジ度相関値corrHVに応じて線形的に0.0から1.0の間をとるHVエッジ度βを出力する。
本実施形態では、斜めの線状の被写体に対するブロック状の偽のパターン及びヨレを低減するために、テクスチャ検出回路309と、HVエッジ検出回路1301と、フィルタゲイン算出回路1302とを設けている。テクスチャ検出回路309は、エッジ強度信号を算出してテクスチャ度αを算出し、斜めの線状の被写体にブロック状の偽のパターンがある場合はそれを検出することができる。一方、HVエッジ検出回路1301は、HVエッジ相関値を算出してHVエッジ度βを算出し、着目画素が水平、垂直のエッジ領域であるか否かを検出することができる。また、フィルタゲイン算出回路1302は、テクスチャ検出回路309から出力されるテクスチャ度αと、HVエッジ検出回路1301から出力されるHVエッジ度βとからフィルタゲインγを算出する。そして、フィルタ回路310〜313のフィルタ処理を行っていない色差信号が出力される割合を調整する。
斜めの線状の被写体にブロック状の偽のパターンが発生し、かつ、水平、垂直のエッジ領域でない判断される場合には、フィルタゲインγは1.0となり、フィルタ回路310〜313はフィルタ処理を行わない(フィルタ処理の特性を変更する)。斜めの線状の被写体にブロック状の偽のパターンが発生し、かつ水平、垂直のエッジ領域でない場合で、着目画素がR画素又はB画素の場合、フィルタ回路310〜313から出力される色差信号は着目画素の左右又は上下のG画素と着目画素との差分となる。そして、加算回路319で着目画素に加算されると、結果的に左右又は上下のG信号から算出した値となる。その結果、R信号及びB信号を用いずにG信号を生成できるため、光学的な折り返しや、色収差の影響で、G信号に対してR、B信号がずれている場合であっても、斜め線状の被写体に対するブロック状の偽のパターンの発生を防止することができる。
一方、斜め線状の被写体にブロック状の偽のパターンが発生しない場合、または、水平、垂直のエッジ領域であると判断される場合には、フィルタゲインγは0.0となり、フィルタ回路310〜313はフィルタ処理を行う。このように、そもそも斜め線状の被写体にブロック状の偽のパターンが発生しない場合は、フィルタ処理を行うことで、G信号だけでなく、R、B信号も用いてG信号を生成できる。また、斜め線状の被写体にブロック状の偽のパターンが発生しそうな領域であっても、水平、垂直のエッジ領域であると判断される場合、つまり、縦線、横線から斜め線に切り替わる領域においても同様である。この場合も、フィルタ処理を行うことで、G信号だけでなく、R、B信号も用いてG信号を生成できる。このため、G画素のサンプリングに起因した折り返しを低減することができる。さらに、フィルタゲインγが0.0〜1.0の場合には、その強度に応じてフィルタ処理を行わない色差信号の強度を変化させることで、斜めの線状の被写体に対するブロック状の偽のパターン及びヨレの発生を低減し、画質を向上させることができる。
以上のように本実施形態によれば、ベイヤ配列の画像信号からG信号及び輝度信号を生成する際に、方向に因らず解像感の高い画像を生成し、かつ、斜めの線状の被写体に対するブロック状の偽のパターン及びヨレを低減した画像を得ることができる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。